问题描述
当我在带有3个寄存器的创建/导入外围器件(CIP)向导中生成pcore时,C_ARD_NUM_CE_ARRAY的编号错误:
分析实体<user_logic>的层次结构:C_NUM_REG = 3
分析实体<plbv46_slave_single>的层次结构:
C_ARD_NUM_CE_ARRAY =(4)
阅读基地…
C_BASEADDR + 0x0好的
C_BASEADDR + 0x4好的
C_BASEADDR + 0x8好的
C_BASEADDR + 0xC
MicroBlaze在读取第4个(不存在的)寄存器时停止。
但是,当我用2个寄存器创建一个pcore时,ce_array是正确的:
分析实体<user_logic>的层次结构:C_NUM_REG = 2
分析实体<plbv46_slave_single>的层次结构:C_ARD_NUM_CE_ARRAY =(2)
解决/修复方法
该地址空间中不存在寄存器,因此,需要将C_INCLUDE_DPHASE_TIMER参数设置为1以允许数据阶段超时。可以在MHS或MPD文件中设置此参数。有关此参数的更多信息,请参见IPIF数据表。
没有回复内容