AXI總線介紹課件_第1頁
AXI總線介紹課件_第2頁
AXI總線介紹課件_第3頁
AXI總線介紹課件_第4頁
AXI總線介紹課件_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1

AXIIntroduction

ICD/SIDBobQin(覃海洋)

2015/12/311

AXIIntroduction

ICD/SID2Topic1WhatistheAXI?2Topic1WhatistheAXI?3AXI介紹AXI(AdvancedeXtensibleInterface)是一種總線協(xié)議,該協(xié)議是ARM公司提出的AMBA3.0(AHB是在2.0中提出)協(xié)議中最重要的部分,是一種面向高性能、高帶寬、低延遲的片內(nèi)總線.3AXI介紹AXI(AdvancedeXtensible4AXI特點1.它的地址/控制和數(shù)據(jù)相位是Sperated2.支持Unaligned的數(shù)據(jù)傳輸3.同時在Burst傳輸中,只需要首地址4.單向通道體系結(jié)構(gòu)提高傳輸效率4.同時分離的讀、寫數(shù)據(jù)通道5.并支持outstanding傳輸訪問和Outoforder訪問4AXI特點1.它的地址/控制和數(shù)據(jù)相位是SperatedTopic2WhatconstitutestheAXI?5Topic2WhatconstitutestheAX6AXI通道組成部分Readaddresschannel添加描述WriteaddresschannelReaddatachannelWritedatachannelWriteresponsechannel每一個AXI傳輸通道都是單方向的6AXI通道組成部分ReadaddresschannelReadtransactionstructure72ChannelsReadtransactionstructure72CWritetransactionstructure83ChannelsWritetransactionstructure83Handshakemechanism英文敘述并強調(diào)傳輸?shù)刂沸畔⒑蛿?shù)據(jù)都是在VALID和READY同時為高時有效9Handshakemechanism英文敘述并強調(diào)傳輸?shù)刂?0AXI信號(1)信號源描述ACLKClocksource全局時鐘信號ARESETnResetsource全局復(fù)位信號,低電平有效GlobalSignal:10AXI信號(1)信號源描述ACLKClocksourcAXI信號(2)11Writeaddresschannel:

信號源描述AWID[3:0]主機寫地址ID,這個信號是寫地址信號組的IDtag。AWADDR[31:0]主機寫地址。AWLEN[3:0]主機突發(fā)式寫的長度。此長度決定突發(fā)式寫所傳輸?shù)臄?shù)據(jù)的個數(shù)。AWSIZE[2:0]主機突發(fā)式寫的大小。AWBURST[1:0]主機突發(fā)式寫的類型。AWLOCK[1:0]主機鎖類型。AWCACHE[3:0]主機Cache類型。這信號指明事務(wù)的bufferable、cacheable、write-through、write-back、allocateattributes信息。AWPROT[2:0]主機保護類型。AWVALID主機寫地址有效。1=地址和控制信息有效0=地址和控制信息無效這個信號會一直保持,直到AWREADY變?yōu)楦?。AWREADY設(shè)備寫地址準(zhǔn)備好。這個信號用來指明設(shè)備已經(jīng)準(zhǔn)備好接受地址和控制信息了。1=設(shè)備準(zhǔn)備好0=設(shè)備沒準(zhǔn)備好AXI信號(2)11WriteaddresschanneAXI信號(3)12Writedatachannel:信號源描述WID[3:0]主機寫IDtag,WID的值必須與AWID的值匹配WDATA[31:0]主機寫的數(shù)據(jù)。WSTRB[3:0]主機寫閥門。WSTRB[n]標(biāo)示的區(qū)間為WDATA[(8*n)+7:(8*n)]

