999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

OMAP-L138核間通信高吞吐量圖像處理平臺及應用

2016-11-26 08:17:51羅云宜陳奭付威威周哲馮馳
單片機與嵌入式系統應用 2016年10期
關鍵詞:系統

羅云宜,陳奭,付威威,周哲,馮馳

(1.南京理工大學電子工程與光電技術學院,南京210000;2.中國科學院蘇州生物醫學工程技術研究所)

OMAP-L138核間通信高吞吐量圖像處理平臺及應用

羅云宜1,2,陳奭2,付威威2,周哲2,馮馳1,2

(1.南京理工大學電子工程與光電技術學院,南京210000;2.中國科學院蘇州生物醫學工程技術研究所)

異構雙核芯片AMR+DSP具有強大的任務管理、人機交互和數據處理功能,為嵌入式圖像處理領域提供了一種新的架構。為了減少開發人員對底層驅動的設計,TI研發了Syslink驅動用于核間通信,包括Notify、MessageQ協議等,其中基于MessageQ的通信協議常用于核間圖像傳輸,但其占用資源較多、延遲高。本文對TI公司的達芬奇架構OMAP-L138處理器的多核通信理論進行研究,利用核間中斷寄存器和共享內存隊列存儲機制進行數據交互,實現了一種高吞吐量的圖像處理平臺。

OMAP-L138;核間通信;共享內存隊列機制設計

引 言

隨著電子技術和圖像處理技術的快速發展,數字圖像處理技術已廣泛應用于軍事、工業視覺、醫療器械、汽車和無人機等領域。實際應用中,考慮能夠運行復雜圖像處理算法和大數據量的傳輸作為圖像處理平臺穩定運行的前提,采用PC機平臺能夠很好地滿足上述條件,但存在系統過于龐大和成本較高等缺點。因此,現階段基于ARM+ DSP異構雙核的嵌入式圖像處理平臺應運而生[1-2],能夠很好滿足對系統體積、功耗和實時性要求,充分發揮了ARM的任務管理、人機交互特性和DSP的高速數據處理特性。然而在異構雙核處理中,兩核的數據通信和同步變得尤為重要,采用德州儀器(TI)官方提供的Syslink[3]工具包能夠滿足系統的需要,但存在占用資源較多、延遲高的缺點。本文對TI一款低成本、性能較高的OMAPL138芯片的核間通信理論進行研究,提出了一種基于核間中斷和共享的內存通信方法,實現了一種高吞吐量的圖像處理平臺。

1 硬件構成

OMAP-L138雙核處理器包含ARM926EJ-S和TMS320C6748內核[4]。ARM926EJ-S采用增強的32位RISC指令集,內部采用多級流水線,加快了處理器的運算速率,ARM與DSP均采用了兩級高速緩存架構,二者均可獨立操作片載外設資源。本圖像處理平臺中,ARM負責進行人機交互和流程控制,DSP負責圖像數據的接收、處理及處理結果的發送。

1.1 系統組成

圖1所示為系統組成框架圖,OMAP-L138片上系統包含ARM核心及DSP核心各一個,并包含有常用接口(RS232,I2C,SPI等),用于系統擴展。

視頻信號經VPIF接口(Video Port Inter Face)由DSP接收并進行處理,ARM與DSP雙核之間通過核間中斷和共享內存進行數據交互,然后ARM將接收到的處理結果傳輸到人機界面輸出處理結果,若系統需要,還可以將處理結果進行本地或遠程存儲。

圖1 系統框架圖

1.2 內存劃分

ARM與DSP雙核通信系統基于外部128 MB DDR,由于ARM端運行Linux系統,DSP端根據需要運行SYSBIOS實時操作系統或裸機,其運行環境和數據都存儲在DDR中,因此需要進行DDR物理地址劃分,用于Linux系統、雙核通信共享內存以及DSP,如圖2所示。

圖2 內存分配

地址0xC200 0000到0xC2FF FFFF的16 MB空間用于雙核通信,根據需要包括通信組件和共享內存;地址0xC300 0000到0xC3FF FFFF空間用于DSP,其余空間用于Linux系統。

2 軟件構成

本系統中OMAP-L138處理器ARM端搭載Linux,通過Qt開發界面及流程處理程序;DSP端采用SYSBIOS實時系統或裸機程序用于算法處理[5-6]。

2.1 ARM軟件系統

圖3 Linux體系結構

由于Linux系統可以免費獲取、可自由裁減,具有出色的任務管理和人機交互界面,已廣泛應用于服務器和嵌入式領域。圖3為Linux體系結構圖,包括內核空間和用戶空間。其中,內核空間包括系統調用、內核和平臺架構相關代碼。用戶程序通過系統調用訪問內核資源和服務,同時通過內核來執行平臺相關驅動代碼。

2.2 DSP軟件系統

2.2.1 基于Syslink核間通信

Syslink工具包是通用處理器ARM與DSP進行核間通信的驅動程序。Syslink有一套通用的API函數,從應用層虛擬了ARM與DSP之間的物理連接,降低了程序開發的復雜度。基于Syslink的軟件架構圖如圖4所示。

