系统与设计
的意见

防弹虚拟原型

提高模型与敏捷方法和代码质量分析。

受欢迎程度

大虚拟样机方法的好处是,他们不依靠RTL或物理硬件的可用性。相反,他们利用模式未来的SoC。这些模型通常是轻量级和优化他们的用例中,这是重要的关于模拟速度,建模和测试工作。模型质量是一个关键问题,如虚拟原型最终用户验收直接依赖于模型的准确性,也因为它的最大努力创建模型。

当然,还有方法利用RTL测试长椅,但是假设在这个博客更典型的pre-RTL情况下我们没有任何验证测试利用。为了提高模型的质量我们可以利用:

  1. 智能SystemC编码方法
  2. 为自动代码分析技术

SystemC测试驱动开发
SystemC编码与一些额外的c++开发的硬件知识的概念。敏捷开发方法采用c++社区已经有很长一段时间。测试驱动开发意味着交错编码和测试活动。全部模型的功能分解成小块。每一块编码之前首先测试动作。敏捷社区开发了许多测试框架,培养这种方法(如。Junit)。


测试驱动开发允许为每个小SystemC快速创建单元测试功能块。仿真器提供了一个SystemC知道单元测试框架集成到仿真器Studio IDE。

SystemC代码分析技术
第二种方法来提高模型是利用代码质量分析技术。

最常见的是动态代码分析技术,执行单元测试用例,并检查哪些部分的模型尚未执行或刺激。这种反馈可以帮助开发人员创建额外的测试覆盖这些错过的功能块。有两种方法:代码覆盖率看着源代码和强调哪些代码块被执行;功能覆盖看着SystemC原语和突出了寄存器,别针或端口已经被执行。


代码覆盖率和功能覆盖率报告每一增量测试运行后生成指导开发人员添加测试还错过了代码块。

然后是静态代码分析技术分析了源代码和检查缓冲区溢出等编码和安全漏洞,空指针共同编码错误和许多其他问题。

Synopsys对此SystemC模型用户的一项研究显示,他们的模型创建了没有SystemC代码分析。回想起来,用户发现80%的错误他们发现在动态或静态代码分析会高亮显示。这是一个强烈的迹象表明引导测试技术可显著提高SystemC模型质量。



留下一个回复


(注意:这个名字会显示公开)

Baidu