数字系统EDA技术_3_4研讨.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字系统EDA技术_3_4研讨

* 基于Text IO的测试仿真方案 Matlab或C语言 Test Vectors.inp Result.out (仿真结果输出) 测试平台 Text IO UUT * 例3:Text IO应用 * * 3.11 测试平台(TestBench)设计 1. 仿真验证的重要性 (1)仿真验证是必要的 仿真验证是FPGA设计过程中非常重要的环节,贯穿于系统设计实现的整个流程之中。恰当的验证论证了设计的可信度,验证是证明设计品质的惟一方法。 (2)仿真验证工作占设计总工作量的70% “在这个设计规模达数百万门的ASIC、可复用的知识产权(IP)和系统芯片(SOC)的时代,仿真验证占到了设计总工作量的70%左右。设计团队应该配备能够正确描述仿真验证需求的工程师和专门进行验证的工程师。仿真验证工程师的数量甚至是RTL设计人员的两倍。” ----《Writing Testbenches》【美】Janick Bergeron 2. 验证方法 在现代EDA工程中,通常利用EDA工具进行仿真来实现系统功能的验证。 (1)交互式仿真方法 大多数的VHDL仿真器允许进行实时交互式的操作,允许在仿真期间对输入信号赋值,指定仿真执行时间,并观察输出波形。 (2)测试平台(TestBench)方法 利用测试平台,可以实现自动地对被测试单元输入信号测试矢量,并且通过波形输出、文件记录输出或与测试平台中设定的预期输出进行比较。 测试平台 待测设计 测试平台(TestBench)通常指一段仿真代码,用来为设计产生特定的输入序列,也用来观测设计输出的响应。 测试平台是一个封闭的系统:系统没有来自外部的输入信号,也没有输出信号。测试平台是系统的控制中心。 与交互式仿真方法比较,测试平台具有以下优点: 1、可以简便地对输入和输出矢量进行记录归档; 2、相对于手工方式(逐个处理输入和输出矢量)而言,它提供了一种更为系统的仿真途径; 3、针对原理性模型建立的测试平台,同样可以应用在实现设计的时序仿真中; 4、测试平台与设计实现可以并行进行; 5、验证工作可以在更高抽象的层次中进行,而不是在底层直接和0、1打交道,可以缩短设计周期。 * 3. 基于VHDL的测试平台 VHDL的可综合性和可仿真性 VHDL作为一种硬件描述语言,可综合设计只是它的一个子集;VHDL强大的行为建模能力使其能够方便、简洁地用于仿真测试。 (1)VHDL的可综合性 硬件电路设计的综合是指将HDL或原理图转化为与 门、或门、非门等基本的逻辑单元组成的门级网表。 可综合的VHDL语句就是指能够通过EDA工具自动转化为硬件逻辑的语句。 * 例如:描述除法行为C = a/b 除了满足特定的条件,否则上面的描述很难被现有的EDA工具转化为硬件电路。 除法要从高位到低位逐次试除、求余、移位,需要多次运算才能得到最终结果,同时 试除和求余需要用到减法器,商和余数的中间结果需要寄存器存储。这么多的运算不可能在一个时钟周期内完成。 如果b为常数,且取值为2的N次幂(N为自然数)则该语句可以被综合。 * (2)VHDL的可仿真特性 VHDL程序中,所有可以综合的语句都可以用于仿真,而用于仿真的语句虽然能够描述电路行为,但却不一定可以综合成硬件电路。所有用于硬件实现的描述都必须使用可综合的语句,仿真语句的作用是为了验证设计模块的正确性。 * 常用的VHDL仿真语句 (1)VHDL中所有的语句和数据类型都可以用于仿真; (2)after语句 after语句用于描述延迟信息,因而常与time类型一起用。通过after给信号赋值,可以描述信号在确定延迟时间后取值的变化。 Signal_name = value1, value2 after t1, value3 after t2, …; 适用于非循环变化的有限变化的信号赋值 * 例如对复位信号的描述可以为: Reset = ‘1’, ‘0’after reset_period; 上述语句表示,信

文档评论(0)

yy558933 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档