新四季網

指令控制數據處理設備的製作方法

2023-05-23 04:24:16 1

專利名稱:指令控制數據處理設備的製作方法
技術領域:
本發明涉及一種指令控制數據處理設備。
背景技術:
PCT專利申請No.WO00/60457公開了一種VLIW處理設備。VLIW處理設備包含多個功能單元,其中每個功能單元能夠與其它功能單元並行執行指令。VLIW處理設備處理VLIW指令字,其中每個VLIW指令字通常包含用於由各個功能單元並行執行的多條指令。VLIW處理器具有使得能夠高速執行程序化的處理任務的優勢,但是獲得這一優勢的代價是高存儲器使用和高功耗。WO00/60457以減少VLIW處理設備的程序所需的指令存儲器大小為目標。為了達到這一目的,該處理設備響應於存儲器中指令而組成VLIW指令。因此,來自存儲器的原始指令被轉換為VLIW指令字中的多條指令,被不同的功能單元並行執行。
引起高功耗的原因之一,是並行發送許多指令的需要和對所發送的每條指令訪問寄存器文件的需要。這些問題在WO00/60457中沒有涉及。

發明內容
本發明的目的之一是在指令控制處理設備中降低功耗。
本發明的目的之一是尤其在VLIW處理設備中降低功耗。
在權利要求1中闡明了根據本發明的設備。該設備包含一組功能單元,該組功能單元並行連到發送槽和寄存器文件的埠,用於可選地執行從發送槽發送的、具有來自至少一個埠的操作數的指令以及將結果寫到至少一個埠。除了這些可選指令,該設備提供了組合指令,其中該組中多於一個功能單元響應於該組合指令,來自多個功能單元中的第一個的結果被路由到多個功能單元中的第二個的操作數輸入端,以響應該組合指令。第二個功能單元的結果被用於生成該組合指令的結果。通過使用組合指令,可以減少對於給定任務的程序執行過程中需要向功能單元組發送的指令數量,因而降低了功耗。與WO00/60457相比,該組合指令並不被分為需要分別發送的多條指令,而是在一個發送槽中被發送。因此,通過部分地避免為不同的功能單元並行地發送指令的需要,該設備部分地違背了VLIW處理的基本原理,即使如此,當然,其他指令可以在同一VLIW指令字中被與組合指令並行發送。
在一個實施例中,該處理設備具有可選擇的指令周期時鐘速率。通過降低不需要更高時鐘速率的處理任務執行過程中的時鐘速率,功耗得以降低。當處理任務需要高速執行時,時鐘速率增加到最大值,此時所有單獨的功能單元僅可以在一個指令周期內執行該指令。根據本發明的一個方面,構建該設備,使得多於一個功能單元在同一指令周期中響應組合指令,串聯地工作,並且時鐘速率可以增加到高速,使得組合指令的串聯執行不再適合於在一個指令周期之內。當時鐘速率增加到這樣的水平時,避免使用組合指令,例如通過只執行不包含組合指令的程序,或者在使用和不使用組合指令以分別完成相同任務的可選的程序版本之間切換,或者通過將組合指令轉換為由不同功能單元在連續的周期中執行的多條指令。
這樣,可以實現節省更多的功率,這是因為當該設備在較低的時鐘速率下執行時,執行處理任務所需發送的指令總數可以通過將多條指令組合成組合指令而減少,此時發送槽只需在一個指令周期內活躍。當組合指令使用的指令周期不比正常指令多時,它的使用就減少了執行程序所需的時間,使得可能進一步降低必須在指定時間間隔內執行的處理任務的時鐘速率。
在另一個實施例中,該處理設備是包含多個功能單元的VLIW處理器,其中來自一個指令字的多條指令可以被並行發送到該多個功能單元,以並行執行。在該實施例中,提供了從另外的功能單元的結果輸出端到功能單元中的第二個的操作數輸入端的旁路連接,該另外的功能單元與接收組合指令的功能單元組並行接收指令,該第二個功能單元響應組合指令並還接收第一個功能單元的結果。優選地,該旁路連接不包括用於使功能單元在多個指令周期內所執行的執行級流水線化的鎖存器。因此,可以使用包含了組合指令和另一條指令的VLIW指令字,其中該組合指令用於一個組中,該另一條指令用於傳送在組合指令執行過程中所用操作數的功能單元中。結果,在足夠低的時鐘速率下只需發送較少的指令,而仍可以維持足夠的速度。
在另一個實施例中,組合指令的執行可以擴展到多於一個指令周期。因此,還可以以串聯的執行不適合於在一個指令周期內的時鐘速率來執行組合指令。在一個實施例中,提供多個中間寄存器,用於當兩個功能單元都響應組合指令時,鎖存從一個功能單元路由到另一個功能單元的結果。但是,這需要寄存器的額外功耗並且將執行分開。在另一個實施例中,功能單元之間不使用寄存器,使用行波流水線(wave pipelining)在跨越多於一個指令周期的時間間隔的一部分中,將結果從一個功能單元傳遞到另一個功能單元。
附圖簡述將使用以下附圖描述本發明的這些和其它目的及其有利方面

