通過分布式處理提升處理器效率
在剛剛過去的數(shù)年內(nèi),我們見證了多處理系統(tǒng)日漸成為主流,事實上大多數(shù)現(xiàn)代個人計算的CPU均采用了對稱多處理系統(tǒng)(SMP),其中,相同處理器的多個實現(xiàn)例程分擔(dān)運(yùn)行在PC上的應(yīng)用程序負(fù)荷。SMP目前已相當(dāng)常見,但在嵌入式計算中,向多處理的轉(zhuǎn)移趨勢并不常見。然而,新的嵌入式設(shè)計技術(shù)為工程師提供了相當(dāng)?shù)淖杂啥?,能夠在?shù)字子系統(tǒng)上智能化地分配處理功能。在本文中,研究了一個使用Cypress半導(dǎo)體公司PSoC 3和PSoC 5架構(gòu)的分布式處理技術(shù)示例,該架構(gòu)由一個主CPU(在本例中為8051或ARM Cortex M3)、一個DMA引擎、以及通用數(shù)字模塊(UDB)陣列構(gòu)成。UDB可高效用作微處理器陣列。通過在這類子系統(tǒng)上分配處理功能,減少計算復(fù)雜程度和處理負(fù)荷,工程師能夠提升整個系統(tǒng)的效率。
本文引用地址:http://www.ex-cimer.com/article/152160.htm將處理功能分解到多個功能塊上具有很多優(yōu)點(diǎn),最大的優(yōu)點(diǎn)是降低了實際功耗。通過降低CPU在處理MIPS方面的負(fù)荷,只計算簡單的函數(shù),如服務(wù)中斷,能夠以較低的頻率運(yùn)行應(yīng)用程序,這是因為,除了應(yīng)用程序的所有函數(shù)外,CPU無需在不太復(fù)雜的函數(shù)上耗費(fèi)指令周期。這樣,就能從兩個方面降低整個應(yīng)用的功耗。第一個優(yōu)點(diǎn)顯而易見,降低CPU時鐘,隨著時鐘速度的降低,實際功率呈線性下降。第二個優(yōu)點(diǎn)有些容易被忽視,但同樣重要,CPU具有的邏輯門約是UDB的10倍以上,通過將處理功能從主CPU卸載到微處理器上,可釋放大量用于完成處理功能的邏輯門,從而進(jìn)一步顯著改善實際功耗。
除了顯著降低應(yīng)用程序的實際功耗外,分布式處理還具有另一項優(yōu)點(diǎn),由于CPU從更平凡的處理負(fù)擔(dān)中解脫出來,能夠?qū)⑵銶IPS更多地用在可更好發(fā)揮CPU特性的功能上,用于具有更高計算強(qiáng)度的函數(shù)上,如乘除指令。
為了理解將處理功能分解在架構(gòu)上的方式,我們將分析常見的嵌入式應(yīng)用,如無刷直流電機(jī)控制。首先我們深入實質(zhì),了解PSoC 3和PSoC 5數(shù)字子系統(tǒng),以便理解其能力。
PSoC 3和PSoC 5器件公用平臺架構(gòu),這意味著在兩個系列中,基本硬件是相同的。PSoC3和5平臺架構(gòu)由四個主要功能塊構(gòu)成,它們是:
CPU子系統(tǒng):首先是CPU子系統(tǒng),它包含主CPU(8051或Cortex M3)以及所有支撐IP,包括中斷控制器,調(diào)試硬件,以及DMA控制器。其他系統(tǒng)功能也包含在CPU子系統(tǒng)中,如計時,電源管理,以及系統(tǒng)存儲器。通過CPU與DMA引擎的結(jié)合,可為我們提供實現(xiàn)分布式處理功能所需的兩個關(guān)鍵部件。
數(shù)字子系統(tǒng):數(shù)字子系統(tǒng)是PSoC 3和PSoC 5系列架構(gòu)的另一重要部分,使用它,能夠?qū)崿F(xiàn)分布式處理系統(tǒng)。PSoC 3和PSoC 5中的數(shù)字子系統(tǒng)主要由可靈活編程的通用數(shù)字模塊(UDB)陣列構(gòu)成。正如從圖X中所見到的,UDB硬件包含數(shù)據(jù)路徑元素,它本質(zhì)上是8位微處理器,能夠執(zhí)行標(biāo)準(zhǔn)的處理功能,如移位、加和比較。數(shù)據(jù)路徑元素(圖XX)還與PLD單元相結(jié)合,可用于實現(xiàn)定制的邏輯功能,甚至能夠查詢表以找出可用作參考的數(shù)據(jù)路徑元素。這些UDB可用于實現(xiàn)很多外圍標(biāo)準(zhǔn)功能,如PWM、定時器和SPI,它們也能用于實現(xiàn)定制的外圍功能。正因為這種靈活性,PSoC能夠?qū)崿F(xiàn)分布式處理功能。
圖1
評論