基于公共子表达式的大规模集成电路设计优化方法技术

技术编号:38759979 阅读:12 留言:0更新日期:2023-09-10 09:44
本发明专利技术属于电路数据处理的技术领域,更具体地,涉及基于公共子表达式的大规模集成电路设计优化方法。具体包括:首先遍历查找组合逻辑中器件间的连接关系,确定输出器件与输入器件之间的相互关系,构建输出与输入之间的二进制矩阵向量;二进制矩阵向量中的每一行表示一个二进制表达式方程,通过矩阵分析,识别出需要处理的公共子表达式,并选择其中一个公共子表达式作为需要消除的项;接着消除所选公共子表达式,直到没有公共子表达式可以提取;再根据所提取出的公共子表达式信息,创建新的模块,并建立新建模块与输入端和输出端的连接关系。本发明专利技术解决了现有技术中大规模集成电路资源优化、电路的性能和效率较低的问题。电路的性能和效率较低的问题。电路的性能和效率较低的问题。

【技术实现步骤摘要】
基于公共子表达式的大规模集成电路设计优化方法


[0001]本专利技术属于电路数据处理的
,更具体地,涉及基于公共子表达式的大规模集成电路设计优化方法。

技术介绍

[0002]现代大规模集成电路设计资源优化方法广泛应用于电子工程领域,其目的是在保证电路功能的前提下,优化电路设计,减少电路中所需的硬件资源,降低功耗和成本,提高电路的性能和可靠性。在实际应用中,大规模集成电路资源优化可以采用多种方法,例如:逻辑综合、布局布线、时序优化、功耗优化、面向应用的特定集成电路设计等等。随着电子工程技术的不断发展,大规模集成电路资源优化技术也在不断地进化和完善,为电子工程领域的发展做出了重要的贡献。
[0003]中国专利文献CN115577662A公开了一种基于多fanout逻辑的时序器件资源优化方法,基于多fanout逻辑的模块分组,通过合并多输出fanout结构,对大规模电路设计进行精简 ,遍历查找组合逻辑中模块间最低耦合度,即输入个数或输出个数最少,确定时序器件的最佳放置位置,在此位置创建最低耦合度数量个相同时序器件来减少时序器件的数量。
[0004]然而,随着芯片制造工艺的不断进步,集成电路设计的复杂度也在不断提高,同时,不同的设计目标之间往往也会相互制约,需要在多目标间进行权衡和决策。另一方面,随着芯片制造工艺的进步,软硬件协同设计的需求越来越强烈。与此同时,在当前电子产品以低功耗为设计目标的背景下,还应该考虑在保证电路性能的前提下,实现功耗优化的目标。为了实现大规模集成电路资源优化的目标,需要在综合考虑多种设计方法的基础上,采取有效措施来降低电路中逻辑门的数量,降低功耗和成本,同时提高电路的性能和可靠性。
[0005]综上,现有技术是将同一层级的器件视为整体看待,对即时序器件进行优化,而大规模集成电路资源优化设计的核心问题是综合考虑多个因素以降低电路中逻辑器件的数量、优化电路设计资源,该问题的复杂性导致了目前研究困难,需要持续探索和调研,以提高大规模集成电路设计的效率和质量。

技术实现思路

[0006]本专利技术旨在克服上述现有技术的至少一种缺陷,提供基于公共子表达式的大规模集成电路设计优化方法,以解决现有技术在电路设计资源优化方面的不足。
[0007]本专利技术详细的技术方案如下:基于公共子表达式的大规模集成电路设计优化方法,包括以下步骤:S1、获得待分析网表,若待分析网表中存在组合逻辑器件,则进行下一步;所述组合逻辑器件是指:组合逻辑器件的输出只取决于当前的输入,与电路原本的状态无关,任何时刻,只要输入发生变化,输出会立即发生相应的变化;S2、获取待分析网表中功能类型相同的组合逻辑器件的分组;
若分组只有一个组合逻辑器件时,则无需优化,直接结束,并对下一个分组进行优化;若存在多个功能类型相同的组合逻辑器件,则根据当前组合逻辑器件组的位置,分别向输入端、输出端通过广度优先遍历方法寻找相连接的组合逻辑器件;S3、获取分组内输出端组合逻辑器件对应的输入端信号,以及输出端组合逻辑器件和输入端信号之间的连接关系;S4、计算分组内组合逻辑器件的二进制矩阵向量,二进制矩阵向量中的每一行表示一个二进制表达式方程;S5、计算二进制表达式方程中公共子表达式的出现次数,并找出出现次数最多的公共子表达式;S6、遍历所有二进制表达式方程,若二进制表达式方程中存在出现次数最多的公共子表达式,则在该二进制表达式方程中用一个新的变量代替出现次数最多的公共子表达式;若不存在,则继续遍历下一个二进制表达式方程;S7、循环S5

