电子工程专辑
UBM China

超大规模集成电路设计中的复位电路设计

上网日期: 2005年03月20日 ?? 作者: 刘迪军 ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:SoC? 集成电路? 复位? 同步?

图1:电路模块示例图。

在同步设计中,通常采用时间延时平衡的方法来保证复位信号到达各个触发器的时间相同。这样需要加很多的延时缓冲器,对芯片的面积、功耗和成本等关键指标带来严重的影响,同时增加了大规模集成电路设计的复杂性。本文提出了一种适用于大规模集成电路设计的复位方法,该方法采用简单电路设计,可以不用加入延时平衡缓冲器,大大降低了芯片设计的复杂度,同时降低芯片的面积、功耗和成本等。

随着集成电路设计技术的发展,单芯片电路的设计规模越来越大,设计复杂度也相应地越来越高。目前,在集成电路设计中,特别是以SoC(片上系统)芯片为代表的大规模集成电路设计中,通常都采用同步时序设计方法,即芯片内部的所有触发器都工作于相同的时钟信号,而且触发器状态的翻转也都发生在同一时刻。

图2:延时的复位信号时序图。

同步时序设计方法要求芯片内部时钟信号到达芯片内部各个触发器的时间一致。实际上,由于时钟信号到达各个触发器所经历路径的不同,将会导致各个触发器上时钟信号的延时都不太一致。为了保证时钟沿到达各个触发器的时间相同,设计人员通常需要对时钟经历的各个路径时进行补偿,即进行时钟树的平衡。

同样的,在芯片复位电路的设计中,复位信号的延时也将会对电路的数字逻辑产生影响。如图1所示的电路,由于三个不同的电路模块的复位信号输入端(Rst)与整个芯片的复位信号源(Reset)的电路连接路径不同,就有可能造成如图2所示的复位信号延时。当复位信号不同步时,由于各模块的输出还有后续的逻辑运算有可能造成在模块1的复位信号消失并开始运转的时刻,模块2和模块3的复位操作仍然没有完成,其输出还处于不确定状态,从而导致系统逻辑状态混乱的不良结果。

为妥善解决复位信号的不同步问题,人们在芯片复位电路的设计中通常采用类似于时钟树平衡的方法,即根据各个复位信号经历的不同路径所产生的不同延时效果,来做出相应的延时补偿。如图3所示,通过在Rst1和Rst2经过的路径上增加延时缓冲器,就可以实现如图4所示的三个复位信号同步到达的效果。

图3:延时补偿后的复位电路。

复位树的设计方法虽然能够较好的解决复位信号同步的问题,但同时也会因为增加较多的延时缓冲器而增加电路的设计复杂度、功耗及芯片面积等问题,尤其是在SoC这样的超大规模集成电路芯片的设计中,这些问题就会显得更加突出。

时钟延时复位设计思想

在现在芯片设计中,异步复位触发器已经得到了极为广泛的应用。这类触发器的特点是当复位信号发送到触发器时,触发器的0、1状态马上就会确定,而与时钟信号的跳变没有关系。

根据异步复位触发器的这一特点,我们就可以通过控制时钟信号的产生时间来实现等效的同步复位操作效果,而不必再进行复杂的复位树设计。

图4:延时后的复位信号时序图。

从上面可以看出,一般集成电路的复位过程是一个暂态过程,其实电路中的触发器是否同时复位并不重要,重要的是当各个触发器离开复位状态时需要同步。这是因为当触发器的复位信号一旦撤消,触发器的状态就会在时钟的作用下发生变化。由于时钟到达各个触发器的时间是同时的(在设计时钟树时保证),这就要求各个触发器也同时离开复位状态。否则会出现有些触发器离开复位状态开始工作,而另外一些触发器仍然处于复位状态,从而导致系统状态紊乱。换言之,即使触发器的时钟已经撤消了,只要不给触发器输入时钟,它就会一直保持复位的状态,直到有时钟才开始工作。利用这个特点,我们可以让早撤消复位信号的触发器不工作,一直等到最晚的一个触发器撤消复位信号。这样所有的触发器都已经完成复位,处于一个稳定的可工作状态。这时再送时钟信号给触发器,就能保证所有的触发器都能同步工作,这就是时钟延时的基本设计思想。

如图1所示的电路,如果通过对三个复位信号的延时进行计算,得到所有复位信号彼此之间的最大延时时间(Td),我们就可以通过控制时钟信号在最快的复位信号消失不小于Td的时间Tc后再产生。具体信号时序如图5所示。

通过这样的信号时序控制,就可以保证芯片的各个电路模块在时钟信号出现之前已经处在确定的初始状态。当同步的时钟信号出现时,各个模块之间就可以开始正常的逻辑运算。

图5:异步复位信号时序图。

安全的复位方法

采用上面时钟延时的设计方法能够解决复位信号不同时到达各个触发器的问题,即解决了复位同步的问题。但如果采用简单的时钟延时方法可能会导致其他的问题,这是因为在大规模集成电路的设计中,为了简化设计和降低面积,并不是每个触发器都会与复位信号直接相连,他们的状态一般是通过临近已复位触发器的时序状态来间接影响的。如果在复位期间时钟一直在工作,这些没有复位信号的触发器也能根据其他相邻的触发器状态复位,因为没有复位的触发器会在时钟的作用下采集到其他触发器的复位状态。但在上面的延时复位方案中,复位期间没有时钟,其他触发器的复位状态就不可能传递到那些没有复位端的触发器,从而导致系统不能正确复位。

在如图6所示的电路中,只有最左端D1和最右端Dn两个触发器与复位信号Rst直接相连。即当Rst信号低电平有效时,只有D1和Dn被置位,而2到N-1触发器的0、1状态仍然无法确定。因此,如果仍然采用图5所示的信号时序图,就无法完成对图6电路的正常复位操作。

图6:触发器连接图。

为解决上述问题,可以在上面时钟延时复位的基础上进行改进。即当所有触发器进入复位状态后,将时钟打开一定时间。这时由于有复位端的信号都处于复位状态(即使有时钟也不会工作),只有无复位信号的触发器工作。而且无复位信号的触发器会采集有复位信号的触发器复位状态,在保证所有的无复位触发器都采到有效的复位状态后,时钟控制模块又会将时钟关闭,然后才是复位信号的撤消过程。这样中间有一段时钟信号用来复位无复位端的信号,这段时钟持续时间的长短可以根据设计中最长无复位信号触发器链来决定,至少要大于链的长度。例如在图6中,在各模块Rst复位信号都有效的时间段(Tr)内,在CLK时钟信号上产生至少N-2个脉冲。这样,图6中没有与Rst信号直接相连的N-2个触发器就可以在N-2个CLK信号作用下,通过触发器D1的输出来翻转为确定状态,完成复位操作。其电路框图和时序波形如图7所示。

本文小结

图7:安全的复位信号时序图。

通过采用时钟延时的设计思想,在超大规模SoC集成电路设计中将异步复位与时钟门控技术结合起来。只要采用很小的电路开销,就能大大降低超大规模集成电路后端设计的复杂度。同时能够有效地降低集成电路硅片的成本和功耗。该设计方法成功应用于COMIP SoC集成电路的设计,取得了良好的效果。目前该设计方法已申请专利。

作者:刘迪军


通信集成电路产品总监


大唐微电子技术有限公司


Email: liudj@dmt.com.cn







我来评论 - 超大规模集成电路设计中的复位电路设计
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

?
?
有问题请反馈
推荐到论坛,赢取4积分X