追踪编码器的溢出验证方法、装置和电子设备制造方法及图纸

技术编号:37148936 阅读:28 留言:0更新日期:2023-04-06 22:03
本公开提供了一种追踪编码器的溢出验证方法、装置和电子设备,该方法包括:获取追踪编码器的输入激励的溢出标识信息和针对输入激励的第一输出结果;根据溢出标识信息,确定输入激励是否发生溢出,得到第一确定结果;根据第一确定结果,将输入激励写入程序输入文件;对程序输入文件进行模拟追踪编码,得到第二输出结果;以及,根据第一输出结果和第二输出结果,得到针对输入激励的溢出验证结果。得到针对输入激励的溢出验证结果。得到针对输入激励的溢出验证结果。

【技术实现步骤摘要】
追踪编码器的溢出验证方法、装置和电子设备


[0001]本公开涉及追踪编码器
,更具体地,涉及一种追踪编码器的溢出验证方法、装置和电子设备。

技术介绍

[0002]追踪编码器(Trace Encoder,TE)根据Trace协议(如,Nexus 5001Forum
TM Standard、Efficient Trace for RISC

V)将核心Core退休指令计数器(Program Counter,PC)和与Core退休PC相关的属性生成编码数据包。追踪解码器(Trace Decoder,TD)根据Trace协议解析编码数据包生成PC。
[0003]TE发送编码数据包后,若下游设备不能及时接收TE发送的编码数据包,造成TE生成的编码数据包及时发送失败,导致编码数据包堆积。在编码数据包堆积的情况下,若TE继续接收来自Core的退休PC,会造成FIFO(First In First Out)溢出。
[0004]相关技术中,基于System Verilog语言的TE模型(TE Model)加入FIFO溢出功能会造成TE模型复杂化、重用性低、耦合性强,以及TE模型会因内部设计时序优化程序,而需进行大量的程序更新。然而,基于C语言或Python语言的TE模型与基于System Verilog语言的TE模型不同,基于C语言或Python语言的TE模型没有时序周期概念,不能模拟FIFO溢出场景。这会导致在TE模型溢出场景下,溢出验证过程花费时间较长,不能在前期验证阶段及时发现电路功能异常。

技术实现思路

