关联数组:用于保存稀疏矩阵的元素。当你对一个非常大的地址空间寻址时,该数组只为实际写入的元素分配空间,这种实现方法所需的空间比定宽或动态数组所占用的空间要小得多。
其他语言也有类似的数据存储结构,如哈希(hash)和python中的词典(dictionary),可以灵活赋予键值(key)和数值(value)。
bit [63:0] assoc[int],idx = 1;
repeat (64) begin //对稀疏分布的元素进行初始化
assoc[idx] = idx; //assoc[1] = 1
idx = idx << 1; //assoc[2] = 2,assoc[3] =4,...
end
forrach (assoc[i]) //使用foreach遍历数组
$display("assoc[%h] = %h",i,assoc[i]);
//找到并删除第一个元素
assoc.first(idx);
assoc.delete(idx);