按照今天的標準,早期的基于微處理器的系統(tǒng)很簡單,尤其是因為它們通常只使用一個處理器(可能只有一些協(xié)處理器,如浮點協(xié)處理器),而且指令集相對較簡單,運行速度很低時鐘頻率。該處理器通過一個簡單的讀/寫和信令協(xié)議,通過一個8位或16位數(shù)據(jù)總線與少量相對簡單的存儲器和外圍設(shè)備進行通信。
那些日子早已過去。目前,在緊密耦合或網(wǎng)絡(luò)拓撲中涉及數(shù)十或數(shù)百個復(fù)雜處理器和硬件加速器的系統(tǒng)的開發(fā)有了巨大的增長。除了分層存儲器結(jié)構(gòu)和多層總線結(jié)構(gòu),這些超級系統(tǒng)—這可能每秒執(zhí)行數(shù)億到數(shù)百億的指令—功能極其復(fù)雜的軟件組件,目前這種軟件內(nèi)容幾乎呈指數(shù)級增長。
激烈的競爭使今天的電子市場對上市時間壓力極為敏感。在手機等消費市場尤其如此,新產(chǎn)品產(chǎn)生影響的機會有時可能只有兩到四個月。然而,最近的一份報告顯示,超過50%的嵌入式系統(tǒng)開發(fā)運行較晚,而20%的嵌入式系統(tǒng)開發(fā)未能滿足其要求規(guī)范或被完全取消。 1
問題在于,在傳統(tǒng)的系統(tǒng)開發(fā)環(huán)境中,硬件設(shè)計先于軟件開發(fā)。這個順序過程根本無法支持當今超級系統(tǒng)的開發(fā)。本文首先介紹超系統(tǒng)的示例,并概述了增加系統(tǒng)大小和復(fù)雜性所帶來的問題。
然后討論基于使用虛擬系統(tǒng)原型(VSP)的體系結(jié)構(gòu)驅(qū)動設(shè)計的概念作為潛在的解決方案。最后,在與傳統(tǒng)環(huán)境相關(guān)的后端工程資源負載與由體系結(jié)構(gòu)驅(qū)動的基于VSP的方法產(chǎn)生的前端負載之間進行生產(chǎn)力,開發(fā)時間和風險比較。
今天的超級系統(tǒng)
在某些方面,術(shù)語“超系統(tǒng)”可能會產(chǎn)生誤導(dǎo),因為它可能會讓一些讀者想象一個物理上很大的實現(xiàn)。實際上,超級系統(tǒng)通常在單個片上系統(tǒng)(SoC)器件上實現(xiàn)。
例如,現(xiàn)代手機可能包含一個SoC,包括幾??個通用中央處理單元(CPU),以及一個或兩個數(shù)字信號處理(DSP)單元,控制40個或更多外圍設(shè)備提供控制功能,多媒體功能,2D和3D圖形功能,加密功能,相機接口以及各種其他接口,如WiFi和USB。
具有相關(guān)加速器設(shè)備的DSP提供各種基帶處理,濾波,調(diào)制和解碼功能。擁有多個內(nèi)核可以實時處理更廣泛的處理流量,這是當今許多應(yīng)用程序的關(guān)鍵要求。
遠離無線網(wǎng)絡(luò)的手持部分,控制無線通信系統(tǒng)的基站本身是緊密耦合的多處理器系統(tǒng)的層次結(jié)構(gòu)。例如,一個能夠每秒執(zhí)行數(shù)十億條指令的典型基站可以包含5到20個主要子系統(tǒng)和100多個單獨的處理器。
除了多處理器實現(xiàn)之外,今天的超級系統(tǒng)采用分層存儲器結(jié)構(gòu)。一些存儲器元件將通過專用總線緊密耦合到各個處理引擎,其他存儲器子系統(tǒng)可以是處理引擎集群的本地,并且其他存儲器單元可以在多組處理引擎之間共享。每個存儲器子系統(tǒng)可能具有不同的速度要求,不同的總線寬度,并使用不同的時鐘域。
在今天的超級系統(tǒng)中,不同的處理引擎可以有單獨的總線用于控制,指令和數(shù)據(jù),每個這些復(fù)雜的總線可以具有各種結(jié)構(gòu)和協(xié)議。除通用處理器總線外,還可能有各種專用外設(shè)總線,緊耦合存儲器總線,外部存儲器總線和共享存儲器總線。
其中許多公交車都將采用流水線結(jié)構(gòu),并在管道中安排多個交易請求和響應(yīng)??偩€系統(tǒng)還可以采用復(fù)雜的交叉開關(guān),可以同時嘗試多個讀寫操作。
即使是普通的現(xiàn)代汽車也包含20到80個處理器,執(zhí)行大量任務(wù)并執(zhí)行數(shù)億個任務(wù)每秒幾十億條指令(圖1)。
圖1—汽車的電子產(chǎn)品含量正以不斷增長的速度增長 2 。
-
dsp
+關(guān)注
關(guān)注
554文章
8058瀏覽量
349590 -
cpu
+關(guān)注
關(guān)注
68文章
10891瀏覽量
212435
發(fā)布評論請先 登錄
相關(guān)推薦
評論