- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FPGA软件验证技术
第一页,编辑于星期三:一点 分。 验证的重要性 验证,顾名思义就是通过仿真、时序分析、上板调试等手段检验设计正确性的过程,在FPGA/IC开发流程中,验证主要包括功能验证和时序验证两个部分。 第二页,编辑于星期三:一点 分。 一、FPGA的开发流程 设计输入,HDL代码,图形或原理图输入。 功能验证,也叫前仿真和功能仿真。 综合,将HDL代码等设计输入转换成最基本的与或非等逻辑的网表。 布局布线,将网表逻辑根据所选器件进行实际单元的连接与映射。 时序验证,主要进行电路的时序验证,包括静态时序分析和时序仿真(后仿真)。 生成烧写文件,进行板上验证。 第三页,编辑于星期三:一点 分。 二、验证方法 1)设计检查 2)功能仿真 3)门级仿真 4)逻辑等效性分析 5)静态时序分析 6)时序仿真 第四页,编辑于星期三:一点 分。 1、设计检查 编码规则检查 代码审查 第五页,编辑于星期三:一点 分。 2、功能仿真 对RTL级代码进行功能仿真验证,验证设计逻辑功能是否正确的过程。功能仿真不考虑延时信息。 第六页,编辑于星期三:一点 分。 2、功能仿真 语句覆盖率和分支覆盖率达100%,对未覆盖的语句和分支进行未覆盖原因及影响域分析。 测试平台要求:依据测试需求规格说明和测试说明编写testbench文件,应包含被测试可编程逻辑器件的所有外围相关功能、性能、时序等要求的实现。 第七页,编辑于星期三:一点 分。 3、门级仿真 在逻辑综合完成后,针对综合后网表文件开展仿真测试。 与功能仿真内容要求相同,不同之处是将RTL代码换成综合后的网表文件。 第八页,编辑于星期三:一点 分。 4、逻辑等效性分析 在工具的支持下,对可编程逻辑器件的RTL级代码、逻辑综合后的网表文件、布局布线后网表文件展开两两文件的逻辑等效性对比,人工对工具的比对结果信息进行二次分析,对不等价的比对点展开问题追踪和定位。 第九页,编辑于星期三:一点 分。 5、静态时序分析 分析逻辑综合或布局布线后得到的静态时序信息,根据信息找出不满足建立/保持时间路径以及不符合约束路径的过程。 静态时序分析是套用特定的时序模型,针对特定电路,分析与其是否违反设计者给定的时序限制。 第十页,编辑于星期三:一点 分。 6、时序仿真 在布局布线完成后开展的仿真。时序仿真考虑门级延时和走线延时。 由于时序仿真需要的测试周期较长,在实际测试中应有针对性的展开时序仿真测试。 第十一页,编辑于星期三:一点 分。 三、功能验证的常用方法 1)设计检查 2)仿真 第十二页,编辑于星期三:一点 分。 1、设计检查 依据设计文档或设计准则,对代码和设计的一致性、代码执行标准情况、代码逻辑表达的正确性、代码结构的合理性以及代码的可读性进行审查。 设计检查的主要形式:编码规则检查和人工走读代码。 第十三页,编辑于星期三:一点 分。 2、仿真 仿真的主要内容 根据测试需求设计测试用例。 搭建仿真环境。 提供测试激励。 在仿真环境中执行测试用例,记录并分析测试结果。 第十四页,编辑于星期三:一点 分。 2、仿真 常用的仿真工具 ISE QuartusII Modelsim Questasim 第十五页,编辑于星期三:一点 分。 四、测试用例设计方法 功能分解法 等价类划分法 边界值分析法 错误推测法 因果图法 第十六页,编辑于星期三:一点 分。 1、功能分解法 功能分解法是根据规格说明中的描述,按照给定的测试输入,验证输出结果是否与功能描述相一致,一般用于验证基本功能是否实现。 例: 对TS流同步有哪些信誉好的足球投注网站模块进行测试。 第十七页,编辑于星期三:一点 分。 2、等价类划分法 等价类划分法是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每个子集中选取少数具有代表性的数据作为测试用例。 例: IP地址分类:单播,组播和广播。 第十八页,编辑于星期三:一点 分。 3、边界值分析法 边界值分析法,是对等价分析法的一种补充,由长期的测试工作经验得知,大量的错误是发生在输入输出域的边界上。 例: 利用GMII接口接收网络数据包,并将网络数据包经过DDR2缓存, 由于网络数据包长度不固定(64字节到1514字节),为保证DDR2 存储空间有效的利用。将一个网络数据包截成固定长度存储到DDR 中。例如进行一次读写操作时仅进行128个字节。 边界值:127,128,129;255,256,257等 第十九页,编辑于星期三:一点 分。
文档评论(0)