国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Xilinx 7系列GTX高速收發器的初步調試方案

電子設計 ? 來源:懶癌晚期患者 ? 作者:懶癌晚期患者 ? 2020-12-15 17:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本來寫了一篇關于高速收發器的初步調試方案的介紹,給出一些遇到問題時初步的調試建議。但是發現其中涉及到很多概念。逐一解釋會導致文章過于冗長。所以單獨寫一篇基本概念的介紹,基于Xilinx 7系列的GTX。

需要說明,文本只是初步介紹基本概念,會盡量使用通俗淺顯的描述而避免使用專業詞匯,也只會描述一些基本的、常用的內容,不能保證全面型。所以從專業角度看,可能部分用詞和原廠文檔有出入,同時覆蓋面不夠,請見諒。

GTP、GTX、GTH和GTZ:

這四個是Xilinx 7系列FPGA全系所支持的GT,GT的意思是Gigabyte Transceiver,G比特收發器。通常稱呼為Serdes、高速收發器,GT,或者用具體型號(例如GTX)來稱呼。

7系列中,按支持的最高線速率排序,GTP是最低的,GTZ是最高的。GTP被用于A7系列,GTZ被用于少數V7系列。從K7到V7,最常見的是GTX和GTH。GTH的最高線速率比GTX稍微高一點點。

GTX和GTH的文檔都是UG476。從這里就能看出來,這兩個GT的基本結構大同小異。所以掌握一個,另一個基本也就熟悉了。

UG476文檔鏈接:http://link.zhihu.com/?target=https%3A//www.xilinx.com/support/documenta...

TX和RX:

嚴格說TX應該是Transmitter,表示發送部分。GTX的TX部分結構圖如下:

o4YBAF9uEpeAD_twAACQGt-nRQo853.jpg

圖片來自UG476

RX的全稱是Receiver,結構圖如下

pIYBAF9uEpiAFr4GAAB6B8IVFYg618.jpg

圖片來自UG476

后面的內容會用到這兩張圖,可以翻看一下。

PMA,PCS

從TX和RX的結構圖可以看到一個共同點:結構圖主體分為兩個部分,左邊一個小框圖,右邊一個大框圖。

左邊小框圖的部分就是PMA,右邊大框圖的部分是PCS。

為了便于理解,PMA的功能可以簡單描述為:

1.串并轉換(圖中的SIPO和PISO);

2.模擬部分;

由此可以反推出來,PCS中的功能,都是并行的數字電路處理。

理論上說GTX的最小必要單元就是PMA,其主要原因就是核心的模擬部分。而PCS理論上可以全部由FPGA普通邏輯來實現。當然作為硬核提供的PCS功能更多、性能更好、使用更方便。

Elastic Buffer

一般稱為彈性buffer,基本結構是一個FIFO,常用于處理buffer兩邊的跨時鐘問題。不過其實有更多的用途,比如Clock Correction或者Channel Bonding。

另外還有一種不用Elastic Buffer的模式,一般稱為buffer bypass模式,算是一種高級應用。有興趣的童鞋可以參考文檔研究一下。

8b10b

通常說8b10b是一個編碼方式。在這里還指GTX PCS中的一個模塊。

作為編碼,8b10b有平衡電平,防止連續1/0的功能。編碼分為正負碼和特殊K碼。最常用的K碼應該是k28.5。8b10b最大的優勢在于自帶錯誤檢測。當出現8b10b錯誤的時候,大概率是鏈路質量有問題。8b10b最大的劣勢是效率比較低,有20%的額外開銷,所以常用于低于8G的場景,最常見的、使用8b10b、同時又高于8G線速率的似乎是CPRI Rate7,線速率9.8G左右。

作為GTX的一個模塊,發送端提供了方便使用的編碼接口,接收端提供了方便使用的輸出指示,直接使用即可。

另外,GTX還提供了Gearbox。除了8b10b之外,還有其他很多編碼方式,比如64b66b,Gearbox就是為這一類編碼做準備的。

PRBS

PRBS是偽隨機序列碼,GTX自帶了PRBS的生成器(在TX內部)和PRBS接收/檢查模塊(在RX內部)。ibert中的誤碼率檢查就是基于內置的PRBS模塊。

