txs(从入门到深层次理解和设计I2C电路,包括上拉电阻计算,仿真等)
I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。随着IC制程的不断提升及应用范围的不断复杂化,随之而来也在应用中出现了一系列之前忽视或者潜在的问题。
本文结合一个HDMI DDC(I2C)应用中案例,从问题表现到分析、优化、整改、总结对于此部分电路机理及设计流程进行一个总结。通过一系列分析、仿真、测量、应用测量,从而使电路设计从一种模糊的经验值应用转变为一种通过客观的计算、仿真、优化、实测的设计流程。
I2C Spec核心整理
I2C总线架构
I2C Spec核心参数要求
此文档设计用于实际工程参考,所以对于电路基础知识(OD、tr、Cb、VOL)不做过多介绍。对于此部分有疑问,可以查询Spec、datasheet等相关资料及互动答疑进行解答。原创今日头条:卧龙会IT技术
上拉电阻计算
I2C 上拉电阻估算公式
Rp: 上拉电阻
Vcc:芯片IO口高电平
Vol(max): 输出低电平最高值
Iol:输出低电平灌电流
tr:上升沿时间(标准推荐)
Cb:SCK/SDA线路电容(芯片IO口、pcb trace、线缆、连接器、转换器件)
0.8473:推导出一个系数(计算原理就是电容充放电)
业界推荐的上拉电阻计算公式,此公式在NXP、TI等参考文档中有一定介绍。对于公式中0.8473来由及推导过程,参考下图。因为已有单独文档对于此系数进行完整推导求证,此部分只通过单独截图体现。
电容充电公式
推导出t1、t2与RC对应关系式
推导出R与tr、c关系式
备注:推导与TI参考文档推导过程有轻微差异,孰是孰非暂时没有时间及精力与TI沟通,推导中存在的差异不影响计算公式应用。对此部分有兴趣同学可以一起沟通完善这个推导中差异存在本质原因。
I2C电路应用分类
对于I2C电路从目前接触到应用暂时分为以下几类,几类应用针对性及注意事项有较大差别。
应用范围
板内通讯:此种应用相对来说应用较广泛,并且因为板内通讯相关影响因素较集中,应用较简单。硬件方面主要是上拉电阻设置是否得当;
板间/设备间:此种应用相对来说范围有限,但是影响因素多了Cable、连接器影响,应用稍复杂。硬件方面主要是上拉电阻、驱动容性负载能力设计是否得当;
电平转换
电平兼容:此种应用无论在板内、板间应用都比较简单,在此不做过多介绍;
电平需转换:此种应用在板内、板间都存在应用,需要增加考虑转换芯片(或Mosfet)边沿时间、低电平、灌电流,相对来说稍复杂;
连接结构
1对1连接架构
这种相对于比较简单,需要注意的事项主要是因为芯片工艺不断提升,信号边沿时间越来越短,如果上拉电阻完全按照规范400pf设计计算(实际线路器件电容很小),信号会有明显的过冲(特别是下冲),此部分设计建议发送端靠近芯片pin位置预留对地电容解决过冲问题;同时上拉电阻设计以实际线路器件电容为准设计,而非生搬硬套标准400pf进行计算。
1对多连接架构
1对多需要考虑驱动在符合I2C Spec要求前提下能否驱动400pF容性负载、阻抗突变(连接器)位置处理,此部分因为器件及走线会造成实际电容有可能大于400pF,所以重点关注的是信号边沿、低电平是否符合规范要求。
因为时间原因,此部分在本篇文章中未做介绍。
应用举例
应用举例以某产品HDMI DDC举例,相对来说也是I2C电路最复杂应用之一,同时也是一个典型的I2C设计问题。
某产品DDC设计
实际产品原理图
因为ibis文件天生局限(TI未提供spice模型),对于此部分仿真参考作用有限。所以此方案未做仿真。
10m HDMI Cable(800-900pF)
设备HDMI连接器位置5V DDC信号
设备HDMI 8350 pin位置1.8V DDC信号
5m HDMI Cable(400-500pF)
设备HDMI连接器位置5V DDC信号
设备HDMI 8350 pin位置1.8V DDC信号
存在问题
10m HDMI Cable连接显示设备无图像显示;
5m HDMI Cable连接部分显示设备无图像显示;
3m、5m、10m HDMI Cable连接长虹电视无图像显示;
测试数据分析:
信号上升沿已完全非单调,且持续时间较长;
信号上升沿有明显震荡;
TXS0102推荐应用电路
TXS0102芯片内部架构
从Application可以看出此款芯片适用于我们定义的板内芯片间、1对1或1对多通讯方式,从Architecture可以初步明白我们测试过程中出现的非单调、边沿振荡全部来自于芯片内部One-short边沿加速导致。根本原因是我们的容性负载远远超出这颗芯片应用设计初衷。
综合以上,这款芯片不适用于我们目前应用。
某产品 MOSFET方案
精简示例电路如下图:HDMI OUT 5m Cable LG TV
NTR4003N默认方案
NTR4003N仿真示意图(5m HDMI cable)
NTR4003N默认设计仿真波形图
NTR4003N默认设计仿真电流图
结合初步仿真,我们目前只能确定NTR4003N方案优于TI转换电平方案。
5m HDMI cable仿真,信号无明显振荡非单调等异常;
5m HDMI cable仿真,5V侧信号上升沿时间在1.25us左右(超出标准要求);
此方案是否为最终最合理方案,我们需要重新进行分析计算、仿真和实际测试验证。从目前看这个方案只是比默认设计有提升。
分析计算
求解8350输出低时灌电流及MOSFET RDS
8350 此pin灌电流估算
通过以上测量值及计算方式,我们可以估算出8350两个参数:
MOSFET RDS大概在37欧姆左右
此pin灌电流大概在4mA
NTR4003N优化方案
结合第二章上拉电阻计算,我们重新对于上拉电阻进行计算
1.8V侧上拉电阻计算
结合上述计算,结合我们实际单板布线及网络器件,我们认为在8350侧我们上拉电阻依据50pF左右线路电容选择20K上拉电阻较合适。
同理,我们也同时对5V侧进行一个估算。
5V侧上拉电阻计算
结合设计计算,我们认为选用800pF对应1.475K以较合适(800pF为HDMI DDC驱动标准认证要求)。
HDMI CTS TestID 7-1 Test condition
计算完成后,结合计算,进行仿真验证。确认改善
对于1.8V侧上拉电阻运用参数扫描:
上拉电阻扫描对于低电平电压
在电阻大于1.1K后,对与两侧低电平影响不是特别大(随着电阻增大,低电平书逐渐变小的)
上拉电阻扫描对于1.8V侧上升时间影响
上拉电阻扫描对于5V侧上升时间影响
上拉电阻愈大,低电平愈低,上升时间愈长。上拉1K电阻5V侧低电平已经超标了。
对于1.8V侧串联电阻运用参数扫描进行分析:原创今日头条:卧龙会IT技术
串联电阻扫描对于1.8V侧信号上升沿影响
串联电阻扫描对于5V侧信号影响
串联电阻对于5V低电平影响较大,同时对于信号下降沿有较大影响。对于1.8V暂无明显影响。
结合以上参数扫描得出规律,我们随后选取几组典型值进行针对性测试。
从仿真来看我们选用的20K 1.5K取消30Ω串联电阻方案是有改善的,实测数据补充(此仿真因为时间原因没有提取S参数及采用spice模型),所以仿真与实际测试可能有一定差别,我们重点关注改善趋势及分析方法是否正确。
方案对比
我们对比两种MOSFET方案仿真数据及实测数据:使用线缆为10m cable (800-900pF),仿真忽略了LG电视机内部网络电容影响,所以实际测试数据理论上边沿时间将大于相应仿真数据。
NTR4003N
默认设计:2.2K 2.2K 30R
NTR4003N 默认设计 灌电流仿真
NTR4003N 默认设计 信号波形仿真(上升时间)
NTR4003N 默认设计 实测波形(信号上升时间)
NTR4003N 默认设计 信号低电平仿真
NTR4003N 默认设计 信号5V侧低电平测试
优化设计:1.5K 20K 0R
NTR4003N 优化设计 电流仿真
NTR4003N 优化设计 信号波形仿真(上升时间)
NTR4003N 优化设计 信号波形测量(上升时间)
NTR4003N 优化设计 低电平波形仿真
NTR4003N 优化设计 信号5V侧低电平测试
RTR040N3
默认设计:2.2K 2.2K 30R
RTR040N3 默认设计 灌电流仿真
RTR040N3 默认设计 信号波形仿真
RTR040N3 优化设计 信号波形测量(上升时间)
RTR040N3 默认设计 信号低电平仿真
RTR040N3 默认设计 信号低电平测试
优化设计:1.5K 20K 0R
RTR040N3 优化设计 信号电流仿真
RTR040N3 优化设计 信号波形仿真
RTR040N3 优化设计 信号波形测试
RTR040N3 优化设计 信号低电平仿真
RTR040N3 优化设计 信号低电平测试
方案总结
结合以上三种MOSFET方案分析及仿真,我们从而可以清醒看出,不同的参数组合会产生不同的效果。没有一个参数是孤立的,同时此处也不是我们想到的选用器件的几个关键参数,VGS低、RDS小、Capacitance小满足就可以完全满足了,从默认电路到优化后方案在上升沿及低电平都有较大差异。原创今日头条:卧龙会IT技术
相同的器件,优化后的设计在低电平、上升沿时间上都有明显改善。新选择的器件在性价比上远远胜于默认设计中带加速电平转换芯片。同时我们在新的MOSFET方案下测试了近20款电视机,使用5m,10m,15m HDMI Cable经过10次以上插拔重启确认HDMI部分DDC完全工作正常(15m cable 2K显示条件下图像发蓝因为TMDS信号驱动问题)。此方案除了解决了之前的不显示问题,同时对于输出兼容性有质的提升。
其根本原因在于选中的部分参数不是独立的,这些参数是在一定前提条件下才能达到。大部分时候我们只顾眼前华丽的数据,却忘掉华丽数据背后的限定条件,设计的实际电路能否完全发挥出这些参数是更重要的一个环节。
下边两幅仿真图是对两种MOSFET在相同条件下导通电流做一个对比(最终反映出同等限定条件下RDS差异)
NTR4003N VGS=VDS 1.8V导通电流扫描
RTR040N03 VGS=VDS 1.8V导通电流扫描
设计参考
结合个人近期对于部分项目整改及结合TI、NXP部分资料,对于I2C设计建议可以参考如下流程进行设计。
架构评估:
参考之前I2C电路应用分类,判定待设计电路属于那一类。确定完成后,同时收集相应器件datasheet、layout线路、电平转换器件、电缆等等进行收集完善;
参数确认
确认以下参数
器件选型
在明确以上参数后,我们将初步选定器件。常规方案器件在方案评估期可以选定,但是对于设备间牵扯到电缆设计,需要明确电缆及外设后确定最终器件。
对于驱动电缆TI、NXP有相应专门用于此领域芯片,特点就是可以驱动800pF甚至更高容性电缆且低电平及上升时间符合标准。
RPU计算
此电阻计算在4.2章节中已结合实例完成了一个完整计算,在此不做介绍。
计算出为一个范围,根据设计侧重进行一定取舍调整。3400K速率现有产品暂未用到,所以参考表中没有做估算,有兴趣可以参考公式进行估算。
上表中低电平统一取0.4V,相对于来说是个特别保守的值(可以根据实际规格书要求进行适当放宽)。
简易仿真
在Multisim、Pspice、Ansys中进行简单仿真,估算芯片内部MOSFET RDS、线缆容性、对端外设。对于计算数据与仿真结果结合后进行一个优化。文档中已有多个案例,在此不做介绍
最终方案
结合实际测试数据与仿真数据进行一个对比,再次进行优化;
对于仿真推荐的与实际测试的做一对比进行校准。
少年,现在明白怎样设计一个心里有底、性能稳定的I2C电路了吧!
你对本文有什么见解,欢迎在评论区留言讨论
原创:卧龙会 关羽兄弟
卧龙会,卧虎藏龙,IT高手汇聚!由多名十几年的IT技术设计师组成。欢迎关注!想学习请点击下面“了解更多
相关文章