The verification throughput is becoming a major challenge bottleneck, since the complexity and size of SoC designs are still ever increasing. Simply adding more CPU cores and running more tests in parallel will not scale anymore. This paper discusses various methods of improving verification throughput: ranking and the new machine learning (ML) based technology introduced by Cadence i.e. Xcelium ML. Both methods aim at getting comparable coverage in less CPU time by applying more efficient stimulus. Ranking selects specific seeds that simply turned out to come up with the largest coverage in previous simulations, while Xcelium ML generates optimized patterns as a result of finding correlations between randomization points and achieved coverage of previous regressions. Quantified results as well as pros & cons of each approach are discussed in this paper at the example of three actual industry projects. Both Xcelium ML and Ranking methods gave comparable compression & speedup factors around 3 consistently. But the optimized ML based regressions simulated new random scenarios occasionally producing a coverage regain of more than 100%. Finally, a methodology is proposed to use Xcelium ML efficiently throughout the product development.
翻译:随着SoC设计的复杂性和规模持续增长,验证吞吐量正成为主要的瓶颈挑战。单纯增加CPU核心数量并并行运行更多测试已无法满足扩展需求。本文探讨了多种提升验证吞吐量的方法:种子排序以及由Cadence公司推出的新型基于机器学习(ML)的技术——Xcelium ML。这两种方法均旨在通过施加更高效的激励,在更少的CPU时间内获得相当的覆盖率。种子排序通过选择在先前仿真中表现出最大覆盖率的特定种子来实现;而Xcelium ML则通过分析随机化点与已实现回归覆盖率之间的关联性,生成优化后的测试模式。本文以三个实际工业项目为例,量化比较了两种方法的优劣与成效。Xcelium ML与种子排序方法均能稳定实现约3倍的压缩与加速效果。但基于机器学习的优化回归仿真偶尔能产生新的随机场景,实现超过100%的覆盖率恢复。最后,本文提出了一套在产品开发全周期中高效运用Xcelium ML的方法论。