当前位置:文档之家› 电子设计(EDA)实验报告(4位二进制加法器)

电子设计(EDA)实验报告(4位二进制加法器)

电子设计(EDA)实验报告(4位二进制加法器)
电子设计(EDA)实验报告(4位二进制加法器)

电子设计(EDA)实验报告(4位二进制加法器)

一、实验名称

4位二进制加法器

二、实验目的

掌握输入编辑原理图文件的方法;

掌握编译原理图文件的方法;

掌握仿真原理图文件的方法;理解Quartus 2 器件编程的方法

三、实验环境

计算机与Quartus 2 工具软件

四、实验原理图、源程序

entity halfadd is

port(a1,b1:in bit;

s1,c1:out bit);

end ;

architecture a of halfadd is

begin

process(a1,b1)

begin

s1<=a1 xor b1 after 10ns;

c1<=a1 and b1 after 10ns;

end process;

end a;

entity orgate is

port(a,b:in bit;

o:out bit);

end orgate;

architecture a of orgate is

begin

o<=a or b;

end a;

entity fulladd is

port(i1,i2,c_in:in bit;

fs,c_out:out bit);

end ;

architecture a of fulladd is

signal temp_s,temp_c1,temp_c2:bit; component halfadd

port(a1,b1:in bit;

s1,c1:out bit);

end component;

component orgate port(a,b:in bit;

o:out bit);

end component;

begin

u0: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 is

