2、Verilog HDL--语言要素

1、 空白符

空格符(\b)、制表符(\t)、换行符和换页符。
目的:主要是为了程序的易读性。

2、注释符

单行注释:以“//”开始;
多行注释:以“/*”开始和结束。
注:在设计中,注释、命名等都需要以英文来表示。

3、标识符

可以是字母、数字、$符号、_(下划线)的组合,但首字母必须是字母或下划线。
且,Verilog大小写不一致,区分;VHDL大小写一致,不区分。

4、转义字符

用“\”表示,但几乎没啥用。

5、关键字

语言内部用的词。

6、数值

四种基本的逻辑数值状态。
2、Verilog HDL--语言要素_第1张图片
其中,1和0的表示形式为:
2、Verilog HDL--语言要素_第2张图片
不定状态表示为:
2、Verilog HDL--语言要素_第3张图片
高阻状态表示为:
2、Verilog HDL--语言要素_第4张图片
7、整数及其表示:+/-(size)’(base_format)(number)

+/-:以补码形式存取。“+”补码与原码一致,“-”补码首位取1,其余部位取反+1。

size:指电路中有几根信号线,即有多少位。其中,使用最广的为二进制和十六进制。
例1:8’b10001101 表示位宽为8位的二进制10001101
例2:8’hab 表示位宽为8位的十六进制ab

在硬件描述中,小数2.5用二进制表示为10.1,但实数不能直接用于设计。

8、数据类型

物理数据类型分为:连线型、寄存器型和存储器数据类型。

信号强度表示数字电路中不同强度的驱动源,用来解决不同驱动强度存在下的赋值冲突:
2、Verilog HDL--语言要素_第5张图片
8.1、连线型
2、Verilog HDL--语言要素_第6张图片
最常用的连线型为:wire,tri。这两个只有0,1,不定状态和高阻状态这几种。
2、Verilog HDL--语言要素_第7张图片
像wor这类,当两个信号对一根线进行驱动时,会增加一个或门。
2、Verilog HDL--语言要素_第8张图片
8.2、寄存器型

reg型是数据存储单元的抽象类型,其对应的硬件电路元件具有状态保持作用 ,能够存储数据,如触发器、锁存器等。

例:
reg a; //定义一个1位的名为a的reg变量
reg[3:0]b; //定义一个4位名为b的reg型变量
reg[8:1]c,d,e; //定义了三个名称分别为c、d、e的8位reg型变量

8.3、数据类型声明

(1)连线型数据类型的声明
2、Verilog HDL--语言要素_第9张图片
(2)寄存器型数据类型的声明
2、Verilog HDL--语言要素_第10张图片
2、Verilog HDL--语言要素_第11张图片(3)存储器型
2、Verilog HDL--语言要素_第12张图片
2、Verilog HDL--语言要素_第13张图片
(4)抽象数据类型
2、Verilog HDL--语言要素_第14张图片

你可能感兴趣的:(verilog)