论文部分内容阅读
随着硬件电路设计规模越来越大复杂度越来越高,芯片的验证工作复杂度也在成倍的增加,使得验证周期占用了整个芯片研发周期70%的时间。对于芯片研发公司来说,如何提高验证效率、减少验证时间、缩短产品上市周期,成为IC设计中最棘手的问题。一个高效率的验证平台可以让验证工程师把更多的时间放在验证收敛的关键性问题上,大大提高验证工作的效率,减少芯片中的流片bug,成为许多IC公司减少验证周期、提高验证质量的重要途径。本文对IC公司在验证工作中普遍存在的问题进行详细阐述,然后对验证工程师的日常验证工作需求进行深入分析。在此基础上,首次提出针对西安Intel公司包含多种功能为一体的验证平台的设计架构,并选择Python语言,采用分层与模块化的设计方案进行验证平台的最终实现。在纵向上,本验证平台分为UI层、逻辑层和数据层,UI层负责处理界面显示以及用户交互;逻辑层负责针对用户的交互动作进行后台数据处理;数据层定义后台的数据存储结构。横向上,验证平台主要包括三个模块:Regression、Tasklist、Bug tracking,其中Regression模块主要完成测试激励的回归测试工作;Tasklist模块主要完成小型验证团队的任务管理工作;Bug tracking模块主要完成验证平台的bug记录工作。此外各个子模块内部在纵向上也按照UI层、逻辑层和数据层的结构进行设计,使得整个验证平台的设计结构趋于统一化,以提高验证平台的灵活性和可扩展性。在各个模块设计完成后对整个验证平台进行功能和性能测试,并根据功能和性能测试结果对验证平台进行设计改进,以在更高程度上满足用户的需求。功能测试采用自底向上的测试方法,即先对各个模块进行模块测试,测试通过后对整个验证平台进行集成测试和系统测试;性能测试采用负载测试方法,即针对验证工程师的性能需求目标编写特定测试激励进行测试;基于Intel的项目开发环境,对验证平台进行系统测试,结果表明:本验证平台充分满足公司验证工程师对自动回归测试和验证团队管理的需求的基础上,简化了芯片bug记录与查询的过程,提高了验证工程师的工作效率与质量,为公司在验证工作阶段节省大量的人力和财力。本文实现的验证平台极大的提高了本公司验证工程师的日常工作效率和验证工作的质量,其相关的研究成果也对其他验证相关平台的开发具有借鉴意义。