Verilog 教程
Verilog 教程
Verilog HDL(简称 Verilog )是一种硬件描述语言,用于数字电路的系统设计。可对算法级、门级、开关级等多种抽象设计层次进行建模。 Verilog 继承了 C 语言的…
Verilog 简介
Verilog 具有很强的电路描述与建模能力,能从多个层次对数字系统进行描述和建模。因此,在简化硬件设计任务、提高设计效率与可靠性、语言易读性、层次化和结构化设计等方面展…
Verilog 设计方法
设计方法 Verilog的设计多采用自上而下的设计方法(top-down)。即先定义顶层模块功能,进而分析要构成顶层模块的必要子模块;然后进一步对各个模块进行分解、设计,直到到达无…
Verilog 基础语法
格式 Verilog 是区分大小写的。 格式自由,可以在一行内编写,也可跨多行编写。 每个语句必须以分号为结束符。空白符(换行、制表、空格)都没有实际的意义,在编译阶段可…
Verilog 数值表示
数值种类 Verilog HDL 有下列四种基本的值来表示硬件电路中的电平逻辑: 0:逻辑 0 或 “假”…
Verilog 数据类型
Verilog 最常用的 2 种数据类型就是线网(wire)与寄存器(reg),其余类型可以理解为这两种数据类型的扩展或辅助。 线网(wi…
Verilog 编译指令
以反引号 ` 开始的某些标识符是 Verilog 系统编译指令。 编译指令为 Verilog 代码的撰写、编译、调试…
Verilog 连续赋值
关键词:assign, 全加器 连续赋值语句是 Verilog 数据流建模的基本语句,用于对 wire 型变量进行赋值。 格式如下…
Verilog 时延
关键词:时延, 惯性时延 连续赋值延时语句中的延时,用于控制任意操作数发生变化到语句左端赋予新值之间的时间延时。 时延一般是不可综合的。 寄存器的时延也是可以控制的,这部…
Verilog 过程结构
关键词:initial, always 过程结构语句有 2 种,initial 与 always 语句。它们是行…
Verilog 时序控制
关键词:时延控制,事件触发,边沿触发,电平触发 Verilog 提供了 2 大类时序控制方法:时延控制和事件控制。事件控制主要分为边沿触发事件控制与电…
Verilog 语句块
关键词:顺序块,并行块,嵌套块,命名块,disable Verilog 语句块提供了将两条或更多条语句组成语法结构上相当于一条一句的机制。主要包括两种类型:顺序块和并行块…
Verilog 条件语句
关键词:if,选择器 条件语句 条件(if)语句用于控制执行语句要根据条件判断来确定是否执行。 条件语句用关键字 if 和 else 来声明…
Verilog 多路分支语句
关键词:case,选择器 case 语句是一种多路条件分支的形式,可以解决 if 语句中有多个条件选项时使用不方便的问题。 case 语句 …
Verilog 过程连续赋值
关键词:deassign,force,release 过程连续赋值是过程赋值的一种。这种赋值语句能够替换其他所有 wire 或 reg 的赋…
Verilog 模块与端口
关键词:模块,端口,双向端口,PAD 结构建模方式有 3 类描述语句: Gate(门级)例化语句,UDP (用户定义原语)例化语句和…
Verilog 模块例化
关键字:例化,generate,全加器,层次访问 在一个模块中引用另一个模块,对其端口进行相关连接,叫做模块例化。模块例化建立了描述的层次。信号端口可以通过位置或名称关联,端口连接…
Verilog 带参数例化
关键词: defparam,参数,例化,ram 当一个模块被另一个模块引用例化时,高层模块可以对低层模块的参数值进行改写。这样就允许在编译时将不同的参数传递给多个相同名字…
Verilog 任务
关键词:任务 任务与函数的区别 和函数一样,任务(task)可以用来描述共同的代码段,并在模块内任意位置被调用,让代码更加的直观易读。函数一般用于组合逻辑的各种转换和计算,而任务更…
Verilog 状态机
关键词:状态机,售卖机 有限状态机(Finite-State Machine,FSM),简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。状态机…