CN115618777A - 文件生成方法、装置、设备及存储介质 - Google Patents
文件生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115618777A CN115618777A CN202211318672.8A CN202211318672A CN115618777A CN 115618777 A CN115618777 A CN 115618777A CN 202211318672 A CN202211318672 A CN 202211318672A CN 115618777 A CN115618777 A CN 115618777A
- Authority
- CN
- China
- Prior art keywords
- macro definition
- preset
- file
- definition file
- macro
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
Abstract
本发明公开了文件生成方法、装置、设备及存储介质。该方法包括:获取预设格式的预设入口文件,读取预设入口文件中的预设宏定义信息,根据预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。通过采用上述技术方案,在预设入口文件中包含预设宏定义信息,在需要生成宏定义文件时,通过读取预设入口文件中的预设宏定义信息,自动生成分别用于芯片设计和芯片验证的宏定义文件,保证芯片设计阶段和芯片验证阶段的宏定义相匹配,保证仿真和验证工作的正确进行,避免芯片出现问题,且能够提高宏定义文件的生成效率。
Description
技术领域
本发明涉及芯片设计及芯片验证技术领域,尤其涉及文件生成方法、装置、设备及存储介质。
背景技术
在芯片设计及芯片验证过程中,通常可以采用宏定义的方式对芯片规格、数据位宽或位置变量等参数进行定义,可以方便芯片开发项目(以下简称芯片项目或项目)的迭代。
目前,设计阶段的宏定义和验证阶段的宏定义相互独立,设计组负责设计部分的宏定义,验证组负责验证部分的宏定义,一般是由工作人员手动编写符合相应阶段所需格式的包含宏定义的代码文件,也即宏定义文件。如果芯片设计和芯片验证的宏定义部分不匹配,则可能造成仿真和验证工作不能正确的进行。以数据位宽为例,如果验证的宏位宽定义少于设计的宏位宽定义,则验证空间将小于设计空间,这样导致设计不会被充分的验证,从而有可能导致芯片出现问题。
发明内容
本发明提供了文件生成方法、装置、设备及存储介质,可以自动生成用于芯片设计和芯片验证的宏定义文件。
根据本发明的一方面,提供了一种文件生成方法,包括:
获取预设格式的预设入口文件;
读取所述预设入口文件中的预设宏定义信息;
根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,所述第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,所述第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
根据本发明的另一方面,提供了一种文件生成装置,包括:
入口文件获取模块,用于获取预设格式的预设入口文件;
宏定义信息读取模块,用于读取所述预设入口文件中的预设宏定义信息;
宏定义文件生成模块,用于根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,所述第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,所述第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的文件生成方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的文件生成方法。
本发明实施例的技术方案,获取预设格式的预设入口文件,读取预设入口文件中的预设宏定义信息,根据预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。通过采用上述技术方案,在预设入口文件中包含预设宏定义信息,在需要生成宏定义文件时,通过读取预设入口文件中的预设宏定义信息,自动生成分别用于芯片设计和芯片验证的宏定义文件,保证芯片设计阶段和芯片验证阶段的宏定义相匹配,保证仿真和验证工作的正确进行,避免芯片出现问题,且减少手动编写操作,能够提高宏定义文件的生成效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例提供的一种文件生成方法的流程图;
图2是根据本发明实施例提供的又一种文件生成方法的流程图;
图3是根据本发明实施例提供的一种文件生成装置的结构示意图;
图4是实现本发明实施例的文件生成方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1为本发明实施例提供了一种文件生成方法的流程图,本实施例可适用于芯片开发阶段生成宏定义文件的情况,该方法可以由文件生成装置来执行,该文件生成装置可以采用硬件和/或软件的形式实现,该文件生成装置可配置于电子设备中。其中,该电子设备可以是手机、平板电脑以及笔记本电脑等移动终端,也可以为个人计算机(PersonalComputer,PC)端或服务器等设备。如图1所示,该方法包括:
步骤101、获取预设格式的预设入口文件。
本发明实施例中,预设入口文件可以理解为在项目开始时,统一编写的包含预设宏定义信息的文件。示例性的,预设宏定义信息可以理解为针对当前项目预先编写的芯片相关参数的宏定义信息,如芯片规格相关的参数的宏定义信息等。预设入口文件可以经过多人审核,以保证预设入口文件中文件内容的准确性。通过检视一个公共的入口文件,确定宏的正确性,大大减少宏的检视时间,同时可以保证,宏定义过的部分是正确的。
示例性的,预设格式可以包括对于用户可读性和可操作性较高的格式,如Excel格式,方便相关人员对预设宏定义信息的编写以及审核等。可选的,Excel格式的预设入口文件中可以包含多列,各列可分别用于存入宏名称(可理解为参数名)、宏定义的值(可理解为参数值)以及宏名称的含义等,对于双规格或更多规格的芯片项目,每个宏名称可以对应两个或更多的宏定义的值。
示例性的,可以将预设入口文件存储于预设文件目录中,从预设文件目录获取预设入口文件,也可通过网络从服务端获取或从外接设备等处获取。
步骤102、读取预设入口文件中的预设宏定义信息。
示例性的,可以采用与预设格式相匹配的读取方式,从预设入口文件中读取预设宏定义信息。
步骤103、根据预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
示例性的,第一目标格式包括芯片设计阶段可识别的宏定义文件的格式,如Verilog格式,也即.v格式;第一目标格式包括芯片验证阶段可识别的宏定义文件的格式,如SystemVerilog格式,也即.sv格式。
相关技术中,用于芯片设计的宏定义文件和用于芯片验证的宏定义文件需要相关人员手动编写,也即需要采用编写代码的方式来直接编写宏定义文件。
本发明实施例中,在读取到预设宏定义信息后,自动根据预设宏定义信息生成用于芯片设计的第一宏定义文件和用于芯片验证的第二宏定义文件,使得设计和验证依赖于同样的入口文件,保证设计空间和验证空间是一致的,而非割裂的,保证验证空间的完整性,提高芯片的验证充分性,并且,减少相关人员的代码编写,可直接生成宏定义文件,提高宏定义文件的生成效率。
本发明实施例的文件生成方法,获取预设格式的预设入口文件,读取预设入口文件中的预设宏定义信息,根据预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。通过采用上述技术方案,在预设入口文件中包含预设宏定义信息,在需要生成宏定义文件时,通过读取预设入口文件中的预设宏定义信息,自动生成分别用于芯片设计和芯片验证的宏定义文件,保证芯片设计阶段和芯片验证阶段的宏定义相匹配,保证仿真和验证工作的正确进行,避免芯片出现问题,且减少手动编写操作,能够提高宏定义文件的生成效率。
在一些实施例中,预设宏定义信息包括以下至少一种:预先设定的与芯片规格相关的参数的宏定义信息;预先设定的芯片中至少两个模块共用的参数的宏定义信息;预先设定的芯片所属项目的特有参数的宏定义信息。这样设置的好处在于,可以合理地预先设定所需的宏定义信息,提高后续生成的宏定义文件的准确性。
示例性的,芯片规格相关的参数例如可包括芯片尺寸、虚拟局域网(VirtualLocal Area Network,VLAN)表的规格、三层路由表的规格或二层组播表的规格等等。芯片中至少两个模块共用的参数例如可包括两个或多个模块均涉及到的参数,如某个接口的位宽等参数。芯片所属项目的特有参数可以理解为随着项目变化而变化的参数,例如在已有项目基础上新增的参数等。
相关技术中,在模块验证部分,存在很多共宏(也即多个模块均涉及的宏定义)多次定义。比如A接口的位宽,在不同的模块中,由不同的代码编写(coding)人员进行不同的命名和多次定义,这样容易出现问题,如每人定义一次可能因出现人为错误而导致位宽不一样,且同一个内容的不同的定义名称浪费句柄,浪费编译时间,若使用同样的名称,在集成阶段还会造成覆盖编译,增加调试(debug)难度。
本发明实施例中,对芯片中至少两个模块共用的参数的宏定义信息进行预先设定,并编写于预设入口文件中,可以有效解决上述问题,保证宏的使用是统一的,避免出现多次重复定义。
在一些实施例中,所述预设宏定义信息中包括预设公共宏定义信息、帧格式宏定义信息和验证环境宏定义信息;所述第二宏定义文件包括芯片规格信息宏定义文件、帧格式宏定义文件和验证环境宏定义文件。其中,所述根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,包括:根据所述预设公共宏定义信息生成第一宏定义文件;根据所述预设公共宏定义信息生成芯片规格信息宏定义文件;根据所述帧格式宏定义信息生成所述帧格式宏定义文件;根据所述验证环境宏定义信息生成所述验证环境宏定义文件。这样设置的好处在于,对预设宏定义信息进行类别划分,区分设计和验证公用的宏定义部分以及验证特有的宏定义部分,进而便于生成不同类型的宏定义文件。
示例性的,预设公共宏定义信息可以理解为设计和验证均需要用到的宏定义信息,第一宏定义文件和芯片规格信息宏定义文件可以理解为分别供设计和验证使用的格式不同但宏定义内容相同的宏定义文件。帧格式宏定义信息中可以包括帧相关的宏定义,如以太协议类型和网际协议(Internet Protocol,IP)的协议类型等,相应的,帧格式宏定义文件中包含帧格式宏定义信息。验证环境宏定义文件中可以包括环境内容中使用的相关宏和数组等,如目标顶部路径(target_top_top_path)、叶子类型和端口(port)速率等。
图2是根据本发明实施例提供的又一种文件生成方法的流程图,在上述各可选实施例基础上,对预设宏定义信息的读取以及宏定义文件的生成进行优化。如图2所示,该方法包括:
步骤201、获取预设格式的预设入口文件。
可选的,预设格式为Excel格式。示例性的,利用Excel编辑软件(或称为Excel工具)打开预设入口文件。预设入口文件中的预设宏定义信息包括预先设定的与芯片规格相关的参数的宏定义信息,预先设定的芯片中至少两个模块共用的参数的宏定义信息,以及预先设定的芯片所属项目的特有参数的宏定义信息。
可选的,预设入口文件可包含于Excel工具中,具体可以以Excel表格的形式存在。例如,可包括预设公共宏定义信息表格(记为common_def或ic_sepc_info_def)、帧格式宏定义信息表格(记为common_frm_def)和验证环境宏定义信息表格(可记为env_def)。Excel工具中还可包括其他文件,如使用指南、维护记录、以及与项目相关的其他内容等。
步骤202、利用预设编码工具读取预设入口文件中的预设宏定义信息。
可选的,预设编码工具包括Visual Basic,简称VB。示例性的,可以利用Excel编辑软件中的VB,读取预设入口文件中的预设公共宏定义信息、帧格式宏定义信息和验证环境宏定义信息。
步骤203、利用预设编码工具将预设公共宏定义信息提取至第一页面和第二页面,将帧格式宏定义信息提取至第三页面,将验证环境宏定义信息提取至第四页面。
示例性的,页面可以理解为Excel中的工作表,利用VB将不同类型的预设宏定义信息分别提取至不同的页面中。将预设公共宏定义信息提取至第一页面和第二页面,也即,第一页面和第二页面中均包括预设公共宏定义信息。
可选的,在所述利用所述预设编码工具根据所述第一页面中的页面内容生成第一宏定义文件之前,接收用户针对所述第一页面、所述第二页面、所述第三页面和所述第四页面中的至少一个页面,进行的页面内容的修改操作,并根据所述修改操作更新相应页面中的页面内容。这样设置的好处在于,在根据页面内容生成对应的宏定义文件之前,允许用户根据实际情况对页面内容进行修改,以便生成更加准确的宏定义文件。
示例性的,修改操作可以包括增加宏定义信息或修改宏定义的值等。
步骤204、利用预设编码工具根据第一页面中的页面内容生成第一宏定义文件。
示例性的,利用VB根据第一页面中的页面内容生成Verilog格式的用于芯片设计的宏定义文件。可选的,可以在第一页面中设置第一预设生成控件,用户可以通过触发第一预设生成控件来触发第一宏定义文件的生成,触发方式例如可以是点击等。若在生成第一宏定义文件之前,接收用户针对第一页面进行的页面内容的修改操作,并根据修改操作更新第一页面中的页面内容,则根据更新后的第一页面中的页面内容生成第一宏定义文件。第一宏定义文件可记为common_define.v,用于向设计阶段提供。
步骤205、利用预设编码工具根据第二页面中的页面内容生成芯片规格信息宏定义文件。
示例性的,利用VB根据第二页面中的页面内容生成SystemVerilog格式的用于芯片验证的宏定义文件。可选的,可以在第二页面中设置第二预设生成控件,用户可以通过触发第二预设生成控件来触发芯片规格信息宏定义文件的生成,触发方式例如可以是点击等。若在生成芯片规格信息宏定义文件之前,接收用户针对第二页面进行的页面内容的修改操作,并根据修改操作更新第二页面中的页面内容,则根据更新后的第二页面中的页面内容生成芯片规格信息宏定义文件。芯片规格信息宏定义文件可记为ic_spec_info_def.sv,用于向验证阶段提供。
可选的,针对第二页面进行的页面内容的修改操作,可以包括手动添加宏定义信息,可添加与芯片验证流程相关的宏定义信息,如添加芯片的不同频率下的测试模式等。
步骤206、利用预设编码工具根据第三页面中的页面内容生成帧格式宏定义文件。
示例性的,利用VB根据第三页面中的页面内容生成SystemVerilog格式的用于芯片验证的宏定义文件。可选的,可以在第三页面中设置第三预设生成控件,用户可以通过触发第三预设生成控件来触发帧格式宏定义文件的生成,触发方式例如可以是点击等。若在生成帧格式宏定义文件之前,接收用户针对第三页面进行的页面内容的修改操作,并根据修改操作更新第三页面中的页面内容,则根据更新后的第三页面中的页面内容生成帧格式宏定义文件。帧格式宏定义文件可记为common_frm_def.sv,用于向验证阶段提供。
步骤207、利用预设编码工具根据第四页面中的页面内容生成验证环境宏定义文件。
示例性的,利用VB根据第四页面中的页面内容生成SystemVerilog格式的用于芯片验证的宏定义文件。可选的,可以在第四页面中设置第四预设生成控件,用户可以通过触发第四预设生成控件来触发帧格式宏定义文件的生成,触发方式例如可以是点击等。若在生成验证环境宏定义文件之前,接收用户针对第四页面进行的页面内容的修改操作,并根据修改操作更新第四页面中的页面内容,则根据更新后的第四页面中的页面内容生成验证环境宏定义文件。验证环境宏定义文件可记为env_def.sv,用于向验证阶段提供。
本发明实施例的文件生成方法,获取Excel格式的预设入口文件,利用Excel中的VB工具读取预设入口文件中的各种预设宏定义信息,并提取至不同的页面中,利用VB工具自动根据页面内容生成用于芯片设计的宏定义文件,以及用于芯片验证的芯片规格信息宏定义文件、帧格式宏定义文件和验证环境宏定义文件,可保证芯片设计阶段和芯片验证阶段的宏定义相匹配,且多个模块公用的宏是统一的,避免出现多次重复定义,保证仿真和验证工作的正确进行,保证设计空间和验证空间是一致的而非割裂的,保证验证空间的完整性,提高芯片的验证充分性避免芯片出现问题,且能够提高宏定义文件的生成效率。
图3是根据本发明实施例提供的一种文件生成装置的结构示意图。如图3所示,该装置包括:
入口文件获取模块301,用于获取预设格式的预设入口文件;
宏定义信息读取模块302,用于读取所述预设入口文件中的预设宏定义信息;
宏定义文件生成模块303,用于根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,所述第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,所述第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
本发明实施例的文件生成装置,获取预设格式的预设入口文件,读取预设入口文件中的预设宏定义信息,根据预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。通过采用上述技术方案,在预设入口文件中包含预设宏定义信息,在需要生成宏定义文件时,通过读取预设入口文件中的预设宏定义信息,自动生成分别用于芯片设计和芯片验证的宏定义文件,保证芯片设计阶段和芯片验证阶段的宏定义相匹配,保证仿真和验证工作的正确进行,避免芯片出现问题,且能够提高宏定义文件的生成效率。
可选的,所述预设宏定义信息包括以下至少一种:
预先设定的与芯片规格相关的参数的宏定义信息;
预先设定的芯片中至少两个模块共用的参数的宏定义信息;
预先设定的芯片所属项目的特有参数的宏定义信息。
可选的,所述预设宏定义信息中包括预设公共宏定义信息、帧格式宏定义信息和验证环境宏定义信息;所述第二宏定义文件包括芯片规格信息宏定义文件、帧格式宏定义文件和验证环境宏定义文件;
其中,所述宏定义文件生成模块,包括:
第一生成单元,用于根据所述预设公共宏定义信息生成第一宏定义文件;
第二生成单元,用于根据所述预设公共宏定义信息生成芯片规格信息宏定义文件;
第三生成单元,用于根据所述帧格式宏定义信息生成所述帧格式宏定义文件;
第四生成单元,用于根据所述验证环境宏定义信息生成所述验证环境宏定义文件。
可选的,所述宏定义信息读取模块具体用于:利用预设编码工具读取所述预设入口文件中的预设宏定义信息;
其中,该装置还包括:信息提取模块,用于在所述根据所述预设公共宏定义信息生成第一宏定义文件之前,利用预设编码工具将所述预设公共宏定义信息提取至第一页面和第二页面,将所述帧格式宏定义信息提取至第三页面,将所述验证环境宏定义信息提取至第四页面;
其中,第一生成单元,具体用于:利用所述预设编码工具根据所述第一页面中的页面内容生成第一宏定义文件;
第二生成单元,具体用于:利用所述预设编码工具根据所述第二页面中的页面内容生成芯片规格信息宏定义文件;
第三生成单元,具体用于:利用所述预设编码工具根据所述第三页面中的页面内容生成所述帧格式宏定义文件;
第四生成单元,具体用于:利用所述预设编码工具根据所述第四页面中的页面内容生成所述验证环境宏定义文件。
可选的,该装置还包括:
内容修改模块,用于在所述利用所述预设编码工具根据所述第一页面中的页面内容生成第一宏定义文件之前,接收用户针对所述第一页面、所述第二页面、所述第三页面和所述第四页面中的至少一个页面,进行的页面内容的修改操作,并根据所述修改操作更新相应页面中的页面内容。
可选的,所述预设格式包括Excel格式,所述预设编码工具包括Visual Basic。
可选的,所述第一目标格式包括Verilog格式,所述第二目标格式包括SystemVerilog格式。
本发明实施例所提供的文件生成装置可执行本发明任意实施例所提供的文件生成方法,具备执行方法相应的功能模块和有益效果。
图4示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图4所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如文件生成方法。
在一些实施例中,文件生成方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的文件生成方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行文件生成方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种文件生成方法,其特征在于,包括:
获取预设格式的预设入口文件;
读取所述预设入口文件中的预设宏定义信息;
根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,所述第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,所述第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
2.根据权利要求1所述的方法,其特征在于,所述预设宏定义信息包括以下至少一种:
预先设定的与芯片规格相关的参数的宏定义信息;
预先设定的芯片中至少两个模块共用的参数的宏定义信息;
预先设定的芯片所属项目的特有参数的宏定义信息。
3.根据权利要求1所述的方法,其特征在于,所述预设宏定义信息中包括预设公共宏定义信息、帧格式宏定义信息和验证环境宏定义信息;所述第二宏定义文件包括芯片规格信息宏定义文件、帧格式宏定义文件和验证环境宏定义文件;
其中,所述根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,包括:
根据所述预设公共宏定义信息生成第一宏定义文件;
根据所述预设公共宏定义信息生成芯片规格信息宏定义文件;
根据所述帧格式宏定义信息生成所述帧格式宏定义文件;
根据所述验证环境宏定义信息生成所述验证环境宏定义文件。
4.根据权利要求3所述的方法,其特征在于,所述读取所述预设入口文件中的预设宏定义信息,包括:
利用预设编码工具读取所述预设入口文件中的预设宏定义信息;
其中,在所述根据所述预设公共宏定义信息生成第一宏定义文件之前,还包括:
利用预设编码工具将所述预设公共宏定义信息提取至第一页面和第二页面,将所述帧格式宏定义信息提取至第三页面,将所述验证环境宏定义信息提取至第四页面;
其中,根据所述预设公共宏定义信息生成第一宏定义文件,包括:利用所述预设编码工具根据所述第一页面中的页面内容生成第一宏定义文件;
其中,根据所述预设公共宏定义信息生成芯片规格信息宏定义文件,包括:利用所述预设编码工具根据所述第二页面中的页面内容生成芯片规格信息宏定义文件;
其中,根据所述帧格式宏定义信息生成所述帧格式宏定义文件,包括:利用所述预设编码工具根据所述第三页面中的页面内容生成所述帧格式宏定义文件;
其中,根据所述验证环境宏定义信息生成所述验证环境宏定义文件,包括:利用所述预设编码工具根据所述第四页面中的页面内容生成所述验证环境宏定义文件。
5.根据权利要求4所述的方法,其特征在于,在所述利用所述预设编码工具根据所述第一页面中的页面内容生成第一宏定义文件之前,还包括:
接收用户针对所述第一页面、所述第二页面、所述第三页面和所述第四页面中的至少一个页面,进行的页面内容的修改操作,并根据所述修改操作更新相应页面中的页面内容。
6.根据权利要求4所述的方法,其特征在于,所述预设格式包括Excel格式,所述预设编码工具包括VisualBasic。
7.根据权利要求1-6任一所述的方法,其特征在于,所述第一目标格式包括Verilog格式,所述第二目标格式包括SystemVerilog格式。
8.一种文件生成装置,其特征在于,包括:
入口文件获取模块,用于获取预设格式的预设入口文件;
宏定义信息读取模块,用于读取所述预设入口文件中的预设宏定义信息;
宏定义文件生成模块,用于根据所述预设宏定义信息生成第一宏定义文件和第二宏定义文件,其中,所述第一宏定义文件包括第一目标格式的用于芯片设计的宏定义文件,所述第二宏定义文件包括第二目标格式的用于芯片验证的宏定义文件。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的文件生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的文件生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211318672.8A CN115618777A (zh) | 2022-10-26 | 2022-10-26 | 文件生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211318672.8A CN115618777A (zh) | 2022-10-26 | 2022-10-26 | 文件生成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115618777A true CN115618777A (zh) | 2023-01-17 |
Family
ID=84864996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211318672.8A Pending CN115618777A (zh) | 2022-10-26 | 2022-10-26 | 文件生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115618777A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117172208A (zh) * | 2023-11-02 | 2023-12-05 | 摩尔线程智能科技(北京)有限责任公司 | 验证环境的隔离方法、装置、电子设备及存储介质 |
-
2022
- 2022-10-26 CN CN202211318672.8A patent/CN115618777A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117172208A (zh) * | 2023-11-02 | 2023-12-05 | 摩尔线程智能科技(北京)有限责任公司 | 验证环境的隔离方法、装置、电子设备及存储介质 |
CN117172208B (zh) * | 2023-11-02 | 2024-01-23 | 摩尔线程智能科技(北京)有限责任公司 | 验证环境的隔离方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104376043B (zh) | 日志记录与显示方法及装置 | |
CN115618777A (zh) | 文件生成方法、装置、设备及存储介质 | |
CN103777092A (zh) | 一种基于云技术的继电保护测试系统及其方法 | |
CN115469849B (zh) | 一种业务处理系统、方法、电子设备和存储介质 | |
CN117033309A (zh) | 一种数据转换方法、装置、电子设备及可读存储介质 | |
CN115604343A (zh) | 一种数据传输方法、系统、电子设备和存储介质 | |
CN115269431A (zh) | 一种接口测试方法、装置、电子设备及存储介质 | |
CN114443493A (zh) | 一种测试案例生成方法、装置、电子设备和存储介质 | |
CN109948251B (zh) | 基于cad的数据处理方法、装置、设备及存储介质 | |
CN113590217A (zh) | 基于引擎的函数管理方法、装置、电子设备及存储介质 | |
CN112507677A (zh) | 一种电子表单录入及展示的方法和装置 | |
CN115098405B (zh) | 软件产品的测评方法、装置、电子设备及存储介质 | |
CN106909494A (zh) | 一种在基于linux平台的刀片服务器中实时显示bmc日志的方法 | |
CN109920466B (zh) | 一种硬盘测试数据解析方法、装置、终端及存储介质 | |
CN110175116B (zh) | 一种测试日期切换方法、装置及系统 | |
CN115268880A (zh) | 一种代码生成方法、装置、电子设备及存储介质 | |
CN106909493A (zh) | 一种在基于windows平台的刀片服务器中实时显示bmc日志的方法 | |
CN115686479A (zh) | 一种文件的创建方法和相关装置 | |
CN116401855A (zh) | 一种电气自动化设计方法、装置、设备及存储介质 | |
CN117931155A (zh) | 一种代码生成方法、装置、设备及介质 | |
CN117873990A (zh) | 一种基于wal日志的ddl解析方法、装置、设备及存储介质 | |
CN115292179A (zh) | 测试数据的生成方法、装置、电子设备及存储介质 | |
CN117251167A (zh) | 一种软件物料清单构建方法、装置、设备及介质 | |
CN115981657A (zh) | 代码生成方法、装置、电子设备及可读介质 | |
CN116009847A (zh) | 代码生成方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |