Verilog实现四选一数据选择器
创作时间:
作者:
@小白创作中心
Verilog实现四选一数据选择器
引用
CSDN
1.
https://m.blog.csdn.net/weixin_61081689/article/details/143780561
本文介绍了如何使用Verilog实现一个四选一数据选择器,详细描述了三种不同的实现方法:使用case语句、if-else语句和三目运算符。此外,文章还提供了仿真程序和具体的工程获取方式,内容较为完整且具有一定的技术深度。
1. 代码实现
1.1 使用case
always @(*) begin
case (sel)
2'b00: out = data[0];
2'b01: out = data[1];
2'b10: out = data[2];
2'b11: out = data[3];
default: ;
endcase
end
1.2 使用if...else
always @(*) begin
if (sel == 2'b00) begin
out = data[0];
end else if (sel == 2'b01) begin
out = data[1];
end else if (sel == 2'b11) begin
out = data[2];
end else begin
out = data[3];
end
end
1.3 使用三目运算
assign out = (sel == 2'b00) ? data[0] :
((sel == 2'b01) ? data[1] :
((sel == 2'b10) ? data[2] : data[3]));
2. 仿真程序
initial begin
// 设置初始值
data = 4'b0xz1; // 选择一个简单的4位输入数据
sel = 2'b00; // 选择sel初始为00;输出为1
// 等待10个时间单位
#10;
// 改变sel并检查对应输出
sel = 2'b01; // 测试sel = 01;输出为高阻态z
#10;
sel = 2'b10; // 测试sel = 10;输出为不定态x
#10;
sel = 2'b11; // 测试sel = 11;输出为0
#10;
// 结束仿真
$finish;
end
仿真结果图:
3. 工程获取
具体仿真步骤详见Vscode搭建verilog开发环境-CSDN博客的第6点。
通过百度网盘分享的文件:mux4to1.rar
链接:https://pan.baidu.com/s/1QNUtt9sy4sMexjVLQJpT-A?pwd=8zhg
提取码:8zhg
热门推荐
离婚后“孩子归谁”?了解这15个法律要点→
离婚协议书撰写指南:寻找专业帮助确保协议书合法有效
如何写离婚协议书?婚内协议离婚的注意事项
秋冬养生必备:款冬花的神奇功效与应用
冬季养生新宠:款冬花+冰糖
黑便竟是因为吃了这些?
饮食调整:告别黑便困扰
动物血与黑便:一场关于营养与健康的科普之旅
胃溃疡患者必知:黑便背后的真相
个性化手机壳DIY教程:从设计到完成,一步步教你打造独特魅力手机壳!
TPU手机壳的优缺点全解析
手机壳材质选择技巧:散热与防摔性能如何平衡?
军体拳(全套)
冬季养肺神器:梨和罗汉果的黄金搭配
美国追尾事故责任归属详解
八段锦呼吸法详细讲解
武医八段锦调息功效显著!简单动作助「排毒延寿」
解密道家版八段锦
如何管理研发部门的机密
机密级项目如何管理
当“脆皮”年轻人开始打八段锦……这股“神秘的东方力量”到底什么来历?
什么药物可以治疗脑鸣
科普|夜深人静脑边总有声音回响?可能是某种疾病的征兆
如何处理新车被追尾的情况?这种情况如何维护自身权益?
驾照记满12分怎么办?满分学习考试全流程指南
2024年最新交通违法扣分规则详解及处理指南
人工智能人才抢夺战一触即发,大模型开发岗位年薪接近百万元
柏拉图、康德、笛卡尔:爱的本质大揭秘
葛根湯功效與副作用解析及產品推薦
咳嗽变异型哮喘:你可能忽视的症状