基于CPLD的X86系統(tǒng)硬件檢測卡設(shè)計(jì)
發(fā)布時(shí)間:2019-12-04 06:40
【摘要】:X86處理器價(jià)格高,一旦出現(xiàn)故障會(huì)導(dǎo)致電子產(chǎn)品出現(xiàn)各種異常且定位困難。提出一種基于CPLD的X86系統(tǒng)硬件檢測卡,當(dāng)X86處理器出現(xiàn)故障時(shí),將通往IO 80端口地址的上電自檢數(shù)據(jù)通過CPLD轉(zhuǎn)成串行數(shù)據(jù)輸出。該方法不需要PCI硬件插槽,節(jié)省PCB空間840 mm2,不需要外置硬件debug卡,降低硬件成本,提高X86系統(tǒng)故障定位效率,方案可實(shí)施性強(qiáng),尤其在高密度電子產(chǎn)品上具有很強(qiáng)的推廣價(jià)值。
【圖文】:
ard_cs是檢測端口的片選信號,Base_region1_l是其他外設(shè)片選信號,檢測端口片選信號產(chǎn)生部分代碼如下:Assign80card_cs=(ADDR[15:0]==16’h80)?1’b1:1’b0;當(dāng)CPU通過南橋的PCI總線對內(nèi)存空間進(jìn)行讀寫時(shí),當(dāng)本地總線輸出的地址為0xF000_0080時(shí),即對檢測端口進(jìn)行訪問,硬件檢測卡模塊片選有效,在寫信號data_write_l的配合下,轉(zhuǎn)換裝置中的PCI總線將數(shù)據(jù)總線連接到檢測單元的數(shù)據(jù)輸入寄存器,再根據(jù)根據(jù)相應(yīng)寄存器的配置參數(shù),實(shí)現(xiàn)數(shù)據(jù)的通信。3.2.2本地總線數(shù)據(jù)并串轉(zhuǎn)換模塊實(shí)現(xiàn)圖5本地總線數(shù)據(jù)轉(zhuǎn)換模塊圖8程序仿真波形TxData數(shù)據(jù)符合通用異步數(shù)據(jù)收發(fā)器UART(UniversalAsynchronousReceiverTransmitter)格式,異步通信不要求收發(fā)雙方使用共同時(shí)鐘,一幀信息由4部分組成:起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位[7]。由于BIOS將硬件檢測信息發(fā)往80端口,,因此邏輯只要實(shí)現(xiàn)單工發(fā)送模塊,將檢測信息通過串口送往PC。(1)地址解碼模塊:該模塊包含兩部分功能:①寄存器讀寫,如發(fā)送數(shù)據(jù)保持寄存器0x80,本地總線要發(fā)送的數(shù)據(jù)直接送往0x80地址;線控制寄存器0x83[8],鑒于本設(shè)計(jì)只是實(shí)現(xiàn)硬件檢測功能,當(dāng)硬件發(fā)生故障時(shí),串口通常沒有初始化,不能配置寄存器,因此0x83寄存器默認(rèn)值是0x03,即發(fā)送數(shù)據(jù)位長度為8,無奇偶校驗(yàn),停止位長度為1。②波特率發(fā)生,波特率默認(rèn)9600bit/s,該模塊產(chǎn)生波特率16倍的時(shí)鐘clk_16x。(2)發(fā)送FIFO:由于PCI總線速率33MHz,UART速率較低,為了避免數(shù)據(jù)丟失,邏輯內(nèi)實(shí)現(xiàn)了一個(gè)存儲(chǔ)長度為32byte的發(fā)送FIFO(先進(jìn)先出),將發(fā)送保持寄存器0x80的數(shù)據(jù)緩存到FIFO中。FIFO的接口圖如圖6所示。圖6發(fā)送fifo接口圖(3)發(fā)送模塊:在clk_16x時(shí)鐘控制下,將從發(fā)送FIFO讀出的并行數(shù)據(jù)轉(zhuǎn)換?
【圖文】:
ard_cs是檢測端口的片選信號,Base_region1_l是其他外設(shè)片選信號,檢測端口片選信號產(chǎn)生部分代碼如下:Assign80card_cs=(ADDR[15:0]==16’h80)?1’b1:1’b0;當(dāng)CPU通過南橋的PCI總線對內(nèi)存空間進(jìn)行讀寫時(shí),當(dāng)本地總線輸出的地址為0xF000_0080時(shí),即對檢測端口進(jìn)行訪問,硬件檢測卡模塊片選有效,在寫信號data_write_l的配合下,轉(zhuǎn)換裝置中的PCI總線將數(shù)據(jù)總線連接到檢測單元的數(shù)據(jù)輸入寄存器,再根據(jù)根據(jù)相應(yīng)寄存器的配置參數(shù),實(shí)現(xiàn)數(shù)據(jù)的通信。3.2.2本地總線數(shù)據(jù)并串轉(zhuǎn)換模塊實(shí)現(xiàn)圖5本地總線數(shù)據(jù)轉(zhuǎn)換模塊圖8程序仿真波形TxData數(shù)據(jù)符合通用異步數(shù)據(jù)收發(fā)器UART(UniversalAsynchronousReceiverTransmitter)格式,異步通信不要求收發(fā)雙方使用共同時(shí)鐘,一幀信息由4部分組成:起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位[7]。由于BIOS將硬件檢測信息發(fā)往80端口,,因此邏輯只要實(shí)現(xiàn)單工發(fā)送模塊,將檢測信息通過串口送往PC。(1)地址解碼模塊:該模塊包含兩部分功能:①寄存器讀寫,如發(fā)送數(shù)據(jù)保持寄存器0x80,本地總線要發(fā)送的數(shù)據(jù)直接送往0x80地址;線控制寄存器0x83[8],鑒于本設(shè)計(jì)只是實(shí)現(xiàn)硬件檢測功能,當(dāng)硬件發(fā)生故障時(shí),串口通常沒有初始化,不能配置寄存器,因此0x83寄存器默認(rèn)值是0x03,即發(fā)送數(shù)據(jù)位長度為8,無奇偶校驗(yàn),停止位長度為1。②波特率發(fā)生,波特率默認(rèn)9600bit/s,該模塊產(chǎn)生波特率16倍的時(shí)鐘clk_16x。(2)發(fā)送FIFO:由于PCI總線速率33MHz,UART速率較低,為了避免數(shù)據(jù)丟失,邏輯內(nèi)實(shí)現(xiàn)了一個(gè)存儲(chǔ)長度為32byte的發(fā)送FIFO(先進(jìn)先出),將發(fā)送保持寄存器0x80的數(shù)據(jù)緩存到FIFO中。FIFO的接口圖如圖6所示。圖6發(fā)送fifo接口圖(3)發(fā)送模塊:在clk_16x時(shí)鐘控制下,將從發(fā)送FIFO讀出的并行數(shù)據(jù)轉(zhuǎn)換?
【參考文獻(xiàn)】
相關(guān)期刊論文 前2條
1 程鵬;劉維亞;鄭喜鳳;;基于FPGA的PCI總線接口設(shè)計(jì)[J];電子器件;2007年02期
2 張羽;胡玉貴;殷奎喜;李佶蓮;;基于FPGA的多串口擴(kuò)展實(shí)現(xiàn)[J];電子器件;2009年01期
【共引文獻(xiàn)】
相關(guān)期刊論文 前10條
1 孫濤;張華春;;基于MIL-STD-1553B協(xié)議的遠(yuǎn)程終端的FPGA實(shí)現(xiàn)[J];電子器件;2010年03期
2 符冰;;基于PXI的1553B總線接口卡設(shè)計(jì)[J];儀器儀表用戶;2012年02期
3 劉鵬鵬;王晶;尹小杰;隋峻;王葳;;基于DSP和FPGA的通用控制器設(shè)計(jì)[J];電子設(shè)計(jì)工程;2011年21期
4 譚立志;李二喜;張利民;吳桂清;;基于AT91SAM9261高速鐵路路基沉降嵌入式數(shù)據(jù)集中器設(shè)計(jì)[J];電子設(shè)計(jì)工程;2013年17期
5 封勇韜;花興艷;;微型GPS接收機(jī)的設(shè)計(jì)[J];電子設(shè)計(jì)工程;2014年05期
6 楊龍;劉清`
本文編號:2569515
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2569515.html
最近更新
教材專著