集成电路设计论文
论文题目:2位数值比较器
*名:***
学号:**********
学院:机械与电子工程学院专业:电子科学与技术
班级:10206301
指导教师:***
一、课程实验设计目的
本次课程设计把重点放在电路的设计、制作和仿真上,熟悉在UNIX系统下Candencce软件的使用,掌握电路原理图的输入和编辑及电路的仿真。
在数字系统中,特别是在计算机中都需具有运算功能,一种简单的运算就是比较两个数A和B的大小。
用以对两数A、B的大小或是否相等进行比较的逻辑电路称为数值比较器。
比较结果有A>B、A<B以及A=B三种情况。
二、实验原理
1.数值比较器分类
1位数值比较器:比较输入的两个1位二进制数A、B的大小
多为数值比较器:比较输入的两个多位二进制数A、B 的大小,比较时需从高位到低位逐位进行比较。
2. 1位数值比较器
设输入的两个二进制数位A、B,输出比较的结果为Y(A>B)、Y(A<B)、Y(A=B)三种情况。
输出时为1,否则为0。
逻辑符号示意框图:
Y(A>B)
Y(A=B)
Y(A<B)
2.1 真值表如下:
输入输出
A B Y(A>B)Y(A=B)Y(A<B)
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
2.2根据真值表可写出逻辑函数表达式为
2.3 逻辑图如下所示:
3. 2位数值比较器
3.1 定义:比较两个2 位二进制数的大小的电路
3.2 基础:2位数值比较器是在一位数值比较器上,加上3个与门和2个或门构成的。
3.3 输入:两个2位二进制数A=A1 A0 、B=B1 B0
3.4 原理:
当高位(A1、B1)不相等时,无需比较低位(A0、B0),高位比较的结果就是两个数的比较结果。
当高位相等时,两数的比较结果由低位比较的结果决定。
3.5 真值表
3.6 根据真值表可写出逻辑函数表达式为
FA>B = (A1>B1) + ( A1=B1)(A0>B0)
FA<B = (A1<B1) + ( A1=B1)(A0<B0)
0 0 1
0 1 0
1 0 0
A0 > B0 A0 < B0 A0 = B0
A1 = B1 A1 = B1 A1 = B1 0 1 0 × A1 < B1 0
1
×
A1 > B1 FA=B FA<B FA>B A0 B0 A1 B1 输 出
输 入
FA=B=(A1=B1)(A0=B0) 3.7两位数值比较器逻辑图
三、实验步骤
1. 画原理图及创建符号
1.1 调用cadence软件
进入UNIX系统后,输入icfb 命令调用cadence软件。
此时会弹出CIW 窗口(命令解释窗口),如下图所示:
1.2 创建模型库与单元视图
进入cadence后,点击CIW 窗口的file—》new—》library,将库文件的路径设置在cadence目录下,Name栏输入库文件名为wen。
点击file—》new—》cellview,生成单元视图Libray Name选取为wen,Cell Name分别命名为text1、text2、text3、text4、text5、text6、text7,对应的原理图为非门电路、与门电路、或门电路、或非门电路、1位数值比较器电路、2位数值比较器、总电路。
设置view name为shcemetic,设置tool 为composer schematic。
1.3 画原理图
1.3.1 非门电路图
1.3.2 与门电路图
1.3.3或门电路图
1.3.4 或非门电路图
1.3.5 1位数值比较器电路图
1.3.6 2位数值比较器电路图
1.3.7 总封装电路图
1.3.8 画原理图的几个常用的快捷键:
①i ——Add Instance
②w ——Add Wire
③p ——Add Pin
④q ——Edit Properties
⑤ f ——Fit Window
⑥ c ——Copy
⑦u ——Undo(在CIW 窗口点击option—>User Preferences —>Undo Limit 可修改撤消次
数。
)
⑧m ——Stretch 的快捷键
⑨del ——Delete 的快捷键
1.4 创建符号(封装)
在需要建立Symbol 的原理图中,点击Design—》Create Cellview —》From Cellview弹出Cell From Cellview窗口,如下图所示:
图中Library Name和Cell Name会自动填写为我们所要创建符号的原理图名。
点击OK,弹出Symbol Generation Option 窗口,如下图所示:
电路中各个管脚会分别出现在对话框Pin Specifications 所规定的Left Pins、RightPins、Top Pins 和Bottom Pins 中。
设置完成后单击OK,系统会生成并显示一个长方形的Symbol 符号,通过修改,我们可以
创建非门、与门、或门、或非门、1位数值比较器、2位数值比较器的符号。
1.5 前仿
1.5.1 设置分析环境
在原理图编辑窗口下,仿真之前必须先对分析环境进行设置。
点击Tools——AnalogEnvironment,首先我们要设置模型库文件的路径,点击Setup—>Model librarie将库路径设为/mnt/hgfs/D/lib/csmoc/csmcof/models/s05mixddst02v23.scs,将Section 设为tt,如下图所示:
1.5.2 外加激励
在4个输入端外加4个5v的激励,并都接地
1.5.3 选择分析类型
点击Analyses—>Choose,可以选择分析类型,这里我们选择Tran(暂态)分析,参数设置如下图所示,我们同样也可以选择dc(直流)、ac(交流)、noise(噪声)等作为我们的分析对象。
1.5.4 选择输出信号保存
点击Outputs—》Save All,可选择输出,输出信号选择allpub,器件电流选择all。
这样我们可以有选择性的得到我们需要最后看到的信号。
1.5.5 产生列表
点击Simulation—》Netlist and Run 可进行仿真,点击后会
弹出Welcome to Spectre窗口,点击OK就开始仿真了,如果提示有错误,就需要修改原理图。
通常这样我们无法看到网络表,此时我们可以点击Netlist—>create产生网络表,我们在这里可以看到各个元器件及参数。
注意:每次修改原理图都必须检查并保存、产生Netlist,然后再运行。
1.5.6 查看结果
点击Results—》Direct Plot—》Transient Signal 可查看想看的信号,如点击输入端和输出端,再按下Esc,我们就可看到输入与输出的信号了。
如下图所示:
四、实验小结
在实验室呆了1天半左右的时间,由于平时Candence实验没怎么认真做,所以开始那一天,做的很辛苦,很多东西都不懂,上午基本就学会了建工程和文件,然后画原理图,画的原理图也经常编译时出错,原理图画了又画,当时就觉得很烦;下午,开始仿真,由于对仿真也不熟悉,就不断的问同学、老师,但效果还是不怎么好,自己理解到才能真正做好;晚上继续做,发现了下午没仿真出来的原因,原来是或门电路图画错,于是重新修改,时间关系,没做完;第二天上午继续前一天的图,终于成功仿真出波形。
通过这次实验,让我认识到坚持的重要性,第一天看着别人都做出了几个仿真图,而我的还没出结果时,心里很急,一天都没出结果,真有想放弃的冲动,幸好坚持下来了,第二天轻松出结果。
这次实验让我学习并掌握国际流行的EDA 仿真软件Cadence的使用方法,完成了2位数值比较器集成电路的设计,并进行了前仿,得出了正确的仿真波形。