新四季網

處理不同寬度的命令的vliw處理器的製作方法

2023-05-21 10:30:16

專利名稱:處理不同寬度的命令的vliw處理器的製作方法
發明的領域本發明有關一個VLIW(Very Large Instruction Word-超長指令字)處理器。本發明也涉及用於這樣一個處理器的程序和這種程序的編譯。
背景技術:
VLIW處理器的一個例子是飛利浦電子公司的TM-1000處理器(TriMedia)。這種處理器被描述在,例如,歐洲專利申請EP 605 927(等價於美國的序列號07/999,080,現已放棄;PHA 21777)中。在一個VLIW處理器中,對指令的並行執行是通過在一單個長指令字中組合多個基本的機器命令獲得的。典型地,每一個這樣的基本命令代表一個RISC操作。對於每一個時鐘周期,一個長指令字被提供給並行排列的功能單元中,這些功能單元以同步方式(1ock-step)進行操作。這些命令中的每一個都相應地被提供給這些單元中的一個。典型地,一個單元執行流水化的處理。
TM-1000處理器並行地分發命令,每一個命令位於超長指令字分發寄存器的一個相應的分發槽(issue slot)中。每一個分發槽與相應的一個處理單元組相關,並且與寄存器文件中的兩個讀埠和一個寫入埠相關。一個特定的命令被指定到一個與特定分發槽相連的組中的功能單元中的某一個。該命令一般是包含一個操作碼、兩個源操作數定義和一個結果操作數定義。源操作數定義和結果操作數定義引用寄存器文件中的寄存器。在命令的執行過程中,源操作數是通過向與分發槽相連的讀埠提供提取信號從特定分發槽中讀取的。典型地,功能單元從這些讀埠接收操作數,根據操作碼執行這個命令,然後通過與特定分發槽相連的寫入埠將處理結果寫回寄存器文件。或者採用另一種方法,命令可以使用少於兩個操作數和/或不對寄存器文件產生結果。
一個針對VLIW處理器的典型程序被翻譯成針對這些功能單元的一組命令。一個編譯時間調度程序將這些命令分配到長指令字中。調度程序通過優化並行操作儘量減少執行程序所需的時間。調度程序在下列條件限制下將命令結合成指令字分配給同一指令的多個命令能被並行處理,並且有數據依賴關係限制。
發明概述本發明的目標之一是提供一個VLIW處理器,相對於傳統的VLIW處理器,該處理器具有能減少執行一個程序所需的指令字數目的體系架構。
為達此目的,本發明的VLIW處理器包含一個指令分發埠,用來順序地提供第一和第二超長指令字。這些指令字的每一個包含一個分布在一個相應的命令級連中的有序的域級連。第一個字包括一個含有第一個域的第一個命令和含有第二個域的第二個命令。第二個字包含具有該第一個和第二個域的第三個命令。這種處理器具有一個第一和第二功能單元,第一個功能單元與分發埠連接用於處理第一個命令,第二個功能單元與分發埠連接,用於與第一單元同步地處理第二個命令。這種處理器還有第三個功能單元與分發埠連接,用於處理第三個命令。
本發明是基於靈活地將指令分發埠劃分成分發槽。這意味著,例如,有可能採用不同的命令,這些命令使用不同數目域作為操作數。還有,不同命令可以具有不同長度的操作碼。與處理命令的特定電路資源(在此指這些功能單元)相連的域,可以與和不同分發槽相連的不同組中的功能單元組合使用。這比將指令分發埠劃分為固定分發槽允許使用更為複雜的命令。為了處理最複雜的命令,沒有必要在分發槽中保留更多的空間。在傳統的VLIW處理器中,如此複雜的命令不得不以多個指令字序列的形式使用幾個較簡單的命令來實現。相應地,因為完成該程序需要較少的指令字,與傳統的VLIW處理器相比,該發明能允許更快地執行程序。
例如,在類似TM-1000這樣的機器中,從三個操作數中計算結果的一個操作(例如,求平均數的操作)至少需要兩個連續執行的命令,因此也需要至少兩個指令。通過提供具有超過兩個操作數的域的一個命令,該操作可以只用一個命令執行。而且,因為這些域能被靈活地分配給命令,這能實現對於所有命令的操作數不必保留超過兩個域。
在該發明的一種實施方案中,第三個命令包含了用於執行第一和第二個命令的所有域。所以,例如,如果第一和第二個固定大小的分發槽分別被用於分發第一和第二個命令,第三個命令可以使用第一和第二個分發槽的組合。這簡化了調度。
在每個命令中的不同的域,也就是在每一個分發槽中,每一個可以由一個固定的功能,譬如代表一個操作數寄存器的讀地址,或者表示一個結果寄存器的寫入地址或者表示一個操作碼。這些不同域將與指令處理電路的固定部分相連,就象讀埠或操作碼解碼器一樣。在這種情況下,第三個指令可以使用兩倍數量的操作數和/或產生兩倍數量的結果和/或使用兩倍大小的操作碼。當分發槽每一個分別與一個相應的功能單元的組相連時,用於執行第三個命令的一個功能單元同時屬於兩個組。
在一個VLIW處理器中,一個命令所使用的域的組合對應於一個分發槽。典型地,一個常規分發槽的大小與第一和第二個命令相同,並用於常規的命令(使用一個分發槽,包含一個操作碼域、兩個輸入寄存器選擇域和一個結果寄存器選擇域)。在這種情況下,在這種實施方案中用於第三個命令的域包含了整數個常規分發槽。在VLIW處理器程序中,用於命令的分發槽是一種稀缺資源在程序中的用於命令的分發槽數目越多(在相應的指令中使用的相應的分發槽的數目之和),程序越慢。因此,用於第三條命令的常規分發槽的個數最好比用常規命令的組合來實現與第三條命令相同的功能所需的常規分發槽數目少。只有在這種情況下,第三條命令才節省作為稀缺資源的分發槽。
而且,用常規命令實現第三條命令也意味著這些常規命令的中間結果不得不用與普通寄存器大小相應的精度來表示(例如64位或者一個包含8位的8個元素的向量)。使用組合了多個普通命令的效果的第三個命令,如果需要的話,中間結果能以更高的精度來表示,在很多信號(比如圖像和聲音信號)處理應用中就是這種情況。
較佳地,每一個指令由固定數目的分發槽組成,這裡每一個分發槽與一個或多個能夠處理命令的功能單元相連。不同的功能單元提供給不同的命令組。這些功能單元與分發槽相連。當一個指令被分發時,從某個分發槽來的命令被送到與這個分發槽相連的功能單元中。對應於分別分發第一和第二個命令的分發槽,提供了一個第一功能單元和一個第二功能單元;同時提供了一個第三個功能單元,既與第一也和第二個分發槽相連。所以,第一和第二命令被分配到不同的功能單元進行處理。對於第三個命令,第三個功能單元認識到應該使用第一和第二分發槽,而第一和第二功能單元認識到它們不應該使用第一和第二分發槽。第三功能單元的激活由第一和第二分發槽中的一個的操作碼域來觸發。較佳地,這個操作碼域控制利用在第一和第二分發槽中引用的操作數的第三個功能單元所做的操作。如果第一和第二分發槽中的某一個可能只包含一個能在自身執行的常規的命令,而不用其他的分發槽,情況就不是這樣,以及如果另一分發槽發信號對那個常規命令進行修正,例如操作數的後處理或預處理、條件執行等,情況也不是這樣。這會將第三功能單元命令的一些可能功能限制到作為常規命令可利用的那些命令以及這些命令的修改,這些命令只用一個分發槽就可以執行。這個限制將排除很多對於多媒體信號處理應用有用的命令。
本發明也關於一種編譯程序的編譯器,該編譯器用於編譯能靈活分配域給指令的VLIW處理器的程序,本發明還關於具有這種靈活分配的程序。
附圖的簡要描述本發明的這些和其他一些方面將結合附圖舉例說明。其中,

