对电路设计切分的方法、装置、设备、介质以及程序产品与流程

专利2026-06-09  1


本公开的实施例总体上涉及芯片设计工具领域,更具体地涉及用于对电路设计进行切分的方法、装置、设备、介质以及程序产品。


背景技术:

1、在集成电路(integrated circuit,ic)设计工具中的测试阶段中的逻辑综合阶段,电路设计在被解析之后通常会形成规模庞大的分层结构(也被称为实例树),分层结构由电路设计中不同功能的单元或模块构成。后续的电子设计自动化(electronic designautomation,eda)流程都要基于分层结构进行处理。然而,在规模庞大的分层结构中进行如查找、遍历、边界确定、连接关系提取等需要消耗大量的时间和计算资源。因此,对电路设计进行切分处理显得十分必要,它是进行后续一系列操作的前提,决定着整个处理流程的处理复杂度和方式方法。

2、目前,在传统eda技术中只能通过简单的方法来对电路设计进行切分,切分的位置的选择依赖人工经验,缺少科学根据,这就使得切分时的处理效率较低,切分的效果也大打折扣。常常出现切分后的每部分所包括的器件数目差距很大,或者遗漏了对需要被分开并行处理的单元之间的切分。因此,需要一种对电路设计进行切分的解决方案。


技术实现思路

1、鉴于上述问题,本公开的实施例旨在提供一种用于对电路设计进行切分的方案。

2、根据本公开的第一方面,提供了一种用于对电路设计进行切分的方法,该方法包括:获取与电路设计的逻辑电路模块相对应的多个单元的分层结构,分层结构包括第一层单元、源自第一层单元的至少一层子单元、以及连接第一层单元和至少一层子单元的多个边;确定多个边中每个边的第一表示和多个单元中每个单元的第二表示,第一表示指示每个边所连接的两个单元之间的关联程度,第二表示指示每个单元中的器件量;以及基于第一表示和第二表示,对电路设计进行切分通过这种方式,根据本公开的方法,在将电路设计解析成分层结构时开始切分,使得切分发生在逻辑综合中的较早阶段,能够提高切分结果在总流程中有效时间的比例。其次,按照电路中的粗粒度的单元进行切分,可以大幅减少切分时间。此外,在切分时根据信号确定不同单元间的关联程度,使得切分更加准确。

3、在一些实现方式中,基于多个单元在分层结构中的信号连接关系,确定多个边的第一表示包括:针对多个单元中的至少一个单元,基于信号连接关系,生成包括多个条目的信号表,多个条目中的每个条目包括至少一个单元中存在连接关系的一对信号和信号之间的连接关系,连接关系指示以下中的至少一项:时序逻辑、组合逻辑或者直接连接;基于信号表,确定至少一个单元的端口的属性,属性指示与端口直接连接的器件的类别;基于属性,将端口分类为可切分端口或不可切分端口中的一项;以及基于分类结果,确定第一表示。通过这种方式,将复杂信号连接关系解析为信号连接表,从而根据信号连接表确定不同单元间的关联程度和单元中的器件量,使得后续切分更加准确。

4、在一些实现方式中,基于信号表确定至少一个单元的端口的属性包括:基于信号连接关系,确定通过第一单元的第一端口的目标信号;以及基于信号表中包括目标信号的条目所指示的连接关系,确定第一端口的属性。通过这种方式,根据信号连接关系生成的信号表可以简化信号连接关系,为后续端口分类打下基础。

5、在一些实现方式中,基于信号表中包括目标信号的条目所指示的连接关系确定第一端口的属性包括以下至少一项:响应于确定包括目标信号的每个条目所指示的连接关系全部为时序逻辑,将第一端口确定为时序逻辑端口;响应于确定包括目标信号的至少一个条目所指示的连接关系为组合逻辑,将第一端口确定为组合逻辑端口;响应于确定包括目标信号的每个条目所指示的连接关系全部为直接连接,将第一端口确定为直接连接端口;或者响应于确定目标信号不被包括在任何一个条目中,将第一端口确定为未驱动端口。通过这种方式,确定端口属性的过程对信号表进行了进一步的简化处理,使得减少了后续算法所面对的问题规模。

6、在一些实现方式中,基于属性将端口分类为可切分端口或不可切分端口中的一项包括:响应于确定第一端口为时序逻辑端口,将第一端口分类为可切分端口。通过这种方式,将端口进行分类,使得后续切分更加准确。

7、在一些实现方式中,基于属性将端口分类为可切分端口或不可切分端口中的一项包括:响应于确定第一端口为组合逻辑端口或直接连接端口,确定与第一单元相邻的单元的、与第一端口直接连接的第二端口的属性;以及基于第二端口的属性,将第一端口分类为可切分端口或不可切分端口中的一项。通过这种方式,将端口进行分类,使得后续切分更加准确。

8、在一些实现方式中,基于第二端口的属性将第一端口分类为可切分端口或不可切分端口中的一项包括:响应于确定第二端口为时序逻辑端口,将第一端口分类为可切分端口;或者响应于确定第二端口为组合逻辑端口,将第一端口分类为不可切分端口。通过这种方式,将端口进行分类,使得后续切分更加准确。

9、在一些实现方式中,基于属性将端口分类为可切分端口或不可切分端口中的一项包括:响应于确定第一端口为未驱动端口,将第一端口分类为可切分端口。通过这种方式,将端口进行分类,使得后续切分更加准确。

10、在一些实现方式中,基于分类结果确定第一表示包括:基于分层结构,确定目标边所连接的第二单元和第三单元,第三单元为第二单元的子单元;获取第二单元的输出端口和第三单元的输入端口的分类结果;以及基于输出端口和输入端口中的可切分端口的数目与全部端口的数目,确定目标边的第一表示。通过这种方式,可以准确地确定单元之间的边的关联程度,使得后续切分更加准确。

11、在一些实现方式中,基于多个单元在分层结构中的信号连接关系确定多个单元的第二表示包括:基于单元的信号表中的条目的数目,确定第二表示。通过这种方式,可以准确地确定单元中的器件量,使得后续切分更加准确。

12、在一些实现方式中,基于第一表示和第二表示,对电路设计进行切分包括:从多个边中选择预定数目的边,使得所选择的边的第一表示的和大于第一阈值,并且使得根据选择的边而被切分的电路设计中的每个部分所包括的单元的第二表示的和小于第二阈值;以及对所选择的边进行切分。通过这种方式,根据信号连接关系分析单元的器件量和单元间的关联程度,并将此作为切分的依据,切分更加准确,由此使得后续输出的网表质量高。

13、在一些实现方式中,确定第二版图包括:获取与电路设计的逻辑电路模块相对应的多个单元的分层结构包括:对rtl级别的电路设计进行语法解析,以获取分层结构。通过这种方式,使得只有rtl解析没有有益于切分带来的并行效果,使得切分效果基本上贯穿于整个逻辑综合过程。

14、根据本公开的第二方面,提供了一种用于对电路设计进行切分的装置。该装置包括:电路解析模块,被配置为获取与电路设计的逻辑电路模块相对应的多个单元的分层结构,分层结构包括第一层单元、源自第一层单元的至少一层子单元、以及连接第一层单元和至少一层子单元的多个边;信号分析模块,被配置为确定多个边中每个边的第一表示和多个单元中每个单元的第二表示,第一表示指示每个边所连接的两个单元之间的关联程度,第二表示指示每个单元中的器件量;以及切分模块,被配置为基于第一表示和第二表示,对电路设计进行切分。

15、在本公开的第三方面,提供了一种电子设备。该电子设备包括:至少一个计算单元;至少一个存储器,至少一个存储器被耦合到至少一个计算单元并且存储用于由至少一个计算单元执行的指令,指令当由至少一个计算单元执行时,使得设备执行第一方面或者第一方面中的任意一种实现方式中的方法。

16、在本公开的第四方面,提供了一种计算机可读存储介质。计算机可读存储介质存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行实现第一方面或者第一方面中的任意一种实现方式中的方法。

17、在本公开的第五方面,提供一种计算机程序产品。计算机程序产品包括计算机可执行指令,计算机可执行指令在被处理器执行时,使计算机执行第一方面或者第一方面中的任意一种实现方式中的方法的部分或全部步骤的指令。

