gm/ID设计方法学习笔记(二)

news2024/10/7 5:57:48

一、任务

设计一个二级运放,第一级为有源负载差动对(五管OTA),第二级为电流源负载的共源极。

二、参数指标

GBW≥50MHz
|Av|≥80dB
PM60°~70°
SR≥50V/us
C_{L}10pF

        本文使用smic13mmrf_1233工艺库进行设计。

三、电路设计

(一)原理图

(二)密勒补偿

        对于一级运放来说,其可以看成是单极点系统,相移不会大于90°,不需要考虑相位裕度

        但对于两级运放,其相移是会达到180°的,在设计时需要考虑相位裕度

        对于频率补偿,我们可以增加负载电容C_{L},使主极点的频率w_{p1}降低。由此,本文引入了密勒补偿

        密勒补偿以一个中等的密勒电容C_{C}建立了一个低频极点。根据设计经验,若相位裕度取值为60°,C_{C}取值为0.25到0.5倍C_{L}

        【引入密勒补偿还有一个问题需要解决,就是系统频率响应的零点,这个零点会导致更大的相移,同时幅频特性曲线会出现+20dB/dec的变化(属于右半平面的零点,对反馈系统的稳定性更加有害,因为它提高增益,但延迟相位)

        零极点影响,可以看我这个博客:

运放零极点对幅频特性、相频特性曲线的影响-CSDN博客

        由于引入密勒补偿电容后,出现了极点分裂现象。为了简化计算,我们使系统变成单极点系统(单极点近似)

  • 第一极点wp1左移,但它并没有消失,而是作为电路的主极点;
  • 第二极点wp2右移,直至大于单位增益带宽wu,增益小于1后当它不存在了。

        单极点近似要求w_{p2}>w_{u},一般w_{p2}取值为w_{u}的2~3倍。同时,w_{z}>w_{u}

        极点和结点的关联,可以看我这个博客:

极点和结点的关联-CSDN博客        

        对于以上值的取值,有以下的式子。其中,gm-in1和gm-in2分别代表第一级和第二级运放的输入管跨导,C_{L}是整个运放的负载电容(也是第二级运放的负载电容),R_{Z}为与密勒补偿电容串联的电阻(将零点移至左平面,并抵消第一非主极点)

第二极点(第一非主极点)w_{p2}=\frac{g_{m-in2}}{C_{L}}

单位增益带宽:w_{u}=\frac{g_{m-in1}}{C_{C}}

零点:w_{z}=\frac{1}{(\frac{1}{g_{m-in2}}-R_{Z})C_{C}}

R_{Z}的取值:\frac{1}{(\frac{1}{g_{m-in2}}-R_{Z})C_{C}}=-\frac{g_{m-in2}}{C_{L}} ,  解得:R_{Z}=\frac{C_{L}+C_{C}}{g_{m-in2}C_{C}}

极点和结点的关联-CSDN博客

        计算一下跨导的取值,这里选取最低限度的取值,也就是理论上相位裕度是60°,但实际上可能达不到。

       令 w_{p2}=2w_{u}C_{C}=\frac{1}{4}C_{L}

        可得:  \frac{g_{m-in2}}{g_{m-in1}}=8

        在最低限度下,第二级输入管的跨导是第一级的8倍,在实际设计时,最好取10或以上才能有一定裕度

 (三)确定第一级输入对管M1和M2的尺寸

注:本文管子序号均按照上图中的编号

注:下面对n管和p管扫描时并联数均设为4

         考虑寄生电容对负载电容的影响。指标要求负载电容C_{L}为10pF,根据设计经验,加上寄生参数后,一般取1.2C_{L}也就是12pF做计算。

        此时,密勒补偿电容Cc大约在3pF到6pF之间(一般取不到6pF那么大)。一般的文献或方法会教直接用Cc作为GBW公式中的CL,但是我们最好加上一点第一级输出和第二级输入的寄生电容。所以第一级运放的负载电容C_{L1}取值6pF时留有的裕度会比较大。由得到的C_{L1}可以利用GBW得到输入对管的跨导,有以下式子:

因为      GBW=\frac{g_{m1,2}}{2\pi C_{L1}}

        可得   g_{m1,2}=1.885mA/V

        对增益Av进行解算。整体的增益是10000,那就令每一级增益为100,这就要求晶体管的自身增益大于200

        A_{V}=A_{V1}*A_{V2}=80dB=10000

A_{V1}=g_{m1,2}*r_{o1,2}||r_{o3,4}\approx =\frac{1}{2}g_{m1,2}*r_{o1,2}=100