port(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 is

signal temp_co0,temp_co1,temp_co2:bit; component fulladd is

port(i1,i2,c_in:in bit;

fs,c_out:out bit);

end component;

begin

u0: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

实验一四位串行进位加法器的设计实验报告

实验一四位串行进位加法器的设计 一、实验目的 1.理解一位全加器的工作原理 2.掌握串行进位加法器的逻辑原理 3.进一步熟悉Quartus软件的使用,了解设计的全过程, 二、实验容 1.采用VHDL语言设计四位串行进位的加法器 2.采用画原理图的方法设计四位串行进位加法器 三、实验步骤 1、使用VHDL语言设计 1.打开File—>New Project Wizard输入文件名adder4保存在D 盘,打开File—>New—>VHDL File,从模版中选择库的说明,use 语句的说明,实体的说明,结构体的说明,编写VHDL代码,然后保存、编译。打开File—>New—>Other File—>Vector Waveform File,查找引脚,从Edit中选择End Time 输入40、ns 保存。从Assignments—>Settings—>Simulator Settings —>Functional 然后Processing—>Generate Functional Simnlation Netlist —>确定。选择Start Simulation保存最后的波形图,打开File —>close关闭工程。 底层文件: LIBRARY ieee;

USE ieee.std_logic_1164.ALL; ENTITY fadder IS PORT ( a, b,cin : IN STD_LOGIC; s, co : OUT STD_LOGIC ); END fadder; ARCHITECTURE arc1 OF fadder IS BEGIN s<=a xor b xor cin; co<=((a xor b)and cin)or(a and b); END arc1; 顶层文件: LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY adder4 IS PORT ( c0: IN STD_LOGIC; a,b : IN STD_LOGIC_VECTOR(3 DOWNTO 0); s : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

4位全加器实验报告

四位全加器 11微电子黄跃21 【实验目的】 采用modelsim集成开发环境,利用verilog硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四位进位加法器。 【实验内容】 加法器是数字系统中的基本逻辑器件。多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。 实现多位二进制数相加的电路称为加法器,它能解决二进制中1+1=10的功能(当然还有 0+0、0+1、1+0). 【实验原理】

表2 全加器逻辑功能真值表 图4 全加器方框图 图5 全加器原理图 多位全加器连接可以是逐位进位,也可以是超前进位。逐位进位也称串行进位,其逻辑电路简单,但速度也较低。 四位全加器 如图9所示,四位全加器是由半加器和一位全加器组建而成: 图9 四位全加器原理图 【实验步骤】 (1)建立新工程项目: 打开modelsim软件,进入集成开发环境,点击File→New project建立一

个工程项目adder_4bit。 建立文本编辑文件: 点击File→New在该项目下新建Verilog源程序文件 并且输入源程序。 (2)编译和仿真工程项目: 在verilog主页面下,选择Compile— Compile All或点击工具栏上的按钮启动编译,直到project出现status栏全勾,即可进行仿真。 选择simulate - start simulate或点击工具栏上的按钮开始仿真,在跳出来的 start simulate框中选择work-test_adder_4bit测试模块,同时撤销Enable Optimisim前的勾,之后选择ok。 在sim-default框内右击选择test_adder_4bit,选择Add Wave,然后选择simulate-run-runall,观察波形,得出结论,仿真结束。 四位全加器 1、原理图设计 如图9所示,四位全加器是由半加器和一位全加器组建而成: 图9 四位全加器原理图 【仿真和测试结果】 下图为四位全加器的仿真图:

加法器实验报告文档2篇

加法器实验报告文档2篇 Adder experiment report document 编订:JinTai College

加法器实验报告文档2篇 小泰温馨提示:实验报告是把实验的目的、方法、过程、结果等记录下来,经过整理,写成的书面汇报。本文档根据实验报告内容要求展开说明,具有实践指导意义,便于学习和使用,本文下载后内容可随意修改调整及打印。 本文简要目录如下:【下载该文档后使用Word打开,按住键盘Ctrl键且鼠标单击目录内容即可跳转到对应篇章】 1、篇章1:加法器实验报告文档 2、篇章2:加法器的基本原理实验报告文档 篇章1:加法器实验报告文档 【实验名称】 【目的与要求】 1.掌握1位全加器的设计 2.学会1位加法器的扩展【实验内容】 1.设计1位全加器

2.将1位全加器扩展为4位全加器 3.使4位的全加器能做加减法运算 【操作步骤】 1.1位全加器的设计 (1)写出1位全加器的真值表 (2)根据真值表写出表达式并化简 (3)画出逻辑电路 (4)用quartusII进行功能仿真,检验逻辑电路是否正确,将仿真波形截图并粘贴于此 (5)如果电路设计正确,将该电路进行封装以用于下一个环节 2.将1位全加器扩展为4位全加器 (1)用1位全加器扩展为4位的全加器,画出电路图 (2)分别用两个4位补码的正数和负数验证加法器的正确性(注意这两 个数之和必须在4位补码的数的范围内,这两个数包括符号在内共4位),用quartusII进行功能仿真并对仿真结果进行截图。

3.将4位的全加器改进为可进行4位加法和减法的运算器 (1)在4位加法器的基础上,对电路进行修改,使该电路不仅能进行加 法运算而且还能进行减法运算。画出该电路 (2)分别用两个4位补码的正数和负数验证该电路的正确性(注意两个 数之和必须在4位补码的数的范围内),用quartusII 进行功能仿真并对仿真结果进行截图。 【附录】 篇章2:加法器的基本原理实验报告文档【按住Ctrl键点此返回目录】 一、实验目的 1、了解加法器的基本原理。掌握组合逻辑电路在Quartus Ⅱ中的图形输入方法及文本输入方法。 2、学习和掌握半加器、全加器的工作和设计原理

4位全加器实验报告.doc

四位全加器 11微电子黄跃1117426021 【实验目的】 采用modelsim集成开发环境,利用verilog硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四位进位加法器。 【实验内容】 加法器是数字系统中的基本逻辑器件。多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。 实现多位二进制数相加的电路称为加法器,它能解决二进制中1+1=10的功能(当然还有 0+0、0+1、1+0). 【实验原理】 全加器 除本位两个数相加外,还要加上从低位来的进位数,称为全加器。图4为全 加器的方框图。图5全加器原理图。被加数A i 、加数B i 从低位向本位进位C i-1 作 为电路的输入,全加和S i 与向高位的进位C i 作为电路的输出。能实现全加运算 功能的电路称为全加电路。全加器的逻辑功能真值表如表2中所列。 信号输入端信号输出端 A i B i C i S i C i 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

表2 全加器逻辑功能真值表 图4 全加器方框图 图5 全加器原理图 多位全加器连接可以是逐位进位,也可以是超前进位。逐位进位也称串行进位,其逻辑电路简单,但速度也较低。 四位全加器 如图9所示,四位全加器是由半加器和一位全加器组建而成: 图9 四位全加器原理图 【实验步骤】 (1)建立新工程项目: 打开modelsim软件,进入集成开发环境,点击File→New project建立一

计组-加法器实验报告

半加器、全加器、串行进位加法器以及超前进位加法器 一、实验原理 1.一位半加器 A和B异或产生和Sum,与产生进位C 2.一位全加器 将一位半加器集成封装为halfadder元件,使用两个半加器构成一位的全加器 3.4位串行进位加法器 将一位全加器集成封装为Fulladder元件,使用四个构成串行进位加法器

4.超前进位加法器(4位) ⑴AddBlock 产生并行进位链中的ti(即Cthis)和di(即Cpass),以及本位结果Sum ⑵进位链(Cmaker) 四位一组并行进位链,假设与或非门的级延迟时间为1.5ty,与非门的延迟时间为1ty,在di和ti产生之后,只需2.5ty就可产生所有全部进位

⑶超前进位加法器 将以上二者结合起来即可完成,A和B各位作为各个AddBlock的输入,低一位的进位Ci-1作为本位AddBlock的C-1的输入。各个AddBlock输出的C_this和C_pass作为对应的Cmaker的thisi和passi的输入。

二、实验器材 QuartusII仿真软件,实验箱 三、实验结果 1.串行进位加法器结果 2.超前进位加法器结果

四、实验结果分析 1.实验仿真结果显示串行加法器比超前进位加法器快,部分原因应该是电路结构优化 不到位。另外由于计算的位数比较少,超前进位加法链结构较复杂,所以优势没体现出来,反倒运作的更慢一点。当位数增加的时候,超前进位加法器会比串行的更快。 2.波形稳定之前出现上下波动,应该与“竞争冒险”出现的情况类似,门的延迟和路径 的不同导致了信号变化时到达的时间有先有后,因此在最终结果形成前出现了脉冲尖峰和低谷;另外也可能部分原因由于电路结构优化的不到位所致

实验一 4位全加器的设计

实验一4位全加器的设计 一、实验目的: 1 熟悉QuartusⅡ与ModelSim的使用; 2 学会使用文本输入方式和原理图输入方式进行工程设计; 3 分别使用数据流、行为和结构化描述方法进行四位全加器的设计; 4 理解RTL视图和Technology Map视图的区别; 5 掌握简单的testbench文件的编写。 二、实验原理: 一个4位全加器可以由4个一位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的进位输入信号cin相接。 三、实验内容: 1.QuartusII软件的熟悉 熟悉QuartusⅡ环境下原理图的设计方法和流程,可参考课本第4章的内容,重点掌握层次化的设计方法。 2.设计1位全加器原理图 设计的原理图如下所示:

VHDL源程序如下(行为描述):-- Quartus II VHDL Template -- Unsigned Adder library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity f_add is port ( a : in std_logic; b : in std_logic; ci : in std_logic; y : out std_logic; co : out std_logic ); end entity; architecture rtl of f_add is begin (co,y)<=('0',a)+('0',b)+('0',ci); end rtl;

八位加法器设计实验报告

实验四:8位加法器设计实验 1.实验目的:熟悉利用quartus原理图输入方法设计简单组合电路,掌握层次化设计方法。 2.实验原理:一个八位加法器可以由八个全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。 3.实验任务:完成半加器,全加器,八位加法器设计,使用例化语句,并将其设计成一个原件符号入库,做好程序设计,编译,程序仿真。 1)编译成功的半加器程序: module h_adder(a,b,so,co); input a,b; output so,co; assign so=a^b; assign co=a&b; endmodule 2)编译成功的全加器程序: module f_adder(ain,bin,cin,cout,sum); output cout,sum;input ain,bin,cin; wire net1,net2,net3; h_adder u1(ain,bin,net1,net2); h_adder u2(.a(net1),.so(sum),.b(cin),.co(net3));

or u3(cout,net2,net3); endmodule 3)编译成功的八位加法器程序: module f_adder8(ain,bin,cin,cout,sum); output [7:0]sum; output cout;input [7:0]ain,bin;input cin; wire cout0, cout1, cout2 ,cout3, cout4,cout5,cout6; f_adder u0(.ain(ain[0]),.bin(bin[0]),.cin(cin),.sum(sum[0]) ,.cout(cout0)); f_adder u1(.ain(ain[1]),.bin(bin[1]),.cin(cout0),.sum(sum[1 ]),.cout(cout1)); f_adder u2(.ain(ain[2]),.bin(bin[2]),.cin(cout1),.sum(sum[2 ]),.cout(cout2)); f_adder u3(.ain(ain[3]),.bin(bin[3]),.cin(cout2),.sum(sum[3 ]),.cout(cout3)); f_adder u4(.ain(ain[4]),.bin(bin[4]),.cin(cout3),.sum(sum[4

FPGA一位全加器设计实验报告

题目:1位全加器的设计 一.实验目的 1.熟悉QUARTUSII软件的使用; 2.熟悉实验硬件平台的使用; 3.掌握利用层次结构描述法设计电路。 二.实验原理 由于一位全加器可由两个一位半加器与一个或门构成,首先设计半加器电路,将其打包为半加器模块;然后在顶层调用半加器模块组成全加器电路;最后将全加器电路编译下载到实验箱,其中ain,bin,cin信号可采用实 验箱上SW0,SW1,SW2键作为输入,并将输 入的信号连接到红色LED管 LEDR0,LEDR1,LEDR2上便于观察,sum,cout 信号采用绿色发光二极管LEDG0,LEDG1来 显示。 三.实验步骤 1.在QUARTUSII软件下创建一工程,工程名为full_adder,芯片名为EP2C35F672C6; 2.新建Verilog语言文件,输入如下半加器Verilog语言源程序; module half_adder(a,b,s,co); input a,b; output s,co; wire s,co; assign co=a & b; assign s=a ^ b; Endmodule 3.保存半加器程序为,进行功能仿真、时序仿真,验证设计的正确性。 其初始值、功能仿真波形和时序仿真波形分别如下所示

4.选择菜单File→Create/Update→Create Symbol Files for current file,创建半加器模块; 5.新建一原理图文件,在原理图中调用半加器、或门模块和输入,输出引脚,按照图1所示连接电路。并将输入ain,bin,cin连接到FPGA的输出端,便于观察。完成后另保存full_adder。 电路图如下 6.对设计进行全编译,锁定引脚,然后分别进行功能与时序仿真,验证全加器的逻辑功能。其初始值、功能仿真波形和时序仿真波形分别如下所示

CMOS数字集成电路设计_八位加法器实验报告

CMOS数字集成电路设计课程设计报告 学院:****** 专业:****** 班级:****** 姓名:Wang Ke qin 指导老师:****** 学号:****** 日期:2012-5-30

目录 一、设计要求 (1) 二、设计思路 (1) 三、电路设计与验证 (2) (一)1位全加器的电路设计与验证 (2) 1)原理图设计 (2) 2)生成符号图 (2) 3)建立测试激励源 (2) 4)测试电路 (3) 5)波形仿真 (4) (二)4位全加器的电路设计与验证 (4) 1)原理图设计 (4) 2)生成符号图 (5) 3)建立测试激励源 (5) 4)测试电路 (6) 5)波形仿真 (6) (三)8位全加器的电路设计与验证 (7) 1)原理图设计 (7) 2)生成符号图 (7) 3)测试激励源 (8) 4)测试电路 (8) 5)波形仿真 (9) 6)电路参数 (11) 四、版图设计与验证 (13) (一)1位全加器的版图设计与验证 (13) 1)1位全加器的版图设计 (13) 2)1位全加器的DRC规则验证 (14) 3)1位全加器的LVS验证 (14) 4)错误及解决办法 (14) (二)4位全加器的版图设计与验证 (15) 1)4位全加器的版图设计 (15) 2)4位全加器的DRC规则验证 (16) 3)4位全加器的LVS验证 (16) 4)错误及解决办法 (16) (三)8位全加器的版图设计与验证 (17) 1)8位全加器的版图设计 (17) 2)8位全加器的DRC规则验证 (17) 3)8位全加器的LVS验证 (18) 4)错误及解决办法 (18) 五、设计总结 (18)

