ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

用MOS管搭建逻辑门:从反相器到24V开关电路实战

用MOS管搭建逻辑门:从反相器到24V开关电路实战 之前有朋友问我能不能不用数字IC纯粹用分立元件搭出逻辑电路我的回答是当然可以而且用MOS管搭逻辑门电路是理解数字电路底层逻辑最好的方式。当你亲手用几个MOS管拼出一个与非门再串成触发器那种“原来芯片内部是这么工作的”顿悟感是直接拿芯片画原理图完全体会不到的。这篇文章就从MOS管的基础工作状态讲起带你一步步拆解如何用MOS管构成反相器、与非门、或非门再扩展到传输门和常见逻辑门的搭建最后结合我实际调试中的案例讲讲24V场景下的开关电路、选型、防反接、米勒电容等真实会踩的坑。很多人一提到逻辑门脑子里就是74HC00、CD4001这类芯片觉得用MOS管搭逻辑门纯属多此一举。但如果你涉及过MC34063外接MOS管的电源设计、做过24V的工业开关电路、或者研究过三极管和MOS管的米勒电容差异你就会发现只有在分立元件层面理解了MOS管的导通条件和开关特性你才能真正看懂芯片数据手册里那些参数也才能在逻辑电路和功率电路之间自由切换。1. 内容整体设计与思路拆解1.1 MOS管的三个极、符号与工作原理MOS管全称金属氧化物半导体场效应管核心是电压控制电流。它有三个极栅极GGate、漏极DDrain、源极SSource。大部分型号的衬底会和源极接在一起这也是为什么很多符号里能直接看到衬底引线实际使用中衬底接线非常关键接错极性管子直接不起作用甚至烧毁。MOS管按导电沟道分为N沟道和P沟道按工作模式分为增强型和耗尽型。我们做逻辑门电路时用的几乎全部是增强型。N沟道增强型简称NMOS的符号特征是箭头朝里P沟道增强型简称PMOS箭头朝外。很多初学者会在这里搞混我教大家一个记忆法看箭头方向箭头指向栅极的通常是N沟道箭头从栅极指出来的通常是P沟道。箭头代表的其实是电流方向而电流永远是从P流向N所以N沟道的箭头指向内部P沟道的箭头指向外部。导通条件是MOS管工作状态的核心。对增强型NMOS来说Vgs大于阈值电压Vgs(th)时沟道才会形成漏源之间才有电流通路对增强型PMOS来说Vgs小于Vgs(th)注意是负的时才会导通。这里注意一个关键点MOS管是电压控制型器件栅极输入阻抗极高基本不取电流这一点和三极管电流控制电流有着本质差异。1.2 三极管与MOS管的对比为什么逻辑门选MOS管三极管和MOS管在符号上有些相似三极管三个极是基极B、集电极C、发射极EMOS管是栅极G、漏极D、源极S。初看像一个简化版的对应关系但工作机制完全不同。三极管是电流控制基极需要持续的电流注入Ib Ic/β这个公式在放大器里常用MOS管是电压控制栅极只有极小的漏电流动态功耗几乎可以忽略。用MOS管做逻辑门电路最大的优势是静态功耗极低。CMOS结构在状态稳定时总有一个管子截止从电源到地没有直流通路静态电流是微安甚至纳安级别。如果用三极管搭类似的逻辑电路每个门都需要考虑基极限流电阻而且导通时有一定的基极电流损耗功耗会大很多级联几个门之后发热就很明显。还有一个重要的电学差异是米勒电容。三极管的集电结电容和MOS管的栅漏电容都会形成米勒效应但在相同的电流驱动能力下MOS管的米勒效应更明显这也是MOS管开关速度经常受限于栅极驱动能力的原因。后面我会专门用一节来讨论加速电容怎么解决这个问题。基于这些优势现代数字电路基本都用CMOS结构纯三极管逻辑门只在教科书和特定的分立元件爱好项目里才会看到。1.3 逻辑电平与状态定义在做任何MOS管逻辑电路之前必须先把电平定义说清楚。我们用VDD表示高电平逻辑1GND表示低电平逻辑0。对NMOS来说Vgs大于Vth时导通相当于一个受电压控制的开关对PMOS来说Vgs小于Vth相对于源极是负压时导通。后面所有电路都遵循这个约定NMOS负责将输出拉到GNDPMOS负责将输出拉到VDD。这种一个NMOS配合一个PMOS的结构就是CMOS互补金属氧化物半导体。之所以叫“互补”正是利用了N管和P管在逻辑上天然互补的特性N管导通时P管截止P管导通时N管截止两种状态交替互补。2. 核心细节解析与实操要点2.1 反相器逻辑电路的最小单元反相器是CMOS逻辑门的基础单元电路极其简单一个NMOS的栅极和PMOS的栅极接在一起做输入两个管的漏极接在一起做输出NMOS的源极接GNDPMOS的源极接VDD。这样当输入为高电平时NMOS导通PMOS截止输出被拉到GND逻辑取反输入为低电平时NMOS截止PMOS导通输出被拉到VDD。这里有一个初学者容易忽略的细节为什么输出电平是彻底的高和低而不是中间值关键在于两个管子是交错导通的不存在同时导通的状态。在输入迁移过程中两个管子在某个瞬间都会部分导通形成短暂的电源到地通路这个叫穿通电流或短路功耗。开关频率越高穿通功耗越明显这也是逻辑电路功耗随频率上升的根本原因之一。在实际测试反相器时我建议大家用信号发生器输入方波同时用示波器双通道观察输入和输出波形。注意看输出波形的上升沿和下降沿是否对称如果不对称很可能是NMOS和PMOS的导通电阻不匹配。导通电阻与管子的宽长比W/L有关设计时需要调整两个管子的尺寸比例让它们输出电阻接近这样才能保证上升和下降时间对称。2.2 与非门NAND的搭建与真值表与非门是数字电路里用得最多的门因为它是“万能门”任何逻辑函数都可以只用与非门实现。用MOS管搭与非门的方式两个NMOS串联接地两个PMOS并联接VDD。输入A和B分别接两组管子的栅极两个NMOS串联之后的结果是只有当A和B都是高电平时地到输出的通路才完整输出为低其他情况输出为高这就是与非逻辑。串联这个语法很重要NMOS串联是“与”的关系因为要所有NMOS都导通通路才能建立PMOS并联是“或”的关系因为任何一个PMOS导通输出都能被拉到高。这个“N管串联等于与、P管并联等于或”的原则后面搭任何复杂逻辑门都可以推出来。与非门的真值表如下输入A输入B输出Y001011101110实际搭建时要注意一个暗坑中间节点X的初始电位。两个NMOS串联时中间那个节点在特定输入组合下会处于浮空状态。例如A为高、B为低时下方的NMOS导通上方NMOS关闭中间节点既不连地也不连输出这个节点的电位是不确定的。虽然这个悬空节点不会影响当前状态的输出但下次切换时会产生额外的充放电延时。在高速逻辑里这个问题需要认真对待。2.3 或非门NOR与反相器组合或非门的搭建逻辑刚好反过来两个NMOS并联接地两个PMOS串联接VDD。只要A和B中有一个为高对应的NMOS就导通输出被拉到低只有当A和B都是低时两个并联NMOS全部关闭同时两个串联PMOS全部导通输出才会被拉到高。这里要记住一个镜像原则或非门就是与非门的“角色互换”把串联和并联关系对调。PMOS串联是“与”关系NMOS并联是“或”关系。如果你搭出来的门真值表反了去检查串联还是并联的位置是否放反九成问题出在这里。有了与非门和或非门作为基础模块与门和或门就简单了与门等于与非门后面再接一个反相器或门等于或非门后面再接一个反相器。很多人觉得这样绕了一圈太浪费但在CMOS工艺里与非门和或非门是原生结构与门和或门反而需要两个门级电路。这就是为什么数字IC设计里工程师会尽量把逻辑表达式化成与非门而非与门核心就是为了减少管子和传输延时。2.4 异或门与传输门从“开关逻辑”到“双向导通”异或门用纯CMOS搭会用到4个以上的管子。一种常见结构是互补传输门配合反相器实现。传输门是CMOS里非常特殊的开关结构一个NMOS和一个PMOS并联NMOS的栅极接控制信号PMOS的栅极接反相后的控制信号这样一路管子导通时另一路也导通输入输出可以双向传输信号而且支持模拟电压。传输门的妙处在于它的导通电阻几乎是恒定的不管传输的是高电平还是低电平都能完整传过去。如果只用单个NMOS做开关高电平传输时会有阈值损失输出会比输入低一个Vth这就是不同逻辑家族之间不能随便直连的一个原因。用传输门搭异或门的思路本质上是把“同或”逻辑转为开关控制如果A和B相同输出为0不同输出为1。这种电路在FPGA底层和标准单元库里极其常见。2.5 P沟道MOS管的应用电路讲了这么多NMOS主导的逻辑必须单独说说P沟道MOS管的应用场景。PMOS在逻辑电路里主要承担上拉工作但在电源管理电路里PMOS常被用作高端开关例如电池供电设备的电源开关、防反接电路。P沟道增强型MOS管的导通条件是Vgs小于阈值电压这里的阈值通常是负值如-2V到-4V。比如把PMOS放在电源正端源极接VCC漏极接负载栅极接GNDVgs 0 - VCC -VCC小于阈值管子导通负载得电。需要关断时把栅极拉高到VCCVgs ≈ 0管子截止。P沟道MOS管电路里有个经典误区源极和漏极接反。逻辑电路里DS通常固定但功率电路里的MOS管有些情况下可以反着用比如防反接电路里把MOS管当双向开关不过这时体二极管的方向和导通特性会变必须仔细看数据手册。一般不建议随意互换源漏除非你明确知道自己在干什么。3. 实操过程与核心环节实现3.1 实验环境准备与器件选型实操部分我推荐用实验室常用的CD4007UB芯片它内部集成了几个独立的PMOS和NMOS管可以灵活搭建各种逻辑门非常适合教学和验证。如果想完全用分立元件建议选阈值电压适中、Vgs(th)在1V到2V之间的管子比如2N7000NMOS和BS250PMOS。这类小信号MOS管栅极电荷小用面包板搭电路都不容易自激非常适合实验。还要准备一个双路直流电源一路给VDD一路备用函数信号发生器输出方波双通道示波器观察波形。面包板搭CMOS电路有一个隐患由于栅极输入阻抗极高悬空栅极会感应杂散电荷导致管子状态不定甚至击穿栅氧化层。所以实验里所有MOS管的栅极都必须接电阻到确定的电平绝对不能悬空。关于选型我用过不少管子后总结出几个经验要点一是看Vgs(th)太低导致管子关不断太高导致驱动困难二是看栅极电荷Qg高频开关场景选Qg小的管子否则驱动芯片功耗大三是看SOA安全工作区脉冲应用里也要确认管子能承受瞬间的大电流大电压不然极易炸管。3.2 反相器的焊接与波形实测我以反相器为第一个实操案例因为它是逻辑电路的最小单元从它开始能建立对CMOS行为的直觉。具体步骤如下先选一个NMOS比如2N7000源极接地漏极串联一个1kΩ电阻做上拉也可以但CMOS结构不用上拉电阻这里是为了单独测NMOS的开关特性接VDD栅极接信号发生器。输入方波0V到5V频率1kHz用示波器观察栅极和漏极波形。你会看到输入高电平时NMOS导通漏极被拉到地附近输出低输入低电平时NMOS截止漏极通过电阻被拉到VDD。这是最简单的反相开关。然后换成CMOS结构NMOS和PMOS按前文方式连接栅极并联漏极并联。此时输出不用上拉电阻也能得到完整的0到VDD摆幅。测试方波从低频到高频逐步增加观察波形失真情况。这里第一个值得注意的实测现象就是上升沿和下降沿的差异。如果PMOS导通电阻大上升沿就会变慢NMOS导通电阻大下降沿变慢。我实测2N7000和BS250组合时输出上升时间明显比下降时间长一点原因在于两个管子的导通电阻不同。解决办法换导通电阻更匹配的管子或者调整BS250的栅极驱动电压。另外栅极输入电阻的问题实验时信号发生器直连栅极没问题但如果前级是普通逻辑芯片建议串一个几十欧姆到几百欧姆的电阻抑制振铃。3.3 与非门的搭建步骤与逻辑验证用CMOS结构搭与非门需要注意串联NMOS的中间节点电位问题。具体操作步骤一片CD4007里就有多个配对好的N管和P管按N管串联、P管并联的方式连接。接线顺序建议先把地通路搞定最下面的NMOS源极接地它的漏极接上面NMOS的源极上面NMOS的漏极接输出节点然后接电源通路两个PMOS源极都接VDD漏极都接输出节点最后把输入A接到上下各一个管的栅极输入B接到剩下两个管的栅极。接线完成后依次给输入加00、01、10、11四种组合用万用表或示波器测量输出电平。我这里提供一个测试记录表的参考方便读者自查管脚电平A管脚电平B疑似状态实际输出0V0V高≈VDD0V5V高≈VDD5V0V高≈VDD5V5V低≈0V这个实验最大的难点在供电电压的选择。如果VDD选得太低比如3V而两个NMOS串联时的中间节点分压可能导致上方NMOS的Vgs不够进而无法导通。这也是为什么早期CMOS逻辑芯片都规定最低工作电压。实际搭电路时VDD建议不低于Vth的2到3倍比如阈值1V的管子VDD至少给2.5V最好直接5V。扩展一步把与非门输出再接一个反相器就得到了与门。我经常用这个方式验证逻辑链路的理解是否正确顺便也可以验证前级的驱动能力。如果与非门后面直接接一个LED加限流电阻你会发现输出高电平时的亮度可能比低电平略暗这是因为PMOS的驱动能力通常比NMOS弱一些相同尺寸下P管迁移率低这在实测中很常见不必惊慌。3.4 用MOS管搭一个简易的与门模块并接入24V负载上面都是低压逻辑实验下面进入工程实战场景如何用MOS管开关电路控制24V负载并让3.3V或5V的逻辑电平去控制它。这是工业控制、传感器驱动里最常见的需求也是很多新人一上来就懵的地方。关键思路是低压逻辑部分和高压功率部分要隔离分层低压逻辑部分用CMOS逻辑门生成控制信号比如一个与门两个条件同时满足时才输出高。电平转换部分逻辑信号通过一个NMOS去驱动PMOS或者用专门的栅极驱动芯片。最简单的方式是逻辑高电平驱动一个NMOSNMOS的漏极通过电阻接到24V电源这样在NMOS漏极就能得到接近24V的高电平和接近0V的低电平再去控制P沟道MOS管的栅极完成24V开关。用一个实际案例来说明我要做一个用两个传感器A和B同时触发才启动的24V风扇电路。核心部分是一个24V功率PMOS比如IRF9540漏极接风扇负极源极接24V正风扇正极接24V正PMOS高端开关。控制信号来自一个用MOS管搭的与门输出。由于与门本身工作电压是5V而PMOS栅极需要接近24V才能关断所以必须加电平转换。我在实验里用的电平转换电路是与门输出接一个NMOS2N7000栅极NMOS源极接地漏极接一个10kΩ电阻到24V。当与门输出高2N7000导通漏极被拉到约0V这个0V接到P沟道MOS管栅极Vgs-24VPMOS导通风扇转。当与门输出低2N7000截止漏极被电阻拉到24VPMOS栅极等于源极Vgs0VPMOS截止风扇停。一个关键经验这个电路里与门逻辑的低电平必须保证2N7000的Vgs低于阈值也就是要保证0V干净不能被噪声抬升到0.7V以上。同时对与门来说24V一侧的开关速度和低压逻辑侧不是一回事PMOS的栅极电容比较大如果切换频繁需要栅极驱动电阻配合一般串一个10Ω到22Ω的电阻然后在栅源之间并联一个10kΩ到100kΩ的下拉电阻确保上电过程PMOS处于关断状态。3.5 防反接电路、加速电容与米勒效应MOS管在实际逻辑电路和功率电路中有几个状态切换的工程问题必须单独讲因为这是热电词里面高频出现的内容米勒电容、加速电容、SOA、防反接。我先讲米勒效应。MOS管的栅极和漏极之间天然存在一个寄生电容Cgd。当MOS管从截止切换到导通时栅极驱动器不仅要给Cgs充电还要给Cgd充电。尤其在漏极电压大幅变化的那段时间Cgd会“反噬”栅极电流导致栅极电压出现一个平台这就是米勒平台。米勒平台持续时间越长开关损耗越大波形上升沿就越难看。解决米勒平台的一个有效办法是使用加速电容。在栅极驱动电阻Rg上并联一个电容Cacc这个电容的作用是在栅极电压变化的瞬间提供低阻通路用更猛的电流快速给Cgd和Cgs充电拉高dv/dt。Cacc大小一般在100pF到1nF之间具体由管子Qg和驱动能力决定。这个办法在P沟道MOS管加速关断的场合也常见。防反接电路则是MOS管的另外一个经典角色。利用MOS管的体二极管特性可以在电源输入端做一个低损耗防反接保护正常供电时体二极管先导通同时管子栅极被偏置MOS管很快完全导通正常工作时几乎没有压降电源反接时体二极管反偏截止MOS管也不会导通从而保护后级电路。这样要比单纯串联肖特基二极管损耗小得多。4. 常见问题与排查技巧实录4.1 逻辑电平不对阈值电压和浮空问题实操中最常见的问题就是输出电压不对该高不高、该低不低。我按照排查顺序列一个速查表现象可能原因排查方法输出一直高NMOS没导通测栅极电压是否大于Vth检查源极是否真正接地输出一直低PMOS没导通或短路测PMOS栅源压差是否足够检查体二极管方向输出中间值管子部分导通输入电平是否太接近阈值供电电压过低上电后输出不定栅极悬空给所有输入加确定电平或接上下拉电阻带载后电平跌落驱动能力不足输出端不要直接接大负载换导通电阻更小的管栅极浮空是最容易忽略又最致命的问题。MOS管栅极阻抗极高只要有一丁点电荷积累就能让输出电压漂移。所以实操里我习惯在所有输入管脚对地接一个1MΩ的下拉电阻凡是可能悬空的节点都先预设一个默认状态。另外测试时用示波器探头接栅极也会引入干扰探头本身输入电容就会改变电路的开关速度这些细节都会影响最终结果。4.2 波形振铃与高频自激当我用MOS管逻辑门驱动后级较长导线时输出波形会出现阻尼振荡频率通常在几十MHz到几百MHz。这个振铃的本质是寄生电感、电容和MOS管自身增益形成的LC谐振再加上栅极输入阻抗极高极易感应噪声。尤其是信号发生器直连长面包板线时测量一下引脚波形振铃非常明显。简单解决办法一是缩短走线、减少面包板跳线的长度把栅极电阻串在靠近栅极引脚的位置二是在MOS管栅极对地加一个小电容通常10pF到100pF压低高频增益三是输出端如果需要长线传输加一个几十欧姆的串联电阻做简单的阻抗匹配。这些措施会牺牲一部分开关速度但能显著提升稳定性。4.3 驱动能力不足与栅极驱动芯片在很多应用场景里逻辑门输出的驱动能力并不能直接驱动大功率MOS管。比如一颗小信号CMOS反相器输出电流可能只有几毫安到十几毫安但功率MOS管栅极电荷Qg可能有几十纳库仑甚至更大。要让管子快速开关就需要在极短时间内给栅极灌入足够电荷。两种常见解决方案一是用专门的栅极驱动芯片比如TC4427、IR2110这类它们能在几安培的峰值电流下驱动大功率MOS管二是用分立的三极管推挽电路做栅极驱动用两个三极管搭成图腾柱输出提供高峰值电流。在MC34063这类开关电源芯片上外接大功率MOS管时官方数据手册里的应用电路经常就能看到这种外置图腾柱结构逻辑电平通过推挽电路提升驱动能力后再控制功率MOS管。4.4 用万用表测量MOS管阈值的小电路做这个实验时经常需要知道手头管子的Vgs(th)到底是多少。网上的热词里就有“简单实用MOS管Vgs阈值仪测试电路”。这里分享我的土办法用一个可调电源给栅极供压源极接地漏极串联一个LED和电阻到VDD比如10V。慢慢调高栅极电压当LED刚开始亮时栅极电压就是MOS管刚好进入导通状态的近似阈值。更精确一点的做法漏极串一个100Ω采样电阻用示波器或万用表测电阻上的电压漏极电流达到1mA时对应的栅极电压作为Vgs(th)这个标准比用LED更接近数据手册的定义。注意测量前要先把栅极和源极短接放电消除栅极残存电荷否则测量结果会有很大漂移。4.5 SOA、热设计及其他硬伤MOS管的SOA安全工作区是很多人忽略的。SOA曲线规定了在某一电压、电流和时间条件下管子允许工作的范围。做24V电机控制、灯光控制时如果开关瞬间同时出现高压大电流管子瞬间功耗可能远超平均功耗。买回来的管子烧了常常不是平均电流超了而是开关瞬间超出了SOA边界。解决办法一是看数据手册SOA曲线确定脉冲时间下的允许电流二是尽可能提高开关速度缩短同时承受高压大电流的时间三是加大散热面积热设计不能省。用MOS管构成逻辑门电路这件事本质上是把理论课本上的符号和真值表落到真实的电压电流上。这个过程不复杂但非常训练工程直觉你会开始理解为什么芯片的引脚不能悬空、为什么高速信号要讲究驱动能力、为什么数据手册里的栅极电荷参数比最大电流更重要。从用MOS管讲逻辑门出发到能够独立设计24V开关电路、防反接、BOOST驱动这条路非常适合任何一个想真正吃透电子技术的爱好者。
返回列表