I have set up the IBIS-AMI simulation following the example in the User Guide included in the Zip package.
However, the results do not match. What can cause this behavior?
Please follow the checklist below to confirm if you have built the testbench correctly:
1) Download the latest IBIS-AMI model from the lounge
UltraScale+ GTH/GTY/GTR: https://www.xilinx.com/member/ultrascale_plus_ibis_ami.html
UltraScale GTH/GTY: https://www.xilinx.com/member/ultrascale_ibis_ami.html
7 Series GTX/GTP/GTH: https://www.xilinx.com/member/ibis_ami.html
You will need to request access to the lounge which is usually granted within a day.
2) Check S-parameter port ordering
Refer to the "s4p_port_map.txt" file for port ordering, or check the example testbench diagram in the User Guide.
Below is the UltraScale+ GTH testbench as an example.
3) The testbench must include TX/RX die termination models and package models
The testbench must include die termination models (which model the on-die characteristics) and the package models.
When simulating for a custom channel, just replace the example channel s-parameter model with the actual channel model.
The end-to-end channel should include 5 components:
TX die termination -> TX package -> channel -> RX package -> RX die termination.
4) Do not enforce passivity on die termination models
5) Use recommended TX AMI settings
Use the recommended TX AMI settings in the User Guide, for example TXDIFFCTRL, TXPRECURSOR, TXPOSTCURSOR.
6) Use the recommended RX AMI settings
Use the recommended RX AMI settings in the User Guide, for example RXLPMEN, DFE_RSV_0.
If simulating with a custom channel, use the recommended DFE_RSV_0 value according to data rate and insertion loss. See the User Guide for details.
7) Set samples per bit (SPB) according to the User Guide
The User Guide provides the minimum samples per bit requirement for each model.
For lower line rates, the simulator might need higher samples per bit. Refer to the User Guide for details.
In ADS, go to ChannelSim component settings and select Convolution -> Advanced..., then change Number of time points per UI to the recommended SPB value.
8) Set the block size according to User Guide
The User Guide provides recommended block size settings.
In ADS, go to ChannelSim component settings and select Convolution -> Advanced..., then change Size of processing block in bits in bit-by-bit simulation to the recommended block size value, as in the above screen capture.