PAM4(4-Level Pulse Amplitude Modulation) 的全称是四电平脉冲幅度调制,通过种不同的电平进行信号传输,每个电平幅度分别对应 00、01、10 和11。每个周期可以传输两个 Bit 的信息,相比传统的 NRZ 模式,信号传输速率相当于原来的两倍,当前主流的 400G 光模块广泛采用 PAM4 技术。AMD Versal自适应 SoC 的 GTM 支持 PAM4 电平,本文将介绍如何使用 GTM 仿真和观察 PAM4 信号。
新建 GTM Example Design:
1. 点击 AMD VivadoDesign Tool 左侧导航栏 Create Block Design 新建 BD文件。
2. 在 BD的空白处右击,选择 Add IP,在弹出的对话框种选择 Versal ACAPs Transceivers Wizard。
3. 配置 Transceiver Wizard。
Transceiver Type 选择 GTM。
Transceiver Configs Protocol 页面可以选择多种 Preset 的模板,这里选择 GTM:(PAM4) Ethernet 53G,其余保持默认。
4. 右击 IP 选择 Open IP Example Design。
运行行为仿真
1. 在 Settings 页面的 Simulation 菜单中加入命令 -d SIM_SPEED_UP 可加速仿真结束的时间,如下图所示:
2. 单击 Run Simulation 进入到仿真界面,并且全速运行直到仿真结束。
TestBench 代码分析
1.进入到仿真界面以后,首先会看到 GT_Serial_TX_rxp/n 和 GT_Serial_RX_rxp/n 都处于高阻(High-Z)状态,这是因为外部的端口信号只支持 0 和 1 两种状态,而 PAM4 信号有 0,1,2,3 四种状态,端口上无法显示出 4 种电平状态所导致。
2. 为了解决这个问题,需要把端口等效成 Integer。以 GTM Ch0 为例,在 Testbench 里面定义了两个 Integer 类型的信号名:gtm_ch0_p/n。
3. Testbench 中通过以下方式对信号赋值:
通过这个路径可以看到,在 GTM 的 Quad 中已经对 TXP/N 定义了一个 Integer,通过 Force 的方式直接把 Integer 赋值到 gtm_ch0_p/n,再赋值给底层 GTM 的 CH0_GTMRXP/N_integer,从而模拟外部回环。
4. 因此,需要在 Watch 窗口中观察 gtm_ch0_p/n 或者底层的 CH0_GTMTXP/N_integer 和 CH0_GTMRXP/N_integer。
5. 对信号名右击,在弹出的 Waveform Style 中选择 Analog,然后在 Analog Settings 中把 Interpolation Style 设置为 Hold。这样就可以更加直观的查看 PAM4 信号的变化。
6. 当 Versal GTM 模式设置为 NRZ 时,也需要同样观察相关的 Integer 信号。
-
amd
+关注
关注
25文章
5594浏览量
136574 -
仿真
+关注
关注
52文章
4300浏览量
136068 -
信号
+关注
关注
11文章
2856浏览量
78437 -
pam4
+关注
关注
2文章
38浏览量
14711 -
Versal
+关注
关注
1文章
170浏览量
8131
原文标题:开发者分享|AMD Versal? 自适应 SoC GTM 如何用 XSIM 仿真和观察 PAM4 信号
文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
【ALINX 技术分享】AMD Versal AI Edge 自适应计算加速平台之 Versal 介绍(2)

关于NRZ与PAM4信号差异
AMD率先推出符合DisplayPort? 2.1 8K视频标准的FPGA和自适应SoC
AMD发布第二代Versal自适应SoC,AI嵌入式领域再提速
第二代AMD Versal Prime系列自适应SoC的亮点

AMD Versal自适应SoC CPM5 QDMA的Tandem PCIe启动流程介绍

AMD Versal自适应SoC器件Advanced Flow概览(上)

AMD Versal自适应SoC器件Advanced Flow概览(下)

评论