一位全加器HSPICE设计 - 图文

更新时间:2023-09-21 21:27:01 阅读量: 工程科技 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

设计一·四路与非电路的Hspice设计。 设计二·一位全加器电路的Hspice设计。

专 业 电子科学与技术 学 号

学生姓名

1

指导老师 汪再兴

设计一·四路与非门的设计

一·设计目的:

1、学习使用电路设计与仿真软件HSPICE,练习用网表文件来描述模拟电路,并熟悉应用HSPICE内部元件库;

2、熟悉用MOS器件来设计四位逻辑输入与非门电路。

二·原理(说明) 1.与非门

与非门是与门和非门的结合,先进行与运算,再进行非运算。与运算输入要求有两个,如果输入都用0和1表示的话,那么与运算的结果就是这两个数的乘积。如1和1(两端都有信号),则输出为1;1和0,则输出为0;0和0,则输出为0

2.4路与非门结构及原理:

AB231CD45NAND4OUTPUT

当输入端A、B、C、D中只要有一个为低电平时,就会使与它相连的NMOS管截止,与它相连的PMOS管导通,输出为高电平;仅当A、B、C、D全为高电平时,才会使四个串联的NMOS管都导通,使四个并联的PMOS管都截止,输出为低电平。

真值表如下 A B C Y D 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 0 1 1 0 0 1 1

2

1 1 1 1 1 1

0 0 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 1 1 0 4路与非门mos管的电路图:

三·设计过程:

Hspice要进行仿真的时候,应事先编写好网表文件,再通过导入网表文件进行仿真。

输入的网表文件(.sp)包含以下内容:

(1)电路网表(子电路和宏,电源等) (2)声明所要使用的库 (3)说明要进行的分析 (4)说明所要求的输出

输入的网表文件和库文件可以由原理图的网表生成器或者文本编写产生。输入的网表文件中的第一行必须是标题行,并且.ALTER辅助模型只能出现在文件最后的.end语句之前,除此之外,其他语句可任意排列。

3

通过文本编写好的网表文件如下 4NAND CMOS

.OPTIONS LIST NODE POST .OP

.TRAN 200P 60N

M1 OUT 4 VCC VCC PCH L=1U W=20U M2 OUT 5 VCC VCC PCH L=1U W=20U M3 OUT 6 VCC VCC PCH L=1U W=20U M4 OUT 7 VCC VCC PCH L=1U W=20U M5 1 4 0 0 NCH L=1U W=20U M6 2 5 1 1 NCH L=1U W=20U M7 3 6 2 2 NCH L=1U W=20U M8 OUT 7 3 3 NCH L=1U W=20U VCC VCC 0 5

V1 4 0 PULSE .2 4.8 2N 1N 1N 5N 10N V2 5 0 PULSE .2 4.8 2N 1N 1N 5N 20N V3 6 0 PULSE .2 4.8 2N 1N 1N 5N 10N V4 7 0 PULSE .2 4.8 2N 1N 1N 5N 20N C OUT 0 .01p

.MODEL PCH PMOS LEVEL=1 .MODEL NCH NMOS LEVEL=1 .END

将网表文件导入HSpui中进行仿真,得到lis等文件,并用Avanwaves软件进行观察结果。 结果图如下:

四·仿真分析

4

延迟分析:

在网表文件中添加下列语句

.measure tran tpdr trig v(4) val=2.5 rise=1 targ v(out) val=2.5 fall=1 .measure tran tpdf trig v(4) val=2.5 rise=1 targ v(out) val=2.5 fall=1 .measure tpd param='(tpdr+tpdf)/2' 并在.lis文件中查看结果,结果如下:

****** transient analysis tnom= 25.000 temp= 25.000 ***** tpdr= 340.1950p targ= 2.8402n trig= 2.5000n

tpdf= 340.1950p targ= 2.8402n trig= 2.5000n tpd= 340.1950p

功耗分析:

在网表文件中添加.op语句,并在仿真结果.lis文件中查看: **** voltage sources

subckt element 0:v1 0:v2 0:v3 0:v4 0:vcc volts 200.0000m 200.0000m 200.0000m 200.0000m 5.0000 current 0. 0. 0. 0. -226.4388n power 0. 0. 0. 0. 1.1322u

total voltage source power dissipation= 1.1322u watts

5

设计二·一位全加器的设计

一.原理(说明)

在计算机中2个二进制数之间的加减乘除算术运算都是由若干加法运算实现的.全加器是算术逻辑运算的重要组成部分,对其深入探索研究有重要的意义。一位全加器及其表达式在将2个多位二进制数相加时,除了最低位以外,每位都应该考虑来自低位的进位,即将2个对应位的加数和来自低位的进位3个数相加,实现这种运算电路即是全加器.设A是加数,B是被加数,CI是来自低位的进位,S是本位的和,CO是向高位的进位.根据二进制数加法运算规则和要实现的逻辑功能,得出一位全加器真值表,

全加器除了两个1位二进制数相加以外,还与低位向本位的进位数相加.表为全加器的真值表。

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1 Cin 0 1 0 1 0 1 0 1 Cout 0 0 0 1 0 1 1 1 Sum 0 1 1 0 1 0 0 1 由真值表可得出逻辑函数式

6

式中,Ai和Bi是两个相加的1为二进制数,Ci-1是由相邻低位送来的进位数,SI是本位的全加和,CI是向相邻高位送出的进位数。

