|
下面的设计均采用Quartus-II 16.0软件,因为版本大于9.0,所以仿真要使用外部软件。我使用的是modelsim来做的仿真,包括时序仿真和功能仿真。
一、实验原理
半加器的设计由两个基本逻辑门元件组成,包括与门和逻辑门。
半加器的逻辑表述为:SO = A ⊕B; CO = A ● B;
就是SO等于A异或B,CO等于A与B。其中SO是和值端口,CO是进位端口,A、B是数据输入端口。
二、建立工程
在设计原理图输入法之前,先讲讲如何新建一个工程。
第一步:打开Quartus软件。
第二步:点击New Project Wizard -> next.
第三步:选择工程文件的存放位置,输入工程名 -> next -> next。

第四步:在family栏选择芯片型号-Cyclone IV E,在Name栏选择EP4CE115F29C7,选择完之后点击next。

第五步:在Simulation栏中选择Modelsim-Altera和VHDL。如下图

第六步:检查工程有没有建错。

这上面有工程的所有信息,检查无错后,建立工程就OK了。
* 注意顶层文件必须和原理图文件名、VHDL文件名保持一致!不然会出现错误!
三、输入法
半加器可以采用两个输入法,包括原理图输入法和文本输入法。
1. 原理图输入法

2. 文本输入法
参考代码如下所示:
LIBRARY IEEE; --库文件
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY h_adder IS --实体
PORT( --端口定义
A : IN STD_LOGIC;
B : IN STD_LOGIC;
SO : OUT STD_LOGIC;
CO : OUT STD_LOGIC
);
END ENTITY h_adder;
ARCHITECTURE fh1 OF h_adder IS --结构体
BEGIN
SO <= A XOR B;
CO <= A AND B;
END ARCHITECTURE fh1; 四、仿真波形
原理图输入法可以转化为VHDL文件,再进行仿真。下面主要介绍的是VHDL文件如何进行仿真?
1. 选择Processing -> Start -> Start Test Bench Template Writer。
2. 打开测试文件。因为采用外部软件modelsim进行仿真,所以需要修改后缀为.vht文件。
选择File -> open -> simulation -> medelsim -> h_adder.vht (注意后缀为vht)
3. 对输入信号初始化,赋值。
SIGNAL A : STD_LOGIC := '0';
SIGNAL B : STD_LOGIC := '0'; 对输入信号的时序控制

注意这里要将WIAT语句注释掉,字节编写时序。
4. 选择Assignments -> settings -> simulation。还需要修改一些设置,如下图所示

然后就可以进行仿真了。
A. 时序仿真波形图

B. 功能仿真

|