Verilog入门

Verilog代码示例:

// 38译码器模块
module dec3_8(a, y);
  input [2:0] a;
  output[7:0] y;

  assign y = 1 << a;
endmodule

Verilog结构:

Verilog入门_第1张图片

Verilog代码执行:

除了begin end里面的部分是顺序执行的之外,其他语句都是并行执行的。


数字

Verilog入门_第2张图片

Verilog入门_第3张图片


常量


变量

位宽不做说明的话,默认是一位
数据类型不做说明的话,默认是wire类型

Verilog入门_第4张图片

Verilog入门_第5张图片

Verilog入门_第6张图片


运算符

可以看看这个视频:运算符

Verilog入门_第7张图片

拼接运算符就是将01串拼起来的意思

Verilog入门_第8张图片

Verilog入门_第9张图片

Verilog入门_第10张图片


assign语句

assign语句特点

  • 无论右边表达式操作数何时发生变化,右边表达式都会重新计算,并且给左边变量赋值;

  • assign语句一直执行,因而也被称为连续赋值语句

  • 格式:assign 赋值目标 = 表达式,其中赋值目标必须是wire类型,wire表示电路间的连线。
    Verilog入门_第11张图片

Verilog入门_第12张图片


例子:

Verilog入门_第13张图片


always语句块

Verilog入门_第14张图片

Verilog入门_第15张图片

Verilog入门_第16张图片

Verilog入门_第17张图片

Verilog入门_第18张图片


你可能感兴趣的:(数电,fpga开发)