admin管理员组

文章数量:1530517

第七课

Structure

structure是一组变量或者常数的集合,能够更方便地同时访问其中的元素。
语法:

struct{
	int a,b;
	logic[7:0] opcode;
	logic[23:0] address;
	bit error;
} Instruction_Word

最后一行是这个structure的名字,引用变量时的格式为:

Instruction_Word.address = 24'hF0000;
  • Packed structure
    structure默认状态下在内存当中是unpacked状态,可以使用packed关键字使变量存储在连续的空间当中。

    可以看到图中valid,tag,data的bit地址是连续的,越先声明的变量bit数越大。
    经过packed以后可以作为一个数组访问或改写其中的元素:

    实际操作当中推荐使用data_word.tag这种形式调用,可读性高,不容易出错。
Enumerated Type(枚举)

可以用于声明拥有固定值的变量,如状态机或者计算常量,

本文标签: SystemverilogStructure