第二讲Verilog HDL语言基础 西安邮电学院通信工程系 第二讲Verilog HDL语言基础 内容: 语言基本词法 冬主要数据类型 ·参数 ”常用系统任务和函数 冬常用编译指令 冬表达式与运算符 。模块与端口
第二讲 Verilog HDL语言基础 西安邮电学院通信工程系 第 二讲 Verilog HDL语言基础 内容: ❖ 语言基本词法 ❖ 主要数据类型 ❖ 参数 ❖ 常用系统任务和函数 ❖ 常用编译指令 ❖ 表达式与运算符 ❖ 模块与端口
第二讲Verilog HDL语言基础 西安邮电学院通信工程系 语言基本词法 Verilog中的基本词法约定与C语言类似。包含注释、分隔符、数字、 字符串、标识符和关键字。 Verilog是自由格式,即语句可以在一行内编写,也可跨行编写,用 分号分隔。由空格(b)、制表符(t)和换行符组成空白符,在文本 中起一个分隔符的作用,在编译时被忽略。例: initial begin Top=3'b001;#2 Top 3'b0l1;end 和下面的程序一样: initial begin //单行注释,与C语言一致 Top=3'b001; #2Top=3'b011 /*多行注释, 与C语言一致*/ end
第二讲 Verilog HDL语言基础 西安邮电学院通信工程系 语言基本词法 ❖ Verilog中的基本词法约定与C语言类似。包含注释、分隔符、数字、 字符串、标识符和关键字。 ❖ Verilog是自由格式,即语句可以在一行内编写,也可跨行编写,用 分号分隔。由空格(\b)、制表符(\t)和换行符组成空白符,在文本 中起一个分隔符的作用,在编译时被忽略。例: initial begin Top = 3'b001; #2 Top = 3'b011; end 和下面的程序一样: initial begin // 单行注释,与C 语言一致 Top = 3'b001; #2 Top = 3'b011 /* 多行注释, 与C 语言一致 */ end
第二讲Verilog HDL语言基础 西安邮电学院通信工程系 标识符 冬标识符必须以英语字母(a-z,A-Z)起头,或者用下 横线符()起头。其中可以包含数字、$符和下横 线符。 标识符最长可以达到1023个字符。 冬模块名、端口名和实例名都是标识符。 Verilog语言是大小写敏感的,因此sel和SEL是两 个不同的标识符
第二讲 Verilog HDL语言基础 西安邮电学院通信工程系 标识符 ❖ 标识符必须以英语字母(a-z, A-Z)起头,或者用下 横线符( _ )起头。其中可以包含数字、$符和下横 线符。 ❖ 标识符最长可以达到1023个字符。 ❖ 模块名、端口名和实例名都是标识符。 ❖ Verilog语言是大小写敏感的,因此sel 和 SEL 是两 个不同的标识符
第二讲Verilog HDL语言基础 西安邮电学院通信工程系 合法和非法标识符 例:cou n t、COUNT、_R1-D2、R5 668、 F I VE S 合法的: 非法的: shift reg a 34net /不能用数字开头 index a*bnet/不能含有非字母符号* n@263/不能含有非字母符号@ bus263
第二讲 Verilog HDL语言基础 西安邮电学院通信工程系 合法和非法标识符 合法的: shift_reg_a _index bus263 非法的: 34net //不能用数字开头 a*b_net //不能含有非字母符号* n@263 //不能含有非字母符号@ ❖例:C o u n t、COUNT 、_ R 1 _ D 2、R 5 6 _ 6 8、 F I V E $
第二讲Verilog HDL语言基础 西安邮电学院通信工程系 特别的标识符 冬特别标识符是用“”符开始,以空格符结束的标识符 。它可以包含任何可打印的ASCII字符。 冬“”符和空格并不算是标识符的一部分。 冬特别标识符往往是在综合工具自动综合生成的网表中 使用。 例:1#@sel,bus+index,\{A,B}, Top.3inst.net1,/在层次模块中的标识名
第二讲 Verilog HDL语言基础 西安邮电学院通信工程系 特别的标识符 ❖ 特别标识符是用 “\” 符开始,以空格符结束的标识符 。它可以包含任何可打印的ASCII字符。 ❖ “\”符和空格并不算是标识符的一部分。 ❖ 特别标识符往往是在综合工具自动综合生成的网表中 使用。 例: \~#@sel , \bus+index , \{A,B} , Top.\3inst .net1 , //在层次模块中的标识名