圖1示出處理設備;圖2示出一組功能單元;圖3a、b示出時序方面;圖4示出多組功能單元;圖5示出另外的功能單元組。
具體實施例方式
圖1示出處理設備,包括指令存儲器17、具有發送槽11的指令發送單元10、功能單元組12、寄存器文件14、時鐘電路16、時鐘速率選擇電路18和程序計數器19。程序計數器19具有連到指令存儲器17的地址輸入端的輸出端。指令存儲器17具有連到指令發送單元10的輸出端。指令發送單元10的發送槽11包含連到功能單元組12的用於操作碼的輸出端,以及連到寄存器文件14的用於第一個操作數寄存器地址和第二個操作數寄存器地址和結果寄存器地址的輸出端。功能單元組12具有連到寄存器文件14的輸出端的操作數輸入端,以及連到寄存器文件14的輸入端的結果輸出端。
儘管只示出一個功能單元組12,應當理解可以並行存在多個組。在這種情況下,指令發送單元包含對於每個功能單元組的各自的發送槽,具有連到相應組的操作碼輸入端的輸出端以及連到寄存器文件14的多個寄存器地址輸出端。在這種情況下,寄存器文件14還具有對於每個功能單元組的獨立的結果輸入端,以及獨立的操作數輸出端。
時鐘速率選擇電路18具有連到時鐘電路16的控制輸入端和程序計數器19的輸出端。時鐘電路16具有連到指令發送單元10和寄存器文件14的時鐘輸出端。指令發送單元10連到程序計數器19。在操作中,來自時鐘電路16的時鐘信號定義連續的指令周期。通常在每個指令周期中執行各自的指令。在每個指令周期中指令發送單元10向功能單元組12發送作為指令一部分的命令操作碼。同樣,指令發送單元10在每個指令周期中向寄存器文件14發送指令的操作數寄存器地址,並且指令發送單元10在每個指令周期中向寄存器文件14發送指令的結果寄存器地址。由於流水線,在同一指令周期中發送的操作碼、操作寄存器地址和結果寄存器地址可以屬於不同的指令。
在指令周期中,功能單元組12使用從寄存器文件14接收的一個或多個操作數,執行來自指令發送單元10的操作碼所標識的命令。
圖2更加詳細地示出功能單元組12。組12包含多個功能單元20a、b(為了清楚,只示出兩個,但是可以存在更多)。組12的操作數輸入端22a、b連到功能單元20a、b的操作數輸入端。功能單元20a、b的結果輸出端通過輸出復用器26連到組12的結果輸出端。操作碼輸入端24連到功能單元20a、b的操作碼輸入端和輸出復用器26(優選地,操作碼24通過預解碼器連到功能單元20a、b和輸出復用器26,但是為了清楚沒有示出)。
組12還包含控制單元28和輸入復用器29。輸入復用器29具有連到該組的操作數輸入端22a的第一個輸入端和連到第二個功能單元20b的輸出端。輸入復用器29的第二個輸入端連到第一個功能單元20a的結果輸出端。控制單元28連到操作碼輸入端24並且具有連到輸入復用器29的選擇輸入端的輸出端。
在操作中,所接收的第一種操作碼中的每一個標識執行該操作碼的功能單元20a、b之一。對於該第一種操作碼,控制單元28使得輸入復用器29傳遞來自操作數輸入端22b的操作數。所標識的功能單元20a、b使用應用於其操作數輸入端的操作數來執行操作碼所標識的處理操作(例如加法,或乘法)。所標識的功能單元20a、b輸出結果。輸出復用器26將結果從所標識的功能單元20a、b的傳遞到功能單元組12的結果輸出端。
圖3a示出功能單元20a、b執行操作的時序方面。上部跡線30指示連續的指令周期。每個指令周期持續T1持續時間。最上一行下面的最小時間間隔32、34指示功能單元20a、b在執行過程中生成結果所需的時間間隔。時間間隔32、34可以依賴於操作碼所選擇的操作類型,依賴於執行該操作的功能單元20a、b以及操作中所使用的操作數數據。但是結果總是在指令周期結束之前就是可用的,也就是說該間隔的持續時間比T1短。應當注意圖3a只示出在一個功能單元中執行所需的時間間隔。在實際中,操作可以流水線化,所以每條指令的處理包括指令讀取級、操作數讀取級、執行級和結果寫入級,如果在鎖存了中間結果之後需要的話,不同的級被在連續的指令周期中執行。時間間隔32、34隻涉及執行級。
操作碼還包括第二種操作碼,其導致功能單元20a、b的級聯操作。當第二種操作碼應用於操作數輸入端24時,控制單元使得輸入復用器29將結果從第一個功能單元20a傳遞到第二個功能單元20b的操作數輸入端。輸出復用器26將結果從第二個功能單元20b傳遞到功能單元組12的結果輸出端。
作為第二種操作碼實例的是一個操作數加上一個平方和的計算的操作碼result=A*A+B
在該實例中,組12的第一個功能單元20a是乘法器,而組12的第二個功能單元20b是加法器。該操作具有包含A和B作為操作數的寄存器的寄存器地址。響應於該操作碼,組12的第一個功能單元20a形成乘積A*A。響應與同一操作碼,控制單元28使得復用器29將乘積A*A作為操作數傳遞到組12的第二個功能單元20b。仍然響應於同一操作碼,組12的第二個功能單元20b形成所接收的乘積A*A和操作數B的和A*A+B。應當理解,這一操作碼只是一個示例。可以為其他操作(例如,A*A-B、A/(A+B)、A*B+A等等)提供操作碼,可以支持這樣單一的操作碼或者多個操作碼。
當通過在命令中包括多於兩個操作數寄存器地址,或通過在同一寄存器中包括多個操作數而有更多的操作數可用時,可以執行更加複雜的操作。例如,當操作數包含一對數字(ReA,ImA)和(ReB,ImB)時,其中每個數字表示複數的實部和虛部,組合操作可以命令乘法器功能單元分別形成實部的乘積(ReA*ReB)以及虛部的乘積(ImA*ImB),並命令加法器將兩個乘積相加。在這種情況下,組12優選地包含至少兩個乘法器和一個加法器作為功能單元,以及在控制單元28控制之下的復用器,以選擇加法器是從操作數輸入端22a、b還是從乘法器接收操作數。
圖3b示出執行第二種操作碼所選擇的操作的執行級的時序方面。在這種情況下,指令周期的持續時間是T2。到該操作的結果可用之前所需的時間間隔36的持續時間是第一個時間間隔36a的持續時間、第二個時間間隔36b的持續時間和第三個時間間隔36c的持續時間之和,其中該第一個時間間隔36a是第一個功能單元20a所需的,該第二個時間間隔36b是將第一個功能單元20a的結果傳遞到第二個功能單元20b的操作數輸入端所需的,該第三個時間間隔36c是第二個功能單元20b所需的(更精確地說,替代第二個時間間隔36b的持續時間的是,應當考慮將結果從第一個功能單元20a的輸出端傳遞到第二個功能單元20b的操作數輸入端所需的時間間隔的持續時間減去將外部操作數傳遞到該操作數輸入端所需的間隔的持續時間而得到的差值;這一差值可以忽略)。
在第二種操作的結果可用之前的時間間隔36的總持續時間比功能單元20a、b對於組成操作的操作所需的時間間隔36a、36c的持續時間長。儘管如此,該總持續時間應當適合於在指令周期的持續時間T2內。
時鐘速率選擇電路18向時鐘電路16提供信號以選擇時鐘速率,也就是指令周期的持續時間T1或T2。優選地,時鐘速率設置得儘可能低(對於指令周期持續時間,設置得儘可能長),而沒有對在要求的時間間隔內執行要求的任務的能力做出折衷。通過降低時鐘速率,降低了設備的功耗。
可選的時鐘速率包括慢時鐘速率和快時鐘速率,其中以慢時鐘速率,第二種指令的執行持續時間適合於在一個指令周期(持續時間T2)內,而以快時鐘速率,第二種指令的執行持續時間不適合於在一個指令周期(持續時間T1)內。當時鐘速率被設置為慢時鐘速率時,使用帶有第二種操作碼的指令來執行任務。當時鐘速率被設置為快時鐘速率時,不使用帶有第二種操作碼的指令來執行任務,例如通過用帶有第一種操作碼的多條指令來代替帶有第二種操作碼的每條指令。通過在低時鐘速率下使用帶有第二種操作碼的指令,減少了執行任務所需的指令周期數。因此加快了執行速度。
可以採用任何方法調整執行任務所使用的指令。在一個實施例中,指令存儲器17存儲了至少兩個執行同一任務的程序的指令,一個程序使用帶有第一種操作碼的指令而另一個程序不使用這種指令。在該實施例中,時鐘速率選擇電路18除了選擇時鐘速率之外還選擇相應程序,例如通過在任務執行開始時設置程序計數器19的初始值。
然而,可以使用許多其它方法來避免在任務執行過程中使用第二種操作碼。例如,指令可以根據所設置的時鐘速率,被執行而跳到帶有第二種操作碼的程序或者不帶有這種操作碼的程序。同樣,可以根據所選擇的時鐘速率,將指令地址轉換到物理存儲器地址,以選擇適當的指令。在這些情況下,不需要提供執行任務的整個程序的可選版本(帶有和不帶有第二種操作碼)而只為包含這樣的指令的程序部分提供可選版本(在這種情況下,帶有第二種操作碼的指令優選地只包括在頻繁執行的部分中)。作為選擇,如果選擇了快時鐘速率,指令發送單元甚至可以被動態地(on the fly)安排將帶有第二種操作碼的指令轉換為不帶有這種操作碼的多條指令。
優選地,第二種操作碼支持頻繁執行的指令。
儘管用具有時鐘速率選擇電路18的實施例說明了本發明,要理解的是,可以用其它方法選擇時鐘速率,例如在程序計數器值部分的控制下,從而根據所執行指令所屬的程序段來設置時鐘速率,或者在來自程序的指令的控制下。
圖2示出一個實施例,其中幾個功能單元20a、b響應同一個第二種操作碼。此外,控制單元28響應該操作碼並且輸出復用器26隻輸出來自響應的功能單元20a、b之一的結果。但是,要理解的是,可以使用(預)解碼器(未示出)來檢測哪個功能單元必須被激活以響應操作碼並激活這些功能單元20a、b。在這種情況下,當操作碼是第一種時,(預)解碼器每個指令周期激活一個功能單元20a、b,而當操作碼是第二種時,激活功能單元的組合。如所示,功能單元20a、b中響應於第二種操作碼而被激活的每一個功能單元還可以單獨響應第一種操作碼。因此,指令單元20a、b被有效地重用。但是,可選地,功能單元20a、b中用於級聯地執行第二種操作碼的一部分可以是不單獨響應任何第一種操作碼的類型。因此功能單元組12中要引入一定的開銷。
儘管以示例的方式只示出單個的輸入復用器29,以及兩個功能單元20a、b,要理解的是,實際中可以在組12中的功能單元20a、b或其它功能單元(未示出)的輸出端之間提供更加複雜的連接網絡。
圖4示出用於圖1所示處理設備中的兩個功能單元組12、40,實現了本發明的另一個方面。組12、40中的每一個具有連到指令發送單元(未示出)各自的發送槽的操作選擇輸入端24、48,並且連到寄存器文件(未示出)的讀和寫埠。因此,該設備是包含用於不同組12、40的多個實質上獨立的可選命令的VLIW處理器(超長指令字處理器)。第一個組12被如圖2所示設置,除了增加了另外的復用器44,組12的第二個操作數輸入端22b連到其第一個輸入端。另外的復用器44的一個輸出端連到第二個功能單元20b的操作數輸入端。另外的復用器44具有連到控制單元28的控制輸入端。
第二個功能單元組40包括多個功能單元40a、40b。第二個組40中的一個功能單元40b的輸出端通過旁路連接42連到另外的復用器44的第二個輸入端。
在操作中,控制單元28識別組合指令的操作碼何時發送到功能單元組12。如果這樣,控制單元28使得復用器29、44將來自組12的第一個功能單元20a和來自另外的組40的功能單元40b的操作數傳遞到組12的第二個功能單元20b的操作數輸入端。組12的第一個和第二個功能單元20a、b都響應組合指令,第一個功能單元20a接收來自組12的操作數輸入端22a、b的操作數,復用器26將結果從第二個功能單元20b傳遞到為組12提供的寄存器文件的寫埠。
存儲在指令存儲器17的程序包含指令,該指令包含用於兩個組12、40的命令。該指令包含用於第一個組12的組合命令,而用於第二個組40的命令包含激活第二個組的第二個功能單元40b的操作碼。因此,響應於該指令,第一個組12的第一個功能單元20a和第二個組40的第2個功能單元40b都生成結果,其中所述結果用作組12的第二個功能單元20b的操作數。來自第二個組40的第二個功能單元40b的結果通過旁路連接42在組12、40之間傳遞。復用器29、44將結果作為操作數傳遞到第一個組12的第二個功能單元20b。
作為示例,這種指令可以用於乘-加操作,其中兩對操作數的乘積相加result=A*B+C*D在該示例中,第一個組12的第一個功能單元20a是乘法器,第二個組40的第二個功能單元40b是乘法器,而第一個組12的第二個功能單元20b是加法器。該指令包含被發送到第一個組12的乘-加命令(組合命令)以及被發送到第二個組40的乘法命令。乘-加命令具有寄存器的寄存器地址,其包含A和B作為操作數,而乘法命令具有寄存器的寄存器地址,其包含C和D作為操作數。響應於該指令,第一個組12的第一個功能單元20a和第二個組40的第二個功能單元40b分別形成乘積A*B和C*D。響應於同一乘-加指令,控制單元28使得復用器29、44將這些乘積作為操作數傳遞到第一個組12的第二個功能單元20b。仍然響應於同一乘-加指令,第一個組12的第二個功能單元20b形成所接收乘積A*B與C*D的和A*B+C*D。
這種組合的乘法和加法是頻繁出現的指令組合,例如在複數乘法中,因此該指令大大節省了這種操作所需發送的指令的數量。但是,應當認識到,本發明不僅限於這一指令。例如,可以將類似技術應用於乘法和減法,以計算A*B-C*D,或者應用於某個程序中出現的任何其他操作組合。該設備可以只支持一條組合指令的操作碼或者支持多條這種指令的操作碼。
應當注意的是,當用圖4的實施例的功能單元執行程序時,當指令周期速率太快而不能連續容納第二個組40的第二個功能單元40b和第一個組12的第二個功能單元20b的延遲時,可以調整該程序以消除組合指令,如圖2的上下文中所討論的。組合指令可以提供對來自不同功能單元(替代第二個組40的第二個功能單元40b)的結果的選擇,用作第一個組12的第二個功能單元20b的操作數。這些不同的功能單元可以是單一的組40的一部分或多個不同組的一部分。在不背離本發明的情況下,第二個組40可以只包含一個功能單元(第二個功能單元40b)。
圖5示出用於該設備的可選的功能單元組12。到目前為止示出的實施例中,組合操作在單一的指令周期中執行。在圖5的實施例中,使用了多個指令周期。功能單元組12包含控制寄存器50,該控制寄存器50具有連到控制單元28的輸入端和連到復用器29、44以及第二個功能單元20b的控制輸入端的輸出端。復用器29、44的第一個數據輸入端連到操作數輸入端22a、b。結果寄存器52、54配備有連到復用器29、44的第二數據輸入端的輸出端。結果寄存器52、54的輸入端連到組12中一個或多個功能單元(例如20a)的結果輸出端,和/或連到其它組(未示出)中一個或多個功能單元的結果輸出端。為了清楚,未示出這些輸入連接。
在操作中,控制單元28通過使控制寄存器50載入用於控制復用器29、44和第一個組12的第二個功能單元20b的信息,來響應為了第一個指令周期中的執行而發送的組合指令。在第一個指令周期之後的第二個指令周期中,該信息控制復用器29、44和第一個組12的第二個功能單元20b。在第二個指令周期中,鎖存在結果寄存器52、54中的結果被作為操作數傳遞到組12的第二個功能單元20b,且該第二個功能單元20b接收控制信號,以在第二個指令周期中執行組合指令所暗含的命令中屬於該第二個功能單元20b的部分。作為響應,第二個功能單元20b在第二個指令周期末生成結果。
這樣,下一條指令可以在第二個指令周期中在組12中被執行,該執行與第二個功能單元20b執行部分組合指令並行。例如,執行第一條指令以計算A*B-C*D可以在第一個指令周期中開始,執行第二條指令以計算A*D+B*B可以在下一個指令周期中開始。因此,使用兩條指令計算了兩個數A+iC和B+iD的實部和虛部。
當然應當避免來自組合指令和下一條指令的結果之間發生衝突。這可以用各種方法實現。在一個實施例中,下一條指令被從沒有在第二個指令周期中生成結果的多條指令的子集中選擇(例如,另一個組合指令,或NOP指令)。在該實施例中,控制寄存器50還控制輸出復用器26以傳遞來自第二個功能單元20b的結果。在另一個實施例中,可以使用旁路寄存器(未示出)來並行傳遞第二個功能單元20b的結果和來自響應下一條指令的功能單元的結果。
應當注意的是,在圖5的實施例中,當指令周期太快而不能在單個的指令周期中容納第一個和第二個功能單元20a、b的延遲時,不需要調整程序。
儘管圖5示出了插入到復用器29、44之前的結果寄存器52、54,但是如果使用了行波流水線,可以省略這些寄存器52、54。在這種情況下,在功能單元20a、b內的傳播延遲被用於允許來自組合指令和下一條指令的結果同時出現在第二個功能單元20b和執行下一條指令的功能單元的輸出端中。在另一個實施例中,可以在生成由第一個組12的第二個功能單元20b使用的結果的特殊功能單元之前提供寄存器。這些寄存器用於通過鎖存這些功能單元的操作數來響應組合指令,並在當這些操作數被直接從第一個指令周期的輸入端22a、b應用於後續指令周期過程中的特殊功能單元之後,提供這些操作數。
儘管已經使用組合指令說明了本發明,其中所述組合指令涉及串聯的兩個功能單元響應於同一命令的連續執行,但是要理解的是,可以提供涉及更多串聯的功能單元的組合命令。
權利要求
1.一種指令控制數據處理設備,所述設備包括指令發送單元(10),具有用於發送來自指令集的指令的發送槽(11),所述指令發送單元在連續的指令周期中發送所述指令中的各條指令;寄存器文件(14),具有讀埠和寫埠;功能單元(20a、b)組(12),每個功能單元(20a、b)具有連到所述發送槽(11)的控制輸入端、連到所述讀埠的操作數輸入端(22a、b)以及連到所述寫埠的結果輸出端,每個功能單元(20a、b)被用於響應其它功能單元(20a、b)所不響應的來自所述指令集的各個子集的指令,所述指令集還包括所述功能單元中的第一個和第二個功能單元(20a、b)所響應的組合指令;控制單元(28),連到所述發送槽(11),並且響應來自所述指令集的所述組合指令,將所述第一個功能單元(20a)的結果輸出路由到所述第二個功能單元(20b)的操作數輸入端。
2.根據權利要求1所述的指令控制數據處理設備,被構成為VLIW處理器,所述發送槽(11)是用於發送VLIW指令字的所述指令發送單元的多個發送槽之一,其中所述VLIW指令字包含所述組合指令作為其指令之一,所述寄存器文件(14)具有多個讀和寫埠集,所述設備包括各個功能單元或功能單元組,每個連到所述發送槽中的各個發送槽和所述讀和寫埠集,用於執行來自所述VLIW指令字的各個指令,與執行在所述同一指令字中作為所述組合指令發送的指令並行,所述第一個和第二個功能單元響應在所述發送槽中發送的所述組合指令。
3.根據權利要求1所述的指令控制數據處理設備,其中所述第一個和第二個功能單元(20a、b)在同一指令執行周期中響應所述組合指令。
4.根據權利要求3所述的指令控制數據處理設備,包括用於對所述指令周期進行計時的時鐘電路(16),所述時鐘電路(16)具有多個可選的時鐘速率,包括第一個時鐘速率以及第二個時鐘速率,其中,所述第一個時鐘速率足夠慢,使得在指令執行周期中容納響應於也在所述指令執行周期內的所述組合指令執行過程中應用於所述第一個功能單元(20a)的操作數而從所述第二個功能單元(20b)生成結果所涉及的延遲,所述第二個時鐘速率太快而不能在所述指令周期中容納所述延遲,但是可以容納來自所述子集的指令的延遲。
5.根據權利要求1所述的指令控制輸出處理設備,其中所述指令發送單元(10)具有另外的發送槽,並且所述寄存器文件(14)具有另外的讀埠,所述設備包括另外的功能單元(40b),所述另外的功能單元(40b)具有連到所述另外的發送槽的控制輸入端和連到所述另外的讀埠的操作數輸入端,所述控制單元(28)被用於在所述組合指令的控制下將所述另外的功能單元(40b)的結果輸出路由到所述第二個功能單元(20b)的所述另外的操作數輸入端,在所述組合指令的控制下繞開所述寄存器文件(14)。
6.根據權利要求5所述的指令控制數據處理設備,被用包含VLIW指令的程序編程,其中所述VLIW指令包含在同一指令周期中發送的用於所述另外的功能單元(40b)的命令和用於所述功能單元組(12)的所述組合指令。
7.根據權利要求1所述的指令控制數據處理設備,其中,所述控制單元(28)被用於使所述第二個功能單元(20b)在所述第一個功能單元(20a)響應所述組合指令的指令執行周期之後的指令執行周期中響應所述組合指令。
8.根據權利要求7所述的指令控制數據處理設備,其中,所述第一個功能單元(20a)的結果被從所述第一個功能單元(20a)路由到所述第二個功能單元(20b)的操作數輸入端,而沒有中間鎖存。
9.一種執行處理任務的方法,所述方法包括提供功能單元組(12),向所述組(12)發送連續的指令;執行所述指令中的第一種指令,用功能單元(20a、b)中的一個獨立功能單元執行每條所述第一種指令,用串聯的所述功能單元(20a、b)中的第一個和第二個功能單元執行第二種指令;響應於所述第二種指令,將所述第一個功能單元(20a)的結果路由到所述第二個功能單元(20b)的操作數。
10.根據權利要求9所述的方法,其中所述第一個和第二個功能單元(20a、b)在同一指令周期中響應所述第二種指令,所述方法包括從至少第一個和第二個速率中選擇指令周期速率,所述第一個速率很慢,使得所述功能單元中級聯的至少兩個功能單元(20a、b)對組合指令的執行適合於在所述第一個速率的指令周期內,所述第二個速率很快,使得只有所述功能單元中的單個功能單元的指令的執行適合於在所述第二個速率的所述指令周期內,所述組合指令的執行不適合於在所述第二個速率的一個指令執行周期內;將用於執行所述處理任務的所述指令調整為所述選擇的指令周期速率,因此當以所述第一個速率執行所述任務時,使用所述組合指令,而當以所述第二個速率執行所述任務時,用具有相應效果的多條所述第一種指令來代替所述組合指令。
11.根據權利要求9所述的方法,包括發送所述連續的指令,每條指令作為VLIW指令字的一部分,其中所述VLIW指令字包含用於各個另外的功能單元(40a、b)的多條指令;在包含所述第二種指令的所述指令字中,包括用於所述另外的功能單元(40a、b)中的特定一個功能單元的另外的指令;響應於所述第二種指令,將所述另外的指令的另外的結果從所述另外的功能單元(40a、b)中的所述特定一個功能單元路由到所述第二個功能單元(20b)的另外的操作數輸入端。
全文摘要
該數據處理設備具有多個功能單元並在連續的指令周期中發送指令。第一種指令的每一個每次用於一個功能單元。第二種指令使得功能單元的組合在同一指令執行周期中響應,來自一個功能單元的結果被另一個功能單元用作同一指令的執行的一部分。優選地,該設備支持在多個不同的指令周期速率下的可選的操作,這依賴於所執行的程序段是否包含第二種指令。最快的指令周期速率不允許第二種指令的執行,這是因為多個不同的功能單元的操作不適合於在該指令執行周期內。當可能的時候,該設備通過切換到更慢的時鐘速率以節省功率,在這種情況下第二種指令被執行,以通過減少需要發送的指令數量來節省額外的功率。
文檔編號G06F1/32GK1809810SQ200480017658
公開日2006年7月26日 申請日期2004年6月22日 優先權日2003年6月25日
發明者卡洛斯·A·阿爾巴·平託, 巴爾克施南·斯裡尼瓦桑, 拉馬納坦·塞瑟拉曼 申請人:皇家飛利浦電子股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