[发明专利]基于Python的EDA软件二次开发系统有效
| 申请号: | 202211050858.X | 申请日: | 2022-08-31 |
| 公开(公告)号: | CN115113860B | 公开(公告)日: | 2022-11-18 |
| 发明(设计)人: | 廖志刚;曹立言;党晶涛 | 申请(专利权)人: | 北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司 |
| 主分类号: | G06F8/30 | 分类号: | G06F8/30 |
| 代理公司: | 北京锺维联合知识产权代理有限公司 11579 | 代理人: | 丁慧玲 |
| 地址: | 100193 北京市海淀区东北旺北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 python eda 软件 二次开发 系统 | ||
1.一种基于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的名称;
步骤S4、解析并执行所述Python脚本,当执行至Bj时,基于Bj的名称绑定的Ai的内存地址直接调用对应的Ai的函数执行对应的业务操作。
2.根据权利要求1所述的系统,其特征在于,
Ai按照最小粒度业务单元抽取生成。
3.根据权利要求1所述的系统,其特征在于,
所述步骤S1中,还包括为每一Ai分配对应的CPU时间和硬盘资源。
4.根据权利要求1所述的系统,其特征在于,
Bj基于预设的接口结构生成,所述预设的接口结构包括接口函数数据段,还包括输入参数数据段、返回值数据段中的一个或多个,所述函数数据段用于定义Bj对应的函数,所述返回值数据段用于定义返回数据类型,所述返回数据类型包括对象类型、对象集合类型、枚举值类型、字符串类型和布尔类型。
5.根据权利要求4所述的系统,其特征在于,
所述步骤S2包括:
步骤S21、采用PYBIND11_EMBEDDED_MODULE接口为Bj绑定添加主体模块定义,所述主体模块包括多个子模块,每一子模块对应一个业务类别;
步骤S22、采用def_submodule接口为Bj绑定对应的子模块定义;
步骤S23、基于Bj对应的主体模块定义、子模块定义和对应的接口结构生成Bj对应的接口名称;
步骤S24、基于Bj与Ai的映射关系,采用module::def内外部接口将Bj所对应的Ai的内存地址与Bj的名称绑定,将Bj的函数与对应的Ai的函数绑定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司,未经北京云枢创新软件技术有限公司;上海合见工业软件集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211050858.X/1.html,转载请声明来源钻瓜专利网。