18、可以理解地,上述提供的第二方面的用于对电路设计进行切分的装置、第三方面的电子设备、第四方面的计算机存储介质或者第五方面的计算机程序产品均用于实现第一方面所提供的方法。因此,关于第一方面的解释或者说明同样适用于第二方面、第三方面、第四方面和第五方面。此外,第二方面、第三方面、第四方面和第五方面所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。

19、提供
技术实现要素:
部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开内容的关键特征或主要特征,也无意限制本公开内容的范围。


技术特征:

1.一种用于对电路设计进行切分的方法,包括:

2.根据权利要求1所述的方法,其中确定所述多个边的第一表示包括:

3.根据权利要求2所述的方法,其中基于所述信号表确定所述至少一个单元的端口的属性包括:

4.根据权利要求3所述的方法,其中基于所述信号表中包括所述目标信号的条目所指示的连接关系确定所述第一端口的属性包括以下至少一项:

5.根据权利要求4所述的方法,其中基于所述属性将端口分类为可切分端口或不可切分端口中的一项包括:

6.根据权利要求4所述的方法,其中基于所述属性将端口分类为可切分端口或不可切分端口中的一项包括:

7.根据权利要求6所述的方法,其中基于所述第二端口的属性将所述第一端口分类为可切分端口或不可切分端口中的一项包括:

8.根据权利要求4所述的方法,其中基于所述属性将端口分类为可切分端口或不可切分端口中的一项包括:

9.根据权利要求2-8中任一项所述的方法,其中基于分类结果确定所述第一表示包括:

10.根据权利要求2-9中任一项所述的方法,其中基于所述多个单元在所述分层结构中的信号连接关系确定所述多个单元的第二表示包括:

11.根据权利要求1-10中任一项所述的方法,其中基于所述第一表示和所述第二表示,对所述电路设计进行切分包括:

12.根据权利要求1-11中任一项所述的方法,其中获取与所述电路设计的逻辑电路模块相对应的多个单元的分层结构包括:

13.一种用于对电路设计进行切分的装置,包括:

14.根据权利要求13所述的装置,其中所述信号分析模块包括:

15.根据权利要求14所述的装置,其中所述端口属性模块包括:

16.根据权利要求15所述的装置,其中所述端口确定模块包括以下至少一项:

17.根据权利要求16所述的装置,其中所述端口分类模块包括:

18.根据权利要求16所述的装置,其中所述端口分类模块包括:

19.根据权利要求18所述的装置,其中所述第二端口分类模块包括:

20.根据权利要求16所述的装置,其中所述端口分类模块包括:

21.根据权利要求14-20中任一项所述的装置,其中所述边表示模块包括:

22.根据权利要求14-21中任一项所述的装置,其中所述信号分析模块包括:

23.根据权利要求13-22中任一项所述的装置,其中所述切分模块包括:

24.根据权利要求13-22中任一项所述的装置,其中所述电路解析模块包括:

25.一种电子设备,其特征在于,所述电子设备包括:

26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至12中任一项所述的方法。

27.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机可执行指令,所述计算机可执行指令在被处理器执行时,使计算机实现根据权利要求1至12中任一项所述的方法。


技术总结
本公开的各实施例涉及用于对电路设计进行切分的方法、设备、介质以及程序产品。本公开的一些实施例提供了一种用于对电路设计进行切分的方法。在根据本公开的方法中,获取与所述电路设计的逻辑电路模块相对应的多个单元的分层结构。然后根据所述多个单元在所述分层结构中的信号连接关系确定单元之间的关联程度和单元中的器件量。之后根据关联程度和单元中的器件量对电路设计进行切分。通过这种方式,根据本公开的方案,按照电路中的粗粒度的单元进行切分,可以大幅减少切分时间。在切分时根据信号确定不同单元间的关联程度,使得切分更加准确。

技术研发人员:温爽,杜小倩,周祖微,刘聪
受保护的技术使用者:华为技术有限公司
技术研发日:
技术公布日:2024/6/26
转载请注明原文地址:https://doc.8miu.com/read-1829954.html

最新回复(0)