加法器实验报告标准范本

编号:QC/RE-KA5914 加法器实验报告标准范本 The new situation in operation, especially the emergency, makes the information open and transparent by reporting the details, and then forms a closer cooperative relationship. (工作汇报示范文本) 编订:________________________ 审批:________________________ 工作单位:________________________

加法器实验报告标准范本 使用指南:本报告文件适合在为规范管理,让所有人员增强自身的执行力,避免自身发展与集体的工 作规划相违背,按固定模式形成日常报告进行上交最终实现及时更新进度,快速掌握所需了解情况的 效果。文件可用word任意修改,可根据自己的情况编辑。 篇一:加法器实验报告 实验__一__ 【实验名称】 1位加法器 【目的与要求】 1. 掌握1位全加器的设计 2. 学会1位加法器的扩展 【实验内容】 1. 设计1位全加器 2. 将1位全加器扩展为4位全加器 3. 使4位的全加器能做加减法运算 【操作步骤】

1. 1位全加器的设计 (1)写出1位全加器的真值表 (2)根据真值表写出表达式并化简 (3)画出逻辑电路 (4)用quartusII进行功能仿真,检验逻辑电路是否正确,将仿真波形截图并粘贴于此 (5)如果电路设计正确,将该电路进行封装以用于下一个环节2. 将1位全加器扩展为4位全加器 (1)用1位全加器扩展为4位的全加器,画出电路图 (2)分别用两个4位补码的正数和负数验证加法器的正确性(注意这两 个数之和必须在4位补码的数的范围

数电实验三加法器

实验三一.实验目的 1.掌握全加器的工作原理与逻辑功能。 2.掌握全加器的应用。 二.实验设备及器材 数字电路实验箱稳压电源 74LS00 CD4008B 三.实验原理 全加器是中规模组合逻辑器件,它实现二进制数码的加法运算。 表1 全加器真值表 CD4008B为四位加法器,其逻辑符号如图2,A3、A2、A1、A0和B3、B2、B1、B0为两个四位二进制数,CI为进位输入端,CO为进位输出端。 图2 全加器主要用于数值运算,i位全加器可以实现两个i位二进制数的加法运算。另外,全加器也可以实现组合逻辑函数,如用全加器实现四位二进制数向BCD码的转换。 四.实验内容

1.按照全加器真值表,利用逻辑电平产生电路及逻辑电平指示电路验证CD4008B的逻辑功能,画出测试电路图。 A3、A2、A1、A0和B3、B2、B1、B0为两个四位二进制数:加数和被加数,CIN为进位输入,S3、S2、S1、S0为输出的和,CON为进位输出端。 2.连接 B/BCD码转换电路,验证其实验结果是否与真值表一致。 二进制码转换为BCD码时,9以前即0000—1001,二进制数B和BCD码二者相等。但九以后,即1010—1111,需要给B加6(0110)才能和BCD码在数值上相等。因此利用四位全加器实现转换时,以四位二进制数作为被加数,而加数在四位二进制数为0000—1001时为0000,为1001—1111时为 0110,这样就可实现B/BCD的转换。 图3 B/BCD码转换电路 验证得其实验结果与真值表一致 3.设计电路,完成1位十进制数的相加运算,使实现7+9=?,6+4=?,和

EDA-四位二进制加法器设计实验步骤

作业2:4位加法器设计 (1)任务设计带进位的4位二进制加法器。 (2)要求要考虑低位的进位。进行仿真。用ispLSI1016E-80LJ44实现。 步骤一:打开ispDesign EXPERT,单击file,选择new project,弹出如下创建新项目对话框,建子目录,在“保存在(I)”栏,用鼠标点击▼,任选可用区(盘),如 D:区(盘),用鼠标点击从右数的第三个小图标(新建文件夹),自动生成新建文件夹子目录,起一个项目文件夹名(应为便于你记住的英文或拼音),如liu2009,并用鼠标双击文件夹名。选择 project type:Verilog HDL 。 步骤二:给项目起名(应为便于你记住的英文或拼音,如liu),用鼠标点击保存(S)。选中器件为ispLSI1016E-80LJ44。并用鼠标双击下图第一行,并给项目源文件加标题名如liu蓝条示(如将有多个项目源文件,加标题名时要加以区分,这里只针对一题,为了简单,标题名用 liu)。 图1. 步骤三:点击Source下拉选New,弹出窗口,选择上面左下角的Verilog Module ,设置名称如图所示:

步骤四:在TextEditer中编辑输入Verilog 语言源程序: module liu1(a,b,c1,cout,sum); output cout; output[3:0] sum; input[3:0] a,b; input c1; assign {cout,sum}=a+b+c1; endmodule 步骤五:在Text Editor中点File下拉Save As,将源文件Liu1.v存D盘Liu2009,退出。 选择tools ,synplicity synplify synthesis,点击菜单栏上的“P”,ADD :

四位全加器

《计算机组成原理》 实验报告 题目:四位全加器的设计与实现 1、实验内容 四位全加器的设计与实现。 2、实验目的与要求 利用MAX+plusII实现四位全加器并且验证实验内容。

3、实验环境 MAX+plus II 10.1 4、设计思路分析(包括需求分析、整体设计思路、概要设计) 一个4位全加器可以由4个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。 半加器描述: 5、详细设计 A) 半加器设计: 1)新建一个设计文件,使用原理图设计方法设计。 2)将所需元件全部调入原理图编辑窗,所需元件依次为:input 2个;output 2个;and2 1个;xnor 1个;not 1个。 3)依照下图连接好各元件 4)保存为h-adder将当前设计文件设置成工程文件。 5)编译

