数字电路数选,译码器,全加器实验报告

数字电路数选,译码器,全加器实验报告
数字电路数选,译码器,全加器实验报告

实验课程名称:数字电子技术基础实验 实验项目:数据选择器,译码器&全加器

班级 姓名 学号

指导老师 实验开始时间 2020 年 4 月28 日20时 0 分

第一部分:实验预习报告(包括实验目的、意义,实验基本原理与方法,主要仪器

设备及耗材,实验方案与技术路线等)

一、实验目的

1, 掌握组合逻辑电路的功能测试。

2, 学会组合逻辑电路的设计制作方法。

3,制作一个全加器,能进行加数、被加数、低位来的进位信号三者相加,并根据求和结果分别显示本位和及向高位进位的信号。 4,在仿真软件中用多种方案实现全加器。 二,实验原理与方法

2、由真值表写出逻辑表达式并写出化简过程 (1)S i =A i B i?C i +A i B

?i C i ?+A i B i C i ?+A i B i ?C i = A i (B

i ?C i +B i C i ?)+A i B ?i C i ?+A i B i?C i =A i (B i?⊕C i )+A i (B ?i C i ?+B i?C i ) =A i (B i?⊕C i )+ A i (B i?⊕C i ??????????) =A i ⊕B i?⊕C i

(2)C i+1=A i ?B i C i +A i B i ?C i +A i B i C i ?+A i B i?C i =(A i ?B i +A i B i ?)C i +A i B i (C i ????+C i ) =( A i ⊕B i?)C i +A i B i?

3,在仿真软件中测试真值表。

二输入异或门

二输入与门

二输入或门

两个四输入与非门

选择器,使能端低有效;

A0 A1 A2为地址端 D0 ~D7为输入端 Y 和? Y 为输出端

译码器,使能端ST A 为高有效,?ST B +?ST C 为低有效; A0 A1 A2为地址端; ?Y0 ~ ? Y7为输出端。

第二部分:实验过程记录(可加页)(包括实验原始数据记录,实验现象记录,实验过程发现的问题等)

1,由08,86,32实现的全加器逻辑仿真,并重新测试全加器的逻辑真值表,仿真截图如下

2,由2片151实现的全加器逻辑仿真,并重新测试全加器的逻辑真值表,仿真截图如下

3,由138和20实现的全加器逻辑仿真,并重新测试全加器的逻辑真值表,仿真截图如下

第三部分结果与讨论(可加页)

一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)

将测试表格结果与原理表格对照,验证其正确性;

(1)用08,86,32实现的全加器逻辑仿真时

直接通过逻辑表达式设计电路,利用了74LS08的两个与门,74LS32的一个或门,以及74LS86的两个异或门;通过改变三个输入端A i B i?C i的01值,观察两个指示灯是否会亮,亮为1,灭为0,进而一一验证全加器的真值表,共计8种变化,与对应的原理表格相同,因此,电路设计是正确的。

(2)用2片151实现的全加器逻辑仿真时

利用Si和Ci+1的最小项表达式设计电路,Si=m1+m2+m4+m7, Ci+1=m3+m5+m6+m7;令第一片74LS151的D1 D2 D4 D7这四个端接逻辑1,其余四个端接逻辑0;另一片74LS151的D3 D5 D6 D7这四个端接逻辑1,其余四个端接逻辑0。则第一片输出为Si, 第二片输出为Ci+1,而两片的输入端对应相同。通过改变三个输入端A i B i?C i的01值,观察两个指示灯是否会亮,亮为1,灭为0,进而一一验证全加器的真值表,共计8种变化,与对应的原理表格相同,因此,电路设计是正确的。

(3)由138和20实现的全加器逻辑仿真时

?????????????????,而利用Si和Ci+1的最小项表达式,得出与非表达式为Si=Y1??Y2??Y4??Y?7

?????????????????,利用一片74LS138提供与非门的输入,用两个74LS20的四输入与非门Ci+1=Y3??Y5??Y6??Y?7

提供Si 和Ci+1的输出结果。通过改变三个输入端A i B i?C i的01值,观察两个指示灯是否会亮,亮为1,灭为0,进而一一验证全加器的真值表,共计8种变化,与对应的原理表格相同,因此,电路设计是正确的。

在这部分中,我最初没有将74LS138的G1端接逻辑1,也没有将其G2 G3端接逻辑0,则不管输入如何变化,始终没有输出,最后改正过来,才得以正常输出。

二、小结、建议及体会

1、理论课的知识储备是实验课的基础,因此在每次实验之前都要做好理论课的复习;

2、通过本次实验,我掌握了组合逻辑电路的功能测试方法,例如逻辑笔,或者实验箱上的

三号框,四号框;

3、学会了组合逻辑电路的设计制作方法,认识了74LS08,74LS32,74LS86,74LS20芯片的

内部结构和74LS138,74LS151芯片的工作原理;

4、最主要的是自己独立完成了在仿真软件中用多种方案实现全加器的工作,能进行加数、

被加数、低位来的进位信号三者相加,并根据求和结果分别显示本位和及向高位进位的信号;

5、使用逻辑符号形式而不是芯片让整个电路结构和功能更加地清晰明了,同时也加深了自

己对Multisim软件的熟悉程度;

6、体会到举一反三的延伸性,逻辑表达式,最小项表达式,以及表达式的表换,可以衍生

出很多的设计方法,开拓了自己的思维。

三、思考题

试用两片74LS151和一片00及32(器件越少越好)构成一个5人表决器(没有弃权)同意为1,不同意为0,表决。通过则输出1,不通过则输出为0.(3个或以上同意算通过),试设计出仿真原理图并测真值表验证之。

(1)根据我们已知的原理真值表:

将A作为使能端,B作为最小项前面的系数,而CDE依次为A2 A1 A0的输入端;

将左半边作为第一片151的输入与输出,右半边作为第二片151的输入与输出。

通过列出逻辑表达式,与含有最小项的系数和公式进行对照,得出:

(1)第一片151,A=0为使能端,低有效,正常工作:

D0=D1=D2=D4=0,D3=D5=D6=B, D7= A=1;

(2)第一片151,A=1通过与非门作为使能端,低有效,正常工作:

D0=0,D1=D2=D4=AB=B, D3=D5=D6=D7=A=1。

现在根据我们得出的以上结论,去设计电路图:

采用两片74LS151构成数据选择器,用一个74LS00与非门使得A输入为1时作为第二片151的使能端,用一个74LS32或门将两片151的输出相加作为总输出。

通过改变ABCDE的01输入值,观察指示灯的变化,可得3个或以上输入为1时,指示

灯亮,否则不亮,与原理真值表可以一一对应,因此验证该电路的功能是正确的。

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 四位全加器原理图 【仿真和测试结果】 下图为四位全加器的仿真图:

一位全加器VHDL的设计实验报告

EDA技术及应用实验报告 ——一位全加器VHDL的设计 班级:XXX 姓名:XXX 学号:XXX

一位全加器的VHDL设计 一、实验目的: 1、学习MAX+PLUSⅡ软件的使用,包括软件安装及基本的使用流程。 2、掌握用VHDL设计简单组合电路的方法和详细设计流程。 3、掌握VHDL的层次化设计方法。 二、实验原理: 本实验要用VHDL输入设计方法完成1位全加器的设计。1位全加器可以用两个半加器及一个或门连接构成,因此需要首先完成半加器的VHDL设计。采用VHDL层次化的设计方法,用文本编辑器设计一个半加器,并将其封装成模块,然后在顶层调用半加器模块完成1位全加器的VHDL设计。 三、实验内容和步骤: 1、打开文本编辑器,完成半加器的设计。 2、完成1位半加器的设计输入、目标器件选择、编译。

3、打开文本编辑器,完成或门的设计。 4、完成或门的设计输入、目标器件选择、编译。 5、打开文本编辑器,完成全加器的设计。

