您好,登錄后才能下訂單哦!
這篇文章主要介紹“AXI4總線中Outstanding概念是什么”,在日常操作中,相信很多人在AXI4總線中Outstanding概念是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”AXI4總線中Outstanding概念是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
AXI4總線規范中,提到了一個Outstanding的概念,那么該如何理解呢?我們首先給出一個基本的請求-響應模型,如下圖所示。
下圖中,Master端向Slave端發出讀請求,Slave端接收請求后進行處理,待處理完成后將數據返回給Master。
下面結合上面的請求-響應模型來介紹Outstanding的概念,從字面意思上,Outstanding表示正在進行的、未完成的意思,形象地說就是 “在路上的” 意思。
先介紹最簡單的情況,即Slave端Outstanding為1,那么上圖中的請求-響應模型工作過程如下所示:
Mater讀請求0 → Slave返回數據0 → Mater讀請求1 → Slave返回數據1 → Mater讀請求2 → Slave返回數據2 → ......
而如果Slave端的Outstanding為N時(N>1),那么Master端可以在Slave不返回讀數據的情況下,連續發出N個請求。假如在這期間Slave端返回了m個數據,那么Master端還可以接著發m個請求。形象點說,就是Master端 "在路上" 的請求最多為N個。
如下圖所示,Slave端包含一個深度為8的Buffer用來緩存請求命令,該Slave的Outstanding為8,對于該Slave來說,即使一個命令都沒有處理,也可以緩存8個命令。那么對應的Master端就可以連續發出8個請求,如果這期間Slave沒有返回數據,那么Master端則不能再發出新的請求。如果這期間Slave端從Buffer中讀取了m個請求命令進行處理后將數據返回給Master,這樣Buffer中就又有了新的空間可以緩存命令,也就是說Master端可以繼續發送新的請求命令。
如果outstanding能力為N>1的話,則:
1)讀操作:可以連續發N個讀地址命令,這期間如果讀數據沒有返回,則需要等待讀數據返回,如果有讀數據返回,則返回了幾個,那么仍然可以接著發幾個。也就是說,“在路上” 的讀命令(或者讀數據)最多可以是N。多說一點,可以看出,如果數據返回得比較慢,那么IP需要等待,效率就會比較低,因此,為了提高效率,有必要提高outstanding能力,以彌補”路上“(總線)引入的延時。但是也不能無限制地發,否則有可能會引起總線擁塞,把其他IP給堵住。下圖為一個outstanding讀的時序圖例子。
2)寫操作:可以連續發出N組寫地址(寫數據)命令,這期間如果寫響應沒有返回,則必須等待寫響應返回才能接著發寫地址(寫數據)命令,如果有寫響應返回,則返回了幾個,那么仍然可以接著發幾組。也就是說,“在路上” 的寫響應最多可以是N。
到此,關于“AXI4總線中Outstanding概念是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。