第8章 Verilog设计深入.pptx

E D A技术与应用第8章 Verilog设计深入§8.1 过程中的两类赋值语句 E D A技术与应用§8.1.1 未指定延时的阻塞式赋值语句阻塞式赋值(Bolcking Assignment):只有在当前这条语句执行完后才会去执行下一条语句。而在执行这条语句过程中,赋值是立即发生的(假设没有指定延时)。 目标变量名 = 驱动表达式;从综合和仿真的角度看,“阻塞”的含义是在当前的赋值操作完成前阻塞,或停止其他语句的执行。就仿真而言,如果右边的驱动表达式含有延时语句,则在延时没有结束前,赋值更新不会发生。 E D A技术与应用在过程被启动后,阻塞式赋值语句的执行流程分为三步:(1)阻塞本过程中其他语句的执行,计算出“驱动表达式”的值。(2)向“目标变量”进行赋值操作(假设没有指定延时)。(3)完成赋值,即实现目标变量的更新,允许对本过程中其他语句的执行。对于阻塞式赋值,这三步是并成一步完成的,即一旦执行,目标变量被立即更新。如果在某一块语句结构中存在多条对同一目标变量赋值的阻塞式赋值语句,则在赋值过程中,赋值符号“=”左侧的目标变量的值将随变量赋值语句前后顺序的执行和赋值而改变。因此,在同一过程结构中,允许采用阻塞式赋值语句对同一目标变量多次赋值,即同一目标变量允许有多个来自“驱动表达式”的驱动源。而对于assign引导的连续赋值语句,不允许对同一目标变量多次赋值,除非赋值语句执

文档评论(0)

1亿VIP精品文档

相关文档