嵌入式CPU幾乎隨處可見,因其具有靈活性、高效能、低功耗、和通常甚低的成本。與需要將單獨的微處理器或微控制器整合到自定義硬體解決方案相比,改採嵌入式CPU的設計是理所當然。但任何類型的CPU都有其侷限,即使我們可以將演算法轉移到軟體中,演算法也潛在無限的複雜性;雖然我們仍可以編寫及執行它們,但所需的時間和功率限制則不一定能夠被接受。

這就是為什麼微處理器廠商很快地提出了硬體加速器概念──硬體功能通常可以執行需要的任務,例如浮點運算比在CPU上執行之軟體要速度快很多。這個概念很快就被採用,其他加速器開始出現,對於密碼使用法、常規運算式處理、圖形功能來說只是幾個例子。

此一概念效能顯著,但喪失了基於軟體解決方案中彈性的重要趨勢,因大部分都是以硬編碼的方式完成。這樣的加速器可用控制暫存器的方法進行有限度的調整,但若要修改錯誤或變更演算法,則必須重新設計硬體,因此相應於現場故障和不斷發展的市場需求,其代價變得無比昂貴。

我們真正想要的是兩全其美-一種兼顧演算法速度,同時仍能夠在軟體中定義演算法的機制。當然,演算法的潛在範圍是無限的,所以不太可能有一種解決方案能解決所有情況。但對於許多極常用的功能,DSP確實是一個魚與熊掌兼得的神奇解決方案。

考慮幾乎所有必須處理串流數據的操作。音訊處理中,從過濾到PDM-PCM轉換到回音消除,都有明顯的例子;或考慮有關密碼功能有SNOW和ZUC (用於LTE)等串流式加解密;訊號處理環境中有基地台與手機之間的通道估計,其目的是在於最佳化當前條件下的傳輸以達成最大的可靠性,並對接收訊號進行複雜的矩陣計算;或更廣泛地說,考慮任何可以從非常廣泛的平行性中受惠的應用程式,如AES加解密等應用。

串流運算、複雜的數學運算(矩陣、浮點)、和/或高度平行性,這些都是DSP的亮點,且必須認真考慮將其視為硬體加速器替代方案的領域。在多數情況下,DSP建置都會比硬體加速器更小,從而降低產品的單位成本。

功率方面,也許加速器將略低於DSP執行,但DSP功率仍將遠低於基於CPU的同類產品。更好的是,如果不需要同時執行多個加速器,則可以將多個加速器功能整合到單一DSP,如此就無需使用多個加速器。或者,您可以使用多核心DSP,就像使用多核心CPU一樣。

最重要的是,DSP建置就像CPU核心一樣可用C語言編程。雖然...

...完整閱讀請連結EE Times Taiwan網站