阻塞赋值与非阻塞赋值
时间: 2023-11-25 10:08:08 浏览: 90
阻塞赋值与非阻塞赋值是在Verilog中用于赋值操作的两种不同方式。阻塞赋值使用"="符号,而非阻塞赋值使用"<="符号。
阻塞赋值是一种按顺序执行的赋值方式,它会等待右侧表达式的值计算完毕后再将其赋给左侧变量。这意味着阻塞赋值会在一个时间步骤内完成赋值操作,然后再执行下一个赋值语句。因此,在一个时钟周期内,阻塞赋值语句按照代码的顺序执行。
非阻塞赋值是一种并行执行的赋值方式,它在时序逻辑电路中广泛应用。非阻塞赋值的执行过程是并行的,所有的非阻塞赋值语句在同一个时间步骤内同时执行,没有先后顺序之分。非阻塞赋值语句的执行可以分为两个步骤:首先,在赋值开始时刻计算表达式右侧的值,然后在赋值结束时刻将右侧的值更新给左侧的变量。需要注意的是,非阻塞赋值只能对reg型变量进行操作,不能对wire型变量进行赋值。
总结起来,阻塞赋值和非阻塞赋值在Verilog中有不同的应用场景和执行方式。阻塞赋值适用于组合逻辑,按照代码的顺序执行;而非阻塞赋值适用于时序逻辑,具有并行执行的特性。123
引用[.reference_title]
- 1 2 3 阻塞赋值与非阻塞赋值[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2
allinsert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
相关推荐


















