《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的高速串行數(shù)據(jù)收發(fā)接口設(shè)計(jì)
基于FPGA的高速串行數(shù)據(jù)收發(fā)接口設(shè)計(jì)
2017年電子技術(shù)應(yīng)用第6期
劉 安1,2,禹衛(wèi)東1,馬小兵1,呂志鵬1,2
1.中國(guó)科學(xué)院電子學(xué)研究所,北京100190;2.中國(guó)科學(xué)院大學(xué) 電子電氣與通信工程學(xué)院,北京100039
摘要: 針對(duì)傳統(tǒng)ADC/DAC應(yīng)用中采樣數(shù)據(jù)并行傳輸存在線間串?dāng)_大、同步難等問(wèn)題,設(shè)計(jì)了一種基于高速串行協(xié)議——JESD204B的數(shù)據(jù)收發(fā)接口。以Xilinx公司V7系列FPGA為核心控制單元設(shè)計(jì)電路,在單通道傳輸速率為6 Gb/s的條件下完成數(shù)據(jù)收發(fā)測(cè)試,驗(yàn)證了傳輸過(guò)程中數(shù)據(jù)的同步性、準(zhǔn)確性及整體方案的可行性。設(shè)計(jì)結(jié)果表明,這種串行傳輸方式不僅解決了并行傳輸所帶來(lái)的諸多問(wèn)題,還降低了制板設(shè)計(jì)時(shí)PCB布線的復(fù)雜程度、減少了板層數(shù)量、節(jié)約了成本。
中圖分類(lèi)號(hào): TN911.73
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2017.06.012
中文引用格式: 劉安,禹衛(wèi)東,馬小兵,等. 基于FPGA的高速串行數(shù)據(jù)收發(fā)接口設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,43(6):48-51.
英文引用格式: Liu An,Yu Weidong,Ma Xiaobing,et al. Design of high-speed serial data transceiver interface based on FPGA[J].Application of Electronic Technique,2017,43(6):48-51.
Design of high-speed serial data transceiver interface based on FPGA
Liu An1,2,Yu Weidong1,Ma Xiaobing1,Lv Zhipeng1,2
1.Institute of Electronics,Chinese Academy of Sciences,Beijing 100190,China; 2.School of Electronic and Communication Engineering,University of Chinese Academy of Sciences,Beijing 100039,China
Abstract: To solve the problems of synchronization and inter-symbol interference caused by parallel transmission, this paper studies the high-speed serial protocol-JESD204B and provides a design of data transceiver interface based on the V7 series FPGA of Xilinx. The experiment is conducted under the bit rate of 6 Gb/s per lane, the test result verifies that this design could fulfill the requirements of synchronization and accuracy during data transmission,and also shows that serial transmission simplifies the layout of PCB, decreases the number of layers and the cost of project, which has more advantages than parallel mode.
Key words : high-speed serial protocol;JESD204B;interface of data transmission;FPGA;ADC/DAC

0 引言

    數(shù)據(jù)轉(zhuǎn)換器包括模數(shù)轉(zhuǎn)換(Analog-to-Digital Converter,ADC)和數(shù)模轉(zhuǎn)換(Digital-to-Analog Converter,DAC),是集成電路中的重要組成部分。在數(shù)字信號(hào)處理技術(shù)發(fā)展的過(guò)程中,普通的數(shù)據(jù)轉(zhuǎn)換器已難以滿足用戶對(duì)數(shù)據(jù)傳輸速率和轉(zhuǎn)換速率的需求,這促使了高速ADC/DAC及其相關(guān)技術(shù)的快速發(fā)展。

    傳統(tǒng)的采樣數(shù)據(jù)多使用并行傳輸方式,該方式不僅使信號(hào)容易受到同步難、線間串?dāng)_大等問(wèn)題的影響,還帶來(lái)PCB布局布線復(fù)雜、板層多、成本高等諸多弊端。本文就該問(wèn)題研究了高速串行數(shù)據(jù)傳輸協(xié)議——JESD204B,并基于該協(xié)議設(shè)計(jì)了一種高速數(shù)據(jù)轉(zhuǎn)換器與FPGA之間的數(shù)據(jù)傳輸接口。最終通過(guò)以Xilinx Vertex-7系列FPGA為邏輯控制單元搭建電路進(jìn)行實(shí)驗(yàn)測(cè)試,驗(yàn)證了設(shè)計(jì)的正確性和可行性。

