一种结构精简的快速时钟拉伸电路的制作方法

文档序号:10615655阅读:455来源:国知局
一种结构精简的快速时钟拉伸电路的制作方法
【专利摘要】本发明公开了一种结构精简的快速时钟拉伸电路,该电路由相位时钟生成模块,时钟同步选择模块以及控制模块组成。相位时钟模块通过延时单元链获得有不同相位的相位时钟,控制模块根据外部拉伸使能信号以及可配的拉伸尺度信号,产生控制信号,并对该控制信号进行同步处理,以最终选择目标拉伸时钟,实现在一个周期内完成对系统时钟的快速准确拉伸。本发明电路结构精简,电路实现简单,不需要复杂的门器件,面积和功耗代价较小,用一定的精度代价换取了面积代价,尤其适合基于在线时序监测的自适应电压频率调整电路使用。
【专利说明】
一种结构精简的快速时钟拉伸电路
技术领域
[0001]本发明涉及一种结构精简的快速时钟拉伸电路,利用数字逻辑实现,属于集成电路设计领域。
技术背景
[0002]近年来,集成电路(IntegratedCircuit,IC)持续发展,芯片中的晶体管数量按照摩尔定律持续增加,使得芯片功耗成为芯片设计中不可忽视的重要问题,因此各种低功耗技术应运而生。
[0003]近些年,宽电压(Wide voltage range)集成电路得到了广泛关注,它通常涵盖近/亚阈值区至常规电压区,可以在较宽电压范围内改变芯片的工作电压,以便在满足芯片不同负载下的高性能或高能效需求。然而,由于PVT(Process, Voltage ,Temperature)偏差的存在以及电路老化的问题,在电路设计中需要预留一定的时序余量使电路在最坏情况下能仍正常工作,造成了性能和功耗浪费,但这些不利时序偏差因素实际很难同时发生甚至根本不发生,因此这就造成所选择的工作电压过于保守,芯片的性能没有达到最佳。
[0004]为了实现芯片的高性能或者高能效设计,通常会减少时序余量以让芯片在更低电压或者更高的频率下运行,同时需要对关键路径进行时序监测。以razor结构为代表的电路是典型的在线时序监测方法,将电压降低到极限直至电路时序出错,并利用原地恢复或者上层恢复机制来恢复芯片的正确工作状态。这类监控方法的监控单元有两个特点,一是,监控时序工作情况,能有效的判断某一个时钟周期内,电路的时序是否出现错误;二是,保留正确的时序结果,在时序出错时需要实现纠错功能,因此监控单元需要保留正确的时序值。其结构主要是由两个时序单元组成:普通触发器和影子锁存器。在设计过程中,使用Razor监控单元替换传统的触发器,即可完成电路的时序监控及纠错。当电路时序正常时,监控单元中的触发器作用与传统触发器无异;当电路时序出错时,影子寄存器保存着正常时序结果,可以完成数据纠错。
[0005]在线时序监测方法即监测电路的PVT,如果其发生变化,关键路径延时增加,则会导致芯片数据出现错误,出现时序违约。由于芯片时序余量较小,为了保证芯片工作正常,需要实现立刻降频操作,以提高时序余量,解决时序违约情况。传统的降频方法有:分频操作和PLL配置。分频的方法可以实现立即降频,但是由于只能实现整数倍分频(通常使用二分频),因此芯片频率降低幅度较大,芯片工作性能降低也比较多;而使用PLL动态配置的方法虽然可以实现比较小的频率调节,但是由于PLL调节需要稳定时间,因此不适用于快速频率调节。已公布的时钟拉伸电路结构复杂,通常由多个DLL(Delay_Locked Loop)实现多相位时钟生成,延时相位控制比较精确,但面积开销比较大,不适用于嵌入式低功耗芯片。

【发明内容】

