芯片验证方法及系统技术方案

技术编号:32236558 阅读:34 留言:0更新日期:2022-02-09 17:40
本发明专利技术实施例涉及一种芯片验证方法及系统,该方法包括:根据预设操作指令,对芯片中的内存执行初始化操作;加载预编译好的芯片运行文件;对芯片进行最小系统初始化后,对芯片中各功能模块进行初始化;当确定芯片最小系统和各功能模块均执行初始化完毕后,根据芯片运行文件,执行对芯片的验证操作。通过上述实施方式,在加载预编译好的芯片运行文件之前,就已经完成了对芯片中内存的初始化操作。所以,在芯片中的各功能模块执行初始化时,无需再次执行内存的初始化操作。避免了因为在功能模块初始化时执行对内存的初始化操作占用大量时间的情况发生,大大提升仿真设备的利用率。大大提升仿真设备的利用率。大大提升仿真设备的利用率。

【技术实现步骤摘要】
芯片验证方法及系统


[0001]本专利技术实施例涉及电力电子
,尤其涉及一种芯片验证方法及系统。

技术介绍

[0002]在芯片设计的过程中,芯片的原型验证是非常重要的一个环节,能够在芯片制造之前发现设计中的问题,对芯片的设计成功起到至关重要的作用。对于不同模块和整个系统级的原型验证可以采用不同的验证平台,其中,主要的验证平台有电子设计自动化(Electronic design automation,简称EDA)、emulation(一种是指用软件去模拟出某个系统中各个部件的组成,真实地模拟出系统的运行机制的软件)、现场可编程门阵列(Field programmable gate array,简称FPGA)。
[0003]由于EDA所能仿真的规模较小,且仿真的频率较慢,所以EDA主要用来做模块级或者是小系统级的验证,特别是在大型的数字片上系统(System

on

a

chip,简称SOC)设计中,EDA已经无法满足芯片的原型验证工作,必须借助像emulation、FPGA这种大型的硬件加速器。
[0004]在芯片验证的时候,首先需要对仿真中的系统做必要的初始化工作,才能够对特定的功能进行验证。在一些复杂设计的SOC中,很多模块在初始化阶段使用了大量的静态随机存取存储器(Static Random

Access Memory,简称SRAM)和内存单元,为了保证模块在使用对应内存中的内容时,能够执行与内容相匹配的操作指令,通常需要将内存单元和SRAM等内存空间做初始化操作(如果内存不执行初始化操作,内存中可能遗留有随机值,或者已经失效的内容)。然后再在内存中重新配置与相应操作指令对应的内存内容。
[0005]然而,现有技术中,各功能模块在初始化阶段对内存进行初始化操作时,耗时较长,尤其在对大型SOC芯片中的各功能模块进行初始化过程中,通常需要几个小时甚至更长时间用以完成对内存空间的清零动作,导致整个芯片仿真验证效率随之严重下降,而对于大型的SOC设计中,仿真设备往往是最关键的资源,因此缩短初始化时间,以此提高仿真设备的利用率,是进行芯片原型验证的关键。

技术实现思路

