实验六:加法器的使用

实验六:加法器的使用
实验六:加法器的使用

实验六:加法器的使用

1.实验目的

1) 熟悉加法器的工作原理与逻辑功能;

2) 掌握加法器的使用。

2.理论准备

1)二进制并行加法器是一种能并行产生两个二进制数算术和的逻辑部件,按其进位方式的不同可分为串行进位和超前进位二进制并行加法器;

2)串行进位二进制并行加法器是由全加器级联而成的。其特点是:被加数和加数的各位能同时并行到达各位的输入端,而各位全加器的进位输入则是按照由低位向高位逐级串行传递的,各进位形成一个进位链。由于每一位相加的和都与本位进位输入有关,所以,最高位必须等到各低位全部相加完成并送来进位信号之后才能产生运算结果。显然,这种加法器运算速度较慢,而且位数越多,速度就越低;

3)为了提高加法器的运算速度,必须设法减小或去除由于进位信号逐级传送所花的时间,使各位的进位直接由加数和被加数来决定,而不需依赖低位进位。根据这一思想设计的加法器称为超前进位(又称先行进位)二进制并行加法器。超前进位4位二进制并行加法器有74283。

3.实验内容

用4位并行加法器(74283)设计一个可以做加法和减法的电路。当控制信号M=0时,将两个无符号的4位二进制数相加,当M=1时它将两个无符号数相减。

4.设计过程

1)输入:a[4..1]为被加数(或被减数,b[4..1]为加数(或减数),a[4..1]和b[4..1]为4位二进制数,控制信号M,当M=0时,电路实现加法运算,即执行a[4..1]+b[4..1],当M=1时,电路实现减法运算,即执行a[4..1]-b[4..1]。减法采用补码运算。

2)用一个4位二进制并行加法器(74283)和4个异或门实现上述逻辑功能。将4位二进制a[4..1]直接加到并行加法器的A4、A3、A2和A1输入端,4位二进制b[4..1]通过异或门加到并行加法器的B4、B3、B2和B1输入端,并将功能变量M作为异或门的另一个输入且同时加到并行加法器的CIN进位输入端。

3)当M=0时,CIN=0,b[4..1]⊕M= b[4..1]⊕0= b[4..1],加法器实现a[4..1]+b[4..1];当M=1时,CIN=1,b[4..1]⊕M= b[4..1]⊕1 = b[4..1]’,加法器实现a[4..1]+b[4..1]’+1,即a[4..1]-b[4..1]。

4)根据真值表和逻辑函数画逻辑图。根据上式可以画出如图一所示的逻辑图。

图一4位并行加法器(74283)设计一个可以做加法和减法器逻辑图

5.实验结果

1) 4位并行加法器(74283)设计一个可以做加法和减法器逻辑图仿真后,波形图如图二所示。

图二4位并行加法器(74283)设计一个可以做加法和减法器仿真波形图

2)4位并行加法器(74283)设计一个可以做加法和减法器逻辑图仿真后,波形图展开如图三所示。

图三4位并行加法器(74283)设计一个可以做加法和减法器仿真波形图展开

实验一半加器的设计

实验一半加器设计 一、实验目的 1、了解和学习Quartus II 5.1 软件设计平台。 2、了解EDA的设计过程。 3、通过实例,学习和掌握Quartus II 5.1 平台下的图形输入法 4、学习和掌握半加器的工作和设计原理。 二、实验仪器 PC机,操作系统为Windows2000/XP,本课程所用系统均为WindowsXp下同),Quartus II 5.1 设计平台。 三、实验原理 加法器是构成算术运算器的基本单元,有来自低位的进位将两个1位二进制数相力口,称为半加。实现半加运算的电路叫做半加器。 按照二进制加法运算规则可以列出如表1-1所示的半加器真值表。其中A、B是两个加数,S是相加的和,CO是相加高位的进位。将S、CO和A、B的关系写成逻 辑表达式如下: S 二AB AB = A: B CO 二AB 四、实验步骤 1、启动Quartus II 5.1 :在Windows操作系统下,单击"开始”,选择"程序”,再选择"altera ”选项下的"Quartus II 5.1 ”命令。 2、新建工程:在File菜单中选择New Project Wizard …,弹出对话框如图1-1所示

图1 — 1 在这个对话框中,第一行是需要你指定项目保存的路径,支持含中文字符的路径,第二行是 需要你为这个项目取一个名称,第三行是需要你为这个项目的顶层实体取个名称,如实验不 需要使用芯片,这三个设定好后,点击“ finish ”。(如何使用芯片及各参数设定将在实验 3 中讲到)出现如下界面

