整站优化包年,做网站已经不行,定制衣柜哪种板材最好,仿站工具哪个好最好文章目录 四选一多路输出器verilog case 语句verilog 代码testbench 代码仿真波形 问题小结 四选一多路输出器
制作一个四选一的多路选择器#xff0c;要求输出定义上为线网类型
状态转换#xff1a;
d0 00
d1 01
d2 10
d3 11verilog case 语句
case(express… 文章目录 四选一多路输出器verilog case 语句verilog 代码testbench 代码仿真波形 问题小结 四选一多路输出器
制作一个四选一的多路选择器要求输出定义上为线网类型
状态转换
d0 00
d1 01
d2 10
d3 11verilog case 语句
case(expression)condition1: xxx;condition2: xxx;...conditionn: xxx;default: xxx;endcasecase 的使用注意点
要在always块里使用如果是用always块描述组合逻辑注意括号里的敏感变量列表都是电平触发并且赋值时都要用阻塞赋值“”always块里的变量必须声明成reg类型当然声明成reg类型不代表一定会综合成寄存器只是语法要求always块里要这样always块描述组合逻辑时用*可以代表所有always块内敏感信号分支条件要写全最好补齐default缺省条件不然在组合逻辑中可能会由于条件不全导致出现锁存器Latch
verilog 代码 testbench 代码 仿真波形
从波形图中可以看到 当sel 为 0out 输出的值是d0; 当sel 为 1out 输出的值是d1; 当sel 为 2out 输出的值是d2; 当sel 为 3out 输出的值是d3
问题小结
在写testbench 的时候遇到了下面问题 问题是由于在 testbench 中对out 输出进行了赋值导致的。
推荐阅读 https://www.bilibili.com/read/cv16177638/#reply109597547536