JESD204B(1)——總體概要

1. 簡介

JESD204是一種連接數據轉換器(ADC和DAC)和邏輯器件的高速串行接口,該標準的 B 修訂版支持高達 12.5 Gbps串行數據速率(目前C修訂版已經發布,即JESD204C),並可確保 JESD204 鏈路具有可重複的確定性延遲。隨着高速ADC跨入GSPS範圍,與FPGA(定製ASIC)進行數據傳輸的首選接口協議是JESD204B。

在上一篇有關SerDes的博客《SerDes基礎知識總結》中提到,JESD204B的物理層是基於SerDes的,所以JESD204B理所當然的繼承了SerDes的優點,即:

  • 更小的封裝尺寸與更低的封裝成本
  • 簡化的 PCB 佈局與佈線
  • 高靈活佈局
  • 擴展能力強:該接口能夠自適應不同數據轉換器分辨率。

那麼JESD204B有什麼缺點呢?第一個缺點就是:複雜!真要對接口理解透徹的話,需要閱讀很多資料。第二個缺點:有一定的時延,不適用於實時性要求高的場合,因爲數據從發送到接收有一定的延遲。

JESD204B與PCIE類似,其標準是一種分層規範,規範中的各層都有自己的功能要完成。如下圖所示爲JESD204B的分層框圖。

下面就一一介紹各層完成的基本功能。

2. 分層簡介

2.1 應用層(Application Layer)

通過應用層可以實現特殊用戶配置。參考文獻1中提到:

對於需要以不同於N'(每個樣本傳輸的位數)的樣本大小傳輸數據的ADC,以獨特方式配置應用層可能有利。可以將多個樣本重新包裝,從而降低通道速率,提高鏈路整體效率。

我的理解是:當多個發送器模塊和一個接收器模塊連接時,如果發送器(ADC)的樣本大小不一致,在接收端可以進行特殊配置,通過補位或者合包的方式,使每一個接受的數據包大小都相同?(PS:待實際調試接口後再來理解這一個功能)

2.2 傳輸層(Transport Layer)

傳輸層根據給定器件已定義的鏈路配置參數,決定如何包裝來自ADC的數據,即LMFS參數配置,四個字母代表最主要的四個參數,收發兩端協商好之後(ADC會將參數發給FPGA,雙方會進行校驗),就按規則進行組包和解包。在下一篇博客JESD204B(2)——理解鏈路配置參數中,着重說明了配置參數的含義以及參數是如何影響鏈路組包以及傳輸速率的,這是理解JESD204B的重點之一。用下圖來大概說明一下傳輸層的作用,8個ADC通過一定的方式組合在4條鏈路中進行傳輸。

數據鏈路層主要是完成鏈路建立和數據編碼(編碼有的時候有劃分在物理層中)。數據編碼主要是加擾(可選)和8B/10B編碼,其主要作用在《SerDes基礎知識總結》中有介紹,這裏就不再贅述。鏈路建立是也是JESD204B重點掌握的知識之一。

數據鏈路層通過鏈路建立過程同步JESD204B鏈路。鏈路建立包括三個不同階段:

  1. 代碼組同步(CGS)

在代碼組同步(Code Group Synchronization,CGS)期間,各接收器(FPGA)必須利用時鐘和數據恢復(CDR)技術,在ADC傳來的輸入數據流中找到K28.5字符。一旦在所有鏈路通道上檢測到某一數量的連續K28.5字符,接收器模塊就會解除置位送至發送器模塊的SYNC~ 信號。在發送端捕獲到SYNC~ 的變化後,JESD204A和JESD204B的處理會略有不同。在JESD204A中,發送模塊捕捉SYNC~ 信號的變化,經過固定數量的幀時鐘之後,ILAS就會啓動。在JESD204B中,發送模塊捕捉SYNC~ 信號的變化,並在下一個本地多幀時鐘(LMFC)邊界上啓動ILAS。

  1. 初始通道對齊序列(ILAS)

ILAS(Initial Lane Alignment Sequence)的主要作用是對齊鏈路的所有通道,驗證鏈路參數,以及確定幀和多幀邊界在接收器的輸入數據流中的位置。

ILAS由4個或更多多幀組成。第一、第三和第四個多幀以/R/字符開始,以/A/字符結束。第二個多幀包含/R/和/Q/字符,隨後是鏈路參數。/Q/字符表示之後的數據是鏈路配置參數。如果接收器需要,ILAS可以添加其它多幀。最後一個ILAS多幀的最後一個/A/字符出現後,用戶數據開始。

  1. 用戶數據

在這一階段,用戶數據根據發送器(ADC)中定義並轉發到接收器(FPGA)的鏈路參數,以流形式從發送器傳輸到接收器。達到用戶數據階段後,如果需要,通過數據鏈路中的字符替換可以監視並糾正幀和通道對齊。

如下圖所示,爲整個鏈路層數據鏈路建立的圖示。實際上鍊路層除了要理解協議之外,還有理解對齊過程中各信號的時序關係,包括SYNC~ 、 LMFC,後面有時間再專門梳理指示信號和同步時鐘的關係。

2.4 物理層(Physical Layer)

在物理層中,數據進行串行化,8B/10B編碼數據以線路速率發送和接收。JESD204的物理層實際上就是SerDes結構,具體可參見《SerDes基礎知識總結》。在物理層主要是要關注電氣特性,通過眼圖來測量信號完整性。

3. 總結

這篇博客基本上我是看了很多資料,稍微對JESD204B有一定的理解之後,從參考文獻1中篩選出來的有助的快速入門的內容。實際上理解透JESD204B還有很多知識點要學習,並且結合實際調試觀察信號和數據變化。接下來需要學習的是JESD204B的三個子類(相當於三種模式)的特點,通過各個時鐘和信號之間的關係來確定延遲(這也是B修正版中的重要內容,這一方面還沒理解透),以及通過信號關係對錯誤的表徵等,後面有機會再慢慢展開。

參考文獻

  1. 《瞭解JESD204B規範的各層——從高速ADC的角度出發》_ADI
  2. JESD204B:適合您嗎?
  3. Link synchronization and alignment in JESD204B: Understanding control characters
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章