CN111858412B - 调整时序的方法、装置、计算机设备及介质 - Google Patents

调整时序的方法、装置、计算机设备及介质 Download PDF

Info

Publication number
CN111858412B
CN111858412B CN202010578334.2A CN202010578334A CN111858412B CN 111858412 B CN111858412 B CN 111858412B CN 202010578334 A CN202010578334 A CN 202010578334A CN 111858412 B CN111858412 B CN 111858412B
Authority
CN
China
Prior art keywords
target
sequential element
time
sequential
data signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010578334.2A
Other languages
English (en)
Other versions
CN111858412A (zh
Inventor
蒋伟华
简卫
张欣
董火新
车诒桓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Flying Fairy Intelligent Technology Co ltd
Original Assignee
Shenzhen Flying Fairy Intelligent Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Flying Fairy Intelligent Technology Co ltd filed Critical Shenzhen Flying Fairy Intelligent Technology Co ltd
Priority to CN202010578334.2A priority Critical patent/CN111858412B/zh
Publication of CN111858412A publication Critical patent/CN111858412A/zh
Application granted granted Critical
Publication of CN111858412B publication Critical patent/CN111858412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本申请适用于时序信号修复技术领域,提供了一种调整时序的方法、装置、计算机设备及介质,其中,一种调整时序的方法,通过确定时序路径中待调整时序的第一目标时序元件,再测算第一目标时序元件与其上一级时序元件,即与第二目标时序元件之间的目标时钟偏斜值,由于第一目标时序元件为时序路径中待调整时序的时序元件,且测算所得的目标时钟偏斜值,可直接对该第一目标时序元件的时序违例进行修复,因此将该目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件,通过执行目标时钟树综合文件,即可对第一目标时序元件进行时序调整操作,无需对时序电路进行多次迭代调整,提高了对时序电路进行时序调整的效率。

Description

调整时序的方法、装置、计算机设备及介质
技术领域
本申请属于时序信号修复技术领域,尤其涉及一种调整时序的方法、装置、计算机设备及计算机可读存储介质。
背景技术
时序路径是指包含有时序元件的电路路径,被广泛应用于各种运算器件中,如控制器CPU中多个层级的寄存器组成的路径即为时序路径。由于时序路径中包含有时序元件,如CPU中的寄存器等,因此在设计时序路径时,需要对时序路径进行时序调整,以保证时序路径中的时序元件能够正常工作。
现有技术中,在对时序路径进行时序调整时,是通过多次迭代的方式逐步调整时序。但是,在每次迭代的过程中,需要对违例时序进行调整,且直到调整整个时序路径的时序完全收敛。当时序路径中的时序元件的层级越多,相应的调整时序过程中迭代的次数也就越多,对时序路径进行时序调整的时间成本就越大。由此可见,现有调整时序的方案中存在调整时序效率较低的问题。
发明内容
有鉴于此,本申请实施例提供了一种调整时序的方法、装置、计算机设备及计算机可读存储介质,以解决现有调整时序的方案中存在调整时序效率较低的问题。
本申请实施例的第一方面提供了一种调整时序的方法,包括:
确定时序路径中待调整时序的第一目标时序元件;所述时序路径中包括至少两个层级结构的时序元件;
测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值;其中,所述第二目标时序元件为所述第一目标时序元件的上一级时序元件;
将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件;
执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作。
上述方案中,所述确定时序路径中待调整时序的第一目标时序元件,包括:
向所述时序路径输入时钟信号与数据信号;
获取所述时序路径中,每个中间时序元件基于所述时钟信号与所述数据信号确定的数据信号建立时间与数据信号保持时间;所述中间时序元件为所述时序路径中除了第一级时序元件以外的其余时序元件;
基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件。
上述方案中,所述基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件,包括:
判断每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,是否满足以下约束条件:
TCn-1+TQn-1+TL+TSetup≤TCn+TP
TCn-1+TQn-1+TL-THold≥TCn
其中,TCn-1为所述中间时序元件的上一级时序元件接收到所述时钟信号的延迟时间;TQn-1为所述中间时序元件的上一级时序元件的内部跳变时间;TL为所述中间时序元件与其上一级时序元件之间的传输路径延迟时间;TSetup为所述中间时序元件对应的所述数据信号建立时间;TCn为所述中间时序元件接收到所述时钟信号的延迟时间;TP所述时钟信号的周期;THold为所述中间时序元件对应的所述数据信号保持时间;
将不满足所述约束条件的中间时序元件识别为所述第一目标时序元件。
上述方案中,所述测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值,包括:
若所述第一目标时序元件为所述数据信号建立时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号保持时间THold_1,并基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值;
若所述第一目标时序元件为所述数据信号保持时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号建立时间TSetup_1,并基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值。
上述方案中,所述基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第一取值区间:
TFF1-TFF2≤TFFQ2+TLD-THold_1,且(TFFQ2+TLD-THold_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF1-TFF2为所述第一取值区间;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;THold_1为所述第一目标时序元件对应的第一数据信号保持时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第一取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
上述方案中,所述基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第二取值区间:
TFF2-TFF1≤TP-TFFQ2-TLD-TSetup_1,且(TP-TFFQ2-TLD-TSetup_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF2-TFF1为所述第二取值区间;TP所述时钟信号的周期;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;TSetup_1为所述第一目标时序元件对应的第一数据信号建立时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第二取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
上述方案中,所述执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作,包括:
获取所述第一目标时序元件的个数;
基于所述第一目标时序元件的个数配置相应的缓冲器节点集合;
将所述缓冲器节点集合中的缓冲器节点,配置到所述第一目标时序元件与所述第二目标时序元件之间,完成时序调整操作;所述缓冲器节点用于描述所述目标时钟偏斜值。
本申请实施例的第二方面提供了一种调整时序的装置,包括:
确定单元,用于获取时序路径中待调整时序的第一目标时序元件;所述时序路径中包括至少两个层级结构的时序元件;
测算单元,用于测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值;其中,所述第二目标时序元件为所述第一目标时序元件的上一级时序元件;
配置单元,用于将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件;
执行单元,用于执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作。
本申请实施例的第三方面提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述计算机设备上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面提供的调整时序的方法的各步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提供的调整时序的方法的各步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在计算机设备上运行时,使得计算机设备执行上述第一方面中任一项所述的调整时序的方法的各步骤。
实施本申请实施例提供的一种调整时序的方法、装置、计算机设备及计算机可读存储介质具有以下有益效果:
本申请实施例提供的一种调整时序的方法,通过确定时序路径中待调整时序的第一目标时序元件,再测算第一目标时序元件与其上一级时序元件,即与第二目标时序元件之间的目标时钟偏斜值,由于第一目标时序元件为时序路径中待调整时序的时序元件,且测算所得的目标时钟偏斜值,可直接对该第一目标时序元件的时序违例进行修复,因此将该目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件,通过执行目标时钟树综合文件,即可对第一目标时序元件进行时序调整操作,无需对时序电路进行多次迭代调整,降低了对时序路径进行时序调整的时间成本,提高了对时序电路进行时序调整的效率。
此外,获取时序路径中待调整时序的第一目标时序元件时,基于时序路径中每个中间时序元件对应的数据信号建立时间与数据信号保持时间,确定出数据信号建立时间和/或数据信号保持时间不满足所述约束条件的第一目标时序元件,在测算第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值时,同时考虑第一目标时序元件的数据信号建立时间与数据信号保持时间,进而确定出适合第一目标时序元件的数据信号建立时间与数据信号保持时间的目标时钟偏斜值,将其配置到预设的时钟树综合文件中,得到目标时钟树综合文件,执行该目标时钟树综合文件,在呈现时序路径的时钟偏斜布局的同时,实现对第一目标时序元件的时序调整操作。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种调整时序的方法的实现流程图;
图2是时序路径的示意图;
图3是时钟信号与数据信号的正常时序关系图;
图4是时钟信号与多个数据信号之间的比对示意图;
图5是本申请另一实施例提供的一种调整时序的方法的实现流程图;
图6是本申请实施例提供的一种调整时序的装置结构框图;
图7是本申请另一实施例提供的一种计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本实施例提供的一种调整时序的方法,应用于计算机设备中,也即该调整时序的方法其执行主体为计算机设备。这里,计算机设备具体包括用于设计和/或调试时序路径的计算机设备。在本申请的所有实施例中,计算机设备通过执行本实施例提供的调整时序的方法,进而完成对时序路径的时序调整操作。
请参阅图1,图1是本申请实施例提供的一种调整时序的方法的实现流程图。如图1所示的调整时序的方法包括以下步骤:
S11:确定时序路径中待调整时序的第一目标时序元件。
在步骤S11中,时序路径中包括至少两个层级结构的时序元件。这里,层级结构是指时序元件与时序元件之间的层级分布,不同层级的时序元件之间根据数据信号的传递顺序而定,如数据信号先传递至第一时序元件,再由第一时序元件传递至第二时序元件,则第一时序元件为第二时序元件的上一级时序元件,第二时序元件为第一时序元件的下一级时序元件。
需要说明的是,第一目标时序元件为时序路径中,存在时序违例的时序元件,也即存在时钟信号与数据信号不匹配的时序元件。这里,时序元件可以是现有的任一种需要时钟信号与数据信号同时作用的电子元器件,如寄存器、存储器等。在时序路径中,相邻层级的时序元件之间存在一定的数据延迟与时钟延迟,通过分析相邻层级的时序元件之间的数据信号传递时间与时钟信号延迟时间是否匹配,即可从时序路径中确定出待调整时序的第一目标时序元件。
在实际应用中,时序路径的时序数据库中的信息用于描述各层级时序元件接收数据信号与接收时钟信号的时机,因此相邻层级的时序元件之间的数据信号传递时间与时钟信号延迟时间,均可以通过查询该时序路径的时序数据库得到。
在其他实施例中,确定时序路径中待调整时序的第一目标时序元件,还可以是通过对该时序路径中的所有时序元件进行时序遍历,进而从中确定出存在时序违例的第一目标时序元件。
作为本申请一实施例,步骤S11包括:
向所述时序路径输入时钟信号与数据信号;获取所述时序路径中,每个中间时序元件基于所述时钟信号与所述数据信号确定的数据信号建立时间与数据信号保持时间;所述中间时序元件为所述时序路径中除了第一级时序元件以外的其余时序元件;基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件。
需要说明的是,由于时序路径中包括至少两个层级结构的时序元件,因此向时序路径输入时钟信号与数据信号后,中间时序元件接收上一级时序元件传递的数据信号必须与该中间时序元件接收到的时钟信号相匹配,当中间时序元件接收到的时钟信号与上一级时序元件传递的数据信号不相匹配时,可确定该中间时序元件存在时序违例导致其无法正常工作,因此将该中间时序元件识别为第一目标时序元件。
在本实施例中,判断中间时序元件接收到的时钟信号与上一级时序元件传递的数据信号是否相匹配,可以通过获取中间时序元件基于时钟信号与数据信号确定的数据信号建立时间与数据信号保持时间,基于中间时序元件对应的数据信号建立时间与数据信号保持时间,确定该中间时序元件是否为第一目标时序元件。这里,中间时序元件需要在相互匹配的时钟信号与数据信号共同作用下才能正常工作,具体地,中间时序元件在检测到时钟信号的采样时钟沿到来后,开始对数据信号进行数据采样,为了保证中间时序元件能够顺利对数据信号进行采样,需要在时钟信号采样时钟沿到来前的第一时间段内必须接收到数据信号,且在时钟信号采样时钟沿到来后的第二时间段内必须保持数据信号的持续稳定,其中,第一时间段为数据信号建立时间,第二时间段为数据信号保持时间。通过对时序路径中每个中间时序元件对应的数据信号建立时间与数据信号保持时间进行分析,即可确定出哪个中间时序元件接收到的时钟信号与数据信号不匹配,也即从时序路径中确定出第一目标时序元件。
作为本申请一实施例,上述方案中,基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件的步骤,包括:
判断每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,是否满足以下约束条件:
TCn-1+TQn-1+TL+TSetup≤TCn+TP
TCn-1+TQn-1+TL-THold≥TCn
其中,TCn-1为所述中间时序元件的上一级时序元件接收到所述时钟信号的延迟时间;TQn-1为所述中间时序元件的上一级时序元件的内部跳变时间;TL为所述中间时序元件与其上一级时序元件之间的传输路径延迟时间;TSetup为所述中间时序元件对应的所述数据信号建立时间;TCn为所述中间时序元件接收到所述时钟信号的延迟时间;TP所述时钟信号的周期;THold为所述中间时序元件对应的所述数据信号保持时间;将不满足所述约束条件的中间时序元件识别为所述第一目标时序元件。
在本实施例中,约束条件用于描述中间时序元件接收到时钟信号与数据信号相互匹配的条件,也即用于描述中间时序元件正常工作条件下的数据信号建立时间与数据信号保持时间的取值范围。
需要说明的是,时序路径在确定时序元件之间的连接路径后,各个时序元件中的内部跳变时间、相邻时序元件之间的传输路径延迟时间即可确定。通过向时序路径输入时钟信号与数据信号后,在不考虑时序是否存在错乱的条件下,时序路径中的时序元件根据时钟信号与数据信号进行工作,故在约束条件中出现的中间时序元件的上一级时序元件接收到时钟信号的延迟时间、中间时序元件对应的数据信号建立时间、中间时序元件接收到时钟信号的延迟时间、时钟信号的周期,以及中间时序元件对应的数据信号保持时间即可确定,因此可以判断中间时序元件的数据信号建立时间与数据信号保持时间是否满足该约束条件的限定或者取值范围。这里,从时序路劲中确定出第一目标时序元件的过程中,考虑的是相邻两个时序元件之间的时序关系,也即中间时序元件与其上一级时序元件之间的时间关系。由于中间时序元件与其上一级时序元件分别接收周期相同的时钟信号,且中间时序元件接收的数据信号由其上一级时序元件输出,因此在判断中间时序元件接收到时钟信号与数据信号是否匹配,可以通过分析该中间时序元件与其上一级时序元件之间的时序关系得到。
图2示出了时序路径的示意图。如图2所示,在由第一寄存器FF1与第二寄存器FF2组成的时序路径中,由于数据信号由第一寄存器FF1的数据端D1输入,因此第一寄存器FF1为第二寄存器FF2的上一级时序元件,第二寄存器FF2为第一寄存器FF1的下一级时序元件。在图2所示的时序路径中,周期为Tperiod的时钟信号分别通过第一寄存器FF1的时钟端C1与第二寄存器FF2的时钟端C2输入,其中,时钟信号传递至第一寄存器FF1的时钟端C1的延迟时间为T1,时钟信号传递至第二寄存器FF2的时钟端C2的延迟时间为T2
在图2中,数据信号与时钟信号在传递至第一寄存器FF1后,由第一寄存器FF1的跳变端Q1输出,再经由第一寄存器FF1与第二寄存器FF2之间的中间数据路径传递至第二寄存器FF2的数据端D2。对于第二寄存器FF2来说,判断第二寄存器FF2的时序是否出现时序违例的现象,也即判断第二寄存器FF2是否为第一目标时序元件,可以基于第二寄存器FF2的数据信号建立时间与数据信号保持时间确定。这里,第二寄存器FF2的数据端D2接收到数据信号的时间为第一寄存器FF1接收到时钟信号的延迟时间T1、第一寄存器FF1的跳变端Q1的跳变时间TQ1(即第一寄存器FF1的内部跳变时间)以及传输路径延迟时间TL之和,也即T1+TQ1+TL
图3示出了时序元件接收到时钟信号与数据信号的时序关系图。结合图2与图3,由于时序元件第一寄存器FF1为时序路径中第一层级的时序元件,也即最先接收到时钟信号与数据信号的时序元件,因此对于第一寄存器FF1来说,不会因为时钟信号或者数据信号在传输过程中因路径延迟导致时序违例的问题。故在从时序路径中获取第一目标时序路径时,不考虑时序路径中第一层级的时序元件。图3示出的时序元件接收到时钟信号与数据信号的时序关系图中,时钟信号显示出的采样时钟沿为上升沿,在实际应用中,还可以根据实际需求将采样时钟沿设置为下降沿。结合图2与图3,当时钟信号的采样时钟沿(上升沿)到来时,第一寄存器FF1采集数据信号并传递至第二寄存器FF2,数据信号有一整个时钟信号周期Tperiod的时间传递至第二寄存器FF2的数据端D2。对于第二寄存器FF2来说,时钟信号采样时钟沿(上升沿)到来以前,第二寄存器FF2的数据端D2接收到的数据信号必须在第一时间段内保持不变,该第一时间段称之为数据信号建立时间Tsetup,在第二寄存器FF2的时钟端C2检测到时钟信号采样时钟沿(上升沿)到来以后,第二寄存器FF2的数据端D2接收到的数据信号还必须在第二时间段内保持不变,该第二时间段称之为数据信号保持时间Thold。在判断第二寄存器FF2是否为第一目标时序元件时,可以通过确定第二寄存器FF2接收到的时钟信号与数据信号是否满足数据信号建立时间的持续时长,以及是否满足数据保存时间的持续时长而确定。
结合图2与图3,由于第一寄存器FF1采集数据信号并传递至第二寄存器FF2,采集到的数据信号有一整个时钟信号周期Tperiod的时间传递至第二寄存器FF2的数据端D2,且第二寄存器FF2的数据端D2接收到的数据信号必须在第一时间段内保持不变,也即需要满足数据信号建立时间Tsetup,因此对于第二寄存器FF2来说,数据信号必须早于时钟信号先到达,也即约束第二寄存器FF2的数据信号建立时间可用公式T1+TQ1+TL+Tsetup≤T2+Tperiod表示,通过对该公式进行变换,可得到Tsetup≤T2+Tperiod-T1-TQ1-TL。为了防止第一寄存器FF1采集到的数据信号太快传递至第二寄存器FF2,对第二寄存器FF2本该采集到的数据进行更改,第一寄存器FF1采集到的数据信号必须在一定时间段后才允许被传递至第二寄存器FF2,也即在每次数据信号传递至第二寄存器FF2时,都需要考虑上一次是数据信号是否具有一定的保持时间,也即约束第二寄存器FF2的数据信号保持时间可用公式T1+TQ1+TL–Thold≥T2表示,通过对该公式进行变换,可得到Thold≤T1+TQ1+TL-T2。由此可见,判断时序路径的每个中间时序元件对应的数据信号建立时间与数据信号保持时间是否满足约束条件:TCn-1+TQn-1+TL+TSetup≤TCn+TP与TCn-1+TQn-1+TL-THold≥TCn,即可从时序路径中确定出第一目标时序元件。
S12:测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值。
在步骤S12中,第二目标时序元件为第一目标时序元件的上一级时序元件。第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值,用于表征第一目标时序元件与第二目标时序元件之间的最大可调制时钟偏斜。这里,由于在时序路径中,时钟偏移值用于描述时钟信号传递至前后两个或多个时序元件之间的时间差值,因此通过控制相邻时序元件之间的时钟偏斜值大小,即可对时序元件的时钟信号与数据信号不匹配的现象进行调整。
在本实施例中,由于第二目标时序元件为第一目标时序元件的上一级时序元件,因此可以通过构建第二目标时序元件与第一目标时序元件之间的时钟偏斜值,调整两者接收到时钟信号的时机,进而实现对时序路径的时序调整。
以图2所示的时序路径为例,周期为Tperiod的时钟信号分别通过第一寄存器FF1的时钟端C1与第二寄存器FF2的时钟端C2输入,其中,时钟信号传递至第一寄存器FF1的时钟端C1的延迟时间为T1,时钟信号传递至第二寄存器FF2的时钟端C2的延迟时间为T2。这里,由于时钟信号到达前后两个或多个寄存器之间的时间差为时钟偏斜,因此时钟信号传递至第一寄存器FF1的时钟端C1的延迟时间T1,与时钟信号传递至第二寄存器FF2的时钟端C2的延迟时间T2之间的差值,为第一寄存器FF1与第二寄存器FF2之间的时钟偏斜值。当时钟信号同时传递至第一寄存器FF1的时钟端C1与第二寄存器FF2的时钟端C2时,第一寄存器FF1与第二寄存器FF2之间无时钟信号延迟,也即延迟时间T1与延迟时间T2之间的差值为0;当时钟信号不是同时传递至第一寄存器FF1的时钟端C1与第二寄存器FF2的时钟端C2时,第一寄存器FF1与第二寄存器FF2之间存在时钟信号延迟,也即延迟时间T1与延迟时间T2之间的差值不为0。通过测算第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值,能够确定时钟信号先后传递至第二目标时序元件与第一目标时序元件之间的时间差极值大小,也即确定第一目标时序元件与第二目标时序元件之间可配置的最大时钟偏斜值大小。
作为本申请一实施例,步骤S12包括:
若所述第一目标时序元件为所述数据信号建立时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号保持时间THold_1,并基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值;
若所述第一目标时序元件为所述数据信号保持时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号建立时间TSetup_1,并基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值。
在本实施例中,如果第一目标时序元件为时序路径中,数据信号建立时间不满足约束条件的中间时序元件,即可通过确定该第一目标时序元件对应的数据信号保持时间余量,利用该数据信号保持时间余量对数据信号建立时间进行调整,同理如果第一目标时序元件为时序路径中,数据信号保持时间不满足约束条件的中间时序元件,即可通过确定该第一目标时序元件对应的数据信号建立时间余量,利用该数据信号建立时间余量对数据信号建立时间进行调整。
如图3所示,在实际应用中,当时序路径中时序元件接收到时钟信号与数据信号时,且在满足数据信号建立时间Tsetup和数据信号保持时间Thold的情况下,通常会同时存在有一定的数据信号建立时间余量Tsetup_slack与数据信号保持时间余量Thold_slack
图4示出了时钟信号与多个数据信号之间的比对示意图,结合图3与图4,当时钟信号与数据信号配对作用时,时序路径的时序较为局限,也即在数据信号的波形图中可看出,数据信号建立时间余量和数据信号保持时间余量被压缩,在压缩至余量极限时,数据信号建立时间余量Tsetup_slack与数据信号保持时间余量Thold_slack均为0,如图4所示,时钟信号显示出的采样时钟沿为上升沿,数据信号的波形图中可看出只剩下数据信号建立时间Tsetup和数据信号保持时间Thold。当时钟信号与数据信号DATA1配对作用时,在时钟信号采样时钟沿(上升沿)到来前,数据信号DATA1无法保持一段时间内的稳定,故存在数据信号建立时间不足的现象,但在时钟信号采样时钟沿(上升沿)到来后,数据信号DATA1能够保持一段时间内的稳定,也即满足数据保持时间的需求,且还剩余有保持时间余量。当时钟信号与数据信号DATA2配对作用时,在时钟信号采样时钟沿(上升沿)到来后,数据信号DATA2无法保持一段时间内的稳定,故存在数据信号保持时间不足的现象,但在时钟信号采样时钟沿(上升沿)到来前,数据信号DATA1能够保持一段时间内的稳定,也即满足数据建立时间的需求,且还剩余有建立时间余量。故通过确定第一目标时序元件需要调整的是数据信号建立时间部分还是数据信号保持时间部分,可以利用两个时间之间余量进行相互补偿调整。
作为本申请一实施例,上述方案中,所述基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第一取值区间:
TFF1-TFF2≤TFFQ2+TLD-THold_1,且(TFFQ2+TLD-THold_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF1-TFF2为所述第一取值区间;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;THold_1为所述第一目标时序元件对应的第一数据信号保持时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第一取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
需要说明的是,约束条件中的:TCn-1+TQn-1+TL-THold≥TCn,用于描述中间时序元件正常工作条件下的数据信号保持时间的取值范围,通过对其进行变换,可得到如下关系式:
TCn-TCn-1≤TQn-1+TL-THold; (1)
可见,在关系式(1)右边算式值大于0时,表示时钟信号与数据信号能够满足数据信号保持时间Thold的条件,数据信号保持时间Thold无需利用时钟偏斜即可实现收敛,因此数据信号建立时间Tsetup能够利用关系式(1)左边算式值对应的时钟偏斜值进行调整。
可以理解的是,在上述关系式(1)中,TCn-TCn-1为时钟偏斜,也即与TFF1-TFF2对应,为第一取值区间,在带入实际的应用中,关系式(1)与公式TFF1-TFF2≤TFFQ2+TLD-THold_1相互对等。
在本实施例中,通过以下公式测算所述目标时钟偏斜值的第一取值区间:
TFF1-TFF2≤TFFQ2+TLD-THold_1,且(TFFQ2+TLD-THold_1)>0,即可确定出数据保持时间的大小,然后基于第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从第一取值区间中确定出目标时钟偏斜值,确保在不影响第一目标时序元件于第二目标时序元件各自相邻时序元件的时序的条件下,选择适当的目标时钟偏斜值完成时序调整。
作为本申请一实施例,上述方案中,所述基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第二取值区间:
TFF2-TFF1≤TP-TFFQ2-TLD-TSetup_1,且(TP-TFFQ2-TLD-TSetup_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF2-TFF1为所述第二取值区间;TP所述时钟信号的周期;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;TSetup_1为所述第一目标时序元件对应的第一数据信号建立时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第二取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
需要说明的是,约束条件中的:TCn-1+TQn-1+TL+TSetup≤TCn+TP,用于描述中间时序元件正常工作条件下的数据信号建立时间的取值范围,通过对其进行变换,可得到如下关系式:
TCn-1-TCn≤TP-TQn-1-TL-TSetup; (2)
因此,在关系式(2)右边算式值大于0时,表示时钟信号与数据信号能够满足数据信号建立时间Tsetup的条件,数据信号建立时间Tsetup无需利用时钟偏斜即可实现收敛,因此数据信号保持时间Thold能够利用关系式(2)左边算式值对应的时钟偏斜值进行调整。
可以理解的是,在上述关系式(2)中,TCn-1-TCn为时钟偏斜,也即与TFF2-TFF1对应,为第一取值区间,在带入实际的应用中,关系式(2)与公式TFF2-TFF1≤TP-TFFQ2-TLD-TSetup_1相互对等。
在本实施例中,通过以下公式测算所述目标时钟偏斜值的第而取值区间:
TFF2-TFF1≤TP-TFFQ2-TLD-TSetup_1,且(TP-TFFQ2-TLD-TSetup_1)>0,即可确定出数据建立时间的大小,然后基于第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从第二取值区间中确定出目标时钟偏斜值,确保在不影响第一目标时序元件于第二目标时序元件各自相邻时序元件的时序的条件下,选择适当的目标时钟偏斜值完成时序调整。
S13:将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件。
在步骤S13中,时钟树综合文件(Clock Tree Synthesis,CTS)中包括时钟树约束文件,该时钟树约束文件用于定义时钟信号。时钟树约束文件至少包括:时钟的起点、时钟周期、延迟单元类型或名称,以及各时序元件时钟偏斜目标值。此外,时钟树约束文件还可以包含最大/最小时钟网络延迟、时钟单元最大扇出、全局器件最大跳转时间、全局时钟偏斜最大值等。
需要说明的是,时钟树综合需要对期望实现的参数做出定义,这些参数通过时钟树约束文件提供,时钟树约束文件中首先是对时钟信号本身的定义,它们直接来源于标准设计约束SDC文件。对于多时钟的复杂SoC设计,还需要根据设计的具体情况设定多周期检查路径,冗余的伪路径以及最大延迟时间最小延迟时间等约束。
在本实施例中,通过将目标时钟偏斜值配置到预设的时钟树综合文件中,具体可以是配置到时钟树综合文件的时钟约束文件中。
可以理解的是,在实际应用中,由于时钟树约束文件至少包括:时钟的起点、时钟周期、延迟单元类型或名称,以及各时序元件时钟偏斜目标值,将该目标时钟偏斜值配置到预设的时钟树综合文件中,具体可以是将该目标时钟偏斜值作为第一目标时序元件的时钟偏斜目标值,对应修改第一目标时序元件对应的时钟偏斜。
S14:执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作。
在步骤S14中,由于目标时钟树综合文件中配置有目标时钟偏斜值,因此在执行该目标时钟树综合文件时,目标时钟偏斜值能够约束第一目标时序元件与第二目标时序元件之间的时钟偏斜,进而实现对第一目标时序元件的数据信号建立时间或者数据信号保持时间进行修复,也即实现对时序路径的时序调整。
在本实施例中,执行目标时钟树综合文件,可以是通过计算机终端上预先安装的时序调整工具执行,也即通过调用时序调整工具执行目标时钟树综合文件,对第一目标时序元件进行时序调整操作。
作为本申请一实施例,步骤S14具体包括:
获取所述第一目标时序元件的个数;
基于所述第一目标时序元件的个数配置相应的缓冲器节点集合;
将所述缓冲器节点集合中的缓冲器节点,配置到所述第一目标时序元件与所述第二目标时序元件之间,完成时序调整操作;所述缓冲器节点用于描述所述目标时钟偏斜值。
在本实施例中,通过执行目标时钟树综合文件,递归查询时序路径中各第一目标时序元件对应的目标时钟偏斜值,获取第一目标时序元件的个数,再基于第一目标时序元件的个数配置相应的缓冲器节点集合,以及确定生成目标时钟偏斜值对应的缓冲器最佳插入节点,也即第一目标时序元件与第二目标时序元件之间,通过将用于描述目标时钟偏斜值缓冲器节点配置到第一目标时序元件与第二目标时序元件之间,进而完成时序调整操作。
在实际应用中,时序路径中的任一中间时序元件均可同时对应一个或多个下一级时序元件,当同一个第二目标时序元件对应多个同层级的第一目标时序元件时,可以在多个第一目标时序元件之间配置一个共用节点,将该节点作为缓冲器节点,进而实现在第二目标时序元件与多个第一目标时序元件之间构建目标时钟偏斜值对应的目标时钟偏斜,完成对时序的调整操作。
以上可以看出,本实施例提供的一种调整时序的方法,通过获取时序路径中待调整时序的第一目标时序元件,再测算第一目标时序元件与其上一级时序元件,即与第二目标时序元件之间的目标时钟偏斜值,由于第一目标时序元件为时序路径中待调整时序的时序元件,且测算所得的目标时钟偏斜值,可直接对该第一目标时序元件的时序违例进行修复,因此将该目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件,通过执行目标时钟树综合文件,即可对第一目标时序元件进行时序调整操作,无需对时序电路进行多次迭代调整,降低了对时序路径进行时序调整的时间成本,提高了对时序电路进行时序调整的效率。
此外,通过执行目标时钟树综合文件,递归查询时序路径中各第一目标时序元件对应的目标时钟偏斜值,获取第一目标时序元件的个数,再基于第一目标时序元件的个数配置相应的缓冲器节点集合,以及确定生成目标时钟偏斜值对应的缓冲器最佳插入节点,减少了不必要的缓冲器插入。
请参阅图5,图5是本申请另一实施例提供的一种调整时序的方法的实现流程图。相对于图1对应的实施例,本实施例提供的调整时序的方法在步骤S11之后步骤S12之前,还包括步骤S21。详述如下:
S21:将所述第一目标时序元件的上一级时序元件识别为第二目标时序元件。
本实施例中,第二目标时序元件为第一目标时序元件的上一级时序元件。
需要说明的是,在时序路径中,由于第一目标时序元件是中时序路径中的中间时序元件确定得到,且中间时序元件为时序路基中除第一层级时序元件以外的时序元件,因此第二目标时序元件可以是时序路径中的第一层级的时序元件,也可以是时序路径中任一个中间时序元件。
在实际应用中,判断时序路径中那些时序元件为第一目标时序元件的上一级时序元件时,可以通过对第一目标时序元件的数据信号输入端确定,也即第一目标时序元件的数据信号输入端与时序路径中的哪个时序元件相连,即可将该时序元件识别为第一目标时序元件的上一级时序元件,也即第二目标时序元件。
应当理解的是,步骤S21在步骤S11之后,步骤S12之前,当执行完步骤S21之后便执行步骤S12至S14。
请参阅图6,图6是本申请实施例提供的一种调整时序的装置的结构框图。本实施例中该调整时序的装置包括的各单元用于执行图1和图5对应的实施例中的各步骤。具体请参阅图1和图5以及图1和图5所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图6,调整时序的装置30包括:确定单元31、测算单元32、配置单元33以及执行单元34。
其中:
确定单元31,用于获取时序路径中待调整时序的第一目标时序元件;所述时序路径中包括至少两个层级结构的时序元件;
测算单元32,用于测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值;其中,所述第二目标时序元件为所述第一目标时序元件的上一级时序元件;
配置单元33,用于将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件;
执行单元34,用于执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作。
作为本申请一实施例,调整时序的装置30还包括:识别单元35。
识别单元35,用于将所述第一目标时序元件的上一级时序元件识别为第二目标时序元件。
应当理解的是,图6示出的调整时序的装置的结构框图中,各单元用于执行图1与图5对应的实施例中的各步骤,而对于图1与图5对应的实施例中的各步骤已在上述实施例中进行详细解释,具体请参阅图1与图5以及图1与图5所对应的实施例中的相关描述,此处不再赘述。
图7是本申请另一实施例提供的一种计算机设备的结构框图。如图7所示,该实施例的计算机设备4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42,例如调整时序的方法的程序。处理器40执行所述计算机程序42时实现上述各个调整时序的方法各实施例中的步骤,例如图1所示的S11至S14。或者,所述处理器40执行所述计算机程序42时实现上述图6对应的实施例中各单元的功能,例如,图6所示的单元31至35的功能,具体请参阅图6对应的实施例中的相关描述,此处不赘述。
示例性的,所述计算机程序42可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器41中,并由所述处理器40执行,以完成本申请。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述计算机设备4中的执行过程。例如,所述计算机程序42可以被分割成第一获取单元、测算单元、配置单元、执行单元以及识别单元,各单元具体功能如上所述。
所述计算机设备可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图7仅仅是计算机设备4的示例,并不构成对计算机设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述计算机设备4的内部存储单元,例如计算机设备4的硬盘或内存。所述存储器41也可以是所述计算机设备4的外部存储设备,例如所述计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述计算机设备所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (8)

1.一种调整时序的方法,其特征在于,包括:
确定时序路径中待调整时序的第一目标时序元件;所述时序路径中包括至少两个层级结构的时序元件;
测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值;其中,所述第二目标时序元件为所述第一目标时序元件的上一级时序元件;
将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件;
执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作;
所述确定时序路径中待调整时序的第一目标时序元件,包括:
向所述时序路径输入时钟信号与数据信号;
获取所述时序路径中,每个中间时序元件基于所述时钟信号与所述数据信号确定的数据信号建立时间与数据信号保持时间;所述中间时序元件为所述时序路径中除了第一级时序元件以外的其余时序元件;
基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件;
所述基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件,包括:
判断每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,是否满足以下约束条件:
TCn-1+TQn-1+TL+TSetup≤TCn+TP
TCn-1+TQn-1+TL-THold≥TCn
其中,TCn-1为所述中间时序元件的上一级时序元件接收到所述时钟信号的延迟时间;TQn-1为所述中间时序元件的上一级时序元件的内部跳变时间;TL为所述中间时序元件与其上一级时序元件之间的传输路径延迟时间;TSetup为所述中间时序元件对应的所述数据信号建立时间;TCn为所述中间时序元件接收到所述时钟信号的延迟时间;TP所述时钟信号的周期;THold为所述中间时序元件对应的所述数据信号保持时间;
将不满足所述约束条件的中间时序元件识别为所述第一目标时序元件。
2.根据权利要求1所述的调整时序的方法,其特征在于,所述测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值,包括:
若所述第一目标时序元件为所述数据信号建立时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号保持时间THold_1,并基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值;
若所述第一目标时序元件为所述数据信号保持时间不满足所述约束条件的中间时序元件,则获取所述第一目标时序元件对应的第一数据信号建立时间TSetup_1,并基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值。
3.根据权利要求2所述的调整时序的方法,其特征在于,所述基于所述第一数据信号保持时间THold_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第一取值区间:
TFF1-TFF2≤TFFQ2+TLD-THold_1,且(TFFQ2+TLD-THold_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF1-TFF2为所述第一取值区间;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;THold_1为所述第一目标时序元件对应的第一数据信号保持时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第一取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
4.根据权利要求2所述的调整时序的方法,其特征在于,所述基于所述第一数据信号建立时间TSetup_1测算所述目标时钟偏斜值,包括:
通过以下公式测算所述目标时钟偏斜值的第二取值区间:
TFF2-TFF1≤TP-TFFQ2-TLD-TSetup_1,且(TP-TFFQ2-TLD-TSetup_1)>0;
其中,TFF1为所述第一目标时序元件的时钟信号延迟时间;TFF2为所述第二目标时序元件的时钟信号延迟时间;TFF2-TFF1为所述第二取值区间;TP所述时钟信号的周期;TFFQ2为所述第二目标时序元件的内部跳变时间;TLD为所述第一目标时序元件与所述第二目标时序元件之间的传输路径延迟时间;TSetup_1为所述第一目标时序元件对应的第一数据信号建立时间;
基于所述第二目标时序元件与第三目标时序元件之间的时钟偏斜余量,和/或所述第二目标时序元件与第四目标时序元件之间的时钟偏斜余量,从所述第二取值区间中确定出所述目标时钟偏斜值;其中,所述第三目标时序元件为所述第二目标时序元件的上一级时序元件,所述第四目标时序元件为所述第一目标时序元件的下一级时序元件。
5.根据权利要求1至4任一项所述的调整时序的方法,其特征在于,所述执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作,包括:
获取所述第一目标时序元件的个数;
基于所述第一目标时序元件的个数配置相应的缓冲器节点集合;
将所述缓冲器节点集合中的缓冲器节点,配置到所述第一目标时序元件与所述第二目标时序元件之间,完成时序调整操作;所述缓冲器节点用于描述所述目标时钟偏斜值。
6.一种调整时序的装置,其特征在于,包括:
确定单元,用于获取时序路径中待调整时序的第一目标时序元件;所述时序路径中包括至少两个层级结构的时序元件;
测算单元,用于测算所述第一目标时序元件与第二目标时序元件之间的目标时钟偏斜值;其中,所述第二目标时序元件为所述第一目标时序元件的上一级时序元件;
配置单元,用于将所述目标时钟偏斜值配置到预设的时钟树综合文件中,得到目标时钟树综合文件;
执行单元,用于执行所述目标时钟树综合文件,对所述第一目标时序元件进行时序调整操作;
所述获取时序路径中待调整时序的第一目标时序元件,包括:
向所述时序路径输入时钟信号与数据信号;
获取所述时序路径中,每个中间时序元件基于所述时钟信号与所述数据信号确定的数据信号建立时间与数据信号保持时间;所述中间时序元件为所述时序路径中除了第一级时序元件以外的其余时序元件;
基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件;
所述基于每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,从所述时序路径中确定出所述第一目标时序元件,包括:
判断每个所述中间时序元件对应的所述数据信号建立时间与所述数据信号保持时间,是否满足以下约束条件:
TCn-1+TQn-1+TL+TSetup≤TCn+TP
TCn-1+TQn-1+TL-THold≥TCn
其中,TCn-1为所述中间时序元件的上一级时序元件接收到所述时钟信号的延迟时间;TQn-1为所述中间时序元件的上一级时序元件的内部跳变时间;TL为所述中间时序元件与其上一级时序元件之间的传输路径延迟时间;TSetup为所述中间时序元件对应的所述数据信号建立时间;TCn为所述中间时序元件接收到所述时钟信号的延迟时间;TP所述时钟信号的周期;THold为所述中间时序元件对应的所述数据信号保持时间;
将不满足所述约束条件的中间时序元件识别为所述第一目标时序元件。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器以及存储在所述存储器中并可在所述计算机设备上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述调整时序的方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述调整时序的方法的步骤。
CN202010578334.2A 2020-06-23 2020-06-23 调整时序的方法、装置、计算机设备及介质 Active CN111858412B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010578334.2A CN111858412B (zh) 2020-06-23 2020-06-23 调整时序的方法、装置、计算机设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010578334.2A CN111858412B (zh) 2020-06-23 2020-06-23 调整时序的方法、装置、计算机设备及介质

Publications (2)

Publication Number Publication Date
CN111858412A CN111858412A (zh) 2020-10-30
CN111858412B true CN111858412B (zh) 2022-06-21

Family

ID=72989511

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010578334.2A Active CN111858412B (zh) 2020-06-23 2020-06-23 调整时序的方法、装置、计算机设备及介质

Country Status (1)

Country Link
CN (1) CN111858412B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113361084B (zh) * 2021-05-26 2023-02-07 飞腾信息技术有限公司 芯片设计方法、装置、设备、可读存储介质以及程序产品
CN114676665B (zh) * 2022-05-23 2022-09-13 飞腾信息技术有限公司 一种时序调整方法、装置、设备以及存储介质
CN115796093B (zh) * 2023-01-03 2023-08-08 摩尔线程智能科技(北京)有限责任公司 电路时序优化方法、装置、电子设备及存储介质
CN117494630B (zh) * 2023-12-29 2024-04-26 珠海格力电器股份有限公司 一种寄存器时序优化方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4686655A (en) * 1970-12-28 1987-08-11 Hyatt Gilbert P Filtering system for processing signature signals
CN103324774A (zh) * 2012-12-29 2013-09-25 东南大学 一种基于时钟规划偏差算法的处理器性能优化方法
CN104977977A (zh) * 2014-04-02 2015-10-14 联发科技股份有限公司 时钟树电路以及存储控制器
CN105488287A (zh) * 2015-12-04 2016-04-13 上海兆芯集成电路有限公司 时序修正方法和电子装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259488A (ja) * 2001-03-06 2002-09-13 Mitsubishi Electric Corp クロックスキュー検証方法
US7464283B2 (en) * 2004-06-28 2008-12-09 Texas Instruments Incorporated System and method for producing precision timing signals by controlling register banks to provide a phase difference between two signal paths

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4686655A (en) * 1970-12-28 1987-08-11 Hyatt Gilbert P Filtering system for processing signature signals
CN103324774A (zh) * 2012-12-29 2013-09-25 东南大学 一种基于时钟规划偏差算法的处理器性能优化方法
CN104977977A (zh) * 2014-04-02 2015-10-14 联发科技股份有限公司 时钟树电路以及存储控制器
CN105488287A (zh) * 2015-12-04 2016-04-13 上海兆芯集成电路有限公司 时序修正方法和电子装置

Also Published As

Publication number Publication date
CN111858412A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN111858412B (zh) 调整时序的方法、装置、计算机设备及介质
US10776547B1 (en) Infinite-depth path-based analysis of operational timing for circuit design
US8578310B2 (en) Method of measuring the impact of clock skew on slack during a statistical static timing analysis
US10354042B2 (en) Selectively reducing graph based analysis pessimism
US10740520B2 (en) Pessimism in static timing analysis
US20050081171A1 (en) Timing analysis apparatus, timing analysis method and program product
US8539413B1 (en) Frequency optimization using useful skew timing
CN115455879A (zh) 时序路径筛查方法及设备
JP4955484B2 (ja) 回路設計装置、回路設計方法、及び、回路設計プログラム
US7562266B2 (en) Method and device for verifying timing in a semiconductor integrated circuit
US20090271747A1 (en) Logic circuit designing device, logic circuit designing method and logic circuit designing program for asynchronous logic circuit
US20060101363A1 (en) Method of associating timing violations with critical structures in an integrated circuit design
US10430535B2 (en) Verification support program medium, verification support method, and information processing device for verification of a circuit
US10963610B1 (en) Analyzing clock jitter using delay calculation engine
US8713500B2 (en) Computer program and apparatus for evaluating signal propagation delays
US8302049B2 (en) Method for enabling multiple incompatible or costly timing environment for efficient timing closure
US7930609B2 (en) Apparatus and method for verifying target circuit
US20090037860A1 (en) Apparatus, system and method for simulating operation of circuit
CN115455880A (zh) 时序路径筛查方法及设备
US7840925B1 (en) Source specific timing checks on synchronous elements using a static timing analysis engine
US6968523B2 (en) Design method of logic circuit using data flow graph
US20080168297A1 (en) Method and apparatus for characterizing properties of electronic devices depending on device parameters
CN117725866B (zh) 一种验证方法、装置、电子设备及可读存储介质
US10430313B2 (en) System for correlation of operating system and hardware trace events
US11386251B2 (en) Logic simulation verification system, logic simulation verification method, and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant