FPGA 上 DDR3 管腳如何分配

2021-10-07 19:58:35 字數 2681 閱讀 4092

不論是哪一款 ddr ,dq 在組內都是可以互換的,因為資料的具體內容只要讀入和讀出一致即可

1 確定占用的 bank

在 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

一對s 即為 dqs和dqsn 管腳,10個q為 8個dq 和 1個dm,另外乙個冗餘

dm必須和某乙個 dq組成差分對,其餘沒有要求隨意

3  分配 pll_ref_clk , rzq ,  任乙個addr[x]

指標隨意停留在某乙個 pin上,可以看到 此pin 在參考例項中的分配名稱,如下圖

每組 bank中 addr[0-14],ba[0-3],  mem_reset_n, 和 we 四種管腳是唯一的,檢查 dqs group 是否占用了此四種管腳,若衝突,修改 dqs group 到別的 group 中

將任意 某乙個 addr 分到 對應管腳上

將 pll_ref_clk 分配到 某乙個差分輸入clk 管腳上,ddr所在的 所有bank 都可以,不要占用 上述  唯一管腳

rzq 分配到 同一column,相同電壓bank 的 rzq管腳上

4  編譯,自動完成剩餘 i/o 填充

然後 assignment → back_annotake assignment ,  再次開啟 pin_planner就會發現所有的pin分配ok

官方文件

xilinx ddr 管腳分配原則:

xilinx 的 ultrascale系列分配規則在ddr_ip文件 pg150 的 第91頁上,7系列在 ug586 的 p193,詳情見上傳的資料 

不同點:

1    dqs與 dm管腳是固定的,x8時 必須在 n7/n8 與 n0 上

2  控制管腳是可以隨意換的,包括 dq佔據的byte lanes中沒有使用的n0/n12管腳,但是必須要在同乙個bank(reset除外)

7系列最多支援連續的三個bank,且要求 ctrl/addr 在中間bank;ultrascale系列最多支援連續的5個bank,最大9個compent,ctrl/addr 可以在任意bank

注意ref_clk管腳要從專用時鐘進入,ck_t/c要從差分出

3 注意sparten7系列ddr3  需要兩組clock,

在vivado中例化後的名字為的sys_clk實際上是其他情況下的 pll_ref_clk,倍頻後為ck_p/ck_n,然後8分頻為 ui_clk.

在vivado中例化後的名字為的ref_clk用來做ddr中 iodelay的時鐘,調整介面時序,其他**沒有單獨的iodelay時鐘,是共用的 pll_ref_clk

3  用 vivado2019.1 及以上版本,zynq7000系列ps 部分的管腳是可交換的,但是 ultrascale 及以上系列 沒有展示管腳,所以不能換

lvds 管腳分配規則:

altera 的 tx 和 rx,和2.5v的其他電平 可以在同乙個bank,但是tx和rx的如果要在同乙個bank,ip裡 iopll 的ref_clk 必須要用 globle 的或者在不同的bank

xilinx  的 tx 和 rx,和2.5v的其他電平 可以在同乙個bank,但是 byte_lane 2的n0 必須是 rx,任意乙個byte_lane的n0如果是tx,那麼這個byte_lane整個bank都是tx,是rx或者nc則沒有限制

鎂光ddr3佈線規則 DDR3走線規則 pdf

ddr3走線規則 3 pcb 設計建議 3.1 fanout封裝設計建議 hi3716m 的封裝為pbga600 管腳間距0.8 公釐。在pcb 設計時,可以採用四層pcb 板的設計,建議如下分層 top 層 訊號走線 內一層 地平面層 內二層 電源平面層 bottom 層 訊號走線 在成本非常敏感...

基於FPGA的DDR3多埠讀寫儲存管理系統設計

1 總體架構設計 ddr3儲存器控制模組採用mig memory inte ce generator 方案,通過使用者介面建立fpga內部控制邏輯到ddr3的連線,使用者不需要管理ddr3初始化 暫存器配置等複雜的控制邏輯,只需要控制使用者介面的讀寫操作。ddr3使用者介面仲裁控制模組將每乙個資料讀...

DDR3各個頻率詳解

最近在看ddr3的文件,說說對ddr3的頻率的見解,其實我是想知道在ddr3的文件中,頻率最低的定義是ddr3 800 其實這個頻率是可以降低的,只是官方建議這個最低的值而已 我想知道這個800是怎麼來的,下面的dram引腳名稱按照ddr3 spec來寫,首先我們需要明確幾個頻率概念 1,核心頻率c...