Quartus II 四位全加器
4位全加器

四位全加器的VHDL实现通信0704 王学申0120703490117一、设计要求:采用QuartusII或Max+PlusII集成开发环境,利用VHDL硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四位进位加法器。
二、设计分析加法器是数字系统中的基本逻辑器件。
多位加法器的构成有两种方式:并行进位和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。
通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。
实现多位二进制数相加的电路称为加法器,它能解决二进制中1+1=10的功能(当然还有 0+0、0+1、1+0).三、加法器的分类(一)半加器能对两个1位二进制数进行相加而求得和及进位的逻辑电路称为半加器。
或:只考虑两个一位二进制数的相加,而不考虑来自低位进位数的运算电路,称为半加器。
图1为半加器的方框图。
图2为半加器原理图。
其中:A、B分别为被加数与加数,作为电路的输入端;S为两数相加产生的本位和,它和两数相加产生的向高位的进位C一起作为电路的输出。
图1 半加器图2 半加器原理图根据二进制数相加的原则,得到半加器的真值表如表1所列。
信号输入信号输出A B S C0 0 0 00 1 1 01 0 1 01 1 0 1表1 半加器的真值表由真值表可分别写出和数S,进位数C的逻辑函数表达式为:(1) C=AB (2)由此可见,式(1)是一个异或逻辑关系,可用一个异或门来实现;式(2)可用一个与门实现。
仿真结果如图3所示:图3 半加器仿真图(二)全加器除本位两个数相加外,还要加上从低位来的进位数,称为全加器。
图4为全加器的方框图。
图5全加器原理图。
被加数A i、加数B i从低位向本位进位C i-1作为电路的输入,全加和S i与向高位的进位C i作为电路的输出。
能实现全加运算功能的电路称为全加电路。
4位全加器.docx

根据波形, 当输入为家如前一位进位信号后, 当 c1 为低电平, 全加器与半加器功能一样, 当 c1 为高电平时,输出 s0 与 c0 正好与半加器相反,验证了全加器的功能。 2,建立一个更高层次的原理图设计,利用以上获得的 1 位全加器串联构成 4 位全加器,并完 成编译、综合。 四位全加器原理图如下所示:
实验一 用原理图输入法设计四位全加器
一 实验目的及内容
熟悉利用 Quartus II 的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过 一个 4 位全加器的设计把握利用 EDA 软件进行原理图输入方式的电子线路设计的详细流程。
二 实验原理
一个 4 位全加器可以由 4 个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加 法器的相接。而 1 位全加器可 以用两个半加组合得到。
四 实验总结
通过本次实验,我掌握了 Quartus II 的原理图输入方法设计简单组合电路和层次化设计 的方法和详细流程。并且使用了原理图来创建原件库,而且还进行个各个层次的仿真,很好的 理解了全加器的各个层次的功能结构以及 Quartus 的使用方法。
仅 供 参 考
仅 供 参 考
三 实验仪器
1、 PC 机一台 2、 Quartus II 9.0 软件
四 实验步骤及结果分析
1:完成半加器和全加器的设计,包括原理图输入、编译、综合。 �+a 由半加器的真值表得s0 = ab � b; c0 = ab ,可得半加器原理图如下所示:
图 1 半加器原理图
半加器仿真波形图如下图所示:
其中 a,b 为输入,s0 为一位和输出,c0 为进位输出,根据仿真波形知,b 为低电平时, s0=a ; b 为高电平时,c0=a,s0=a � ;满足半加器真值表。
实验一 4位全加器的设计(1)

