发明名称 在微处理器用户态随机验证中实现核心态程序验证的方法
摘要 本发明公开了一种在微处理器用户态随机验证中实现核心态程序验证的方法。该方法包括:a)在指令模版中添加异常处理相关的约束;b)对指令级随机验证产生引擎进行改进;c)在指令级处理器模拟器中加入核心态指令的执行机制,设置寄存器,在系统运行核心态指令时提供正确结果;d)在指令过滤器中加入步骤a)中所添加的异常处理相关的约束的过滤装置;e)在仿真环境中加入异常监测逻辑和控制寄存器更新逻辑;f)在仿真环境提供的存储器中预存异常处理程序。本发明具有验证全面、验证效率高的优点。
申请公布号 CN100405324C 申请公布日期 2008.07.23
申请号 CN200610078226.9 申请日期 2006.05.12
申请人 中国科学院计算技术研究所 发明人 沈海华;胡伟武
分类号 G06F11/36(2006.01) 主分类号 G06F11/36(2006.01)
代理机构 北京泛华伟业知识产权代理有限公司 代理人 高存秀
主权项 1.在微处理器用户态随机验证中实现核心态程序验证的方法,包括如下步骤:a)在指令模版中添加异常处理相关的约束,包括允许发生异常处理的类型和数目;b)对指令级随机验证产生引擎进行改进,加大TLB项数,加大后的TLB项数为待验证处理器物理TLB项数的1~64倍之间的任意数,改变原有指令序列终止条件,使得在指令序列最末尾的两条指令为例外触发指令;c)在指令级处理器模拟器中加入核心态指令的执行机制,设置寄存器,在系统运行核心态指令时提供正确结果;d)在指令过滤器中加入步骤a)中所添加的异常处理相关的约束的过滤装置,包括负责统计并累加输入的异常信号数目的异常处理计数器、负责比较输入的异常信号类型与步骤a)中允许发生的异常处理类型一致性的异常类型过滤器、负责比较输入的异常信号数目与步骤a)中允许发生的异常处理数目一致性的比较逻辑及负责输出比较结果的输出信号;e)在仿真环境中加入负责监测处理器结果总线上异常发生及异常类型的异常监测逻辑和负责根据异常监测逻辑监测到的异常类型强制更新控制寄存器BEV位的控制寄存器BEV位更新逻辑;f)在仿真环境提供的存储器中预存TLB refill,Integer overflow,Trap,System Call,Breakpoint,Floating-Point Exception异常处理程序;g)指令库中包含处理器支持的所有有效指令;其中,所述的指令模版包含用于进行指令的配置和规范的一系列配置文件和异常处理相关的约束;指令级随机验证产生引擎用于支持配置文件约束下的指令生成,包含加大为待验证处理器物理TLB项数的1~64倍之间的任意数的TLB项数和改变为使得在指令序列最末尾的两条指令为例外触发指令的指令序列终止条件;指令级处理器模拟器提供包含核心态指令的全部指令的执行机制,用于提供指令的正确执行结果,支持指令级仿真;指令过滤器包含根据指令级处理器模拟器提供的执行结果判断产生的指令在用户态模式下运行是否会引起异常的机制和指令模版中所添加的异常处理相关的约束的过滤装置,包括负责统计并累加输入的异常信号数目的异常处理计数器、负责比较输入的异常信号类型与指令模版中允许发生的异常处理类型一致性的异常类型过滤器、负责比较输入的异常信号数目与指令模版中允许发生的异常处理数目一致性的比较逻辑及负责输出比较结果的输出信号;仿真环境包括用于初始化、输入/输出和比较的逻辑、负责监测处理器结果总线上异常发生及异常类型的异常监测逻辑和负责根据异常监测逻辑监测到的异常类型强制更新控制寄存器BEV位的控制寄存器更新逻辑,以及在仿真环境提供的存储器中预存的TLBrefill,Integer overflow,Trap,System Call,Breakpoint,Floating-PointException异常处理程序。
地址 100080北京市海淀区中关村科学院南路6号