久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡

你的位置:首頁 > 測試測量 > 正文

“焦點訪談”——雙核實時系統的架構方法解析

發布時間:2015-03-18 責任編輯:echolady

【導讀】嵌入式的不斷發展和成熟,使得越來越多的工業設備控制系統采用嵌入式系統設計。而業界內對于工業設備控制的最大要求和特點就是對系統實時性要求較高。因此,要想有效的滿足并提高系統實時性也成為研究的熱點話題。

1.引言


傳統的控制系統單核處理器架構是主流,除了通過提升處理器主頻來提高系統的響應速度,還通過使用搶占式實時操作系統,引入多線程,改進系統任務調度策略等軟件方法來進一步提高系統性能。但隨著應用不斷復雜,控制精度要求不斷提高,有限的系統資源成為控制系統性能提升的最大瓶頸。

針對單CPU架構的局限性,多處理器系統的研究應用逐漸增多。隨著雙核架構應用的不斷推廣,同時雙核微處理器技術逐漸成熟,如何設計穩定高效的系統軟件架構成為當前研究的重點。本文以F28M35雙核系統為例,介紹了一種以IPC通信機制為核心,基于共享內存的雙核軟件架構方法。

2.雙核間通信的系統結構

完成雙核間的數據通信,除了數據傳輸介質——共享內存外,還需要系統提供一套雙核間交互的信號機制。通常該信號機制中同時包括中斷信號和非中斷信號。利用該信號機制,結合共享內存,可設計出各種靈活的通信方式。

從通信信號的角度,通信方式可分為輪詢方式和中斷方式。由于輪詢方式使內核處于忙等的狀態,因此應盡量避免使用,該方式多用于雙核之間事件需嚴格按照一定的順序執行的情況,例如系統啟動時雙核之間的初始化交互。

從攜帶數據量的角度講,雙核之間可僅僅利用信號機制完成通信,雙方協定默認的操作;另外,也是大部分時候的通信方式,雙方通過共享內存交換數據,該方式在設計時,將共享內存劃分為兩種屬性的內存區,分別用于兩個方向的數據傳遞。一種內存允許一個內核進行讀寫操作,而允許另外一個內核進行只讀操作,另一種則方向相反。例如,A內核欲向B內核發送數據時,先將數據寫入A核空間內的共享內存區,然后向B核發送信號,B核收到信號后從該方向的共享內存區將數據取出,并回復A核,完成一次數據通信。

通信協議和通信接口封裝是雙核通信應該重點考慮的環節。簡單的數據通信,雙方可以直接發送數據,默認雙方已經知道數據的含義以及數據應該放置的內存地址。但是隨著系統逐漸復雜,代碼量逐漸增加,無協議的數據通信給編程和理解都帶來很大問題,降低系統的可擴展性能。在設計中雙核通信可以采用和系統外設相同的通信協議,例如串口通信使用的Modbus協議,這樣可以重復利用協議解析函數,同時也可提高可移植性。另外可根據實際需要自行定義適用的通信協議,或者將通用的通信協議做適當的修改以更適應共享內存大數據量的數據通信。關于通信接口的軟件封裝通常定義數據發送函數、數據接收函數、協議解析函數等,原則是接口應盡量精簡,最大程度降低雙核間的耦合度。

3.雙核間的數據共享機制


雙核間實現數據共享主要有兩種策略,一種是將共享數據直接存儲于共享內存中,雙核均可對其進行操作。該方法關鍵要解決對共享內存互斥訪問的問題。關于雙口RAM互斥訪問的方法大致有兩種:

1)硬件判優,系統通過存儲器沖突仲裁單元向兩個內核提供共享內存訪問沖突標志,當雙核同時對相同地址的RAM進行存取時,仲裁單元促發相應忙信號,設計中可利用該信號插入等待時間,避免訪問沖突。

2)信號量機制,系統提供獨立于雙核的信號量管理單元。該方式又叫令牌判優方式,每個令牌可對應指定地址,指定長度的共享內存段。雙核按照協定的規則交替獲得令牌,進而操作相應的共享內存段。當雙核同時申請同一個令牌時,信號量管理單元裁定誰先占用。設計中可通過在訪問內存前先申請對應的令牌實現雙核對共享內存區的互斥訪問。

另一種實現數據共享的策略是在雙核各自本地定義相同的數據作為共享數據,按照寫后及時更新的原則,利用中斷方式通過雙核間的數據通信實現數據同步。這種方法適用于共享數據滿足一定條件時,即該共享數據對于其中一個內核是只讀的,否則,由于雙核獨立運行,運行進度幾乎沒有制約,若出現雙核均改寫共享數據的話,無法保證數據的有效性。