g_{m1,2}*r_{o1,2}\geq 200

 

        同时,为了让压摆率满足50V/us的需求,gm/id就不能取太大,以此来保证电流不会太小,这里gm/id取值为12。

        观察晶体管的self_gain - gmoverid曲线,找出在gm/id=12时,哪个沟道长度L下的增益大于200。最终确定L=550nm。

        再观察id/w - gmoverid曲线,得到gm/id取值为12,L=550nm下的电流密度。 

        至此,M1和M2的W就可以确定:

因为: \frac{g_{m}}{I_{d}}=12V^{-1}  ,g_{m1,2}=1.885mA/V

可得:I_{d}=0.157mA=157uA

又因为: \frac{I_{d}}{W}=3.34A/m

所以:W=0.047mm=47um

 (四)确定第一级负载管M3和M4的尺寸

和前面一样,选取gm/id=8,self_gain大于200时沟道长度L=950nm。

        再观察id/w - gmoverid曲线,得到gm/id取值为8,L=950nm下的电流密度。 

         至此,M3和M4的W就可以确定:

        因为I_{d}=0.157mA=157uA

又因为 \frac{I_{d}}{W}=15

所以 W=10.47um\approx 10.5um

(五)对第一级放大电路进行初步仿真

        设置第一级电流源电流为314uA,负载电容为5pF:

在ADE_L的setup中的配置AVDD,AGND,Vin+和Vin-:

Results中的Direct Plot中点击AC gain&phase,得到如下波特图

        从波特图中,我们可以看到第一级放大电路的低频增益A_{v1}为50.093dB,GBW为109.139MHz(快捷键H创建一个横向光标)。

因为      GBW=\frac{g_{m1,2}}{2\pi C_{L1}}

解得:C_{L1}\approx 2.75pF

        【这意味着后面的密勒电容在第一级GBW为109.139MHz时,最高可以取到2.75pF;若第一级GBW减少至指标50MHz,则最高可为6pF】

        查看某个器件的直流工作点参数

        Results ——> Print ——> DC Operating points ——> 点击选中某个器件

(六)确定M6的尺寸

        由图可知M6管的vgs为834.368mV。观察N-MOS晶体管的VGS-gmoverid曲线,看看对应的范围是多少。从图中看出,gmoverid的取值在9左右

        选取gm/id=9,self_gain大于200时沟道长度L=900nm。

                根据前面分析, 为了二级运放具备一定的相位裕度,g_{m,in2}=10g_{m,in1}

所以 g_{m,in2}=10g_{m,in1}=18.85, \frac{g_{m}}{I_{D}}=9

解得:I_{D}=2.094mA

                再观察id/w - gmoverid曲线,得到gm/id取值为9,L=900nm下的电流密度。  

因为 I_{D}=2.094mA\frac{I_{D}}{W}=12.3

所以 W=0.17mm=170um

        代入L=900nmW=0.17mm=170um,并联数mul为4后,M6管未能进入饱和区,vds很小。

        减小宽长比可以提高vds,这里将L调大,其他参数保持不变,管子M6很好地进入了饱和区。为了留有一定裕度,使vds比过驱动电压再多大一些,根据饱和区管子的输出阻抗

r_{o}=\frac{1}{\lambda I_{D}}    正比于L^{2}

        调大L为1.41um时,M6管的vds很好地满足了要求。

(七)仿真测试

        仿真得到增益和相位的频率特性曲线。

        由于第二级输入管M6的跨导未达到第一级输入对管M1,M2跨导的倍(下次计算可以按照第一级输入对管跨导的11倍12倍来计算第二级输入管的跨导,留有一定的裕度。)

        so,刚开始相位裕度没能达到60°,这里增加一个调零电阻R跟密勒电容串联,用来调整零点位置来抵消第一非主极点的作用。

        R_{Z}=\frac{C_{L}+C_{C}}{g_{m-in2}C_{C}}=160\Omega

从图中得出,GBW=85.6441MHz,Av=100.19dB,PM=180°-115.092°=64.908°

下面进行压摆率的测试:

  1. 当M2管输入正的阶跃信号时,直接使得M2截止,此时电流几乎全部往M1流,M3和M4构成电流镜,M4也会流过尾电流源M5等量的电流,但是此时M2截止,电流只有一个通路,就是往Cc流动,节点3的电压几乎不会变化【节点3电压变化比较小只在Ids7比Ids5大很多的时候才成立,即当Ids7的电流能够同时带动负载电容和米勒补偿电容且有较大的余量时节点3的电压变化才可以忽略(电路的最大压摆率受限于Cc)】,因此电路的SR为Ids5/Cc,但是我们还是需要考虑到M7是偏置住的(即能流过的最大电流有限),因此还需要考虑M7流过的最大电流能不能以Ids5/Cc的摆率将负载电容CL电压同时拉上去,所以就有了设计教程中的外部摆率(Ids7-Ids5)/CL。最后得到的摆率SR=min{Ids5/Cc,(Ids7-Ids5)/CL}
  2. 而当输入接入一个负的阶跃信号时,M1截止M2导通,但是此时M6能够通过的电流是受到M4漏级控制的,所以其摆率SR=Ids5/Cc
  3. 虽然理论分析确实如 1、 2 所示,但是我们在许多参考书上都可以看到二级运放的摆率SR=Iss/Cc,这是因为就上图这种没有控制零点的二级运放,为了满足相位裕度,需要使得零点远离单位增益处。(按照波特图绘制那么理解一般零点远离单位增益处10倍,零点对单位增益处的相位影响较小),同时为了60°以上的相位裕度,可以得到第二级M6管子的跨导gm6>=10gm2,密勒补偿电容Cc≥0.22CL。

压摆率测试电路

        由仿真输出波形,可以得到SR+\approx 47.5V/us,SR-\approx 49.6V/us

        所以压摆率SR为47.5V/us, 与指标50V/us差一点。(可以增大电流,即取gm/id较小点的值来增大压摆率SR使其满足要求。)

 

四、总结

设计值指标
GBW≈85.6MHz≥50MHz
|Av|≈100.2dB≥80dB
PM≈64.9°60°~70°
SR≈47.5V/us≥50V/us
C_{L}10pF10pF

五、后话:

声明:本文仅供个人学习交流,无任何商业行为。

参考文章链接

链接一:

用Cadence Virtuoso IC617结合gm/id方法设计两级运放(五管OTA加共源极)_virtuoso波形图放大-CSDN博客

链接二:

二级运放压摆率分析(SR)_压摆率仿真-CSDN博客

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

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

相关文章

【进阶OpenCV】 (6)--指纹识别

文章目录 指纹识别1. 计算指纹间匹配点的个数2. 获取指纹编号3. 获取对应姓名4. 代码实现 总结 指纹识别 假设,现在我们有一个小的指纹库,此时,有一个指纹图片需要我们识别是不是指纹库中某一个人的。如果是,是谁的呢&#xff1f…

力扣110:判断二叉树是否为平衡二叉树

