1 确定占用的 bank

altera FPGA 上 DDR3 管脚如何分配

在 pin_planer 界面,首先右键打开 show_banks,确定好 DDR3 要占用的 banks,使用1.5v供电,记住 bank位置

每组 DDR3 只能使用同一个 column,即bank号里的 数字 必须相同

所有pin尽量在1个bank上,以减少爬坡时间提高频率,但是每个bank只能支持 1组 lanes+ 控制管脚或者 四组 lanes,没有控制管脚),若大于1组 lanes 则需要多个bank

每个lane即 DQx8 + DM + 差分 DQS + dummy 共12个pin,即一个DQS group,如下图

如果要使用多个 bank,需要 bank号连续,控制管脚必须位于多个 bank的中间,所有控制管脚在同一个bank 上

 

 

2  分配所有 DQS group

altera FPGA 上 DDR3 管脚如何分配

一对S 即为 DQS和DQSN 管脚,10个Q为 8个DQ 和 1个DM,另外一个冗余

DM必须和某一个 DQ组成差分对,其余没有要求随意

 

3  分配 pll_ref_clk , rzq ,  任一个addr[x]

altera FPGA 上 DDR3 管脚如何分配

完成所有 DQS group相关pin 后, show_hard_memory_interface_pins DDR3 DDR3_scheme1 参考实例

指针随意停留在某一个 pin上,可以看到 此pin 在参考实例中的分配名称,如下图

altera FPGA 上 DDR3 管脚如何分配

每组 bank中 addr[0-14],ba[0-3],  mem_reset_n, 和 we 四种管脚是唯一的,检查 DQS group 是否占用了此四种管脚,若冲突,修改 DQS group 到别的 group 中

将任意 某一个 addr 分到 对应管脚上

将 pll_ref_clk 分配到 某一个差分输入clk 管脚上,ddr所在的 所有bank 都可以,不要占用 上述cmd唯一管脚

rzq 分配到 同一column,相同电压bank 的 rzq管脚上

 

4  编译,自动完成剩余 i/o 填充

然后 assignment → back_annotake assignment ,  再次打开 pin_planner就会发现所有的pin分配ok

 

 

官方文档 https://www.intel.com/content/www/us/en/programmable/documentation/hco1416492180052.html#hco1416490861769

altera FPGA 上 DDR3 管脚如何分配

altera FPGA 上 DDR3 管脚如何分配

相关文章: