概述
當使用現(xiàn)代寬帶數(shù)據(jù)轉(zhuǎn)換器時,管理產(chǎn)生的高速串行數(shù)據(jù)流是一個巨大的挑戰(zhàn)。ESIstream 是一個開源的串行數(shù)據(jù)接口協(xié)議,成本極低,支持多種 FPGA 架構(gòu)的簡單硬件實現(xiàn),并占用最小的資源。簡單來說,它是 JEDEC 的 JESD204B 子集 1 和 2 標準的開源替代方案。另外, ESIstream 可為用戶帶來很多好處,這里將討論其中的一些,包括低復雜度、低鏈接延遲和實現(xiàn)確定性延遲的簡單方案。
本文將僅闡述 ESIstream 的架構(gòu),因為當前有很多文檔已很好地描述了 JESD204B 的標準。然后我們將揭示這兩種協(xié)議之間的細微區(qū)別,并介紹 Teledyne e2v,ESIstream 協(xié)議的開發(fā)者,已決定發(fā)布自己的 ESIstream VHDL IP,以進一步簡化用戶的使用。
串行的歷史
新千年以來,數(shù)據(jù)轉(zhuǎn)換器技術(shù)和 CMOS 工藝的發(fā)展開始到達功能的瓶頸。起初,高速 ADC 和 DAC(fs 》 10 MHz)采用并行數(shù)據(jù)接口,這意味著在印刷電路板(PCB)上需從每個數(shù)據(jù)轉(zhuǎn)換器上引出/引入大量的布線(圖 1)。隨著采樣率和輸出數(shù)據(jù)速率的提高,PCB 設(shè)計變得越來越有挑戰(zhàn)性。而串行化接口,起初使用 LVDS(低壓差分型號),最近則使用串行器/解串器(SERDES)接口(時鐘嵌入在數(shù)據(jù)流中),為這種數(shù)據(jù)傳送的挑戰(zhàn)提供了一種解決方案,并可簡化 PCB 布線,大大推進形狀參數(shù)的發(fā)展。這種接口的簡化對鏈接的兩端都有利(圖 1)。Serdes 鏈接進一步簡化了 PCB 的設(shè)計,因為無需保證數(shù)據(jù)線長度匹配。
然而,經(jīng)過了很多年,才有了一種串行方案解決了寬帶數(shù)據(jù)轉(zhuǎn)換器帶來的所有系統(tǒng)級挑戰(zhàn)。實現(xiàn)確定性延遲是同時采樣的前提,人們付出了很多努力研究它。下表(表 1)展示了過去 12 年甚至更長時間里 JESD204 標準的發(fā)展和開源 ESIstream 的發(fā)展。
串行數(shù)據(jù)的一個顯著的優(yōu)點是,當分辨率提高時,器件的封裝無需包含額外的數(shù)據(jù)線,這可以幫助限制引腳數(shù)的增加。但是,串行化的缺點是由于引入了編碼/解碼流程,且通過某些額外的接收路徑彈性緩沖器補償路徑之間的對齊度,導致增加了額外的傳遞延遲。
串行化也可幫助管理數(shù)據(jù)轉(zhuǎn)換器的電源需求,因為它能降低單個器件需要的特定輸出驅(qū)動器的數(shù)目。而且,通過實現(xiàn)差分串行線,可幫助減少復雜系統(tǒng)中產(chǎn)生的電氣噪聲,以保證良好的動態(tài)范圍。另外,編碼方案也可分散頻譜噪聲,而且差分信號可降低串擾。
事實上,直到現(xiàn)在,早期串行接口依然不能很好地支持多個并行通道的應用,設(shè)計師依然會面臨板級設(shè)計的挑戰(zhàn)。
如圖 3。通過這種方式,它的編碼效率高達 87.5%,比 JESD204B(8b/10b 的編碼流)略高。不均等位(DB)可在 CLK 位切換使能同步監(jiān)控時,保持數(shù)據(jù)鏈間的 DC 平衡。
ESIstream 發(fā)射端(Tx)和接收端(Rx)核心的上層框圖如圖 4 和圖 5 所示。
ESIstream 編碼算法被設(shè)計成可減少串行接口的物理限制。最重要的是,發(fā)射端和接收端之間的鏈接需要 AC 耦合。考慮到這一點,發(fā)射的數(shù)據(jù)要確保 DC 平衡,否則鏈接耦合電容可能漂移,導致數(shù)據(jù)眼圖閉合,破壞接收的數(shù)據(jù)。
在接收端,時鐘和數(shù)據(jù)恢復(CDR)模塊通常使用 PLL 鎖到發(fā)射的信號,這樣無需使用獨立的時鐘線。但是,為了使得 CDR 鎖定并保持鎖定狀態(tài),需保證傳送的信號經(jīng)過特定的變換次數(shù)。
為發(fā)送的數(shù)據(jù)加擾是為了維持 DC 平衡,確保鏈接保持鎖定。ESIstream 的開發(fā)者希望限制數(shù)字設(shè)計的復雜度,于是采用附加的算法最小化錯誤傳遞。這種算法基于斐波那契數(shù)列,長度為 2 17 -1。此外還應用了 14 位的移位。轉(zhuǎn)換流程輸出的有用數(shù)據(jù)和線性反饋移位寄存器數(shù)據(jù)(偽隨機碼)進行異或操作,如圖 6。
加擾之后,14 位的數(shù)據(jù)結(jié)果被編碼成 16 位的數(shù)據(jù)幀。第一個附加位時鐘位,隨著每個連續(xù)幀切換。第二個附加位不均等位根據(jù)不均等計數(shù)器(RDC)的當前狀態(tài)設(shè)置。兩種 RDC 狀態(tài)可導致:
1. RDC 小于+/-16,不均等位設(shè)置為‘0’。
2. RDC 大于+/-16,不均等位設(shè)置為‘1’,數(shù)據(jù)反向(按位非運算)。
這個操作可滿足 Rx PLL 鎖定的最小轉(zhuǎn)換次數(shù)的要求,并滿足鏈接 DC 平衡的需要。在正常操作下,接收端首先檢查不均等位。如果它為高,則在去擾前反向接收的數(shù)據(jù)。如果它為低,則直接對數(shù)據(jù)進行去擾操作。
對于確定性操作,ESIstream 要求鏈接同步,即發(fā)射端和接收端的數(shù)據(jù)幀對齊,鏈接兩端的加擾引擎在同樣的初始化狀態(tài)。同步分兩步,幀對齊和偽隨機位序列(PRBS)初始化。
接收端通過使能 SYNC 啟動流程。這個脈沖應該持續(xù)至少一個幀周期。然后發(fā)射端發(fā)送一個 32 幀的對齊樣式(圖 7)。在接收端,這個保留的序列繞過加擾和不均等的處理,使接收端和發(fā)射端時序?qū)R。在對齊幀之后,發(fā)射端立刻發(fā)送一個 32 幀的 PRBS 數(shù)據(jù)——包含 14 位的 PRBS 以及時鐘和不均等信息。經(jīng)過正確地處理,接收端 LFSR 由接收端的 PRBS 字初始化。這時鏈接已同步(圖 8)。用戶可在接收端通過觀察時鐘位,連續(xù)監(jiān)控同步狀態(tài)。如果時鐘位在某一幀沒有切換,則出現(xiàn)了同步問題,需復位鏈接重新同步。
通過加擾以及時鐘位和不均等位的處理,ESIstream 可保證確定的數(shù)據(jù)傳輸。
評論
查看更多