在File 菜单中选择New,出现一个对话框如图 1 — 2 图1 — 2 选择 Block Diaqram/Schematic File ,然后点击 "OK ”。 ft QuBEtus TK - £:7>uuiiKn!x mJ 5D 3i E x/tafi/|Krii/ 3/d D ? - -£Bl?i£kl .MFj tils £di L £LM * frajiiri,占■■LfriaAB tiaLi [lain Ukl? □ GS ? 筍而訂 T 旦才?曙涉C ?轿峙fe ? 0 IkCLTJ^ dm AI .TO 'i. SyriE-Hi/i Pltionti^j k /i B I-A J "Vt'-mmy 扎 CiifcdiWkniW 扎 Eiot 人行WM J Nfrlrtfl? p 暑讣1 F4t IN IK TiRii Fl EH. "V |础 1■■中■ | Mb 图1 — 3 4、 保存文件:选菜单File'Save ,在弹出的Save As 对话窗口中,指定存放文件类型、 文件夹和文件名。这一步也可以放在图形设计完成后进行。 5、 原理图设计输入: (1 )元器件符号放置 通过Edit->lnsert Symbol 插入元器件或点击图板左侧的快捷键 卜' I Symbol,或双击图板 3 、新建文件 \ l±

实验一-加法器的设计与实现讲解

实验项目二:简单计算器设计与实现基本要求: 1. 能够实现加减运算 2. 能够实现乘法运算 扩展要求: 1.能够实现除法运算 一、实验目的 利用原件例化语句完成一个8位加法器的设计。 二、实验环境 Quartus II 开发系统 三、实验内容 1、掌握层次化设计的方法; 2、掌握一位全加器工作原理; 3、掌握用VHDL文本输入法设计电子线路的详细流程; 4、掌握元件例化语句用法; 5、熟悉软硬件设计验证方法。 四、实验过程 设计思想: 8位二进制加法器可以由8个全加器通过级联的方式构成。根据全加器级联的原理,用VHDL设计一个8位二进制数的加法器,可以先设计一个一位全加器,然后利用一位全加器采用元件例化的方式实现加法器。 实验步骤: 1、设计一个全加器 新建工程,建立源文件,输入VHDL设计文件,如下图所示:

完成设计文件输入后,保存文件,对文件进行编译、仿真,以下是仿真结果,如图所示: 由图可知仿真结果正确。 2、元件例化 把VHDL设计文件转为原理图中使用的元件。在文件菜单File中选择Creat/Update选项,单击Create Symbol File for Current File 选项,系统自动生成相应的元件标号。 重复新建文件的操作,选择Block Diagram/Schmatic File 选项,新建一个原理图文件,在添加元件列表中可以看到自动生成的元件,选择full_adder这个元件添加到原理图中,如下图所示:

3、完成顶层图的设计 用生成的元件标号,完成顶层图的设计。这里有两种方法,一种是直接用原理图设计,根据原理图设计工具的使用方法,完成顶层文件的设计,这个方法比较复杂,所以这里选择另一种方法,通过VHDL设计文件。 继续建立源文件,输入VHDL设计文件,如下图所示: 依照上述步骤,保存文件,对文件进行编译、仿真,以下是仿真结果,如图所示:

PLD设计实例

第四章PLD设计实例 本章中,我们将应用VHDL语言和电路原理图,在Altera公司的MAX+PLUS II软件平台上实现一些PLD设计实例。实例中所用的芯片是Altera公司可编程逻辑器件EPF10K10LC84-3,并将每一设计结果下载到杭州众和电子技术开发有限公司开发的EDA 实验开发系统上进行验证和演示。 4.1数字显示译码器 一.设计要求: 当每输入一脉冲信号时,数码管就显示一随脉冲信号递增的十六进制数,从数字1开始直至数字F。 二.设计方法: 此电路的设计框图如图4-1a所示。当低频的脉冲信号输入计数器后,七段译码器将计数器的输出译为相应的十六进制数,并由数码管显示出来。设计时,底层的计数器、译码器模块可由VHDL语言来实现;顶层的设计则可直接采用原理图输入法(图4-1b)。 图4-1a 数字显示译码器的设计框图 三.源程序和原理图:

四位二进制加法计数器cnt4b.vhd的VHDL源程序

七段译码器decl.vhd的VHDL源程序 图4-1b 数字显示译码器原理图 四.实验板配置: 本实例采用实验板中的第8种结构。时钟信号CLK1采用CLOCK1中的任何一组,CLK2采用CLOCK2中的1024HZ,按键5作为清零控制信号,按键6作为时钟使能信号,译码结果显示在数码管1上。 习题:设计一能递增显示各种不同符号的显示器,工作方式同此实例。 4.28位二进制并行加法器 一.设计要求: 当外加时钟信号的上升沿到达时,能实现8位二进制数并行相加,并输出和及进位信号。 二.设计方法: 多位加法器的构成有两种方式:并行和串行。并行加法器是一种超前进位加法逻辑电路,每位的进位只由加数和被加数决定,而与低位的进位无关,因而运算速度较快;串行加法器则是将全加器级联构成多位加法器,虽然电路比较简单,但运算速度较慢。并行加法器通常比串行级联加法器占用更多的资源,随着位数的增加,相同位数的并行加法器与串行加法器的容量差快速增大。因此,在工程中使用加法器时,要在速度和容量之间寻找平衡。

实验五全加器的设计与应用

实验五全加器的设计及应用 一、实验目的 (1)进一步加深组和电路的设计方法。 (2)会用真值表设计半加器和全加器电路,验证其逻辑功能。 (3)掌握用数据选择器和译码器设计全加器的方法。 二、预习要求 (1)根据表5-1利用与非门设计半加器电路。 (2)根据表5-2利用异或门及与非门设计全加器电路。 三、实验器材 (1)实验仪器:数字电路实验箱、万用表; (2)实验器件:74LS04、74LS08、74LS20、74LS32、74LS86、74LS138、74LS153; 四、实验原理 1.半加器及全加器 电子数字计算机最基本的任务之一就是进行算术运算,在机器中的四则运算——加、减、乘、除都是分解成加法运算进行的,因此加法器便成了计算机中最基本的运算单元。 (1)半加器 只考虑了两个加数本身,而没有考虑由低位来的进位(或者把低位来的进位看成0),称为半加,完成半加功能的电路为半加器。框图如图5-1所示。一位半加器的真值表如表5-1所示。 表5-1 半加器真值表

1位半加器S C i A i B i 和数向高位进位 加数被加数 图5-1 半加器框图 由真值表写逻辑表达式: ? ? ?=⊕=+=i i i i i i i i i i B A C B A B A B A S '' 画出逻辑图,如图5-2所示: (a )逻辑图 (b )逻辑符号 图5-2 半加器 (2)全加器 能进行加数、被加数和低位来的进位信号相加,称为全加,完成全加功能的电路为全加器。根据求和结果给出该位的进位信号。即一位全加器有3个输入端:i A (被加数)、i B (加数)、1-i C (低位向本位的进位);2个输出端:i S (和数)、i C (向高位的进位)。 下面给出了用基本门电路实现全加器的设计过程。 1)列出真值表,如表5-2所示。 表5-2 全加器真值表 从表5-2中看出,全加器中包含着半加器,当01=-i C 时,不考虑低位来的进位,就是半加器。而在全加器中1-i C 是个变量,其值可为0或1。 2)画出i S 、i C 的卡诺图,如图5-3所示。 半加器 全加器

数电实验报告1.2-一位减法器、一位加法器

<熟悉QuartusII和Verilog HDL数字逻辑电路设计基础环境> 实验报告 学生姓名:李旭文超周 班级学号:11自动化1138033 1138019 指导老师:潘秀琴

<实验报告内容> 一、实验名称:学习QurtusII基本功能和使用方法,完成一位减法器、一位 加法器的原理图输入和文本输入、编译校验及功能仿真。 二、实验学时:4学时 三、实验目的:熟悉Quartus II基本功能和使用方法,掌握原理图输入、文本输入的步骤。 四、实验内容:完成一位加法器、一位减法器的设计输入并进行仿真输出。 五、实验原理:数字逻辑电路中各种门电路的功能和使用方法 六、实验步骤: 1.了解quartusII的基本功能使用; 2.设计输入:首先设计出逻辑电路,然后将所设计的数字逻辑电路以某种方式输入到计算机中,QuartusII有原理图输入和文本(代码)输入两种输入模式。3.设计编译校验:编译连接好的输入图形。 七、实验结果: 1.加法器:A.半加器 原理图: 文本:

波形图: B.一位全加器全加器: 原理图: 文本输入:

波形图: 2.减法器:原理图: 文本输入:

波形图: 八、心得体会:这是使用这个软件的第二次实验对于软件的使用已经比较熟练能够很快连接好电路进行试验 九、附录:<程序代码> 1.加法器: A.半加器 module adder(a,b,s,co); input a,b; output s,co; and X1(a,b); xor Y1(a,b); endmodule B.一位全加器 module onebit_fulladd(a,b,ci,sum,cout); input a,b,ci; output sum,cout; wire sum_temp,c_1,c_2,c_3; xor xor1(sum_temp,a,b);

计组-加法器实验报告

半加器、全加器、串行进位加法器以及超前进位加法器 一、实验原理 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.波形稳定之前出现上下波动,应该与“竞争冒险”出现的情况类似,门的延迟和路径 的不同导致了信号变化时到达的时间有先有后,因此在最终结果形成前出现了脉冲尖峰和低谷;另外也可能部分原因由于电路结构优化的不到位所致

EDA FPGA设计实例 四位加法器(含源程序)

EDA FPGA 四位加法器设计说明:程序使用原件例化语句编写。 半加器程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY bjq IS PORT(A,B:IN STD_LOGIC; Y,Co:OUT STD_LOGIC); END bjq; ARCHITECTURE bjqbehv OF bjq IS SIGNAL c,d:STD_LOGIC; BEGIN c<=A OR B; d<=A NAND B; Co<=NOT d; Y<=c AND d; END bjqbehv; 全加器程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY qjq IS

PORT(Ci,A,B:IN STD_LOGIC; S,Co:OUT STD_LOGIC); END qjq; ARCHITECTURE qjqbehv OF qjq IS BEGIN S<=A XOR B XOR Ci; Co<=(A AND B) OR (A AND Ci) OR (B AND Ci); END qjqbehv; 加法器例化程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY jfq4 IS PORT(A,B:IN STD_LOGIC_VECTOR(3 DOWNTO 0); y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); Co:OUT STD_LOGIC); END jfq4; ARCHITECTURE jfq4behv OF jfq4 IS COMPONENT qjq PORT(Ci,A,B:IN STD_LOGIC; S,Co:OUT STD_LOGIC); END COMPONENT; COMPONENT bjq PORT(A,B:IN STD_LOGIC; Y,Co:OUT STD_LOGIC); END COMPONENT; SIGNAL C0,C1,C2:STD_LOGIC; BEGIN u1:bjq PORT MAP(A(0),B(0),Y(0),C0); u2:qjq PORT MAP(C0,A(1),B(1),Y(1),C1); u3:qjq PORT MAP(C1,A(2),B(2),Y(2),C2); u4:qjq PORT MAP(C2,A(3),B(3),Y(3),Co); END ARCHITECTURE jfq4behv; 兄弟加qq 352995783,技术交流。 暮落 2011年12月2日

数电实验报告半加全加器

实验二 半加/减器与全加/减器 一、 实验目的: (1) 掌握全加器和半加器的逻辑功能。 (2) 熟悉集成加法器的使用方法。 (3) 了解算术运算电路的结构。 二、 实验设备: 1、 74LS00 (二输入端四与非门) 2、 74LS86 (二输入端四异或门) 3、 数字电路实验箱、导线若干。 Ver 4B 4A 4¥ 3B 3A 3Y 1A IB !Y 2A 2B 2Y GND (74LS86引脚图) 三、 实验原理: 两个二进制数相加,叫做半加,实现半加操作的电路,称为半加器。 A 表示 被加数,B 表示加数,S 表示半加和,Co 表示向高位的进位。 全加器能进行加数、被加数和低位来的信号相加,并给出该位的进位信号以 及和。 四、 实验内容: 用74LS00和74LS86实现半加器、全加器的逻辑电路功能。 (一)半加器、半减器 M=0寸实现半加,M=1时实现半减,真值表如下: (74LS00引脚 )

功能M A B S C 半加00000 00110 01010 01101 半减10000 10111 11010 11100 —s +/- ——co M (半加器图形符号) 2、 ⑴S真值表: 00011110 00110 11001 A ⑵C真值表: 00011110 00000 10101 C 二B(A二M)

(二)全加器、全减器 S CO C^BC i-1 ?(M 十 A )(B 十 C ) 、实验结果 半加器: S 二 AB AB = A 二 B C =B (A 二 M ) 全加器: S = A 二 B - C i-1 G 二GM C 2M CI B +/一

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.对设计进行全编译,锁定引脚,然后分别进行功能与时序仿真,验证全加器的逻辑功能。其初始值、功能仿真波形和时序仿真波形分别如下所示

数字逻辑与数字系统应用案例、实例