WLAST主機寫的最后一個數(shù)據(jù)。WVALID主機寫有效1=寫數(shù)據(jù)和閥門有效0=寫數(shù)據(jù)和閥門無效WREADY設(shè)備寫就緒。指明設(shè)備已經(jīng)準(zhǔn)備好接受數(shù)據(jù)了1=設(shè)備就緒0=設(shè)備未就緒AXI信號(3)12Writedatachannel:AXI信號(4)13Writeresponsechannel:信號源描述BID[3:0]設(shè)備響應(yīng)ID,這個數(shù)值必須與AWID的數(shù)值匹配。BRESP[1:0]設(shè)備寫響應(yīng)。這個信號指明寫事務(wù)的狀態(tài)??赡苡械捻憫?yīng):OKAY、EXOKAY、SLVERR、DECERR。BVALID設(shè)備寫響應(yīng)有效。1=寫響應(yīng)有效0=寫響應(yīng)無效BREADY主機接受響應(yīng)就緒。該信號表示主機已經(jīng)能夠接受響應(yīng)信息。1=主機就緒0=主機未就緒AXI信號(4)13WriteresponsechannAXI信號(5)14Readaddresschannel:信號源描述ARID[3:0]主機讀地址ID。ARADDR[31:0]主機讀地址。ARLEN[3:0]主機突發(fā)式讀長度。ARSIZE[2:0]主機突發(fā)式讀大小。ARBURST[1:0]主機突發(fā)式讀類型。ARLOCK[1:0]主機鎖類型。ARCACHE[3:0]主機Cache類型。ARPROT[2:0]主機保護類型。ARVALID主機讀地址有效。信號一直保持,直到ARREADY為高。1=地址和控制信息有效0=地址和控制信息無效ARREADY設(shè)備讀地址就緒。指明設(shè)備已經(jīng)準(zhǔn)備好接受數(shù)據(jù)了。1=設(shè)備就緒0=設(shè)備未就緒AXI信號(5)14ReadaddresschannelAXI信號(6)15Readdatachannel:信號源描述RID[3:0]設(shè)備讀IDtag。RID的數(shù)值必須與ARID的數(shù)值匹配。RDATA[31:0]設(shè)備讀數(shù)據(jù)。RRESP[1:0]設(shè)備讀響應(yīng)。這個信號指明讀傳輸?shù)臓顟B(tài):OKAY、EXOKAY、SLVERR、DECERR。RLAST設(shè)備讀事務(wù)傳送的最后一個數(shù)據(jù)。RVALID設(shè)備讀數(shù)據(jù)有效。1=讀數(shù)據(jù)有效。0=讀數(shù)據(jù)無效。RREADY主機讀數(shù)據(jù)就緒。1=主機就緒0=主機未就緒AXI信號(6)15Readdatachannel:信AXI信號(7)16Lowpowerinterface:信號源描述CSYSREQCLOCKcontroller系統(tǒng)低功耗請求。此信號來自系統(tǒng)時鐘控制器,使外圍設(shè)備進入低功耗狀態(tài)。CSYSACK外圍設(shè)備低功耗請求應(yīng)答。CACTIVE外圍設(shè)備Clockactive1=外圍設(shè)備時鐘請求0=外圍設(shè)備時鐘無請求AXI信號(7)16Lowpowerinterface:Topic3HowcanyoumakeatransferonAXI?17Topic3Howcanyoumakeatran18BasicAXI

transferReadburst:18BasicAXItransferReadburst19BasicAXI

transferOverlappingreadburst:19BasicAXItransferOverlappin20BasicAXI

transferWriteburst:20BasicAXItransferWriteburs21BasicAXI

