为什么我用ispLever / Diamond bitgen会出现“无效的十六进制奇偶校验位”错误?
当您指定的内存初始十六进制值大于内存的数据宽度时,通常会发生这种情况。
所有Lattice EBR模块都需要每个地址位置的18位初始数据,但它们内部使用5个十六进制值(20位)来表示初始数据。
这意味着INITVAL的最重要的两位必须始终设置为0,如下所示:
hex [0] = bit [3:0];
hex [1] = bit [7:4];
hex [2] = bit [11:9];
hex [3] = bit [15:12];
hex [4] = {00,位[17:16] 。确保hex [4]值不超过3,因为这会使初始值无效。。我们建议您利用内存生成工具(MemGen)来帮助创建和编辑内存初始化(.mem)文件。添加评论