VLIW結構體系逐漸成為嵌入式系統設計的主流

2021-04-06 20:53:10 字數 4042 閱讀 3696

vliw結構體系逐漸成為嵌入式系統設計的主流

許多晶元設計師正在尋求一種可以替代超標量結構體系的設計方法。雖然採用管線和緩衝

技術能使超標量處理器的效能得到一定程度的提公升,但這種設計方法明顯已經過時。而不

斷得到發展的超長指令字(vliw)結構近來得到了設計師們前所未有的歡迎,本文介紹其發

展趨勢和面臨的挑戰。

alexander wolfe

總編輯《嵌入式系統程式設計》

email:[email protected]

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

陣營。而在做傳統嵌入式系統設計的廠家中,也許要數tran**eta公司推出的crusoe系列處理器

最值得關注了。

**********************

* vliw技術的發展趨勢 *

**********************

展望未來,vliw將會在嵌入式晶元設計中扮演重要角色。當然,也會面臨來自系統級晶元

、dsp和多核心晶元的挑戰。值得注意的是,這並不是非它即你的唯一選擇,因為乙個採

用vliw技術的設計同樣也能通過系統級晶元技術來完成。

那麼vliw晶元究竟是如何實現的呢?結構(或理論)上的描述相對來說比較簡單,但真正實

現起來還有許多困難(就是說,在家中嘗試做這樣的工作是不現實的)。

vliw晶元的基本原理與超標量晶元截然相反,建立vliw處理器時不需要花費太多的時間和

矽片來決定做什麼和什麼時候做,所需的硬體只要能完成簡單的計算就能在每個時鐘週期

執行大量的操作。

因此根據vliw支持者的觀點,vliw晶元的布局結構會更加合理。比如說,片上的單元是可

重複利用的(多重運算單元),單元相互間排列非常整齊,並且靠得很緊密。

另外乙個優點是,與超標量處理器相比vliw處理器的硬體設計週期會縮短很多。然而vliw

技術的根本優點還在於這樣的事實:它具有足夠的智慧型來安排並行指令資料的執行。根據

定義,術語vliw是指乙個寬-位-長的字,該字中必須預先封裝入不同的命令或操作碼,並

且在下乙個時鐘週期由vliw處理器並行執行所有的指令。也就是說,在做vliw設計時設計

師可以預先知道可以並行處理的任務,並直接指示硬體去並行執行。

這種指令的安排是由被稱為跟蹤排程(trace scheduling)的編譯器完成的。這樣的編譯器

綜合了多種技術,通過大量可能分支**出數量巨大的操作順序,最終完成並行任務的執

行排程。

而超標量晶元的指令安排都是在執行期間進行的,因此vliw具有無可比擬的優勢。由於在

一條vliw指令的執行過程中,資料打包與排程都由編譯器預先做好了,因此無需在執行期

間做出最終的排程,而這樣的排程需要在關鍵路徑上耗費大量的矽片空間和時間。

那些反對vliw的人認為,能夠有效排程這麼多並行指令的任何編譯器都將是十分複雜而且

難以編寫。單從這一點來看,確實很難說他們是對還是錯,因為vliw軟體(稱為編譯器)的

絕大部分要比它所控制的硬體落後好幾年(dsp是例外)。只有vliw編譯軟體達到了所要求

的完善程度,vliw才能生存下來並得到發展,否則它只是二十幾年後的一場夢。

**********************

* vliw技術面臨的挑戰 *

**********************

儘管vliw具有很多優點,但它仍有乙個致命的弱點使其尚不能走出實驗室進入實用領域。

這種弱點表現為在單一格式下不能提供與已有晶元相容的目標**。舉例來說,乙個帶3

個執行單元的vliw處理器不能相容於帶5個執行單元的處理器,同樣,這二種處理器都不

能相容帶10個執行單元的第三種處理器。

雖然解決這一相容性問題的程序在過去幾十年中進展非常緩慢,但目前已有所突破。事實

上,tran**eda公司設計的crusoe晶元之所以這麼受青睞就是因為它採用了**形態技術

cmt(code morphing technology),從而使它能執行x86**。

目前,圍繞著是否盡快將該技術投入實際使用以及如何使它成為主流技術的問題仍有不斷

的爭論。支持者堅信vliw會給那些一開始就具有大量內含並行指令的應用帶來良好的收益

,特別是當它用來處理畫素和聲音時將更加得心應手。實際上,多**應用是最有可能獲

益的重要領域。

但是,vliw還面臨著若干技術性挑戰,最重要的挑戰莫過於如何解決**出錯的問題,這

種問題常發生在處理器在程式分支前預先處理了某條指令,並希望該指令確實需要執行。

然而,有時候會出現指令非法的錯誤,結果是程式停止執行,最壞情況下將導致程式出錯。

另外乙個問題是超標量cpu擁有vliw晶元所不能提供的乙個重要效能,它也是超標量晶元

的乙個突出優點,即在執行過程中能隨時改變指令執行條件。而vliw處理器不能作這樣的

調整,除非它採用增加了某些超標量單元的混合結構才有這樣的可能。

再有像cpu宕機的問題,可以通過預擷取等手段達到最小化,不過有時候也失效。例如設

計師正在截獲乙個包含有下一步所需內容位址的指標時,就可能被困住。所以說要準確預

測出下一步所需內容的位址就困難重重。

但對於影象處理來說情況又有所不同,此時vliw晶元的表現是上乘的,這是因為影象資料

通常都是按線性位址空間排列的,可以簡化象塊挎貝這類操作的處理。這也是dsp成為嵌

入式vliw晶元初露峰芒的重要原因。

入式vliw晶元初露峰芒的重要原因。

[embedded systems programming]

作者簡介:alexander wolfe是esp的總編,曾獲得過cooper union頒發的電子工程學士學

位。在嵌入式系統的組合語言**編寫方面有較好的經驗。

嵌入式 軟體體系結構綜述

帶有中斷的輪轉結構 round robin with interrupts architecture 函式佇列結構 function queue scheduling architecture 實時作業系統結構 real time operating system architecture 軟體結構...

嵌入式機器視覺系統逐漸被看好

機器視覺可說是工業自動化系統的靈魂之窗,從物件 條碼辨識 產品檢測 外觀尺寸量測到機械手臂 傳動裝置定位,都是機器視覺技術可以發揮的舞台。機器視覺長期以來用於工業自動化系統中,以通過取代傳統上的人工檢查來提高生產質量和產量。視覺的使用並不僅僅在工業自動化領域 我們也看到了相機在日常生活中的大量應用,...

嵌入式系統 體系結構 學習筆記(2)

2007年10月29日星期一 緒論0 馮.諾伊曼計算機體系 l運算器,控制器,儲存器,輸入,輸出 l二進位制 表示 程式和資料 l程式和資料存放在儲存器中,計算機自動執行 1 cpu cpu由控制器和運算器組成 l控制器 統一指揮和協調計算機各部分工作以完成電腦程式指定的各種操作。由程式計數器,指令...