楊鵬 杭棟棟
摘 要:在兼容維修早期生產(chǎn)的一款基于PC/104總線的近紅外光譜儀,在設(shè)計(jì)新的工控板時(shí),增加了PCI Express總線轉(zhuǎn)PC/104總線的設(shè)計(jì)。重點(diǎn)介紹了架構(gòu)設(shè)計(jì)、PEX8311橋接芯片的直從工作模式和FPGA的控制時(shí)序,當(dāng)PEX8311本地時(shí)鐘頻率為16.5 MHz時(shí),測試的實(shí)際傳輸速率達(dá)到6.5 MB/s,能夠滿足儀器的需求。
關(guān)鍵詞:PCI Express;PC/104;PEX8311;FPGA
中圖分類號:TN79+2 文獻(xiàn)標(biāo)識碼:A DOI:10.15913/j.cnki.kjycx.2015.11.010
PC/104是尺寸縮小為96 mm×90 mm的ISA總線板卡,但是,PC/104與ISA的電氣和機(jī)械規(guī)范不同,前者為自堆??偩€,省掉了昂貴的底板,而采用針孔總線連接器,不僅提高了其可靠性,還減小了總線驅(qū)動電流,降低了功耗和電路的驅(qū)動要求。
雖然ISA總線在1999年后就逐步停產(chǎn)了,但是,PC/104總線以其優(yōu)異的結(jié)構(gòu)和穩(wěn)定的電氣特性又使用了較長時(shí)間。早期生產(chǎn)的多種光譜儀器是基于PC/104接口設(shè)計(jì)的。隨著第三代工業(yè)總線PCI Express(又簡稱PCIE)的普及,原生態(tài)支持PC/104總線的工控機(jī)退出市場,已銷售的儀器在維修時(shí)出現(xiàn)了無零件替換的局面。為了實(shí)現(xiàn)新一代光譜儀工控板可兼容模塊的維修,添加基于PCIE的PC/104總線設(shè)計(jì)是一種有效的解決方法。
1 硬件設(shè)計(jì)
1.1 架構(gòu)設(shè)計(jì)
實(shí)現(xiàn)PCIE與PC/104總線轉(zhuǎn)換的基本思路是先將PCIE總線轉(zhuǎn)換為局部總線,然后通過FPGA編程實(shí)現(xiàn)PC/104總線的工作。PCIE與PC/104轉(zhuǎn)換設(shè)計(jì)架構(gòu)如圖1所示。
1.2 PEX8311的工作模式
PEX8311作為PCIE與本地總線的橋接芯片,數(shù)據(jù)傳輸有3種工作方式,即DMA、直主和直從。本地端接口方式有數(shù)據(jù)線與地址線獨(dú)立的C模式、數(shù)據(jù)線與地址線復(fù)用的J模式和專用的M模式。本地傳輸模式包括單周期模式、四周器模式和連續(xù)突發(fā)模式。
在設(shè)計(jì)過程中,考慮到頻繁讀寫單個(gè)字節(jié)、少改動原光譜儀上位機(jī)軟件和PC/104總線的工作方式等要求,選擇PEX8311芯片在直從、單周期C模式下工作。在這種模式下,PEX8311將PCIE接口的IO地址和Memory地址映射到本地總線上,而上位機(jī)作為傳輸過程中的主設(shè)備,會發(fā)起對PCIE接口IO地址或Memory地址的讀寫操作,并在局部總線上實(shí)施。使用WinDrive軟件生成PEX8311的驅(qū)動程序后,上位機(jī)程序只需簡單更改設(shè)備接口函數(shù)即可實(shí)現(xiàn)對原近紅外光譜儀數(shù)據(jù)采集卡的驅(qū)動。
圖1 PCIE與PC/104轉(zhuǎn)換設(shè)計(jì)架構(gòu)圖
1.3 FPGA邏輯設(shè)計(jì)
FPGA作為本地端的邏輯控制器,負(fù)責(zé)協(xié)調(diào)好本地端和PEX8311之間的時(shí)序關(guān)系,配置 PEX8311的工作模式,并將PC/104接口的24位地址、16位數(shù)據(jù)以及若干中斷和控制信號映射到本地總線上。
PEX8311的控制信號主要包括握手信號LHOLD和LHOLDA,總線訪問周期的開始和當(dāng)前地址有效信號ADS#,總線的讀寫狀態(tài)信號LW/R#,本地總線數(shù)據(jù)準(zhǔn)備好信號Ready#,末尾數(shù)據(jù)信號BLAST#。PC104接口主要控制的信號包括存儲器讀信號MEMR#、存儲器寫信號MEMW#和存儲器16位片選信號MEMCS16#。直從單周期模式讀取時(shí)序仿真如圖2所示,其中,LCLK為本地時(shí)鐘。
圖2 直從單周期模式讀取時(shí)序圖
2 分析與測試
PCIE與PC/104總線轉(zhuǎn)換設(shè)計(jì)的數(shù)據(jù)傳輸速率是由圖1所
示串聯(lián)結(jié)構(gòu)中最慢的部分決定的。PCIE×1在雙工時(shí)的理論傳輸速率可達(dá)500 MB/s,PEX8311的本地總線傳輸速率受最高可達(dá)66 MHz的本地時(shí)鐘頻率限制,兩者均遠(yuǎn)大于PC/104總線的16 MB/s,因此,該設(shè)計(jì)最終的數(shù)據(jù)傳輸速率受限于PC/104總線。通過改變PEX8311本地總線的時(shí)鐘頻率,可以調(diào)節(jié)該設(shè)計(jì)的傳輸速率。
PLXMon是PLX公司提供的專用調(diào)試軟件,其中,Memory Access功能可以對指定起始地址系統(tǒng)內(nèi)存批量填入指定數(shù)量的規(guī)律變化的數(shù)字,從而驗(yàn)證讀寫映射地址空間是否正確;Performance Measure功能可用來測量PCIE總線的讀寫速度。當(dāng)PEX8311本地時(shí)鐘頻率為16.5 MHz時(shí),測量的實(shí)際讀取速率可以達(dá)到6.5 MB/s。轉(zhuǎn)換后的PC/104總線讀取速率測試如圖3所示。
圖3 轉(zhuǎn)換后的 PC/104總線讀取速率測試
3 結(jié)束語
使用基于PCIE的PC/104總線的轉(zhuǎn)換設(shè)計(jì),成功地在最新的工控板上實(shí)現(xiàn)對原有PC/104數(shù)據(jù)采集卡的支持,為早期基于PC/104接口的近紅外光譜儀或其他設(shè)備提供模塊化的兼容維修方案,并延長了此類設(shè)備的使用壽命。該設(shè)計(jì)方案同樣適用于PCIE對其他總線的擴(kuò)展,具有一定的應(yīng)用市場。
參考文獻(xiàn)
[1]姚亮,王宏志.基于CPLD的PC/104總線接口實(shí)現(xiàn)[J].長春工業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,29(4):384-390.
[2]黃小紅,李峰,倪衛(wèi)芳.PEX8311 數(shù)據(jù)傳輸研究[J].電子工程師,2007,33(10):64-65.
[3]陳志列,龐觀士,劉志永,等.基于FPGA的LPC-ISA總線橋接設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2011,24(5):3-5.
〔編輯:白潔〕