[发明专利]基于Python的EDA软件二次开发系统有效
| 申请号: | 202211050858.X | 申请日: | 2022-08-31 |
| 公开(公告)号: | CN115113860B | 公开(公告)日: | 2022-11-18 |
| 发明(设计)人: | 廖志刚;曹立言;党晶涛 | 申请(专利权)人: | 北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司 |
| 主分类号: | G06F8/30 | 分类号: | G06F8/30 |
| 代理公司: | 北京锺维联合知识产权代理有限公司 11579 | 代理人: | 丁慧玲 |
| 地址: | 100193 北京市海淀区东北旺北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 python eda 软件 二次开发 系统 | ||
本发明涉及一种基于Python的EDA软件二次开发系统,所述系统包括预先定义的采用C++编写的底层的业务内核接口集合{A1,A2,…AM}、采用Python编写的上层的用户接口集合{B1,B2,…BN}、映射表、存储有计算机程序的存储器和处理器;其中,Ai为第i个业务内核接口,i的取值范围为1到M;Bj为第j个用户接口,j的取值范围为1到N;所述映射表用于定义业务内核接口和用户接口的映射关系,Ai与至少一个Bj具有映射关系,Bj与至少一个Ai具有映射关系。本发明提高了单机模式运行的EDA软件的二次开发的执行效率和可扩展性,且降低了二次开发难度和开发成本。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于Python的EDA软件二次开发系统。
背景技术
随着工艺、材料等技术的发展,现代电路设计规模越来越大,集成电路器件集成度越来越高,使用EDA(Electronic Design Automation)软件进行EDA工程设计时,面临以下问题:(1)面对集成电路设计中的超大量元件、引脚等部件微调、修改工作,如果依靠传统纯手工操作EDA,将带来大量重复、易错的手工操作,效率低,且重复性操作易引起人员操作疲劳,导致偏差错误放大,造成严重的设计缺陷。(2)由于不同用户流程差异,通用EDA软件不能完全覆盖个体用户差异需求。因此需要通过二次开发,按用户个性化需求定制化功能以达到期望目标。
现有技术中,基于Skill语言作为二次开发技术的Allegro产品,但是Skill语言仅适用于Allegro产品的二次开发,脱离Allegro产品后无法使用,学习成本高,通用性差。CN102929645B公开了一种内嵌Python解释器实现软件系统二次开发的方法,但是由于EDA软件通常采用单机模式运行,即独立进程运行,如果直接使用CN102929645B的方法,会导致IO开销增大,时延变长,执行效率低,无法满足单机模式运行的EDA软件的二次开发需求。由此可知,提供一种适用于单机模式运行的EDA软件的二次开发技术成为亟待解决的技术问题。
发明内容
本发明目的在于,提供一种基于Python的EDA软件二次开发系统,提高了单机模式运行的EDA软件的二次开发的执行效率和可扩展性,且降低了二次开发难度和开发成本。
本发明提供了一种基于Python的EDA软件二次开发系统,所述EDA软件采用单机模式运行,所述系统包括预先定义的采用C++编写的底层的业务内核接口集合{A1,A2,…AM}、采用Python编写的上层的用户接口集合{B1,B2,…BN}、映射表、存储有计算机程序的存储器和处理器;其中,Ai为第i个业务内核接口,i的取值范围为1到M,M为业务内核接口总数;Bj为第j个用户接口,j的取值范围为1到N,N为用户接口总数;所述映射表用于定义业务内核接口和用户接口的映射关系,Ai与至少一个Bj具有映射关系,Bj与至少一个Ai具有映射关系;
当所述计算机程序被所述处理器执行时,实现以下步骤:
步骤S1、运行所述系统,为每一Ai分配内存地址;
步骤S2、基于所述映射表将Bj所对应的Ai的内存地址与Bj的名称绑定,将Bj的函数与对应的Ai的函数绑定;
步骤S3、获取用户基于上层业务逻辑输入的Python脚本,所述Python脚本包括至少一个Bj的名称;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司,未经北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211050858.X/2.html,转载请声明来源钻瓜专利网。





