芯片验证方法、装置、计算机设备、存储介质和程序产品制造方法及图纸

技术编号:39421637 阅读:8 留言:0更新日期:2023-11-19 16:10
本申请涉及一种芯片验证方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:通过验证模型读取目标寄存器中存储的命令序列的切换点信息;通过所述验证模型执行所述命令序列;在到达所述切换点信息对应的切换点时,保存当前命令序列的第一执行数据,并切换至目标命令序列,且当所述目标命令序列执行完成后,基于所述第一执行数据继续执行当前命令序列,所述目标命令序列中的命令的优先级高于所述当前命令序列中的命令;获取所述验证模型在所述命令序列执行过程中所产生的目标执行结果,基于所述目标执行结果进行芯片验证。采用本方法能够使得在验证过程中验证模型在执行低优先级任务时,能够切换至高优先级任务。务。务。

【技术实现步骤摘要】
芯片验证方法、装置、计算机设备、存储介质和程序产品


[0001]本申请涉及芯片
,特别是涉及一种芯片验证方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]为了提升用户体验、满足API要求,目前的命令流处理器已经支持高、低优先级的两个命令环。顾名思义,这两个命令环中的任务执行优先级不同。大多数情况下,软件驱动层会将任务优先放到低优先级的命令环中。当且仅当API有明确高优先级要求时,软件驱动层会将该任务丢到高优先级命令环。一旦高优先级命令环中有任务被触发,命令流处理器需要立即停下正在解析的低优先级命令、转到高优先级任务开始解析,直到高优先级命令环中的任务都被执行完后,再回到刚刚被打断的低优先级任务中继续执行。为了方便硬件设计,命令流解析器只在解析特定的命令时才会去检查当前是否有高优先级任务被触发。
[0003]虽然对切换点进行了限制,但是从实际应用场景看,高优先级任务随时都可能被触发,高低优先级任务切换的场景复杂多变。而目前已有的验证模型(cmodel)是单线程工程,一旦低优先级任务被触发,就会执行到底,这一行为跟实际的硬件有所区别。硬件命令流解析器和验证模型行为的差异导致一旦硬件最终执行结果有问题,则无法通过简单的比较中间执行结果来进行问题的定位。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够使得在验证过程中验证模型在执行低优先级任务时,能够切换至高优先级任务的芯片验证方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005]第一方面,本申请提供一种芯片验证方法,所述方法包括:
[0006]通过验证模型读取目标寄存器中存储的命令序列的切换点信息;
[0007]通过所述验证模型执行所述命令序列;
[0008]在到达所述切换点信息对应的切换点时,保存当前命令序列的第一执行数据,并切换至目标命令序列,且当所述目标命令序列执行完成后,基于所述第一执行数据继续执行当前命令序列,所述目标命令序列中的命令的优先级高于所述当前命令序列中的命令;
[0009]获取所述验证模型在所述命令序列执行过程中所产生的目标执行结果,基于所述目标执行结果进行芯片验证。
[0010]在其中一个实施例中,所述通过验证模型读取目标寄存器中存储的命令序列的切换点之前,包括:
[0011]生成一段命令序列,并记录所述命令序列中任务切换的切换点信息,将所述切换点信息存储至目标寄存器中。
[0012]在其中一个实施例中,所述生成一段命令序列,并记录所述命令序列中任务切换的切换点信息,将所述切换点信息存储至目标寄存器中,包括:
[0013]生成一段第一命令序列,并记录所述第一命令序列中每一第一告知点之后的任务切换的命令信息,所述第一命令序列中的第一命令的优先级低于所述目标命令序列中的命令;
[0014]基于所述命令信息得到切换点信息,将所述切换点信息存储至目标寄存器中。
[0015]在其中一个实施例中,所述将所述切换点信息存储至目标寄存器中之前,还包括:
[0016]生成一段第二命令序列,并在所述第二命令序列的第二告知点之前,获取所记录的切换点信息,其中所述第二命令序列与所述第一命令序列相同,所述第二告知点和所述第一告知点对应;
[0017]所述通过所述验证模型执行所述命令序列,包括:
[0018]通过所述验证模型执行所述第二命令序列中的命令。
[0019]在其中一个实施例中,所述切换至目标命令序列,包括:
[0020]生成一段目标命令序列,并通过所述验证模型执行所述目标命令序列。
[0021]在其中一个实施例中,所述方法还包括:
[0022]在所述第二命令序列的第二告知点,告知硬件命令流解析器;
[0023]通过所述硬件命令流解析器解析第二命令序列,并基于所述目标寄存器中存储的所述切换点信息确定是否切换至目标命令序列;
[0024]当所述硬件命令流解析器确定切换至目标命令序列时,通过所述硬件命令流解析器保存所述第二命令序列的第二执行数据后,执行所生成的目标命令序列,且当所述目标命令序列执行完成后,基于所述第二执行数据继续执行所述第二命令序列;
[0025]获取所述硬件命令流解析器,在所述第二命令序列以及所述目标命令序列执行过程中所生成的第一执行结果;
[0026]所述基于所述目标执行结果进行芯片验证,包括:
[0027]比较所述目标执行结果和所述第一执行结果得到芯片验证结果。
[0028]在其中一个实施例中,所述生成一段命令序列,并记录所述命令序列中任务切换的切换点,将所述切换点存储至目标寄存器中,包括:
[0029]生成一段第三命令序列,并将所述第三命令序列输入至硬件命令流解析器;
[0030]记录所述硬件命令流解析器在执行所述第三命令序列时,发生任务切换的切换点信息;
[0031]将所述切换点信息存储至目标寄存器中。
[0032]在其中一个实施例中,所述通过所述验证模型执行所述命令序列,包括:
[0033]生成一段第四命令序列,并通过所述验证模型执行所述第四命令序列,其中所述第四命令序列和所述第三命令序列相同;
[0034]所述获取所述验证模型在所述命令序列执行过程中所产生的目标执行结果,包括:
[0035]获取所述验证模型在所述第四命令序列执行过程中,所产生的目标执行结果;
[0036]所述将所述第三命令序列输入至硬件命令流解析器之后,还包括:
[0037]记录所述硬件命令流解析器执行所述第三命令序列,所产生的第二执行结果;
[0038]所述基于所述目标执行结果进行芯片验证,包括:
[0039]根据所述目标执行结果和所述第二执行结果得到芯片验证结果。
[0040]在其中一个实施例中,所述根据所述目标执行结果和所述第二执行结果得到芯片验证结果之后,包括:
[0041]当所述验证结果为验证失败时,产生一段第五命令序列,所述第五命令序列和所述第三命令序列相同;
[0042]基于所述目标寄存器中存储的切换点,控制所述硬件命令流解析器执行所述第五命令序列,确定验证失败的位置。
[0043]在其中一个实施例中,所述生成一段命令序列,包括:
[0044]通过命令流产生器产生一段命令序列;其中所述命令序列包括第六命令序列和第七命令序列中的至少一种;每一所述第六命令序列中随机设置告知点;所述第六命令序列包括至少三层命令结构,所述至少三层命令结构由上至下包括缓冲区命令流层、至少一级直接存储器命令流层和执行命令流模板层;所述第七命令序列包括一层命令结构,且所述第七命令序列的优先级高于所述第六命令序列。
[0045]第二方面,本申请还提供一种芯片验证装置,所述装置包括:
[0046]切换点读取模块,用于通过验证模型读取目标寄存器中存储的命令序列的切换点信息;
[0047]命令执行模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片验证方法,其特征在于,所述方法包括:通过验证模型读取目标寄存器中存储的命令序列的切换点信息;通过所述验证模型执行所述命令序列;在到达所述切换点信息对应的切换点时,保存当前命令序列的第一执行数据,并切换至目标命令序列,且当所述目标命令序列执行完成后,基于所述第一执行数据继续执行当前命令序列,所述目标命令序列中的命令的优先级高于所述当前命令序列中的命令;获取所述验证模型在所述命令序列执行过程中所产生的目标执行结果,基于所述目标执行结果进行芯片验证。2.根据权利要求1所述的方法,其特征在于,所述通过验证模型读取目标寄存器中存储的命令序列的切换点之前,包括:生成一段命令序列,并记录所述命令序列中任务切换的切换点信息,将所述切换点信息存储至目标寄存器中。3.根据权利要求2所述的方法,其特征在于,所述生成一段命令序列,并记录所述命令序列中任务切换的切换点信息,将所述切换点信息存储至目标寄存器中,包括:生成一段第一命令序列,并记录所述第一命令序列中每一第一告知点之后的任务切换的命令信息,所述第一命令序列中的第一命令的优先级低于所述目标命令序列中的命令;基于所述命令信息得到切换点信息,将所述切换点信息存储至目标寄存器中。4.根据权利要求3所述的方法,其特征在于,所述将所述切换点信息存储至目标寄存器中之前,还包括:生成一段第二命令序列,并在所述第二命令序列的第二告知点之前,获取所记录的切换点信息,其中所述第二命令序列与所述第一命令序列相同,所述第二告知点和所述第一告知点对应;所述通过所述验证模型执行所述命令序列,包括:通过所述验证模型执行所述第二命令序列中的命令。5.根据权利要求3或4所述的方法,其特征在于,所述切换至目标命令序列,包括:生成一段目标命令序列,并通过所述验证模型执行所述目标命令序列。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:在所述第二命令序列的第二告知点,告知硬件命令流解析器;通过所述硬件命令流解析器解析第二命令序列,并基于所述目标寄存器中存储的所述切换点信息确定是否切换至目标命令序列;当所述硬件命令流解析器确定切换至目标命令序列时,通过所述硬件命令流解析器保存所述第二命令序列的第二执行数据后,执行所生成的目标命令序列,且当所述目标命令序列执行完成后,基于所述第二执行数据继续执行所述第二命令序列;获取所述硬件命令流解析器,在所述第二命令序列以及所述目标命令序列执行过程中所生成的第一执行结果;所述基于所述目标执行结果进行芯片验证,包括:比较所述目标执行结果和所述第一执行结果得到芯片验证结果。7.根据权利要求2所述的方法,其特征在于,所述生成一段命令序列,并记录所述命令序列中任务切换的切换点,将所述切换点存储至目标寄存器中,包括:
生成一段第三命令序列,并将所述第三命令序列输入至硬件命令流解析器...

【专利技术属性】
技术研发人员:汪莹武凤霞
申请(专利权)人:格兰菲智能科技有限公司
类型:发明
国别省市:

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

1