1.行为级建模的结构

(1)基本语法格式

module<模块名>(<端口列表>)模块端口说明;[参数定义];                 //用关键词“parameter”实现数据类型说明;            //默认为线网类型“wire”过程块(initial过程块或always过程块,可以有一个或多个)连续赋值语句;             //有关键词“assign”开头[任务定义(task)];[函数定义(function)];
endmodule

(2)initial和always过程块的区别

initial 语句块
always @(敏感事件列表)      //敏感事件列表是由一个或多个时间表达式组成,用or来连语句块

注意:always语句后面可以有一个敏感事件列表,该敏感事件列表的作用是用来激活always过程语句的执行,而initial过程语句的后面不允许有敏感事件列表。

2.语句块

(1)顺序块begin-end
当最后一条语句执行完毕时,程序流程控制跳出顺序快,结束执行。执行时间为内部各条语句执行时间的总和。
(2)并行块fork-join
当执行时间最长的语句执行完毕时,程序流程控制跳出并行块,结束执行。执行时间为执行时间最长的那条语句所需的执行时间。
(3)顺序块和并行块属于不同的过程块时,是并行执行的。
(4)顺序块和并行块可以相互嵌套。

3.时间控制

(1)延时控制

#<延迟时间>  行为语句;

#<延迟时间>

(2)边沿触发时间控制
语法格式:
@ (<事件表达式>)行为语句;
@ (<事件表达式>);
@ (<事件表达式1>or<事件表达式2>or…or<事件表达式n>)行为语句;
@ (<事件表达式1>or<事件表达式2>or…or<事件表达式n>);

其中事件表达式的形式:
1》<信号名>;
例如:@(reg_a)reg_b = reg_a;
2》posedge<信号名>; //加posedge,代表<信号名>所指定的信号发生正跳变
例如:@(posedge reg_a)reg_b = reg_a;
3》negedge<信号名>; //加negedge,代表<信号名>所指定的信号发生负跳变
例如:@(negedge reg_a)reg_b = reg_a;

(3)电平敏感事件控制(wait语句)
1》wait(条件表达式)语句块;
2》wait(条件表达式)行为语句;
3》wait(条件表达式);

Verilog HDL(二):行为级建模的结构(initial和always)、begin、fork、时间控制相关推荐

  1. 【Verilog HDL学习之路】第二章 Verilog HDL的设计方法学——层次建模

    2 Verilog HDL的设计方法学--层次建模 重要的思想: 在语文教学中,应该先掌握核心方法论,再用正确的方法论去做题目,这样能够逐渐加深对于方法论的理解,做题的速度和准确率也会越来越高. 在V ...

  2. Quartus II使用说明(Verilog HDL二选一数据选择器 )

    <可编程数字逻辑电路设计>课程中Quartus II软件的使用说明 VHDL和Verilog HDL不一样. 1.新建文件夹,里面包含5个子文件夹(doc/img/prj/rtl/test ...

  3. 【连载】【FPGA黑金开发板】Verilog HDL那些事儿--低级建模的基础实例(七)

    声明:本文为原创作品,版权归akuei2及黑金动力社区(http://www.heijin.org)共同所有,如需转载,请注明出处http://www.cnblogs.com/kingst/ 第三章 ...

  4. 数字集成电路设计(二、Verilog HDL基础知识)

    文章目录 1. 语言要素 1.1 空白符 1.2 注释符 1.3 标识符 1.3.1 转义标识符 1.4 关键字 1.5 数值 1.5.1 整数及其表示方式 1.5.2 实数及其表示方式 1.5.3 ...

  5. Verilog HDL三种描述方式

    一.数据流建模方式 在组合逻辑电路中,数据不会存储,因此输入信号经过电路变为输出信号类似于数据流动.可以通过连续赋值语句这种特性进行建模,这种建模方式通常被称为数据流建模. 连续赋值语句只能用来对连线 ...

  6. Verilog HDL 语法学习笔记

    今天给大侠带来Verilog HDL 语法学习笔记,话不多说,上货. 关于详细的VHDL语法以及Verilog HDL语法可参见往期文章. 一周掌握 FPGA VHDL Day 7 暨汇总篇 一周掌握 ...

  7. 数字集成电路设计(三、Verilog HDL程序设计语句和描述方式)(一)

    文章目录 1. 数据流建模 1.1 连续赋值语句 2. 行为级建模 2.1 过程语句 2.2 语句块 2.3 过程赋值语句 **!!!小结** 2.4 过程连续赋值语句 2.5 条件分支语句 2.5. ...

  8. 一周掌握FPGA Verilog HDL语法 day 4

    今天给大侠带来的是一周掌握FPGA Verilog HDL 语法,今天开启第四天. 一周掌握FPGA Verilog HDL语法 day 3 被平台综合了,如果想要看详细介绍的话,可以到公众号内部&q ...

  9. 爆肝4万字❤️零基础掌握Verilog HDL

    文章目录 0.前言 1.Verilog HDL简介 1.1 什么是Verilog HDL 1.2 verilog发展历史ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ 1.3 为什么要使用verilog ...

  10. Verilog HDL简明教程

    Verilog HDL简明教程 来源: 郭红卫的日志 Verilog HDL简明教程 Verilog HDL是一种硬件描述语言,用于从算法级.门级到开关级的多种抽象设计层次的数字系统建模.被建模的数字 ...

最新文章

  1. 网站初学笔记3-HTML实用元素5
  2. RYU控制器的学习笔记(三) 利用观察者模式通知app处理报文
  3. 【leetcode记录02】递归
  4. .net 技术类网址
  5. Neo4j:带密码的TF / IDF(和变体)
  6. 关键字typedef、关键字using、auto类型说明符和declytpe类型指示符
  7. 数据爆发式增长下,CIO不可不知的“数据经济学”
  8. 经典卷积神经网络的学习(三)—— Inception Net
  9. hadoop管理命令——fsck
  10. 有感于中国的系统分析员考试
  11. BZOJ3925: [Zjoi2015]地震后的幻想乡
  12. java 扫描文件_JAVA文件扫描(递归)的实例代码
  13. 如何安装黑苹果双系统
  14. Python之shp文件
  15. 西数MyBookDuo提供致臻性能、超大容量及综合数据保护
  16. RabbitMQ的使用(Java语言传统操作)
  17. Element-Ui 双重el-tabs组件选中第二层时,刷新导致第一层选中样式丢失问题以及解决方法
  18. 【doris】V1.2.2安装部署单机版or集群版
  19. 【Cocos2D-x 3.5实战】坦克大战(1)环境配置
  20. Java HashSet和Java HashMap

热门文章

  1. vue项目实现pc端适配
  2. Python RPM包制作
  3. windows 系统 system 进程占用80端口
  4. 第三代酷睿i3处理器_【分享】Intel酷睿Core历代CPU插槽类型、架构、及常用主板大全...
  5. 利用NMDS对药物处理下肠道菌群微生物群落多态性分析
  6. 如何通过DOI号来获取相关文献并下载?
  7. 七个习惯之四:双赢思维
  8. 批处理——详解%~dp0 %~nx0
  9. 在企业中采用知识管理工具的好处
  10. 分节符、分页符及页眉设置方法