实验七、VHDL并行语句(生成语句)使用练习
一 实验目的
1掌握VHDL语言的基本描述语句的使用方法。
2掌握VHDL语言的生成语句的使用方法。
二 实验设备与仪器
1 计算机
2 MAX+PLUSⅡ工具软件
3 EDA–V型实验箱
4 编程器件:FLEX10K10LC84-4
三 实验内容
利用MAX+PLUSⅡ库中元器件D触发器及生成语句,完成如图7-1所示的电路设计。
图7-1 生成语句电路设计
四 实验原理
生成语句具有复制作用,可以生成与某个元件或设计单元电路完全相同的一组并行元件或设计单元电路结构。
如果使用altera库中元件,必须在VHDL语言设计的开始进行以下声明:
LIBRARY altera;
USE altera.maxplus2.all;
如果使用元件例化语句,生成器件,那么设计前必须先有这个元件。
例如:在用生成语句作4位加法器电路描述的设计前,必须有一位加法器的设计。
一位加法器的描述:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY add_1 IS
PORT( x, IN std_logic;
y: IN std_logic;
ci: IN std_logic;
sum: OUT std_logic;
c OUT std_logic;
END add_1;
ARCHITECTURE ar_10 OF add_1 IS
BEGIN
sum<=x XOR y XOR ci;
co<=( x AND y )OR( x AND ci)OR( y AND ci);
END ar_10;
使用COMPONENT语句描述的4位加法器电路
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
USE ieee.std_logic_unsigned.ALL;
ENTITY add_4 IS
PORT(x,y: IN std_logic_vector (3 DOWNTO 0);
ci: IN std_logic;
s: OUT std_logic_vector(3 DOWNTO 0);
c OUT std_logic;
END add_4;
ARCHITECTURE ar_9 OF add_4 IS
COMPONENT add_1
PORT (x,y,ci: IN std_logic;
sum,c OUT std_logic);
END COMPONENT;
SIGNAL cm: std_logic _vector (3 DOWNTO 0);
BEGIN
yj0: add_1 PORT MAP(x(0), y(0), cm(0), s(0), cm(1));
yj1: add_1 PORT MAP(x=>x(1), y=>y(1), ci=>cm(1), sum=>s(1), co=>cm(1));
yj2: add_1 PORT MAP(x(2), y(2), cm(2), sum=>s(2), co=>cm(3));
yj3: add_1 PORT MAP(x(3), y(3), cm(3), s(3), co);
END ar_9
五 实验步骤
1 请编程实现图7-1所示的电路描述。
2 将编辑好的电路进行编译和仿真。
3输入信号接实验箱的拨码开关,输出信号接发光二极管。改变拨码开关的状态,观察实验结果。
4将ByteBlaster电缆的一端与计算机的并行口相连,另一端10针阴头与实验板的插座相连。
5 选择菜单命令OpTIons/Hardware Setup,出现图3-67所示设置编程硬件对话框。在Hardware Type栏的下拉条中选择Byte Blaster;
6 单击Configure按钮,即开始配置器件。若器件或电缆或电源有问题,则会产生错误警告信息。
六 记录实验结果并完成实验报告
记录实验结果。完成实验报告并分析其运算结果的正确性。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)