How do I back annotate the SDF file for timing simulation using VCS?
There are two methods to back annotate delay values from an SDF file:
- Compiling the SDF file at compile-time
- Reading the ASCII SDF file at run-time
To compile the SDF file at compile time, use the +compsdf option as follows:
vcsi -R -f options.f +compsdf
VCS will default to an SDF file that has the same name as the top-level simulation netlist. If you want to use a different SDF file, specify the SDF file name after the +compsdf option; this requires no table files on the command line, VCS automatically determines the required capabilities.
To read the ASCII SDF file at run-time, you must provide a table file with the -P option as follows:
Create a PLI table file (sdf.tab) that maps the $sdf_annotate system task to the C function sdf_annotate_call. Use the -P switch to specify this file as follows:
vcs -P sdf.tab -y $XILINX/verilog/src/simprims +libext+.v time_sim.v
The following is an example of an entry in the sdf.tab file for your design:
$sdf_annotate call=sdf_ annotate_ call acc+=tchk, mp, mipb:%CELL+