新闻  |   论坛  |   博客  |   在线研讨会
关注复杂设计中的信号完整性
zhchxgh | 2009-07-14 22:45:10    阅读:669   发布文章

关注复杂设计中的信号完整性

摘要:在SoC设计中,信号之间的耦合作用会产生信号完整性问题,忽视信号完整性问题可能导致信号之间产生串扰,可靠性、可制造性和系统性能也会降低,本文介绍在ASIC芯片设计中解决信号完整性问题的方法。
对于ASIC(专用集成电路)的设计来说,由于标准单元的应用、开发周期更短以及单元之间更宽松的保护区隔等原因,造成了标准单元性能的浪费。因此,高端ASIC芯片设计的关键是确保用较短的开发时间交付高性能的芯片。
随着工艺技术的发展,导致信号串扰的机会增加了。金属布线层数持续增加:从0.35um工艺的4层或者5层增加到0.13um工艺中的超过7层金属布线层。随着布线层数的增加,相邻的沟道电容也会增加。另外,目前复杂设计中的电路门数的剧增使得更多、更长的互连线成为必要。长线上的电阻会增加,而越来越细的金属线同样也会导致电阻的增加,这是因为互连线的横断面减小的缘故。即使采用现有的铜线互连工艺也并不能够解决这方面的问题,仅仅只是延缓了解决电阻问题的时间。
很明显,这些相邻信号线之间的影响支配着设计的决策,而且要求采用与过去不同的、更加精确的模型。一个信号对另一个信号的影响与信号之间的相对相位有关。对相位一致的信号来说,在0.5mm长的信号线上连接着小接收器和发送器的受害网络会被加速30%。而对于1mm长的信号线来说,受害网络则会被加速40%。对相位相反的信号来说,在0.5mm长的信号线上连接着小接收器和发送器的受害网络会减速70%,而当信号线长度为1m
m时,信号的减速则会超过100%。
解决信号串扰问题的一种方法是增加金属信号线之间的间距。加倍信号线的间距,就可以将0.5mm信号线上的信号串扰由70%减小到20%。而长的信号线(1mm信号线)上的干扰也会从100%降低到40%。然而,信号之间的串扰依然存在,而且依靠加倍金属线间距来减小信号之间串扰的方法会增加芯片面积并加大布线的难度。
采取屏蔽措施
解决上述问题的另外一种办法就是采取屏蔽措施。在信号线的两边加上电源或者地线,信号串扰就会极大地减小。在系统中加入屏蔽措施的同时还要求所有的元器件具有良好的旁路,同时应该确保电源和地应该尽可能“干净”。事实上,从面积的角度来看这种解决方案比加倍金属线间距的办法还要糟糕,这是因为在这种情况下信号线的间距是最小线间距的4倍,所以,这种将地线间隔排列的方法会使布线的复杂度提高一个数量级。

然而对于有的信号线来说屏蔽的方法可能更合适,例如时钟线具有非常高的速度并且最大的驱动器和缓冲器都连接在这样的信号线上。锁相环技术可以补偿驱动器和缓冲器上额外的信号延时。合适的布局布线确保时钟信号周围形成一个隔离的环境,从而将时钟信号对数据信号的干扰减到最小。
在这种方法中,设计工程师采用提取和分析工具来检测那些容易出现信号完整性问题的区域,然后选择其中的一些区域并解决这方面的问题。如果存在问题的信号线相互隔离,重新布线就能解决问题。比较简单的做法是改变驱动器大小并且在受害网络上增加缓冲器。
逻辑综合过程总是根据线上负载的近似估算值来选择合适的驱动器。一般来说,逻辑综合总是选择更强的驱动器来实现预期负载的过度补偿。然而在物理设计完成之前负载实际上是不可知的,并且与预期的负载情况相比,实际负载可能会在-70%到+200%的范围内变化。最坏的一种情况可能是短线上过大的驱动器紧接一条负载很轻的长线。驱动器问题的一种解决方法是用缓冲器来分割长线。这样可以减小线的长度和耦合电容,同样还可以将缓冲器输入端的负载降低到单个负载的水平。这种技术确保在缓冲器布局布线过程中做较小的改动就可以确保底层规划和优化的实施。在设计流程中加入静态时序分析步骤可以处理噪声和延迟问题。这样做的目的是将解决串扰和时序的步骤集成到一个流程里。首先这些工具提取布局布线后的寄生参数。其次,根据提取的负载模型在不考虑任何串扰影响的情况下计算出信号延时。这些提取的延时接下来会标注到设计里并且使用静态时序分析工具来判定不正确的时序。在得到时序窗口的第一次近似结果之后,设计工程师加入因为串扰而导致的延时并且检查时序是否会超出分配的时序窗口。完整的设计流程要求实施三次静态时序分析。
可靠性和可制造性
今天业界的趋势是芯片门数持续增加,并且芯片的性能也随着特征尺寸的缩小而提升。摩尔定理表明每18个月时钟速度以及电路门数都翻番。为了维持设计中的安全工作极限,工艺技术的不断精细要求电源电压必须相应降低。与此同时,每个电路门上的功耗也在降低。电源电压的降低以及每个门上功耗的降低而导致的功耗改变总是跟不上门数的增加以及时钟频率的提升。
例如在新一代的工艺技术中,高性能的处理器在1.8V的电源电压的情况下规划功耗为300W。ASIC芯片的平均规模将达到3千4百万门,时钟频率也会超过450MHz。下一代ASIC芯片的电源电流将远远高于现有芯片。与0.35um工艺中相同的ASIC设计相比,0.18umASIC芯片的功耗会超出6倍,而电流强度则更会超出10倍。
功耗和电流的增加会导致电子的迁移。高功耗单向网络上由于电流的流动会存在金属的迁移,尤其是当电流流过信号线拐弯处或流入狭小的空间时尤其如此。双向电流流过的信号线上高阻处的自热现象同样也会引起迁移问题。
芯片特征尺寸的缩小同时也要求栅氧化区尺寸相应缩小。开关电路中的高电位的区域可以捕获栅氧化区中的电子。氧化区的破坏以及由此导致的相应门栅阈值的改变是一个累计的过程,该过程同开关频率有关并取决于信号的转换速率。
如果开关频率维持在一个安全的限定之下,可以预测出器件的正常工作寿命。然而,面临的挑战是开发一种全新的方法在安全极限之上控制频率或者转换速率所对应的热电子效应。用户必须完全刻画出这些效应的特征。首先,他们必须仿真内部标准单元电路的瞬态条件。然后他们必须对受电流密度限制下的仿真结果和实际硅片结构的测试结果进行比较,最后,他们需要创建能够精确反映实际器件和工艺技术的器件模型。
电路分析遵循一些不同的方法,而所有这些方法都要求计算实际的开关频率。解决问题的一种方法是以特征模型为基础来仿真所有电路准确的响应。另一种方法是开发概率模型来严格逼近硅结构中的实际行为。
要解决金属迁移和热电子注入相关的问题,第一种方法是在长线上插入缓冲器,这些长线通常具有更高的电流和更快的信号开关速度。需要强调的是,如果缓冲器速度大小刚好低于驱动器,这种方法就能降低信号线上的负载电容,并且降低信号的转换速率。另外一种可能的解决方法就是改变驱动器和接收器单元。
天线效应和噪声
金属层上的等离子蚀刻工艺会迫使电荷聚集在IC的栅上。越来越小的栅区面积和不断增加的互连信号线长度的比率将导致容性分压,从而进一步损伤器件,这是一个累积的过程。最小化这种天线效应的基本方法是限制金属区域面积和周长的比例,并限制栅区面积和周长的比值。采用这样的规则可以减少电荷的聚集和转移过程。
另外一种可选的策略就是使用一种依靠天线补偿布线规则的布线工具。这样就可以防止或者最小化天线电流,然而这种方法的代价是导致芯片面积更大。另外还有一种可能的方法就是将长的天线连接到扩散区上,并且由扩散电阻来实现电荷到其它区域的转移(如衬底)。最后,插入缓冲器还可以减小线的长度并且插入扩散电阻(P型或者N型输出晶体管沟道)来作为到电源或者地的电阻通路。
功耗和电源电流的增加也会带来其它的问题。大电流会导致电源线上产生电压降,因而当电流流经非零电阻的电源网络时,会产生IR压降,因而使到达栅上的电压减小。减小电源网络上电阻的方法受到芯片面积和布线阻塞的制约。在物理验证阶段进行提取和分析需要一种复杂的、覆盖全芯片的仿真和分析过程,这包括瞬态过程、电感以及电容效应的仿真和分析。
然而,在布局布线完成之后,很少或者几乎没有可能解决上述问题,因而情况就会更糟。解决功耗问题最好的方法是在设计的早期阶段甚至在RTL设计阶段就对设计规划和实现策略进行认真研究。RTL高度精确的功耗分析必须同逻辑和物理实现联系起来,才能确保最终设计的质量。
下一代设计工具
要解决上述问题,整个设计过程还需要进一步升级以成为一整套能够考虑多种不同效应和设计评估的工具集。工具要具备传递智能化数据的能力,例如,新出现的支持数学模型的先进的库格式(ALF)标准可以传递多种属性而不需要修改原有的计算和数据格式。对新的高度复杂和要求严格的设计来说,都需要在设计流程的早期阶段规划解决问题的方案,因为此时的修正才最有效。设计、验证、布局布线和最后的物理验证之间的链接都需要一致的交换数据,而不需要修改数据或进行额外的计算。
采用ALF,用户可以产生测试向量来检查功耗和电子的迁移,与此同时还可以测试芯片的功能。测试向量可以使用提取出来的芯片数据的概率参照来保证必要的精度。采用这样的方法可以仔细地考察整个设计流程,在设计早期寄存器级设计过程中,工程师通过仔细的规划、底层规划以及功耗分析可以实现信号串扰的最小化。为设计的某些部分开发的异步时钟驱动器将降低整个芯片的并发开关功率浪涌,与此同时可以降低噪声和电源网络上的IR压降。
遗憾的是,现有的商业软件工具对下一代产品设计的应用价值非常有限。
尽管大多数的ASIC厂商都有其内部的工具开发小组,而这些开发部门的主要工作是将一些单独的工具集成为一个完整的流程,并且为这些工具设计一些自动化的运行环境使得这些工具能够根据自动脚本来运行。由于现有的商业软件工具不能解决设计面临的问题,在不久的将来我们会看到这种由ASIC厂商内部开发的设计工具的数量会持续增加。
然而,ASIC厂商开发的工具所存在的问题在于,这些工具同商用软件工具相比需要更多的支持和培训,因为ASIC厂商内部的工具开发人员并不负责使工具具备易用和易维护的特性。他们仅仅是努力为内部的用户--也就是设计工程师小组--面临的一些关键问题提供快速的解决方法。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客