微处理器功能验证设备及微处理器功能验证方法_3

文档序号:9818355阅读:来源:国知局
段性检查点时,比较器2比较当前组参考数据与当前捕捉到的待验证信号是否一致,是则执行S6,否则仿真结束。
[0072]在具体实施过程中,当前组参考数据与当前捕捉到的待验证信号不一致,则意味着发现了待验证设计6的错误,需要立刻停止仿真。
[0073]具体来讲,是否到达比较器2的阶段性检查点的【具体实施方式】为:比较器2判断当前组参考数据中是否存在比较标识;若当前组参考数据中存在比较标识则表明到达阶段性检查点,若不存在比较标识,则尚未到阶段性检查点,则RTL模型5继续进行裁决待验证设计6的行为是否与RTL模型5的行为一致。
[0074]S6:判断仿真是否就此结束,若是则仿真结束,否则返回S3。
[0075]具体的,是否仿真结束由是否输入指令流结束和待验证设计6的行为决定。比如,如果待验证设计6出现始终停留在某个点或始终执行某条指令的现象时,说明有与预期不一致的行为出现,仿真需要结束。向待验证设计6输入测试程序结束,则判断为仿真需要就此结束。
[0076]通过上述本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
[0077]1、由于采用了包括指令集仿真器,比较器,监视器,输入接口,RTL模型的微处理器功能验证设备,减少了参考模型的复杂度,基于参考模型的功能验证的工程量大大缩小,一方面:比较器在不到阶段性检测点就不进行比较操作,因此节省了比较器做一致检查时耗费的仿真时间,另一方面:RTL模型每个仿真周期都从待验证设计读取部分内部信号做实时比较,以及比较器逐个周期读取一组待验证信号与参考数据进行对比,均是在发现不一致时就会有反馈,因此这两方面的结合有效保证了能够快速发现待验证设计中的错误,因此有效解决了现有技术中对待验证设计的功能检查效率低的技术问题,从而实现了高效快速的功能检查,最终提尚了验证效率。
[0078]2、由于RTL模型作实时比较与指令集仿真器提供参考数据用于比较器做一致检查的双重保障,从而保证了对待验证设计所存在的错误定位的准确度。
[0079]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0080]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种微处理器功能验证设备,其特征在于,包括:指令集仿真器,比较器,监视器,输入接口,RTL模型; 所述指令集仿真器,用于执行测试程序产生阶段性参考数据文件; 所述比较器,用于从所述指令集仿真器中读取所述阶段性参考数据文件; 所述输入接口,用于加载所述测试程序到待验证设计的存储单元; 所述监视器,用于捕捉所述待验证设计仿真中的待验证信号输出给所述比较器; 所述比较器,还用于将所述阶段性参考数据文件中的参考数据与所述待验证信号进行对比是否一致; 所述RTL模型,用于逐周期从所述待验证设计读取所述待验证设计的部分内部信号,以进行裁决所述待验证设计的行为是否与所述RTL模型的行为一致。2.如权利要求1所述的微处理器功能验证设备,其特征在于,所述RTL模型包括:指令分发单元,执行单元,写回单元,异常产生单元,程序计数产生单元,旁路模型单元,寄存器-存储器模型单元,裁决单元; 所述指令分发单元,用于将所述部分内部信号中与指令读取相关的信号处理成归类指令码输出到所述执行单元; 所述寄存器-存储器模型单元,用于基于写回信息模拟所述待验证设计的写回功能,将写寄存器的流水级信息输出到所述寄存器旁路模型单元,并将写寄存器的值或写存储器的值输出到所述执行单元; 所述寄存器旁路模型单元,用于读取写读寄存器的值按照流水级的约束输出到所述执行单元; 所述执行单元,用于模拟所述待验证设计的指令执行过程,将指令执行结果输出到所述写回单元、所述异常产生单元和所述程序计数产生单元; 所述写回单元,用于基于写寄存器的值或写存储器的值,输出当前周期所需所述写回信息到所述寄存器-存储器模型单元和所述裁决单元; 所述异常产生单元,用于根据所述指令执行结果判断当前是否应该产生异常,并将异常判断结果输出到所述裁决单元; 所述程序计数产生单元,用于根据所述指令执行结果判断当前是否有跳转发生,并将跳转判断结果输出到所述裁决单元; 所述裁决单元,用于将所述写回信息、所述异常判断结果、所述跳转判断结果与所述部分内部信号对比,从而裁决出所述待验证设计的行为是否与所述RTL模型的行为一致。3.一种微处理器功能验证方法,其特征在于,包括: S1:通过指令集仿真器执行测试程序产生阶段性参考数据文件; S2:启动所述待验证设计和RTL模型进行寄存器传输级仿真,通过监视器捕捉所述待验证设计仿真中的待验证信号输出到所述比较器; S3:所述比较器从所述阶段性参考数据文件中读取当前组参考数据; S4:所述RTL模型逐周期从所述待验证设计中读取部分内部信号,以进行裁决所述待验证设计的行为是否与所述RTL模型的行为一致,若是则执行S5,否则仿真结束; S5:在到达比较器的阶段性检查点时,所述比较器比较所述当前组参考数据与当前捕捉到的所述待验证信号是否一致,是则执行S6,否则仿真结束; S6:判断仿真是否就此结束,若是则仿真结束,否则返回S3。4.如权利要求3所述的微处理器功能验证方法,其特征在于,在所述S4中,所述RTL模型逐周期从所述待验证设计中读取部分内部信号,以进行裁决所述待验证设计的行为是否与所述RTL模型的行为一致,包括: 所述RTL模型在每个仿真周期从所述待验证设计中读取所述部分内部信号; 所述RTL模型将所述部分内部信号与所述RTL模型内部自身产生的数据进行对比; RTL模型根据对比结果判断所述待验证设计的行为是否与所述RTL模型的行为一致。5.如权利要求4所述的微处理器功能验证方法,其特征在于,在所述SI中,所述通过指令集仿真器执行测试程序产生阶段性参考数据文件之后,还包括: 将所述阶段性参考数据文件加载到所述比较器; 所述比较器按照是否包含指定格式对所述阶段性参考数据文件进行划分成多组参考数据,其中,所述指定格式包括比较标识。6.如权利要求5所述的微处理器功能验证方法,其特征在于,在所述S5中,所述比较器比较所述当前组参考数据与当前捕捉到的所述待验证信号是否一致,包括: 所述比较器判断所述当前组参考数据中是否存在所述比较标识; 若所述当前组参考数据中存在所述比较标识,则表明到达所述阶段性检查点。7.如权利要求6所述的微处理器功能验证方法,其特征在于,在所述S6中,所述判断仿真是否就此结束,具体为: 向所述待验证设计输入所述测试程序结束,则判断为仿真需要就此结束。
【专利摘要】本发明公开了一种微处理器功能验证设备,包括:指令集仿真器,比较器,监视器,输入接口,RTL模型;指令集仿真器,用于执行测试程序产生阶段性参考数据文件;比较器,用于从指令集仿真器中读取阶段性参考数据文件;输入接口,用于加载测试程序到待验证设计的存储单元;监视器,用于捕捉待验证设计仿真中的待验证信号输出给比较器;比较器,还用于将阶段性参考数据文件中的参考数据与待验证信号进行对比是否一致;RTL模型,用于逐周期从待验证设计读取待验证设计的部分内部信号,以进行裁决待验证设计的行为是否与RTL模型的行为一致。有效解决了现有技术中对待验证设计的功能检查效率低的技术问题,从而实现了高效快速的功能检查,最终提高了验证效率。
【IPC分类】G06F17/50, G06F11/36
【公开号】CN105589993
【申请号】CN201510959069
【发明人】罗汉青, 梁利平, 刘光宇, 王志君
【申请人】中国科学院微电子研究所
【公开日】2016年5月18日
【申请日】2015年12月18日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1