VHDL实验指导书文档格式.docx
《VHDL实验指导书文档格式.docx》由会员分享,可在线阅读,更多相关《VHDL实验指导书文档格式.docx(50页珍藏版)》请在冰豆网上搜索。
当出现询问是否创建工程的窗口,应当单击是进入创建工程流程,否则要重新创建工程把文件添加进去。
打开工程中的原理图文件,在原理图编辑窗口的任何一个位置右击,将出现快捷菜单,选择Insert/Symbol命令,出现元件输入对话框,选择相应的器件,并连接好电路,然后分别在input和output的PINNAME上双击使其变黑色,再分别输入引脚名。
选择Processing/StartCompilation命令,进行全程编译。
打开波形编辑器,选择File/New,在New中选择OtherFiles中的VectorWaveformFile选项,单击OK,出现空白的波形编译窗口
选择File/SaveAs命令,存盘。
文件名一定要与原理图文件名一致。
然后添加相应的端口信号节点到波形编辑器中,设置合理的输入信号。
选择Processing/StartSimulation,进行波形仿真。
选择Processing/ClassicTimingAnalyzerTool测试最高工作频率。
选择Tools/MegaWizardPlug-InManager,根据向导提示创建一个6位全加器。
3、实验结果记录:
打印出实验原理图与仿真波形图,写出最高工作频率,打印出利用向导创建的新器件的图形,完成实验报告
四、实验研究与思考
1、延迟时间分析、最高工作频率分析等时间分析有何重要性?
2、流水线的作用是什么?
对那些性能有影响?
2、功能仿真、验证起到什么作用?
实验二VHDL软件设计
2、掌握EDA开发工具的VHDL设计方法。
3、掌握硬件描述语言设计的编译与验证方法。
二、实验仪器
PC机一台 QuartusII 软件
1、24进制加法计数器的程序:
LIBRARYIeee;
USEieee.std_logic_1164.ALL;
USEieee.std_logic_unsigned.ALL;
ENTITYcount24IS
PORT(en,clk:
INSTD_LOGIC;
qa:
outSTD_LOGIC_VECTOR(3DOWNTO0);
--个位数计数
qb:
outSTD_LOGIC_VECTOR(1DOWNTO0));
--十位数计数
ENDcount24;
ARCHITECTUREa1OFcount24IS
BEGIN
process(clk)
variabletma:
STD_LOGIC_VECTOR(3DOWNTO0);
variabletmb:
STD_LOGIC_VECTOR(1DOWNTO0);
begin
ifclk'
eventandclk='
1'
then
ifen='
iftma="
1001"
thentma:
="
0000"
;
tmb:
=tmb+1;
Elsiftmb="
10"
andtma="
0011"
tmb:
00"
elsetma:
=tma+1;
endif;
qa<
=tma;
qb<
=tmb;
endprocess;
ENDa1;
2、实验步骤:
1)24进制计数器
打开QuartusII软件,选择File/New,在弹出的窗口中选DeviceDesignFiles选项卡,再选择VHDLFile选项,单击OK后打开程序编辑窗口。
选择File/SaveAs命令,保存文件在已经创建的文件夹里,文件名一定要与程序的实体名一致。
打开工程中的程序文件,把1中24进制加法计数器的程序输入。
打开波形编辑器,选择File/New,在New中选择OtherFiles中的VectorWaveformFile选项,单击OK,出现空白的波形编译窗口。
2)修改以上程序获得60进制加法计数器,并进行功能和时间仿真验证。
手写出24进制与60进制的加法器的实验程序,打印出仿真波形图,完成实验报告
1、比较图形设计和语言设计方法的差别和优缺点。
实验三3-8译码器
1、掌握组合逻辑电路的设计方法。
2、掌握组合逻辑电路的静态测试方法。
3、初步掌握EDA软件的基本操作与应用。
4、初步了解可编程器件的设计全过程。
PC机一台 QuartusII 软件
1、新建一个设计工程;
2、输入并连接如图3.1所示原理图;
图3.13-8译码器原理图
3、选择目标器件(EP1C3T144C8);
4、编译与适配;
5、波形文件输入与设定,功能仿真与验证;
6、管脚锁定;
7、器件编程下载;
8、硬件测试;
9、采用VHDL语言描述以上3-8译码器,并重复以上4-8项;
9、自行设计纪录方式,完成实验报告
1、组合逻辑电路的设计应该注意什么问题?
实验四组合逻辑电路的VHDL描述
3、熟悉FPGA设计的过程,比较原理图输入和文本输入的优劣。
PC机一台 QuartusII 软件
1、用VHDL语言设计一个四舍五入判别电路,其输入为8421BCD码,要求当输入大于或等于5时,判别电路输出为1,反之为0。
参考电路原理图如图4.1所示。
图4.1四舍五入判别参考电路
2、用VHDL语言设计四个开关控制一盏灯的逻辑电路,要求改变任意开关的状态能够引起灯亮灭状态的改变。
(即任一开关的合断改变原来灯亮灭的状态,参考电路原理图如图4.2所示。
)
图4.2灯控参考电路
3、用VHDL语言设计一个优先排队电路(参考电路原理图如图4.3所示),其中:
A=1,最高优先级;
B=1,次高优先级;
C=1,最低优先级。
要求输出端最多只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。
图4.3优先排队参考电路
4、自行设计纪录方式,完成实验报告
1、CPLD和FPGA有什么差别?
设计中应该注意什么问题?
2、图形设计方法中采用LPM设计有什么好处?
实验五触发器的VHDL描述
一、实验的目的
1、掌握触发器功能的测试方法。
2、掌握基本RS触发器的组成及工作原理。
3、掌握集成JK触发器和D触发器的逻辑功能及触发方式。
4、掌握几种主要触发器之间相互转换的方法。
5、通过实验、体会CPLD芯片的高集成度和多I/O口。
1、用VHDL语言设计基本RS触发器、同步RS触发器、J-K触发器、D触发器,并将这些触发器集成于一个电路(芯片)中(参考设计电路如图5.1所示),并研究其相互转换的方法。
图5.1触发器设计参考电路
2、编译、仿真、管脚锁定和器件编成下载后进行硬件测试并纪录测试结果到下列各触发器的真值表中。
表一:
RS寄存器
Rd
Sd
Q
NQ
说明
1
表二:
RS锁存器
R
S
CLK1
Qn
Qn+1
Qn-1
X
表三:
D触发器
INPUTS
OUTPUTS
D
CLK2
↑
表四:
JK触发器
J
K
NQn+1
※
↓
4、分别将JK触发器和D触发器接成T触发器,模拟其工作状态,并画出其波形图。
5、自行设计纪录方式,完成实验报告
1、时序电路的设计与组合电路的设计有何差别?
2、时序电路的同步设计和异步设计有何不同?
3、异步设计的竞争冒险现象如何产生,应该如何克服竞争冒险现象?
实验六扫描显示驱动电路
1、了解实验系统中8位八段数码管显示模块的工作原理;
2、掌握计数器和地址发生器的VHDL描述方法;
3、掌握LED数码管7段译码器的VHDL描述方法;
4、掌握编码器的VHDL描述方法;
5、设计标准扫描驱动电路模块,以备后面实验用。
PC机一台 QuartusII 软件EDA实验箱
图6.1所示的是8位数码扫描显示电路,其中每个数码管的8个段:
h、g、f、e、d、c、b、a(h是小数点)都分别连在一起,8个数码管分别由8个选通信号k1、k2、…k8来选择。
被选通的数码管显示数据,其余关闭。
如在某一时刻,k3为高电平,其余选通信号为低电平,这时仅k3对应的数码管显示来自段信号端的数据,而其它7个数码管呈现关闭状态