- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内蒙古工业大学CPLD与FPGA实验.doc
CPLD与FPGA
实验报告
实验一 组合逻辑电路的设计
实验目的:
掌握用VHDL语言和EPLD进行组合逻辑电路的设计方法。
加深对EPLD设计全过程的理解。
掌握组合逻辑电路的静态测试方法。
实验设备:
PC机
EDA实验箱(主芯片是ALTERA EPM7128SLC84-15)。
实验内容:
用VHDL语言输入法设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1;反之为0。
用VHDL语言输入法设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。
用VHDL语言输入法设计一个优先权排队电路。排队顺序为:
A=1 最高优先级
B=1 次高优先级
C=1 最低优先级
要求输出端最高只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。
实验步骤:
采用文本编辑器输入VHDL语言源程序,建立工程。
编译。
仿真。
对芯片进行编程。
根据管脚分配情况连线。
四舍五入判别电路的四个输入管脚分别与四个拨码开关相连,输出数据与LED灯相连。
开关控制电路的四个输入管脚分别与四个按键开关相连,输出管脚与LED灯相连。
优先权排队电路的A、B、C三个信号分别连三个按键开关,三个输出信号分别连三个LED灯相连。
控制输入信号(按键或拨码开关),观察电路输出(LED灯的亮与灭)。
实验报告要求:
给出电路的VHDL描述、仿真结果。
说明波形图中输入数据的给定依据。
说明物理连线情况以及物理连线与编译时进行管脚分配有何关系?
实验程序及运行结果
1用VHDL语言输入法设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1;反之为0。
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity sy is port(d: in std_logic_vector(3 downto 0);
y: out std_logic);
end sy;
architecture beha of sy is signal datain:integer;
begin
datain=conv_integer(d);
process begin if (datain=5) then y=1; else y=0;
end if;
end process;
end beha;
结论:四舍五入就是要实现使用四位二进制数,当其数值小于五时使其输出结果为0,反之输出结果为1.即‘0000’‘0001’‘0010’‘0011’‘0100’输入状态时此时的输出结果都是0,反之都是1。所截图中的输入为‘0001’此时符合条件既能实现功能
2用VHDL语言输入法设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。
library ieee;
use ieee.std_logic_1164.all;
entity sy1_2 is port (a,b,c,d: in std_logic;
clk: in std_logic;
y:out std_logic);
end sy1_2 ;
architecture beha of sy1_2 is
signal q:std_logic;
begin
process(clk)
begin
if(clkevent and clk=1)then if(a=1)or(b=1)or(c=1)or(d=1)then q=not q;
end if;
end if;
end process;
y=q;
end beha;
结论:让clk作为敏感信号,当clk变化并处于上升沿时,此时a,b,c,d,任一输入都有效,并且会使此时状态翻转,所截图中正是b=1,而其他三者状态都为0,输出状态为1,就是开关处于开的状态。
3用VHDL语言输入法设计一个优先权排队电路。排队顺序为:
A=1 最高优先级
B=1 次高优先级
C=1 最低优先级
要求输出端最高只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。
library ieee;
use ieee.std_logic_1164.all;
entity sy1_3 is port(abci: in std_logic_vector(2 downto 0);
abco: out std_logic_vector(2 downto 0));
end sy1_3;
文档评论(0)