数字逻辑与数字系统 (1)多路彩灯控制器的设计 一、实验目的 1.进一步掌握数字电路课程所学的理论知识。 2.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。 3.了解数字系统设计的基本思想和方法,学会科学分析和解决问题。 4.培养认真严谨的工作作风和实事求是的工作态度。 5.作为课程实验与毕业设计的过度,课程设计为两者提供了一个桥梁。二、任务和要求 实现彩灯控制的方法很多,如EPROM编程、RAM编程、单板机、单片机等,都可以组成大型彩灯控制系统。因为本次实习要求设计的彩灯路数较少,且花型变换较为简单,故采用移位寄存器型彩灯控制电路。 (1)彩灯控制器设计要求 设计一个8路移存型彩灯控制器,要求: 1. 彩灯实现快慢两种节拍的变换; 2. 8路彩灯能演示三种花型(花型自拟); 3. 彩灯用发光二极管LED模拟; 4. 选做:用EPROM实现8路彩灯控制器,要求同上面的三点。 (2)课程设计的总体要求 1.设计电路实现题目要求; 2.电路在功能相当的情况下设计越简单越好;

3. 注意布线,要直角连接,选最短路径,不要相互交叉; 4. 注意用电安全,所加电压不能太高,以免烧坏芯片和面包板。 三、设计方案 (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;

数电实验内容

实验一组合逻辑电路的设计 一、实验目的 1、掌握组合逻辑电路的设计和测试方法。 2、掌握半加器、全加器的逻辑功能。 3、通过功能验证锻炼解决实际问题的能力。 二、实验主要仪器设备 1、万用表 2、集成芯片:74LS00、74LS08 三、实验原理 1、设计组合逻辑电路的一般步骤:设计要求→逻辑状态表→逻辑表达式→简化逻辑表 达式→逻辑图。 通常,设计组合逻辑电路按下述步骤进行。其流程图如。 (1)列真值表。设计的要求一般是用文字来描述的。设计者很难由文字描述的逻辑命题直接写出逻辑函数表达式。由于真值表在四种逻辑函数表示方法中,表示逻辑功能最为直观,故设计的第一步为列真值表。首先,对命题的因果关系进行分析,“因”为输入,“果”为输出,即“因”为逻辑变量,“果”为逻辑函数。其次,对逻辑变量赋值,即用逻辑0和逻辑1分别表示两种不同状态。最后,对命题的逻辑关系进行分析,确定有几个输入,几个输出,按逻辑关系列出真值表。 (2)由真值表写出逻辑函数表达式。 (3)对逻辑函数进行化简。若由真值表写出的逻辑函数表达式不最简,应利用公式法或卡诺图法进行逻辑函数化简,得出最简式。如果对所用器件有要求,还需将最简式转换成相应的形式。 (4)按最简式画出逻辑电路图。 图3.4.1 组合逻辑电路设计流程图 2、用74LS00和74LS86组成半加器电路。要求按设计要求步骤进行,直到测试电路逻 辑功能符合设计要求为止。 3、用74LS00和74LS86组成全加器电路。要求按设计要求步骤进行,直到测试电路逻 辑功能符合设计要求为止。 四、预习要求 1、复习组合逻辑电路的设计方法。 2、熟悉本实验所用各种集成电路的型号及引脚号。 3、根据实验内容所给定的设计命题要求,按设计步骤写出真值表、输出函数表达式并

加法器实验报告

加法器实验报告 篇一:加法器实验报告 实验 __一__ 【实验名称】 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下进行工程开发、调试和仿真。

加法器实验报告

实验三加法器的设计与仿真 一、实验目的 熟悉quartus ⅱ仿真软件的基本操作,用逻辑图和vhdl语言设计加法器并验证。 二、实验内容 1、熟悉quartus ⅱ软件的基本操作,了解各种设计输入方法(原理图设计、文本设计、 波形设计) 2、用逻辑图和vhdl语言设计全加器并进行仿真验证; 3、用设计好的全加器组成串行加法器并进行仿真验证; 4、用逻辑图设计4位先行进位全加器并进行仿真验证; 三、实验原理 1. 全加器 全加器英文名称为full-adder,是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。 用途:实现一位全加操作逻辑图 真值表 第 1 页共 7 页 利用与或门设计的全加器,它只能做一位的加法,先预想好它的功能,写出真值表,就可以根据这些来设计电路了。 2.四位串行加法器 逻辑图 利用全加器的组合实现4位串行加法器,全加器只能对一位进行操作,将每一位的结果传给下一位,就可以实现4位的加法器。 3.74283:4位先行进位全加器(4-bit full adder) 利用74283芯片实现的4位先行进位全加器比前两者功能更完善,它可以实现进位功能,这个自己设计难度比较大,可以参照74283的功能表加深对它的理解, 第 2 页共 7 页 按照如下的逻辑图实现进位全加器。 逻辑框图 逻辑功能表 注:1、输入信号和输出信号采用两位对折列表,节省表格占用的空间,如:[a1/a3]对应的列取值相同,结果和值[σ1/σ3]对应的运算是σ1=a1+b1和σ3=a3+b3。请自行验证一下。 2、c2是低两位相加产生的半进位,c4是高两位相加后产生的进位输出,c0是低位级加法器向本级加法器的进位输入。 四、实验方法与步骤 实验方法: 第 3 页共 7 页 采用基于fpga进行数字逻辑电路设计的方法。 采用的软件工具是quartusii软件仿真平台,采用的硬件平台是altera epf10k20ti144_4的fpga试验箱。 实验步骤: ? 全加器 1、编写源代码。打开quartusⅱ软件平台,点击file中得new建立一个文件。编写的文件 名与实体名一致,点击file/save as以“.vhd”为扩展名存盘文件。vhdl设计源代码

加法器的基本原理实验报告

一、实验目的 1、了解加法器的基本原理。掌握组合逻辑电路在Quartus Ⅱ中的图形输入方法及文本输入方法。 2、学习和掌握半加器、全加器的工作和设计原理 3、熟悉EDA工具Quartus II和Modelsim的使用,能够熟练运用Vrilog HDL语言在Quartus II下进 行工程开发、调试和仿真。 4、掌握半加器设计方法 5、掌握全加器的工作原理和使用方法 二、实验内容 1、建立一个Project。 2、图形输入设计:要求用VHDL结构描述的方法设计一个半加器 3、进行编译,修改错误。 4、建立一个波形文件。(根据真值表) 5、对该VHDL程序进行功能仿真和时序仿真Simulation 三、实验步骤 1、启动QuartusⅡ 2、建立新工程NEW PROJECT 3、设定项目保存路径\项目名称\顶层实体名称 4、建立新文件Blok Diagram/Schematic File 5、保存文件FILE /SA VE 6、原理图设计输入 元件符号放置通过EDIT_>SYMBOL 插入元件或点击图标 元件复制 元件移动 元件转动 元件删除 管脚命名PIN_NAME 元件之间连线(直接连接,引线连接) 7、保存原理图 8 、编译:顶层文件设置,PROJECT_>Set as Top_Level 开始编译processing_>Start Compilation 编译有两种:全编译包括分析与综合(Analysis&Synthesis)、适配(Fitter)、编程(assembler)时序分析(Classical Timing Analysis)4个环节,而这4个环节各自对应相应菜单命令,可单独发布执行也可以分步执行

设计示例432位先行进位加法器的设计

设计示例4:32位先行进位加法器的设计 1、功能概述: 先行进位加法器是对普通的全加器进行改良而设计成的并行加法器,主要是针对普通全加器串联时互相进位产生的延迟进行了改良。超前进位加法器是通过增加了一个不是十分复杂的逻辑电路来做到这点的。 设二进制加法器第i位为A i,B i,输出为S i,进位输入为C i,进位输出为C i+1,则有:S i=A i⊕B i⊕C i (1-1) C i+1 =A i * B i+ A i *C i+ B i*C i =A i * B i+(A i+B i)* C i(1-2) 令G i = A i * B i , P i = A i+B i,则C i+1= G i+ P i *C i 当A i和B i都为1时,G i = 1,产生进位C i+1 = 1 当A i和B i有一个为1时,P i = 1,传递进位C i+1= C i 因此G i定义为进位产生信号,P i定义为进位传递信号。G i的优先级比P i高,也就是说:当G i = 1时(当然此时也有P i = 1),无条件产生进位,而不管C i是多少;当G i=0而P i=1时,进位输出为C i,跟C i之前的逻辑有关。 下面推导4位超前进位加法器。设4位加数和被加数为A和B,进位输入为C in,进位输出为C out,对于第i位的进位产生G i = A i·B i ,进位传递P i=A i+B i , i=0,1,2,3。于是这各级进位输出,递归的展开Ci,有: C0 = C in C1=G0 + P0·C0 C2=G1 + P1·C1 = G1 + P1·G0 + P1·P0?C0 C3=G2 + P2·C2 = G2 + P2·G1 + P2·P1·G0 + P2·P1·P0·C0 C4=G3 + P3·C3 = G3 + P3·G2 + P3·P2·G1 + P3·P2·P1·G0 + P3·P2·P1·P0·C0 (1-3) C out=C4 由此可以看出,各级的进位彼此独立产生,只与输入数据Ai、Bi和Cin有关,将各级间的进位级联传播给去掉了,因此减小了进位产生的延迟。每个等式与只有三级延迟的电路对应,第一级延迟对应进位产生信号和进位传递信号,后两级延迟对应上面的积之和。实现上述逻辑表达式(1-3)的电路称为超前进位部件(Carry Lookahead Unit),也称为CLA 部件。通过这种进位方式实现的加法器称为超前进位加法器。因为各个进位是并行产生的,所以是一种并行进位加法器。 从公式(1-3)可知,更多位数的CLA部件只会增加逻辑门的输入端个数,而不会增加门的级数,因此,如果采用超前进位方式实现更多位的加法器,从理论上讲,门延迟不变。但是由于CLA部件中连线数量和输入端个数的增多,使得电路中需要具有大驱动信号和大扇入门,这会大大增加门的延迟,起不到提高电路性能的作用。因此更多位数的加

实验一:8位全加器

实验一:8位全加器 一:8位全加器的源程序: module add8(SUM,cout,A,B,cin); output[7:0] SUM; output cout; input[7:0] A,B; input cin; assign {cout,SUM}=A+B+cin; endmodule 二:8位全加器的测试代码: `timescale 1ns/1ns module add8_tp; reg[7:0] A,B; reg cin; wire[7:0] SUM; wire cout; parameter DEL Y = 100; add8 AD1(SUM,cout,A,B,cin); initial begin A= 8'd0; B= 8'd0; cin=1'b0; #DELY A= 8'd100; B= 8'd200; cin=1'b1; #DELY A= 8'd200; B= 8'd88; #DELY A= 8'd210; B= 8'd18; cin=1'b0; #DELY A= 8'd12; B= 8'd12; #DELY A= 8'd100;B= 8'd154; #DELYA= 8'd255; B= 8'd255; cin=1'b0; #DELY $finish; end initial $monitor($time,,,"%d + %d + %b = {%b, %d}",A,B,cin,cout,SUM); endmodule 三:Transcript显示结果: # Loading work.add8_tp # Loading work.add8 # ** Warning: (vsim-3009) [TSCALE] - Module 'add8' does not have a `timescale directive in effect, but previous modules do. # Region: /add8_tp/AD1 add wave sim:/add8_tp/* run # 0 0 + 0 + 0 = {0, 0} run

加法器及差分放大器项目实验报告

加法器及差分放大器项目实验报告 一、项目内容和要求 (一)、加法器 1、任务目的: (1)掌握运算放大器线性电路的设计方法; (2)理解运算放大器的工作原理; (3)掌握应用仿真软件对运算放大器进行仿真分析的方法。 2、任务内容: 2.1 设计一个反相加法器电路,技术指标如下: (1)电路指标 运算关系:)25(21i i O U U U +-=。 输入阻抗Ω≥Ω≥K R K R i i 5,521。 (2)设计条件 电源电压Ec=±5V ; 负载阻抗Ω=K R L 1.5 (3)测试项目 A :输入信号V U V U i i 5.0,5.021±=±=,测试4种组合下的输出电压; B :输入信号V KHz U V U i i 1.0,1,5.021为正弦波±=信号,测试两种输入组合情况下的输出电 压波形。 C :输入信号V U i 01=,改变2i U 的幅度,测量该加法器的动态范围。 D :输入信号V U i 01=,V U i 1,2为正弦波,改变正弦波的频率,从1kHz 逐渐增加,步长为 2kHz ,测量该加法器的幅频特性。 2.2 设计一个同相加法器电路,技术指标如下: (1)电路指标 运算关系:21i i O U U U +=。 (2)设计条件 电源电压Ec=±5V ; 负载阻抗Ω=K R L 1.5 (3)测试项目 A :输入信号V U V U i i 1,121±=±=,测试4种组合下的输出电压; B :输入信号V KHz U V U i i 1,1,121为正弦波±=信号,测试两种输入组合情况下的输出电压 波形。 (二)、差分放大器 1、任务目的: (1)掌握运算放大器线性电路的设计方法; (2)理解运算放大器的工作原理; (3)掌握应用仿真软件对运算放大器进行仿真分析的方法。 2、任务内容 2.1 设计一个基本运放差分放大器电路,技术指标如下: (1)电路指标 运算关系:)(521i i O U U U --=。 输入阻抗Ω≥Ω≥K R K R i i 5,521。 (2)设计条件

EDA设计实例

EDA设计实例 1、设计内容:四位加法器。 2、设计目的:了解原理图的设计方法。 3、系统总体设计:A1、A2、A 4、A 5、A 6、A 7、A 8、A9为八个二进制输入端,A3为一个低位进位输入端,T1、T2、T3、T4为四位和输出端,T5为高位进位输出

端。 4、原理图设计: 5、VHDL程序设计 Ⅰ、编辑和输入设计文件 ⑴、新建一个文件夹。文件夹取名为ADD4,保存在D盘中。 ⑵、输入源程序。打开Quartus Ⅱ,选择File→New命令。在New窗口中的选择原理图文件编辑输入项Block Diagram/Schematic File,单击OK按钮后将打开原理图编辑窗口。 ⑶、建立一个初始原理图。再编辑窗口中的任何一个位置上右击鼠标,将出现快捷菜单,选择其中的输入元件项Insert→Symbol,或者直接双击原理图编辑窗口,弹出输入元件的对话框。在左下的Name栏输入输入引脚符号input。然后单击symbol窗口的OK按钮,即可将原件调入原理图编辑窗口。 ⑷、创建原理图文件为顶层设计的工程。然后将此文件s_add.bdf设定为工程。 ⑸、绘制四位加法器原理图。创建工程后即进入了工程管理窗口,设工程名为s_add。双击左侧的工程名,再次进入原理图编辑窗口。双击原理图编辑窗口任何位置,再次弹出输入元件对话框。分别在Name栏输入元件名为and2、xor、和输出引脚output。并用拖动的方法接好电路。然后分别在input和output引脚的PIN NAME上双击使其变成黑色,再用键盘分别输入各引脚名,最后作为本项工程的顶层电路原理设计。完成设计,并将四位加法器封装成一个元件,以便在更高层设计中调用。 ⑹、测试四位加法器。

实验六:加法器的使用

实验六:加法器的使用 1.实验目的 1) 熟悉加法器的工作原理与逻辑功能; 2) 掌握加法器的使用。 2.理论准备 1)二进制并行加法器是一种能并行产生两个二进制数算术和的逻辑部件,按其进位方式的不同可分为串行进位和超前进位二进制并行加法器; 2)串行进位二进制并行加法器是由全加器级联而成的。其特点是:被加数和加数的各位能同时并行到达各位的输入端,而各位全加器的进位输入则是按照由低位向高位逐级串行传递的,各进位形成一个进位链。由于每一位相加的和都与本位进位输入有关,所以,最高位必须等到各低位全部相加完成并送来进位信号之后才能产生运算结果。显然,这种加法器运算速度较慢,而且位数越多,速度就越低; 3)为了提高加法器的运算速度,必须设法减小或去除由于进位信号逐级传送所花的时间,使各位的进位直接由加数和被加数来决定,而不需依赖低位进位。根据这一思想设计的加法器称为超前进位(又称先行进位)二进制并行加法器。超前进位4位二进制并行加法器有74283。 3.实验内容 用4位并行加法器(74283)设计一个可以做加法和减法的电路。当控制信号M=0时,将两个无符号的4位二进制数相加,当M=1时它将两个无符号数相减。 4.设计过程 1)输入:a[4..1]为被加数(或被减数,b[4..1]为加数(或减数),a[4..1]和b[4..1]为4位二进制数,控制信号M,当M=0时,电路实现加法运算,即执行a[4..1]+b[4..1],当M=1时,电路实现减法运算,即执行a[4..1]-b[4..1]。减法采用补码运算。 2)用一个4位二进制并行加法器(74283)和4个异或门实现上述逻辑功能。将4位二进制a[4..1]直接加到并行加法器的A4、A3、A2和A1输入端,4位二进制b[4..1]通过异或门加到并行加法器的B4、B3、B2和B1输入端,并将功能变量M作为异或门的另一个输入且同时加到并行加法器的CIN进位输入端。 3)当M=0时,CIN=0,b[4..1]⊕M= b[4..1]⊕0= b[4..1],加法器实现a[4..1]+b[4..1];当M=1时,CIN=1,b[4..1]⊕M= b[4..1]⊕1 = b[4..1]’,加法器实现a[4..1]+b[4..1]’+1,即a[4..1]-b[4..1]。 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=,和3+2=,并用数码管显示电路。 可得图四真值表: 加数二进制 码被加数二进 制数码 二进制的和十进制的和进位 0010 0011 0101 5 0 0100 0110 1010 10 0 0111 1001 0000 16 1 图四真值表 实验结果:数码管显示电路图如下