本发明专利技术公开了一种处理器中断机制的验证方法及验证装置,其中,方法包括以下步骤:随机生成定向指令序列;根据指令序列配置DUT的打开中断使能,并配置中断处理入口;在中断处理时,添加N条例外返回指令,以退出例外处理程序并且跳转至被中断取消的指令PC;在多条指令提交时,对DUT的寄存器的状态进行采样;对DUT加入随机中断,以得到加入随机中断对指令流水序列的影响结果。本发明专利技术实施例的验证方法,通过对DUT随机加入中断验证中断对DUT的影响,并且可以不受中断的影响进行数据对比,从而保证验证结果的准确性,提高验证的可靠性,简单便捷。
【技术实现步骤摘要】
处理器中断机制的验证方法及验证装置
本专利技术涉及处理器
,特别涉及一种处理器中断机制的验证方法及验证装置。
技术介绍
目前,超标量处理器本身的设计复杂,并且多个流水线的指令执行,而在超标量处理器的验证中,中断会与处理器的各级流水和各种指令相结合,导致故验证的复杂度较高。具体地,由于RTL(register-transferlevel,寄存器传输级)级的超标量处理器每次发射并能提交多条指令,而处理器模型一般用c++,systemverilog等更高抽象级的语言描述为单条指令提交的参考模型,从而没有具体的时序关系或者与RTL的实现不尽相同,在DUT(Deviceundertest,被测器件)若干条指令提交后记录提交的个数,参考模型加上提交的指令条数,只对最后提交的指令条数的相应的通用寄存器进行对比,但是中断是与时间相关的,只能在开始记录已经执行提交的指令条数,在第N条参考模型与DUT同时加中断,才能保证DUT与参考模型所执行的指令与行为相同。相关技术中,首先生成随机指令,其次采样DUT中断的相关信号作为参考模型比较指令条数的依据,比如启动操作系统用真实的外设作为中断等。然而,相关技术由于参考无法事先知道需要提交的指令条数,故需要采样DUT的中断信号,但是如果参考模型采样的中断状态与实际不符,易出现问题。例如,如果参考模型想在第N条指令添加中断,那么如果第N条指令是多条提交指令的第二条,那么当中断到来时,之前的一条指令并未提交,中断处理之后需要从第N条指令之前的那条指令开始运行,故处理器参考模型不能确定第N条指令是否是单个指令提交或者是多条指令提交的第一条,从而无法确定第N条指令是否适合加中断。具体而言,相关技术中的验证方法在系统级起操作系统用外设作为中断,但难以定位bug与调试,并且起操作系统时间较长,随机度不够;或者先写好定向指令,随机在中断入口加中断,参考模型采样提交个数与DUT的中断等信号,但也面临着随机度不够与采样的DUT信号本身存在问题的风险,并且例外处理程序的处理过程需要较多的指令。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一种处理器中断机制的验证方法,该验证方法可以不受中断的影响进行数据对比,从而保证验证结果的准确性,提高验证的可靠性。本专利技术的另一个目的在于提出一种处理器中断机制的验证装置。为达到上述目的,本专利技术一方面实施例提出了一种处理器中断机制的验证方法,包括以下步骤:随机生成定向指令序列;根据所述指令序列配置DUT的打开中断使能,并配置中断处理入口;在中断处理时,添加N条例外返回指令,以退出例外处理程序并且跳转至被中断取消的指令PC(ProgramCounter,程序计数器),以重新执行验证前的程序,其中,N为正整数;在多条指令提交时,对DUT的寄存器的状态进行采样;以及对DUT加入随机中断,以得到加入所述随机中断对指令流水序列的影响结果。本专利技术实施例的处理器中断机制的验证方法,通过指令序列配置DUT的打开中断使能,并配置中断处理入口,从而对DUT加入随机中断,以得到加入随机中断对指令流水序列的影响结果,通过对DUT随机加入中断验证中断对DUT的影响,并且可以不受中断的影响进行数据对比,从而保证验证结果的准确性,提高验证的可靠性,简单便捷。另外,根据本专利技术上述实施例的处理器中断机制的验证方法还可以具有以下附加的技术特征:在本专利技术的一个实施例中,所述配置中断处理入口,进一步包括:设置所述中断处理入口与例外处理程序的入口不同。进一步地,在本专利技术的一个实施例中,通过访存指令写所述中断处理入口地址的数据为ERET指令的编码。另外,在本专利技术的一个实施例中,在对所述DUT的寄存器状态进行采样之后,还包括:对PC为中断入口指令提交的寄存器的状态信息进行过滤。进一步地,在本专利技术的一个实施例中,其中,N为1。为达到上述目的,本专利技术另一方面实施例提出了一种处理器中断机制的验证装置,包括:生成模块,用于随机生成定向指令序列;配置模块,用于根据所述指令序列配置DUT的打开中断使能,并配置中断处理入口;添加模块,在中断处理时,用于添加N条例外返回指令,以退出例外处理程序并且跳转至被中断取消的指令PC,以重新执行验证前的程序,其中,N为正整数;采样模块,在多条指令提交时,用于对DUT的寄存器的状态进行采样;以及验证模块,用于对DUT加入随机中断,以得到加入所述随机中断对指令流水序列的影响结果。本专利技术实施例的处理器中断机制的验证装置,通过指令序列配置DUT的打开中断使能,并配置中断处理入口,从而对DUT加入随机中断,以得到加入随机中断对指令流水序列的影响结果,通过对DUT随机加入中断验证中断对DUT的影响,并且可以不受中断的影响进行数据对比,从而保证验证结果的准确性,提高验证的可靠性,简单易实现。另外,根据本专利技术上述实施例的处理器中断机制的验证装置还可以具有以下附加的技术特征:在本专利技术的一个实施例中,,所述配置模块还用于设置所述中断处理入口与例外处理程序的入口不同。进一步地,在本专利技术的一个实施例中,通过访存指令写所述中断处理入口地址的数据为ERET指令的编码。另外,在本专利技术的一个实施例中,还包括:过滤模块,用于对PC为中断入口指令提交的寄存器的状态信息进行过滤。进一步地,在本专利技术的一个实施例中,其中,N为1。附图说明本专利技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为根据本专利技术实施例的处理器中断机制的验证方法的流程图;图2为根据本专利技术一个实施例的不加中断的随机指令验证运行平台示意图;图3为根据本专利技术一个实施例的处理器参考模型函数调用示意图;图4为根据本专利技术一个实施例的加入随机中断的随机指令验证运行平台示意图;图5为根据本专利技术实施例的处理器中断机制的验证装置的结构示意图;以及图6为根据本专利技术一个具体实施例的处理器中断机制的验证装置的结构示意图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。下面参照附图描述根据本专利技术实施例提出的处理器中断机制的验证方法及验证装置,首先将参照附图描述根据本专利技术实施例提出的处理器中断机制的验证方法。图1是本专利技术实施例的处理器中断机制的验证方法的流程图如图1所示,该处理器中断机制的验证方法包括以下步骤:在步骤S101中,随机生成定向指令序列。例如,对超标量处理器进行验证时,首先待验证DUT(designundertest)超标量处理器可以采用Verilog代码编写,已有的参考模型可以采用SystemVerilog语言编写,通过SystemVerilog的UVM随机验证平台连接的sequence先随机出一种定向的指令序列。在步骤S102中,根据指令序列配置DUT的打开中断使能,并配置中断处理入口。进一步地,通过上述随机出的定向的指令序列配置DUT的打开中断使能,并且配置中断处理入口,因此发生中断后不会干扰无中断情况下的指令例外处理。在本专利技术的一个实施例中,配置中断处理入口,进本文档来自技高网...
【技术保护点】
一种处理器中断机制的验证方法,其特征在于,包括以下步骤:随机生成定向指令序列;根据所述指令序列配置DUT的打开中断使能,并配置中断处理入口;在中断处理时,添加N条例外返回指令,以退出例外处理程序并且跳转至被中断取消的指令PC,以重新执行验证前的程序,其中,N为正整数;在多条指令提交时,对DUT的寄存器的状态进行采样;以及对DUT加入随机中断,以得到加入所述随机中断对指令流水序列的影响结果。
【技术特征摘要】
1.一种处理器中断机制的验证方法,其特征在于,包括以下步骤:随机生成定向指令序列;根据所述指令序列配置DUT的打开中断使能,并配置中断处理入口;在中断处理时,添加N条例外返回指令,以退出例外处理程序并且跳转至被中断取消的指令PC,以重新执行验证前的程序,其中,N为正整数;在多条指令提交时,对DUT的寄存器的状态进行采样;以及对DUT加入随机中断,以得到加入所述随机中断对指令流水序列的影响结果。2.如权利要求书1所述的处理器中断机制的验证方法,其特征在于,所述配置中断处理入口,进一步包括:设置所述中断处理入口与例外处理程序的入口不同。3.如权利要求2所述的处理器中断机制的验证方法,其特征在于,通过访存指令写所述中断处理入口地址的数据为ERET指令的编码。4.如权利要求1所述的处理器中断机制的验证方法,其特征在于,在对所述DUT的寄存器状态进行采样之后,还包括:对PC为中断入口指令提交的寄存器的状态信息进行过滤。5.如权利要求1所述的处理器中断机制的验证方法,其特征在于,其中,N为1。6.一种处理...
【专利技术属性】
技术研发人员:张智,陈铠,
申请(专利权)人:北京国睿中数科技股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。