一位全加器将A、B和进位输入Cin作为输入,计算得到和Sum以及最高位的进位输出Cout。每一位得到的和与进位输出都直接受其上一位的影响,其进位输出也会影响下一位。最终,整个全加器的和与输出都受进位输入Cin的影响。

二.设计过程

接下来用Cadence软件包,采用MOS管机构,对各个门电路进行设计,并最终整合成整个一位全加器。 2输入异或门的电路图

7

3输入或门的电路图

8

2输入与门的电路

最终形成的顶层电路图

三.运用Hspice进行仿真。

9

接下来根据电路图,写出各个部分的Hspice的网表文件,并运用hipice的子电路思想,整合整个一位全加器电路的网表文件,并添加激励,产生最后结果并验证

一位全加器的Hspice网表文件。 ADDER703

.GLOBAL vdd!

.OPTIONS LIST NODE POST .OP

.TRAN 1N 8u

.subckt or3 a b c y

m0 net10 a 0 0 nch L=1U W=20U m1 y net10 0 0 nch L=1U W=20U m2 net10 c 0 0 nch L=1U W=20U m3 net10 b 0 0 nch L=1U W=20U

m4 net14 b net033 net033 pch L=1U W=20U m5 y net10 vdd! vdd! pch L=1U W=20U m6 net10 c net14 net14 pch L=1U W=20U m7 net033 a vdd! vdd! pch L=1U W=20U .MODEL NCH NMOS LEVEL=1 .MODEL PCH PMOS LEVEL=1 .ends or3

.subckt and2 a b y

m0 y net10 0 0 nch L=1U W=20U

m1 net10 a net3 net3 nch L=1U W=20U m2 net3 b 0 0 nch L=1U W=20U

m3 y net10 vdd! vdd! pch L=1U W=20U m4 net10 b vdd! vdd! pch L=1U W=20U m5 net10 a vdd! vdd! pch L=1U W=20U .MODEL NCH NMOS LEVEL=1 .MODEL PCH PMOS LEVEL=1 .ends and2

.subckt xor2 a b y

m0 y a net27 net27 nch L=1U W=150U m1 net27 b 0 0 nch L=1U W=150U m2 y net11 0 0 nch L=1U W=150U m3 net11 b 0 0 nch L=1U W=150U m4 net11 a 0 0 nch L=1U W=150U

m5 net11 b net020 net020 pch L=1U W=5U m6 net020 a vdd! vdd! pch L=1U W=5U m7 net018 net11 vdd! vdd! pch L=1U W=5U m8 net018 a y y pch L=1U W=5U m9 net018 b y y pch L=1U W=5U .MODEL NCH NMOS LEVEL=1

10

.MODEL PCH PMOS LEVEL=1 .ends xor2

xi3 net13 net10 net7 cout or3 xi5 b cin net7 and2 xi4 cin a net10 and2 xi2 a b net13 and2 xi1 net14 cin sum xor2 xi0 a b net14 xor2

VA a gnd PULSE 0 5 0N 1N 1N 1u 2u VB b gnd PULSE 0 5 0N 1N 1N 2u 4u VC cin gnd PULSE 0 5 0N 1N 1N 4u 8u V1 vdd! 0 dc=5 .END

将网表文件导入到hspui软件中进行仿真,再用Avanwaves软件观察结果。 一位全加器的Hspice结果截图。

结果如下:

11

四·仿真分析

延迟分析:

在网表文件中添加下列语句:

.measure tran tpdr trig v(a) val=2.5 rise=2 targ v(sum) val=2.5 fall=2 .measure tran tpdf trig v(a) val=2.5 rise=2 targ v(cout) val=2.5 fall=2 .measure tpd param='(tpdr+tpdf)/2' 结果: adder703

****** transient analysis tnom= 25.000 temp= 25.000 ***** tpdr= -1.9985u targ= 2.0020u trig= 4.0005u tpdf= 1.0013u targ= 5.0018u trig= 4.0005u tpd=-498.5775n

功耗结果:因为之前有添加.OP语句,所以可以直接从lis文件中查看到 voltage sources

subckt element 0:v1 0:va 0:vb 0:vc volts 5.0000 0. 0. 0. current -145.3239p 0. 0. 0. power 726.6195p 0. 0. 0.

otal voltage source power dissipation= 726.6195p watts

总结:

这次课设真可谓步步艰辛,整个课设的过程中,遇到了许多的困难,主要因为之前没有接触过HSPICE,在网表文件的编写遇到了很大的困难,好在在团队的努力下,查阅资料,网上搜索相关教学,通过调用子电路的方式,完成了整个课设。同时让我感受到我在这次课设中我只是学到了Hspice软件的一点皮毛,它的强大之处,还需要我继续的学习,才能领悟。

同时,也让我深刻体会到,团队精神,团队合作的重要性,如果没有大家齐心协力的努力,我想这个课设将无法完成。这也是我以后更加需要学习的地方。

12

课设虽然只是暂时的,但是学习与探索精神却必须是我们都要具备的思想,学海无涯,继续学习,才能更好的提高我们的自身素质,锻炼我的意志,让我们能在以后步入社会的生活中走得更远,走的更好。

13

本文来源:https://www.bwwdw.com/article/k0uh.html

Top