1.SPICE电路结构与网表

电路结构图:

SPICE网表:

*ADDER703.GLOBAL vdd!.OPTIONS LIST NODE POST.OP.TRAN 1N 8u.subckt or3 a b c ym0 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 ym0 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 ym0 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
.MODEL PCH PMOS LEVEL=1.ends xor2xi3 net13 net10 net7 cout or3
xi5 b cin net7 and2
xi4 cin a net10 and2
xi2 a b net13 and2
xi1 net14a cin sum xor2
xi0 a b net14 xor2VA 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.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'
.END

电路结构图:

SPICE网表:

*ADDER703.GLOBAL vdd!.OPTIONS LIST NODE POST.OP.TRAN 1N 8u.subckt or2 a b ym0 y 2 0 0 nch L=1U W=20U
m1 2 a 0 0 nch L=1U W=20U
m2 2 b 0 0 nch L=1U W=20U
m3 y 2 vdd! vdd! pch L=1U W=20U
m4 1 a vdd! vdd! pch L=1U W=20U
m5 2 b 1 1 pch L=1U W=20U
.MODEL NCH NMOS LEVEL=1
.MODEL PCH PMOS LEVEL=1.ends or2.subckt and2 a b ym0 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 nor2 a b ym0 y a 0 0 nch L=1U W=20U
m1 y b 0 0 nch L=1U W=20U
m2 y a 1 1 pch L=1U W=20U
m3 1 b vdd! vdd! pch L=1U W=20U
.MODEL NCH NMOS LEVEL=1
.MODEL PCH PMOS LEVEL=1.ends nor2.subckt or3 a b c ym0 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 and3 a b c ym0 y 1 0 0 nch L=1U W=20U
m1 1 a 2 2 nch L=1U W=20U
m2 2 b 3 3 nch L=1U W=20U
m3 3 c 0 0 nch L=1U W=20U
m4 y 1 vdd! vdd! pch L=1U W=20U
m5 1 c vdd! vdd! pch L=1U W=20U
m6 1 b vdd! vdd! pch L=1U W=20U
m7 1 a vdd! vdd! pch L=1U W=20U
.MODEL NCH NMOS LEVEL=1
.MODEL PCH PMOS LEVEL=1.ends and3.subckt inv a ym0 y a 0 0 nch L=1U W=150U
m1 y a vdd! vdd! pch L=1U W=150U
.MODEL NCH NMOS LEVEL=1
.MODEL PCH PMOS LEVEL=1.ends invxi0 a b 1 or2
xi1 1 cin 2 and2
xi2 a b 3 and2
xi3 2 3 4 nor2
xi4 4 cout inv
xi5 a b cin 5 or3
xi6 4 5 6 and2
xi7 a b cin 7 and3
xi8 6 7 8 nor2
xi9 8 sum invVA 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.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'.END

2.电路仿真结果-基础部分

文件中:

修改后:

3.实验结果分析

一位全加器的真值表

实验结果与真值表吻合。
文件中-sum:

修改后-sum:

文件中-cout:

修改后-cout:

文件中&修改后-a:

文件中&修改后-b:

文件中&修改后-cin:

首先,根据真值表,可以写出如下的表达式:

然后分析两种电路:
两种电路均可实现全加器的功能
第一种已给的电路中,一共使用3个与门,2个异或门,1个或门,共使用6个门,一共46个晶体管
第二种电路中一共使用4个与门,2个或非门,2个或门,2个非门,共使用10个门
两电路图相比,第一个逻辑上更简单,容易理解,并且在实现上由于使用的门的个数更少,种类更少,并且每种门的输入数目相同,因此实现起来更方便;第二个电路逻辑上更复杂,虽然也能通过化简或真值表证明与第一种是相同的,但使用的门的种类和个数都更多,并且每种门有的是2输入的有的是3输入的,需要写成不一样的,晶体管就更多了,实现较麻烦
这一点可以从我们计算的延迟时间中看出来:
首先是文件中的电路和网表文件产生的延迟时间:

然后是我们修改后的电路得到的延迟时间:

可以看到,修改后的电路的延迟时间相对之前文件的延迟时间大了一点,这与我们的理论计算似乎有冲突。因为按照我们的计算,我们修改后的电路虽然所用的门比较多,但因为减少掉了一个xor门,所用的时间应该会比之前的短。这是因为,我们文件中的pmos和nmos的宽长比并不是固定的,而是有多组值,所以才导致了这样的结果。

