Global Sources
電子工程專輯
 
電子工程專輯 > 嵌入式技術
 
 
嵌入式技術  

VLIW架構逐漸成為嵌入式系統設計主流

上網時間: 2001年08月12日     打印版  Bookmark and Share  字型大小:  

關鍵字:VLIW  VLIW結構  嵌入式系統設計  dsp  cpu 

許多晶片設計師正在尋求一種可以替代超純量架構的設計方法。雖然採用管線和緩衝技術能提升超純量處理器的性能,但這種設計方法明顯已經過時。發展中的超長指令字(VLIW)結構在最近得到了設計師們前所未有的歡迎,本文將介紹其發展趨勢和面臨的挑戰。

Alexander Wolfe


總編輯


《嵌入式系統編程》


Email:awolfe@cmp.com

VLIW的特點是它能從應用程式中截取高度平行的指令數據,並把這些機器指令均勻地分配給晶片中的眾多執行單元。實際上採用VLIW技術的晶片設計要比相應的超純量設計簡單得多,採用VLIW後,設計人員可節少許多開發時間。

典型的VLIW晶片中具有上文提及的數量眾多的執行單元,這些執行單元被佈放在整齊的網格上,在每個時脈周期內能執行多條指令。不過下文我們將會看到,VLIW還需要智慧化的編譯軟體配合以安排這些指令的執行。

關於VLIW技術可以追溯到80年代早期,當時許多微型電腦公司,其中最有名的要數Cydrome和Multiflow公司,合作設計出基於VLIW的大型系統。但該技術當時沒有得到過充分認証,也沒有廣泛的市場基礎,因此這次嘗試以失敗告終。

雖然如此,上述公司的一些主要設計師一直沒有停止過VLIW技術的研究工作,他們默默地從事技術改革,同時他們還招聘了許多硬體和軟體工程師專職從事VLIW的開發工作,由此也可看出軟體與硬體在VLIW設計中具有同等的重要性。(VLIW開發一直是在惠普實驗室的Josh Fisher和Robert Rau領導下進行的)。

今天,VLIW晶片技術的研究成果已經展現在我們面前,無論是在伺服器領域、桌上型電腦領域或嵌入式系統領域內,VLIW技術都呈現出龐大的商機。對於嵌入式設計師來說,重要的是必須能區分大型VLIW和小型VLIW,因為目前以VLIW技術作為獲得更佳性能的實現方式,似乎仍遵循著發明者最初的想法-簡單化。

實際上,英特爾公司的EPIC IA-64結構最能展現大型VLIW的特點,雖然這?不對它作詳細討論,但它要比該公司生產的同類32位元系列微處理器複雜得多。

由於VLIW在嵌入式應用中有上佳的表現,市場上已經出現了好幾種採用VLIW技術的最新處理器。首先進入市場的是具有VLIW概念的媒體處理器,例如飛利浦的TriMedia和Chromatic的Mpact媒體引擎。

緊接著,德州儀器(TI)也發表了基於VLIW技術的VelociTI的C6X系列數位信號處理器(圖1),該處理器主要用於行動電話及相關設備。為了使潛在用戶確信晶片的C編譯器能將平行指令數據發送給DSP,TI公司花費了相當大的時間與精力。在C6X系列處理器推出一年後,TI的努力終於取得了巨大成效。在DSP領域,還有其它競爭廠家如Ananlog Devices和StarCore(後者是摩托羅拉公司與朗訊公司的一家合資公司)也先後加入了VLIW陣營。而在做傳統嵌入式系統設計的廠家中,也許要數Transmeta公司推出的Crusoe系列處理器最受市場矚目。

VLIW技術的發展趨勢

展望未來,VLIW將會在嵌入式晶片設計中扮演重要角色。當然也會面臨來自單晶片系統、DSP和多內核晶片的挑戰。值得注意的是,這並不代表著它是你唯一的選擇,因為一個採用VLIW技術的設計同樣也能藉由單晶片系統技術來完成。

那麼VLIW晶片究竟是如何實現的呢?結構(或理論)上的描述相對來說比較簡單,但真正實現起來還有許多困難(也就是說,在家中嘗試做這樣的工作是不現實的)。

VLIW晶片的基本原理與超純量晶片絕然相反,建立VLIW處理器時不需要花費太多的時間和矽晶片來決定做什麼和什麼時候做,所需的硬體只要能完成簡單的計算就能在每個時脈周期執行大量的作業。

因此根據VLIW支援者的觀點,VLIW晶片的佈局結構會更加合理。比如說,晶片上的單元是可重覆利用的(多重運算單元),單元相互間排列非常整齊,並且靠得很緊密。

另外一個優點是,與超純量處理器相比VLIW處理器的硬體設計周期會縮短很多。然而VLIW技術的根本優點還在於這樣的事實:它具有足夠的智慧來安排平行指令數據的執行。根據定義,術語VLIW是指一個寬-位-長的字,該字中必須預先封裝入不同的命令或作業碼,並且在下一個時脈周期由VLIW處理器平行執行所有的指令。也就是說,在做VLIW設計時設計師可以預先知道可以平行處理的任務,並直接指示硬體去平行執行。

這種指令的安排是由被稱為跟蹤調度(trace scheduling)的編譯器完成的。這樣的編譯器綜合了多種技術,藉由大量可能分支預測出數量巨大的作業順序,最終完成平行任務的執行調度。

而超純量晶片的指令安排都是在執行期間進行的,因此VLIW具有無可比擬的優勢。由於在一條VLIW指令的執行過程中,數據打包與調度都由編譯器預先做好了,因此無需在執行期間做出最終的調度,而這樣的調度需要在關鍵路徑上耗費大量矽晶片的空間和時間。

那些反對VLIW的人認為,能夠有效調度這麼多平行指令的任何編譯器都將是十分複雜而且難以編寫。單從這一點來看,確實很難說他們是對還是錯,因為VLIW軟體(稱為編譯器)的絕大部份要比它所控制的硬體落後好幾年(DSP是例外)。只有VLIW編譯軟體達到了所要求的完善程度,VLIW才能生存下來並得到發展,否則它只是二十幾年後的一場夢。

不過,一些著名的電腦專家相信他們已經克服了最佳跟蹤調度編譯器設計中的大部份難題。另外,不斷有編譯器編寫人員接受跟蹤調度研究機構如Rice大學、Cornell大學和史丹弗大學的培訓,並即將學有所成。事實上,這些人中有一些正在Fisher領導下的小組工作,另外一些在惠普實驗室Palo Alto工作組的Rao領導下工作。IBM公司位於Yorktown Heights的研究中心也在悄悄地從事著VLIW的開發。任何想測試其代碼的人都可以上網免費下載被稱為Trimaran編譯器的實驗型編譯器。

VLIW技術面臨的挑戰

儘管VLIW具有很多優點,但它仍有一個使其還未能完全實用化的致命弱點。這種弱點表現為在單一格式下不能提供與已有晶片相容的目標代碼。舉例來說,一個具有3個執行單元的VLIW處理器不能相容於具有5個執行單元的處理器,同樣,這二種處理器都不能相容於具有10個執行單元的第三種處理器。

雖然解決這一相容性問題的進程在過去幾十年中進展非常緩慢,但目前已有所突破。事實上,Transmeda公司設計的Crusoe晶片就採用了程式碼形態技術CMT(code morphing technology),進而使它能執行x86程式碼。

目前,圍繞著是否盡快將該技術投入實際使用以及如何使它成為主流技術的問題仍有不斷的爭論。支援者堅信VLIW會給那些一開始就具有大量內含平行指令的應用帶來良好的收益,特別是當它用來處理圖素和聲音時將更加得心應手。實際上,多媒體應用是最有可能獲益的重要領域。

但是VLIW還面臨著若干技術性挑戰,最重要的挑戰莫過於如何解決預測出錯的問題,這種問題常產生在處理器在程式分支前預先處理了某條指令,並希望該指令確實需要執行。然而,有時候會出現指令非法的錯誤,結果是程式停止運行,最壞情況下將導致程式出錯。

另外一個問題是超純量CPU擁有VLIW晶片所不能提供的一個重要性能,它也是超純量晶片的一個突出優點,即在運行過程中能隨時改變指令執行條件。而VLIW處理器不能作這樣的調整,除非它採用增加了某些超純量單元的混合結構才有這樣的可能。

另外還CPU當機的問題,可以藉由預截取等手段達到最小化,不過有時候也失效。例如設計師正在截獲一個包含有下一步所需內容地址的指針時,就可能被困住。所以說要準確預測出下一步所需內容的地址就困難重重。

但對於圖像處理來說情況又有所不同,此時VLIW晶片的表現超乎水準,這是因為圖像數據通常都是按線性地址空間排列的,可以簡化圖像複製等作業的處理程序。這也是DSP成為嵌入式VLIW晶片初露鋒芒的重要原因。

[Embedded Systems Programming]

作者簡介:Alexander Wolfe是ESP的總編,曾獲Cooper Union頒發的電子工程學士學位,具嵌入式系統組合語言程式碼撰寫的經驗。




投票數:   加入我的最愛
我來評論 - VLIW架構逐漸成為嵌入式系統設計主流
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首