正在加载图片...
144 erilog hdl硬件描述语言 Chia°dow 下载 //向RAM写入数据 Mem FF [Address]= Data In endmodule 同步时序逻辑也可以用电平敏感或边沿触发控制方式建模。电平敏感类型锁存器建模实 例如下。 module Level Sens FF(Strobe, D, o, obar input strobe, Di reg o, obar always begin wait (strobe ==1)i endmodule 当 strobe为1时,D上的任何事件都被传输到Q;当 Strobe变成0时,Q和Ωbar中的值保持不 变,并且输入D上的任何变化都不再影响Q和Qbur上的值 理解过程性赋值语句的语义对决定同步时序逻辑的行为功能非常重要。考虑模块 Bodyl和 Body2之间的不同之处 module Body l dimodule reg A initial A= 0 always e (Clock i£(~C1。ck) 模块Bodl蕴含的电路结构如图12-8所示,而模块Body2蕴图12.8不蕴含触发器 含的电路结构如图12-9所示。 如果Bodl按如上所述进行模拟,模拟将由于零时延异步反 馈而陷入死循环(模拟时间停止不前)。在模块Body2中,A的 触发器 值只有在Cock信号下降沿时锁存,在其他情形下( Clock不处在 上升沿时),A上的任何变化(触发器的输入)都不会影响触发 器的输出 图12-9蕴含触发器e l s e / /向R A M写入数据。 M e m _ F F [A d d r e s s] = D a t a _ I n; endmodule 同步时序逻辑也可以用电平敏感或边沿触发控制方式建模。电平敏感类型锁存器建模实 例如下。 m o d u l e Level_Sens_FF (Strobe, D, Q, Qbar) ; i n p u t Strobe, D; o u t p u t Q, Qbar; r e g Q, Qbar; a l w a y s b e g i n wait (Strobe = = 1); Q = D; Q b a r = ~ D; e n d endmodule 当s t ro b e为1时,D上的任何事件都被传输到 Q;当S t ro b e变成0时,Q和Q b a r中的值保持不 变,并且输入D上的任何变化都不再影响Q和Q b a r上的值。 理解过程性赋值语句的语义对决定同步时序逻辑的行为功能非常重要。考虑模块 B o d y 1和 B o d y 2之间的不同之处。 m o d u l e B o d y 1; r e g A; i n i t i a l A = 0; a l w a y s A = ~ A; e n d m o d u l e m o d u l e B o d y 2; w i r e C l o c k; r e g A; i n i t i a l A = 0; always @ (Clock ) i f (~ Clock) A = ~ A; e n d m o d u l e 模块B o d y 1蕴含的电路结构如图 1 2 - 8所示,而模块B o d y 2蕴 含的电路结构如图1 2 - 9所示。 如果B o d y 1按如上所述进行模拟,模拟将由于零时延异步反 馈而陷入死循环(模拟时间停止不前)。在模块Body 2中,A的 值只有在C l o c k信号下降沿时锁存,在其他情形下( C l o c k不处在 上升沿时),A上的任何变化(触发器的输入)都不会影响触发 器的输出。 144 Verilog HDL 硬件描述语言 下载 图12-8 不蕴含触发器 图12-9 蕴含触发器 触发器
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有