[发明专利]用于转换规范RM逻辑电路的方法有效
申请号: | 201710969513.7 | 申请日: | 2017-10-18 |
公开(公告)号: | CN107809235B | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 张巧文;陈军敢;朱仲杰;胡江;王阳;张瑞华 | 申请(专利权)人: | 浙江万里学院 |
主分类号: | H03K19/20 | 分类号: | H03K19/20 |
代理公司: | 宁波奥圣专利代理有限公司 33226 | 代理人: | 方小惠 |
地址: | 315100 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 转换 规范 rm 逻辑电路 方法 | ||
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-1.统计当前第二个乘积项集合S中的乘积项数量,并记为T,将当前第二个乘积项集合S中的第t个乘积项记为st,t=1,2,…,T,定义一个新乘积项π,令该新乘积项
B-2.依次将乘积项cj的第h位变量文字与乘积项st的第h位变量文字进行相交运算,其中h=1,2,…,n,具体过程为:
B-2-1.将乘积项cj的第h位变量文字记为将乘积项st的第h位变量文字记为对和的关系进行判定:
如果时,那么令
如果且或者且那么令
如果且或者且那么令
如果是其他情况,那么令
B-2-2.判定是否为如果是,那么不再进行cj与st后续对应位的变量文字的相交运算,如果否,继续进行cj与st后续对应位的变量文字的相交运算;
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;
b从第二个乘积项集合S中任选一个乘积项,将该乘积项记为sl,将乘积项sl中的第u位变量文字记为其中,u=1,2,…,n,l为整数且1≤l≤L;
c.判定初始极性向量P的第u位极性pu与目标极性向量P′的第u位极性p′u是否相等,如果相等,则乘积项sl中的第u位变量文字保持不变,如果不相等,则按照以下规则对乘积项sl中的第u位变量文字进行更新:
当pu=2,p′u=0时,如果则采用‘–’更新的值,如果则采用‘0’更新的值,如果则的值保持不变;
当pu=2,p′u=1时,如果则采用‘1’更新的值,如果则采用‘–’更新的值,如果则采用‘0’更新的值;
当pu=0,p′u=2时,如果则采用‘–’更新的值,如果则采用‘0’更新的值,如果则的值保持不变;
当pu=0,p′u=1时,如果则采用‘–’更新的值,如果则采用‘1’更新的值,如果则的值保持不变;
当pu=1,p′u=2时,如果则采用‘–’更新的值,如果则采用‘0’更新的值,如果则采用‘1’更新的值;
当pu=1,p′u=0时,如果则采用‘–’更新的值,如果则采用‘1’更新的值,如果则的值保持不变;
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逻辑电路。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江万里学院,未经浙江万里学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710969513.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:感应式开关装置及侦测方法
- 下一篇:一种具有温度补偿的电感电容型压控振荡器