CN109753685B - 一种逻辑错误率计算方法 - Google Patents
一种逻辑错误率计算方法 Download PDFInfo
- Publication number
- CN109753685B CN109753685B CN201811465776.5A CN201811465776A CN109753685B CN 109753685 B CN109753685 B CN 109753685B CN 201811465776 A CN201811465776 A CN 201811465776A CN 109753685 B CN109753685 B CN 109753685B
- Authority
- CN
- China
- Prior art keywords
- product
- logic
- term
- product term
- terms
- 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
Links
Images
Landscapes
- Complex Calculations (AREA)
- Logic Circuits (AREA)
Abstract
本发明公布了一种逻辑错误率的计算方法用于计算将“与/或”形式逻辑函数表示为逻辑功能近似的RM逻辑引入了逻辑错误率;通过多次调用乘积项之间的不相交锐积运算得到RM逻辑对应的逻辑覆盖与待优化逻辑函数的逻辑覆盖的差异,进而实现RM逻辑的错误率计算;本发明以不相交乘积项作为基本处理对象,具有运算速度快,适合处理大逻辑函数的特点。
Description
技术领域
本发明涉及数字逻辑电路领域,尤其是涉及利用近似计算技术将“与/或”形式的逻辑表达式表示成“与/异或”形式的Reed-Muller(RM)逻辑过程中为实现逻辑优化而引入的错误率的计算方法。
背景技术
一般情况下,逻辑功能正确是电路设计首要条件,为了保证电路输出正确,常不惜牺牲电路的功耗、面积和速度等性能指标。但在实际应用中,待处理的数据中的某些特性,如容错特性,使得一定程度上的计算错误并不影响实际的应用,例如,在多媒体处理中,由于人类的感知能力有限,偶尔的错误,例如丢弃特定的帧或小的图像质量损失通常很少影响用户的满意度。另一方面,随着半导体工艺尺寸进入到纳米级,电路的供电电压更低,集成密度更高,电路输出对工艺参数的波动和故障更敏感。为保证输出正确需要在不同设计层次上进行冗余设计,导致显著的额外电路开销,使得电路实现成本将变得更高。待处理数据自身具有的容错特性,以及在现在集成电路工艺下降低电路实现高成本,使得人们重新思考逻辑功能“正确”的程度,进而提出在设计中引入近似计算(approximate computing)技术,实现电路优化,提高电路良品率。目前,近似计算技术已应用于从系统、架构、存储、逻辑综合到单元电路设计等不同电路层级的优化,以及FPGA,神经网络、通信、可逆逻辑的等诸多方面。
RM逻辑广泛应用于算术电路、通信电路,以及可逆逻辑电路等设计中。研究表明,近一半的逻辑电路,用RM逻辑实现,电路结构可以得到进一步的优化。由于“异或”运算是构成RM逻辑的基本运算,且存在这意味着将偶数个相同的乘积项添加到RM函数中,不改变RM函数的正确性;同样,删除RM函数覆盖中偶数次重复的部分也不改变RM函数的正确性。“异或”运算的这种特点,使得原来用于传统布尔逻辑电路的近似优化技术在RM函数近似优化过程中的应用遇到挑战。
以图1卡诺图为例,在图1(a)中,取值为“1”的最小项组成的逻辑覆盖对应的逻辑函数为如果将图1(b)中标有“F”的最小项作为错误引入的,可以将函数进一步简化为在图1(c)中标有“T”的最小项被偶数次覆盖,考虑到1⊕1=0,因此用RM逻辑表示图1(c),其对应的逻辑功能和图1(b)一样。但图1(c)的表达式为fapp_RM(x1,x2,x3)=x1⊕x3,显然图1(c)对应的表达式比图1(b)的更简单。即RM逻辑面积优化效果更好。
从图1的例子中不难发现RM逻辑和TB逻辑在错误率计算方面的不同。对于TB逻辑而言,可以直接通过比较近似函数的乘积项集合与原函数的乘积项集合的差异得到引起错误输出的乘积项的集合,进而计算出错误率;但对于RM逻辑而言,近似函数的乘积项集合与原函数的乘积项集合的差异不一定就是引起错误输出的乘积项的集合,因为差异部分可能包含了偶数次逻辑覆盖,即RM逻辑与TB逻辑的错误率计算方法是不一样的。
发明内容
本发明要解决的技术问题是提供一种RM逻辑错误率的计算方法。该方法可以计算出经过近似计算技术优化后,优化后的RM逻辑函数与原逻辑函数逻辑覆盖的不同,进而优化得到的RM逻辑函数的错误率。
本发明解决上述技术问题采用的技术方案为:一种逻辑错误率的计算方法,将待优化的采用“与/或”形式的逻辑函数定义为f,其中f包含m个乘积项,m≥2,将f对应的乘积项集合定义为C;将f的近似函数定义为fa,其中fa包含n个乘积项,n≥2,将fa对应的乘积项集合定义为Ca;定义输入变量数为w,输出变量数为v;符号表示二个乘积项不相交锐积运算符;计算方法的具体步骤为:
步骤1.定义空的集合Cba,cdis1和cdis2;
步骤2.用公知的方法将f对应的乘积项集合C中的乘积项转化为不相交乘积项;
步骤5.重复步骤3和步骤4,直到Ca中任意2个乘积项均不相交;
步骤6.将Ca中的内容复制到Cba中;
步骤9.重复步骤7和步骤8,直到Ca中任意一个乘积项与C中的任意一个乘积项均不相交;
步骤12.重复步骤10和步骤11,直到C中任意一个乘积项与Cba中的任意一个乘积项均不相交;
步骤13.fa相对于f错误率就是最终留在集合Ca和C中乘积项包含的最小项个数与2w的比值。
与现有技术相比,本发明的优点在于本发明的优点在于:1)运算速度快。错误率计算的关键是找出原函数f与近似函数fa之间的差异,这个差异有2部分组成,一部分是属于f但不属于fa;另一部分是属于fa但不属于f,如果用集合运算来表示这个差异就是(C∪Ca)-(C∩Ca)。这种差异可以通过比较f与fa包含的不同的最小项来求得,但也可以直接通过集合运算来实现。本发明采用的是以不相交乘积项集合进行运算来实现2个函数差异的计算。由于逻辑函数包含的最小项数量与输入变量数成2的指数次方关系,因此随着输入变量数增加,通过比较最小项的方法的运算速度将受到严重影响,而以不相交乘积项集合运算为基础的方法的运算速度影响不大。2)本发明适合处理大电路。大电路具有输入变量多的特点,当输入变量超过30时,最小项的数量已经过亿,因此通过逐个比较最小项个数的方法显然不适合了。本发明直接以不相交乘积项作为基本处理对象。一般情况下,逻辑函数包含的不相交乘积项数量远小于最小项,且通过不相交乘积项可以很方便地计算出对应的最小项的数量,而不需要将乘积项展开后进行最小项的统计,从而使本发明更适合处理大电路。
附图说明
图1(a)逻辑函数f的卡诺图;
图1(b)逻辑函数f引入错误后的卡诺图及其采用“与/或”形式的化简;
图1(c)逻辑函数f引入错误后的卡诺图及其采用“与/异或”形式的化简;
图2(a)待优化逻辑函数f的卡诺图;
图2(b)采用RM逻辑的f的近似函数fa的卡诺图。
具体实施方式
以下结合附图实施例对本发明、作进一步详细描述。
实施例:一种逻辑错误率的计算方法,其特征在于将待优化的采用“与/或”形式的逻辑函数定义为f,其中f包含m个乘积项,m≥2,将f对应的乘积项集合定义为C;将f的近似函数定义为fa,其中fa包含n个乘积项,n≥2,将fa对应的乘积项集合定义为Ca;定义输入变量数为w,输出变量数为v;符号表示二个乘积项不相交锐积运算符;计算方法的具体步骤为:
步骤1.定义空的集合Cba,cdis1和cdis2;
步骤2.用公知的方法将f对应的乘积项集合C中的乘积项转化为不相交乘积项;
步骤5.重复步骤3和步骤4,直到Ca中任意2个乘积项均不相交;
步骤6.将Ca中的内容复制到Cba中;
步骤9.重复步骤7和步骤8,直到Ca中任意一个乘积项与C中的任意一个乘积项均不相交;
步骤12.重复步骤10和步骤11,直到C中任意一个乘积项与Cba中的任意一个乘积项均不相交;
步骤13.fa相对于f错误率就是最终留在集合Ca和C中乘积项包含的最小项个数与2w的比值。
在步骤7中,分别在Ca和C中各任取一个乘积项pai和pk,令由于pai与pk不相交,因此因此执行步骤8后,Ca保持不变。接下来的循环中,二者仍然不相交;重复执行步骤8后,Ca仍然保持不变。在下一个循环中,由于pai=pk,因此所以在本循环后不断重复步骤7和步骤8,发现Ca中的乘积项与C中的一个乘积项一样,而Ca中的乘积项与C中的乘积项相交,而因此最终得到
Claims (1)
1.一种逻辑错误率的计算方法,其特征在于将待优化的采用“与/或”形式的逻辑函数定义为f,其中f包含m个乘积项,m≥2,将f对应的乘积项集合定义为C;将f的近似函数定义为fa,其中fa包含n个乘积项,n≥2,将fa对应的乘积项集合定义为Ca;定义输入变量数为w,输出变量数为v;符号表示二个乘积项不相交锐积运算符;计算方法的具体步骤为:
步骤1.定义空的集合Cba,cdis1和cdis2;
步骤2.用公知的方法将f对应的乘积项集合C中的乘积项转化为不相交乘积项;
步骤5.重复步骤3和步骤4,直到Ca中任意2个乘积项均不相交;
步骤6.将Ca中的内容复制到Cba中;
步骤9.重复步骤7和步骤8,直到Ca中任意一个乘积项与C中的任意一个乘积项均不相交;
步骤12.重复步骤10和步骤11,直到C中任意一个乘积项与Cba中的任意一个乘积项均不相交;
步骤13.fa相对于f错误率就是最终留在集合Ca和C中乘积项包含的最小项个数与2w的比值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811465776.5A CN109753685B (zh) | 2018-12-03 | 2018-12-03 | 一种逻辑错误率计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811465776.5A CN109753685B (zh) | 2018-12-03 | 2018-12-03 | 一种逻辑错误率计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109753685A CN109753685A (zh) | 2019-05-14 |
CN109753685B true CN109753685B (zh) | 2023-05-12 |
Family
ID=66403459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811465776.5A Active CN109753685B (zh) | 2018-12-03 | 2018-12-03 | 一种逻辑错误率计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109753685B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110880932B (zh) * | 2019-11-12 | 2023-05-12 | 宁波大学 | 一种逻辑电路近似实现方法 |
CN111985172B (zh) * | 2020-06-30 | 2023-05-12 | 宁波大学 | 一种单输出组合逻辑电路的近似简化方法 |
CN112861453B (zh) * | 2021-02-08 | 2023-05-12 | 宁波大学 | 近似算术逻辑电路的最大绝对输出误差的计算方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376143A (zh) * | 2014-07-31 | 2015-02-25 | 苏州大学 | 基于近似逻辑电路的软错误屏蔽方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080281572A1 (en) * | 2007-05-10 | 2008-11-13 | Ruchir Puri | Integrated circuit (ic) design method and method of analyzing radiation-induced single-event upsets in cmos logic designs |
KR101544649B1 (ko) * | 2013-12-30 | 2015-08-17 | 서울과학기술대학교 산학협력단 | SoC에서의 오류율 분석 방법 |
US10360088B2 (en) * | 2015-11-20 | 2019-07-23 | Quantum Benchmark, Inc. | Randomized compiling for quantum computation |
-
2018
- 2018-12-03 CN CN201811465776.5A patent/CN109753685B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376143A (zh) * | 2014-07-31 | 2015-02-25 | 苏州大学 | 基于近似逻辑电路的软错误屏蔽方法 |
Non-Patent Citations (1)
Title |
---|
Wang Lunyao等.Multi-supply voltage (MSV) driven SoC floorplanning for fast design convergence.《INTEGRATION-THE VLSI JOURNAL》.2016,第335-346页. * |
Also Published As
Publication number | Publication date |
---|---|
CN109753685A (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109753685B (zh) | 一种逻辑错误率计算方法 | |
Ji et al. | A hardware implementation of a radial basis function neural network using stochastic logic | |
Helliwell et al. | A fast algorithm to minimize multi-output mixed-polarity generalized Reed-Muller forms | |
Abdellatef et al. | Accurate and compact convolutional neural network based on stochastic computing | |
Guo et al. | Scheme for automatic differentiation of complex loss functions with applications in quantum physics | |
Xia et al. | Design and simulation of quantum image binarization using quantum comparator | |
Abdellatef et al. | Accurate and compact stochastic computations by exploiting correlation | |
Bunch et al. | Weighting vectors for machine learning: numerical harmonic analysis applied to boundary detection | |
Yuan et al. | Improved quantum dilation and erosion operations | |
CN110880932B (zh) | 一种逻辑电路近似实现方法 | |
Baek et al. | A memristor-CMOS Braun multiplier array for arithmetic pipelining | |
Stojković et al. | Reversible circuits synthesis from functional decision diagrams by using node dependency matrices | |
Hasegawa | Variational principle for non-equilibrium states and the Onsager-Machlup formula | |
Winstead | Tutorial on stochastic computing | |
CN113822386B (zh) | 一种图像识别方法、装置、设备及介质 | |
Nabulsi et al. | A new method for boolean function simplification | |
Balasubramanian et al. | Indicating asynchronous multipliers | |
Aygun et al. | Efficient and robust bitstream processing in binarised neural networks | |
Hu et al. | Optimization of softmax layer in deep neural network using integral stochastic computation | |
CN112861453B (zh) | 近似算术逻辑电路的最大绝对输出误差的计算方法 | |
Feng et al. | Simplification of logical functions with application to circuits | |
Kishore et al. | Implementation of braun and baugh-wooley multipliers using qca | |
Voudouris et al. | Decomposition of multi-output boolean functions | |
Stankovic | Some remarks on terminology in spectral techniques for logic design: Walsh transform and Hadamard matrices | |
Yuan et al. | LGHAE: Local and Global Hyper-relation Aggregation Embedding for Link Prediction |
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 |