[0006]发明目的:
[0007]本发明针对采用PLL模块设计的时钟拉伸电路以及利用分频实现时钟降频电路的缺点和不足,提供了一种响应时间更快,拉伸尺度更细的时钟拉伸电路。本发明在控制信号下对时钟进行拉伸,可以完成细粒度的频率快速降低操作,能有效减小频率调节模块面积开销,尤其适合在基于在线时序监测的自适应电压频率调整电路使用,当出现电路时序违规时,即产生控制信号使时钟拉伸,增加电路时序余量,从而避免电路工作出错。
[0008]技术方案:
[0009]本发明所述的一种结构精简的快速时钟拉伸电路,其特征在于包括:
[0010]相位时钟生成模块,利用系统时钟产生N个具有不同相位的相位时钟,N为大于I的整数;
[0011]控制模块,在时钟拉伸使能信号和时钟拉伸尺度信号的作用下生成控制信号;
[0012]时钟同步选择模块,响应所述控制信号,从系统时钟及N个相位时钟中选择目标相位时钟输出,实现在单周期内对系统时钟拉伸。
[0013]优选地,所述控制模块包括一计数器电路,用于产生N+1位时钟选择控制信号ctrl[N:0],决定目标相位时钟的选择,在每个周期内,只有一位时钟选择控制信号有效。
[0014]所述控制模块包括一编码器,当编码器检测到时钟拉伸使能信号由有效变为无效时,产生一门控时钟控制信号,决定是否对目标相位时钟进行门控一个周期后再输出。
[0015]另一优选地,所述时钟同步选择模块包括N个D触发器及若干门电路,最低位控制信号与系统时钟通过与门进行与操作,其余N位控制信号分别作为N个D触发器的数据输入信号,N个相位时钟分别作为N个D触发器的时钟输入信号,与对应的控制信号进行同步处理,N个D触发器的数据输出信号与其时钟输入信号分别通过与门进行与操作后,将所有N+1个与门的输出连接到一个具有N+1个输入端口的或门,该或门的输出即为拉伸时钟。
[0016]有益效果:
[0017]本发明的结构精简的快速时钟拉伸电路,主要采用N个延时单元获取N个相位相互偏移的相位时钟。能够根据外部控制信号,实现快速准确的时钟拉伸。该方法相对于传统其他的时钟拉伸方法,包括使用分频或者PLL配置的方法,不仅能在一个周期内做到快速响应,而且能够做到对系统时钟较为精细程度的拉伸,即时钟频率不会变化太大,保证芯片能在解决电路时序违约的情况下,芯片的性能不会有太大的损失,使电路的时序违约问题得到及时解决。同时,本发明对于电路功能的实现所需单元数目相比少,电路结构精简,电路实现简单,不需要复杂的门器件,面积和功耗代价较小,用一定的精度代价换取了面积代价,尤其适合基于在线时序监测的自适应电压频率调整电路使用。
【附图说明】
:
[0018]图1为本发明的结构框图;
[0019]图2为结构精简的快速时钟拉伸电路图;
[0020]图3为结构精简的快速时钟拉伸原理时序图;
[0021 ]图4为在TT工艺角,1.1V,25°C,拉伸尺度为10的elk的仿真波形图;
[0022]图5为在TT工艺角,I.1V,25°C,拉伸尺度为19的elk的仿真波形图;
[0023]图6为在TT工艺角,1.1V,25°C,拉伸尺度为37的elk的仿真波形图
【具体实施方式】
[0024]下面结合附图对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
[0025]如图1所示,一种结构精简的快速时钟拉伸电路,包括相位时钟生成模块,时钟同步选择模块以及控制模块。该电路的输入信号为系统时钟clk,复位信号rst,时钟拉伸使能信号slow以及时钟拉伸尺度信号step,输出信号为拉伸之后的时钟clk_out。在外部时钟拉伸信号slow的作用下,根据可配置的时钟拉伸尺度变量step,生成相应的控制信号,从系统时钟和相位时钟生成模块产生的时钟中选择目标相位时钟,实现在单周期内对系统时钟的拉伸。
[0026]相位时钟生成模块的输入信号为系统时钟elk,输出信号为N个具有不同相位的相位时钟cll^dlyhHcll^dlyi…clk_dlyN,连接到时钟同步选择模块的输入端。(? = 2,3...Ν-
Do
?0027] 控制模块的输入信号为系统时钟elk,复位信号rst,时钟拉伸尺度信号step,输出信号连接到时钟同步选择模块的输入端,分别为N+1位的控制信号ctrl[N:0]以及门控时钟信号 gate_clk。
[0028]时钟同步选择模块的输入信号为系统时钟elk,复位信号rst,门控时钟信号gate_elk,相位时钟clk_dlyi(i = l,2...Ν)以及来自控制模块的控制信号ctrl[N:0],输出为经过拉伸的时钟clk_out,实现在单周期内,对系统时钟的拉伸。
[0029]如图2所示,相位时钟生成模块由N级延时单元串联而成,组成延时链。该模块以系统时钟elk作为延时链的初始输入信号,每一级延时单元对系统时钟将产生一定的相位偏移,由此可获取N+1个具有不同相位的相位时钟,相邻相位时钟之间的延迟时间即为在当前PVT环境下的I个延时单元的延迟时间。N的确定原则为:在芯片当前工作环境下,通过相位时钟生成模块中的延时链的末端能获得一个与系统时钟相位差为2π的相位时钟。
[0030]控制模块根据外部输入的拉伸使能信号slow以及拉伸尺度信号step产生控制信号,以决定时钟的选择。在拉伸使能信号slow的作用下,选择是否对时钟进行拉伸。slow = 0时,模块输出为系统时钟,slow= I时,模块对系统时钟进行拉伸,输出拉伸之后的时钟clk_out。控制模块输出信号为位宽为N+1的ctrl信号,在每个周期内,只有一位为高电平,其余为低电平,其中电平为高的控制信号代表选择对应的相位时钟。
[0031]控制模块由计数器电路以及编码器组成,编码器电路通过检测拉伸使能信号的下降沿,即拉伸使能信号由有效变为无效时,产生门控时钟信号gate_clk,决定是否对输出时钟进行门控。计数器电路以拉伸尺度信号step为步长在每周期内累加一次产生唯一的高电平控制信号ctrl[S],即代表选择相位时钟clk_dlyS,S = step*i(i = l ,2,3...)。若当S大于N数值时,即表示所选的相位时钟clk_dlyS与当前主时钟elk的相位大于2π,则需从clk_dlyl开始重新选择相位时钟。另外,此时需将控制信号ctrl[N:0]置为低电平,保持一个周期,在下一个周期置控制信号ctrl [M]为高电平,即选择clk_dlyM,M= S-N。否则由于M小于S,即clk_dlyM的有效沿在clk_dlyS之前,将导致在clk_dlyM与clk_dlyS的有效沿之间,时钟同步模块中的ctrl_synM信号与clk_dlyS信号在一段时间内会同时为高电平,表示同时选择了两个相位时钟,造成功能错误。
[0032]由于上述控制模块中的控制信号与对应的相位时钟信号为异步信号,在后续的时钟选择组合逻辑电路中可能产生毛刺,故需要进行数据同步处理。即利用N个下降沿有效的D触发器,将上述控制模块中的控制信号(^1[11]与对应的相位时钟信号(^_(117义111dly2,clk_dlyl进行同步处理,即第S位控制信号ctrl[S]作为第S个触发器的数据端输入信号,第S个相位时钟clk_dlyS作为该触发器的时钟信号,输出同步控制信号ctrl_syn[S],以避免在时钟选择时产生毛刺(S=1,2-_N)。控制信号ctrl[0]不经过同步处理,直接与系统时钟elk进行与操作。同步之后的信号ctrl_Syn[S]再与之前D触发器的时钟信号clk_dlyS进行与操作(S = I,2...Ν),将所有N+1个与门的输出连接到一个具有Ν+1个输入端口的或门,该或门的输出即为拉伸时钟。
[0033]由于本发明采用的相位时钟生成模块是由延时链组成,故在拉伸使能信号由有效变为无效时(本发明中为由I到O的变化),控制模块需要选择是否对输出时钟进行门控一个周期,即让当前时钟输出高电平一个周期,以避免产生不必要的毛刺或者短脉冲。在拉伸使能信号slow无效时,若当前时钟同步选择模块所选择的相位时钟与系统时钟的相位差小于等于L则将门控时钟信号gate_clk置为高电平,即表示对当前输出时钟进行门控一个周期;若当前时钟同步选择模块所选择的相位时钟与系统时钟的相位差大于η,则将门控时钟信号gate_clk置为低电平,即表示当前输出时钟选择系统时钟,停止拉伸。
[0034]图3所示,为一种结构精简的快速时钟拉伸原理时序图。时钟拉伸的操作就是根据拉伸尺度的不同,选择所需的目标相位时钟。
[0035]本发明中,拉伸后时钟的周期由下式决定:
[0036]Tstretch — Tciriginal+ A t*Step
[0037]其中Tstretch为拉伸后的时钟周期,TQriginai为时钟拉伸前时的周期值,即为系统时钟周期,At为一个延时单元在当前电路环境下的延时,step为可配输入变量,控制拉伸时钟输出周期。通过配置不同的step数值,可以实现对系统时钟进行不同程度的拉伸,例如当step为10时,则拉伸之后的时钟周期为:
[0038]Tstretch = Toriginal+ A t*10
[0039]本发明以拉伸尺度step为2为例进行说明,在控制信号slow为低电平时,时钟输出clk_out输出的为系统时钟elk(如图2中①所示)。当拉伸使能信号slow有效时——即为高电平,开始对时钟进行拉伸。由于本发明电路中采用的触发器均为下降沿有效,故在elk的下降沿到达时,将选择clk_dly2。由于各相位时钟和控制信号为异步信号,在时钟选择中可能产生不必要的毛刺,影响电路功能。故为了避免产生毛刺,我们将控制信号ctrl[2]与对应的相位时钟clk_dly2进行同步处理,则在clk_dly2的下降沿到达后,才会选择clk_dly2(如图2中②所示)。同理,在elk的第二个下降沿到达后,经过信号同步之后才会选择相应的相位时钟clk_dly4(如图2中③所示),以此类推。在拉伸使能信号slow转为低电平时,时钟输出应停止对时钟进行拉伸,选择系统时钟。由于此时clk_out与elk的相位差未知,若在拉伸使能信号slow无效后直接选择系统时钟clk,可能产生毛刺或者时钟压缩。如本例所示,在时钟拉伸结束后选择系统时钟,由于clk_dly4与elk相位差小于31,故出现了短脉冲(如图2中④、⑤,即红色虚线所示),将影响电路正常工作。因此在这个时刻需对clk_out门控一个时钟,即令gate_clk为高电平(如图2中⑥所示),输出一个周期的高电平,在gate_clk为低电平时,输出系统时钟(如图2中所⑦示)。
[0040]图4所示,为在TT工艺角,1.1V,25°C环境下,拉伸尺度为10的仿真波形图。当拉伸信号slow有效时,在触发器下降沿被采样。从图中可以看出输出时钟得到了拉伸,拉伸的周期为10个延时单元的延时之和,约为1/4个周期左右,响应速度为一个周期内。由于在拉伸使能信号Slow无效时,输出时钟选择的相位时钟与系统时钟Clk相位差约为31,故为了避免在电路最后产生时钟压缩,对时钟输出采取门控一个时钟,输出一个周期的高电平。
[0041]图5所示,为在TT工艺角,1.1V,25°C环境下,拉伸尺度为19的仿真波形图。当拉伸信号slow有效时,在触发器下降沿被采样。从图中可以看出输出时钟得到了拉伸,拉伸的周期为19个延时单元的延时之和,约为1/2个周期左右,响应速度为一个周期内。由于在拉伸使能信号Slow无效时,输出时钟选择的相位时钟与系统时钟Clk相位差约为31,故为了避免在电路最后产生时钟压缩,对时钟输出采取门控一个时钟,输出一个周期的高电平。
[0042]图6所示,为在TT工艺角,1.1V,25°C环境下,拉伸尺度为37的仿真波形图。当拉伸信号slow有效时,在触发器下降沿被采样。从图中可以看出输出时钟得到了拉伸,拉伸的周期为37个延时单元的延时之和,约为I个周期左右,响应速度为一个周期内。由于在拉伸使能信号s low无效时,输出时钟选择的相位时钟与系统时钟elk相位差大于31,并不会产生时钟压缩的情况,因此该情况不需要对电路进行门控。
【主权项】
1.一种结构精简的快速时钟拉伸电路,其特征在于包括: 相位时钟生成模块,利用系统时钟产生N个具有不同相位的相位时钟,N为大于I的整数; 控制模块,在时钟拉伸使能信号和时钟拉伸尺度信号的作用下生成控制信号; 时钟同步选择模块,响应所述控制信号,从系统时钟及N个相位时钟中选择目标相位时钟输出,实现在单周期内对系统时钟拉伸。2.根据权利要求1所述的结构精简的快速时钟拉伸电路,其特征在于所述相位时钟生成模块由N级延时单元串联而成。3.根据权利要求1所述的结构精简的快速时钟拉伸电路,其特征在于所述控制模块包括一计数器电路,用于产生N+1位时钟选择控制信号ctrl [N: O],决定目标相位时钟的选择,在每个周期内,只有一位时钟选择控制信号有效。4.根据权利要求3所述的结构精简的快速时钟拉伸电路,,其特征在于:时钟拉伸使能信号有效时,所述计数器电路以时钟拉伸尺度信号step为步长在每周期内累加一次产生唯一有效的时钟选择控制信号ctrl [S],用于选择相应的相位时钟,S = step*i,i = l,2,3...,当S大于N时,从相位时钟生成模块生成的最低相位时钟开始重新选择相位时钟。5.根据权利要求1所述的基于PVTM的宽电压时钟拉伸电路,其特征在于:所述控制模块包括一编码器,当编码器检测到时钟拉伸使能信号由有效变为无效时,产生一门控时钟控制信号,决定是否对目标相位时钟进行门控一个周期后再输出。6.根据权利要求1所述的结构精简的快速时钟拉伸电路,其特征在于:所述时钟同步选择模块包括N个D触发器及若干门电路,最低位控制信号与系统时钟通过与门进行与操作,其余N位控制信号分别作为N个D触发器的数据输入信号,N个相位时钟分别作为N个D触发器的时钟输入信号,与对应的控制信号进行同步处理,N个D触发器的数据输出信号与其时钟输入信号分别通过与门进行与操作后,将所有N+1个与门的输出连接到一个具有N+1个输入端口的或门,该或门的输出即为拉伸时钟。7.根据权利要求5所述的结构精简的快速时钟拉伸电路,其特征在于:当时钟拉伸使能信号无效时,若当前时钟同步选择模块所选择的相位时钟与系统时钟的相位差小于等于^则将门控时钟控制信号置为有效,对当前输出时钟进行门控一个周期,之后停止时钟拉伸,输出系统时钟;若当前时钟同步选择模块所选择的相位时钟与系统时钟的相位差大于I则将门控时钟控制信号置为无效,停止时钟拉伸,输出系统时钟。8.根据权利要求1所述的结构精简的快速时钟拉伸电路,其特征在于:N为相位时钟生成模块延时链中延时单元数目,其确定原则为:在芯片当前工作环境下,通过相位时钟生成模块中的延时链的末端能获得一个与系统时钟相位差为2π的相位时钟。
【文档编号】H03K5/135GK105978539SQ201610321008
【公开日】2016年9月28日
【申请日】2016年5月16日
【发明人】单伟伟, 万亮, 孙华芳
【申请人】东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1