I have a clocking block defined in the interface file for the inputs and outputs of DUT.
For every request that the DUT sends to block A, block A responds with an ack. And when both request && ack are high, the request is considered valid. And for every request, I need to send one valid+one data to DUT.
Since the i/ps and o/ps are defined in a clocking block, I need to use <= when I want to drive valid/data. This causes my valid and data to always last one clock cycle longer than necessary.
Is there a way I can avoid this? Does this have anything to do with how I define the default timing inside clocking block. Example for a 2ns clock, I define : default input #10ps output #10ps;
Thanks.