圖1是根據本發明的一個VLIW處理器的框圖;圖2a-c是指令字格式的圖;圖3是一個分發槽解碼電路的框圖;圖4是編譯一個程序的流程圖;圖5是將命令分配到指令槽的圖。
優選實施方案圖1是一個VLIW處理器的圖。VLIW處理器包含一個指令字存儲器系統10、一個程序計數器11、一個解碼和啟動電路12、功能單元14a-k以及一個多埠寄存器文件16。計數器11被連接到存儲器系統10的一個地址輸入。存儲器系統10有一個指令分發寄存器(未顯示出來),該寄存器被分割成分發槽(也稱為指令總線)。一個分發槽有幾個功能並行的通路,以傳送當前保存在分發寄存器中的指令字的各個位。分發寄存器的一個輸出被連接到解碼和啟動電路12。電路12的輸出連接到功能單元14a-k和多埠寄存器文件16。寄存器文件16的讀取埠和寫入埠連接到功能單元14a-k。存儲器系統10在計數器11的控制下連續地向解碼和啟動電路12輸送指令字。較佳地,系統10使用指令高速緩存和/或預取,但這對於本發明而言不是本質的。系統10也可以在輸出之前對以壓縮格式存儲的指令字執行解壓縮操作。解碼和啟動電路12接收指令字。電路12把發自存儲器系統10的功能並行的通路當作一個域的集合,每一個域被關聯到一個或多個通道。域的集合組成一個命令。命令的集合形成一個單一指令字。
圖2a用第一種格式表示一個指令字,其中指令字被分成許多分發槽20a-e。分發槽20a-e中的每一個對應於一個命令。每一個槽有一個域用於一個操作碼22a-e,有兩個域用於操作數24a-e、26a-e(表示對寄存器文件16中一個相應的寄存器的引用),以及有一個域用於結果28a-e的目的地(表示對寄存器文件16中一個相應的寄存器的引用)。
圖2b,c表示第二種格式的一個指令字,其中多個分發槽組合成「超級槽(superslot)」。例如,超級槽29a組合常規的槽20a和20b的域,而超級槽29b組合槽20c-e的域。超級槽格式允許實現的命令比以單個常規槽實現的命令使用更多的操作數。一般地,每一個單獨的域22a-e,24a-e,26a-e,28a-e要麼在超級槽29a和29b中具有和常規槽20a-e相同的功能,要麼根本沒有功能。例如,域24a-e和26a-e中具體的一個以第一種格式以及以第二種格式定義了一個操作數,或者根本不被使用。域22a-e中具體的一個以第一種格式以及以第二種格式用於一個操作碼,或者根本不被使用。域28a-e中具體的一個以第一種格式以及以第二種格式用於目的地,或者根本不被使用。作為選擇,第二種格式中的域22a-e,24a-e,26a-e,28a-e具有與第一種格式的域不同的用途。
圖3是一個VLIW處理器的圖,包括解碼和啟動電路30的部分、功能單元32a-c和多埠寄存器文件34的部分。解碼和啟動電路30部分包含一個連接到功能單元32a-c的指令解碼器300。單元32a-c連接到寄存器文件34的讀取埠302a和302b。一個結果寫入單元304連接到寄存器文件34的一個寫入埠342。讀取埠302a,b的輸出被連接到功能單元32a-c的輸入。功能單元32a-c的輸出連接到342的寫入埠。解碼和啟動電路12包含如圖3中每一個分發槽類似的電路。解碼和啟動電路12根據每一個域的功能處理來自域22a-e,24a-e,26a-e,28a-e中的信息。操作數域24a-e,26a-e的每一個分別與寄存器文件16中的一個讀取埠關聯。解碼和啟動電路12使用域24a-e,26a-e的內容來尋址相應的讀取埠。類似地,目標域28a-e對應於寄存器文件16中的寫入埠。解碼和啟動電路12使用域28a-e的內容來尋址相應的寫入埠。操作碼域22a-e每一個被輸送到解碼和啟動電路12中的一個相應的指令解碼器300,於是被解碼的操作碼被輸送到功能單元14a-k中選定的一些單元中。典型地,解碼和啟動電路12使用流水線化的操作,例如在對指令字解碼期間啟動操作數的提取。在來自前一個指令字的一個命令仍在執行的同時,對來自一個指令字的命令的解碼和提取也正在被執行,並且同時來自更早的一個指令字的命令的結果正在被寫入目的地址。因為域22a-e,24a-e,26a-e,28a-e的功能預先已定義,並且獨立于格式,所以操作數提取可以在指令解碼完成之前開始。
多個功能單元14a-k被編排成組,就象圖3中的組。每一個組分別與以第一種格式的一個指令字的一個相應的分發槽聯繫起來。當解碼和啟動電路12偵測到一個第一種格式的指令字時,電路12為每一個槽確定與該槽聯繫的組中的哪些單元(如果有的話)應該在該槽中執行這個命令。該功能單元隨後接受控制信號執行該命令。這樣,解碼和啟動電路12每次將導致一個組中的功能單元開始執行一個命令。典型地,同一類型的功能單元出現在不同組中。例如,每一個組包含一個ALU(算術邏輯單元)。這防止出現由於每次使用每個組中不超過一個功能單元造成的瓶頸。
功能單元14a-c中的某些不只屬於一個組。這些單元被稱為下面所說的超級功能單元。超級單元14a-c中的每一個與兩個或多個特定的組聯繫起來。這意味著超級單元14a-c中的每一個能使用從至與這些特定的組相關的寄存器文件16的讀入埠來的操作數。還有,超級單元14a-c能使用至與這些特定的組相關的寄存器文件16的寫入埠。超級功能單元14a-c的命令來自以第二種格式的指令字。這些命令被放在超級槽29a和29b中。在超級槽中的操作數域24a,b和26a,b起著為超級單元14a-c從寄存器文件16中提取操作數的作用。域24a,b和26a,b的每一個連接到所有指令字的同一個讀取埠,不管這個指令字的格式如何。結果是,提取能夠在格式確定之前開始。類似地,目標域28a,b起到控制至寄存器文件16的寫入埠的作用。每一個這些域都連接到所有指令字的同一個寫入埠,獨立于格式。當解碼和啟動電路12導致一個特定的超級單元開始執行一個命令時,電路12將防止功能單元14d-k中的任何一個開始執行與超級單元相連的組中的命令。在超級槽29a,b中的被解碼的操作碼域22a,b對應於與這些組相連的常規槽20a,b中的操作碼域22a,b,並用於控制僅這些相關的超級單元14a-c。例如,可能只使用這些槽中的某一個的操作碼來控制超級單元,但是也可能用一個組合電路來組合兩個或多個這些槽的操作碼。這樣,能為超級單元14a-c中的每一個定義大量的不同操作。超級單元14a-c執行命令來實現那些需要超過兩個操作數和/或產生超過兩個結果的操作。這些操作的一些例子是AV(R1,R2,R3..)產生三個或多個操作數R1,R2,R3..的平均數;ME(R1,R2,R3..)產生三個、五個或多個操作數的中值;SO(R1,R2)排列兩個操作數R1和R2,較大的操作數將置於一個結果寄存器中,而較小的置於另一個結果寄存器中;TP(R1,R2,R3,R4...)一個有著R1,R2,R3,R4行的矩陣的轉置;RT(R1,R2,R3)將一個具有R1,R2,R3元素的向量旋轉一個特定的角度。
在一個傳統的VLIW處理器中,以上操作需要順序執行幾個命令。在一些情況下,多埠寄存器文件中的寄存器用以代表一組小的數的組合。例如,如果這個寄存器是64位寬的,每個寄存器能表示4個16位數。在這種情況下,這些數的每一個可以獨立地被操作。例如,響應一個ADD命令,功能單元可以對來自兩個寄存器的4對數做加法。
這種方法也能用於超級單元。例如,4個寄存器能表示16位的數的一個4×4矩陣。每個寄存器分別包含一個相應的四元組R1=(a11,a12,a13,a14),R2=(a21,a22,a23,a24),R3=(a31,a32,a33,a34),R4=(a41,a42,a43,a44),每個元組分別表示該矩陣的相應的一行。保存在不同的寄存器但處於各元組中相同位置的元素集合代表矩陣的一列。在轉置操作中,這些在不同的行但在相同位置的元素被保存在RESULT1=(a11,a21,a31,a41)和RESULT2=(a12,a22,a32,a42)中。用於矩陣轉置操作的一個超級單元能用2個分發槽,產生一個4×4矩陣的兩行。通過向這個功能單元發出2個命令,一個用於產生所轉置的矩陣的上兩行,另一個用於提供下兩行,很快就能完成轉置操作。
正移操作(shuffle operation)與上述操作相似SH R1,R2,R3-R4(,R5)這個操作根據寄存器R3中定義的置換規則(permulation),對保存在寄存器R1和R2中數字進行置換和/或選擇,把置換之後的結果數字保存在寄存器R4和可選的寄存器R5中。
在一些情況下,一個或多個操作數有標準值。在這些情況下,定義一個額外的命令很有優勢,它僅佔用一個分發槽。在這個額外的命令中,操作碼定義這個特殊的操作和一個或多個操作數的標準值。標準值也可以是隱式定義的。這個額外命令包含僅引用餘留操作數的操作數引用。這樣一個命令能被用在具有第一種格式或者是第二種格式的一個指令字的一個單一操作槽中。當解碼和啟動電路12遇到這樣的指令時,它向超級單元自身提供標準參數。這樣,這個超級單元能接收到既使用一個分發槽也使用兩個或多個分發槽的一個命令。在前一種情況下,採用標準值並且指令字能包含更多的命令。
在圖1的實施方案中,每個超級單元使用與整數個功能單元的組關聯的分發槽的所有域。一個備選的超級單元可以使用這些分發槽的一些但不是全部的域。例如,這樣的一個備選單元可以處理3個操作數,其中2個來自一個特定分發槽的域,第3個來自另一個分發槽。當採用這樣的一個備選單元時,其相關的分發槽的其它域可為其它的單元所用,而這些單元能與備選超級單元開始並行執行。舉例說,這些其它的功能單元或許有僅僅一個操作數或根本沒有操作數,或者不產生結果。所說的其它單元僅用備選單元留下未用的域中的一些。還有,這些其它功能單元或許就是備選超級功能單元自身,其使用該分發槽的一些域外加另一個分發槽的域。然而,使用備選功能單元對可從一個單一指令字接收命令的單元的結合加以複雜的限制。通過使用這些分發槽的所有域,或至少不使用部分已分配槽的剩餘的域,能避免這個限制。這樣能達到更高的並行度,並且指令字的編譯更容易。
一個編譯器為VLIW處理器產生指令字。這個編譯器以相互之間有數據依賴關係的多個命令來描述一個程序。編譯器搜索一種把所有的命令放置在一個指令字的集合中的方式。在程序執行期間,編譯器執行最少數量的需要順序執行的指令字。圖4是用來表示一個編譯程序的方法的流程圖。在第一步40中,接收一組操作及這些操作之間的數據依賴關係描述。接下來,編譯器開始搜索來放置用於這些操作的命令到一個指令字集合中的方式。第二步42測試是否接收來的所有操作的命令已被放置。如果是,這個編譯過程就完成了。如果沒有,執行第三步44,選擇一個還沒有為其放置命令的操作,並且對於該操作產生其操作數的前一「源操作」已經被放置。更進一步,在包含這個「源操作」的命令已放置好的指令字之後,在這個指令字集合中挑選出最早的指令字。第四步46測試構造一個指令字是否可能,這個指令字包括已經包含在最早的指令字中的命令加上一個用於被選擇的操作的命令。步驟46考慮命令的特性和功能單元的分組。要對其測試以下兩項是否可能-把命令放在不同的組中;並且-為超級功能單元放置命令以便沒有別的命令使用與那些超級單元相連的組的分發槽。
如果這是可能的,被選擇的指令字被更新,並且這個方法返回到第二步42。如果這是不可能的,執行第5步48,被選指令字的後續指令字被選中並重複執行第四步46。
圖5是用於進一步解釋第四步46的圖示。在左邊,一組操作表示為第一節點50a-d。在右邊,一組分發槽表示為第二節點52a-e。第四個步驟的任務是測試是否存在一個從第一節點50a-d到第二節點52a-e的映射。在這個映射中,一個超級功能單元50d的一個操作映射到兩個或多個分發槽52d,e。其它的第一節點50a-d對應常規的操作,每一個映射到第二節點52a-e中的某一對應的節點。節點52a-e的每一個對應於一個分發槽,這個分發槽與一個組關聯,這個組包含一個能執行該相關操作的功能單元。當然,圖4所示僅是一個簡化的例子。總的來說,最小化的執行受限於命令間的數據依賴(即,如果一個第一個命令使用一個第二個命令的結果作為輸入,這些命令應該放置在不同的指令字中,包含第一個命令的指令字在包含第二個命令的指令字之後)。而且,最小化的執行受到功能單元能夠開始並行執行每個指令字的所有命令的能力的制約。
權利要求
1.一種VLIW處理器(圖1),包括-一個指令分發埠,用於提供超長指令字,這些字的每一個都包含幾個命令和分布在命令(20a-20e)中的域(22a-28a;22b-28b;22e-28e),其中-在超長指令字中的一個第一個字(圖2a)包含命令的一個第一個命令(20a),其包括域的一個第一個域(28a);同時也包含命令的一個第二個命令(20b),其包括域(28b)的一個第二個域;並且-在超長指令字中的一個第二個字(圖2b)包含命令的一個第三個命令(29a),其包括域的第一個域和第二個域;-一個第一個功能單元(14d),與分發埠連接來處理該第一個命令;-一個第二個功能單元(14g),與分發埠連接來處理該第二個命令,該處理與第一個單元同時進行;並且-一個第三個功能單元(14a),與分發埠連接來處理該第三個命令。
2.根據權利要求1的處理器,其中,第三個命令包括第一個命令的所有的域。
3.根據權利要求1的處理器,其中-該處理器有一個多埠寄存器文件(16);-指令分發埠向寄存器文件提供第一個域,以取得一個第一個操作數用於由第一個功能單元執行的第一個命令;-指令分發埠向寄存器文件提供第二個域,以取得一個第二個操作數用於由第二個功能單元執行的第二個命令;並且-指令分發埠向寄存器文件提供第一個和第二個域,以取得多個操作數用於由第三個功能單元執行的第三個命令。
4.根據權利要求3的處理器,其中-第一個功能單元寫執行第一個命令的第一個結果到寄存器文件的一個第一個地址,該地址在第一個命令的一個第一個相關的域中指示;-第二個功能單元寫執行第二個命令的一個第二個結果到寄存器文件的一個第二個地址,該地址在第二個命令的一個第二個相關的域中指示;-第三個功能單元分別寫執行第三個命令的第三和第四個結果到寄存器文件的第三和第四個地址,該地址在第三個命令的上述第一和第二個相關的域中指示。
5.根據權利要求1的處理器,在第三個命令的另一執行階段的同時,安排執行第一和/或第二命令的一個執行階段。
6.根據權利要求5的處理器,包含一個能執行第一和第三個命令的第四個功能單元(14b?),當第一個命令被執行的時候,這第四個單元可操作來向該功能單元提供一個標準內容,而不是從第二個域的內容中導出的信息。
7.一種編譯用於VLIW處理器(圖1)的指令的方法,這個處理器包含功能單元組(14a-14k),對於每一組功能單元每個指令字分別允許至多包含一個命令,這個處理器也包含至少一個與至少兩個組相關連的另一功能單元(14a-14c),每個包含用於這個另一功能單元的命令的指令字不允許包含用於在上述至少兩個組的任何一個功能單元的命令,這個方法包括-接收一組必須由功能單元執行的命令;-搜索命令到指令字的相容分配,所說的搜索包含從搜索中排除那些既包含用於該功能單元的命令又包含至少一個用於來自上述至少兩個組的任一功能單元的命令的指令字。
8.一種機器可讀介質,其包含一個程序,用於執行編譯用於VLIW處理器的指令的方法,這個處理器包含功能單元組(14a-14k),每個指令字分別針對功能單元的每一組被允許包含至多一個相應的命令,這個處理器也包含至少一個另一功能單元(14a-14c),這個另一功能單元與這些組中的至少兩個組相關聯,每個包含針對該另一功能單元的命令的指令字不允許包含針對在所述組中的至少兩個組中的任一功能單元的命令,這個方法包含-接收必須由該功能單元執行的命令集;-搜索命令到指令字的相容分配,所說的搜索包含從搜索中消除那些既包含一個用於該功能單元的命令又包含至少一個用於來自上述組中的至少兩個組的任一功能單元的命令的指令字。
9.一種在VLIW處理器上執行一個電腦程式的方法,這種處理器擁有指令分發埠用於分發在指令分發埠中的域(22a-28a;...22e-28e)中的連續的指令字,這個方法包含步驟-執行一個第一個指令字(圖2a),其包含一個第一和第二個命令(20a,20b),這兩個命令分別包含了來自指令分發埠的一個第一和第二個域(28a,28b),-執行一個第二個指令(圖2b),該指令包含一個第三個命令(29a),這個命令既包含第一個域也包含第二個域。
10.根據權利要求10的方法,其中,由用在第一個命令中的所有域構成的域集(22a-28a;22b-28b)被包含在第三個命令中,這個方法包含使用那個域集中的域執行第三個命令。
11.一種機器可讀介質,其包含一個用於VLIW處理器的程序,這個程序包含一個第一個指令字(圖2a),這個指令字包含一個第一和第二個命令(20a;20b),這兩個命令分別包含第一和第二個域(28a;28b),並且第二個指令字(圖2b)包含第三個命令(29a),這個命令既包含第一個域也包含第二個域。
12.根據權利要求12的機器可讀介質,其中,由所有用在第一個命令中的所有域構成的域集(22a-28a;22b-28b)被包含在第三個命令中。
13.根據權利要求13的機器可讀介質,其中,所有用在第二個命令中的域構成的一組域(22a-28a;22b-28b)被包含在第三個命令中。
全文摘要
一個VLIW處理器有第一和第二兩個功能單元,用於執行一個第一指令字中的第一和第二命令。相應地,第一和第二命令分別包含了域的第一和第二個域。本處理器還有一個第三功能單元,用於執行在第二指令字中的第三個命令。這第三個命令既包含第一個域也包含第二個域。
文檔編號G06F9/30GK1258361SQ99800301
公開日2000年6月28日 申請日期1999年1月15日 優先權日1998年1月16日
發明者G·A·斯萊文伯格, J·T·范艾恩多芬, S·拉思南 申請人:皇家菲利浦電子有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