1 / 25
文档名称:

可编程逻辑器件及EDA技术实验报告.doc

格式:doc   大小:1,870KB   页数:25页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

可编程逻辑器件及EDA技术实验报告.doc

上传人:xiang1982071 2021/2/16 文件大小:1.83 MB

下载得到文件列表

可编程逻辑器件及EDA技术实验报告.doc

相关文档

文档介绍

文档介绍:可编程逻辑器件及EDA技术实验报告
一、组合逻辑电路设计
数字逻辑电路按照逻辑功能的特点分为两类,一类是组合逻辑电路,简称为组合电路;另一类是时序逻辑电路,简称为时序电路。组合电路的特点是电路任意时刻输出状态只取决该时刻的输入状态,而与该时刻钱的电路状态无关。
1、逻辑门电路设计
实验原理:逻辑门电路包括基本逻辑门电路和符合逻辑门电路。VHDL语言可以直接支持的逻辑运算符共有七种逻辑运算,它们是:
NOT 逻辑非 AND 逻辑与
NAND 逻辑与非 OR 逻辑或
NOR 或非 XOR 异或
XNOR 异或非
实验内容:例3-2的参考程序:
library ieee;
use ;
use ;
use ieee. ;
entity example3_2 is
port(a,b,c,d:in std_logic;
f:out std_logic_vector(3 downto 0));
end example3_2;
architecture behavioral of example3_2 is
begin
f(0)<=(a and b)or(b and c)or(not b and not c);
f(1)<=(a and b and c)or not(not a or not b or not c);
f(2)<=(a xor b xor c)or(not(d)and(a or c));
f(3)<=not ((a and b)xor (c and d))or((a and b and d)xor(b and c and d));
end behavioral;
实验分析:用逻辑运算符是实现了相对较为复杂的逻辑运算。参考程序中使用括号来强制控制逻辑运算的优先级,对于用VHDL设计,这种写法是必修的。用这种方法可以简单、快捷地完成逻辑电路设计。
电路结构图:
实验波形仿真如下图:
2、常用编码器设计
编码是指用文字、符号和数码等来表示某种信息的过程。在数字系统中,由于采用二进制运算来处理数据,因此通常是将信息编成若干位二进制代码,而在逻辑电路中,信号都是以高、低电平的形式给出的。实现编码的数字电路称作编码器(encoder),编码器的逻辑功能就是把输入的每一个高低电平信号编成一组对应的二进制代码。
实验原理:根据8线-3线优先编码器的真值表可得,优先编码器的编码输入、编码输出均为低电平有效,且有使能输入和使能输出功能。
实验内容:-3线优先编码器,编码器输出为反码输出。
它的程序如下:
library ieee;
use ;
use ;
use ;
entity example3_4 is
port(sin:in std_logic;
i:in std_logic_vector(7 downto 0);
a:out std_logic_vector(2 downto 0);
e,s:out std_logic);
end example3_4;
architecture behavioral of example3_4 is
begin
process(sin,i)
begin
if sin='1' then
a<="111";e<='1';s<='1';
else
if i(7)='0' then
a<="000";e<='0';s<='1';
elsif i(6)<='0' then
a<="001";e<='0';s<='1';
elsif i(5)<='0' then
a<="010";e<='0';s<='1';
elsif i(4)<='0' then
a<="011";e<='0';s<='1';
elsif i(3)<='0' then
a<="100";e<='0';s<='1';
elsif i(2)<='0' then
a<="101";