圖4 基于Syslink軟件結構圖

圖像處理算法運行于DSP,通過Syslink來實現ARM 和DSP之間的通信與同步。核間通信模塊Syslink為處理器間通信提供了對等的軟件協議(如Notify、MessageQ 等)。MessageQ協議基于隊列,常用來傳輸視頻數據。

圖5所示為基于MessageQ的軟件代碼流程圖。

圖5 基于MessageQ的軟件代碼流程圖

軟件設計中,定義DSP處理器ID為0,ARM處理器ID為1,分別調用MultiPro_getID()得到對方的ID,然后通過Ipc_control()、Ipc_start()和Ipc_attach()來實現ARM與DSP的連接和握手,最后調用相關MessageQ的API實現雙核通信。

2.2.2 基于高吞吐量核間通信

OMAP-L138處理器提供了核間通信的消息觸發機制,本系統采用核間中斷寄存器和共享內存機制來實現雙核間數據的收發。設定CHIPSIG(中斷寄存器)和CHIPSIG_CLR(中斷清除寄存器)的0~1位為ARM中斷,2~4位為DSP中斷,通過置位相應位來產生硬件中斷。通過編寫中斷服務程序來處理接收到的消息,以建立握手協議。圖6為通信握手協議。

圖6 通信握手協議

通信握手協議建立以后,ARM和DSP端都獲得了共享內存基地址和圖像數據大小。如圖7所示,ARM和DSP端采用隊列形式實現圖像數據傳輸,采用單變量增減方式實現隊列資源計數。為了快速實現數據的存取,本文將共享地址前12字節作為全局共享數據結構,定義如下數據結構:

圖7 圖像數據隊列結構傳輸

msgCnt為隊列資源計數器,armCnt為ARM讀指針在共享內存中讀取圖像數據偏移量,dspCnt為DSP寫指針在共享內存中存放圖像數據偏移量。例如,設置隊列資源最大為10個,當DSP存放數據在第一個位置后,msgCnt加1同時觸發ARM核,DSP讀取一組數據后并觸發DSP,msgCnt減1,相應的armCnt和dspCnt加1,當有一個達到最大值10時,相應的指針回到原點,并清零相應的地址偏移計數器。

(1)通信機制設計

通信機制如圖8所示,圖像傳感器采集的視頻信號通過DMA通道傳輸到DDR,啟動Cache機制,加速DDR與1級、2級緩存之間的數據傳輸,DSP處理完成后將數據存放到共享內存的隊列中,同時將隊列資源計數器加1,然后觸發ARM核;ARM核根據資源計數器值大小讀取數據并觸發DSP,隊列資源計數器減1。

圖8 通信機制整體框圖

(2)ARM與DSP驅動設計

ARM端Linux系統由于受到保護機制的制約,不能直接訪問實際內存地址,可以通過虛擬內存映射機制來實現物理寄存器和共享內存基地址的間接訪問。觸發DSP中斷時,先將CHIPSIG寄存器地址虛擬映射到用戶空間,然后置位CHIPSIG[2]或CHIPSIG[3]為1,最后由硬件機制觸發DSP中斷,核心代碼如下:

映射成功后的虛擬地址可以直接賦值置位核間中斷寄存器,如:*virt_addr=1<<2。ARM端以輪詢方式查詢外部核間中斷寄存器值是否置1,最后根據read()的input event事件判斷是哪個中斷位,并作出相應的操作。

通過CMD文件配置,DSP程序可以直接訪問物理地址,將DSP處理后的數據直接放到共享內存中。DSP中斷需開啟DSP中斷、全局中斷、映射中斷函數到指定中斷號以便使能中斷等操作。其中DSP接收ARM的中斷處

理函數如下:

(3)軟件工作流程

軟件流程如圖9、圖10所示,雙核握手之后開始協同運行。與人機交互相關的全局變量Process_over控制整個軟件的運行,通過核間中斷觸發來控制msgCnt值,DSP 與ARM分別根據偏移量大小存放和讀取數據。

圖9 ARM端軟件流程

圖10 DSP端軟件流程

3 實驗結果

圖11為實驗所測得的數據,可以看出,在傳輸圖像數據時,高吞吐量要比Syslink工具包中MessageQ組件節省大量的時間。在圖像為320×240×16位色分辨率時,對比Syslink與本系統實現的高速核間數據通信,其耗時相差3倍左右,隨著圖像分辨率和數據量的增加,系統延時差別逐漸減小,至1280×1024×16位色時,系統延時雖然十分接近,但仍然有接近3.7 ms左右的時差。因此,本方法實現的核間數據通信,非常適合突發式、大批次、小數據量的數據傳輸。

圖11 Syslink與高吞吐量時間延遲

結 語

為了滿足ARM與DSP核間通信數據延遲的需要,本文提出了一種自定義的核間通信方法,通過硬件中斷消息機制實現握手協議和數據傳輸協議。隨后,通過實驗對比可知,該方法比Syslink延遲要小得多,能夠滿足實時性的要求?;诤碎g觸發中斷機制和共享內存實現雙核通信,為更高端的異構芯片提供了一種方案,在工程上具有一定的應用價值。

