高速數(shù)據傳輸卡用PCI 9054總線控制器
事故追憶系統(tǒng)(黑匣子)能否及時、準確地將飛機、輪船等發(fā)生故障時各種數(shù)據真實地保存下來,提供給專家系統(tǒng)或專家,作為故障診斷的依據,是故障診斷正確與否的關鍵。利用計算機可以實現(xiàn)對黑匣子的信號控制和數(shù)據采集,而數(shù)據傳輸卡則在兩者之間起橋梁作用。為了滿足大量實時數(shù)據的采集要求,數(shù)據傳輸卡必須有較高的傳輸速率,這依賴于計算機總線的結構。目前用于PC機的數(shù)據傳輸卡大部分是基于標準ISA總線的,這種結構的最大缺點是傳輸速率太低(5MB/s),不能實現(xiàn)數(shù)據的實時高速傳輸,PCI總線正是為了滿足高速數(shù)據傳輸而設計的一種獨立于處理器的本地總線,具有32位和64位兩種復用的地址數(shù)據通路,一邊與處理器和存儲器總線接口,另一邊為外設擴展提供了高速通道。33MHz、32位的PCI總線可以實現(xiàn)132MB/s的數(shù)據傳輸速率;64位更使性能加倍。我們在實際工作中利用PCI總線將采集數(shù)據直接傳到系統(tǒng)內存,有效解決了數(shù)據的實時傳輸和存儲,為信號的實時處理提供了方便。
本文引用地址:http://m.ptau.cn/article/2972.htm連接PCI總線的設備分為兩類:主控設備和目標設備。主控設備可以控制總線驅動地址、數(shù)據和控制信號。目標設備不能啟動總線操作,只能依賴于主控設備從其中讀取或向其傳送數(shù)據。數(shù)據傳送卡選擇目標工作方式即可滿足傳輸要求,這需要CPU對讀寫進行干預。
傳輸卡系統(tǒng)應用于黑匣子信號的轉發(fā),數(shù)據接收前端由HOTLINK實現(xiàn),經過緩沖器的處理,將數(shù)據信號合為11位,考慮到后繼數(shù)據處理的方便,每路數(shù)字信號字長取16位,然后將16位數(shù)據分別傳入系統(tǒng)內存的不同區(qū)域。主要功能模塊有:
PCI 9054總線控制器、HOTLINK、緩沖器、傳輸控制芯片EPLD(電可擦除可編程邏輯器件)。系統(tǒng)框圖如圖1所示。
為滿足PCI總線接口規(guī)范,傳送卡必須支持即插即用和自動配置功能。本設計中選用了PCI 9054 專用接口芯片。
PCI 9054 是一32位/33MHz的通用PCI總線控制器專用芯片,符合PCI本地總線規(guī)范2.2版,突發(fā)傳輸速率達到132MB/s,本地總線支持復用/非復用的32位地址/數(shù)據,可為一種模式:M模式、C模式、J模式。具有可選的串行E2PROM接口,本地總線時鐘可和PCI時鐘異步。PCI 9054 內部有六種可編程的FIFO,以實現(xiàn)零等待突發(fā)傳輸及本地總線和PCI總線之間的異步操作。9054 支持主模式、從模式、DMA傳輸方式,因其強大的功能可應用于適配卡和嵌入式系統(tǒng)中。
信號的前端數(shù)據收集采用了Cypress公司的第二代HOTLINK收發(fā)器CY7C924DX芯片。
它通過高速串行線(光纖或同軸電纜)實現(xiàn)50Mbps~200Mbps的點對點的高速數(shù)據傳輸。內部由兩個獨立數(shù)據傳輸通道組成:接收通道和發(fā)送通道。接收通道實現(xiàn)串并轉換功能,發(fā)送通道實現(xiàn)并串轉換功能。將發(fā)送FIFO、接收FIFO、并串行轉換器和串并行轉換器集成于一塊芯片內,從而簡化了線路板的設計。
EPLD用以實現(xiàn)PCI 9054 與HOTLINK的傳輸控制邏輯、中斷邏輯以及主機對數(shù)據傳輸通道的前端控制。
數(shù)據傳輸卡具有與遠端存儲模塊進行雙向數(shù)據傳輸?shù)墓δ埽x寫方式分為兩種:I/O應答方式和DMA方式。前者可以對單個數(shù)據進行處理,后者能實現(xiàn)數(shù)據的突發(fā)連續(xù)性傳輸。
以計算機讀入數(shù)據為例:I/O應答方式每次只傳送單個數(shù)據,計算機首先向傳輸卡發(fā)出請求讀入信號,請求信號經傳輸卡送到黑匣子,黑匣子將數(shù)據準備好后,送至PCI9054本地數(shù)據總線,同時發(fā)出數(shù)據準備完畢信號,將數(shù)據從本地總線傳至PCI總線,同時觸發(fā)系統(tǒng)中斷,有中斷程序對數(shù)據進行處理,完成一次數(shù)據讀入;在DMA工作方式下,主機設定本地和PCI端的起始地址,傳輸字節(jié)數(shù)和傳輸方向,有軟件設置DMA傳輸?shù)姆绞?單周期,四個突發(fā)數(shù)據周期或永遠突發(fā)直至傳輸結束),PCI 9054本地總線通過PCI總線于計算機存儲器相連,PCI 9054 以突發(fā)方式向存儲器連續(xù)發(fā)送黑匣子的數(shù)據,大大提高了數(shù)據傳輸速率。
PCI數(shù)據傳輸卡的另一關鍵問題即驅動程序的開發(fā)。設備驅動程序提供連接到PCI板卡的軟件接口,是文件擴展名為.SYS的動態(tài)鏈接庫,在Windows98和Windows 2000中,設備驅動程序必須根據Windows驅動程序模型(WDM)設計。設備驅動程序的關鍵是如何完成硬件操作,基本功能是完成設備的初始化、對端口的 讀寫操作、中斷的設置和響應及中斷的調用、以及對內存的直接讀寫。本設計應用KRF-Tech公司的Windriver來編寫設備驅動程序,Windriver 針對PLX和AMCC的專用接口芯片特別編寫了API函數(shù)包,這些函數(shù)能夠方便地實現(xiàn)中斷處理、DMA傳輸、I/O操作、內存映射以及即插即用等功能,另外WinDriver提供了許多例程,使用者可以利用它們來產生自己驅動程序的基本框架,這些降低了PCI板卡驅動程序的開發(fā)難度。
PCI 9054 以其強大的功能和簡單的用戶接口,為PCI總線接口的開發(fā)提供了一種簡潔的方法,設計者只需設計本地總線接口控制電路,即可實現(xiàn)與PCI總線的高速數(shù)據傳輸。本設計經過測試數(shù)據能夠高速傳輸且正確,傳輸速率達到30Mbps. 在高速數(shù)據傳輸系統(tǒng)中,利用PCI總線的高速特性實時傳輸和存儲采集數(shù)據,有效解決了數(shù)據的傳輸和處理的實時性,可應用于高速數(shù)據采集卡、視頻處理卡、網卡等高速設備中,隨著PCI總線的普及應用,基于 PCI總線的傳輸系統(tǒng)設計有十分廣闊的前景。■
參考文獻
1. PCI 9054 Data Book V2.1 (Plx Technology). 2000
2. PCI local bus Specification Revision 2.2 . Portland PCI SIG
(PCI Special Interest Group). 1998
評論