一种基于自适应学习的ECO方法与流程
- 国知局
- 2024-07-31 23:22:44
本发明属于eco,具体涉及一种基于自适应学习的eco方法。
背景技术:
1、eco(engineering change order),意为工程改变命令,是指在数字芯片设计流程中直接修改集成电路的过程,也即修改各个设计阶段(综合阶段、dft阶段、pnr阶段等)的门级网表,使得修改后的电路逻辑功能与预期一致的过程。
2、芯片设计厂商在设计芯片的时候,一般从rtl开始,先对rtl进行逻辑综合,得到综合网表,再加入scan chain等dft设置得到dft网表,再进行布局布线得到pnr网表,这些不同阶段的网表往往具有很强的相似性。然而,传统eco方法是对任意一个阶段的网表进行eco,使之与更改之后的新rtl逻辑等价,但是这种传统方法完全没有考虑到利用相邻阶段网表的相似性,例如dft网表和综合网表的相似性,使得eco的结果在某些情况下表现较差,例如在某一个阶段网表中很多层次结构都被打散,变成flatten的情况。
3、现有技术中的eco方法往往缺乏自适应性,eco一般涉及多个阶段网表的修改,传统的eco方法通常只关注当前阶段的网表修改,而忽略了与其他阶段网表之间的关联性和影响,这可能导致后续阶段网表的eco被当成完全独立的eco任务,无法参考已完成的eco来提高质量和减少时间,从而增加了设计成本和风险。随着芯片设计复杂性的增加,网表中的逻辑模块和电路单元数量急剧增加,使得eco过程变得更加复杂和繁琐,传统的eco方法在处理大量修改时往往效率低下,且容易出错。
技术实现思路
1、本发明提供一种基于自适应学习的eco方法,用于芯片设计中各个阶段网表的eco中,目的在于利用相邻阶段网表的相似性,根据上一阶段的网表的eco解决方案,快速实现当前阶段网表的eco。
2、本发明的方案如下:
3、第一方面,本发明提供一种基于自适应学习的eco方法,所述方法包括以下步骤:
4、步骤s1,获取上一阶段已完成eco的第一网表和当前阶段待eco的第二网表。
5、所述阶段按照从前往后的顺序,包括:综合阶段、dft阶段和pnr阶段,对应的阶段网表分别为:综合网表、dft网表和pnr网表。
6、步骤s2,根据所述第一网表和所述第二网表的结构相似性,确定上一阶段eco涉及网表修改的位置,并在所述第一网表中划定输入边界和输出边界。
7、进一步的,所述步骤s2中根据所述第一网表和所述第二网表的结构相似性,确定上一阶段eco涉及网表修改的位置,包括以下步骤:
8、s21,将所述第一网表和所述第二网表进行差异比较,识别出两者之间的结构差异。
9、s22,基于所述结构差异,定位到上一阶段eco具体修改的逻辑模块或电路单元。
10、s23,分析所述修改的逻辑模块或电路单元,确定其对应的输入信号和输出信号。
11、所述输入边界和输出边界完整包含上一阶段eco修改的逻辑模块或电路单元,以及与其直接相关的电路元素。
12、所述步骤s2中在所述第一网表中划定输入边界和输出边界,包括以下步骤:
13、s24,基于所述步骤s23中确定的输入信号和输出信号,在所述第一网表中标识出与这些信号直接相连的电路元素;
14、s25,将与输入信号直接相连的电路元素及其上游连接构成输入边界;
15、s26,将与输出信号直接相连的电路元素及其下游连接构成输出边界。
16、步骤s3,在所述第二网表中,寻找与所述第一网表中划定的输入边界和输出边界的匹配信号。
17、所述步骤s3中,寻找与所述第一网表中划定的输入边界和输出边界的匹配信号时,如果直接匹配失败,则逐步扩大在所述第二网表中的搜索范围,直至找到与所述第一网表中输入边界和输出边界相匹配的信号。
18、对于输入边界,匹配信号在主要输入pi方向上,则向pi方向扩大搜索范围;
19、对于输出边界,匹配信号在主要输出po方向上,则向po方向扩大搜索范围。
20、步骤s4,根据所述匹配信号划定所述第二网表中待eco的边界范围。
21、若所述上一阶段eco涉及多个逻辑模块或电路单元的修改,则确定上一阶段eco涉及网表修改的位置时,识别出所有被修改的逻辑模块或电路单元,对于每个被修改的逻辑模块或电路单元,分别执行步骤s23确定其对应的输入信号和输出信号;
22、基于所有被修改的逻辑模块或电路单元的输入信号和输出信号,在所述第一网表中综合划定输入边界和输出边界。
23、步骤s5,在所述第二网表中待eco的边界范围进行eco。
24、所述第二网表中待eco的边界范围以外的地方则不进行eco。
25、所述方法还包括验证步骤,用于在eco后验证所述第二网表的功能正确性,所述验证步骤包括:
26、使用模拟工具对eco后的第二网表进行功能仿真,以确认其功能与eco前的预期一致。
27、在所述功能仿真通过验证后,进行物理验证以确保eco后的网表满足物理设计约束。
28、第二方面,本发明提供一种电子设计自动化系统,该系统包括:一个用于存储不同阶段网表的存储器;一个处理器,用于执行第一方面所述的一种基于自适应学习的eco方法。
29、第三方面,本发明提供一种包含指令的计算机可读存储介质,当所述指令被计算机执行时,使计算机执行第一方面所述的一种基于自适应学习的eco方法。
30、本发明与现有技术相比,其有益效果是:
31、本发明解决传统eco算法在某些特定情况下无法取得好结果的问题,包括但不限于当芯片网表的逻辑层次被严重打散(ungroup)甚至变成flatten all的情况,传统全自动的eco算法需要新增大量new instances,后端可能无法接受这么大的eco改动,而本发明提出的方案可以利用相邻阶段网表的相似性,用算法学习相邻阶段的eco改动,从而取得良好的eco结果并大大减少eco时间。
技术特征:1.一种基于自适应学习的eco方法,其特征在于,所述方法用于芯片设计中各个阶段网表的eco中,所述方法包括以下步骤:
2.根据权利要求1所述的一种基于自适应学习的eco方法,其特征在于,所述阶段按照从前往后的顺序,至少包括:综合阶段、dft阶段和pnr阶段,对应的阶段网表分别为:综合网表、dft网表和pnr网表。
3.根据权利要求1所述的一种基于自适应学习的eco方法,其特征在于,所述第二网表中待eco的边界范围以外的地方则不进行eco。
4.根据权利要求1所述的一种基于自适应学习的eco方法,其特征在于,所述步骤s2中根据所述第一网表和所述第二网表的结构相似性,确定上一阶段eco涉及网表修改的位置,包括以下步骤:
5.根据权利要求4所述的一种基于自适应学习的eco方法,其特征在于,所述输入边界和输出边界完整包含上一阶段eco修改的逻辑模块或电路单元,以及与其直接相关的电路元素;所述步骤s2中在所述第一网表中划定输入边界和输出边界,包括以下步骤:
6.根据权利要求5所述的一种基于自适应学习的eco方法,其特征在于,所述步骤s3中,寻找与所述第一网表中划定的输入边界和输出边界的匹配信号时,如果直接匹配失败,则逐步扩大在所述第二网表中的搜索范围,直至找到与所述第一网表中输入边界和输出边界相匹配的信号;
7.根据权利要求4所述的一种基于自适应学习的eco方法,其特征在于,若所述上一阶段eco涉及多个逻辑模块或电路单元的修改,则确定上一阶段eco涉及网表修改的位置时,识别出所有被修改的逻辑模块或电路单元,对于每个被修改的逻辑模块或电路单元,分别执行步骤s23确定其对应的输入信号和输出信号;
8.根据权利要求1至7中任一项所述的一种基于自适应学习的eco方法,其特征在于,所述方法还包括验证步骤,用于在eco后验证所述第二网表的功能正确性,所述验证步骤包括:
9.一种电子设计自动化系统,其特征在于,该系统包括:一个用于存储不同阶段网表的存储器;一个处理器,用于执行根据权利要求1至8中任一项所述的一种基于自适应学习的eco方法。
10.一种包含指令的计算机可读存储介质,当所述指令被计算机执行时,使计算机执行根据权利要求1至8中任一项所述的一种基于自适应学习的eco方法。
技术总结本发明提出了一种基于自适应学习的ECO方法,应用于芯片设计过程中不同阶段网表的ECO操作,该方法通过获取上一阶段已完成ECO的第一网表和当前阶段待ECO的第二网表;基于第一网表和第二网表的结构相似性,确定上一阶段ECO涉及的网表修改位置,并在第一网表中划定输入边界和输出边界;在第二网表中寻找与第一网表中划定的输入边界和输出边界的匹配信号;根据这些匹配信号划定第二网表中待ECO的边界范围;在划定的边界范围内进行ECO操作。该方法提高了ECO的效率和准确性。技术研发人员:张潇,刁屹,魏星,袁峰,杨晓庆,郑林翰,丁琳受保护的技术使用者:奇捷科技(深圳)有限公司技术研发日:技术公布日:2024/7/29本文地址:https://www.jishuxx.com/zhuanli/20240730/197284.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表