83 倍:ASC0108S 在推挽和开漏之间,差的不是速度,是回程

摘要:国科安芯 ASC0108S 是一颗 8 位双电源双向电平转换器,TSSOP20,A 侧 1.65~3.6 V、B 侧 1.65~5.5 V,且 V_CCA 必须小于等于 V_CCB。它的两个数据率在手册里并排放着,中间隔了 83 倍:推挽模式 100 Mbps(V_CCA 3.3 V / V_CCB 5 V),开漏模式 1.2 Mbps。这 83 倍不是工艺差距,也不是设计取舍,而是两种驱动方式在物理上的必然结果------一个本侧有管子往上拉,一个只能靠外部电阻把线拉回去。本文把这 83 倍拆到三个时间参数上,再反推出上拉电阻的上限,最后给出速率上限的三个约束条件。全温 -55~+125 ℃,商业航天级:TID ≥100 krad(Si),SEU/SEL ≥37 MeV·cm²/mg。

一、手册把两个数并排放着,但没解释差距

翻到 ASC0108S 的时序表,第一行就是数据率。它不是一个数,是两组数:

推挽模式在 V_CCA=3.3 V、V_CCB=5 V 时是 100 Mbps;开漏模式在同一组电压下是 1.2 Mbps。同一个封装、同一个芯片、同一个引脚,只因为你挂的总线类型不同,上限差了 83 倍。

这个差距大到不像"性能差异",更像"两个器件"。 很多设计者看到这里会下意识地认为开漏模式是"降级模式",能不用就不用。这个判断在多数场合是对的,但它掩盖了一个更重要的问题:为什么是 83 倍,而不是 2 倍、5 倍?如果不知道这个数的来源,你就无法判断自己的系统到底还有多少余量。

范围说明:本文只讨论 ASC0108S 的数据率来源与速率约束,不与其他型号做横向对比,也不重复讨论通道间偏斜与 ESD 分区防护(那是另一个层面的问题,判据不同)。文中"手册值"标注出处,"推导值"给出算式。

二、推挽和开漏,差的是"有没有回程"

先把两种驱动方式的电路讲清楚,后面所有的数都是从这张图上长出来的。

推挽 输出级有两个管子:一个把线拉到高,一个把线拉到低。输出高电平时,上面的管子导通,电流从电源经管子流到负载,这是一条主动的、低阻抗的上升路径。上升沿有多快,取决于管子的导通电阻和负载电容,典型值是几纳秒。

开漏 输出级只有一个下拉管子。输出高电平时,这个管子关断,线处于高阻状态,没有任何东西把它拉到高电平------只能靠外部上拉电阻,让电流从电源经电阻慢慢给负载电容充电。

这个差别在电路上就是一个字:回程。推挽有回程,开漏没有。

充电时间和电阻成正比。推挽的上升路径阻抗是几欧到几十欧,开漏的上升路径阻抗就是你的上拉电阻,几千欧到几十千欧。三个数量级的阻抗差,落到上升时间上就是一个多数量级------15 ns 变成 337 ns。

图:推挽与开漏的三项时间对比,以及上拉电阻对上升沿的影响

三、把 83 倍拆到三个参数上

数据率是结果,不是原因。真正拉开差距的是三个时间参数,手册在 V_CCA=3.3 V、V_CCB=5 V 下都给了:

|------------------|----------|----------|--------|------------|
| 参数 | 推挽模式 | 开漏模式 | 倍数 | 它是什么 |
| 脉冲宽度 t_W | 10 ns | 833 ns | 83.3 倍 | 一个位最少要维持多久 |
| A 端上升时间 t_rA | 15 ns | 337 ns | 22.5 倍 | 从低到高走完的时间 |
| A 到 B 传输延迟 t_PLH | 15 ns | 500 ns | 33.3 倍 | 低到高的传播延迟 |

三个倍数里,脉冲宽度的 83.3 倍和数据率的 83.3 倍完全一致,这不是巧合:t_W = 1 / 数据率,833 ns 正好是 1.2 Mbps 的位宽,10 ns 正好是 100 Mbps 的位宽。手册用脉冲宽度而不是频率来标,是因为它更接近实际测量的方式------示波器上量一个窄脉冲的宽度,比量频率更直接。

但真正说明问题的是另外两行。上升时间只差 22.5 倍,传输延迟只差 33.3 倍,都远小于 83 倍。这说明数据率不是被某一个参数单独卡住的,而是被"上升时间占掉多少位宽"卡住的。

算一下:开漏模式下,一个位宽 833 ns,手册给的上升时间上限 337 ns,上升沿占了位宽的 40% ,剩下约 496 ns 才是波形真正稳定的时间;位宽对上升时间的比值是 2.47。这就是手册在开漏模式下隐含的设计余量------位宽至少要留出 2.5 倍的上升时间。

推挽模式下这两个数不能直接相比:10 ns 的位宽和 15 ns 的上升时间放在一起是矛盾的。原因是 15 ns 是 15 pF 负载下的保守测量值,并不代表 100 Mbps 时的真实边沿。这提醒一件事:手册里的时间参数都绑定在自己的测试条件上,脱离条件做算术会得出错误结论。

四、上升沿里,有多少是芯片的、多少是电阻的

如果把 337 ns 的上升时间全部算在芯片头上,那这颗芯片在开漏模式下就没救了。实际上不是。

上升沿的时间常数由两部分串联而成:芯片内部的下拉/上拉通路阻抗,加上外部上拉电阻。开漏模式下,芯片内部只负责"拉低",上升过程完全不参与,所以上升时间几乎全部由外部上拉电阻和负载电容决定:

t_r ≈ 2.2 × R_上拉 × C_负载

手册给出的负载条件是每侧 15 pF。代入 337 ns 反推:R = 337 ns /(2.2 × 15 pF)= 10.2 kΩ。

|----------|-----------------|------------------|--------------------|
| 上拉电阻 | 上升时间(15 pF) | 相对 833 ns 位宽 | 结论 |
| 4.7 kΩ | 155 ns | 19% | 余量充足,可稳定跑 1.2 Mbps |
| 10 kΩ | 330 ns | 40% | 手册 337 ns 的水平,临界可用 |
| 22 kΩ | 726 ns | 87% | 波形来不及回高,实际速率要降 |
| 36 kΩ | 1188 ns | 143% | 已超过位宽,不能工作 |

这张表解释了一个很常见的现象:同一块板子,换个上拉电阻,通信就时好时坏。 很多人以为是芯片批次问题,其实是上拉选大了。省电和速度在开漏总线上是一对矛盾------上拉越大越省电,上升沿越长;而 1.2 Mbps 这个上限,本质上是给"10 kΩ 上拉 + 15 pF 负载"这组条件留的余量。

顺带说一句:1.8 V 侧的 t_rA 上限是 1200 ns,比 3.3 V 侧宽松得多,反推出的上拉电阻上限是 36 kΩ。低压侧之所以能用更大的上拉,是因为位宽本身也更宽(1250 ns)------两个量是同向变化的,所以这个"宽松"并不等于更多余量。

五、速率上限其实有三个约束,缺一个都跑不满

把上面这些串起来,会得到一个比"推挽 100 Mbps、开漏 1.2 Mbps"更实用的结论:真正决定你能跑多快的,是三个互相独立的约束。

|---------|---------------------------|------------------|
| 约束 | 手册判据 | 不满足时的表现 |
| 总线类型 | 推挽 100 Mbps / 开漏 1.2 Mbps | 选错模式,速度差 83 倍 |
| 负载电容 | 每侧 15 pF | 电容翻倍,上升时间翻倍,速率减半 |
| 驱动器边沿速率 | Δt/Δv ≤ 10 ns/V | 边沿太慢,接收端判决点漂移 |

第三个约束最容易被忽略,也最值得说清楚。

手册在推荐工作条件里写了一条:A 端口、B 端口、OE 引脚的输入上升或下降沿速率,最大 10 ns/V。这是一个"上限",意思是你的边沿不能比 10 ns 每伏更慢。 按 3.3 V 摆幅算,最慢允许 33 ns。

但 100 Mbps 需要什么?位宽 10 ns,如果要留出 30% 的判决余量,上升沿应该控制在 3 ns 以内,也就是 0.9 ns/V 左右。

对比一下:手册允许 10 ns/V,而 100 Mbps 需要 0.9 ns/V,中间差了 11 倍。 这就解释了一件事------"这颗芯片支持 100 Mbps"和"你的系统能跑 100 Mbps"是两个完全不同的命题。芯片本身的能力是 100 Mbps,但你的驱动器如果只能给出 33 ns 的边沿,按"位宽至少 3 倍边沿"去算,实际能跑的上限只有 10 Mbps 量级,正好落在开漏模式那一档附近。

图:数据率随 A 侧电压的变化,以及输入边沿速率的允许上限

六、两条不能商量的前提

除了上面三个约束,ASC0108S 还有两条硬性前提,写错了不是性能下降,是直接不工作。

第一条:V_CCA 必须小于等于 V_CCB。 这不是建议,是器件的内部结构决定的------A 侧是低压参考侧,B 侧是高压参考侧,反过来接会让内部的电平检测失效。手册在特性、概述、功能描述、应用信息四处都重复了这一句,反复出现的地方就是最容易出错的地方。

绝对最大额定值也给了边界:A 侧 -0.5~4.6 V,B 侧 -0.5~6.5 V。推荐工作范围是 A 侧 1.65~3.6 V、B 侧 1.65~5.5 V。两端各留了约 1 V 的余量,不算宽裕,所以电源上的瞬态过冲要控制住。

第二条:每侧 15 pF 负载。 这个数直接决定了上面所有的上升时间计算。如果实际负载超过 15 pF(走线长了、挂了多个器件、加了测试点),等效的上拉电阻上限要按比例缩小。

七、选型的时候,先看这三件事

产品需求层面 :先确认总线是什么类型。如果是 I²C 这类开漏总线,那么 1.2 Mbps 就是天花板,任何"能不能再快一点"的讨论都该转向换总线或者分区;如果是 SPI、并口这类推挽总线,100 Mbps 才有意义。这颗芯片的价值恰恰在于它能同时应付两种总线,而不是在其中一种上特别强。

工程环境层面 :-55~+125 ℃ 全温、TID ≥100 krad(Si)、SEU/SEL ≥37 MeV·cm²/mg,加上 B 端口 ±8 kV HBM 和 IEC 接触 ±4 kV/气隙 ±8 kV,这组指标指向商业航天、核工业和机器人这类场景。要注意时序数据手册注明"基于台架测试和设计仿真",在做最坏情况分析时,这不是一组有保证的极限值,要留额外余量。

量产交付层面 :TSSOP20、无需方向控制引脚(自动双向)、无需上电时序要求,这三点让它的外围电路极简。但开漏模式下的上拉电阻必须写进 BOM 并在测试项里体现------它不是"随便挂一个"的元件,而是决定通信速率的关键参数。

八、先确认总线类型,再谈速度

如果只带走一句话:83 倍不是性能差距,是"有没有回程"的差距。 有回程,速度由芯片决定;没回程,速度由上拉电阻决定。

所以下一步不该是继续读数据率那一行,而是打开你的原理图,确认三件事:

第一,这条总线上有没有主动的上拉器件。如果有(推挽驱动),按 100 Mbps 的余量去算时序;如果没有(开漏),先把上拉电阻算出来,再反推能跑多快。

第二,量一下实际负载电容。15 pF 是手册的测试条件,不是你的板子的实际情况。走线超过几厘米、挂了两个从器件,这个数就可能翻倍。

第三,确认驱动器的边沿速率。用示波器看上升沿的 10%~90% 时间,除以摆幅,得到 ns/V,和 10 ns/V 的上限对一下。如果已经接近上限,别再指望提速。

三件事做完,"能不能跑到 100 Mbps"这个问题就有答案了。

参考资料来源

• 国科安芯《ASC0108S 数据手册》V1.0:1.1 特性、1.2 概述、1.5 功能框图与器件功能表、2.1 绝对最大额定参数、2.3 推荐工作环境、2.5 时序要求(2.5.1~2.5.3)、5.1 功能描述、5.2 特性描述。

以上数据引自公开数据手册。手册未给出的量(上拉电阻上限、边沿速率与数据率的换算关系)为基于手册参数的推导,文中已标注"推导",供设计参考,不构成对手册的补充或修改。资料访问日期:2026 年 10 月。

相关推荐
QXWZ_IA3 小时前
横跨三网“只进不出”架构如何划分安全边界
安全·架构
国科安芯3 小时前
从遥控到自治:ASP4644S2B支撑星载电源健康管理与容错配电
网络·单片机·嵌入式硬件·安全·dcdc·低轨卫星·商业航天
rhythm-ring4 小时前
《汽车热管理系统:电子水泵单线PWM双向诊断机制》
单片机·嵌入式硬件·汽车
ZENERGY-众壹4 小时前
告警风暴怎么压?100MW 电站监控平台告警引擎架构复盘
数据库·架构·iot·电站监控
Dev_XH7 小时前
【成品设计】基于物联网的车间安全生产监控系统设计
stm32·单片机·嵌入式硬件·物联网
leo在掘金7 小时前
25.5k Star 的 DeepInfer 怎么扛住3万亿参数
后端·架构
Linye7 小时前
为什么让 AI 修个小 Bug 却把底层全重写了?聊聊 Coding Agent 的最小修改边界
人工智能·架构
王中阳Go7 小时前
你那条三跳链路的单跳超时,是按压测的 p95 定的,还是拍出来的?
人工智能·后端·架构
xiebs_8 小时前
【无标题】111
单片机