Class-AB Amplifier 笔记

Reading Notes from Mikko Loikkanen “Design and Compensation of High Performance Class AB Amplifiers”

Input stages 输入级

一般Class-AB放大器常有输入轨至轨的要求,关于rail-to-rail的输入级的实现:

1. N/PMOS 互补输入对

NMOS和PMOS互补输入是比较常见的rail-to-rail的实现方法,但他也有一些缺点,如offset随输入共模变化,在低压下的实现问题(Vsupply > VGS-N+VGS-P+2VDS), 额外的恒定跨导的控制电路等。具体恒定跨导的方式:

a.输入对管工作于弱反型(恒定电流的方式)

b.输入对管工作于强反型(恒定Vgs的方式)

2. 基于单输入对管
a. 基于charge-pump的结构:

利用low-noise,low-ripple的电荷泵得到超出电源电压的电压供给放大器从而提高整个输入范围

b.输入管加体区偏置(bulk bias):

通过bulk bias减小其阈值电压(约100-200mV)从而提高输入范围

c. 输入级加resistive level shifter

利用上图所示的resistive level shifter,或 common-mode adapter的方法

Class AB 输出级

一个的合适的class-AB 输出级应该有足够的线性度,同时引进可能满足下面的要求:

1. 精确控制输出管的静态(最小)电流,并不受电源影响

2. 有足够大的最大电流与静态电流之比

3. 不会影响信号通路直流增益

4. 在任何电流水平都不会导致稳定性的下降

5. 可以在低电压下工作

6. 结构简单,不会显著增加面积

关于具体的Class-AB output stage的实现方法,大致可以分为四类:

1. Cross-coupled quad 形式连接的super-source follower结构

2. 从低阻抗节点驱动一个或全部输出管,并用反馈控制输出管静态电流

3. 通过local class-AB 反馈来控制静态电流

4. 通过translinear loops的方法

**关于cross-couple quad的结构一般多用于输入以提升slew-rate,其具体原理在P.R.Gray的书中有具体的分析;至于其他的几种class-AB的结构,Sansen的‘Designg-Essental’中关于Class-AB的章节也有相应介绍

Amplifier stability with class AB output stagesclass-AB amplifier的稳定性问题

放大器应在每一电流水平都能稳定,对米勒补偿及其扩展的方法而言,这通常是通过在Class-AB的输出级加入对称的频率补偿网络来实现的。

在信号通路的稳定性之外,class-AB的控制环路的稳定性也需要保证,如下图中所示(一般根据miller电容本身大小,CAB也可以略去)。

1.Miller compensation米勒补偿

在负载电阻减小时,由于第二极点向高频方向移动(负载电阻和第二级跨导的并联),稳定性会有改善,即miller补偿在改阻性负载时工作良好。但是由于第二极点和右半平面零点,在大电容负载时有所限制。

2.Miller compensation with a nulling resistor调零电阻的米勒补偿

主要问题是准确的零极点对消的实现,依赖于输出级的跨导,因而会受不同负载电流影响。同时左半平面零点出现在非主极点之前也会是phase margin变坏。

3.Miller compensation with a feed-forward stage 带前馈的米勒补偿

与米勒补偿相同的极点,但有额外的左半平面零点(前馈跨导),大电容负载下亦需注意

4.Miller compensation with a current buffer 带电流 buffer 的米勒补偿

由于缺少 miller 电容的作用,需考虑 Class-AB 控制回路的稳定问题.

5.其他方法

上图中是基于 miller 补偿的扩展,这里的 HBW- high bandwidth stage 相当于在第二级跨导乘以 HBW 的增益, 故而增强了在大电容负载下的稳定性

