- 相關推薦
一種實用的VXI總線寄存器基接口電路的設計
摘要:在介紹VXI總線協議的基礎上,通過對器件尋址、端口地址譯碼、DTB總線仲裁和中斷仲裁等幾部分工作原理的分析,提出了一種VXI寄存器基接口電路的實現方法,并給出了用可編程邏輯器件實現的過程。該接口電路已在多種VXI寄存器基器件中得到應用。VXI(VMEbus eXtention for Instrumentation)總線是一種完全開放的、適用于各儀器生產廠家成為高性能測試系統集成的首選總線。VXI總線器件主要分為:寄存器基器件、消息基器件和存儲器基器件。目前寄存器基器件在應用中所占比例最大(約70%),其實現方法在遵守VME協議的前提下,根據實際需要各有不同。VXI接口電路用于實現器件的地址尋址、總線仲裁、中斷仲裁和數據交換等。設計VXI接口首先需明確尋址空間和數據線寬度,VXI器件尋址有A16/A24、A16/A32和A16三種。A16/A24尋址支持16M字節空間,A16/A32尋址支持4G字節空間,A16尋址支持64字節地址空間,但不論哪種尋址方式,A16尋址能力是不可缺的。本文設計的VXI寄存器基接口電路是A16尋址的,支持D8和D16數據線傳輸,有較寬的使用范圍。其接口電路原理框圖如圖1所示。
1 DTB及DTB仲裁
DTB(數據傳輸總線)及DTB仲裁是VXI接口的核心,DTB主要包括:尋址總線、數據總線和控制總線。其主要任務是:①通過地址修改碼(AM)決定尋址空間和數據傳輸方式。②通過DS0*、DS1*、LWORD*、A1控制數據總線的寬度。③通過總線仲裁決定總線優先使用權。
VXI總線器件在A16(16位地址)尋址時,有64字節的地址空間,其呈部分作為器件配置寄存器地址(已具體指定),其余可用作用戶電路端口地址。每個器件的寄存器基地址由器件本身唯一的邏輯地址來確定。地址修改線在DTB周期中允許主模塊將附加的器件工作模式信息傳遞給從模塊。地址修改碼(AM)共有64種,可分為三類:已定義修改碼、保留修改碼和用戶自定義碼。在已定義的地址修改碼中又分為三種:①短地址AM碼,使用A02~A15地址線;②標準地址AM碼,使用A02~A23地址線;③擴展地址AM碼,使用A02~A31地址線。A16短地址尋址主要是用來尋址器件I/O端口,其地址修改碼為:29H、2DH。
圖2為VXI器件尋址電路圖,其中U1為可編程邏輯器件,其表達式為:VXIENA*=AS* !IACK*A14 !A15 !AM5 AM4 !AM3 AM1 !AM0;(!IACK*表示系統無中斷請求)。尋址過程為:當VXI主模塊發出的地址修改碼對應為29或2D、總線上地址A6~A13和邏輯地址設置開關K1的設置相同并且地址允許線AS有效時,圖2中的MYVXIENA*有效(為低),表示本器件允許被VXI系統尋址。在允許本器件尋址的基礎上(即MYVXIENA*有效),再通過MYVXIENA*、A1~A5、LWORD*、DS0*、DS1*譯碼生成64字節地址,根據VME總線協議可譯出單字節地址和雙字節地址。協議協定:當單字節讀寫時,奇地址DS0*為低、DS1*為高,偶地址DS1*為低、DS0*為高,LWORD*為高;雙字節讀寫時,DS0*和DS1*為低、LWODR*為高;四字節讀寫時,DS0*、DS1*和LWORD*都為低。
DTB數據傳輸應答主要依賴DTACK*和DS0*之間的互鎖性握手關系,而與數據線上有效數據什么時候出現無關,所以單次讀寫操作的速度完全決定應答過程。為適應不同速度用戶端口讀寫數據的可靠性,本文采用由用戶端口數據準備好線(DATREADY*)去同步DTACK*答應速度的方法來保證數據傳輸的有效性。該方法的優點是電路簡單、使用方便,缺點是占用DTB時間長,影響VXI系統性能,且最長延時時間不得超過20μs。通常情況下用戶可通過數據暫存的方法實現數據可靠傳輸,并使用戶端口數據準備好線(DATREADY*)接地。由于寄存器基器件在VXI系統中只能作為從模塊使用,所以其總線請求只有該器件發生中斷請求時才由中斷管理模塊提出。
2 中斷請求及仲裁電路
VXI系統設有七級中斷,優先中斷部遲疑不決包括:①中斷請求線IRQ1*~IRQ7*;②中斷應答線IACK*;③中斷應答輸入線IACKIN*;④中斷應答輸出線IACKOUT*。從系統的角度看,在VXI系統中有一個成菊花鏈的中斷查詢系統。當VXI系統中有中斷請求時,中怕管理器使中斷應答信號IACK*有效(置低),并送往菊花鏈驅動器,菊花鏈驅動器使輸出IACKOUT*有效,送至相鄰的下一個器件。如果相鄰器件沒有中斷請求,則該器件的IACKOUT*輸出仍為低,繼續向下一個相鄰器件傳送;當此器件有中斷請求時,所以其輸出IACKOUT*為高,進入中斷過程,并屏蔽后級器件的中斷應答。
圖2
為實現中斷請求和中斷仲裁,每個器件的中斷仲裁電路應完成的功能為:①產生中斷請求;②上傳狀態/識別碼;③屏蔽后級中斷應答。本文設計的中斷仲裁電路如圖3所示。其中TX1~TX3來自中斷號選擇跳線器,INNER-IRQ為器件內部用戶電路中斷請求信號,上升沿有效。中斷請求過程分如下四步:(1)在系統復位或中斷復位(來自控制寄存器)后,IRQOPEN*為“1”使比較電路輸出“1”,使中斷應答菊花鏈暢通,且譯碼電路不工作。(2)當本器件內有中斷請求時,使IRQOPEN*為“0”,則譯碼電路根據中斷置位開關的設置輸出相應中斷請求信號IRQx *。當中斷管理器接收中斷請求信號后使IACK*有效,并送往中斷菊花鏈驅動器使之輸出IACKOUT*有效,同時中斷管理器請求DTB總線使用權。(3)當中斷管理器獲得DTB使用權后,根據接收到的中斷請求信號,在地址允許線AS 作用下在地址線上輸出相應的A1~A3地址,使比較器輸出“0”,從而使IACKOUT*變高,屏蔽后續中斷,并清除本器件內部中斷請求。(4)中斷管理器使數據允許信號DS0*為低,讀出器件狀態/識別碼,響應中斷,同時在DS0*的上升沿清除中斷請求(使IRQOPEN*為“1”),接通中斷應答菊花鏈,進入中斷過程。
3 可編程器件實現和調試
為了克服用中小規模集成電路實現VXI接口
【一種VXI總線寄存器基接口電路的設計】相關文章:
高速PCI總線接口模塊設計03-08
帶熱插拔的CompactPCI CAN總線接口板設計03-30
基于串行外設接口(SPI)的CAN總線隔離擴展設計03-18
MPC8272總線與DSP HPI總線接口的FPGA實現03-07
談DSP HPI總線與MPC8272總線接口的FPGA實現03-08
CAN總線控制器與DSP的接口03-07
高速PCI總線接口卡的開發03-18
基子線陣CCD的長距離傳輸外總線的設計03-19