[发明专利]基于多水平划分法和赋权超图的大规模集成电路划分方法无效

专利信息
申请号: 201210155738.6 申请日: 2012-05-19
公开(公告)号: CN102693340A 公开(公告)日: 2012-09-26
发明(设计)人: 冷明;孙凌宇;冷子阳 申请(专利权)人: 孙凌宇;冷明;冷子阳
主分类号: G06F17/50 分类号: G06F17/50;G06F17/30
代理公司: 暂无信息 代理人: 暂无信息
地址: 343009 江西省*** 国省代码: 江西;36
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种基于多水平划分法和赋权超图的大规模集成电路划分方法,其采用赋权超图对电路进行数学建模,将电路线网到赋权超图的转换,并保存为赋权超图文件;然后启动基于多水平划分法的赋权超图划分程序,对生成的赋权超图进行划分;最后依据赋权超图的划分结果,修改电路对应的线网,并通过遍历修改后的线网,将得到的电路划分结果以硬件描述语言存储在电路描述文件中。采用本发明的基于多水平划分法和赋权超图的大规模集成电路划分方法,不仅仅有效地提高了电路划分的效率,还显著地提高了电路划分的性能,具有较好的实用性。
搜索关键词: 基于 水平 划分 超图 大规模集成电路 方法
【主权项】:
本发明的技术方案是这样实现的:一种基于多水平划分法和赋权超图的大规模集成电路划分方法,其特征在于,具体步骤如下:步骤1,用硬件描述语言描述该电路,生成该电路的源代码;步骤2,词法分析,从左到右一个个读入该电路的源代码,对构成源代码的字符流进行扫描和分解,从而识别出一个个单词;步骤3,语法分析,在词法分析的基础上将单词序列分解成各类语法短语,依据硬件描述语言的语法规则,确定整个字符流是否构成一个语法上正确的硬件描述语言程序;步骤4,语义分析,在语法分析的基础上审核源代码有无语义错误,为中间代码生成阶段收集类型信息;步骤5,中间代码生成,在语法分析和语义分析的基础上,将源代码生成中间代码,用内部中间格式表示;步骤6,赋权超图文件生成,基于中间代码构造文本描述的电路对应的线网,经过电路线网到赋权超图的转换之后,保存为赋权超图文件;步骤7,赋权超图划分,启动基于多水平划分法的赋权超图划分程序,读取赋权超图文件,采用基于多水平划分法的压缩存储格式对赋权超图进行存储,对生成的赋权超图进行划分,将最终得到的划分结果存储在赋权超图划分文件中;步骤8,修改线网,在检测到基于多水平划分法的赋权超图划分程序完成划分之后,从赋权超图划分文件中读取相应的划分结果,根据划分结果修改电路对应的线网,将划分结果对应的电路逻辑单元搬移到指定的划分子集V1或V2中;步骤9,电路输出,遍历修改后的线网,将得到的电路划分结果以硬件描述语言存储在电路描述文件中;上述的步骤6中,所述的赋权超图文件生成的步骤如下:步骤6.1,基于中间代码构造电路源代码描述电路对应的线网,生成完整电路线网;一个完整的电路线网看作是一个根模块,它由层次化的子模块实例和电路逻辑单元通过信号互连构成,且每个子模块内部由端口、电路逻辑单元、嵌套子模块的实例通过信号连接构成;步骤6.2, 从根模块开始,递归遍历层次化线网的模块,为每个电路逻辑单元编号;步骤6.3,从根模块开始,递归遍历层次化线网的模块,为每个电路逻辑单元之间的信号编号,并确立每个信号x的连接方式,实现到赋权超图的转换;其中,电路线网中的电路逻辑单元用赋权超图的结点表示,电路线网中的信号用赋权超图的超边表示;结点的权值代表电路逻辑单元的大校滑超边的权值代表电路逻辑单元之间信号连线的权值;i为赋权超图中结点的编号,取值范围为1到电路线网中电路逻辑单元的总个数n;j为赋权超图中超边的编号,取值范围为1到电路线网中信号的总个数m;步骤6.4, 将转换得到的赋权超图保存为赋权超图文件; 上述的步骤7中,所述的基于多水平划分法的赋权超图划分方法的步骤如下:步骤7.1,读取赋权超图文件,采用基于多水平划分法的压缩存储格式对赋权超图进行存储;步骤7.2,进入到多水平划分法的粗化阶段,采用赋权超图的结点匹配程序将某些结点结合在一起,得到下一水平层的粗化赋权超图,重复此过程直到粗化赋权超图足够小为止,即得到一个最小赋权超图;步骤7.3,进入到多水平划分法的初始划分阶段,运行基于FM方法的赋权超图划分程序,得到最小赋权超图的初始二划分;步骤7.4,进入到多水平划分法的优化阶段,从最小赋权超图投影回初始赋权超图,在每一水平层的细化赋权超图中,采用禁忌搜索程序对细化赋权超图的投影划分进行优化;步骤7.5,进入到平衡阶段,运行基于FM‑EE方法的赋权超图划分程序,由于在基于多水平划分法的赋权超图划分过程中,可能违背赋权超图划分问题的平衡约束条件,因此在基于多水平划分法的赋权超图划分所求解的基础上,运行基于FM‑EE方法的赋权超图划分方法,使划分解满足平衡约束条件,从而得到赋权超图划分问题的划分解;步骤7.6,将最终得到的赋权超图划分结果存储在赋权超图划分文件中;上述的步骤6.3中,所述的确立信号x连接方式的步骤如下:步骤6.3.1,依次处理信号x的每个管脚连接,支持跨层次连接,寻找到连接端的电路逻辑单元y;步骤6.3.2,如果电路逻辑单元y已经存在信号x的连接中,则忽略该电路逻辑单元y;否则在信号x的连接中增加该电路逻辑单元y;上述的步骤7.1中,所述的赋权超图的基于多水平划分法的压缩存储格式如下:步骤7.1.1,使用vwgts数组存储赋权超图中结点的权值信息,且vwgts数组的大小为赋权超图中的结点个数;步骤7.1.2,使用xadj数组存储每个结点所有邻接超边列表的起始位置信息,即第i条结点的终止位置为第i+1条结点的起始位置减1,且xadj数组的大小为赋权超图中的结点个数加1, xadj数组最后一个元素用于存放最后一条结点的终止位置;步骤7.1.3,使用adjncy数组存储每个结点所有邻接超边的列表信息,第i条结点的邻接超边列表存储在adjncy数组中,从adjncy[xadj[i]]到adjncy[xadj[i+1]‑1];步骤7.1.4,使用eptr数组存储每条超边所包含的结点列表的起始位置信息,即第j条超边的终止位置为第j+1条超边的起始位置减1,且eptr数组的大小为赋权超图中的超边个数加1, eptr数组最后一个元素用于存放最后一条超边的终止位置;步骤7.1.5,使用eind数组存储每条超边所包含结点的列表信息,第j条超边的邻接结点列表存储在eind数组中,从eind[eptr[j]]到eind[eptr[j+1]‑1];步骤7.1.6,使用hewgts数组存储超边的权值信息,且hewgts数组的大小为赋权超图中的超边个数;上述的步骤7.2中,所述的当前水平层粗化赋权超图的结点匹配程序的步骤如下:步骤7.2.1,标注当前水平层粗化赋权超图中所有结点处于未匹配状态;步骤7.2.2,运行赋权超图的结点核值计算程序,基于结点属性函数值进行当前水平层粗化赋权超图中所有结点的核值求解,并按照结点的核值进行非严格降序排序;步骤7.2.3,按照结点核值的非严格降序访问处于未匹配状态的结点v;如果结点v还有邻接结点未匹配,那么选取处于没有匹配状态的且权值最大的邻接超边的邻接结点u和结点v匹配,且标注这两个结点为匹配状态;如果结点v所有邻接匹配结点处于匹配状态,那么结点v仍处于未匹配状态,在粗化过程中直接拷贝到下一水平层的粗化赋权超图中;步骤7.2.4,步骤重复上一步,直至所有结点访问结束;上述的步骤7.4中,所述的禁忌搜索程序的步骤如下:步骤7.4.1,初始化二维辅助数组EDG[2][m],依据当前水平层细化赋权超图的投影划分,初始化二维辅助数组EDG[2][m];步骤7.4.2,计算当前水平层细化赋权超图的投影划分的割切值,依据二维辅助数组EDG[2][m],快速计算当前水平层细化赋权超图的投影划分的割切值;步骤7.4.3,计算所有边界结点的收益值,根据当前水平层细化赋权超图的投影划分,找出所有边界结点,并快速计算每个边界结点的收益值;步骤7.4.4,将所有边界结点的收益值插入到所在划分子集V1或V2的自由状态散列结构中;步骤7.4.5,循环初始化,初始化循环计数器COUNT为0;步骤7.4.6,选择迁移方向和迁移结点,依据当前划分以及平衡容忍度参数,选择迁移方向(假设迁移方向是划分子集A迁移到划分子集B)和迁移结点(假设迁移结点是结点v);步骤7.4.7,删除结点v迁移前的收益值,将结点v迁移前的收益值从结点v迁移前所在的划分子集A的自由状态散列结构或禁忌状态散列结构中删除;步骤7.4.8,更新二维辅助数组EDG[2][m],遍历迁移结点v的所有邻接超边e,执行EDG[A][e]减1操作,EDG[B][e]加1操作;步骤7.4.9,更新当前划分的割切值,依据二维辅助数组EDG[2][m],快速计算当前划分的割切值;步骤7.4.10,更新已找到的最优划分;步骤7.4.11,计算结点v迁移后的收益值,根据结点v所在划分子集B和所在划分子集的另一侧划分子集A,快速计算结点v迁移后的收益值;步骤7.4.12,插入结点v迁移后的收益值,将结点v迁移后的收益值插入到结点v迁移后所在的划分子集B的禁忌状态散列结构中;步骤7.4.13,更新结点v的邻接结点u的收益值,遍历迁移结点v的所有邻接超边e中所有邻接结点u,快速计算邻接结点u的收益值,并更新相应的散列结构;步骤7.4.14,重复步骤7.4.6、7.4.7、7.4.8、7.4.9、7.4.10、7.4.11、7.4.12、7.4.13,直至循环计数器COUNTER到达给定的上限;上述的步骤7.2.2中,所述的赋权超图的结点核值计算程序的步骤如下:步骤7.2.2.1,计算出所有结点的属性函数值;步骤7.2.2.2,对所有结点的属性函数值进行非严格降序的计数排序;步骤7.2.2.3,按照结点属性函数值的非严格降序次序访问每个结点,计算每个结点v的核值;上述的步骤7.2.2.3中,所述的结点v的核值计算的步骤如下:步骤7.2.2.3.1,将结点v的属性函数值作为核值输出;步骤7.2.2.3.2,将结点v从所在的超边e中删除;步骤7.2.2.3.3,如果超边e删除结点v后,仍包含两个及以上结点,则超边e仍然存在,否则删除超边e;步骤7.2.2.3.4,重新计算结点v的邻接结点u的属性函数值;步骤7.2.2.3.5,更新邻接结点u属性函数值的非严格降序计数排序的次序;上述的步骤7.4.1中,所述的初始化二维辅助数组EDG[2][m]的步骤如下:步骤7.4.1.1,二维辅助数组EDG[2][m]清零;步骤7.4.1.2,读取eptr数组和eind数组存储的每条超边所包含的结点信息,基于当前水平层细化赋权超图的投影划分,计算每条超边在划分子集V1和V2的结点个数,即二维辅助数组EDG[2][m]的两行分别存放每条超边在划分子集V1和V2的结点个数;上述的步骤7.4.2和步骤7.4.9中,所述的快速计算当前划分的割切值的步骤如下:步骤7.4.2.1,划分割切值清零;步骤7.4.2.2,遍历每条超边是否结束,如果访问未结束,即存在超边e未被访问,则转步骤7.4.2.3;否则访问结束,返回划分割切值;步骤7.4.2.3,如果满足EDG[0][e] ≥1的条件1和EDG[1][e]≥1的条件2时,意味着超边e在划分子集V1和V2的结点个数都大于等于1,即可判定超边e是两栖边,并将划分割切值累加上当前超边的权值;否则判定超边e不是两栖边,划分割切值不变;步骤7.4.2.4,转步骤7.4.2.2;上述的步骤7.4.3、7.4.11和7.4.13中,所述的快速计算结点v收益值的步骤如下:步骤7.4.3.1,结点v的收益值清零;步骤7.4.3.2,读取结点v的所在划分子集from和所在划分子集的另一侧划分子集to;步骤7.4.3.3,遍历结点v的所有邻接超边e,若二维数组EDG[from][e]值为1,则将收益值加上超边e的权值;若二维数组EDG[to][e]值为0,则将收益值减去超边e的权值;步骤7.4.3.4,返回结点v的收益值;上述的步骤7.4.6,所述的选择迁移方向和迁移结点的步骤如下:步骤7.4.6.1,计算当前划分的平衡状态;步骤7.4.6.2,如果当前划分的平衡状态满足平衡容忍度参数,则在划分子集V1或V2的自由状态散列结构中,选择收益值最大的边界结点为被迁移结点v,迁移方向为结点v所在的划分子集A到另一侧划分子集B;步骤7.4.6.3,如果当前划分的平衡状态不满足平衡容忍度参数,则迁移方向为当前划分较重的划分子集A到另一侧较轻的划分子集B,如果划分子集A的自由状态散列结构不为空,在划分子集A的自由状态散列结构中,选择收益值最大的边界结点v为被迁移结点;否则在划分子集A的禁忌状态散列结构中,选择收益值最大的边界结点v为被迁移结点;上述的步骤7.4.13中,所述的更新相应的散列结构的邻接结点u的收益值的步骤如下:步骤7.4.13.1,如果邻接结点u因为结点v的迁移成为边界结点,那么将邻接结点u的新收益值插入到邻接结点u所在的划分子集的自由状态散列结构中;步骤7.4.13.2,如果邻接结点u因为结点v的迁移成为非边界结点,那么将邻接结点u的旧收益值从邻接结点u所在的划分子集的自由状态散列结构或禁忌状态散列结构中删除;步骤7.4.13.3,如果邻接结点u在结点v的迁移前后始终为边界结点,且在结点v迁移前,邻接结点u的收益值已插入至所在划分子集的自由状态散列结构中,则只需将邻接结点u所处划分子集的自由状态散列结构的旧收益值更新为新收益值;步骤7.4.13.4,如果邻接结点u在结点v的迁移前后始终为边界结点,且在结点v迁移前,邻接结点u的收益值已插入至所在划分子集的禁忌状态散列结构中,则将禁忌状态散列结构中邻接结点u的旧收益值删除,然后将邻接结点u的新收益值插入到邻接结点u所在的划分子集的自由状态散列结构中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于孙凌宇;冷明;冷子阳,未经孙凌宇;冷明;冷子阳许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201210155738.6/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top