关于数字电路竞争-冒险现象的研究(6)

2019-08-01 22:43

清华大学2012届本科毕业论文

6 数字电路竞争与冒险的最新成果分析

6.1 关于数字电路检测、设计技术

6.1.1 冒险检测技术与无冒险电路设计的研究意义

竞争而产生的毛刺不仅会引发电路的假条边从而导致功耗的增加,同时毛刺如果被存储电路中的触发器接受,可能引起触发器的误动作,造成整个时序电路的误动作,因而这种现象必须避免。长期以来,逻辑电路中的冒险最小化技术的研究一直都是一个受到强烈关注的课题,因为一个冒险活动有限甚至无冒险的电路总是非常受欢迎的。本文前面所提到的检测和消除冒险的方法都存在一定的局限性,最新的研究从二值电路的冒险检测出发,通过分析冒险的成因,致力于找出一种无冒险或者少冒险的电路设计方法,并对多值电路进行了讨论[21]。

6.1.2 冒险检测技术与无冒险电路设计的研究现状

Eichelberger根据冒险产生的原因区分了逻辑冒险和功能冒险的概念。为了检测电路中的冒险,在传统的二值布尔逻辑中引入了值1/2,便是一个不确定的状态。从而使原来二值布尔函数变成三指函数。通过对这个三值函数的性质的讨论,给出了冒险存在的充分必要条件,根据这个条件可以检测员是输入单跳变和多跳变导致的冒险。但是,对于电路的每一个输出都构造一个三值函数[23],显然是非常繁琐的,所以这个方法只对较小(2000个门左右)规模的电路有效。

文献[24]提出了一种有效减少CMOS电路冒险功耗的路径平衡算法。该算法同时采用了门裁剪和插入缓冲器的方法来达到路径平衡。门裁剪的方法不仅减少了冒险,而且减少了电路中的有效电容。对于在门裁剪后依然不平衡的路径通过插入缓冲器来达到平衡。由于缓冲器本身也有功耗,因而它的插入必须是的减少的冒险功耗大于本身消耗的功耗。这里缓冲器插入位置是一个比较难解决的问题,因为通过插入缓冲器所减少的功耗与其他插入的缓冲器位置密切相关。 6.1.2 主要研究成果

1、 基于卡诺图的冒险分析与无冒险设计[25]

单变量跳变引起的冒险现象,即在其他变量取某些特定值时,逻辑电路的函数表达式中出现形如A?A项或AA因子,可能导致竞争冒险现象的发生。以卡诺图检测法为基础,指出在用卡诺图化简逻辑函数的同时考虑减少冒险,增加一些附加的制约条件,从

第 21 页 共 33 页

清华大学2012届本科毕业论文

而直接实现电路的无冒险(或者说少冒险)设计。由此提出一种基于卡诺图的无冒险设计----无冒险的卡诺图化简新规则。

新规则如下:

(1) 相邻的1方格画为一个卡诺图,卡诺图尽量的大,圈内的方格数必须是2n个(n=1,

2,??),圈的位置或者全是在某变量的1区,或者全在某变量的0区; (2) 先圈只有一种圈法的1方格;

(3) 任意两个相邻的1方格必有一个卡诺图将他们覆盖; (4) 每个卡诺图尽可能包含未被其它圈圈入的1方格; (5) 所有的1方格都必须被圈入,且卡诺图尽量的少。

通过比较可以发现两种画卡诺图规则的区别在于新规则增加了一条约束,即任意两个相邻的1必有一个卡诺图将他们覆盖,这样便破坏了卡诺图的单独相切性,达到了无冒险设计的目的。

例6-1:化简函数

F?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD 并使其在单变量跳变时没有冒险。

图6.1(a)函数化简后 图6.1(b)运用无冒

通过增加卡诺图消除冒险 险新规则的卡诺图化简

方法一:图6.1(a)所示为函数F的卡诺图,先用传统的卡诺图化简法对函数进行化简,化简后发现图中有两处寻在卡诺图相切的现象,故此时电路有冒险。为了消除冒险,可加两个卡诺图(虚线圈)破坏其相切性,也即增加了两个冗余项,最后得到的逻辑函数式为F?AC?BC?ABD?ABD。

方法二:如图6.1(b)所示,直接用无冒险的卡诺图化简新规则对函数进行化简,

第 22 页 共 33 页

清华大学2012届本科毕业论文

得到F?AC?BC?AB。

通过比较发现,当消除冒险的要求被加入到电路设计中以后,用无冒险的卡诺图化简新规则对函数进行化简更加方便、直接、快速。 2、基于信号行为的冒险检测

