關於DDR3時鐘和時鐘與資料格式的經典分析

2021-10-17 03:12:01 字數 2806 閱讀 5544

<時鐘篇>

前述:對於ddr3的時鐘說明,在做ddr3的儲存之前有必要把各個時鐘說明白搞明白,下面我講的是對mig(xilinx)的時鐘操作使用;

clock period時鐘:在例化k7系列的mig核時,作者通過**發現並且很明確的告訴你,這個時鐘就是ddr3物理層的ddr3_clk_p和ddr3_clk_n的時鐘,這個時鐘的選擇決定了ddr3存入和讀取的頻寬,一般根據專案的資料頻寬需求進行選擇。

ui_clk使用者時鐘:這個時鐘頻率的大小和phy to controller clock ratio有關,當選擇為2:1模式是,那麼使用者層的ui_clk就是clock period的一半,如在作者工程中clock period=400m, ui_clk=200m,使用者時鐘很關鍵,它為使用者讀寫位址,使用者讀寫命令,使用者讀寫使能(mig的使用者層)提供了乙個時域。

input clock period這個時鐘決定了例化原語中的.ddr3_sys_clk_i  (clk_200m),這個時鐘是由外部pll或mmcm時鐘進行輸入,本作者發現mig對這個輸入時鐘的要求很嚴格,同樣的200m時鐘由pll輸出和mmcm輸出都能使得ddr3顆粒初始化不成功關鍵;

上面的分析是基於mig的物理與使用者層來講的時鐘架構,除錯過ddr3的工作者,應該很清楚。但是市面上對ddr3儲存產品有如下幾個頻率術語:核心頻率,工作頻率;

核心頻率:說的就是上面的物理層時鐘clock period。在本工程中最大能設定為800mhz,這與fpga所選者等級有關與ddr3顆粒選型有關。

工作頻率:核心頻率*2(雙沿),這就是有的廣告寫ddr3_1600後面;

所以遇到這種情況就可以一一對應了。

總結一點:核心頻率就是ddr3的直接輸入clk_p頻率。                        

<時鐘與資料格式篇>

ddr是動態雙沿速率儲存;

動態:所謂動態就只要自動重新整理的過程,在ddr3中,儲存資料的有效保持時間上限為64ms,固定的每一行的重新整理周期為64ms,此外還有乙個重新整理速度=64ms/每個bank的行數(rows),這個引數根據ddr3顆粒的選型有關有的,有的晶元每個bank有4k和8k,從而得到重新整理速度,但是正是因為這樣的重新整理,使得ddr3顆粒存在著乙個效率的問題。

雙沿:double rate :記憶體頻寬=核心頻率*2*位寬;在作者的工程中使用的就是400m*2*8(單位空間bits)=6400mbps=800mb/s;

在使用者層的介面中有如下介面訊號:

控制線

讀寫操作

讀寫使能

資料線

標記寫入的資料有效

要寫入的資料

幀尾標誌,因為是突發寫操作,用此訊號標記是各個完整的突發資料

讀出來的資料

讀出來的資料有效位

標記著乙個突發資料的到來

位址線

寫或讀的位址

反饋訊號線

核準備好訊號

核準備接受資料的訊號

在物理層的介面中有如下介面訊號:

控制類:

ddr_cas_n//列選通

ddr_ras_n//行選通

ddr_we_n//寫使能

ddr_ba//ddrbank選擇訊號

ddr_cke//時鐘使能

資料匯流排

ddr_dq

位址匯流排

上面就準確的說明物理層時鐘與使用者層時鐘和物理層資料位寬與使用者層資料位寬與等之間關係。

3 時鐘數碼管顯示 可調時

include define uchar unsigned char define uint unsigned int uchar s1,s2,m1,m2,h1,h2,miao,fen,shi,count,flag sbit dula p2 6 sbit wela p2 7 sbit tiaoshi...

S3C2440時鐘描述

1 上電幾毫秒後,晶振輸出穩定,fclk 晶振頻率,nreset訊號恢復高電平後,cpu開始執行指令。2 我們可以在程式開頭啟動mpll,在設定mpll的幾個暫存器後,需要等待一段時間 lock time mpll的輸出才穩定。在這段時間 lock time 內,fclk停振,cpu停止工作。loc...

S3C2440 時鐘計算

s3c2440有兩個pll phase locked loop 乙個是mpll,乙個是upll。mpll用於cpu及其他外圍器件,upll用於usb。s3c2440a 中的時鐘控制邏輯可以產生必須的時鐘訊號,包括cpu 的fclk,ahb 匯流排外設的hclk 以及 apb 匯流排外設的pclk。s...