(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(10)申请公布号 CN 103049619 A表格的函数使用方法
(43)申请公布日 2013.04.17
(21)申请号 CN201210592497.1
(22)申请日 2012.12.31
(71)申请人 上海宇芯科技有限公司
    地址 201203 上海市浦东新区张江高科技园区达尔文路88号3号楼4楼
(72)发明人 黄寅 胡健 胡兴微
(74)专利代理机构 上海唯源专利代理有限公司
    代理人 曾耀先
(51)Int.CI
      G06F17/50
                                                                  权利要求说明书 说明书 幅图
(54)发明名称
      一种利用表格完成芯片设计集成功能的方法
(57)摘要
      一种利用表格完成芯片设计集成功能的方法,包括:手动输入子模块表格及集成模块表格的内容;读入所述子模块表格及集成模块表格的内容;根据预定义的所述子模块表格及集成模块表格的内容与子模块源代码及集成模块源代码之间的映射关系而自动生成所述子模块源代码及集成模块源代码。。利用本发明的方法与软件脚本可以极大提高集成效率,确保文档与源代码、不同模块版本的一致性,并同时兼具设计和验证的功能。
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种利用表格完成芯片设计集成功能的方法,其特征在于,包括:
手动输入子模块表格及集成模块表格的内容;
读入所述子模块表格及集成模块表格的内容;
根据预定义的所述子模块表格及集成模块表格的内容与子模块源代码及集成模块源代码之间的映射关系而自动生成所述子模块源代码及集成模块源代码。
2.根据权利要求1所述的利用表格完成芯片设计集成功能的方法,其特征在于,只含单张表格的工作簿可生成子模块源代码;含所有子模块的多张表格及定义连接关系的集成模块表格的
工作簿所共同组成的工作簿,可生成集成模块,以此完成设计集成。
3.根据权利要求1所述的利用表格完成芯片设计集成功能的方法,其特征在于,还包括在读入所述子模块表格及集成模块表格的内容后,分别自动验证所述子模块表格及集成模块表格与所述子模块源代码及集成模块源代码的一致性。
4.根据权利要求3所述的利用表格完成芯片设计集成功能的方法,其特征在于,根据所述自动验证的结果生成所述子模块源代码及集成模块源代码或修改所述子模块表格及集成模块表格的内容。
5.根据权利要求3所述的利用表格完成芯片设计集成功能的方法,其特征在于,所述子模块表格及集成模块表格分别包含模块文件所在目录的信息,根据所述模块文件所在目录的信息自动判断是工作于设计模式还是验证模式。
6.根据权利要求1所述的利用表格完成芯片设计集成功能的方法,其特征在于,所述子模块源代码包括模块名、接口及其声明。
7.根据权利要求1所述的利用表格完成芯片设计集成功能的方法,其特征在于,所述集成模块
源代码模块名,接口、其声明及描述连接关系的逻辑内容。
说  明  书
技术领域
本发明涉及一种利用表格完成芯片设计集成功能的方法。
背景技术
芯片设计已达到数千万乃至数亿晶体管的规模,必须将其划分为多个模块由多人完成。在其过程中,不可避免的涉及一个步骤:将各子模块连接到一起,即集成。传统上,集成由手工输入源代码完成。然而由于规模的巨大,子模块数目常以百计,其每个的接口可能上千,所有的连线可能超过数万。工程进展还经常临时提出增减修改的要求,工作量巨大、极易出错、可继承性差,由此亟需一种高效可靠的集成方法。
目前,现有子模块及连接子模块的顶层模块(亦称集成模块)均由手工输入源代码完成。以下以典型的Verilog硬件描述语言解释集成的过程,对于其他语言如VHDL等,其集成的过程
类似。
图1至图4是传统芯片设计集成的示意图。图1和图2分别是传统芯片设计集成中的子模块示例,其中,图1(a)和图2(a)示出了两个子模块的源代码,包括模块名、接口及其声明(输入输出属性,位宽),另外,省略号部分的内容为逻辑描述部分,不在与本发明相关的论述范围内。
图3示意了传统芯片设计集成中的集成模块的源代码,包含模块名,接口及其声明,以及描述连接关系的逻辑内容:例化的子模块原名、例化名、各接口的连接关系等(类似于软件中的函数调用,硬件例化相当于实体拷贝)。
图4为传统芯片设计集成中的示意性集成结构图。可见即便是非常简单的子模块,集成模块的复杂度已经大为提高。对于当前芯片的设计规模,集成模块往往超过十万行源代码的规模。
由此可见,现有手工集成工作量巨大、极易出错、可继承性差。
发明内容
鉴于如上所述,本发明的目的在于提供一种高效可靠的利用表格完成芯片设计集成功能的方法,能极大减少工作量,并易于修改和继承。
为了实现本发明的目的,提供一种利用表格完成芯片设计集成功能的方法:包括:手动输入子模块表格及集成模块表格的内容;读入所述子模块表格及集成模块表格的内容;根据预定义的所述子模块表格及集成模块表格的内容与子模块源代码及集成模块源代码之间的映射关系而自动生成所述子模块源代码及集成模块源代码。
在本发明中,也可以,只含单张表格的工作簿可生成子模块源代码;含所有子模块的多张表格及定义连接关系的集成模块表格的工作簿所共同组成的工作簿,可生成集成模块,以此完成设计集成。
在本发明中,也可以,还包括在读入所述子模块表格及集成模块表格的内容后,分别自动验证所述子模块表格及集成模块表格与所述子模块源代码及集成模块源代码的一致性。
在本发明中,也可以,根据所述自动验证的结果生成所述子模块源代码及集成模块源代码或修改所述子模块表格及集成模块表格的内容。
在本发明中,也可以,所述子模块表格及集成模块表格分别包含模块文件所在目录的信息,根据所述模块文件所在目录的信息自动判断是工作于设计模式还是验证模式。
在本发明中,也可以,其特征在于,所述子模块源代码包括模块名、接口及其声明。
在本发明中,也可以,所述集成模块源代码模块名,接口、其声明及描述连接关系的逻辑内容。
本发明采用预定义的表格与模块的映射方法,兼具设计与验证功能的用于完成芯片设计集成功能。不但能生成顶层(集成)模块和空的子模块(含模块及接口声明,不含逻辑部分)源代码,而且可以验证表格与模块源代码的一致性。