当前位置:文档之家› 4位二进制全加器的设计

4位二进制全加器的设计

4位二进制全加器的设计
4位二进制全加器的设计

4位二进制全加器的设计

摘要

加法器是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。在电子学中,加法器是一种数位电路,其可进行数字的加法计算。在现代的电脑中,加法器存在于算术逻辑单元(ALU)之中。加法器可以用来表示各种数值,如:BCD、加三码,主要的加法器是以二进制作运算。

多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运行速度快;串行进位方式是将全加器级联构成多位加法器。通常,并行加法器比串行加法器的资源占用差距也会越来越大。

我们采用4位二进制并行加法器作为折中选择,所选加法器为4位二进制先行进位的74LS283,它从C0到C4输出的传输延迟很短,只用了几级逻辑来形成和及进位输出,由其构成4位二进制全加器,并用Verilog HDL进行仿真。

关键字

全加器,四位二进制,迭代电路,并行进位,74LS283,Verilog HDL仿真总电路设计

一、硬件电路的设计

该4位二进制全加器以74LS283(图1)为核心,采用先行进位方式,极大地提高了电路运行速度,下面是对4位全加器电路设计的具体分析。

图1

1)全加器(full-adder )

全加器是一种由被加数、加数和来自低位的进位数三者相加的运算器。基本功能是实现二进制加法。

全加器的功能表

输入输出输入输出

逻辑表达式:

CI B A S ⊕⊕=

=AB'CI'+A'BCI'+A'B'CI+ABCI

()AB CI B A CO ++=

其中,如果输入有奇数个1,则S 为1;如果输入有2个或2个以上的1,则

CO=1。实现全加器等式的门级电路图如图2所示,逻辑符号如图3所示.

图2 图3

2)四位二级制加法器 a) 串行进位加法器

四位二进制加法器为4个全加器的级联,每个处理一位。最低有效位的进位输入通常置为0,每个全加器的进位输出连到高一位全加器的进位输入。

CI A B S CO CI A B S CO 0 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1 0 1 1 1 1 0 0 1 0 1 1 1

b )超前进位加法器

为了提高运算速度,必须设法减小或消除由于进位信号逐级传递所消耗的时间,于是制成了超前进位加法器。

优点:与串行进位加法器相比,(特别是位数比较大的时候)超前进位加法器的延迟时间大大缩短了。 缺点:电路比较复杂。

综上所述,由于此处位数为4(比较小),出于简单起见,这里选择串行进位加法器。

b )超前位链结构加法器

)(11

B A

C AB COUT C B A S i i ++=⊕⊕=-- 令i i i B A G = 产生进位 i i i B A P +=产生传输信

四位全加器的进位链逻辑可以表示为如下:

1234123423434440

12312323330

1212220

111C P P P P G P P P G P P G P G C C P P P G P P G P G C C P P G P G C C P G C ++++=+++=++=+=

由上面对加法器的具体分析,下面给出的是4位二进制全加器的部分真值表:

truthtable A3 A2 A1 A0 B3 B2 B1 B0 CI S3 S2 S1 S0 CO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0

1

1

1

1

0 0 1 1 0 0 0 1 1 0 1 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0

0 1 0 1 0 0 0 0 1 0 1 1 0 0

1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 1 1 0 0 1 0 0 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 0 0 1 1 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 1 1 1 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 1 0 1 0 1 0 0 1 1 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 0 0 1 1 1 0 0 0 1 0 0 1 1 0 0 1 0 1 ... ... ... ... ... ... ... ... ... ... ... ... ... ...

下面是74LS283四位二进制全加器的逻辑电路图:

二、软件程序的设计

该设计采用Verilog HDL语言进行仿真,下面是具体的Verilog HDL程序:1位全加器可由两个半加器组成,在半加器的基础上,采用元件调用和例化语句,将件连接起来,而实现全加器的VHDL编程和整体功能。全加器包含了两个半加器和一个或门。在此基础上可设计出四位全加器。

(一)半加器

VHDL语言描述语句为:

so<=a xor b;

co<=a and b

程序设计:

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 bh of h_adder is

begin

so<=a xor b; ――“异或”运算

co<=a and b; ――“与”运算

end bh;

四位全加器VHDL程序代码如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity add4 is

port(cin:in std_logic;

a,b:in std_logic_vector(3 downto 0);

s:out std_logic_vector(3 downto 0);

cout:out std_logic);

end add4;

architecture beh of add4 is

signal sint:std_logic_vector(4 downto 0);

signal aa,bb:std_logic_vector(4 downto 0);

begin

aa<='0' & a(3 downto 0); --4位加数矢量扩为5位,提供进位空间

bb<='0' & b(3 downto 0);

sint<=aa+bb+cin;

s(3 downto 0)<=sint(3 downto 0);

cout<=sint(4);

end beh;

四位全加器VerilogHDL程序代码如下:

module add(A,B,CI,CO,S);

parameter N=4;

input [N:1] A,B;

input CI;

output CO;

output [N:1] S;

assign {CO,S}=A+B+CI;

Endmodule

Verilog HDL仿真结果

图4

结果分析:

由图4可以看出仿真结果与实际的运算结果是相同的。

由仿真程序结果可知,设计的程序完成了四位全加器的功能,因此,该程序正确。

心得体会

通过本次课程设计,我们加深了对所学知识的理解,并对某些知识进行了很好地应用,如全加器,74xx283等。同时,我们也更加强化了自己查阅资料的能力,这有助于提高我们的自学能力,整个过程中我们还有请教其他同学。总之,本次课程设计更加激发了我们的学习欲望,有利于我们后续课程的学习。

参考文献:数字设计-原理与实践(第四版)(美)John F.Wakerly著

数字电子技术基础解题指南唐竞新主编清华大学出版社

电子技术李春茂主编科学技术文献出版社

附录

实验四、 计数器的设计 电子版实验报告

实验四:计数器的设计 实验室:信息楼247 实验台号: 4 日期: 专业班级:机械1205 姓名:陈朝浪学号: 20122947 一、实验目的 1. 通过实验了解二进制加法计数器的工作原理。 2. 掌握任意进制计数器的设计方法。 二、实验内容 (一)用D触发器设计4位异步二进制加法计数器 由D触发器组成计数器。触发器具有0和1两种状态,因此用一个触发器 就可以表示1位二进制数。如果把n个触发器串起来,就可以表示N位二进制 数。(用两个74LS74设计实现) (二)利用74LS161设计实现任意进制的计数器 设计要求:学生以实验台号的个位数作为所设计的任意进制计数器。 先熟悉用1位74LS161设计十进制计数器的方法。 ①利用置位端实现十进制计数器。 ②利用复位端实现十进制计数器。 提示:设计任意计数器可利用芯片74LS161和与非门设计,74LS00为2输 入与非门,74LS30为8输入与非门。 74LS161为4位二进制加法计数器,其引脚图及功能表如下。

三、实验原理图 1.由4个D触发器改成的4位异步二进制加法计数器 2.由74LS161构成的十进制计数器

四、实验结果及数据处理 1.4位异步二进制加法计数器实验数据记录表 2. 画出你所设计的任意进制计数器的线路图,并说明设计思路。

设计思路:四进制为四个输出Q3Q2Q1Q0=0000,0001,0010,0011循环,第一个无效状态为0100 1,置位法设计四进制计数器:当检测到输入为0011时,先输出显示3,然后再将D 置于低电位,计数器输出Q3Q2Q1Q0复位。 2,复位法设计四进制计数器:当检测到第一个无效状态0100时,通过与非门的反馈计数器的Cr首先置于低电平使计数器复位为0000。 五、思考题 1. 由D触发器和JK触发器组成的计数器的区别? 答:D触发器是cp上升沿触发,JK触发器是下降沿触发。 2. 74LS161是同步还是异步,加法还是减法计数器? 答:同步。加法计数器。 3. 设计十进制计数器时将如何去掉后6个计数状态的? 答:加一个与非门形成负反馈。当计数到第一个无效状态Q3Q2Q1Q0==1010时,Q3和Q1全为1,Q1,Q3接与非门,输出作为复位信号,使所有触发器复位,从而去掉了后6个状态。

实验四 四位二进制全加器

实验序号实验题目四位二进制全加器实验时间实验室 1.实验元件(元件型号;引脚结构;逻辑功能;引脚名称) 1.SAC-DS4数字逻辑电路实验箱 1个 2.万用表 1块 3.74LS283 四位二进制全加器1片 74LS283 四位二进制全加器引脚结构及逻辑功能 2.实验目的 1、掌握中规模集成电路四位全加器的工作原理及其逻辑功能。 2、学习全加器的应用。 3.实验电路原理图及接线方法描述: (1)74LS283四位全加器实验电路图

(2)用74LS283四位全加器实现BCD码到余3码的转换实验电路图

4.实验中各种信号的选取及控制(电源为哪些电路供电;输入信号的分布位置;输出信号的指示类型;总结完成实验条件) (1)用开关按表下图设置输入A1-A4、B1-B4、C0的状态,借助指示灯观测输出F1-F4、C4的状态。 (2)将每个BCD码加上0011,即可得到相应的余3码。故应按下图接线。 5.逻辑验证与真值表填写 (1)74LS283四位全加器真值表 输入输出 A4 A3 A2 A1B4 B3 B2 B1C0F4 F3 F2 F1C4 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 1 1 1 0 1 1 0 1 0 1 1 0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 0 1 0 1 1 1 0 1 0 1 0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 (2)用74LS283四位全加器实现BCD码到余3码的转换真值表 输入BCD码输出余3码 B4 B3 B2 B1 F4 F3 F2 F1 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1

四位二进制同步加法计数器(缺0011 0100 0101 0110)

成绩评定表

课程设计任务书

摘要 本次课设题目为四位二进制加法计数器(缺0011 0100 0101 0110)。 首先在QuartusII8.1中建立名为count16的工程,用四位二进制加法计数器的VHDL语言实现了四位二进制加法计数器的仿真波形图,同时进行相关操作,锁定了所需管脚,将其下载到实验箱。 然后,在Multisim软件中,通过选用四个时钟脉冲下降沿触发的JK触发器和同步电路,画出其时序图,卡诺图,建立相关方程,做出相关计算,完成四位二进制加法计数器(缺0011 0100 0101 0110)的驱动方程。在Multisim软件里画出了四位二进制加法计数器的逻辑电路图。经过运行,分析由红绿灯的亮灭顺序及状态,和逻辑分析仪里出现波形图。说明四位二进制加法计数器顺利完成。 关键词:计数器;VHDL语言;仿真;触发器。

目录 一、课程设计目的 (1) 二、设计框图 (1) 三、实现过程 (2) 1、QUARTUS II实现过程 (2) 1.1建立工程 (2) 1.2编译程序 (7) 1.3波形仿真 (10) 1.4 仿真结果分析 (14) 1.5引脚锁定与下载 (14) 2、MULTISIM实现过程 (16) 2.1求驱动方程 (16) 2.2画逻辑电路图 (19) 2.3逻辑分析仪的仿真 (20) 2.4结果分析 (21) 2.5自启动判断 (22) 四、总结 (23) 五、参考书目 (24)

一、课程设计目的 1 了解同步加法计数器工作原理和逻辑功能。 2 掌握计数器电路的分析、设计方法及应用。 3 学会正确使用JK 触发器。 二、设计框图 状态转换图是描述时序电路的一种方法,具有形象直观的特点,即其把所用触发器的状态转换关系及转换条件用几何图形表示出来,十分清新,便于查看。 在本课程设计中,四位二进制同步加法计数器用四个CP 下降沿触发的JK 触发器实现,其中有相应的跳变,即跳过了0011 0100 0101 0110四个状态,这在状态转换图中可以清晰地显示出来。具体结构示意框图和状态转换图如下: 1010 101111001101111011110 /1 /1000 101101110010000100000/0/0/0/0/0/0/0/0/0/????←????←????←????←????←↓↑???→????→????→????→????→? B:状态转换图

同步二进制加法计数器

同步二进制加法计数器 F0302011 5030209303 刘冉 计数器是用来累计时钟脉冲(CP脉冲)个数的时序逻辑部件。它是数字系统中用途最广泛的基本部件之一,几乎在各种数字系统中都有计数器。它不仅可以计数,还可以对CP 脉冲分频,以及构成时间分配器或时序发生器,对数字系统进行定时、程序控制操作。此外,还能用它执行数字运算。 1、计数器的特点: 在数字电路中,把记忆输入CP脉冲个数的操作叫做计数,能实现计数状态的电子电路称为计数器。特点为(1)该电路一般为Moore型电路,输入端只有CP信号。 (2)从电路组成看,其主要组成单元是时钟触发器。 2、计数器分类 1) 按CP脉冲输入方式,计数器分为同步计数器和异步计数器两种。 同步计数器:计数脉冲引到所有触发器的时钟脉冲输入端,使应翻转的触发器在外接的CP脉冲作用下同时翻转。 异步计数器:计数脉冲并不引到所有触发器的时钟脉冲输入端,有的触发器的时钟脉冲输入端是其它触发器的输出,因此,触发器不是同时动作。 2) 按计数增减趋势,计数器分为加法计数器、减法计数器和可逆计数器三种。 加法计数器:计数器在CP脉冲作用下进行累加计数(每来一个CP脉冲,计数器加1)。 3) 按数制分为二进制计数器和非二进制计数器两类。 二进制计数器:按二进制规律计数。最常用的有四位二进制计数器,计数范围从0000到1111。 异步加法的缺点是运算速度慢,但是其电路比较简单,因此对运算速度要求不高的设备中,仍不失为一种可取的全加器。同步加法优点是速度快,虽然只比异步加法快千分之一甚至几千分之一秒,但对于计数器来讲,却是十分重要的。所以在这个高科技现代社会中,同步二进制计数器应用十分广泛。 下图为三位二进制加法计数器的电路图。 图1 三位二进制计数器 图示电路为对时钟信号计数的三位二进制加法计数器或称为八进制加法计数器。 该电路的经典分析过程: 1.根据电路写出输出方程、驱动方程和状态方程 2. 求出状态图 3.检查电路能否自启动 4.文字叙述逻辑功能 解:

