第三章 DVB-T 中頻訊號擷取與儲存
3.2 資料儲存
3.2.3 NPI 介面特性
z 提供一個簡單的記憶體介面可以適應不同的協定。
z 提供位址線,資料線和控制信號來進行記憶體操作。
z 允許同時通過FIFO 進行資料的讀寫
z 可以配置成32 位元或 64 位元的資料寬度以適應不同的系統的需求。
z 當使用32 位 NPI 和 BRAM FIFOs 時,支援下列傳輸尺寸:位元組,半字,字 和4 個字的 cacheline,8 個字的 cacheline,16 個字的 bursts,32 個字的 bursts 和64 個字的 bursts。
z 當使用 64 位 NPI 時,支援下列傳輸尺寸:位元組,半字,字,雙字,4 字 cacheline,8 字 cacheline,16 字 bursts,32 字 bursts 和 64 字 bursts。
25
在MPMC 的設定介面中 Base Configuration 包含兩個標籤欄。其中,使用者可以 在Port Type Configuration 中配置埠類型,MPMC 最多可以有 8 個埠,每個埠有前述 的7 種介面類別型 PLB,XCL,SDMA,NPI,PPC440-NA,VFBC,MCB-NA 以及 不使用INACTIVE。圖 3.10 為 MPMC 的介面。表 3.2 列舉並簡要介紹 NPI PIM 的輸 入/輸出介面。表 3.3 為本設計之系統位址分配表
圖3.10 MPMC 的 7 種介面及不使用 INACTIVE
26
表 3.2 NPI PIM 的輸入/輸出埠
信號名稱 傳輸方向 初始狀態 信號描述
地址周期相關輸入端口
PIM<Port_Num>_Addr 輸入 X 表示某種特定請求的初始地 址, 僅
PIM<PORT_NUM>_Addr 為 有效位準時才有效
PIM<Port_Num>_Addr Req
輸入 X 此信號為High 時, 表示 NPI 已經為MPMC 所仲裁的地址 請求做好準備, 該請求不能被 終止
PIM<Port_Num>_RNW 輸入 X 讀寫信號
0 表示寫請求 ; 1 表示讀請求 PIM<Port_Num>_Size 輸入 X 表示請求信號類型
0x0 表示字傳輸(32 bit NPI) 0x0 表示雙字傳輸(64 bit NPI) 0x1 表示 4 字 cacheline 傳輸 0x2 表示 8 字 cacheline 傳輸 0x3 表示 16 字 burst 傳輸 0x4 表示 32 字 burst 傳輸 0x5 表示 64 字 burst 傳輸
PIM<Port_Num>_RdMo 輸入 X 表示如果接收到請求, MPMC
27
dWr 將執行讀/寫/校正操作
地址周期相關的輸出端口 PIM<Port_Num>_Addr
Ack
輸出 0 表示MPMC 已開始仲裁地址 請求, 僅在一個 MPMC Clock 內有效
資料周期相關輸入端口 PIM<Port_Num>_WrFI
FO_Data
輸入 X 輸入資料將被寫入MPMC write FIFO
PIM<Port_Num>_WrFI FO_BE
輸入 X Indicates which bytes of PIM<Port_Num>_WrFIFO_Da ta to write. Only valid with PIM<Port_Num>_WrFIFO_Pu sh.
PIM<Port_Num>_WrFI FO_Push
輸入 X 表示準備將
PIM<PORT_NUM>_WrFIFO_
Data 內容寫入 FIFO PIM<Port_Num>_WrFI
FO_Flush
輸入 X 表示 Write FIFO 的 flag 標誌 將被重置(Reset)
28
表3.3 系統位址分配表
INSTANCE BASE ADDRESS HIGH ADDRESS SIZE
dlmb_cntlr 0x00000000 0x0000FFFF 64K ilmb_cntlr 0x00000000 0x0000FFFF 64K test_npi_0 0x10000000 0x10000FFF 1K Push_Buttons_5Bit 0x81400000 0x8140FFFF 64K
SysACE_CompactFlash 0x83600000 0x8360FFFF 64K RS-232_Uart_2 0x84000000 0x8400FFFF 64K RS-232_Uart_1 0x84020000 0x8402FFFF 64K
mdm_0 0x84400000 0x84400FFF 64K SRAM 0x8A300000 0x8A3FFFFF 1M DDR2_SDRAM 0x90000000 0x9FFFFFFF 256M
29
在 ML-506 的發展板上所附的 DDR2 SDRAM 是 64 位元的資料寬度,容量為 256MB,所以在 NPI 的時序是選用雙字傳輸寫入(Double word write),時序如圖 3.11。
依照時序圖可以發現在使用NPI 的最快寫入速度為 MPMC 時脈的一半,本設計使用 MPMC 時脈為 125MHz,所以在收到資料寫入 DDR2 的速度可以符合 ADC 送出資料 了速度。如圖3.12 為設計完成後 EDK 自動產生之系統方塊圖
圖3.11 NPI 雙字傳輸寫入時序圖
30
圖3.12 EDK 之系統方塊圖
31