可左右滑动选省市

时钟树综合和布局混合优化方法和装置、存储介质和终端

更新时间:2024-09-01
时钟树综合和布局混合优化方法和装置、存储介质和终端 专利申请类型:发明专利;
源自:上海高价值专利检索信息库;

专利名称:时钟树综合和布局混合优化方法和装置、存储介质和终端

专利类型:发明专利

专利申请号:CN202111094822.7

专利申请(专利权)人:中国科学院上海微系统与信息技术研究所
权利人地址:上海市长宁区长宁路865号

专利发明(设计)人:杨树澄,任洁,王镇

专利摘要:本发明公开了时钟树综合和布局混合优化方法和装置、存储介质和终端,其中方法包括获取所有时钟端口的坐标位置,并获取所有时钟端口的逻辑深度;基于所有时钟端口的逻辑深度对所有时钟端口分组得到多个逻辑深度组,并获取每个逻辑深度组的分割点;基于逻辑深度组的分割点计算主干节点,并连接形成时钟树主轨道;计算逻辑深度组中所有叶节点,并将其连接到时钟树主轨道上;将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和待优化电路版图内的所有逻辑门均作为可移动单元得到优化后的电路板图。本发明进一步提升了超导集成电路,尤其是SFQ逻辑中的Bit‑Slice电路结构的时钟树性能和布局效果,为后续电路的布线优化提供了更优化的版图布局。

