Verilog HDL数字设计与综合(第二版) 第十章课后习题答案

10.6 习题

1.在下列电路中用到了哪种类型的延迟模型?给模块Y写Verilog描述。

Y

m n e #11 #4 p q f #8 out

答:用到了分布延迟。Verilog描述如下:

module Y(out,m,n,p,q); output out; input m,n,p,q;

wire e,f;

or #11 a1(e,m,n); and #8 a2(f,p,q); or #4 a3(out,e,f);

endmodule

2.在模块中用最大延迟把电路转换成集总延迟模型。用集总延迟模型重写模块Y的Verilog

描述。 答:代码如下:

module Y(out,m,n,p,q);

output out; input m,n,p,q;

wire e,f;

or a1(e,m,n); and a2(f,p,q); or #15 a3(out,e,f);

endmodule

3.计算习题1中的电路的每条输入到输出路径的延迟。使用路径延迟模型写Verilog描述。使用

specify块。

第10章 时序和延迟

145

答:代码如下:

module Y(out,m,n,p,q); output out; input m,n,p,q;

wire e,f;

specify

(m=>out) =15; (n=>out) =15; (p=>out) =12; (q=>out) =12;

endspecify

or a1(e,m,n); and a2(f,p,q); or a3(out,e,f);

endmodule

4.考虑下图所示的负边沿触发的异步复位D触发器。写模块D_FF的Verilog描述,只给出输

入/输出端口和路径延迟说明。使用并行连接描述路径延迟。

146 Verilog HDL数字设计与综合(第二版)

d clock

D_FF

q qbar

路径延迟 d->q ? 5 d->qbar ? 5 clock->q ? 6 clocd->qbar ? 7 reset->q ? 2 reset->qbar ? 3

reset

答:代码如下

module D_FF(q,qbar,d,clock,reset); output q,qbar; input d,clock,reset; reg q,qbar;

//bit to bit specify

(d=>q) =5; (clock=>q) =6; (reset=>q) =2; (d=>qbar) =5; (clock=>qbar) =7; (reset=>qbar) =3; endspecify

endmodule

5.假设所有路径延迟是5个单位时间,修改习题4中的D触发器。使用q和qbar的全连接来描

述路径延迟。 答:

module D_FF(q,qbar,d,clock,reset); output q,qbar; input d,clock,reset; reg q,qbar;

//full connection specify

(d,clock,reset *> q) = 5; (d,clock,reset *> qbar) = 5;

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4