作为一名电子设计的硬件工程师,电平转换是每个人都必须面对的的话题,主芯片引脚使用的1.2V、1.8V、3.3V等,连接外部接口芯片使用的1.8V、3.3V、5V等,由于电平不匹配就必须进行电平转换。每个工程师都有自己的 一套转换方案,今天我们将5种电平转换的方法进行汇总,并且总结各种的优劣势,避免设计过程踩坑。
一、电平转换方法
5种电平转换方法分别是:
- 晶体管电平转换方法;
- 专用电平转换芯片;
- 限流电阻电平转换方法;
- 电阻分压电平转换方法;
- 二极管电平转换方法;
下面我们会从速率、驱动能力、漏电流、成本、通道数五个维度评价。
1、使用晶体管转换电平
如下图1,使用2个NPN三极管,将输入信号电平VL和转换为输出电平VH,使用2个三极管的目的是将输入和输出信号同相,如果可以接受反相,使用一个三极管也可以。
图1;晶体管进行电平转换 - 便宜:三极管容易常见并且容易采购,价格低廉(批量几分钱一个)。
- 驱动能力强:驱动能力取决于三极管,可以做到数十mA;
- 漏电流低:I、和OUT两者之间的漏电流较小(uA级别),几乎可以忽略不计。
劣势: - 速度:两级三极管属于电流驱动型,加上电路和寄生电容,转换后的波形不是十分理想。一般只能用于100K以内的信号转换。
- 器件多:同相转换需要2个三极管以及配套的电阻,多路转换时占用空间较多。
2、使用专用电平芯片转换电平
如下图2,使用专用的电平转换芯片,分别给输入和输出信号提供不同的电压,转换由芯片内部完成,例如MCP2551/3221等电平转换芯片。专用芯片是最可靠的电平转换方案,5个优点里面占据了4个,除了成本。
图2;专用电平转换芯片
优势:
- 驱动能力强:专用芯片的输出一般都使用了CMOS工艺,输出驱动10mA不在话下。
- 漏电流几乎为0:内部是一些列的放大、比较器,输入阻抗非常高,一般都达到数百K。漏电流基本都是nA级别的。
- 路数较多:专用芯片针对不同的应用,从2路到数十路都有,十分适合对面积要求高的场合。
- 速率高:专用芯片由于集成度较高,工艺较高,,速率从数百K到数百M的频率都可以做。
劣势: - 成本:专用芯片集众多优势于一身,就是成本是最大的劣势,一个普通的数百K速率的4通道电平转换芯片,价格至少要1元人民币以上,如果使用三极管做,成本2毛钱都不到。
3、使用电阻分压转换电平
如下图3,R2和R3构成分压,下图中Vgprs=3.3*5.6K/(1K+5.6K)=2.8V。GPRS模块的的TX由于在发送端,2.8V在右边的接收范围内,所以不需要分压,只需要增加一个电阻限流。
优势:
- 便宜:便宜是最大的优点,2个电阻一分钱不到;
- 容易实现:电阻采购容易,占用面积小。
劣势: - 速度:分压法为了降低功耗,使用K级别以上的电阻,加上电路和器件的分布和寄生电容,速率很难上去,一般只能应用于100K以内的频率。
- 驱动能力:由于使用了大阻值的电阻,驱动能力被严格控制,并不适合需要高驱动能力的场合,例如LED灯等
- 漏电:漏电是该方案最大的缺点,由于通过电阻直连,左右两端的电压会流动,从而互相影响。例如,RS232接口采用该方案,上电瞬间外设就给主芯片提供2.8V的电平,轻则影响时序导致主芯片无法启动,重则导致主芯片闩锁效应,烧毁芯片。
4、使用电阻限流转换电平
有一些技高人胆大的工程师,有时候还会使用一个电阻限流的办法,实现两个不同电平之间的转换。具体的现实原理就是利用芯片的输入电流不超过某个值,例如74HC系列的芯片的输入电流值不能超过20mA,即可认为是安全的,如果是5V转3.3V,只要电阻>(5-3.3V)/20mA=85Ω,选择一个1K的电阻,则认为是安全的。因为芯片内部是可以等效一个负载电阻RL,与R1构成分压的关系。
优势:
- 便宜:便宜是最大的优点,只需要一个电阻就解决。
- 容易实现:电阻采购容易,占用面积小。
劣势: - 使用电阻限流法需要具备很高超的技术(作者自认为无法驾驭),不仅需要十分熟悉芯片内部的构成,而且还要考虑限流后的电压范围,最关键的是,出问题了以后还容易和芯片厂家扯皮,使用这类方案的工程师,胆是大了,技不一定高。
5、使用二极管钳位转换电平
有一些工程师还经常使用二极管钳位的方法进行电平转换,如下图左是3.3V转5V,当3.3V电平为高时,5V输出电压=3.3V+Vd=3.3+0.7≈4V,到达5V的高电平阈值,当3.3V电平输出为低时,5V电平输出电压约=Vd≈0.7V,在低电平阈值范围内。
如下图右是5V转3.3V,输入是高电平时,3.3Vout=3.3V+Vd≈4V,当5V电平输入为低电平时,3.3Vout=0V。
图5:3.3V转5V(左),5V转3.3V(右)
优势: - 漏电流小:由于二极管的漏电流非常小(uA级),可以单向防止电源倒灌,防止3.3V倒灌到5V。
- 容易实现:二极管、电阻采购容易,占用面积小。
劣势: - 电平误差大:主要是二极管的正向压降较大,容易超出芯片的工作电压范围。
- 单向防倒灌:只能单向防止倒灌,不能双向防止倒灌。
- 速度和驱动能力不理想:由于电阻限流,驱动速度和能力均不理想,只能应用在100K以内的频率。
- 所需器件较多。
二、使用DIALOG GREENPAK的芯片
DIALOG的GREENPAK芯片是一种可编程逻辑芯片,它功能强大,应用广泛,电平转换在GREENPAK中是非常简单的一种应用,任何双电压轨的GREENPAK芯片都 可以非常简单的实现电平转化。例如SLG46826V (https://www.dialog-semiconductor.com/SLG46826-datasheet)
通常在系统级设计中,需要组合来自两个不同电平的信号,例如模拟电压轨工作在 5V,而数字电压轨工作在 3.3V。许多 GreenPAK 通过使用双电压轨来解决这个问题,来自 不同电平的信号都可以输入到 GreenPAK,进行处理,然后 从任意电压轨输出。当使用双电压轨的器件来开始进行一个设计的时候,需要 下图所示的那样,分别输入 2 个电压轨的电压范 围, 两个电压轨的工作范围随不同器件而有所不同,但是 VDD 轨总是电压较高的轨。
三、总结
上述6种电平转换方法是比较常见的方法,电平转换主要考虑以下几个维度:
- 电平匹配:这个最重要,转换后的电平需要在对方承受的范围之内。
- 漏电流:两者之间不但电平要匹配,漏电流还不能互相影响,这个是最常犯的错。作者就见过,有工程师使用二极管电平转换做RS485输出,结果外部设备的漏电流过来影响自己设备的开机,而且自己的设备启动时输出一堆乱码,影响对方正常工作。
- 驱动能力:电平转换以后还要考虑驱动能力,例如I2C电平转换后,挂载多个I2C设备就需要考虑驱动能力的问题。
- 速度:理论上,所有的电平转换都是有速度牺牲的,速度最优的方案是专用电平转换芯片,其次是三极管方案,最差的就是电阻分压方案。
- 成本:成本这个因素交给产品经理考虑吧。
- 路数:太复杂的转换方案不适合多路数的情况,会占据板卡太多的面积。例如4bit的SD卡信号1.8V转3.3V,就不适合使用三极管方案。
- GREENPAK的可编程逻辑芯片是近年慢慢进入中国的半导体市场,在各种各样的应用场景均可以找到它的应用,它是基于芯片平台的功能应用开发。