6、完成全加器的设计输入、目标器件选择、编译。 7、全加器仿真 8、全加器引脚锁定

四、结果及分析: 该一位加法器是由两个半加器组成,在半加器的基础上,采用元件的调用和例化语句,将元件连接起来,而实现全加器的VHDL编程和整体功能。全加器包含两个半加器和一或门,1位半加器的端口a和b分别是两位相加的二进制输入信号,h是相加和输出信号,c是进位输出信号。构成的全加器中,A,B,C分别是该一位全加器的三个二进制输入端,H是进位端,Ci是相加和输出信号的和,下图是根据试验箱上得出的结果写出的真值表: 信号输入端信号输出端 Ai Bi Ci 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

一位加法器(数电)

《电子技术课程设计报告》题目:一位加法器 学院:工程学院 专业:07级电气工程及其自动化 班级:07级1班23号 姓名:王晓龙 指导教师:李斌李芝兰 2009年12月9 日

目录 1.课程设计目的 (2) 2.课程设计题目描述和要求 (2) 3.1课程设计报告内容 (2) 3.2论述方案的各部分工作原理 (2) 3.3设计方案的图表 (9) 3.4编写设计说明书 (9) 4.总结 (10) 1.课程设计目的 课程设计是培养我们学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随

着科学技术发展的日新日异,数字电子技术已经成为当今计算机应用中重要的基础领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握运用数字电子技术及逻辑电路的开发技术是十分重要的。 (1)了解基本的逻辑门电路。 (1)在实际应用中学会编码器译码器的作用和工作方式。 (1)提高自己的动手动脑能力,将在课堂上学到的知识应用到实际当中。 2.课程设计题目描述和要求 题目:一位加法器 要求:(1)利用基本逻辑门电路和编码器,译码器及计数器完成电路(2)用LED管显示 3.课程设计报告内容 3.1 设计方案的选定与说明; 利用逻辑门电路实现两个二进数相加并求出和的组合线路。键盘输入数字,编码器,逻辑门电路,计数器,译码器驱动器,使其达到一位数加法运算。我设计的数字系统中输入数字,所以需要编码功能的逻辑电路实现编码,因为为一位加法,所以输入为0~9十个按键。通过8421BCD编译,利用基本逻辑门电路实现加法运算,因为没有小数部分运算,无小数点,因此我选用74HC4511译码驱动器连接7段式LED显示管读出结果。 3.2论述方案的各部分工作原理; 编码器部分盘输入逻辑电路就是由编码器组成。图1是用十个按键和门电路组成的8421码编码器,其功能如表1所示,其中S0~S9代表十个按键,即对应十进制数0~9的输入键,它们对应的输出代码正好是8421BCD 码,同时也把它们作为逻辑变量,ABCD 为输出代码(A为最高位),GS为控制使能标志。 对功能表和逻辑电路进行分析,都可得知:①该编码器为输入低电平有效; ②在按下S0~S9中任意一个键时,即输入信号中有一个为有效电平时,GS =1,代表有信号输入,而只有S0~S9均为高电平时GS=0,代表无信号输入,此时的输出代码0000为无效代码。由此解决了前面提出的如何区分两种情况下输出都是全0的问题。优先编码器:允许同时输入两个以上的有效编

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

实验一四位串行进位加法器的设计 一、实验目的 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 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 adder4 IS PORT ( c0: IN STD_LOGIC; a,b : IN STD_LOGIC_VECTOR(3 DOWNTO 0); s : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); c4 : OUT STD_LOGIC );

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.1设计题目:加法运算电路 1.2 设计要求 1.2.1 设计目的 (1) 掌握1位十进制加法运算电路的构成,原理和设计原理; (2)熟悉集成电路的使用方法。 1.2.2 基本要求 (1) 设计键盘以及编码电路; (2) 设计加数寄存器A和被加数寄存器B单元; (3) 实现4bit二进制码加法的BCD调整; (3) 用数码管以十进制形式显示最后运算结果。 1.2.3 发挥部分 (1) 拓展十进制减法; (2) MR存储运算中间值; (3)其他。

