<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í)間:2012-02-15 來(lái)源:網(wǎng)絡(luò ) 收藏

使用多處理器要求軟、硬件團隊之間進(jìn)行更多的系統級合作?;谶@種理念,下面是對采用當前開(kāi)發(fā)工具和硬件直接實(shí)現多系統的三個(gè)簡(jiǎn)單模型的概述。這些多模式不是一個(gè)為了嚴格定義一個(gè)系統的剛性模型,而是針對思考和探討關(guān)于系統實(shí)現宏偉藍圖的初始點(diǎn),以及規定了一套通用術(shù)語(yǔ)以便軟、硬件團隊都能出一個(gè)多內核系統結構。

本文引用地址:http://dyxdggzs.com/article/149675.htm

三種設計模式

1. 平面模式

第一種模式是平面模式(Planar Pattern),這個(gè)名稱(chēng)源于劃分一個(gè)通信系統的處理任務(wù)的“控制平面”和“數據平面”。它是一個(gè)廣泛的和類(lèi)型的多內核設計實(shí)例,這種多內核設計統稱(chēng)為非對稱(chēng)多處理技術(shù)(簡(jiǎn)稱(chēng)“AMP”或“ASMP”)。

如果采用平面模式,系統需要劃分成具有顯著(zhù)處理要求的多個(gè)自包含模塊。在其標準的通信和媒體處理形式中,該模式的優(yōu)點(diǎn)是在一個(gè)專(zhuān)用的DSP或網(wǎng)絡(luò )處理器上運行需要進(jìn)行大量數據處理的算法,同時(shí)在一個(gè)通用的CPU上保持其它系統軟件的正常運行。這種特殊性意味著(zhù)平面模式系統通常在專(zhuān)門(mén)構件的硬件上實(shí)現。由于許多平面硬件設備僅有一個(gè)通用CPU內核,因此傳統的單內核工具、操作系統和設計方法都可用來(lái)設計和調試系統的通用部分。

2. 片上柵格模式

片上柵格(Grid-on-Chip,或簡(jiǎn)稱(chēng)“柵格”)模式是平面模式的演繹,包含由許多完全獨立的和網(wǎng)絡(luò )互連的節點(diǎn)組成的任意多處理器系統。柵格是辦公計算機網(wǎng)絡(luò )的片上版本,它是共享相鄰物理鏈路但彼此獨立的許多網(wǎng)絡(luò )處理節點(diǎn)。一些文獻將該類(lèi)型系統稱(chēng)之為分布式多處理系統,且仍將其歸類(lèi)到AMP/ASMP系統總類(lèi)別當中。

使用柵格模式的關(guān)鍵要求是首先要分割系統,然后找到一個(gè)合適的節點(diǎn)間通信系統。(盡管更高級的柵格系統能夠在運行期間對其自身進(jìn)行重新配置,但柵格模式系統的設計者需要認真思考系統功能到處理節點(diǎn)的分配問(wèn)題。)除分割之外,柵格系統具有三種設計模式中最少的高級設計約束。一旦系統被分割,每個(gè)獨立節點(diǎn)的設計與實(shí)現就會(huì )如同一個(gè)獨立系統一樣進(jìn)行。柵格系統可在專(zhuān)用硬件上實(shí)現,但另一個(gè)普遍的選擇是通過(guò)采用SMP硬件以及將共享的存儲空間劃分成針對每個(gè)內核的片段來(lái)建立柵格節點(diǎn)。

柵格模式系統與其它設計相比具有幾個(gè)突出的優(yōu)點(diǎn)。首先,它們可以很容易與過(guò)去的軟件整合在一起,過(guò)去的系統甚至可以在柵格范圍內它們自己的節點(diǎn)上繼續完整地運行。此外,柵格系統在判決能力(determinism)和調試能力方面具有明顯的優(yōu)勢。柵格模式系統設計的松散聯(lián)結意味著(zhù)在資源競爭方面不會(huì )有多少意外情況,由于熟悉的單內核調試方法可以用于每個(gè)孤立的系統節點(diǎn),所以調試相對簡(jiǎn)單。柵格模式系統的分割特性使其更為強大,但這也是其缺陷的根源所在,因為分割使得它難于再分配資源,這將導致柵格系統在適應將來(lái)的和不可預期的要求方面缺乏靈活性。

圖1:針對圖像處理的平面模式。

圖2:柵格模式系統。

3. SMP模式

在一個(gè)對稱(chēng)多處理(簡(jiǎn)稱(chēng)“SMP”)系統中,單一映像(single-image)操作系統是運行在兩個(gè)或多個(gè)共享存儲空間的處理內核的頂層,這些處理器內核實(shí)質(zhì)上是相同的。正如一臺多內核桌面計算機一樣,SMP模式系統可以在一個(gè)處理器內核組基礎上動(dòng)態(tài)地均衡任務(wù)。重新分配處理能力以匹配當前任務(wù)的這種能力是SMP系統的一大主要優(yōu)點(diǎn),這也使得SMP系統成為了三種模式中最靈活和適應性最強的模式。利用當今SMP實(shí)時(shí)操作系統,這種靈活性可以不需要在犧牲任何性能的條件下實(shí)現判決或實(shí)時(shí)響應。

