上一篇文章提到了FPGA中一个模块基本结构,这篇文章开始介绍语法。  

  首先,我们学习一门语言都要从这门语言的单词学起,所以verilog中的关键词都有哪些呢?看下面:

A:alwaysassign
B:begin、
C:case(包含casex、casez)
D:deassigndefaultdefparam(参数声明)、disable(禁止)
E:event(事件)、edgeelseendendcaseendfunctionendprimitiveendmoduleendspecifyendtable、endtask
F:forforce(强迫赋值)、forever(无限循环)、fork(并发语句块引导)、function(函数)
G:gate(门,包含and、nandornorxorxnorbufnotbufif0bufif1、nofif0、nofif1、nmos、pmos、rnmos、rpmoscmosrcmostranrtrantranif0tranif1rtranif0rtranif1pullup、pulldowm)
H:highz0highz1
I:ififnoneinitialinoutinputinteger
J:join
L:large
M:module、macromokule、medium
N:negedge
P:parameter(参数)
R:regrepeat(重复执行)、realrealtimerelease
S:specparamscalaredsmallspecifystrong0strong1supply0supply1
T:tritabletasktimetriandtriortriregtri0tri1
V:vectored
W:waitwandweak0weak1whilewirewor

这是我总结的,不一定全面

关键词虽然学完了,但是我们自己定义端口或者变量的时候还需要用到标识符:

  标识符规则:1.标识符可由字母、数字、下划线(_)、美元($)构成、第一个字符必须是字母或下划线

        2.verilog中变量名区别大小写,对大小写敏感

        3.在verilog文件中一个名字只能有一个意义

        4.扩展标识符用“\”引出,用空格、制表、回车、换行键结束,例如:abcde与 \abcde是相同的

在编程的时候知道这些还是不够的,因为,我们还要知道一些运算符

  

运算符:单目运算符:
            + -                                     正负号
            !                                       逻辑非
            ~                                        按位取反
            & ~& | ~|                            缩位运算符
            二目运算符:
            + - * /                                 算术运算符
            %                                        取模运算符
            > >= < <=                          关系运算符
            && ||                                   逻辑运算符
            = == !=                               等式运算符
            & | ^ ^~                              逐位运算符
            << >>                                 移位运算符
            其他运算符:
            A ?B :C                              条件运算符
            {A,B,C}                             位拼接运算符
            {N{A}}                                 重复运算符

这次就写这么多了,词写完了,下次写句法哦!

01-05 16:17