首页 » 业界动态 » 超大规模集成电路设计中的复位电路设计

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

作者:  时间:2009-03-31 13:20  来源:52RD手机研发

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

图1:电路模块示例图

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

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

 

 

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

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

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

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

 

 

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

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

 

时钟延时复位设计思想

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

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

 

 

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

如图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

 

相关推荐

u-blox为专业IoT平台提供蜂巢式通讯连接技术

u-blox  iot  无线通信  2018-01-26

u-blox发表具备四频2G向后兼容的全球最小 LTE Cat M1和 NB-IoT多模模块

u-blox  iot  lte  2018-01-23

通用测试仪器大全之电子负载仪

2017-11-16

u-blox推动全球第一款NB-IOT智能路灯系统的实现

2017-09-01

ercogener采用u-blox LTE Cat M1蜂巢式技术 开发EMEA地区的首款工业4.0调制解调器

2017-11-03

u-blox与Atoll Solutions携手为印度的智慧城市提供易于使用的LPWA技术

u-blox  IoT  LTE  智慧城市  2017-08-12
在线研讨会
焦点