如今隨著有源相控陣雷達(dá)技術(shù)的不斷發(fā)展,雷達(dá)信號(hào)所需要實(shí)時(shí)處理的數(shù)據(jù)量也在迅猛的增大,這就使得數(shù)據(jù)流的高速傳輸面臨著較大的挑戰(zhàn)[1]。以往系統(tǒng)多采用并行方式傳輸高速的數(shù)據(jù)流,這種方式實(shí)現(xiàn)起來(lái)相對(duì)簡(jiǎn)單,但是當(dāng)數(shù)據(jù)率超過(guò)1 Gb/s時(shí),信號(hào)的同步管理變得十分困難,同時(shí)接口的數(shù)據(jù)對(duì)齊問(wèn)題也影響著與外部設(shè)備的有效通信。為了解決這一難題,高速串行I/O技術(shù)應(yīng)運(yùn)而生。串行傳輸所需的引腳數(shù)少,降低了背板開(kāi)發(fā)的要求,印制電路板的制作更加簡(jiǎn)單,同時(shí)可以滿足遠(yuǎn)距離高速通信可靠性的要求,被各行各業(yè)運(yùn)用在通信系統(tǒng)的設(shè)計(jì)中[2]。
為了適應(yīng)串行技術(shù)發(fā)展的趨勢(shì),Xilinx公司也推出了內(nèi)嵌高速串行收發(fā)器Rocket I/O的FPGA產(chǎn)品,并在此基礎(chǔ)上開(kāi)發(fā)了Aurora協(xié)議。Aurora協(xié)議是一款可自由使用相對(duì)較簡(jiǎn)便的點(diǎn)對(duì)點(diǎn)鏈路層協(xié)議。其設(shè)計(jì)目的是使其他高層協(xié)議可以很簡(jiǎn)單地運(yùn)行在Aurora之上[3]。其中Aurora IP核支持與光纖的無(wú)縫連接,傳輸過(guò)程中抗電磁干擾能力強(qiáng),集成度高,具有很強(qiáng)的靈活性。
1 Aurora IP核的實(shí)現(xiàn)
Rocket I/O是內(nèi)嵌在FPGA中的一款高速串行收發(fā)器,支持多種通信協(xié)議標(biāo)準(zhǔn),如Aurora、PCI Express、光纖通道、千兆以太網(wǎng)等[4]。該收發(fā)器提供單工或全雙工的數(shù)據(jù)傳輸模式。
每個(gè)Rocket I/O支持622 Mb/s~3.125 Gb/s的數(shù)據(jù)傳輸速率,并且利用通道綁定功能可以實(shí)現(xiàn)更高的數(shù)據(jù)傳輸速率。收發(fā)器模塊物理媒質(zhì)適配層(PMA)集成了串行/解串器(SERDES)、時(shí)鐘和數(shù)據(jù)恢復(fù)電路(CDR)、電流模式邏輯(CML)、預(yù)加重/均衡電路等,物理編碼子層(PCS)集成了8 bit/10 bit編解碼電路、循環(huán)冗余校驗(yàn)(CRC)、相位調(diào)整FIFO、彈性緩沖器、PRBS產(chǎn)生和檢測(cè)等[5]。這些集成的模塊可用于補(bǔ)償信號(hào)的高額損耗,減小時(shí)鐘的偏差和內(nèi)部噪聲對(duì)接收性能的影響,從而提高信號(hào)的質(zhì)量。
Aurora協(xié)議是一款高帶寬、低成本、可擴(kuò)展、框架簡(jiǎn)潔、適合點(diǎn)對(duì)點(diǎn)串行數(shù)據(jù)傳輸?shù)膮f(xié)議。該協(xié)議支持專用的上層協(xié)議或符合工業(yè)標(biāo)準(zhǔn)的協(xié)議(例如以太網(wǎng)、TCP/IP),提供了透明接口的串行互連協(xié)議,其允許數(shù)據(jù)進(jìn)行任何分組封裝,可以使芯片間的數(shù)據(jù)傳輸在一個(gè)較高的水平而不需要改變已有的通信系統(tǒng)或計(jì)算機(jī)系統(tǒng)[6]。Aurora協(xié)議可以配置每個(gè)通路中的Rocket I/O工作在全雙工或半雙工的模式下,其鏈路結(jié)構(gòu)圖如圖1所示。
Aurora IP核是Xilinx公司在Aurora協(xié)議和高速串行收發(fā)器Rocket基礎(chǔ)上研發(fā)出來(lái)的硬核。該核嵌入在Rocket I/O模塊中,提供了簡(jiǎn)單的用戶接口,極大地方便了信號(hào)的可操作性。通過(guò)IP核用戶界面可以改變Rocket I/O中復(fù)雜的控制結(jié)構(gòu)。Aurora IP核主要包括本地流控制、用戶流控制、用戶數(shù)據(jù)接口、時(shí)鐘輸入與時(shí)鐘修正模塊、高速串行收發(fā)模塊和狀態(tài)信息控制模塊[7-8]。
本系統(tǒng)所用Aurora IP核為全雙工模式,通道的線速度為2 Gb/s,輸入?yún)⒖紩r(shí)鐘為125 MHz,用戶時(shí)鐘100 MHz,發(fā)送和接收位寬都為16 bit,采用流控的數(shù)據(jù)傳輸模式。由于發(fā)送數(shù)據(jù)經(jīng)過(guò)Rocket I/O進(jìn)行了8 bit/10 bit編碼,故而通道串行線性速率為1.6 Gb/s。IP核封裝圖如圖2所示。
其中IP核設(shè)計(jì)的參考時(shí)鐘需要選擇高精度的差分時(shí)鐘,這里選用3.3 V供電的貼片差分時(shí)鐘,經(jīng)過(guò)IBUFG一級(jí)緩沖直接連接到GTX的參考時(shí)鐘輸入端,而不能使用經(jīng)過(guò)DCM分頻/倍頻而來(lái)的時(shí)鐘。因?yàn)橛蒁CM引出來(lái)的時(shí)鐘抖動(dòng)較大,Rocket I/O在數(shù)據(jù)傳輸時(shí)相當(dāng)不穩(wěn)定,會(huì)造成數(shù)據(jù)丟失。
由于Aurora IP核具有時(shí)鐘補(bǔ)償功能,在數(shù)據(jù)接口寬度為2 B的情況下,每5 000個(gè)user_clk就需要6個(gè)user_clk的時(shí)鐘補(bǔ)償,一旦啟用時(shí)鐘補(bǔ)償功能,數(shù)據(jù)流將不能進(jìn)入Rocket I/O,所以在Aurora IP 核收發(fā)器的兩端需要加上一個(gè)16 KB的FIFO為數(shù)據(jù)緩沖做準(zhǔn)備,以避免IP核在進(jìn)行時(shí)鐘補(bǔ)償時(shí)的數(shù)據(jù)丟失,同時(shí)可以用來(lái)匹配AD采樣信號(hào)數(shù)據(jù)時(shí)鐘和用戶時(shí)鐘user_clk的不一致。解決方案程序如下:
process(USER_CLK)
begin
if USER_CLK‘event and USER_CLK=’1‘ then
count_16bit《=count_16bit+1;
if count_16bit》0 and count_16bit《=2 then
DO_CC《=’1‘; else DO_CC《=’0‘; end if;
end if;
end process;
IP核封裝程序如下:
My_Aurora_AXI4_2Gbps is
Port (
GTX_CLK_125MHz : in std_logic; -- MUST
be 125 MHz
TXP ,TXN : out std_logic; --2 Gbps
RXP ,RXN : in std_logic; --2 Gbps
local_clk : in std_logic; -- 《=200 MHz
reset : in std_logic;
S_AURORA_TX_TDATA : in std_logic_vector
(15 downto 0);
S_AURORA_TX_TVALID: in std_logic;
S_AURORA_TX_TREADY: out std_logic;
M_AURORA_RX_TDATA : out std_logic_vector
(15 downto 0);
M_AURORA_RX_TVALID: out std_logic;
ERROR : out std_logic;
CHANNEL_UP: out std_logic
);
Aurora IP核功能實(shí)現(xiàn)ChipScope圖如圖3所示。
2 測(cè)試系統(tǒng)結(jié)構(gòu)
該系統(tǒng)主要由FPGA、ADS5400模/數(shù)轉(zhuǎn)換器以及AD9516時(shí)鐘生成模塊、SPF光纖收發(fā)模塊、電源模塊等功能模塊組成。首先高頻信號(hào)經(jīng)由ADS5400模/數(shù)轉(zhuǎn)換器采樣,送入并存儲(chǔ)到FPGA的FIFO中。然后經(jīng)過(guò)一系列的邏輯控制,高頻數(shù)字信號(hào)進(jìn)入Aurora IP核中,經(jīng)過(guò)Rocket I/O進(jìn)入SPF光纖模塊將電信號(hào)轉(zhuǎn)換成光信號(hào),通過(guò)光纖進(jìn)行有效的傳輸。系統(tǒng)總體框圖如圖4所示。
2.1 超高速A/D轉(zhuǎn)換與系統(tǒng)時(shí)鐘的實(shí)現(xiàn)
在系統(tǒng)發(fā)送端采用的是12 bit分辨率及1 GS/s采樣率的ADS5400模/數(shù)轉(zhuǎn)換器。ADS5400中可調(diào)節(jié)的精細(xì)增益、失調(diào)和相位可以大幅度地簡(jiǎn)化兩個(gè)ADC的交錯(cuò),這樣就簡(jiǎn)化了I/Q接收機(jī)中兩個(gè)ADC的平衡問(wèn)題。ADS5400同時(shí)有著較好的信噪比,這使其在較高的中頻條件下能夠完成模/數(shù)轉(zhuǎn)換,極大地提高雷達(dá)信號(hào)處理的速度。
ADS5400的輸入時(shí)鐘(也就是采樣頻率)由專用的時(shí)鐘芯片產(chǎn)生,其寫(xiě)配置接口遵循SPI總線接口,采用125 MHz時(shí)鐘頻率經(jīng)由FPGA向其中寫(xiě)入配置,其中時(shí)鐘必須是獨(dú)立的外部時(shí)鐘且不能和Rocket I/O共用同一時(shí)鐘,以防止芯片不能正常工作。此模塊ADS5400輸出采用雙端口模式,clkout被2分頻,使用內(nèi)部參考時(shí)鐘。
在本系統(tǒng)中,AD9516的輸入時(shí)鐘是由外部晶振產(chǎn)生的高精度差分時(shí)鐘,頻率為200 MHz,使用內(nèi)部VCO,內(nèi)部壓控振蕩器的頻率為2 GHz。經(jīng)過(guò)分頻器在LVPECL端和LVDS端分別產(chǎn)生100 MHz的時(shí)鐘信號(hào)。其中LVPECL端產(chǎn)生的時(shí)鐘作為ADS5400的輸入時(shí)鐘,LVDS端產(chǎn)生的時(shí)鐘作為FPGA的信號(hào)時(shí)鐘,以便對(duì)信號(hào)在FPGA中進(jìn)行進(jìn)一步的處理,以滿足信號(hào)的同源問(wèn)題,時(shí)鐘信號(hào)具有較大的靈活性。
2.2 性能測(cè)試
在本系統(tǒng)中采用了Rocket I/O進(jìn)行光纖通信,為了測(cè)試系統(tǒng)的通信性能,Rocket I/O采用了全雙工、流控制的工作模式,其數(shù)據(jù)傳輸速率為2 Gb/s。由于GTX內(nèi)部采用了8 bit/10 bit編碼,因而實(shí)際上傳輸?shù)挠行?shù)據(jù)率為1.6 Gb/s。在SFP光纖收發(fā)模塊發(fā)送器發(fā)送數(shù)據(jù)的同時(shí),接收器立刻接收數(shù)據(jù)。本設(shè)計(jì)中選擇Finisar公司的FTLF8519P2xTL光電轉(zhuǎn)換模塊。主要測(cè)試步驟為:(1)給FPGA 處理板上電,向ADS5400和AD9516寫(xiě)配置之后分別產(chǎn)生100 MHz的采樣信號(hào)和100 MHz FPGA時(shí)鐘信號(hào);(2)信號(hào)發(fā)生器產(chǎn)生10 MHz的正弦波連接到ADS5400模/數(shù)轉(zhuǎn)換器;(3)ADS5400把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào);(4)將轉(zhuǎn)換完成的數(shù)字信號(hào)寫(xiě)入FPGA的FIFO中;(5)FPGA 將FIFO中的數(shù)據(jù)通過(guò)Aurora IP核經(jīng)由光纖模塊發(fā)送出去,同時(shí)光纖模塊接收剛剛發(fā)送的數(shù)據(jù),并將數(shù)據(jù)傳入FPGA的FIFO中;(6)運(yùn)用ChipScope觀測(cè)發(fā)送和接收到的數(shù)據(jù),比較數(shù)據(jù)傳輸是否正確。
經(jīng)過(guò)長(zhǎng)時(shí)間的測(cè)試,ChipScope抓取的發(fā)送和接收數(shù)據(jù)一致,這表明本系統(tǒng)的光纖通信模塊能夠正常地工作,完成了預(yù)期的設(shè)計(jì)。在硬件實(shí)現(xiàn)上的10 MHz ChipScope圖如圖5所示。
本文首先介紹了Rocket I/O在雷達(dá)信號(hào)處理中的應(yīng)用,可以極大地提高通信卡之間的通信速率;然后描述了Rocket I/O功能和Aurora核實(shí)現(xiàn)高速通信的具體實(shí)現(xiàn)過(guò)程。整個(gè)系統(tǒng)主要實(shí)現(xiàn)了對(duì)超高速AD采樣信號(hào)的高速光纖傳輸,數(shù)據(jù)傳輸速率達(dá)到了2 Gb/s,并且解決了不同通信卡進(jìn)行數(shù)據(jù)傳輸Aurora時(shí)鐘補(bǔ)償時(shí)的數(shù)據(jù)丟失問(wèn)題。同時(shí),Aurora核自身有著通道擴(kuò)展的功能,可以進(jìn)一步提高數(shù)據(jù)的傳輸速率,并且可以在實(shí)際情況中根據(jù)不同的信號(hào)頻率動(dòng)態(tài)地調(diào)整采樣頻率。由于系統(tǒng)的可編程性,不需要對(duì)系統(tǒng)的結(jié)構(gòu)進(jìn)行大的調(diào)整,只需對(duì)具體功能進(jìn)行有效實(shí)現(xiàn),提高了系統(tǒng)的靈活性。
參考文獻(xiàn)
[1] 李江濤.RocketIO高速串行傳輸原理與實(shí)現(xiàn)[J]。雷達(dá)與對(duì)抗,2004(3):48-50.
[2] SAVAGE S.Implementing high-speed serial and custom digital protocols thru FPGA technology and graphical programming techniques[C].Baltimore,2007 IEEE Autotestcon,2007:214-223.
[3] 林振華。基于PCI-X和RocketIO的高速數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J]?,F(xiàn)代雷達(dá),2011,33(6):49-52.
[4] Xilinx.Aurora protocol specification[Z].2007.
[5] Xilinx.Virtex_6 FPGA GTX transceivers user guide UG366(v2.6)[Z].2011.
[6] 楊雷,龍哲仁,盧繼華,等.LVDS高速并口通信協(xié)議設(shè)計(jì)[J]。電子技術(shù)應(yīng)用,2013,39(3):119-122.
[7] Zhou Dexiang,Zheng Liping.Study of Aurora IP nuclear communication module based on FPGA[C].2011 IEEE 3rd International Conference on ICCSN,2011:581-583.
[8] Xilinx.LogiCORE IP Aurora 8B/10B V7.1 user guide UG766[Z].2011.
編輯:jq
-
FPGA
+關(guān)注
關(guān)注
1629文章
21744瀏覽量
603661 -
IP
+關(guān)注
關(guān)注
5文章
1709瀏覽量
149584 -
cdr
+關(guān)注
關(guān)注
1文章
50瀏覽量
18113 -
內(nèi)嵌
+關(guān)注
關(guān)注
0文章
3瀏覽量
7486
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論