CN113792509B - 一种复位信号平衡方法和装置 - Google Patents

一种复位信号平衡方法和装置 Download PDF

Info

Publication number
CN113792509B
CN113792509B CN202111353524.5A CN202111353524A CN113792509B CN 113792509 B CN113792509 B CN 113792509B CN 202111353524 A CN202111353524 A CN 202111353524A CN 113792509 B CN113792509 B CN 113792509B
Authority
CN
China
Prior art keywords
processed
point
coordinates
calculation
points
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
CN202111353524.5A
Other languages
English (en)
Other versions
CN113792509A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202111353524.5A priority Critical patent/CN113792509B/zh
Publication of CN113792509A publication Critical patent/CN113792509A/zh
Application granted granted Critical
Publication of CN113792509B publication Critical patent/CN113792509B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开一种复位信号平衡方法,属于集成电路技术领域。在进行第n次迭代处理时执行以下步骤,其中,n由小到大依次取自然数:根据n的取值所对应的获得方式获得待处理点的坐标;若
Figure 484326DEST_PATH_IMAGE001
逻辑值为假,则获取计算区域;根据所述待处理点的坐标计算所述计算区域内公共点的坐标;根据所述公共点的坐标对所述计算区域内的所述待处理点进行复位信号平衡。通过本发明公开的方法,能够简化复位信号平衡路径计算流程;大幅减少缓冲器总数量,进而减少芯片面积,降低芯片功耗。

Description