实验一4位全加器的设计一、实验目的:1 熟悉QuartusⅡ与ModelSim的使用;2 学会使用文本输入方式和原理图输入方式进行工程设计;3 分别使用行为和结构化描述方法进行四位全加器的设计;4 理解RTL视图和Technology Map视图的区别;5 掌握简单的testbench文件的编写。
二、实验原理:一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的进位输入信号cin相接。
三、实验内容:1.QuartusII软件的熟悉熟悉QuartusⅡ环境下原理图的设计方法和流程,可参考课本第4章的内容,重点掌握层次化的设计方法。
2.设计1位全加器原理图设计的原理图如下所示:VHDL源程序如下(行为描述):library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity f_add_bev is(A : in std_logic;B : in std_logic;CIN : in std_logic;S : out std_logic;CO : out std_logic);end entity;architecture bev of f_add_bev isbegin(CO,S)<=('0',A)+('0',B)+('0',CIN);end bev;VHDL源程序如下(行为描述)的RTL与technology map视图VHDL源程序如下(数据流描述):library ieee;use ieee.std_logic_1164.all;use ieee.numeric_std.all;entity f_add_fl is(A : in std_logic;B : in std_logic;CIN : in std_logic;S : OUT std_logic;CO : out std_logic);end entity;architecture fl of f_add_fl isbeginS<=A XOR B XOR CIN;CO<=((A XOR B)AND CIN)OR(A AND B);end fl;VHDL源程序如下(数据流描述)的RTL与technology map视图:VHDL源程序如下(结构化描述):library ieee;use ieee.std_logic_1164.all;use ieee.numeric_std.all;entity f_add_con isport(A : in std_logic;B : in std_logic;CIN : in std_logic;S : OUT std_logic;CO : out std_logic );end entity;architecture con of f_add_con is COMPONENT hadd_vhdPORT(a : IN STD_LOGIC;b : IN STD_LOGIC;co : OUT STD_LOGIC;s : OUT STD_LOGIC );END COMPONENT;SIGNAL S1:STD_LOGIC;SIGNAL CO1:STD_LOGIC;SIGNAL CO2:STD_LOGIC;beginh_add1 : hadd_vhdport map(a => a,B => B,S => S1,CO => CO1);h_add2 : hadd_vhdport map(a => S1,B => CIN,S => S,CO => CO2);CO<=CO1 OR CO2;end con;VHDL源程序如下(结构化描述)的RTL与technology map视图:Testbench文件源程序如下:LIBRARY cycloneiii ;LIBRARY ieee ;USE cycloneiii.cycloneiii_components.all ;USE ieee.std_logic_1164.all ;ENTITY f_add_fl_tb ISEND ;ARCHITECTURE f_add_fl_tb_arch OF f_add_fl_tb ISSIGNAL A : STD_LOGIC :='0';SIGNAL CO : STD_LOGIC ;SIGNAL CIN : STD_LOGIC :='0'; SIGNAL B : STD_LOGIC :='0'; SIGNAL S : STD_LOGIC ;COMPONENT f_add_flPORT (A : in STD_LOGIC ;CO : buffer STD_LOGIC ;CIN : in STD_LOGIC ;B : in STD_LOGIC ;S : buffer STD_LOGIC );END COMPONENT ;BEGINDUT : f_add_flPORT MAP (A => A ,CO => CO ,CIN => CIN ,B => B ,S => S ) ;A<=NOT A AFTER 0.25US;B<=NOT B AFTER 0.5US;CIN<=NOT CIN AFTER 1US;END ;功能仿真波形如下:时序仿真波形如下:3.利用层次化原理图方法设计4位全加器(1)生成新的空白原理图,作为4位全加器设计输入(2)利用已经生成的1位全加器作为电路单元,设计4位全加器。
EDA在QuartusII中用原理输入法设计4位加法器

专业班级:学号:姓名:EDA 技术实验报告实验项目名称:在QuartusII中用原理输入法设计4位加法器实验日期:2012.05.14 实验成绩:实验评定标准:1)实验程序是否正确A()B()C()2)实验仿真、结果及分析是否合理A()B()C()3)实验报告是否按照规定格式A()B()C()一、实验目的.熟悉利用Quartus II的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个4位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
二、实验原理:一个4位全加器可以由4个1位全加器构成,加法器间的进位可以串行方式实现,及将低位加法器的进位输出cout与相邻的高位加法器的最低输入信号cin相接(串行进位加法器)三、实验器材QuartusII软件,ACEX1K系列EP1K30TC等。
四、实验内容(实验过程)实验内容1:按照附录四介绍的方法与流程,完成半加器和全加器的设计,包括原理图,编译,综合,适配,仿真,实验板上的硬件测试,并将此全加器电路设置成一个硬件符号入库。
A.打开Quantus2软件,选择new project wizard 新建项目。
B.在该项目下新建图形文件(block diagram/schematic file),如图调出门电路连接成半加器。
C.进行编译和仿真。
记录实验结果。
仿真前要新建波形文件,file new。
弹出的对话框选择other files选项卡面的vector waveform file。
在新建的波形文件左边空白栏点击鼠标右键,选择insert insert node or bus.在出现的对话框中直接点击node finder。
之后,在出现的对话框中选择list ,当坐标的node find栏中出现设计文件的输入输出端口后,再点击“》”加入右边“selected nodes”栏中,然后就ok。
D.把该半加器生成符号,以备下一环节的全加器使用,选择files create。
4位二进制全加器设计

