论文部分内容阅读
芯片设计和验证是芯片前端开发最为重要的两个方面,随着SoC芯片规模的日益增加以及IP核复用技术的出现,使前端验证成为SoC芯片开发难度较高和耗时最长的阶段。通常对芯片的设计和验证工作同时进行:验证阶段需要分解测试点,搭建验证环境,选择验证方法,编写测试用例。在芯片设计RTL代码完成之后,对设计的验证也要相应的收敛以保证芯片功能的验证完备。目前SoC芯片验证的难点在于如何建立一套适应芯片的软硬件协同验证平台,并能够保证验证环境的可重用性和高效性。本文基于一种SoC VoIP语音芯片前端开发阶段的需求,在深入分析了该芯片的功能需求和设计实现之后,提出了详细的验证方案,分解具体的验证测试点,并结合该种芯片的特点,搭建了软硬件协同验证环境,给出了验证算法,实现了该芯片的完备验证。本课题的主要内容为:1.采用VMM方法学搭建验证环境,给出了如何搭建可重用单元验证环境的方法,该方法构建的验证环境同时具有可自测性。2.完成单元验证环境到系统硬件验证环境的搭建,给出系统硬件验证环境的搭建的方法,并引进断言到环境中。3.完成软件验证环境的搭建,建立两种软件的调度与管理机制,并将软件嵌入到验证环境。4.采用多种脚本的配合将软件验证环境和硬件验证环境协同起来进行芯片的验证,结合芯片自身的特点,给出相应的验证算法。5.RTL设计代码综合成网表文件,并完成可测性设计(Design For Testability)、布局布线(Place&Route)之后,为了保证质量,还做了相应的后仿真的工作。本文最终实现了对SoC芯片的软硬件协同验证环境的搭建,环境运行速度快,验证效率高,节约了芯片前端开发阶段的时间成本,并实现了对芯片系统功能的完备验证,保证了芯片的质量。本文对重点模块的验证方法高效且实用,可作为ASIC项目前端研发的通用方法所采用。