1 / 50
文档名称:

FPGA5-设计验证.ppt

格式:ppt   大小:385KB   页数:50页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

FPGA5-设计验证.ppt

上传人:xunlai783 2018/5/21 文件大小:385 KB

下载得到文件列表

FPGA5-设计验证.ppt

相关文档

文档介绍

文档介绍:FPGA 设计基础
设计验证
设计验证
随着IC 集成度的不断提高,系统的规模日益庞大且复杂。验证成为了整个ASIC/FPGA 设计流程中的一个瓶颈问题。(目前一个SOC设计中,验证工程师的人数是设计工程师的2倍左右,验证工作占到整个设计的60~70%,而验证代码,则占到了全部代码70~80%左右)
验证工作量远大于系统设计工作量。
验证和测试是ASIC设计流程中两个不同的环节。
验证的目的则是为了确认设计符合设计规范,目前验证一般通过仿真实现。在本课程中验证和仿真不加区分。
测试的目的是为了确认生产后的设计产品是否合格、正确,一般由加工厂家或封装测试厂家完成。
验证和测试(Verification vs Test)
验证过程是证明设计正确的过程,验证的目的是为了保证设计实现与设计规范是一致的,保证从设计规范开始,经过一系列变换后得到的网表与最初的规范是一致的,整个变换的过程是正确的。
验证的概念
从自然语言表述的系统规范变换成完整的、可验证和无二义性的系统规范。
从系统规范变换成可实现的模块设计规范。
从模块设计规范变换成RTL级代码描述。
从RTL代码通过综合工具变换成门级网表。
从门级网表通过后端布局布线工具变换成具有延时信息的网表。
FPGA设计可能包含的几个变换:
如设计规范是否正确,有无矛盾之处?
设计人员是否正确理解了设计规范,模块设计是否正确地反映了其功能?模块之间的接口是否正确?
包含有延时信息的网表的时序是否满足要求?
验证过程需要解决的问题
验证是一个多次重复的过程,是一个不断向期望结果靠近的过程。
从规范到网表之间的变换包含了许多问题
传统的电子线路设计验证方法
目前的电子线路设计验证方法
逻辑设计、画电路图、搭建电路、测试验证
随着HDL语言的广泛使用和EDA工具的快速发展。为了设计和验证更复杂的系统,硬件设计工程师在硬件设计中借助于软件工程的经验和研究方法形成了适合高层RTL级描述的硬件系统的设计和验证方法。
验证方法
Top-Down/Bottom-Up 验证方法
Top-Down 验证法
系统级验证:根据系统规范对系统进行建模,并对建立的模型进行验证。
功能验证:验证设计的RTL代码应符合系统规范。主要方法--功能仿真(形式化验证为辅)。
门级网表验证: 通过门级仿真或形式化工具检验RTL代码和综合后的网表是否相等。
时序验证:验证综合和布线后含有延时信息的网表时序是否满足要求。对于同步设计一般通过静态时序分析工具完成验证。
Top-Down/Bottom-Up 验证方法
Bottom-Up 验证法
模块级验证----验证模块的各种工作情况,保证每个单元的设计质量。
子系统验证、系统级验证----分层次组装模块进行子系统验证直至完成系统级验证。
备注:系统级验证,目标是验证整个设计的功能。验证主要集中在设计和外环境之间能否协调工作。
目前主流的两类“验证技术”:
验证技术
基于形式化的验证-----通过数学的方法,证明设计的功能是否与规范一致。
基于TestBench的验证(目前主要的验证方式)---- Testbench “利用HDL语言编写的用于验证设计的输入激励序列代码,也就是验证程序”,它实际上就相当于一个测试平台。