1.使用Altera
DDR2 IP
2.IP訊號定義
| 
local_addr[23:0] | 
input | 
DDR2儲存位置,每個記憶體位置儲存32個bit資料 | 
| 
local_be[15:0] | 
input | 
寫入資料用,每筆資料全部寫入下16'hFFFF | 
| 
local_burstbegin | 
input | 
For
   write req and read req,每筆資料拉high做讀或寫 | 
| 
local_read_req | 
input | 
讀取資料訊號 | 
| 
local_write_req | 
input | 
寫入資料訊號 | 
| 
local_size[] | 
input | 
Size
   = 2 for DDR2 
    | 
| 
local_wdata[] | 
input | 
寫入資料,這裡為128bit,寫入4個記憶體位置,每32bit一筆 | 
| 
local_rdata[] | 
output | 
讀出資料,這裡為128bit,讀出4個記憶體位置,每32bit一筆 | 
| 
local_init_done | 
output | 
DDR2初始化完成訊號 | 
| 
local_rdata_valid | 
output | 
可以開始接收讀出的資料 | 
| 
local_ready | 
output | 
Pull
   high時burstbegin才有效 | 
3.IP訊號
Write:
在ready
pull high時,burstbegin每pull
high一次,寫入2
(local_size) 筆資料,
記憶體位置則增加8
Read:
在ready
pull high時,burstbegin就pull
high,請求讀2
(local_size) 筆資料,
記憶體位置則增加8,read_req則pull
high到請求讀出的資料位置最末筆。
當local_valid訊號pull
high時,開始讀出資料,每筆資料有4個記憶體位置,
pull
low時讀取結束




 
沒有留言:
張貼留言