4. 雙核任務分配


任務分配的原則在于充分利用雙核資源,最大限度縮小系統響應時間。例如在運動控制領域利用ARM+DSP雙核處理器構架控制系統,在ARM核中實現系統邏輯控制,在DSP核中實現運動控制輸出,ARM核控制運動過程,通過命令的形式驅動DSP核實現具體的運動動作。另外在注塑機控制實例中,利用ARM核實現注塑過程控制,而在DSP端完成注塑機位置和溫度的智能控制算法,實現系統優化處理。

5. F28M35雙核處理器的軟件架構設計


5.1 F28M35雙核存儲結構

TI的全新Concerto-F28M35微控制器采用了一種雙子系統架構,其中包含一個TI C28x內核與一個ARM Cortex-M3內核。這種混合架構將業內用于控制和主機通信功能的最佳技術融入到單個控制器中,而該控制器可提供維持實時控制環路所需的性能、效率及可靠性,并具備低延遲通信所需的快速響應能力。
[page]
如圖1所示,在F28M35中包含兩類共享內存,一類是MTOC-message RAM(MTOCMSGRAM)和CTOM-message RAM(CTOMMSGRAM),大小都為2K,其特點是一個內核對其有讀寫的權限,而另外一個內核僅有只讀權限。例如,M3內核可以讀寫MTOCMSGRAM內存,而C28內核只能對MTOCMSGRAM進行讀操作。另外一類共享內存包含8個內存塊(S0-S7),大小均為8K。該類內存可以被劃分到任意內核,系統通過控制寄存器MSxMSEL設置該類內存的屬性,每塊內存對應該寄存器中的一位,通過設置相應位來設置相應內存塊的歸屬權。例如,若S0被設置為歸屬M3內核,則M3內核可讀寫該內存,而C28內核只能對其進行讀操作。同時需要注意的是,控制寄存器MSxMSEL只能在M3內核中進行設置。

“焦點訪談”——雙核實時系統的架構方法解析
圖1.F28M35x系統結構

5.2 IPC機制

在雙核技術中,雙方之間的通信是核心。在F28M35x體系結構中,基于IPC信號和IPC中斷實現IPC通信(Inter ProcessorCommunications)機制。其工作原理如圖2所示。

“焦點訪談”——雙核實時系統的架構方法解析
圖2.IPC機制原理

該處理器在每個方向(MTOC/CTOM)上定義了32個IPC信號,前4個信號促發時可以附加中斷功能。處理器通過一套寄存器組實現IPC信號的操作。如圖所示,每個內核通過自己存儲空間內的一套寄存器實現IPC功能,每個寄存器32位,每一位分別代表一個IPC信號,第0-3位同時可設置為IPC中斷。以C28內核為例,寄存器組分別包括:

1)CTOMIPCSET,用于向M3核發送IPC信號或者IPC中斷。該寄存器置位時,同時將CTOMIPCFLG和CTOMIPCSTS寄存器相應位置為1。

2)CTOMIPCCLR,用于清除C28到M3方向上的IPC信號或IPC中斷標志。該寄存器置位時,同時將CTOMIPCFLG和CTOMIPCSTS寄存器相應位清零。

3)CTOMIPCFLG,該寄存器為只讀寄存器,用于顯示C28核到M3核方向上當前IPC信號的狀態。該寄存器和M3存儲空間中的CTOMIPCSTS寄存器在物理上是同一個寄存器。

4)MTOCIPCSTS,作用和CTOMIPCFLG類似,同樣是只讀的,只是表征方向相反,用于顯示M3核到C28核當前IPC信號的狀態。同樣,它和M3存儲空間中的MTOCIPCFLG寄存器在物理上是同一個寄存器。

5)MTOCIPCACK,該寄存器置位時,同時將MTOCIPCFLG和MTOCIPCSTS寄存器相應位清零。當C28內核收到M3發送來的IPC信號或者IPC中斷時,利用該寄存器發送確認信息,完成二者的握手。

形象的說,雙核之間維護了兩條相互獨立的全雙工通道,每條通道包含了一個方向的信號發送(SET)和反向的信號確認(ACK)。同時雙方可以隨時讀取兩個方向下的當前IPC狀態(FLG/STS)。最終實現雙核間的IPC交互機制。

此外,F28M35還提供了一套IPC消息寄存器,分別是MTOC Message Registers和CTOM Message Registers,分別在每個內核空間對應4個寄存器。結合IPC信號和IPC中斷實現雙核之間的便捷通信。以M3內核空間為例說明,如表1所示,該寄存器組包括命令寄存器,地址寄存器,寫數據寄存器,讀數據寄存器。

“焦點訪談”——雙核實時系統的架構方法解析
 
[page]  
5.3 雙核芯片的軟件系統

以系統控制塊數據結構為核心的雙核系統的架構方法。即設計了一種數據結構,稱作系統控制塊(System Control Block,SCB)。將系統所有相關控制對象均映射到系統控制塊中,每個任務對系統的操作均可轉化為對SCB的讀寫操作,這樣系統可以很方便的實現模塊化,定義SCB操作管理模塊即可實現多任務對系統操作的統一管理。關于SCB與實際控制對象的物理關聯可以通過對應的驅動模塊實現。

“焦點訪談”——雙核實時系統的架構方法解析
圖3.基于SCB的系統架構

圖3中描述了以SCB為核心的系統簡易邏輯架構,SCB不僅體現控制器與外部控制對象之間關系,例如,映射人機界面操作、PC機監控過程以及各種輸入輸出信號等;同時,SCB還包含了雙核之間實現系統控制的內部數據映射。SCB的基本結構如圖4所示,主要包括A核外設映射區、B核外設映射區、系統參數區、系統狀態區等。

“焦點訪談”——雙核實時系統的架構方法解析
圖4.SCB結構示意圖

SCB是整個系統的體現,從處理器內部分析,雙核通過維護同一個SCB實現對系統的協調控制。利用雙核之間的通信,當其中一個內核的SCB被寫操作時,立即向另一內核發送更新命令,實時完成雙核間的數據同步。以A內核IO資源映射為例說明SCB的同步,過程如圖5所示。

“焦點訪談”——雙核實時系統的架構方法解析
圖5.SCB同步示例

利用上小結中介紹的IPC信號機制,以及多種形式的存儲空間,可以靈活設計出多種雙核通信方式。如下所述:

1)僅利用IPC信號或者IPC中斷方式,多用于完成拓撲序事件執行,或者系統啟動時初始化握手交互。

2)IPC信號/中斷+IPC消息寄存器組方式,用于小數據量的通信。命令寄存器中的命令完全由軟件定義,用戶可設計不同的命令來完成不同的數據操作。多用于對字節型內存的讀寫操作。

3)IPC信號/中斷+MSGRAM/S0-S7方式,S0-S7可分別分配給任意內核,該方式可以實現大數據量的核間通信,同時利用通用或者自定義的通信協議,可提高系統的擴展能力及可移植性。

如圖6所示,是基于F28M35雙核處理器設計實現的注塑機主控制器,采用本文介紹的方法實現了主從式軟件架構,ARM核作為主核完成與上位機的通信任務和系統邏輯過程的控制任務,利用DSP高速的計算能力作為從核完成注塑機位置控制和溫度控制智能算法的執行任務,雙核通過SCB的映射實現相互的協調。新的控制器替代了原有的以600MHZ主頻處理器為核心的控制系統,較好了完成了注塑機的控制任務。

“焦點訪談”——雙核實時系統的架構方法解析
圖6.雙核系統在注塑機中的應用

在以后的工作中,從核智能控制算法仍有優化的空間,系統性能仍可進一步改善。另外,除了主從模式,將研究雙主模式,實現更靈活有效的系統架構,并完成雙端獨立的在線監控和程序下載等功能,進一步降低軟件開發難度。

相關閱讀:

技術前線報道:提高遙測信號處理器測試性的方案
首曝三星14nm旗艦處理器,疑為蘋果A9
5.2寸屏+64位處理器,三星Galaxy A7如何?

要采購工業設備么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索

關閉

?

關閉