任务一4位全加器设计一、实验目的1、掌握运用Quartus II原理图编辑器进行层次电路系统设计的方法。
2、进一步熟悉利用Quartus II进行电路系统设计的一般流程。
3、掌握4位全加器原理图输入设计的基本方法及过程。
二、实验原理(1)设计一位半加器真值表:(2)设计一位全加器真值表:SOn=n n n−1;COn=(A n⨁B n)C n−1+A n B n;(2)设计多位全加器由一位全加器组合成多位全加器。
依次将低位全加器的进位输出端接到高位全加器的进位输入端,由四个一位全加器构成四位全加器。
三、实验过程1、一位半加器的设计(1)电路图①执行“Files”─>“New”─>“Block Diagram/Sch matic”─>“OK”②在编辑窗口输入“与非”门电路原理图,保存电路为“01.bdf”,如图:(2)仿真波形①执行“Files”─>“New”─>“Vector Waveform File”─>“OK”②在波形编辑窗口双击左键,执行“Insert Node or Bus”─> “New Finder”─> “List”─>“》”─>“OK”。
③保存文件为“01.vwf”。
④执行菜单“Processing”─> “Start Simulation”,如图:(3)仿真波形分析:(4)封装之后的图:设“01.bdf”为顶层文件,执行“Files”─>“Create、Update”─> “Create Symbol Files forCurrent Files”,保存。
如图:2、一位全加器(1)电路图①执行“Files”─>“New”─>“Block Diagram/Sch matic”─>“OK”②在编辑窗口输入“与非”门电路原理图,保存电路为“02.bdf”,如图:(2)仿真波形①设“02.bdf”为顶层文件。
四位全加器