四位二进制加法计数器课程设计

成绩评定表 学生姓名郝晓鹏班级学号1103060129 专业通信工程课程设计题目四位二进制加法 计数器 评语 组长签字: 成绩 日期20 年月日

课程设计任务书 学院信息科学与工程学院专业通信工程 学生姓名郝晓鹏班级学号1103060129 课程设计题目四位二进制加法计数(缺0010 0011 1101 1110) 实践教学要求与任务: 1、了解数字系统设计方法。 2、熟悉VHDL语言及其仿真环境、下载方法。 3、熟悉Multisim仿真环境。 4、设计实现四位二进制加计数(缺0010 0011 1101 1110) 工作计划与进度安排: 第一周:熟悉Multisim及QuartusII环境,练习数字系统设计方法。包括采用触发器设计和超高速硬件描述语言设计,体会自上而下、自下而上设计 方法的优缺点 第二周:1.在QuartusII环境中仿真实现四位二进制加计数(缺0100 0101 1001 1010 )。 2.在Multisim环境中仿真实现四位二进制加计数,缺(0100 0101 1001 1010),并通过虚拟仪器验证其正确性。 指导教师: 201 年月日专业负责人: 201 年月日 学院教学副院长: 201 年月日

摘要 本文采用在MAXPLUSⅡ环境中用VHDL语言实现四位二进制加法计数(缺0010 0011 1101 1110),在仿真器上显示结果波形,并下载到目标芯片上,在实验箱上观察输出结果。在Multisim环境中仿真实现四位二进制加法计数器(缺0010 0011 1101 1110),并通过虚拟仪器验证其正确性。 关键词:MAXPLUSⅡ环境;VHDL语言;四位二进制加计数;Multisim环境