引入了信号行为的四值描述[26],用以研究电路中的信号跃迁活动,并把信号行为应用到冒险检测中去,提出了基本门电路对四值行为的运算规则,且给出了用信号四值行为的方法检测二值组合电路冒险的一般方法,这种方法简单、快速、方便、直接,且可以同时检测出静态和动态冒险。

运用信号行为的四值方法来检测二值组合电路冒险的一般方法:

第一步,对于一个给定的输入信号序列,把它转化为对应的行为序列。例如对于如下信号序列:

X=0 0 1 0 0 1 1 1 0 0 1 1 1 0 0 1 0······

只要将该输入序列中连续0的前面诺敢为改为0,连续1的前面诺敢为改为α,最后一位改为1 ,便可获得对应的行为序列:

X=0 α β 0 α 1 1 β 0 α 1 1 β 0 α β······ 注意行为序列中0、1均不可能相邻。

第二步,根据电路结构写出个节点的逻辑表达式,把得到的输入性位置带入逻辑表达式中求得各节点的行为值,由各节点的行为值就可以判断其冒险的产生情况。

如果没有给定输入序列,则直接进入第二步,并对所有输入组合进行分析。 例6-2:检测图6.2所示电路中存在的冒险。

图6.2 例6-2电路

由于本里没有直接给出输入序列,故直接从第二部开始。

第 23 页 共 33 页

清华大学2012届本科毕业论文

首先由电路图写出各节点的逻辑表达式: S1=x; S2=1·x; S3=x·S1; S4=S2+S3。

然后把各个输入行为值代入逻辑表达式就可以得到各个节点的行为值; 当x=0时,S1=x=1, S2=1·x=0,

S3=x·S1=0·1=0, S4=S2+S4=0+0=0;

依次列推,当x=α,x=β,x=1时,汇总与表6-1,通过这张行为表可以非常直观的得出以下结论:当x发生跳变时,节点S3和S4都有可能发生冒险,而节点S4的冒险是由节点S3传递而来的。

表6-1 例6-2检测冒险的四值行为表

3、基于F门的门冻结技术

门冻结技术是用于无冒险电路设计的一项新技术。这一技术把一些现有的门用功能相同的单元(称为F门)代替,F门可以通过插入一个控制信号使其冻结,而冻结的门无法把冒险跳变传送到输出端,通过这一方法可以减少冒险。虽然该方法在功能上与插入缓冲器的做法类似,然而基于面积、功耗等原因在应用中此方法更加有效,F们可以直接取代原来的门,对原有电路的影响非常小。

对普通CMOS库单元的修改如图6.3所示。它通过插入一个N型晶体管使其与原单元电路中的N-网络串联,这个N型晶体管的输入端由一个控制输入信号C驱动。

第 24 页 共 33 页

清华大学2012届本科毕业论文

图6.3 F门基本结构

被修改后的门电路的行为非常直观:当控制输入信号C为高电平的时候,门电路的

操作按照其正常模式,由P-网络和N-网络控制。当控制输入信号C为低电平的时候,门电路的输出与地的连接被割断了,因此它无法放电至0电平

当在大规模电路中使用门冻结技术时,需要严格设置C控制信号并对候选的门进行

是当地选择和分组,关于产生C控制信号的算法以及门选择和门分组的算法,文献[29]由较详细的讨论。把门冻结技术应用于ISCAS’85基准电路,实验结果表明,使用了F门的电路与应用标准静态CMOS门的电路相比,冒险功耗下降了14.0%,总功耗平均下降了6.3%。电路面积只有少量的增加(平均2.8%),而电路速度没有改变。当然,门冻结技术只针对一些冒险比较多的电路,而对于一些冒险较少的电路,门冻结技术应用的效果可能不明显。

对数字电路冒险检测技术与无冒险电路设计的研究一直都是一个广受关注的课题。国内外在此方面研究较多,还需在以下几个方面努力:

(1)多值电路中的多变量跳变所引发的冒险问题是一个极其复杂的现象,运用卡诺图的方法已经无法对其进行详尽的分析,需要找到更有效的方法。

(2)基于F门的门冻结技术用于大规模电路时,需要对被F门替代的门进行快速有效的选择,同时达到减少冒险,降低功耗的目的。而当高冒险出现在关键路径上时,无法用F门替代,需要一种找到有效的新方法在消除冒险同时不会增加延时。 6.2 关于竞争与冒险的检测仪器 6.2.1 逻辑检测仪的研究意义

研究虚拟逻辑分析仪是十分必要的。与传统逻辑分析仪[27]相比,虚拟逻辑分析仪具

第 25 页 共 33 页


关于数字电路竞争-冒险现象的研究(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:圣周四信友祷词

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: