<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于cPCI總線(xiàn)的高速數據光纖傳輸系統的實(shí)現

基于cPCI總線(xiàn)的高速數據光纖傳輸系統的實(shí)現

作者: 時(shí)間:2007-08-23 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:介紹一種的點(diǎn)到點(diǎn),提出了用現場(chǎng)可編程大規模集成邏輯器件取代分立元件完成接口卡設計及力求達到更高的傳輸速率的思想,并實(shí)際設計了這種想法。著(zhù)重介紹了系統的硬件結構設計和軟件功能,給出了選用的主要芯片的型號。實(shí)驗證明該系統工作穩定,達到了設計指標要求。
關(guān)鍵字,FPGA,傳輸,PCI9056

1.引言

設計的關(guān)鍵是主機接口卡的設計與。傳統的做法是采用分立元件,由若干個(gè)模塊構成。大多數的設計都類(lèi)似于如下結構[1]:接口的主要功能模塊包括光電信號轉換接口(O/E和E/O)、串行化和解串行化模塊(TX和RX)、數據緩存F I F O 、c PCI 控制器和可編程邏輯模塊(FPGA或CPLD)或DSP。各模塊中O/E和E/O 實(shí)現通道串行光信號和串行電信號之間的相互轉換。TX和RX 實(shí)現將串行電信號和并行電信號的相互轉換功能。F I F O 主要實(shí)現通道和 之間信號的緩沖。cPCI 控制器實(shí)現FIFO 輸出的信號與32 位標準cPCI 信號的轉換。FPGA或CPLD 負責各模塊之間的時(shí)序協(xié)調和傳輸控制。分析以上方案可見(jiàn),各模塊功能都是由分立芯片完成的。這樣各芯片間的互連勢必會(huì )影響傳輸速率,也將使PCB板的布局布線(xiàn)變得復雜,使傳輸延時(shí)增大,進(jìn)一步降低傳輸速率。而隨著(zhù)FPGA(Field Programmable Gate Array)技術(shù)的不斷發(fā)展,其容量、功能、可靠性以及響應速度都在不斷的提高。用一片FPGA完全可以實(shí)現計算機與光纖通道之間的數據傳輸與處理。鑒于此,本論文的設計將用一片FPGA來(lái)實(shí)現串行信號與并行信號的相互轉換、數據緩沖以及時(shí)序協(xié)調和傳輸控制等以前用分立元件實(shí)現的功能。

2.系統原理及實(shí)現

本系統由兩臺PC機、兩塊接口卡及一根光纖組成。系統設計關(guān)鍵是cPCI的接口卡。接口卡采用標準的3U板設計,由總線(xiàn)控制器芯片、可編程邏輯控制器、光電轉換驅動(dòng)器等組成。其結構框圖如下圖所示。

圖1 系統原理圖

本系統設計的目的是應用于雷達數據的傳輸,主要解決點(diǎn)對點(diǎn)的數據傳輸問(wèn)題。為了、可靠的傳輸雷達信號,決定采用光纖作為傳輸媒介,充分利用光纖傳輸損耗小、抗干擾能力強、傳輸速率高等優(yōu)點(diǎn)。其工作流程是這樣的:發(fā)送端PC機通過(guò)cPCI接口將要發(fā)送的數據送入FPGA,FPGA對數據信號進(jìn)行驅動(dòng)并實(shí)現數據緩沖、并串轉換等所必需的信號處理過(guò)程后形成串行信號,串行電信號經(jīng)電光轉換器轉換成串行光信號送入光纖進(jìn)行傳輸。在接收端,經(jīng)光電轉換器將光信號轉換成串行電信號送入FPGA,FPGA對數據信號進(jìn)行驅動(dòng)并實(shí)現串并轉換、數據緩沖等所必需的信號處理過(guò)程,然后通過(guò)cPCI接口進(jìn)入PC機進(jìn)行存儲以待分析處理。設計主要分為硬件設計和軟件設計兩部分。