主权利要求:
1.一种时钟树综合和布局混合优化方法,包括:
基于待优化电路的版图布局数据获取所述待优化电路中所有时钟端口的坐标位置,并基于所述待优化电路的电路网表获取所述待优化电路中所有时钟端口的逻辑深度;
基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点;
分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点,并依次连接所有所述主干节点形成时钟树主轨道;
基于每个所述逻辑深度组中所有时钟端口坐标位置分别计算对应所述逻辑深度组中的所有叶节点,并将所有所述叶节点与所述时钟树主轨道连接;
将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所述待优化电路版图内的所有逻辑门作为同级别的可移动单元,通过利用基于模拟退火算法的布局优化器对所有所述可移动单元进行迭代优化,得到优化电路。
2.根据权利要求1所述的方法,其特征在于,基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组包括:将所有时钟端口中逻辑深度相同的归为一组,并按逻辑深度从小到大的顺序依次排列得到多个逻辑深度组。
3.根据权利要求1所述的方法,其特征在于,对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点包括:分别将每个所述逻辑深度组内最上边的时钟端口位置坐标和最下边的时钟端口位置坐标的中点作为对应所述逻辑深度组的分割点。
4.根据权利要求1所述的方法,其特征在于,分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点包括:分别以每个所述逻辑深度组的分割点作为每个所述逻辑深度组的参考节点;
在每个所述参考节点的预设范围内查找对应所述逻辑深度组的主干节点,以使得所有相邻所述主干节点之间的高度差之和小于预设阈值。
5.根据权利要求1所述的方法,其特征在于,基于单个所述逻辑深度组中的所有时钟端口坐标位置计算对应所述逻辑深度组中的所有叶节点包括:所述逻辑深度组中的主干节点左右延伸直线将所述逻辑深度组分为上下两个半平面;
基于每个所述半平面内的所有时钟端口坐标位置以及预设扇出值计算出每个所述半平面内的所有叶节点。
6.根据权利要求5所述的方法,其特征在于,将所有所述叶节点与所述时钟树主轨道连接包括:将每个所述半平面内的所有叶节点基于所述预设扇出值连接成子时钟树;
将所有所述子时钟树的根节点与所述时钟树主轨道连接,以使得同一逻辑深度组中的两个子时钟树每一级节点均具有相同长度的时钟轨道。
7.根据权利要求1所述的方法,其特征在于,所述模拟退火算法的优化目标为移动前后时钟树整体偏差值以及所述待优化电路中所有信号线线长的均值、所有信号线线长的方差、版图整体所占面积和走线密度之和的差值小于预设阈值。
8.一种时钟树综合和布局混合优化装置,其特征在于,包括:数据获取模块、分割模块、主轨道形成模块、叶节点获取模块和优化模块;
所述数据获取模块,用于基于待优化电路的版图布局数据获取所述待优化电路中所有时钟端口的坐标位置,并基于所述待优化电路的电路网表获取所述待优化电路中所有时钟端口的逻辑深度;
所述分割模块,用于基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点;
所述主轨道形成模块,用于分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点,并依次连接所有所述主干节点形成时钟树主轨道;
所述叶节点获取模块,用于基于每个所述逻辑深度组中所有时钟端口坐标位置分别计算对应所述逻辑深度组中的所有叶节点,并将所有所述叶节点与所述时钟树主轨道连接;
所述优化模块,用于将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所述待优化电路版图内的所有逻辑门作为可移动单元,通过模拟退火算法对所有所述可移动单元进行优化,得到优化电路。
9.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至7中任一项所述时钟树综合和布局混合优化方法。
10.一种终端,其特征在于,包括:处理器及存储器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如权利要求1至7中任一项所述时钟树综合和布局混合优化方法。 说明书 : 时钟树综合和布局混合优化方法和装置、存储介质和终端技术领域[0001] 本发明涉及超导集成电路布局技术领域,尤其涉及一种时钟树综合和布局混合优化方法和装置、存储介质和终端。背景技术[0002] 超导集成电路是指基于约瑟夫森结和超导材料,包括单磁通量子(Single‑Flux‑Quantum,SFQ)电路等应用的集成电路。[0003] SFQ电路是一种比较特殊的超导集成电路,其主要是由约瑟夫森结组成的,通过磁通量子Ф0的有无来表示数字逻辑“0”和“1”的。跟传统半导体CMOS(ComplementaryMetalOxideSemiconductor)电路比起来,磁通量子的微小和量化性质显著减少了串扰和功耗的影响,而磁通量子进出环路时在结中产生的窄电压脉冲也使其获得极高的频率。这种兼具超高工作速度和极低功耗的优点,使得该电路在超宽带宽模数/数模转换器(Analog‑to‑DigitalConverter,ADC)、超导计算机等应用上有显著的前景。[0004] SFQ电路的大规模设计主要受制于电子设计自动化工具(EDA)的性能,而当前商业和开源的EDA工具对SFQ设计的支持不足以满足SFQ电路的需求。由于当前的EDA工具主要是围绕CMOS电路开发,在一些关键的属性上难以完全支持SFQ电路的自动化设计,例如无法支持SFQ电路中常用的concurrent‑flow和counter‑flow结构的时钟树综合;此外由于SFQ电路的特殊性,布局优化和时钟树之间相互影响程度更大,单一的优化步骤很难发挥电路的最优性能。发明内容[0005] 本发明所要解决的技术问题是现有的EDA工具无法难以完全支持SFQ电路的自动化设计,且SFQ电路布局优化和时钟树之间相互影响程度较大,现有的优化方式难以发挥SFQ电路的最优性能。[0006] 为了解决上述技术问题,本发明提供了一种时钟树综合和布局混合优化方法,包括:[0007] 基于待优化电路的版图布局数据获取所述待优化电路中所有时钟端口的坐标位置,并基于所述待优化电路的电路网表获取所述待优化电路中所有时钟端口的逻辑深度;[0008] 基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点;[0009] 分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点,并依次连接所有所述主干节点形成时钟树主轨道;[0010] 基于每个所述逻辑深度组中所有时钟端口坐标位置分别计算对应所述逻辑深度组中的所有叶节点,并将所有所述叶节点与所述时钟树主轨道连接;[0011] 将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所述待优化电路版图内的所有逻辑门作为同级别的可移动单元,通过利用基于模拟退火算法的布局优化器对所有所述可移动单元进行迭代优化,得到优化电路。[0012] 优选地,基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组包括:[0013] 将所有时钟端口中逻辑深度相同的归为一组,并按逻辑深度从小到大的顺序依次排列得到多个逻辑深度组。[0014] 优选地,对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点包括:[0015] 分别将每个所述逻辑深度组内最上边的时钟端口位置坐标和最下边的时钟端口位置坐标的中点作为对应所述逻辑深度组的分割点。[0016] 优选地,分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点包括:[0017] 分别以每个所述逻辑深度组的分割点作为每个所述逻辑深度组的参考节点;[0018] 在每个所述参考节点的预设范围内查找对应所述逻辑深度组的主干节点,以使得所有相邻所述主干节点之间的高度差之和小于预设阈值。[0019] 优选地,基于单个所述逻辑深度组中的所有时钟端口坐标位置计算对应所述逻辑深度组中的所有叶节点包括:[0020] 所述逻辑深度组中的主干节点左右延伸直线将所述逻辑深度组分为上下两个半平面;[0021] 基于每个所述半平面内的所有时钟端口坐标位置以及预设扇出值计算出每个所述半平面内的所有叶节点。[0022] 优选地,将所有所述叶节点与所述时钟树主轨道连接包括:[0023] 将每个所述半平面内的所有叶节点基于所述预设扇出值连接成子时钟树;[0024] 将所有所述子时钟树的根节点与所述时钟树主轨道连接,以使得同一逻辑深度组中的两个子时钟树每一级节点均具有相同长度的时钟轨道。[0025] 优选地,所述模拟退火算法的优化目标为移动前后时钟树整体偏差值以及所述待优化电路中所有信号线线长的均值、所有信号线线长的方差、版图整体所占面积和走线密度之和的差值小于预设阈值[0026] 为了解决上述技术问题,本发明还提供了一种时钟树综合和布局混合优化装置,包括:数据获取模块、分割模块、主轨道形成模块、叶节点获取模块和优化模块。[0027] 所述数据获取模块,用于基于待优化电路的版图布局数据获取所述待优化电路中所有时钟端口的坐标位置,并基于所述待优化电路的电路网表获取所述待优化电路中所有时钟端口的逻辑深度;[0028] 所述分割模块,用于基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对每个所述逻辑深度组进行分割,得到每个所述逻辑深度组的分割点;[0029] 所述主轨道形成模块,用于分别以每个所述逻辑深度组的分割点作为参考节点计算每个所述逻辑深度组的主干节点,并依次连接所有所述主干节点形成时钟树主轨道;[0030] 所述叶节点获取模块,用于基于每个所述逻辑深度组中所有时钟端口坐标位置分别计算对应所述逻辑深度组中的所有叶节点,并将所有所述叶节点与所述时钟树主轨道连接;[0031] 所述优化模块,用于将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所述待优化电路版图内的所有逻辑门作为可移动单元,通过模拟退火算法对所有所述可移动单元进行优化,得到优化电路。[0032] 为了解决上述技术问题,本发明还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述时钟树综合和布局混合优化方法。[0033] 为了解决上述技术问题,本发明还提供了一种终端,包括:处理器及存储器;[0034] 所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如所述时钟树综合和布局混合优化方法。[0035] 与现有技术相比,上述方案中的一个或多个实施例可以具有如下优点或有益效果:[0036] 应用本发明实施例提供的时钟树综合和布局混合优化方法,主要通过将时钟树所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所有逻辑门均作为可移动单元,再通过模拟退火算法对所有可移动单元进行优化的方式,支持SFQ电路中concurrent‑flow时钟树和counter‑flow时钟树的构建,缩小了时钟树网络的体量,同时也满足时序收敛要求,更适用于SFQ电路的自动设计。进一步提升了超导集成电路电路,尤其是SFQ逻辑中的Bit‑Slice电路结构的时钟树性能和布局效果,为后续电路的布线优化提供了更优化的版图布局。[0037] 本发明的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明[0038] 附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。在附图中:[0039] 图1示出了本发明实施例一时钟树综合和布局混合优化方法的流程示意图;[0040] 图2示出了本发明实施例一时钟树综合和布局混合优化方法中时钟端口分组的实例图;[0041] 图3示出了本发明实施例一时钟树综合和布局混合优化方法中获取主干节点并形成时钟树主轨道的实例图;[0042] 图4示出了本发明实施例一时钟树综合和布局混合优化方法中获取叶节点并将其连接到主轨道上的实例图;[0043] 图5示出了本发明实施例一时钟树综合和布局混合优化方法中将所有主干节点和所有叶节点转化为虚拟单元的实例图;[0044] 图6示出了本发明实施例一时钟树综合和布局混合优化方法中利用模拟退火算法的流程示意图;[0045] 图7示出了本发明实施例一时钟树综合和布局混合优化方法获取优化后电路板图的示例图;[0046] 图8示出了本发明实施例二时钟树综合和布局混合优化装置的结构示意图;[0047] 图9示出了本发明实施例四终端的结构示意图。具体实施方式[0048] 以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。[0049] SFQ电路兼具超高工作速度和极低功耗的优点,使得该电路在超宽带宽模数/数模转换器(Analog‑to‑DigitalConverter,ADC)、超导计算机等应用上有显著的前景。然SFQ电路的大规模设计受制于电子设计自动化工具(EDA)的性能,而当前商业和开源的EDA工具对SFQ设计的支持不足以满足SFQ电路的需求。由于当前的EDA工具主要是围绕CMOS电路开发,在一些关键的属性上难以完全支持SFQ电路的自动化设计,例如无法支持SFQ电路中常用的concurrent‑flow和counter‑flow结构的时钟树综合;此外由于SFQ电路的特殊性,布局优化和时钟树之间相互影响程度更大,单一的优化步骤很难发挥电路的最优性能。[0050] 实施例一[0051] 为解决现有技术中存在的技术问题,本发明实施例提供了一种时钟树综合和布局混合优化方法。[0052] 图1示出了本发明实施例一时钟树综合和布局混合优化方法的流程示意图;参考图1所示,本发明实施例时钟树综合和布局混合优化方法包括如下步骤。[0053] 步骤S101,基于待优化电路的版图布局数据获取待优化电路中所有时钟端口的坐标位置,并基于待优化电路的电路网表获取待优化电路中所有时钟端口的逻辑深度。[0054] 具体地,获取待优化电路的版图布局数据和电路网表,根据待优化电路的版图布局数据可以计算出待优化电路中所有时钟端口的坐标位置,其中将连接时钟信号的逻辑门端口称之为时钟端口。通过对待优化电路的电路网表进行分析,可获取待优化电路的连接关系,而后基于电路连接关系可计算获取待优化电路中所有时钟端口的逻辑深度。[0055] 步骤S102,基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对所有逻辑深度组进行分割,得到每个逻辑深度组的分割点。[0056] 具体地,将所有时钟端口中逻辑深度相同的时钟端口中归为一组,得到多个逻辑深度的时钟端口组,而后将所有逻辑深度的时钟端口组以逻辑深度从小到大的顺序依次进行排列,得到多个逻辑深度组;即按逻辑深度次序排列后的时钟端口组即为逻辑深度组。图2示出了本发明实施例一时钟树综合和布局混合优化方法中时钟端口分组的实例图。而后按一定方式对所有逻辑深度组进行分割,获取逻辑深度组的分割点作为后续计算时钟树主干的参考节点。进一步地,逻辑深度组分割点的获取方式为:通常会以逻辑深度组内最上边的时钟端口位置坐标和最下边的时钟端口位置坐标的中点为基础进行设置。需要说明的是,本申请实施例还可将上述中点左右移动预设距离后的位置作为逻辑深度组的分割点,其中预设距离的大小可根据技术人员的经验来设置。[0057] 步骤S103,将每个逻辑深度组的分割点作为参考节点计算每个逻辑深度组的主干节点,并依次连接所有主干节点形成时钟树主轨道。[0058] 具体地,图3示出了本发明实施例一时钟树综合和布局混合优化方法中获取主干节点并形成时钟树主轨道的实例图;参考图3所示,在设置时钟树主轨道时,需保证时钟树主轨道的抖动最小,以使得该方法应用于SFQ电路时,SFQ电路工艺中远距离约瑟夫森传输线的版图设计,便于后续布线优化中的时序修复。进一步,在步骤S103获取每级逻辑深度组的分割点后,将以分割点为参考节点,根据参考节点周边的电路版图情况和前后级分割点的坐标,在该参考节点周围查找最合适的主干节点,使前后级节点的偏差最小,同时也保证该逻辑深度组上下两个半平面的偏差最小。更进一步地,逻辑深度组内主干节点的选取方式具体可为:在每个参考节点的预设范围内查找对应逻辑深度组的主干节点,以使得所有相邻逻辑深度组之间的主干节点高度差之和小于与预设阈值。其中预设范围为参考节点所属逻辑深度组的范围,预设阈值也可根据技术人员的经验来设置。[0059] 完成全部的主干节点查找后,然后完成全部主干节点的依次连接形成时钟树主轨道。且需要说明的是,每个逻辑深度组的主干节点左右延伸线将对应逻辑深度组分为上下两个半平面。[0060] 步骤S104,基于每个逻辑深度组中所有时钟端口坐标位置分别计算对应逻辑深度组中的所有叶节点,并将所有叶节点与时钟树主轨道连接。[0061] 具体地,首先需根据每个逻辑深度组的主干节点左右延伸线将对应逻辑深度组分为上下两个半平面。而后基于每个半平面内的所有时钟端口坐标位置及预设扇出值计算出每个半平面内的所有叶节点。图4示出了本发明实施例一时钟树综合和布局混合优化方法中获取叶节点并将其连接到主轨道上的实例图;参考图4所示,若预设扇出值为2时,以每两个时钟端口为一组对半平面内的所有时钟端口进行分组,得到多个时钟组,其中分组过程是以时钟树主轨道为依据由远及近进行的;然后获取每个时钟组的叶节点,即以时钟组内两个时钟端口的纵坐标中点为纵坐标,以两个时钟端口中较小的横坐标为参考点获取叶节点的横坐标(具体是以时钟组内两个时钟端口中较小的横坐标减去经验值来获取叶节点的横坐标);而后参考上述叶节点获取方式,对半平面内所有同级叶节点进行分组计算,得到上级叶节点,重复上述过程直到获取半平面内最高级别的叶节点为止,此时即获取了半平面内的所有叶节点。此时连接半平面内所有叶节点即可获取二叉树形式的子时钟树。而当扇出值改变时,即可获取其它形式的子时钟树。在次不再对其进行穷举,且其中叶节点的计算方式也可根据经验进行更改。[0062] 而后再基于先上下再左右的形式从左至右逐级对半平面内的所有叶节点进行连接,获取所有半平面的子时钟树。而后将所有子时钟树的根节点与时钟树主轨道连接,以使得同一逻辑深度组中两子时钟树的根节点具有相同长度的时钟轨道。需要说明的是,在实际连接过程中同一逻辑深度组中两子时钟树的根节点的时钟轨道难免会存在差异,此处取相近值即可认为两者长度相同。[0063] 步骤S105,将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和待优化电路版图内的所有逻辑门作为同级别的可移动单元,通过利用基于模拟退火算法的布局优化器对所有可移动单元进行迭代优化,得到优化电路。[0064] 图5示出了本发明实施例一时钟树综合和布局混合优化方法中将所有主干节点和所有叶节点转化为虚拟单元的实例图;参考图5所示,时钟树基本形状确立后,需要将全部时钟树节点(包含主干节点和叶节点)转化为虚拟单元。同时更新所有虚拟单元的连接关系,并将其汇入到电路网表中形成新的电路网表。需要说明的是,针对不同工艺的SFQ电路,其虚拟单元均设置为边长为单位长度的正方形或与最小布线单元同尺寸。[0065] 而后将所有虚拟单元和待优化电路版图内的所有逻辑门作为同级别的可移动单元,并利用基于模拟退火算法的布局优化器对所有可移动单元进行迭代优化,得到优化电路。图6示出了本发明实施例一时钟树综合和布局混合优化方法中利用模拟退火算法的流程示意图;参考图6所示,其中退火算法的优化目标主要为移动前后时钟树整体的偏差值以及待优化电路中所有信号线线长的均值、所有信号线线长的方差、版图整体所占面积和走线密度之和的差值小于预设阈值,即将时钟树整体的偏差值以及待优化电路中所有信号线线长的均值、所有信号线线长的方差、版图整体所占面积和走线密度之和作为模拟退火算法中的移动消耗。且模拟退火算法的初始参数包括温度、退火速率、粒子数及移动空间大小;模拟退火算法单次移动操作对象以预设概率进行选择。优选地,单次移动操作可以4/5的概率选择逻辑门单元进行随机移动操作,以1/5的概率选择时钟树节点进行随机移动操作,且随着温度的下降,选择的单元数和移动的范围都将逐渐减小,直到达到程序设定的运行上限或达到优化目标。图7示出了本发明实施例一时钟树综合和布局混合优化方法获取优化后电路板图的示例图。[0066] 整个退火过程流程为:设置初始参数包括设置温度、退火速率、粒子数及移动空间大小的初始值;而后基于初始参数生成初始解;而后基于4/5的概率选择逻辑门单元进行随机移动操作,以1/5的概率选择时钟树节点进行随机移动操作的方式单次移动操作对象;计算移动消耗,其中移动消耗等于待优化电路中所有信号线的均值、所有信号线的方差、版图整体所占面积以及走线密度之和;判断移动消耗变化值是否大于零,若大于则接受移动结果,否则按Metropolis准则接受移动结果;而后判断是否达到终止条件,若达到则输出最优解,否则降低温度、粒子数及移动空间大小,并重新选定单元进行随机移动操作。其中需对所有接收移动过程(包括接受移动结果和按Metropolis准则接受移动结果)进行存储。[0067] 完成布局和时钟树的混合优化后,程序将对优化结果进行分析,输出版图拥塞数据和时钟树偏移和时钟树抖动等数据,以及逻辑门单元的位置和时钟树节点的位置等信息,用于后续指导布线优化程序进行布线优化。[0068] 本发明实施例提供的时钟树综合和布局混合优化方法,主要通过将时钟树所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所有逻辑门均作为可移动单元,再通过模拟退火算法对所有可移动单元进行优化的方式,支持SFQ电路中concurrent‑flow时钟树和counter‑flow时钟树的构建,缩小了时钟树网络的体量,同时也满足时序收敛要求,更适用于SFQ电路的自动设计。进一步提升了超导集成电路电路,尤其是SFQ逻辑中的Bit‑Slice电路结构的时钟树性能和布局效果,为后续电路的布线优化提供了更优化的版图布局。[0069] 实施例二[0070] 为解决现有技术中存在的上述技术问题,本发明实施例还提供了一种时钟树综合和布局混合优化装置。[0071] 图8示出了本发明实施例二时钟树综合和布局混合优化装置的结构示意图;参考图8所示,本发明实施例时钟树综合和布局混合优化装置包括数据获取模块、分割模块、主轨道形成模块、叶节点获取模块和优化模块。[0072] 数据获取模块用于基于待优化电路的版图布局数据获取待优化电路中所有时钟端口的坐标位置,并基于待优化电路的电路网表获取待优化电路中所有时钟端口的逻辑深度;[0073] 分割模块用于基于所有时钟端口的逻辑深度对所有时钟端口进行分组,得到多个逻辑深度组,并对每个逻辑深度组进行分割,得到每个逻辑深度组的分割点;[0074] 主轨道形成模块用于分别以每个逻辑深度组的分割点作为参考节点计算每个逻辑深度组的主干节点,并依次连接所有主干节点形成时钟树主轨道;[0075] 叶节点获取模块用于基于每个逻辑深度组中所有时钟端口坐标位置分别计算对应逻辑深度组中的所有叶节点,并将所有叶节点与时钟树主轨道连接;[0076] 优化模块用于将所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所述待优化电路版图内的所有逻辑门作为同级别的可移动单元,通过利用基于模拟退火算法的布局优化器对所有可移动单元进行迭代优化,得到优化电路。[0077] 本发明实施例提供的时钟树综合和布局混合优化装置,主要通过将时钟树所有主干节点和所有叶节点转化为虚拟单元,并将所有虚拟单元和所有逻辑门均作为可移动单元,再通过模拟退火算法对所有可移动单元进行优化的方式,支持SFQ电路中concurrent‑flow时钟树和counter‑flow时钟树的构建,缩小了时钟树网络的体量,同时也满足时序收敛要求,更适用于SFQ电路的自动设计。进一步提升了超导集成电路电路,尤其是SFQ逻辑中的Bit‑Slice电路结构的时钟树性能和布局效果,为后续电路的布线优化提供了更优化的版图布局。[0078] 实施例三[0079] 为解决现有技术中存在的上述技术问题,本发明实施例还提供了一种存储介质,其存储有计算机程序,该计算机程序被处理器执行时可实现实施例一时钟树综合和布局混合优化方法中的所有步骤。[0080] 时钟树综合和布局混合优化方法的具体步骤以及应用本发明实施例提供的可读存储介质获取的有益效果均与实施例一相同,在此不在对其进行赘述。[0081] 需要说明的是:存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。[0082] 实施例四[0083] 为解决现有技术中存在的上述技术问题,本发明实施例还提供了一种终端。[0084] 图9示出了本发明实施例四终端的结构示意图,参照图9所示,本实施例终端包括相互连接的处理器及存储器;存储器用于存储计算机程序,处理器用于执行存储器存储的计算机程序,以使终端执行时可实现实施例一时钟树综合和布局混合优化方法中的所有步骤。[0085] 时钟树综合和布局混合优化方法的具体步骤以及应用本发明实施例提供的终端获取的有益效果均与实施例一相同,在此不在对其进行赘述。[0086] 需要说明的是,存储器可能包含随机存取存储器(RandomAccessMemory,简称RAM),也可能还包括非易失性存储器(non‑volatilememory),例如至少一个磁盘存储器。同理处理器也可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DigitalSignalProcessing,简称DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、现场可编程门阵列(FieldProgrammableGateArray,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。[0087] 虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的保护范围,仍须以所附的权利要求书所界定的范围为准。

专利地区:上海

专利申请日期:2021-09-17

专利公开日期:2024-06-18

专利公告号:CN113807043B


以上信息来自国家知识产权局,如信息有误请联系我方更正!
电话咨询
读内容
搜本页
回顶部