從結構圖可以看到,PRBS和8b10b沒有項目連接的直接關系,所以ibert的測試中沒有使用8b10b編碼(也沒有使用其他編碼)。同時內部的PRBS也不支持使用其他編碼。所以如果想在GTX外部使用PRBS信號源,可以另外單獨做PRBS的生成器和校驗模塊。Xilinx似乎是有相關參考設計的。

ibert

ibert是Xilinx提供的一個用于GT輔助調試的IP。

首先明確一下,這是一個IP。所以ibert有兩種用法:

1.直接使用example design進行獨立使用;

2.集成到某個工程中進行使用;

ibert最常用的兩個用途是:

1.基于PRBS模塊的誤碼率檢查;

2.基于眼圖掃描模塊的測量近端眼圖;

另外,ibert中可以方便的設置GTX的所有參數。是個不錯的參數測試平臺。

通??梢試L試幾個參數的調整來查看對GTX的誤碼率/眼圖是否有幫助,這幾個參數是TX部分的預加重。而接收端的設置是均衡模式,由于均衡的原理較為復雜,而且多為自動調整,所以不會有簡單的幾個參數就能看出變化。

GTX的分布

7系列FPGA通常按照bank來分,對于GTX的bank,一般稱為一個Quad,原因是一個bank中有4個獨立的GTX通道。每個通道稱呼為Channel。所以在GTX的代碼中可以看到Channel這個底層原語。

每個Quad擁有兩個參考時鐘Pin,也可以從上下兩個Quad中獲取參考時鐘(如果上下有GTX Quad的話)。

QPLL和CPLL

已經知道四個GTX為一組,稱呼為Quad,每個GTX稱呼為Channel,就很容易理解QPLL和CPLL了。QPLL是一個Quad共用的PLL,GTX一個Quad只有一個QPLL。CPLL是每個Channel獨有的PLL。

從底層角度看,由于CPLL是每個Channel獨有的,所以CPLL的所有接口都在Channel這個底層模塊中。而QPLL是另外使用了一個叫common的底層模塊。

GTX中QPLL和CPLL,除了數目(一個Quad一個QPLL四個CPLL)和歸屬(QPLL屬于common,CPLL屬于Channel)不同之外,最大的不同在于支持的最高線速率頻率不同。CPLL最高只有6.xG,而QPLL可以超過10G(具體數值要根據器件的速度等級來查詢DataSheet)。

即使QPLL工作在很高的線速率下,Channel也可以工作在較低的線速率下。具體的實現方案就是1.使用Channel自帶的CPLL而不用QPLL;2.Channel可以將QPLL的速率按2的倍數進行降低;這樣同一個參考時鐘下,一個Quad的不同GTX有機會跑在不同的線速率下。當然這一需求需要更多的操作,IP本身無法實現。

Clock Correction

這個功能必須使用Elastic Buffer。

原理是指定一個關鍵字段(類似于k28.5的二進制數),發送端定期發送這個關鍵字段,接收端收到這個關鍵字段時,會檢查這個字段在FIFO中的位置,并通過插入 無效數據/刪除數據 的方法來調整,使這個字段盡可能保持在FIFO的中心部分,防止FIFO溢出。

這個功能的作用是來解決不同時鐘會導致FIFO溢出的問題。

Channel Bonding

這個功能必須使用Elastic Buffer。

原理是指定一個關鍵字段(類似于k28.5的數字)。當多個GTX都收到這一字段時,會按照配置進行相互校準,來保證并行數據同步輸出。

這個功能的作用是在多個GTX之間進行同步化處理。

GTX IP及Example Design

GTX的IP是7 Series FPGAs Transceivers Wizard。是一個 非常有用的工具。

關于具體的配置,需要依據具體應用來設置。這里主要說兩點

1.Protocol

o4YBAF9uEpmAP6G_AABJlYPJXC8443.jpg

圖片來自GT IP GUI

在IP配置界面的第二個標簽頁下有一個Protocol的選項,通常默認是Start from scratch,代表沒有任何預設值。當熟悉GTX并熟悉應用的需求后,可以用這個設置進行逐項調整。其他選擇都多少加入了一些預設值。在不熟悉GTX或者應用需求時,可以先使用預設配置進行學習/測試。

2.Shared Logic

單獨的GTX通常是無法直接工作的,而最主要的原因就是GTX的復位流程。GTX有嚴格的復位流程。如果自行設計,費時費力。萬幸,Xilinx提供了參考設計——Shared Logic。

