4Bit超前进位加法器门级电路设计与仿真

合集下载

EDA课程设计报告--四位加法器设计

EDA课程设计报告--四位加法器设计

《EDA》课程设计题目:四位加法器设计学号: 200906024245姓名:梁晓群班级:机自094指导老师:韩晓燕2011年12月28日—2011年12月30日目录摘要----------------------------------3EDA简介---------------------------3概述----------------------------------4 1.1目的与要求-------------------4 1.2实验前预习-------------------41.3设计环境----------------------5四位全加器的设计过程----------52.1 半加器的设计-----------------62.2一位全加器的设计-----------92.3四位全加器的设计----------11收获与心得体会----------------13摘要本文主要介绍了关于EDA技术的基本概念及应用,EDA设计使用的软件Quartus7.2的基本操作及使用方法,以及半加器、1位全加器和四位全加器的设计及仿真过程。

EDA简介EDA的概念EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作.EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。

EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。

4bits超前加法进位器的全定制设计_微电子卓越班数字集成电路课程设计报告

4bits超前加法进位器的全定制设计_微电子卓越班数字集成电路课程设计报告

数字集成电路课程设计题目:4 bits超前加法进位器地全定制设计姓名:席高照学号: 111000833学院:物理与信息工程学院专业:微电子(卓越班)年级: 2010级指导教师:陈群超(签名)2013 年 6 月 3 日目录第1章概述 01.1课程设计目地.......................................... 错误!未定义书签。

1.2课程设计地主要内容.................................... 错误!未定义书签。

1.2.1设计题目.......................................... 错误!未定义书签。

1.2.2设计内容.......................................... 错误!未定义书签。

第2章功能分析及逻辑分析 (2)2.1功能分析 (2)2.2推荐工作条件 (3)2.3电性能 (7)2.4真值表 ................................................ 错误!未定义书签。

2.5表达式 (6)2.6电路图...................................................................... 错误!未定义书签。

第3章电路设计与器件参数设计83.1性能指标: ............................................ 错误!未定义书签。

3.2模块划分 (7)3.2.1输出级电路设计 (7)3.2.2内部反相器 (9)3.2.3内部电路等效 (8)3.2.4输入级电路 (10)3.2.5输出缓冲级电路 (10)3.2.6输入、输出保护电路 (10)3.3本章小结 (10)第4章电路模拟与仿真................................................................................................... 错误!未定义书签。

实验九新四位全加器的设计

实验九新四位全加器的设计

课题:全加器实验【课时安排】2学时【实验要求】1.掌握Max+Plus II的使用流程2.学习并掌握全加器的设计【实验内容】设计四位加法器并进行仿真。

具体要求:一个带进位输入、输出的4位全加器端口:A、B为加数,CIN为进位输入,SUM为加和,COUT为进位输出1.编号1-15单号的同学设计四位超前进位加法器(参考教材P139)2.编号1-15双号的同学参考ALU运算模块的设计(教材P144),使用加法运算符设计3.编号16-29单号的同学用生成语句描述对4位全加法器程序。

(参考教材P89例3-26)4.编号16-29双号的同学用结构体的结构化语句描述二输入的4位全加法器程序(参考教材P89例3-35及P65例3-12)以上设计均需进行仿真,实验完成后提交电子文档(内含对应的VHDL程序及仿真结果的截图),提交实验报告,在实验报告中只需写清楚本次实验的设计原理和设计过程(如1号只写超前进位的实现过程,16号只写生成语句描述对4位全加法器程序的实现过程)。

【实验原理介绍】一、一位全加器1.设计原理加法器是最基本的算术运算单元。

加法器中最基本的单元是全加器。

全加器中有两个输入数据a和b,一个进位输入Ci,一个和输出sum和一个进位输出Cout2.一位全加器的VHDL设计实现根据全加器的工作原理,用VHDL描述源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY full_adder ISPORT (a, b, ci: IN STD_LOGIC;sum, cout: OUT STD_LOGIC);END full_adder;ARCHITECTURE rtl OF full_adder ISBEGINsum <= a XOR b XOR ci;cout <= (a AND b) OR (a AND ci ) OR ( b AND ci);END rtl;二、4位串行进位加法器设计【实验重要步骤】略。

BCD-7段译码器、四位超前进位加法器、四位数值比较器

BCD-7段译码器、四位超前进位加法器、四位数值比较器

BCD-7段译码器一、电路图a=A0A1'A2'A3'+A0'A1'A2A3'=A1'A3'(A0异或A2) (其中撇号’表示“非”)b=A3'A2A1'A0+A3'A2A1A0'=A3'A2(A1异或A0)c=A3'A2'A1A0'd=A3'A2'A1'A0+A3'A2A1A0+A3'A2A1'A0'e=(A2+A1+A0)(A1'+A0)f=A3'A2'A1'A0+A3'A2A1A0+A3'A2'A1g=A3'A2'A1'+A3'A2A1A0二、实验结果a)仿真结果{A3,A2,A1,A0}取遍0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,结果均符合要求。

b)在实际FPGA中实验结果:符合要求。

三、结果分析a)输入值范围在0000-1001之间时,可以实现BCD码转7段显示码功能。

但在输入值超出范围时将显示乱码。

若不允许乱码出现,可将卡诺图中的不确定性项d全部改为需要的值,以提示输入错误或不显示任何内容。

