发明名称 | 一种基于模拟器的软硬件协同验证方法及系统 | ||
摘要 | 本发明涉及一种基于模拟器的软硬件模型协同验证方法及其系统。该方法包括:硬件模型在指令流水线开始工作前调用软件模型,并将硬件模型仿真的时钟信息发送给软件模型;软件模型驱动内核模拟器进行初始化配置;当硬件模型在指令流水线执行到指令执行阶段时调用软件模型,并将硬件模型仿真的当前时间点发送给软件模型;软件模型驱动内核模拟器执行完指令,并根据硬件模型仿真的当前时间点、时钟信息计算指令在硬件模型中执行完成的时间点;当硬件模型写寄存器堆时,调用软件模型,并将指令执行完的数据信息发送给软件模型;软件模型驱动内核模拟器进行数据信息比较,如果数据信息比较不一致,则定位出错指令。本发明可高效定位出错指令。 | ||
申请公布号 | CN102841837B | 申请公布日期 | 2014.07.30 |
申请号 | CN201210214895.X | 申请日期 | 2012.06.26 |
申请人 | 中国科学院声学研究所 | 发明人 | 朱浩;彭楚;王东辉;张铁军;洪缨 |
分类号 | G06F11/26(2006.01)I | 主分类号 | G06F11/26(2006.01)I |
代理机构 | 北京亿腾知识产权代理事务所 11309 | 代理人 | 陈霁 |
主权项 | 一种基于模拟器的软硬件模型协同验证方法,其特征在于:硬件模型在指令流水线开始工作前调用软件模型,具体为调用所述软件模型中预先定义的dataload函数,并将所述硬件模型仿真的时钟信息发送给所述软件模型的dataload函数;所述软件模型的dataload函数驱动内核模拟器进行初始化配置;当所述硬件模型在指令流水线执行到指令执行阶段时调用所述软件模型,具体为调用所述软件模型中的cpustep函数,并将所述硬件模型仿真的当前时间点发送给所述软件模型的cpustep函数;所述软件模型的cpustep函数驱动所述内核模拟器执行完指令,并根据所述硬件模型仿真的当前时间点、所述时钟信息计算所述指令在硬件模型中执行完成的时间点;当所述硬件模型写寄存器堆时,调用所述软件模型,具体为调用所述软件模型中对应的比较函数,并将指令执行完成时的数据信息发送给所述软件模型的比较函数;所述软件模型的比较函数驱动所述内核模拟器进行数据信息比较,如果数据信息比较不一致,则定位出错指令。 | ||
地址 | 100190 北京市海淀区北四环西路21号 |