2 设计思路 根据此次课程设计的要求,我设计的简单计算器包括两大部分:加法计算部分,减法计算部分。其中加法计算部分由五个部分组成,键盘及编码电路、加数寄存器A和被加数寄存器B、加法运算电路、4bit二进制码加法的BCD调整和译码显示器。减法计算部分和加法计算部分共用同一个键盘,其他部分由反相器,求补逻辑电路以及相应的译码显示器组成。其中有几个难点:如何实现2位十进制和怎样利用寄存器把数据传输到加法器中。 因为经键盘及编码器输出的是2进制数,那么寄存器接受并输出的数据也是2进制数,所以加法器输出的数据应是8421BCD码,使显示装置最终显示十进制数。因为1位十进制数的8421BCD码与二进制数表现形式相同,但2位十进制数的8421BCD码与二进制数不同,所以我设计的加法运算装置是由两个74S283N芯片来实现2位十进制数的输出。原理是让第二个芯片的一个输入端接第一个芯片的输出端,另一个输入端进行对第一个芯片的运算结果进行判断,大于等于10时输入6即2进制数的0110,反之输入0。输出结果即为2位十进制数的8421BCD码。 寄存器的设计是由一个74LS374N芯片和两个74S194N芯片组成的,其中两个74S194N芯片并联后与74LS374N芯片串联。74LS374N芯片的脉冲由键盘的数字键提供,使得按下数字键后该寄存器就存储输入的数字,并通过译码显示器显示。两个74S194N芯片的脉冲分别由键盘的+号和=号提供,分别存储加数与被加数并输入到第一个74S283N芯片中运算。最后通过译码显示器显示运算结果。 当对应数字的开关被按下后,译码器显示数字同时将数字存到寄存器中。然后经过加法运算,对运算结果进行BCD调整,最后显示运算结果。 1 键盘及编码电路:用开关及电阻组成键盘部分,用10-4线BCD优先编码器74147及四个非门组成编码电路,实现将0-9转化成二进制数。 2 加数寄存器A和被加数寄存器B:由4位并行寄存器74LS175实现对数据的存储,用2个4双向模拟开关4066、开关及非门判断是将二进制数存储到加数寄存器A还是被加数寄存器B。 3 加法运算电路:用集成4位超前进位加法器74HC283对加数和被加数进行运算。 4 4bit二进制码加法的BCD 调整:用4位数值比较器74HC85对和进行比较、控制加法器是加0还是加6从而达到调整的目的。 5 译码显示器:将8421BCD码通过译码显示器转化成十进制数并显示出来。

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建立一

八位加法器设计实验报告

实验四: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

利用全加器电路创建四位二进制加法器

一.课程设计的目的: 1、学习并了解MATLAB软件。 2、尝试用Simulink建模。 3、实现对数字电路的防真设计。 4、利用全加器电路创建四位二进制加法器。 二.课程设计题目描述及要求: 利用所学的数字电路的基本知识和MUTLAB软件中Simulink的应用学习,完成对数字电路的仿真设计。用各种各样的组合逻辑电路设计全加器,输出曲线,再利用全加器设计电路创建四位二进制加法器电路图,给出输出。 三.MATLAB软件简介: MATLAB是MathWorks公司于1984年推出的一套高性能的数值计算可视化软件,集数值分析、矩阵运算、信号处理和图形显示于一体。MATLAB是由Matrix 和Laboratory单词的前三个字母组合而成的,其含义是矩阵实验室。 Simulink是MATLAB最重要的组件之一,是实现动态系统建模、仿真的一个集成环境。它支持线性和非线性系统,连续时间、离散时间,或者两者的相结合的仿真,而且系统是多进程的。Simulink是从底层开发的一个完整的仿真环境和图形界面,它把MATLAB的许多功能都设计成一个个直观的功能模块,把需要的功能模块连接起来就可以实现所需要的仿真功能。Simulink仿真应用于数字电路、数字信号处理、通信仿真、电力系统仿真、宇航仿真等领域。由于数字系统中高低电平分别用0和1表示,因此数字电路问题往往可以转化为一个数字上的逻辑问题。MATLAB提供了逻辑运算模块和各种触发器模块,可以方便的进行数字电路的设计和仿真。借助于组合电路仿真常用模块Logic and Bit Operations子库中的Local Operator模块,将其拖到所建的untitled窗口中,然后鼠标左键双击该模块弹出的Block Parameters/Logical Operator对话框,按Operator栏后的黑三角来选择所需要的门电路标识符,如:AND、OR、NAND、NOR、XOR、NOT中的一个,并依次设置所需的输入、输出端子个数,之后按OK 键确定。利用这些基本门电路组成加法器逻辑电路。 四.课程设计的内容: 1、1位全加器的设计。 所谓全加器,就是带进位输入和进位输出的加法器。1位全加器有3个输入,分别是加

实验一1位二进制全加器的设计

龙岩学院实验报告 班级学号姓名同组人 实验日期室温大气压成绩 实验题目:基于原理图输入法的1位二进制全加器的设计 一、实验目的 1、学习、掌握QuartusⅡ开发平台的基本使用。 2、学习基于原理图输入设计法设计数字电路的方法,能用原理图输入设计法 设计1位二进制半加器、1位二进制全加器。 3、学习EDA-V型实验系统的基本使用方法。 二、实验仪器 装有QuartusⅡ软件的计算机一台、EDA系统实验箱、导线若干 三、实验原理 半加器只考虑两个1位二进制数相加,而不考虑低位进位数相加。半加器的逻辑函数 为 式中A和B是两个相加的二进制数,S是半加和,C是向高位的进位数。表1为半加器真值表。 表1 A B C S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 显然,异或门具有半加器求和的功能,与门具有进位功能。 其逻辑图跟逻辑符号如下图:

全加器除了两个1位二进制数相加以外,还与低位向本位的进位数相加。表2为全加器的真值表。 表2 A i B i C I-1 C i S 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 由真值表可得出逻辑函数式 式中,A i 和B i 是两个相加的1为二进制数,C i-1 是由相邻低位送来的进位数, S I 是本位的全加和,C I 是向相邻高位送出的进位数。其逻辑图跟逻辑符号如下图所示: 四、实验内容 1、根据1位二进制半加器、1位二进制全加器的真值表,设计并画出1位二进制半加器的原理框图,由半加器及门电路设计并画出1位二进制全加器的原理框图(最终设计的是1位二进制全加器)。

EDA 1位全加器实验报告

南华大学 船山学院 实验报告 (2009 ~2010 学年度第二学期) 课程名称EDA 实验名称1位全加器 姓名学号200994401 专业计算机科学与 班级01 技术 地点8-212 教师

一、实验目的: 熟悉MAX+plus 10.2的VHDL 文本设计流程全过程 二、实验原理图: ain cout cout ain bin sum cin bin sum cin f_adder or2a f e d u3 u2u1b a c co so B co so B h_adder A h_adder A 三、实验代码: (1)LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY f_adder IS PORT (ain ,bin ,cin : IN STD_LOGIC; cout ,sum : OUT STD_LOGIC ); END ENTITY f_adder; ARCHITECTURE fd1 OF f_adder IS COMPONENT h_adder PORT ( a ,b : IN STD_LOGIC; co ,so : OUT STD_LOGIC); END COMPONENT ; COMPONENT or2a PORT (a ,b : IN STD_LOGIC; c : OUT STD_LOGIC); END COMPONENT ; SIGNAL d ,e ,f : STD_LOGIC; BEGIN u1 : h_adder PORT MAP(a=>ain ,b=>bin ,co=>d ,so=>e); u2 : h_adder PORT MAP(a=>e , b=>cin , co=>f ,so=>sum); u3 : or2a PORT MAP(a=>d , b=>f , c=>cout);

半加器全加器的工作原理和设计方法实验报告[精品文档]

