广告

原创 【转】你的时钟,我的布线

2015-11-8 21:52 545 0 分类: 工程师职场

在数字电路设计中,时钟信号是一种在高态与低态之间振荡的信号,决定着电路的性能。在应用中,逻辑可能在上升沿、下降沿触发,或同时在上升沿和下降沿触发。由于溢出给定时钟域的案例极多,故有必要插入缓冲器树来充足地驱动逻辑。时钟树通常带有工程师必须满足的延迟、歪曲率、最小功率及信号完整性要求。

  当电路从前工序设计人员转移到后工序工程师时,可以认为时钟概述与图表是必须沟通的最关键信息。多年以来,由于沟通失误,数以小时、天甚至是星期计的设计工作沦为白费,需要包括时钟树在内的全套重新合成。

  在之前,采用极佳的时钟来用于合成及时序约束。约束的时钟定义可能出现在模块的顶层焊盘或引脚;可能出现在宏的输出,如锁延迟环(DLL)或锁相环(PLL);或者作为产生的时钟出现在除法寄存器上。这些时钟定义可能是也可能不是布线工程师需要定义时钟树根以在不同工作模式之间获得最优延迟及平衡歪曲率的领域。前工序及布线工程师之间围绕这些信息的高级别信息沟通以及理解布线工程师怎样运用这些信息,将大幅优化物理设计流程的CTS过程。

  有效CTS的设计技巧

  下面的某些技巧在业界已经使用多年,但基于过去几年的经验,仍然值得重复运用。

  为时钟树根使用中到大强度的驱动器。这就使时钟树能有恰当的起点。但不要使用库中最大的驱动强度,如果信号完整性(SI)分析或片上变化(VOC)分析未出现问题,能够在随后的设计中用到。.

  如果时钟除法寄存器及其同步寄存器要在单独测试模式中工作,确保它们被复用逻辑有针对性地驱动。这就能够在测试模式下在输入端增加延迟,而不会影响此功能模式下所产生的时钟驱动的其他所有寄存器。

  (divide-by)寄存器不会与任何下行寄存器平衡。绿色域的寄存器数量越少,越会使时钟速度比紫色域中的时钟速度快得多。

  

109b12c6bd480cbef91d2286fc1ebd76.jpg

 

  图1 寄存器时钟除法寄存器

  图2显示了可能使每簇下行寄存器及除法寄存器能够通过复用的一种输入拥有极小时钟及通过复用的另一路输入拥有平衡时钟的复用机制。

  

59f57504ee6f9041fab56506dcac5c75.jpg

 

  图2 下行寄存器及除法寄存器复用机制

  若有需要,则插入专用复位驱动器。某些情况下将使用几个寄存器来同步复位。那些寄存器可能并不需要由相同的寄存器来平衡。在图3中,由于未采用集中策略,软件将尝试平衡门控逻辑后的蓝色寄存器,而每个粉红色寄存器包含在复位同步逻辑中。

  

066b0cfdbb39cb33a6671d56e861b136.jpg

 

  图3 平衡门控逻辑后的寄存器

  如果它们在各自专用驱动器中与其他寄存器分开了的话,在布线过程中这种情况就很容易处理。图4显示了可以怎样在设计交递(hand-off)沟通过程中插入及轻易识别占位符(place-holder)或排除缓冲器,使布线工程师知道哪里可能会出现平衡问题。

  

ec1796aa87933bbc9a0923ea230f454b.jpg

 

  图4 插入及轻易识别占位符或排除缓冲器

  提供超出预期的时钟图表及大量时钟简介。当前工序设计准备好提供网表进行布线时,他们已经非常熟悉设计及时钟要求。某些情况下,初始CTS设计会提示预布线时序约束中使用的理想值在实际物理设计中不能实现的情况。如果提供了精确的时钟图以及带有时钟原理相关信息的网表交递,就能够更快地弄清导致此状况的问题。

  总体图或是代表设计中所有时钟(含门控逻辑)的图非常有用。这要么是采用画图软件,要么是使用电路图捕获工具等使用软件产生的图,甚至还可以是手绘并存储为PDF文档或发送传真给布线工程师的图。此图抵得上尝试直接获得时钟格式的多次通话或电子邮件沟通过程中的千言万语。

  由于图表可能会很复杂繁琐,就需要提供相应的简介文档,包括产生的时钟、任何时钟门控或复用图案的详情以及歪曲率平衡和延迟要求等方面的阐释。每种工作模式都需要这些详细信息,因为在插入时钟树期间必须应对每种模式。寄存器可能最后会提供用于功能模式的平衡,但如果我们不仔细的话,测试模式下可能极不平衡。

  如果时钟使用DLL或其他宏或它通过门控逻辑,这些详细信息就在所必需了。如果有需要的话,有可能通过那些类型的宏来合成及平衡。对于门控逻辑而言,如果存在一个引脚通过一种模式来连接、但同单元的其他引脚采用另一种模式来连接的情况,走线工具将把这种情况识别为“重汇聚时钟”。虽然布线工具可以解决这些问题,但更好的解决办法可能是迫使工具在时间插入期间查看这个引脚而非其他引脚。

  业界软件工具中的CTS

  业界软件遵循设计人员的规格及指引,以强大的工具推动时钟树合成。源自前工序的跟时钟树根插入点、延迟、歪曲率及过渡目标相关的信息以及用于门控逻辑、通过寄存器和跨域关系的详细信息能够直接移植到CTS工具中。然后布线工程师将自已判断要使用的缓冲器类型、优化迭代及间距、屏幕和金属层等布线要求。

  在插入时钟树之前,能够使用走线来确保存在旨在用于平衡的端点。还能够提示及评估门控逻辑、时钟树根排除的分支、IO端点以及重汇聚实例。

  时钟树可能仅包含缓冲单元或是系列反相器。如今的大多数技术拥有特别的时钟缓冲及时钟反相单元,这些单元提供平衡的上升及下降时间,以帮助确保占空比不被损及。还可以整合其他要求,如时钟树中等级或各个时钟单元的最大扇出。

  结论

  除了上文探讨的所有因素,布线工程师很可能还会尝试有时钟门控意识的布局、时钟布线指引及平面布局调整。CTS替代通常在极少调整歪曲率、延迟及过渡目标的情况下运行。试错法帮助提供极佳的协调。如果前工序理解CTS如何工作且在最开始就沟通时钟结构,那么布线工程师将能够更加得心应手地接手任务。日程中原本计划用于CTS的时间就可以用于微调及改善“你的时钟”,而非简单地尝试将其插入到“我的布线”。

广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
0
0
广告