1 JESD204B協(xié)議的優(yōu)勢(shì)

    互補(bǔ)金屬氧化物半導(dǎo)體(Complementary Metal Oxide Semiconductor,CMOS)和低電壓差分信號(hào)(Low-Voltage Differential Signaling,LVDS)是數(shù)據(jù)轉(zhuǎn)換器與FPGA間常用的兩種接口電平標(biāo)準(zhǔn)。其中CMOS的瞬態(tài)電流會(huì)隨著數(shù)據(jù)轉(zhuǎn)換率的提高而增大;LVDS的電流和功耗雖然較為平穩(wěn),但接口可支持的最高速率受到限制(僅1~2 Gb/s)[1]。因此這兩種接口標(biāo)準(zhǔn)已不再能滿足用戶對(duì)轉(zhuǎn)換器在轉(zhuǎn)換速率、分辨率和更低功耗等方面的需求。

    JESD204B作為高速串行協(xié)議提供了一種高性能低功耗的接口解決方案,它的主要優(yōu)勢(shì)在于:簡(jiǎn)化了系統(tǒng)設(shè)計(jì),使得PCB布局布線更輕松;減少了芯片引腳數(shù)量,從原來(lái)的多引腳低速并行接口升級(jí)到少引腳高速度串行接口;降低了總體成本,能夠?qū)崿F(xiàn)更小的IC封裝和電路板設(shè)計(jì),從而降低成本。基于這些優(yōu)勢(shì),JESD204B特別適合一些高速應(yīng)用,如4G、LTE、醫(yī)學(xué)影像處理、雷達(dá)通訊等。

    目前,主流的半導(dǎo)體廠商都推出了支持該協(xié)議的高速數(shù)據(jù)轉(zhuǎn)換器,因此針對(duì)高速數(shù)據(jù)串行傳輸?shù)慕涌谠O(shè)計(jì)是非常必要的。由于FPGA具有硬件可編程性、運(yùn)行速度快、性能穩(wěn)定等優(yōu)勢(shì),且擁有多個(gè)Bank 的高速收發(fā)器能夠支持JESD204B協(xié)議,故在應(yīng)用中多使用FPGA作為邏輯器件與ADC/DAC配合使用,方案架構(gòu)如圖1[2]。

wdz4-t1.gif

2 JESD204B協(xié)議接口結(jié)構(gòu)

    JESD204B協(xié)議主要由4個(gè)部分組成,分別是物理層、鏈路層、傳輸層和應(yīng)用層[3],如圖2。

wdz4-t2.gif

    其中物理層用來(lái)實(shí)現(xiàn)高速串行數(shù)據(jù)的發(fā)送與接收、串行與并行之間的形式轉(zhuǎn)換,即以比特流的形式來(lái)傳輸數(shù)據(jù)。本設(shè)計(jì)中使用FPGA的transceiver模塊來(lái)完成物理層的功能。

    鏈路層主要負(fù)責(zé)對(duì)采樣數(shù)據(jù)進(jìn)行8b/10b解碼、編碼以及后續(xù)鏈路操作。其中,發(fā)送端數(shù)據(jù)鏈路層負(fù)責(zé)完成同步字符/K/=/K28.5/的產(chǎn)生與編碼、多幀同步、鏈路對(duì)齊、鏈路同步等操作[2];接收端數(shù)據(jù)鏈路層負(fù)責(zé)完成向發(fā)射端請(qǐng)求同步信號(hào)、/K/=/K28.5/字符的檢測(cè)與還原。

    傳輸層主要完成對(duì)發(fā)送和接收數(shù)據(jù)的格式進(jìn)行相關(guān)操作。發(fā)送端傳輸層負(fù)責(zé)根據(jù)用戶對(duì)數(shù)據(jù)格式的配置對(duì)數(shù)據(jù)重新打包,包括對(duì)采樣數(shù)據(jù)添加尾碼以及控制位等;而對(duì)于接收端傳輸層而言,是根據(jù)用戶對(duì)數(shù)據(jù)格式的配置來(lái)剝離尾碼及控制位,恢復(fù)出原始數(shù)據(jù)并送至總線。