但这将使电路规模大幅增加。

b)关键路径含3级门。

其中a,b使用了异或门,但异或门的输入均为原变量。

通过异或门的路径最多只需通过2级逻辑门。

若全部改用与门、或门,则必须有反变量输入,使a,b的关键路径仍然含有3级门,因此不能提升速度,但每个函数必需的带宽都将从4增加为8。

如果与门、或门过剩,异或门不足,且带宽不是制造过程中的制约因素,则更适宜使用与门、或门。

由以上可知,使用异或门可以避免反变量输入,节约1级非门的相应时间,节约带宽。

d函数在卡诺图的分布导致其无法很好化简,因此将占用较多带宽。

实验二 加法器的设计与仿真实验报告

实验二 加法器的设计与仿真实验报告

实验二加法器的设计与仿真一、实验目的:实现加法器的设计与仿真。

二、实验内容1.用逻辑图和VHDL语言设计全加器;2.利用设计的全加器组成串行加法器;3.用逻辑图和VHDL语言设计并行加法器。

三、实验步骤。

(一)、全加器、串行加法器和并行加法器的逻辑图。

1.全加器:2.串行加法器:3.74283:4位先行进位全加器逻辑框图:逻辑图:(二)、全加器、串行加法器和并行加法器的VHDL。

1.全加器:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY quanjiaqi ISPORT(X : IN STD_LOGIC;Y : IN STD_LOGIC;CIN : IN STD_LOGIC;S : OUT STD_LOGIC;COUT : OUT STD_LOGIC);END quanjiaqi;ARCHITECTURE bdf_type OF quanjiaqi ISSIGNAL SYNTHESIZED_WIRE_0 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_1 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_2 : STD_LOGIC;SIGNAL SYNTHESIZED_WIRE_3 : STD_LOGIC;BEGINSYNTHESIZED_WIRE_2 <= Y AND X;SYNTHESIZED_WIRE_1 <= CIN AND Y;SYNTHESIZED_WIRE_3 <= CIN AND X;SYNTHESIZED_WIRE_0 <= X XOR Y;S <= SYNTHESIZED_WIRE_0 XOR CIN;COUT <= SYNTHESIZED_WIRE_1 OR SYNTHESIZED_WIRE_2 OR SYNTHESIZED_WIRE_3; END bdf_type;2.串行加法器:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY chuanxingjiafaqi ISPORT(x0 : IN STD_LOGIC;y0 : IN STD_LOGIC;cin : IN STD_LOGIC;x1 : IN STD_LOGIC;x2 : IN STD_LOGIC;y2 : IN STD_LOGIC;x3 : IN STD_LOGIC;y3 : IN STD_LOGIC;y1 : IN STD_LOGIC;s0 : OUT STD_LOGIC;s1 : OUT STD_LOGIC;s2 : OUT STD_LOGIC;s3 : OUT STD_LOGIC;cout : OUT STD_LOGIC);END chuanxingjiafaqi;ARCHITECTURE bdf_type OF chuanxingjiafaqi ISCOMPONENT quanjiaqiPORT(X : IN STD_LOGIC;Y : IN STD_LOGIC;CIN : IN STD_LOGIC;S : OUT STD_LOGIC;COUT : OUT STD_LOGIC);END COMPONENT;SIGNAL SYNTHESIZED_WIRE_0 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_1 : STD_LOGIC; SIGNAL SYNTHESIZED_WIRE_2 : STD_LOGIC;BEGINb2v_inst : quanjiaqiPORT MAP(X => x0,Y => y0,CIN => cin,S => s0,COUT => SYNTHESIZED_WIRE_0); b2v_inst1 : quanjiaqiPORT MAP(X => x1,Y => y1,CIN => SYNTHESIZED_WIRE_0,S => s1,COUT => SYNTHESIZED_WIRE_1); b2v_inst2 : quanjiaqiPORT MAP(X => x2,Y => y2,CIN => SYNTHESIZED_WIRE_1,S => s2,COUT => SYNTHESIZED_WIRE_2); b2v_inst3 : quanjiaqiPORT MAP(X => x3,Y => y3,CIN => SYNTHESIZED_WIRE_2,S => s3,COUT => cout);END bdf_type;3.74283:4位先行进位全加器LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY work;ENTITY 74283_0 ISPORT(CIN : IN STD_LOGIC;A1 : IN STD_LOGIC;A2 : IN STD_LOGIC;B2 : IN STD_LOGIC;A3 : IN STD_LOGIC;A4 : IN STD_LOGIC;B4 : IN STD_LOGIC;B1 : IN STD_LOGIC;B3 : IN STD_LOGIC;SUM4 : OUT STD_LOGIC;COUT : OUT STD_LOGIC;SUM1 : OUT STD_LOGIC;SUM2 : OUT STD_LOGIC;SUM3 : OUT STD_LOGIC );END 74283_0;ARCHITECTURE bdf_type OF 74283_0 IS BEGIN-- instantiate macrofunctionb2v_inst : 74283PORT MAP(CIN => CIN,A1 => A1,A2 => A2,B2 => B2,A3 => A3,A4 => A4,B4 => B4,B1 => B1,B3 => B3,SUM4 => SUM4,COUT => COUT,SUM1 => SUM1,SUM2 => SUM2,SUM3 => SUM3);END bdf_type;四、实验仿真结果。