微电子电路——一位全加器相关推荐

  1. 用行为级描述方式实现一个加法器电路(基于ISE的设计)(2输入1位全加器电路)

    准备 先用行为级描述方式实现一个2输入一位全加器电路 由于后面需要使用综合工具进行综合,这里先声明使用的FPGA是Virtex-7系列的: 目的很单纯,就是熟悉一下使用ISE进行FPGA设计的一般流程 ...

  2. FPGA(2)--例化语句--1位全加器

    文章目录 一.实验目的 二.实验内容 三.实验设计 四.实验结果及仿真 一.实验目的 熟悉元件封装方法,掌握层次化电路设计方法:掌握VHDL例化语句的设计方法. 二.实验内容 1.用VHDL语言设计1 ...

  3. FPGA实现1位全加器设计

    文章目录 一.基础知识 1. 半加器 2. 全加器 二.原理图实现1位全加器 三.Verilog实现1位全加器 四.参考

  4. 试用一片3-8译码器74LS138和其它必要的门电路设计一个一位全加器, 被加数为Ai, 加数为Bi, 低位来的进位为Ci-1, 本位和为Si, 本位对高位的进位为Ci

    (1)根据题目的描述, 列出真值表. 一位全加器真值表 Ai Bi Ci-1 Si Ci 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 ...

  5. FPGA——1位全加器和4位全加器的实现

    目录 一.认识全加器 1.半加器 2.1位全加器 3.4位全加器 二.使用原理图实现1位加法器 1.原理图实现半加器 2.半加器元件实现全加器 三.使用原理图实现4位加法器 四.Verilog HDL ...

  6. 一位全加器 VHDL设计与实现

    作者:chenjieb520 一.设计目的 熟悉Quartus II的VHDL文本设计流程全过程,学习组合电路的设计,仿真和测试. 二.设计内容 设计一位全加器,给出程序的设计.软件编译.仿真分析.硬 ...

  7. 第三次笔记:算术逻辑单元 电路基本原理 加法器的设计 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 无符号整数加减法 标志位的生成

    文章目录 算术逻辑单元 逻辑运算 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 加法器原理 补码加法器原理 无符号整数加减法 标志位的生成 算术逻辑单元 算术逻辑单元就是运算器里面的AL ...

  8. 原理图以及vhdl设计一位全加器

    原理图设计以及VHDL设计 一位加法器 全加器原理 全加器真值 输出表达式 原理图设计法 VHDL设计法 代码如下: 全加器是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器.一位全加器 ...

  9. 广工计组实验f2一位全加器

    实验原理 半加器设计原理:只考虑两个一位二进制数的相加,而不考虑来自低位进位数的运算电路,称为半加器. 其中:a.b分别为被加数与加数,作为电路的输入端:s0为两数相加产生的本位和,它和两数相加产生的 ...

  10. 【计算机组成原理】一位全加器

    一位全加器 在设计全加器的过程中,需要考虑如下两个问题: 如何产生相加数的和数 如何产生相加数的进位数 和数的逻辑实现 和为1:0+1=11+0=1和为0:0+0=01+1=0和为1: 0 + 1 = ...

最新文章

  1. 公开可看:CS224N 2021冬季课程全部上线YouTube,Manning主讲
  2. SurfaceView-----------------转
  3. php curl基本操作
  4. tensorboard出现OSError: [Errno 22] Invalid argument问题解决
  5. ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
  6. Android开发面试题之Android四大组件
  7. LeetCode 686. 重复叠加字符串匹配
  8. 2022年中国母婴新消费白皮书
  9. Python Pycharm 配置Tips01 - 配置Pycharm的Python版本
  10. 广西桂林平均工资是多少?
  11. 中关村程序员的 996 强制加班与工作效率成正比吗?
  12. c++实现Matlab矩阵Matrix类(实矩阵Matrix、复矩阵CMatrix)
  13. 由中缀式转化为后缀式
  14. 华为员工实力炫富,工作六年有房有豪车,存款六十万
  15. 医疗中的ai_医疗保健中自主AI的障碍
  16. 高速公路坐标高程计算软件3.5发布
  17. [堆利用:TCache机制]HITB CTF 2018:gundam
  18. grunt,gulp
  19. Ch8 电路噪声学习笔记(一)baker 《CMOS Circuit Design, Layout, and Simulation》
  20. pyinstaller打包有pandas和numpy库过程中遇到的bug及处理

热门文章

  1. 二叉树遍历算法(递归实现+层次遍历)
  2. 二叉树遍历——递归算法
  3. 山东大学软件学院计算机组成原理课程设计实验三
  4. 前端框架TopJUI使用心得
  5. Prescan:关于Prescan与Matlab联合仿真问题小总(不定时补充)
  6. matlab深度学习之LSTM预测
  7. Base64编码工具类
  8. 【昇润蓝牙】蓝牙4.0BLE模组(型号CC2541) 两个蓝牙之间互相通信的使用日志
  9. ToDesk安全流畅远控软件!
  10. iphone 控制 android手机,Apple iPhone使用Teamviewer远程控制Android手机以实现各种操作,例如远程计时....