JESD204B 協議中的三個狀態對於在鏈路的 TX 和 RX 之間構建有效數據鏈路非常重要,它們是:代碼組同步 (CGS)、初始信道對齊序列 (ILAS) 和用戶數據。今天我將探討在 TX 與 RX 之間必然會出現的信號發送技術,完成構建有效鏈路所需的必要步驟。
圖 1 — JESD204B TX 至 RX 鏈路的信號連接
從 TX (tx_dataout) 到 RX 的信號是包含數據鏈路的串行解串器信道信號。這些信號不需要偏移對齊。從 RX 回到 TX 的信號是 SYNCn 請求信號。
時鐘芯片通常是 LMK04828 超低抖動合成器與抖動清除器,可爲 txlink_clk 和 rxlink_clk 提供一個器件時鐘。此外,它還可提供用來同步 TX 和 RX 時間域的 SYSREF。
發送器和互補的接收器包含 8b/10b 編碼、數據鏈路層、擾頻器和傳輸層。我們假設發送器和接收器都採用相同的 LMFS 配置和 PLL 設置。
要在經過 JESD204B 協議的各個狀態時檢驗信號,可使用 FPGA 廠商提供的信號分析工具。
構建 JESD204B 鏈路的第一步是 RX 發信號通知 TX 開始代碼組同步 (CGS):
a.) RX 針對 TX 降低 SYNC 信號,請求執行 CGS。
b.) TX 的迴應將是開始發送 K28.5 字符(8b/10b 編碼之前的 0xBC 十六進制)。
c.) RX 接收到並最少解碼 4 個 K28.5 字符後,它會提高 SYNC 信號,讓 TX 開始發送 ILAS 序列。
圖 2 — a) 從 RX 到 TX 的 SYNC 低信號請求;b) TX 以 K28.5(0xBC 八位位組)作爲迴應;c) 在 RX 收到 K28.5 字符後,SYNC 被提高,使 TX 開始發送 ILAS
下一步是初始信道對齊序列 (ILAS):
d.) 一旦 SYNC 升高,TX 就會在本地多幀時鐘(LMFC,LMFC 在圖中未顯示)的上升沿位置的每個信道上發送 ILAS 信號。所有信道都將從源頭與該 LMFC 邊沿對齊。
e.) ILAS 總是包含 4 個多幀數據。每個多幀數據都以一個 K28.0 字符開始,以一個 K28.3 字符結束。鏈路配置數據在第 3 個八位位組開始的位置通過第二個多幀數據發送。
圖 3 — d) SYNC 被 RX 提高,以告知 TX 開始 ILAS;e) 通過所有信道發送 ILAS
f.) 圖 4 概括說明了 ILAS 多幀數據的結構,這可在 TX 發出的 ILAS 八位位組數據流中證實。K28.0=R 和 K28.3=A 字符可用來對齊多點鏈路中的所有信道。
圖 4. ILAS 結構
完成 ILAS 後,TX 將通過串行信道發送有效用戶數據。
g.) 在 RX 內部,每個信道都會在每個信道的彈性緩衝器中存儲 ILAS 序列的最後一個 A 字符以及緊跟其後的任何用戶數據。彈性緩衝器中用戶數據的釋放點通常是在檢測到每個信道彈性緩衝器中最後一個 A 字符後的下一個 LMFC 上升沿。接收到的用戶數據就像在 TX 側一樣,將需要通過傳輸層的背面,將串行位重新排列爲有意義的並行樣片。
h.) 該信道對齊特性可確保來自每個信道的所有數據都可對齊。此外,它還可承受物理佈局導致的任何信道偏移。這是在實現確定時延(該主題我將在以後的博客中介紹)過程中所使用的重要特性之一。