TW504644B - Parallel data processing - Google Patents

Parallel data processing Download PDF

Info

Publication number
TW504644B
TW504644B TW089105794A TW89105794A TW504644B TW 504644 B TW504644 B TW 504644B TW 089105794 A TW089105794 A TW 089105794A TW 89105794 A TW89105794 A TW 89105794A TW 504644 B TW504644 B TW 504644B
Authority
TW
Taiwan
Prior art keywords
data
instruction
processor
instruction word
word
Prior art date
Application number
TW089105794A
Other languages
English (en)
Inventor
Marc Duranton
Original Assignee
Philips Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/282,325 external-priority patent/US6349378B1/en
Priority claimed from US09/333,633 external-priority patent/US6405301B1/en
Application filed by Philips Corp filed Critical Philips Corp
Application granted granted Critical
Publication of TW504644B publication Critical patent/TW504644B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • G06F9/30116Shadow registers, e.g. coupled registers, not forming part of the register space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3853Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Processing (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
  • Devices For Executing Special Programs (AREA)

Description

504644 五、發明說明α) 發明領域 本發明係關於一資料處理裝置,其包含用以平行執行作 業的複數個資料處理器,由一資料處理器所執行的一作業 定義為供應該資料處理器的一指令字。 · 技藝背景 1 | 歐洲專利申請公告號碼0,3 7 3,7 1 4 (代理人摘要號碼PH N 、 1 2.7 6 2 )描述包含複數個平行作業之處理器元件的一資料 處理器。該資料處理器進一步包含每一處理器元件的一程 式記憶體。該程式記憶體含有微指令。一啟動之微指令控 制處理器元件中的作業。程式記憶體連接至兩|路。這些 線路上可出現記憶體的一重置信號,例如用以將一位址計· 數器設定成一初始位置。因此各種程式之開始得以同步 化。於此連接上,同時可出現初始化之資訊,用以對一給 ' 定的記憶體定址並且接著填滿程式資訊。 : 發明概述 本發明的一目標為:提供一種獲取較佳成本效益之資料 處理裝置。 本發明考慮下列方面。一資料處理裝置通常以一系列之 處理步驟執行某種資料處理功能。於一處理步驟中,每一 處理器執行一特殊作業。因此,於每一處理步驟中,存在 供應每一處理器的一指令字。應用於一處理步驟之指令字 · 的一組成可視為一超長指令字(VL Iff)。 於背景技藝中,每一處理器元件具有的一程式記憶體, 而且每一程式記憶體含有每一處理步驟的一指令字。亦
O:\63\63127.PTD 第5頁 504644 五、發明說明(2) 即,程式記憶體其整體包含每一處理步驟的一超長指人 (VLIW)。因此,程式記憶體將具有一相對較大的大小:因 而其將相對較費成纟。此特別應用於處 理器數目相對較大時,甚至兩者均相當大時…或者處 更甚者,由於背景技藝中之程式記憶體 =實單-;!電路上 電路之間將需要L:包;貝料處理元件的-積體 产理牛-腺π 7 Ε饥排糸、,充。该匯流排系統裝置於每一 果,其將須承載-相對較大數量的資料。結 處理裝置包含-控制處理器,其以 義平行予而=指ΐ字。指令字的-組成定 長指令字(^^)。 ” ρ私令字的一組成構成一超 ”以長所要求的記憶體空間 二般將超過—控制處理器產生指:字:共的成本節省 如;“rr獲取較佳的成= 成 ,取較佳的資訊ί::益積:j::形—式,則本發明尤其 ::積體電路,而於積體電路内制處理器形成部 不—外部記憶體以及積體電路門:广字(vuw)。 不必承載超長指令字(VLIW)。之,何匯流排系統均 、見而s ,此解除匯流棑 504644 五、發明說明(3) 系統上之要求,而有助於成本效益。 本發明之另一優點係有關下列方。 器的一系列超長指令字(VUW)決定資# 供應資料處理 資料處理功能。假設資料處理裂置必須執=二,t之 處理功能。於該情況下,必須供庫兮不同之貝料 穴馬邊貝枓處理器新的—么 列超長指令字(vLIw)。如果將這類超長指令 ^ 於-程式記憶體中’則如背景技藝,程式記憶體中 系列超長指令字(VLIW)必須以新的一系列超長指令字 (VLIW)取代。一般而言,此將費事且費時。相對^, 明中’僅有^曰令子組成程式必需以一新的指令字組成程式 取代。一般而言,此將比取代這類一系列超長指令字二 (VL IW)較不費事而費時。本發明更容易使用。 7 本發明以及可選擇性用以實行本發明之額外特性將參昭 以下所示圖示予以闡明而變得明顯。 > ^ 圖示簡述 圖1 a,1 b係概念圖,說明本發明之基本特性。 圖2,3和4係概念圖,分別說明如申請專利範圍第2,3 和4項之額外特性。 圖5係一區塊圖,說明根據本發明其一多媒體處理器的 例子 ° 圖6係一矩陣,說明圖5中所說明之多媒體處理器中一視 訊輸出單元的一規劃方案。 圖7係一概念圖,說明視訊輸出單元必須供應一顯示装 置的一視訊框。
504644 五、發明說明(4) 圖8係一流程圖,說明供應該視訊輸出單元中一主控制 處理器的一系列主要指令。 圖9係一區塊圖,說明一主控制處理器之實行。 圖1 0係一圖示,說明主控制處理器其各種類型之指令以 及這些指令中所包含之位元間的一關係。 圖示詳述 以下註解係有關參考符號。所有圖示中,類似之單項以 類似的字母參照加以指示。一單一圖示中可出現數個類似 的單項。該情況下,則於字母參照加上一數字或者字尾, 以便區別類似的單項。為了方便,該數字或者字尾可加以 省略,或者於其值不重要(不介意其值)的情況下,則可 以一星號取代。此引申出其描述以及申請專利範圍。 圖1 a,1 b於實線中說明本發明之基本特性。一資料處理 裝置DPA包含複數個資料處理器P,用以平行執行作業0。 由一處理器P所執行的一作業0係以供應資料處理器P的一 指令字I W加以定義。該資料處理裝置DPA包含一控制處理 器CP,其以指令字組成軟體IWCS為基礎而產生指令字組成 之超長指令字(VLIW)。指令字其一組成之超長指令字 (VLIW)定義平行予以執行的作業0。圖la說明指令字其一 組成之超長指令字VL I W [ X ]於一時間T = t [ i ]應用於資料處 理器P。圖1 b說明不同的控制字組成之超長指令字VL I W [y ]於一時間T= t [ i + 1 ]應用於資料處理器P。 為了方便實行圖1 a,1 b中所說明之特性,考慮下列方 面。理論上,資料處理裝置DP A可執行不同之資料處理功
O:\63\63127.PTD 第8頁 ^4644
^04644 五、發明說明(6) __ 理功J二式::,可要求以相對較少之資料描述-資料處 要求:::串超長指令字(VLiw)。結果,儲存此資料將 :以之記憶體空間。再者,咖供應控制處理 料之1 ; <將相對較低。此解除控制處理器用以接收資 性有助於成本效益。 、-果’圖2中所說明之特 :了:便實行圖i a,丄b中所說明之特性 實務ί,:般而言,-資料處理^將 此,子态,其内谷決疋該資料處理器Ρ之作業。因 而'且Γί;器CP可藉由將指令字1W寫入各種控制暫二 = = 令字(VLIW)。實務上,控制處理器 理器CP於每時rr、月:二:暫存為。例如,控制處 一和旦社八〜脈週期僅可寫入—控制暫存器。結果,纽成 超長扣5字(VL IW)可能使控制處理哭CP耗f # 、 期。於效要μ , Φ4处理叩π耗賈數個時脈週^ i動之护具扣,幻後,控制處理器cp於每時脈週期產生一 "勳之起長指令字(VLIW)。 日士假ΐ ^處理器cp將一指令字1w寫人一控制暫存哭 t 〜扣7子IW獲得立即效果。該情況下,去 理:ί避(丽)時’應該不進行任何資料處 結果,如i—之超長指令字(vliw)影響該資料處理。 字(VLIW)可子1W獲得立即效果,則一新的超長指令 用於一相對較長之資料處理…此特別應 圖明 指令字(VLIW)本質上不同於其前身時。 圖。月以下特性,其可加至圖1a,丄b中所說明之特
1_1!
第10頁 504644 五、發明說明(7) 性而選擇性應用。一資料處 控制處理器CP可將一指令;:二-前暫存器FREG, 器P進一步且有一予jW寫入5亥别暫存器。資料處理 哭p之作孝。p丄斬二存·Ε(Ϊ,其内容決定資料處理 口口尸之作業。该影子暫存器別“從 = 字IW,以響應來自控制處 存=REG接收指令 圖3之特性提供以下優:。二V/入命令LC °
寫入前暫存器FREG時,該指八田字;、、广理二CP將指令字1 W 令字IW僅於傳輸至影子暫二SREG : 即效果。指 缺資斜卢裡trn p於4日4本 〇σ 、乂侍效果。結果’雖 …、、/、处里态Ρ係根據影子暫存器SREG中所 之超長指令字(VLIW)而處理資料 勺 刖 將指令寫入前暫存哭,二:二:控制處理器MCP可 (VUW)。僅當指令字丨‘存^一==長指令字 SREG時,才需停止任衍次」二存°° EG傳輸至影子暫存器 :乂僅發生於一時脈週期巾;J : :資料處理投入一相對較高百分比之二對-所呪明的特性有助於資料處理之效益。 回
下實行®ia’ lb +所說明之特性,同時考慮以 v之方面。刖文中提到控制處理器CP可藉由將$IW 種資料處理器P所屬之控制暫存器而組成—超長指 元,LIW)。貫務上,控制處理器CP將包含一算術邏輯單 成軟:=行ϊί字組成軟體1wsc所屬的指令。指令字組 2 = = ;;寫入指令,用以將每一指令字寫入 多之育日二I。忒/况下,算術邏輯單元將需執行相對較 寫入私々,以便組成一超長.指令字^以趵。因t算術 504644 五、發明說明(8) 邏輯單元可供執行其他類型指令之時 圖4說明以下特性,其可加至圖1 &, ’目對較少。 性而選擇性應用。控制處理器cp包含一中所說明之特 路DMAC。該直接記憶體存取^接記憶體存取電 -區塊B從-記憶體嶋傳輸至心 圖”所說明之特性提供以下優點,如處理T 大型系列之指令字IW,則控制處 果寫入-相對較 存取電卿。一般而言,將要求;記憶體 定直接記憶體存取電路DMAC:,日二= 電路麗可自行執行傳輸,二: 之控制處理器cp的其他部分可執行其他:作: &果’圖4中所說明之特性有助於有效使用控制處理器 ^說明一多媒體處理器的一例子,其合併於前 i ;王:4:二兒明的特性。多媒體處理器處理包含編碼之 :):,除了其他事項外,尚提供適合用 ^ ; ”属不裂置的一視訊資料流VDS。該多媒體處理 态包含一主要介面MIF,一主要匯流排HWY,一中央處理單 ,一主要指令暫存器REG以及各種主要處理器。其中 ,不兩種主要處理器:一視訊解碼器VDEC以及_視訊輸出 早兀HDV0。該視訊輸出單元〇初包含一主控制處理哭Mcp j及下列資料處理元件:一介面IF,一寫入叉線XB/w,一 $取叉線XB/R,記憶體區塊關,處理器p,以及一資料流 輪出電路so。該資料流輸出電路s〇包括一缓衝器Βϋ{?,二
第12頁 五、發明說明(9) 多工gsMUX以及一控制哭 a 一 制暫存器。該控制暫存^母一資料處理元件具有-控 所說明的一結構。了二固5中未顯示,其具有如圖3中 及一影子暫存器。 工制暫存器包含一前暫存器以 基本上,多媒體處理器作 . 由主要指令字,而控制多媒體产::中;J理單元cpu藉 介面MIF例如從_外部 < 益之/種^件。該主要 憶體於圖5中並来顯- 匕體棱取輸入貧料IN。此記
中所含之編碼視气解碼器VDEC將輪入資料IN 料,並將其暫時健存於該:接:取付解碼視訊資 元HDVO取得解$ & ‘ 1 。要§己憶體。該視訊輸出單 此外,該心並於一特殊顯示裝置中顯示。 資料加以組合,以提 3可將解碼視訊資料和其他視訊 現在將詳细解釋、〃疋母子圖象或著混合的特性。 主控制處理器MCP供心料/理理步f。於 '址態^ ^ 入命令。前文已接到^々 兀件中之控制暫存器一載 明的-前暫存器以及:::f存包含如圖3中所說 入前暫存器中所包 /二二杰。因此,影子暫存器載 著,該指令字將決:η,以響應該載入命令。接 的資料處理元件之:業、:且態步驟之處理步驟期間相關 存器中所載入的指令字決:'邊二與xb/r之影子暫 為介面IF,資料、C 一邊為§己憶體區讎而另-邊 一控制暫存= = = =和處:^之間的連接。當 子曰存為載入一指令字時,則供應主控
第13頁 ^h〇44 五、發明說明⑽ ,處理器MCP —組態完成信號。當主控制處理器MCP接收來 供~有資料處理元件之控制暫存器的組態完成信號時,則 二應處理器p 一起始處理信號。該起始處理信號標示一 理步驟的開頭。 記悟二處理步驟中,每一處理器P處理連接該處理器P的一 於二歧區塊MB中所儲存的一特定數目之像素。一處理器p 像:處理步驟中所處理像素之數目不會超過256。所處理 理傻i數目可例如藉由一指令字加以定義。當處理器p處 處素時,土控制處理器MCP可藉由將新指令字寫入資料 —旦=:之刖暫存器,而組成一新的超長指令字(VLiw)。 主控:處理其像素後’將停止處理,並供應 該主處乍業結ί錢。當所有處理器ρ均供應 ^ ^ . 業結束信號時,則該處理步驟結束。 =處理器MCP將執行—新的組態步驟予以響應。 訊資料。例如,於式之方式處理解碼視 的-區塊透過寫入又二處/里:;中,介面IF將2 5 6像素 —第二声裡丰挪士又、,泉XB/W,而寫入記憶體區塊mbi。於 辛之巴I - 1 ’處理器1"1從記憶體區塊MB1讀取256像 ;慮器,用以將屬於同-列的數個像素定 處理器P1提供經水平過、,舍夕後各认亨疋里,、且口 接者, 入記憶體區塊MB2。於°一〜第_声、牛區塊,亚將此區塊寫 憶體區塊MB2讀取該細=中’處理器p2從記 以處理。例如,處平千過/的像素區塊,並加 处理^P2可為一垂直視訊濾波器,用以將
第14頁 五、發明說明(11) 屬於鄰近列之對應像素定詈細人 A货# 辛巴持屬於〆列,目,丨ΐ ί 果該經水平過濾之像 f £塊屬於j則该處理器P2將讀取屬於鄰近列 :過濾像素的:他區塊。接著,處;: 垂直過濾之像素的一區塊,廿胳+ p 命扠仏、,.工水千及 MB3。可能有處理器P3,p4 ,雨去4寫一入記憶體區塊 區塊MB3中所包含之經水平及二月 纟處理記憶體 ^ 塊已準備就緒,可开:部;: ;:=垂直過濾之像素區 一第四卢裡乎驟+視訊貧料流VDS。接著,於 輸至資二二出恭’將所考慮之區塊從記憶體區塊MB3傳 、枓抓輸出%路s 〇的緩衝器b υ ρ。 理之S Ξ二丄二t流輸出電路S〇於每一處理步驟接收所處 於中、一品塊,並將儲存於其緩衝器BUF中。資料流 二資料=f。其:衝器’讀取所處理之像素,而提供視 式的:::。空制器C0N具有所希望之視訊資料流VDS格 及I _〇 Θ 就列掃瞄頻率,場頻率,每列之像素數, 刻,現%之列數等方面而言。控制器CON引發於正確時 素。批^於所希望速率,從緩衝器BUF讀取所處理之像 收像i:=N進一阐”工剛X,該多工器係用以接 Hs,vs。固控制信號,例如像是水平和垂直同步化信號 號。 著’於正確時刻,在像素間插入適當之控制信 效果卜、 成 次’視訊輸出單元HDV0係由下列資料處理元件所組 XB/R,Γ料處理鍊··介面1F,寫入叉線XB/W,讀取叉線 圮憶體區塊MB,處理器p,以及資料流輸出電路
504644 五、發明說明(12) S0。主控制處 定鍊中每一元 由將適當指令 工作。一種說 種機器 HDV0, 件。該 該生產 假設 之列數 式。此 而達成 其必須 處理鍊 ^ 例如 輸出單 須有效 於每一 而且愈 處理鍊 料處理 素。 之廠房 而機器 領班組 線對應 視訊輸 矛 Π •一 可藉由 。格式 先填滿 停止或 ,將所 元 HDV0 。當時 處理步 來愈多 中之每 鍊完全 理器’決定資料處理鍊的組成。 件之資料處理特徵。主控制處理器祕传夢 字寫入資料處理元件之_剎蕲γ 係猎 +為· π蔣主_ 制暫存器而完成此 法為·叮將控制處理器MCP視為一且有各 中的-領班。該廠房對應於視訊輸出單元 對應於視-況輸出|元HDV〇中之資料處理 成一生產線,並指示其中之機器 於資料處理鍊。 叮1文爭項。 出單元ΗΜ0 列之像素數 包含適當之 轉換開始時 像素。如同 分解之前必 轉換視訊信 時,只有資 ’記憶體區 驟中,愈來 之資料處理 一記憶體區 運作,而且 必須將一單 的形式,從 水平和垂直 ’於資料處 慣例,格式 須淨空。 號之像素的 料處理鍊開 塊MB尚未填 愈多之記憶 元件變為有 塊MB均填滿 資料流輸出 一視訊信號以每一框 一格式轉換成另一袼 過濾的一資料處理鍊 理鍊完全運作之前, 轉換結束時,於資料 第一區塊提供予視訊 頭,[身料處理元件必 滿该資訊框之像素。 體區塊將填滿像素, 效。此將繼續到資料 像素為止。然後,資 電路可開始提供像 陣 圖6說明視訊輪出單元HDVQ的—規劃方案。 。此矩陣之攔表達資料處理元件。尤其,一表、、矩 彌表達所考
第16頁 五 發明說明(13)
2資料處理元件的一影子暫存器。該 S V驟ps。矩陣之細胞代表指令字。 之列表達處理 屬,矩陣其某一列細胞的一組成’亦‘ 字(VUW)係 d超長指令字(VLIW)為指令字的-組成:、-ί理步驟Ps (LIW)定義所考慮之資料處理元件應平行起長指令字 主控制處理器MCP可以各種方式組成一仃的作業。 miw)。例如,主控制處理器Mcp可藉由將字 母一控制暫存器’而組成一特殊處理步心令字寫入 (几⑺。然…控制處理器MC心驟的-上… 入-或更多之特定控制暫存器以組成—上7Λ令字寫 (VUW) ’而不將指令字寫入其他控制暫存 器保留先前之處理步驟中其所包含的指令;。4者之暫存 圖6中所說明之矩陣可對應於例如—資訊框之顯 理:驟PS[ 1 ]係執行用以顯示—資訊框的第一處处 而處理步驟PS[N]係最後處理步驟。例如,令且假丄 訊框具有70 0歹,J,而每列1 024像素。於一處理步,I 其進:步假設通常供應資料流輸出電路s〇 256輸出像素。 此表不:通常視訊信號中每列有四個處理步驟以,結果 資訊框將有四倍於7〇〇之處理步驟ps ,即每資訊框為^⑽ 個處理步驟:Ν = 280 0。 最先之少數處理步驟PS構成一資訊框其延遲的—起始化 階段,而最後之少數處理步驟PS構成—完結階段。如^文 所解釋,處理鍊必須逐步加以填充及淨空。此引申為:於 起始化階段和完結階段中’對於至少—資料處理元件,二
第17頁 504644 五、發明說明(14) 處理步驟中的一指令字係 ^ 令字加以取代。此進-步弓f 處理步驟中的—不同之指 段中’每一處理步驟將有— 於起始化階段和完結階 始化階段和完結階段間之處理指令字(VUW)。 超長指令字mm。如果;=求各種不同的 框,則-單-超長指令字(VI^ =鍊普遍用於該資訊 完結階段間之處理步驟。此)了 θ遍用於起始化階段和 一早一視訊信號從一格式轉換二,=早凡僅須將 圖7說明一資訊框,其中招另格式之情況。 ^ ^ t ^ 〇 ^ t m ^ " tp^DV〇 " ^ ^ - 入一子圖象SPIC。圖7進一步說 所組成,其中插 -FZ6。每一框區FZ係有關_特殊;:框::同之框區FZ1 控制處理器MCP所執行的控制動作之形式:圖中所不之主 於框區FZ1中,主控制處理器Mcp建構工° MPIC的一處理鍊。於框區F 不要圖象 去夕老讲1 T 主控制處理器MCP維護後 ^之處理鍊。框區FZ2包含X列,义為―整數。於框區 中’主控制處理器MCP分解該處理鍊,以顯示主要圖象 卯ic,並建構一處理鍊,以顯示主要圖象Mpic和其中所插 =的子圖象SPIC °於框區m中’主控制處理器MCp維護後 者之處理鍊。框區FZ4包含Y列,Y為一整數。於框區FZ5 中’主控制處理器MCP分解處理鍊,以顯示主要圖象Mpic 和其中所插入的子圖象SPIC,且再次建構處理鍊,以顯示 主要圖象MPIC。於框區FZ6中’主控制處理器MCp維護後者 之處理鍊。框區FZ6包含Z列,Z為一整數。
第18頁 504644
504644
五、發明說明(16) 分中所包含之處理步驟的一系列超長指令字(vuw)。對於 每一處理步驟有一不同之超長指令字(VUW)產生,並供應 予視訊輸出單元HDV0之資料處理元件。該系列之超長指 字(VLIW)引發逐一處理步驟建構用以顯示主要圖象,1(:之 處理鍊,其中該主要圖象MPIC具有其中所插入的子圖象 SPIC ° 主要指令MI5引發主控制處理器MCP連續執行γ次一副常 式PIP :YXPIP。執行該副常式PIP產生一超長指令字 (VLIW),應用於一列中所包含之處理步驟。接著,此超長 指令字(VLIW)普遍應用於框區FZ4。其引發資料處理元件 進行用以顯示主要圖象MPIC所需之處理,其中該主要圖象 MPIC具有其中所插入的子圖象spic。 主要指令MI6引發主控制處理器Mcp執行一副常式 END一PIP。執行該副常式END一PIP產生用於框區Fzf其一上 層部分中所包含之處理步驟的一系列超長指令字(ν^Ιψ)。 對於每一處理步驟,有一不同之超長指令字產 生’並供應予視訊輸出單元HDV0之資料處理元件。該系列 之超長指令字(VLIW)引發逐一處理步驟分解用以顯示主要 圖象MPIC之處理鍊,其中該主要圖象Mpic具有其中所插入 的子圖象SPIC。 主要指令MI7引發主控制處理器MCP再次執行副常式 STRT — MAIN,前文中已描述該副常式。主要指令MI8引發主 控制處理器MCP連續執行z次副常式MAIN : Z XMAIN。前文 中已描述該副常式MAIN。
第20頁 五、發明說明(17) 有1 i η::種說法,主控制處理器mcp可視為-且 二機:房的一領班。該廠房對應於視訊輪出單元 件以::對應於視訊輸出單元_中…^ :^兄法’主要指令MI可視為該領班從一經 :產…領班將一生產命令轉換成機器指 : 1而平行之指令的-集合對應於一超長指令字(v^ 主可視為啟動一產品Α其-生產線的-命上。 二為於此生產線上生…Α其X個樣品的 =且啟動-產品Β其-生產線的命令。主要指令心可1 ;此生產線上生產產品Β其γ個樣品的一命令,等等。 圖9說明圖5中所示之主控制處理器Mcp的一實行/主 制處理器MCP透過同樣顯示於圖5中之主要匯流排^ 視訊輸出單元HDVO外面的元件進行通訊。例如,主控制广 理器MCP可透過主要匯流排HWY而接收一主要指令。=控= 處理器MCP透過一控制匯流排CBUS,與視訊輸出單元肋^ 中之資料處理元件進行通訊。例如,主控制處理器可透過 控制匯流排CBUS,而將指令字傳送至資料處理元件。主控 ,處理器MCP可透過連接XC,而進一步接收來自視訊輸出 單元HDVO中之記憶體區塊MB的資料,或將資料傳送至視訊 輪出單元HDVO中之記憶體區塊MB。 ° 主控制處理IsMCP包含一主要匯流排介面HWYINT,一控 制匯饥排介面C B U S I N T ’ 一异術邏輯單元a ^ u,暫存器r e G 之組件,該組件中包括一程式計數器Pc,一中斷單元丨u之
第21頁 ^04644 五、發明說明(18)
Hi/ 一计ΐ堆豐CSTCK,一轉回堆疊RSTCK,一程式記憶 2αγ M」二貧5記憶體DMEM以及一直接記憶體存取電路心 :計算堆疊CSTCK及轉回堆疊RSTCK各具有一堆疊指 *。該堆疊指標定義所考慮堆疊的一頂端位置和一 J。以下計算堆疊CSTCK之頂端位置和第二位置將分別- =T〇s和sos。以下轉回堆疊RSTCK之頂端位置和第二 將分別稱為TOR和S0R。 置 基本上,主控制處理器Mcp作業如下。程式計數哭 含一程式計數值,通常隨著每一時脈週期而增加。程 ^值:藉由將-新的程式計數值寫入程式計數器pc而^十 、欠。耘式计數值構成程式記憶體PMEM的一位址,复 主控制處理器MCP之指令。以下這些指令將稱為Mcp指:存 一MCP指令定義算術邏輯單元ALU所執行的一作業。二 之詳細解釋,其可進一步定義用以控制轉回堆疊“ 計算堆疊CSTCK的作業。如以下所述,用以產生超二 子(V L IW )的一副常式係由一組μ c p指令所形成。 以下係一MCP指令其語法的一例子。一MCp指令包含μ位 元:b23—bO。位元b23定義一MCp指令為無條件或s 件。如果MCP指令之位元b23具有數值〇 (零),則_ ’、 令為無條件。一無條件之MCP指令必定執行。如果: 之位元b23具有數值1 (壹),則一MCP指令為有條件。曰一7 有條件之MCP指令僅於某一暫存器中之最低有效位_ 1 數值〇 (零)時才執行。位元b22,b21和bl2於不同1員、有 MCP指令間用以區別。任何類型之MCp指令可為、1之 …餘件或者
第22頁 3U4044 五、發明說明(19) 有條件。如果MCP指令之位元b22具有數值1 (壹),則一 心令為一 〇型指令。〇型指令用以將資料寫入例如可為 一暫存器的一内部記憶體位置。〇型位元指令之b2l _bl2 構成所寫入之資料。位元b 11 一 bO定義用以寫入資料的一 Z fe體位置之位址。如果記憶體位置之大小大於十位元, 則資料為符號擴充。 如果位元b22和b21皆為零(〇),則一MCP指令為一1型或 者1 A型指令。1型和1 a型指令係用以處理資料。此外,如 果位元bl2具有數值零(〇),則一MCP指令為一1型指令。一 1型指令之位元bi 1 _b0定義一位址。此位址下所儲存之資 料形成异術邏輯單元ALU的輸入資料。如果位元bi 2具有數 值宜(1) ’則一MCP指令為一 1A型。1A型指令之位元bl 1 — b0代表資料。此資料形成算術邏輯單元ALU之輸入資料。 於其供應予算術邏輯單元ALU前,可能將該資料加以符號 擴充’而形成一 16位元之二元字。 一 1型或者1A型指令包括由位元b20—bl7所形成的一運 异元部分。運算元部分就算術邏輯單元A l U以輸入資料執 行何種處理作業,以及將此處理作業之結果儲存於何處等 方面決定一作業。該結果寫入T 〇 s或寫入程式計數器p c。1 型指令具有1 6個不同作業,而1 a型指令同樣具有丨6個不同 作業。例如,一作業產生輸入資料以及T〇S内容的一”且” 組合,並將此’’且"組合之結果寫入T0S。其他作業可產生" 非或π ,π互斥或",”非且,,,”或”,”互斥非或”等組合。 如果位元b22具有數值零(〇),而且位元t)21具有數值壹
第23頁 五、發明說明(20) (心’則-MCP指令為-2型指令。2型指令 —2型指令包括由位元b2〇〜bl7所# Λ 枓。 八 b 1 (所形成的一傳輸控制邱
刀。該傳輸控制部分定義戶;^ # ^ ^ 〇F :’位元bl8—Μ7定義來源、,而㈣定義資料=: 也位址。該資料來源有四種、 的 ;/ to:T^Zt m^tf 指人並士包々A n !位址.T0S内容,s〇s内容,MCP 弓I i 1、本身< 70 — bG,其中可能有抑或沒有加上索 〇。型型和1A型指令主要用以產生圖5中所示之視訊輸 ^早tcHDVO中之資料處理元件的指令字。2型f料指令主 :!輸指令字,因而其係產生用以控制資料處理元件 ' θ存益’。如同慣例,後者之MCP指令為匯出之MCP指令。 Υ 1Α和2型之MCP指令包括由位元bl 6 _bl3所形成的— 豐控制部分。計算堆疊CSTCK之控制取決於位元bl 6 — bl5/而轉回堆疊RSKK之控制取決於位元Η4—Μ3。計.算 堆豐CSTCK有四個控制動作,且轉回堆疊RSTCK有四個控制 乍位元bl6—bl5與位元bi4 — bl3之值決定執行四個各 別控制動作中何者。 計算堆疊CSTCK之四個控制動作為Nop,Cpy,Psh和 P〇P ° N〇p控制動作並未改變計算堆疊RSTCK。Cpy控制動作 將1之、内容複製到S〇S。於算術邏輯單元ALU執行MCP指令 =刖完f此複製。Psh控制動作增加堆疊指標。結果,堆 豐中於^指令前為TOS之位置,於指令後變成SOS。指令前之 T〇S内容於指令後複製到T0S,其為一新的位置。如果由
第24頁 504644 五、發明說明(21) - MCP指令中之另一部分所定 的内容可重宮。P:! 的一作業修正T0S,則此複製 ”'、〇p ^工制動作減少堆疊指桿。社果,摊蟲 中:指令US0S,於指令後變成TQS^^;^堆怎 轉回堆豐RSTCK之四個控制動作 Rpop。Rnop動作並未改料姑,田 Kpsn ^ 加堆疊指標」;ί ;文;:”4RSTCK。控制動作_增 --^ t ,T0R 〇 , 二指V,、果’堆疊中於指令前之位= S0R。指令前為tor之肉☆ i、相7後變成 為一新的位置。如果^p’於指令後將其複製到S〇R,其 業修正TOR,則此;果制由:指令其另一部分所定義的一作 變成信。果土隹宜中指令前為S0R之位置,於指令後 應注意’於算術漏击口 口口 …指胃,湖執行:考慮術指令前增 爆出型,指令的、_:推後^^堆疊指標。因此,隨後接著一 變。 h IMCP指令將保持堆疊指標未改 應進一步注意,原貝 制動作其執行則型:文中所 7堆®相關的控 -作業相互獨立:上型指令之…部分中所定義的 2型指令之傳輪控制H 壬何堆疊相關的控制動作其執行與 立。因此,可有L部分中所定 疊位置其-内:;;ΓΓ如果運L元部分定義含-堆 堆疊控制部分定義H —作業’例如4T〇R ’而且MCP中之 疋義含該相同堆疊位置其一内容修正的 504644 五、發明說明(22) 疊控制動作,則該運算元部分具有優先權。 圖1 0說明前文所述之各類型MCP指令以及這些指令中所 包含之位元b23 — b21和bl2間的關聯。圖10中,參考字母 係用以指定各種類型之MCP指令·· UNC0ND指定一無條件指 令’COND為一有條件指令,而Τρ〇,τρι,ΤΡ1Α和TP2分別 私疋一〇型,1型,1Α型,和2型指令。圖丨〇進一步包括用 以心示後四個M C ρ指令其本質的參考字母。一 〇型指令係用 j寫入貢料·· WRT。一 i型指令係用以從一内部記憶體讀取 =料,並處理此資料RD&PR〇c。—1A型指令係用以處理該 曰7中所包含之資料,亦即,用以立即處理資料I p⑽C。 二2型指令係用以傳輸資料trnsfr。圖1〇進一步 元部分-·〇ρ。,-傳輸控制部分观,和一 堆豐控制部分·· STC的字母參考。 執行1y曰接'可Θ引發圖9中所示之直接記憶體存取電路DMAC Ϊ 2;:取會期。於一直接記憶體存取會期 的-指令字區塊傳輪至圖7 : ζ—::?中所包含 各種資料處理元件的扣制斜六所。不之視矾輸出單元ΗΜΟ中 憶體存取會期的一起:位:::二MCP指令定義該直接記 記憶體存取模式。 ° 〇 換式。有三種不同之直接 於一第一直接記憶體存取模 MAC將指令字寫入_且 、'中 直接记憶體存取電路 第 -指令字區塊寫入—控址之控制暫存器範圍。第 二指令字寫入—杵制子态’其位址為起始位址,而 制暫存器’其位址為該起始位址加 504644 五、發明說明(23) 壹,等等。 於一第二直接記憶體存取模式中,首先直接記憶體存取 電路DMAC讀取一模板。該模板係一二元字,其中每一位元 對應於一具有連續位址之控制暫存器範圍中一不同的控制 暫存器。該範圍開始於起始位址。效果上,直接記憶體存 取電路DMAC逐一位元讀取該模板,並將第一指令字區塊寫 入對應於首先讀到而值為壹(1 )之位元的控制暫存器,將 第二指令字寫入對應於其次讀到而值為壹(1 )之位元的控 制暫存器,等等。 於一第三直接記憶體存取模式中,於直接記憶體存取電 路DMAC將一指令字寫入一控制暫存器之前先讀取一偏移 值。該指令字所寫入之控制暫存器的位址為前面所寫入之 控制暫存器的位址加上該偏移值。一區塊其第一指令字所 寫入之控制暫存器的位址為起始位址加上最先讀到之偏移 值。 較佳者,主控制處理器M C P使用直接記憶體存取電路 DMAC組成一超長指令字(VLI W),該超長指令字(VLI W)非常 不同於前置超長指令字(VLIW),抑或者沒有前置超長指令 字(VL I W )。例如,一直接記憶體存取會期可用以起始化視 訊輸出單元H DV 0。一直接記憶體存取會期使主控制處理器 MCP免於須將相對較多之指令字寫入控制暫存器。如同慣 例,主控制處理器M C Ρ將此工作指定至直接記憶體存取電 路DMAC。然後,直接記憶體存取電路DMAC使用控制匯流排 CBUS將指令字寫入控制暫存器。因此,於一直接記憶體存
O:\63\63127.PTD 第27頁 504644 五、發明說明(24) 取會期期間,主控制處理器MCP中之其他元件無法存取控 制匯流排CBUS。 主控制處理器MCP不必使用直接記憶體存取電路])MAC組 成類似一 β置超長指令字(VLIW)的一超長指令字(VLIW)。 此一類似之超長指令字(VUW)可藉由修正相對較少的控制 暫存器内容而組成。然後,主控制處理器MCp可將新的指 令字直接寫入適當之控制暫存器。
因此,從規劃之觀點,有兩種用以組成超長指令字 (VLIW)的技術。一第一暫存器為··使用一或更多Mcp指令 1丨發主控制處理器MCP將新的指令字寫入特定控制暫存 杰。較佳者’此技術係用以組成一類似之超長指令字 (VLIW)。一第二技術為:使用—Mcp指令引發主控制處理 器MCP啟動一直接記憶體控制會期。較佳者,此技術係用 f組成非常不同於一前置超長指令字(vuw)的一超長指令 字(VLIW) ’或者用以起始化視訊輸出單元HDv〇。 以說明本發明,而非限制本發 於所附之申請專利範圍内。於 前文之圖示及其描述係用 明。顯然地,有多種替代落 此考慮下,作成以下結論。
圖1中所說明之指令字組成軟體IWCS :體内。可於-工廠中將其寫入該記憶體亦可 一:㈡者:ΐ指軟體1WSC從-資訊載體複製 。己f思脰0接者,该使用者可引& 理裝置DPA執行某-功能。包含指Y 所說明之f料 訊載體可為像是一磁碟。該指人7 、、成軟體IWSC之1 7子組成軟體同時可透過
504644 五、發明說明(25) 如像是網際網路的一通訊網路而提供。 有數種方式可用於各種單元上,將功能或者功能元件實 體散佈。於此考慮下,圖示為極圖解式,分別僅代表本發 明的一可能之具體實施例。因此,雖然一圖示將不同之功 能元件展示成不同的區塊,但其不排除將某些功能元件或 者所有功能元件實行成一單一實體單元。 一申請專利範圍中之任何參考符號不應解釋成申請專利 範圍的限制。
第29頁

Claims (1)

  1. 504644 丄1: m y/年 /月 案號 8910R7Q4 六、申請專利範圍 1· 一種資料處理裝置(DPA),其中包含用以平行執行 業之複數個資料處理器(Ρ ),一處理器(ρ )所執行的—乍 (〇)係以供應至該資料處理器(Ρ)的一指令字(IW)加以a業 義’其特徵在:該資料處理裝置(DPA )包含一控制處理 (CP),其係以指令字組成軟體(IWCS)為基礎而產生指令@〜 之組成(VLIW),指令字的一組成(VLIW)定義平行執杆:字 業(0)。 之作 2 ·如申請專利範圍第1項之資料處理裝置,其特徵 該資料處理裝置包含一程式記憶體(PMEM),用以儲存护八 字組成副常式(SR0U),一指令字組成副常式引發該控=二 理器(CP)產生指令字的至少一組成。 列處 3 ·如申請專利範圍第1項之資料處理裝置,其特徵 一資料處理器(P)具有一前暫存器(FREG),該控制處理:· (CP)可將一指令字(iw)寫入其中;以及一影子暫存器° (SREG),其内容決定該資料處理器(p)之作業,該影°子 存器(SREG)接收來自前暫存器(FREG)之指令字(IW),言 應來自該控制處理器(CP)的一載入命令(LC)。 響 4 ·如申請專利範圍第1項之資料處理裝置,宜 該控制處理器(cp)包含一直接記憶體存取電路fDMA "一· 以將指令字(Iff)的一區塊(B)從一記憶體(MEm) ^仏用 數個資料處理器(P)。 曰仃得输至 5· —種用於一資料處理裝置(DpA)之電腦程 資料處理裝置包含一控制處理器(CP)以及複 座°〇 ’讀 器⑺,-資料處理器m所執行的一作業(0)數:二處至理
    0:\63\63Γ27-91()709.ρια
    504644 修正 案號 89105794 六、申請專利範圍 该資料處理器(p)的一指令字(I W)加以定義,該電腦程式 產品包含指令字組成軟體(丨WCS ),以其為基礎,該控制處 理器(CP)可產生指令字之組成(VLIW),指令字的一組成 CVLIW)定義平行執行之作業(〇)。 「μ β . —種使得一資料處理裝置(DP A )執行某一功能之促成 :;方法,該資料處理裝置(D P A)包含一控制處理器(c P)以及 .複數個資料處理器(D P ),一資料處理器所執行的一作業 :$〇 )係以供應至該資料處理器(P )的一指令字(I W)加以定 ,該促成方法包含提供指令字組成軟體(IWCS)的步驟, 7以該指令字組成軟體為基礎,該控制處理器(CP)可產生指 ^令字之組成(VLIW),指令字的一組成(VLIW)定義平行執行 之作業(0)。 S 之
    O:\63\63127-910709.ptc 第34頁
TW089105794A 1999-03-31 2000-03-29 Parallel data processing TW504644B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/282,325 US6349378B1 (en) 1999-03-31 1999-03-31 Data processing using various data processors
US09/333,633 US6405301B1 (en) 1999-06-15 1999-06-15 Parallel data processing

Publications (1)

Publication Number Publication Date
TW504644B true TW504644B (en) 2002-10-01

Family

ID=26961376

Family Applications (1)

Application Number Title Priority Date Filing Date
TW089105794A TW504644B (en) 1999-03-31 2000-03-29 Parallel data processing

Country Status (7)

Country Link
EP (1) EP1088266B1 (zh)
JP (1) JP2002541546A (zh)
KR (1) KR20010052436A (zh)
CN (1) CN1146785C (zh)
DE (1) DE60042230D1 (zh)
TW (1) TW504644B (zh)
WO (1) WO2000060457A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2397140A (en) * 2003-01-13 2004-07-14 Advanced Risc Mach Ltd Data processing performance control
GB2397667A (en) * 2003-01-27 2004-07-28 Imagination Tech Ltd Multiple register load using a very long instruction word
CN1809810B (zh) 2003-06-25 2010-06-09 皇家飞利浦电子股份有限公司 指令控制数据处理设备
CN101526893B (zh) * 2008-03-06 2014-02-19 华为技术有限公司 一种超长指令字指令并行执行方法及装置
US8731891B2 (en) * 2011-07-28 2014-05-20 Saudi Arabian Oil Company Cluster 3D petrophysical uncertainty modeling
US8924596B1 (en) * 2013-12-06 2014-12-30 Concurrent Ventures, LLC System and method for dividing and synchronizing a processing task across multiple processing elements/processors in hardware

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1338957A3 (en) * 1993-11-05 2003-10-29 Intergraph Corporation Software scheduled superscalar computer architecture
US5787302A (en) * 1996-05-15 1998-07-28 Philips Electronic North America Corporation Software for producing instructions in a compressed format for a VLIW processor
US6313845B1 (en) * 1998-06-30 2001-11-06 3Dlabs Inc. Ltd. Method and apparatus for transporting information to a graphic accelerator card

Also Published As

Publication number Publication date
CN1306641A (zh) 2001-08-01
JP2002541546A (ja) 2002-12-03
EP1088266B1 (en) 2009-05-20
KR20010052436A (ko) 2001-06-25
EP1088266A1 (en) 2001-04-04
CN1146785C (zh) 2004-04-21
DE60042230D1 (de) 2009-07-02
WO2000060457A1 (en) 2000-10-12

Similar Documents

Publication Publication Date Title
KR100327778B1 (ko) 다중명령 세트를 이용한 데이터 프로세싱 방법
US7506137B2 (en) Methods and apparatus for initiating and resynchronizing multi-cycle SIMD instructions
TWI603262B (zh) 緊縮有限脈衝響應(fir)濾波器處理器,方法,系統及指令
TW504644B (en) Parallel data processing
US7788472B2 (en) Instruction encoding within a data processing apparatus having multiple instruction sets
TW479196B (en) Data processing by means of an arithmetic logic unit and a stack
US9830150B2 (en) Multi-functional execution lane for image processor
EP1220091B1 (en) Circuit and method for instruction compression and dispersal in VLIW processors
TW476887B (en) Data processor comprising an arithmetic logic unit
TWI225202B (en) Surface computer and computing method using the same
US20030009652A1 (en) Data processing system and control method
JP2003517684A (ja) 複数の独立の専用プロセッサを有するデジタル信号プロセッサ
EP1367485B1 (en) Pipelined processing
EP1367484B1 (en) Instruction encoding
US6405301B1 (en) Parallel data processing
JPH1091432A (ja) プログラム実行方法およびプログラム実行装置
JP2009175830A (ja) Simd型マイクロプロセッサ
JP2010033426A (ja) Simd型マイクロプロセッサおよび演算方法
TW426832B (en) Central processing unit having an extension instruction
JP2000298589A (ja) マイクロプロセッサ
JPH04273529A (ja) 並列演算回路

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees