陈艳
摘要:主要研究双逻辑低功耗运算电路设计,采用了函数逻辑立方体表示技术,进行了双模式的逻辑侦测与划分,并进行了RM逻辑面积优化。双逻辑低功耗运算电路设计是当前集成电路设计研究工作的重点内容,对降低运算电路功耗效果显著。
关键词:双逻辑;低功耗;运算电路
集成电路技术不断发展,工艺水平不断提升,集成电路设计工作面临着功耗、面积、速度、验证等方面的挑战,功耗与面积问题最为突出。双逻辑低功耗运算电路是近些年出现的一种集成电路设计方法,是一种性能高,功耗小的逻辑综合技术。
1 逻辑函数的立方体表示方法
集成电路设计中,逻辑级通常都认为是联接RTL级和物理级的关键环节,有着最为成熟的EDA工作,而在逻辑函数综合优化过程中,逻辑函数优化是非常关键的问题,采用优化的函数表达式能够得到优化更加充分的逻辑电路。现阶段,几乎全部EDAT具均采用AND/OR/NOT运算基传统布尔逻辑,也就是意味着现有EDAI具将无法实现基于RM逻辑实现的函数优化,而适用于TB逻辑实现的逻辑函数采用RM逻辑也不能实现函数最优化。现阶段关于双逻辑综合优化的研究还刚刚起步,发展基于双逻辑优化的逻辑电路综合与功耗优化技术是当前集成电路设计方面的研究重点。
人们经常采用立方体表示集成电路设计中的逻辑函数。对于单输出函数立方体,相交运算是在公共顶点形成的立方体,没有公共顶点表示相互之间不相交。相交运算中输入变量结果存在“q”表示立方体之间不相交,如果输出部分有相交结果,但是输出部分无相交结果,说明出现了输入相同,输出不同的情况,表示两个立方体之间不一致,采用立方体表示函数,立方体之间必须存在一致性。
RM逻辑是一种AND\XOR运算组成的代数系统,RM逻辑函数大致可分为固定极性、混合极性两种,RM函数综合优化大多都从极性转化开始。固定急性下,逻辑函数变量需要采用原变量或者反变量的方式出现,也可以不出现,每个变量都有两种出现形式,其固有极性表达式如下:
该逻辑函数中的变量与极性之间存在着明显的对应关系,Ji表示变量是否需要在乘积项中出现。对于不同极性,逻辑函数表达形式之间存在着极大的不同,采用极性转换算法进行极性搜索能够获得最简表达形式下的极性,也即最佳极性。
对于混合极性RM函数中,变量原变量与反变量形式可在同一个函数表达形式中出现,这是与固定极性RM函数最大的区别。
混合极性因此有3”个极性,其由于全部固定极性下的表达式在混合极性情况下都能够准确获得,所以混合极性下的极性搜索更加简单,但是优化过程却比较复杂,然而在混合极性函数下,需要两个乘积项即可,相比固定极性更加简便。
进行RM函数优化时,要尽可能减少函数式中包含的乘积项目数量,如果乘积项目数量相同,函数式中个数尽量减少。RM逻辑下的乘积项为异或运算关系,乘积项目个数越多,表示消耗异或和与门越多,文字数增加会导致电路内部节点增加,导致电路面积增加。
逻辑函数也可以采用PLA格式表示,集成电路的综合自动化领域相当多技术都基于PLA格式。PLA文件的“.”开头用于描述电路基本信息,前两行表示电路输出输入个数,第三行第四行负责说明电路输入与输出信号对应端口。第五行表示电路乘积项个数,中间部分表示电路输入信号与输出信号之间的对应关系,左边是输入,右边是输出。
2 逻辑探测与划分
2.1 逻辑划分算法
逻辑函数能够应用传统布尔逻辑实现,同样可以应用RM逻辑实现,但是当前大多数研究都采用单一逻辑结构,但是相关研究显示采用双逻辑优化能够获得最优性能,逻辑函数要实现双逻辑,需要划分逻辑为两部分,分别用于实现传统布尔逻辑实现和RM逻辑实现。
在现有逻辑探测划分方法方面的研究还比较少,比较有代表性的是Ye的基于最简项的双逻辑实现探测算法,。这种算法不需要转换逻辑函数为最小项,有效解决了其他方法在大规模电路上应用比较困难的问题,但是Ye的算法前提条件要求比较苛刻,即需要将函数转变为最简形式,而这对于逻辑电路来说本来就十分困难,并且还存在着漏判的情况。
除了Ye的算法,Fei Sun提出额定基于二分图的逻辑探测算法,这种算法面临着函数变量展开顺序不同对探测结果的影响,在大规模电路中的应用同样存在着一定的局限性。
2.2 生成不相交项
探测过程中其实已经找出了RM逻辑的实现部分,所以探测工作和划分工作其实可是实现适当整合。不相交锐积运算和锐积运算相似,但是不相交锐积运算要求结果立方体之间不能相交,每一个顶点都能够被一个立方体包含一次。锐积运算逻辑函数提出的算法在不改变原有函数逻辑意义的前提下,转换函数中的乘积项为两两不相交形式,结果函数有6个乘积项和12个最小项,个数减少了1/2,最小项表示法作为不相交项表示法的—种形式,其自身也同样两两不相交,存在着异或、或运算等效性,在运算空间、速度等方面都有着一定优势。
3 RM逻辑面积优化
RM逻辑函数有多种不同表现形式,主要有固定极性、混合极性两类,分别有2”和3”个混合极性与固定极性,并且全部固定极性表达式都包含在混合极性表达式中,所以,优化固定极性函数的空间大于混合极性函数。极性变化优化是RM逻辑函数优化是最常见的方法,基于不相交项列表极性转换方法无需将原始逻辑优化为最简式,减少了极性转换过程的乘法运算数量,通过极性搜索获得函数最佳极性,从而实现逻辑函数优化。
基于最小项的MPRM列表极性转换法不仅能够用于传统Boolean逻辑函数,同样可以表示MPRM逻辑,单输出逻辑函数采用(in-lin-2…i0)作为乘积项下标二进制表示,多输出逻辑函数单个输出函数对应的输入输出值并相同,需要分别表示各个输出函数。
不同极性下的MPRM逻辑函数表达形式不同,极性变换优化逻辑函数是一种有效的优化方法,而基于最小项混合极性列表法则首先自动转变函数逻辑表达式为最小项形式,之后进行极性转换,但是对于输入变量个数较大的电路,算法时间复杂度很大,采用基于不相交项的混合极性列表换算算法比较合理。
4 结语
逻辑层是连接RTL和物理级的关键层面,进行逻辑综合优化是集成电路设计工作中非常关键的环节,考虑到数字集成电路结构多样性,文章采用了基于双逻辑的功耗与面积优化技术进行功耗优化,效果很好。