实验一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位二进制全加器)。

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

南昌大学实验报告 学生姓名: 学 号: 专业班级: 中兴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全加器原理图。全加器的真值表如下: 表2全加器真值表 其中a为加数,b为加数,c为低位向本位的进位,co为本位向高位的进位,so为本位和。 图2.全加器原理图 四.实现方法一:原理图输入法设计(自己独立完成) 1. 建立文件夹 建立自己的文件夹(目录),如c:\myeda,进入Windows操作系统 QuartusII不能识别中文,文件及文件夹名不能用中文。 2. 原理图设计输入 打开Quartus II,选菜单File→New,选择“Device Design File->Block Diagram->Schematic File”项。点击“OK”,在主界面中将打开“Block Editor”窗口。 (1) 放置元件 在原理图编辑窗中的任何一个空白处双击鼠标左键或单击右键,跳出一个选择窗,选择

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

一.课程设计的目的: 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个输入,分别是加

十进制4位加法计数器设计

洛阳理工学院 十 进 制 4 位 加 法 计 数 器 系别:电气工程与自动化系 姓名:李奇杰学号:B10041016

十进制4位加法计数器设计 设计要求: 设计一个十进制4位加法计数器设计 设计目的: 1.掌握EDA设计流程 2.熟练VHDL语法 3.理解层次化设计的内在含义和实现 设计原理 通过数电知识了解到十进制异步加法器的逻辑电路图如下 Q3 则可以通过对JK触发器以及与门的例化连接实现十进制异步加法器的设计 设计内容 JK JK触发器的VHDL文本描述实现: --JK触发器描述 library ieee; use ieee.std_logic_1164.all; entity jk_ff is

port( j,k,clk: in std_logic; q,qn:out std_logic ); end jk_ff; architecture one of jk_ff is signal q_s: std_logic; begin process(j,k,clk) begin if clk'event and clk='0' then if j='0' and k='0' then q_s <= q_s; elsif j='0' and k='1' then q_s <= '0'; elsif j='1' and k='0' then q_s <= '1'; elsif j='1' and k='1' then q_s <= not q_s; end if; end if; end process; q <= q_s; qn <= not q_s; end one; 元件门级电路: 与门VHDL文本描述实现: --与门描述library ieee; use ieee.std_logic_1164.all;

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

整理人 尼克 实验一一位二进制全加器设计实验

目录 实验一Protel DXP 2004认识实验 (1) 实验二两级阻容耦合三极管放大电路原理图设计 (1) 实验三原理图元件库建立与调用 (3) 实验四两级阻容耦合三极管放大电路PCB图设计 (5) 实验五集成电路的逻辑功能测试 (7) 实验六组合逻辑电路分析与设计 (12) 实验七Quartus II 的使用 (17) 实验八组合逻辑器件设计 (17) 实验九组合电路设计 (25)

实验一 Protel DXP 2004 认识实验 一、实验目的 1.掌握Prot e l DXP 2004 的安装、启动和关闭。 2.了解Protel DXP 2004 主窗口的组成和各部分的作用。 3.掌握Prot e l DXP 2004 工程和文件的新建、保存、打开。 二、实验内容与步骤 1、Protel_DXP_2004 的安装 (1)用虚拟光驱软件打开Protel_DXP_2004.iso 文件 (2)运行setup\Setup.exe 文件,安装Protel DXP 2004 (3) 运行破解程序后,点击“导入模版”,先导入一个ini文件模版(如果要生成单机版的License选择Unified Nexar-Protel License.ini;要生成网络版的License选择Unified Nexar-Protel Network License.ini),然后修改里面的参数:TransactorName=Your Name(将“Your Name”替换为你想要注册的用户名);SerialNumber=0000000(如果你只有一台计算机,那么这个可以不用修改,如果有两台以上的计算机且连成局域网,那么请保证每个License文件中的SerialNumber=为不同的值。修改完成后点击“生成协议文件”,任意输入一个文件名(文件后缀为.alf)保存,程序会在相应目录中生成1个License文件。点击“替换密钥”,选取DXP.exe (在DXP 2004安装目录里,默认路径为C:\Program Files\Altium2004\),程序会自动替换文件中的公开密钥。将前面生成的License文件拷贝至DXP 2004安装目录里(默认路径为 C:\Program Files\Altium2004\)授权完成。 (4)打开Protel 在左上角DXP 菜单下的Preference 菜单项里,选中Use localize resources 后关闭Protel_DXP_2004,重新打开软件变为简体中文版本。 2、Protel_DXP_2004 的卸载 卸载Protel_DXP_2004 的具体步骤如下: (1)在Windows 的“开始”菜单中选择“设置/控制面板”,然后在控制面板中选择“添加/删除程序”选项,将弹出对话框。从中选择DXP 2004 应用软件。 (2)单击删除”按钮,将弹出对话框,询问用户是否真的要删除程序。 (3)单击“是”按钮,开始卸载。在卸载过程中,若想终止卸载,可单击“取消”按钮。

设计一个四位二进制计数器

1、要求:设计一个四位二进制计数器,将计数结果由数码管显示,显示结果为十进制数。数码管选通为低电平有效,段码为高电平有效。 分析:VHDL 描述包含五部分:计数器、将四位二进制数拆分成十进制数的个位和十位、二选一的数据选择器、七段译码、数码管选通控制信号 线定义为信号 library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity counter3 is Port ( clk:in STD_LOGIC; clk1 : in STD_LOGIC; clr : in STD_LOGIC; en : in STD_LOGIC; co : out STD_LOGIC; scanout:out std_logic_vector(1 downto 0); ledout:out std_logic_vector(6 downto 0)); end counter3; architecture Behavioral of counter3 is signal cnt:std_logic_vector(3 downto 0); signal cnt1:std_logic_vector(3 downto 0); signal cnt2:std_logic_vector(3 downto 0); signal hex:std_logic_vector(3 downto 0); signal scan:std_logic_vector(1 downto 0); en clr

一位全加器

存档资料成绩: 华东交通大学理工学院 课程设计报告书 所属课程名称计算机组成原理 题目一位全加器的设计 分院电信分院 专业班级 15计算机科学与技术3班 学号20150210440313 学生姓名张子辰 指导教师王莉 2016 年 12 月 19 日

课程设计(论文)评阅意见 评阅人 王莉 职称 讲师 2016年12月19日 序号 项 目 等 级 优秀 良好 中等 及格 不及格 1 课程设计态度评价 2 出勤情况评价 3 任务难度评价 4 工作量饱满评价 5 任务难度评价 6 设计中创新性评价 7 论文书写规范化评价 8 综合应用能力评价 综合评定等级

目录 引言 (2) 一.全加器的介绍 (2) 1.1 全加器的基本概念 (2) 1.2全加器仿真设计分析 (3) 1.3 全加器的原理 (3) 二.课程设计目的 (3) 三.不同方法的一位全加器设计 (4) 3.1用逻辑门设计全加器 (4) 3.2 用74LS38译码器设计全加器 (6) 3.3用74LS153D数据选择器设计全加器 (8) 四.观测仿真电路 (10) 4.1逻辑门仿真电路的分析 (10) 4.2 74LS138译码器仿真电路的分析 (12) 4.3 74LS153D数据选择器仿真电路的分析 (13) 五.两位全加器的实现 (15) 5.1.原理 (15) 5.2创建电路 (18) 5.3 仿真电路的输出信号分析 (19) 六.收获与心得 (19) 参考文献 (20)

一位全加器的设计 引言 MAX+PLUS II是一个专门用于电路设计与仿真的工具软件。它以界面形象直观、操作方便、分析功能强大、易学易用等突出优点,迅速被推广应用。MAX+PLUS II仿真软件能将电路原理图的创建、电路的仿真分析及结果输出都集成在一起,并具有绘制电路图所需的元器件及其仿真测试的仪器,可以完成从电路的仿真设计到电路版图生成的全过程,从而为电子系统的设计、电子产品的开发和电子系统工程提供一种全新的手段和便捷的方法。 数字系统的基本任务之一就是进行算术运算。而常见的加、减、乘、除等运算均可以利用加法运算来实现。所以,加法器就成为数字系统中最基本的运算单元,可广泛用于构成其它逻辑电路。 一.全加器的介绍 1.1 全加器的基本概念 加法器是一种常见的组合逻辑部件,有半加器和全加器之分。半加器是只考虑两个加数本身,而不考虑来自低位进位的逻辑电路,就是两个相加数最低位的加法运算。全加器不仅考虑两个一位二进制数相加,还要考虑与低位进位数相加的运算电路。两个数相加时,除最低位之外的其余各位均是全加运算

四位二进制加法计数器

学院信息学院专业通信工程姓名陈洁学号02 设计题目数字系统课程设计 内容四位二进制加法计数器 技术参数和要求0000→0001→0010→0011→0110→0111→1000→1001→1010→1011→1100→→1101→1110→1111→0000 缺0100→0101 设计任务 1.按要求设计VHDL程序, 2.在Xinlinx Ise环境中运行程序并输出仿真波形。 工作进度和安排第18周: 1.学习Xinlinx Ise软件知识,熟悉软件相关操作; 2.学习multsim软件知识,熟悉其在画逻辑电路时的应用; 3.查阅相关资料,学习时序逻辑电路设计知识。 第20周: 1.按要求编写程序代码,; 2.运行并输出仿真波形; 3.程序下载到电路板测试; 4.利用multsim软件,设计时序电路; 5.运行并验证结果; 6.撰写报告。 指导教师(签字): 年月日学院院长(签字): 年月日

目录 一.数字系统简介 (3) 二.设计目的和要求 (3) 三.设计内容 (3) 四.VHDL程序设计 (3) 五.波形仿真 (11) 六. 逻辑电路设计 (12) 六.设计体会 (13) 七.参考文献 (13)

一.数字系统简介 在数字逻辑设计领域,迫切需要一种共同的工业标准来统一对数字逻辑电路及系统的描述,这样就能把系统的设计分解为逻辑设计(前端),电路实现(后端)和验证桑相互独立而又相关的部分。由于逻辑设计的相对独立性就可以把专家们设计的各种数字逻辑电路和组件建成宏单元或软件核,即ip库共设计者引用,设计者可以利用它们的模型设计电路并验证其他电路。VHDL这种工业标准的产生顺应了历史潮流。 二.设计目的和要求 1、通过《数字系统课程设计》的课程实验使电子类专业的学生能深入了解集成中规 模芯片的使用方法。 2、培养学生的实际动手能力,并使之初步具有分析,解决工程实际问题的能力。三.设计内容 四位二进制加计数,时序图如下: 0000→0001→0010→0011→0110→0111→1000→1001→1010→1011→1100→→1101→1110→1111 →0000 缺0100→0101 。由JK触发器组成4位异步二进制加法计数器。 四.VHDL程序设计 四位二进制加计数,缺0100,0101(sw向上是0(on);灯亮为0) LIBRARY IEEE; USE entity count10 is PORT (cp,r:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); end count10; ARCHITECTURE Behavioral OF count10 IS SIGNAL count:STD_LOGIC_VECTOR(3 DOWNTO 0) ; BEGIN PROCESS (cp,r) BEGIN if r='0' then count<="0000"; elsiF cp'EVENT AND cp='1' THEN if count="0011" THEN count <="0110"; ELSE count <= count +1; END IF; end if; END PROCESS; q<= count; end Behavioral;

EDA课程设计八位二进制全加器

EDA课程设计八位二进制全加器

EDA设计说明书 课程名称: EDA技术实用教程 设计题目:八位二进制全加器 院系:电子信息与电气工程学院学生姓名: 学号: 专业班级: 指导教师:李响 年 6 月 1

1. 设计目的 熟悉利用QuartusⅡ的原理图输入法设计简单的组合电路,掌握层次化设计的方法,并经过一个八位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。 2. 设计原理 2.1 一位全加器的原理 一位全加器能够用两个半加器及一个或门连接而成,因此需要首先完成半加器的设计。在本设计中,将采用原理图输入法来完成设计。 一位全加器的设计步骤: ①为本项工程设计建立文件夹; ②输入设计项目和存盘; ③将设计项目设计成可调用的元件; ④设计全加器顶层文件; ⑤将设计项日设置成工程和时序仿真。 2.2 八位全加器的原理 一个八位全加器能够由八个一位全加器构成,加法器之间的进位能够用串行方式实现,即将低位加法器的进位输出cout 与相邻的高位加法器的最低进位输入信号cin 相接。

3. 设计方案与仿真 3.1 一位全加器的设计与仿真 全加器的实现是以半加器的实现为基础的,因此,要设计全加器应首先设计一个一位的半加器。半加器的实现方案为: ①为此项工程建立文件夹; ②在基本元件库中,选中需要的元件,将元件(包含元件 and2、not 、xnor 和输入输出引脚input、output)调入原理图编辑窗口中; ③将己设计好的原理图文件存盘; ④将所设计的半加器设置成可调用的元件。 用原理图输入法所设计的半加器原理图如图3-1所示,利用QuartusⅡ软件平台,根据图3-1所示电路,可生成一个半加器元件符号,如图3-2所示。在半加器的基础上,为了建立全加器的顶层文件,必须再打开一个原理图编辑窗口,方法同上。其中,所选择的元件包含半加器、或门和输入输出引脚,由此可得到如图3-3所示的全加器原理图;进而可生成个全加器元件符号,如图3-4所示。 图3-1 半加器原理图图3-2 半加器元件符号

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

◎南昌大学实验报告 学生姓名: ______ 学号:____________ 专业班级:中兴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的逻辑函数表达式为: so a b a b a b co ab (1) (2)

(2) 全加器设计原理 除本位两个数相加外,还要加上从低位来的进位数,称为全加器。图2全加器原理图。 全加器的真值表如下: 其中a为加数,b为加数,c为低位向本位的进位,co为本位向高位的进位,so为本位和。 图2.全加器原理图 四?实现方法一:原理图输入法设计(自己独立完成) 1. 建立文件夹 建立自己的文件夹(目录),女口c:\myeda,进入Windows操作系统Quartusll不能识别中文,文件及文件夹名不能用中文。 2. 原理图设计输入 打开Quartus II ,选菜单File 宀New ,选择“Device Design File->Block Diagram- 'Schematic File 项。点击“ OK'在主界面中将打开“ Block Editor 窗口'。 (1) 放置元件 在原理图编辑窗中的任何一个空白处双击鼠标左键或单击右键,跳出一个选择窗,选择此窗中的Enter Symbol项输入元件,出现元件选择窗口。 元件选择窗口窗口中Symbol Libraries: 的路径c:\ Quartus2\max2lib\prim 下为基本

四位二进制计数器

四位二进制计数器设计 班级:电子S102 姓名刘利勇学号:103511 一:实验目标 掌握用VHDL语言设计异步复位、同步使能的四位二进制加法计数器的编程方法, RST是异步清零信号,高电平有效;CLK是时钟信号;ENA是同步使能信号,高电平使能。OUTY是4位数据输出端。COUT是进位端。在复位信号为低电平,使能信号为高电平并且有时钟输入的时候,计数器自加,直到溢出,自动复位。 二:实验仪器 PC机一台,实验箱一套 三:实验步骤 1、新建一个工程目录,在该工程目录下新建一个文本输入文件。 2、在新建的文件中输入以下实验程序,并把该文件以CNT4B.VHD为文件名保存在该新建的工程文件夹下。

3、把该文本文件设置成当前文件。 4、运行编译器,检测该文本文件的错误,直到编译通过。 5、新建波形文件,在该文件中输入信号节点,设置仿真时间,运行仿真器,观测仿真波形。

6、软件仿真正确无误后,选择目标器件。 7、引脚锁定。其中时钟信号选择1引脚,使能引脚和复位引脚分别接一位拨动开关。溢出端接一个发光二极管,数据输出端接一个数码管。数据的高位接数码管的高位,数据的低位接数码管的低位。 9、重新编译。

10、编程下载,硬件调试。观测硬件结果,复位波动开关置为低电平,使能波动开关置为高电平,则数码管依次循环显示0到F,显示到F时,LED灯亮,说明发生溢出进位。当复位端有效时,计数器复位。使能端为低电平时,计数器不计数。 四、实验注意事项 1、注意输入程序后保存,以VHD为后缀名保存,不要使用默认保存格式,否则编译不通过。 2、引脚锁定时,要把输出端的高位和数码管的高位缩地,低位和低位锁定。这样才能按从0到F的顺序自加1显示。否则会数码管译码错误,会出现数字跳变。

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

大学实验报告 学生: 学 号: 专业班级: 中兴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 半加器真值表 a b so co 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 由真值表可分别写出和数so ,进位数co 的逻辑函数表达式为: b a b a b a so ⊕=+=- - (1) ab co = (2)

图1半加器原理图 (2) 全加器设计原理 除本位两个数相加外,还要加上从低位来的进位数,称为全加器。图2全加器原理图。全加器的真值表如下: 表2全加器真值表 c a b co so 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为加数,b为加数,c为低位向本位的进位,co为本位向高位的进位,so为本位和。 图2.全加器原理图 四.实现方法一:原理图输入法设计(自己独立完成) 1. 建立文件夹 建立自己的文件夹(目录),如c:\myeda,进入Windows操作系统 QuartusII不能识别中文,文件及文件夹名不能用中文。 2. 原理图设计输入 打开Quartus II,选菜单File→New,选择“Device Design File->Block Diagram->Schematic File”项。点击“OK”,在主界面中将打开“Block Editor”窗口。 (1) 放置元件 在原理图编辑窗中的任何一个空白处双击鼠标左键或单击右键,跳出一个选择窗,选择

4位同步二进制加法计数器

4位同步二进制加法计数器 一、实验目的 1、熟悉在EDA平台上进行数字电路集成设计的整个流程。 2、掌握Max+PlusⅡ软件环境下简单的图形、VHDL文本等输入设计方法。 3、熟悉VHDL设计实体的基本结构、语言要素、设计流程等。 4、掌握利用Max+PlusⅡ的波形仿真工具验证设计的过程。 5、学习使用JTAG接口下载逻辑电路到可编程芯片,并能调试到芯片正常工作为止。 二、实验设备 1.软件 操作系统:Windows 2000 EDA软件:MAX+plus II 10.2 2.硬件 EDA实验箱:革新EDAPRO/240H 三、实验原理 1.设计分析 4位同步二进制加法计数器的工作原理是指当时钟信号clk的上升沿到来时,且复位信号clr低电平有效时,就把计数器的状态清0。 在clr复位信号无效(即此时高电平有效)的前提下,当clk的上升沿到来时,如果计数器原态是15,计数器回到0态,否则计数器的状态将加1. 2.VHDL源程序 library ieee; use ieee.std_logic_1164.all; entity cnt4e is port(clk,clr:in std_logic; cout:out std_logic; q:buffer integer range 0 to 15); end cnt4e; architecture one of cnt4e is begin process(clk,clr) begin if clk'event and clk='1'then if clr='1'then if 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;

一位二进制全加器

一位二进制全加器 自动化5班 09006610511 崔功高 实验目的:学习一位二进制全加器的原理;编辑程序完成二进制全加器的仿真。 设计要求和设计思路:设计程序独立完成全加器的仿真。全加器由两个半加器组 合而成,原理类似。半加器不考虑低位进位,但有高位进位;全加器要考虑低位的进位且该 进位和求和的二进制相加,可能获得更高的进位。所以,一位二进制半加器要两个输入一个 进位一个输出,全加器比此多一个低位进位端共五个端口。 实验程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY m IS PORT(a,b,c:IN STD_LOGIC; S,C0:OUT STD_LOGIC); END ENTITY m; ARCHITECTURE one OF m IS SIGNAL abc: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN abc<=a&b&c; PROCESS(abc) IS BEGIN CASE(abc) IS WHEN"000" => S<='0';C0<='0'; WHEN"001" => S<='1';C0<='0'; WHEN"010" => S<='1';C0<='0'; WHEN"011" => S<='0';C0<='1'; WHEN"100" => S<='1';C0<='0'; WHEN"101" => S<='0';C0<='1'; WHEN"110" => S<='0';C0<='1'; WHEN"111" => S<='1';C0<='1'; WHEN OTHERS=>NULL; END CASE; END PROCESS; END ARCHITECTURE one; 原 理 图

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