一种基于改进型结构算法构造时钟树的方法、装置及介质,包括,步骤1根据芯片参数以及设计约束,生成查找表;步骤2对查找表中每条线段的属性采样;步骤3拼接查找表中的线段,动态规划生成标准树;步骤4判断所述标准树是否符合约束,若符合则自顶向下聚类时钟树节点,向聚类中心移动标准树中的缓冲器,进入步骤5,否则回溯一层,减小宽度,返回步骤3;步骤5自底向上在分支节点对称地插入修正违例的缓冲器。本发明专利技术采用改进型结构算法优化总时延和时钟偏斜,使得运行时间下降,且适用于节点数多,结构复杂的芯片布局,且仅在建树失败时向底层回溯,使用更小宽度间隔建树,加快了建树速度。
【技术实现步骤摘要】
本专利技术的实施方式涉及时钟树领域,更具体地,本专利技术的实施方式涉及一种基于改进型结构算法构造时钟树的方法、装置及介质。
技术介绍
1、有上层结构的时钟树构建分为两个阶段,第一阶段需要根据用户输入的芯片布局、最大电容(capacitance)以及最大转换时间(transition time)等设计约束,生成低时钟偏斜且高鲁棒性的上层时钟网络拓扑结构,将大规模的、复杂的原始布局转化为多个更加简单且触发器更少的布局;第二阶段根据以第一阶段的拓扑结构为基础在子区域进行布线传统的时钟树构建。
2、第一阶段构建的时钟网络拓扑被称为时钟树的顶层结构,其中包含分支节点、缓冲器节点以及顶层结构的叶节点(tap point)。
3、现有技术可实现第一阶段功能的三种拓扑结构建立算法:
4、第一种是h形树结构。该种方法理论上可以保证时钟偏斜为零。但是这种拓扑结构绕线长度大,导致最大延迟大;并且受芯片布局影响较大,布线灵活性低。
5、第二种是鱼骨状树结构。该种方法相较于h形树结构线长更短,降低了最大延迟、功耗和面积,但由于到达距中心点位置不同的各组叶节点的距离不同,时钟偏斜无法等于0。
6、第三种是通用型h形树结构。该种方法结合了前两种结构,使h形树结构可以普遍应用于大部分叶节点分布较均匀的芯片布局中,延迟、功耗以及面积较h形结构而言更优,且时钟偏斜比鱼骨状结构更小。但是原论文中该方法构建耗时长、占用内存大,并且应用于实际中复杂的芯片布局时线长较长。
7、以上方案有如下缺点:p>8、h形树结构仅能二叉展开,鱼骨状结构仅有两层。面对复杂的芯片布局,前者绕线长度较长,导致功耗大、时延长;而后者同层分支节点多,导致时钟偏斜大。
9、通用型h形树结构平衡了前两者的时延和时钟偏斜,但是生成的查找表规模大,构建标准时钟树复杂度高,进而导致运行时间过长以及占用大量内存,难以运用于超大规模集成电路设计中。叶节点位置以及每一层的分支数量都是由算法自动生成,缺乏灵活性,且无法有效利用用户给定的信息进行启发式构建。未针对存在逻辑门的网表进行优化,若逻辑门的下游节点被划分在了顶层结构不同叶节点下,会影响功能的正确性。分支节点大于2时,tap point会出现在扇出数量大的网络中,导致时延增大。未根据芯片布局调整展开方式,仅能横向展开,在纵向布局中将导致层数增加,时钟偏斜更大。
技术实现思路
1、在本上下文中,本专利技术的实施方式期望提供一种基于改进型结构算法构造时钟树的方法、装置及介质。
2、在本专利技术实施方式的第一方面中,提供了一种基于改进型结构算法构造时钟树的方法,包括:
3、步骤1:根据芯片参数以及设计约束,生成查找表;
4、步骤2:对查找表中每条线段的属性采样;
5、步骤3:拼接查找表中的线段,动态规划生成标准树;
6、步骤4:判断所述标准树是否符合约束,若符合则自顶向下聚类时钟树节点,向聚类中心移动标准树中的缓冲器,进入步骤5,否则回溯一层,减小宽度,返回步骤3;
7、步骤5:自底向上在分支节点对称地插入修正违例的缓冲器。
8、在本实施方式的一个实施例中,提供步骤1:根据芯片参数以及设计约束,生成查找表包括:
9、根据芯片布局以及电容、转换率参数计算查找表的长度、输出电容和输入转换率的范围以及间隔;
10、为每一个[长度输出电容输入转换率]三元组对应的所有缓冲器插入方案计算延迟、面积、输入电容以及输出转换率,同时按照上一步计算得出的间隔对输入电容和输出转换率采样;
11、对每一个[长度输出电容输出转换率输入电容]四元组按照延迟删除较差线段。
12、在本实施方式的一个实施例中,提供所述拼接查找表中的线段,动态规划生成标准树,包括:
13、基于输入布局的长度与宽度确定时钟源与上层树根节点的连接方向;
14、按通用型h-tree算法先自底向上生成每一层的解决方案,而后自顶向下逐级构建起标准时钟树。
15、在本实施方式的一个实施例中,提供所述基于输入布局的长度与宽度确定时钟源与上层树根节点的连接方向,包括:
16、若输入布局的长度大于等于宽度,则上层树顶层的展开方向为横向展开,否则,上层树根节点的连接方向为纵向展开。
17、在本实施方式的一个实施例中,提供所述然后按通用型h-tree算法先自底向上生成每一层的解决方案,而后自顶向下逐级构建起标准时钟树,包括:
18、首先构造深度为p,动态规划时,宽度的范围为两倍查找表最小长度到芯片布局的宽度,宽度间隔为两倍查找表长度间隔,高度范围为指定最小高度至芯片布局的宽度,间隔为指定最小间隔;
19、对于每一[宽度高度],需要遍历所有[节点区域数量分支数]可能性,生成对应线段,剪枝后存储在方案容器内;
20、然后以深度p的方案为子树,构造深度为p-1的树,若无法构造出目标树,需要回溯至p深度,减小动态规划间隔后重新生成方案,直至深度达到设定上限。
21、在本实施方式的一个实施例中,一种基于改进型结构算法构造时钟树的方法还包括:通过对应的指令手动指定tap point的分布或者具体位置以及控制分支数量。
22、在本实施方式的一个实施例中,提供所述通过对应的指令手动指定tap point的分布或者具体位置以及控制分支数量,包括:
23、根据用户给定的{行,列}值得到tap point能满足r x c分布的分支数序列;
24、根据用户指定tap point最终的坐标是具体点还是坐标范围,确定tap point的坐标;
25、指定最低层的分支数量是否为2;
26、指定所有层的分支数量为2。
27、在本实施方式的一个实施例中,一种基于改进型结构算法构造时钟树的方法还包括:自顶向下通过聚类调整时钟树内部节点的位置。
28、在本实施方式的一个实施例中,提供所述自顶向下通过聚类调整时钟树内部节点的位置,包括:
29、当不同层间直连的缓冲器存在违反设计约束时,在中间合适位置的分支节点处对称插入修正违例的缓冲器;
30、当tap point直连了下一个tap point与自身聚类内的叶节点时,会拆分该扇出数量大的网络;
31、当tap point直连时钟树根节点时,将缓冲器插入于tap point与根节点之间的分支节点处。
32、在本专利技术实施方式的第二方面中,提供了一种基于改进型结构算法构造时钟树的装置,包括:
33、表格生成模块,用于根据芯片参数以及设计约束,生成查找表;
34、采样模块,用于对查找表中每条线段的属性采样;
35、动态规划模块,用于拼接查找表中的线段,动态规划生成标准树;
36、判断模块,用于判断所述标准树是否符合约束,若符合本文档来自技高网
...
【技术保护点】
1.一种基于改进型结构算法构造时钟树的方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述根据芯片参数以及设计约束,生成查找表,包括:
3.如权利要求1所述的方法,其特征在于,所述拼接查找表中的线段,动态规划生成标准树,包括:
4.如权利要求3所述的方法,其特征在于,所述基于输入布局的长度与宽度确定时钟源与上层树根节点的连接方向,包括:
5.如权利要求3所述的方法,其特征在于,所述然后按通用型H-tree算法先自底向上生成每一层的解决方案,而后自顶向下逐级构建起标准时钟树,包括:
6.如权利要求1所述的方法,其特征在于,还包括:通过对应的指令手动指定tap point的分布或者具体位置以及控制分支数量。
7.如权利要求1所述的方法,其特征在于,还包括:自顶向下通过聚类调整时钟树内部节点的位置。
8.如权利要求7所述的方法,其特征在于,所述自顶向下通过聚类调整时钟树内部节点的位置,包括:
9.一种基于改进型结构算法构造时钟树的装置,其特征在于,包括:
10.一种计算设备,所述计算设备包括:
11.一种计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1~8中的任一项所述的一种基于改进型结构算法构造时钟树的方法。
...
【技术特征摘要】
1.一种基于改进型结构算法构造时钟树的方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述根据芯片参数以及设计约束,生成查找表,包括:
3.如权利要求1所述的方法,其特征在于,所述拼接查找表中的线段,动态规划生成标准树,包括:
4.如权利要求3所述的方法,其特征在于,所述基于输入布局的长度与宽度确定时钟源与上层树根节点的连接方向,包括:
5.如权利要求3所述的方法,其特征在于,所述然后按通用型h-tree算法先自底向上生成每一层的解决方案,而后自顶向下逐级构建起标准时钟树,包括:
6.如权利要求1所述的方法,其特...
【专利技术属性】
技术研发人员:张昊阳,伍裕荣,王丰,
申请(专利权)人:上海立芯软件科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。