gaojun927的个人空间 https://blog.eetop.cn/757190 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

bandgap的设计

热度 21已有 25867 次阅读| 2011-11-18 14:27 |个人分类:模拟电路设计

bandgap也算模拟电路里的重要角色了,差不多可以说有模拟电路的地方就有bandgap。

从原理上说,目前用的bandgap都离不开两个东西,一个是deltaVbe,一个是Vbe。前者产生的是一个kt/q形式电压,后者产生的是一个随温度准线性的电压。而bandgap的输出就则由这两个电压线性组合决定。至于为什么有温度系数,从最大的因素上说,就来自于Vbe,VBe只是随温度准线性,而另一个电压则是线性度很好的。

原理上知道了,在实际中怎么设计?Vbe好说,就是给二极管(或者说三极管)一个电流。deltaVbe则离不开一定形式的反馈。从大的角度讲,一种是用opa设计的,一种是用镜像电流镜设计的,从反馈的角度看,这两种电路是完全不同的。用opa设计的是一个负反馈,更严格的说,是有两个反馈支路,一正一负,而一定要负反馈强于正反馈,保证整个系统是负反馈。另一种上面一个电流镜,下面一个电流镜,只是下面电流镜加了diode做degeneration。这个从系统的角度讲是正反馈,正反馈如果用在电路里,就一定要保证环路增益小于1才能稳定.由于稳定性的要求,所以这两种电路都不能随便把左右互换。至于仿真稳定性,对于用opa设计的负反馈电路,我的观点很明确,必须把正负反馈两个支路合起来仿真稳定性,否则仿真结果没有任何意义(如果有人争辩说,不是已经理论分析得出了正反馈弱于负反馈吗?那我就要反问仿真的意义是什么?)。对于正反馈,我不是很清楚稳定的判据,所以一般都是看看增益是否会超过1.

在实际的应用中,我很少碰到有很强调温度系数的设计,这似乎和学校里的要求刚好相反。这也许是因为我设计的电路中ADC和DAC很多都不是测量用的。偶尔碰到那么几个,其指标也在10bit左右,看了看别人产品的datasheet,也只要求30-60ppm。与其强调温度系数,反倒不如强调随工艺变化造成的静态输出变化。所以对于如何在工程上实现一个很好温度系数的bandgap我很感兴趣。这里是说工程上,主要是强调不是仿真也不是从流片中挑出一些。因为从原理上说,因为是用一个线性的温度系数补偿一个不怎么线性的温度系数,而这个比值是由电阻比决定的,所以唯一不确定的就是Vbe的温度系数。从corner的角度,Vbe的温度系数可能落在一个范围内,所以最后做出来的温度系数就可能也落在一个范围内。这是工艺内在的特性,不是设计者所能控制的。当拿到一个工艺,用各种corner仿真后(通常与mos的corner无关,而与R,bip的corner有关,表明问题不在于运放的不理想)发现温度系数超出范围该如何办(至于tt corner调整到最小,这是最基本的要求)?那么在实现好温度系数时,如何控制良率呢?为了好的良率,又有什么特殊方法呢?不知道谁能讲一讲。(过了两年也没人来讲,我自己讲一讲吧。这里得区分两个因素造成的影响,一个是ptat因素,一个是非ptat因素。这有些像ad,da里的offset error和gain error。如果error是通过原点的,那么一次校准就可以实现,否则需要两次。ptat是通过原点的,因此理论上常温就可以校准好,否则是没有办法一次校准好的。那么什么因素是ptat,什么因素是非ptat的,关注jssc的人可以找到答案。不关注而爱思考的也可以自己推导出来,我就不做填鸭了。我之前的思考其实也陷入了一个误区,就是bandgap的误差来源。我一直认为是工艺误差,其实电路里offset的影响有时更大。不过具体谁更大还是要具体情况具体分析的)

上面说了,平时对bangap的温度特性关注的少。那么设计时关注什么呢?我更关心启动问题。这是由于启动本身是一种特殊情况,所以设计者很难准确掌握周边情况,那么该如何仿真?仿真的结果可靠不可靠,都是个大问题。而且bandgap通常负责为其他电路提供支持,bandgap出问题了,其他部分就很难测试了。

bandgap由于本身经常有多个平衡点,最常见的就是没有电流的情况,所以需要加入启动电路来破坏掉0这个平衡点。从原理上讲,0点本身也不是很稳定,有可能自己过渡到正常工作点,但是小心还是无大错(当然也听说过有人不加启动电路,也同样正常工作甚至量产,这种就没法评论了。)启动电路也是一个反馈过程,只是非线性更强烈,最终只要一个通或者不通的状态。一个电路通过感知bandgap支路的电流或者电压判断bandgap状态,然后这个感受到的值被放大(通常反相器就可以),再以注入电流的形式去改变bandgap支路的状态。注入的多少都会影响到启动。如果注入太少,可能依旧启动不起来。注入太多,就可能影响到bandgap支路本身的工作,导致启动电路无法关闭。

也看到过另一种启动电路,其实不算启动电路,而算por电路,就是检测上电,如果上电就注入电流,否则就关闭。还有一种是给bandgap支路提供一个恒定的电流源。所以在现实中是八仙过海,各显神通。如果非要说某种才最可靠,现实时不时会给人一个反例,认为不可靠的反而工作,认为可靠的反而不工作。如果真要深究,也许也能发现工作的,在某种状态下会不工作,不工作的,也许是设计时忽略了某些因素。但工程上往往没有太多的机会这么较真。想想QWERTY键盘获得成功的历史就知道了。

前面也说了,启动本身是个不很确定的状态,因此怎么仿真就是个大问题。万一仿真时假设是过程A,但在实际电路中经历的是过程B,A通过仿真确定没问题,B则未必。所以在仿真时,一方面需要尽可能遍历不同状态,比如不同的启动时间,不同的电压,不同的器件corner,不同的温度,不同的mismatch或者系统失配(所以理论上后仿真和蒙特卡洛是必须的),另一方面,最好从原理上确认一下启动的过程,如果有一些非理想因素启动电路能容忍多少。借用数字电路的术语,前者算是直接验证,后者算是形式验证。

 

19

点赞

刚表态过的朋友 (19 人)

发表评论 评论 (6 个评论)

回复 扑火 2012-1-11 21:50
请问,您有蒙特拉罗分析的资料吗?我想学习一下。
回复 cmfjxga 2016-9-16 23:04
市场上先进模拟公司的bandgap可以做到量产化bandgap的精度达到5 ppm。通常结构的bandgap在设计完成后,扣除设计结构造成的offset的影响(offset cancellation技术),BJT本身的制造造成的精度大约在15 ppm,在此技术上,修改电阻比例校准温度系数,可以达到5ppm的精度。
回复 122215386 2021-3-17 21:42
  

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 301

    粉丝
  • 0

    好友
  • 274

    获赞
  • 157

    评论
  • 7280

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-24 10:25 , Processed in 0.018086 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部