<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式多媒體多核應用軟件設計框架

嵌入式多媒體多核應用軟件設計框架

作者: 時(shí)間:2013-10-21 來(lái)源:網(wǎng)絡(luò ) 收藏


圖4顯示了宏塊數據訪(fǎng)問(wèn)模式的,可以在兩個(gè)處理器核之間交替傳送宏塊。L2存儲器具有多個(gè)片段緩沖器,獨立的MDMA通道將宏塊從每個(gè)處理器核的L2存儲器傳輸到L1存儲器。L1存儲器也有多個(gè)緩神器,用以避免DMA與處理器核訪(fǎng)問(wèn)總線(xiàn)的沖突。與行處理框架類(lèi)似,該框架中處理器核A控制輸入視頻接口,處理器核B控制輸出接口,計數信號量實(shí)現兩個(gè)處理器核之間的同步。這種框架的應用實(shí)例包括邊緣檢測、
JPEG/MPEG編碼/解碼算法和卷積編碼。

圖4 在雙核宏塊數據訪(fǎng)問(wèn)模式中,L2存儲器具有多個(gè)片段緩沖器,獨立的MDMA通道將宏塊從每個(gè)處理器核的L2存儲器傳輸到L1存儲器。

在幀級處理模式中,外部存儲器存儲關(guān)聯(lián)幀。根據數據幀(宏塊或行)之間的關(guān)聯(lián)性粒度,系統將數據幀的子塊傳送到L1或L2存儲器。圖5顯示了幀級處理框架的。在這種情況下,假定某個(gè)宏塊在多個(gè)幀之間存在關(guān)聯(lián),則系統將數據幀的宏塊傳送至L1存儲器。與其它框架類(lèi)似,該框架中處理器核A控制輸入視頻接口,處理器核B控制輸出接口,通過(guò)計數信號量實(shí)現兩個(gè)處理器核之間的同步。這種框架的應用實(shí)例包括運動(dòng)檢測算法。

圖5 在幀級處理流程中,外部的存儲器存儲獨立幀

在GOP級處理模式中,每個(gè)處理器核處理多個(gè)相繼的數據幀。幀級處理框架與GOP級處理框架之間的區別在于,前者是在幀內完成空間劃分,后者則通過(guò)時(shí)間劃分(幀序列)實(shí)現并行處理。對于GOP數據訪(fǎng)問(wèn)模式,關(guān)聯(lián)性存在于一組數據幀內部,兩組幀之間數據不存在關(guān)聯(lián)性。因此,處理器核可以獨立處理每一組幀。圖6顯示了這種框架的數據流。與幀級處理框架類(lèi)似,系統可以將幀數據塊傳送至處理器核的L1存儲器。為了有效利用外部存儲器的交錯存儲庫結構,系統在處理器核間均衡地分配存儲庫。ADSP-BF561的每一個(gè)外部存儲庫都支持多達四個(gè)內部SDRAM存儲庫。這種框架的應用實(shí)例包括MPEG-2/4等編碼/解碼算法。

圖6 在GOP級數據訪(fǎng)問(wèn)模式中,關(guān)聯(lián)性存在于一組數據幀內部,兩組幀之間數據不存在關(guān)聯(lián)性。

在實(shí)際應用中,系統可能使用多種算法處理數據流,而每種算法都可能用到不同的數據存取模式。這種情況下,可以針對特殊應用將幾種框架結合起來(lái)使用。為利用,可以采用流水線(xiàn)處理來(lái)實(shí)現并行操作,但這種并行操作是不對稱(chēng)的,因為不同處理器核上可能執行不同的計算。然而,系統可以分配一些其它的任務(wù)到處理器核的空閑指令上,在保持靈活性的同時(shí)達到處理器核的工作量平衡。圖7顯示了行級處理和宏塊處理相結合的框架的。

圖7 行級處理和宏塊處理相結合的框架的數據流模型

在某些其他應用中,多個(gè)數據塊之間也會(huì )存在數據關(guān)聯(lián)性,數據存取模式仍然是可預測的,但它擴展到了一個(gè)宏塊或一行的粒度之外。例如,運動(dòng)窗口搜索就可能使用幾個(gè)相鄰的宏塊。數據存取模式仍然是可預測的,但系統在算法的多次迭代之間要訪(fǎng)問(wèn)多個(gè)數據塊。這種情況下,可以對軟件框架進(jìn)行修正,以實(shí)現有效的并行操作。例如,如果多行間存在關(guān)聯(lián),可以通過(guò)調整行處理框架,將N個(gè)連續行的幀片段傳送到每個(gè)處理器核的L1存儲器。利用類(lèi)似的方法,還可以對宏塊處理框架進(jìn)行擴展,以便將多個(gè)宏塊從L2存儲器送入內部L1存儲器。
軟件框架分析

為了對雙核處理的軟件框架進(jìn)行評估,ADI公司利用數據流模型率先開(kāi)發(fā)了一款單核應用軟件,然后與雙核方案進(jìn)行對比。Blackfin獨有的系統優(yōu)化技術(shù)也能有效地利用可用帶寬。為了簡(jiǎn)化分析,ADI公司只比較了基本框架的處理速度,而沒(méi)有考慮幾種架構的組合。

所謂周期,是指為了滿(mǎn)足NTSC(美國國家電視系統委員會(huì ))視頻輸入的實(shí)時(shí)約束條件而用于處理數據流的處理器核計算周期。對于一個(gè)以600MHz速度運行的處理器核,為了滿(mǎn)足實(shí)時(shí)約束條件,處理每一像素可用的總周期數為44周期/像素。任何對數據流的處理器核訪(fǎng)問(wèn)都只需要一個(gè)單核周期,因為所有數據訪(fǎng)問(wèn)都是對L1存儲器的訪(fǎng)問(wèn)。所示的周期數不包括中斷延遲。

如表1所示,雙核框架將所有框架的處理速度有效提高了兩倍。表中還說(shuō)明了每個(gè)處理器核的L1存儲器使用量,以及各種框架需要的共享存儲器空間。這些框架使用ADI公司的DD/SSL(器件驅動(dòng)/系統服務(wù)庫)實(shí)現對外設和數據的管理。

表1:框架說(shuō)明

存儲器相關(guān)文章:存儲器原理



上一頁(yè) 1 2 下一頁(yè)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>