[发明专利]一种片上系统的仿真方法及装置有效
申请号: | 201610280807.4 | 申请日: | 2016-04-29 |
公开(公告)号: | CN107329869B | 公开(公告)日: | 2020-04-21 |
发明(设计)人: | 刘乐毅 | 申请(专利权)人: | 展讯通信(上海)有限公司 |
主分类号: | G06F11/26 | 分类号: | G06F11/26 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 张振军;吴敏 |
地址: | 201203 上海市浦东新区张*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 仿真 方法 装置 | ||
一种片上系统的仿真方法及装置,所述方法包括:确定每条软件执行指令与所述片上系统的硬件部分的时钟关系,其中,所述软件执行指令为所述片上系统的软件部分在软件仿真平台上运行的指令,基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,所述协同仿真是指所述软件仿真平台和硬件仿真平台同步地对所述软件部分和硬件部分进行仿真。上述方案可以提高片上系统仿真的准确性。
技术领域
本发明涉及仿真测试技术领域,特别是涉及一种片上系统的仿真方法及装置。
背景技术
片上系统(System on Chip,SOC)技术,又称为系统级芯片技术,是指将系统关键部件集成在一块芯片上的技术,它通常是客户定制的或是面向特定用途的标准产品。SOC技术可以有效降低信息系统产品的开发成本,提高系统的可靠性,因此得到广泛的应用。
目前,SOC的仿真分为软件部分仿真和硬件部分仿真,分别在软件仿真平台和硬件仿真平台上实现。然而,这样的仿真方法验证效果较差,仿真效果与SOC实际运行效果相差较大。
发明内容
本发明解决的技术问题是使片上系统的仿真更接近于实际运行情况,提高仿真的准确性。
为解决上述问题,本发明实施例提供了一种数据传输方法,所述方法包括:
确定每条软件执行指令与所述片上系统的硬件部分的时钟关系,其中,所述软件执行指令为所述片上系统的软件部分在软件仿真平台上运行的指令;基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,所述协同仿真是指所述软件仿真平台和硬件仿真平台同步地对所述软件部分和硬件部分进行仿真。
可选地,基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,包括:
所述软件仿真平台执行每条指令后中断,以判断所述指令的类型,当判断结果表明所述指令是所述软件执行指令时,根据所述时钟关系得到所述硬件部分的驱动时钟数;
所述硬件仿真平台对所述硬件部分进行仿真,仿真的时钟数等于所述驱动时钟数。
可选地,在所述软件仿真平台上运行的指令还包括控制指令,基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,还包括:当判断结果表明所述指令为所述控制指令时,继续执行下一条指令。
可选地,所述软件仿真平台以调试模式单步执行指令。
可选地,基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,还包括:
所述硬件仿真平台仿真的时钟数达到所述驱动时钟数时,所述软件仿真平台继续执行下一条指令。
本发明实施例还提供一种片上系统的仿真装置,所述装置包括:
确定单元,适于确定每条软件执行指令与所述片上系统的硬件部分的时钟关系,其中,所述软件执行指令为所述片上系统的软件部分在软件仿真平台上运行的指令;
仿真单元,适于基于所述时钟关系对所述片上系统的软件部分和硬件部分进行协同仿真,所述协同仿真是指所述软件仿真平台和硬件仿真平台同步地对所述软件部分和硬件部分进行仿真。
可选地,所述仿真单元包括:
驱动时钟数获取子单元,适于在所述软件仿真平台执行每条指令后中断,判断所述指令的类型,并且判断结果表明所述指令是所述软件执行指令时,根据所述时钟关系得到所述硬件部分的驱动时钟数;
硬件仿真子单元,适于控制所述硬件仿真平台对所述硬件部分进行仿真,仿真的时钟数等于所述驱动时钟数。
可选地,在所述软件仿真平台上运行的指令还包括控制指令,所述仿真单元还适于当判断结果表明所述指令为所述控制指令时,继续执行下一条指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于展讯通信(上海)有限公司,未经展讯通信(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610280807.4/2.html,转载请声明来源钻瓜专利网。