电流模架构Bandgap设计与仿真

article/2025/8/15 7:15:25

电流模架构Bandgap设计与仿真

0. Bandgap电压基准源

带隙基准作为集成电路中一个重要模块,被广泛应用在低压差线性稳压(LDO)、充电电池保护芯片和通信电路、射频收发器、flash存储器等多种模拟及数模混合集成电路中,并且是片上集成系统(SOC)芯片中不可或缺的部分,为整个芯片提供精确的电压参考点。

1. Bandgap的温度系数补偿原理

带隙基准源的基本原理是将两个拥有相反温度系数的电压以合适的权重相加,最终获得具有零温度系数的基准电压。因为传统带隙基准的输出值为1.2V,与硅带隙电压Eg/q值基本相等,所以这种基准电压源形象地称为带隙基准源。

1.1 负温度系数电压

双极晶体管的基极-发射极电压,或者更一般的说,一个正向导通的二极管具有负温度系数,可以写出其正向偏置电流:Ic=Isexp(VBE/VT),其中VBE为基极-发射极电压,VT=kT/q,Is为饱和电流,有Is=bT4+mexp(-Eg/kT),b为比例系数,m≈-3/2,Eg为Si的带隙能量,常温下Eg=1.12evVBE=VTln(IC/IS),VBE对温度求导有:
在描述式1.1
当VBE≈800mV时,∂VBE/∂T≈-1.5mV/K。

1.2 正温度系数电压

当两个晶体管工作在不相等的电流密度下,那么它们的基极-发射极电压的差值与温度成正比:
ΔVBE=VBE1-VBE2=VTln(nIC/IS)-VTln(IC/IS)=VTln n
式1.2.1
VBE对温度求导有:在这里插入图片描述式1.2.2
其中k/q≈0.087mV/K。

2. 电流模架构Bandgap分析与设计

2.1 Bandgap结构分析

Bandgap有电流模和电压模两种常见结构,如下所示:
在这里插入图片描述
图2-1 电压模架构Bandgap
此结构存在正反馈和负反馈两个环路,为了使负反馈强于正反馈,运放的正端需接在R1端。运算放大器将VN和VP两端电压嵌位,将在R1两端产生一个ΔVBE的压降,产生PTAT(proportional to absolute temperature,正比于绝对温度)电流,电流值为VTln n/R1,其中Q2由N个pnp并联而成。M1、M2给Q1、Q2提供大小相等的电流,M3则将该PTAT电流镜像到Q3,R2乘以该电流并和负温度系数电压VBE3叠加产生VREF。VREF的计算关系如下:
在这里插入图片描述式2.1
为了得到零温度系数电压,电压模架构Bandgap只能固定输出1.2V左右的带隙基准电压。
在这里插入图片描述
图2-2 电流模架构Bandgap
通过运放嵌位作用,R1将产生PTAT电流,R2、R3是两个大小相等的电阻,将产生大小为VBE/R2的CTAT(反比于绝对温度)电流,通过调整R1、R2将产生零温度系数电流,最后通过M3将电流镜像到输出端,VREF的值可以通过R4调节。本Bandgap设计采用电流模架构。

2.2 Bandgap性能参数

2.2.1 温度系数

温度系数(Temperature Coefficient,TC)有时也称温漂系数,单位为ppm/℃,指带隙基准电路的输出电压随温度变化的参数,它是设计带隙电压基准的重要参数之一。
在这里插入图片描述式2.2
中的ΔVref 表示在ΔT 温度变化范围内最大值与最小值的差,Average(Vref)表示ΔT 内的平均基准电压值。

2.2.2 电源抑制PSR

电源抑制反映了当电源有波动声时,基准输出所受的影响程度。PSR 的表达式为:在这里插入图片描述式2.3
带隙基准电路的电源抑制与其核心电路中的运放有密切的关系,在一定程度上,运放增益越大,电源抑制性能越好。

2.3 Bandgap设计

2.3.1 Bandgap核心电路

Bandgap完整电路结构如图所示:
在这里插入图片描述
在这里插入图片描述

图2.3上图为BandGap电路图,下图为运放电路图
本次Bandgap设计采用最基本的电流模结构,采用上篇文章设计的运算放大器计对电压进行嵌位,运放增益约为66dB,GBW约为54MHz,相位裕度约为62°。
设计步骤如下:

  1. 选择n等于8,于是正温度系数电压约为54mV。
  2. Q1、Q2晶体管支路电流设定为1uA,R1=54mV/1uA=54kΩ,于是PTAT电流的温度系数约为3.35nA/K。
  3. 当T等于300K时,VBE的温度系数约为-1.5mV/K,为使常温下M1、M2电流达到零温度系数,(∂VBE/∂T)*1/R3≈-3.35nA/K,得R3≈447.7kΩ。
  4. 调整R4的大小可以得到不同的基准电压,为了匹配M1,2和M3,VREF最优取值为VBE,本次设计VREF取800mV。

2.3.2 自启动电路

带隙基准电路可能存在“简并”状态,换句话说就是电路中存在两个稳定点:一个是系统需要的工作模式,另一个就是零电流状态。当M1栅极处于高电平时,M1~M3均被关断,此时VREF处于低电平,为了让电路正常工作,我们需要添加启动电路,如图2.3所示:
当VREF处于低电平时,M4漏极处于高电平,M5将导通,将有电流从M1,2栅极流向M5,M1,2电位将拉低,经过正负反馈的共同调节,电路将稳定在正常工作点;当电路正常工作时,VREF处于高点平,通过调节M6、M7的宽长比进而控制其导通电压,使得M4漏极电压为低电平,M5关断,启动电路将不会影响带隙基准电路正常工作。

3. Bandgap仿真

3.1 电路参数设定

正温度系数电压
正温度系数电压理论值为87uV/K×ln8≈181uV/K,仿真值约为182.5uV/K
在这里插入图片描述
负温度系数电压
正度系数电压理论值为-1.5mV/K,仿真值约为-1.8mV/K与预想有一定偏差
在这里插入图片描述
对R2、R3阻值进行参数扫描,得出其最优阻值约为558.5kΩ,R2、R3采用TSMC 65nm工艺库中的rnpolywo电阻,non-salicide电阻具有更大的电阻率,尺寸如下:
在这里插入图片描述
为了输出800mV电压,经仿真R4约364kΩ,尺寸如下:
在这里插入图片描述
M1-M3尺寸均为W=1um,L=2um,M4-M7尺寸在后续简并点仿真确定。

3.2 DC仿真

温度系数TC

VREF温度曲线如下图所示
在这里插入图片描述
温度系数表达式为:(((ymax(v(“/VREF” ?result “dc”)) - ymin(v(“/VREF” ?result “dc”))) / average(v(“/VREF” ?result “dc”)) / 165) * 1000000),将该表达式输入到calculator,得出温度系数为5.31ppm/K
在这里插入图片描述

