发信人: cgl (老顽童), 信区: ECE
标  题: 数字逻辑功能提取器(2)
发信站: 紫 丁 香 (Mon Oct 12 15:05:47 1998), 转信

             一、前         言

        数字逻辑功能提取就是分析给定的电路(以文本形式的网表表
示),用层次化的方法提取各级功能模块,同时完成逻辑图的绘制。进
行功能提取有助于对电路的理解和验证,一方面,基于功能划分的电路
易于理解和改进;另一方面,基于功能划分的电路比较容易进行验证、
定位错误以及再设计。传统上人们在分析电路时希望有一套完整的电路
图,(虽然高层设计语言的出现提供了另一种理解方式,但是电路图的
作用仍然是无法完全代替的),事实上在很多情况下没有可用的电路图,
如用 VHDL等高层设计语言设计得到的电路和未知电路的时候,往往只
有电路的逻辑连接关系即网表,因此为了分析这类电路,需要有工具来
帮助用户从网表产生电路图。
        在八十年代就有人研究过怎样从网表生成电路图,他们提出了各
种关于美观的电路图的可量化标准,如信号流方向自左向右或自上向下,
线交叉数目,线弯曲数等等。这些算法在生成电路图上是比较有效的。现
有的很多软件也包括实现电路图生成的工具,如Workview 的Viewgen ,在
对适当规模的网表进行处理时,也能生成很好的电路图。
        但是这些算法和工具都忽略了电路图中的器件数,即图的规模和电
路图所表示的电路的功能性也应该是目标函数之一。对于较大的电路,如果

直接进行电路图生成,不但花费的时间迅速增加,而且生成的电路图由于规
模太大不利于理解,我们可以想象一下一个由门(而不是触发器)构成的四
位计数器的电路图的可阅读程度。至于毫无功能性可言的随机电路不管怎么
画都无法理解。另一方面,功能明显、规模较小,可以弥补前面所说的线交
叉、线弯曲、对称性等目标函数上的不足。因此对于大规模的电路来说,用
层次化的电路图表示比较合适,而且每一层的每一个子电路都要有明确的功
能。
        为此,我们设计了 DLFE 工具,采用功能块识别、自下而上归并的方
法来实现上面所说的目标。这里所说的功能块泛指完成一定功能(可以是各
种级别)的电路,功能块识别是个交互的过程,功能块的判断由用户完成,工
具为用户提供浏览整个电路的手段以帮助识别。归并就是用一个符号来代替相
应的子电路。层次化电路图的提取过程就是功能块识别、归并的迭代过程。这
个过程中虽然没有提到单个电路图生成,但是单个电路图的生成在功能块识别
过程中是不断被调用的。
        应该指出的是,虽然在前面把拥有电路图作为分析的一个前提,但是在
 DLFE 工具的使用过程中,这两者实际上是统一的,构造层次化电路图这个过
程也是对电路进行分析的过程,体现在功能块识别过程中;两者都是自下而上,
对部分电路分析的结果使我们不必考虑该部分电路的内部实现,只要知道它是完
成什么功能就可以了,下一步分析就可以在更高的基础上进行,这恰恰也完成了
对层次化电路图中某个子电路的构造。而且是相互促进的,分析的结果有利于生
成层次化电路图,而已生成的电路图又有利于分析。
--

        老顽童

※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: wb502.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.590毫秒