一、硬件設計部分

籠統來(lái)說(shuō),本設計主要是要完成主機接口的實(shí)現。主機接口是實(shí)現高速數據傳輸和數據存儲的一個(gè)關(guān)鍵環(huán)節。主要完成高速數據流的信號轉換,實(shí)現數據在主機上的存儲,同時(shí)減少CPU對存儲過(guò)程的干預。CompactPCI簡(jiǎn)稱(chēng)cPCI,是國際PICMG協(xié)會(huì )于1994年提出來(lái)的一種總線(xiàn)接口標準。它的出現解決了多年來(lái)電信系統工程師與設備制造商面臨的棘手問(wèn)題:將VME密集堅固的封裝和大型設備的極佳冷卻效果以及PC廉價(jià)的易采用具有最新處理能力的芯片結合在一起,既保證99.999%的高可靠度,又降低硬件和軟件的開(kāi)發(fā)成本。因此希望通過(guò)cPCI總線(xiàn)利用DMA方式完成數據的傳輸與存儲。由圖1知,接口的主要功能模塊包括電光(光電)信號轉換模塊、可編成邏輯模塊FPGA和cPCI總線(xiàn)接口模塊。接口各模塊中,O/E和E/O實(shí)現光信號與電信號的相互轉換。FPGA實(shí)現幾乎所有的信號處理工作,比如實(shí)現數據的串行、并行轉換與最終通過(guò)光纖進(jìn)行數據傳輸;實(shí)現FIFO功能進(jìn)行信號緩沖,在高速數據傳輸中緩存是很重要的,它協(xié)調了數據發(fā)送端和接收端之間的數據傳輸速度,防止由于數據流速度的波動(dòng)導致傳輸的失??;實(shí)現各模塊之間的時(shí)序協(xié)調和傳輸控制等。cPCI總線(xiàn)接口卡實(shí)現FPGA輸出的信號與32位標準cPCI信號的轉換,通過(guò)DMA方式實(shí)現cPCI總線(xiàn)到主機的數據存儲。主要的研究與設計重點(diǎn)在cPCI總線(xiàn)接口模塊、可編程邏輯模塊FPGA和光電轉換模塊。

(1)cPCI總線(xiàn)接口模塊

目前,cPCI總線(xiàn)接口的設計與PCI接口的設計一樣,一般采用兩種方案,即可編程邏輯器件和專(zhuān)用總線(xiàn)接口器件??删幊踢壿嬈骷歉鶕CI協(xié)議在FPGA或CPLD中實(shí)現PCI總線(xiàn)接口控制器,但是由于PCI協(xié)議的復雜性,使得開(kāi)發(fā)難度大,周期長(cháng),而且很難在短期內達到系統穩定,這種方法比較適合于大批量生產(chǎn)的情況。對于一般的開(kāi)發(fā)者來(lái)說(shuō),大都采用現成的PCI接口器件。這類(lèi)專(zhuān)用接口器件具有較低的成本和通用性,能夠優(yōu)化數據傳輸,提供配置空間,具備用于猝發(fā)傳輸功能的片內FIFO等,是一種省時(shí)省力的方案。這類(lèi)專(zhuān)用芯片有很多,如PLX公司的PCI總線(xiàn)目標接口器件PCI9052、PCI9054,PCI9056,AMCC公司的S5933等。由于cPCI總線(xiàn)的時(shí)鐘頻率是66MHz,數據寬度為32位,故本設計中選用PLX公司的專(zhuān)業(yè)總線(xiàn)接口芯片PCI9056作為總線(xiàn)接口控制器,它符合PCI2.2規范,是32位、66MHz的PCI總線(xiàn)主控I/O加速器,適用于通用的32位、66MHz的局部總線(xiàn)設計,局部總線(xiàn)猝發(fā)速度可達264MB/s,支持DMA通道,FIFO緩沖區大,是一款性?xún)r(jià)比比較高的芯片。它的本地總線(xiàn)可為三種模式:M模式,C模式和J模式,可利用模式選擇引腳加以選擇。本設計選用C模式,即32位的地址/數據總線(xiàn)非復用。

(2)可編程邏輯模塊FPGA。

FPGA選用了altera公司Stratix GX系列的EP1SGX10CF672[2]。Stratix GX器件系列是Altera第二代收發(fā)器的FPGA系列,為需要高達3.125Gbps數據率的應用提供了一條低風(fēng)險的實(shí)現方式。Stratix GX千兆位收發(fā)器功能塊是嵌入式收發(fā)器功能塊,它具有四個(gè)全雙工通道,使用時(shí)鐘數據恢復(CDR),傳輸速率高達3.125Gbps。每個(gè)通道具有實(shí)現數據恢復/傳送、串行/解串、解碼/編碼和同步處理等不同階段的專(zhuān)用電路。同可編程邏輯結構的無(wú)縫接口確保了可靠的數據傳輸、最大數據吞吐量和簡(jiǎn)化的時(shí)序分析。它兼容光纖通道、串行Rapid I/O等接口協(xié)議,集成8b/10b編解碼器。本次設計主要使用了其8b/10b編解碼模塊及光纖通道協(xié)議。另外,這款芯片內部含有PLL,且其內部FIFO緩沖區比較大。正是由于該系列芯片功能、容量以及響應速度的大幅度提升,使得一片芯片完成多個(gè)分立芯片的功能成為可能,進(jìn)而提高系統的數據傳輸速率。

(3)光電轉換模塊

光電轉換驅動(dòng)器選用了Infineon公司的V23818-M305-L57。這款芯片數據速率高達2.215GBd,兼容光纖通道協(xié)議,具有良好的EMI性能。由于該芯片差分輸出信號的電平是PECL或LVPECL的,而后面FPGA的高速串行收發(fā)器的差分接收信號電平是PCML的,兩種接口標準的共模電壓不同,所以要采用AC耦合電路來(lái)完成兩種電平的轉換。耦合電容的選擇既不能太大也不能太小。如果太大,將嚴重減緩信號的傳輸速度,且由于充放電時(shí)間過(guò)長(cháng),對快速變化信號的響應將變得很壞;如果太小,將改變線(xiàn)路的阻抗特性,增大衰減。綜合考慮這兩種要求,耦合電容的容值在0.01µF比較適當。外部DC偏置電路可以省去,因為Stratix GX器件的高速收發(fā)器輸入管腳內置的有DC偏置電路,所以所需要的共模電壓會(huì )在器件內部產(chǎn)生。

二、軟件設計部分

接口卡的軟件設計主要包括兩個(gè)部分,一個(gè)是FPGA控制程序的編寫(xiě),一個(gè)是板卡驅動(dòng)程序的編寫(xiě)。以下本文主要就接收端FPGA控制程序的編寫(xiě)加以詳細論述。正如前面所述,FPGA主要完成時(shí)序協(xié)調和傳輸控制,以及數據流的串并轉換和緩存。整個(gè)系統的控制采用有限狀態(tài)機[3]。其狀態(tài)轉換圖如下:


圖2 接收狀態(tài)轉換圖

狀態(tài)機的狀態(tài)轉換以及各個(gè)狀態(tài)下信號的處理完全依據PCI9056的Local端到PCI端的DMA傳輸時(shí)序圖。其時(shí)序圖如下圖所示:

