SoC處理單元性能評(píng)估及功能劃分
明確但會(huì)有一定變化的功能:這些功能有一定程度的靈活性。例如,盡管單一的FFT可以由一個(gè)ASIC來(lái)處理,但將多個(gè)相關(guān)的FFT重新組合成一系列實(shí)現(xiàn)方案的能力會(huì)需要一種可編程的加速器。
不確定且可變化的新功能:滿足這些需求的處理器單元是可編程的RISC、DSP和FPGA。雖然設(shè)計(jì)人員也許不知道這些不確定或新特性是什么,但有必要測(cè)度應(yīng)對(duì)預(yù)計(jì)需求所需的大致性能和存儲(chǔ)器。
當(dāng)系統(tǒng)功能已經(jīng)被分解成這三大類別時(shí),系統(tǒng)可以映射到一個(gè)現(xiàn)有的SoC器件。整個(gè)程序分成以下步驟:
1.確定最終系統(tǒng)完整的特性和功能清單。如果可能的話,包括對(duì)新特性和功能的估計(jì),它們可以在采用該SoC產(chǎn)品的壽命期內(nèi)隨時(shí)加入。
2.把該特性和功能清單分成數(shù)據(jù)處理部分和信號(hào)處理部分。
3.把每個(gè)清單(數(shù)據(jù)和信號(hào))中的功能分成三類:a.在產(chǎn)品的壽命期內(nèi)明確并將保持不變的功能;b.在產(chǎn)品的壽命期內(nèi)明確但允許某些變化的功能;c.不確定且可變化的新功能。
4.估計(jì)每個(gè)清單中每項(xiàng)所需的性能。
5.估計(jì)每個(gè)清單中每項(xiàng)所需的存儲(chǔ)器。
6.分配:a.適當(dāng)?shù)拿鞔_功能給可行的固定功能加速器;b.其余的明確功能給可行的可編程加速器;c.不確定且可變化的新功能給適當(dāng)?shù)目删幊唐骷?RISC用于數(shù)據(jù)處理,DSP用于信號(hào)處理)。
最后一步的目標(biāo)是盡可能多地利用加速器,并把靈活性和裕度留給可編程單元處理。顯然,對(duì)明確的、可有一些變化的和不確定功能的分配在一定程度上取決于相關(guān)SoC能提供什么硬件。把一個(gè)系統(tǒng)映射到一個(gè)新的SoC,而不是一個(gè)現(xiàn)有的SoC,有可能會(huì)引起較長(zhǎng)的產(chǎn)品規(guī)劃時(shí)間,所以該設(shè)計(jì)人員必須解決的問(wèn)題將經(jīng)常和一系列基于該新器件的產(chǎn)品有關(guān)。設(shè)計(jì)人員需要確定哪些算法組件更好理解,沒(méi)有缺陷也不需要改變;還需要確定在整個(gè)設(shè)計(jì)期間或產(chǎn)品系列中,系統(tǒng)的哪些部分有可能改變。在涉及到功能分配(步驟6)時(shí),一個(gè)新方案的設(shè)計(jì)人員可以非常肯定地將明確功能(步驟3的a)分配給固定功能單元,可有些變化的功能(步驟3的b)分配給可編程加速器,把不確定的、變化的新功能(步驟3的c分配給處理數(shù)據(jù)的RISC和處理信號(hào)的DSP)。
評(píng)論