电子工程专辑
UBM China

使用在线仿真器(ICE)进行程序优化

上网日期: 2007年11月22日 ?? 作者: 张国跃 ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:在线仿真器? ICE? 代码覆盖率?

功能3:测量代码覆盖率

代码覆盖率(Coverage Ratio)是指在一段代码中被执行到的语句占这段代码的比例。它是衡量代码质量的一个重要的指标,在代码测试工作中经常会被用到。在PC应用程序中测试代码覆盖率不是一件很难的事情,但是在嵌入式系统的实时环境中进行测量就比较困难。

横河公司的advicePLUS仿真器就提供了这样的扩展功能,使嵌入式环境下测量代码覆盖率变成一件可以轻松完成的事情。设置方法很简单,只要在MVP的相应设置窗口中给出被测代码段的起始和终止地址,或者给出被测函数的名称即可。(见图7)

图7:在MVP中进行代码覆盖率分析。
图7:在MVP中进行代码覆盖率分析。

程序运行结束后,代码覆盖率也会以图表的形式显示在结果窗口中。(见图8)从图表中可以很明显看出各个函数的代码执行情况。

如:函数Strcpy()的代码覆盖率为0,说明此函数没有被执行过,对于编程者来说就要考虑这个函数是否有存在的必要。对于覆盖率很低的函数,需要考虑是否需要将此函数并入其他函数之中。

图8:以图表形式显示的代码覆盖率。
图8:以图表形式显示的代码覆盖率。

不只代码覆盖率可以测量,某一地址范围内的数据覆盖率也可以进行类似的测量。这一功能让使用者可以轻松掌握数据区的使用率信息。(见图9)

图9:测试指定地址范围内的数据覆盖率。
图9:测试指定地址范围内的数据覆盖率。

在嵌入式开发中进行程序优化并不是一件很容易的事情,ICE仿真器提供的这些功能可以让程序优化变得简单,让程序员能更有效地配置系统资源。

需要注意的是,这些功能并不是所有ICE仿真器都能提供的。选择功能强大的仿真器能够给开发者带来的不只是开发效率的提高,也能够帮助开发者提高代码质量,使企业产品能够更加稳定可靠地运行。

作者:张国跃

技术工程师

上海横河国际贸易有限公司 


?第一页?上一页 1???2???3





我来评论 - 使用在线仿真器(ICE)进行程序优化
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

网友推荐相关文章
?
?
有问题请反馈
推荐到论坛,赢取4积分X