摘? 要: 介紹VXI總線接口芯片" title="接口芯片">接口芯片IT9010的主要特點(diǎn)、工作方式和基本應(yīng)用。IT9010是一種很實用的接口器件,在基于虛擬儀器技術(shù)的測控系統(tǒng)中得到了廣泛應(yīng)用。
關(guān)鍵詞: VXI總線? 接口芯片IT9010? 虛擬儀器
?
隨著虛擬儀器技術(shù)的發(fā)展,基于VXI總線的自動測試系統(tǒng)得到了飛速的發(fā)展。基于VXI總線的測試平臺是公認(rèn)的21世紀(jì)儀器總線系統(tǒng)和自動測試系統(tǒng)的優(yōu)秀平臺。VXI總線模塊儀器的優(yōu)點(diǎn)是易于集成為不同用途的自動測試系統(tǒng),具有優(yōu)良的交互操作性,而且數(shù)據(jù)傳輸速率高、可靠性高、功耗低?,F(xiàn)在,VXI總線儀器和系統(tǒng)已為世人普遍接受,并成為儀器系統(tǒng)發(fā)展的主流。但VXI總線規(guī)范比較復(fù)雜,硬件模塊與其接口也較繁瑣,而且需要較多寄存器對總線模塊實現(xiàn)操作控制。本文介紹一種性能優(yōu)良的VXI總線接口芯片,即Interface Technology公司的VXI總線接口芯片IT9010,使用這種芯片與VXI總線接口較為簡單方便。
1 IT9010的主要特點(diǎn)
IT9010是專用VXI總線接口芯片,具有如下特點(diǎn):①內(nèi)部集成了VXI總線所需的寄存器,它們分別是配置寄存器" title="配置寄存器">配置寄存器、STATUS/ID寄存器、儀器類型寄存器、偏移寄存器、STATUS/CON寄存器、ID寄存器,因此IT9010也被稱為寄存器基的接口芯片;②具有VXI總線地址譯碼功能;③可對VXI總線和本地總線(LocalBUS)進(jìn)行仲裁;④具有譯碼所有31位VXI總線地址(A1~A31)的能力,因此用戶既可以用于24位地址(A24)設(shè)備的接口,也可以用于32位地址(A32)設(shè)備的接口;另外,IT9010還可通過外部撥碼開關(guān)設(shè)置ID寄存器和儀器類型寄存器;通過微處理器對IT9010進(jìn)行編程等。這些結(jié)構(gòu)使其與VXI總線接口較為簡單方便,即使用最少的外圍電路并且在PCB板上占據(jù)最小的空間。
2 IT9010的內(nèi)部結(jié)構(gòu)和工作原理
2.1 IT9010的管腳
IT9010屬于240腳的PQFP封裝,其管腳和內(nèi)部結(jié)構(gòu)如圖1所示。
?
?
IT9010主要由寄存器和控制邏輯所組成,管腳信號分為三大類,即VXI總線信號、本地總線信號和控制信號" title="控制信號">控制信號。
VXI總線的主要信號有:
VA(31:1)——VXI總線地址,IT9010在VAS信號的下降沿鎖存" title="鎖存">鎖存VA(31:1);
AM(5:0)——地址修改線;
VAS——VXI總線地址有效;
VWRITE——VXI總線寫;
VDS0,1——VXI總線數(shù)據(jù)有效;
IACK——中斷應(yīng)答信號;
IACKIN——中斷應(yīng)答輸入線;
IACKOUT——中斷應(yīng)答輸出線;
IRQ(7:1)——中斷請求線,需要加外部驅(qū)動器(例如74F760);
VDTACK——VXI數(shù)據(jù)傳送" title="數(shù)據(jù)傳送">數(shù)據(jù)傳送允許,需加驅(qū)動器(74F38);
VD(15:0)——VXI數(shù)據(jù)總線;
SFAIL——系統(tǒng)錯誤,需加驅(qū)動器(74F38),必須和SFINH信號經(jīng)過與非門接VXI總線的系統(tǒng)故障線SYSFAIL;
VDDIR——VXI總線數(shù)據(jù)傳送方向,為高電平時,VXI總線讀數(shù)據(jù),為低電平時VXI總線寫數(shù)據(jù),一般連到雙向緩沖器74F245的數(shù)據(jù)傳送方向控制端DIR,如圖2所示;
?
?
VDBEN——數(shù)據(jù)傳送使能,VXI總線讀數(shù)據(jù)或?qū)憯?shù)據(jù)時,VDBEN信號都有效;
LA(7:0)——邏輯地址;
MODID——模塊識別線,它可以通過特有的物理位置或插槽來識別邏輯器件;
本地總線信號有:
LD(15:0)——本地數(shù)據(jù)總線,用于訪問IT9010的內(nèi)部寄存器;
LDTACK——本地數(shù)據(jù)傳送允許;
LRW——本地讀寫信號;
LCS——本地芯片選擇,在微處理器對IT9010進(jìn)行初始化時驅(qū)動該信號有效;
LAD(6:1)——本地地址線,用于選擇IT9010的內(nèi)部寄存器;
INTL(3:1)——中斷選擇線,選擇VXI總線的IRQx;
FORCINT——中斷申請,當(dāng)此信號有效時,就通過由INTL(3:1)所選擇的中斷請求線IRQx向主機(jī)發(fā)中斷,由外部事件觸發(fā)或由微處理器觸發(fā);
對外部儀器的控制信號有:
VXI/LC——為1時示表明VXI總線控制IT9010,為0時表示本地總線控制IT9010;
REGRD——對外部儀器(存儲器)讀;
REGWR——對外部儀器(存儲器)寫;
UASEL——高位地址選擇,當(dāng)訪問的外部儀器地址是16位或32位時,此信號有效;
IT9010初始化控制信號有:
AUTOCFG——自動配置信號;
IDISEL——對IT9010的ID寄存器設(shè)置時有效;
DTISEL——對IT9010的儀器類型寄存器設(shè)置時有效。
2.2 IT9010的工作原理
首先初始化其配置寄存器,IDISEL和DTISEL控制信號分別用于設(shè)置ID寄存器和儀器類型寄存器,IDISEL和DTISEL可由IT9010自己提供(如圖2所示),也可由外部微處理器提供。在IDISEL和DTISEL的上升沿鎖存本地總線LD(15:0)上的數(shù)據(jù),然后設(shè)置邏輯地址。邏輯地址的設(shè)置有兩種方法,即靜態(tài)設(shè)置和動態(tài)設(shè)置。靜態(tài)設(shè)置,儀器的邏輯地址通過手動設(shè)置,地址固定,不能被編程,邏輯設(shè)置由芯片上LA[7:0]實現(xiàn),當(dāng)LA[7:0]是除FFH以外的其它值時,其對應(yīng)的值即為本地模塊的邏輯地址,可用DIP開關(guān)來實現(xiàn)靜態(tài)設(shè)置;當(dāng)LA[7:0]為高即FFH時,IT9010處于動態(tài)設(shè)置,可通過外部微處理器編程來設(shè)置,在模塊識別線MODID有效時,就將本地總線LD(15:0)上的數(shù)據(jù)鎖存到邏輯地址寄存器中。
AM[5:0]是地址修改線,用于區(qū)分A16、A24和A32地址空間,VXI的配置寄存器都位于A16的地址空間內(nèi),當(dāng)需要附加外部寄存器時,就需用地址修改線。IT9010為訪問外部寄存器(或存儲器)提供了接口信號,UASEL是高位地址選擇信號,REGRD和REGWR是對外寄存器的讀寫控制信號,并用VXI/LCL來表明當(dāng)前是哪個總線(VXI總線或本地總線)在控制IT9010。
中斷的產(chǎn)生可以通過本地總線寫STATUS/ID寄存器來實現(xiàn),也可以通過FORCINT腳的下降沿實現(xiàn)。中斷請求的選擇通過INTL(3:1)實現(xiàn),INTL(3:1)由手動設(shè)置,用DIP開關(guān)實現(xiàn)。由INTL(3:1)選擇中斷申請線的代碼如表1所示。
?
?
IT9010可以控制16位和32位的數(shù)據(jù)傳送。IT9010只有16位的數(shù)據(jù)總線,如果要以32位的格式訪問寄存器(或存儲器),高16位數(shù)據(jù)就會丟失。為了完成32位數(shù)據(jù)傳送,必須使用數(shù)據(jù)緩沖器。通常使用高速雙向緩沖器74F245,74F245可直接連到VXI數(shù)據(jù)總線上。控制信號VDDIR用于控制數(shù)據(jù)流動方向,其中低16位D(15:0)的使能由VDBEN控制,高16位D(31:16)的使能由D32BEN來控制。另外,VXI總線的輸入信號線LWORD有效時,表明是32位數(shù)據(jù)傳送,這時VDBEN和D32BEN都有效。參看圖3。
?
?
3 IT9010的典型應(yīng)用
3.1 最小寄存器基接口
圖2是IT9010的最小寄存器基應(yīng)用系統(tǒng),采用16位地址和16位數(shù)據(jù)形式,并且沒有附加寄存器(存儲器)。高速緩沖器74F244用于對IT9010的寄存器進(jìn)行設(shè)置,其中IDISEL信號用于對ID寄存器進(jìn)行設(shè)置;DTISEL用于對儀器類型寄存器進(jìn)行設(shè)置。ID寄存器和儀器類型寄存器的賦值都由DIP開關(guān)來設(shè)置,DTISEL和IDISEL信號用于控制74LS244的導(dǎo)通和關(guān)閉。LA[7:0]用于設(shè)置邏輯地址,邏輯地址用于區(qū)別不同的儀器設(shè)備,圖中使用DIP開關(guān)來設(shè)置,這是靜態(tài)設(shè)置方式。
3.2 24位/32位(A24/A32)存儲器接口
圖3是IT9010與存儲器相接的例子,即VXI總線通過接口芯片IT9010對存儲器進(jìn)行讀寫。存儲器采用四片32K×8位的存儲器,因此數(shù)據(jù)位是32位,地址是15位。圖中用了4片高速雙向緩沖器74F245,用于32位數(shù)據(jù)的傳輸控制。存儲器的地址線直接接到VXI總線的地址線上,注意VXI總線的地址線是從A1開始的31位,VXI總線的這種A[31:1]的地址,是為了靈活地訪問存儲器空間。根據(jù)VDS0和VDS1的值,VXI總線可訪問奇數(shù)地址、偶數(shù)地址和連續(xù)地址。VDDIR接74F245的DIR端,用于控制數(shù)據(jù)傳輸?shù)姆较?。VDBEN使能低16位數(shù)據(jù),D32BEN使能高16位數(shù)據(jù)。REGRD和REGWR分別接存儲器的讀寫端OE和WE。高位地址選擇UASEL接存儲器的片選信號CE。INTL[3:1]用于選擇中斷申請線,中斷申請線需經(jīng)過驅(qū)動器(74F760)才能觸發(fā)VXI背板的中斷。其余管腳的連接同圖2的最小寄存器基接口方法。
3.3 IT9010與微處理器的連接
IT9010還可與微處理器接口。微處理器的地址線接到IT9010的本地地址總線上(LAD(6:1)),并且經(jīng)過譯碼后接IT9010的片選CS。微處理器的數(shù)據(jù)線接IT9010的本地數(shù)據(jù)線(LD(15:0))。這樣,微處理器就可以訪問IT9010的內(nèi)部寄存器。REGRD和REGWR分別接到微處理器的/RD和/WR信號線上,需注意的是,微處理器的一個I/O引腳應(yīng)當(dāng)接到IT9010的FORCINT引腳上,使其具有向VXI總線發(fā)中斷的能力,因為對于VXI總線來說,微處理器是從設(shè)備,當(dāng)它需要向主機(jī)傳送數(shù)據(jù)時,要申請占用VXI總線,在主機(jī)允許后微處理器才能占用總線進(jìn)行數(shù)據(jù)的傳輸。另外,用微處理器與IT9010接口,可以實現(xiàn)邏輯地址的動態(tài)設(shè)置,并且可由微處理器對ID寄存器和儀器類型寄存器進(jìn)行設(shè)置。
4 VXI總線時序
VXI總線通過IT9010對存儲器或IT9010的寄存器進(jìn)行讀寫的時序簡單,讀時序圖如圖4所示,寫時序圖如圖5所示。圖中VDTACK信號是由VXI總線發(fā)出的數(shù)據(jù)傳送允許信號,VDSx是選擇讀取方式,VDDIR用于控制74F245的數(shù)據(jù)流動方向,VDBEN是數(shù)據(jù)傳輸使能位,VXI/LCL表示當(dāng)前是哪個總線控制IT9010,DDSEL是儀器設(shè)備選擇,UASEL是高位地址選擇。
?
?
用IT9010實現(xiàn)與VXI總線的接口,電路簡單易于實現(xiàn),所需外部器件少,可使技術(shù)人員把大部分精力放在硬件電路模塊的功能實現(xiàn)上,因此是一種很實用的接口器件,它在基于虛擬儀器技術(shù)的測控系統(tǒng)中得到了廣泛的應(yīng)用。
?
參考文獻(xiàn)
1 陳光禹. VXI總線測試平臺技術(shù).成都:電子科技大學(xué)出版社,1996