簡介
1971年的處理器晶片以及在其基礎上發展而來的PC機的問世,使計算機的套用從科學殿堂走進了“尋常百姓家”,同時開闢了計算機嵌入式套用的新模式,促進了工業產品的知識化/智慧型化。隨著晶片集成度的提高與計算模式的演變,如圖1所示,1987年人們提出了系統晶片(SoC,SystemonChip)的概念,要將計算機的系統設計也轉移到晶片設計上來。從提出一個新概念到這一概念的成果市場化,一般大約需要30年左右的時間。系統晶片概念提出之後,經過20多年的努力,逐漸形成了兩種系統晶片。一種是以處理器為IP核的多處理器系統晶片(MP SoC,Multi ProcessorSoC),簡稱MP系統晶片;另一種是根據並行計算技術與深亞微米技術的發展需要而發展起來的大規模並行處理系統晶片(MPP SoC,Massively Parallel ProcessingSoC),簡稱MPP系統晶片。因為採用了陣列的實現方法,對處理器來說又可以叫做陣列處理器(Array Processor)。下面將主要討論嵌入式陣列處理器的陣列設計、製造技術與套用領域的新發展。圖1 晶片集成度,計算模式與晶片體系結構的發展
陣列設計的發展
處理器晶片,以及在其基礎上發展起來的MP系統晶片,設計和套用都發展得比較成熟。目前許多嵌入式計算機的系統設計,已經轉移到嵌入式MP系統晶片的設計上來;不僅如此,1985年開始的FPGA技術,在2000年就推出了帶嵌入式處理器ARM的FPGA晶片,現在已發展成了嵌入式MP系統晶片的一種硬體設計平台。國內已研製出以8位、16位以及32位處理器為核心的,與套用領域緊密相關的嵌入式MP系統晶片。隨著嵌入式套用的微型化與並行計算的要求越來越高,以及深亞微米技術的不斷發展所帶來的“紅牆”問題,使嵌入式陣列處理器的設計成了新的研究熱點。
為了航空航天圖像處理電子設備的微型化,美國休斯(Hughes)公司在3um CMOS工藝的基礎上,採用圓片級的3D二次積體電路技術,按照SIMD PE陣列的體系結構,於1987年10月就研製成功了一種3D陣列處理器。該陣列處理器由5個大圓片(Wafer)組成了32×32個16位定點處理元的PE陣列,工作頻率10 MHz,峰值速度為600MOPS,功耗約1.5W,體積只有手掌大小,如圖2所示。除了32×32的PE陣列外,休斯公司還先後研製了每個大圓片上有128×128與256×256(=65536)個功能模組的陣列處理器。
圖2 休斯公司的第一台3-D MPP計算機
與其它嵌入式處理器不同,嵌入式陣列處理器設計的發展,從休斯公司的圖像處理的陣列處理器可以看出,是由成千上萬的處理元PE的陣列組成的。其它的陣列處理器是存在一個並行編程的語言問題的,早期的解決方法是把常用的程式設計語言擴充成並行程式設計語言,但沒有得到推廣;現在的解決方法是採用面向並行編程模式的映射語言。由於圖像處理的嵌入式陣列處理器,是一種支持數據並行計算的可程式的陣列處理器,採用的是指令流計算模式的SIMDPE陣列的體系結構,與超級計算的陣列處理器不同。這是一種自然的實現數據並行計算的陣列處理器的體系結構,因為按時間映射方法執行數據並行算法時,SIMD PE陣列上所有PE每個周期執行的是同樣的一條指令的“數組操作”,數組大小理論上是沒有限制的;SIMDPE陣列的陣列處理器可以看作是數據並行算法的算法處理器(AlgorithmProcessor),而不必看作是一個多處理器,從而得到了圖像處理器的並行編程簡單性、高效性與通用性。由於SIMD計算方式對數據並行計算的效果非常顯著,在有些處理器/多核處理器/眾核處理器的指令集合中,也增加了支持SIMD 計算的MMX指令。
圖3 大圓片的立體組裝技
現代的陣列處理器的PE陣列基本上是支持兩維算法的,因為現在計算機的感測器輸入主要是空間上的兩維陣列,顯示器輸出也主要還是空間上的兩維陣列,相應的PE陣列自然是兩維的;而可視空間是三維的,計算科學家是通過立體視覺算法在兩維陣列的顯示器上形成三維的立體感的。其實,隨套用領域的不同,完成空間並行計算的陣列處理器還可以是三維的。陣列大小是可以系列化的,陣列設計的發展主要是處理元PE的概念,以及處理元PE中的操作的概念,都應當是廣義的,還有一般處理器中所沒有的處理元PE之間的互連方法以及陣列處理器晶片之間的互連方法。
隨套用領域的不同,處理元PE的設計參數(字長精度、存儲容量與運算速度,以及體積、重量、功耗與可靠性等)是可以像處理器一樣系列化的。不僅如此,為了實現陣列處理器晶片的換代作用,使陣列處理器晶片不僅能夠替代處理器晶片,還可以替代現在的可重構的空間映射的並行處理晶片(靜態可重構的FPGA晶片與動態可重構的RCDevice晶片),處理元PE的概念應當是廣義的。隨套用領域的要求不同,可以是現在已知的處理器(RISC/DSP),也可以是現在未知的,例如,RCDevice陣列中的功能模組,FPGA陣列中的邏輯門或神經元,FPAA陣列中的模擬器件,FPTA陣列中的電晶體等。相應的處理元PE中的操作的概念也是廣義的,可以是現在已知的處理器操作(算術/邏輯等);也可以是現在未知的“操作”,例如,對模擬器件的“操作”,對電晶體的“操作”等。處理元PE之間的互連方法以及陣列處理器晶片之間的互連方法,現在都還沒有發展到成熟的地步,為陣列設計提供了廣闊的發展空間。
表1 Intel陣列處理器的性能
製造技術的發展
雖然圖像處理的嵌入式陣列處理器是在晶片特徵尺寸不是很小的情況下就開始研製的,但是,它從擴大晶片面積與3D集成方面,推動了晶片製造技術的新發展。例如,美國休斯(Hughes)公司在特徵尺寸為3um CMOS工藝的基礎上,採用很有特點的圓片規模集成WSI( Wafer Scale Integration)電路技術,把圓片上的晶片互連起來,並採用了設計上的避錯技術(這也是現在解決“紅牆”問題時,晶片設計中要採用的技術),將一次積體電路的面積從晶片擴大到了圓片;而圓片之間又採用了3D的二次積體電路技術,包括矽圓片的穿通(Feedthroughs)技術,相鄰大圓片之間的微橋互連(Interconnects)技術,以及多個大圓片的三維組裝技術(AssemblyTechnology),如圖3中所示,就研製成功了成千上萬個處理元PE陣列的圖像處理的陣列處理器。
值得指出的是,3D二次積體電路技術也是高性能陣列處理器中所要用的技術。例如,Intel提出了一個名叫Tera-Scale的計劃,2007年初採用65nm工藝,總共集成了1億(100Million)電晶體,一共採用了80個比現代處理器簡單的處理元PE。PE陣列與SRAM存儲器陣列的互連也是採用3D二次積體電路技術實現的,如圖4所示,Intel陣列處理器的性能,如表1中所示,每個晶片都達到了每秒1萬億次的水平。
(a)Intel的MPP系統晶片
(b) 處理元PE之間的互連方法
圖4 Intel的Tera-Scale計畫的陣列處理器
因為採用晶片四邊引線的辦法,單個晶片上的I/O引腳數目不能隨晶片集成度的提高成比例增長,採用3D二次積體電路技術解決單個晶片上的I/O引腳數目與“紅牆”問題,取得了成功,得到了發展。特別是TSV(Through-Silicon-Vias)方法的3D二次積體電路技術可以顯著地縮短晶片之間的連線長度,增大信號頻寬;使整機(或系統)與外部連線點大大減少,進一步提高可靠性。2007年4月IBM公司發布將採用TSV技術研製三維芯片;Samsung公司也計畫用TSV技術製作三維記憶體晶片。
套用領域的發展
從套用環境來說,陣列處理器用在地基(陸基、海基和空基)套用環境中,是不會有爭議的。自從1957年10月4日第一顆人造衛星上天以後,人類從此進入太空時代。嵌入式計算機也越來越多的用到了天基套用環境中。儘管天基套用的晶片數量目前遠少於地基套用的晶片數量,正如電子管計算機剛發明的時候,運算速度、存儲容量、體積功耗和可靠性等都是限制它廣泛套用的關鍵因素,因此有人就說全世界有幾台電子管計算機就夠了。但是,計算機符合人類從工業社會向知識社會發展的方向,是人們夢寐以求的建立知識社會的腦力勞動工具。人們看到了電子管計算機剩下的問題,就是尋找新的物理技術來實現二進制位的功能,於是,有了電晶體和積體電路的發明,使計算機的體積更小,功能更強,速度更快,容量更大,價格更低與可靠性更高。計算機終於成了今天婦孺皆知的知識產業的基礎,晶片成了工業發展的麵包。同樣,雖然現在的嵌入式計算機的體積、功耗、性能、可靠性、壽命與價格等都是限制它天基套用的關鍵因素,但天基套用是人類從地球走向太空的一個發展方向,太空的經濟時代已經到來。人們將會通過促進晶片技術的新發展,使更多的計算機嵌入到天基計算機網路中去,天基套用將是嵌入式陣列處理器的一個重要的套用領域。
嵌入式陣列處理器晶片的發展,除了使工業產品越來越知識化/智慧型化,還將能使嵌入式計算機以晶片的形式,悄悄融入我們的生活環境中,使人與計算機的生理界限逐漸消失,從客觀世界進入我們的主觀世界(身體)。
發展的前景
如何設計陣列處理器(包括嵌入式陣列處理器),首先是人才隊伍問題。我國現有晶片設計單位500來家,但規模小,50人以下的公司超過了半數。整合成了當前國內IC設計業的熱門話題。例如,有人說“由於市場競爭激烈,許多資金不足的初創公司不會堅持太久,加上國外風險投資公司逐漸淡出,預計今後將有更多的公司,走上兼併重組之路”。而通過公司的兼併重組是不能壯大晶片設計隊伍,解決資金不足的問題的。其實,就像處理器的套用那樣,通過PC計算機使計算機成了各個領域的腦力勞動工具,通過嵌入式計算機使工業產品知識化/智慧型化,使計算機的套用從科學殿堂走進“尋常百姓家”,成了一種真正的草根運動。例如,處理器嵌入到相機中出現了“傻瓜”相機;如果你把手機換成了iPhone,就會發現你與手機的互動發生了變化,可觸與直觀的螢幕取代了鍵盤,進一步降低了人與計算機的生理界限。微軟公司估計,人與計算機的生理界限將在10年之後徹底消失。陣列處理器的設計也是一種計算機的套用,就像PC機與嵌入式計算機普及與簡化了計算機的套用一樣,通過先進的陣列處理器設計平台,使陣列處理器的設計普及到各種套用領域的系統設計者中去,成為一種草根運動,可能會更快地壯大晶片設計隊伍,解決資金不足的問題。
從計算機的製造上來說,人們估計到2010年後,基於光刻技術採用SiGe的CMOS工藝的製造能力達到它的30nm極限時,將會使線的延遲比門的延遲越來越重要,特徵尺寸已小得使晶片缺陷不可避免,以及漏電流與功耗變得非常重要。陣列處理器是解決這些“紅牆”問題所需要的。從計算機的套用上來說,陣列處理器是通過並行計算提高計算性能的有效辦法,具有處理器那樣的通用性。所以,陣列處理器(包括嵌入式陣列處理器)具有換代作用的發展前景。