通常使用Example Design來作為最終系統集成的GTX IP。這樣做的原因就是包含了需要的復位控制等輔助設計,并且接口變得更加簡單易用。默認這部分是包含在Example Design中,而IP可以選擇將這部分重新打包,放入IP Core中。這樣最終的IP不僅僅有GTX的硬核,也有大量Shared Logic這樣用普通可編程邏輯實現的功能模塊。

o4YBAF9uEpuAMRbHAAA7PwUKOuc795.jpg

圖片來自GT IP GUI

配置好GTX IP之后,另一個非常有用的功能就是Example Design。Vivado的一個優點就是幾乎所有的IP都可以非常便捷的生成獨立完整的Example Design(比如需要獨立使用ibert的時候)。

o4YBAF9uEpyAdg2gAABH-gdKJhE476.jpg

GTX IP是提供源代碼的,最底層就是GTX的Channel和common模塊。用戶可以通過代碼來查看相關的參數值和端口連接。

GTX的DRP端口

通常一個內部模塊要進行重配置,使用的是兩種做法:端口控制和配置參數控制。

端口控制就是提供一個控制端口作為開關。比如BRAM端口中的EN和WE,提供高低電平就可以進行功能的改變(EN控制是否使用,WE控制讀寫)。

配置參數控制,就是有一個配置參數表,每一個參數擁有一個唯一地址和對應的數據內容。通過改寫對應地址的數據內容來進行功能的改變。

GTX同時使用了這兩種方式。所以GTX Channel和Common不僅有大量的端口(當然大部分端口都是功能端口而不是僅僅作為配置功能),還擁有一張地址表(參考UG476的附錄)。通過DRP端口可以讀寫地址表中的相關地址,達到獲取數據/改變配置的功能。

一個常見的應用就是線速率切換。這時候就需要利用DRP端口來調整部分參數的值,然后復位GTX,來使GTX工作在不同的線速率下。

另一個用到DRP的應用就是眼圖掃描。希望掃描出GTX的眼圖,除了使用ibert,還可以在設計中加入眼圖掃描模塊來進行實時掃描,這時候就需要使用DRP端口。

使用DRP端口的時候,有一個地方需要注意,就是DRP端口的時序。UG476似乎沒有提供接口時序。這部分請參考XADC的文檔手冊——UG480。

pIYBAF9uEp2AY7YvAACHiquzrAo778.jpg

圖片來自UG480

環回

pIYBAF9uEp-ANye9AACDGzFVuKs428.jpg

圖片來自UG476,左邊為接收端,右邊為發送端

GTX提供了四種環回模式,結合上圖可以看到,環回路徑分別是1、2、3、4。

1,2是近端環回,用于測試GTX本身。3,4是遠端環回,用于輔助測試對端GTX。

具體的細節請參考UG476。這里需要說明的是,用的比較多的是2,近端PMA環回;用的最少的大概是1,近端PCS環回,基本沒有什么實際作用(可以想想為什么)。遠端環回需要修改部分參數才能使用,具體參考文檔。

關于GTX的一些基礎概念就介紹完畢,更多細節,還請參考UG476文檔。