B) 一位全加器的实现: 1)一位全加器可以由两个半加器和一个或门连接而成,因而可以根据半加器的电路原理图或真值表写出1位全加器的VHDL描述。. 2)依照以下原理图连接好全加器: 其中有两个原件(h-adder)为刚刚设计好的半加器.其他原件为:input 3个, output 2个, or2 1个. 3)保存为f-adder设置成工程文件并选择目标器件为EPF10K20TC144.4 4)编译 C) 四位全加器的实现 1) 4位全加器可以看做四个1位全加器级联而成,首先采用基本逻辑门设计一位全加器,而后通过多个1位全加器级联实现4位全加器。 2) 依照以下原理图连接好全加器。、

其中有四个元件为一位全加器(f-adder),其余为九个input元件;五个output 元件。、 4)编译通过。 6、实验结果与分析 1)建立波形图进行半加器、一位全加器和四位全加器的波形观察, 2)设定仿真时间为60.0us。 3)运行仿真器得到下面波形图: 半加器:

四位全加器实验报告

《四位全加器》实验报告 题目:___ ____ 学号:___ _____姓名:____ _______ 教师:____ ____

1、实验内容 四位全加器的设计与实现。 2、实验目的与要求 利用MAX+plusII实现四位全加器并且验证实验内容。 3、实验环境 MAX+plus II 10.1 4、设计思路分析(包括需求分析、整体设计思路、概要设计) 一个4位全加器可以由4个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。 半加器描述: 根据半加器真值表可以画出半加器的电路图。 a b so Co 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 5、详细设计 A) 半加器设计: 1)新建一个设计文件,使用原理图设计方法设计。 2)将所需元件全部调入原理图编辑窗,所需元件依次为:input 2个;output 2个;and2 1个;xnor 1个;not 1个。 3)依照下图连接好各元件