圖3:SMP系統實(shí)例。

一個(gè)SMP模式系統要求具備兩樣條件:一個(gè)是對稱(chēng)的共享存儲器的多內核處理器平臺,另一個(gè)是具有SMP功能的操作系統。今天眾多的處理器系列都支持SMP功能,也有多種渠道可以得到SMP操作系統。SMP系統的兩個(gè)更為突出的優(yōu)點(diǎn)是開(kāi)發(fā)人員熟悉,以及可以快速啟動(dòng)。理論上來(lái)說(shuō),開(kāi)發(fā)人員可以較為容易地啟動(dòng)具有SMP功能的操作系統,并將現有的應用設計進(jìn)行移植,開(kāi)發(fā)人員可以快速地利用多內核硬件的性能。

現實(shí)的情況基本如此,但是有幾個(gè)問(wèn)題需要牢記。第一個(gè)值得關(guān)注的問(wèn)題是硬實(shí)時(shí)性要求,一個(gè)支持SMP功能的實(shí)時(shí)操作系統(RTOS)不會(huì )犧牲實(shí)時(shí)性能,但是,當使用SMP時(shí),不具有硬實(shí)時(shí)性功能的操作系統將缺少判決性以及缺少更高級的和更可變的中斷反應時(shí)間。對一個(gè)良好的SMP RTOS而言無(wú)需擔心此點(diǎn),但需牢記的是,通用的操作系統在SMP硬件上和它運行在單處理器系統上也許會(huì )有的表現。

第二個(gè)潛在問(wèn)題是資源競爭。SMP系統的一個(gè)突出優(yōu)點(diǎn)是很多資源都是共享的,這使得SMP系統更具有靈活性和適應性。然而,該優(yōu)點(diǎn)也是一個(gè)缺點(diǎn),由于所有的資源是共享的,將會(huì )由于資源競爭產(chǎn)生無(wú)法預期的性能改變。在每個(gè)系統中這是不會(huì )發(fā)生的,但如果開(kāi)發(fā)人員想要系統按其設計的性能運行的話(huà),還是要將此點(diǎn)牢記于心。

設計實(shí)現與調試

正如開(kāi)發(fā)一樣,在硬件設計的過(guò)程中需要首先考慮軟件的開(kāi)發(fā)和調試。確保設計具有片上調試(OCD)的功能將會(huì )極大地加快系統開(kāi)發(fā)進(jìn)程,而且為編程和系統提供了一套可靠的工具。在平面設計模式和柵格設計模式中,單個(gè)OCD端口可讓開(kāi)發(fā)人員對系統的單個(gè)內核進(jìn)行調試,就好像他們擁有一個(gè)更為傳統的單內核系統一樣。

實(shí)時(shí)跟蹤端口是另外一個(gè)調試特性,這一特性隨著(zhù)系統中內核數目的不斷增長(cháng)而變得越來(lái)越重要。實(shí)時(shí)跟蹤提供了一個(gè)標準方法去觀(guān)察內核之間的相互作用,而不會(huì )破壞對再現問(wèn)題起關(guān)鍵作用的敏感時(shí)序。如果多內核設備包含有一個(gè)或多個(gè)實(shí)時(shí)跟蹤端口,這將會(huì )使的系統開(kāi)發(fā)更容易。

有一個(gè)常常被提及但并不符合實(shí)際的說(shuō)法:盡管許多開(kāi)發(fā)人員成功采用了這三種設計模式,但是軟件開(kāi)發(fā)工具并不是針對多內核應用設計的?,F在,已經(jīng)有支持SMP功能的實(shí)時(shí)操作系統提供,且可以為開(kāi)發(fā)人員提供不損耗實(shí)時(shí)判決的靈活的SMP模式。對于使用平面模式和柵格模式的設計來(lái)說(shuō),開(kāi)發(fā)人員可以充分利用現有熟悉的、經(jīng)過(guò)驗證的單內核設計工具和方法。多內核設計可使系統變得更為復雜,但是已開(kāi)發(fā)出來(lái)的工具和方法可以為開(kāi)發(fā)人員在管理多內核硬件的復雜性、實(shí)現其強大的功能及成本等方面助上一臂之力。

總結

合并是領(lǐng)域長(cháng)期存在的一個(gè)趨勢,它使得性能更優(yōu)良的設備采用更少的元器件,從而降低了成本及功耗預算。這一趨勢的最新進(jìn)展是在單個(gè)封裝內提供多個(gè)處理器內核的多內核嵌入式微處理器的增加,而且與同等的單內核處理器相比具有低功耗和低成本的優(yōu)點(diǎn)。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


關(guān)鍵詞: 內核 設計 嵌入式 不同 分析 比較

評論


相關(guān)推薦

技術(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>