IC验证的流程
验证做任何事情都需要按照一定的流程来走,否则很容易陷入混乱之中,对刚入门的新手来说,更是如此。通用流程大致如下:
1)提取测试点,明确验什么
分析FS/浮点平台,提取芯片的规格及测试点;
分析AS/定点平台,提取测试点;
分析DS,提取测试点并识别asic与算法的不一致点;
2)制定验证方案,明确怎么验
刷新测试点列表,明确测试点的覆盖方式:功能覆盖率、代码覆盖率、直接用例;
验证环境的搭建策略,这个步骤是可以做成自动化工具的;
验证的重点难点,提前识别重难点,并制定相应的对策;
刷新用例列表,明确测试用例的方法及步骤;
3)用例执行,随机测试,发现bug
执行直接用例,发现大部分的bug;
带随机的大量测试,试图撞出bug;
4)完备性分析,确保无漏验
FA/AS完备性确认,确认FS/AS中的所有点都已纳入测试点,并确保已被覆盖,包括应用场景;
接口完备性确认,保证所有的接口时序都已覆盖,包括正常时序及异常时序;
覆盖率确认,分析所有的代码覆盖率、功能覆盖率,保证全部覆盖;
代码分析,熟练掌握电路的实现逻辑,保证所有的电路corner都已覆盖;
上述这几个步骤是一个比较规范的流程,只要每个步骤都做好,基本就能做到无漏测、零漏验。