收藏 分享(赏)

soc功能验证.pdf

上传人:weiwoduzun 文档编号:1753819 上传时间:2018-08-22 格式:PDF 页数:38 大小:302.96KB
下载 相关 举报
soc功能验证.pdf_第1页
第1页 / 共38页
soc功能验证.pdf_第2页
第2页 / 共38页
soc功能验证.pdf_第3页
第3页 / 共38页
soc功能验证.pdf_第4页
第4页 / 共38页
soc功能验证.pdf_第5页
第5页 / 共38页
点击查看更多>>
资源描述

1、SoC设计方法与实现 郭炜 郭筝 谢憬 第九章 SoC功能验证2 主要内容 SoC 功能验证的概念 SoC 功能验证的问题和发展趋势 主要的验证技术 软、硬件协同验证 基于断言的验证 (ABV) 3 SoC功能验证的概念 功能验证是指设计者通过各种方法来比较设计完成 的电路模块和设计文档实际规定的功能是否一致; 功能验证的目标是尽量确保设计能够实现设计文档 中所描述的功能; 功能验证的方法主要有软件仿真,软、硬件协同仿 真,形式验证和断言验证。4 主要内容 SoC 功能验证的概念 SoC 功能验证的问题和发展趋势 主要的验证技术 软、硬件协同验证 基于断言的验证 (ABV) 5 SoC功能验证

2、的问题 对于百万门级的设计,功能验证工作占据整个设计 周期的大部分时间,比重超过60% (甚至70%) 30% -70%的人力投入到验证工作中 对于大设计而言,功能验证工作所耗费的CPU时 间呈指数级增长6 SoC功能验证的问题-cont. 设计层次提高增加了验证工作量 在一个较高的抽象级上进行设计使得设计者能够 轻松地实现高度复杂的功能; 需要保证高抽象级上的设计与在RTL级这一层 次上的设计一致; 验证避免在设计、变换及最终产品的映射中存在 信息损失和解释错误。7 SoC功能验证的问题-cont. 系统复杂性提高增加验证难度 设计复杂度不断提高,例如硬件和软件结合、模拟和数 字的共存等;

3、SoC在同一块芯片上集成了大量的IP模块,其片内通信 及模块间接口的复杂度也大大提高; 使其验证的难度和复杂度都达到了前所未有的程度。8 功能验证的发展趋势 新的验证方法和更好的验证工具 传统的验证方式只是基于芯片本身的功能验证,IC设计 工程师与系统工程师工作在各自独立的验证平台上; 功能验证将向系统级设计与IC设计在同一个验证平台上 发展。9 主要内容 SoC 功能验证的概念 SoC 功能验证的问题和发展趋势 主要的验证技术 软、硬件协同验证 基于断言的验证 (ABV) 10 1 、基于事件的模拟 基于事件的模拟把输入激励的任何一个变化都视为 一个事件,每一个模拟时间模拟器处理一个事件。

4、每发生一个事件,就对整个设计重新进行计算直到 模拟出现稳定状态为止; 基于事件的模拟模型包括时序模型和功能模型; 这种模拟同时覆盖设计的功能和时序模型,模拟结 果精确,容易检查出设计对象中的毛刺,特别适用 于异步电路的模拟; 它的缺点是设计规模很大时,模拟将会很慢。11 2 、基于周期的模拟 基于周期的模拟只在时钟的上升沿或下降沿触发, 每一个时钟周期的时间对电路计算一次,在时钟周 期内没有时间概念,它只对同步设计有效; 这种模拟的模拟速度显著提高,是基于事件的模拟 的5倍100倍,适用于需要大型模拟向量的设计 对象,如微处理器、专用集成芯片和系统芯片; 它的缺点是无法检测出设计对象中的毛刺,

5、以及需 要使用时序静态分析工具进行时序验证。12 3 、基于事务的验证 事务就是设计对象与事务处理器之间通过接口所作 的一次数据或控制的传输,如读取某个存储器单元 或传输整个结构式数据报文; 这种验证通过建立系统中各功能模块之间所有可能 的事务类型,系统地加以测试; 这种验证不需要很细致的测试平台及大型向量,验 证速度大大提高。13 4 、软/ 硬件协同验证 软硬件协同验证将软件和硬件同时集成起来并加以 验证,软件小组能够直接在硬件设计对象上执行软 件; 协同验证中,硬件设计采用真实的输入激励来模 拟,减少了创作硬件测试平台所需要的工作量; 软硬件协同验证在设计周期的早期,同时对软件和 硬件加

6、以验证,从而可以加快产品的上市时间。14 5 、硬件仿真器 以硬件形式测试系统,仿真系统是专门设计出来的 软件和硬件系统,通常含有可重配置逻辑、现场可 编程门阵列; 首先把设计映射到仿真器元件上,然后给定测试向 量并检测仿真器的输出; 硬件仿真器使用真实硬件进行验证,对于复杂设计 可以得到更高的吞吐量,运行速度比软件仿真快好 几个数量级。15 6 、快速原型 也称硬件建模,是待验证对象的一种硬件设计表示 形式,常用FPGA 或ASIC 来实现; 快速原型通过快速地实现系统设计中的硬件模型, 让软件模块在真正的硬件上高速运行,实现SoC 设 计的软硬件协同验证。16 7 、硬件加速器 是指为了加

7、速逻辑模拟而把门级网表映射到专门的 硬件中; 该技术将软件模拟中部分或全部元件映射到特意为 加快某些模拟操作的速度而设计出来的硬件平台; 通常是让几个待验证的设计对象在硬件加速器中 运行,而测试平台仍然以软件形式运行; 硬件加速器可以提供非常快的仿真速度,但同时也 需要很长的代码编译时间,它适合要进行应用程序 测试的大型设计,不太适合小模块设计。17 8 、模拟混合信号模拟 使用模拟混合信号硬件描述语言如Verilog-A 、 VHDL-A 等为模拟电路的系统模拟建立行为模型。18 9 、静态Lint检查 对设计对象的代码作静态检查来验证其在语法上的 正确性; 可以在设计周期的早期进行,查出设

8、计代码中的简 单错误,避免使用更高级的工具而耗费大量的时间。19 10、静态时序分析 时序验证用来确定设计是否已满足建立时间、保持 时间和各种延迟时序等时序要求; 静态时序分析根据设计规范的要求通过检查所有可 能路径的时序,在同步电路设计中快速地找出时序 的异常,不需要模拟和输入; 静态时序分析速度快,检查完整,可以达到 100%覆盖率。20 11、形式验证 是数学地证明一个描述具有某些属性或两个不同抽 象层次的描述在功能上是等价的; 形式验证技术有定理证明,模型检查和等价性检 查; 形式验证不需要测试平台和测试向量,可保证 100%的覆盖率,但是,只适合验证小规模的电 路。21 12、代码覆

9、盖状况分析 是对设计对象的寄存器传输级视图的一种分析; 通过覆盖分析获得将一套专门的测试运用到特定设 计对象之后的功能覆盖状况; 这种量化分析可以在功能模块级进行,也可以在系 统级进行。22 13、基于断言的验证 用一种语言来描述设计的功能行为,然后将断言嵌 入在设计中,或放在一个单独的外部文件中,在仿 真或形式验证的过程中,断言将被仿真工具或形式 验证工具检查,设计者就能够知道设计是否满足所 描述的功能行为; 根据设计中断言所描述的功能行为的不同,可以将 其分为三种:应用断言、接口断言和结构断言。23 14、物理验证 物理验证需要分析解决时序、信号完整性和串扰等 问题; 工业界的做法是在版图

10、之前的设计阶段估计各种物 理效应,在版图之后的设计阶段再提取和分析这些 物理效应。24 主要内容 SoC 功能验证的概念 SoC 功能验证的问题和发展趋势 主要的验证技术 软、硬件协同验证 基于断言的验证 (ABV) 25 软硬件协同验证 软硬件协同验证是一种可以使得嵌入式系统软件在系统硬 件仿真模型上运行的方法,它可以从硬件和软件上对系统 进行完整的验证; 软硬件系统验证的困难之处在于在设计早期提供可以运行 软件的硬件虚拟原型; 现在的软硬件协同验证工具中一般对常用的处理器核(如 ARM 系列)、总线模型(如AMBA )和外围IP建立了模 型库; 在软硬件协同验证环境中,可以检查软硬件的接口

11、关系, 探究系统的各项性能,分析系统的瓶颈,这样在设计的早 期,可帮助设计者合理的配置软硬件资源,提高系统的整 体性能。26 软硬件协同验证 在建立系统硬件模型时,可以采用多种建模策略; 根据设计规范可以有两个独立的团队建立两种类型 的模型,一个团队建立RTL的模型,一个团队建立 基于C语言的模型; 在协同验证中通常采用协同仿真的方法,协同仿真 是通过同步的方式连接两个或者多个仿真器进行联 合仿真。现在的ESL工具都支持这种联合仿真。27 主要内容 SoC 功能验证的概念 SoC 功能验证的问题和发展趋势 主要的验证技术 软、硬件协同验证 基于断言的验证 (ABV)28 基于断言的验证 (AB

12、V) 在通常的功能验证中,面临的两个问题是可观测性 和可控制性; 对于整个设计的端口上的信号比较容易控制,但是 对于设计内部的信号却很难直接去控制,必须加一 定序列的测试矢量才能使内部信号达到要求的状态。29 基于断言的验证 (ABV)cont . 用常规的仿真方法发现功能上的错误必须要有两个条件:一是 合适的输入矢量能够激活错误,二是错误要能够以某种预期的 形式输出。 如果错误没有表现出来,就很难发现错误,而且发现错误时, 也已经历了多个周期的传输,很难追踪产生错误的根源; 如图通过验证平台施加测试向量。30 基于断言的验证 (ABV)co n t. 采用断言描述设计的行为,在仿真时起到监控

13、作 用,当监控的属性出现错误时,立刻触发错误的 产生,增加了设计在仿真时的可观测性; 用断言描述的属性既可以用在仿真中起到监控设 计行为的作用,也可以用在形式属性检查中作为 要验证的属性; 属性检查时,是对整个状态空间进行搜索,能够 控制到每一个信号,解决了设计验证时的可控制 性问题。31 基于断言的验证 (ABV)co n t. 基于断言的验证方 法,把断言规范与 仿真技术、形式验 证技术,甚至综合 等有机结合起来, 最有可能成为下一 代硬件设计和验证 中革命性的方法。32 断言 在仿真时断言起到监控行为的作用,在属性检查 时,则作为要验证的属性; 如果用硬件描述语言来写断言,大多数仿真工具

14、会 支持断言的使用; 不同的属性检查工具也会支持不同的断言语言描述 的属性。 现在选择任何一种仿真工具和属性检查工具,都可 以满足一个基于断言的验证平台的基本要求。 基于断言的验证,使得断言规范在各种验证技术中 都能起到作用,如形式验证、仿真验证、混合验证 等。33 在仿真中使用断言 在仿真环境中,断言起到监控设计的行为,修正产 生的激励及功能覆盖统计等。与常规的仿真相比只 是加入了断言,不影响仿真中采用其他技术; 值得注意的是,整体的测试质量与断言的加入是没 有关系的,断言只是提高了设计的可观测性; 在仿真时断言监控有不成立的地方,会在靠近错误 发生的地方给出提示信息,这样能够加速调试错误

15、的过程。34 在属性检查中使用断言 在属性检查中,最重要的就是属性描述。只要断言 能够得到属性检查工具的支持,针对设计规范要求 开发的断言就可以作为属性,在形式验证中使用; 断言属性检查依然面临着两个问题: 状态空间爆炸问题,使得断言属性检查不能够应用在比 较大的验证中; 环境的限制作用。 在属性检查时为一个模块创建接口限制断言,可以 作为与之相邻的另外一个模块的输出断言检查,在 系统级仿真时起到监控输出的作用。35 断言语言 可描述断言的语言:具有标准的断言格式和良 好的工具支持 Open Vera Assertions Language (OVA) (Synopsys) Property

16、Specification Language (PSL) (IBM, based on Sugar) Accelera Open Verification Library (OVL) SystemVerilog C or SystemC36 论述范围:(任选其中一个或几个方面, 或者关于SoC系统开发的其他方面) 你对SoC的认识,SoC设计的现状、发展趋势 和面临的挑战等; SoC设计的流程; SoC设计与EDA 工具; SoC架构设计; IP复用的设计方法; SoC功能验证等。 大作业37 作业要求: 格式:前后字体统一,行距、段距一致,排版工整; 摘要:简练,概括全文; 内容:逻辑清晰,安排合理; 参考文献:至少2篇; 字数:至少3000字。 大作业SoC设计方法与实现 郭炜 郭筝 谢憬 Thank you

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报