非组合型结构体(默认类型)和组合型结构体在赋值方面的差异与“非组合型数组和组合数组”保持一致,且非组合型结构体占据空间要比组合型结构体更多。组合型结构体可以将所有数据直接赋值给一个向量,这方便了数据结构的存储,以及作为比特流(bit stream)传输时的打包和解包之用。
关键词:
struct,struct packed
避坑指南:
如果要做随机化,这两种类型的变量均应声明为rand,且可对非组合型结构体成员单独指定rand属性(即可单独随机化成员),而不能对组合型结构体成员单独指定rand属性(只可以做整体结构随机化)。
参考代码: sv_struct_unpacked_diff_packed.sv
仿真结果:
阅读手记: