芯片主要由称为互连的导线构成
在 stick diagram 中,导线决定尺寸
晶体管是导线下面的小器件
导线有很多层
导线与晶体管同样重要
相邻层通常正交布线
互连寄生效应的影响
降低鲁棒性
影响性能
增加延迟
增加功耗
串扰;相邻的信号线与电路节点之间不希望有的耦合引起的干扰
一根导线与其邻线之间存在较大的电容
当邻线从 1→0 或 0→1 切换时,该导线也倾向于跟着切换。
这称为电容耦合或串扰。
串扰的影响
在不切换的导线上产生噪声
增大正在切换导线的延迟
RC 串扰
串扰会减慢信号速度——增加稳定噪声(settling noise)。
分析中涉及两条网络:
侵扰网络(aggressor net):产生干扰
受扰网络(victim net):受到干扰
浮空线收到串扰
串扰会在不切换的导线上产生噪声。
如果受扰线是浮空的:
可建模为电容分压器
被驱动线受到串扰
通常受扰线由一个门驱动,该门会对抗噪声。
噪声取决于相对电阻
受扰线驱动器工作在线性区,侵扰线驱动器工作在饱和区
若尺寸相同,
推导过程其实就是叠加定理
当
Undriven,如果 Victim 是悬空的,串扰最严重
一旦有 Driver,且 Driver 越强(尺寸越大),耦合噪声毛刺就会大幅下降
假设上下层平均而言都保持静止
可以忽略电容的第二端
将顶部和底部的电容合并成一个对地电容
有效的
米勒耦合因子(Miller Coupling Factor),可以理解为
受扰网络被两个侵扰网络包围,且两根侵扰线同一时刻发生与受害线相反方向的跳变。
aggressor net X,X节点正在放电;victim net Y ,Y节点正在充电,且两条侵扰线与受扰线并行产生耦合电容
是对上一页的证明
X 从 2.5 V 跳变到 0 V
3×1 μm 的重叠长度会造成 0.19 V 的扰动
当邻近导线的切换方向与受扰线相反时,延迟会增加。
延迟取决于邻近导线的活动情况。
电容的两端以相反方向切换,有效电压被加倍,
r 表示导线对地电容与邻间耦合电容之间的比例
每出现一个上升,一个不动就加一个 r ;每出现一个上升,一个下降就加 2r
当线Y被一个内阻为
那么如果有噪声会怎样?
如果噪声小于噪声容限,就不会产生问题。
即使受到较大的噪声尖峰干扰,静态 CMOS 逻辑最终也会稳定到正确输出。
但是毛刺会造成额外延迟。
误翻转还会带来额外功耗。
动态逻辑无法从毛刺中恢复。
存储器和其他敏感电路也可能因此产生错误结果。
处理电容串扰
避免浮空节点。
保护敏感节点(比如说,预充电总线),增加保持器件以降低阻抗
尽量增大上升时间和下降时间
使用差分信号。
不要让导线长距离并行。
使用屏蔽线。
使用屏蔽层。
屏蔽线与屏蔽层技术
结构化可预测互连
密集导线结构
优点:交叉耦合电容降低 40 倍,延迟变化约为 2%。
缺点:但面积和总电容会增加。
优化导线布局,减少两根线并行的长度
只考虑相邻轨道中的导线耦合。
忽略垂直导线之间的耦合。
假设耦合/串扰与相邻长度成正比。
绞线(交错连线):打散了线与线之间的固定相邻关系,不让同一对导线长距离一直相邻,平均化整体的耦合电容
Encoder 检测相邻导线上的原始数据是否出现“一上一下”的反向翻转,对数据进行编码,使总线上不容易出现最坏的串扰模式,将等效电容降到最低,接收端再由 Decoder 翻译回原始数据。
工艺参数:
0.25 μm 工艺,
计算结果:
当负载很大时,不直接用一个小门驱动,而是用多级逐渐变大的缓冲器链来驱动,可获得更小延迟。
输出驱动器设计
在性能、面积和能量之间进行权衡
给定
面积
能量
表 1 :延迟最低的级联缓冲器中的晶体管尺寸,
表 2 :重新设计后的级联缓冲器晶体管尺寸,
不追求极致的延迟,只求延迟低于上限,可以减少缓冲级数,节省面积和功耗
三态缓冲器
左图是传统型三态反相器,右图是优化后的三态同相缓冲器(输入和输出同相)
当
当
输出级只有单个 PMOS 和单个 NMOS,没有串联带来的电阻叠加问题。只要把输出管的尺寸(W/L)做大,就可以提供非常强的电流驱动能力。
电阻的影响
我们已经学习了如何驱动 RC 互连
电阻的影响通常出现在电源分配中:
IR 压降:电流
电压波动
电源分配网络的目标是:尽量减小 IR 压降,以及减小由于门切换带来的电流变化影响
由于供电网络的金属线存在寄生电阻,产生 IR Drop ,上图中反相器实际感受到的“局部电源”是
电阻与功耗分配问题
需要快速而准确地预测峰值电流
强烈受到封装技术影响
3层金属方案(EV4)
EV4 设计,在工艺中增加了第 3 层“更粗且更厚”的金属层
通过第 3 层金属从芯片两侧供电
第 2 层金属用于形成电源网格
第 3 层金属的 90% 用于电源/时钟布线
4层金属布线方案(EV5)
EV5 设计,在工艺中增加了第 4 层“粗而厚”的金属层
从芯片四个边同时供电
电源网格加固全部由粗金属层完成
第 3、4 层金属的 90% 用于电源/时钟布线
6层金属方案(EV6)
EV6 设计,在工艺中增加了 2 个参考平面金属层
实心平面专用于 Vdd/Vss
显著降低电源网格电阻
全局导线问题
在引入铜之后,预计不会再有进一步明显改进(超导?光互连?)
设计上的解决方案
使用更粗的导线
插入中继器,但这可能代价很高(功耗、面积)
高效的芯片平面规划
走向“基于通信”的设计
如何处理延迟?
同步性是否绝对必要?
互连发展预测:铜
在完整的亚 0.25 μm 工艺流程和大规模设计中,采用铜(IBM、Motorola,IEDM97)
考虑包层和其他效应后,铜的电阻率约为 2.2 μΩ-cm,而 Al(Cu) 约为 3.5 μΩ-cm ⇒ 电阻降低约 40%
电迁移性能改善,寿命延长 100 倍 (IBM,IEDM97)
如果继续使用铝,那么在 0.18 μm 以下,电迁移会成为限制因素 (HP,IEDM95)
互连:布线层数
金属互连层数持续增加,原因在于:
芯片尺寸和器件数量增加:需要更多、更长的导线把所有部分连接起来
对分层布线网络的需求增加:局部导线要求高密度,全局导线要求低 RC
对角 Diagonal 布线
diagonal:对角线路径,Manhattan:曼哈顿布线。原理是两点之间直线最短
互连长度减少 20% 以上,提高时钟速度,改善信号完整性,改善电源完整性
芯片面积缩小 15% 以上,通孔数量减少 30% 以上
如何减小长互连线中的 RC 延迟?(
最优分段数
中继器
R 和 C 都与长度
RC 延迟与
对长导线来说大得不可接受
将长导线分成
每一段都用一个反相器或缓冲器驱动
中继器设计
我们应该使用多少个中继器?
每个中继器应当做多大?
等效电路
导线长度为
导线电容
反相器宽度为
电容
代价:对于最优延迟,单位长度能量约为
比不加中继器的导线高出 87%,额外功耗消耗在大的中继器上
Tip
减小长互连线中的 RC 延迟?
加中继器,但这会带来功耗的增加
终端匹配
Series Source Termination 在发送驱动器输出端(左侧灰色框内),串联一个电阻,使得发送端的总输出阻抗精确等于传输线的特征阻抗
消除输入端信号二次反射
Parallel Destination Termination 在接收端(右侧灰色框内),并联一个电阻到地,使得接收端的总等效输入阻抗等于传输线的特征阻抗
消除输出端信号反射
分段匹配线驱动器(Segmented Matched Line Driver)
Series Source Termination 在真实芯片内部的具体电路实现
输入信号 (In)
常开基准段 (In 控制,它始终处于工作状态,提供一个基础的驱动能力和阻抗。
控制信号 (
当某个控制信号(比如 In 传递到
当
从而动态调整发送端的总输出电阻使得阻抗匹配
如何实现 Parallel Destination Termination?
在接收端插入一个用作电阻的晶体管
只插入单个NMOS、PMOS的问题:图中接收端的信号电压(
NMOS - PMOS并联结构:将栅极接地的 PMOS(
降低信号摆幅是高速集成电路中用来 提升速度并降低功耗 的一种非常经典的技术
等价,本质上是电荷守恒,
减小电压摆幅可能带来线性的延迟降低
同时也会降低功耗(因为每次翻转改变的电压减小)
延迟代价由接收端承担,需要使用“灵敏放大器”恢复信号电平
通常采用差分方式设计,例如 LVDS,因为小摆幅信号及其脆弱
单端静态驱动器与接收器:降低信号摆幅技术的具体电路级实现
发送端驱动器 (Driver) ——产生小信号摆幅
两个级联的反相器。第一个反相器使用芯片标准电源电压
接收端 (Receiver) ——恢复信号电平
上一章节中出现的交叉耦合电平转换器
工艺缩放趋势:芯片上的总互连长度逐年增加
强调了互连设计在未来技术中的重要性
工艺缩放趋势:互连性能
图例:
Gate delay (Fan out 4):门延迟(扇出为 4)下降
Metal 1 (Scaled):金属 1 层(随工艺缩放)下降
Global with repeaters:带中继器的全局互连 上升
Global w/o repeaters:不带中继器的全局互连 上升很大
导线延迟和工艺技术(门延迟)之间的比较
不断增加的导线延迟限制了可实现的性能
长距离传输时信号完整性问题
互连背板:“总线” / “片上网络”
图中模块:
Embedded Processors:嵌入式处理器
Memory Sub-system:存储子系统
Interconnect Backplane:互连背板
Accelerators:加速器
Configurable Accelerators:可配置加速器
Peripherals:外设
总线
总线是最简单、使用最广泛的 SoC 互连网络
一组信号线,一个或多个需要相互通信数据的 IP 组件连接到这些信号线上
在任意时刻,共享总线上只能有一个 IP 组件传输数据
Master / Initiator:主设备 / 发起者
发起读或写数据传输的 IP 组件
Slave / Target:从设备 / 目标设备
不主动发起传输,只响应传入的传输请求的 IP 组件
Arbiter:仲裁器
控制对共享总线的访问
使用仲裁方案选择哪个主设备获得总线访问权
Decoder:译码器
判断一次传输的目标是哪个组件
Bridge:桥
连接两条总线
在一侧作为从设备,在另一侧作为主设备
共享总线:所有主设备和从设备连接到同一条共享总线上,任意时刻通常只能有一个传输占用总线。
分层共享总线:通过桥接器把系统分成多条总线,将通信最频繁的模块分在同一个字总线中,不同子总线可以并行传输,减少单一共享总线的拥塞。
提高系统吞吐量
不同总线上可以同时进行多个传输
环形总线:各模块连接到环形互连结构上,数据沿环路传输(顺时针 or 逆时针,选择最优路径)
互连趋势:定制互连 共享总线 分层总线 总线矩阵 片上网络?
图中展示多种互连发展方向:
传统共享总线
点对点连接
片上网络结构
环形互连
光互连
三维片上网络
高频/无线片上通信等
总线 → 片上网络
Tile64(来自 Tilera)
64 个相同的处理器核心(VLIW)
Tilera 的 iMesh™ 片上网络
每个 tile 包含一个处理器、L1 和 L2 缓存,以及一个非阻塞交换机
Tilera 的 DDC™ 技术,即动态分布式缓存,用于提升一致性缓存性能
应用
智能网络产品
10–20Gbps 智能网络服务
IDS/IPS、UTM、L4–7 深度包检测、网络监控等
数字多媒体产品
视频转码/翻译
专业视频编码
点播视频
广告插入
视频后期处理
无线基础设施
当前 GSM/CDMA 和下一代 WiMAX、LTE 无线网络
基站收发台 BTS
基站控制器 BSC
无线骨干网关
大规模可扩展性能
最高 4430 亿次操作/秒(BOPS)
37 Tbps 片上网格互连支持近似线性的应用扩展
4 个 64 位 DDR2 控制器提供 200 Gbps 存储器带宽
以通信为中心的设计流程
通信是影响系统性能的最关键因素
通信架构最多可消耗片上总功耗的 50%
不断增加的导线、中继器、总线组件(仲裁器、桥、译码器等)会增加系统成本
通信架构的设计、定制、探索、验证和实现占据设计周期中最大的一部分
在当今复杂系统中,通信架构会显著影响性能、功耗、成本和上市时间。
互连寄生效应
引入噪声,并增加传播延迟和功耗
电容串扰影响可靠性
级联缓冲器的各级尺寸必须仔细设计
IR 压降、中继器插入
先进互连技术
基于通信的设计
总线和片上网络 NoC