Global Sources
電子工程專輯
 
電子工程專輯 > 嵌入式技術
 
 
嵌入式技術  

三種嵌入式多核心設計模式的比較分析

上網時間: 2008年02月29日     打印版  Bookmark and Share  字型大小:  

關鍵字:SMP  多核心  晶片上柵格 

合併是嵌入式領域長期存在的一個趨勢,它使得性能更優良的嵌入式設備採用更少的零組件,降低了成本及功耗預算。這一趨勢的最新進展,是在單一封裝內提供更多處理器核心的多核心嵌入式微處理器,而且與同等的單核心處理器相較,這種處理器具有低功耗和低成本的優點。

使用多處理器核心要求軟、硬體團隊之間進行更多的系統級設計合作。基於這種理念,下面是對採用目前開發工具和硬體直接實現多核心系統的三個簡單模型的概述。這些多核心設計模式不是一個為了嚴格定義一個系統的剛性模型,而是針對思考和探討關於系統實現宏偉藍圖的初始點,以及規定了一套通用術語以便軟、硬體團隊都能設計出一個多核心系統結構。

三種設計模式

1. 平面模式

第一種模式是平面模式(Planar Pattern),這個名稱源於劃分一個通訊系統的處理任務的‘控制平面’和‘數據平面’。它是一個廣泛的和不同類型的多核心設計實例,這種多核心設計統稱為非對稱多處理技術(簡稱‘AMP’或‘ASMP’)。

如果採用平面模式,系統需要劃分成具有顯著不同處理要求的多個自包含模組。在其標準的通訊和媒體處理形式中,該模式的優點是在一個專用的DSP或網路處理器上執行需要進行大量數據處理的演算法,同時在一個通用的CPU上保持其它系統軟體的正常執行。這種特殊性意味著平面模式系統通常在專門構建的硬體上實現。由於許多平面硬體設備僅有一個通用CPU核心,因此傳統的單核心工具、作業系統和設計方法都可用來設計和除錯系統的通用部份。

2. 晶片上柵格模式

晶片上柵格(Grid-on-Chip,或簡稱‘柵格’)模式是平面模式的演繹,包含由許多完全獨立的和網路互連的節點組成的任意多處理器系統。柵格是辦公電腦網路的晶片上版本,它是共享相鄰實體鏈路但彼此獨立的許多網路處理節點。一些文獻將該類型系統稱之為分散式多處理系統,且仍將其歸類到AMP/ASMP系統總類別當中。

使用柵格模式的關鍵要求首先要分割系統,然後找到一個合適的節點間通訊系統。(儘管更高階的柵格系統能夠在執行期間對其自身進行重新配置,但柵格模式系統的設計者需要認真思考系統功能到處理節點的分配問題。)除分割之外,柵格系統具有三種設計模式中最少的高階設計約束。一旦系統被分割,每個獨立節點的設計與實現就會如同一個獨立系統一樣進行。柵格系統可在專用硬體上實現,但另一個普遍的選擇是透過採用SMP硬體以及將共享的儲存空間劃分成針對每個核心的片段來設立柵格節點。

柵格模式系統與其它設計相較具有幾個突出的優點。首先,它們可以很容易與過去的軟體整合在一起,過去的系統甚至可以在柵格範圍內,於它們自己的節點上繼續完整地執行。此外,柵格系統在判決能力(determinism)和除錯能力方面具有明顯的優勢。柵格模式系統設計鬆散聯結意味著在資源競爭方面不會有多少意外情況,由於熟悉的單核心除錯方法可以用於每個孤立的系統節點,所以除錯相對簡單。柵格模式系統的分割特性使其更為強大,但這也是其缺陷的根源所在,因為分割使得它難於再分配資源,這將導致柵格系統在適應將來的和不可預期的要求方面缺乏靈活性。

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

3. SMP模式

在一個對稱多處理(簡稱‘SMP’)系統中,單一映像(single-image)作業系統是執行在兩個或多個共享儲存空間的處理核心的頂層,這些處理器核心實質上是相同的。正如一台多核心桌上型電腦一樣,SMP模式系統可以在一個處理器核心組基礎上動態地均衡任務。重新分配處理能力以匹配目前任務的這種能力是SMP系統的一大主要優點,這也使得SMP系統成為了三種模式中最靈活和適應性最強的模式。利用目前SMP即時作業系統,這種靈活性可以不需要在犧牲任何性能的條件下實現判決或即時響應。

一個SMP模式系統要求具備兩樣條件:一個是對稱的共享記憶體的多核心處理器平台,另一個是具有SMP功能的作業系統。今天,眾多的處理器系列都支援SMP功能,也有多種管道可以得到SMP作業系統。SMP系統的兩大優勢是開發人員比較熟悉,以及可以快速啟動。理論上來說,開發人員可輕易啟動具有SMP功能的作業系統,並移植現有的應用設計,並快速地利用多核心硬體性能。

現實的情況基本上是如此,但是有幾個問題需要牢記。第一個值得關注的問題是硬即時性要求,一個支援SMP功能的即時作業系統(RTOS)不會犧牲即時性能,但是,當使用SMP時,不具有硬即時性功能的作業系統將缺少判決性以及缺少更高階的和更可變的中斷反應時間。對一個良好的SMP RTOS而言無需擔心此點,但需牢記的是,通用的作業系統在SMP硬體上和它執行在單處理器系統上比較也許會有不同的表現。

第二個潛在問題是資源競爭。SMP系統的優點之一是很多資源都是共享的,這使得SMP系統更具靈活性和適應性。然而,該優點也是一項缺點,由於所有的資源是共享的,將會由於資源競爭產生無法預期的性能改變。在每個系統中這是不會產生的,但如果開發人員想要系統按其設計性能執行的話,還是要將此點牢記於心。

圖2:柵格模式系統。
圖2:柵格模式系統。

設計實現與除錯

正如嵌入式開發一樣,在硬體設計過程中需要首先考慮軟體的開發和除錯。確保設計具有晶片上除錯(OCD)的功能將會大幅加速系統開發進程,而且為編程和分析系統提供了一套可靠的工具。在平面設計模式和柵格設計模式中,單個OCD埠可讓開發人員對系統的單個核心進行除錯,就好像他們擁有一個更為傳統的單核心系統一樣。

即時追蹤埠是另外一個除錯特性,這一特性隨著系統中核心數目的不斷成長而變得越來越重要。即時追蹤提供了一個標準方法去觀察核心之間的相互作用,而不會破壞對再現問題起關鍵作用的感應時序。如果多核心設備包含有一個或多個即時追蹤埠,這將會使的系統開發更容易。

有一個常常被提及但並不符合實際的說法:儘管許多開發人員成功採用了這三種設計模式,但是軟體開發工具並不是針對多核心應用設計。現在,已經有支援SMP功能的即時作業系統提供,且可以為開發人員提供不損耗即時判決的靈活的SMP模式。對於使用平面模式和柵格模式的設計來說,開發人員可以充分利用現有熟悉的、經過驗證的單核心設計工具和方法。多核心設計可使系統變得更為複雜,但是已開發出來的工具和方法可以為開發人員在管理多核心硬體的複雜性、實現其強大功能及成本等優勢方面提供助力。

圖3:SMP系統實例。
圖3:SMP系統實例。

作者:

Anderson MacKay

硬體除錯/追蹤探測工程經理

Green Hills軟體公司




投票數:   加入我的最愛
我來評論 - 三種嵌入式多核心設計模式的比較分析
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首