轉換流程分為3個(gè)狀態(tài):idle ,prel,dma_read。idle為空閑狀態(tài),上電復位后首先進(jìn)入此狀態(tài),在此期間總線(xiàn)無(wú)任何操作,只是不斷檢測ADS#信號,一旦檢測到這個(gè)信號有效,就進(jìn)入下一個(gè)狀態(tài)。prel是一過(guò)渡狀態(tài)。根據PCI9056的DMA傳輸時(shí)序圖可知,每次一個(gè)新的總線(xiàn)接入有效(即ADS#有效)后的第一個(gè)數據會(huì )持續兩個(gè)時(shí)鐘周期(其后的數據持續一個(gè)時(shí)鐘周期),其中,第一個(gè)時(shí)鐘周期并不采集數據,而只是使從設備準備好信號(即READY#)有效,第二個(gè)時(shí)鐘周期才開(kāi)始采集第一個(gè)數據。所以,此過(guò)渡狀態(tài)主要是使READY#信號在采集數據前一個(gè)周期有效。dma_read狀態(tài)期間執行從局部總線(xiàn)到cPCI總線(xiàn)的DMA操作,在每次時(shí)鐘的上升沿采集數據,直到突發(fā)長(cháng)度內的最后一個(gè)數據,BLAST#信號有效,下一個(gè)時(shí)鐘周期,狀態(tài)機又回到空閑狀態(tài),等待下一次傳輸的開(kāi)始。對數據的處理是按照數據的流向逐步完成的[4][5]。首先經(jīng)過(guò)OE轉換的串行數據進(jìn)入FPGA,經(jīng)由FPGA內部的串行高速收發(fā)通道完成解碼及第一步的串并轉換,這時(shí)由1bit串行數據變?yōu)?bits并行數據;其次由于cPCI局部總線(xiàn)數據線(xiàn)寬度為32位,所以第二步的串并轉換要完成8bits數據到32bits數據的轉換。其過(guò)程是,用4個(gè)8bits的D觸發(fā)器來(lái)連續鎖存輸入的8bits的數據,再用一個(gè)32bits的D觸發(fā)器來(lái)同時(shí)鎖存4個(gè)8bits的數據以形成32bits寬的數據輸出;最后為了對數據進(jìn)行緩沖,完成數據速率的轉換,將數據存入一32位寬異步FIFO。該異步FIFO的寫(xiě)時(shí)鐘是從串行數據提取出的隨路時(shí)鐘,讀時(shí)鐘是與總線(xiàn)控制器PCI9056的局部時(shí)鐘同頻的由板上提供的外部66M時(shí)鐘。

3.總結

本文作者的創(chuàng )新點(diǎn)在于用一塊高性能FPGA取代了傳統上采用分立元件設計高速的方法,從而簡(jiǎn)化了電路設計,減少了元器件間的互連,不但節省了板卡的面積,而且極大的提高了傳輸速率。該課題基于實(shí)驗室承擔的項目,主要用于雷達數據的傳輸。設計指標要求采樣點(diǎn)數為16384,脈沖重復頻率(PRF)6K以上?;诖酥笜艘蟛⑿袛祿蓸訒r(shí)鐘頻率應不低于50MHz,這樣傳輸速率理論上可以高達200MB/s以上。實(shí)驗證明該系統的軟硬件設計是成功的。該點(diǎn)到點(diǎn)高速光纖數據傳輸系統不但適用于雷達數據的傳輸,同時(shí)在高速數據采集、遠程控制等方面也具有廣闊的應用前景。

參考文獻:

1. 宋克柱,王硯方,“適用作遠程實(shí)時(shí)數據采集平臺的光纖通訊系統”, 數據采集與處理,第16卷第2期2001年6月
2. sgx_handbook
3. 楊進(jìn),魏軼偉,何寧,熊劍平,賈惠波,“基于光纖通道的高速數據傳輸系統主機接口設計”,計算機工程與應用,2002年第22期
4. GE ZHOU,YIMO ZHANG, WEI LIU, “Optical Fiber Interconnection for the Scalable Parallel Computing System”, PROCEEDINGS OF THE IEEE,VOL.88,NO.6,JUNE 2000

5.劉小俊,宋仲康,“基于VHDL語(yǔ)言的全雙工異步接收發(fā)送器電路設計”,《微計算機信息》(測控自動(dòng)化),2005年第21卷第1期



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>