MIG v2.3  –  DDR2 SDRAM:使用奇梦达模型进行仿真会导致“内存分配失败”错误-Altera-Intel社区-FPGA CPLD-ChipDebug

MIG v2.3 – DDR2 SDRAM:使用奇梦达模型进行仿真会导致“内存分配失败”错误

问题描述

当使用奇梦达内存模型运行DDR2 SDRAM仿真时,我发现仿真失败并出现“内存分配失败”错误。

在基于Linux中的Swap Memory和Windows中的Cache内存的某些系统上会发生此错误。

这是奇梦达内存模型的一个问题。

解决/修复方法

奇梦达支持建议以下解决方案,直到模型问题得到解决:

内存模型中的原始代码:

`ifdef SPARSE_MEM

参数all_bits = bank_bits +`SPARSE_ROW_BITS +`SPARSE_COL_BITS;

`别人

参数all_bits = bank_bits + addr_bits + colm_bits;

`ENDIF

将以上代码替换为:

`ifdef SPARSE_MEM

参数all_bits = bank_bits +`SPARSE_ROW_BITS +`SPARSE_COL_BITS;

`别人

参数all_bits = bank_bits + 10;

`ENDIF

内存模型中带有SPARSE_MEM选项的原始代码:

`定义SPARSE_ROW_BITS 3

`定义SPARSE_ROW_MAP {A [2],A [1],A [0]}

`定义SPARSE_COL_BITS 4

`定义SPARSE_COL_MAP {A [3],A [2],A [1],A [0]}

用以下代码替换上面的代码:

`定义SPARSE_ROW_BITS 4

`定义SPARSE_ROW_MAP {A [3],A [2],A [1],A [0]}

`定义SPARSE_COL_BITS 6

`定义SPARSE_COL_MAP {A [5],A [4],A [3],A [2],A [1],A [0]}

请登录后发表评论

    没有回复内容