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