一、实验目的 1、学习和掌握半加器全加器的工作原理和设计方法。 2、熟悉EDA工具Quartus II的使用,能够熟练运用Vrilog HDL语言在 Quartus II下进行工程开发、调试和仿真。 3、掌握组合逻辑电路在Quartus Ⅱ中的图形输入方法及文本输入方法, 掌握层次化设计方法。 4、掌握半加器、全加器采用不同的描述方法。 二、实验内容 1、完成半加器全加器的设计,包括原理图输入,编译、综合、适配、仿真等。并将半加器电路设 置成一个硬件符号入库 2、建立更高层次的原理图设计,利用1位半加器构成1位全加器,并完成编译、综合、适配、仿 真并硬件测试 3、采用图形输入法设计1位加法器分别采用图形输入和文本输入方法,设计全加器 4、实验报告:详细叙述1位全加法器的设计流程,给出各层次的原理图及其对应的仿真波形图, 给出加法器的上时序分析情况,最后给出硬件测试流程和结果。 三、实验步骤 1、建立一个Project。 2、编辑一个VHDL程序,要求用VHDL结构描述的方法设计一个半加器 3、对该VHDL程序进行编译,修改错误。 4、建立一个波形文件。(根据真值表) 5、对该VHDL程序进行功能仿真和时序仿真 四、实验现象 任务1:半加器真值表描述方法 代码如下: 半加器是只考虑两个加数本身,而不考虑来自低位进位的逻辑电路 S=A B+A B CO=AB

代码如下: LIBRARY IEEE; --行为描述半加器 USE IEEE.STD_LOGIC_1164.ALL; ENTITY h_adder IS PORT(a,b:IN STD_LOGIC; so,co:OUT STD_LOGIC); END h_adder; Architecture FH1 OF h_adder IS Signal abc:STD_LOGIC_vector(1 downto 0); Begin abc<=a&b; --并 Process(abc) --进程 begin case abc is WHEN "00"=>SO<='0';CO<='0'; WHEN "01"=>SO<='1';CO<='0'; WHEN "10"=>SO<='1';CO<='0'; WHEN "11"=>SO<='0';CO<='1'; WHEN OTHERS =>NULL; END CASE; END PROCESS; END ARCHITECTURE FH1; 结果如下: 逻辑图

实验一 一位二进制全加器设计实验

南昌大学实验报告 学生姓名: 学 号: 专业班级: 中兴101 实验类型:■ 验证 □ 综合 □设计 □ 创新 实验日期: 2012 9 28 实验成绩: 实验一 一位二进制全加器设计实验 一.实验目的 (1)掌握Quartus II 的VHDL 文本设计和原理图输入方法设计全过程; (2)熟悉简单组合电路的设计,掌握系统仿真,学会分析硬件测试结果; (3) 熟悉设备和软件,掌握实验操作。 二.实验内容与要求 (1)在利用VHDL 编辑程序实现半加器和或门,再利用原理图连接半加器和或门完成全加器的设计,熟悉层次设计概念; (2)给出此项设计的仿真波形; (3)参照实验板1K100的引脚号,选定和锁定引脚,编程下载,进行硬件测试。 三.设计思路 一个1位全加器可以用两个1位半加器及一个或门连接而成。而一个1位半加器可由基本门电路组成。 (1) 半加器设计原理 能对两个1位二进制数进行相加而求得和及进位的逻辑电路称为半加器。或:只考虑两个一位二进制数的相加,而不考虑来自低位进位数的运算电路,称为半加器。图1为半加器原理图。其中:a 、b 分别为被加数与加数,作为电路的输入端;so 为两数相加产生的本位和,它和两数相加产生的向高位的进位co 一起作为电路的输出。 半加器的真值表为 表1 半加器真值表 由真值表可分别写出和数so ,进位数co 的逻辑函数表达式为: b a b a b a so ⊕=+=- - (1) ab co = (2) 图1半加器原理图 (2) 全加器设计原理 除本位两个数相加外,还要加上从低位来的进位数,称为全加器。图2全加器原理图。全加器的真值表如下:

数电实验三加法器

实验三一.实验目的 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 图四真值表 实验结果:数码管显示电路图如下

数电实验报告半加全加器

实验二 半加/减器与全加/减器 一、 实验目的: (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 +/一

8位全加器实验报告

实验1 原理图输入设计8位全加器 一、实验目的: 熟悉利用QuartusⅡ的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个8位全加器的设计把握利用EDA软件进行电子线路设计的详细流程。 二、原理说明: 一个8位全加器可以由8个1位全加器构成,加法器间的进位可以串行方式实现。即将低位加法器的进位输出cout与其相邻的高位加法器的最低进位输入信号cin相接。而一个1位全加器可以按照本章第一节介绍的方法来完成。 三、实验内容: 1:完全按照本章第1节介绍的方法与流程,完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真。 2:建立一个更高的原理图设计层次,利用以上获得的1位全加器构成8位全加器,并完成编译、综合、适配、仿真和硬件测试。 四、实验环境: 计算机、QuartusII软件。 五、实验流程: 实验流程: 根据半加器工作原 理,建立电路并仿 真,并将元件封装。 ↓ 利用半加器构成一位 全加器,建立电路并 仿真,并将元件封 装。 ↓ 利用全加器构成8位全 加器,并完成编译、综 合、适配、仿真。 图1.1 实验流程图

六、实验步骤: 1.根据半加器工作原理建立电路并仿真,并将元件打包。(1)半加器原理图: 图1.2 半加器原理图(2)综合报告: 图1.3 综合报告: (3)功能仿真波形图4: 图1.4 功能仿真波形图

时序仿真波形图: 图1.5 时序仿真波形图 仿真结果分析:sout为和信号,当a=1,b=0或a=0,b=1时,和信号sout为1,否则为0.当a=b=1时,产生进位信号,及cout=1。 (4)时序仿真的延时情况: 图1.6 时序仿真的延时情况 (5)封装元件: 图1.7 元件封装图 2. 利用半加器构成一位全加器,建立电路并仿真,并将元件封装。 (1)全加器原理图如图: 图2.1 全加器原理图

四位数字加法器

数字电路与自动化 课程设计报告设计题目:数字加法显示电路 姓名:刘丽萍 班级:10应用电子技术3 学号:1006020124 小组成员:刘丽萍、陈玉青 设计时间:2011年12月05日~2011年12月25日

目录 一、设计目的------------------------------------------2 二、设计要求------------------------------------------2 三、方案论证与比较---------------------------------2 四、设计原理和各元器件的原理------------------3 五、硬件制作与调试---------------------------------5 六、设计小结------------------------------------------7 七、参考书目------------------------------------------7

数字加法显示电路 一、设计目的 通过设计一个四位加法显示电路,充分了解掌握组合逻辑电路的设计过程,达到以下目的: 1、掌握电路板的焊接技术。 2、掌握基本电路的应用,了解用简单门电路实现控制逻辑的方法。 3、了解了基本电子芯片的功能和使用。 4、实现了理论和实际相结合。 5、进一步学会电路设计与调试。 6、掌握全加器、比较器及译码器设计电路的方法。 二、设计要求 用全加器、比较器、译码器和七段数码管设计一个四位加法显示电路。 要求:输入两个数,使用全加器进行两个的个位十进制相加,通过与比较器比较,如果小于10则正常显示,反而不显示。 完成所设计电路的仿真;数字加法显示电路的焊接的排版、安装和调试;书写设计报告上交电路并进行答辩。 三、方案论证与比较 方案一:

全加器实验报告

全加器设计实验报告 姓名: 班级: 学号:

实验目的: 1.熟悉QuartusⅡ原理图设计流程,学习简单电路的设计方法、输入步骤、层次化步骤。 2.掌握QuartusII的文本输入方式的设计过程,理解VHDL语言的结构级描述方法,学习元件例化语句的设计方法。 实验原理:一位全加器可以用两个半加器及一个或门连接而成。要求使用原理图输入的方法先进行底层半加器设计,再建立上层全加器设计文件,调用半加器和或门符号,连线完成原理图设计。 全加器可以用两个半加器和一个或门连接而成,在半加器描述的基础上,采用COMPONENT语句和PORT MAP语句就可以很容易地编写出描述全加器的程序。 一.原理图 1.半加器 实验步骤 1.打开Quartus Ⅱ软件,选择新建命令,在新建对话框中选择原理图文件编辑输入项,完成新建进入原理图编辑窗口。 2.在原理图编辑窗口任意位置右击鼠标,将出现快捷菜单,选择其中的输入元件项insert symbol,按照所设计的电路,放置器件,排版,连线,完成设计后选择另存为命令,命名为h_adder存放在指定文件夹中。

3.完成半加器的设计后,重复新建命令,开始进行全加器设计,在新建的原理图中,双击鼠标,在弹出的窗口中选择project选项,将之前存入的h_adder元件,放入原理图中。 2.全加器 实验步骤 1.新建工程,在新建的工程中建立VHDL语言编辑文件,在编辑窗口处,输入设计的半加器全加器程序。 2.将设计好程序进行编译,没有错误之后定义全加器五个引脚所对应耳朵硬件电路的引脚号。 3.烧录程序,调试,验证程序是否合理。

二.程序

四位全加器

《计算机组成原理》 实验报告 题目:四位全加器的设计与实现 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)运行仿真器得到下面波形图: 半加器:

实验八全加器的设计分析实验报告

实验八全加器的设计分析实验报告 姓名:孙时佳学号:3110102935 专业:计算机科学与技术 课程名称:逻辑与计算机设计基础实验同组学生姓名:无 实验时间:2012-11-6 实验地点:紫金港东4-509 指导老师:蒋方炎 一、实验目的和要求 1.掌握一位全加器的工作原理和逻辑功能 2.掌握串行进位加法器的工作原理和进位延迟 3.掌握超前进位的工作原理 4.掌握减法器的实现原理 5.了解加法器在CPU中的地位 6.掌握FPGA开发平台进行简单的I/O数据交互 二、实验内容和原理 实验内容: 1.实现16位加减器的调试仿真 2. 16位计算器设计 实验原理: 2.1 一位全加器(FA) 全加器是一个能对一位二进制数及来自低位的进位进行相加,产生本位和及向高位进位的逻辑电路。该电路有3个输入变量,分别是2个加数Ai 和Bi,低位进位输入Ci ,2个输出变量,分别是全加和Si,进位输出Ci+1。 一位全加器的逻辑表达式:Si = Ai⊕Bi⊕Ci 、Ci+1=Ai Bi+BiCi+CiAi 图表1:一位全加器真值表

由一位全加器的输入输出关系,得到电路图: 2.2多位串行进位全加器 多位全加器可由一位全加器将进位串接构成。高位进位生成速度慢,每一位的相加结果都必须等到低一位的进位产生以后才能建立起来,所以位数越多时间越长。 module adder_8bits(A, B, Ci, S, Co); // port and variable declaration adder_1bit A1_1(A[1], B[1], Ci, A1_2(A[2], B[2], Ctemp[1], A1_3(A[3], B[3], Ctemp[2], A1_4(A[4], B[4], Ctemp[3], A1_5(A[5], B[5], Ctemp[4], A1_6(A[6], B[6], Ctemp[5], A1_7(A[7], B[7], Ctemp[6], A1_8(A[8], B[8], Ctemp[7], endmodule module adder_32bits(A, B, Ci, S, Co); // port and variable declaration adder_8bits A8_1(A[ 8: 1], B[ 8: 1], Ci, A8_2(A[16: 9], B[16: 9], Ctemp[1], A8_3(A[24:17], B[24:17], Ctemp[2], A8_4(A[32:25], B[32:25], Ctemp[3], endmodule 图表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) 依照以下原理图连接好全加器。、

相关文档
最新文档