編輯:hfy

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 收發器
    +關注

    關注

    10

    文章

    3819

    瀏覽量

    111195
  • Xilinx
    +關注

    關注

    73

    文章

    2200

    瀏覽量

    131134
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于XILINX Vivado平臺的GTX收發器的開發

    此選項根據你所用的FPGA型號確定GT類型,我所用的是7k325t系列,故GT類型為GTX。
    的頭像 發表于 03-03 14:46 ?3705次閱讀
    基于<b class='flag-5'>XILINX</b> Vivado平臺的<b class='flag-5'>GTX</b><b class='flag-5'>收發器</b>的開發

    深入剖析TJA1043高速CAN收發器:特性、應用與設計要點

    深入剖析TJA1043高速CAN收發器:特性、應用與設計要點 在電子工程師的日常工作中,CAN收發器是實現控制局域網(CAN)通信不可或缺的組件。今天,我們就來詳細探討NXP
    的頭像 發表于 02-10 11:30 ?192次閱讀

    TCAN1042系列CAN收發器高速與可靠的完美結合

    TCAN1042系列CAN收發器高速與可靠的完美結合 在當今的電子系統中,CAN(Controller Area Network)總線憑借其高可靠性、實時性和抗干擾能力,廣泛應用于汽車、工業自動化
    的頭像 發表于 01-30 17:30 ?635次閱讀

    探秘TJA1042高速CAN收發器:設計與應用指南

    探秘TJA1042高速CAN收發器:設計與應用指南 在汽車電子領域,高速CAN(Controller Area Network)通信至關重要。NXP Semiconductors的TJA1042
    的頭像 發表于 01-28 16:50 ?524次閱讀

    MCP2551高速CAN收發器:特性、應用與設計要點

    MCP2551高速CAN收發器:特性、應用與設計要點 在CAN總線通信領域,收發器扮演著至關重要的角色,它是CAN協議控制與物理總線之間的橋梁。今天我們要深入探討的是Microchi
    的頭像 發表于 01-22 15:20 ?351次閱讀

    TCAN33x系列CAN收發器高速通信與可靠防護的完美結合

    TCAN33x系列CAN收發器高速通信與可靠防護的完美結合 在工業自動化、汽車電子等眾多領域,CAN(Controller Area Network)總線憑借其高可靠性、實時性和抗干擾能力,成為
    的頭像 發表于 01-08 16:55 ?650次閱讀

    探索TJA1042高速CAN收發器:特性、應用與設計要點

    探索TJA1042高速CAN收發器:特性、應用與設計要點 在汽車電子領域,高速CAN(Controller Area Network)通信至關重要,它能確保各個電子控制單元(ECU)之間穩定、高效
    的頭像 發表于 12-24 16:45 ?597次閱讀

    探索TJA1057高速CAN收發器:汽車電子的理想之選

    收發器.pdf 一、產品概述 TJA1057屬于Mantis系列高速CAN收發器,專為汽車行業的高速CAN應用而設計。它能夠為CAN協議控制
    的頭像 發表于 12-24 16:45 ?375次閱讀

    探索TJA1044:高性能高速CAN收發器的卓越之選

    Mantis系列高速CAN收發器的一員,憑借其出色的性能和豐富的特性,成為了眾多汽車應用的理想選擇。今天,我們就來深入了解一下這款TJA1044高速CAN
    的頭像 發表于 12-24 16:40 ?419次閱讀

    NXP TJA1051高速CAN收發器:技術解析與應用指南

    NXP TJA1051高速CAN收發器:技術解析與應用指南 在汽車電子領域,高速CAN(Controller Area Network)通信是實現各個電子控制單元(ECU)之間高效數據傳輸的關鍵技術
    的頭像 發表于 12-24 16:25 ?504次閱讀

    深入剖析TCAN1051系列CAN收發器:特性、應用與設計要點

    、工業自動化、樓宇控制等眾多領域。而TCAN1051系列CAN收發器作為其中的佼佼者,為工程師們提供了強大而可靠的解決方案。今天,我們就來深入剖析一下這個系列
    的頭像 發表于 12-23 17:25 ?474次閱讀

    SN65HVD7x系列RS - 485收發器:設計與應用全解析

    SN65HVD7x系列RS - 485收發器:設計與應用全解析 在工業通信領域,RS - 485標準以其出色的抗干擾能力和長距離通信優勢,成為了眾多工程師的首選。德州儀器(TI)的SN65HVD72
    的頭像 發表于 12-23 16:25 ?343次閱讀

    TLE9371VSJ:高速CAN收發器的卓越之選

    作為一款高性能的高速CAN收發器,為CAN網絡帶來了信號改進功能,為電子工程師們提供了新的解決方案。下面我們就來詳細了解一下TLE9371VSJ這款產品。 文件下載: Infineon
    的頭像 發表于 12-20 11:35 ?872次閱讀

    TLE9350BVSJ:高速CAN FD收發器的卓越之選

    TLE9350BVSJ:高速CAN FD收發器的卓越之選 在電子工程領域,CAN(Controller Area Network)總線憑借其高可靠性和實時性,在汽車和工業應用中占據著重要地位。而
    的頭像 發表于 12-19 14:55 ?258次閱讀

    gtx是光纖嗎

    ”,主要面向高端游戲玩家和追求高性能的用戶。GTX顯卡支持最新的圖形處理技術,如DirectX 12、HDR等,能夠為玩家帶來流暢的游戲體驗和高品質的圖像效果。 GTX高速收發器領域
    的頭像 發表于 05-08 10:37 ?1789次閱讀