(原文地址:http://blog.sina.com.cn/s/blog_4a3c1dbd01018f55.html)

[转载]Class-AB Amplifier 笔记的更多相关文章

  1. 【转载】SpringMVC学习笔记

    转载于:SpringMVC笔记 SpringMVC 1.SpringMVC概述 MVC: Model(模型): 数据模型,提供要展示的数据,:Value Object(数据Dao) 和 服务层(行为S ...

  2. 【转载】Java学习笔记

    转载:博主主页 博主的其他笔记汇总 : 学习数据结构与算法,学习笔记会持续更新: <恋上数据结构与算法> 学习Java虚拟机,学习笔记会持续更新: <Java虚拟机> 学习Ja ...

  3. 【转载】Java系列笔记(3) - Java 内存区域和GC机制

    Java系列笔记(3) - Java 内存区域和GC机制 转载:原文地址http://www.cnblogs.com/zhguang/p/3257367.html 目录 Java垃圾回收概况 Java ...

  4. 转载的C#学习笔记

    转载地址:http://www.cnblogs.com/renyanlei/p/4075065.html 最近在一个培训机构里面教授Net知识.每天都会带领学生学习c#知识.我希望把每天学习的笔记记录 ...

  5. 【原创】复制知乎“禁止转载”的内容做笔记 - 基于oncopy监听器的简单解决方案

    原理:移除所有oncopy的监听器. 使用: 新建书签,地址设为: javascript: getEventListeners(document).copy.forEach(({listener}) ...

  6. 【转载】AB测试结果分析

    AB测试,200个请求,20个并发.这样的测试强度,CPU占了70-80%,w3p占用了70多M内存,本想多测几次,看看它的内存会不会涨上去,没 有测试机器没办法,开发机要干活.我估计CPU就有问题了 ...

  7. 【转载】Markdown使用笔记

    献给写作者的 Markdown 新手指南 http://www.jianshu.com/p/q81RER 「简书」作为一款「写作软件」在诞生之初就支持了 Markdown,Markdown 是一种「电 ...

  8. 【转载】linux内核笔记之进程地址空间

    原文:linux内核笔记之进程地址空间 进程的地址空间由允许进程使用的全部线性地址组成,在32位系统中为0~3GB,每个进程看到的线性地址集合是不同的. 内核通过线性区的资源(数据结构)来表示线性地址 ...

  9. 【转载】linux内核笔记之高端内存映射

    原文:linux内核笔记之高端内存映射 在32位的系统上,内核使用第3GB~第4GB的线性地址空间,共1GB大小.内核将其中的前896MB与物理内存的0~896MB进行直接映射,即线性映射,将剩余的1 ...

随机推荐

  1. Clion安装配置

    1.安装配置MinGW MinGW安装和使用 Windows下利用Cygwin搭建C/C++开发环境GCC 注:分别是使用MinGW和Cygwin两种方法安装GCC环境,据说Cygwin会好一点……我 ...

  2. What's the difference between - (one hyphen) and — (two hyphens) in a command?

    bash中看到这样的命令, curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt-get install - ...

  3. Unity3D中的欧拉角的理解

    先贴一个图: 游戏物体的属性视图中调整的角度就是欧拉角啦.. 如果细心,就会发现,单独去调整xyz的时候它并不是按照世界坐标系中的xyz轴来实施旋转的,它表示的是旋转的欧拉角. 什么是欧拉角呢?请看这 ...

  4. Database Setup

    Database Setup This library has been developed so that you can use any type of backend storage; rela ...

  5. 极客Web前端开发资源集锦

    本周我们带来的前端推荐包含当前热门的bootstrap,html5,css3等技术内容和新闻话题,如果你还想近一步学习如何开发,还可以关注我们的极客课程库,里面涵盖了现代开发技术的‘学’与‘习’的全新 ...

  6. 消息队列的使用场景(转载c)

    作者:ScienJus链接:https://www.zhihu.com/question/34243607/answer/58314162来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业 ...

  7. html5开放资料

    http://www.cnblogs.com/tim-li/archive/2012/08/06/2580252.html KineticJS教程(12) 摘要: KineticJS教程(12) 作者 ...

  8. shell中如何取括号中的字符

    1. 使用grep(结果带括号,不知道有没有办法仅把括号中的内容匹配出来) $a='abc[edg]adfirpqu' $echo $a|grep -o '\[.*\]' #中括号的处理需要转义 [e ...

  9. exception 值太大

      CreateTime--2018年2月5日09:45:01 Author:Marydon 异常: Cause: java.sql.SQLException: ORA-12899: 列 " ...

  10. System.out.print实现原理猜解

    我们往往在main中直接调用System.out.print方法来打印,但是其实就这简单的一步里面有很多的玄机,因为main是static的,所以只能调用static的函数,那么print是stati ...