本篇博文側(cè)重于提供 Versal GTY 仿真示例、演示 GTY 如何解復(fù)位以及如何執(zhí)行速率變更。
在 Versal ACAP GTY 收發(fā)器中,引入了“Master Reset Controller”(主復(fù)位控制器)的概念。
主復(fù)位控制器用于自動單步執(zhí)行 LCPLL、RPLL、ILO、TX 可編程分頻器、RX 可編程分頻器、TX 通道以及 RX 通道的復(fù)位。
您可在 AM002 的“收發(fā)器主復(fù)位”部分中找到詳細描述。GTY 中的全新主復(fù)位控制器取代了前幾代 UltraScale/UltraScale+ 收發(fā)器的 GT Wizard 內(nèi)包含的復(fù)位控制器幫助程序塊。
在本仿真示例中,Versal GTY 配置如下:
通道 2 (ch2) 上為單通道
采用雙線速率,將 10G/25G 編程到 CONFIG0/CONFIG1 內(nèi)
對于這兩個速率,REFCLK 均為 156.25MHz 并穿過相同的參考時鐘端口
IP 設(shè)計示例用于完成設(shè)計并提供仿真測試激勵文件。
模塊框圖
設(shè)計示例的模塊框圖如下圖所示。
此處隨附了塊設(shè)計 Tcl 腳本 (run.tcl)。(請點擊閱讀原文進行下載)
Vivado 步驟
創(chuàng)建 gt_quad_base IP 并打開 IP 設(shè)計示例
創(chuàng)建 gt_quad_base IP。在此例中,我們使用單通道配置。
針對“Number of Lanes”(通道數(shù))和“Transceiver Configs Protocol 0”(收發(fā)器配置協(xié)議 0),將滑塊設(shè)為“Manual”(手動)。這樣即可使用自定義配置。
將“Number of Lanes”設(shè)為 1。
單擊“Transceiver Configs Protocol 0”,以自定義收發(fā)器。
將 CONFIG0 設(shè)為 10.3125Gbps。
將 CONFIG1 設(shè)為 25.78125Gbps。
在 IP integrator 畫布中,右鍵單擊 gt_quad_base,然后選擇“Open IP Example Design”(打開 IP 設(shè)計示例)。這樣將在新的 Vivado 工程內(nèi)創(chuàng)建設(shè)計示例。
啟動仿真
設(shè)計示例會為時鐘和復(fù)位建立所有必要的連接,并生成頂層仿真測試激勵文件 gt_quad_base_exdes_tb.sv。
在設(shè)計示例工程中,單擊“Run Simulation”(運行仿真)啟動仿真。
下圖顯示了仿真波形,其中包含要監(jiān)控的關(guān)鍵信號。
復(fù)位初始化
默認 bridge_ip 使用 Versal GTY 中包含的 Master Reset Controller 來復(fù)位排序。
請參閱(AM002)中的“收發(fā)器主復(fù)位”部分以獲取詳細信息。
當 T=0.8ns 時,gt_reset_ip0 將切換為啟動復(fù)位初始化。
復(fù)位控制器狀態(tài)機首先會等待 gtpowergood,然后再開始執(zhí)行任何復(fù)位操作。當 T=34us 時,gtpowergood 斷言有效。
txmstreset 和 rxmstreset 斷言無效,這樣即可啟動主復(fù)位序列。
*resetdone 信號將斷言無效,以響應(yīng) tx/rxmstreset 斷言無效。
當 T=48us 時,lcplllock 斷言有效。
當 T=50us 時,txpmaresetdone 斷言有效,隨后 txuserrdy 驅(qū)動至高位、txresetdone 斷言有效,不久后 txmstresetdone 即斷言有效。bridge_ip tx_resetdone_out_ip0 同樣會斷言有效。這樣即可完成 TX 復(fù)位序列。
當 T=52us 時,rxpmaresetdone 斷言有效,隨后 rxuserrdy、rxresetdone、rxmstresetdone 以及(最后)rx_resetdone_out_ip0 斷言有效。這樣即可完成 RX 復(fù)位序列。
GTY 現(xiàn)已正常啟動并運行,并采用默認 (CONFIG0) 速率 (rate_sel_ip0 = 0)。
速率變更
速率變更序列是通過將 rate_sel 端口更改為目標速率來發(fā)起的。所需的復(fù)位、時鐘切換和屬性更新都將自動執(zhí)行。用戶應(yīng)等待 txresetdone 和 rxresetdone,這兩者可作為當前速率變更進程和必要的復(fù)位序列均已完成的標志。
當 T=63us 時,rate_sel_ip0 從 0 變更為 1。這樣將發(fā)起速率變更序列,目標為自定義 GUI 的 CONFIG1 中配置的新線速率(在此例中為 25Gbps)。
當 T=85us 時,txresetdone 斷言有效。當 88us 時,rxresetdone 斷言有效。這樣即可完成速率變更序列。
GTY 現(xiàn)已正常啟動并運行,并采用 CONFIG1 速率 (rate_sel_ip0 = 1)。
審核編輯:湯梓紅
-
收發(fā)器
+關(guān)注
關(guān)注
10文章
3424瀏覽量
105959 -
控制器
+關(guān)注
關(guān)注
112文章
16332瀏覽量
177803 -
仿真
+關(guān)注
關(guān)注
50文章
4070瀏覽量
133552 -
Versal
+關(guān)注
關(guān)注
1文章
158瀏覽量
7656
原文標題:開發(fā)者分享|Versal GTY 仿真: 初始化, 復(fù)位和速率變更
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論