4)保存为h-adder将当前设计文件设置成工程文件。 5)编译 B) 一位全加器的实现: 1)一位全加器可以由两个半加器和一个或门连接而成,因而可以根据半加器的电路原理图或真值表写出1位全加器的VHDL描述。. 2)依照以下原理图连接好全加器: 其中有两个原件(h-adder)为刚刚设计好的半加器.其他原件为:input 3个, output 2个, or2 1个. 3)保存为f-adder设置成工程文件并选择目标器件为EPF10K20TC144.4 4)编译 C) 四位全加器的实现 1) 4位全加器可以看做四个1位全加器级联而成,首先采用基本逻辑门设计一位全加器,而后通过多个1位全加器级联实现4位全加器。 2) 依照以下原理图连接好全加器。、

加法器实验报告.doc

加法器实验报告 篇一:加法器实验报告 实验 __一__ 【实验名称】 1位加法器 【目的与要求】 1. 掌握1位全加器的设计 2. 学会1位加法器的扩展 【实验内容】 1. 设计1位全加器 2. 将1位全加器扩展为4位全加器 3. 使4位的全加器能做加减法运算 【操作步骤】 1. 1位全加器的设计 (1)写出1位全加器的真值表 (2)根据真值表写出表达式并化简 (3)画出逻辑电路 (4)用quartusII进行功能仿真,检验逻辑电路是否正确,将仿真波形截图并粘贴于此 (5)如果电路设计正确,将该电路进行封装以用于下一个环节 2. 将1位全加器扩展为4位全加器 (1)用1位全加器扩展为4位的全加器,画出电路图

(2)分别用两个4位补码的正数和负数验证加法器的正确性(注意这两 个数之和必须在4位补码的数的范围内,这两个数包括符号在内共4位),用quartusII进行功能仿真并对仿真结果进行截图。 3. 将4位的全加器改进为可进行4位加法和减法的运算器 (1)在4位加法器的基础上,对电路进行修改,使该电路不仅能进行加 法运算而且还能进行减法运算。画出该电路 (2)分别用两个4位补码的正数和负数验证该电路的正确性(注意两个 数之和必须在4位补码的数的范围内),用quartusII进行功能仿真并对仿真结果进行截图。 【附录】 篇二:加法器的基本原理实验报告 一、实验目的 1、了解加法器的基本原理。掌握组合逻辑电路在Quartus Ⅱ中的图形输入方法及文本输入方法。 2、学习和掌握半加器、全加器的工作和设计原理 3、熟悉EDA工具Quartus II和Modelsim的使用,能够熟练运用Vrilog HDL语言在Quartus II下进行工程开发、调试

四位二进制加法器实验

一、实验目的 1.学习FPGA的设计方法; 2.掌握利用Verilog HDL设计逻辑电路的能力。 二、实验所用组件 Basys2开发板(芯片为XC3S100E,封装为CP132)1套。 三、实验内容 下面是4位二进制数加法器的数据流描述,由于被加数A和加数B 都是4位的,而低位来的进位Cin为1位,所以运算的结果可能为5位,用{Cout,Sum}拼接起来表示。 module adder( input [3:0] A, input [3:0] B, input Cin, output [3:0] SUM, output Cout ); assign {Cout,SUM}=A+B+Cin; Endmodule 四、实验步骤与要求 1.创建一个子目录Lab2,并新建一个工程项目

