System Verilog-packed array以及unpacked array

如下声明:

verilog 复制代码
logic [7:0] data [255:0]

维度在标识符前面的部分称为packed array,在标识符后面的部分称为unpacked array,一维的pakced array也称为vector。

packed array

packed array只能由单bit数据类型(bit,logic,reg)、enum以及其他packed array和packed structure组成。packed array保证在内存中一定是一段连续的bit

unpacked array

unpacked array的元素数据类型没有限制,unpacked array在内存中不一定是一段连续的bit

多维数组

二维数组通常被用于memory,第一维代表地址宽度,第二维代表数据宽度

如下代码:

复制代码
logic [2:0][3:0] data [4:0][5:0]

这是一个什么样的数据类型呢?我们应该从unpacked dimension部分从左往右读,再从packed dimension部分从左往右读。因此这是一个[4:0][5:0][2:0][3:0]的4维数组

packed 与unpacked

enum、struct也有packed和unpacked之分。编写design时,不能将unpacked类型的数据赋值给packed类型的数据,反之亦然。

packed类型的数据其元素(成员)也必须都是recursively packed的,unpacked数据可以包含packed或者unpacked,其中packed的数据内部的元素(成员)同样必须是recursively packed的

相关推荐
cycf9 小时前
以太网接口(一)
fpga开发
nnerddboy1 天前
FPGA自学笔记(正点原子ZYNQ7020):1.Vivado软件安装与点灯
笔记·fpga开发
li星野2 天前
打工人日报#20251005
笔记·程序人生·fpga开发·学习方法
通信小呆呆2 天前
FPGA 上的 OFDM 同步:从 S&C 到残差 CFO 的工程化实现
fpga开发·信号处理·同步·ofdm
hahaha60163 天前
高层次综合基础-vivado hls第三章
算法·fpga开发
XINVRY-FPGA5 天前
XCVU9P-2FLGA2104E Xilinx AMD Virtex UltraScale+ FPGA
人工智能·嵌入式硬件·fpga开发·硬件工程·dsp开发·射频工程·fpga
范纹杉想快点毕业5 天前
ZYNQ7045芯片中UART实现RS422通信详解,50000字解析,C语言,嵌入式开发,软件开发
c语言·笔记·stm32·单片机·嵌入式硬件·mcu·fpga开发
千宇宙航7 天前
闲庭信步使用图像验证平台加速FPGA的开发:第三十课——车牌识别的FPGA实现(2)实现车牌定位
图像处理·计算机视觉·fpga开发·车牌识别
灵风_Brend7 天前
最大最小延时约束
fpga开发
li星野7 天前
打工人日报#20250930
笔记·程序人生·fpga开发·学习方法