在一个芯片中是必然存在I/O电路的,I/O电路虽然原理简单,但在考虑地弹的同时要实现设计指标也许会是一件很困难的事情。因此,深华颖半导体想更多突出I/O电路与设计相关的内容,主要包括了以下几个方面:
1:什么是芯片的I/O电路?
2:I/O电路的分类
3:I/O电路都有哪些参数?
4:I/O电路设计的难点或关键点是什么?
5:搭建地弹仿真环境的注意事项
6:地弹环境下VIH/VIL测量方法
1:什么是芯片的I/O电路?
简单来说,I/O电路其实就是指芯片的信号输入输出接口电路,其一般位于芯片版图的最外围。I/O电路一般有以下几个功能:
(1)实现电平转换
(2)提高驱动能力
(3)进行ESD保护
电平转换:芯片内部电路信号的高低电平和外部要求不一致时,这样通过I/O电路可以实现电平的转换。
驱动能力:尤其是数字芯片,一个输出信号有可能同时有多个扇出,这时候容性负载往往较大,为了使输出信号 的上升下降沿不至于过慢,就要求芯片具备一定的驱动能力。
ESD防护:这是必不可少的一部分,但凡是芯片,在I/O电路中都需要增设ESD防护电路,以便芯片在遭受静电冲击的时候不至于损坏。

2:I/O电路的分类

图 1 输入输出I/O的分类
输入I/O比较简单,根据带不带上下拉电阻可以分为两种。对于一般的输入I/O,其就是反相器构成的BUF。在没有激励信号输入时,带上拉电阻可以使输入保持为默认的高,带下拉电阻可以使输入保持默认的低。由于上下拉通常都是弱上拉或弱下拉,因此当有外部激励输入时,上下拉电阻并不影响信号输入。
输出I/O基本分为三种:
- 第一种是推挽输出结构。推挽输出就是常见的反相器结构,不必多说。
- 第二种是OC/OD输出结构。其为集电极开路/漏极开路输出,电路如下图所示。显然这种结构是没法直接传输高电平的,系统应用时必须要在开路端增加上拉电阻。

图 2 OC/OD输出
OC/OD输出结构具有以下特点:
(1)很方便地调节输出的高电平,可以进行灵活的 电平转换;
(2)可以实现"线与"功能;
(3)带来上升沿的延时问题(和外部R大小选择有关)
3. 第三种是三态输出结构。如下图所示,相对于一般门只有0和1两种状态,三态门多出了一个高阻状态。同时,三态门还有单向三态门和双向三态门之分。

图 3 三态输出结构
高阻态时输出电阻很大,相当于开路,相当于该门与和它连接的电路处于断开的状态。因此三态门可以说是一种扩展逻辑功能的输出级,可以作为控制开关使用。该种结构通常可用于总线的连接,因为总线只允许同时只有一个使用者。通常在数据总线上接有多个器件,每个器件通过OE/CE之类的信号选通。如器件没有选通的话它就处于高阻态,相当于没有接在总线上,不影响其它器件的工作。
3:I/O电路都有哪些参数?
I/O电路主要参数如下图所示。

图 4 I/O参数汇总
04:I/O电路设计的难点或关键点是什么?
其实I/O电路本身的原理是很简单的,但在I/O电路的设计过程中,需要考虑地弹的影响,而地弹的优化正是I/O电路设计的难点。
那么,什么是“地弹”呢?
“地弹”,是指芯片内部“地”电平相对于电路板“地”电平的变化现象。以电路板“地”为参考,就像是芯片内部的“地”电平不断的跳动,因此形象的称之为地弹(ground bounce)。
“地弹”是怎么形成的呢?地弹是由管壳寄生的L引起的。如下图所示,我们先看左图,不考虑管壳寄生L,芯片地认为就是理想的地。再看右图实际上芯片地和外部PCB地——认为理想地之间存在寄生的L,当反相器动态工作时,瞬态电流的变化会在L上产生感应电动势,所以就可以看到芯片地的弹动是多么的欢快了。

图 5 地弹形成原理图
说“地弹”会带来麻烦,具体是指什么呢?地弹会造成I/O电路对外部输入高低电平的不正确判断。这可是个严重的问题,例如,对于CMOS电平标准,给芯片2.0V输入,I/O应该识别为高,输出1的,那如果芯片识别成0会怎么样呢?更严重的是或许会识别成一会0一会1的扰动信号。这不用说,当然是严重的功能性故障了。
所以我们需要做的就是:保证在地弹环境下I/O电路能正确识别外部输入的高低电平,这其实就是要保证VIH/VIL在地弹环境下满足手册指标要求。
5:地弹环境下VIH/VIL测量方法
仿真测量方法可以有两种,都可以通过写公式的办法自动计算。第一种是给输入施加斜坡信号,具体参考下图:

图 6 输入斜坡信号时的方法
输入I/O第一次误翻转时对应的输入斜坡值为VIL,输入I/O最后一次误翻转时对应的输入斜坡值为VIH。需要注意的是斜坡信号必须足够缓慢才能得到准确的测量值,这里有一个经验设定:斜率K=10mV/2T,T为翻转周期,即两个翻转周期的时间斜坡变化量为10mV。斜率当然越小越准确,但相应的仿真时间也会越长。
还有第二种方法是采用台阶信号,具体如下图:

图 7 输入台阶信号时的方法
使用这种办法,输入I/O第一次误翻转时对应的台阶的前一阶的值为VIL,输入I/O最后一次误翻转时对应台阶的后一阶的值为VIH。需要注意的是台阶信号的步长必须足够小才能得到准确的测量值,这里有一个经验设定:STEP=10mV/2T,T为翻转周期,即两个翻转周期的时间增一个台阶,变化量为10mV。10mV的误差量是可以接受的,步长当然越小越准确,但相应的仿真时间也会越长。
这两种方法都可以得到基本一致的结果,第一种方法要得到准确的测量结果势必要降低斜率,这会带来仿真时间的增加。其实在PVT仿真时比较推荐第二种方法,因为可以采用一个取巧但又不失准确度的的办法:可以省却中间的部分的台阶,只保留两头的台阶。因为通常PVT仿真时VIH或VIL的最小最大值肯定是落在两头的台阶范围内的,这样可以进行有效的仿真加速!
你有I/O电路的设计困扰吗?联系我们,我们将安排专业的工程师为您解答。
常见问题:半导体中的 I/O 电路设计
问:芯片中的 I/O 电路是什么?
答:I/O 电路是芯片内部核心逻辑与外部引脚之间的接口,通常位于半导体器件的焊盘环上。
问:I/O 电路的主要类型有哪些?
答:主要类型包括:
- 推挽式(CMOS 输出)
- 开漏/开集电极式
- 三态输出
问:I/O 设计中的地弹是什么?
答:地弹,也称为同步开关噪声 (SSN),是由寄生电感引起的,会导致芯片地电压波动。
问:为什么 VIH/VIL 在 I/O 电路中很重要?
答:VIH 和 VIL 定义了逻辑阈值。噪声环境下的阈值错误会导致逻辑错误和系统故障。

