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時讀取結束
沒有留言:
張貼留言