S6,直到在每一个二进制表达式方程中只有一个变量,或,所有二进制表达式方程不存在公共子表达式;S8、在电路中根据新的变量设置新增组合逻辑件,具体包括:S81、获得新的变量对应的输入端信号;S82、将新的变量对应的输入端信号作为新增组合逻辑件的输入,新的变量对应的输出端组合逻辑件作为新增组合逻辑件的输出指向;S9、更新电路。根据新增组合逻辑件可替换原电路中组合逻辑件,或,删除原电路中组合逻辑件,重新构建新增组合逻辑件,技术人员可根据实际需要调整更新方式。
[0008]进一步地,通过广度优先遍历方法获取分组内输出端与输入端组合逻辑器件之间的对应关系,具体的:从输出端组合逻辑器件出发,寻找分组内与输出端组合逻辑器件相邻且未访问的组合逻辑器件;再从组合逻辑器件出发,寻找与组合逻辑器件相邻且未访问的组合逻辑器件,直到所遍历组合逻辑器件的输入端信号所连接的组合逻辑器件不在该分组内,则记录该输出端组合逻辑器件与此输入端信号的对应关系,以及两者之间的连接关系;广度优先遍历方法的基本原则是从电路中的某个组合逻辑器件或一组组合逻辑器件开始,寻找与之相邻的且还未被访问的组合逻辑器件,所找到的组合逻辑器件数量就是访问的数量,然后将这些组合逻辑器件分别作为起点进行下一轮遍历,重复以上过程;广度优先遍历可以看作是一层一层地进行遍历,每当遍历完一层的所有组合逻辑器件时,就会继续向下一层进行遍历。这种遍历方式可以有效地查找与目标组合逻辑器件相连的所有组合逻辑器件,并且可以提高查找效率。
[0009]进一步地,所述变量在二进制表达式方程中指的是与输出端组合逻辑器件存在对应关系的输入端信号。
[0010]与现有技术相比,本专利技术的有益效果为:本专利技术提供的基于公共子表达式的大规模集成电路设计优化方法,通过遍历组合逻辑电路中的器件连接关系,构建输出组合逻辑器件与输入组合逻辑器件之间的二进制矩阵向量,并通过矩阵分析,识别出需要处理的公共子表达式,随后,在各个二进制表达式方
程中消除出现次数最频繁的公共子表达式,并将所消除的公共子表达式构建为新的模块,来实现基于公共子表达式的大规模集成电路设计优化的目标,在不影响电路功能的前提下,该方法优化了设计网表的面积,实现组合逻辑器件的资源优化,从而提高电路的性能和效率。
附图说明
[0011]图1是本专利技术所述资源优化的流程图。
[0012]图2是本专利技术实施例1中所述网表连接关系示意图。
[0013]图3是本专利技术实施例1中所述优化后网表中器件连接关系示意图。
具体实施方式
[0014]下面结合图与实施例对本公开做进一步说明。
[0015]应该指出,以下详细说明都是示例性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属
的普通技术人员通常理解的相同含义。
[0016]需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0017]在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
[0018]实施例 1本实施例提供基于公共子表达式的大规模集成电路设计优化方法,本专利技术提供的方法可用于解决数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于公共子表达式的大规模集成电路设计优化方法,其特征在于,包括;S1、获得待分析网表,若待分析网表中存在组合逻辑器件,则进行下一步;所述组合逻辑器件是指:组合逻辑器件的输出只取决于当前的输入,与电路原本的状态无关,任何时刻,只要输入发生变化,输出会立即发生相应的变化;S2、获取待分析网表中功能类型相同的组合逻辑器件的分组;若分组只有一个组合逻辑器件时,则无需优化,直接结束,对下一个分组进行优化;若存在多个功能类型相同的组合逻辑器件,根据当前组合逻辑器件组的位置,分别向输入端、输出端通过广度优先遍历方法寻找相连接的组合逻辑器件;S3、获取分组内输出端组合逻辑器件对应的输入端信号,以及输出端组合逻辑器件和输入端信号之间的连接关系;S4、计算分组内组合逻辑器件的二进制矩阵向量,二进制矩阵向量中的每一行表示一个二进制表达式方程;S5、计算二进制表达式方程中公共子表达式的出现次数,并找出出现次数最多的公共子表达式;S6、遍历所有二进制表达式方程,若二进制表达式方程中存在出现次数最多的公共子表达式,则在该二进制表达式方程中用一个新的变量代替出现次数最多的公共子表达式;若不存在,则继续遍历下一个二进制表达式方程;S7、循环S5

S6,直到在每一个二进制表达式方程中只有一个...

【专利技术属性】
技术研发人员:郑雯雯唐兴达王鸿儒李扬党永迪
申请(专利权)人:山东启芯软件科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1