【模拟CMOS集成电路设计】带隙基准(Bandgap)设计与仿真

news2024/11/14 23:56:47

【模拟CMOS集成电路设计】带隙基准(Bandgap)设计与仿真

  • 前言
  • 一、 设计指标
  • 二、 电路分析
  • 三、 仿真测试
    • 3.1测试电路图
    • 3.2测试结果
      • (1)基准温度系数仿真
      • (2)瞬态启动仿真
      • (3)静态电流仿真
      • (4)线性调整率仿真
      • (5)电源抑制PSR仿真
  • 四、测试结果
  • 五、总结
  • 附录
    • MOS器件尺寸表
    • Resistor尺寸
    • BJT尺寸

前言

  此次设计,未使用运放,使用电流镜结构为基础的Bandgap来满足设计指标,主要目标是在结构简单的前提下满足设计指标要求。

一、 设计指标

  本次设计指标,如表1所示
在这里插入图片描述
  (线性调节率指输出基准电压随直流VDD的变化率,电源电压从电路正常工作的最小电压起到额定电源电压为止)
指标分析:
  本次Bandgap设计,选用的工艺是TSMC 18um工艺,采用电流镜结构为基础,设计参数要求电源抑制 P S R < − 40 d B PSR < -40dB PSR<40dB,因此需要采用Cascode电流镜提高, 对于cascode结构的采用,需要注意电压裕度的问题,本次设计电源电压3.3V,对于TSMC18工艺,“pmos3v” 晶体管,阈值电压 V T H P ≈ 0.7 V V_{THP}≈0.7V VTHP0.7V,对于NMOS器件,选取中等阈值电压的“nmosmvt3v”晶体管,其阈值电压 V T H N ≈ 0.5 V V_{THN}≈0.5V VTHN0.5V,堆叠的MOS管由于衬偏效应,其阈值电压可能更高,甚至达到 0.8 ∼ 1.1 V 0.8\sim 1.1V 0.81.1V,对于PNP二极管,当 I B E = 10 u A I_{BE}=10uA IBE=10uA时, V B E ≈ 0.7 V V_{BE}≈0.7V VBE0.7V。因此经过初步判断,采用普通堆叠cascode电路无法正常工作,需要采用低压的Cascode结构,才能满足需求。
考虑到功耗指标,对电流进行分配,Bandgap电路两支路与电流镜复制输出的电流,均为10uA。
  为方便的实现输出基准电压 0.6 ∼ 1.2 V 0.6\sim 1.2V 0.61.2V,优先考虑采用电流模结构,通过电流镜复制零温度系数的电流,通过电阻转换成零温度系数的电压输出,通过电阻分压,实现多电压输出。

二、 电路分析

  通过对表1的指标分析,搭建的电路如图2.1所示。
在这里插入图片描述
  M1-M5构成启动电路,当电源上电时,启动电路让电路在上电时摆脱简并偏置点,使Bandgap电路脱离零状态的工作点,进而稳定在期望的工作状态下。电源上电瞬间,Vbias=0,M1保持关断,节点A为高电平,处于导通状态;M4-M5构成线性电流镜,通过复制的电流为节点B充电,帮助Bandgap下半部分电路开启;当Bandgap完全开启, V b i a s ≈ 0.7 V V_{bias}≈0.7V Vbias0.7V,M1开启,进而节点B拉低,M3截止,启动电路关闭。
M6-M12与R8-R9构成低压Cascode电流镜自偏置结构,控制M6与M7的电位近似相等,即 V C = V D V_C=V_D VC=VD ,流过R1的电流为 ( ∣ V B E 0 ∣ − ∣ V B E 1 ∣ ) / R 1 = Δ V B E / R 1 , \begin{aligned}(|V_{BE0}|& -|V_{BE1}|)/R_1=\Delta V_{BE}/R_1,\end{aligned} (VBE0VBE1)/R1=ΔVBE/R1,,温度系数为正,流过R3的电流 V D / R 3 = V C / R 3 = ∣ V B E 0 ∣ / R 1 V_D/R_3=V_C/R_3=|V_{BE0} |/R_1 VD/R3=VC/R3=VBE0∣/R1,温度系数为负,正负温度系数的电流再节点D上合成,进而得到零温度系数的电流,然后通过电流镜复制,零温度系数的电流在电阻上产生零温度系数的电压,假设Cascode电流镜复制比例为1,最终输出的基准电压如式(1.1)所示

