CN110765730A - 一种组合逻辑电路简化方法 - Google Patents
一种组合逻辑电路简化方法 Download PDFInfo
- Publication number
- CN110765730A CN110765730A CN201911018527.6A CN201911018527A CN110765730A CN 110765730 A CN110765730 A CN 110765730A CN 201911018527 A CN201911018527 A CN 201911018527A CN 110765730 A CN110765730 A CN 110765730A
- Authority
- CN
- China
- Prior art keywords
- node
- logic circuit
- combinational logic
- same
- nodes
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 14
- 230000014509 gene expression Effects 0.000 claims abstract description 21
- 238000013461 design Methods 0.000 abstract description 17
- 238000013473 artificial intelligence Methods 0.000 abstract description 9
- 238000005457 optimization Methods 0.000 abstract description 6
- 238000004088 simulation Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012938 design process Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种组合逻辑电路简化方法,利用树搜索原理对组合逻辑电路进行简化,将组合逻辑电路逻辑表达式中的每一项设为节点,将每一个节点中的变量依次取反,然后在同级节点中搜索有无相同项,若搜索到有相同项将该变量消去并保留作为其子节点,若没有搜索到相同项,直接对下一个变量取反然后搜索;同级节点指的是变量个数相同的节点。本发明基于人工智能的自主搜索优化策略,实现了组合逻辑电路的智能简化设计;通过使用启发式策略,简化了搜索过程,提高了搜索速度。
Description
技术领域
本发明涉及组合逻辑电路优化设计技术领域,尤其是一种基于树搜索原理的组合逻辑电路简化方法。
背景技术
组合逻辑电路是集成电路的重要组成部分。随着科技的发展,集成电路复杂度也越来越高,人工设计的难度也随之递增。现在人工智能技术日驱成熟,使用人工智能技术设计电路有着广泛的应用前景,而组合逻辑电路设计是集成电路设计的基础,所以使用人工智能提升组合逻辑电路的设计对集成电路是突破性的发展。人工智能技术从大的方面上看有两个方向,分别是无信息搜索策略与有信息搜索策略。无信息搜索策略是在各级节点按照一定规则逐步搜索,如宽度优先搜索、深度有优先搜索、一致代价搜索等规则。有信息搜索策略与无信息搜索策略不同的地方是根据不同策略选择较优路径减少了运算步骤与时间。
组合逻辑电路智能设计的目标是通过智能设计用最小的代价即消耗最少硬件资源的方式实现设计要求,但是最小代价的设计方案相对于设计要求来说是唯一的,因为最简逻辑表达式只有一个,所以使用人工智能设计组合逻辑电路不同于一般的人工智能设计。一般的人工智能设计是在寻求问题的解决方案中寻求最优解,而此次设计过程设计组合逻辑电路的最简表达式,即得出的方案只有一个。如何方便快捷地获得组合逻辑电路的最简表达式还是一个正在研究的课题。
发明内容
针对上述问题,本发明提供一种基于树搜索原理的组合逻辑电路简化方法。
一种组合逻辑电路简化方法,利用树搜索原理对组合逻辑电路进行简化,将组合逻辑电路逻辑表达式中的每一项设为节点,将每一个节点中的变量依次取反,然后在同级节点中搜索有无相同项,若搜索到有相同项将该变量消去并保留作为其子节点,若没有搜索到相同项,直接对下一个变量取反然后搜索;同级节点指的是变量个数相同的节点。
进一步的,将组合逻辑电路最小项作为一级节点,往下进行简化运算。
进一步的,检测节点中是否有子节点,若没有则该节点为叶子节点,将该节点项直接赋给最简表达式数组。
进一步的,相同项的叶子节点仅保留一个。
本发明基于人工智能的自主搜索优化策略,将树搜索优化算法与组合逻辑电路中相邻最小项合并定理融合,实现了组合逻辑电路的智能简化设计;通过使用启发式策略,简化了搜索过程,提高了搜索速度。
附图说明
图1为实施例1逻辑表达式简化流程示意图;
图2为实施例1的一级节点仿真数据;
图3为实施例1的二级节点仿真数据;
图4为实施例1的三级节点仿真数据;
图5为实施例1的最简逻辑表达式仿真数据。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
实施例1
随机选取一个五输入变量的真值表1。
表1
由真值表可得出输入变量与输出变量之间的逻辑关系。Y输出为1的项称为最小项,这些最小项的集合能组成Y的逻辑表达式
当然最小项逻辑表达式对应的电路并不是最优化的,需要对其进行化简,才能得到能实现设计要求且消耗资源最小的组合逻辑电路。
将7个最小项作为7个一级节点,如图1所示;再利用本发明公开的简化方法对该组合逻辑电路的最小项逻辑表达式进行化简,具体包括如下步骤。
1、从一级节点ABCDE开始,先将A取反,得到搜索后发现与其他一级节点无相同项,再将B取反,得到搜索后发现与其他一级节点仍无相同项,再将C取反,以此类推,直至一级节点ABCDE所有变量取反并搜索完毕。
为验证本发明提供方案的有效性,采用FPGA开发平台进行验证测试,使用QuartusII中的逻辑分析Signal Tap II来观察各级节点数据以及化简结果。首先是真值表的输入,先输入Y,然后对Y进行编码就可以将Y对应的逻辑表达式用二进制数组表示,图2为输入数据的编码,即一级节点图,g_1是节点数量,generation_1是用来存放一级节点的数组。
1000,0000,0010,0010,0000,0101,0000,0101(真值表Y栏由上至下分别是从低位到高位)是一个32位的二进制数,用十六进制数可表示为80220505h,然后对Y进行编码可获得需要的最小项。由Y=80220505h可知,Y用二进制表示,二进制为1对应的位数的数值即为对应的最小项编码,如80220505h用二进制表示第31位为1(真值表最后一行),31用二进制表示为11111b,对应EDCBA。只用五位二进制数只能表示是否取反,不能表示合并消项后的节点,所以使用十位二进制表示节点,如EDCBA可表示为0000011111b,该二进制从左到右依次代表1代表存在,0代表无,如CBA用0000000111b表示。
一轮优化后的结果如图3所示,与图1中的二级节点相同,g_2是节点数量,generation_2是用来存放二级节点的数组。二级节点中有很多是重复的节点,相同项的节点仅保留一个。从图1与图3可得一级节点中只有ABCDE(0000011111b)是叶子节点,ABCDE无法化简,直接赋给最简逻辑表达式数组中的generation[0]。
二轮优化后的结果如图4所示,与图1中的三级节点相同,g_3是节点数量,generation_3是用来存放三级节点的数组。从图1与图4可得二级节点是叶子节点,直接赋给最简逻辑表达式数组中的generation[1]。由于4个三级节点均为相同项,仅保留一项,并直接赋给最简逻辑表达式数组中的generation[2]。最简逻辑表达式数组最终如图5所示。
对输入进行编码后以二进制代码的形式表示逻辑表达式,在FPGA上更易实现且速度更快,功耗更低。为了验证本算法的效率,分别对无信息搜索算法和本文算法进行分析,数据如表2所示。通过与无信息搜索策略作比较,证明了本算法具有可行性和有效性。
无信息搜索策略树搜索算法 | 本文算法 | |
拓展节点数 | 25 | 13 |
节点最高级数 | 4 | 3 |
表2
显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
Claims (4)
1.一种组合逻辑电路简化方法,其特征在于,利用树搜索原理对组合逻辑电路进行简化,将组合逻辑电路逻辑表达式中的每一项设为节点,将每一个节点中的变量依次取反,然后在同级节点中搜索有无相同项,若搜索到有相同项将该变量消去并保留作为其子节点,若没有搜索到相同项,直接对下一个变量取反然后搜索;同级节点指的是变量个数相同的节点。
2.根据权利要求1所述的组合逻辑电路简化方法,其特征在于,将组合逻辑电路最小项作为一级节点,往下进行简化运算。
3.根据权利要求2所述的组合逻辑电路简化方法,其特征在于,检测节点中是否有子节点,若没有则该节点为叶子节点,将该节点项直接赋给最简表达式数组。
4.根据权利要求3所述的组合逻辑电路简化方法,其特征在于,相同项的叶子节点仅保留一个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018527.6A CN110765730A (zh) | 2019-10-24 | 2019-10-24 | 一种组合逻辑电路简化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018527.6A CN110765730A (zh) | 2019-10-24 | 2019-10-24 | 一种组合逻辑电路简化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110765730A true CN110765730A (zh) | 2020-02-07 |
Family
ID=69333361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911018527.6A Pending CN110765730A (zh) | 2019-10-24 | 2019-10-24 | 一种组合逻辑电路简化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110765730A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291324A (zh) * | 2020-02-28 | 2020-06-16 | 太原理工大学 | 一种粒分辨矩阵在逻辑电路优化中的应用 |
CN113312866A (zh) * | 2021-06-15 | 2021-08-27 | 深圳华大九天科技有限公司 | 一种通过合并方程变量实现约减电路的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263368A (zh) * | 2019-05-08 | 2019-09-20 | 太原理工大学 | 基于形式向量的多输入多输出真值表的约简方法 |
-
2019
- 2019-10-24 CN CN201911018527.6A patent/CN110765730A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263368A (zh) * | 2019-05-08 | 2019-09-20 | 太原理工大学 | 基于形式向量的多输入多输出真值表的约简方法 |
Non-Patent Citations (7)
Title |
---|
李昂等: "一种基于逻辑最小项化简的非线性函数实现方法", 《小型微型计算机系统》 * |
李昂等: "一种基于逻辑最小项化简的非线性函数实现方法", 《小型微型计算机系统》, no. 03, 15 March 2008 (2008-03-15), pages 2 * |
李昂等: "神经网络计算部件的数字VLSI优化设计", 《计算机工程》 * |
李昂等: "神经网络计算部件的数字VLSI优化设计", 《计算机工程》, no. 05, 5 March 2008 (2008-03-05) * |
王新忠等: "V-BLAST系统的低复杂度改进裁剪QRD-M算法", 《电视技术》 * |
王新忠等: "V-BLAST系统的低复杂度改进裁剪QRD-M算法", 《电视技术》, no. 05, 2 March 2015 (2015-03-02) * |
陈小芳: "逻辑函数的卡诺图化简法", 《计算机时代》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291324A (zh) * | 2020-02-28 | 2020-06-16 | 太原理工大学 | 一种粒分辨矩阵在逻辑电路优化中的应用 |
CN111291324B (zh) * | 2020-02-28 | 2023-06-13 | 太原理工大学 | 一种粒分辨矩阵在逻辑电路优化中的应用 |
CN113312866A (zh) * | 2021-06-15 | 2021-08-27 | 深圳华大九天科技有限公司 | 一种通过合并方程变量实现约减电路的方法 |
CN113312866B (zh) * | 2021-06-15 | 2022-03-11 | 深圳华大九天科技有限公司 | 一种通过合并方程变量实现约减电路的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cha et al. | A genetic algorithm for constructing compact binary decision trees | |
CN101154228A (zh) | 一种分段模式匹配方法及其装置 | |
CN104699767B (zh) | 一种面向中文语言的大规模本体映射方法 | |
CN110765730A (zh) | 一种组合逻辑电路简化方法 | |
Dickinson et al. | A genetic algorithm for identifying overlapping communities in social networks using an optimized search space | |
CN103440275A (zh) | 一种基于普利姆的k均值聚类方法 | |
CN108833052A (zh) | 信道极化译码路径度量值排序方法 | |
Guler et al. | Semantic index assignment | |
Kajstura et al. | Binary tree-based low power state assignment algorithm | |
CN114925640A (zh) | 一种多级mprm逻辑电路功耗优化方法 | |
CN106960064B (zh) | 一种基于自学习的几何辅助线添加方法 | |
CN110909793B (zh) | 一种基于fpga实现的决策森林系统及决策森林推理方法 | |
Huang et al. | Pancyclicity of Mobius cubes | |
Pan et al. | Detecting link communities based on local approach | |
Buss | Lectures on proof theory | |
Mizumoto et al. | An efficient query learning algorithm for zero-suppressed binary decision diagrams | |
Hanan | D2-synchronization in nondeterministic automata | |
Sharma et al. | An optimize decision tree algorithm based on variable precision rough set theory using degree of β-dependency and significance of attributes | |
Roy et al. | Multi-hop question answering | |
CN100573574C (zh) | 一种案例树构建的装置及方法 | |
CN114936220B (zh) | 布尔可满足性问题解的搜索方法、装置、电子设备及介质 | |
Maandag et al. | Solving 3-SAT | |
Mamaghani et al. | A novel hybrid algorithm for join ordering problem in database queries | |
Asghari et al. | An evolutionary algorithm for query optimization in database | |
CN109714043B (zh) | 一种宽异或电路优化方法 |
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 |