三八译码器实现详解
创作时间:
作者:
@小白创作中心
三八译码器实现详解
引用
CSDN
1.
https://m.blog.csdn.net/qq_57716246/article/details/140401207
三八译码器是一种常见的数字电路组件,用于将三个输入信号转换为八个输出信号。本文将详细介绍三八译码器的实现方法,包括设计输入、编写逻辑和功能仿真三个步骤。
1、设计输入
三八译码器有三个输入引脚(a,b,c)八个输出引脚,输入三位二进制信号产生八种状态。
真值表如下:
三八译码器真值表a b c out[7:0]
0 0 0 0000_0001
0 0 1 0000_0010
0 1 0 0000_0100
0 1 1 0000_1000
1 0 0 0001_0000
1 0 1 0010_0000
1 1 0 0100_0000
1 1 1 1000_0000
2、编写逻辑
module Decoder_38_Review(
a,
b,
c,
out
);
input a;
input b;
input c;
output reg [7:0]out;
//三八译码器
always@(*) begin
case({a,b,c})
3'b000: out = 8'b0000_0001;
3'b001: out = 8'b0000_0010;
3'b010: out = 8'b0000_0100;
3'b011: out = 8'b0000_1000;
3'b100: out = 8'b0001_0000;
3'b101: out = 8'b0010_0000;
3'b110: out = 8'b0100_0000;
3'b111: out = 8'b1000_0000;
endcase
end
endmodule
{a,b,c}表示位拼接,将三个一位信号拼接为一个三位信号。位拼接用于将多个指定位宽的操作数拼接为一个新的操作数。
always块描述的信号赋值时,被赋值变量应为reg型。
3‘b中b表示二进制;o表示八进制;d表示十进制;h表示十六进制。例:3’b110也可表示为3‘o6、3‘d6、3’h6
3、功能仿真
`timescale 1ns / 1ns
module Decoder_38_tb;
reg a_s;
reg b_s;
reg c_s;
wire [7:0]out;
//例化
Decoder_38_Review Decoder_38_Review_tb(
.a(a_s),
.b(b_s),
.c(c_s),
.out(out)
);
//激励
initial begin
a_s = 0;b_s = 0;c_s = 0;
#200;
a_s = 0;b_s = 0;c_s = 1;
#200;
a_s = 0;b_s = 1;c_s = 0;
#200;
a_s = 0;b_s = 1;c_s = 1;
#200;
a_s = 1;b_s = 0;c_s = 0;
#200;
a_s = 1;b_s = 0;c_s = 1;
#200;
a_s = 1;b_s = 1;c_s = 0;
#200;
a_s = 1;b_s = 1;c_s = 1;
#200;
$stop;
end
endmodule
仿真结果如下:
热门推荐
怎么给抑郁症的人心理疏导
个性化硬盘显示图标的教程
走路1万步和慢跑5公里,哪个效果更佳?
九台区陈家老院:传承历史记忆,留住家乡情怀
抗战时期陈家的法律地位及历史影响概述
汉简集字《千字文》,罕见好帖!(附图解汉简笔法)
网球拍重量选择指南:轻拍还是重拍更适合你?
美国投资收益税全面分析:你必须了解的税务常识
口淡口酸口苦口臭 是口味改变还是健康亮红灯?
劳务合同怎么签才正规有效
探索自然奇观,畅游重庆武隆喀斯特旅游区:一场视觉与心灵的双重盛宴
发生安全事故的责任主体怎么确认
藤蔓植物的特点与应用(探究生态环境中的藤蔓植物)
揭秘飞机航线:为什么飞机飞行时总是绕个大圈子?
道教最重要的十三部经书,你读过几本?
一本是本科的意思吗
山药和山楂片能一起吃吗? 银菊清解片能和感冒灵颗粒一起吃吗
握手是怎么来的?在中国古代,握手竟是不吉利动作
脑出血针灸的最佳穴位
北大教授给老妈解释什么是GDP,深刻有趣!
Halcon 中各种拟合算子原理及应用场景
正确看待CT检查中的辐射问题
RJ45连接器的接口规范与标准
高端餐饮生死局:降本、转型、破圈战
法定孳息属于婚前财产吗?婚前财产认定全解析
孳息的归属原则是什么
梧桐山春季赏花攻略:三条特色路线,七大必看花卉,实用装备指南
豆瓣评分排名前20的电影:真正的经典永不过时
揭秘钢琴等级划分:从入门到精通,你该选择哪个级别?
天秤和白羊配吗?他们的性格如何互补?