2.建立一个Verilog HDL文件,将该文件添加到工程项目中并编译整个项目,查看该电路所占用的逻辑单元(Logic Elements,LE)的数量 3.对设计项目进行时序仿真,记录仿真波形图 测试代码如下:

module add4_tb; // Inputs reg [3:0] A; reg [3:0] B; reg Cin; // Outputs wire [3:0] Sum; wire Cout; // Instantiate the Unit Under Test (UUT) add4 uut ( .A(A), .B(B), .Cin(Cin), .Sum(Sum), .Cout(Cout) ); initial begin // Initialize Inputs A<=4'd0;B<=4'd0;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd0;B<=4'd1;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd0;B<=4'd2;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd0;B<=4'd3;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd0;B<=4'd4;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd1;B<=4'd0;Cin=1'b1; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd2;B<=4'd0;Cin=1'b0; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); A<=4'd4;B<=4'd0;Cin=1'b1; #1 $display("A B Cin Sum Cout=%b %b %b %b %b",A,B,Cin,Sum,Cout); end endmodule

EDA VHDL 4位全加器实验报告解析

姓名:车琳班级:通信1101班 学号:0121109320130 实验一用原理图输入法设计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:键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 为输出和,其功能可用布尔代数式表示为: i i i i o i i i ABC ABC ABC ABC C ABC C 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位全加器,并完成编译、综合、适配、仿真、和硬件测试。建议选择电路模式1(附图F-2):键2、键1输入4位加数:键4、键3输入4位被加数:数码6和数码5显示加和:D8显示进位cout 。 1、一位全加器设计输入 1)创建文件。采用File\new 菜单,创建图形文件。 2)添加元件。采用菜单symbol\enter symbol ,在弹出的对话框中选中相应的库与元件,添加元件,构成一位全加器并保存。 2、一位全加器元件的创建 1)对上述文件编译综合仿真。 2)生成元件。 3)采用菜单FILE\CREATE SYMBOL 生成一位全加器元件。

四位全加器实验Verilog

实验四四位全加器 一、实验目的 l. 用组合电路设计4位全加器。 2.了解Verilog HDL语言的行为描述的优点。 二、实验原理 4位全加器工作原理 1)全加器 除本位两个数相加外,还要加上从低位来的进位数,称为全加器。被加数Ai、加数Bi从低位向本位进位Ci-1作为电路的输入,全加和Si与向高位的进位Ci 作为电路的输出。能实现全加运算功能的电路称为全加电路。全加器的逻辑功能真值表如表中所列。 2)1位全加器 一位全加器(FA)的逻辑表达式为:S=A⊕B⊕Cin;Co=AB+BCin+ACin 其中A,B为要相加的数,Cin为进位输入;S为和,Co是进位输出;

这两幅图略微有差别,但最后的结果是一样的。 3)4位全加器 4位全加器可看作4个1位全加器串行构成, 具体连接方法如下图所示: 采用Verilog HDL语言设计该4位全加器,通过主模块调用子模块(1位全加器)的方法来实现。

三、实验步骤

四、实验连线 K1-K4:14-11 K5-K8:18-15 L5-L8:7-10 VIJN:83 L4:6 4KHZ:80 五、心得体会 首先,实现这一段全加器代码并不难,但是由于困惑给的三个时钟输入,没有太懂意思,所以只写了全加器控制LED灯的代码;后来问清楚后,运行全加器代码,有错误,原来是建文件时用的是verilog hdl,我建的是其他类型的;后来还有错,原来是把冒号打成分号;编译成功后,LED不亮,后来发现是硬件老化,换了箱子。这一部分做好后,我准备把控制声音的加上去,本来准备再加一个模块,可是不能有两个顶层块,就对主模块做了补充,用case命令调用不同的状态,因为时间紧迫,所以代码写得比较简单,没有用经典的分频代码。这里附一小段,是我在研究分频控制时看懂的网上的经典分频代码,适合乐曲自动播放等高级的实现,仅供分享 assign preclk=(divider==16383)?1:0;//divider==16383,preclk=1 always @(posedge clk) //基频上升沿触发 begin if(preclk) //preclk=1 divider=origin; else divider=divider+1; end always @(posedge preclk) //调整占空比 begin speaker=~speaker; //2 分频产生方波信号 end 这部分实现了分频功能,其中origin+divider=16384=2^14,这个数根据自己的需要而定。 在这个过程中我明白了: 1)细心,每个步骤不能错; 2)出现问题要仔细排查,软硬件都要; 3)注意reg wire的设定; 4)学到了额外的扩展知识

EDA实验报告4位全加器实验报告

