美文网首页
Systemverilog基础语法

Systemverilog基础语法

作者: ThalesW | 来源:发表于2023-04-09 23:03 被阅读0次

    1 数据类型及操作

    1.1 数据类型

    类型 取值 描述
    wire 0,1,X,Z 使用assign赋值
    reg 0,1,X,Z 随时钟沿出发
    logic 0,1,X,Z logic可以替代reg/wire,建议验证环境使用logic
    int 0,1 有符号整型
    bit 0,1 根据位宽定义数据
    real 浮点型

    1.2 运算符

    除常见的与或非运算符,要注意有“===”和“==”;其中“===”可识别“0,1,x,z",”==”只能识别“0,1“。验证时一般response使用”===“判断模块输出数据是否符合预期。

    1.3 数组和队列

    一般使用一维和二维数组,更多维度不建议使用。
    一维数组定义:
    bit [7:0] arr;
    二维数组定义:

      1. 压缩数组
        bit [7:0][15:0] arr; //定义了一个深度为8,宽度为16的数组
        压缩数组的优势是可以整体对其赋值,如:
        assign arr = {8*16{1'b0}};
      1. 非压缩数组
        bit [15:0] arr[7:0]; //定义了一个深度为8,宽度为16的数组
        对非压缩数组赋值时要对每个数据单独赋值
        assign arr[0] = {16{1'b0}};

    相关文章

      网友评论

          本文标题:Systemverilog基础语法

          本文链接:https://www.haomeiwen.com/subject/jukiddtx.html