【Verilog教程】2.1基本语法

格式

Verilog 是区分大小写的。

格式自由,可以在一行内编写,也可跨多行编写。

每个语句必须以分号为结束符。空白符(换行、制表、空格)都没有实际的意义,在编译阶段可忽略。例如下面两中编程方式都是等效的。

不换行(不推荐)

bash 复制代码
wire [1:0]  results ;assign results = (a == 1'b0) ? 2'b01 : (b==1'b0) ? 2'b10 : 2'b11 ;

换行(推荐)

bash 复制代码
wire [1:0]  results ;
assign      results = (a == 1'b0) ? 2'b01 :
            (b==1'b0) ? 2'b10 :
                2'b11 ;

注释

Verilog 中有 2 种注释方式:

用 // 进行单行注释:

bash 复制代码
reg [3:0] counter ;  // A definition of counter register

用 /* 与 */ 进行跨行注释:

bash 复制代码
wire [11:0]  addr ;
/* 
Next are notes with multiple lines.
Codes here cannot be compiled.
*/
assign   addr = 12'b0 ;

标识符与关键字

标识符(identifier)可以是任意一组字母、数字、$ 符号和 _(下划线)符号的合,但标识符的第一个字符必须是字母或者下划线,不能以数字或者美元符开始。

另外,标识符是区分大小写的。

关键字是 Verilog 中预留的用于定义语言结构的特殊标识符。

Verilog 中关键字全部为小写。

bash 复制代码
reg [3:0] counter ; //reg 为关键字, counter 为标识符
input clk; //input 为关键字,clk 为标识符
input CLK; //CLK 与 clk是 2 个不同的标识符
相关推荐
ModelWhale2 分钟前
十年筑梦,再创鲸彩!庆祝和鲸科技十周年
人工智能·科技
啊波次得饿佛哥7 分钟前
9. 神经网络(一.神经元模型)
人工智能·深度学习·神经网络
互联网之声14 分钟前
科家多功能美发梳:科技赋能,重塑秀发新生
人工智能·科技
Chatopera 研发团队19 分钟前
Tensor 基本操作4 理解 indexing,加减乘除和 broadcasting 运算 | PyTorch 深度学习实战
人工智能·pytorch·深度学习
Bruce_Liuxiaowei24 分钟前
AI时代的网络安全:传统技术的落寞与新机遇
人工智能·安全·web安全
Dipeak数巅科技26 分钟前
数巅科技连续中标大模型项目 持续助力央国企数智化升级
大数据·人工智能·数据分析
白白糖26 分钟前
深度学习 Pytorch 动态计算图与梯度下降入门
人工智能·pytorch·深度学习
云和恩墨31 分钟前
云计算、AI与国产化浪潮下DBA职业之路风云变幻,如何谋破局启新途?
数据库·人工智能·云计算·dba
EQUINOX11 小时前
3b1b线性代数基础
人工智能·线性代数·机器学习
Kacey Huang2 小时前
YOLOv1、YOLOv2、YOLOv3目标检测算法原理与实战第十三天|YOLOv3实战、安装Typora
人工智能·算法·yolo·目标检测·计算机视觉