展望未來(lái) 多核DSP技術(shù)不僅僅是小把戲
“多核DSP”也許對(duì)大多數(shù)人而言并不是個(gè)陌生的概念,早在幾年前,為了提升性能、降低功耗,在處理器中增加內(nèi)核已經(jīng)成為計(jì)算和嵌入式處理器產(chǎn)業(yè)的標(biāo)準(zhǔn)作法。
然而,正當(dāng)多內(nèi)核技術(shù)在處理器領(lǐng)域發(fā)展得紅紅火火之時(shí),多核DSP似乎顯得不瘟不火,還僅僅停留在無(wú)線基礎(chǔ)設(shè)施應(yīng)用上。
多核DSP之困
正如多核技術(shù)被計(jì)算應(yīng)用廣泛采納一樣:以更低的功率提供更高的性能驅(qū)使DSP技術(shù)必須“一次又一次打破性能藩籬”。“要么是單板面積受限,要么是處理能力受限,越來(lái)越多的客戶需要更高的處理平臺(tái),”德州儀器中國(guó)區(qū)DSP業(yè)務(wù)開(kāi)發(fā)經(jīng)理郝曉鵬對(duì)電子工程世界如是說(shuō)。
用戶的需求是多種多樣的。在通信基礎(chǔ)設(shè)施的信號(hào)處理中,無(wú)論是語(yǔ)音用戶、數(shù)據(jù)用戶還是多媒體用戶,所需的是單位通道成本低、功耗?。欢鴮?duì)于視頻檢測(cè)、醫(yī)療影像等應(yīng)用,越來(lái)越復(fù)雜的二維、三維甚至四維的圖像處理,需要并行化的系統(tǒng)并能夠運(yùn)行復(fù)雜的算法;另外,在高性能、高強(qiáng)度終端設(shè)備中,包括醫(yī)療中的核磁共振,實(shí)時(shí)的現(xiàn)場(chǎng)通信,這些設(shè)備需要在極短的時(shí)間完成信號(hào)處理分析,這時(shí)對(duì)性能的要求是非常高的。
而目前幾百到1GHz的單核處理器遠(yuǎn)遠(yuǎn)不能滿足這種需求。
與此同時(shí),單核通過(guò)提升硅工藝而大幅提升性能的理論,伴隨著漏電流的發(fā)現(xiàn),已經(jīng)不再奏效。同時(shí),主頻從最初的幾百兆赫茲到1.2G赫茲甚至更高,功耗也隨之提升,單板功耗已不可控。功耗的提升,為整個(gè)系統(tǒng)設(shè)計(jì)帶來(lái)前所未有的復(fù)雜度。此時(shí)多核的誕生似乎是理所當(dāng)然。
然而,核越多面臨的挑戰(zhàn)也越大:首先,功耗,這是多核環(huán)境下在系統(tǒng)硬件設(shè)計(jì)上要考慮的一個(gè)重要問(wèn)題,過(guò)高的功耗會(huì)造成散熱困難進(jìn)而影響系統(tǒng)的穩(wěn)定性。同時(shí),把更多的處理核心集成到一起需要更精細(xì)的制造工藝,例如45納米甚至更窄的線寬,成本必然會(huì)提升。程序優(yōu)化會(huì)更加越困難,而這些優(yōu)化工作往往不是開(kāi)發(fā)系統(tǒng)和編譯器能完成的,而是需要大量的高素質(zhì)人才來(lái)完成。
隨之而來(lái)的,是開(kāi)發(fā)人員必須學(xué)會(huì)如何劃分設(shè)計(jì)以便高效地使用多核DSP。“許多人希望編譯器能完成分割任務(wù)。但這不是一蹴而就的事。為了用好這些器件,我們需要學(xué)會(huì)多角度的思考。” TI公司多核解決方案部經(jīng)理Ray Simar表示。
性能與功耗的決斗
然而,以上的種種挑戰(zhàn)絲毫不會(huì)影響DSP廠商的腳步,也正是看到了種種需求與挑戰(zhàn),德州儀器 (TI)日前推出了一款在單一裸片上集成了三個(gè) 1 GHz 的 TMS320C64x+™ 內(nèi)核的DSP處理器——TMS320C6474。大多數(shù)人心中不免有些疑問(wèn):雙核、四核、八核,似乎這些產(chǎn)品已經(jīng)見(jiàn)怪不怪,甚至TI本身也已經(jīng)推出過(guò)6 DSP內(nèi)核的TNETV3020。這個(gè)時(shí)候推出這樣一款產(chǎn)品,是不是略顯過(guò)時(shí)?
“這主要是看用戶的需求,”郝曉鵬解釋道。多核DSP的應(yīng)用是極具特點(diǎn)的,如無(wú)線基站、醫(yī)療影像、現(xiàn)場(chǎng)通信等等,這些領(lǐng)域的客戶對(duì)多核DSP的需求是芯片廠商推出產(chǎn)品的首要考慮因素。他們所需的單芯片功耗是多少?從而決定使用多少內(nèi)核;他們所需單芯片的處理能力是多少?這是靠具體應(yīng)用決定的;多核DSP的可編程性和升級(jí)維護(hù)以及如何在多核的情況下有效提升并行度?種種諸多因素的折衷,最終導(dǎo)致了這款三核芯片的誕生。
TMS320C6474 在單一裸片上集成了三個(gè) 1 GHz 的 TMS320C64x+™ 內(nèi)核,可實(shí)現(xiàn) 3 GHz 的原始 DSP 性能,而功耗和DSP成本則分別比離散處理解決方案降低了 1/3和 2/3。
“一方面要降低功耗,但另一方面又要為新的多媒體和娛樂(lè)應(yīng)用增強(qiáng)系統(tǒng)性能,”相信這是大多數(shù)無(wú)線移動(dòng)終端和其他節(jié)能型平臺(tái)制造商的都要面對(duì)的進(jìn)退兩難的局面?;?C6474 的解決方案有著更為明顯的優(yōu)勢(shì)。例如,為了滿足 25 瓦的功率預(yù)算要求,設(shè)計(jì)人員不能采用超過(guò) 8 個(gè) 1 GHz TMS320C6455 單核 DSP,且每個(gè) DSP 的功耗必須為 3W左右,這一系統(tǒng)的總體性能為 8 GHz。與之對(duì)應(yīng)的是基于 C6474 的系統(tǒng)僅包含四顆芯片,每顆芯片的功耗約為 6W。但由于每個(gè)處理器包含了三個(gè) 1 GHz 內(nèi)核,系統(tǒng)總性能將達(dá)到 12 GHz,從而使單位功率下的性能提高了50%。功耗的提升更多得益于TI 的 SmartReflex 技術(shù),通過(guò) TI 的深亞微米工藝技術(shù)顯著降低了芯片級(jí)漏電。該技術(shù)由一系列智能和自適應(yīng)硬件與軟件技術(shù)組成的,這些技術(shù)可根據(jù)設(shè)備活動(dòng)、操作模式和溫度來(lái)動(dòng)態(tài)控制電壓、頻率和功率。
同時(shí),多核DSP天生的使命就是提升性能。C6474 在同一裸片上集成了三個(gè) 1 GHz 的 C64x+™ 內(nèi)核,可實(shí)現(xiàn) 3 GHz 的 DSP 性能,即處理能力為 24,000 MMACS(16 位)或 48,000 MMACS(8 位)。同時(shí),考慮到很好的延續(xù)性,該產(chǎn)品與諸如 TMS320C6452 與 TMS320C6455 等基于 C64x+ 內(nèi)核的單核 DSP的代碼完全兼容,而且與 TMS320C641x等基于前代 TMS320C64x™ 內(nèi)核的產(chǎn)品也完全兼容。
高性能處理器需要高性能外設(shè),因此C6474 集成了 Viterbi 與 Turbo 加速器,從而可大幅提高這些常用算法的處理效率。此外,該處理器還包含有幾個(gè)串行器/解串器 (SERDES) 接口,如 SGMII 以太網(wǎng) MAC (EMAC)、天線接口 (AIF) 以及 Serial RapidIO (SRIO)。每個(gè)內(nèi)核都配有 32 kB 的 L1 程序存儲(chǔ)器與 L1 數(shù)據(jù)存儲(chǔ)器,可支持兩種配置的 3 MB 總體 L2 存儲(chǔ)器(每個(gè)內(nèi)核 1 MB,或者 1.5 MB / 1 MB / 0.5 MB 的配置)以及TI 速度最快、運(yùn)行速率達(dá) 667 MHz的 DDR2 存儲(chǔ)器接口,從而可對(duì)外設(shè)與處理器內(nèi)核進(jìn)行有益的補(bǔ)充。
然而,不可否認(rèn)的是,多核DSP開(kāi)發(fā)環(huán)境與單核DSP的開(kāi)發(fā)環(huán)境畢竟還有很大不同,而且工程師對(duì)多核處理平臺(tái)還是有一些擔(dān)心的,其中如何更有效發(fā)揮多核DSP應(yīng)用的性能是最主要的問(wèn)題。
“這就涉及到TI提供的編譯器系統(tǒng),”郝曉鵬說(shuō)。C6474 評(píng)估板 (EVM) 包括兩個(gè) C6474 處理器,一個(gè)支持 EMAC、AIF 以及 SRIO SERDES 接口的高速 DSP 互聯(lián)單元以及 Orcad 與 Gerber 等設(shè)計(jì)文件。此外,C6474 EVM 還提供具有 XDS560 仿真器的板載 JTAG 接頭 (JTAG header),并提供電路板專用的 Code Composer Studio™ (CCStudio) 集成開(kāi)發(fā)環(huán)境 (IDE)。TMDXEVM6474 的定價(jià)為 1995 美元。此外,VirtualLogix™ 還推出了面向C6474的VLX™。VLX Real-Time Virtualization™ 軟件使 TI 的 DSP 平臺(tái)在運(yùn)行 TI DSP/BIOS™ 內(nèi)核執(zhí)行傳統(tǒng) DSP 任務(wù)的同時(shí),還可執(zhí)行 VirtualLogix Linux™,從而無(wú)需添加專用處理器便可快速采用并集成通用網(wǎng)絡(luò)、高級(jí)網(wǎng)絡(luò)或控制功能。
不過(guò),最終回到多核的市場(chǎng),無(wú)疑是功耗與性能的決斗。
TI DSP也正是瞄準(zhǔn)了這兩大方向,C6474是瞄準(zhǔn)高性能的多內(nèi)核。另外一個(gè)分支則是瞄準(zhǔn)低功耗多內(nèi)核。
并非一蹴而就
正如被大家問(wèn)到“多核DSP是否會(huì)代替單核DSP”時(shí),郝曉鵬稱要看具體應(yīng)用場(chǎng)景,如果一個(gè)單核處理器已經(jīng)足夠,就沒(méi)有必要再放一個(gè)多核處理器了。而且,各個(gè)DSP之間,在功耗、成本、單板面積都不適合多核DSP平臺(tái)時(shí),也要用分立的解決方案。
多年來(lái)蜂窩電話和通信行業(yè)中一直使用異質(zhì)DSP(一個(gè)DSP內(nèi)核和一個(gè)RISC CPU內(nèi)核)。這些處理器的目標(biāo)應(yīng)用可以被很好地劃分為適合DSP的信號(hào)處理任務(wù)和適合RISC CPU的控制任務(wù)。
但是,DSP芯片廠商都看好多核是未來(lái)DSP的趨勢(shì),并為此努力著。PicoChip很早前推出的picoArray架構(gòu)就整合了多個(gè)相同的內(nèi)核來(lái)支持高性能DSP,ADI的Blackfin BF561雙核DSP也可以很好地執(zhí)行兩種任務(wù)。不過(guò),ADI公司Blackfin應(yīng)用經(jīng)理David Katz表示,雖然“多內(nèi)核是我們發(fā)展策略中的重要組成部分,但ADI在BF561后就沒(méi)有推出過(guò)同類多核DSP設(shè)計(jì)。”
TI本身也于2007年年初推出了用于通信的多核DSP——TNETV3020,其主要用于高密度核心網(wǎng)絡(luò),采用6個(gè)DSP內(nèi)核、1個(gè)開(kāi)關(guān)矩陣和多種串行I/O通道,允許設(shè)計(jì)師針對(duì)通道格式轉(zhuǎn)換等任務(wù)對(duì)設(shè)計(jì)進(jìn)行配置。同樣,音頻處理也需要對(duì)多任務(wù)實(shí)現(xiàn)高性能處理,對(duì)此,飛思卡爾新款Symphony DSP56724和DSP56725 DSP采用了一種雙核架構(gòu),允許開(kāi)發(fā)人員分割處理任務(wù),同時(shí)復(fù)用現(xiàn)有的代碼。用于視頻或混合音頻與視頻處理的多核DSP也已出現(xiàn),例如Cradle Technologies公司的CT3616,Gennum公司的Voyageur以及Cirrus Logic公司的音頻用多核DSP。
雖然大多數(shù)開(kāi)發(fā)人員缺少劃分軟件的經(jīng)驗(yàn),而自動(dòng)化工具支持也非常缺乏,同類多核DSP并未得到廣泛應(yīng)用。正如TI公司的Simar所說(shuō),“展望未來(lái),我們可以發(fā)現(xiàn),針對(duì)DSP的多核技術(shù)不會(huì)只是小把戲,它將變得越來(lái)越普及。”