AMI models: What, why and how?

Sanjeev Gupta, José Luis Pino, Amolak Badesha, EEsof EDA Agilent Technology -October 18, 2010

A direct link to Agilent’ Flex DCA software enables simulated data to be rerouted in real time to a sampling oscilloscope front-end where waveform, eye and jitter parameters can be computed. Using the same measurement algorithms in both simulation and measurement environments eliminates uncertainty in the design process and provides better correlation.

Figure 5: A direct link in SystemVue to Flex DCA software enables verification of parameters like the eye diagram, as shown here.

The rise/fall time from the Flex DCA software shows that the signal meets the PCIe rise/fall time specifications. The model shown in Figure 5 has a voltage swing of 1 V. Changing the logic level to the required TX voltage swing can be accomplished in many ways. For example, the designer can adjust the signal amplitude by adding a gain block in the signal path and using it with an IBIS file that defines the device’s termination impedance. Another way of controlling the signal amplitude is by providing a full description of pull up/pull down device characteristics, along with the voltage range parameter, in an IBIS file with a 0 to 1 V voltage swing.

AMI model generation
The remaining task is to convert the TX representation into a C++ model, convert it into a .dll file and then generate the supporting .ami and .dll files. SystemVue's AMI code generation capability makes this task quite trivial. To access this capability, the designer needs to add C++ code generation to the SystemVue workspace and edit the C++ code generation dialog box accordingly, using the C++ code generation options as shown in Figure 6.

Figure 6: To access the C++ code generation dialog box the designer needs to first add it to the SystemVue workspace.

In this case, that means that the designer must edit the C++ code generation dialog box to select the TX subnetwork. Once selected, the IBIS AMI shell type generates C++ code that is compliant to the IBIS AMI 5.0 standard. The LTI TX format is selected and the reserved parameters (e.g., number of samples/unit interval) are defined as shown in Figure 7.

The C++ code generation dialog generates C++ code for the TX block and exports it to Microsoft Visual C++. During this code synthesis process, various wrappers such as .ami and IBIS .txt files are automatically created (Figure 8).

Figure 7: The C++ code generation dialog box.

Next: -

Loading comments...

Write a Comment

To comment please Log In

Currently no items