transferAXI協(xié)議支持亂序傳輸。他給每一個通過接口的事務(wù)一個IDtag。協(xié)議要求相同IDtag的事務(wù)必須有序完成,而不同IDtag可以亂序完成21BasicAXItransferAXI協(xié)議支持亂序傳Topic4Somethingabouthandshakemechanism,VALIDandREADYareimportant.22Topic4SomethingabouthandshaVALID先變高READY后變高在箭頭處信息傳輸發(fā)生。23VALID先變高READY后變高在箭頭處信息傳輸發(fā)生。23READY先變高VALID后變高同樣在箭頭處信息傳輸發(fā)生。24READY先變高VALID后變高同樣在箭頭處信息傳輸發(fā)生。2VALID和READY信號同時變高在這種情況下,信息傳輸立馬發(fā)生,如圖箭頭處指明信息傳輸發(fā)生25VALID和READY信號同時變高在這種情況下,信息傳輸立馬26RelationshipamongchannelsReadtransaction:1、設(shè)備可以在ARVALID出現(xiàn)的時候在給出ARREADY信號,也可以先給出ARREADY信號,再等待ARVALID信號。2、但是設(shè)備必須等待ARVALID和ARREADY信號都有效才能給出RVALID信號,開始數(shù)據(jù)傳輸。26RelationshipamongchannelsR27RelationshipamongchannelsWritetransaction:1、主機必須不能夠等待設(shè)備先給出AWREADY或WREADY信號信號后再給出信號AWVALID或WVLAID。2、設(shè)備可以等待信號AWVALID或WVALID信號有效或者兩個都有效之后再給出AWREADY信號。3、設(shè)備可以等待AWVALID或WVALID信號有效或者兩個信號都有效之后再給出WREADY信號。27RelationshipamongchannelsWAttention:地址、讀、寫和寫響應(yīng)通道之間的關(guān)系是靈活的。例如,寫數(shù)據(jù)可以出現(xiàn)在接口上早于與其相關(guān)聯(lián)的寫地址。也有可能寫數(shù)據(jù)與寫地址在一個周期中出現(xiàn)。

兩種關(guān)系必須被保持:(1)讀數(shù)據(jù)必須總是跟在與其數(shù)據(jù)相關(guān)聯(lián)的地址之后。(2)寫響應(yīng)必須總是跟在與其相關(guān)聯(lián)的寫事務(wù)的最后出現(xiàn)。28Attention:地址、讀、寫和寫響應(yīng)通道之間的關(guān)系是靈活29Topic5Somethingaboutbursttransaction.29Topic5Somethingaboutburst30Attention:1、突發(fā)式讀寫的地址必須以4KB對齊。2、信號AWLEN或信號ARLEN指定每一次突發(fā)式讀寫所傳輸?shù)臄?shù)據(jù)的個數(shù)。3、ARSIZE信號或AWSIZE信號指定每一個時鐘節(jié)拍所傳輸?shù)臄?shù)據(jù)的最大位數(shù);需要注意的是任何傳輸?shù)腟IZE都不能超過數(shù)據(jù)總線的寬度。4、AXI協(xié)議定義了三種突發(fā)式讀寫的類型:固定式的突發(fā)讀寫、增值式突發(fā)讀寫、包裝式突發(fā)讀寫。用信號ARBURST或AWBURST來選擇突發(fā)式讀寫的類型30Attention:1、突發(fā)式讀寫的地址必須以4KB對齊31Burst方式1、固定式突發(fā)讀寫是指地址是固定的,每一次傳輸?shù)牡刂范疾蛔?。這樣的突發(fā)式讀寫是重復(fù)的對一個相同的位置進行存取。例如FIFO。2、增值式突發(fā)讀寫是指每一次讀寫的地址都比上一次的地址增加一個固定的值。包裝式突發(fā)讀寫跟增值式突發(fā)讀寫類似。包裝式突發(fā)讀寫的地址是包數(shù)據(jù)的低地址當(dāng)?shù)竭_一個包邊界。3、包裝式突發(fā)讀寫有兩個限制:1起始地址必須以傳輸?shù)膕ize對齊。2突發(fā)式讀寫的長度必須是2、4、8或者1631Burst方式1、固定式突發(fā)讀寫是指地址是固定的,每一32地址計算公式Start_Address主機發(fā)送的起始地址Number_Bytes每一次數(shù)據(jù)傳輸所能傳輸?shù)臄?shù)據(jù)byte的最大數(shù)量Data_Bus_Bytes數(shù)據(jù)總線上面bytelanes的數(shù)量Aligned_Address對齊版本的起始地址Burst_Length一次突發(fā)式讀寫所傳輸?shù)臄?shù)據(jù)的個數(shù)Address_N每一次突發(fā)式讀寫所傳輸?shù)牡刂窋?shù)量,范圍是2-16Wrap_Boundary包裝式突發(fā)讀寫的最低地址Lower_Byte_Lane傳輸?shù)淖畹偷刂返腷ytelaneUpper_Byte_Lane傳輸?shù)淖罡叩刂返腷ytelaneINT(x)對x進行向下取整下面是計算公式:Start_Address=ADDRNumber_Bytes=2SIZEBurst_Length=LEN+1Aligned_Address=(INT(Start_Address/Number_Bytes))xNumber_BytesAddress_1=Start_AddressAddress_N=Aligned_Address+(N–1)xNumber_BytesWrap_Boundary=(INT(Start_Address/(Number_BytesxBurst_Length)))x(Number_BytesxBurst_Length)如果有Address_N=Wrap_Boundary+(Number_BytesxBurst_Length),則后面的公式成立Address_N=Wrap_Boundary。第一次突發(fā)式讀寫:

