AMBA总线中文规范

上传人:m**** 文档编号:506328613 上传时间:2023-09-24 格式:DOC 页数:23 大小:1.35MB
返回 下载 相关 举报
AMBA总线中文规范_第1页
第1页 / 共23页
AMBA总线中文规范_第2页
第2页 / 共23页
AMBA总线中文规范_第3页
第3页 / 共23页
AMBA总线中文规范_第4页
第4页 / 共23页
AMBA总线中文规范_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《AMBA总线中文规范》由会员分享,可在线阅读,更多相关《AMBA总线中文规范(23页珍藏版)》请在金锄头文库上搜索。

1、Introduction to AMBA Bus System工研院/系統晶片技術中心工程師吳欣龍1. 前言本篇文章主要是介紹 ARM Limited.公司所推出的AMBA 協定(Advaneed Micro-controller Bus Architecture)。AMBA 協定目前是 open 且 free 的,讀者可從 ARM 的網站() 下載完整的Specification。這篇文章並沒有打算說明完整的 AMBA協定內容,詳細的Spec還是請讀者閱讀ARM所 提供的文件。原本的 AMBA協定包含了四大部分:AHB, ASB, APB, Test Methodology,限於 篇幅的關係

2、,我們挑選較重要的 AHB, APB加以基本的介紹,並探討 AHB的一些重要的特 性。2. AMBA 概述AMBA協定的目地是為了要推出on-chip bus的規範,一開始AMBA 1.0只有ASB與APB, 為了節省面積,所以這時候的bus協定都是tristate的bus,而到後來2.0的AHB為了能更方 便設計者(trisate bus要花更多精力去注意timing),因此改用bus改用multiplexor的架構,並 增加了新的特性。一個以 AMBA 架構的 SOC,一般來說包含了 high-performanee 的 system bus - AHB與 low-power 的 peri

3、pheral bus - APB。System bus是負責連接例如 ARM 之類的 embedded processor與 DMA con troller,on-chip memory 和其他 in terface,或其他需要 high ban dwidth 的元件。而peripheral bus則是用來連接系統的周邊元件,其protocol相對AHB來講較為簡單, 與AHB之間則透過Bridge相連,期望能減少system bus的loading。一個典型的AMBA架構如圖2.1:3. AHB 簡介ARM當初訂定AHB (Advaneed High-Performanee Bus)主要是想

4、讓它能夠用來當作 SOC的 on-chip system bus 它的一些特性包括:z sin gle-clock edge operati onznon-tristate impleme ntati onz burst tran sferszsplit tran sacti onz multiple bus master以下我們將簡單的介紹AHB的協定及這些特性。3.1 OverviewAHB System是由 Maste, Slave Infrastructure三部分所組成。整個 AHB bus 上的傳輸(transfer) 都是由 master所發出,由 slave 負責回應。而 in

5、frastructure 則由 arbiter ,master to slave multiplexor,slave to master multiplexor, decoder, dummy slave, dummy master所組成。AHB之所以會需要arbiter,是因為它支援 multiple master,因此需要arbiter來仲裁。而decoder則是負責位址的解碼,從 multiple slave中選擇要回應transfer的slaveo而兩個 multiplexor 則是負責 bus 的 routing(為了不使用 tristate bus)將 bus上的訊號在 maste

6、r和 slave 中傳送,圖3.1說明了 multiplexor與master/slave連結的情形。基本上 bus上傳輸的訊號,可以分成 clock,arbitration,address control signal,write data, read data response signa七種。除了 clock與arbitration訊號之外,其餘的訊號皆會經過 multiplexor。會經過 master to slave multiplexor的訊號有 address, control signal, write data 而 會經過 slave to master multiplex

7、or 的則有 read data與 response signa。下面的table列出所有的AHB訊號,以及它的用途。我們將在後面的章節介紹這些訊號, 讀者可以先瀏覽一遍,有個基本的印象。NameSourceDescriptio nHCLKClock sourceBus Clocko All signal timings are related to the rising edge of HCLK。HRESETnReset con trolleractive LOW。reset whole systemHADDR31:0Master32-bit system busHTRANS1:0Maste

8、rcurre nt tran sfer typesHWRITEMasterHIGH : write transfer。 LOW : read transfer。HSIZE2:0Masterthe size of the tran sfe。HBURST2:0MasterIn dicates if the tran sfer forms part of a burstHPROT3:0MasterImpleme nt some level of protect ion。HWDATA31:0Masterwrite data busHSELxDecoderslave select sig na。HRDA

9、TA31:0Slaveread data busHREADYSlaveHigh : transfer done LOW : extending transfer。HRESP1:0Slavetran sfer resp onseHBUSREQxMasterbus requestHLOCKxMasterLocked tran sfer。HGRANTxArbiterBus grant sig na。HMASTER3:0ArbiterIn dicate gran ted master nu mberHMASTLOCKArbiterLocked seque neeHSPLITx15:0SlaveSpli

10、t completion request。在看過了 AHB的訊號後,下圖3.2則介紹AHB大概的bus interconnection。在圖3.2中, 省略的部分有各種control signal (HBURST, HTRANS等)的連接,其實他們的連線與 HADDR 一致。(2)Master與 Arbiter 之間的 Request/Grant訊號。(3)Decoder與各個 Slave 間會 有Selection的訊號。(4)control mux的output會有部分control訊號除了接到Slave外也會接到 Arbiter (HTRANS/HBURST)。(5)Response s

11、ignal(HREADY, HRESP)的 mux。另外 Arbiter 會輸 出 HMASTER 訊號,這個訊號會接到 master-to-slave multiplexor,以作為 selection signal。圖3.23.2 Basic tran sfer在 AHB bus 上, 一次完整的 transfer可以分成兩個 phase address phase與 data phaseaddress phase傳送的是 address與 control signal,而 data phase則是 write/read data與 response signa。F圖 3.3 說明 AHB

12、 上的 basic transfe。Data pha&a圖3.3transfer在data phase時若無法在1個clock cycle內完成,slave可用HREADY訊號去延長 (extend) transfe。請參考下圖3.4,當HREADY為LOW 時,表示transfer尚未結束,為HIGH 時,則代表目前的transfer結束了,但結束時的status則需看Slave回應的HRESP訊號(可能 是 OKAY, ERROR等)。由於一次transfer需要兩個phase才能完成,為了增進 bus的performanee, AHB將multiple transfer給 pipelin

13、e 起來,transfer間的 address phases data phase是 overlap在一起的,請見下 圖3.5從圖3.5中我們可以看到由於現在目前 transfer的data phase與下一次transfer的address phase是 overlap 的,所以當目前 transfer 的 data phase被 extend 時,address phased得跟著延 長HCLKHADDR31CofilrtilHWDATA31:0|HREADYHRDATA31:0|圖3.53.3 Con trol sig nalAHB上的Control signal共有五類,分別為 zHT

14、RANS1:0 :Transfer TypezHBURST2:0 :Burst TypezHPROT3:0 :Protectio n Co ntrolzHSIZE2:0 :Tran sfer Sizez HWRITE :Tra nsfer Directio n底下我們將一一介紹。3.3.1 Tran sfer TypeAHB 上共有四種 transfer type:z IDLE :指示slave需忽略目前的transfe。用於當master沒有資料需要傳送時,而此時slave 需在 transfer 的 data phase回應 zero wait cycle 的 OKAY responsaz

15、 BUSY :在 burst transfer 時,master傳送連續的 transfer給 slave,若 master因某些原因無 法及時將資料準備好,則發出使用此 transfer type通知slave,slave的response應該與回 應 IDLE transfer 時相同,也就是 zero wait cycle 的 OKAY responseoz NONSEQ (Non-sequential):指示目前 transfer 的 address和 control 訊號與上一筆 transfer 無關。z SEQ (Sequential):指示 address和上一筆 transfer相關,而 control 訊號則和上一筆 transfer 相同,通常用在 burst transfer中。下圖3.6為transfer type的example 從時序圖裡我們可以看出:第一筆 burst transfer的type 一定為NONSEQ,另外因為master無法把下一筆資料在第二個 cycle準備好,因此使用BUSY type去延遲第二筆trans

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号