關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > AMBA息線SOC系統(tǒng)IP核的即插即用研究

AMBA息線SOC系統(tǒng)IP核的即插即用研究

作者: 時間:2009-08-11 來源:網(wǎng)絡 收藏

2 基于總線的OCP接口設計
(Advaneed Microcontroller Bus Architecture)總線規(guī)范是ARM公司設計的一種用于高性能嵌入式系統(tǒng)的總線標準。總線規(guī)范是開放標準,通過ARM公司的授權(quán)就可以免費獲得。它獨立于處理器和制造工藝技術,增強了各種應用中的外設和系統(tǒng)單元的可重用性。2.O版AMBA標準定義了3組總線:AHB(AM-BA高性能總線)、ASB(AMBA系統(tǒng)總線)、和APB(AM-BA外設總線)。AHB總線應用于要求高速度高帶寬的系統(tǒng)。本文以AHB總線為例,說明OCP -IP如何集成到SoC系統(tǒng)總線上。AMBA總線基本傳輸時序如圖3所示。HCLK表示AMBA系統(tǒng)時鐘,HADDR[31:0]表示32位地址總線, HWDATA[31:O]表示32位寫操作時的數(shù)據(jù)總線,HREADY是AMBA總線的讀寫狀態(tài)信號(狀態(tài)為低電平時,表示一次讀寫操作完成), HRDATA[31:0]表示讀操作時的數(shù)據(jù)總線。

OCP-的功能是可裁剪的,即OCP-IP的大部分信號都是可選擇的。根據(jù)核的功能,選擇使用不同的信號。OCP協(xié)議中共有三大類型號:數(shù)據(jù)流信號 (dataflowsignals)、邊帶信號(sideband)、測試信號(test signals)。數(shù)據(jù)流信號主要包括:基本信號(basic signals)、簡單擴展信號(simple extensions signals)、突發(fā)擴展信號(burst exten-sions signals)和線程擴展信號(thread extensions signals)。邊帶信號主要包括:復位(.Reset)、中斷(Interrupt)、錯誤(Error)等信號。測試信號主要包括用于支持掃描 (Scan)、時鐘控制和IEEE 1149.1(JTAG)的信號。此處用到的OCP信號包括:Reset(復位)、Clk(時鐘)、En-ableClk(時鐘使能)、MAddr(地址)、MCmd(命令)、MData(數(shù)據(jù))、SCmdAccept(命令接受)、SData(Slave數(shù)據(jù))、SResp(操作成功標志)。簡單的 OCP讀寫時序如圖4所示。Request Phase表示請求階段,Response Phase表示響應階段。A處由系統(tǒng)Master發(fā)出1個WR寫命令,并給出地址A1和數(shù)據(jù)D1。隨即Slave發(fā)出命令接受響應ScmdAccept,此處一個周期完成了一個寫周期操作,不需要Slave給出寫操作成功響應。C處系統(tǒng)Master發(fā)出一個RD讀命令,并給出要讀取的地址A2。Slave 隨即給出命令接受響應信號SCmdAccept,在下一個時鐘周期D處Slave給出要讀取的數(shù)據(jù)D2并在Slave響應信號SResp上給出讀操作成功標志DVA。此處讀操作用了2個時鐘周期。

OCP-IP跟AMBA總線的通信通過設計2個狀態(tài)機來實現(xiàn),1個用于接收AMBA總線上的流水數(shù)據(jù),1個用于發(fā)送接收的數(shù)據(jù)并以OCP標準的方式發(fā)送。接收數(shù)據(jù)的狀態(tài)機編碼如下:


H_CTRL_PHASE1用于存儲第1級流水指令,H_CTRL_PHASE2用于存儲第2級流水指令,其狀態(tài)轉(zhuǎn)移圖如圖5所示。當AMBA總線上發(fā)出第1個讀寫指令,狀態(tài)機進入H_CTRL_PHASE1狀態(tài),并將第1個讀寫指令轉(zhuǎn)換成OCP命令。因為AMBA總線是基于流水的操作,所以第2條指令的發(fā)出不需要等第1條指令執(zhí)行結(jié)束。這時候,狀態(tài)機進入H_CTRL_PHASE2狀態(tài),并將此指令存儲起來,等OCP命令執(zhí)行結(jié)束立即將此存儲的指令轉(zhuǎn)換成OCP命令。這時如果AMBA總線上再次發(fā)出第3條指令,則狀態(tài)機進入H_CTRL_PHASE1狀態(tài),并存儲此指令。



關鍵詞: AMBA SOC 息線 IP核

評論


相關推薦

技術專區(qū)

關閉