计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

ABC对输入MV文件的解决方案网络毕业论文(2)

2013-09-17 01:00
导读:2.1.2 Logic Network网络 一个logic network实际上是一个netlist去掉nets后的网络,SIS就是用logic network网络所表示。在ABC,默认的表示是AIG网络,但logic network是一种

  2.1.2 Logic Network网络

  一个logic network实际上是一个netlist去掉nets后的网络,SIS就是用logic network网络所表示。在ABC,默认的表示是AIG网络,但logic network是一种很有效的中间过渡网络表示形式。在logic network网络中只保留 了PI/PO/latch/latch-input/latch-output这几种数据结构的名字,丢弃了内部node的名字。因为ABC采用AIG进行深层次的综合时,一些AIG操作很难保存AIG结点的名字,比如重写。在logic network中,nodes 能与另一个nodes直接相连。PI/PO端点与node直接相连。一个PO端点与一个PI端点如果有一样的名字和功能,能直接相连。一个PI端点可能有两个扇出但没有扇入。一个PO端点只有一个输入但没有输出。端点并不是一个node也没有逻辑功能。指向端点的指针集合不能通过一个内部node的DFS遍历方法来获取。在logic network网络中,指向PI/PO端点的指针集合储存在相应的数组。

  2.1.3 AIG网络

  AIG网络是ABC中所采用网络的内部主要表示形式。AIG是ABC所特有的,其每个node是两输入的与门和一个扇入/扇出边,并且这个边有一个可选属性指示是否对该边进行取反。在构造AIG的同时,AIG能被压缩通过使用一级结构散列,它使得每一对边最多只能做为一个结点输入。这样,结构散列就能保证:对于每个与门结点,就没有其它带相同子结点的与门;没有仅一个输入的结点;每个与门的层次就能反应输入的层次。所有这些,使得操作AIGs比较操作Logic networks要快很多。

  2.2 发现问题及其根本原因

  在研究的过程中,我们发现会产生ABC输入mv文件经过优化后的blif 文件的输入输出的个数与原先读入mv文件的输入输出个数的不一致问题。这是因为ABC输入mv文件时,主要经过了两步处理。输入mv时,ABC把mv文件转成了NetList,这一步是完全正确的,但在NetList转成AIG时,出现了问题,ABC把latch的输入当成了主输出,把latch的输出当成了主输入,从而造成了有几个latch,就多了几个输出输入。

  笔者认为根本原因在于,ABC对mv文件中的时序电路支持得有限,在将时序转化为组合的过程中,也就是在NetList转成AIG时,采用了不正确的方式去除了Latch,从而造成了有几个latch,就多了几个输出输入。

  3 问题的解决方案及生成blif

  3.1 解决问题

  在尝试直接把NetList网络转成AIG网络时,来处理这个问题,都归于失败。最后不得不考虑在生成的中间网络上找解决方法。

       首先,ABC处理mv文件的过程如下:

        SHAPE  \* MERGEFORMAT

  然后,我们查看了ABC处理blif文件的过程,如下:

   SHAPE  \* MERGEFORMAT

  经过讨论,我们试想能不能构造出如下的一种处理方法来解决问题:

内容来自www.nseac.com

  经过研究,我们发现这条路是可行的。但在解决的过程中我们发现,.mv文件生成的NetList网络与.blif文件生成的NetList网络存在不同。在前面Mv2blif软件的实现方法中寻求灵感,我们试着将这两个相同类型网络转化,最后我们成功解决了这个问题,从而实现了ABC对.mv文件能直接进行处理,并且解决了输入输出个数与原先的输入输出个数的不一致的问题。最终实现了如下版本:

上一篇:网络交际中语言的失范与思考网络毕业论 下一篇:没有了