湘攸客

如何使用QII中In-System Memory Content Editor

0
阅读(3031)

In-System Memory Content Editor


          QuartusII提供工具实时修改存储器中的存储值,这就是In-System Memory Content Editor。

          首 先分析该工具的好处和限制,使用该工具显然方便了FPGA的调试,可以实时更改RAM或者Rom中的数值,特别是在配置调整FIR的系数时候非常实用。使 用该工具的要求,必须利用Jtag,目前只支持实时修改常数(constant)、单口RAM以及ROM。另外此工具最好只是用来调试,因为器件掉电重启 以后Memory还是会加载其初始值(除非工程重新更改初始值并重新编译)。

       接下来介绍如何使用此工具:

       1)、在例化Constant、RAM或者ROM的时候首先要使能In-System Content Editting;

       2)、重新编译加载器件;

       3)、启动In-System Memory Content Editor;

       4)、对常数或者存储器内容进行读写操作。

       下面图示上述各个步骤。

        图一:使能ISMCE


说明一下上图,上图是一个例化常数的例子,将该16bit的常数的初值设置为x“ABCD”,当时你ISMCE的时候最好给实例取一个Instance ID,因为在实际设计中可能存在多个实例需要区分,这里我们将该常数ID设为“Con”。

     图二,ISMCE调试界


说 明一下上图,首先对于如何打开该工具这里不作介绍。上图中包含两个实例,一个是图一中我们例化的常数(其ID为Con),另一个是ROM(这里它的ID是 Won)。我们注意到这例化常数的时候我们设置的初始值为x“ABCD”,这里我们通过此工具更改了其值为x“CDEF”,在通过“Write data to In-system memory”命令写入到器件,此时可以同时通过SignalTapII来观察数值是否已被更新。请注意当未执行“read data from In-system memory”命令的时候我们看到的值是一堆问号,如上图中ROM。此外,同SignalTapII当Instance manage中存在多个Instances的时候可以通过双击某个Instance来使其处于当前有效Instance。