处理器重放调试方法及系统技术方案

技术编号:21033907 阅读:31 留言:0更新日期:2019-05-04 05:18
本发明专利技术提供一种处理器重放调试方法及系统,所述系统包括主机和所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置;所述事务处理装置,用于实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机,用于利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。本发明专利技术通过利用事务处理装置记录处理器运行程序过程中的关键信息,并利用记录的关键信息重放处理器的程序执行过程以实现处理器的离线调试,能够提高处理器的软件调试效率,从而加快芯片验证进程。

Debugging method and system of processor replay

【技术实现步骤摘要】
处理器重放调试方法及系统
本专利技术涉及芯片设计与验证
,尤其涉及一种处理器重放调试方法及系统。
技术介绍
随着晶体管规模的增长,系统级芯片(SystemOnaChip,SoC芯片)的设计与验证面临更大的挑战,软件仿真逐渐显露出速度慢的缺点。硬件仿真加速器以较快的仿真速度和适用于大规模电路等优势得到越来越多的应用。目前在硬件仿真加速器平台上,调试系统级芯片内部处理器上的嵌入式软件的方法主要是通过记录波形,但是硬件仿真加速器波形记录慢,调试周期长,占用有限的机时,从而严重影响仿真速度。
技术实现思路
本专利技术提供的处理器重放调试方法及系统,通过利用事务处理装置记录处理器运行程序过程中的关键信息,并利用记录的关键信息重放处理器的程序执行过程以实现处理器的离线调试,能够提高处理器的软件调试效率,从而加快芯片验证进程。第一方面,本专利技术提供一种处理器重放调试系统,应用于硬件仿真加速器,所述系统包括主机和所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置;所述事务处理装置,用于实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机,用于利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。第二方面,本专利技术提供一种处理器重放调试方法,应用于硬件仿真加速器,其特征在于,所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置,所述方法包括:所述事务处理装置实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。本专利技术实施例提供的处理器重放调试方法及系统,通过利用事务处理装置记录处理器运行程序过程中的关键信息,并利用记录的关键信息重放处理器的程序执行过程以实现处理器的离线调试。与现有技术相比,一方面,本专利技术通过离线调试方式对处理器运行的软件程序进行离线调试,而不用真正的运行指令进行计算,从而能够提高处理器的软件调试效率,从而加快芯片验证进程;另一方面,本专利技术的处理器重放调试方法及系统,能够高效准确定位出处理器的软硬件问题,为处理器调试提供更多有用信息。附图说明图1为本专利技术一实施例处理器重放调试系统的结构示意图;图2为本专利技术另一实施例处理器重放调试系统的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供一种处理器重放调试系统,应用于硬件仿真加速器,如图1所示,所述系统包括主机和所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置;所述事务处理装置,用于实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机,用于利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。本专利技术实施例提供的处理器重放调试系统,通过利用事务处理装置记录处理器运行程序过程中的关键信息,并利用记录的关键信息重放处理器的程序执行过程以实现处理器的离线调试。与现有技术相比,一方面,本专利技术通过离线调试方式对处理器运行的软件程序进行离线调试,而不用真正的运行指令进行计算,从而能够提高处理器的软件调试效率,从而加快芯片验证进程;另一方面,本专利技术的处理器重放调试方法及系统,能够高效准确定位出处理器的软硬件问题,为处理器调试提供更多有用信息。可选地,所述关键信息包括程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列。可选地,如图2所示,所述关键信息以特定数据结构保存在所述事务处理装置的先入先出序列FIFO中,所述事务处理装置通过SCI-ME接口将所述先入先出序列中保存的关键信息周期性地发送至所述主机。可选地,如图2所示,所述调试主机包括:源程序数据库,用于存储源程序及其对应的汇编文件和已经编译产生的可执行文件;记录数据库,用于记录所述程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列;重放引擎,用于根据所述处理器的微架构初始化运行环境,根据所述记录数据库中的程序计数器值在所述汇编文件中找到对应的机器码,并通过所述记录数据库的通用寄存器组值、堆栈和指令提交序列得到对应指令的运行结果。本专利技术实施例还提供一种处理器重放调试方法,应用于硬件仿真加速器,所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置,所述方法包括:所述事务处理装置实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。本专利技术实施例提供的处理器重放调试方法,通过利用事务处理装置记录处理器运行程序过程中的关键信息,并利用记录的关键信息重放处理器的程序执行过程以实现处理器的离线调试。与现有技术相比,一方面,本专利技术通过离线调试方式对处理器运行的软件程序进行离线调试,而不用真正的运行指令进行计算,从而能够提高处理器的软件调试效率,从而加快芯片验证进程;另一方面,本专利技术的处理器重放调试方法及系统,能够高效准确定位出处理器的软硬件问题,为处理器调试提供更多有用信息。其中,所述关键信息包括程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列。可选地,所述主机利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试包括:源程序数据库,用于存储源程序及其对应的汇编文件和已经编译产生的可执行文件;记录数据库,用于记录所述程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列;重放引擎,用于根据所述处理器的微架构初始化运行环境,根据所述记录数据库中的程序计数器值在所述汇编文件中找到对应的机器码,并通过所述记录数据库的通用寄存器组值、堆栈和指令提交序列得到对应指令的运行结果。其中,所述关键信息以特定数据结构保存在所述事务处理装置的先入先出序列中。具体地,所述事务处理装置将记录的关键信息周期性地发送至所述主机包括:所述事务处理装置通过SCI-ME接口将所述先入先出序列中保存的关键信息周期性地发送至所述主机。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。以上所述,仅为本专利技术的具体实施方式,但本专利技术的保护范围并不局限于此,任何熟悉本
的技术人员在本专利技术揭露的技术范围内,本文档来自技高网
...

【技术保护点】
1.一种处理器重放调试系统,应用于硬件仿真加速器,其特征在于,所述系统包括主机和所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置;所述事务处理装置,用于实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机,用于利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。

【技术特征摘要】
1.一种处理器重放调试系统,应用于硬件仿真加速器,其特征在于,所述系统包括主机和所述硬件仿真加速器上设置的包括至少一个处理器的系统级芯片及所述至少一个处理器对应的至少一个事务处理装置;所述事务处理装置,用于实时记录所述处理器运行程序过程中的关键信息,并将所述关键信息周期性地发送至所述主机;所述主机,用于利用所述关键信息和自身存储的源程序重放所述处理器的程序执行过程以实现对所述处理器的离线调试。2.根据权利要求1所述的系统,其特征在于,所述关键信息包括程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列。3.根据权利要求2所述的系统,其特征在于,所述调试主机包括:源程序数据库,用于存储源程序及其对应的汇编文件和已经编译产生的可执行文件;记录数据库,用于记录所述程序计数器值、通用寄存器组值、指令提交序列、堆栈和访存序列;重放引擎,用于根据所述处理器的微架构初始化运行环境,根据所述记录数据库中的程序计数器值在所述汇编文件中找到对应的机器码,并通过所述记录数据库的通用寄存器组值、堆栈和指令提交序列得到对应指令的运行结果。4.根据权利要求1所述的系统,其特征在于,所述关键信息以特定数据结构保存在所述事务处理装置的先入先出序列中。5.根据权利要求5所述的系统,其特征在于,所述事务处理装置通过SCI-ME接口将所述先入先出序列中保存的关键信息周期性地发送至所述主机。6.一种处理器重放调试方法,应用于硬件仿真加速器,其特征在于,所述...

【专利技术属性】
技术研发人员:李小波冉晓东杨金龙李文
申请(专利权)人:中科曙光信息产业成都有限公司成都海光集成电路设计有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1