CMOS2-4译码器设计与HSPICE仿真.doc

上传人:灯火****19 文档编号:136792386 上传时间:2020-07-02 格式:DOC 页数:12 大小:457KB
返回 下载 相关 举报
CMOS2-4译码器设计与HSPICE仿真.doc_第1页
第1页 / 共12页
CMOS2-4译码器设计与HSPICE仿真.doc_第2页
第2页 / 共12页
CMOS2-4译码器设计与HSPICE仿真.doc_第3页
第3页 / 共12页
CMOS2-4译码器设计与HSPICE仿真.doc_第4页
第4页 / 共12页
CMOS2-4译码器设计与HSPICE仿真.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《CMOS2-4译码器设计与HSPICE仿真.doc》由会员分享,可在线阅读,更多相关《CMOS2-4译码器设计与HSPICE仿真.doc(12页珍藏版)》请在金锄头文库上搜索。

1、 集成电路设计课程设计报告 基于HSPICE的晶体管级电路设计与仿真题目:CMOS2-4译码器设计与HSPICE仿真学 院 专业班级 学生姓名 指导教师提交日期 目 录一、设计目的1二、设计要求和设计指标1三、设计内容13.1 CMOS2-4译码器原理及电路设计13.1.1 门级设计13.1.2 门的CMOS实现23.2 仿真结果与分析5四、总结7五、主要参考文献10一、设计目的熟悉数字集成电路设计课程,学习Hspice软件的使用,以及.sp文件的编写,进一步理解掌握CMOS设计组合逻辑电路与时序逻辑电路的基本知识,继而熟练地运用半导体集成电路知识。二、设计要求和设计指标(1)了解C2MOS

2、主从正沿触发寄存器的电路结构、电路原理; (2) 了解电路具体参数,包含的晶体管数目、晶体管尺寸、连线情况等; (3) 利用HSPICE软件,编写.sp 文件; (4) 仿真该sp 文件,得出描述电路性能的函数图线、波形等参数; (5) 在具体的软硬件实验环境中,进行设计模拟、仿真和调试,解决设计调试中的具体问题;得出结论,并完成设计。三、设计内容3.1 CMOS2-4译码器原理及电路设计3.1.1 门级设计 译码器是组合逻辑电路的一个重要器件,把代码状态的特定含义“翻译”出来的过程叫做译码,实现译码操作的电路称为译码器。译码器是可以将输入二进制代码的状态翻译成输出信号,以表示其原来含义的电路

3、。而CMOS2-4译码,是将其输入的两位二进制代码“00”“01”“10”“11”进行翻译,从而控制电路的输出线路,实现四路译码的过程。其真值表如图表1所示:ABY0Y1Y2Y3000111011011101101111110 图表1由图表1可以得到CMOS2-4译码器的布尔表达式为:Y0= Y1= Y2= Y3=从而可以得到CMOS2-4译码器门级设计的电路图,如图表2:图表2 这样,通过两个非门和四个与非门就可以实现如图表1中的真值表所示的逻辑功能。 3.1.2 门的CMOS实现由图表2,通过两个非门和四个与非门就可以实现CMOS2-4译码器的逻辑功能,所以现在的关键问题就是如何利用CMO

4、S实现非门和与非门。非门即CMOS反相器,可以通过一个PMOS和一个NMOS来实现,如图表3所示: 图表3双输入与非门可以通过两个串联的NMOS构成的下拉网络和两个并联的PMOS构成的上拉网络来组成,电路图如图表4所示,其实现的逻辑功能为OUT=图表4 图表5由此可以得到CMOS2-4译码器的总电路图如图表5所示。综上所述,CMOS2-4译码器共使用了两个CMOS反相器、四个CMOS与非门,总共20个晶体管,NMOS与PMOS各占10个,充分体现了CMOS上拉网络与下拉网络之间的对偶特性。根据上图的各个节点及晶体管特性,编写.sp文件如下:*encoder*Parameters and mod

5、els.options post=2 list*Simulation netistM1 1 a 2 2 MP L=2u w=12uM2 1 a 0 0 MN L=2u w=8uM3 3 b 2 2 MP L=2u w=12uM4 3 b 0 0 MN L=2u w=8uM5 Y0 1 2 2 MP L=2u w=12uM6 Y0 3 2 2 MP L=2u w=12uM7 Y0 1 4 4 MN L=2u w=8uM8 4 3 0 0 MN L=2u w=8uM9 Y1 1 2 2 MP L=2u w=12uM10 Y1 b 2 2 MP L=2u w=12uM11 Y1 1 5 5 MN L

6、=2u w=8uM12 5 b 0 0 MN L=2u w=8uM13 Y2 a 2 2 MP L=2u w=12uM14 Y2 3 2 2 MP L=2u w=12uM15 Y2 a 6 6 MN L=2u w=8uM16 6 3 0 0 MN L=2u w=8uM17 Y3 a 2 2 MP L=2u w=12uM18 Y3 b 2 2 MP L=2u w=12uM19 Y3 a 7 7 MN L=2u w=8uM20 7 b 0 0 MN L=2u w=8uVDD 2 0 DC 2.5VVa a 0 PULSE (0 5 0 0.01n 0.01n 5n 10n)Vb b 0 PULSE

