- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
exp1组合电路的设计
组合电路的设计
XXX
实验目的
熟悉Quartus II的VHDL文本设计流程全过程,学习简单组合电路的设计、多层电路设计、仿真和硬件测试。
实验内容
实验内容1:首先利用Quartus II完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出图3-3所示的仿真波形。最后在实验系统上进行硬件测试,验证本项设计的功能。
实验内容 2:将此多路选择器看成一个元件mux21a。利用元件例化语句描述图3-18,并将此文件放在同一目录中。以下是部分参考程序:
(略)
实验内容 3:(未做)
附加内容:根据本实验以上提出的各项实验内容和实验要求,设计1位全加器。首先用Quartus II完成3.3节给出的全加器设计,包括仿真和硬件测试。实验要求分别仿真测试底层硬件或门和半加器,最后完成顶层文件全加器的设计和测试,给出设计原程序,程序分析报告、仿真波形图及其分析报告。
多路选择器电路设计
设计原理、系统结构
实验首先要求设计一个二选一的数据选择器,它的原理图和简化真值表分别如下图所示:
s y s=0 y=a s=1 y=b
图1
该数据选择器的内部逻辑关系可以使用WHEN_ELSE结构的并行语句表达。
然后考虑使用元件例化语句对由以上选择器构成的复杂电路进行描述,电路原理图和简化真值表:
图2
s1 s0 outy 0 0 a1 0 1 a1 1 0 a2 1 1 a3 端口说明:
a1、a2、a3为数据输入,s0、s1为地址选择输入,outy为数据输出。
实验程序
mux21.vhd
library ieee;
use ieee.std_logic_1164.all;
entity mux21a is
port (a,b,s : in std_logic;
y : out std_logic);
end;
architecture one of mux21a is
begin
y = a when s =0 else b;
end;
muxk.vhd
library ieee;
use ieee.std_logic_1164.all;
entity muxk is
port ( a1,a2,a3 : in std_logic;
s0,s1 : in std_logic;
outy : out std_logic);
end;
architecture mux3 of muxk is
component mux21a
port ( a,b,s : in std_logic;
y : out std_logic);
end component;
signal tmp : std_logic;
begin
u1: mux21a port map (a=a2 ,b=a3 ,s=s0 ,y=tmp);
u2: mux21a port map (a=a1 ,b=tmp ,s=s1 ,y=outy);
end mux3;
仿真结果、仿真功能/时序分析
仿真波形如下:
muxk:
mux21a:
分析:通过对电路输入输出波形的观测可以发现:
对于mux21a二路数据选择器来说,当s=‘0’时选通a通道,当s=‘1’时选通b通道。
对于整个电路来说,当s1=‘0’时,无论s0为什么状态,输出均为a1通道。当s1=‘1’时,电路输出状态还取决于s0的状态,当s0=‘0’时,输出选为a2通道;当s0=‘1’时则为a3通道。
整个电路的输出对于输入来说,有很小的延迟。
RTL结果
RTL电路图与设计电路图相符。
全加器设计
设计原理、系统结构
一位全加器可以由两个半加器和一个或门连接而成,根据半加器的电路原理图写出VHDL描述,然后根据全加器原理图写出顶层的VHDL描述。
半加器h_adder电路图
全加器f_adder电路图
实验程序
h_addr.vhd
library ieee;
use ieee.std_logic_1164.all;
entity h_adder is
port (a,b : in std_logic;
co,so : out std_logic);
end ;
architecture fh1 of h_adder is
begin
so = NOT (a XOR ( NOT b));
co = a AND b;
end;
or2a.vhd
library ieee;
use ieee.std_logic_1164.all;
entity or2a is
port (a,b : in std_logic;
文档评论(0)