VREF@40为40℃的VREF,表达式为value(v(“/VREF” ?result “dc”) 40 ?period nil ?xName “time” ?scale '(roundDown))
deltaVref为max(VREF)-min(VREF),表达式为(ymax(v(“/VREF” ?result “dc”)) - ymin(v(“/VREF” ?result “dc”)))

简并点仿真

给带隙基准电路环路施加一个test电压,通过DC分析从0到1.8V扫描该test电压,输出test电源的电流曲线,电流为零时对应的电压值即为电路的一个工作状态,曲线与X轴的交点数即为电路的简并点数。
在这里插入图片描述

简并点仿真仿真结果如下:
在这里插入图片描述
在这里插入图片描述

可见电路只有一个简并点,但为了保险起见,仍需给电路添加启动电路。

自启动仿真

设定VREF电压在500mV以上不会触发启动电路,并且在300mV以下时可以成功触发,仿真结果如下:
在这里插入图片描述
在这里插入图片描述
M4、M5尺寸设为W=1um,L=2um,M6、M7尺寸设为W=1um,L=4um。

3.3 stb仿真

在运放的输出端添加iprobe,选择stb分析并选中该iprobe

在这里插入图片描述
stb环路稳定性仿真结果如下:
在这里插入图片描述

在这里插入图片描述

环路增益为62dB、GBW为21.02MHz,相位裕度为62°

3.4 ac仿真

PSR

选择ac 分析,给AVDD的AC magnitude输入1,输出VREF
在这里插入图片描述
得出电源抑制PSR为49.6dB

3.5 noise仿真

选择noise分析,设置Noise Parameters为1KHz
在这里插入图片描述
点击Noise Summary选择include all types,输出噪声前5的器件
在这里插入图片描述
噪声仿真结果如下:
在这里插入图片描述
Bandgap噪声主要集中在M1、M3的闪烁噪声,可通过增大M1、M3管减小输出噪声。

3.6 MC仿真

在ADE L仿真器中打开ADE XL,ADE L中的仿真数据将导入到ADE XL中,点击新建corner,对PVT仿真参数进行设置:
在这里插入图片描述
其中ss、tt、ff工艺角分别对应驱动电流(IDS)为最小值(第一个s指NMOS、第二个s指PMOS)、驱动电流为平均値、驱动电流为最大值。
工艺角设置完成后,我们选择Monte Carlo Sampling,按照下图打开Monte Carlo设置
在这里插入图片描述
在Numbe of Points输入50表示每个corner仿真50次,勾选好需要仿真的参数就可以开始仿真了
在这里插入图片描述

Monte Carlo仿真结果如下:
选择Yield,然后选择一个工艺角右击并点击Histogram,可查看该工艺脚参数仿真结果的统计分布:
在这里插入图片描述
在这里插入图片描述
1.8V 40℃ tt工艺角下,VREF@40的统计分布如下,统计数据符合高斯分布。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/FOSO5Ejw.shtml

相关文章

微机原理 16-数据交换指令XCHG

交换指令 XCHG 的作用是把一个字节或一个字的源操作数与目的操作数相交换 注: 交换能在通用寄存器与累加器之间、通用寄存器之间、通用寄存器与存储器之间进行但段寄存器和立即数不能作为一个操作数,不能在累加器之间进行。如果需要交换两个内存操作数&…

LEA与XCHG

LEA 格式: LEA 通用寄存器 内存地址功能:取地址命令 将内存地址赋值给寄存器 lea eax,dword ptr ds:[ecx0x16]dword 双字 就是四个字节ptr pointer缩写 即指针ds 数据段版寄存器[]里的数据是一个地址值,这个地址指向一个双字型数据 将dwo…

X-nuca_2018_revenge(控制程序流程的新姿势+多字节的xchg指令会清零寄存器高位)

X-nuca_2018_revenge(多字节的xchg指令会清零寄存器高位) 首先,检查一下程序的保护机制 然后,我们用IDA分析一下,bss上存在无限溢出 由于该程序是静态编译,我们可以覆盖到下方某些函数指针,我们可以将__printf_arginf…

数据移动指令-----mov,lea,xchg

mov指令 数据传送指令 格式:MOV OPRD1,OPRD2 功能:将一个源操作数送到目的操作数中,即OPRD2—>OPRD1 OPRD1为目的操作数,可以是寄存器,存储器,累加器 OPRD2为源操作数,可以是寄存器&#xf…

8086汇编基础 xchg 交换数据

IDE : Masm for Windows 集成实验环境 2015     OS : Windows 10 x64typesetting : Markdown    blog : my.oschina.net/zhichengjiu    gitee : gitee.com/zhichengjiu code DATAS SEGMENT;此处输入数据段代码 DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码…

mov,xchg用法

mov是数值传送指令,格式为mov DST,SRC mov指令将源数据src传送到目的操作数dst中 传送的数据格式可以为2,16,32字节 xchg是数据交换指令,xchg实现寄存器和内存间的数据交换,两个交换数据的格式必须相同 欢迎使用Markd…

数据传送指令MOV、XCHG

学习过程中要重点掌握对标志寄存器的影响 数据传送类指令(不影响标志位) 一:MOV指令 先要知道图片中这几个英文表示什么 立即数(immediaate operand) 寄存器(register) 内存(…

Java的逆序输出

如何将输入的1230,转换成321输出呢? 主要思想:对数进行取余获取最后一位,然后添加进字符串中,然后将字符串转化为int型。 实现方法代码: //逆序输出 public static int nsort(int n){String a"&quo…

一元多项式的乘法运算(C语言)实现

[PAT] 一元多项式的乘法与加法运算 C语言实现 [PAT] 02-线性结构1 一元多项式的乘法与加法运算 设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数&…

一元多项式相乘

题目说明: 要求采用链表形式,求两个一元多项式的乘积:h3 h1*h2。函数原型为:void multiplication( NODE * h1, NODE * h2, NODE * h3 )。 输入: 输入数据为两行,分别表示两个一元多项式。每个一元多项式以…

多项式加法

多项式加法(5分) 题目内容: 一个多项式可以表达为x的各次幂与系数乘积的和,比如: 2x63x512x36x20 现在,你的程序要读入两个多项式,然后输出这两个多项式的和,也就是把对应的幂上…

【学习笔记】多项式乘法

文章目录 前置知识:复数引子:虚数定义计算性质 有关多项式点值多项式相乘大整数乘法 FFT \textit{FFT} FFT离散傅里叶变换快速傅里叶变换代码实现蝴蝶变换计算 ω n − x \omega_n^{-x} ωn−x​代码壹号 改进方案精度提升常数优化:二合一常…

多项式除法

多项式除法 应用场景 多项式的因式分解 使用 先试出有理根 r 多项式对线性因子 x - r 做多项式除法,逐步降低次数。 整除 : 结果就是商与被除数的乘积不整除 : 结果是商与余数/被除数的和 只到二次多项式,再利用十字相乘法或求根公式,即…

C语言 多项式乘法 算法

多项式乘法 什么是多项式? 由若干个单项式相加组成的代数式叫做多项式(若有减法:减一个数等于加上它的相反数)。 多项式中的每个单项式叫做多项式的项,这些单项式中的最高项次数,就是这个多项式的次数。 多…

多项式乘法入门

多项式乘法入门 By SemiWaker 这是一篇蒟蒻对FFT、DFT、CZT、NTT的弱鸡理解 多项式 a0xa1x1a2x2⋯an−1xn−1 上面的这个形式叫做多项式。 系数: a0..n−1 项: aixi 界:n 为了方便我们系数序列就可以表示多项式。 线性卷积 AB∑i02n−2(∑…

一元多项式的乘法与加法运算

题目要求 设计函数分别求两个一元多项式的乘积与和。 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 输…

多项式乘法运算初级版

快速傅里叶变换在信息学竞赛中主要用于求卷积,或者说多项式乘法。我们知道,多项式乘法的普通算法时间复杂度 是,通过快速傅里叶变换可以使时间降为,那么接下来会详细介绍快速傅里叶变换的原理。 首先来介绍多项式的两种表示方法&…

FFT与多项式乘法

网上关于FFT在信号处理中应用的文章并不少,这里尽量少说废话,直接说如何用FFT实现多项式乘法。 多项式乘法,通常是用系数乘积的方式完成,这样的时间复杂度是O(n^2) n为多项式项数。系数乘法可以满足大多数的乘法需求,然…

多项式乘法

实验题目:多项式乘法问题 实验内容与要求 一元稀疏多项式简单计算器的基本功能是: (1)输入并建立多项式。; (2)输出多项式,输出形式为整数序列:n,c1,e1,c2,e2,…,cn,en,其中n是多项…

多项式乘法运算终极版

在上一篇文章中 http://blog.csdn.net/acdreamers/article/details/39005227 介绍了用快速傅里叶变 换来求多项式的乘法。可以发现它是利用了单位复根的特殊性质,大大减少了运算,但是这种做法是对复数系数的矩阵 加以处理,每个复数系数的实…