基于FPGA的IEEE 1394b高速數據傳輸系統
摘要:介紹了IEEE 1394h串行總線(xiàn)的特點(diǎn),并以FPGA嵌入式處理器Nios II為控制核心,設計實(shí)現了一種1394b高速數據傳輸系統。闡述了該系統的硬件設計和軟件工作流程。實(shí)驗表明,該系統可靠性高、實(shí)時(shí)性好、具有廣泛的應用價(jià)值。
關(guān)鍵詞:IEEE 1394b;串行總線(xiàn);FPGA;Nios II
隨著(zhù)信息技術(shù)的迅速發(fā)展,計算機的速度不斷提高,外部設備的速度也隨之提高。常用串行總線(xiàn),如USB2.0總線(xiàn)最高速率為480 Mb·s-1,IEEE 1394a總線(xiàn)最高速率為400 Mb·s-1,但在有些情況下難以滿(mǎn)足高帶寬和實(shí)時(shí)性的要求,成為系統性能進(jìn)一步提升的瓶頸。IEEE 1394 b-2002正是在這種情況下應運而生,它最高支持800 Mb·s-1的總線(xiàn)傳輸速率,最多可支持63個(gè)節點(diǎn),最大傳輸距離100 m,支持即插即用、等時(shí)和異步傳輸,并且向下完全兼容IEEE 1394a的設備。1394b串行總線(xiàn)可以應用在眾多的領(lǐng)域中,無(wú)論是在視頻傳輸還是計算機外設、網(wǎng)絡(luò )互連等方面都有著(zhù)巨大的市場(chǎng)潛力。具有相同功能的1394b產(chǎn)品,比普通計算機配套設備便宜,具有更好的可擴展性和競爭力。
1 系統的硬件設計及仿真
系統硬件設計框圖如圖1所示。根據用戶(hù)需求,該系統以FPGA為單板控制核心,外部慢設備的控制或狀態(tài)信號通過(guò)RS-232總線(xiàn)發(fā)送到FP-GA內部的相應接收模塊。這些慢設備發(fā)送的數據信息量不大,但要求準確無(wú)誤的傳送到主機端顯示,所以這些數據在1394b總線(xiàn)上采用了異步傳輸的方式。除慢設備外,系統單板還通過(guò)RS-422差分接收器接收兩路壓縮后的DVD視頻圖像數據。這些圖像數據通過(guò)等時(shí)傳輸的方式不間斷的發(fā)送到主機上,經(jīng)過(guò)解壓縮進(jìn)行實(shí)時(shí)播放。系統單板上還留有一些擴展接口,用于功能擴展。
綜合考慮系統的功能需求及實(shí)現的復雜度,FPGA采用了Altera公司Cyclone II系列的EP2C70F67216。這款FPGA具有68 416個(gè)邏輯單元,422個(gè)用戶(hù)I/O管腳,I/O標準支持3.3 V PCI,可以通過(guò)IP核實(shí)現主從模式的PCI接口。在系統中FPGA主要完成:(1)異步與等時(shí)數據的接收。(2)數據拼接與數據緩存。(3)外部SRAM的控制,實(shí)現大量數據的片外緩存。(4)與鏈路層控制器間的PCI接口時(shí)序控制。(5)與Nios II軟核之間的接口模塊。
鏈路層控制器TSB82AA2通過(guò)PCI總線(xiàn)與FPGA相連,PCI接口的時(shí)序較復雜,本設計采用了FPGA內部的IP核PCI_Compiler來(lái)實(shí)現PCI主從傳輸模式。鏈路層控制器與FPGA的連接關(guān)系如圖2所示。在SOPC Builder開(kāi)發(fā)環(huán)境中,只需要設置相應的參數,就可以實(shí)現PCI總線(xiàn)與FPGA內部Av-alon總線(xiàn)之間的數據交換。需要注意的是,在生成硬件網(wǎng)表前需要加入IP核有關(guān)文件中提供的PCI約束信息,并按照約束文件的要求鎖定管腳。
評論