CN107809235B - 用于转换规范rm逻辑电路的方法 - Google Patents
用于转换规范rm逻辑电路的方法 Download PDFInfo
- Publication number
- CN107809235B CN107809235B CN201710969513.7A CN201710969513A CN107809235B CN 107809235 B CN107809235 B CN 107809235B CN 201710969513 A CN201710969513 A CN 201710969513A CN 107809235 B CN107809235 B CN 107809235B
- Authority
- CN
- China
- Prior art keywords
- product
- term
- value
- item set
- variable
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 abstract description 25
- 238000006243 chemical reaction Methods 0.000 abstract description 17
- 238000005516 engineering process Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于转换规范RM逻辑电路的方法,首先对待转换电路类型是布尔逻辑电路和RM逻辑电路进行判定,然后针对不同类型的待转换电路类型,通过简单的相交运算,仅操作乘积项对函数表达式中含有的乘积项进行更新,得到中间非规范RM逻辑函数表达式所包含的乘积项,然后再对中间非规范RM逻辑函数表达式所包含的乘积项进行变量文字位替换操作,转换得到目标规范RM逻辑表达式;优点是不需要对乘积项进行最小项展开或者不相交乘积项处理,有效降低了计算复杂度及内存占用量,且计算时间对输入变量的数量不敏感而仅与乘积项数量以及相交性有关,能快速处理大规模变量的规范RM逻辑电路的转换,转换过程简单,转换速度快。
Description
技术领域
本发明涉及一种转换RM逻辑电路的方法,尤其是涉及一种转换规范RM逻辑电路的方法。
背景技术
二值数字逻辑电路既可表示为与-或(AND-OR)形式的布尔逻辑,也可以表示为与-异或(AND-EXOR)形式的Reed-Muller(RM)逻辑。研究发现,算术电路、通信电路和奇偶校验电路等采用RM逻辑实现的电路相比采用传统布尔逻辑实现的电路具有面积、功耗、速度和可测性等方面的显著优势;此外,新兴的可逆逻辑和量子电路上的综合优化问题可以方便地映射到RM逻辑域上进行预处理。因此,RM逻辑在当前低功耗集成电路设计和未来量子可逆电路设计领域得到了广泛的应用
不管是布尔逻辑函数还是RM逻辑函数,乘积项中的每个变量都存在三种形式:原变量“x”形式、反变量形式和常量“1”形式(不出现)。例如,逻辑函数中含有的某4个变量的乘积项其中变量x4以原变量出现,变量x2和x1以反变量出现,而变量x3则不出现在该乘积项中。目前,对于规范RM逻辑电路(即RM逻辑函数表达式)具有如下定义,某个变量在所有乘积项中以原变量或常量出现,称该变量被正极性化,极性为“0”;某个变量在所有乘积项中以反变量或常量出现,称该变量被负极性化,极性为“1”;某个变量在所有乘积项中以原变量或反变量出现,称该变量被双极性化,极性为“2”。常见的规范RM逻辑电路有:正极性RM(PPRM),函数表达式中所有变量都被正极性化;固定极性RM(FPRM),函数表达式中所有变量要么被正极性化要么被负极性化;混合极性RM(MPRM),函数表达式中所有变量任意选择三种极性化方式。一个含n个输入变量的RM逻辑函数表达式有唯一的PPRM、2n种FPRM(2n个极性)和3n种MPRM(3n个极性),它们的集合满足:RM极性决定了RM逻辑电路的复杂程度。例如,某含4个变量的逻辑函数f(x4,x3,x2,x1)的规范RM逻辑函数表达式为其中表示EXOR操作,对应的极性向量为P=(0,1,2,1),即极性-16;如果采用极性向量P=(2,0,2,1),即极性-60,那么,该RM逻辑函数表达式表示成当输入变量数为20时,RM逻辑函数的极性数量达到几十亿之多。
目前很多研究人员通过将布尔逻辑电路转换为规范RM逻辑电路,以及将一规范RM逻辑电路转换为另一规范RM逻辑电路来实现电路优化,而主要侧重于研究固定极性RM逻辑电路间的转换且没有涉及任意RM逻辑电路(包含非规范RM逻辑电路)到规范RM逻辑电路的转换。国内、外学者提出了一些规范RM逻辑电路的转换方法,如列表技术、并行列表技术、基于不相交乘积项的列表技术、二进制决定图法(Binary decision diagram,BDD)、系数表映射法和系数矩阵法等方法。对于基于不相交乘积项的列表技术,其额外的不相交乘积项的计算开销增大了转换难度;对于除基于不相交乘积项的列表技术外的其余方法,它们的计算复杂度和内存占用量都不可避免地与逻辑函数的输入变量规模呈指数关系。由此,现有的这些转换方法都比较复杂,且都难以真正满足大规模变量的规范RM逻辑电路的快速转换需求。
发明内容
本发明所要解决的技术问题是提供一种转换过程简单,转换速度快的用于转换规范Reed-Muller逻辑电路的方法。
本发明解决上述技术问题所采用的技术方案为:一种用于转换规范RM逻辑电路的方法,包括以下步骤:
①根据待转换电路,判定该待转换电路的类型是布尔逻辑电路和RM逻辑电路,布尔逻辑电路对应的逻辑函数表达式为RM逻辑电路对应的逻辑函数表达式为其中函数表达式中,xn,xn-1,…,xk,…,x1为函数f的n个输入变量,k为整数且1≤k≤n,Σ为或逻辑运算符号,为异或逻辑运算符号,ci为f的第i个乘积项,i为整数且1≤i≤3n, 为变量文字,表示第k个输入变量xk在乘积项ci中的出现形式,当时,第k个输入变量xk在乘积项ci中以原变量出现,当时,第k个输入变量xk在乘积项ci中以反变量出现,当时,第k个输入变量xk在乘积项ci中不出现,bi为乘积项系数,bi∈{0,1},当bi=0时,乘积项ci在f中不存在,当bi=1时,乘积项ci在f中存在;
②采用待转换电路对应的函数表达式中所有存在的乘积项组成第一个乘积项集合,将该第一个乘积项集合记为C,第一个乘积项集合C中包含的乘积项的数量记为m,m为整数且1≤m≤3n,定义第二个乘积项集合,将该第二个乘积项集合记为S,第二个乘积项集合S在初始状态为空集合;
③如果待转换电路类型被判定为布尔逻辑电路,则按照以下步骤对第二个乘积项集合S进行第一轮更新:
A.从第一个乘积项集合C中任选一个未被选取过的乘积项,将该乘积项记为cj,其中1≤j≤m;
B.判定当前的第二个乘积项集合S是否为空集合:如果是,则将第一个乘积项集合C中选取的乘积项cj复制到第二个乘积项集合S中,如果否,定义第三个乘积项集合,将该第三个乘积项集合记为S′,第三个乘积项集合S′的初始状态为空集合,并将第一个乘积项集合C中选取的乘积项cj与第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,具体过程为:
B-2.依次将乘积项cj的第h位变量文字与乘积项st的第h位变量文字进行相交运算,其中h=1,2,…,n,具体过程为:
B-2-3.判定cj中的第1位变量文字~第n位变量文字与乘积项st的第1位变量文字~第n位变量文字是否都进行了相交运算,如果是,则π是有效乘积项,将π保存到第三个乘积项集合S′中,如果否,则π是无效乘积项,删除乘积项π;
B-3.乘积项cj与第二个乘积项集合S中第一个乘积项s1~第T个乘积项sT都进行了相交运算后,第三个乘积项集合S′更新完成,此时将第三个乘积项集合S′中所有的乘积项与第一个乘积项集合C中选取的乘积项cj保存到第二个乘积项集合S中;
B-4.清空第三个乘积项集合S′中所有的乘积项,第三个乘积项集合S′被更新为空集合;
B-5.查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除;
B-6.判定第一个乘积项集合C中所有的乘积项是否都与当前第二个乘积项集合S中的所有乘积项进行了相交运算,如果是,则第二个乘积项集合S的第一轮更新完毕,如果否,则按照步骤B-1~B-5的方法从第一个乘积项集合C中任选的一个未被选取过的乘积项与当前第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,直至第二个乘积项集合S的第一轮更新完毕;
如果待转换电路类型被判定为RM逻辑电路,则将第一个乘积项集合C中所有的乘积项复制到第二个乘积项集合S中,得到更新后的第二个乘积项集合S;
④定义一个初始极性向量,将该初始极性向量记为P,令P=pnpn-1…pk…p1,其中pk∈{0,1,2};如果待转换电路类型被判定为布尔逻辑电路或者非规范RM逻辑电路,那么初始极性向量P的第r位pr=2,r=1,2,…,n;如果待转换电路类型被判定为规范RM逻辑电路,则直接将该待转换的规范RM逻辑电路的极性值赋予该初始极性向量P;
定义一个用于保存目标极性值的目标极性向量,将该目标极性向量记为P′,令P′=p′np′n-1…p′k…p′1,其中p′k∈{0,1,2};将设定好的需要转换得到的目标规范RM逻辑电路的极性值赋予该目标极性向量P′;
⑤对第一轮更新后得到的第二个乘积项集合S进行第二轮更新,具体过程为:
a.统计当前第二个乘积项集合S中乘积项的数量,并将其数量记为L;
c.判定初始极性向量P的第u位极性pu与目标极性向量P′的第u位极性p′u是否相等,如果相等,则乘积项sl中的第u位变量文字保持不变,如果不相等,则按照以下规则对乘积项sl中的第u位变量文字进行更新:
d.按照步骤c的规则完成乘积项sl中n位变量文字的更新,即完成乘积项sl的更新;
e.按照步骤c和d的方法依次完成第二个乘积项集合S中剩余乘积项的更新,直至第二个乘积项集合S中所有的乘积项更新完成,得到第二轮更新后的第二个乘积项集合S;
⑥找出当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项,将这些乘积项依次按照以下规则进行替换处理:统计待替换的乘积项中含有的取值为“-”的变量文字的数量,将其数量记为G,每个取值为“-”的变量文字均存在“0”和“1”两种替换值,即每个取值为“-”的变量文字存在两种替换情况,那么存在G个取值为“-”的变量文字的待替换的乘积项存在2G种替换情况,即存在G个取值为“-”的变量文字的待替换的乘积项被替换为2G个新的乘积项;
⑦按照步骤⑥的规则完成当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项的替换,得到替换后的第二个乘积项集合S;
⑧查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除,将此时得到的第二个乘积项集合S作为目标规范RM逻辑电路对应的乘积项集合,根据该乘积项集合即可得到转换后的目标规范RM逻辑电路。
与现有技术相比,本发明的优点在于与现有技术相比,本发明的优点在于通过对待转换电路类型是布尔逻辑电路和RM逻辑电路进行判定,然后针对不同类型的待转换电路类型,通过简单的相交运算,仅操作乘积项对函数表达式中含有的乘积项进行更新,得到中间非规范RM逻辑函数表达式所包含的乘积项,然后再对中间非规范RM逻辑函数表达式所包含的乘积项进行变量文字位替换操作,转换得到目标规范RM逻辑表达式,本发明的方法避免了以往规范RM逻辑表达式式转化过程中需要对乘积项进行最小项展开或者需要对乘积项进行不相交乘积项处理等方式,有效降低了计算复杂度及内存占用量,且计算时间对输入变量的数量不敏感而仅与乘积项数量以及相交性有关,能快速处理大规模变量的规范RM逻辑电路的转换,转换过程简单,转换速度快,能处理布尔逻辑电路、非规范RM逻辑电路和规范RM逻辑电路到规范RM逻辑电路的转换。
具体实施方式
以下结合实施例对本发明作进一步详细描述。
实施例:一种用于转换规范RM逻辑电路的方法,包括以下步骤:
①根据待转换电路,判定该待转换电路的类型是布尔逻辑电路和RM逻辑电路,布尔逻辑电路对应的逻辑函数表达式为RM逻辑电路对应的逻辑函数表达式为其中函数表达式中,xn,xn-1,…,xk,…,x1为函数f的n个输入变量,k为整数且1≤k≤n,Σ为或逻辑运算符号,为异或逻辑运算符号,ci为f的第i个乘积项,i为整数且1≤i≤3n, 为变量文字,表示第k个输入变量xk在乘积项ci中的出现形式,当时,第k个输入变量xk在乘积项ci中以原变量出现,当时,第k个输入变量xk在乘积项ci中以反变量出现,当时,第k个输入变量xk在乘积项ci中不出现,bi为乘积项系数,bi∈{0,1},当bi=0时,乘积项ci在f中不存在,当bi=1时,乘积项ci在f中存在;
②采用待转换电路对应的函数表达式中所有存在的乘积项组成第一个乘积项集合,将该第一个乘积项集合记为C,第一个乘积项集合C中包含的乘积项的数量记为m,m为整数且1≤m≤3n,定义第二个乘积项集合,将该第二个乘积项集合记为S,第二个乘积项集合S在初始状态为空集合;
③如果待转换电路类型被判定为布尔逻辑电路,则按照以下步骤对第二个乘积项集合S进行第一轮更新:
A.从第一个乘积项集合C中任选一个未被选取过的乘积项,将该乘积项记为cj,其中1≤j≤m;
B.判定当前的第二个乘积项集合S是否为空集合:如果是,则将第一个乘积项集合C中选取的乘积项cj复制到第二个乘积项集合S中,如果否,定义第三个乘积项集合,将该第三个乘积项集合记为S′,第三个乘积项集合S′的初始状态为空集合,并将第一个乘积项集合C中选取的乘积项cj与第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,具体过程为:
B-2.依次将乘积项cj的第h位变量文字与乘积项st的第h位变量文字进行相交运算,其中h=1,2,…,n,具体过程为:
B-2-3.判定cj中的第1位变量文字~第n位变量文字与乘积项st的第1位变量文字~第n位变量文字是否都进行了相交运算,如果是,则π是有效乘积项,将π保存到第三个乘积项集合S′中,如果否,则π是无效乘积项,删除乘积项π;
B-3.乘积项cj与第二个乘积项集合S中第一个乘积项s1~第T个乘积项sT都进行了相交运算后,第三个乘积项集合S′更新完成,此时将第三个乘积项集合S′中所有的乘积项与第一个乘积项集合C中选取的乘积项cj保存到第二个乘积项集合S中;
B-4.清空第三个乘积项集合S′中所有的乘积项,第三个乘积项集合S′被更新为空集合;
B-5.查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除;
B-6.判定第一个乘积项集合C中所有的乘积项是否都与当前第二个乘积项集合S中的所有乘积项进行了相交运算,如果是,则第二个乘积项集合S的第一轮更新完毕,如果否,则按照步骤B-1~B-5的方法从第一个乘积项集合C中任选的一个未被选取过的乘积项与当前第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,直至第二个乘积项集合S的第一轮更新完毕;
如果待转换电路类型被判定为RM逻辑电路,则将第一个乘积项集合C中所有的乘积项复制到第二个乘积项集合S中,得到更新后的第二个乘积项集合S;
④定义一个初始极性向量,将该初始极性向量记为P,令P=pnpn-1…pk…p1,其中pk∈{0,1,2};如果待转换电路类型被判定为布尔逻辑电路或者非规范RM逻辑电路,那么初始极性向量P的第r位pr=2,r=1,2,…,n;如果待转换电路类型被判定为规范RM逻辑电路,则直接将该待转换的规范RM逻辑电路的极性值赋予该初始极性向量P;
定义一个用于保存目标极性值的目标极性向量,将该目标极性向量记为P′,令P′=p′np′n-1…p′k…p′1,其中p′k∈{0,1,2};将设定好的需要转换得到的目标规范RM逻辑电路的极性值赋予该目标极性向量P′;
⑤对第一轮更新后得到的第二个乘积项集合S进行第二轮更新,具体过程为:
a.统计当前第二个乘积项集合S中乘积项的数量,并将其数量记为L;
c.判定初始极性向量P的第u位极性pu与目标极性向量P′的第u位极性p′u是否相等,如果相等,则乘积项sl中的第u位变量文字保持不变,如果不相等,则按照以下规则对乘积项sl中的第u位变量文字进行更新:
d.按照步骤c的规则完成乘积项sl中n位变量文字的更新,即完成乘积项sl的更新;
e.按照步骤c和d的方法依次完成第二个乘积项集合S中剩余乘积项的更新,直至第二个乘积项集合S中所有的乘积项更新完成,得到第二轮更新后的第二个乘积项集合S;
⑥找出当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项,将这些乘积项依次按照以下规则进行替换处理:统计待替换的乘积项中含有的取值为“-”的变量文字的数量,将其数量记为G,每个取值为“-”的变量文字均存在“0”和“1”两种替换值,即每个取值为“-”的变量文字存在两种替换情况,那么存在G个取值为“-”的变量文字的待替换的乘积项存在2G种替换情况,即存在G个取值为“-”的变量文字的待替换的乘积项被替换为2G个新的乘积项;
⑦按照步骤⑥的规则完成当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项的替换,得到替换后的第二个乘积项集合S;
⑧查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除,将此时得到的第二个乘积项集合S作为目标规范RM逻辑电路对应的乘积项集合,根据该乘积项集合即可得到转换后的目标规范RM逻辑电路。
采用MCNC基准电路作为测试电路,采用C语言实现本发明的方法,在硬件环境为Pentium Dual E2200 2.20GHz CPU、3GB RAM的PC机,软件环境为Windows XPProfessional操作***下,用Visual Studio2008对本发明的方法和现有的转换方法分别进行测试,其实验对比数据如表1所示。
表1
从表1中可以看出,对于大部分测试电路,本发明的方法处理时间是毫秒级,甚至可以快速转换含199个输入变量的逻辑函数,远快于现有最好技术。
Claims (1)
1.一种用于转换规范RM逻辑电路的方法,其特征在于包括以下步骤:
①根据待转换电路,判定该待转换电路的类型是布尔逻辑电路和RM逻辑电路,布尔逻辑电路对应的逻辑函数表达式为RM逻辑电路对应的逻辑函数表达式为其中函数表达式中,xn,xn-1,…,xk,…,x1为函数f的n个输入变量,k为整数且1≤k≤n,ci为f的第i个乘积项,i为整数且1≤i≤3n,Σ为或逻辑运算符号,为异或逻辑运算符号, 为变量文字,表示第k个输入变量xk在乘积项ci中的出现形式,当时,第k个输入变量xk在乘积项ci中以原变量出现,当时,第k个输入变量xk在乘积项ci中以反变量出现,当时,第k个输入变量xk在乘积项ci中不出现,bi为乘积项系数,bi∈{0,1},当bi=0时,乘积项ci在f中不存在,当bi=1时,乘积项ci在f中存在;
②采用待转换电路对应的函数表达式中所有存在的乘积项组成第一个乘积项集合,将该第一个乘积项集合记为C,第一个乘积项集合C中包含的乘积项的数量记为m,m为整数且1≤m≤3n,定义第二个乘积项集合,将该第二个乘积项集合记为S,第二个乘积项集合S在初始状态为空集合;
③如果待转换电路类型被判定为布尔逻辑电路,则按照以下步骤对第二个乘积项集合S进行第一轮更新:
A.从第一个乘积项集合C中任选一个未被选取过的乘积项,将该乘积项记为cj,其中1≤j≤m;
B.判定当前的第二个乘积项集合S是否为空集合:如果是,则将第一个乘积项集合C中选取的乘积项cj复制到第二个乘积项集合S中,如果否,定义第三个乘积项集合,将该第三个乘积项集合记为S′,第三个乘积项集合S′的初始状态为空集合,并将第一个乘积项集合C中选取的乘积项cj与第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,具体过程为:
B-2.依次将乘积项cj的第h位变量文字与乘积项st的第h位变量文字进行相交运算,其中h=1,2,…,n,具体过程为:
B-2-3.判定cj中的第1位变量文字~第n位变量文字与乘积项st的第1位变量文字~第n位变量文字是否都进行了相交运算,如果是,则π是有效乘积项,将π保存到第三个乘积项集合S′中,如果否,则π是无效乘积项,删除乘积项π;
B-3.乘积项cj与第二个乘积项集合S中第一个乘积项s1~第T个乘积项sT都进行了相交运算后,第三个乘积项集合S′更新完成,此时将第三个乘积项集合S′中所有的乘积项与第一个乘积项集合C中选取的乘积项cj保存到第二个乘积项集合S中;
B-4.清空第三个乘积项集合S′中所有的乘积项,第三个乘积项集合S′被更新为空集合;
B-5.查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除;
B-6.判定第一个乘积项集合C中所有的乘积项是否都与当前第二个乘积项集合S中的所有乘积项进行了相交运算,如果是,则第二个乘积项集合S的第一轮更新完毕,如果否,则按照步骤B-1~B-5的方法从第一个乘积项集合C中任选的一个未被选取过的乘积项与当前第二个乘积项集合S中已经存在的所有乘积项依次进行相交运算,直至第二个乘积项集合S的第一轮更新完毕;
如果待转换电路类型被判定为RM逻辑电路,则将第一个乘积项集合C中所有的乘积项复制到第二个乘积项集合S中,得到更新后的第二个乘积项集合S;
④定义一个初始极性向量,将该初始极性向量记为P,令P=pnpn-1…pk…p1,其中pk∈{0,1,2};如果待转换电路类型被判定为布尔逻辑电路或者非规范RM逻辑电路,那么初始极性向量P的第r位pr=2,r=1,2,…,n;如果待转换电路类型被判定为规范RM逻辑电路,则直接将该待转换的规范RM逻辑电路的极性值赋予该初始极性向量P;
定义一个用于保存目标极性值的目标极性向量,将该目标极性向量记为P′,令P′=p′np′n-1…p′k…p′1,其中p′k∈{0,1,2};将设定好的需要转换得到的目标规范RM逻辑电路的极性值赋予该目标极性向量P′;
⑤对第一轮更新后得到的第二个乘积项集合S进行第二轮更新,具体过程为:
a.统计当前第二个乘积项集合S中乘积项的数量,并将其数量记为L;
c.判定初始极性向量P的第u位极性pu与目标极性向量P′的第u位极性p′u是否相等,如果相等,则乘积项sl中的第u位变量文字保持不变,如果不相等,则按照以下规则对乘积项sl中的第u位变量文字进行更新:
d.按照步骤c的规则完成乘积项sl中n位变量文字的更新,即完成乘积项sl的更新;
e.按照步骤c和d的方法依次完成第二个乘积项集合S中剩余乘积项的更新,直至第二个乘积项集合S中所有的乘积项更新完成,得到第二轮更新后的第二个乘积项集合S;
⑥找出当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项,将这些乘积项依次按照以下规则进行替换处理:统计待替换的乘积项中含有的取值为“-”的变量文字的数量,将其数量记为G,每个取值为“-”的变量文字均存在“0”和“1”两种替换值,即每个取值为“-”的变量文字存在两种替换情况,那么存在G个取值为“-”的变量文字的待替换的乘积项存在2G种替换情况,即存在G个取值为“-”的变量文字的待替换的乘积项被替换为2G个新的乘积项;
⑦按照步骤⑥的规则完成当前第二个乘积项集合S中所有的包含至少一个取值为“-”的变量文字的乘积项的替换,得到替换后的第二个乘积项集合S;
⑧查找当前第二个乘积项集合S中存在至少两个的乘积项,如果该乘积项的数量为偶数,则将其全部删除,如果该乘积项的数量为奇数,则保留一个,将其他的删除,将此时得到的第二个乘积项集合S作为目标规范RM逻辑电路对应的乘积项集合,根据该乘积项集合即可得到转换后的目标规范RM逻辑电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710969513.7A CN107809235B (zh) | 2017-10-18 | 2017-10-18 | 用于转换规范rm逻辑电路的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710969513.7A CN107809235B (zh) | 2017-10-18 | 2017-10-18 | 用于转换规范rm逻辑电路的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107809235A CN107809235A (zh) | 2018-03-16 |
CN107809235B true CN107809235B (zh) | 2021-03-26 |
Family
ID=61585006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710969513.7A Expired - Fee Related CN107809235B (zh) | 2017-10-18 | 2017-10-18 | 用于转换规范rm逻辑电路的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107809235B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920837B (zh) * | 2018-07-04 | 2023-04-07 | 卜登立 | 利用共享zmodd提取esop乘积项间公因子的可逆电路综合方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4249246A (en) * | 1978-02-27 | 1981-02-03 | Nippon Electric Co., Ltd. | Programmable logic array for generating EOR sums of input signals |
US6810007B1 (en) * | 1999-03-26 | 2004-10-26 | Samsung Electronics Co., Ltd. | OFDM transmission/receiving system and block encoding method therefor |
US7114055B1 (en) * | 2003-09-29 | 2006-09-26 | Xilinx, Inc. | Reduced instruction set computer architecture with duplication of bit values from an immediate field of an instruction multiple times in a data word |
CN102982205A (zh) * | 2012-11-21 | 2013-03-20 | 宁波大学 | 一种用于数字电路设计的固定极性转换方法 |
CN104270145A (zh) * | 2014-09-10 | 2015-01-07 | 宁波大学 | 一种多pdn型电流模rm逻辑电路 |
CN104539298A (zh) * | 2014-12-23 | 2015-04-22 | 宁波大学 | 一种Reed-Muller逻辑电路极性快速转换方法 |
CN105447241A (zh) * | 2015-11-16 | 2016-03-30 | 浙江万里学院 | 一种逻辑函数的esop最小化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6212669B1 (en) * | 1997-11-05 | 2001-04-03 | Fujitsu Limited | Method for verifying and representing hardware by decomposition and partitioning |
-
2017
- 2017-10-18 CN CN201710969513.7A patent/CN107809235B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4249246A (en) * | 1978-02-27 | 1981-02-03 | Nippon Electric Co., Ltd. | Programmable logic array for generating EOR sums of input signals |
US6810007B1 (en) * | 1999-03-26 | 2004-10-26 | Samsung Electronics Co., Ltd. | OFDM transmission/receiving system and block encoding method therefor |
US7114055B1 (en) * | 2003-09-29 | 2006-09-26 | Xilinx, Inc. | Reduced instruction set computer architecture with duplication of bit values from an immediate field of an instruction multiple times in a data word |
CN102982205A (zh) * | 2012-11-21 | 2013-03-20 | 宁波大学 | 一种用于数字电路设计的固定极性转换方法 |
CN104270145A (zh) * | 2014-09-10 | 2015-01-07 | 宁波大学 | 一种多pdn型电流模rm逻辑电路 |
CN104539298A (zh) * | 2014-12-23 | 2015-04-22 | 宁波大学 | 一种Reed-Muller逻辑电路极性快速转换方法 |
CN105447241A (zh) * | 2015-11-16 | 2016-03-30 | 浙江万里学院 | 一种逻辑函数的esop最小化方法 |
Non-Patent Citations (4)
Title |
---|
Quantum cost realization of new reversible functions using ESOP based synthesis;Jayashree H.V;《2014 international conference on contemporary computing and informatics》;20141129;第1330-1335页 * |
基于分层超立方体的精确ESOP最小化;张巧文等;《计算机辅助设计与图形学学报》;20160115(第1期);第172-179页 * |
基于新型极性转换技术的 XNOR/OR 电路面积优化;张会红等;《电子与信息学报》;20120731;第34卷(第7期);第I135-34页 * |
大电路固定极性Reed-Muller逻辑快速转换方法;王玉花等;《计算机辅助设计与图形学学报》;20141130;第26卷(第11期);第2091-2097页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107809235A (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021244079A1 (zh) | 智能家居环境中图像目标检测方法 | |
US20190087713A1 (en) | Compression of sparse deep convolutional network weights | |
JP7293498B2 (ja) | サンプル一致度評価による能動学習 | |
US8958265B2 (en) | Nearest neighbor serial content addressable memory | |
US20200082269A1 (en) | Memory efficient neural networks | |
US11507797B2 (en) | Information processing apparatus, image recognition apparatus, and parameter setting method for convolutional neural network | |
Imani et al. | Efficient query processing in crossbar memory | |
WO2020215694A1 (zh) | 一种基于深度学习的中文分词方法、装置、存储介质及计算机设备 | |
CN112667528A (zh) | 一种数据预取的方法及相关设备 | |
CN111753995A (zh) | 一种基于梯度提升树的局部可解释方法 | |
CN107809235B (zh) | 用于转换规范rm逻辑电路的方法 | |
US20150339222A1 (en) | Content addressable memory and semiconductor device | |
EP3896585A1 (en) | System local field matrix updates | |
Yin et al. | MINT: Multiplier-less INTeger Quantization for Energy Efficient Spiking Neural Networks | |
CN114707655A (zh) | 一种量子线路转换方法、***、存储介质和电子设备 | |
US20220398067A1 (en) | Multiply-accumlate device | |
CN112559843B (zh) | 确定集合的方法、装置、电子设备、介质和程序产品 | |
US12026202B2 (en) | Memory optimization for storing objects in nested hash maps used in electronic design automation systems | |
CN113255257B (zh) | 基于工艺库的s盒电路的优化方法及*** | |
Furuta et al. | An Efficient Implementation of FPGA-based Object Detection Using Multi-scale Attention | |
Lee et al. | A comparative study of recursive partitioning algorithm and analog concept learning system | |
CN116186202A (zh) | 结合时域特征的新词发现方法和*** | |
JP2024519326A (ja) | ニューラルネットワークにおける決定ツリーの組込み | |
Miranda et al. | A Grammar-based multi-objective neuroevolutionary algorithm to generate fully convolutional networks with novel topologies | |
Kim | Bayesian Modeling of Multi-Source Multi-Way Data |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210326 |