[0006]本申请提供了一种芯片验证方法及系统,以解决现有技术中由于芯片初始化过程中,对于芯片中各功能模块对应的内存空间进行初始化操作耗费时间过长,严重影响仿真设备对芯片进行仿真验证的使用效率的技术问题。
[0007]第一方面,本申请提供了一种芯片验证方法,该方法由芯片验证系统执行,该方法包括:
[0008]根据预设操作指令,对芯片中的内存执行初始化操作;
[0009]加载预编译好的芯片运行文件;
[0010]对芯片进行最小系统初始化后,对芯片中各功能模块进行初始化;
[0011]当确定芯片最小系统和各功能模块均执行初始化完毕后,根据芯片运行文件,执
行对芯片的验证操作。
[0012]第二方面,本申请提供了一种芯片验证系统,该系统包括:
[0013]处理模块,用于根据预设操作指令,对芯片中的内存执行初始化操作;
[0014]加载模块,用于加载预编译好的芯片运行文件;
[0015]处理模块,还用于对芯片进行最小系统初始化后,对芯片中各功能模块进行初始化;
[0016]验证模块,用于当确定处理模块对芯片最小系统和各功能模块均执行初始化完毕后,根据芯片运行文件,执行对芯片的验证操作。
[0017]本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
[0018]本申请实施例提供的该方法,首先根据预设操作指令,对芯片中的内存执行初始化操作,然后再加载预编译好的芯片运行文件。对芯片进行最小系统初始化后,对芯片中各功能模块执行初始化。并在确定芯片最小系统和各功能模块均执行初始化完毕后,根据芯片运行文件,执行对芯片的验证操作。通过本申请实施方式,在加载预编译好的芯片运行文件之前,就已经完成了对芯片中内存的初始化操作。所以,在芯片中的各功能模块执行初始化时,无需再次执行内存的初始化操作。由此,也就避免了因为在功能模块初始化时执行对内存的初始化操作所占用大量时间的情况发生,自然也就大大提升了仿真设备的利用率。
附图说明
[0019]图1为本专利技术实施例提供的一种芯片验证方法流程示意图;
[0020]图2为本专利技术提供的SOC系统结构示意图;
[0021]图3为本专利技术提供的DUT和控制服务器之间建立连接的结构示意图;
[0022]图4为本专利技术实施例提供的另一种芯片验证方法流程示意图;
[0023]图5本专利技术实施例提供的另一种芯片验证方法流程示意图;
[0024]图6为本专利技术提供的一种芯片验证方法整体流程框图;
[0025]图7为本专利技术实施例提供的一种芯片验证系统结构示意图。
具体实施方式
[0026]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0027]为便于对本专利技术实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本专利技术实施例的限定。
[0028]针对
技术介绍
中所提及的技术问题,本申请实施例提供了一种芯片验证方法,具体参见图1所示。
[0029]在介绍本专利技术实时例提供的芯片验证方法流程之前,首先介绍下本申请实施例方法所适用的一种SOC的系统示意图,具体参见图2所示。SOC系统包括:通用的中央处理单元CPU,有些SOC只有单个的CPU,有些则是CPU族以此来满足不同的使用场景。针对不同的使用场景的SOC,会有特定的协处理器来完成特定的功能和任务,通过协处理器来降低CPU的负
载,另外,还包括内存系统,参见图2中每一个协处理器都对应一个SRAM,除了SRAM外,内存系统还包括存储单元。此外,在常用的SOC系统中还有关键接口,如高速的以太、ILKN、PCIe接口,低速的串口等,关键接口和内部的协处理器模块通过内部互联总线连接,协处理通过内部互联网络或者总线和CPU、存储单元连接。
[0030]在芯片验证系统中,也即是在仿真环境中,仿真环境中的芯片运行在测试设备(Design under Test,简称DUT)中,例如FPGA中。控制服务器通过高速接口和DUT进行连接,控制服务器主要是完成对仿真环境中的芯片做初始化配置和验证工作,由于仿真环境中的芯片和真实运行的芯片之间存在很大的频率差异,为了使得DUT和控制服务器之间能够连接,需要采用Speed Bridge进行速率的匹配。具体参见图3所示。
[0031]在芯片验证的时候,首先需要对仿真环境中的芯片,简称仿真芯片做必要的初始化工作,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片验证方法,其特征在于,所述方法由芯片验证系统执行,所述方法包括:根据预设操作指令,对芯片中的内存执行初始化操作;加载预编译好的芯片运行文件;对所述芯片进行最小系统初始化后,对所述芯片中各功能模块进行初始化;当确定所述芯片最小系统和所述各功能模块均执行初始化完毕后,根据所述芯片运行文件,执行对所述芯片的验证操作。2.根据权利要求1所述的方法,其特征在于,所述根据预设操作指令,对所述芯片中的内存执行初始化操作之前,所述方法还包括:对预存储的所述芯片的电阻晶体管逻辑电路RTL语言进行编译,获取芯片运行文件。3.根据权利要求2所述的方法,其特征在于,当所述芯片中的内存所对应的承载主体为虚拟内存模块时,所述芯片运行文件中包括与所述预设操作指令对应的程序代码,所述根据预设操作指令,对所述芯片中的内存执行初始化操作,具体包括:读取所述芯片运行文件,从所述芯片运行文件中获取与所述预设操作指令对应的程序代码;运行所述程序代码,对所述芯片中的内存执行所述初始化操作。4.根据权利要求2所述的方法,其特征在于,当所述芯片中的内存所对应的承载主体为实体内存设备时,所述根据预设操作指令,对所述芯片中的内存执行初始化操作,具体包括:当执行仿真系统初始化操作时,获取预配置的所述预设操作指令;根据所述预设操作指令,采用与所述实体内存设备对应的实际频率,对所述芯片中的内存执行初始化操作。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在所述实体内存设备接入到所述芯片验证系统后,对所述实体内存设备进行降频,以使所述实体内存设备与所述芯片...

【专利技术属性】
技术研发人员:高罗莹梁伟博付博雅
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1