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
热门推荐
贾家被抄家的真实原因,就是贾元春省亲,皇帝的用意可惜他们没懂
如何通过具体案例详解八字推算命卦的计算方法
专利被侵权怎么办?维权指南与索赔途径详解
@驾驶员,这些高速公路上的标志标牌你都认识吗?
幽门螺杆菌被列为致癌物!过年回家怎么防,有娃的提前看
自制面包的终极指南
八维分析无期迷途瑟琳MBTI
右肾疼痛的原因及应对方法
价值观在现代社会的演变与影响
如何培养社交能力:心理学视角下的指南
国庆假期去哪玩?颐和园攻略来袭,轻松游遍皇家园林!
如何轻松解决 Git Pull 合并冲突
乡村年俗活动火爆 文旅消费升温
北京三里屯:历史与现代交织的繁华之地
德国基尔大学申请指南
胃癌手术后多久身体能恢复?如何治疗能帮助身体尽快恢复
资产的特点及其对财务管理的影响
中国十大特色饺子:从南到北,品味各地饺子的独特魅力
电子公交站牌如何获知公交车的实时位置及到站时间?
红细胞偏低?常吃这几种可以快速补血
近现代,宋代建盏的拍卖行情表现的怎么样?
重磅!北京又公开2条新增地铁走向,其中一条可与通州S6换乘
异体字:汉字书写多样性的历史演变与文化意义探讨
房贷利率变动,购房者必知的应对策略!
剖析婆媳关系难题:分离焦虑、边界意识与期待管理
绿色科技:环保胶的革新与应用
生态学研究里提到的生态足迹是什么?
痛心!一家5口一氧化碳中毒遇难,朋友回忆:他们曾关窗使用燃气热水器
西红柿开花期肥水管理指南
商贸零售行业业绩前瞻:16家预喜 美凯龙永辉超市亏损规模居前