使用在线仿真器(ICE)进行程序优化
[09-12 18:30:23] 来源:http://www.88dzw.com EDA/PLD 阅读:8655次
文章摘要:图2:在设置窗口中设置源代码文件的起始点。图3:在程序文件中设置了起始点和结束点后的MVP窗口。2.设定外部输出条件:将e0、e1设为外部输出条件,如图4所示。图4:设置外部输出条件。3.设定测量条件:在图5所示的窗口中,将e0、e1设定为时间测量的起点和终点,并进行测量模式的设定。可以进行超过指定时间和在指定时间之内的测量统计。图5:设定时间测量的起点和终点,并进行测量模式的设定。4.运行程序:做好以上设定之后,可以运行程序,进行时间测量。5.测量结果显示:测量结束后,测量结果会以图表形式自动显示在报告窗口中,并且显示最长、最短、平均运行时间。(见图6)通过这个图表,用户可以清晰地了解这段代
使用在线仿真器(ICE)进行程序优化,标签:eda技术,eda技术实用教程,http://www.88dzw.com 图2:在设置窗口中设置源代码文件的起始点。
图3:在程序文件中设置了起始点和结束点后的MVP窗口。
2.设定外部输出条件:将e0、e1设为外部输出条件,如图4所示。
图4:设置外部输出条件。
3.设定测量条件:在图5所示的窗口中,将e0、e1设定为时间测量的起点和终点,并进行测量模式的设定。可以进行超过指定时间和在指定时间之内的测量统计。
图5:设定时间测量的起点和终点,并进行测量模式的设定。
4.运行程序:做好以上设定之后,可以运行程序,进行时间测量。
5.测量结果显示:测量结束后,测量结果会以图表形式自动显示在报告窗口中,并且显示最长、最短、平均运行时间。(见图6)通过这个图表,用户可以清晰地了解这段代码的运行时间分布情况,为代码优化提供最直接的依据。
图6:通过以图表形式显示的测量结果,可以清晰地了解代码的运行时间分布。
功能3:测量代码覆盖率
代码覆盖率(Coverage Ratio)是指在一段代码中被执行到的语句占这段代码的比例。它是衡量代码质量的一个重要的指标,在代码测试工作中经常会被用到。在PC应用程序中测试代码覆盖率不是一件很难的事情,但是在嵌入式系统的实时环境中进行测量就比较困难。
横河公司的advicePLUS仿真器就提供了这样的扩展功能,使嵌入式环境下测量代码覆盖率变成一件可以轻松完成的事情。设置方法很简单,只要在MVP的相应设置窗口中给出被测代码段的起始和终止地址,或者给出被测函数的名称即可。(见图7)
图7:在MVP中进行代码覆盖率分析。
程序运行结束后,代码覆盖率也会以图表的形式显示在结果窗口中。(见图8)从图表中可以很明显看出各个函数的代码执行情况。
如:函数Strcpy()的代码覆盖率为0,说明此函数没有被执行过,对于编程者来说就要考虑这个函数是否有存在的必要。对于覆盖率很低的函数,需要考虑是否需要将此函数并入其他函数之中。
图8:以图表形式显示的代码覆盖率。
不只代码覆盖率可以测量,某一地址范围内的数据覆盖率也可以进行类似的测量。这一功能让使用者可以轻松掌握数据区的使用率信息。(见图9)
图9:测试指定地址范围内的数据覆盖率。
在嵌入式开发中进行程序优化并不是一件很容易的事情,ICE仿真器提供的这些功能可以让程序优化变得简单,让程序员能更有效地配置系统资源。
需要注意的是,这些功能并不是所有ICE仿真器都能提供的。选择功能强大的仿真器能够给开发者带来的不只是开发效率的提高,也能够帮助开发者提高代码质量,使企业产品能够更加稳定可靠地运行。
《使用在线仿真器(ICE)进行程序优化》相关文章
- › 使用在线仿真器(ICE)进行程序优化
- 在百度中搜索相关文章:使用在线仿真器(ICE)进行程序优化
- 在谷歌中搜索相关文章:使用在线仿真器(ICE)进行程序优化
- 在soso中搜索相关文章:使用在线仿真器(ICE)进行程序优化
- 在搜狗中搜索相关文章:使用在线仿真器(ICE)进行程序优化