为什么我看到消息“avalon_master.writedata和avl.avl_wdata之间的连接必须是带有UniPHY的DDR2(3)SDRAM控制器的宽度[8,16,32,64,128,256,512,1024]?

如果具有的UniPHY的DDR2(3)SDRAM控制器中的Qsys实现,被配置为不使用2的Avalon®数据总线的功率,只有一个连接可以在主接口和DDR2(3)控制器上的从界面之间进行。如果将2个主机连接到DDR2(3)SDRAM控制器,您将看到上述消息。

如果DDR2(3)控制器上的Avalon从接口需要多个连接,请将主器件的写入和读取数据信号的大小增加到2的更大功率,并在两者之间实现简单的总线垫片(自定义组件)。主站连接和DDR2(3)控制器上的从站接口。垫圈将简单地通过除写入和读取数据之外的所有信号。

对于写入数据,垫片将仅通过所需数量的数据位。例如,如果所需的存储器接口是72位,则半速率控制器数据宽度将是288.主控制器将数据总线向上舍入到512并用224'0填充写入数据,并且垫圈将简单地通过288位需要。

- 通过垫片的主接口将所需的数据位发送到DDR

avm_m0_writedata <= avs_s0_writedata(287 downto 0);

对于读取数据,垫圈将用“0”填充顶部288位。

- 创建一个垫常量

常量PAD_DATA:std_logic_vector(287 downto 0):=(其他=>'0');

- 通过垫片的从属接口将读取数据发送给主站

avs_s0_readdata <= PAD_DATA&avm_m0_readdata

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-08-04 14:35:46 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它