1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)_第1頁
1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)_第2頁
1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)_第3頁
1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)_第4頁
1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1394b數(shù)據(jù)傳輸有什么特點(diǎn)?如何利用FPGA設(shè)計(jì)一個1394b雙向數(shù)據(jù)傳輸系統(tǒng)?引言隨著時(shí)代和技術(shù)的發(fā)展,對于數(shù)據(jù)總線帶寬的要求越來越高,現(xiàn)有的總線標(biāo)準(zhǔn)越來越難以滿足實(shí)際應(yīng)用中對高總線速率的要求。先進(jìn)的總線技術(shù)對于解決系統(tǒng)的瓶頸,提高系統(tǒng)性能起著至關(guān)重要的作用,同時(shí)為了實(shí)現(xiàn)批量數(shù)據(jù)的傳輸,IEEE又公布了支持更高傳輸速率的IEEEStd1394b-2002(簡稱1394b)串行總線標(biāo)準(zhǔn),高速可升級性可支持高達(dá)800Mb/s下的數(shù)據(jù)傳輸速率,并且能夠向后兼容先前的1394-1995和1394a標(biāo)準(zhǔn)。由于1394b是一種數(shù)據(jù)傳輸速率更高的串行總線標(biāo)準(zhǔn),支持異步傳輸和等時(shí)傳輸兩種傳輸方式。分層的軟件和硬件模型可使其通信建立在事務(wù)層、鏈路層和物理層協(xié)議的基礎(chǔ)之上。本文充分利用FPGA和DSP芯片的硬件資源,基丁1394b傳輸協(xié)議和規(guī)范的基礎(chǔ)上,介紹1394b數(shù)據(jù)傳輸系統(tǒng)的硬件設(shè)計(jì)結(jié)構(gòu)、系統(tǒng)的工作流程和總線的配置過程。11394b的特點(diǎn)1394b雙向數(shù)據(jù)傳輸系統(tǒng)的主要特點(diǎn)如下:(1)高速可升級:支持100Mb/s、200Mb/s、400Mb/s和800Mb/s的傳輸速率,使用塑料光纖時(shí)可以提高到3.2Gb/s;(2)支持點(diǎn)到點(diǎn)傳輸:各個節(jié)點(diǎn)可脫離主機(jī)自主執(zhí)行事務(wù);(3)即插即用:可以在任何時(shí)候向1394b網(wǎng)絡(luò)添加或移除設(shè)備,既不用擔(dān)心會影響數(shù)據(jù)的傳輸,也不需要進(jìn)行重新配置,總線會重新枚舉,節(jié)點(diǎn)也可以自動配置,無需主機(jī)干預(yù);(4)熱插拔:無需將系統(tǒng)斷電就可以加入或移除設(shè)備;(5)傳輸距離:采用CAT-5UTP5線(5類非屏蔽雙絞線)時(shí),可以保證傳輸速率在100Mb/s的前提下將傳輸距離延長至100m,使用玻璃光纖時(shí)可在3.2Gb/s的前提下延長至50m;(6)支持兩種傳輸方式:包括等時(shí)(Isochronous)和異步(Asynchronous)數(shù)據(jù)傳輸方式;(7)拓?fù)浣Y(jié)構(gòu):設(shè)備間采用樹形或菊花鏈拓?fù)浣Y(jié)構(gòu),每條總線最多可以連接63臺設(shè)備;(8)可提供電源:一些低功耗設(shè)備可以通過總線取得電源,而不必為每一臺設(shè)備配置獨(dú)立的供電系統(tǒng);(9)公平仲裁:等時(shí)傳輸具有較高的優(yōu)先級,同時(shí)異步傳輸也能獲得對總線的公平訪問;(10)提高系統(tǒng)性能:將資源看作寄存器和內(nèi)存單元,可以按照CPU內(nèi)存的傳輸速率進(jìn)行讀/寫操作,因此具有高速傳輸能力。21394b數(shù)據(jù)傳輸系統(tǒng)的硬件實(shí)現(xiàn)由于1394b鏈路層芯片必須通過PCI總線接口與FPGA進(jìn)行相連,實(shí)現(xiàn)數(shù)據(jù)的傳輸。如果只用FPGA和DSP來實(shí)現(xiàn)對PCI外設(shè)的控制,需要設(shè)計(jì)復(fù)雜的接口邏輯,在1394b高速數(shù)據(jù)傳輸系統(tǒng)中不僅會影響FPGA本身的性能,而且會給FPGA之外的電路或者系統(tǒng)帶來諸多問題。因此這里采用PCI9054總線接口芯片配合FPGA和DSP來實(shí)現(xiàn)1394b雙向數(shù)據(jù)傳輸系統(tǒng),將對復(fù)雜的PCI總線接口的控制轉(zhuǎn)換為對相對簡單的本地總線接口的控制,不僅對PCI協(xié)議有著良好的支持,而且提供給設(shè)計(jì)者良好的接口,大大減少了設(shè)計(jì)者的工作量。PCI9054芯片在PCI總線端支持32位/33MHz,當(dāng)本地總線端采用32位數(shù)據(jù)總線時(shí),其數(shù)據(jù)傳輸速率可達(dá)132MB/s,故能夠滿足1394b總線上800Mb/s的數(shù)據(jù)傳輸速率要求。本設(shè)計(jì)中的主控芯片采用Altera公司的EP2C70F672C6型FPGA主流芯片,DSP選用TI公司的TMS320C6415DSP芯片,1394b套片選用TI公司的鏈路層芯片TSB82AA2和物理層芯片TSB81BA3,PCI9054采用PLX公司的32位33MHz的PCI總線通用接口芯片。1394b雙向數(shù)據(jù)傳輸系統(tǒng)的硬件總體結(jié)構(gòu)圖如圖1所示,主要由現(xiàn)場可編程門陣列(FPGA)模塊、DSP模塊、AD/DA數(shù)據(jù)轉(zhuǎn)換接口模塊、SPI數(shù)據(jù)輸入/輸出接口模塊、串口(UART)通信模塊、SRAM存儲模塊、EPCS串行配置器件模塊、FLASH存儲模塊、PCI9054模塊以及1394b套片模塊組成。由于PCI9054內(nèi)部可編程FIFO存儲器的存在,數(shù)據(jù)可以大批量突發(fā)傳輸而不丟失,這樣不儀滿足實(shí)時(shí)性要求,同時(shí)可以根據(jù)用戶的需要采用與PCI時(shí)鐘異步的本地端時(shí)鐘,PCI9054本地總線工作在C模式時(shí),通過芯片內(nèi)邏輯控制,將PCI的數(shù)據(jù)線和地址線分開,很方便地為本地端總線工作時(shí)序提供各種方式。圖2所示為PCI9054在C模式下與FPGA相連的本地總線數(shù)據(jù)突發(fā)DMA傳輸方式的時(shí)序圖,其中,LCCLK為輸入時(shí)鐘信號,從圖2中可以看出,在本地端總線上讀寫數(shù)據(jù)時(shí),可以不間斷地進(jìn)行突發(fā)傳輸,當(dāng)數(shù)據(jù)不能連續(xù)傳輸時(shí),則可以插入等待狀態(tài),這樣可以大大提高數(shù)據(jù)的吞吐量。31394b數(shù)據(jù)傳輸系統(tǒng)的數(shù)據(jù)流向由于1394b總線標(biāo)準(zhǔn)支持等時(shí)子事務(wù)和異步子事務(wù)兩類子事務(wù),因此,其傳輸?shù)臄?shù)據(jù)類型分為等時(shí)數(shù)據(jù)和異步數(shù)據(jù),等時(shí)傳輸將數(shù)量不定的數(shù)據(jù)按照規(guī)定的時(shí)間間隔向某個地址發(fā)送,對實(shí)時(shí)性要求較高,不需要返回確認(rèn)信號;而異步傳輸是將數(shù)據(jù)傳送到特定的地址,對數(shù)據(jù)傳輸?shù)臏?zhǔn)確性要求較高,需要接收端以多次握手的方式發(fā)送返回確認(rèn)信號。在本系統(tǒng)中由DVD播放器發(fā)送的數(shù)據(jù)經(jīng)圖像壓縮板壓縮后由SPI口傳入FPGA,或者由攝像頭發(fā)送的數(shù)據(jù)經(jīng)過A/D轉(zhuǎn)換,再由FPGA的通用I/O口送入FPGA,兩者均為等時(shí)數(shù)據(jù);而一些控制命令等異步數(shù)據(jù)則由串口送入FPGA,并經(jīng)過DSP進(jìn)行處理,DSP和FPGA相結(jié)合可以提高數(shù)據(jù)傳輸?shù)男?。FPGA實(shí)現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換以及數(shù)據(jù)的拼接并對數(shù)據(jù)打包成符合1394b協(xié)議的數(shù)據(jù)包類型以及配置數(shù)據(jù)包的包頭信息,經(jīng)過讀/寫FIFO并在外部的SRAM進(jìn)行緩存,通過DMA仲裁模塊進(jìn)行仲裁處理,用DMA這一快速數(shù)據(jù)傳輸機(jī)制將數(shù)據(jù)寫入PCI9054的FIFO中。PCI9054作為一種橋接芯片,在本地總線和PCI總線之間提供信息傳遞,通過PCI9054芯片將本地端數(shù)據(jù)總線標(biāo)準(zhǔn)轉(zhuǎn)換成能被1394b鏈路層芯片傳輸?shù)腜CI總線數(shù)據(jù)標(biāo)準(zhǔn),再通過1394b的鏈路層芯片實(shí)現(xiàn)對等時(shí)和異步數(shù)據(jù)包的地址和信道號的解碼、數(shù)據(jù)校驗(yàn)、數(shù)據(jù)分析等,最后由物理層芯片通過仲裁邏輯實(shí)現(xiàn)對總線的存取,并對本地節(jié)點(diǎn)要發(fā)送的數(shù)據(jù)進(jìn)行編碼,由物理層芯片提供的電氣和機(jī)械接口將數(shù)據(jù)位發(fā)送到與之相連的1394b線纜上去,最終送入接有1394b板卡的主機(jī)進(jìn)行DVD發(fā)送的數(shù)據(jù)解壓縮和播放,以便對攝像頭發(fā)送的視頻進(jìn)行播放以及異步數(shù)據(jù)的顯示等操作。讀出的數(shù)據(jù)則由接有1394b板卡的主機(jī)發(fā)送,并通過1394b物理層芯片、1394b鏈路層芯片、FPGA、外部SRAM等進(jìn)行數(shù)據(jù)處理,根據(jù)數(shù)據(jù)包類型由相應(yīng)的端口送出去,在這期間與發(fā)送數(shù)據(jù)相比進(jìn)行了相反的操作,這樣就實(shí)現(xiàn)了1394b雙向數(shù)據(jù)傳輸系統(tǒng)。FPGA作為整個系統(tǒng)的控制管理模塊,主要完成以下任務(wù):(1)對SPI端口、UART端口和AD/DA端口數(shù)據(jù)的發(fā)送和接收;(2)將待發(fā)送的數(shù)據(jù)進(jìn)行串并轉(zhuǎn)換和數(shù)據(jù)拼接;(3)將數(shù)據(jù)進(jìn)行打包、解包處理并通過SRAM進(jìn)行數(shù)據(jù)的緩存;(4)與PCI9054芯片進(jìn)行通信,以完成數(shù)據(jù)的傳送。本系統(tǒng)中DSP的主要功能是:(1)與PCI9054芯片和1394b鏈路層芯片通信實(shí)現(xiàn)設(shè)備的自舉和身份的確認(rèn);(2)發(fā)送和接收一些控制命令,控制數(shù)據(jù)的傳輸;(3)實(shí)現(xiàn)異步數(shù)據(jù)的發(fā)送和接收功能,根據(jù)異步請求數(shù)據(jù)的類型對其進(jìn)行相應(yīng)的處理;(4)為等時(shí)傳輸申請等時(shí)信道和帶寬,傳輸后釋放所申請的信道和帶寬。圖3所示是系統(tǒng)中FPGA的內(nèi)部框圖,由于數(shù)據(jù)傳輸速率較快,數(shù)據(jù)的處理需要一定的時(shí)間,不能將每一組數(shù)據(jù)無間斷的傳輸,且FPGA內(nèi)部FIFO容量有限,采用SRAM與FPGA相結(jié)合完成輸入輸出數(shù)據(jù)的緩存;DSP實(shí)現(xiàn)一些輔助的操作如對異步數(shù)據(jù)的處理、配置PCI9054芯片的內(nèi)部寄存器和1394b鏈路層寄存器等操作以及PCI的傳輸控制、設(shè)備識別、為等時(shí)傳輸申請信道和帶寬等;EPCS串行配置芯片實(shí)現(xiàn)配置數(shù)據(jù)的存儲,使系統(tǒng)上電后將配置數(shù)據(jù)自動下載到FPGA內(nèi)部,同時(shí)可以用FLASH存儲器存放DSP用戶代碼,在DSP上電工作后,利用DSP提供的boot機(jī)制,再將程序下載到DSPRAM中,使本系統(tǒng)實(shí)現(xiàn)脫機(jī)工作。41394b的系統(tǒng)工作流程1394b總線的配置是自動進(jìn)行的,它不受任何設(shè)備和主機(jī)的干擾。總線配置過程主要有三個步驟:(1)總線初始化;(2)自標(biāo)識;(3)樹標(biāo)識。在這三個過程之后,整個系統(tǒng)在邏輯上形成了樹狀拓?fù)浣Y(jié)構(gòu),每個節(jié)點(diǎn)都被賦予了一個節(jié)點(diǎn)號并都發(fā)出節(jié)點(diǎn)說明信息??偩€的初始化過程如下:(1)設(shè)備識別:設(shè)備識別可通過E2PROM來完成;(2)分配I/O空間和Memory空間;(3)配置PCI9054的DMA寄存器;(4)對1394b鏈路層和物理層芯片進(jìn)行配置。由于1394bOHCI(OpenHostControlInterfaceSpecification)協(xié)議是1394b串行總線鏈路層協(xié)議的一種實(shí)現(xiàn)方式。1394bOHCI協(xié)議規(guī)定1394b的等時(shí)傳輸和異步傳輸均為DMA方式,所以需要對PCI9054的DMA寄存器進(jìn)行配置。PCI9054中有兩個獨(dú)立的通道采用DMA方式傳輸數(shù)據(jù)可以不受主機(jī)的干預(yù),同時(shí)采用突發(fā)方式傳輸數(shù)據(jù)可以提高數(shù)據(jù)的傳輸速率,同時(shí)也可以充分發(fā)揮PCI總線的性能。系統(tǒng)上電后,通常需要進(jìn)行設(shè)備的自舉,協(xié)助主機(jī)完成設(shè)備識別和設(shè)備身份的確認(rèn),設(shè)備的自舉主要包括:初始化鏈路層寄存器;初始化配置ROM;判斷電纜是否插入;強(qiáng)制根節(jié)點(diǎn);響應(yīng)根節(jié)點(diǎn)、讀取配置ROM請求直到根節(jié)點(diǎn)調(diào)用相應(yīng)驅(qū)動程序完成設(shè)備識別。圖4所示為本系統(tǒng)的工作流程圖。設(shè)備自舉完成以后,即可等待數(shù)據(jù)包的到來,根據(jù)數(shù)據(jù)包的類型,如果是異步數(shù)據(jù)包則進(jìn)行相應(yīng)的處理;如果是等時(shí)數(shù)據(jù)包則進(jìn)行等時(shí)信道和帶寬的申請,申請成功后則配置DMA寄存器以DMA方式進(jìn)行等時(shí)數(shù)據(jù)的發(fā)送或等時(shí)數(shù)據(jù)的接收,等時(shí)數(shù)據(jù)傳輸完畢后釋放其信道和帶寬,這樣完成一次數(shù)據(jù)的傳輸,接下來進(jìn)行下一次數(shù)據(jù)的傳輸,如此循環(huán)完成整個數(shù)據(jù)的傳輸。5結(jié)束語IEEE1394b作為一種與平臺無關(guān)的技術(shù),可以同時(shí)應(yīng)用在MAC和PC中,本文研究的主要內(nèi)容是利用FPGA、DSP和PCI9054芯片實(shí)現(xiàn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論