摘要:為了實(shí)現(xiàn)系統(tǒng)間圖像和視頻的高速傳輸,設(shè)計(jì)了一種以FPGA作為平臺的采集卡,該采集卡功能完全由硬件實(shí)現(xiàn)。本文介紹了整個(gè)方案的設(shè)計(jì)原理和邏輯設(shè)計(jì)方法,支持傳輸速率可達(dá)100Mbps-400Mbps。
關(guān)鍵詞:FPGA;1394b;數(shù)據(jù)采集
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-7712(2012)20-0023-01
一、引言
IEEE1394是1994年由美國Apple公司提出的高速串行總線標(biāo)準(zhǔn)。在1995年經(jīng)電氣和電子工程師協(xié)會(IEEE)認(rèn)證成為了正式標(biāo)準(zhǔn)。IEEE 1394也就是我們俗稱的火線(Fire Wire)發(fā)展至今已經(jīng)有了兩個(gè)版本,分別是IEEE 1394a和IEEE 1394b。該標(biāo)準(zhǔn)具有以下特點(diǎn):
1.高速的數(shù)據(jù)傳輸速率,IEEE 1394b最大可以支持到3200Mbps;
2.可同時(shí)連接不同傳輸速度的設(shè)備,具有很強(qiáng)的靈活性;
3.支持點(diǎn)對點(diǎn)的傳輸模式;
4.支持同步和異步數(shù)據(jù)傳輸。
利用IEEE 1394技術(shù),可以十分方便地把電腦和攝像機(jī)、高速硬盤、音響等多種多媒體設(shè)備相連接。隨著IEEE 1394技術(shù)不斷成熟,應(yīng)用的范圍也日漸廣泛,車載、航空上都利用其高性能、低延遲的特性進(jìn)行圖像、視頻等信息的傳輸和處理。本文就是介紹了一種1394接口數(shù)據(jù)采集卡的設(shè)計(jì)與實(shí)現(xiàn)。
二、應(yīng)用背景
某系統(tǒng)中,四個(gè)分機(jī)之間通過1394總線連接,分機(jī)III和分機(jī)Ⅳ需要實(shí)時(shí)采集分機(jī)I和分機(jī)II發(fā)來的相關(guān)數(shù)據(jù),在分機(jī)III和分機(jī)Ⅳ內(nèi)部,采集卡與載板之間通過LVDS進(jìn)行數(shù)據(jù)交互,分機(jī)之間的數(shù)據(jù)傳輸最小速率為64Mbps,系統(tǒng)要求采集卡除了完成數(shù)據(jù)采集任務(wù)外,還能夠?qū)崟r(shí)提供網(wǎng)絡(luò)狀態(tài)信息,結(jié)合所有的需求提出了以下設(shè)計(jì)方法。
三、原理設(shè)計(jì)
采集卡主要完成數(shù)據(jù)采集和監(jiān)控網(wǎng)絡(luò)狀態(tài)兩部分功能:
1.數(shù)據(jù)采集功能:接收其他分機(jī)通過1394總線發(fā)來的數(shù)據(jù),將1394數(shù)據(jù)包進(jìn)行解析,把有效的數(shù)據(jù)載荷上報(bào)載板,并且能夠?qū)崿F(xiàn)固定幀的應(yīng)答功能;
2.監(jiān)控網(wǎng)絡(luò)狀態(tài):載板需要實(shí)時(shí)了解各分機(jī)間網(wǎng)站狀態(tài),因此采集卡必須能夠?qū)⑹占降木W(wǎng)絡(luò)信息上報(bào)載板。
系統(tǒng)要求采集卡必須自行完成網(wǎng)絡(luò)節(jié)點(diǎn)配置、數(shù)據(jù)接收、數(shù)據(jù)解析和數(shù)據(jù)上報(bào)等功能。采集卡完全通過硬件實(shí)現(xiàn)所有功能。這樣的做法不僅可以提高了產(chǎn)品可靠性,減少軟件設(shè)計(jì)所帶來的開銷,降低了設(shè)計(jì)成本,最大化的保證產(chǎn)品工作效率。采集卡選用了Xilinx公司出品的XQV300-4BG352N來實(shí)現(xiàn)所有邏輯功能,1394鏈路層芯片和物理層芯片分別選用TI公司的TSB12LV32TPZEP和TSB41BA3BTPFPEP。
TSB12LV32TPZEP除了提供處理器接口外,同時(shí)還提供了Data Mover接口(以下簡稱DM接口)。DM接口有很多優(yōu)點(diǎn):
1.發(fā)送與接收大塊數(shù)據(jù)帶寬可達(dá)400Mbps;
2.允許外部接大容量FIFO;
3.能夠處理異步、等時(shí)、異步流包;
4.共有八種工作模式可以選擇,由控制寄存器中的三位信號組合而成,配置十分簡便;
5.當(dāng)不使用時(shí),DM接口表現(xiàn)為高阻狀態(tài)。
DM接口支持三種類型的包:異步包、等時(shí)包、異步流包(1394a-2000支持的格式),并且能夠與外部存儲器連接來支持大量數(shù)據(jù)的傳輸。當(dāng)此接口配置成接收時(shí),所有的數(shù)據(jù)都在DMCLK的上升沿進(jìn)行同步接收。利用DM接口的這個(gè)特性,我們選擇FPGA作為平臺,通過可編程邏輯完成對DM接口的控制,從而實(shí)現(xiàn)數(shù)據(jù)的采集工作。
四、邏輯設(shè)計(jì)
(一)初始化單元。初始化單元包括兩部分內(nèi)容,該單元是采集卡正常工作的基礎(chǔ),分別完成上電BIT和網(wǎng)絡(luò)配置初始化工作。
上電BIT會進(jìn)行兩部分的操作。首先是對鏈路層芯片進(jìn)行訪問,判讀鏈路層芯片的ID號是否正確,然后會對鏈路層芯片的某個(gè)固定可讀寫寄存器進(jìn)行讀寫訪問,以讀寫結(jié)果是否一致來表明鏈路層接口是否工作正常。在完成鏈路層芯片的測試后,會對物理層芯片進(jìn)行相同的訪問操作,以保證在上電時(shí)基本硬件能夠正常訪問,上電BIT的結(jié)果會通過狀態(tài)控制單元發(fā)送給載板。
上電BIT正常通過后,采集卡將會開始對本板硬件資源進(jìn)行1394b網(wǎng)絡(luò)配置初始化。在初始化完成后,采集卡將會獲取1394b總線工作狀態(tài),這通過讀取物理層芯片某個(gè)寄存器的相應(yīng)位來判斷。當(dāng)確定鏈路建立后,通過檢查和配置Node ID寄存器,強(qiáng)制設(shè)置采集卡為子節(jié)點(diǎn)。當(dāng)完成上述工作后,采集卡會將獲取到的總線狀態(tài)通過狀態(tài)控制單元發(fā)送給載板。在本設(shè)計(jì)中,由于載板不對采集卡進(jìn)行配置操作,因此所有的網(wǎng)絡(luò)配置數(shù)據(jù)都儲存在采集卡上。這樣的設(shè)計(jì)簡化了載板與采集卡之間的控制關(guān)系,比較適用于網(wǎng)絡(luò)配置信息相對確定的系統(tǒng)中。
(二)數(shù)據(jù)接收單元。在上文已經(jīng)提到1394鏈路層芯片提供了DM接口,該接口位寬16bit,允許外部接大容量的FIFO,而載板數(shù)據(jù)接口是8bit,為了實(shí)現(xiàn)數(shù)據(jù)的無縫連接,在FPGA內(nèi)部為每一路1394接口設(shè)計(jì)了一個(gè)數(shù)據(jù)處理單元。該數(shù)據(jù)處理單元內(nèi)部包含一個(gè)FIFO,F(xiàn)IFO的接收端為16bit,而輸出端為8bit,采用Xilinx公司提供的軟IP核實(shí)現(xiàn)。當(dāng)接收到1394b總線上發(fā)來的數(shù)據(jù)后,會以中斷的方式通知數(shù)據(jù)接收單元從DM接口開始讀取數(shù)據(jù)。在對接收到的數(shù)據(jù)完成校驗(yàn)無誤后,將該數(shù)據(jù)幀的1394幀頭和幀尾剔除,保留有效數(shù)據(jù)載荷寫入FIFO。采集卡與載板之間接口十分簡單,每路接口由8根數(shù)據(jù)線和1根寫使能信號組成,當(dāng)寫使能信號為低時(shí)表明數(shù)據(jù)或狀態(tài)信息有效。
(三)狀態(tài)控制單元。采集卡與載板之間有4根狀態(tài)位信號,分別是STATE_OE#、STATE0、STATE1和STATE2,STATE_OE#表示狀態(tài)有效位,其余三根信號表示各種狀態(tài)。采集卡共提供六種狀態(tài)標(biāo)識,通過這樣的方式可以使主機(jī)實(shí)時(shí)獲得采集卡的工作狀態(tài),并對采集到的數(shù)據(jù)正確性有所判斷。
(四)數(shù)據(jù)發(fā)送單元。數(shù)據(jù)發(fā)送單元主要實(shí)現(xiàn)1394b總線上固定幀應(yīng)答功能。分機(jī)之間通過1394b總線傳輸數(shù)據(jù)時(shí),需要了解掌握采集卡的工作狀態(tài)。當(dāng)采集卡接收到固定幀時(shí),會向發(fā)送方返回一個(gè)應(yīng)答包,以表示數(shù)據(jù)已接收。
五、結(jié)束語
本文提出的一種數(shù)據(jù)采集卡的設(shè)計(jì)與實(shí)現(xiàn)方法。該產(chǎn)品實(shí)現(xiàn)了1394接口100Mbps-400Mbps速率下的高速數(shù)據(jù)采集,通過FPGA+LLC這樣的設(shè)計(jì)方案,使產(chǎn)品具有較高的可靠性和可維護(hù)性,整個(gè)設(shè)計(jì)完全由硬件實(shí)現(xiàn),。在系統(tǒng)綜合時(shí),出色的完成了圖像和視頻的采集工作,滿足了系統(tǒng)的需求。
參考文獻(xiàn):
[1]張大樸.IEEE 1394協(xié)議及接口設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2004.
[2]TSB12LV32 Data Manual[Z].Texas Instruments,2001.