4bits超前加法进位器的全定制设计微电子卓越班数字集成电路课程设计报告

4bits超前加法进位器的全定制设计微电子卓越班数字集成电路课程设计报告

数字集成电路课程设计题目:4 bits超前加法进位器的全定制设计姓名:席高照学号:111000833学院:物理与信息工程学院专业:微电子(卓越班)年级:2010级指导教师:群超(签名)2013 年 6 月 3 日目录第1章概述 (1)1.1课程设计目的 (1)1.2课程设计的主要容 (1)1.2.1设计题目 (1)1.2.2设计容 (1)第2章功能分析及逻辑分析 (2)2.1功能分析 (2)2.2推荐工作条件 (3)2.3电性能 (3)2.4真值表 (6)2.5表达式 (6)2.6电路图 (7)第3章电路设计与器件参数设计 (8)3.1性能指标: (8)3.2模块划分 (8)3.2.1输出级电路设计 (8)3.2.2部反相器 (9)3.2.3部电路等效 (9)3.2.4输入级电路 (10)3.2.5输出缓冲级电路 (10)3.2.6输入、输出保护电路 (10)3.3本章小结 (11)第4章电路模拟与仿真 (12)4.1电路搭建 (12)4.1.1建立新库 (12)4.1.2建立SCHEMATIC VIEW (13)4.1.3建立SYMBOL (14)4.1.4建立总体电路SCHEMATIC VIEW (14)4.1.5建立总体SYMBOL (15)4.1.6测试电路 (16)4.2功能仿真 (16)4.3功耗仿真 (18)4.4仿真结果分析 (18)4.5本章小结 (18)5.2反相器版图 (19)5.3输入级 (20)5.4输出级 (20)5.5输出缓冲 (20)5.6异或门 (21)5.7或非门 (23)5.8与非门 (24)5.9整体版图 (25)5.10本章小结 (25)心得 (26)参考文献 (27)附录 (28)附录174LS283中文资料 (28)第1章概述1.1 课程设计目的•综合应用已掌握的知识•熟悉集成电路设计流程•熟悉集成电路设计主流工具•强化学生的实际动手能力•培养学生的工程意识和系统观念•培养学生的团队协作能力1.2 课程设计的主要容1.2.1 设计题目4bits超前进位加法器全定制设计1.2.2 设计要求Vdd=1.8V,VoH=4.6V,Vol=0.4V可驱动10个LSTTL电路(相对于15pf电容负载)1.2.3 设计容•功能分析及逻辑分析•电路设计及器件参数设计•估算功耗与延时•电路模拟与仿真•版图设计•版图数据提交及考核,课程设计总结第2章功能分析及逻辑分析2.1功能分析74283为4为超前进位加法器,不同于普通串行进位加法器由低到高逐级进位,超前进位加法器所有位数的进位大多数情况下同时产生,运算速度快,电路结构复杂。

4bits超前进位加法器全定制设计实验报告

4bits超前进位加法器全定制设计实验报告
2.5
TPLH
Propagation Delay Time
A1~A4,B1~B4到C4
3
ns
TPHL
3
tT
2.5
tP
2.5
Av Power
4
Layout Area
150*180
2.5真值表
2.6逻辑图
工艺的主要参数(smic18工艺)
参数
参数定义
PMOS数值
NMOS数值
U0
迁移率
8.661m
34m
Vth
-0.4
mA
IOL
Low Level OutputVoltage
8
mA
2.3直流特性
Symbol
Parameter
Test Condition
Value
Units
TA=25°C
Min
Typ
Max
VOH
High Level OutputVoltage
VCC=Min,IOH=Max
VIL=Max,VIH=Min
mA
C0
-0.4
II
InputCurrent @ Max Input Voltage
VCC=Max
VI=7.2V
A,B
0.2
mA
C0
0.1
ICC
Supply Current
VCC=Maxl
Parameter
From (Input )to (Ouput)
Test Condition
(2)点选LM视窗上面的工具列File→New→Library;
(3)会产生New Library画面;
(4)在框内填入库名;

四位加法器

四位加法器

四位加法器一、实验要求掌握组合逻辑电路的基本分析和设计方法;理解半加器和全加器的工作原理,用硬件描述语言实现半加器和全加器的门级设计,并使用自己设计的半加器组件构建全加器;学会利用软件仿真和远程实验系统实现对数字电路的逻辑功能进行验证和分析。

二、实验原理半加器(Half Adder)是不考虑来自低位的进位信号,其输入为 1 bit 的被加数和加数,输出为两位:本位的和以及向高一位的进位。

考虑低位进位的1位二进制加法器称为全加器(Full Adder),其输入为被加数加数以及低一位来的进位,输出为本位的和及向高一位的进位。

一位全加器可以由两个半加器及一个或门连接而成,半加器和全加器逻辑结构分别如图所示。

利用全加器级联可以构成多位二进制加法器,下图所示为四位二进制加法电路,低一位的进位输出作为高一位的进位输入。

这种结构称为逐次进位加法器(Ripple Adder)。

由于逐次进位加法器的进位信号是在各级间逐级传递的,所以高位的输出必须等低位的进位输入稳定后才有效,这就使得逐次进位加法器的延时比较大,速度比较慢。

为了提高加法器的运算速度,需要对加法器的结构进行改进。