一种复位信号平衡方法和装置
技术领域
本发明涉及集成电路技术领域,特别涉及一种复位信号平衡方法和装置。
背景技术
复位电路的设计是SoC(System on Chip,片上系统)设计中十分关键的环节。在芯片设计过程中,由于复位信号到达各个触发器所经历的路径不同,从而导致复位信号到达各个触发器的时间有所差异,无法保证所有触发器同时开始工作。在这种情况下,很可能造成芯片内部的逻辑状态混乱,无法满足芯片的设计功能。如图1所示,复位信号源(REST)到达触发器FF1,FF2,FF3和FF4的复位信号输入端的电路连接路径不同,就会造成复位信号延时。当复位信号不同步时,由于各触发器的输出还有后续逻辑运算,就可能造成在第一个触发器FF1复位并开始翻转的时刻,触发器FF2,FF3和FF4的复位操作仍然没有完成,其输出还处于不确定状态,导致逻辑状态紊乱。
通常,设计中采用在复位电路添加数量不等的缓冲器,用于平衡延时。具体做法是:在较短的信号路径上添加缓冲器,做出相应的延时补偿。以保证复位信号到达各个触发器的时间相同,从而使芯片内部的复位信号同步。
以图1所示的电路路径为例,其中,REST为复位信号源,FF1~FF4为触发器。按照上述方法解决信号不同步的问题,需要首先分析复位信号达到各触发器的路径长短,为:FF1<FF2<FF3<FF4;再进行复位信号平衡。具体步骤为:
1. 计算出复位信号到达触发器FF1、FF2、FF3 和FF4 的延时时间d1、d2、d3和d3;
2. 计算延时时间的差值t1,t2,t3分别为:
Figure 217369DEST_PATH_IMAGE001
3. 根据延时时间的差值t1,t2和t3,选择各个路径合适的缓冲器;
4. 在各个触发器路径上添加缓冲器,添加的缓冲器个数,由复位信号延时差值的大小以及选择缓冲器的特性决定,使得各个路径达到同步效果即可。如图2所示,在FF1路径上添加缓冲器b11和b12;在触发器FF2路径上添加缓冲器b2,在触发器FF3路径上添加缓冲器b3,最终达成复位信号同时到达各个触发器。
虽然,上述方法能够解决复位信号不同步的问题,但是当复位信号的扇出较大的时候,复位信号需要传递到大量的触发器。在这种情况下,再按照上述方法,需要分析的复位路径多,大大增加了计算的工作量。另外,上述方法中,各级路径都要添加一定数量、不同规格的缓冲器,使得复位电路变得越发复杂,同时带来因缓冲器增加太多而增加复位电路面积和功耗的问题。尤其是在超大规模集成电路芯片的设计中,芯片的模块更多,触发器数量更多,电路逻辑更复杂,上述方法的缺点将会更加突出。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种复位信号平衡方法和装置,以克服现有技术在处理集成电路复位信号平衡的过程中,需要分析的复位路径多,工作量大;缓冲器添加的数量多,使得集成电路面积增大,功耗增加的问题。
为了解决上述的一个或多个技术问题,本发明采用的技术方案如下:
第一方面,提供一种复位信号平衡方法,应用于集成电路,在进行第n次迭代处理时执行以下步骤,其中,n由小到大依次取自然数:
根据n的取值所对应的获得方式获得待处理点的坐标;
若逻辑值为假,则
获取计算区域;
根据待处理点的坐标计算上述计算区域内公共点的坐标;
根据上述公共点的坐标对该计算区域内的待处理点进行复位信号平衡;
其中A为待处理集成电路的面积,b的取值由待处理集成电路中的复位触发器的平均宽度Wcell、待处理集成电路中的复位触发器的平均高度Hcell、待处理集成电路中的复位触发器的最大扇出数N以及第1次迭代时正方形格子内出现N个触发器的概率P共同确定。
进一步地,一种复位信号平衡方法还包括:
Figure 528264DEST_PATH_IMAGE002
逻辑值为真,则
根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡。
进一步地,在进行第1次迭代处理之前还包括:
获取待处理集成电路版图;
以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系。
进一步地,根据n的取值所对应的获得方式获得待处理点的坐标,包括:
当n等于1时,待处理点的坐标通过以下方式获得:
获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标;
当n大于1时,待处理点的坐标通过以下方式获得:
将第n-1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标作为第n次迭代处理时的待处理点的坐标。
进一步地,上述计算区域通过以下方式确定:
以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域,逐一判断上述若干区域内待处理点的数量是否大于1,若否,则将该区域标记为非计算区域,若是,则将该区域标记为计算区域。
进一步地,根据待处理点的坐标计算上述计算区域内公共点的坐标包括:
在上述计算区域内,根据待处理点的坐标计算任意一点到该计算区域内所有待处理点的曼哈顿距离之和;
将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标。
进一步地,根据公共点的坐标对上述计算区域内的待处理点进行复位信号平衡包括:
在上述计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到上述计算区域内所有待处理点的曼哈顿距离;
选取具有最长曼哈顿距离的待处理点作为参考点;
在公共点到除参考点以外的待处理点的路径上添加缓冲器。
进一步地,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡包括:
在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
选取具有最长曼哈顿距离的待处理点作为参考点;
在原点到除参考点以外的待处理点的路径上添加缓冲器。
第二方面,提供一种复位信号平衡装置,包括:
版图获取模块,用于获取待处理集成电路版图;
坐标系建立模块,用于以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系;
复位端口标记模块,用于获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标;
坐标获取模块,用于获取待处理点的坐标;
第一判断模块,用于判断
Figure 657894DEST_PATH_IMAGE002
的逻辑值;
区域划分模块,用于当
Figure 3425DEST_PATH_IMAGE002
的逻辑值为假时,以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域;第二判断模块,用于逐一判断计算区域内待处理点的数量是否大于1;
公共点计算模块,用于计算上述计算区域内公共点的坐标;
第一复位信号平衡模块,用于当
Figure 357046DEST_PATH_IMAGE002
逻辑值为假时,根据公共点的坐标和待处理点的坐标,对计算区域内的待处理点进行复位信号平衡;
第二复位信号平衡模块,用于当
Figure 420817DEST_PATH_IMAGE002
逻辑值为真时,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡。
进一步地,上述公共点计算模块包括:
计算子模块,用于在计算区域内,根据待处理点的坐标计算任意一点到该计算区域内所有待处理点的曼哈顿距离之和;
筛选子模块,将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标;
上述第一复位信号平衡模块包括:
第一距离计算子模块,用于在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到该计算区域内所有待处理点的曼哈顿距离;
第一参考点选取子模块,用于在计算区域内,选取具有最长曼哈顿距离的待处理点作为参考点;
第一缓冲器添加子模块,用于在计算区域内,在公共点到除参考点以外的待处理点的路径上添加缓冲器;
上述第二复位信号平衡模块包括:
第二距离计算子模块,用于在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
第二参考点选取子模块,用于在芯片面积范围内,选取具有最长曼哈顿距离的待处理点作为参考点;
第二缓冲器添加子模块,用于在芯片面积范围内,在原点到除参考点以外的待处理点的路径上添加缓冲器。
本发明实施例提供的技术方案带来的有益效果是:
1. 本发明公开的一种复位信号平衡方法,采用迭代算法,简化了从复位信号源到各个触发器复位端口的路径计算流程;
2. 找出公共点,在公共点的路径上添加缓冲器,其作用是:将与该公共点相关联支路上,延时效果相同的缓冲器合并到公共点路径上,起到大幅减少缓冲器总数量的效果;
3. 大幅减少添加的缓冲器数量,使得芯片面积得以减少,芯片功耗得以降低。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。附图中的圆点、五角星标记仅用于举例示意点所在位置,不表示面积大小。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种复位信号源到不同触发器的路径示意图;
图2是本发明实施例提供的一种平衡不同触发器间复位信号的方法示意图;
图3是本发明实施例提供的一种复位信号平衡方法的流程示意图;
图4是本发明实施例提供的一种复位信号平衡方法进行第1次迭代处理的流程示意图;
图5是本发明实施例提供的一种复位信号平衡方法中建立直角坐标系的流程示意图;
图6是本发明实施例提供的以复位信号输入端口为原点,建立直角坐标系后,标记出各个触发器复位端口坐标的示意图;
图7是本发明实施例提供的以原点为起点,边长为b的正方形划分待处理集成电路为若干个计算区域的示意图;
图8是本发明实施例提供的根据待处理点的坐标计算每个计算区域内公共点的坐标的流程示意图;
图9是本发明实施例提供的公共点的示意图;
图10是本发明实施例提供的根据公共点的坐标对计算区域内的待处理点进行复位信号平衡的流程示意图;
图11是本发明实施例提供的一种复位信号平衡方法,进行第2次迭代处理时获取的待处理点的示意图;
图12是本发明实施例提供的一种复位信号平衡方法,进行第2次迭代处理时待处理集成电路的芯片划分示意图;
图13是本发明实施例提供的一种复位信号平衡方法,在进行最后一次迭代处理时的复位信号平衡示意图;
图14是本发明实施例提供的一种复位信号平衡装置的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。说明书附图中的编号,仅表示对各个功能部件或模块的区分,不表示部件或模块之间的逻辑关系。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
下面,将参照附图详细描述根据本公开的各个实施例。需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
现有技术中,对集成电路做复位信号平衡时,通常采用的步骤可以概括为:(1)计算各个路径的延时时间;(2)计算延时时间差;(3)根据延时时间选择缓冲器;(4)在各个路径上添加缓冲器。上述方法在处理复位信号扇出较大的集成电路复位信号平衡时,将带来计算量大、添加的缓冲器数量多、芯片整体的面积和功耗增大等问题。尤其在超大规模集成电路芯片的设计中,上述方法的问题将被放大,缺点更加明显。为解决现有技术的问题,本发明实施例公开一种复位信号平衡方法和装置,具体的技术方案如下:
在一个实施例中,一种复位信号平衡方法,应用于集成电路,如图3所示,在进行第n次迭代处理时执行以下步骤,其中,n由小到大依次取自然数:
步骤S1:根据n的取值所对应的获得方式获得待处理点的坐标;
步骤S2:判断
Figure 150876DEST_PATH_IMAGE002
的逻辑值;
步骤S3:若
Figure 350913DEST_PATH_IMAGE002
的逻辑值为假,则获取计算区域;
步骤S3':若
Figure 78697DEST_PATH_IMAGE002
的逻辑值为真,则根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡;
步骤S4:根据待处理点的坐标计算上述计算区域内公共点的坐标;
步骤S5:根据上述公共点的坐标对计算区域内的待处理点进行复位信号平衡。
在进行第1次迭代处理时执行以下步骤,如图4所示:
步骤S0:建立直角坐标系;
步骤S1:根据n的取值所对应的获得方式获得待处理点的坐标;
步骤S2:判断
Figure 364185DEST_PATH_IMAGE002
的逻辑值;
步骤S3:若
Figure 897935DEST_PATH_IMAGE002
的逻辑值为假,则获取计算区域;
步骤S4:根据待处理点的坐标计算上述计算区域内公共点的坐标;
步骤S5:根据上述公共点的坐标对计算区域内的待处理点进行复位信号平衡。
步骤S0:建立直角坐标系,是采用本方案对复位电路进行设计的起点。
如图5所示,步骤S0具体包括:
步骤S01:获取待处理集成电路的版图;
所获取的版图可以是整个集成电路的版图。此时,将针对整个集成电路进行复位信号平衡设计。也可以根据实际需要,获取集成电路中某一模块的版图。此时,将根据设计的具体需要,针对该模块进行复位信号平衡设计。
步骤S02:以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系。
待处理集成电路含有一个复位信号源,对应到获取的版图上,存在一个复位信号输入端口,建立直角坐标系时,在获取的集成电路版图上,以此复位信号输入端口为原点,横、纵坐标轴分别平行于该集成电路版图的宽边和高边,建立直角坐标系。
步骤S1:根据n的取值所对应的获得方式获得待处理点的坐标。
此时n=1。
待处理点由以下方法确定:获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标。
待处理集成电路含有若干个触发器,对应到获取的版图上,存在若干个触发器复位端口。在已建立的直角坐标系下,标记出各个触发器复位端口的坐标,如图6所示。将标记出的触发器复位端口的坐标作为第1次迭代处理的待处理点的坐标。
步骤S2:判断
Figure 686899DEST_PATH_IMAGE003
的逻辑值;
上述参数b由公式计算得到:
Figure 913481DEST_PATH_IMAGE004
其中,Wcell表示待处理集成电路中选用的不同类型的复位触发器的平均宽度;
Hcell表示待处理集成电路中选用的不同类型的复位触发器的平均高度;
N为复位触发器的最大扇出数;
P为在上述计算区域内出现N个触发器的概率,P值的选择根据芯片内具有复位功能的单元摆放的U值确定,U值由公式计算得到:
Figure 686265DEST_PATH_IMAGE005
其中SR表示寄存器cell所占的总面积,A表示芯片的面积。
当U值在0~30%时,P值取30%;
当U值在30~60%时,P值取50%;
当U值在60~90%时,P值取70%;
当U值在90~100%时,P值取90%。
步骤S3:若
Figure 695809DEST_PATH_IMAGE006
的逻辑值为假,则获取计算区域;
Figure 136018DEST_PATH_IMAGE002
逻辑值为假,表示需要继续进行迭代处理,通过以下步骤确定计算区域:
步骤S31:以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域;
b即为进行第1次迭代计算时,正方形格子的边长。
如图7所示,以直角坐标系的原点为起点,沿纵、横坐标轴密排列,覆盖芯片版图区域的,边长为b 的正方形,将获取的待处理集成电路的版图划分若干区域。
此处,对划分的规则进行详细阐述:
若版图的宽边或高边不能被正方形格子的边长整除,则以正方形格子覆盖芯片版图后,版图外围不能被正方形格子的边长整除的部分,以实际区域进行后续计算;
若触发器复位端口的坐标正好位于某个正方形格子的上边框或左边框,则认为该待处理点属于上述正方形格子,参与该正方形格子的相关计算。
经过步骤S31,每一个触发器复位端口都对应了直角坐标系内的一个坐标,具备了对其进行进一步计算的条件。同时,上述边长为b的正方形格子内可能出现三种待处理点的分布情况:
第一种情况:在正方形格子内,无待处理点分布;
第二种情况:在正方形格子内,有一个待处理点;
第三种情况:在正方形格子内,有大于一个待处理点。
步骤S32:逐一判断上述若干区域内待处理点的数量是否大于1;
步骤S33:若是,则将该区域标记为计算区域;
步骤S33':若否,则将该区域标记为非计算区域。
步骤S4:根据待处理点的坐标计算每个计算区域内公共点的坐标;
在每一个计算区域内都存在一个公共点,该公共点满足:在该计算区域内,到各个待处理点之间曼哈顿距离之和最小。
在一个实施例中,如图8所示,步骤S4具体包括:
步骤S41:在计算区域内,根据待处理点的坐标计算任意一点到计算区域内所有待处理点的曼哈顿距离之和;
以计算区域内任意一点C(x, y)作为起始点,用以下公式计算该点到该计算区域内所有待处理点的曼哈顿距离之和;
Figure 2343DEST_PATH_IMAGE007
其中,m为该计算区域内所有的待处理点的数量;
以s为步长,沿纵、横坐标轴方向,遍历计算区域内每一个点,得到计算区域内任意一点到所有待处理点的曼哈顿距离之和;
其中步长s可以任意设置,s值越小,得到的公共点坐标越精确,但是计算每个计算区域所消耗的计算越长;
反之s值越大,得到的公共点坐标精确度降低,但是计算每个计算区域所消耗的计算缩短;
通常情况下,以待处理集成电路最小线宽的正整数倍作为步长s。在实际计算中,可以根据计算精度和计算效率折衷选择步长s。
步骤S42:将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标。以图7中灰色计算区域为例,得到公共点如图9所示。
步骤S5:根据公共点的坐标对计算区域内的待处理点进行复位信号平衡。
在一个实施例中,如图10所示,步骤S4具体包括:
步骤S51:在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
步骤S52:选取具有最长曼哈顿距离的待处理点作为参考点;
步骤S53:在公共点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
在进行第n次迭代处理时执行以下步骤,其中n大于1。
步骤S1:根据n的取值所对应的获得方式获得待处理点的坐标;
此时n>1。
待处理点通过以下方式确定:
将第n-1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标作为第n次迭代处理时的待处理点的坐标。图11示出了n=2时,即第2次迭代处理时所获取的待处理点的坐标,为第1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标。
步骤S2:若
Figure 465685DEST_PATH_IMAGE002
逻辑值为假
步骤S3:若
Figure 75658DEST_PATH_IMAGE002
的逻辑值为假,则获取计算区域;
Figure 370373DEST_PATH_IMAGE002
逻辑值为假,表示需要继续进行迭代处理,通过以下步骤确定计算区域:
步骤S31:以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域;
步骤S33:若是,则将该区域标记为计算区域;
步骤S33':若否,则将该区域标记为非计算区域。
步骤S4:根据待处理点的坐标计算每个计算区域内公共点的坐标;
在每一个计算区域内都存在一个公共点,该公共点满足:在该计算区域内,到各个待处理点之间曼哈顿距离之和最小。
在一个实施例中,如图8所示,步骤S4具体包括:
步骤S41:在计算区域内,根据待处理点的坐标计算任意一点到计算区域内所有待处理点的曼哈顿距离之和;
以计算区域内任意一点C(x, y)作为起始点,用以下公式计算该点到该计算区域内所有待处理点的曼哈顿距离之和;
Figure 404670DEST_PATH_IMAGE008
其中,m为该计算区域内所有的待处理点的数量;
以s为步长,沿纵、横坐标轴方向,遍历计算区域内每一个点,得到计算区域内任意一点到所有待处理点的曼哈顿距离之和;
其中步长s可以任意设置,s值越小,得到的公共点坐标越精确,但是计算每个计算区域所消耗的计算越长;
反之s值越大,得到的公共点坐标精确度降低,但是计算每个计算区域所消耗的计算缩短;
通常情况下,以待处理集成电路最小线宽的正整数倍作为步长s。在实际计算中,可以根据计算精度和计算效率折衷选择步长s。
步骤S42:将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标。以图7中灰色计算区域为例,得到公共点如图9所示。
步骤S5:根据公共点的坐标对计算区域内的待处理点进行复位信号平衡。
在一个实施例中,如图10所示,步骤S5具体包括:
步骤S51:在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
步骤S52:选取具有最长曼哈顿距离的待处理点作为参考点;
步骤S53:在公共点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
Figure 152046DEST_PATH_IMAGE002
逻辑值为真,表示本次迭代处理为最后一次迭代处理,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡,包括:
S31":在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
S32":选取具有最长曼哈顿距离的待处理点作为参考点;
S33":在原点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
图13示出,当
Figure 565710DEST_PATH_IMAGE002
的逻辑值为真时,进行最后一次迭代处理时的情况:该集成电路芯片面积作为计算区域,将第n-1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标作为第n次迭代处理时的待处理点的坐标。
在另一个实施例中,如图14所示,一种复位信号平衡装置,包括:
版图获取模块01,用于获取待处理集成电路版图;
坐标系建立模块02,用于以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系;
复位端口标记模块03,用于获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标;
坐标获取模块10,用于获取待处理点的坐标;
第一判断模块20,用于判断
Figure 652614DEST_PATH_IMAGE002
的逻辑值;
区域划分模块30,用于当
Figure 126321DEST_PATH_IMAGE002
的逻辑值为假时,以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域;
第二判断模块40,用于逐一判断计算区域内待处理点的数量是否大于1;
公共点计算模块50,用于计算上述计算区域内公共点的坐标;
第一复位信号平衡模块60,用于当
Figure 95414DEST_PATH_IMAGE002
逻辑值为假时,根据公共点的坐标和待处理点的坐标,对计算区域内的待处理点进行复位信号平衡;
第二复位信号平衡模块70,用于当
Figure 47189DEST_PATH_IMAGE002
逻辑值为真时,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡。
在另一个是实施例中,区域划分模块包括:
尺寸子模块,用于确定待处理集成电路中复位触发器的平均宽度Wcell和平均高度Hcell
统计子模块,用于确定待处理集成电路中复位触发器的最大扇出数N;
概率子模块,用于确定第1次迭代处理时,划分芯片的正方形格子内出现N个触发器的概率P。
在另一个实施例中,公共点计算模块包括:
计算子模块,用于在计算区域内,根据待处理点的坐标计算任意一点到该计算区域内所有待处理点的曼哈顿距离之和;
筛选子模块,将曼哈顿距离之和最小的点的坐标作为计算区域内的公共点的坐标。
在另一个实施例中,第一复位信号平衡模块包括:
第一距离计算子模块,用于在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
第一参考点选取子模块,用于在计算区域内,选取具有最长曼哈顿距离的待处理点作为参考点;
第一缓冲器添加子模块,用于在计算区域内,在公共点到除参考点以外的待处理点的路径上添加缓冲器。
在另一个实施例中,第二复位信号平衡模块包括:
第二距离计算子模块,用于在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
第二参考点选取子模块,用于在芯片面积范围内,选取具有最长曼哈顿距离的待处理点作为参考点;
第二缓冲器添加子模块,用于在芯片面积范围内,在原点到除参考点以外的待处理点的路径上添加缓冲器。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
实施例一
下面将结合图3~图13具体阐述本发明的一个实施例
执行一种复位信号平衡方法,首先获取待处理集成电路的版图,以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系,获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标。
承接上一步骤,获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标。
待处理集成电路含有若干个触发器,对应到获取的版图上,存在若干个触发器复位端口。在已建立的直角坐标系下,标记出各个触发器复位端口的坐标,将标记出的触发器复位端口的坐标作为第1次迭代处理的待处理点的坐标。
承接上一步骤,判断
Figure 316497DEST_PATH_IMAGE009
的逻辑值;
上述参数b由公式计算得到:
Figure 961105DEST_PATH_IMAGE010
其中,Wcell表示待处理集成电路中选用的不同类型的复位触发器的平均宽度;
Hcell表示待处理集成电路中选用的不同类型的复位触发器的平均高度;
N为复位触发器的最大扇出数;
P为在上述计算区域内出现N个触发器的概率,P值的选择根据芯片内具有复位功能的单元摆放的U值确定,U值由公式计算得到:
Figure 620756DEST_PATH_IMAGE011
其中SR表示寄存器cell所占的总面积,A表示芯片的面积。
当U值在0~30%时,P值取30%;
当U值在30~60%时,P值取50%;
当U值在60~90%时,P值取70%;
当U值在90~100%时,P值取90%。
Figure 376223DEST_PATH_IMAGE012
的逻辑值为假,表示需要继续进行迭代处理,通过以下步骤确定计算区域:
承接上一步骤,以直角坐标系的原点为起点,边长为b的正方形格子将待处理集成电路划分为若干区域;
b即为进行第1次迭代计算时,正方形格子的边长。
以直角坐标系的原点为起点,沿纵、横坐标轴密排列,覆盖芯片版图区域的,边长为b 的正方形,将获取的待处理集成电路的版图划分若干区域。
此处,对划分的规则进行详细阐述:
若版图的宽边或高边不能被正方形格子的边长整除,则以正方形格子覆盖芯片版图后,版图外围不能被正方形格子的边长整除的部分,以实际区域进行后续计算;
若触发器复位端口的坐标正好位于某个正方形格子的上边框或左边框,则认为该待处理点属于上述正方形格子,参与该正方形格子的相关计算。
每一个触发器复位端口都对应了直角坐标系内的一个坐标,具备了对其进行进一步计算的条件。同时,上述边长为b的正方形格子内可能出现三种待处理点的分布情况:
第一种情况:在正方形格子内,无待处理点分布;
第二种情况:在正方形格子内,有一个待处理点;
第三种情况:在正方形格子内,有大于一个待处理点。
承接上一步骤,逐一判断上述若干区域内待处理点的数量是否大于1;
若是,则将该区域标记为计算区域;
若否,则将该区域标记为非计算区域。
承接上一步骤,根据待处理点的坐标计算每个计算区域内公共点的坐标;
在每一个计算区域内都存在一个公共点,该公共点满足:在该计算区域内,到各个待处理点之间曼哈顿距离之和最小。具体包括:
在计算区域内,根据待处理点的坐标计算任意一点到计算区域内所有待处理点的曼哈顿距离之和;
以计算区域内任意一点C(x, y)作为起始点,用以下公式计算该点到该计算区域内所有待处理点的曼哈顿距离之和;
Figure 234457DEST_PATH_IMAGE013
其中,m为该计算区域内所有的待处理点的数量;
以s为步长,沿纵、横坐标轴方向,遍历计算区域内每一个点,得到计算区域内任意一点到所有待处理点的曼哈顿距离之和;
其中步长s可以任意设置,s值越小,得到的公共点坐标越精确,但是计算每个计算区域所消耗的计算越长;
反之s值越大,得到的公共点坐标精确度降低,但是计算每个计算区域所消耗的计算缩短;
通常情况下,以待处理集成电路最小线宽的正整数倍作为步长s。在实际计算中,可以根据计算精度和计算效率折衷选择步长s。
承接上一步骤,将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标。
承接上一步骤,根据公共点的坐标对计算区域内的待处理点进行复位信号平衡,具体包括:
在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
承接上一步骤,选取具有最长曼哈顿距离的待处理点作为参考点;
承接上一步骤,在公共点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
即完成第1次迭代处理过程。
在进行第2次迭代处理时执行以下步骤。
待处理点通过以下方式确定:
将第1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标作为第2次迭代处理时的待处理点的坐标。
承接上一步骤,若
Figure 49966DEST_PATH_IMAGE014
逻辑值为假,则通过以下步骤确定计算区域:
以直角坐标系的原点为起点,边长为2b的正方形格子将待处理集成电路划分为若干区域;
若是,则将该区域标记为计算区域;
若否,则将该区域标记为非计算区域。
承接上一步骤,根据待处理点的坐标计算每个计算区域内公共点的坐标;
在每一个计算区域内都存在一个公共点,该公共点满足:在该计算区域内,到各个待处理点之间曼哈顿距离之和最小,具体包括:
在计算区域内,根据待处理点的坐标计算任意一点到计算区域内所有待处理点的曼哈顿距离之和;
以计算区域内任意一点C(x, y)作为起始点,用以下公式计算该点到该计算区域内所有待处理点的曼哈顿距离之和;
Figure 993652DEST_PATH_IMAGE015
其中,m为该计算区域内所有的待处理点的数量;
以s为步长,沿纵、横坐标轴方向,遍历计算区域内每一个点,得到计算区域内任意一点到所有待处理点的曼哈顿距离之和;
其中步长s可以任意设置,s值越小,得到的公共点坐标越精确,但是计算每个计算区域所消耗的计算越长;
反之s值越大,得到的公共点坐标精确度降低,但是计算每个计算区域所消耗的计算缩短;
通常情况下,以待处理集成电路最小线宽的正整数倍作为步长s。在实际计算中,可以根据计算精度和计算效率折衷选择步长s。
承接上一步骤,将曼哈顿距离之和最小的点的坐标作为该计算区域内的公共点的坐标。
承接上一步骤,根据公共点的坐标对计算区域内的待处理点进行复位信号平衡,具体包括:
在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
承接上一步骤,选取具有最长曼哈顿距离的待处理点作为参考点;
承接上一步骤,在公共点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
即完成第2次迭代处理过程。
若在第x次完成迭代处理过程。
x>1。
将第x-1次迭代处理时的所有非计算区域内的待处理点的坐标和所有计算区域内的公共点的坐标作为第x次迭代处理时的待处理点的坐标。
Figure 756071DEST_PATH_IMAGE002
逻辑值为真,表示本次迭代处理为最后一次迭代处理,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡,包括:
在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
选取具有最长曼哈顿距离的待处理点作为参考点;
在原点到除参考点以外的待处理点的路径上添加缓冲器。其中,所添加的缓冲器的特性由该点和参考点到公共点的曼哈顿距离之差确定。
即完成全部迭代处理过程。
实施例二
下面将结合图14具体阐述本发明的另一个实施例,一种复位信号平衡装置,包括:
版图获取模块01,用于获取待处理集成电路版图;
坐标系建立模块02,用于以待处理集成电路的复位信号输入端口位置为原点建立直角坐标系;
复位端口标记模块03,用于获取待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标;
坐标获取模块10,用于获取待处理点的坐标;
第一判断模块20,用于判断
Figure 468812DEST_PATH_IMAGE002
的逻辑值;
区域划分模块30,用于当
Figure 455223DEST_PATH_IMAGE002
的逻辑值为假时,以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将待处理集成电路划分为若干区域;
第二判断模块40,用于逐一判断计算区域内待处理点的数量是否大于1;
公共点计算模块50,用于计算上述计算区域内公共点的坐标;
第一复位信号平衡模块60,用于当
Figure 886204DEST_PATH_IMAGE002
逻辑值为假时,根据公共点的坐标和待处理点的坐标,对计算区域内的待处理点进行复位信号平衡;
第二复位信号平衡模块70,用于当
Figure 983473DEST_PATH_IMAGE002
逻辑值为真时,根据待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡。
在另一个是实施例中,区域划分模块包括:
尺寸子模块,用于确定待处理集成电路中复位触发器的平均宽度Wcell和平均高度Hcell
统计子模块,用于确定待处理集成电路中复位触发器的最大扇出数N;
概率子模块,用于确定第1次迭代处理时,划分芯片的正方形格子内出现N个触发器的概率P。
在另一个实施例中,公共点计算模块包括:
计算子模块,用于在计算区域内,根据待处理点的坐标计算任意一点到该计算区域内所有待处理点的曼哈顿距离之和;
筛选子模块,将曼哈顿距离之和最小的点的坐标作为计算区域内的公共点的坐标。
在另一个实施例中,第一复位信号平衡模块包括:
第一距离计算子模块,用于在计算区域内,根据公共点的坐标和待处理点的坐标,计算公共点到计算区域内所有待处理点的曼哈顿距离;
第一参考点选取子模块,用于在计算区域内,选取具有最长曼哈顿距离的待处理点作为参考点;
第一缓冲器添加子模块,用于在计算区域内,在公共点到除参考点以外的待处理点的路径上添加缓冲器。
在另一个实施例中,第二复位信号平衡模块包括:
第二距离计算子模块,用于在芯片面积范围内,根据待处理点的坐标计算原点到各个待处理点的曼哈顿距离;
第二参考点选取子模块,用于在芯片面积范围内,选取具有最长曼哈顿距离的待处理点作为参考点;
第二缓冲器添加子模块,用于在芯片面积范围内,在原点到除参考点以外的待处理点的路径上添加缓冲器。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括装载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储器被安装,或者从ROM 被安装。在该计算机程序被外部处理器执行时,执行本申请的实施例的方法中限定的上述功能。
需要说明的是,本申请的实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(Radio Frequency, 射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:响应于检测到终端的外设模式未激活时,获取终端上应用的帧率;在帧率满足息屏条件时,判断用户是否正在获取终端的屏幕信息;响应于判断结果为用户未获取终端的屏幕信息,控制屏幕进入立即暗淡模式。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的实施例的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java,Smalltalk, C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种复位信号平衡方法,应用于集成电路,其特征在于,在进行第n次迭代处理时执行以下步骤,其中,n由小到大依次取自然数:
根据n的取值所对应的获得方式获得待处理点的坐标;
Figure 560949DEST_PATH_IMAGE001
逻辑值为假,则
获取计算区域;
根据所述待处理点的坐标计算所述计算区域内公共点的坐标;
根据所述公共点的坐标对所述计算区域内的所述待处理点进行复位信号平衡;
其中A为待处理集成电路的面积,b的取值由所述待处理集成电路中的复位触发器的平均宽度Wcell、所述待处理集成电路中的复位触发器的平均高度Hcell、所述待处理集成电路中的复位触发器的最大扇出数N以及第1次迭代时正方形格子内出现N个触发器的概率P共同确定。
2.根据权利要求1所述的一种复位信号平衡方法,其特征在于,所述复位信号平衡方法还包括:
Figure 359141DEST_PATH_IMAGE001
逻辑值为真,则
根据所述待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡。
3.根据权利要求1或2所述的一种复位信号平衡方法,其特征在于,在进行第1次迭代处理之前还包括:
获取待处理集成电路版图;
以所述待处理集成电路的复位信号输入端口位置为原点建立直角坐标系。
4.根据权利要求3所述的一种复位信号平衡方法,其特征在于,所述根据n的取值所对应的获得方式获得待处理点的坐标,包括:
当n等于1时,待处理点的坐标通过以下方式获得:
获取所述待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的所述待处理点的坐标;
当n大于1时,待处理点的坐标通过以下方式获得:
将第n-1次迭代处理时的所有非计算区域内的所述待处理点的坐标和所有计算区域内的所述公共点的坐标作为第n次迭代处理时的待处理点的坐标。
5.根据权利要求3所述的一种复位信号平衡方法,其特征在于,所述计算区域通过以下方式确定:
以所述直角坐标系的原点为起点,边长为2n-1·b的正方形格子将所述待处理集成电路划分为若干区域,逐一判断所述若干区域内待处理点的数量是否大于1,若否,则将所述区域标记为非计算区域,若是,则将所述区域标记为计算区域。
6.根据权利要求3所述的一种复位信号平衡方法,其特征在于,所述根据所述待处理点的坐标计算所述计算区域内公共点的坐标包括:
在所述计算区域内,根据所述待处理点的坐标计算任意一点到所述计算区域内所有待处理点的曼哈顿距离之和;
将所述曼哈顿距离之和最小的点的坐标作为所述计算区域内的公共点的坐标。
7.根据权利要求3所述的一种复位信号平衡方法,其特征在于,所述根据所述公共点的坐标对所述计算区域内的所述待处理点进行复位信号平衡包括:
在所述计算区域内,根据所述公共点的坐标和所述待处理点的坐标,计算所述公共点到所述计算区域内所有待处理点的曼哈顿距离;
选取具有最长曼哈顿距离的待处理点作为参考点;
在所述公共点到除所述参考点以外的所述待处理点的路径上添加缓冲器。
8.根据权利要求3所述的一种复位信号平衡方法,其特征在于,所述根据所述待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡包括:
在芯片面积范围内,根据所述待处理点的坐标计算原点到各个所述待处理点的曼哈顿距离;
选取具有最长曼哈顿距离的待处理点作为参考点;
在所述原点到除所述参考点以外的所述待处理点的路径上添加缓冲器。
9.一种复位信号平衡装置,其特征在于,包括:
版图获取模块,用于获取待处理集成电路版图;
坐标系建立模块,用于以所述待处理集成电路的复位信号输入端口位置为原点建立直角坐标系;
复位端口标记模块,用于获取所述待处理集成电路中的触发器复位端口坐标,作为第1次迭代处理的待处理点的坐标;
坐标获取模块,用于获取待处理点的坐标;
第一判断模块,用于判断
Figure 292462DEST_PATH_IMAGE001
的逻辑值;
区域划分模块,用于当
Figure 735907DEST_PATH_IMAGE001
的逻辑值为假时,以直角坐标系的原点为起点,边长为2n-1·b的正方形格子将所述待处理集成电路划分为若干区域;
第二判断模块,用于逐一判断计算区域内待处理点的数量是否大于1;
公共点计算模块,用于计算所述计算区域内公共点的坐标;
第一复位信号平衡模块,用于当
Figure 526009DEST_PATH_IMAGE001
逻辑值为假时,根据所述公共点的坐标和所述待处理点的坐标,对所述计算区域内的所述待处理点进行复位信号平衡;
第二复位信号平衡模块,用于当
Figure 811497DEST_PATH_IMAGE001
逻辑值为真时,根据所述待处理点的坐标对芯片面积范围内的待处理点进行复位信号平衡;
其中A为所述待处理集成电路的面积,b的取值由所述待处理集成电路中的复位触发器的平均宽度Wcell、所述待处理集成电路中的复位触发器的平均高度Hcell、所述待处理集成电路中的复位触发器的最大扇出数N以及第1次迭代时正方形格子内出现N个触发器的概率P共同确定。
10.根据权利要求9所述的一种复位信号平衡装置,其特征在于,所述公共点计算模块包括:
计算子模块,用于在所述计算区域内,根据所述待处理点的坐标计算任意一点到所述计算区域内所有待处理点的曼哈顿距离之和;
筛选子模块,将所述曼哈顿距离之和最小的点的坐标作为所述计算区域内的公共点的坐标;
所述第一复位信号平衡模块包括:
第一距离计算子模块,用于在所述计算区域内,根据所述公共点的坐标和所述待处理点的坐标,计算所述公共点到所述计算区域内所有待处理点的曼哈顿距离;
第一参考点选取子模块,用于在所述计算区域内,选取具有最长曼哈顿距离的待处理点作为参考点;
第一缓冲器添加子模块,用于在所述计算区域内,在所述公共点到除所述参考点以外的所述待处理点的路径上添加缓冲器;
所述第二复位信号平衡模块包括:
第二距离计算子模块,用于在芯片面积范围内,根据所述待处理点的坐标计算原点到各个所述待处理点的曼哈顿距离;
第二参考点选取子模块,用于在芯片面积范围内,选取具有最长曼哈顿距离的待处理点作为参考点;
第二缓冲器添加子模块,用于在芯片面积范围内,在所述原点到除所述参考点以外的所述待处理点的路径上添加缓冲器。
CN202111353524.5A 2021-11-16 2021-11-16 一种复位信号平衡方法和装置 Active CN113792509B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111353524.5A CN113792509B (zh) 2021-11-16 2021-11-16 一种复位信号平衡方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111353524.5A CN113792509B (zh) 2021-11-16 2021-11-16 一种复位信号平衡方法和装置

Publications (2)

Publication Number Publication Date
CN113792509A CN113792509A (zh) 2021-12-14
CN113792509B true CN113792509B (zh) 2022-02-18

Family

ID=78955289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111353524.5A Active CN113792509B (zh) 2021-11-16 2021-11-16 一种复位信号平衡方法和装置

Country Status (1)

Country Link
CN (1) CN113792509B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116108797B (zh) * 2023-04-06 2023-06-16 中国人民解放军国防科技大学 基于触发器扇出数量的触发器替换方法、装置和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588639A (zh) * 2004-08-18 2005-03-02 大唐微电子技术有限公司 集成电路复位方法及复位系统
CN101286735A (zh) * 2008-05-29 2008-10-15 那微微电子科技(上海)有限公司 复位信号延时装置
CN110399026A (zh) * 2019-06-28 2019-11-01 苏州浪潮智能科技有限公司 基于fpga的多源单输出复位方法、装置及相关设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611158B2 (en) * 2001-07-24 2003-08-26 Koninklijke Philips Electronics N.V. Method and system using a common reset and a slower reset clock
JP5501320B2 (ja) * 2011-09-30 2014-05-21 京セラドキュメントソリューションズ株式会社 電子回路
WO2019119393A1 (zh) * 2017-12-22 2019-06-27 广州众诺电子技术有限公司 芯片复位方法、芯片及耗材容器
CN111352492A (zh) * 2020-03-05 2020-06-30 广芯微电子(广州)股份有限公司 数字上电复位电路、方法、装置及存储介质
CN111736678B (zh) * 2020-06-12 2022-06-10 浪潮(北京)电子信息产业有限公司 一种芯片复位电路、方法以及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588639A (zh) * 2004-08-18 2005-03-02 大唐微电子技术有限公司 集成电路复位方法及复位系统
CN101286735A (zh) * 2008-05-29 2008-10-15 那微微电子科技(上海)有限公司 复位信号延时装置
CN110399026A (zh) * 2019-06-28 2019-11-01 苏州浪潮智能科技有限公司 基于fpga的多源单输出复位方法、装置及相关设备

Also Published As

Publication number Publication date
CN113792509A (zh) 2021-12-14

Similar Documents

Publication Publication Date Title
US8453085B2 (en) Method for estimating the latency time of a clock tree in an ASIC design
US11630640B2 (en) Median value determination in a data processing system
CN116151179B (zh) 芯片设计的布局规划方法及相关设备
US10977410B2 (en) IC routing for silicon circuits with smaller geometries
US10031996B2 (en) Timing based net constraints tagging with zero wire load validation
CN113792509B (zh) 一种复位信号平衡方法和装置
US20120240090A1 (en) Clock tree designing apparatus and clock tree designing method
US10956637B2 (en) Placement-driven generation of error detecting structures in integrated circuits
US8839061B2 (en) System and method for scan chain re-ordering
CN112818632B (zh) 芯片的图形密度的分析方法、装置及电子设备
CN116822452B (zh) 芯片布局优化方法及相关设备
US10664561B1 (en) Automatic pipelining of memory circuits
CN113505562A (zh) 时钟树综合最优策略预测方法、系统及应用
US8595668B1 (en) Circuits and methods for efficient clock and data delay configuration for faster timing closure
CN116306486B (zh) 芯片设计的设计规则检查方法及相关设备
US7596773B2 (en) Automating optimal placement of macro-blocks in the design of an integrated circuit
CN116362190A (zh) 芯片设计的交互布局规划方法及相关设备
US20160232275A1 (en) Method and apparatus for logical design connectivity-based automatic macro placement
US8132141B2 (en) Method and apparatus for generating a centerline connectivity representation
US8181143B2 (en) Method and apparatus for generating a memory-efficient representation of routing data
US10831969B2 (en) Predicting routability of interconnects
CN117521586B (zh) 芯片设计的布局规划方法及相关设备
US10810344B1 (en) Multi-instantiation time budgeting for integrated circuit design and manufacturing
US10527932B2 (en) Structure design generation for fixing metal tip-to-tip across cell boundary
US10474778B2 (en) Systems and methods for top level integrated circuit design

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