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
热门推荐
今天,“春”到了|二十四节气·立春·清远
如何担当团队的角色
大理天龙八部影视城:重现900年前大理国的繁华
心灵抚慰:长期缺爱者的行为轨迹与心灵疗愈
ch是什么函数?
五分钟技术趣谈 | RISC—V不止替代,更搭AI
湛江构建四级中医药服务体系,中医诊疗更添“科技智慧”
教学模式VS教学策略VS教学方法:一文读懂三者之间的纠葛与联系
胃炎患者放屁多,是病情好转吗?
2025年LOGO十大设计趋势预测&解析
如何查看公司信用等级?四种实用查询方式全解析
优化薪酬绩效体系,激发员工潜能与企业发展动力
农历闰月是怎么回事
粤剧艺术的美学特征
揭秘围棋之路:通往职业棋手的八年磨砺与智慧博弈
详解‘大模型+强化学习’的四条主流技术路线
青光眼:症状、诊断与治疗全解析
三招构建科学薪酬体系:岗位评估、职级设计与验证模型实战指南
宝马后备箱开启全攻略:应急与日常使用指南
视野中心暗点常见于哪些疾病?
阿尔茨海默症发病机制及病理特征
葫芦的玉坠的寓意,探究葫芦玉坠的寓意与文化内涵
中医诊疗更添“科技智慧”
离职证明和简历不一致有什么影响
白电油的职业危害与预防
太极拳:不只是武术,更是身心平衡之道
汕头文脉 | 在小公园的起点寻找潮人乡愁
清洁工掉进压缩箱下落不明,谁担责?
玉手镯佩戴指南:延长使用寿命,避免磨损技巧
清朝军队数量简述