L
leon
Guest
I have a verilog library that has 0 time associated with $setup and
$hold as they are just place holders. The SDF file has delays that
result in negative hold times (the .lib of these libraries have
negative times for hold..). So a signal could change before the edge
of the flop as long as it changes after the violation window and the
new value should not get latched in. However in my simulation with
ncverilog I see the new value getting through.
It is my understanding that SDF will override all delays in the veilog
library so I assume there must be some switch that will tell the
simulator that this not an actual violation of setup or hold and
should behave as desired. I have tried several switches with NC but I
still dont have the right behavior - anyone out there know how to make
this work in simulation.
$hold as they are just place holders. The SDF file has delays that
result in negative hold times (the .lib of these libraries have
negative times for hold..). So a signal could change before the edge
of the flop as long as it changes after the violation window and the
new value should not get latched in. However in my simulation with
ncverilog I see the new value getting through.
It is my understanding that SDF will override all delays in the veilog
library so I assume there must be some switch that will tell the
simulator that this not an actual violation of setup or hold and
should behave as desired. I have tried several switches with NC but I
still dont have the right behavior - anyone out there know how to make
this work in simulation.