SoC验证工程师认识到了受限随机测试平台的局限性,促使他们手写C测试以在处理器上运行模拟和硬件仿真,即使他们在充分运用SoC设计方面受到限制。这些验证平台的性能不足以运行完整的操作系统(OS),因此这些测试执行“裸机”,这大大增加了合成工作的开销。
当然,自动生成的C测试会更有效地利用工程资源。它们也增加了覆盖面。与手写测试相比,生成的C测试用例可以测试更多的SoC功能,并且可以找出难以想象的复杂的极限情况。多线程、多处理器测试用例可以测试设计中的所有并行路径,以验证并发性。它们可以在内存段之间移动数据以强调一致性算法,并在数据应该发送到芯片的输入或从其输出读取时与I/O事务协调。这样做的总体效果是增加系统功能覆盖率,通常高于90%,而数字通常要低得多。
测试生成软件,被称为测试套件合成,使用一个易于理解的、基于图形的场景模型来捕获预期的设计行为。这些模型可以使用Accellera可移植刺激标准使用本地C++编写或可视化描述。场景模型由设计或验证工程师创建,作为SoC开发的自然部分,因为它们类似于传统的芯片数据流图,可以在白板上绘制以解释部分设计规范。
测试套件合成的一个显著优势是能够在意图模型上预先定义覆盖目标。一旦指定了意图,该工具就可以对其进行分析,以了解可能产生的测试数量以及将要实现的功能意图的覆盖范围。
对于SoC来说,这可能需要数千次测试。然后,可以通过约束要测试的意图并将工具集中在关键领域来设置覆盖目标。这种能力避免了传统方法中出现的痛苦的迭代循环,传统方法是设置测试,运行验证工具,理解实现的覆盖范围,然后一次又一次地重置测试。
在一个由著名半导体公司开发的大型SoC的典型项目中,验证工程师将测试组合时间减少到以前需要手写测试的20%。自动化技术产生了更严格的测试用例,覆盖率从84%提高到97%。此外,这些型号便于携带。
就像约束随机测试平台消除了块验证的人工工作一样,基于嵌入式处理器的SOC的综合测试内容已被证明可以减少系统级验证工作。此外,在嵌入式开发中,该解决方案目前正在块级应用,并用于芯片后验证。在这个例子中,自动化C测试用例应用了“尽可能自动化”的格言,显著地提高了覆盖率,同时缩短了验证计划。
联系方式: 或 咨询客服
相关地区:
广州粤嵌教育黄埔校区|
广州粤嵌教育从化校区|
以上就是广州粤嵌教育小编为您整理嵌入式系统验证的自动化C测试用例的全部内容,更多精彩请进入
学校动态栏目查看。