程序运行时间的测量方法及仿真器技术

技术编号:8907049 阅读:188 留言:0更新日期:2013-07-11 04:43
本发明专利技术提供一种程序运行时间的测量方法及仿真器,其中仿真器包括软件部分和硬件部分。所述硬件部分包括:程序计数器和微控制单元;所述软件部分包括:模式设定模块、模式识别模块、执行控制模块、周期确定模块、软件计数器和时间运算模块。本发明专利技术采用软件计数器对机器周期进行计数累计,从而克服了计数溢出的问题;并且测量结果中不包含额外的通信时间和处理时间,因此测量的准确度更高。

【技术实现步骤摘要】

本专利技术涉及一种程序运行时间的测量方法及仿真器,属于芯片设计

技术介绍
秒表(StopWatch)仿真器是一种用于测量仿真芯片的程序运行时间的软件。程序是由仿真芯片支持的不同指令所组成,而程序运行时间则是由这些指令的机器周期及当前的时钟频率所决定的。在现有的指令中,部分程序跳转指令及寄存器间寻址指令的运行时间为两个机器周期,其余指令的运行时间均为一个机器周期,一个机器周期为η个主时钟周期,η为整数,由仿真芯片的特性决定。假设η = 4,当仿真器运行完一段程序时,该程序的运行时间的计算公式如下:程序运行时间=程序执行的所有机器周期数* 一个机器周期的时间其中,一个机器周期的时间=1/(时钟频率/4),当时钟频率=4MHz时,则一个机器周期的时间为I μ S。现有实现方式一:仿真器由硬件计数器记录仿真芯片在运行时输出时钟信号的时钟数;当程序停止运行时,仿真器的主控芯片在读寄存器的时候同时读出所述时钟数,再上传至界面软件,由界面软件根据所述时钟数和已知的时钟频率计算出所述程序的运行时间。这种方式的缺陷在于:硬件计数器的计时长度是固定的,当实际的时钟数超出硬件的计时长度时,便会本文档来自技高网...

【技术保护点】
一种程序运行时间的测量方法,其特征在于,包括:步骤110,将软件计数器清零,并将程序计数器的值设定为被测程序的待执行的指令码的地址;步骤120,根据所述程序计数器的值确定相应的指令码的机器周期;步骤130,汇编单步执行所述指令码,结束后,通过所述软件计数器累计所述机器周期,当汇编单步执行的所述指令码为中断指令码,或者当所述收到用户输入的暂停命令时,执行步骤150,否则执行步骤140;步骤140,将所述程序计数器的值更新为所述被测程序的下一个待执行的指令码的地址,并返回执行步骤120;步骤150,停止所述累计得到累计值,并根据所述累计值和预设的时钟频率计算得到所述被测程序的程序运行时间。

【技术特征摘要】

【专利技术属性】
技术研发人员:王珊珊
申请(专利权)人:上海海尔集成电路有限公司
类型:发明
国别省市:

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

1