Veriog中二选一MUX推荐写法:
复制代码
1
2
3
4always @(a, b, sel) if (sel == 1'b1) z = a; else z = b;
MUX为组合逻辑,用always来描述的时候,敏感变量列表中要包含在块中出现的所有变量,如上面代码中的 “ a,b,sel ”,如果不包含 sel ,则代表了一个抽象意义上的锁存器,它锁存的是选择信号,而不是输入值。
本文引用自:https://blog.csdn.net/llxxyy507/article/details/82811992
Verilog中D锁存器的推荐写法:
复制代码
1
2
3always @ (D, sel) if (sel == 1'b1) Q = D;
上面的代码中,if 和 else 没有配对,系统综合的时候会默认在 sel == 1'b0 的情况下,输出是不变的 ,即 Q = Qn ,故上面的代码会被综合成D锁存器,sel 作为 D 锁存器的使能端。
最后
以上就是阳光火最近收集整理的关于Verilog 多路选择器(MUX),锁存器(Latch)推荐写法的全部内容,更多相关Verilog内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复