EDA实验报告书 姓名 XXX 学号 XXXXXXX 实验时间 课 题 名 称 全加器 实验目的1.掌握MAX+plusⅡ的使用方法。 2.掌握原理图输入的设计方法。 3.学习利用一位全加器设计多位全加器的方法。 设计要求1.利用MAX+plusⅡ软件进行原理图输入设计一位全加器。 2.进行编译、仿真、测试。 3.在一位全加器的基础上设计四位全加器,进行编译、仿真、测试、观察实验结果。 设计思路计算机中的加法器一般就是全加器,它实现多位带进位加法。 图中的“进位入”Ci-1指的是低位的进 位输入,“进位出”指的是本位的进位输 出。一位全加器的真值表见下表: 1 1 1 1 1 1 - - - - - - ? + ? + ? = ?? + ?? + + ? = i i i i i i i i i i i i i i i i i i i i C B C A B A C C B A C B A C B A C B A S 输入输出 Ci -1 Bi Ai Si Ci 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

设计原理图及源程序 仿真波形图

实验结果 问题讨论1.试比较利用卡诺图直接设计四位全加器和利用一位全加器设计四位全加器这两种方法的优缺点。 答:卡诺图直接设计四位全加器的优点是:没有进行产生逻辑,运算速度快。一位 全加器设计四位全加器是串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。 2.本实验中设计的4位全加器有何缺陷? 答:这种全加器的最大缺点是运算速度慢。在最不利的的情况下,做一次加法运算 需要经过四个全加器的传输延迟时间才能得到稳定可靠的运算结果 教师 评分 教师签名 日期操作成绩报告成绩

数字电路加法器实验报告

竭诚为您提供优质文档/双击可除数字电路加法器实验报告 篇一:数字电路加法器实验报告 中山大学移动信息工程学院本科生实验报告 (20XX学年秋季学期) 课程名称:数字电路实验 任课教师:王军 助教:李正 一、实验题目 Lab9:用3种不同的方法实现4位加法器 1.行为级描述的加法器 2.行波进位加法器 3.超前进位加法器 二、实验目的 1.更加熟练的运用Ise软件进行实验设计和仿真。 2.加深对verilog语言的理解和运用 3.掌握加法器的原理,学会用不同层级实现方法来实现加法器 三、实验内容

1.实验步骤 ?编写文本文件并编译?软件仿真?进行硬件配置2.实验原理 四、实验结果 https://www.doczj.com/doc/d616313866.html,b9:Ise软件进行4位加法器的设计与实现(行为级描述的加法器) 1.1.综合得出的RTL电路图 图一:加法器行为级描述RTL图 如图一所示,用行为级语言对加法器进行描述即可实现四位加法器。 1.2仿真波形图 图二:图一:行为级加法器实现的仿真图 如图二所示,当输入a,b二进制的四位数时,输出y 分别是将四位数相加。cf是最大进位,当a与b相加之后的数大于16,则cf输出为1,其余情况输出为0。例如,当输入为a=1000,b=0111,时,输出相应的y应为1111,cf为0。根据加法运算,上述仿真的结果是正确的。 1.3开发板的实际效果图 下图的左边前四个开关分别对应a输入从高位到低位的四位二进制数,靠近右边的四个开关别对应输入b从高位到低位的四位二进制数。输出对应5个LeD灯,从高位到低位分别为靠近左边从左到右的五个灯。

图一:a=1000,b=0101,y=1101,cf=0效果图 如上图所示,当输入为a=1000和b=0101,相应的输出为0,1101分别对应相应的第2,3,5盏灯亮 图二:a=1000,b=0111,y=1111,cf=0效果图 如上图所示,当输入为a=1000和b=0111,相应的输出为0,1111 分别对应相应的第2,3,4,5盏灯亮 图三:a=1000,b=1000,y=0000,cf=1效果图 如上图所示,当输入为a=1000和b=1000,相应的输出为1,0000 分别对应相应的第1盏灯亮 图四:a=1110,b=1010,y=1000,cf=1效果图 如上图所示,当输入为a=1110和b=1010,相应的输出为1,1000 分别对应相应的第1,2盏灯亮 图五:a=1110,b=1101,y=1011,cf=1效果图 如上图所示,当输入为a=1110和b=1101输出为1,1011 分别对应相应的第1,2,4,5盏灯亮 2.Ise软件进行4位加法器的设计与实现(行波进位加法器)2.1.综合得出的RTL电路图 如上图所示,按照加法器的实验原理,对与相应的进位数c[i],c[i]=a[i]

相关主题
文本预览
相关文档 最新文档