久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡
精品久久福利| 国产在线一区不卡| 精精国产xxxx视频在线野外| 国产一区二区三区日韩精品| 国产高清亚洲| 久久尤物视频| 精品99久久| 精品视频一区二区三区在线观看| 日韩高清在线观看一区二区| 亚洲精品黄色| 在线亚洲免费| 亚洲一区二区成人| 亚洲一区欧美激情| 六月丁香综合| 日韩中文字幕麻豆| 免费美女久久99| 亚洲精品乱码日韩| 日韩精品五月天| 日本免费一区二区视频| 欧美日韩a区| 麻豆精品久久久| 91亚洲国产高清| 91亚洲自偷观看高清| 中文在线а√在线8| 99精品电影| 美女网站一区| 视频在线在亚洲| 日本麻豆一区二区三区视频| 国产精品一国产精品| 久久精品亚洲| 精品午夜久久| 亚洲精品永久免费视频| 天堂资源在线亚洲| 亚洲精品系列| 久久国产99| 欧美日韩午夜电影网| 国产极品嫩模在线观看91精品| 黄色精品视频| 亚洲国内精品| 亚洲精品少妇| 国产精品美女午夜爽爽| 亚洲黄色中文字幕| 麻豆精品新av中文字幕| 亚洲成av在线| 国产精品嫩草99av在线| 三级久久三级久久久| 久久av导航| 99tv成人| 日韩福利视频网| 日本美女一区| 亚洲精品综合| 不卡专区在线| 视频一区视频二区中文字幕| 国产精品免费99久久久| 四虎884aa成人精品最新| 麻豆精品蜜桃| 久久最新视频| 久久精品网址| 午夜久久黄色| 国产精品视频一区视频二区| 日韩另类视频| 欧美一区在线观看视频| 日韩不卡免费高清视频| 亚洲aa在线| 97精品在线| 在线精品福利| 国产a亚洲精品| 蜜桃久久久久久久| 精品国产99| 蜜桃视频一区二区| 精品视频在线观看网站| 亚洲精华国产欧美| 国产精品jk白丝蜜臀av小说| 日韩在线观看| 青青在线精品| 99国产精品免费视频观看| 日本精品另类| 香蕉久久99| 免费日韩一区二区三区| 一本色道久久精品| 国产成人在线中文字幕| 一本一道久久a久久| 欧美丰满日韩| 婷婷综合国产| 午夜精品婷婷| 久久久久久久欧美精品| 久久天堂av| 久久亚洲人体| 日韩欧美高清一区二区三区| 激情综合自拍| 中文av在线全新| 国产精品久久久久久久久久白浆 | 欧美日韩一区二区综合| 国产日韩一区| 免费不卡中文字幕在线| 久久国产精品免费一区二区三区| 国产精品巨作av| 免费在线观看一区二区三区| 精品三级av| 日韩在线观看中文字幕| 成人三级高清视频在线看| 视频一区视频二区中文| jizzjizz中国精品麻豆| 亚洲一二av| 99久久精品国产亚洲精品| 国产视频一区免费看| 亚洲www啪成人一区二区| 欧美日韩一区二区三区不卡视频| 美女毛片一区二区三区四区| 久久香蕉精品香蕉| 日韩在线成人| 99亚洲视频| 日韩久久电影| 国产精品一区免费在线| 精品国产三区在线| 久久午夜精品一区二区| 色欧美自拍视频| 尤物网精品视频| 欧美日韩免费观看一区=区三区| 风间由美中文字幕在线看视频国产欧美| 亚洲婷婷丁香| 黄色成人91| 久久久久免费av| 日本欧美国产| 97久久亚洲| 欧美特黄一级| 久久国产影院| 国产成人黄色| 国产精品久久久久久久免费软件| 蜜臀av在线播放一区二区三区| 日韩欧美精品| 精品国产一区二区三区性色av| 亚洲不卡视频| 国产精品美女久久久| 成人午夜在线| 在线天堂中文资源最新版| 国产精品99久久免费| 亚洲日韩中文字幕一区| 午夜久久久久| 激情综合自拍| 亚洲伦乱视频| 肉色欧美久久久久久久免费看| 国产精品蜜芽在线观看| 精品网站aaa| 精品中文字幕一区二区三区 | 亚洲精品在线二区| 亚洲欧美日韩视频二区| 欧美va天堂| 欧美成人精品三级网站| 麻豆视频在线看| 黄毛片在线观看| 日韩国产一区二区| 国产91在线播放精品| 亚洲婷婷免费| 99久久99视频只有精品| 亚洲成人精品| 国产精品久久久久久久久妇女| 麻豆国产精品一区二区三区| 欧美日韩一区二区国产| 亚洲一级大片| 亚洲精品动态| 日韩国产欧美一区二区三区| 日韩精品欧美成人高清一区二区| 日韩有吗在线观看| 91午夜精品| 国产精品日韩精品中文字幕| 国产精品亲子伦av一区二区三区| 久久精品欧洲| 欧美精品高清| 久久一区二区三区喷水| 欧美一区二区性| 亚洲四虎影院| 亚洲一级影院| 亚洲欧美日韩专区| 亚洲欧美日本视频在线观看| 国产日韩欧美一区| 精品国产麻豆| 久久国产亚洲| 天使萌一区二区三区免费观看| 中文字幕av亚洲精品一部二部 | 亚洲色图国产| 国产欧美一区二区色老头| 国产精品成人**免费视频| 涩涩涩久久久成人精品| 青草av.久久免费一区| 欧美精品91| 国产欧美一区二区三区精品酒店 | 欧美精品1区| sm久久捆绑调教精品一区| 久久成人精品| 欧美另类中文字幕| 成人在线黄色| 黄色av日韩| 国产美女久久| 青青久久av| 婷婷精品在线| 成人午夜亚洲| 丝袜av一区| 亚洲a成人v| 美女视频黄免费的久久|