148
Verilog HDL数字设计与综合(第二版)
if (d) (clock=>qbar) =7; if (~d)(clock=>qbar) =4;
endspecify endmodule
8.对于习题7中的D触发器,在specify块中给它加上下列时序检查内容:
d相对于clock的最小建立时间是8。 d相对于clock的最小保持时间是4。
reset信号高有效。reset脉冲的最小宽度是42。
答:在第7题的代码中添加如下代码,注意题目中要求负沿触发:
specify
$setup(d,negedge clock,8); $hold (negedge clock,d,4); $width(posedge clock, 42);
endspecify
9.描述什么是延迟反标注。为延迟反标注画流程图。
答:简单来说,在前端的设计中,我们在设计模块的过程中不能考虑电路在实际布局布线过程中带来的时序影响。而且在综合的过程当中,类似于a<= #10 1 之类的句子,语句中的延迟部分是被忽略的。所以,在综合之后,电路与之前设计的模块会有很大不同,最突出的就是加入了各种延迟,包括器件延迟、布线延迟等等。而所谓的反标注,就是把这些综合之后带来的电路延迟标注到原来的设计模块中,使原来的模块更加的符合电路的实际工作状态。加入了反标注信息的模块就具有了各种延迟信息,这时的仿真我们俗称后仿真。