利用二叉树遍历的思想编写一个判断二叉树,是否为平衡二叉树 示例 : 输入:root [3,9,20,null,null,15,7] 输出:true思想: 代码: int getDepth(struct TreeNode* node) {//如果结点不存在,返回…

有趣幽默彩虹屁文案生成工具微信小程序源码

有趣幽默彩虹屁文案生成工具小程序源码 此文案小程序主要功能为分享各种有趣幽默的文案 免服务器免域名,源码只提供彩虹屁,朋友圈,毒鸡汤API接口,其他需自行查找替代 小程序拥有复制收藏功能,可自行体验,设…

FineReport 11 在线学习

文章目录 学习路线图FineReport 11 在线学习资源链接分享帆软report 特点 学习路线图 学习生态 自测题 FineReport 11 在线学习资源链接分享 帮助中心https://help.fanruan.com/finereport/ FineReport 入门学习路径https://edu.fanruan.com/guide/finereport 普通报表…

【c++】string类 (一)

简介 由于c的历史包袱,c要兼容c语言,c的字符串要兼容c语言,在 C 中,字符串通常使用两种主要的方式来表示: C风格字符串(C-style strings): 依然是以 \0 结尾的字符数组。这种表示方…

【Java 并发编程】初识多线程

前言 到目前为止,我们学到的都是有关 “顺序” 编程的知识,即程序中所有事物在任意时刻都只能执行一个步骤。例如:在我们的 main 方法中,都是多个操作以 “从上至下” 的顺序调用方法以至结束的。 虽然 “顺序” 编程能够解决相当…

YOLO11改进|卷积篇|引入SPDConv

目录 一、【SPD】卷积1.1【SPD】卷积介绍1.2【SPD】核心代码 二、添加【SPD】卷积2.1STEP12.2STEP22.3STEP32.4STEP4 三、yaml文件与运行3.1yaml文件3.2运行成功截图 一、【SPD】卷积 1.1【SPD】卷积介绍 SPD-Conv卷积的结构图如下,下面我们简单分析一下其处理过程…

贪心算法.

序幕 贪心算法(Greedy Algorithm)是一种在求解问题时采取逐步构建解决方案的策略,每一步都选择当前状态下局部最优的解,期望通过局部最优解能够得到全局最优解。 以上为了严谨性,引用了官方用语。 而用大白话总结就是&…

如何移除 iPhone 上的网络锁?本文筛选了一些适合您的工具

您是否对 iPhone 运营商的网络感到困惑?不用担心,我们将向您介绍 8 大免费 iPhone 解锁服务。这些工具可以帮助您移除 iPhone 上的网络锁,并使您能够永久在网络上使用您的设备。如果您想免费解锁 iPhone,请阅读本文并找到最适合您…

APC论文总结

论文详情 论文标题:APC: Adaptive Patch Contrast for Weakly Supervised Semantic Segmentation 论文作者:Wangyu Wu,Tianhong Dai,Zhenhong Chen,Xiaowei Huang,Fei Ma,Jimin Xiao 发表时间…

股票期货高频数据获取方法

导语:在量化交易领域,获取高质量的股票期货高频数据是进行有效分析和策略开发的基础。本文从专业量化角度出发,介绍了几种获取股票期货高频数据的方法。一、使用专业数据供应商1. 【推荐】**银河数据库(yinhedata.com)…

【Blender Python】6.修改物体模式

概述 Blender对象共有6种编辑模式,物体模式、编辑模式、雕刻模式、顶点绘制、权重绘制和纹理绘制。 在Blender Python中通过bpy.ops.object的mode_set()方法可以修改物体的编辑模式。只需要传入相应的mode参数就行了。 让物体进入编辑模式 >>> bpy.ops.…

leetcode 力扣算法题 快慢指针 双指针 19.删除链表的倒数第n个结点

删除链表的倒数第N个结点 题目要求题目示例解题思路从题目中的已知出发思考寻找目标结点条件转换核心思路 需要注意的点改进建议 完整代码提交结果 题目要求 给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。 题目示例 示例 1&#xff1…

libcurl网络协议库使用Demo

目录 1 libcurl简介 2 libcurl编译 3 使用步骤 4 函数说明 4.1 全局初始化函数 curl_global_init 4.2 全局释放函数 curl_global_cleanup 4.3 libcurl库版本 curl_version 4.4 开启会话 curl_easy_init 4.5 结束会话 curl_easy_cleanup 4.6 设置传输选项 curl_easy_se…

最新版快递小程序源码 独立版快递系统 附教程

懂得都懂,现在电商平台退换货量大,快递需求量大,对接物流一个单子4块到6块之间 其中间是例如润 其余的 就不说了吧 互站上买的源码 分享一下 还有个方法赚钱就是 拼多多退货自己邮寄 5块钱 运费自己填写12元 白捡7元美滋滋 源码下载&…

Vivado - JTAG to AXI Master (GPIO、HLS_IP、UART、IIC)

1. 简介 本文分享 JTAG to AXI Master IP Core 的使用教程。 此 IP 用于 AXI 接口向设计输入数据,或者读取数据。通过 Tcl 控制台编写命令来驱动此 IP,通过 JTAG 即可进行操作,而这个 IP 则在 AXI 端口上驱动 AXI 事务。由于这个核心没有自…

面试题之- null和undefined的区别

前言 首先undefined和null都是基本数据类型,这两个基本数据类型分别都只有一个值,就是undefined和null。 undefined代表的含义是未定义,null代表的的含义是空对象,一般变量声明了但是还有没有定义的时候会返回undefined&#xf…

每日学习一个数据结构-默克尔树(Merkle Tree)

文章目录 概述特征构建过程使用场景示例总结 设计目的一、提高数据验证效率二、增强数据安全性三、适用于分布式系统 底层原理一、数据块划分与哈希计算二、二叉树的构建三、默克尔树的应用与优势 更新机制 概述 默克尔树(Merkle Tree),也称…

cnn突破六(四层bpnet网络公式)

四层bpnet网络反向传播公式推导: X【196】-》HI【128】/HO【128】-》H2I【60】/H2O【60】-》YI【10】/YO【10】, 期望是d【10】 X,HI之间用w1【196,128】 HO,H2I之间用w12【128,60】 H2O,YI之间用w2【…

Zabbix 企业级应用(Zabbix Enterprise Application)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…