7、 (0 5 0 0.01n 0.01n 10n 20n).MODEL MP PMOS (level=2 LD=0.250U TOX=365E-10+ NSUB=6.193910E+15 VTO=-0.826989 KP=2.2870E-05+ GAMMA=0.4793 PHI=0.6 U0=241.796 UEXP=0.214214+ UCRIT=19100.4 DELTA=0.859687 VMAX=47972.9 XJ=0.250U+ LAMBDA=5.403347E-02 NFS=2.351269E+11 NEFF=1.001+ NSS=1.0E+12 TPG=-1.0 RSH=76.0

8、20 CGDO=3.54775E-10+ CGSO=3.54775E-10 CGBO=6.981174E-10 CJ=2.2624E-04+ MJ=0.46650 CJSW=2.3825E-10 MJSW=0.24660 PB=0.700).MODEL MN NMOS (LEVEL=2 LD=0.250U TOX=365E-10+ NSUB=2.13818E+16 VTO=0.84898 KP=5.7790E-05+ GAMMA=0.8905 PHI=0.6 U0=610.8 UEXP=0.244555+ UCRIT=128615 DELTA=2.0298 VMAX=92227.9 XJ=0.

9、250U+ LAMBDA=1.956049E-02 NFS=2.307838E+12 NEFF=1+ NSS=1.0E+12 TPG=1.0 RSH=22.730 CGDO=3.54775E-10+ CGSO=3.54775E-10 CGBO=6.354506E-10 CJ=3.7740E-04+ MJ=0.45890 CJSW=5.1360E-10 MJSW=0.36620 PB=0.800)*stimulus.tran 1n 100n.PRINT tran V(a) V(b) V(Y0) v(Y1) v(Y2) v(Y3).end在上述文件中,输入为V(a),V(b),输出为V(Y0),

10、v(Y1), v(Y2) ,v(Y3),对这些量进行瞬态分析,即可通过观察波形特点来得到仿真结果。3.2仿真结果与分析图表6通过使A、B端输入不同周期、不同脉冲宽度的脉冲来使得A端和B端拥有交错的逻辑电平,进而可以通过仿真来验证CMOS2-4译码器的逻辑功能是否正确。在图表6中,由上至下的波形分别为A、B、Y0、Y1、Y2、Y3的不同波形,通过同一时刻对应的逻辑关系可以得到图表1中真值表的逻辑数值。由仿真图形可以看到,在输入脉冲的边沿容易出现比其他位置更大幅度的毛刺,主要是由于时钟边沿电平在上升和下降时经历的过渡区导致电压不够平稳。因此我们在仿真时修改了脉冲的上升和下降时间,图表6、7、8分别

11、显示了脉冲上升和下降时间为0.08ns,0.05ns和0.01ns时Y0的输出波形: 图表6 tr=tf=0.08ns图表7 tr=tf=0.05ns图表8 tr=tf=0.01ns由图表6、7、8可以看出,当tr和tf较小时,波形的毛刺也会随之减小。在tr=tf=0.08ns时,波形走形比较严重,毛刺也较明显,对输出结果的影响也会比较大。因而消除毛刺对于数字集成电路设计起着非常重要的作用。四、总结 (一)课程设计过程中遇到的问题及解决方法:1、 首先,由于数字集成电路设计这门课程结束已经有一段时间,因而我们对书中的知识点不够熟悉,比如晶体管尺寸的选取和设定,0.25um工艺的标准输入电压值为

12、2.5V等等,导致了我们在做电路设计以及仿真波形时出现了一些与此相关的问题(在仿真分析中已提到,在此不赘述),好在我们及时阅读课本,找到了出现问题的原因及解决方案,使课程设计能够最终完成。2、 对于此次课程设计来说,我认为一个很大的障碍就是sp文件的编写。由于我们以前没怎么接触过hspice软件,以及类似的编程,在学习以往课程时借助的工具通常与Hspice区别较大,有的用verilog语言在FPGA上实现,如quartusII,或是直接绘制出电路图在软件中仿真,如EWB和multisim软件,sp文件的编写与以实现顶层设计为主要目的的前两者区别较大,是以器件为一个模块,需调用元件参数,考虑信号

13、随时间的微小变化,器件的尺寸、参数(如晶体管的宽长比、阈值电压等等),而不是单纯地将器件用理想导线连接即可,需要考虑的因素较多,编程的难度相对较大。因此我们借助于网上下载的一些hspice教程,仔细研读,了解了很多语句的功能,例如:(1)一些重要的输入电路描述语句及其一般形式: 结束语句(.END)一般形式:.END ,它是结束语句整体的一部分。若一个HSPICE 输入文件包含有几个HSPICE 的运行,则每一个HSPICE 运行的最后都要加上.END 语句。注释语句一般形式:* 是用户对程序运算和分析时加以说明的语句。在列出输入程序时会打印出来,但不参与模拟分析。该语句可放在输入文件标题语句以后的任意位置加以注释。(2)电源描述语句本次课程设计选择的电源为脉冲源。脉冲源的一般形式为:PULSE V1 V2 tdtrtfpw 或: PU V1 V2 tdtrtfpw 其中:V1: 脉冲源开始前的初始值V2: 脉动值td: 第一个脉冲开始前的延迟时间,缺省值为0.0tr: 脉冲上升时间,缺省值为TSTEPtf: 脉冲下降时间,缺省值为TSTEPpw: 脉冲宽度,缺省值为TSTEPper: 脉冲周期,缺省值为TSTEP(3)半导体器件描述语句本次课程设计用到的半导体器件为mos场效应管。一般形式:MXXX nd ng ns mname + PS=val

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号