文档详情

集成电路验证.ppt

发布:2016-11-03约字共66页下载文档
文本预览下载声明
了解集成电路验证领域的最新发展 验证方法的研究热点 指令级随机验证方法的研究进展 处理器验证的现状和发展 关于片上多核处理器验证的讨论 覆盖驱动的随机验证 半形式化验证 将模拟验证和形式验证相结合,断言的使用就提供了一种途径. 对于两者如何结合,有不同的具体方案。基本策略是根据形式验证生成的反例来引导模拟验证。 模拟检验和定理证明相结合 模型检验具有自动性,但有状态爆炸问题;定理证明表达和处理能力不受状态数限制,但需要人工引导。显然,两者结合就会产生更有优势的验证工具,一个自然的结合方式是就是用模型检验处理子系统的验证问题,然后用定理证明将结果汇总并处理,完成整个系统的验证。 将形式验证技术融入设计流程 这是对商业工具最迫切的要求,要求形式验证工具尽量参与各个设计步骤正确性的验证,并且要求验证时间尽量与设计进程同步。这无论是对验证技术本身的研究,还是如何整合现有形式验证工具的实践,都是一个挑战。 目前的研究热点 课程目标 了解集成电路验证领域的基础知识 掌握验证的基本流程和工作方法 具备一定的验证实践能力 了解集成电路验证领域的最新发展 如何设计覆盖率? Measure Coverage Metrics Coverage Metrics Functional Implementation Coverage Analysis Stimulus Generation DUV Functional Test Coverage Analysis Measure 覆盖率的度量 针对测试向量的覆盖 类型覆盖 交叉覆盖 边界覆盖 针对待验证设计的覆盖 结构覆盖率 功能覆盖率 针对待验证设计的覆盖 结构覆盖率 基于一个给定的系统实现,标示实现被模拟验证的程度。 优点:操作具体,易于采集和度量。 缺点:不能表示一种实现相对于其规范的正确性,只能说明模拟验证的程度。 例子:如果一个64位加法器被错误实现60位加法器,即使达到100%代码覆盖率,实现仍然错误。 功能覆盖率 基于设计规范,同时依赖于具体设计实现,标示所验证的设计实现的特征和功能的数量。 优点:标准客观,可以更直接地体现设计验证的意图。 缺点:1)需要从规范中推导和提取,又与具体实现相关,构造和使用困难; 2)考虑到规范本身的不确定性和复杂性,难以完整枚举所有的功能。 结构覆盖率度量的类型 Source code Toggle Coverage Variable Coverage Expression Coverage Line(statement) Coverage Block Coverage Branch(condition) Coverage Path Coverage Finite State Machine States Coverage Transitions(or Arc) Coverage Path Coverage Tags Complex Structure 功能覆盖率描述的特点 为设计的每一个属性规范定义一个覆盖率模型; 每个覆盖率模型包括一系列离散的功能属性的子集; 模型内部表示为一系列功能属性、值以及相互关系。 每一个模型都有规范推导、设计和实现,并且在仿真过程中被监测和度量。 功能覆盖率度量的类型 根据描述方法分为: Coverage Bins/Samples Coverage Groups Cross-product Coverage Transition Coverage Assertion Coverage Complex Self-define Scenario 根据采样方法分为: Coverage based on Clock Coverage based on Event 覆盖率的采集方法 软件采集 针对测试向量的覆盖率 仿真工具支持的直接覆盖率采集 针对结构覆盖率 采用SystemVerilog集成验证环境采集 针对功能覆盖率 仿真工具支持的直接覆盖率采集 Almost all simulators have build-in structual coverage reporting mechanism NCVerilog (Cadence) VCS (Synopsys) ModelSim (Mentor Graphics) 覆盖率分析
显示全部
相似文档