【導(dǎo)讀】“通用處理器”這一術(shù)語一直被廣泛用于描述可運(yùn)行各類軟件工作負(fù)載的CPU。在現(xiàn)代基于Arm架構(gòu)的系統(tǒng)級芯片(SoC)領(lǐng)域,這一稱謂仍被廣泛使用,但隨著系統(tǒng)復(fù)雜度不斷提升,我們有必要追問:這類器件在實(shí)際應(yīng)用中,究竟有多“通用”?
盡管基于Arm架構(gòu)的SoC在軟件層面具備靈活性,但其實(shí)際性能表現(xiàn)很大程度上依賴于固定功能的硬件模塊。除了CPU之外,還集成了數(shù)字信號處理器(DSP)、神經(jīng)網(wǎng)絡(luò)處理器(NPU)、圖形處理器(GPU)及其他加速器,各自被打造為專門處理人工智能推理、音頻處理或圖像處理等特定工作負(fù)載。由此構(gòu)建的系統(tǒng)并非由某一種靈活的計算資源主導(dǎo),而是由一系列專用組件構(gòu)成,且每個組件均針對特定任務(wù)深度優(yōu)化。

固定功能的得與失
這種設(shè)計方法能夠提升效率,但也帶來了關(guān)鍵的利弊與得失。
固定功能硬件在處理工作負(fù)載時,能顯著降低功耗、提升性能,但其適配能力存在天然局限。一旦流片完成,其硬件功能便基本固化。當(dāng)負(fù)載迭代、新算法涌現(xiàn)時,這些模塊可能不再準(zhǔn)確適配需求,迫使開發(fā)者遷就硬件限制,而非讓硬件適配應(yīng)用場景。
在邊緣AI和物理AI等快速迭代領(lǐng)域,這種靈活性缺失的問題愈發(fā)凸顯。
靈活性的假象
依托其強(qiáng)大的軟件生態(tài)系統(tǒng),現(xiàn)代SoC往往看似靈活。操作系統(tǒng)、開發(fā)框架與各類函數(shù)工具庫提供多層抽象,可簡化開發(fā)流程,并帶來一定的可移植性。
然而,在實(shí)際應(yīng)用中,要實(shí)現(xiàn)理想的性能,開發(fā)者通常需要借助供應(yīng)商的專屬工具與應(yīng)用程序接口(API),去定向適配特定加速器。工作負(fù)載必須精準(zhǔn)映射到現(xiàn)有硬件上,而各類硬件均有其專屬約束與編程模型,這意味著靈活性往往受限于任務(wù)與芯片的匹配度。
隨著工作負(fù)載不斷變化,這種局限性會愈發(fā)明顯。如果某項任務(wù)無法順暢地映射到現(xiàn)有加速器上,便會退回至CPU,這往往導(dǎo)致延遲更高、功耗增加,且難以滿足實(shí)時性要求。
時序至關(guān)重要之際
與此同時,這類系統(tǒng)大多都依賴于共享資源與時間片調(diào)度,在加載負(fù)載時易出現(xiàn)時序波動。
對于與物理世界交互的應(yīng)用來說,如音頻處理、電機(jī)控制或傳感器反饋,這種波動不僅影響性能,而且更關(guān)乎功能。穩(wěn)定滿足時序要求,與原始計算能力同等重要,并且系統(tǒng)設(shè)計必須兼顧可預(yù)測性以及靈活性。
重新定義“通用”
不斷演進(jìn)的工作負(fù)載疊加實(shí)時性約束,促使我們重新思考“通用”的真正含義。
真正的通用系統(tǒng)并非由其集成的加速器數(shù)量來定義,而是取決于它能否適配不斷變化的需求,且不受固定功能硬件的束縛。這一轉(zhuǎn)變將重心轉(zhuǎn)向靈活、軟件定義的計算架構(gòu),既能并行處理多任務(wù),又能保障時序可預(yù)測性。
可適配的芯片
XMOS公司的XCORE?架構(gòu)與XMOS生成式SoC(GenSoC)平臺提供了一種截然不同的系統(tǒng)設(shè)計思路。
GenSoC允許開發(fā)者去生成自己的專屬SoC,從對接外部系統(tǒng)的輸入輸出(I/O)接口,到DSP、AI及控制處理單元,所有這些功能都集成于單顆芯片中。其架構(gòu)由并行處理單元構(gòu)成,這意味著它可同時執(zhí)行多項任務(wù)且互不干擾,而且每次都能穩(wěn)定、高效、可預(yù)測地完成處理。
這徹底改變了系統(tǒng)的設(shè)計模式。開發(fā)者無需再根據(jù)固定功能選型芯片,而是可以構(gòu)建完全匹配需求的系統(tǒng),并隨著需求的迭代能夠持續(xù)靈活匹配。
突破固定功能局限
隨著邊緣AI與物理AI系統(tǒng)持續(xù)演進(jìn),工作負(fù)載將變得更復(fù)雜、集成度更高、時序敏感性更強(qiáng)。在此背景下,通用計算需要被重新定義,它并非專用模塊的集合,而是可隨應(yīng)用同步演進(jìn)的靈活基石。
對芯片而言,這意味著要擺脫固定功能設(shè)計,轉(zhuǎn)向軟件定義的、高確定性的且原生并行的架構(gòu)。