3 高速串行數(shù)據(jù)傳輸接口設(shè)計(jì)與實(shí)現(xiàn) 

3.1 總體設(shè)計(jì)方案

    選用Xilinx公司V7系列FPGA-XC7VX690T作為設(shè)計(jì)的邏輯控制單元,其內(nèi)部集成了80組高速收發(fā)器GTH,所支持的最高線上速率為13.1 Gb/s,而JESD204B協(xié)議的傳輸速率上限為12.5 Gb/s,因此滿足設(shè)計(jì)要求。

    為了確定時(shí)鐘配置,首先要計(jì)算線上速率。設(shè)采樣率為600 MS/s,每個(gè)采樣數(shù)據(jù)的精度為16位,那么計(jì)算得到線上速率為(600 M×16) b/s,又因?yàn)樵趥鬏數(shù)倪^(guò)程中經(jīng)過(guò)8 b/10 b編碼,因此總的線上速率為(600 M×16) b/s/8×10=12 Gb/s,逼近了協(xié)議所能支持的最大速率。為了兼顧采樣率與線上速率,將采樣數(shù)據(jù)拆分為高8位與低8位,分別通過(guò)兩個(gè)通道進(jìn)行傳輸。此時(shí)單通道上的速率降為6 Gb/s,接近協(xié)議傳輸速率上限的一半且保證了采樣率。進(jìn)而依據(jù)core clk=line rate/40的關(guān)系計(jì)算出本地時(shí)鐘為150 MHz。為了保證時(shí)鐘信號(hào)的質(zhì)量,選擇由外部信號(hào)源提供600 MHz時(shí)鐘信號(hào),再由時(shí)鐘芯片進(jìn)行4分頻產(chǎn)生差分時(shí)鐘信號(hào)輸入FPGA。最后進(jìn)行鏈路參數(shù)設(shè)計(jì),主要涉及到以下幾個(gè)重要參數(shù):

    L:鏈路中通道的個(gè)數(shù)

    F:每幀中的字節(jié)個(gè)數(shù)

    S:每個(gè)數(shù)據(jù)轉(zhuǎn)換器每幀轉(zhuǎn)換的樣本個(gè)數(shù)

    K:每多幀中的幀數(shù)

    M:每個(gè)器件中數(shù)據(jù)轉(zhuǎn)換器的數(shù)量

    因此根據(jù)之前討論的采樣率與時(shí)鐘頻率問(wèn)題,將鏈路參數(shù)配置如表1所示。

wdz4-b1.gif

    數(shù)據(jù)傳輸方案使用高密度形式,即選擇兩個(gè)通道分別傳送采樣數(shù)據(jù)的高8位與低8位。因?yàn)槊總€(gè)通道緩存數(shù)據(jù)位寬為32位,故兩個(gè)通道在150 MHz本地時(shí)鐘下,每個(gè)周期能夠傳輸4個(gè)采樣點(diǎn)的信息,滿足600 MS/s的采樣率。

