基于FPGA的VXI總線寄存器基模塊接口電路設計(06-100)
組態寄存器的設置
本文引用地址:http://www.104case.com/article/81437.htmID寄存器
ID寄存器是讀寄存器,用于回答本模塊是寄存器基器件。其內容一般可由總線三態緩沖器讀出。
型號寄存器
型號寄存器用于將本模塊和其他模塊區別。
狀態寄存器
狀態寄存器一般用5位,分別為CI(命令寫入與否)、PASS(初始化或自檢通過與否)、RDY(是否準備好)、DONE(命令是否執行完畢)、MODID*(模塊是否被識別)。
以上只列出了三種比較基本的寄存器的使用情況,由于每個器件有64字節的標準組態/操作寄存器,其他寄存器的配置應根據需要進行安排。
DTB及DTB仲裁
DTB及DTB仲裁是VXI接口的核心, DTB主要包括:尋址總線、數據總線和控制總線。尋址線包括地址線A01~A31、數據選通線DS0*和DS1*、長字線LWORD* 、讀寫線WR* 和地址選通線AS*。存儲器的最小尋址單位是字節,每一個字節都有唯一的二進制地址。VMEbus的數據寬度為32位,因此它可以一次進行傳輸4個字節單元中的部分或全部字節單元,主模塊用A02-A31地址線來決定所傳輸的哪一個4字節組,另外用4根信號線DS0*、DS1*、A01和LWORD*決定每次數據傳輸中所選擇的4字節組中的字節單元。字節定義及訪問控制分別見表1和2。另外,數據傳輸總線DTB有6根地址修改線(AM0~AM5),主模塊可用它向從模塊傳遞附加的二進制信息。根據VXIbus規范,A16器件只對地址修改碼29H、2DH進行響應,因此,AM2可以不參與譯碼。若只使用雙字節訪問中的字節(0-1),因此,DS0*=0、DS1*=0、A01=0和LWORD*=1。
讀寫控制
該部分電路負責控制VXI總線與模塊間的數據傳輸方向(DIR)和VXI總線與模塊之間是否選通(DBEN)。邏輯表達式如下:
DIR = VWRITE*;
DBEN =(!VDS0* II !VDS1*) && !CARDADDR
產生內部讀寫和選通信號
該部分電路用來實現DS0*、DS1*、AS*、WRITE*等信號的產生,這些信號不需要設計,直接利用背板提供的信號直接引入FPGA電路即可,但這些信號要根據實際進行組態。VXI總線數據傳輸應答信號(DTACK*)、鎖存信號(LATCH*)、數據傳輸使能信號(DBEN*)依據實際要求進行設計,它們的時序比較復雜,因此一般采用AHDL描述語言設計,通過狀態機實現。
評論