在这里插入图片描述
  其中M为输出电流镜的复制倍数,设置为1。
  其中电路功耗主要有电阻R1确定,电路正常工作时,启动电路关闭,但由于M1的开启,因此仍有部分静态电流 I S I_{S} IS(分配5uA),Cascode电流镜与输出电流镜均为等比例复制,满足 I M 12 = I M 13 = I M 14 I_{M12}=I_{M13}=I_{M14} IM12=IM13=IM14,R1所在支路电流如式(1.2)所示。
在这里插入图片描述

三、 仿真测试

3.1测试电路图

在这里插入图片描述

3.2测试结果

(1)基准温度系数仿真

  通过dc仿真,将温度从-40~125℃进行扫描,观察输出波形,温度特性良好,基准温度系数 T C V = ( V m a x − V m i n ) / ( V r e f × ( T m a x − T m i n ) ) × 1 0 6 = 8.07 p p m / ℃ TCV=(V_{max}-V_{min})/(V_{ref}×(T_{max}-T_{min}))×10^6=8.07ppm/℃ TCV=(VmaxVmin)/(Vref×(TmaxTmin))×106=8.07ppm/℃测试结果如图3.1所示。
在这里插入图片描述

(2)瞬态启动仿真

  通过tran仿真,电源在10ns开始上电,在90ns上升到3.3V观察输出电压,通过图3.2,该电路图可正常启动。
在这里插入图片描述

(3)静态电流仿真

  固定电源电压为3.3V,对温度从 − 40 ∼ 125 ℃ -40\sim125℃ 40125℃进行仿真,观察所有支路的总电流,如图3.3所示,电流最大 31 u A 31uA 31uA 满足设计指标。
在这里插入图片描述

(4)线性调整率仿真

  通过dc仿真将电源电压从0~5V进行扫描,在正常工作电源电压下,测量输出线性调整率 S L I N E = ( V m a x − V m i n ) / V r e f × 100 % = 1.95 m V / V S_{LINE}=(V_{max}-V_{min})/V_{ref} ×100\%=1.95mV/V SLINE=(VmaxVmin)/Vref×100%=1.95mV/V
在这里插入图片描述

(5)电源抑制PSR仿真

  通过AC仿真,在电源电压加小信号波动,观察输出,测量PSR,通过图3.5可知,在低频为 P S R = − 48.17 d B PSR = -48.17dB PSR=48.17dB,满足设计指标。

在这里插入图片描述

四、测试结果

  本次Bandgap设计,输出三个基准电压,分别为 0.4 V 、 0.8 V 、 1.2 V 0.4V、0.8V、1.2V 0.4V0.8V1.2V,通过仿真测得相关参数,结果汇总如表2所示。
在这里插入图片描述

五、总结

  本次bandgap设计,通过基于低压cascode电流镜结构的电流模结构,实现预设性能指标,但性能仍有待提升,由于cascode电流镜结构需要更大的电压裕度,因此对低压应用有严格限制,可换用电压模+Buffer结构对相关指标进一步优化。或者采用运放结构(但是电流应该合理分配,甚至运放中一些管子可以工作在亚阈值区,满足低功耗要求)。

附录

MOS器件尺寸表

在这里插入图片描述

Resistor尺寸

在这里插入图片描述

BJT尺寸

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/683357.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

地埋式积水监测系统在城市道路中的应用

伴随着汛期的到来&#xff0c;多地遭到大雨及暴雨的袭击&#xff0c;导致城市内涝现象频繁发生&#xff0c;使整个城市陷入瘫痪状态&#xff1b;交通道路受阻&#xff0c;严重影响了市民的生活&#xff0c;国家有关部门也因此出台了不少相关防涝政策。 积水监测系统可以加强城…

