《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > SoC處理單元性能評估及功能劃分
SoC處理單元性能評估及功能劃分
EEworld
摘要: 有多個處理單元的SoC器件目前是產(chǎn)品設(shè)計鏈上的重要一環(huán),。本文綜合各種因素評估了不同處理單元的優(yōu)缺點,,并通過衛(wèi)星無線電接收器的設(shè)計實例幫助開發(fā)人員理解SoC所涉及處理任務(wù)之間的復雜平衡并有效掌握系統(tǒng)功能的劃分。
關(guān)鍵詞: SOC RISC DSP FPGA 功能劃分
Abstract:
Key words :

  有多個處理單元的SoC器件目前是產(chǎn)品設(shè)計鏈上的重要一環(huán),。本文綜合各種因素評估了不同處理單元的優(yōu)缺點,,并通過衛(wèi)星無線電接收器的設(shè)計實例幫助開發(fā)人員理解SoC所涉及處理任務(wù)之間的復雜平衡并有效掌握系統(tǒng)功能的劃分,。

  在準備開發(fā)目前越來越復雜的便攜式系統(tǒng)時,設(shè)計人員面對的最大挑戰(zhàn)之一就是采用什么樣的處理器組合來實現(xiàn)最優(yōu)化的“3P”指標,,即系統(tǒng)性能最高,、價格最低及功耗最小。系統(tǒng)級芯片(SoC)集成使得今日的創(chuàng)新成為可能,,但它常常涉及把不同的處理器單元結(jié)合在單一的器件之上,。這些單元可以包括可編程功能,,如通用微處理器(通常是RISC)、DSP,、FPGA和加速器,,而且還可能有固定功能的加速器。由于這些單元都可以專用器件形式獲得,,因此對設(shè)計人員來說,,在它們之中進行全面的性能評估,進而決定以最有效的方式組合使用它們,,有可能是一項相當困難的工作,。

  處理單元的優(yōu)缺點分析

  在實現(xiàn)多內(nèi)核處理器之前,在RISC和DSP之間進行挑選曾相對較為簡單,。如果大量的系統(tǒng)處理工作和數(shù)據(jù)有關(guān),,那么采用RISC,即使信號處理會受些損失,。如果大量的處理工作和信號有關(guān),,那么采用DSP,并力爭獲得差強人意的控制和

 
數(shù)據(jù)處理性能,。但對多內(nèi)核集成而言,,考慮到要添加其它處理單元,這類選擇變得非常復雜,。正確的答案不完全是技術(shù)性的,,而是要基于優(yōu)化靈活性、便于使用,、成本,、功耗和性能多方面來考慮。

 

  各種處理單元的基本優(yōu)點和缺點概括在表1之中,。通用RISC處理器專為數(shù)據(jù)處理而優(yōu)化,,很容易使用而且很靈活,其成本,、功耗和性能都可接受,。DSP為實時信號而優(yōu)化,它們處理實時信號所需的功耗和成本通常比RISC低,,不過,,它們常常更難使用。

  可編程加速器或半可編程處理器可設(shè)計用來數(shù)據(jù)或信號處理,。一個例子就是用于通信系統(tǒng)的Viterbi處理器,,對Viterbi編碼或解碼來說它是完全可編程的,但對任何其它功能來說毫無用處,。就其功能而言,,一個可編程加速器的成本,、功耗總是比RISC或DSP要低,而性能要高,,但從本質(zhì)上講,,它稍欠靈活、更難使用,,而且對缺陷(bug)的容忍度低,,不容易更改。

處理器單元優(yōu)缺點對比  