3.2 傳輸數(shù)據(jù)同步機(jī)制

    在數(shù)據(jù)傳輸過(guò)程中,無(wú)論是在發(fā)射端與接收端之間,還是兩個(gè)通道之間都需要做到嚴(yán)格的同步才能夠保證采樣數(shù)據(jù)的正確傳輸與恢復(fù)。在JESD204B協(xié)議中,通過(guò)在不同階段定義不同的數(shù)據(jù)幀結(jié)構(gòu)來(lái)完成同步操作。在數(shù)據(jù)鏈路層,主要使用8 b/10 b編碼規(guī)范定義的特殊字符-K碼來(lái)完成鏈路同步以及構(gòu)成數(shù)據(jù)幀[2]。在進(jìn)入用戶數(shù)據(jù)傳輸狀態(tài)前,鏈路需經(jīng)過(guò)代碼組同步、初始化幀同步,過(guò)程如圖3。

wdz4-t3.gif

    主要步驟包括:

    (1)接收端向發(fā)送端發(fā)送同步請(qǐng)求信號(hào),即拉低SYNC信號(hào);

    (2)發(fā)送端接收到同步請(qǐng)求信號(hào)后,開(kāi)始向接收端連續(xù)發(fā)送/K28.5/字符;

    (3)接收端接收到至少連續(xù)4個(gè)/K28.5/字符后,取消同步請(qǐng)求(拉高SYNC信號(hào)),標(biāo)志著代碼組同步的完成,然后在下一個(gè)本地幀時(shí)鐘的上升沿進(jìn)入信道初始化幀同步階段[3]。

    代碼組、初始化幀結(jié)構(gòu)及同步過(guò)程時(shí)序如圖4。

wdz4-t4.gif

    其中, /K/字符用于首先進(jìn)行的代碼組同步;/R/字符標(biāo)志著初始化多幀的開(kāi)始;/A/字符標(biāo)志著初始化多幀的結(jié)束;/Q/字符用于指示接收端,用戶所配置的信息即將開(kāi)始[4]??梢?jiàn),通過(guò)8 b/10 b編碼結(jié)合控制字不僅可以使鏈路得到正確的同步以便對(duì)齊,同時(shí)也為監(jiān)控鏈路、檢查錯(cuò)誤提供了一種方法。各字符定義如下:

    /K/=/K28.5/;

    /R/=/K28.0/;

    /A/=/K28.3/;

    /Q/=/K28.4/;

3.3 數(shù)據(jù)傳輸方案

    正如3.2節(jié)中討論那樣,既要兼顧采樣率又要考慮串行線上最大速率,因此采用如圖5所示的高密度傳輸方案:在發(fā)射端使用兩個(gè)通道分別傳送采樣點(diǎn)的高、低8位。

wdz4-t5.gif

4 實(shí)驗(yàn)測(cè)試結(jié)果分析

4.1 設(shè)計(jì)框架圖

    實(shí)驗(yàn)采用FPGA自收發(fā)環(huán)路來(lái)驗(yàn)證所設(shè)計(jì)數(shù)據(jù)傳輸接口的邏輯功能,即在發(fā)送端與接收端分別使用兩對(duì)差分的GTH高速串行收發(fā)器,信號(hào)從發(fā)送端輸出后經(jīng)隔直電容再輸入至接收端,線上傳輸速率為6 Gb/s,本地時(shí)鐘與高速串行收發(fā)器的參考時(shí)鐘均為150 MHz。設(shè)計(jì)電路單板層數(shù)為8層,設(shè)計(jì)框架如圖6。

wdz4-t6.gif

4.2 測(cè)試結(jié)果

    首先需要通過(guò)AXI-LITE接口分別對(duì)收發(fā)接口進(jìn)行鏈路參數(shù)的配置,包括數(shù)據(jù)打包格式、鏈路選擇、同步方式等,以保證數(shù)據(jù)傳輸鏈路的正確建立,其時(shí)序如圖7。

