基于随机测试的SoC系统级验证方法研究
【摘要】:根据摩尔定理,芯片的集成度每18至24个月翻一倍。集成度的提高使得生产出来的芯片产品面积更小、速度更快。在第三方IP(Intellectual Property)的支持下,微电子学的发展促使了在单一芯片上能够包含多种功能模块,这种芯片就被称为片上系统(System-on-Chip,SoC)。
从专用芯片(Application Specific Integrated Circuit,ASIC)过渡到片上系统,虽然在单一芯片上包含的功能越来越多,但同时对片上系统进行验证所带来的挑战也越来越大。当芯片的规模变得很庞大时,传统的验证方法已经无能为力。在寄存器传输级(Register Transfer Level,RTL)进行验证时,由于使用硬件仿真器所导致的仿真速度很低,且验证耗时很大。此外,由于寄存器传输级验证缺乏对软/硬件并行开发的支持,不利于快速进行软/硬件协同验证。
为了克服传统验证方法的局限性,本文提出了新的SoC验证方法——基于随机测试的SoC系统级验证方法。该方法源于新的验证思想,即在SoC设计的更早期发现更多的功能性设计错误。
论文的开始介绍了SoC系统级验证方法学和有关随机测试的理论,这两方面是进行论文研究的背景知识。新的SoC验证方法是在上述两方面知识的基础上提出的。
在本文的研究中,采用基于SystemC和SCV(SystemC Verification Standard)验证库的方法来创建系统级的测试平台。具体地说,在系统级验证中所使用的测试平台是采用SystemC 2.0描述的,系统级测试平台中测试向量的生成是根据SCV验证库的三种随机化机制:直接随机化、带权重的随机化和带约束的随机化。
新的验证方法可以在SoC系统级验证平台上执行,这一平台是在Sun Blade2000工作站上通过集成编译、连接和调试工具、安装SystemC库和SCV验证库构建而成的。论文中的SoC系统级验证平台是WHU SLD 1.0的一部分,WHUSLD 1.0是在研究SoC软/硬件协同设计和协同验证这一国家863项目过程中开发出来的工具原型。
通过对4×4包交换芯片的系统级模型进行一系列的验证实验,证实了基于随机测试的SoC系统级验证方法是可行的。论文具体阐述了如何创建系统级测试平台、如何对测试平台和被验证对象(Design Under Verification,DUV)进行绑定、如何根据SCV验证库的三种随机测试向量生成方法生成测试激励。针对4×4包交换芯片系统级模型不同方面的功能,论文完成了4个验证实验:通过对实验结果进行分析,反过来对论文中所提出的新的SoC验证方法进行了评估。结论表明,本文提出的验证方法能够有效地完成SoC系统级验证。