中文 英语
系统与设计
的意见

正式验证SystemC/ c++设计

随着抽象级别的提高,验证级别也必须提高。

受欢迎程度

我们看到越来越多的设计使用了SystemC/ c++。这并不奇怪,因为在许多大型半导体和电子系统公司,已经出现了特定的使用模型,以推动工程团队之间的共同设计流程,从而采用高级合成(HLS)。这些HLS工具是一种流行的方法,可以快速生成具有不同微架构的设计组件,同时快速有效地优化算法处理数据路径。

然而,SystemC/ c++设计的验证主要是通过使用标准软件编译器编译设计表示,并以类似于软件设计的方式调试代码来完成的。IEEE 1666-2011标准提供了更像rtl模拟的用户体验,但SystemC代码的验证仍然是一项复杂而艰巨的任务。调试、运行时性能和测试复杂性是需要克服的重大障碍。

随着抽象级别的提高,验证级别也必须提高。在pre-HLS算法级别,需要直接根据其规范验证设计,而不太关心编码细节。功能规范可以很容易地用断言表示,因此,使用形式化技术(允许根据设计严格测试断言)是一种自然的选择。新的控制密集型算法,现在正在SystemC中编码,尤其难以通过模拟来验证。

有广泛的正式技术可以应用于SystemC设计,但OneSpin a Siemens Business拥有市场上唯一的自动化解决方案。该产品提供了一系列自动化的结构、安全和激活检查,无需手动创建断言即可应用这些检查。功能齐全的基于断言的正式验证工具允许针对SystemC/ c++设计代码测试全面的断言。多个证明引擎可以利用一系列标准和专有算法来提供深入的代码分析。自动化解决方案还可以利用SystemC/ c++硬件设计代码,以帮助在设计过程的早期消除错误,从而节省大量的工程时间。

我们的一个使用SystemC设计的大客户能够使用这个解决方案来节省大量的验证时间,在HLS之前极大地提高代码质量,避免非生产性模拟运行和测试台错误,并找到模拟遗漏的极端情况错误。先进的多媒体公司部署解决方案作为高级合成的补充。这使得精确的诊断和指导能够改进代码,更快的运行时和迭代循环,详尽的形式检查,所有这些都导致更好的SystemC验证。

形式化技术是硬件设计功能验证的关键部分。许多设计人员已经转向SystemC/ c++,以提高抽象级别并利用高级合成。此举加快了硬件设计时间,但为了相应减少验证时间,重点必须放在SystemC/ c++源代码上,而不是后hls RTL设计上。OneSpin SystemC/ c++解决方案满足了这一需求,为高级设计提供了自动设计检查和完全基于断言的验证。HLS用户可以充分利用最先进的正式验证方法。您可以在我们的白皮书“OneSpin SystemC/ c++ verification的正式解决方案”中阅读更多关于如何将形式验证应用于SystemC/ c++设计的信息https://www.onespin.com/resources/white-papers.您还可以在上面提到的案例研究中获得更多细节https://www.onespin.com/customer-stories



留下回复


(注:此名称将公开显示)

Baidu