论文部分内容阅读
功能验证是SoC(System-on-Chip)设计流程中最复杂、最耗时的环节,平均约占整个芯片研发周期的56%,再加上芯片上市需求的紧迫性,验证己成为芯片设计中的瓶颈。传统的功能验证方法存在验证周期长、验证平台可重用性差、自动化水平低和bug定位难等问题。 针对这些问题,本文以SoC芯片SEP611B的研发为平台,研究UVM(UniversalVerificationMethodology)验证方法学和Magellan断言形式验证在提高验证效率和质量方面的机制和效果。本文分析比较两种验证方法的优缺点和适用范围,得出两者具有互补性,可采用UVM进行动态仿真验证,并采用Magellan验证时序规则,以弥补动态仿真的不足。本文以SEP611B中DDR控制器为验证案例,根据其功能特点设计验证方案,搭建验证平台,开发带约束的随机向量、覆盖率模型、axi_master_agent、scoreboard等验证组件,对DDR控制器进行功能仿真验证和覆盖率完备性分析,并从可重用性、验证时间、覆盖率和自动化程度方面比较传统验证方法和UVM仿真验证的验证效率和质量,在验证DDR控制器多host_port同时有读写请求的响应时序规则时,发现仿真验证该功能点工作量较大且繁琐耗时。由于Magellan断言形式验证适合验证时序规则,而该功能点主要涉及DDR控制器的仲裁,本文对arbiter进行Magellan断言形式验证,搭建验证环境,开发断言特性和输入约束,并使用AEP功能自动提取特性,分析验证结果和验证效率。 验证结果表明,与传统验证方法相比,UVM验证组件可重用、支持在testcase中修改验证平台的参数使得可重用性提高47.3%;结合带约束的随机激励和覆盖率技术可节省testcase的开发时间和提高验证的全面性,验证效率提高16%,覆盖率提高11%;结合Magellan形式验证可以解决UVM仿真验证时序规则存在难度的问题,发现arbiter的性能瓶颈,Magellan的AEP功能和验证环境简单易搭建缩短验证周期,验证效率提高9.6%。