Lower_Byte_Lane=Start_Address-(INT(Start_Address/Data_Bus_Bytes))xData_Bus_BytesUpper_Byte_Lane=Aligned_Address+(Number_Bytes-1)-(INT(Start_Address/Data_Bus_Bytes))xData_Bus_Bytes除了第一次讀寫之后的讀寫:Lower_Byte_Lane=Address_N–(INT(Address_N/Data_Bus_Bytes))xData_Bus_BytesUpper_Byte_Lane=Lower_Byte_Lane+Number_Bytes–1DATA[(8xUpper_Byte_Lane)+7:(8xLower_Byte_Lane)]。32地址計算公式Start_Address主機發(fā)送的Topic6ExclusivetransactionandLockedtransactionandsoon…33Topic6ExclusivetransactionaARCACHE[3:0]和AWCACHE[3:0]在一些情況下,信號AWACAHE可以用來確定哪個部件來提供寫響應(yīng)。如果寫事務(wù)被指定為bufferable,那么他接受來自橋或者系統(tǒng)級的cache提供的寫響應(yīng)。如果事務(wù)被指定為non-bufferable,那么寫響應(yīng)必須有最終目的源提供。34ARCACHE[3:0]和AWCACHE[3:0]在一些情況AWPROT和ARPROT正常存取或者特權(quán)存取,ARPROT[0]和AWPROT[0]安全性存取或者沒有安全性存取,ARPROT[1]和AWPROT[1]指令存取或者數(shù)據(jù)存取ARPROT[2]和AWPROT[2]35AWPROT和ARPROT正常存取或者特權(quán)存取,ARPROARLOCK[1:0]和信號AWLOCK[1:0]361、我們通過信號ARLOCK[1:0]或AWLOCK[1:0]來選擇獨占式存取,用信號RRESP[1:0]或BRESP[1:0]來指明獨占式存取的成功與否。2、主機在請求獨占式存取時,設(shè)備會返回兩個響應(yīng)分別是EXOKAY和OKAY。EXOKAY是指設(shè)備支持獨占式存取,而OKAY是指設(shè)備不支持獨占式存取。、3、如果一個設(shè)備不支持獨占式存取,可以忽略信號ARLOCK[1:0]和AWLOCK[1:0]。他必須提供OKAY響應(yīng)對正常式存取和獨占式存取。如果一個設(shè)備要支持獨占式存取則必須有硬件監(jiān)視器。4、通過信號ARLOCK[1:0]或信號AWLOCK[1:0]對事務(wù)加鎖,需要確定只允許主機存取設(shè)備區(qū)域直到一個未加鎖的事務(wù)從同一個主機完成。此處推薦鎖存取只用來支持legacydevices。5、推薦遵循下面兩天建議,但是不強制:(1)保持所有鎖事務(wù)序列都在相同的4KB地址區(qū)域內(nèi)。(2)限制用瑣事務(wù)序列對兩個事務(wù)加鎖。ARLOCK[1:0]和信號AWLOCK[1:0]361、我37RRESP[1:0]和BRESP[1:0]responseAXI協(xié)議對讀事務(wù)和寫事務(wù)都有響應(yīng)。對于讀事務(wù),讀響應(yīng)與讀數(shù)據(jù)一起發(fā)送給主機,而寫事務(wù)將寫響應(yīng)通過寫響應(yīng)通道傳送。AXI協(xié)議的響應(yīng)類型有OKAY、EXOKAY、SLVERR、DECERR。通過信號RRESP[1:0]和BRESP[1:0]來編碼響應(yīng)信號,具體如下圖:協(xié)議規(guī)定請求的需要傳輸?shù)臄?shù)據(jù)數(shù)量必須被執(zhí)行,即使有錯誤報告。在一次突發(fā)式讀寫的剩余數(shù)據(jù)不會被取消傳輸,即使有單個錯誤報告。AXI協(xié)議的四種響應(yīng)類型:正常存取成功、獨占式存取、設(shè)備錯誤、譯碼錯誤。AXI協(xié)議要求,在一個傳輸事務(wù)中的所有數(shù)據(jù)必須傳輸完成,即使有錯誤狀態(tài)發(fā)生。37RRESP[1:0]和BRESP[1:0]respon38Topic7Howtomakeaout-of-ordertransaction?38Topic7Howtomakeaout-of-39out-of-ordertransaction(1)本章描述AXI協(xié)議用事務(wù)IDtags來處理多地址和亂序傳輸。1、下面介紹5中事務(wù)IDs:AWID這個IDtag是寫地址群組信號。WID這個是寫IDtag在寫事務(wù)中,與寫數(shù)據(jù)在一起,主機傳送一個WID去匹配與地址相一致的AWID。BID這個IDtag是寫響應(yīng)事務(wù)中。設(shè)備會傳送BID去匹配與AWID和WID相一致的事務(wù)。ARID這個IDtag是讀地址群組信號。RID這個IDtag是在讀事務(wù)中。設(shè)備傳送RID去匹配與ARID相一致的事務(wù)。2、主機可以使用一個事務(wù)的ARID或者AWID段提供的附加信息排序主機的需要。事務(wù)序列規(guī)則如下:(1)從不同主機傳輸?shù)氖聞?wù)沒有先后順序限制。他們可以以任意順序完成。(2)從同一個主機傳輸?shù)牟煌琁D事務(wù),也沒有先后順序限制。他們可以以任意順序完成。39out-of-ordertransaction(1)本40out-of-ordertransaction(2)(3)相同數(shù)值的AWID寫事務(wù)數(shù)據(jù)序列必須按照順序依次寫入主機發(fā)送的地址內(nèi)。(4)相同數(shù)值的ARID讀事務(wù)數(shù)據(jù)序列必須遵循下面的順序:a.當(dāng)從相同設(shè)備讀相同的ARID時,設(shè)備必須確保讀數(shù)據(jù)按照相同的地址順序接受。b.當(dāng)從不同的設(shè)備讀相同的ARID時,接口處必須確保讀數(shù)據(jù)按照主機發(fā)送的相同的地址順序。(5)在相同的AWID和ARID的讀事務(wù)和寫事務(wù)之間沒有先后順序限制。如果主機要求有順序限制,那么必須確保第一次事務(wù)完全完成后才開始執(zhí)行第二個事務(wù)。3、當(dāng)一個主機接口與interconnect相連時,interconnect會在信號ARID、AWID、WID段添加一位,每一個主機端口都是獨一無二的。這樣做有兩個影響:(1)主機不需要去知道其他主機的ID數(shù)值,因為interconnect是ID值是唯一的,當(dāng)將主機number添加到段中。(2)在設(shè)備接口處的ID段的寬度要比主機接口處的ID段寬。對于讀數(shù)據(jù),interconnect附加一位到RID段中,用來判斷哪個主機端口讀取數(shù)據(jù)。Interconnect會移除RID段中的這一位在將RID的值送往正確的主機端口之前。40out-of-ordertransaction(2)(41Topic8Enteringthepower-downmodel41Topic8Enteringthepower-do42低功耗模式低功耗時鐘控制

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論