FPGA基础知识-实用建模技术

这篇具有很好参考价值的文章主要介绍了FPGA基础知识-实用建模技术。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

学习目标:

学习内容:

1.过程连续赋值

2.改写参数

3.条件编译和执行

4.时间尺度

5.常用的系统任务

学习时间:

学习总结


学习目标:

提示:这里可以添加学习目标

1.掌握怎样在模块调用时用defparam语句重新定义参数值J解释条件编译和Verilog 插述部件的执行。·

2.认识和理解系统任务,如文件输出、显示层次、选通显示( strobing )、随机数生成、存储器初始化和值变转储等系统任务。

3.描述过程连续赋值语句assign,deassign,force和 release,解释它们在建模和调试时的重要性。


学习内容:

提示:这里可以添加要学的内容

1.过程连续赋值

       关键字assign 和 deassign 用来表示第一类过程连续赋值语句。过程连续赋值语句的左边只能是一个寄存器或-个拼接的寄存器组,不能是线网类型变量的部分位选择、位选择或寄存器组。过程连续赋值语句可以改写〈覆盖)常用的过程赋值的结果。过程连续赋值一般只用于受控制的一段时间内。

        在中我们曾建立过-一-个具有异步复位端、由下降沿触发的D触发器的模型。,我们将改用assign 和 deassign语句来建立同样的D_FF模型。

       关键字force和 release用来表示过程连续赋值语句的第二种形式。它们既可以用来改写(覆盖〉寄存器上的赋值也可以改写(覆盖)线网上的赋值。force和 release语句的典型应用是在交.互式调试过程中。此时,某些寄存器或线网被强制赋值、并且提示对其他寄存器和线网的影响。建议不要在设计模块内部使用force和 release语句,它们应当只出现在激励中,或仅作为调试语句。

2.改写参数

       有两种方法改写(盖)参数值:通过defparan语句或通过模块调用参数赋值。

       正如前面在里所讨论的,参数可以在模块定义内定义。但是,在 Verilog模块编译过程中,参数值可以针对每个模块调用单独改变。这样就允许我们在编译时将一组组不同的参数值组合传递给每个模块,而不考虑预定义的参数值。

3.条件编译和执行

          正如前面在3.2.8节里所讨论的,参数可以在模块定义内定义。但是,在 Verilog模块编译过程中,参数值可以针对每个模块调用单独改变。这样就允许我们在编译时将一组组不同的参数值组合传递给每个模块,而不考虑预定义的参数值。

      有两种方法改写(盖)参数值:通过defparan语句或通过模块调用参数赋值。

4.时间尺度

      通常,在某次仿真中,一个模块中的延迟值需要用某个时间单位来定义,比如 1 Ms。然而,另一个模块中的延迟值需要用另一个时间单位来定义.比如100 ns。Verilog HDL允许用'timescale编译指令为模块指定参考时间单位。

5.常用的系统任务

  Verilog语言中的一些常用系统任务,它们各自适用于不同的场合。我们将讨论用于文件输出、显示层次、选通显示( strobing )、随机数生成、内存初始化和值变转储等的系统任务”。


学习时间:

提示:这里可以添加计划学习的时间

20230616


学习总结

提示:这里统计学习计划的总量

1.过程连续赋值语句可用于改写(覆盖)寄存器和线网上的赋值。assign和 deassign可以改写(覆盖)寄存器上的赋值。force和release可以改写(覆盖)寄存器和线网上的赋值。assign和 deassign可以用在实际的设计中。force 和 release可以用于调试。

2.可以用defparam语句或者在模块调用中传递新值来改写(覆盖)已在模块中定义的参数,在模块调用中,可以按参数列表的参数顺序或者名字关联的方式给参数赋值。推荐使用名字关联的方式给参数赋值。

3.设计的某些部分的代码可以通过使用`ifdef,' ifndef,'elsif,'else和`endif等指令有条件地编译。在编译时用`define语句定义编译标志。

4.Verilog仿真器中的代码执行也可以通过系统任务$test$plusargs的方式有条件地进行.在运行时通过+<flag_name>定义执行标志

5.Verilog 中最多可以为写操作打开30个文件。在多通道描述符中为每个文件赋予1位。多通逍描述符可用于写多个文件。IEEE Standard Verilog Hardware Description Language文档描述了更先进的进行文件IO操作的方式。

6.选通显示是一种在某确定时刻或者由某事件触发的显示值的方式,其显示的执行安排在同时刻执行的其他语句都执行完毕之后进行。

7.存储器可以用数据文件的数据进行初始化。数据文件包含地址和数据。地址也可以在存储器初始化任务中指定。

可以使用系统任务$random生成随机数。它们被用做生成随机测试向量。任务$random 既可以生成正数,也可以生成负数。

值变转储文件是许多设计者在后处理工具中进行调试时使用的一种通用格式。Verilog 允许将所有的或者部分选定的模块变量转储到VCD文件中。多种系统任务可以用于此目的。文章来源地址https://www.toymoban.com/news/detail-694220.html

到了这里,关于FPGA基础知识-实用建模技术的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 明德扬FPGA至简设计原理与应用 第一篇 FPGA基础知识 第一章 FPGA简介

    FPGA 的全称为 Field-Programmable Gate Array, 即现场可编程门阵列。FPGA 就是一个可以“改变”内部结构的芯片,而让这个芯片来实现怎样的功能,就需要通过编程即设计HDL,经过 EDA工具编译、综合、布局布线成后转换为可烧录的文件,最终加载到 FPGA 器件中去,改变 FPGA 内部的连

    2024年01月16日
    浏览(32)
  • 图论及其应用(基础知识)(1)(数学建模基础速成)

    能否从任一陆地出发通过每座桥恰好一次而 回到出发点? 你要是自己做过,就会显而易见的发现这道题是 没有答案 的(遵守规则以及图形规定的情况下) 欧拉就这个问题说过: 如果每块陆地所连接的桥都是 偶数 座,则从任一陆地出发,必能通过每座桥恰好一次而回到出

    2023年04月08日
    浏览(26)
  • 【数字IC精品文章收录】近500篇文章|学习路线|基础知识|接口|总线|脚本语言|芯片求职|安全|EDA|工具|低功耗设计|Verilog|低功耗|STA|设计|验证|FPGA|架构|AMBA|书籍|

    1.1 索引目的 本篇索引旨在 收藏CSDN全站中有关数字IC领域高价值文章 ,在数字芯片领域中,就算将架构,设计,验证,DFT,后端诸多岗位加在一起的数量,都不及软件类一个细分方向的岗位数量多,反映在社区氛围或是开源资料的丰富度而言,数字IC领域相较于软件/互联网领

    2024年02月03日
    浏览(107)
  • [FPGA] 7系列FPGA的基础知识

    Virtex-7 Family是Xilinx公司推出的一系列FPGA器件,采用了28纳米工艺制造。它是Xilinx公司的第一个采用28纳米工艺的FPGA系列,提供了高性能、低功耗和灵活性的特点。 Virtex-7 Family提供了不同规模的器件,包括Virtex-7 XT、Virtex-7 HT、Virtex-7 H580T、Virtex-7 VXT和Virtex-7 VX系列,每个系列都

    2024年02月09日
    浏览(34)
  • FPGA基础知识

    FPGA是在PAL、PLA和CPLD等可编程器件的基础上进一步发展起来的一种更复杂的可编程逻辑器件。它是ASIC领域中的一种半定制电路,既解决了定制电路的不足,又克服了原有可编程器件门电路有限的缺点。 由于FPGA需要被反复烧写,它实现组合逻辑的基本结构不可能像ASIC那样通过

    2024年02月03日
    浏览(30)
  • 第一篇 FPGA基础知识

    FPGA的全称为Field-ProgrammableGateArray,即现场可编程门阵列。 在开始学习FPGA之前,同学们首先应该清楚地了解FPGA的概念,明白FPGA到底是什么东西,可以用来做什么。FPGA是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,是作为专用集成电路(ASIC)领域中的一种半定制

    2024年02月07日
    浏览(51)
  • FPGA基础知识点

    基础知识 逻辑值 逻辑0:表示低电平,也就是对应电路GND 逻辑1:表示高电平,也就是对应电路VCC 逻辑X:表示未知,有可能是高电平也有可能是低电平 逻辑Z:表示高阻态,外部没有激励信号,是一个悬空状态 数字进制格式 Verilog数字进制格式包括 二进制(b) , 八进制(

    2024年02月03日
    浏览(40)
  • FPGA基础知识-任务和函数

    目录 学习目标 学习内容 1.任务和函数的区别 2.任务 3.函数 学习时间 学习总结 1.理解任务和函数之间的区别。 2.理解定义任务所需的条件,学会任务的声明和调用。 3.理解定义函数所需的条件.学会函数的声明和调用。 提示:这里可以添加要学的内容      在 Verilog中,任务

    2024年02月10日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包