《WebGIS快速开发教程第二版》完成修订了

端午节过后各位小伙伴可能也要慢慢回归工作了&#xff0c;尽管不想工作不想烧脑但是没有办法&#xff0c;该干的活一样也少不了是吧&#x1f92a;。 趁着空闲时间我完成了《WebGIS快速开发教程》这本书 的修改工作。相对于第一版&#xff0c;第二版进行了如下改动&#xff1a;…

加密与解密 调试篇 静态分析技术 (三)枚举/IDC/插件

目录 1.枚举类型 2.FLIRT 1.应用FLIRT签名 3.IDC脚本 IDC分析加密代码 4.插件 5.IDA调试器 1.加载目标文件 2.调试器界面 ​编辑 3.调试跟踪 4.断点 5.跟踪 1.枚举类型 这是一段c语言源代码 #include <stdio.h> int main(void) {enum weekday { MONDAY, TUE…

Redis入门(6)-ZSet

Redis中的Zset是有序的、可重复的&#xff08;元素不能重但score可重&#xff09;&#xff0c;其中每个元素都有一个分值score&#xff0c;Redis会根据其score对其进行从小到大的排序。 1.zadd key score member [score member] 添加元素 zadd subject 3 JAVA 2 C 1 mysql…

操作系统——磁盘调度算法的模拟与实现

一、实验题目 磁盘调度算法的模拟与实现 二、实验目的 (1) 了解磁盘结构以及磁盘上数据的组织方式。 (2) 掌握磁盘访问时间的计算方式。 (3) 掌握常用磁盘调度算法及其相关特性。 三、总体设计&#xff08;含背景知识或基本原理与算法、或模块介绍、设计步骤等&#xf…

计算机网络--网络编程(1)

简单认识一下传输层中的UDP和TCP&#xff1a; TCP&#xff1a;有链接&#xff0c;可靠传输&#xff0c;面向字节流&#xff0c;全双工 UDP&#xff1a;无连接&#xff0c;不可靠传输&#xff0c;面向数据报&#xff0c;全双工 有链接类似于打电话&#xff0c;通了就是有链接。…

软件测试项目中如何做好单元测试

前言 如《Unit Testing》书里提到&#xff0c;学习单元测试不应该仅仅停留在技术层面&#xff0c;比如你喜欢的测试框架&#xff0c;mocking 库等等&#xff0c;单元测试远远不止「写测试」这件事&#xff0c;你需要一直努力在单元测试中投入的时间回报最大化&#xff0c;尽量…

kotlin Flow系列之-SharedFlow

文章目录 前言SharedFlow之创建SharedFlow之缓存系统buffer&Slots SharedFlow源码发送数据接收数据SharedFlow存在的bug 前言 Kotlin中Flow被分为冷流 热流 两大类。比如经常被使用的flow{}函数就可以创建一个冷流。而本文的主角SharedFlow就是一个热流。冷流需要调用Flow…

Makefile基本原理详解及使用

1、什么是 Makefile 一个企业级项目&#xff0c;通常会有很多源文件&#xff0c;有时也会按功能、类型、模块分门别类的放在不同的目录中&#xff0c;有时候也会在一个目录里存放了多个程序的源代码。 这时&#xff0c;如何对这些代码的编译就成了个问题。Makefile 就是为这个问…

电路图中常见符号总结

前辈说不会FPGA电路原理图&#xff0c;就不能知道如何去控制、如何去实现 因此本篇记录看的原理图中见到的符号&#xff0c;虽然都很基础&#xff0c;但我都不会&#xff0c;难受&#xff0c;因此只能看一点记一点 >_< >_< >_< >_< >_&…

如何学习和提升软件测试与调试的能力?

