数字逻辑辅助分析工具

数字逻辑功能提取器潘日华童家榕唐璞山复旦大学电子工程系CAD实验室,上海(200433)【摘要】本文介绍一种数字逻辑功能提取工具DLFE(DigitalLogicFunctionExtractor)。该工具能帮助用户从平面化的底层逻辑网表中提取出一套功能明确、易于理解和验证的层次化电路图;在提取的过程中也实现了对电路的功能分析。它采用人机结合的方法,由用户识别功能块(完成一定功能的子电路),由软件实时生成网表中用户选择的那部分电路的电路图,帮助用户识别功能块;并在网表中搜寻与用户识别出的功能块同构的实例,通过归并把电路提高到更高的层次。整个过程是自下而上,不断迭代的,最后将得到层次化的电路图。实验表明,该工具对电路处理后得到的电路图具有功能性明确、划分适当、易于理解的特点。关键字:数字逻辑功能提取,电路图生成,电路同构匹配一、前言数字逻辑功能提取就是分析给定的电路(以文本形式的网表表示),用层次化的方法提取各级功能模块,同时完成逻辑图的绘制。进行功能提取有助于对电路的理解和验证,一方面,基于功能划分的电路易于理解和改进;另一方面,基于功能划分的电路比较容易进行验证、定位错误以及再设计。传统上人们在分析电路时希望有一套完整的电路图,(虽然高层设计语言的出现提供了另一种理解方式,但是电路图的作用仍然是无法完全代替的),事实上在很多情况下没有可用的电路图,如用VHDL等高层设计语言设计得到的电路和未知电路的时候,往往只有电路的逻辑连接关系即网表,因此为了分析这类电路,需要有工具来帮助用户从网表产生电路图。在八十年代就有人研究过怎样从网表生成电路图,他们提出了各种关于美观的电路图的可量化标准,如信号流方向自左向右或自上向下,线交叉数目,线弯曲数等等。文献[1]和[3]提出了减少相邻两个器件列之间线交叉数的算法,文献[2]介绍了深度优先遍历实现单信号流的算法,文献[4]还考虑到用总线归并和调节器件朝向、可变引脚的位置来优化电路图的可理解性。这些算法在生成电路图上是比较有效的。现有的很多软件也包括实现电路图生成的工具,如Workview的Viewgen[5],Candence的SchGen[6],在对适当规模的网表进行处理时,也能生成很好的电路图。但是这些算法和工具都忽略了电路图中的器件数,即图的规模和电路图所表示的电路的功能性也应该是目标函数之一。对于较大的电路,如果直接进行电路图生成,不但花费的时间迅速增加,而且生成的电路图由于规模太大不利于理解,我们可以想象一下一个由门(而不是触发器)构成的四位计数器的电路图的可阅读程度。至于毫无功能性可言的随机电路不管怎么画都无法理解。另一方面,功能明显、规模较小,可以弥补前面所说的线交叉、线弯曲、对称性等目标函数上的不足。因此对于大规模的电路来说,用层次化的电路图表示比较合适,而且每一层的每一个子电路都要有明确的功能。为此,我们设计了DLFE工具,采用功能块识别、自下而上归并的方法来实现上面所说的目标。这里所说的功能块泛指完成一定功能(可以是各种级别)的电路,功能块识别是个交互的过程,功能块的判断由用户完成,工具为用户提供浏览整个电路的手段以帮助识别。归并就是用一个符号来代替相应的子电路。层次化电路图的提取过程就是功能块识别、归并的迭代过程。这个过程中虽然没有提到单个电路图生成,但是单个电路图的生成在功能块识别过程中是不断被调用的。应该指出的是,虽然在前面把拥有电路图作为分析的一个前提,但是在DLFE工具的使用过程中,这两者实际上是统一的,构造层次化电路图这个过程也是对电路进行分析的过程,体现在功能块识别过程中;两者都是自下而上,对部分电路分析的结果使我们不必考虑该部分电路的内部实现,只要知道它是完成什么功能就可以了,下一步分析就可以在更高的基础上进行,这恰恰也完成了对层次化电路图中某个子电路的构造。而且是相互促进的,分析的结果有利于生成层次化电路图,而已生成的电路图又有利于分析。二、总体策略1在大多数电路的设计过程中,一般采取自上向下、层层细分的方法,把一个系统划分为几个子系统,把子系统划分为模块,依次类推。要处理的输入网表往往是通过这...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

确认删除?