3-8译码器的VHDL设计
更新时间:2024-06-13 16:12:01 阅读量: 综合文库 文档下载
3-8译码器的VHDL设计 1.实体框图
2.程序设计
正确的程序 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY DECODER38A IS
PORT(A2,A1,A0,S1,S2,S3:IN STD_LOGIC; Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY DECODER38A;
ARCHITECTURE ONE OF DECODER38A IS SIGNAL S: STD_LOGIC_VECTOR(5 DOWNTO 0); BEGIN
S<=A2&A1&A0&S1&S2&S3; WITH S SELECT
Y<=\ \ \ \ \ \ \
\ \END ARCHITECTURE ONE; 3.仿真波形图
4.仿真波形分析
当S1 S2 S3=100时,只有当A2 A1 A0=111时,Y[7]才输出低电平,否则为高电平,当A2 A1 A0=110时,Y[6]才输出低电平,否则为高电平,当A2 A1 A0=101时,Y[5]才输出低电平,否则为高电平,Y[4]到Y[0]同理。可见该程序设计的是3-8译码器
三、共阳极数码管七段显示译码器的VHDL设计 1.实体框图
2.程序设计
正确的程序 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY DISPLAY_DECODER IS PORT(A3,A2,A1,A0:IN STD_LOGIC;
Y:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END ENTITY DISPLAY_DECODER;
ARCHITECTURE ONE OF DISPLAY_DECODER IS SIGNAL S: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN
S<=A3&A2&A1&A0; WITH S SELECT
Y<=\ \ \ \ \ \ \ \ \ \ \END ARCHITECTURE ONE; 3.仿真波形图
4.仿真波形分析
由图可知,当A3 A2 A1 A0=0000时,输出Y[6]到Y[0]对应为1111110,即只有g不亮,数码管显示为0,
A3 A2 A1 A0=0001时,输出对应为0110000,数码管显示为1, A3 A2 A1 A0=0010时,输出对应为1101101,数码管显示为2, 其他同理,当A3 A2 A1 A0>1001,即大于9,数码管无显示。 由此可知,程序设计的是七段显示译码管。
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY COMPARE4 IS ——四位比较器
PORT(IA_MORE_THAN_B:IN STD_LOGIC; ——高位比较的标志位的输入
IB_MORE_THAN_A:IN STD_LOGIC;
IA_EQUAL_B:IN STD_LOGIC;
A:IN STD_LOGIC_VECTOR(3 DOWNTO 0);——两个输入
B:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
OA_MORE_THAN_B:OUT STD_LOGIC;
OB_MORE_THAN_A:OUT STD_LOGIC;
OA_EQUAL_B:OUT STD_LOGIC);
END COMPARE4;
ARCHITECTURE BEHAV OF COMPARE4 IS
BEGIN
PROCESS(IB_MORE_THAN_A, IA_EQUAL_B,IA_EQUAL_B)
BEGIN
IF(IA_EQUAL_B='1')THEN
——从最高位比较,如果高位大则停止比较输出结果,否则进行下一位比较
IF(A(3)>B(3))THEN
OA_MORE_THAN_B<='1';OB_MORE_THAN_A<='0';OA_EQUAL_B<='0';
ELSIF(A(3)
OA_MORE_THAN_B<='0';OB_MORE_THAN_A<='1';OA_EQUAL_B<='0';
ELSIF(A(2)>B(2))THEN
OA_MORE_THAN_B<='1';OB_MORE_THAN_A<='0';OA_EQUAL_B<='0';
ELSIF(A(2)
OA_MORE_THAN_B<='0';OB_MORE_THAN_A<='1';OA_EQUAL_B<='0';
ELSIF(A(1)>B(1))THEN
OA_MORE_THAN_B<='1';OB_MORE_THAN_A<='0';OA_EQUAL_B<='0';
ELSIF(A(1)
OA_MORE_THAN_B<='0';OB_MORE_THAN_A<='1';OA_EQUAL_B<='0';
ELSIF(A(0)>B(0))THEN
OA_MORE_THAN_B<='1';OB_MORE_THAN_A<='0';OA_EQUAL_B<='0';
ELSIF(A(0)
OA_MORE_THAN_B<='0';OB_MORE_THAN_A<='1';OA_EQUAL_B<='0';
ELSE
——如果输入中两个数相等的标志位为0,则表明高位不相等,停止比较,输出结果。
OA_MORE_THAN_B<='0';OB_MORE_THAN_A<='0';OA_EQUAL_B<='1';
END IF;
ELSE
OA_MORE_THAN_B<=IA_MORE_THAN_B;OB_MORE_THAN_A<=IB_MORE_THAN_A;
OA_EQUAL_B<=IA_EQUAL_B;
END IF;
END PROCESS;
END BEHAV;
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY comparator IS PORT ( CLK : IN STD_LOGIC;
SIN : IN STD_LOGIC_VECTOR (3 DOWNTO 0); SJ : IN STD_LOGIC_VECTOR (3 DOWNTO 0); Q : OUT STD_LOGIC); END comparator;
ARCHITECTURE behave OF comparator IS SIGNAL SIN1 : INTEGER RANGE 0 TO 15; SIGNAL SJ1 : INTEGER RANGE 0 TO 15; BEGIN
SIN1<= CONV_INTEGER(SIN); SJ1<= CONV_INTEGER(SJ); PROCESS(CLK ) BEGIN
IF (CLK'EVENT AND CLK = '1') THEN IF SIN1
正在阅读:
3-8译码器的VHDL设计06-13
浙江省居住建筑围护结构节能工程验收导则10-11
房地产销售说辞大汇总12-01
畅想软件2010版(新版本)使用说明书05-10
《教育学原理》试卷(第六套)04-12
实验四 数字解调与眼图10-31
网上支付与结算_期末复习大纲03-28
高三作文:以德律己,以己服人02-22
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 译码器
- 设计
- VHDL
- 调解心得体会
- 山东省东营市胜利第五中学(五四制)2013-2014学年七年级生物下
- Kettle相关内容及实验(周博翔)
- 立体仓库的投资
- LTE RRC协议介绍(二)-系统信息
- 大学语文阅读分析
- 乡镇重点工作开展情况汇报材料
- 关于企业并购财务风险问题的探讨
- 基于plc的全自动洗衣机毕业设计
- 教师住宅小区物业管理投标方案
- 龙吟凤禄--蛇年吉祥物
- 关于2013-2014学年度重庆大学“五四”表彰第一批(学院部分)获奖
- 淘宝的PEST分析
- 小学奥数30个知识模块汇总
- 黑龙江省大庆市让胡路区2017-2018学年高一化学上学期期中试题(
- 历年高考03年高03年高考物理仿真试题(二)答案
- 2018届福建省福州市高三3月质量检测文综政治试题(解析版)
- 2013年高考全国课标卷1理科综合(河南 河北 山西 陕西语文及综合
- 江苏省连云港市2013届高三上学期期末考试地理试题 2
- 发动机理论知识试题