八位加法器仿真波形图设计解析
8位全加器可由两个4位的全加器串连构成,因而,先由一个半加器组成一个全加器,再由4个1位全加器组成一个4位全加器并封裝成电子器件。加法器间的进位能够串行通信方法完成,将要底位加法器的进位輸出cout与相邻的上位加法器的最少进位键入数据信号cin相连最大位的輸出即是两数之和。最后一个Cout輸出进位,D8表明。
时钟频率模拟仿真
1、创建波型文档。因此设计方案创建一个波型检测文档。挑选File项以及New,再挑选右边New隔窗的vector Waveform file项,开启波型编写窗。
2、键入数据信号连接点。在波型编写窗的左侧双击鼠标,在发生的对话框中挑选Node finder,在弹出来的对话框中最先点一下List键,这时候左对话框将列举此项设计方案因此运用正中间的“=》”键将必须观查的数据信号挑到右栏中。
3设置模拟仿真時间总宽。挑选edit项以及End TIme选择项,在End TIme挑选隔窗挑选合理的模拟仿真時间域,此次试验因为是八位的全加器,为防止延迟时间很大不利表明,可将End TIme 设定为50ms,便于有充足长的观查時间和有利于剖析的波型模拟仿真波形。
4、波型文档存盘。挑选File项以及Save as选择项,按OK键就可以。存盘隔窗波型文件夹名称是初始的(这儿是adder.scf因此立即存盘就可以。
5、运作仿真器。点一下processing中的Start simulaTIon选择项,如图所示是模拟仿真计算结束后的时钟频率波型。留意,刚进到如下图所示的对话框时,应当将最下面的滑标拖向最左边,便于可观查到原始波型。
模拟仿真波形:
排序后的模拟图:
完成流程
1.最先因此工程项目创建一个置放与此工程项目有关的任何文档的文件夹名称,觉得工作中库(Work Library)。该项设计方案我的文件夹名称起名叫8位全加器。
2. 选File?New,在弹的New提示框中挑选Device Design Files 页的电路原理图文件编辑键入项Block diagram\Schematic File,画半加器电路原理图。 3. 另存自身的工程项目,将已设计方案好的图文件命名为:h_adder.bdf,并储存在这里文件夹名称内。编译程序根据以后,将该半加器封裝进库待设计方案1位全加器的过程中启用。
4. 运用封裝后的半加器画1位的全加器,并封裝成电子器件。
5. 运用封裝后的1位全加器,将4个1位全加器串行通信,画4位的全加器,并封裝成电子器件。
6. 将2个4位全加器电子器件串行通信,依照实验原理设计方案8位全加器。
7.运作并调节取得成功。
8. 锁脚位,
9. 联接USB。
按START运作。
VHDL源代码
4位二进制并行加法器的源代码ADDER4B.VHD --ADDER4B.VHD LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ADDER4B IS
PORT(C4: IN STD_LOGIC;
A4: IN STD_LOGIC_VECTOR(3 DOWNTO 0); B4: IN STD_LOGIC_VECTOR(3 DOWNTO 0);
S4: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CO4: OUT STD_LOGIC); END ENTITY ADDER4B;
ARCHITECTURE ART OF ADDER4B IS
SIGNAL S5: STD_LOGIC_VECTOR(4 DOWNTO 0); SIGNAL A5, B5: STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN
A5《=‘0’& A4; B5《=‘0’& B4; S5《=A5 B5 C4;
S4《=S5(3 DOWNTO 0); CO4《=S5(4);
END ARCHITECTURE ART; --ADDER8B.VHD LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ADDER8B IS
PORT(C8:IN STD_LOGIC;
A8:IN STD_LOGIC_VECTOR(7 DOWNTO 0); B8:IN STD_LOGIC_VECTOR(7 DOWNTO 0); S8:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); CO8:OUT STD_LOGIC); END ENTITY ADDER8B;
ARCHITECTURE ART OF ADDER8B IS COMPONENT ADDER4B IS PORT(C4:IN STD_LOGIC;
A4:IN STD_LOGIC_VECTOR(3 DOWNTO 0); B4:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CO4:OUT STD_LOGIC); END COMPONENT ADDER4B; SIGNAL SC:STD_LOGIC; BEGIN
U1:ADDER4B
PORT MAP(C4=》C8,A4=》A8(3 DOWNTO 0),B4=》B8(3 DOWNTO 0), S4=》S8(3 DOWNTO 0),CO4=》SC); U2:ADDER4B
PORT MAP(C4=》SC,A4=》A8(7 DOWNTO 4),B4=》B8(7 DOWNTO 4), S4=》S8(7 DOWNTO 4),CO4=》CO8); END ARCHITECTURE ART;
在调试程序和模拟仿真时,我们要应用自底向上的办法开展,也就是针对带有好几个组件的设计方案,我们要先从最底层控制模块做好调节和模拟仿真,再实现更高端控制模块的调节和模拟仿真,最终开展高层控制模块的调节与模拟仿真。下面的图各自应用Quartus II 8.0对ADDER4B和ADDER8B开展时钟频率模拟仿真的結果。
ADDER4B的时钟频率模拟仿真結果
ADDER8B的时钟频率模拟仿真結果
逻辑性综合分析
下边是应用Quartus II 8.0开展逻辑性综合性ADDER8B的RTL主视图;对ADDER8B的RTL主视图中ADDER4B开展开展的主视图;应用Quartus II 8.0对ADDER8B开展逻辑性综合性后的自然资源应用状况
ADDER8B综合性后的RTL主视图
ADDER8B综合性后的RTL主视图里将ADDER4B进行后的主视图
上一篇:cd4013产生的方波发生器电路