wdz4-t7.gif

    為了驗(yàn)證傳輸數(shù)據(jù)的正確性與同步性,實(shí)驗(yàn)選擇遞增碼作為測(cè)試碼以便發(fā)現(xiàn)錯(cuò)誤,假設(shè)一個(gè)采樣點(diǎn)的位寬為16位,測(cè)試碼見(jiàn)表2。

wdz4-b2.gif

    由于使用兩個(gè)lane分別傳輸采樣數(shù)據(jù)的高8位和低8位,而每個(gè)lane為32 bit位寬,因此在接收端得到的數(shù)據(jù)是64位。這64位數(shù)據(jù)中包含了4個(gè)樣本點(diǎn)的信息。故將在FPGA接收端觀察到的數(shù)據(jù)拆分成了4路,得到的是4路鋸齒波,測(cè)試結(jié)果如圖8和圖9。

wdz4-t8.gifwdz4-t9.gif

    通過(guò)圖8可以看出在接收端可以準(zhǔn)確地恢復(fù)出發(fā)送的數(shù)據(jù),無(wú)錯(cuò)碼、亂碼存在,證明了發(fā)射與接收的正確性。同時(shí)通過(guò)圖9可以看出波形是相位對(duì)齊的,說(shuō)明兩個(gè)lane之間是同步的。

5 結(jié)束語(yǔ)

    高速串行傳輸是今后高性能ADC和DAC的發(fā)展趨勢(shì)。本文通過(guò)分析串行協(xié)議JESD204B,設(shè)計(jì)了一種高速數(shù)據(jù)自收發(fā)接口,并基于Xilinx Vertex-7 FPGA 搭建實(shí)驗(yàn)電路,實(shí)現(xiàn)了數(shù)據(jù)的高速串行收發(fā),驗(yàn)證了設(shè)計(jì)的正確性與有效性。本設(shè)計(jì)中的發(fā)射接口可以配合DAC使用,接收接口可以配合ADC使用,具有一定的工程應(yīng)用價(jià)值。

參考文獻(xiàn)

[1] 胥京宇.JESD204:更先進(jìn)的高速轉(zhuǎn)換器至FPGA接口標(biāo)準(zhǔn)[J].世界電子元器件,2013(6):68-69.

[2] 顧大曄.JESD204B協(xié)議在FPGA/DSP中的應(yīng)用研究[J].中國(guó)集成電路,2015,24(5):17-20.

[3] JEDEC. Serial interface for data converters JESD204B.01[S].USA:JEDEC.2011.

[4] Jonathan Harris.JESD204B中的鏈路同步和對(duì)齊[J].技術(shù)前沿,2013(9):36-37.

[5] Xilinx.Xilinx 7 series FPGAs configurable logic block user guide[M].USA:Xilinx,2014.

[6] Xilinx.Analog for Xilinx FPGAs[M].USA:Xilinx,2015.

[7] Xilinx.7 Series FPGAs GTX/GTH Transceivers[M].USA:Xilinx,2014.

[8] Jonathan Harris.JESD204 標(biāo)準(zhǔn)解析[J].今日電子,2012(12):31-33.

[9] 張峰,王占江.基于JESD204協(xié)議的A/D采樣數(shù)據(jù)高速串行傳輸[J].電訊技術(shù),2014,54(2):174-177.

[10] Analog Devices.JESD204B Survival Guide[M].USA:Analog Devices.2013.

[11] 何賓.Xilinx FPGA設(shè)計(jì)權(quán)威指南Vivado集成設(shè)計(jì)環(huán)境[M].北京:清華大學(xué)出版社,2014.



作者信息:

劉  安1,2,禹衛(wèi)東1,馬小兵1,呂志鵬1,2

(1.中國(guó)科學(xué)院電子學(xué)研究所,北京100190;2.中國(guó)科學(xué)院大學(xué) 電子電氣與通信工程學(xué)院,北京100039)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。