[发明专利]处理器随机指令复用的验证方法有效
申请号: | 201611208333.9 | 申请日: | 2016-12-23 |
公开(公告)号: | CN107688467B | 公开(公告)日: | 2019-11-15 |
发明(设计)人: | 张智;何国强 | 申请(专利权)人: | 北京国睿中数科技股份有限公司;中国电子科技集团公司第十四研究所 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 11201 北京清亦华知识产权代理事务所(普通合伙) | 代理人: | 张润<国际申请>=<国际公布>=<进入国 |
地址: | 100085北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 随机 指令 验证 方法 | ||
本发明提出一种处理器随机指令复用的验证方法,包括:运行参考模型,读入二进制的iss.vmem指令文件到关联数组dut_mem,iss_mem;当参考模型读到的指令或者关联数组的地址不存在时,随机生成指令或者数据,并分别填充到dut_mem及iss_mem;运行处理器,通过外接slave memory模型读mem_dut,并在处理器读取到不存在的地址时,继续以随机指令填写dut_mem;当处理器运行结束后,将dut_mem写入dut.mem,并保存dut_mem的地址以及对应的数据;读取dut.mem以执行处理器的下一次运行。本发明能够随机生成处理器真实需要获取的指令与数据,并且复用性好。
技术领域
本发明涉及处理器技术领域,特别涉及一种处理器随机指令复用的验证方法。
背景技术
处理器作为芯片的核心,其功能的正确性往往是至关重要的,尤其每款重新设计或者设计改动的处理器都需要经过大量的回归测试,甚至多次流片才能够真正使用到项目中。因此处理器的验证通常需要大量时间和人力投入。
传统的激励为一种手工编写C程序,通过编译器产生处理器能够识别的二进制编码,处理器读取这种二进制编码运行;或者建立随机激励的环境,带有参考模型验证环境与处理器同步运行,当指令提交时同步进行数据对比。
传统的激励的复用需要根据相同的验证环境,相同的仿真器,相同种子才能生成固定的随机激励;再次回归生成相同的指令序列需要重新运行,而并不能与软件编译器生成的汇编程序相统一,不利于验证平台的复用;或者读入C程序等软件生成的二进制编码文件,但缺少随机的因素,不利于处理器的充分验证;处理器的参考模型只能模拟最终能够提交的指令,而实际的处理器会有额外的分支预测以及cache会通过总线取得额外的数据并可能执行,但不会真正提交,与参考模型能够提供的数据不一致,传统的是取得固定的数据(比如0),这样不能产生有效得激励对处理器的真实运行的行为产生影响。
也就是说,传统的验证方法用高级语言,如C语言,编写复杂的验证程序,经过编译器编译成二进制码,在微处理器上运行该二进制代码对微处理器设计进行验证。这种方法具有复用性,但随机性差,不能够充分覆盖处理器的各种可能的状态。或者采用随机指令环境进行测试,由于现代的处理器带有分支预测以及cache,当之前的指令未结束,需要提前预取执行,在指令运行未结束前,所以需要随机的指令的PC与访存的地址不能确定,处理器再次访问相同的地址时,相应的指令可能还在cache中,这时如果再次随机出另外一条指令,相应的没有cache的golden与处理器的对比就会出错。所以不能够实时随机生成指令后就将生成的指令给处理器。所以这种激励的环境也不适合带有cache的处理器验证,并且复用性差。
发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的目的在于提出一种处理器随机指令复用的验证方法,该方法能够随机生成处理器真实需要获取的指令与数据,并且复用性好。
为了实现上述目的,本发明的实施例提出了一种处理器随机指令复用的验证方法,包括以下步骤:运行参考模型,并读入二进制的iss.vmem指令文件到SystemVerilog的关联数组dut_mem,iss_mem,其中,所述关联数组的索引为地址,所述关联数组的值为指令;当所述参考模型读到的指令或者关联数组的地址不存在时,随机生成指令或者数据,并分别填充到dut_mem及iss_mem;运行所述处理器,通过外接slave memory模型读mem_dut,并在所述处理器读取到不存在的地址时,继续以随机指令填写dut_mem,以生成处理器总线需要的所有数据与指令;当所述处理器运行结束后,将dut_mem写入dut.mem,并保存dut_mem的地址以及对应的数据;读取所述dut.mem以执行处理器的下一次运行。
另外,根据本发明上述实施例的处理器随机指令复用的验证方法还可以具有如下附加的技术特征:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国睿中数科技股份有限公司;中国电子科技集团公司第十四研究所,未经北京国睿中数科技股份有限公司;中国电子科技集团公司第十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611208333.9/2.html,转载请声明来源钻瓜专利网。