引入进位传递信号和进位产生信号的概念,有{P n=A n⊕B n G n=A n B n利用这两个信号,可以把和信号与进位输出信号表示为{S n=P n⊕C n−1 C n=P n C n−1+G n根据上面给出的进位输出表达式,可得C0=G0+ P0C−1C1=G1+ P1C0=G1+ P1G0+P1P0C−1C2=G2+ P2C1=G2+ P2G1+P2P1G0+ P2P1P0C−1C3=G3+ P3C2=G3+ P3G2+P3P2G1+ P3P2P1G0+ P3P2P1P0C−1由于各级的进位传递信号和进位产生信号是同时生成的,所以各级的进位输出信号不再需要等待低一位的进位输入信号,从而大大减小了整个电路的延时,提高的加法器的运算速度。

四位超前进位加法器

四位超前进位加法器

1.课程设计名称四位超前进位加法器2.课程设计内容设计一个四位加法器,要求要有超前进位,减小输出的延迟,采用0.13um工艺设计。

3.课程设计目的训练学生综合运用学过的数字集成电路的基本知识,独立设计相对复杂的数字集成电路的能力。

4.课程设计要求4.1、按设计指导书中要求的格式书写,所有的内容一律打印;4.2、报告内容包括设计过程、仿真的HSPICE网表,软件仿真的结果及分析、延时的手工计算;4.3、要有整体电路原理图,仿真的波形图;4.4、软件仿真必须要有必要的说明;要给出各个输入信号的具体波形和输出信号的测试结果。

4.5、写出对应的HSPICE设计网表,网表仿真结果符合设计要求。

把仿真图形附在报告上。

4.6、设输入端的电容为C,输出端的负载电容为5000C inv,从输入到输出任意找一通inv路,优化通路延时,手工计算确定通路中每个门对应的晶体管的尺寸。

每组三个同学选择不能为同一通路。

此部分的计算参数可采用书中第六章的参数。

4.7、各种器件的具体结构可参考阎石的《数字电子技术基础》一书。

不允许有完全一样的报告,对于报告完全相同者,记为不及格。

5.使用软件软件为HSPICE和COSMOS-SCOPE。

6.课程设计原理由全加器的真值表可得S i和C i的逻辑表达式:定义两个中间变量G i和P i:当A i=B i=1时,G i=1,由C i的表达式可得C i=1,即产生进位,所以G i 称为产生量变。

若P i=1,则A i·B i=0,C i=C i-1,即P i=1时,低位的进位能传送到高位的进位输出端,故P i称为传输变量,这两个变量都与进位信号无关。

将G i和P i代入S i和C i得:进而可得各位进位信号的逻辑表达如下:根据逻辑表达式做出电路图(如图):逻辑功能图中有2输入异或门,2输入与门,3输入与门,4输入与门,2输入或门,3输入或门,4输入或门,其转化成CMOS晶体管图如下:7.课程设计网表*xor 2.subckt xor2 a b c d fmxorpa 1 a vdd vdd pmos l=2 w=8 mxorpb f d 1 vdd pmos l=2 w=8 mxorpc 2 b vdd vdd pmos l=2 w=8 mxorpd f c 2 vdd pmos l=2 w=8 mxorna f a 3 0 nmos l=2 w=4 mxornb 3 b 0 0 nmos l=2 w=4 mxornc f c 4 0 nmos l=2 w=4 mxornd 4 d 0 0 nmos l=2 w=4.ends xor2*and2.subckt and2 a b fmandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4mandna f a 1 0 nmos l=2 w=4 mandnb 1 b 0 0 nmos l=2 w=4.ends and2*and3.subckt and3 a b c fmandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4 mandpc f c vdd vdd pmos l=2 w=4 mandna f a 1 0 nmos l=2 w=6 mandnb 1 b 2 0 nmos l=2 w=6 mandnc 2 c 0 0 nmos l=2 w=6.ends and3*and4.subckt and4 a b c d fmandpa f a vdd vdd pmos l=2 w=4 mandpb f b vdd vdd pmos l=2 w=4 mandpc f c vdd vdd pmos l=2 w=4 mandpd f d vdd vdd pmos l=2 w=4 mandna f a 1 0 nmos l=2 w=8 mandnb 1 b 2 0 nmos l=2 w=8 mandnc 2 c 3 0 nmos l=2 w=8 mandnd 3 d 0 0 nmos l=2 w=8.ends and4*or2.subckt or2 a b fmorpa 1 a vdd vdd pmos l=2 w=8 morpb f b 1 vdd pmos l=2 w=8 mna f a 0 0 nmos l=2 w=4mnb f b 0 0 nmos l=2 w=4.ends or2*or3.subckt or3 a b c fmorpa 1 a vdd vdd pmos l=2 w=12 morpb 2 b 1 vdd pmos l=2 w=12 morpc f c 2 vdd pmos l=2 w=12 mna f a 0 0 nmos l=2 w=4mnb f b 0 0 nmos l=2 w=4mnc f c 0 0 nmos l=2 w=4.ends or3*or4.subckt or4 a b c d fmorpa 1 a vdd vdd pmos l=2 w=16morpb 2 b 1 vdd pmos l=2 w=16morpc 3 c 2 vdd pmos l=2 w=16morpd f d 3 vdd pmos l=2 w=16mna f a 0 0 nmos l=2 w=4mnb f b 0 0 nmos l=2 w=4mnc f c 0 0 nmos l=2 w=4mnd f d 0 0 nmos l=2 w=4.ends or4*not.subckt not a fmnotpa f a vdd vdd pmos l=2 w=4 mnotna f a 0 0 nmos l=2 w=2.ends not *反相器*or21.subckt or21 a b fxor2 a b 1 or2xnot 1 f not.ends or21 *2输入或门*or31.subckt or31 a b c fxor3 a b c 1 or3xnot 1 f not.ends or31 *3输入或门*or41.subckt or41 a b c d fxor4 a b c d 1 or4xnot 1 f not.ends or41 *4输入或门*xor21.subckt xor21 a b fxm a A5 notxn b B5 notxxor a b A5 B5 f xor2.ends xor21 * 2输入异或门*and21.subckt and21 a b fxand2 a b 1 and2xnot 1 f not.ends and21 *2输入与门*and31.subckt and31 a b c fxand3 a b c 1 and3xnot 1 f not.ends and31 *3输入与门*and41.subckt and41 a b c d fxand4 a b c d 1 and4xnot 1 f not.ends and41 *4输入与门xxor211 a1 b1 p1 xor21xxor212 a2 b2 p2 xor21xxor213 a3 b3 p3 xor21xxor214 a4 b4 p4 xor21xand211 a1 b1 g1 and21xand212 a2 b2 g2 and21xand213 a3 b3 g3 and21xand214 p1 c0 m0 and21xor211 m0 g1 c1 or21 *进位C1xand311 p2 p1 c0 m1 and31xand215 p2 g1 m2 and21xor312 g2 m1 m2 c2 or31 *进位C2 xand411 p3 p2 p1 c0 m3 and41xand313 p3 p2 g1 m4 and31xand216 p3 g2 m5 and21xor412 m3 m4 m5 g3 c3 or41 *进位C3 xxor215 p1 c0 s1 xor21 *输出s1xxor216 p2 c1 s2 xor21 *输出s2xxor217 p3 c2 s3 xor21 *输出s3xxor218 p4 c3 s4 xor21 *输出s4.include "c:\lib\130nm_bulk.l"tt.opt scale=0.05u.global vdd gndvdd vdd 0 1.2va1 a1 0 pulse 1.2 1.2 20n 1f 1f 30n 100nva2 a2 0 pulse 0 0 20n 1f 1f 30n 100nva3 a3 0 pulse 0 0 20n 1f 1f 30n 100nva4 a4 0 pulse 0 0 20n 1f 1f 30n 100nvb1 b1 0 pulse 1.2 1.2 20n 1f 1f 30n 100n vb2 b2 0 pulse 1.2 1.2 20 1f 1f 30n 100nvb3 b3 0 pulse 0 0 20n 1f 1f 30n 100nvb4 b4 0 pulse 1.2 1.2 20n 1f 1f 30n 100nvc0 c0 0 pulse 0 0 4n 1f 1f 0n 100n.tran 1n 100n.plot tran v(s1).plot tran v(s2).plot tran v(s3).plot tran v(s4).end8.结果及分析由波形可知:当输入a1=1,b1=1,前一级进位c0=0时,s1=a1+b1+c0=0,下一级进位c1=1.由波形可知:当输入a2=0,b2=1,前一级进位c1=1时,s2=a2+b2+c1=0,下一级进位c2=1.由波形可知:当输入a3=0,b3=0,前一级进位c2=1时,s3=a3+b3+c2=1,下一级进位c3=0.由波形可知:当输入a4=0,b4=1,前一级进位c3=0时,s4=a4+b4+c2=1。

4位超前进位加法器

4位超前进位加法器

4位超前进位加法器详细设计姓名:魏可望(23)班级:微电子1102指导老师:杜慧敏日期:2014年4月29日1设计目标 (3)1.1功能定义 (3)1.2引脚描述 (3)1.2.1 4位超前进位加法器系统级信号 (3)1.2.2 4位超前进位加法器输入接口定义 (3)1.2.3 4位超前进位加法器的器输出接口定义 (3)2 模块设计 (3)3测试 (4)4设计开发环境 (4)5设计开发计划 (4)1设计目标1.1功能定义本文描述4位超前进位加法器的详细设计方案。

其功能是求出4位超前进位加法器功能,并在FPGA开发板上验证设计的正确性。

1.2引脚描述1.2.1 4位超前进位加法器单元系统级信号1.2.2 4位超前进位加法器输入接口定义1.2.3 4位超前进位加法器输出接口定义2 模块设计本设计按要求,用assign语句设计4位超前进位加法器。

3测试本单元电路控制逻辑采用systemverilog断言描述状态信息测试,数据通路部分用采用sysetemverilog随机验证的方法,并结合覆盖率检测,做到100%验证。

将本设计下载到Sparten 3E开发板上,将计数器的输出连接到LED灯上,以验证设计的正确性。

4设计开发环境语言级设计:Verilog综合工具:xilinx 14.7rFPGA设计和仿真工具:ISE13.2,synopsys VCS布局和布线工具:appllo ,模拟设计和仿真工具: modelsim寄生参数提取和仿真工具: star_sim RC5设计开发计划附录:4位超前进位加法器源代码:module add_ahead4(sum,cout,a,b,cin);input[3:0] a,b;input cin;output[3:0] sum;output cout;wire[3:0] G,P;wire[3:0] C,sum;assign G[0]=a[0]&b[0];assign P[0]=a[0]|b[o];assign C[0]=cin;assign sum[0]=G[0]^P[0]^C[0];assign G[1]=a[1]&b[1];assign P[1]=a[1]|b[1];assign C[1]=G[0]|(P[0]&cin); assign sum[1]=G[1]^P[1]^C[1]; assign G[2]=a[2]&b[2]; assign P[2]=a[2]|b[2];assign C[2]=G[1]|(P[1]&C[1]); ssign sum[2]=G[2]^P[2]^C[2]; assign G[3]=a[3]&b[3]; assign P[3]=a[3]|b[3];assign C[3]=G[2]|(P[2]&C[2]); assign sum[3]=G[3]^P[3]^C[3]; assign cout=G[3]|(P[3]&C[3]); endmodule。

4位二进制全加器的设计

4位二进制全加器的设计

4位⼆进制全加器的设计4位⼆进制全加器的设计摘要加法器是产⽣数的和的装置。

加数和被加数为输⼊,和数与进位为输出的装置为半加器。

若加数、被加数与低位的进位数为输⼊,⽽和数与进位为输出则为全加器。

常⽤作计算机算术逻辑部件,执⾏逻辑操作、移位与指令调⽤。

在电⼦学中,加法器是⼀种数位电路,其可进⾏数字的加法计算。

在现代的电脑中,加法器存在于算术逻辑单元(ALU)之中。

加法器可以⽤来表⽰各种数值,如:BCD、加三码,主要的加法器是以⼆进制作运算。

多位加法器的构成有两种⽅式:并⾏进位和串⾏进位⽅式。

并⾏进位加法器设有并⾏进位产⽣逻辑,运⾏速度快;串⾏进位⽅式是将全加器级联构成多位加法器。

通常,并⾏加法器⽐串⾏加法器的资源占⽤差距也会越来越⼤。

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

关键字全加器,四位⼆进制,迭代电路,并⾏进位,74LS283,Verilog HDL仿真总电路设计⼀、硬件电路的设计该4位⼆进制全加器以74LS283(图1)为核⼼,采⽤先⾏进位⽅式,极⼤地提⾼了电路运⾏速度,下⾯是对4位全加器电路设计的具体分析。

图11)全加器(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 图32)四位⼆级制加法器 a) 串⾏进位加法器四位⼆进制加法器为4个全加器的级联,每个处理⼀位。

