马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
想要设计出IC芯片内部的IO-PAD。结构实现用下面的开漏电路。在实现过程中有一些参数需要求助。
手册中涉及到iic总线时序信息如下:
根据网上模拟大佬的描述说在设计IO级PAD的时候需要考虑几个关键性指标:
设计要点1:I/O端口驱动能力及过冲电压 VOL<300mV时,IOL需要大于4mA; 考虑外部寄生电容和电感,SDA工作在open drain模式中,过冲电压小于100mVSDA PAD电路如下图所示:
SDA写入从机时,OD_SDA信号恒高,M1关断,MCU发送SDA数据经过SDA PAD进行毛刺滤除和延时后输出SDA_IN作为芯片内部数据信号使用;SDA由从机读出时,由于SDA被4.7k电阻拉高,此时,OD_SDA信号经发送相应的低电平序列,将SDA拉低,即可在SDA形成数据序列由MCU读取; 在SDA读数据时,M1需要足够的下拉能力(即尺寸需要足够大),该指标的仿真方法,在ESD NMOS drain端接300mV电压源,OD_SDA=0,使得ESD NMOS导通,通过设计W/L满足ESD NMOS上电流为4mA以上 ;同时,需要设计时间常数R1*C1,控制M1的栅极翻转速度,避免由于外部寄生电感,导致SDA由向下过冲(电感电流不能突变,导致电压突变,随后电压逐渐恢复),导致MCU器件损坏,如下图所示
设计要点2:SCL的Deglitch时间设计 如果I2C需要同时支持100kbit/s,400kbit/s,1Mbit/s,则deglitch时间要满足1Mbit/s的传输速率,按最大传输速率1Mbit/s,即1MHz,时钟周期为1us,按照时钟占空比1/3算,约300ns,所以deglitch时间要小于300ns,为了留够裕量,SCL deglitch时间设计为50ns是ok的,正如手册给出的deglitch(max)=50ns;同时要注意,SDA需要滞后SCL 50ns,也就是说,SDA的deglitch设计为100ns,这是由于I2C正常工作时,SDA和SCL沿不能重合,需要错开,经验值一般SDA滞后SCL 50ns是可靠的。 请问网上大佬介绍的指标应该怎么仿真验证? 本人已经通过晶圆厂的lib设计出同样的IO-PAD电路,不知道如何仿真验证,并对以前仿真情况持有怀疑状态。希望大佬解惑。
|