? ? ? 通過在數據的并行發送路徑上同時傳輸時鐘信號來進一步改進數據的傳輸。這種一起發送時鐘和數據的方法稱為源同步接口。由于時鐘具有與數據相同的片外/片上偏斜,所以更容易滿足時序要求,特別是如果使用硬件設計質量良好的FPGA電路板,其上具有相同傳輸時間的匹配延遲軌跡。
? ? ? 讓時鐘從源傳輸,而不是在本地生成并保持同步,通常不適用于驅動分割的SoC功能邏輯,但對于單向串行數據傳輸非常有用。
? ? ? 片間的傳輸時間非常重要,它仍然是多片FPGA系統速度最大的物理限制,克服這一問題的方法是在FPGA之間使用差分信號。使用FPGA對LVDS的內置支持,可以將傳輸速率提高到1GHz。這允許更高的復用率,而不必降低原型總體的時鐘速度。
? ? ? 另外,現代FPGA具有專用的串行到并行轉換器SERDES接口,該轉換器具有特定的時鐘和邏輯功能,可實現高速串行傳輸。使用SERDES口避免了在FPGA結構中實現類似功能的時序和布局復雜性。還可以使用FPGA內置的SERDES塊雙倍數據速率(DDR)操作支持,通過使用傳輸時鐘的兩個邊緣,將傳輸數據速率加倍。
? ? ? 保證了板載的最高傳輸速度,但稍有缺點的是每個串行數據流需要兩個引腳。因此,雖然比率為8:1的單端復用方案只需要一個FPGA間跡線來傳輸八個數據信號,但差分IO標準需要兩個,因此我們稱之為8:2的多路復用器比率。因此,差分解僅將互連減少了四倍,而不是八倍。然而,當考慮到LVDS的顯著更高速度時,可以考慮128:2的復用率,這提供了比單端方案可能的更大的數據傳輸帶寬,如圖所示,該SERDES傳輸以400MHz的傳輸速率運行。
? ? ? 并且需要兩個時鐘用于操作。時鐘由源FPGA內的PLL基于來自外部源的100MHz時鐘生成。OSERDES配置為8:1的比率,但由于它在DDR模式下運行,我們只需要400MHz而不是800MHz的傳輸時鐘。這意味著400MHz時鐘在一個100MHz周期內傳輸8位。為了提供高于8的復用率,我們可以在OSERDES的輸入端使用額外的多路復用器,但這只需要在較慢的內部時鐘速率下工作。
? ? ? 數據和傳輸時鐘都通過LVDS信令傳遞到目的地FPGA,但在目的地FPGA處。然后,數據和傳輸時鐘驅動ISERDES塊。接收到的時鐘通過BUFR塊將其除以4,以創建100MHz的本地版本,這也是ISERDES和dmux控制所需的。該圖僅給出了概述,并且實現可能更復雜,實現的方式將取決于原型驗證系統供應商提供的方案。
審核編輯:劉清
評論