数字电路课程设计之超前进位加法器

数字电路课程设计之超前进位加法器

reg
Cin;
wire[3:0] S;
wire
Cout;
carry_look_add CAL (.A(A),.B(B),.Cin(Cin),.Cout(Cout),.S(S)); initial begin
#10 A=4'd0;B=4'd0;Cin=0; #10 A=4'd11;B=4'd1;Cin=0; #10 A=4'd10;B=4'd12;Cin=0; #10 A=4'd11;B=4'd4;Cin=0; #100 $stop; end endmodule
Pi=Ai○+ Bi;
可以得到输出与进位表达
Gi=AiBi;
Si=Pi○+ Ci;
Ci+1=Gi+PiCi; Gi 为进位产生,不管输入进位 Ci 为什么,只要 Ai 与 Bi 为 1 时,它将产生进位。Pi 称为进位传输,因为它 与从 Ci 到 Ci+1 的进位传输有关
C0 = 输入进位
C1 = G0 + P0C0
Half_Add H3(.a(A[2]),.b(B[2]),.s(v6),.c(v5));
Half_Add H4(.a(A[3]),.b(B[3]),.s(v8),.c(v7));
carry_look
CL1(.C0(Cin),.P0(v2),.G0(v1),.P1(v4),.G1(v3),.P2(v6),.G2(v5),.P3(v8),.G3(v7),.C1(o1),.C2(o2),.C3(o3),.C4(Cout));
注意 C4 并不需要等待 C3,实际上 C4,C3,C2,C1 同时传输 超前进位产生的电路逻辑图

