文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.173847
中文引用格式: 呂志鵬,馬小兵,禹衛東. JESD204B Subclass1模式時鐘設計與調試[J].電子技術應用,2018,44(4):56-60.
英文引用格式: Lv Zhipeng,Ma Xiaobing,Yu Weidong. The design and debug of timing-clock for JESD204B Subclass1 mode[J]. Application of Electronic Technique,2018,44(4):56-60.
傳統的數據轉換器采用CMOS和LVDS等并行傳輸接口,隨著數據傳輸速率的不斷提高,并行傳輸總線逐漸暴露出信號同步難、偏移大、抗干擾能力弱、布局布線面積大、成本高等問題[1]。而高速串行傳輸總線在以上方面則表現出巨大的優勢。JESD204B協議是國際組織JEDEC提出的一種高速串行協議,用于數據轉換器與FPGA/ASIC之間的數據傳輸。該協議的最高傳輸速率為12.5 Gbit/s,具有確定性延時功能,能夠保持各通道數據的同步傳輸[2-3]。
Subclass1模式是JESD204B協議完成確定性延時功能的重要模式,如TI、ADI等主流半導體廠商的JESD204B接口數據轉換器產品都具備Subclass1模式。因此正確理解Subclass1確定性延時機制有助于JESD204B接口數據轉換器的開發,而正確的時鐘關系是完成Subclass1模式的重中之重。本文分析了Subclass1模式的工作原理以及時鐘設計需求,并根據該設計需求總結出Subclass1時鐘調試方法,利用Xilinx Virtex-7系列FPGA XC7VX690T搭建的JESD204B協議自收發回路驗證該方法的有效性[4]。
1 JESD204B確定性延時原理
JESD204B協議將確定性延時定義為數據從發射端的并行端口輸入到從接收端并行端口輸出所經歷的時間。該確定性延時具有兩層含義:(1)延時具有可重復性,不隨時間或再同步事件而改變;(2)JESD204B的各個通道之間具有相同的確定性延時,從而保證多通道數據的同步傳輸。
JESD204B協議確定性延時以多幀(Multi Frame)為處理單元,相應的時鐘信號為本地多幀時鐘(Local Multi Frame Clock,LMFC)。圖1和圖2分別是JESD204B協議數據發射和接收過程的時序圖。當發射端檢測到來自接收端的~SYNC信號的上升沿時,在下一個LMFC的上升沿開始發射ILA(Initial Lane Alignment)數據以及后續的用戶數據。由于各通道數據到達接收端的時間不同,接收端通過數據緩存器對先到達的數據進行緩存,并在某一特定時刻進行釋放。該釋放時刻通過RBD(Rx Buffer Delay)來描述,該參數以幀的個數為計量單位,是指緩存器從接收端的某一LMFC上升沿開始所經歷的緩存時間。當緩存時間等于RBD幀的持續時間時,緩存器對數據進行釋放,從而完成各通道之間的同步輸出。
由此可見,LMFC是JESD204B完成確定性延時功能的時鐘參考。為了完成多通道數據的同步傳輸,各通道之間的LMFC必須同步且邊沿對齊。
2 Subclass1 LMFC對齊機制
Subclass1模式由一個外部的SYSREF信號給各通道LMFC提供統一的邊沿對齊參考,用器件時鐘(Device Clock)去采集SYSREF信號的上升沿來確定LMFC的對齊時刻[2,5]。器件時鐘針對數據轉換器指的是采樣時鐘,針對FPGA指的是JESD204B邏輯模塊的全局工作時鐘,或者是串行收發器(GTH)的參考時鐘。器件時鐘一方面驅動數據轉換器工作,另一方面產生JESD204B協議的各級時鐘,如圖3所示。
SYSREF信號有3種模式:脈沖模式、周期模式和間隙性周期模式。脈沖模式只在鏈路初始同步階段對LMFC進行對齊。如圖4所示,在某一時刻,器件時鐘的上升沿采集到SYSREF信號的低電平,當器件時鐘在接下來的某一時刻第一次采集到SYSREF信號的高電平時,該時刻就作為LMFC對齊的參考基準。
周期性模式是指器件時鐘在每一次捕捉到SYSREF信號的上升沿時都會被判定為一次LMFC對齊事件,如圖5所示,對齊時刻是在每一個SYSREF周期內器件時鐘第一次采集到SYSREF高電平的時刻,且采集時刻要呈周期性重復。該模式能夠保持鏈路的穩定工作。
在間隙性周期模式下SYSREF信號不是時刻存在的,而是依據鏈路是否發出同步請求而定。當鏈路發出再同步請求時,數據的發射端和接收端都可以向時鐘器件發出請求以產生SYSREF信號,使得鏈路再次達到同步狀態。
由以上闡述可知,JESD204B Subclass1的時鐘設計必須滿足以下要求:
(1)為了使器件時鐘能夠采集到SYSREF信號的上升沿,SYSREF與器件時鐘之間必須留有足夠的建立保持時間。
(2)對于SYSREF周期模式,SYSREF與器件時鐘必須保持同步關系,從而在每個SYSREF周期內,器件時鐘都可以在同一時刻采集到SYSREF信號的高電平,進而使LMFC保持固定的對齊邊沿。
3 時鐘調試方法
3.1 時鐘解決方案
TI公司開發的可配置時鐘芯片LMK04828B是一款低抖動時鐘芯片,該時鐘芯片支持多路同步輸出,共有7組/14路時鐘輸出端口,每組包含兩路時鐘輸出,分別輸出器件時鐘和SYSREF。該芯片具備數字延時和模擬延時調節功能,能夠調節各路時鐘之間的延時差,從而使器件時鐘能夠容易地捕捉到SYSREF信號的上升沿。
3.2 調試方法
3.2.1 SYSREF頻率設置
SYSREF在脈沖模式下對頻率沒有特定要求。在周期性模式下,頻率必須與LMFC之間呈整數倍關系。根據圖3可得LMFC與SYSREF的計算公式如下:
其中,F表示一幀數據中的字節數,K表示一個多幀數據中幀的個數,R表示LMFC與SYSREF的頻率倍數關系。
3.2.2 SYSREF建立保持時間調節
利用LMK04828B的數字延時功能調整SYSREF與器件時鐘之間的延時關系來滿足建立保持時間要求,還可以通過增加SYSREF信號的高電平持續時間來實現。如圖6所示,用器件時鐘的上升沿采集SYSREF信號的上升沿。SYSREF的高電平最小持續時間如式(3)所示,其中T表示器件時鐘的周期,Tsu表示建立時間要求,Th表示保持時間要求。此時SYSREF高電平范圍內有兩個器件時鐘上升沿,即便第一個器件時鐘上升沿與SYSREF上升沿之間的延時不滿足建立時間要求,第二個器件時鐘上升沿依然能夠采集到SYSREF的高電平。
通常情況下可以結合以上兩種方法來使SYSREF滿足建立保持時間要求。首先利用LMK04828B的數字延時功能調節器件時鐘與SYSREF的延時,將器件時鐘上升沿滯后于SYSREF,并保持一段較長的時間間隔。然后通過增加SYSREF的高電平持續時間來進一步保證建立保持時間。
3.2.3 SYSREF占空比調節
SYSREF的高電平持續時間并不是越長越好,當SYSREF高電平持續時間過長時,即使器件時鐘采集到SYSREF的高電平,但是由于不易采集到SYSREF的低電平而無法被判定為采集到SYSREF的上升沿事件。通常由LMK04828B直接輸出占空比為50%的SYSREF信號即可。
4 實驗驗證方案
本實驗搭建FPGA串行數據自收發鏈路,通過調整接收端的SYSREF信號與器件時鐘之間的延時關系以及SYSREF信號高電平持續時間來驗證以上調試方法[4]。自收發鏈路結構圖如圖7所示。
自收發回路由一片FPGA和一片LMK04828B構成。FPGA選取Xilinx公司Virtex-7系列產品XC7VX690T[6]。該片FPGA上集成的高速串行收發器(GTH)的最高傳輸速率為13.1 Gbit/s。串行數據的發射與接收通過JESD-204B IP core來完成。該IP core的工作需要全局時鐘(TX/RXGLBCLK)、GTH的參考時鐘(TX/RXREFCLK)以及SYSREF信號,其中TX/RXGLBCLK作為器件時鐘來捕捉SYSREF的上升沿。時鐘信號均由LMK04828B提供。FPGA自收發回路之間通過4個lane傳輸數據,在串行速率4.8 Gbit/s條件下進行測試。JESD204B鏈路參數設置如表1所示。
根據Xilinx JESD204B IP core用戶手冊[7],全局時鐘和參考時鐘的頻率計算公式為:
根據表1中的參數配置可計算出鏈路的LMFC以及SYSREF的頻率:
為了能夠產生高電平持續時間可控的SYSREF信號,由LMK04828B產生一路與RXGLBCLK同步且頻率是RXGLBCLK 2倍的時鐘信號,即圖7中的CLK_GEN_SYSREF的頻率為240 MHz。FPGA對該時鐘進行分頻產生接收端的SYSREF信號,并利用計數邏輯控制SYSREF信號的高電平持續時間。
5 實驗結果
實驗通過JESD204B IP core的sync、tx_tready、rx_tvalid信號來觀察鏈路的同步狀態和數據收發狀態,其狀態及意義如表2所示。圖8~圖11是SYSREF與RXGLBCLK的延時關系圖,分別與實驗1~實驗4相對應。SYSREF與RXGLBCLK之間的數據關系如表3所示。延時關系中符號為負表示RXGLBCLK上升沿超前于SYSREF的上升沿,符號為正表示RXGLBCLK的上升沿滯后于SYSREF的上升沿。圖12與圖13是通過FPGA的ILA(Integrated Logic Analyzer)抓取的JESD204B接收端數據以及鏈路狀態信號。
實驗1對應的鏈路狀態圖如圖12所示,此時sync、tx_tready、rx_tvalid信號均處于低電平狀態,表明鏈路處于同步請求狀態。由圖2可知,接收端只有在連續接收到正確的/K/字符且LMFC對齊時接收端才會拉高sync以撤銷同步請求。所以此時鏈路不通的原因可能有兩個:(1)數據傳輸出現問題,接收端沒有接收到正確的/K/字符;(2)LMFC沒有達到對齊狀態。
與實驗1相比,實驗2保持SYSREF的高電平持續時間不變,將RXGLBCLK的上升沿滯后于SYSREF上升沿2.49 ns。實驗3、實驗4保持RXGLBCLK與SYSREF的延時關系不變,增加SYSREF的高電平持續時間。實驗2、實驗3、實驗4對應的鏈路狀態圖如圖13所示,此時sync、tx_tready、rx_tvalid信號均處于高電平狀態,表明鏈路已達同步狀態,數據收發正常。從而證明實驗1中鏈路不通是由于LMFC沒有達到對齊狀態所致,同時也證明了通過調節器件時鐘與SYSREF的延時關系或者增加SYSREF的高電平持續時間均可使器件時鐘捕捉到SYSREF的上升沿。實際調試中,可同時結合這兩種方法進行調試。
6 結論
相比于并行傳輸總線,JESD204B高速串行協議在傳輸速率、信號同步性、抗干擾性能以及設計成本方面具有巨大優勢,已逐漸成為數據轉換器接口設計的主流方案,而Subclass1模式在JESD204B協議完成確定性延時功能方面具有重要作用。本文分析了JESD204B協議Subclass1確定性延時機制及其時鐘設計要求,總結出Subclass1模式時鐘調試方法,并設計實驗驗證了該方法的有效性,為JESD204B數據轉換器的開發提供一定的技術參考。
參考文獻
[1] 焦喜香,吳兵,李武建,等.基于JESD204B協議的高速雷達數字接收機設計[J].信息通信,2016(6):42-44.
[2] JEDEC.Serial interface for data converters JESD204B.01[S].2011.
[3] HARRIS J.What is JESD204B and why should we pay attention to it?[J/OL].JESD204B Survival Guide,2013[2017-09-04].www.analog.com/media/en/technical-docu-mentation/technical-articles/JESD204B-Surviual-Guide.pdf.
[4] 劉安,禹衛東,馬小兵,等.基于FPGA的高速串行數據收發接口設計[J].電子技術應用,2017,43(6):48-51.
[5] JONES D. JESD204B子類:簡介和確定性延遲[J].中國電子商情(基礎電子),2015(3):24-29.
[6] Xilinx.All programmable 7 series product tables and productselection guide[Z].2015.
[7] Xilinx.JESD204 v6.1.LogiCORE IP product guide[Z].2015.
作者信息:
呂志鵬1,2,馬小兵1,禹衛東1
(1.中國科學院電子學研究所,北京100190;2.中國科學院大學 電子電氣與通信工程學院,北京100039)