[1]謝維波,賀文強.基于OMAPL138的視頻監控煙霧檢測系統[J].計算機工程與應用,2015,51(20):183-187.

[2]馮強,胡毅,于東,等.基于OMAP處理器的核間通信機制設計與實現[J].計算機工程,2014,40(4):281-286.

[3]Texas Instruments.Building Syslink Applications Version 2. 21.01.05,2012.

[4]Texas Instruments.OMAP-L138 DSP+ARM Processor Technical Reference Manual,2011.

[5]趙加祥.DSP系統設計和BIOS編程應用實例[M].北京:機械工業出版社,2008.

[6]劉紀紅,葉檸,尚奎,等.DSP+ARM雙核處理器OMAPL138開發入門[M].北京:清華大學出版社,2013.

羅云宜(碩士研究生),主要研究方向為嵌入式系統與圖像處理應用;陳奭(助理研究員),主要研究方向為嵌入式系統與圖像算法研究;馮馳(碩士研究生),主要研究方向為嵌入式軟件與光學設計。

High-throughput Capacity Image-processing Platform Based on OMAP-Ll38 Inter-core Communication

Luo Yunyi1,2,Chen Shi2,Fu Weiwei2,Zhou Zhe2,Feng Chi1,2

(1.School of Electronic Engineering and Optoelectronic Technology,Nanjing University Science and Technology,Nanjing 210000,China; 2.Suzhou Institute of Biomedical Engineering and Technology Chinese Academy of Science)

The heterogeneous dual-core chip AMR+DSP has a powerful function of task management,human-computer interaction and data processing,which also provides a new framework for embedded image processing.In order to reduce the underlying driven design for developers,TI has developed Syslink driver for inter-core communications,including Notify,MessageQ protocols and so on,among which the communication protocol based on MessageQ is commonly used in inter-core image transmission design,but it has resource intensive and high latency.In the paper,we focus on the multi-core communication theory of OMAP-L138 processor which has the Da Vinci framework,taking advantage of the inter-core interrupt registers and the shared memory queue storage mechanism to realize the data interaction,and finally a high-throughput image processing platform is achieved.

OMAP-L138;inter-core communication;shared memory queue mechanism

TP317

A

(責任編輯:薛士然2016-05-09)

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 久久综合成人| 无码区日韩专区免费系列| A级全黄试看30分钟小视频| 老司机久久99久久精品播放| 5388国产亚洲欧美在线观看| 一区二区三区在线不卡免费| 青青草原国产精品啪啪视频| 国产草草影院18成年视频| 伦精品一区二区三区视频| 国产色伊人| yjizz视频最新网站在线| 成人久久精品一区二区三区| 波多野结衣无码中文字幕在线观看一区二区 | 欧美日韩专区| 国产成人精品综合| 99热这里只有成人精品国产| 国产精品浪潮Av| 久久国产精品娇妻素人| 亚洲三级电影在线播放 | a毛片在线免费观看| 欧美三级不卡在线观看视频| 青青久久91| 午夜欧美理论2019理论| 国内嫩模私拍精品视频| 国产不卡一级毛片视频| 国产精品亚洲一区二区在线观看| 亚洲系列中文字幕一区二区| 久草国产在线观看| 一本大道香蕉久中文在线播放| 国产H片无码不卡在线视频| 1024国产在线| 找国产毛片看| 国产午夜精品鲁丝片| 五月婷婷综合网| 99r在线精品视频在线播放| 在线欧美一区| 狠狠色香婷婷久久亚洲精品| 国产不卡网| www.国产福利| 114级毛片免费观看| 亚洲人在线| 伊人激情综合网| 香蕉视频国产精品人| 老司国产精品视频91| 欧美伦理一区| 免费亚洲成人| 美女内射视频WWW网站午夜 | 中文字幕久久亚洲一区| 国产精品九九视频| 一级毛片在线直接观看| 国产视频你懂得| 亚洲国产日韩在线观看| 免费看美女毛片| 福利在线一区| 国产麻豆精品在线观看| 国内精品久久人妻无码大片高| 国产精品免费p区| 99热这里只有精品2| 青青青视频91在线 | 一本色道久久88亚洲综合| 一本色道久久88综合日韩精品| 国产本道久久一区二区三区| A级毛片高清免费视频就| 四虎影视8848永久精品| 成人午夜视频免费看欧美| 一本一本大道香蕉久在线播放| 黑人巨大精品欧美一区二区区| 日韩一区精品视频一区二区| 国产一区二区三区在线精品专区 | 国产成人无码综合亚洲日韩不卡| 国产精品任我爽爆在线播放6080 | 国产欧美网站| 国内精品久久九九国产精品| 九色在线观看视频| 欧美色图久久| 在线日本国产成人免费的| 青青青伊人色综合久久| 欧美亚洲综合免费精品高清在线观看| 亚洲欧美另类日本| 色综合热无码热国产| 91麻豆国产在线| 成人毛片免费观看|