文獻標識碼: A
文章編號: 0258-7998(2011)11-0103-04
VXI總線是一種基于VME總線的模塊化儀器結(jié)構(gòu)標準,它是VME總線在儀器領域里的擴展,對所有廠家開放并兼容現(xiàn)有的工業(yè)標準。隨著現(xiàn)代電子技術在武器系統(tǒng)中的應用,電子裝備在品種數(shù)量、技術復雜程度和保障模式等方面都有了許多新的變化,專用的測試設備往往功能單一、效費比低而難以滿足軍用測控系統(tǒng)的要求。VXI總線的出現(xiàn)為研制多功能通用測試系統(tǒng)提供了有利條件。
基于VXI總線的自動測試系統(tǒng)中,接口電路的主要作用是完成系統(tǒng)模塊與VXI零槽控制器之間的通信,接收地址信息、數(shù)據(jù)信息和各種控制命令,并向上位機傳送系統(tǒng)模塊信息。傳統(tǒng)的設計方案由于受芯片功能限制,大多存在響應速度慢、存儲量小、可靠性差、使用不靈活及功耗大等缺點,不能完全發(fā)揮VXI總線的性能優(yōu)勢。
為了解決傳統(tǒng)VXI接口電路模塊的集成度、速度以及靈活性等問題,本文提出了一種基于寄存器基器件的VXI總線接口電路設計方案。
1 VXI總線接口電路設計
本方案的特點即是滿足大量數(shù)據(jù)產(chǎn)生速度快、實時性要求高的應用。為此,系統(tǒng)采用了高性能的DSP(數(shù)字信號處理器),同時采用雙口RAM來實現(xiàn)上位機與DSP間的數(shù)據(jù)傳遞。寄存器基接口邏輯部分主要完成對VXI總線與本地總線的接口轉(zhuǎn)換、響應VXI總線的上電邏輯時序和讀寫操作等功能。為了達到設計目標,在本方案設計時又著重考慮了以下幾方面難點問題:
(1)由于主控計算機執(zhí)行速度很快,再加上VXI總線數(shù)據(jù)傳輸速率也很高,因此指令譯碼、接口電路應盡量簡單以提高執(zhí)行速度;
(2)要有足夠大的存儲空間以接收上位機發(fā)送來的控制數(shù)據(jù),當上位機有控制數(shù)據(jù)發(fā)來時,能通知本地CPU及時讀取,并能防止因本地CPU響應不及時而漏讀數(shù)據(jù);
(3)使用雙端口RAM時,如果兩個端口同時訪問同一存儲單元而產(chǎn)生沖突時,必須有仲裁電路;
(4)必須符合VXI總線規(guī)范設置配置寄存器,設置模塊的邏輯地址。A24尋址時還需確定偏移寄存器中各位的值。
1.1系統(tǒng)框圖
基于以上考慮,設計了圖1所示的VXI總線接口電路框圖。接口電路主要由寄存器基接口邏輯和實時存儲器(雙口RAM)組成。其中,寄存器基接口邏輯的設計中采用Interface Technology公司研制的VXI總線寄存器基接口器件IT9010來實現(xiàn)寄存器基接口邏輯,既解決了系統(tǒng)模塊物理空間緊張的問題,又能提高接口邏輯電路的可靠性。
1.2 IT9010
IT9010是專用VXI總線接口芯片,具有如下特點:
(1)內(nèi)部集成了VXI總線所需的寄存器,它們分別是配置寄存器、STATUS/ID寄存器、儀器類型寄存器、偏移寄存器、STATUS/CON寄存器、ID寄存器,因此IT9010也被稱為寄存器基的接口芯片;
(2)具有VXI總線地址譯碼功能;
(3)可對VXI總線和本地總線(LocalBUS)進行仲裁;
(4)具有譯碼所有31位VXI總線地址(A1~A31)的能力,因此用戶既可以用于24位地址(A24)設備的接口,也可以用于32位地址(A32)設備的接口;另外,IT9010還可通過外部撥碼開關設置ID寄存器和儀器類型寄存器;通過微處理器對IT9010進行編程等。
這些功能特性使其與VXI總線接口變得簡單方便,即使用最少的外圍電路并且在PCB板上占據(jù)最小的空間。同時該器件僅需要4片廉價的支持芯片來驅(qū)動VXI總線大電流背板信號,允許設計者以最少的硬件、最低的功耗和最少的設計工時實現(xiàn)一個基于寄存器基的VXI總線接口,大大降低了接口電路的復雜性[1]。IT9010集成VXI總線所需的寄存器、VXI總線地址譯碼、VXI總線/本地總線仲裁于單一芯片中。MODID支持功能允許芯片能實現(xiàn)靜態(tài)或動態(tài)聯(lián)絡基地址配置。IT9010還有31位VXI總線地址線的譯碼能力,可以允許使用者將芯片配置成一個A24/A32地址空間的器件[2]。一個芯片內(nèi)的偏移寄存器能由器件類型配置和所需的內(nèi)存空間總和來決定自動生成、譯碼和換算VXI總線的地址線。
1.3 系統(tǒng)尋址方式
為了有足夠大的存儲空間且方便尋址,VXI總線采用A16/A24尋址。A16尋址時配置寄存器的基地址由人工設置,采用SW DIP-8即可實現(xiàn)[3]。A24寄存器的基地址由系統(tǒng)資源管理器在初始化時寫入。配置寄存器中的ID寄存器和器件類別寄存器由IT9010的IDISEL*和DTISEL*初始化輸出一個已知值進行初始化。
1.4 實時存儲器
實時存儲器的設計采用Xilinx公司的Spartan-6 FPGA器件,在其內(nèi)部設計實現(xiàn)雙口RAM功能。其最大優(yōu)點是有兩套獨立的地址線、數(shù)據(jù)線和控制線,使得VXI總線和本地CPU可對其同時訪問,這樣可大大簡化電路。雙口RAM的沖突仲裁問題,可利用雙口RAM本身的BUSY線來解決,雙口RAM的BUSY邏輯如圖2所示,當VXI總線和本地CPU同時訪問其中一個存儲單元時,則BUSY線變低的一端讀、寫無效[4]。本設計中,將BUSYR線作為本地CPU機器時鐘等待的控制信號。當VXI總線及本地CPU同時訪問同一個存儲器單元造成沖突時,如果BUSYR變低,則該信號將控制DSP進入等待狀態(tài)直到BUSYR信號變?yōu)闊o效為止。而在VXI總線接口電路部分,用BUSYL線參與DTACK的邏輯控制,使VXI總線一方對雙端口RAM訪問也能正確可靠。
2 VXI總線接口電路功能分析
2.1地址譯碼
由于A16寄存器空間較小,不能滿足整個系統(tǒng)的需求,在VXI接口設計時采用了A16/A24尋址模式。零槽進行A24尋址時,模塊必須對A24譯碼,究竟零槽使用的是A16地址還是A24地址,系統(tǒng)模塊可以從地址修改碼獲知。當進行A24尋址時,IT9010自動對地址修改碼3DH、3EH進行響應。在A24方式下,偏移寄存器中的值必須與地址線對應的高位相符才能選中當前模塊。此時,IT9010才驅(qū)動UASEL信號及VXI/LCL信號有效,其中UASEL可以作為片選信號送雙口RAM。同時,地址線低位直接對存儲單元尋址,在REGWR和REGRD的控制下,實現(xiàn)對雙口RAM的讀寫。
此外,利用IT9010的SFAIL(系統(tǒng)故障)和SFINH*(系統(tǒng)故障禁止)與非后送VXI總線的SYSFAIL,主控模塊可禁止當前模塊的故障。
2.2配置寄存器的設置
根據(jù)VXI總線規(guī)范,每個寄存器基器件必須包含配置寄存器,并在系統(tǒng)上電過程中對其進行初始化。本模塊中ID寄存器和器件類型寄存器的初始化由DSP完成,DSP啟動后將根據(jù)當前模塊的需求對IT9010中的相關寄存器進行寫操作。
2.3數(shù)據(jù)接口電路
電路設計中由于使用了雙口RAM,使得電路變得簡單。雙口RAM的左端口由VXI總線訪問,右端口由本地CPU控制。
當VXI總線對其訪問時,由IT9010的UACS*和VXI/LCL作為左端口片選信號,REGRD和REGWR作為讀寫信號。雙口RAM中的數(shù)據(jù)經(jīng)VD00~15寫入或讀出。
當本地CPU訪問時,片選信號和讀寫信號由邏輯控制電路產(chǎn)生。本地CPU發(fā)出ZA0~9作為I/O端口地址送邏輯芯片CONTROL,并將WR、ZRD和BALE作為控制信號送CONTROL。同時本地CPU的ZD00~15發(fā)出RAM地址至鎖存器,CONTROL發(fā)出LEV1或LEV2后產(chǎn)生LADD0~12送到雙口RAM右邊的地址位,同時CONTROL還發(fā)出CER1、CER2、R/WR、OER信號控制雙口RAM右邊的片選、讀寫和輸出使能。雙口RAM中的數(shù)據(jù)經(jīng)ZD00~15寫入或讀出。
考慮到VXI總線的驅(qū)動能力及緩沖隔離要求[5],數(shù)據(jù)線D00~D15經(jīng)雙向緩沖器接到雙口RAM 的I/OL上。雙向緩沖器的使能引腳接IT9010上的VDBEN*引腳,作為數(shù)據(jù)選通;方向控制引腳接IT9010的VDDIR,以選擇數(shù)據(jù)流向。
2.4 “郵箱”邏輯
為了確保本地CPU能及時讀取上位機向本系統(tǒng)模塊發(fā)送的控制數(shù)據(jù),在雙口RAM中設立了“郵箱”以實現(xiàn)VXI總線和本地CPU之間的握手。IDT7025 將存儲地址FFFH和FFEH這兩個單元作為“郵箱”使用。如果上位機發(fā)來控制數(shù)據(jù)寫入了RAM中,并對FFFH進行寫操作,則右端口的INTR*將有效,向DSP產(chǎn)生一個中斷。本地DSP將響應此中斷,運行中斷服務程序去讀取控制數(shù)據(jù)。
3 工程應用
VXI總線在雷達多目標生成系統(tǒng)中有著廣泛的應用。圖3即是早期雷達多目標生成系統(tǒng)所采用的方案,其缺點主要有:(1)采用門陣列邏輯芯片(PAL)來實現(xiàn)接口電路的設計,接口電路集成度低、功耗大、可靠性差;(2)主控器為51系列單片機,速度較慢;(3)雙口RAM和計數(shù)器均為獨立器件實現(xiàn),整個系統(tǒng)體積大,靈活性差。
目前,基于該寄存器基器件的VXI總線接口電路已經(jīng)應用于某新型雷達多目標生成系統(tǒng)中,它為雷達提供多個參數(shù)可控的模擬目標信號以及后拖、連續(xù)波等干擾信號。某新型雷達多目標生成系統(tǒng)的結(jié)構(gòu)框圖如圖4所示。
在雷達多目標生成系統(tǒng)中VXI總線接口接收VXI總線上的命令并存儲起來,以中斷方式通知本地CPU讀取命令[6]。CPU對收到的命令數(shù)據(jù)進行處理,分別形成頻率碼、延遲碼和各個目標的特征字。頻率碼、延遲碼經(jīng)鎖存后送頻率引導部分;對接口電路的速度要求是:在400 ns內(nèi)完成頻率的引導。早期方案采用的是門陣列邏輯芯片(PAL)來實現(xiàn)接口電路的設計,接口電路集成度低、功耗大、可靠性差;主控器采用的是51系列單片機,讀寫速度慢。而本方案主控器為高端DSP器件,本地CPU速度更快[7]。由表1可見,該方案接口電路讀寫的速度完全滿足系統(tǒng)要求,并優(yōu)于早期方案。
系統(tǒng)中的各個目標特征字是按照命令寫入雙口RAM中一定長度的地址范圍內(nèi)。同步信號到來時,計數(shù)器開始計數(shù)作為地址送給雙口RAM,將其中的特征字讀出,形成功率碼和目標指示信號送到微波部分。這樣在雙口RAM不同地址寫入特征字就可以模擬多個目標,且脈寬、距離均可改變。因此對接口電路的實時存儲容量要求是:不小于32 MB。早前方案采用的雙口RAM為獨立器件,而本方案采用Xilinx公司的Spartan-6 FPGA器件,在其內(nèi)部設計實現(xiàn)雙口RAM功能,可以很好地解決并行性和速度問題,且其靈活的配置易于進行修改[8]。由表2可見,該方案接口電路的實時存儲容量設計為128 MB,也完全滿足系統(tǒng)要求,并優(yōu)于早期方案。
針對目前VXI接口電路模塊需要使用大量芯片、接口響應速度慢的問題,本文提出了一種基于寄存器基器件的VXI總線接口設計方案,并對其功能進行了詳細的分析,最后在具體應用中與早期的方案進行了性能對比,對比結(jié)果顯示本方案相對于早期方案具有明顯的優(yōu)勢并實現(xiàn)了設計目標。該方案可用于基于VXI接口電路的高速數(shù)據(jù)存儲的設計,并已應用于工程實踐中。目前該接口電路工作穩(wěn)定,響應速度快,完全能夠滿足高速實時系統(tǒng)的通信需求。該方案為基于VXI總線的高速數(shù)據(jù)存儲電路設計提供了新的思路,為進一步開發(fā)利用VXI總線奠定了基礎。
參考文獻
[1] 文華均. 一種VXI總線寄存器基接口[J]. 計算機自動測量與控制,1997,5(1):18-24.
[2] IT9010 User’s Manual. Interface Technology. Rev 4.1 April 1,1999.
[3] 徐晨曦,陳光禹.一種實用的VXI總線寄存器基接口電路的設計[J].電子技術應用,2004,30(9):35-37.
[4] 郭勇,肖明清,薛剛.雙口RAM在VXI總線接口電路中的應用[J]. 測控技術,2001,20(4):51-55.
[5] 田鵬飛,胡昌華.基于VXI總線的開關量I/O模件設計[J]. 彈箭與制導學報,2010,30(2):21-24.
[6] 趙匯強,武春英,張玉萍.VXI總線寄存器基器件中斷請求器的設計與實現(xiàn)[J].計算機測量與控制,2005,13(8):814-816.
[7] 三恒星科技.TMS320F2812 DSP原理與應用實例[M].北京:電子工業(yè)出版社,2009.
[8] 求實科技. CPLD/FPGA應用開發(fā)技術與工程實踐[M]. 北京:人民郵電出版社,2005.