北邮数电实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学
实验报告实验名称:数电实验
学院:信息与通信工程学院班级:
姓名:
学号:
日期:2015年5月
目录
1、实验一 (4)
(1)实验名称和任务要求 (4)
(2)原理图 (4)
(3)仿真波形及分析 (5)
2、实验二 (5)
(1)实验名称和任务要求 (5)
(2)VHDL代码 (6)
(3)模块连接图 (8)
(4)仿真波形及分析 (8)
3、实验三 (9)
(1)实验名称和任务要求 (9)
(2)VHDL代码 (10)
(3)连接VHDL代码 (11)
(4)图形模块 (12)
(5)仿真波形及分析 (12)
(6)端口说明 (13)
4、实验四 (13)
(1)实验名称和任务要求 (13)
(2)VHDL代码 (13)
(3)图形模块 (16)
(4)仿真波形及分析 (18)
(5)端口说明 (21)
5、故障及问题分析 (21)
6、总结 (21)
一:实验一
1、实验名称和任务要求
实验名称:Quartus2原理图输入法设计
实验目的:
1、熟悉用Quartus2原理图输入法进行电路设计和仿真
2、掌握Quartus2图形模块单元的生成与调用
3 、熟悉实验板的使用
实验内容:
1 、用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图
形模块单元。
2 、用实验内容1中生成的半加器模块和逻辑门设计实现一个全加器,仿真
验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二
极管显示输出信号。
3 、用3线-8线译码器(74LS138)和逻辑门设计实现函数
F=/C/B/A+/CB/A+C/B/A+CBA,仿真验证其功能,并下载到实验板测试。要求用拨码开关设定输入信号,发光二极管显示输出信号。
2、原理图
(1)半加器
(2)全加器
(3)译码器
3、仿真波形及分析
仿真波形:
(1)全加器
(2)译码器
分析:
(1)全加器:当全加器2个输入端都为0时,即a=b=0时,若低位进位输入cnp=0,则Si=0,进位输出端cn=0。若低位进位输入cnp=1,则Si=1,进位输出端cn=0.
当全加器2个输入端有一个为1时,即a =0,b=1或a=1,b=0时,若低位进位输入cnp=0,则Si=1,进位输出端cn=0。若低位进位输入cnp=1,则S=0,进位输出端
cn=1.
当全加器2个输入端都为1时,即a=b=1时,若低位进位输入cnp=0,则Si=0,进位输出端cn=1。若低位进位输入cnp=1,则Si=1,进位输出端cn=1.
(2)译码器:当输入zhi=0时,译码器不工作,当输入为1时,译码器正常工作;当输入信号a[2]a[1]a[0]=000,010,100,111时输出f=1;其他情况f=0。
二:实验二
1、实验名称和任务要求
实验名称: VHDL组合逻辑电路设计
实验目的:
1、熟悉用VHDL语言设计组合逻辑电路的方法
2、熟悉用Quartus2文本输入法进行电路设计
3、熟悉不同的编码及其之间的转换
实验内容:
1 、用VHDL语言设计实现一个共阴极7段数码管译码器,仿真验证其功能,
并下载到实验板测试。要求用拨码开关设定输入信号,7段数码管显示输出信
号。
2 、用VHDL语言设计实现一个8421码转换为余3码的代码转换器,仿真验证
其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显
示输出信号。
3 、用VHDL语言设计实现一个4位二进制奇校检验器,输入奇数个‘1’
时,输出为‘1’,否则输出为‘0’,仿真验证其功能,并下载到实验板测
试,要求用拨码开关设定输入信号,发光二极管显示输出信号。
2、VHDL代码
(1)数码管
library ieee;
use ieee.std_logic_1164.all;
entity seg is
port(
a:in std_logic_vector (3 downto 0);
b:out std_logic_vector (6 downto 0)
);
end seg;
architecture sega of seg is
begin
process(a)
begin
case a is
when "0000"=>b<="1111110";--0
when "0001"=>b<="0110000";--1
when "0010"=>b<="1101101";--2
when "0011"=>b<="1111001";--3
when "0100"=>b<="0110011";--4
when "0101"=>b<="1011011";--5
when "0110"=>b<="1011111";--6
when "0111"=>b<="1110000";--7
when "1000"=>b<="1111111";--8
when "1001"=>b<="1111011";--9
when others =>b<="0000000";
end case;
end process;
end;
(2)8421码转换为余3码
library ieee;