资源描述
实验二 逻辑门系列
一、实验目的
熟悉并掌握简单的VHDL程序的基本结构。
二、实验内容
分别设计并实现或门、与非门、异或门的VHDL模型。
三、实验仪器
ZY11203E型实验箱通用编程模块,配置模块,开关按键模块,LED显示模块。
四、实验原理
1、二输入或门(OR Gate):
在该模型中计算两个输入信号in1和in2的逻辑或,输出结果为out1,逻辑表达式为out1=in1 OR in2。下面将给出二输入或门的VHDL模型:
library ieee;
use ieee.std_logic_1164.all;
entity myor2 is
port(in1,in2 : in std_logic;
out1 : out std_logic);
end myor2;
architecture arc_df of myor2 is
begin
out1<=in1 or in2 ;
end arc_df;
2、二输入与非门(NAND Gate)
在该模型中计算两个输入信号in1和in2的逻辑与非,输出结果为out1,逻辑表达式为out1=in1 NAND in2。下面将给出二输入与非门的VHDL模型:
library ieee;
use ieee.std_logic_1164.all;
entity mynand2 is
port(in1,in2 : in std_logic;
out1 : out std_logic);
end mynand2;
architecture arc_df of mynand2 is
begin
out1<=in1 NAND in2;
end arc_df;
3、二输入异或门(XOR Gate):
在该模型中计算两个输入信号in1和in2的逻辑异或,输出结果为out1,逻辑表达式为out1=in1 XOR in2。下面将给出二输入异或门的VHDL模型:
library ieee;
use ieee.std_logic_1164.all;
entity myxor2 is
port(in1,in2 : in std_logic;
out1 : out std_logic);
end myxor2;
architecture arc_df of myxor2 is
begin
out1<=in1 xor in2;
end arc_df;
五、实验步骤
1、针对二输入或门的VHDL设计,采取如下实验步骤:
(1)新建一个文件夹,如D:\liulicai。
(2)选择编辑文件类型为VHDL File。
(3)输入实验原理中或门的VHDL源程序。
(4)将编辑的VHDL源程序文件存盘,如存于D:\liulicai,并且存盘文件名应该与实体名一致,如为myor2.vhd。
(5)创建工程
① 打开并建立新工程管理窗口,此处工程名最好与实体名一致,如myor2。
② 将设计文件加入工程中,如将myor2.vhd加入①步所建的工程中。
③ 选择目标芯片,如ACEX1K系列中的EP1K30QC208-2芯片。
④ 工具设置,这里选择使用QuartusⅡ9.0自含的EDA设计工具,具体包括用于选择输入的HDL类型和综合工具;用于选择仿真的工具;用于选择时序分析的工具。
⑤ 结束设置
(6)全程编译前约束项目设置
① 选择FPGA目标芯片,如ACEX1K系列中的EP1K30QC208-2芯片。
② 选择配置器件的工作方式。
③ 选择配置器件和编程方式。
④ 选择目标器件引脚端口状态。
⑤ 对双功能引脚进行设置。
(7)全程综合与编译。[全程综合编译通过后可以查看生成的对应RTL电路图]
(8)仿真测试。针对全程编译通过后的工程,如myor2,必须对其功能和时序性质进行仿真测试,以验证设计结果是否满足原设计要求。对工程myor2仿真步骤如下:
① 打开波形编辑器。
② 设置仿真时间区域。 这里整个仿真域的时间设定为50us。
③ 波形文件存盘。将以默认名为myor2.vwf的波形文件存入文件夹D:\liulicai中。
④ 将工程myor2的端口信号节点选入波形编辑器中。 这里将输入端口in1、in2和输出端口out1选入波形编辑器中。
⑤ 设置激励信号波形并再次存盘。
⑥ 仿真器参数设置。设置仿真激励文件名为myor2.vwf,并设置仿真类型为功能仿真或时序仿真。这里注意若选择为功能仿真,在启动仿真器之前要先运行:ProcessingàGenerate Functional Simulation Netlist产生功能仿真网表。
⑦ 启动仿真器。
⑧ 观察仿真结果。
(9)引脚锁定。针对EDA技术实验箱提供的硬件资源及其主板上核心芯片的I/O分布情况。这里用拨位开关KD1、KD2作为输入,LED16作为输出,以验证结果的正确性。对应的引脚锁定信息为:输入in1对应PIN_45,in2对应PIN_46;输出out1对应PIN_44。存储这些引脚锁定信息后,必须再重新全编译一次,将引脚锁定信息编译到编程下载文件中。
(10)编译文件下载
① 打开编程窗口和配置文件。本设计采用JTAG编程模式,将工程下载文件如myor2.sof添加到编程窗口。
② 设置编程器。这里采用的编程器为:ByteBlaster,将编程/配置文件如myor2.sof文件编程/配置到目标器件FPGA中去。
③ 硬件测试。利用EDA技术实验箱ZY11203E来进行硬件测试,观察系统的输入与输出情况,并与系统的仿真波形对照,以验证设计的正确性。
2、针对二输入与非门和异或门的VHDL设计步骤同上。
六、实验结果与分析
经过对或门、与非门和异或门的VHDL设计的仿真测试,分别得出对应设计的仿真波形如下图所示:
下图2-1为对2输入或门设计得到的仿真图形:
图2-1 2输入或门的仿真图形
下图2-2为对2输入与非门设计得到的仿真图形:
图2-2 2输入与非门的仿真图形
下图2-3为对2输入异或门设计得到的仿真图形:
图2-3 2输入异或门的仿真图形
从仿真波形中可以观察到对或门、与非门和异或门的VHDL设计的波形仿真结果均满足原设计功能要求,对或门、与非门和异或门的硬件测试结果也证实了各逻辑门设计的正确性。
展开阅读全文