CPLD 實現(xiàn) GPIB 控制器的設(shè)計
2.5 三態(tài) I/O 通道 需要注意的是芯片數(shù)據(jù)通道中八條數(shù)據(jù)線與控制數(shù)據(jù)流向的八條控制線都是雙向的,所以必須對 I/O 通道進行設(shè)置。實現(xiàn)雙向總線,就需要使用可編程邏輯器件的雙向口構(gòu)造雙向
三態(tài)總線。三態(tài)總線的實現(xiàn),需要使用三態(tài)緩沖器,實現(xiàn)高、低電平和高阻三個狀態(tài)。基于ALTERA 公司的 CPLD 系列器件的特點,我們在設(shè)計的時候,內(nèi)部避免使用雙向的三態(tài)總線, 將雙向的信號分別直接引到外部。在外部設(shè)計雙向三態(tài)總線。設(shè)計中采用圖形方式輸入,利用參數(shù)化模塊庫(LPM)實現(xiàn)。這種方法尤為清晰簡便。如圖所示:
圖 2 三態(tài)總線的實現(xiàn)
在這里用 TE 信號來作為三態(tài)總線的方向控制信號。不考慮控功能,當本設(shè)備處于并行點 名狀態(tài),或者作為非命令數(shù)據(jù)的源接受方時,TE 信號為真,即 TE=PPAS+~SIDS。
2.6 GPIB 總線中的三線掛鉤技術(shù)的實現(xiàn) 三線掛鉤技術(shù)是本設(shè)計的關(guān)鍵,因為在總線傳輸中,所有的命令和數(shù)據(jù)的傳送都要通過三線掛鉤來實現(xiàn)。
GPIB 總線中的三線掛鉤技術(shù)(DAV、NRFD、NDAC)可以自動適應測試系統(tǒng)中各種不 同器件的傳輸速率。源方作為講者或者控者的器件,發(fā) DAV 消息。受方作為聽者的器件,發(fā)NRFD、NDAC 消息。三條握手線,DAV 線、NRFD 線和 NDAC 線,用于控制設(shè)備之間消息 字節(jié)的傳送。發(fā)送消息方(源方)和接收消息方(受方)利用這 3 條握手線進行三線掛鉤,以保證數(shù)據(jù)線上的消息(命令或數(shù)據(jù))能準確無誤地傳送。
圖 4 本設(shè)計三線掛鉤仿真圖
通過對系統(tǒng)的仿真,對比 NI 公司的 GPIB 控制器 NAT9914 數(shù)據(jù)手冊上的三線掛鉤的時序圖可以看出,本設(shè)計成功地實現(xiàn)了三線掛鉤的要求。
2.7 系統(tǒng)調(diào)試
調(diào)試是軟硬件設(shè)計過程中必不可少的一環(huán)。最終程序通過 ByteBlaster 專用下載電纜下載EPM3256ATC144-10 芯片中,將下載好程序地 CPLD 取代原來系統(tǒng)中的 NAT9914 進行在線 調(diào)試。通過反復的試驗,成功地實現(xiàn)了 CPLD 替代 GPIB 控制器的大部分功能。
3. 結(jié) 論
本文的創(chuàng)新點:采用低成本的 CPLD 器件替代了價格昂貴,且難以購買的 GPIB 控制芯片, 成功的實現(xiàn)了具有自主知識產(chǎn)權(quán)的 IP CORE,并且所有核心模塊完全采用 VHDL 語言實現(xiàn), 能夠在不同的開發(fā)環(huán)境上移植,可以根據(jù)不同的應用環(huán)境,對其進行進行剪裁和優(yōu)化,不僅大大節(jié)省了成本,而且具有很大的靈活性。
評論