1. I3C总线中SDA信号的关键设计选择
在I3C总线设计中,SDA(Serial Data)信号线的驱动方式选择直接影响着总线性能、功耗和兼容性。推挽(Push-Pull)与开漏(Open-Drain)是两种根本不同的输出结构,它们的差异远不止于电路拓扑层面。
1.1 推挽输出的核心特性
推挽结构采用两个互补的MOS管(PMOS和NMOS)组成输出级,如同两个配合默契的推手:
- 高电平由PMOS管主动"推"出
- 低电平由NMOS管主动"拉"入
- 典型特征:
- 输出阻抗低(通常<50Ω)
- 上升/下降沿对称且陡峭(典型值0.5-2ns)
- 静态电流几乎为零(仅在切换时存在穿透电流)
在I3C的HS(High Speed)模式下必须使用推挽输出,此时总线时钟可达12.5MHz。实测某款MCU的I3C接口在推挽模式下,SDA信号的上升时间仅1.2ns(负载15pF时),完全满足HS模式时序要求。
1.2 开漏输出的设计本质
开漏结构仅保留NMOS下拉管,如同只有一个单向作用的拉手:
- 低电平由NMOS主动拉低
- 高电平依赖外部上拉电阻"浮起"
- 关键参数:
- 上拉电阻值决定上升时间(通常1-10kΩ)
- 漏极开路电压可达VDD(与芯片供电解耦)
- 典型下降时间比推挽慢5-10倍
I3C的SDR(Single Data Rate)模式兼容I2C,必须采用开漏输出。某硬件实测显示,使用2.2kΩ上拉时,3.3V总线上升时间约120ns,这与I2C标准100kHz模式匹配。
2. 两种输出结构的对比实测分析
2.1 电气特性对比
通过示波器捕获同一I3C控制器在不同模式下的波形:
| 参数 | 推挽模式 | 开漏模式(2.2kΩ) |
|---|---|---|
| 上升时间(10-90%) | 1.8ns | 150ns |
| 下降时间(90-10%) | 1.5ns | 15ns |
| 静态功耗 | <1μA | 约300μA |