要学习和提升软件测试和调试能力&#xff0c;可以考虑以下方法&#xff1a; 学习软件测试基础知识&#xff1a; 了解软件测试的基本概念、原则和方法。可以通过阅读相关书籍、参加在线课程或培训来学习软件测试的基础知识。 掌握测试技术和工具&#xff1a; 了解各种测试技术…

南卡OE Pro新品上线即刻售罄:秒空背后的热潮是什么?

近日&#xff0c;南卡OE Pro品牌的最新产品上线&#xff0c;却在瞬间被抢购一空&#xff0c;引起了广大耳机爱好者的热烈关注和激烈讨论。这一现象再次展示了南卡OE Pro在耳机市场的强劲号召力和深受用户喜爱的地位。让我们一起揭开这场秒空背后的热潮&#xff0c;探究引发如此…

全网首个Ozon选品数据分析软件重磅上线!

【萌啦OZON数据】分析工具重磅上线&#xff01;在线解析俄罗斯市场、开启热销选品新玩法&#xff01;1对1免费指导&#xff0c;详细演示软件选品&#xff0c;快速上手&#xff01; 欧洲第四大电商市场OZON 近日&#xff0c;俄罗斯电商平台Ozon2023年Q1业绩新鲜出炉。数据显示&a…

OpenStack(T版)基础环境准备

文章目录 OpenStack(T版)基础环境准备centos硬件安装版本安装两台centos7服务器虚拟网络编辑器配置网络修改主机名主机名映射关闭防火墙和SElinux配置时间服务器安装openstack(T版)包安装SQL数据库(controller)安装消息队列rabbitmq(controller)安装分布式内存对象缓存系统memc…

代码随想录算法训练营第46天 | 139.单词拆分 + 多重背包理论基础 + 背包问题总结

今日任务 目录 139.单词拆分 - Medium 多重背包理论基础 背包问题总结 递推公式 遍历顺序 139.单词拆分 - Medium 题目链接&#xff1a;力扣-139. 单词拆分 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意…

操作系统——实现一个简单的 shell 命令行解释器

一&#xff1a;实验题目 实现一个简单的 shell 命令行解释器 二&#xff1a;实验目的 本实验主要目的在于进一步学会如何在 Linux 系统下使用进程相关的系统调用&#xff0c;了解 shell 工作 的基本原理&#xff0c;自己动手为 Linux 操作系统设计一个命令接口。 三&…

WebSocket是什么,怎么用

74. WebSocket是什么&#xff0c;怎么用 当涉及到实时通信和即时更新的需求时&#xff0c;WebSocket 是一种强大且常用的解决方案。 1. 什么是 WebSocket&#xff1f; WebSocket 是一种在客户端和服务器之间实现双向通信的协议。它允许服务器主动向客户端推送数据&#xff0…

在Mac上安装Aspectj1.9.8(用于Java17)

1. 确定所使用的Java版本和AspectJ的对应关系 2. 下载AspectJ包 3. 安装AspectJ 4. 添加AspectJ对应的环境变量 5. 测试AspectJ 5.1 简单命令行测试安装是否成功 5.2 在IDEA中添加对AspectJ的支持【todo】 5.3 敲测试代码并进行测试【todo】 -----------------------------…

如何将window文件夹挂载到VMware系统mnt目录

背景&#xff1a;项目开发过程中&#xff0c;通常是在Windows上编码&#xff0c;有些框架和软件只能够在Linux上面执行&#xff0c;如果在 VMware中的Linux上面开发不太方便&#xff0c;因此需要在Windows上面开发好再同步到Linux上面运行。 软件&#xff1a; Samba客户端 V…

nodejs安装及环境变量配置(修改全局安装依赖工具包和缓存文件夹及npm镜像源)

本机环境&#xff1a;win11家庭中文版 一、官网下载 二、安装 三、查看nodejs及npm版本号 1、查看node版本号 node -v 2、查看NPM版本号&#xff08;安装nodejs时已自动安装npm&#xff09; npm -v 四、配置npm全局下载工具包和缓存目录 1、查看安装目录 在本目录下创建no…