基于PCI總線多通道數據采集系統的設計
在數字信號處理領域,很多情況下,模擬輸入數字化后需要進行實時處理,同時需要計算機的參與(參數控制、數據傳輸等)。這就需要實時性很強的DSP參與處理,這里選用TMS320C5416作為DSP處理芯片,他具有一般DSP的特點,這里不在贅述。?至于DSP與PCI9054間的接口,考慮到充分發揮他們的高速優勢,采用FIFO緩沖器在二者之間交換數據,而控制邏輯由CPLD完成,如圖4所示。?
2.5 CPLD邏輯控制?
系統采用ALTERA公司MAX7000A系列的EPM7256A芯片,他的配置程序固化在芯片內的?E?2PROM?中,所以該器件不需要專用的配置存儲器,所有MAX7000A系列產品都由ALTERA公司提供的編程硬件和軟件進行編程。
利用EPM7256A內部邏輯單元設計實現局部總線控制器,用于實現局部總線的狀態控制,同時利用其內部邏輯編程形成存儲陣列構成SRAM,存放發往各端口的操作指令。?
2.5.1 狀態機設計?
在PCI目標和DMA傳輸模式下,PCI9054是局部總線的主設備,通過設置PCI9054內部配置寄存器可以使能或禁止外部等待輸入控制信號READY#,以使PCI9054工作于內部等待或外部等待狀態。若READY#信號被禁止,則在每次傳輸的地址和數據間插入等待狀態,其數目由內部等待狀態計數器決定。若READY#信號使能,則READY#信號的持續時鐘周期數目決定了PCI9054所附加的等待狀態。系統采用外部READY#信號,以決定等待狀態。圖5為局部總線狀態機轉換圖。?
從狀態圖可以看出,該狀態機有3種傳輸狀態,空閑狀態、等待狀態和傳輸狀態。狀態機能成功與PCI9054配合完成數據傳輸,傳輸性能穩定,效果較好,是現在PCI9054局部總線狀態機設計的一般方法。通過實際測試,在用戶模式下,查詢方式DMA傳輸速度可以穩定達到68 MB/s。?
2.5.2 改進的狀態機設計?
PCI總線峰值速率為132 MB/s,在上述狀態機和傳輸狀態下,DMA速率只有68 MB/s,說明其中存在漏洞。

評論