淺析SoC時代的多核DSP產品
數字信號處理器(DSP) 是對數字信號進行高速實時處理的專用處理器。在當今的數字化的背景下,DSP已經成為電子工業領域增長最迅速的產品之一。
本文引用地址:http://www.104case.com/article/80942.htm據世界半導體貿易統計組織 (WSTS)發布的統計和預測報告顯示,1996~2005年,全球DSP市場將一直保持穩步增長,2005年的增長率將達34%。因此,全球DSP市場 的前景非常廣闊,DSP已成為數字通信、智能控制、消費類電子產品等領域的基礎器件。隨著應用領域的擴大,人們對DSP應用系統的性能、功耗和成本提出了 越來越高的要求,并嘗試著在單一硅片上集成更多的處理器核,于是多核DSP應運而生,并推動了SoC產業的成長和壯大,一躍成為SoC時代的驕子。
多核DSP的應用市場
3G移動通信
多核DSP 最重要的應用領域之一就是3G數字移動通信。其中包括基站和移動終端兩方面的應用。基站所使用的DSP更注重高性能,對成本和功耗不是非常敏感。而移動終 端要面向具體的用戶,設計時必須在功能、功耗、體積、價格等方面進行綜合考慮,因此移動終端對核心處理器的要求更加苛刻。
2G數字蜂窩電話的核心處理器都是基于雙處理器結構的,即包含1個DSP和1個RISC微控制器(MCU)。DSP用來實現通信協議棧中物理層協議的功能;而MCU則用來支持用戶操作界面,并實現上層通信協議的各項功能。
3G 數字移動通信標準增加了通信帶寬,并更加強調高級數據應用,例如可視電話、GPS定位、MPEG4播放等。這就對核心處理器的性能提出了更高的要求,即能 夠同時支持3G移動通信和數據應用。在現代化的3G系統中,對處理速度的要求大概要超過60~130億次每秒運算。如果用現有的DSP,需要20~80片 低功耗DSP芯片才能滿足要求。因此,承擔這一重任的多核DSP處理器芯片必須在功耗增長不大的前提下大幅度提高性能,并且要具備強大的多任務實時處理能 力。多核DSP在嵌入式操作系統的實時調度下,能夠將多個任務劃分到各個內核,大大提高了運算速度和實時處理性能。這些特點將使3G手機能夠同時支持實時 通信和用戶交互式多媒體應用,支持用戶下載各種應用程序。圖1給出了一種3G通信多核DSP處理器的架構。
軍事應用
多核DSP在軍事領域的應用主要包括軟件無線電和目標識別兩大方面。
軟件無線電(SR) 是將標準化、模塊化的硬件功能單元通過高速總線或高速網絡等連接形成一個通用的數字式硬件平臺,再通過軟件加載的方式來實現各種類型無線通信系統的開放式 體系結構。采用軟件無線電技術實現的通信系統靈活性強,易于實現與不同的頻帶、帶寬和調制方式的通信系統的互連、互通,系統的升級更新方便,能更充分地利 用有限的頻譜資源。圖2給出了一種SR的體系結構。SR的基帶處理部分的計算非常密集,要完成信號的調制/解調、編/譯碼、交織/去交織、擴頻/解擴、加 /解密、信道均衡、定時、同步甚至信源編碼等工作,產生所謂DSP瓶頸。傳統的方法是采用樹狀結構或網狀結構的多處理器技術,用可編程器件(如 FPGA)、DSP和通用CPU等結合實現。多核DSP的出現將有助于解決DSP瓶頸問題,并成為SR的核心部件。
另外,軍用導彈、魚雷、雷達中大量采用目標識別技術。其核心算法就是把傳感器采集的實時圖像與存儲在系統中的原有地圖進行對比,以確定導彈的現有方位并及時調整飛行姿態,因此這類應用的實時性要求非常高。如果采用多核DSP,就可以把整個地圖劃分成多個小塊,在多個DSP核上同時進行圖像對比運算,找出最大匹配目標。
數字消費類電子
DSP是數字消費類電子產品中的關鍵器件,這類產品的更新換代非常快,對核心DSP的性能追求也無止境。
由于DSP的廣泛應用,數字音響設備得以飛速發展,帶數碼控制功能的多通道、高保真音響逐漸進入人們的生活。此外,DSP在音效處理領域也得到廣泛采用,例如多媒體音效卡。在語音識別領域,DSP也大有用武之地。Motorola公司等廠商正在開發基于DSP的語音識別系統。
數字視頻產品也大量采用高性能DSP。 例如數碼攝像機,已經能夠實時地對圖像進行MPEG4壓縮并存儲到隨機的微型硬盤甚至DVD光碟上。此外,多核DSP還應用在視頻監控領域。這類應用往往 要求具有將高速、實時產生的多路視頻數字信號進行壓縮、傳輸、存儲、回放和分析的功能,其核心的工作就是完成大數據量、大計算量的數字視頻/音頻的壓縮編碼處理。
數字電視的普及也將使用大量高性能DSP。 Philips半導體電視機和機頂盒市場副總裁Julian認為,結合多種網絡傳輸方式的多模式并且融合了PVR(個人視頻錄像)功能的高端機頂盒將成為 未來家庭媒體的中心。人們通過機頂盒不但可以進行視頻點播,而且可以實現在線購物、電視醫院、遠程互動教育等功能。
智能控制設備
汽車電子設備是這一領域的重要市場之一。現代駕乘人員對汽車的安全性、舒適性和娛樂性等要求越來越高。多核的DSP也將逐漸進軍這一領域。例如在主動防御式安全系統中,ACC(自動定速巡航)、LDP(車線偏離防止)、智能氣囊、故障檢測、免提語音識別、車輛信息記錄等都需要多個DSP各司其職,對來自各個傳感器的數據進行實時處理,及時糾正車輛行駛狀態,記錄行駛信息。
此外,多核DSP在智能機器人、工業控制領域也有非常廣闊的市場。
多核DSP的技術基礎
芯片制造工藝技術的進步和SoC設計與驗證水平的提升分別是多核DSP誕生的“硬件”基礎和“軟件”基礎。
目前,TI 生產DSP芯片的工藝已經達到75nm的水平,能夠在一塊僅有拇指大小的單芯片上集成8個TMS320DSP內核。據TI預測,到2010年,DSP工藝 將穩定在65nm,芯片的集成度將會增加11倍,在單個芯片內將能集成5億只晶體管。因此,制造工藝的進步,晶體管集成度的增加將為多核DSP掃清前進道 路上的第一道障礙。
另外,多核DSP 也離不開SoC設計水平的進步。SoC設計可以對整個系統的模型算法、軟硬件功能、芯片結構、各電路模塊直至器件的設計進行綜合考慮,可以在同樣的工藝條 件下,實現更高性能的系統指標。具體來說,軟硬件協同設計、軟硬件協同驗證、IP核生成與復用、高速互連總線、低功耗設計等多項SoC關鍵設計技術已經有 人展開研究,并取得了突破性進展。
多核DSP的實例
同構多核DSP
這類多核DSP內部集成了若干個結構對等的DSP核,不存在其他處理器核。
AD 公司的BlackfinTM嵌入式對稱多處理器ADSP-BF561內部集成了2個對稱的600MHz高性能BlackfinTM內核,片內共享 328KB的存儲器。該處理器采用類RISC的寄存器和指令模式,易于編程和編譯優化,同時具有先進的跟蹤、調試和性能監測方式。BlackfinTM內 核采用動態功耗管理技術,可以改變電壓和頻率,從而為便攜式應用提供更長的待機時間。
TI 公司的TMS320VC5441浮點DSP內部集成了4個C54x核,每個核具有192KB的局部存儲器、3個多通道緩沖串口、DMA、定時器等部件。每 個子系統都具有獨立的程序和數據空間,可以同時訪問指令和數據。該DSP采用了很多并行訪存指令,可以在一拍內完成2讀1寫操作,從而大大提高了并行性。 片內共享512KB的程序存儲器。圖3給出了該DSP的組成結構。
異構多核DSP
異構多核DSP是最常見的一類多核DSP,其中既包含DSP核,又包含用于控制的MCU(微控制器)核,從而充分發揮DSP的處理速度和MCU的控制功能。
TI 公司的SMJ320C80是世界上第一個單芯片并行MIMD(多指令多數據)DSP。其中集成了一個性能為100MFLOPS的32位RISC浮點CPU 核、4個32位并行處理DSP、一個傳輸控制器(TC)、一個視頻控制器(VC)。所有的處理器通過Crossbar進行耦合,共享50KB的片上 RAM,每秒可以完成20億次運算。該處理器主要面向軍用領域。
TI 公司的OMAP處理器是這類DSP的典型代表。圖4給出了最新推出的OMAP2420的組成結構。該處理器采用90nm工藝,集成了主頻為330MHz的 ARM1136核、TMS320C55x DSP核、2D/3D圖形加速器、圖像與視頻加速器、共享存儲控制器/DMA等,能夠實現30幀每秒VGA分辨率的全動態視頻編解碼。
Motorola 公司針對窄帶無線系統(例如GSM和TDMA/AMPS)應用,優化設計出了結構非常緊湊的雙核DSP產品DSP56654。該處理器內部集成了 Motorola的32位RISC控制器M-CORETM、DSP56600內核以及豐富的外設部件。其中M-CORETM內核采用32位的 Load/Store RISC架構,16位的定長指令和4級流水線設計。該處理器具有靜態和動態功耗管理功能,能夠在-40℃~85℃溫度范圍內工作。
Cradle 公司是DSP領域的后起之秀,其最近推出的高性能CT3616處理器內部集成了16個DSP核與8個GPP(通用處理器)核,主頻375MHz,能夠進行 16路MPEG4 SP@L3實時編碼,最高DSP性能達到96G MAC運算。可編程I/O是該處理器的另外一大特色,共有144個可編程的I/O引腳,允許用戶自定義接口。該處理器集成的DDR DRAM接口可以掛接333MHz的DDR存儲器。全芯片的功耗僅僅為4.5W,可以應用于音頻/視頻編碼、多路監控、系統控制等領域。
瑞薩半導體(Renesas) 最新推出的32位RISC處理器SuperHTM系列也采用了多核DSP的結構。其中具有代表性的產品有SH7720。該處理器集成了一個32位 SuperHTM架構的RISC CPU核、一個DSP內核、32KB的Cache存儲器、16KB的X/Y存儲器,此外還包含中斷控制器、高速DMA控制器、USB主機接口、LCD控制 器、A/D和D/A轉換器、SIM卡接口等豐富的外設部件。
DSP核+協處理器
這類DSP一般針對某一類應用集成專用的協處理器,從而對DSP實現算法加速。TI的研究表明,對于像MPEG4編解碼這樣的任務,使用協處理器可以降低50%的DSP負荷,從而平衡系統功耗。
TI 公司的高性能數字信號處理器TMS320C6416是這類多核DSP的典型代表。該DSP除了包含一個功能強大的C64x DSP核之外,還集成了一個維特比協處理器(VCP)和一個Turbo解碼協處理器。其中維特比協處理器用于語音和低碼率數據通道解碼,支持500個 8Kb/s碼率的語音通道,并且可以對強制長度、碼率和幀長度等解碼參數進行編程。Turbo協處理器用于高碼率數據通道的解碼,支持35個 384Kb/s碼率的數據通道。
另外一個例子就是Motorola 公司的MSC8126 多核DSP。該DSP集成了4顆StarCoreTM DSP核、一個Turbo協處理器、一個維特比協處理器、UART接口、4個TDM串行接口、32個通用定時器、以太網接口及16通道DMA。該DSP在 最先進的90nm工藝下生產,在400MHz主頻下,其4個擴展內核可以達到最高每秒6400MMAC(百萬次乘加操作)的性能。除了每個DSP核內包含 228KB的M1存儲器之外,片內還集成了476KB的共享M2存儲器。支持可變長指令是該DSP的另外一個特點。
多核DSP面臨的挑戰
低功耗
多核DSP 帶來了更高的性能,但它相比傳統的單核DSP也帶來了更大的功耗。嵌入式應用,例如手機、數碼相機等對功耗非常敏感。在2G通信時代習慣了200小時待機 時間的手機用戶很難接受待機時間僅僅為一天的3G手機。因此多核DSP面臨的第一個挑戰就是如何有效的降低平均功耗。
從硬件技術上來看,可以采用動態電源管理技術,設置全速、半速、休眠等工作模式,根據當前的任務強度和功耗監測信息,及時調整電壓和頻率,關閉暫時不使用的模塊,以降低功耗。另外,根據特定的應用需求,設置專門的協處理器,同樣可以減少DSP內核的運算強度。
從軟件技術上來看,在編譯指導下的多核DSP低功耗優化技術非常具有潛力。低功耗編譯技術主要包括編譯指導的動態電壓調節、多線程功耗模型下的低功耗編譯調度等。在操作系統的支持下,通過合理的調度,使處理器資源與算法需求相適應,例如在DSP核+MCU的模式下,MCU就不應該處理DSP的有關程序。
互連與存儲系統
隨著芯片面積的增大,長線互連延遲和信號完整性已經成為制約芯片主頻的關鍵因素。當片上DSP 核較少時,可用簡單的總線結構或者Crossbar互連;當DSP核較多時可用二維mesh網絡、3D Torus等進行互連,設計者必須在網絡開銷以及多核之間耦合的程度之間進行權衡,同時還要注意互連拓撲的可擴展性。為提高互連性能,應該采用高頻、高帶 寬的超深亞微米片上互連結構,以便高效地實現節點間通信。
針對數據密集型的應用,多核DSP必須解決存儲系統的效率問題。為此,必須要解決一系列關鍵技術,例如應該設計多大的片內存儲器?數據的共享和通信在存儲層次的哪一級來完成?Cache一致性在哪一級實現更合理?是通過片內共享存儲器還是高速總線進行多核之間的通信?存儲結構如何支持多線程的應用?
編譯技術與操作系統
多核DSP 能否發揮最高的性能,在很大程度上取決于編譯優化和嵌入式操作系統的有力支持。例如,多核DSP對多線程程序能夠提供較高的性能,但是對于單線程應用的性 能反而不高,甚至比單核DSP的性能還要低,從而出現“三個臭皮匠不頂一個諸葛亮”的尷尬局面。
采用硬件動態提取線程是一種方法,但編譯器更要擔負起自動并行化的工作,即將串行程序自動地轉換為等價的多線程并行代碼,使用戶不關心迭代空間劃分、數據共享、線程調度和同步等細節,減輕用戶負擔。
更重要的是多線程優化編譯技術,包括線程并發機制的實現、線程調度、線程級前瞻執行等技術。
多核之間的任務調度是充分利用多處理器性能的關鍵。為滿足實時處理的要求,均衡各處理器負載,需要研究的任務調度機制有分布式實時任務調度算法、動態任務遷移技術等。已有的幾種嵌入式操作系統,例如μcLinux、PalmOS、WinCE等,都還無法有效地支持多核處理器。嵌入式多核操作系統的研究任重而道遠。
應用開發環境
嵌入式應用的特點決定了開發人員必須能夠在很短的時間內推出能夠為市場所接受的應用系統。為此,多核DSP供應商必須為用戶提供簡便易用的開發、調試環境。但是面向多核處理器的編程環境始終是不成熟的,并行程序開發技術一直難以普及。
為此,我們可以借鑒多核通用微處理器的編程模式,即消息傳遞程序設計模式MPI 和基于編譯指導命令的程序設計模式OpenMP。但是,最終的發展趨勢還將是集成化的VSP(Virtual Single Processor,虛擬單處理器模型)開發環境,在這一環境下用戶能夠像開發單處理器程序一樣去開發多核應用系統,在同一平臺上完成編程、調試、編譯優 化和連機測試的過程。
例如,Cradle 公司在推出CT3600系列多核DSP的同時,還推出了相應的多核開發工具,包括ANSI C編譯器、針對DSP進行了時序優化的Cradle C語言、eCOS實時操作系統、INSPECTORTM代碼開發與調試器和RDS3600硬件開發平臺等,從而為用戶提供了一攬子的解決方案。
數字通信相關文章:數字通信原理
晶體管相關文章:晶體管工作原理
存儲器相關文章:存儲器原理
晶體管相關文章:晶體管原理
評論