1.C机一台;
2.Altera Blaster下载器一根;
3.KHF-5实验箱一台。
三、实验原理
全加器是由两个加数Xi和Yi以及低位来的进位Ci-1作为输入,产生本位和Si以及向高位的进位Ci的逻辑电路。它不但要完成本位二进制码Xi和Yi相加,而且还要考虑到低一位进位Ci-1的逻辑。对于输入为Xi、Yi和Ci-1,输出为Si和Ci的情况,根据二进制加法法则可以得到全加器的真值表如下表9-1所示:
五、实验过程
1.打开QUARTUSII软件,新建一个工程。
2.建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。
3.按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光盘中提供的示例程序。
4.编写完VHDL程序后,保存起来。方法同实验一。
5.对编写的VHDL程序进行编译并仿真,对程序的错误进行修改。
BEGIN
abc <= a & b ; --a相并b,即a与b并置操作
PROCESS(abc)
BEGIN
CASE abc IS --类似于真值表的CASE语句
WHEN "00" => so<='0'; co<='0' ;
WHEN "01" => so<='1'; co<='0' ;
WHEN "10" => so<='1'; co<='0' ;
ENTITY h_adder IS
PORT (a, b : IN STD_LOGIC;
quartus_4位二进制加减法计数器

贵州大学实验报告学院:专业:班级设计原理框图从原理图中可见,需要有1bit装载位(load)、1bit清零位(clr)、方向控制位up_down和4bit数据选择位DIN[3..0]。
装载位我们采用SW0,清零位采用SW1,方向控制位为SW2。
SW3-SW6作为数据输入端,LED1-LED4显示数据的输出,LED5为溢出标志位。
实验内容编写一个带预置输入,清零输入,可加可减计数器的verilog代码或VHDL代码并仿真,编译下载验证module counter4(load,clr,c,DOUT,clk,up_down,DIN);//定义模块input load;//定义输入信号input clk;//wire load;//定义线网型input clr;//wire clr;//input up_down;//wire up_down;//input [3:0]DIN;//定义4位二进制输入信号wire [3:0]DIN;// 定义4位二进制线网型信号output c;//定义输出信号reg c;//定义寄存器类型信号output [3:0]DOUT;//wire [3:0]DOUT;reg [3:0]data_r;assign DOUT=data_r;always@(posedge clk or posedge clr or posedge load)//检测clk,clr,load的上升沿beginif(clr)//当clr=1的时候进行下面的运行程序data_r<=0;//将data_r置零else if(load) //当load=1的时候进行下面的运行程序data_r<=DIN;//将DIN的值赋给data_relse begin if(up_down)//load=0的时候进行下面的操作beginif(data_r==4'b1111)begin///当data_r==4'b1111的时候进行下面的运行程序data_r<=4'b0000;c=1;endelse begin//当data_r不等于4'b1111的时候进行下面的运行程序data_r<=data_r+1;//进行加法计数c=0;endendelsebeginif(data_r==4'b0000)begin//当data_r==4'b0000的时候进行下面的运行程序data_r<=4'b1111;c=1;endelse begin//当data_r不等于4'b1111的时候进行下面的运行程序data_r<=data_r-1;//进行减法计数c=0;endendendendendmodule//结束模块实验数据如图为波形仿真结果,当clr为1的时候,输出结果为0000;当clr为0,load为1时,输出结果为输入数据DIN的值,当up_down为1时,加法进位,进行加1运算,当data_r达到1111时,data_r变为0000,级零信号c为1;当up_down为0时,减法进位,进行减1运算,当data_r达到0000时,data_r变为1111,级零信号c为0。
实验二 原理图输入法设计-4位加法器

实验二四位加法器的设计与仿真——原理图输入法一实验目的通过一个4位加法器的设计掌握QuartusII的原理图输入方法及层次化设计的方法。
二原理说明一个4位加法器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出co与相邻的的高位加法器的最低进位输入信号ci相接。
三实验内容与步骤1.按照参考图2.1完成全加器的设计,包括原理图输入、编译、仿真,并将此全加器电路设置成一个硬件符号入库。
图2.1全加器的设计电路操作步骤:(1)建立设计项目(Project):与实验一的操作相同。
(2)新建模块/原理图文件,进入图形编辑器方式。
执行File|New命令,选择“Block Diagram/Schematic File ”(模块/原理图文件)。
(3)选择元件。
在原理图编辑窗中的任何一个位置上双击鼠标的左键将跳出一个元件选择窗。
图2.2元件选择对话框(4)编辑图形文件在元件库找到自己想要的元件,放好后连线并添加输入输出端口,画出完整的电路图后保存并编译通过。
(5)对设计项目设置进行仿真:过程与方法与实验一相同。
(6)将设计项目设置成可调用的元件以便调用基本逻辑元件库参数可设置的强函数元件库基本逻辑元件库中的元件 由此输入所需要的元件名MAX+plus 库 图2.3 一位全加器的图形编辑文件图2.4 将一位全加器模块生成符号入库2.建立一个更高的原理图设计层次,调用以上获得的1位全加器构成4位加法器,并完成编译、综合、仿真。
3.设计文件打包上传。
四实验报告:详细叙述4位加法器的设计流程;给出各层次的原理图及其对应的仿真波形图;将实验原理、实验过程、仿真结果写进实验报告。
五思考题:为了提高加法器的速度,如何改进以上设计的进位方式?六选作内容:用一片74163和一片74138构成一个具有8路顺序脉冲输出的顺序脉冲产生器。
要求在原理图上标明第1路到第8路输出的位置。
4位同步二进制加法计数器

4位同步二进制加法计数器一.实验目的1.通过此实验逐步了解、熟悉和掌握FPGA开发软件Quartus Ⅱ的使用的法及VerilogHDL的编程方法。
2、学习用VerilogHDL语言以不同方式来描述1位全加器及电路的设计仿真和硬件测试。
二.实验设备操作系统:Windows 2000EDA软件: Quartus II6.0三.设计原理1.4位同步二进制加法计数器的工作原理是指当时钟信号clk的上升沿到来时,且复位信号clr低电平有效时,就把计数器的状态清0。
在clr复位信号无效(即此时高电平有效)的前提下,当clk的上升沿到来时,如果计数器原态是15,计数器回到0态,否则计数器的状态将加12.VHDL源程序library ieee;use ieee.std_logic_1164.all;entity cnt4e isport(clk,clr:in std_logic;cout:out std_logic;q:buffer integer range 0 to 15);end cnt4e;architecture one of cnt4e isbeginprocess(clk,clr)beginif clk'event and clk='1'thenif clr='1'thenif q=15 then q<=0;cout<='0';elsif q=14 then q<=q+1;cout<='1';else q<=q+1;end if;else q<=0;cout<='0';end if;end if;end process;end one;四.实验步骤:1.在Quartus II6.0中执行“file”->“new”命令,打开编辑文件类型对话框,选择"VHDL File",在文本框里输入源程序,并将文件cnt4e.vhd保存在创建的目录下。
EDA实验报告 4位全加器,16位频率计数器

实验课程名称:EDA技术与应用实验项目名称4位全加器实验实验成绩实验者专业班级组别同组者实验日期一、实验目的1.进一步加深理解全加器的工作原理及电路组成,加深对EDA技术的掌握。
2.熟悉利用Quartus Ⅱ的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个四位全加器的设计把握原理图输入方式设计的详细流程。
二、实验内容实验内容1:按照书本4.5.1节完成半加器和1位全加器的设计,包括用原理图输入,编译,综合,适配,仿真,实验板上的硬件测试,并将此全加器电路设置成一个元件符号入库。
实验内容2:建立一个更高层次的原理图,利用以上获得的1位全加器构成4位全加器,并完成编译,综合,适配,仿真和硬件测试。
三、实验仪器1.计算器及操作系统2.Quartus II软件四、实验原理一个4位全加器可以由4个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。
1、半加器描述根据半加器真值表可以画出半加器的电路图。
a b so Co0 0 0 00 1 1 01 0 1 01 1 0 1表1半加器h_adder真值表图1 半加器h_adder电路图2、1位全加器描述一位全加器可以由两个半加器和一个或门连接而成,因而可以根据半加器的电路原理图或真值表写出1位全加器的VHDL 描述。
图2 1位全加器电路图3、4位全加器设计描述4位全加器可以看做四个1位全加器级联而成,首先采用基本逻辑门设计一位全加器,而后通过多个1位全加器级联实现4位全加器。
其中,其中cin 表示输入进位位,cout 表示输出进位位,输入A 和B 分别表示加数和被加数。
S 为输出和,其功能可用布尔代数式表示为:S=A+B+Ciii i i o ABC ABC ABC ABC C +++=首先根据一位全加器的布尔代数式应用基本逻辑门设计一位全加器,而后仿真验证一位全加器设计,准确无误后生成元件,供4位全加器设计用。
quartus ⅱ74283工作原理

Quartus II 74283是一种集成电路芯片,主要用于逻辑电路设计和数字信号处理。
该芯片具有高性能、稳定性好等特点,被广泛应用于数字电子产品中。
下面将详细介绍Quartus II 74283的工作原理。
一、Quartus II 74283的基本结构1. Quartus II 74283是一种四位二进制全加器,可以对四位二进制数进行加法运算。
2. 该芯片内部包含逻辑门电路、寄存器、累加器等功能模块,能够完成二进制加法运算的各个步骤。
3. Quartus II 74283采用CMOS工艺制造,具有低功耗、高集成度等特点。
二、Quartus II 74283的工作原理1. 输入端:Quartus II 74283有两个四位二进制数输入端A和B,分别用于输入要进行加法运算的两个二进制数。
2. 输出端:Quartus II 74283的输出端有一个四位二进制数输出端S,用于输出两个输入数的和。
3. 控制端:Quartus II 74283的控制端有进位输入端Cn、进位输出端Cout等,用于控制加法运算的进行。
三、Quartus II 74283的工作过程1. 初始状态:首先将要进行加法运算的两个四位二进制数分别输入到A和B端口,同时将相关的控制信号输入到控制端口。
2. 进位传递:Quartus II 74283先进行最低位的加法运算,根据A、B和Cin的输入,通过逻辑门电路判断是否需要进位,并将进位信号输出到Cout端口。
3. 两数相加:在进位传递的基础上,Quartus II 74283继续进行每一位的加法运算,直至最高位,最终输出结果到S端口。
4. 结果输出:Quartus II 74283对A、B两个输入数进行二进制加法运算后,将结果通过S端口输出,完成一次加法运算。
四、Quartus II 74283的应用领域1. Quartus II 74283广泛应用于数字电子产品中,如计算机、手机、数字电视等。
Quartus-II-四位全加器

1.系统电路架构
2.练习使用试验箱
3.VHDL语言入门
EDA软件开发平台161
——Quartus II
1.设计一个四位的全加器falladder
考虑到低位过来的进位(半加器halfadder不需要考虑低位的进位)半加器:S=A⊕B C=AB
(半加器的电路)
见下图
全加器:S=A⊕B⊕CI C=AB+BC+AC
(全加器的真值表)
见下图
注意工程文件名不能以数字开头且不能以下划线结尾
将底层文件生成为顶层文件
将半加器创造为符号图元
由此可以添加所设置的符合元作为库文件
添置原件(半加器作为独立元件在Device Design Files 里添加)
此时半加器可以作为独立的原件作为下一层的电路设计的独立元。
将一位全加器设置为单元,为下面的四位全加器做准备
调用四个一位全加器,作为四位全加器的原件来设计四位全加器
完成四位全加器的制作
也可将输入输出端口改为总线形式:
输入端口a[3..0]、b[3..0] 相对应的节点分别为a0 a1 a2 a3; 输出端口sum[3..0] sum0 sum1 sum2 sum3;
连接好电路图,现在开始进行仿真
首先将四位全加器置顶
进行仿真
总结:
Project:add4bit.qpf
半加器halfadder.bdf→全加器fallfadder.bdf→四位全加器add4bit.bdf→完成设计在编译的过程中要将其设置为顶层文件。
EDA实验一 1位全加器和四位全加器的设计

实验一1位全加器和四位全加器的设计一、实验目的1、掌握Quartus Ⅱ6.0软件使用流程。
2、初步掌握VHDL的编程方法。
3、掌握图形层次设计方法;4、掌握全加器原理,能进行多位加法器的设计。
二、实验原理(一位全加器的逻辑表达式为:sum=a^b^Cl;Ch= a&b|(a^b)&Cl.(2)四位加法器加法器是数字系统中的基本逻辑器件。
多位加法器的构成有两种方式:并行进位和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。
通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。
三、实验连线(1)一位全加器1、将EP2C5适配板左下角的JTAG用十芯排线和万用下载区左下角的SOPC JTAG 口连接起来,万用下载区右下角的电源开关拨到SOPC下载的一边2、将JPLED1短路帽右插,JPLED的短路帽全部上插。
3、请将JP103的短路帽全部插上,,打开实验箱电源。
( 2 ) 四位加法器1、将EP2C5适配板左下角的JTAG用十芯排线和万用下载区左下角的SOPC JTAG 口连接起来,万用下载区右下角的电源开关拨到SOPC下载的一边2、JPLED1短路帽右插,JPLED的短路帽全部上插。
3、请将JP103的短路帽全部插上,,打开实验箱电源。
四、实验代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY fulladder ISPORT(A,B,C1 :IN STD_LOGIC;CH,SUM : OUT STD_LOGIC);END ENTITY fulladder;ARCHITECTURE ADO OF fulladder isSIGNAL AB :STD_LOGIC;BEGINSUM<=A XOR B XOR C1;AB<=A XOR B;CH<=(A AND B) OR (AB AND C1);END ARCHITECTURE ADO;一位全加器波形如下:图4-1四位加法器波形如下:图4-2五、实验仿真过程SW1,SW2,SW3对应a,b,Cl;D101,D102分别对应sum和Ch,当结果为0时彩色LED灯熄灭,当结果为1时彩灯点亮,改变SW1,SW2,SW3的输入状态,观察实验结果。
4 位加法器原理图设计

实验二 4 位加法器原理图设计一、实验目的1、进一步掌握 Quartus Ⅱ原理图输入设计法。
2、通过4位加法器的设计,掌握原理图输入法中的层次化设计。
二、实验原理So=a xor b; co=a and b;图 2-1 半加器原理图图 2-2 1位全加器原理图图 2-3 4 位加法器原理图4 位加法器(如图 2-3)是以 1 位全加器作为基本硬件,由 4 个 1 位全加器串行构成,1位全加器又可以由两个1位的半加器和一个或门连接而成(如图 2-2),而1位半加器可以由若干门电路组成(如图 2-1)。
三、实验内容本次实验使用 Altera FPGA 的开发工具 Quartus Ⅱ,利用原理图输入设计方法设计一个 4位加法器,取实验板上的 8 位按键的高 4 位与低 4 位分别作为 4 位加数与被加数,其中 8 个 LED 取 5 位作为结果输出,LED2~LED5 作为 4 位相加之和的输出结果,LED1作为两数高 4 位相加的进位 (LED 亮,表示低电平“0”, LED 灭,表示高电平“1”)四、实验步骤1、打开QUARTUS II软件,新建一个工程adder4bit。
2、建完工程之后,再新建一个Block Diagram/Schematic File。
在原理图编辑窗口绘制如图 2-1 的半加器原理图。
点击 File ->Save,将已设计好的图文件取名为:h_adder,并存在此目录内。
3、将 h_adder 设置成顶层实体。
在诸多文件打开的状态下,选中 h_adder.bdf为当前文件。
点击 Project → Set as Top-Level Entity。
4、编译。
如果发现有错,排除错误后再次编译。
直到编译通过就可以进行波形仿真了。
5、时序仿真。
建立波形文件,设置波形参量,再保存(注意: QuartusⅡ在波形仿真时,只支持一个与工程名同名的波形文件,所以在对多个文件进行波形仿真时,对波形文件都取工程名进行保存,后缀名为.vwf;若确实想保留多个波形文件,则可以分别命名,想对哪个波形文件进行仿真时,点击Processing->simulation Tool,在Simulation input中输入待仿真的波形文件即可,如图2-4所示) ,最后运行波形仿真。
数字逻辑4位二进制加法器实验

实验2 4位二进制加法器的设计2.1 实验目的进一步熟悉Quartus Ⅱ的基本操作方法,并利用原理图输入设计方法设计简单组合电路,掌握层次化设计的方法,通过4位全加器的设计掌握利用EDA 工具进行电子系统设计的流程。
2.2 原理提示一个4位二进制加法器可以由4个全加器构成,各全加器之间的进位以串行方式实现,即将低位的进位输出CO 与相邻的高一位全加器的进位位Ci 相连,最低进位位接“0”。
实验原理图如下。
2.3实验内容采用Quartus Ⅱ基于图形的设计方法,在实验1的基础上,按层次化结构实现4位全加器的设计。
完成原理图输入、编译、进行波形仿真验证。
(仿真时要对所有输入、输出端进行)。
2.4实验步骤(1) 为本项设计任务建立工程。
启动Quartus Ⅱ,新建一个工程,有关操作如下图。
将实验1中已设计好的原理图文件fualladd.bdf 拷贝到D:\0501\exp2下。
在实验1中fualladd.bdf 是顶层设计文件,而在本实验中,fualladd.bdf 将作为底层设计文件使用。
∑C i C o ∑C i C o ∑C i C o a 0b 0a 1b 1a 2b 2a 3b 3s 0s 1s 2s 3c o ∑C i C o 0建立本工程的顶层设计。
点击“File/New”→“Block Diagram/Schematic File”→“OK”,将Block1.dbf 另存为add4. dbf。
add4. dbf是本工程的顶层设计文件。
(2)点击“File / Open…”将fualladd.bdf 文件打开。
(3)将fualladd.bdf制作成一个符号块,以便在add4. dbf中调用。
点击“File / Create/Update / Create Symble Files For Currenf Fils”,弹出对话框(文件名一栏应出现fualladd.bsf),点击“保存”。
EDA实验四 四位全加器设计

物理与电子工程学院实验报告(2020----2021学年第 1学期)课程名称:EDA技术实验实验名称:四位全加器设计专业班级:学号:姓名:实验时间:2020年11月4日(第十周)注:报告内容根据具体实验课程或实验项目的要求确定,一般包括实验目的、实验仪器、原理摘要、数据记录及结果分析等。
如纸张不够请自行加纸。
一、实验目的:通过实验让学生熟悉Quartus Ⅱ的VHDL 文本设计流程全过程,掌握组合逻辑电路的文本输入设计法,通过对设计电路的仿真和硬件验证,让学生进一步了解加法器的功能。
二、实验内容1. 编写1位全加器full_add1的VHDL 源程序,并进行编译。
2. 利用元件例化语句编写4位全加器full_adder4的VHDL 源程序,并进行编 译和仿真。
3. 锁定引脚,建议选择电路模式1:键1输入4位加数,键2输入4位被加数, 键8输入Cin ,数码管5显示相加和,D8显示进位CO 。
4.编程下载与硬件验证。
三、实验条件1、开发软件: QuartusII 9.0。
2、实验设备:GW48-PK2++型 EDA 实验开发系统3、拟用芯片:EP1C6Q240C8N 。
四、实验设计1、系统的原理框图4位全加器可看作4个1位全加器串行构成,具体连接方法如下图所示:图3-1 由1位全加器构成4位全加器连接示意图b sb sb sb sB 3 A 3 B 2 AS 3 C O S 22、VHDL源程序3、管脚锁定信号名实验箱位置锁定目标器件引脚(EP1C6Q240)Cin键8PIN_173a[0...3]键1PIN_233、234、235、236 b[0...3]键2PIN_237、238、239、240co D8PIN_160S[0...3]数码管5PIN_13、14、15、16备注验证设备:GW48-PK2实验开发系统五、实验结果及总结1、系统时序仿真情况2、硬件验证情况3、实验心得通过这次实验我掌握了组合逻辑电路的文本输入法,了解了加法器的功能写到了先通过一位加法器,扩展到四位加法器,在老师的帮助下收获良多。
4位全加器

实验一用原理图输入法设计4位全加器一、实验目的1)熟悉利用Quartus II 的原理图输入方法设计简单组合电路;2)掌握层次化设计的方法;3)并通过一个4位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
二、实验内容1)完成半加器、全加器和4位全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设计成一个硬件符号入库。
键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光管D2、D1(PIO9/8)分别接sum和cout。
2)建立一个更高的层次的原理图设计,利用以上获得的1位全加器构成的4位全加器,并完成编译、综合、适配、仿真和硬件测试。
建议选择电路模式1(附图F-2):键2、键1输入4位加数:键4、键3输入4位被加数:数码6和数码5显示加和:D8显示进位cout。
三、实验仪器1)计算机及操作系统;2)QuartusII软件;3)编程电缆。
四、实验原理一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出 cout 与相邻的高位加法器的最低进位输入信号 cin 相接。
一个1位全加器可以参考教材介绍的方法来完成。
1位全加器示意图如图1所示。
其中,其中CI为输入进位位,CO为输出进位位,输入A和B分别为加数和被加数。
S为输出和,其功能可用布尔代数式表示为:图1 1位全加器i i i i o i i i ABCABC ABC ABC C ABCC B A C B A C B A S +++=+++= 五、实验步骤1、完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设计成一个硬件符号入库。
键1、键2、键3(PIO0/1/2)分别接ain 、bin 、cin ;发光管D2、D1(PIO9/8)分别接sum 和cout 。
2、建立一个更高层次的原理图设计,利用以上获得的1位全加器构成4位全加器,并完成编译、综合、适配、仿真、和硬件测试。
电子设计(EDA)实验报告(4位二进制加法器)