[0005]本公开提出了一种追踪编码器的溢出验证方法、装置和电子设备。
[0006]根据本公开的第一方面,提出了一种追踪编码器的溢出验证方法,包括:获取追踪编码器的输入激励的溢出标识信息和针对输入激励的第一输出结果;根据溢出标识信息,确定输入激励是否发生溢出,得到第一确定结果;根据第一确定结果,将输入激励写入程序输入文件;对程序输入文件进行模拟追踪编码,得到第二输出结果;以及,根据第一输出结果和第二输出结果,得到针对输入激励的溢出验证结果。
[0007]例如,第一确定结果指示了输入激励发生溢出或输入激励未发生溢出;其中,根据第一确定结果,将输入激励写入程序输入文件,包括:在第一确定结果指示了输入激励发生溢出的情况下,将输入激励和与输入激励对应的溢出标识信息写入程序输入文件;以及,在第一确定结果指示了输入激励未发生溢出的情况下,将输入激励写入程序输入文件。
[0008]例如,对程序输入文件进行模拟追踪编码,得到第二输出结果,包括:获取程序输入文件中的输入激励;确定输入激励是否包括溢出标识信息,得到第二确定结果;以及,根据第二确定结果,对输入激励进行模拟追踪编码,得到第二输出结果。
[0009]例如,根据第二确定结果,对输入激励进行模拟追踪编码,得到第二输出结果,包括:在第二确定结果指示了输入激励包括溢出标识信息的情况下,删除当前第二输出结果中的后N个数据包,得到经删减数据包;根据第二确定结果,生成与输入激励对应的第一编
码数据包;以及,将第一编码数据包写入至经删减数据包,得到第二输出结果;其中,N为正整数,N表示被测验证的溢出深度。
[0010]例如,根据第二确定结果,对输入激励进行模拟追踪编码,得到第二输出结果,包括:在第二确定结果指示了输入激励不包括溢出标识信息的情况下,根据输入激励确定是否要生成编码数据包;在确定要生成编码数据包的情况下,生成与输入激励对应的第二编码数据包,并将第二编码数据包写入至当前第二输出结果,得到第二输出结果。
[0011]例如,根据输入激励确定是否要生成编码数据包,包括:确定输入激励是否满足数据包生成条件;其中,该数据包生成条件包括输入激励是否属于不可推测跳转指令、分支指令或异常指令;在确定输入激励满足数据包生成条件的情况下,生成与输入激励对应的第二编码数据包。
[0012]例如,第一编码数据包包括根据输入激励生成的编码数据包和激励发生异常的编码数据包;第二编码数据包包括根据输入激励生成的编码数据包。
[0013]例如,根据第一输出结果和第二输出结果,得到针对输入激励的溢出验证结果,包括:将第一输出结果和第二输出结果进行比较;在第一输出结果和第二输出结果相同的情况下,确定溢出验证结果指示正常;在第一输出结果和第二输出结果不同的情况下,确定溢出验证结果指示了追踪编码器的电路功能存在异常。
[0014]根据本公开实施例的第二方面,提供了一种追踪编码器的溢出验证装置,包括:获取单元,配置为获取追踪编码器的输入激励的溢出标识信息和针对输入激励的第一输出结果;第一确定单元,配置为根据溢出标识信息,确定输入激励是否发生溢出,得到第一确定结果;第一处理单元,配置为根据第一确定结果,将输入激励写入程序输入文件;追踪编码模拟单元,配置为对程序输入文件进行模拟追踪编码,得到第二输出结果;以及,结果分析单元,配置为根据第一输出结果和第二输出结果,得到针对输入激励的溢出验证结果。
[0015]例如,第一确定结果指示了输入激励发生溢出或输入激励未发生溢出;其中,第一确定单元配置为:在第一确定结果指示了输入激励发生溢出的情况下,将输入激励和与输入激励对应的溢出标识信息写入程序输入文件;以及,在第一确定结果指示了输入激励未发生溢出的情况下,将输入激励写入程序输入文件。
[0016]例如,追踪编码模拟单元配置为:获取程序输入文件中的输入激励;确定输入激励是否包括溢出标识信息,得到第二确定结果;以及,根据第二确定结果,对输入激励进行模拟追踪编码,得到第二输出结果。
[0017]根据本公开实施例的第三方面,提供了一种电子设备,包括:追踪编码被测单元,配置为对输入激励进行被测追踪编码,得到第一输出结果;至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行根据本公开提供的方法。
[0018]根据本公开实施例的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行根据本公开提供的方法。
[0019]根据本公开实施例的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现根据本公开提供的方法。
[0020]根据公开实施例的技术方案,提供了一种追踪编码器的溢出验证方法,该方法在输入激励进行被测验证时,将输入激励添加溢出标识信息,以使对输入激励进行模拟追踪
编码时,能够根据溢出标识信息模拟激励溢出场景,完成输入激励的溢出验证。该方法能够降低电路功能的耦合性,提高TE Model的可重用性,无需增加TE Model复杂度,避免TE Model因设计时序优化程序而进行大量的程序更新。此外,该方法缩短了溢出验证时间,减少溢出验证成本,能够尽快发现电路功能异常。
附图说明
[0021]通过下面结合附图说明本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种追踪编码器的溢出验证方法,其特征在于,包括:获取追踪编码器的输入激励的溢出标识信息和针对所述输入激励的第一输出结果;根据所述溢出标识信息,确定所述输入激励是否发生溢出,得到第一确定结果;根据所述第一确定结果,将所述输入激励写入程序输入文件;对所述程序输入文件进行模拟追踪编码,得到第二输出结果;以及根据所述第一输出结果和所述第二输出结果,得到针对所述输入激励的溢出验证结果。2.根据权利要求1所述的溢出验证方法,其特征在于,所述第一确定结果指示了所述输入激励发生溢出或所述输入激励未发生溢出;其中,根据所述第一确定结果,将所述输入激励写入程序输入文件,包括:在所述第一确定结果指示了所述输入激励发生溢出的情况下,将所述输入激励和与所述输入激励对应的溢出标识信息写入所述程序输入文件;以及在所述第一确定结果指示了所述输入激励未发生溢出的情况下,将所述输入激励写入所述程序输入文件。3.根据权利要求1所述的溢出验证方法,其特征在于,所述对所述程序输入文件进行模拟追踪编码,得到第二输出结果,包括:获取所述程序输入文件中的所述输入激励;确定所述输入激励是否包括所述溢出标识信息,得到第二确定结果;以及根据所述第二确定结果,对所述输入激励进行模拟追踪编码,得到第二输出结果。4.根据权利要求3所述的溢出验证方法,其特征在于,所述根据所述第二确定结果,对所述输入激励进行模拟追踪编码,得到第二输出结果,包括:在所述第二确定结果指示了所述输入激励包括所述溢出标识信息的情况下,删除当前第二输出结果中的后N个数据包,得到经删减数据包;根据所述第二确定结果,生成与所述输入激励对应的第一编码数据包;以及将所述第一编码数据包写入至所述经删减数据包,得到所述第二输出结果;其中,N为正整数,N表示被测验证的溢出深度。5.根据权利要求3或4所述的溢出验证方法,其特征在于,所述根据所述第二确定结果,对所述输入激励进行模拟追踪编码,得到第二输出结果,包括:在所述第二确定结果指示了所述输入激励不包括所述溢出标识信息的情况下,根据所述输入激励确定是否要生成编码数据包;在确定要生成编码数据包的情况下,生成与所述输入激励对应的第二编码数据包,并将所述第二编码数据包写入至当前第二输出结果,得到所述第二输出结果。6.根据权利要求5所述的溢出验证方法,其特征在于,所述根据所述输入激励确定是否要生成编码数据包,包括:确定所述输入激励是否满足数据包生成条件;其中,该数据包生成条件包括所述输入激励是否属于不可推测跳转指令、分支指令或异常指令;在确定所述输入激励满足数据包生成条件的情况下,生成与所述输入激励对应的第二编码数据包。7.根据权利要求5所述的溢出验证方法,其特征在于,所述第一编码数据包包括...

【专利技术属性】
技术研发人员:惠君龙姜文
申请(专利权)人:北京奕斯伟计算技术股份有限公司
类型:发明
国别省市:

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

1