计算机组成原理课程设计—超前进位加法器的设计资料

计算机组成原理课程设计—超前进位加法器的设计资料

沈阳航空航天大学课程设计报告课程设计名称:计算机组成原理课程设计课程设计题目:超前进位加法器的设计院(系):计算机学院专业:班级:学号:姓名:指导教师:完成日期:沈阳航空航天大学课程设计报告目录第1章总体设计方案 (1)1.1设计原理 (1)1.2设计思路 (2)1.3设计环境 (3)第2章详细设计方案 (4)2.1顶层方案图的设计与实现 (4)2.1.1创建顶层图形设计文件 (4)2.1.2器件的选择与引脚锁定 (5)2.1.3编译、综合、适配 (7)2.2功能模块的设计与实现 (7)2.2四位超前进位加法器模块的设计与实现 (7)2.3仿真调试 (9)第3章编程下载与硬件测试 (11)3.1编程下载 (11)3.2硬件测试及结果分析 (11)参考文献 (13)附录(程序清单或电路原理图) (14)第1章总体设计方案1.1设计原理八位超前进位加法器,可以由2个四位超前进位加法器构成。

由第一个四位超前进位加法器的进位输出作为第二个超前进位加法器的进位输入即可实现八位超前进位加法器的设计。

超前进位产生电路是根据各位进位的形成条件来实现的。

只要满足下述条件,就可形成进位C1、C2、C3、C4。

所以:第一位的进位C1=X1*Y1+(X1+Y1)*C0第二位的进位C2=X2*Y2+(X2+Y2)*X1*Y1+(X2+Y2)(X1+Y1)C0第三位的进位C3=X3*Y3+(X3+Y3)X2*Y2+(X3+Y3)*(X2+Y2)*X1*Y1+(X3+Y3)(X2+Y2)(X1+Y1)*C0第四位的进位C4=X4*Y4+(X4+Y4)*X3*Y3+(X4+Y4)*(X3+Y3) * X2*Y2+(X4+Y4)(X3+Y3)(X2+Y2)*X1*Y1+(X4+Y4)(X3+Y3)(X2+Y2)(X1+Y1)*C0 下面引入进位传递函数Pi和进位产生函数Gi的概念。

它们定义为:Pi=Xi+YiGi=Xi*YiP1的意义是:当X1和Y1中有一个为1时,若有进位输入,则本位向高位传递此进位。

实验七:四位加法器电路设计与模拟

实验七:四位加法器电路设计与模拟
单元(Cell) ,一个单元又包含两种视图模式(电路图模式和符号图模式) 。我们先建立一个 电路图视图模式,再建立一个符号图视图模式。 建立电路图视图模式如下操作。 选择 Cell——New View, 弹出如下对话框。 在 view type 选项中选择“schematic” ,点击“OK”按钮即可,会出现画电路图的面板。
12
通过在 T-SPICE 文件中进行如下设置,可得输入信号 B 的波形图,如下图所示。
输入信号波形,从上到下一次是 B0,B1,B2,B3
13
通过在 T-SPICE 文件中进行如下设置,可得输出信号 S,Cout 的波形图,如下图所示。
输出信号波形,从上到下一次是 S0,S1,S2,S3,Cout
0
0
1
0
0
0
1
1
0
1
0
1
1
1
0
1
1
0
1
1
Cout
Cout
Cout
Cout
14
name 下面输入 add4,在 Create in folder 下面空白的右边点击 面板上选中 E 盘里的 ex7 文件夹,点击“确定” 。如下图所示。 ,在弹出的“浏览文件夹”
完成“确定”之后,New Design 面板如下图所示,点击“OK”按钮即可,新设计就建 立好了。
2
4.建立新单元:新设计建立好后,接下来就是要建立新单元,一个设计可以包含很多个
建立符号图视图模式如下操作。 选择 Cell——New View, 弹出如下对话框。 在 view type 选项中选择“symbol” ,点击“OK”按钮即可,会出现画符号图的面板。
5.从元件库引用元件:新单元建立好后,就可以在新单元的电路图模式下画电路图了。

实验一:四位加法器

实验一:四位加法器

必修实验:实验一:四位加法器实验目的:一、熟悉MAX+plusⅡ软件和AEDK实验箱操作二、熟悉可编程器件开发流程三、巩固VHDL语言四、掌握层次化设计方法实验内容:用层次化设计方法设计一个4位加法器:1.底层用文本输入方式,顶层用原理图输入方式,用结构体三种实现方式分别编写程序,编译,调试。

2.仿真,分析结果,绘制波形。

3绑定引脚,在教学实验箱上完成相应的搭线、下载.分析加法器实现的结果。

实验步骤:一、在计算机上用浏览器建立自己的文件夹,要求用英文。

二、用文本输入法建立底层模块:用三种结构体描述方法(行为、数据流、结构描述)给出一位全加器的VHDL语言描述。

建议使用模板。

文件建立后使用File-set current file to project建立项目,点工具栏上图符存盘检验。

点击菜单MAC+plusⅡ\HierarchyDisplay,观察此时的项目层次图。

(程序要求写在附页)。

三、用图形编辑器建立顶层文件,并存入前一步的文件夹中。

利用4个一位全加器,前一个的输出cout为下一个的输入cin来完成串行四位加法器。

文件建立后点工具栏上图符(完成存盘、将项目绑定到现有文件、检验三个步骤)。

点击菜单MAX+plusⅡ\Hierarchy Display,观察此时的项目层次图。

四、作时序仿真,画出时序仿真波形图。

(四位数据要求以总线形式显示)五、选择器件(max epm7128s-15),绑定引脚,设置下载接口,编程下载。

以按键模拟数字(注,板上无多余按键,C0不接)开关设置S2-7,OFF L8-L1 不允许显示实验注意事项:本实验的教学录像仅供不熟练者参考,已掌握者可以放手自己操作。

不应只是跟着录像走过场,而要真正理解MAX+plusⅡ这种EDA软件的设计流程,和层次化设计中的模块划分。

实验过程大约需要3-4个小时。

如果事先设计底层全加器程序,并复习课上内容和书上有关章节,理清设计流程,可以节约时间,并且效果会更好。

4 位加法器原理图设计

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所示) ,最后运行波形仿真。

四位全加器的电路和版图仿真

四位全加器的电路和版图仿真

半加器加器逻辑图及仿真图
全加器
在作二进制加法运算时,一般两个加数 都不会是一位,而是多位的。因此需要 考虑从低位来的进位,对于半加器而言, 即相当于3个1位二进制数的相加,求得 和及进位的逻辑电路称为全加器,其真 值表参见表2-2所列。
全加器
当Ai、Bi、Ci-1有两个以上1就会产生进位。
当A1、B1、C0中有计数个1,Si为1,偶数个1为,Si为 0。。
全加器
在作二进制加法运算时,一般两个加数 都不会是一位,而是多位的。因此需要 考虑从低位来的进位,对于半加器而言, 即相当于3个1位二进制数的相加,求得 和及进位的逻辑电路称为全加器,其真 值表参见表2-2所列。
全加器逻辑图及仿真图
四位串行进位加法器
串行进位加法器是比较简单、基本的加 法器结构,也称为“行波进位加法器” 一个四位的串行进位加法器要求4个全 加器串联起来,进位输出位用来作为下 一位的进位输入,设计思路如下:
超前进位加法器
因为设计的是四位加法器,其最低位C0为0,所以将四位 全加器的进位链优化如下,可大大简化电路,减少CMOS 数量,以便减少后面版图的工作量。
C1G1 C2G2P2G1 C3G3P3G2P3P2G1 C4G4P4G3P4P3G2P4P3P2G1
超前进位加法器
优化后四位超前进位加法器进位的原理图如下:
四位串行进位加法器逻辑图及仿真图
超前进位加法器
为了提高运算速度,必须设法减小或消除由于进位信号逐 级传递所消耗的时间,利用各位之间的状态来预先产生高 位的进位信号,于是制成了超前进位加法器。 由全加器的真值表及基本加法器的公式可得串行全加器的 Si和Ci的逻辑表达式:
四位串行进位加法器
定义两个中间变量Gi和Pi:

4位超前进位加法器设计讲解学习

4位超前进位加法器设计讲解学习

4位超前进位加法器设计、、模拟集成电路分析与设计课程设计报告题目4位超前进位加法器设计学院(部)电控学院专业电子科学与技术班级学生姓名学号前言20世纪是IC迅速发展的时代。

计算机等信息产业的飞速发展推动了集成电路(Integrated Circuit—IC)产业。

大多数超大规模集成电路(Very Large Scale IC—VLSI)在日常生活中有着广泛的应用。

在这些广泛应用的运算中,加法器是组成这些运算的基本单元。

在高性能微处理器和DSP处理器中,加法器的运算时间至关重要。

加法器运算常常处于高性能处理器运算部件的关键路径中,特别是在算术逻辑单元中加法器的运算时间对处理器的速度起着决定性的作用。

随着微处理器的运算速度越来越快,对快速加法器的需求也越来越高。

当今,加法器的设计面临两大课题,首先是如何降低功耗。

随着便携式IC产品例如MP3播放器,手机和掌上电脑等的广泛使用,要求IC工程师对现有运算模块的性能作进一步改进,尤其是在电路的功耗和尺寸方面。

由于现在相应的电池技术难以和微电子技术的发展速度匹敌,这使得IC设计师遇到了许多限制因素,比如高速,大吞吐量,小尺寸,低功耗等。

因此,这使得研究低功耗高性能加法单元持续升温。

另一方面就是如何提高加法器的运算速度。

因为加法运算存在进位问题,使得某一位计算结果的得出和所有低于它的位相关。

因此,为了减少进位传输所耗的时间,提高计算速度,人们设计了多种类型的加法器,如超前进位加法器曼彻斯特加法器、进位旁路加法器、进位选择加法器等。

它们都是利用各位之间的状态来预先产生高位的进位信号,从而减少进位从低位向高位传递的时间。

本文首先介绍了的加法器的类型以及其工作原理,然后重点分析了超前进位加法器的组成结构、结构参数以及其工作原理。

分层设计了加法器的输入输出电路,并通过tanner软件进行仿真实验,从而验证了电路的准确信。

目录第二章设计过程 (18)2.1 电路设计基础原理 (18)2.2 电路各部分结构设计 (20)异或门的CMOS电路原理图如下: (21) (21)异或门的CMOS波形图如下: (21) (21)两输入与门的CMOS电路原理图如下: (22) (22)两输入与门的CMOS波形如下: (22) (22)反相器的CMOS电路如下: (23) (23)反相器的CMOS仿真波形如下: (23) (23)四位超前进位加法器进位的逻辑电路图如下: (24) (24)c1,c2,c3,c4的CMOS级电路原理图及仿真 (25) (25)a.c1的原理图 (25) (25)c1的仿真波形 (26) (26)b.c2的原理图 (26)c2的仿真波形 (27)c.c3的原理图 (28) (29)c3的仿真波形 (29) (30)c4的原理图 (30)c3的仿真波形 (31)2.3 主要电路参数的手工推导 (31)四位超前进位加法器门级电路原理图如下: (34) (34)四位超前进位加法器门级电路分析设定如下: (34) (35)四位超前进位加法器门级电路瞬态分析结果如下: (35) (35)四位超前进位加法器门级电路瞬态分析波形图如下: (35) (36)4.1 用于仿真的电路图如下: (37)四位超前进位加法器门级电路分析设定如下: (38)四位超前进位加法器电路瞬态分析结果如下: (38) (38)四位超前进位加法器门级电路瞬态分析波形图如下: (38) (39)第五章鸣谢及课设总结和体会 (39)参考文献 (40)第一章设计目标1.根据电路原理图,给出电路的CMOS晶体管级电路设计。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档