电子设计(EDA)实验报告(4位二进制加法器)一、实验名称4位二进制加法器二、实验目的掌握输入编辑原理图文件的方法;掌握编译原理图文件的方法;掌握仿真原理图文件的方法;理解Quartus 2 器件编程的方法三、实验环境计算机与Quartus 2 工具软件四、实验原理图、源程序entity halfadd isport(a1,b1:in bit;s1,c1:out bit);end ;architecture a of halfadd isbeginprocess(a1,b1)begins1<=a1 xor b1 after 10ns;c1<=a1 and b1 after 10ns;end process;end a;entity orgate isport(a,b:in bit;o:out bit);end orgate;architecture a of orgate isbegino<=a or b;end a;entity fulladd isport(i1,i2,c_in:in bit;fs,c_out:out bit);end ;architecture a of fulladd issignal temp_s,temp_c1,temp_c2:bit; component halfaddport(a1,b1:in bit;s1,c1:out bit);end component;component orgate port(a,b:in bit;o:out bit);end component;beginu0:halfadd port map(i1,i2,temp_s,temp_c1);u1:halfadd port map(temp_s,c_in,fs,temp_c2); u2:orgate port map(temp_c1,temp_c2,c_out); end a;entity add4 isport(a,b:in bit_vector(3 downto 0);cin:in bit;fs:out bit_vector(3 downto 0);cout:out bit);end add4;architecture a of add4 issignal temp_co0,temp_co1,temp_co2:bit; component fulladd isport(i1,i2,c_in:in bit;fs,c_out:out bit);end component;beginu0:fulladd port map(a(0),b(0),cin,fs(0),temp_co0);u1:fulladd port map(a(1),b(1),temp_co0,fs(1),temp_co1);u2:fulladd port map(a(2),b(2),temp_co1,fs(2),temp_co2);u3:fulladd port map(a(3),b(3),temp_co2,fs(3),cout);end a;五、实验波形图及分析延迟12.08ns。
EDA大作业_Quartus II_简易计算器_实验报告