表1處理器單元優(yōu)缺點對比

  用于數(shù)據(jù)或信號處理的固定功能加速器(一般為ASIC)只能完成一種特定的功能,。固定功能加速器總是一種成本最低,、功耗最低、性能最高的解決方案,,但它們?nèi)鄙偃魏纬潭鹊撵`活性,。一旦ASIC設(shè)計出來并調(diào)試通過,到了系統(tǒng)開發(fā)人員手里,,它會變得非常易用,。但是其設(shè)計和調(diào)試與可編程器件相比非常困難,而且以后不可能進行再編程,。

  劃分系統(tǒng)處理功能

  盡管在各種處理單元之中做決定是一件復雜的工作,,但有一個可行的選擇程序,,就是把各種系統(tǒng)功能劃分到各種處理單元之中,。把一個系統(tǒng)的處理需求映射到一個現(xiàn)有的多內(nèi)核SoC之中,與通過映射處理需求創(chuàng)建一個新多內(nèi)核SoC有所不同,。然而,,其過程是類似的。

  為了把該系統(tǒng)映射到一個現(xiàn)有的SoC之中,,系統(tǒng)設(shè)計人員必須確定該系統(tǒng)方案以及它所針對市場的幾個細節(jié),。在這當中包括產(chǎn)品特性和算法組件,以及添加特性和解決bug的策略,,不管是在設(shè)計期間還是在整個產(chǎn)品壽命期內(nèi),。一旦這些細節(jié)確定,系統(tǒng)功能必須確定成信號或數(shù)據(jù)處理任務(wù),,隨后再分成三個性質(zhì)不同的類,。

  明確并將保持不變的功能:這些功能包括離散余弦變換(DCT)或快速傅立葉變換(FFT),它們將不會再有任何變化,,而且已問世足夠長的時間,,因此所有bug都已消除。這些功能使用固定功能加速器或最優(yōu)化,。

關(guān)鍵字:SoC RISC DSP FPGA 功能劃分 性能評估

 

  明確但會有一定變化的功能:這些功能有一定程度的靈活性,。例如,,盡管單一的FFT可以由一個ASIC來處理,但將多個相關(guān)的FFT重新組合成一系列實現(xiàn)方案的能力會需要一種可編程的加速器,。

  不確定且可變化的新功能:滿足這些需求的處理器單元是可編程的RISC,、DSP和FPGA。雖然設(shè)計人員也許不知道這些不確定或新特性是什么,,但有必要測度應(yīng)對預計需求所需的大致性能和存儲器,。

  當系統(tǒng)功能已經(jīng)被分解成這三大類別時,系統(tǒng)可以映射到一個現(xiàn)有的SoC器件,。整個程序分成以下步驟:

  1.確定最終系統(tǒng)完整的特性和功能清單,。如果可能的話,包括對新特性和功能的估計,,它們可以在采用該SoC產(chǎn)品的壽命期內(nèi)隨時加入,。

  2.把該特性和功能清單分成數(shù)據(jù)處理部分和信號處理部分。

  3.把每個清單(數(shù)據(jù)和信號)中的功能分成三類:a.在產(chǎn)品的壽命期內(nèi)明確并將保持不變的功能,;b.在產(chǎn)品的壽命期內(nèi)明確但允許某些變化的功能,;c.不確定且可變化的新功能。

  4.估計每個清單中每項所需的性能,。

  5.估計每個清單中每項所需的存儲器,。

  6.分配:a.適當?shù)拿鞔_功能給可行的固定功能加速器;b.其余的明確功能給可行的可編程加速器,;c.不確定且可變化的新功能給適當?shù)目删幊唐骷?RISC用于數(shù)據(jù)處理,,DSP用于信號處理)。

  最后一步的目標是盡可能多地利用加速器,,并把靈活性和裕度留給可編程單元處理,。顯然,對明確的,、可有一些變化的和不確定功能的分配在一定程度上取決于相關(guān)SoC能提供什么硬件,。把一個系統(tǒng)映射到一個新的SoC,而不是一個現(xiàn)有的SoC,,有可能會引起較長的產(chǎn)品規(guī)劃時間,,所以該設(shè)計人員必須解決的問題將經(jīng)常和一系列基于該新器件的產(chǎn)品有關(guān)。設(shè)計人員需要確定哪些算法組件更好理解,,沒有缺陷也不需要改變,;還需要確定在整個設(shè)計期間或產(chǎn)品系列中,系統(tǒng)的哪些部分有可能改變,。在涉及到功能分配(步驟6)時,,一個新方案的設(shè)計人員可以非常肯定地將明確功能(步驟3的a)分配給固定功能單元,可有些變化的功能(步驟3的b)分配給可編程加速器,,把不確定的,、變化的新功能(步驟3的c分配給處理數(shù)據(jù)的RISC和處理信號的DSP)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。