MIG 设计助手部分将助您了解驱动用户接口的信息。
注:此答复记录是 Xilinx MIG 解决方案中心 (Xilinx 答复 34243)的一部分。Xilinx MIG 解决方案中心可解决所有与 MIG 相关的问题。无论您是要使用 MIG 来进行新设计还是要解决问题,请使用 MIG 解决方案中心来指导您获取相应的信息。
从用户接口的角度来看,MCB 在物理 DRAM 中提供简单的顺序字节寻址机制。事实上,DRAM 在固定段中存储数据,这可通过机制进行抽象化,以实现类似 SRAM 的简单地址接口。MCB 会自动将用户接口字节地址转换成特定存储器设备配置所需的行、分组和列地址信号。
用于字节地址调整的地址要求
提供给用户接口的字节地址必须根据端口宽度进行调整。根据端口宽度字节数,必须将某个低位地址位数设置为 0,以确保连续地址落在数据字边界上。如欲了解更多详情,敬请参见下表:
用户接口的写入数据掩码输入 (pX_wr_mask) 可用于抵消起始地址字节位置;敬请参见 (Xilinx 答复 43358)。
字节地址到存储器地址的转换
存储器标准、总线宽度和密度都会影响用户接口字节地址位映射到相应行、分组和列地址位的方式。如果在 MIG 工具中选择存储器设备,则会将所需的参数传递到 MCB,使它可以创建正确的地址位分配。
MCB 支持下面两种通用机制,用于将用户接口字节地址映射到存储器接口物理地址: ROW_BANK_COLUMN 和 BANK_ROW_COLUMN。
如欲了解有关地址映射的更多详情,敬请参见 Spartan-6 FPGA 存储器控制器用户指南 (UG388) 下的“MCB 操作”->“字节地址到存储器地址的转换”: //m.alegre-web.com/support/documentation/user_guides/ug388.pdf
DDR2/DDR3 突发封装
DDR2 存储器实现 4n-prefetch 内部总线,这使得 SDRAM 内部阵列可由宽度是外部总线的四倍的总线访问。例如,16 位宽的 DDR2 存储器使用 64 位宽的内部总线访问核心阵列。预取架构获得这项 64 位提取,然后将其载入四个 16 位预取缓冲器中。在 DDR2 突发周期内,这四个寄存器可根据列地址来选择。
DDR3 存储器实现 8n-prefetch 内部总线,这使得 SDRAM 内部阵列可由宽度是外部总线的八倍的总线访问。例如,16 位宽的 DDR3 存储器使用 128 位宽的内部总线访问核心阵列。预取架构获得这项 128 位提取,然后将其载入八个 16 位预取缓冲器中。在 DDR3 突发周期内,这八个寄存器可根据列地址来选择。
MCB 始终从存储器的突发边界开始读取和写入。因此,BL=8 的写入的突发顺序将始终从列地址 0 开始,并依次计数到 7。对 BL=4 来说,起始列地址为 0(A3 = 0)或 4(A3 = 1)。如欲了解有关突发寻址的更多详情,敬请参见相关 JEDEC 规范。如果用户接口指定的突发地址超出存储器的突发边界,则 MCB 将对数据添加合适的掩码。
实例::
32-bit 用户接口
x16-DDR3 SDRAM(因为 DDR3MCB 仅支持 BL8)
对于 32 位用户接口,pX_cmd_addr[1:0] 必须是 2'b00。由于用户接口使用字节地址,因此,该用户接口上的每两个地址就与 x16 DDR3 列地址空间中的一个地址相对应。
pX_cmd_addr[2:0] = 3'b100
pX_cmd_bl[5:0] = 5'b0_0000 (1 32-bit word burst)
pX_cmd_instr[2:0] = 3'b000
这就转换为 x16 DDR3 存储器中的以下写入:
Address | Data |
000 | 已添加掩码 |
001 | 已添加掩码 |
010 | 低位 16 位数据 |
011 | 高位 16 位数据 |
100 | 已添加掩码 |
101 | 已添加掩码 |
110 | 已添加掩码 |
111 | 已添加掩码 |
Answer Number | 问答标题 | 问题版本 | 已解决问题的版本 |
---|---|---|---|
43323 | MIG Spartan-6 MCB - Driving the User Interface | N/A | N/A |
Answer Number | 问答标题 | 问题版本 | 已解决问题的版本 |
---|---|---|---|
44094 | MIG Spartan-6 FPGA DDR2/DDR3 - How do I drive the user interface? | N/A | N/A |
43595 | MIG Spartan-6 FPGA DDR2/DDR3 - Using CORE Generator | N/A | N/A |
43323 | MIG Spartan-6 MCB - Driving the User Interface | N/A | N/A |
AR# 43360 | |
---|---|
日期 | 12/15/2012 |
状态 | Active |
Type | 综合文章 |
器件 | |
IP |