实验报告——简易计算器目录:一、实验目的 (1)二、实验任务 (1)三、电路设计及仿真 (2)1. 结构设计图示如下: (2)2. 设计描述 (2)3. 一位全加器: (2)4. 四位全加器: (2)5. 补码器 (3)6. 四位加减器 (4)7. 八位全加器 (5)8. 乘法器 (5)9. 整体电路: (6)四、实验总结 (7)1. 实验收获: (8)2. 实验中出现的问题及解决: (8)一、实验目的1. 学习面向可编程器件(FPGA)的简单数字系统的设计流程。
2. 熟练掌握EDA设计软件Quartus II的原理图输入方式和层次化设计模式。
3. 熟悉实验装置——实验箱。
二、实验任务1. 设计1位全加器,并将其封装成1位全加器模块,仿真验证运算结果;2. 设计4位加/减运算器。
用封装好的1位全加器模块组成成4位加/减运算器。
仿真验证运算结果;3. 以全加器为基础设计一个4位乘法器并封装成乘法器模块,输出显示乘积和正负数标志。
仿真验证运算结果;4. 使用已生成的器件模块为基础设计一个简易计算器,根据控制端的状态,完成加、减、乘法运算,用十进制显示运算结果;用发光二极管显示负数标志。
仿真验证运算结果;即实现如下设计:三、电路设计及仿真1.结构设计图示如下:2.设计描述①利用门电路组合成1位全加器,封装;②调用1位全加器组合4位全加器和4位补码全加器(实现补码和相加),分别封装;③利用门电路实现补码器,封装;(可改进——使用4位全加器实现,见下);④调用4位补码全加器和补码器实现4位加减器;⑤调用4位全加器实现8位全加器,封装;⑥调用8位全加器实现乘法器;⑦译码(二进制码——BCD码);⑧组合4位加减器和乘法器成简易计算器;3.一位全加器:①利用门电路组合而成4位全加器;电路图如下:②将其封装成1位全加器模块。
4.四位全加器:①利用1位全加器模块搭建4位补码全加器(实现补码后相加),电路如下:② 将其封装成4位补码全加器模块。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.系统电路架构
2.练习使用试验箱
3.VHDL语言入门
EDA软件开发平台161
——Quartus II
1.设计一个四位的全加器falladder
考虑到低位过来的进位(半加器halfadder不需要考虑低位的进位)半加器:S=A⊕B C=AB
(半加器的电路)
见下图
全加器:S=A⊕B⊕CI C=AB+BC+AC
(全加器的真值表)
见下图
注意工程文件名不能以数字开头且不能以下划线结尾
将底层文件生成为顶层文件
将半加器创造为符号图元
由此可以添加所设置的符合元作为库文件
添置原件(半加器作为独立元件在Device Design Files 里添加)
此时半加器可以作为独立的原件作为下一层的电路设计的独立元。
将一位全加器设置为单元,为下面的四位全加器做准备
调用四个一位全加器,作为四位全加器的原件来设计四位全加器
完成四位全加器的制作
也可将输入输出端口改为总线形式:
输入端口a[3..0]、b[3..0] 相对应的节点分别为a0 a1 a2 a3; 输出端口sum[3..0] sum0 sum1 sum2 sum3;
连接好电路图,现在开始进行仿真
首先将四位全加器置顶
进行仿真
总结:
Project:add4bit.qpf
半加器halfadder.bdf→全加器fallfadder.bdf→四位全加器add4bit.bdf→完成设计在编译的过程中要将其设置为顶层文件。