欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)處理系統(tǒng)內(nèi)地址偏移量的產(chǎn)生的制作方法

文檔序號:6378354閱讀:194來源:國知局
專利名稱:數(shù)據(jù)處理系統(tǒng)內(nèi)地址偏移量的產(chǎn)生的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)處理系統(tǒng)領(lǐng)域。更具體而言,本發(fā)明涉及響應(yīng)于地址偏移量產(chǎn)生指令而產(chǎn)生地址偏移量。
已知提供了附

圖1所示形式的數(shù)據(jù)處理系統(tǒng)。該數(shù)據(jù)處理系統(tǒng)包括處理器核,所述處理器核心包括寄存器庫4、乘法器6、移位器8、加法器10、指令流水線12和指令解碼器14。本領(lǐng)域的技術(shù)人員應(yīng)該理解的是處理器核2通常包括很多另外的電路元件,為了清楚起見在圖1中省略這些元件。在操作中,處理器核2取出程序指令給指令流水線12,其中所述程序指令由指令解碼器14解碼來產(chǎn)生控制信號,所述控制信號對寄存器庫4、乘法器6、移位器8和加法器10以及其它電路元件起作用來控制由解碼的程序指令所指定的、期望的數(shù)據(jù)處理操作。處理器核心2配置有數(shù)據(jù)總線、地址總線和指令總線。
所需的一種處理操作類型是產(chǎn)生地址偏移量值。這個操作類型的一個實例是BL/BLX指令,所述BL/BLX指令存在于由英國劍橋ARM有限公司生產(chǎn)的允許Thumb的處理器的Thumb操作模式中。附圖2示意性地說明了這些指令。可以看出這些指令可以被視為兩個16位指令或者一個32位指令。前端的五個位(即11110)解碼為指示存在一條BL/BLX指令,且頭兩個字節(jié)中剩余的11個位(包括起始符位S)是偏移量值,這是偏移量字段2。這個偏移量值之后緊接一個位組合111t1和另外11位的偏移量(即偏移量字段1)?!皌”位向指令解碼器14指示所述指令是BL指令還是BLX指令。BL指令是具有停留在Thumb操作模式內(nèi)鏈接的轉(zhuǎn)移。BLX指令是具有與到ARM操作模式的開關(guān)相結(jié)合的鏈接的轉(zhuǎn)移。
應(yīng)該理解圖2所示的偏移量值提供了22個位。這個偏移量值按需要進行符號擴展,并且被加到所述轉(zhuǎn)移指令的地址。這個偏移量值范圍能支持正負4MB的跳轉(zhuǎn),以達到16位半字對齊的目標。
隨著應(yīng)用程序的復(fù)雜度增加,它們的尺寸也傾向于增加。期望的是如果需要的話在程序映像內(nèi)可能進行端對端的轉(zhuǎn)移。因此,當應(yīng)用映像的大小變得越來越大超過4MB,就產(chǎn)生了在指令中支持的地址偏移量值沒有足夠范圍的問題。
圖3示意性地說明在程序執(zhí)行流程跳轉(zhuǎn)到新的點時BL指令的動作。能夠控制的最大跳轉(zhuǎn)受到可以指定的最大地址偏移量值限制。
應(yīng)該解決的另一個問題是,需要在任何修改的指令形式中提供向后兼容。因此,雖然采用全新的BL/BLX指令編碼代替舊的編碼可以解決地址偏移量范圍的問題,但是遇到的缺點是缺少與使用傳統(tǒng)指令所寫的現(xiàn)有軟件的向后兼容?;蛘?,在現(xiàn)有編碼之外增加新的編碼將不利地浪費指令編碼位空間。
從一個方面來看,本發(fā)明提供用于處理數(shù)據(jù)的裝置,所述裝置包括指令解碼器,其響應(yīng)于程序指令來控制數(shù)據(jù)處理操作;以及地址偏移量產(chǎn)生電路,該電路由所述指令解碼器來控制并且用來產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,其使得(i)如果所有所述高位字段位Pk具有各自的預(yù)定值Dk,則對于所有滿足(N-1)≥j≥(N-L-1)的j值,所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj(其中(N-1)≥j≥(N-L-1))由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1(對于滿足(N-1)≥j≥(N-L-1)的所有j值)和組合Bj=0(對于滿足(N-1)≥j≥(N-L-1)的所有j值)之外Bj值的組合的一對一映射給出。
本發(fā)明認識到,現(xiàn)有地址偏移量產(chǎn)生指令內(nèi)的一些位可能是冗余的,因為不需要它們來明確識別并且因此解碼相關(guān)的指令(例如,一旦已經(jīng)識別了BL/BLX的前16位,后面的16位就被限制為BL指令或BLX指令的第二半),因此可以使用這些位編碼附加地址偏移量信息,由此擴展了地址偏移量范圍。然而,為了支持對現(xiàn)有軟件的向后兼容,用于表示地址偏移量值的額外位的編碼必須使得當執(zhí)行傳統(tǒng)代碼時其中所述額外位具有固定值(相應(yīng)的預(yù)定值),然后以如下方式解碼這些固定值產(chǎn)生與編寫傳統(tǒng)軟件時原來想要的相同的偏移量值,即適當?shù)胤枖U展。這通過如上述指定的本技術(shù)的編碼來實現(xiàn)。應(yīng)該理解的是,利用本技術(shù)重新用來表示地址偏移量的附加位的、傳統(tǒng)代碼中的固定位可以具有預(yù)先固定的值“0”或“1。
為了提供與先前指令組的向后兼容,優(yōu)選編碼中所述高位字段位Pk的所述對應(yīng)預(yù)定值都等于1。
在優(yōu)選實施例中,所述地址偏移量產(chǎn)生電路可用來產(chǎn)生所述N位地址偏移量的位Bj的值,每個位值Bj具有由以下規(guī)則中相應(yīng)的一條預(yù)定規(guī)則給出的值對于符號位直接指定的一個j值,Bj=S;Bj=S XOR Pk(j)XOR Dk(j),其中k(j)是從j值(除了所述符號位直接指定的j值)到k值的一對一索引映射。
這具有的優(yōu)點是,將符號位拷貝到一個位位置以及對于其它位位置使用“異或”函數(shù)(當預(yù)定值是0時)或使用“同”函數(shù)(當預(yù)定值是1時)是一個產(chǎn)生滿足所需條件的Bj值的特別簡單的方法。
在優(yōu)選實施例中,所述符號位直接指定的j值是N-1。如果可以直接地從指令編碼中獲得最終偏移量的符號位而不需要計算“異或”(“同”)函數(shù),則是有利的。作為一個實例,這可能是有利地,因為最終偏移量的符號位可能需要被復(fù)制,在這種情況下將緩沖延遲與“異或”(“同”)延遲并聯(lián)而不是與其串聯(lián)減少了關(guān)鍵路徑。它為何有利的另一個原因是一些轉(zhuǎn)移預(yù)測方案關(guān)注的是轉(zhuǎn)移指令的方向,并且因此可能想在不知道其確切的值的情況下知道偏移量的符號。
應(yīng)該理解的是,因為Dk是預(yù)定值,所以可以利用單個“異或”或“同”門實現(xiàn)所述公式,這是由于如果預(yù)定值是0則所述公式簡化為Bj=S XOR Pk(j),如果預(yù)定值是1則所述公式簡化為Bj=NOT(S XORPk(j))。(如果Dk不是預(yù)定值,則將需要兩個“異或”(“同”)門串聯(lián)成的等效電路)。
應(yīng)該理解的是,地址偏移量產(chǎn)生指令可具有各種不同形式并且不必局限于轉(zhuǎn)移指令。然而,本發(fā)明尤其非常適合用于轉(zhuǎn)移指令。
當使用轉(zhuǎn)移指令時,優(yōu)選實施例將轉(zhuǎn)移目標的地址偏移量與當前程序地址結(jié)合以產(chǎn)生所述程序跳轉(zhuǎn)到的轉(zhuǎn)移目標地址。
雖然本發(fā)明適合各種不同大小的指令,它在K=2、N=25且Z=1或2的實施例中是尤其有用的。這些有利地平衡了分配給偏移量值說明的位空間和分配給操作碼和其它參數(shù)的位空間。
新技術(shù)沒有指定的地址偏移量值的位也需要在地址偏移量產(chǎn)生指令中被指定。可以以各種不同方法編碼這些地址偏移量值的位,但是由地址偏移量產(chǎn)生指令內(nèi)的字段直接指定這些地址偏移量值的位是簡單有利的。
從另一個方面來看,本發(fā)明提供一種處理數(shù)據(jù)的方法,所述方法包括以下步驟響應(yīng)于程序指令,使用指令解碼器控制數(shù)據(jù)處理操作;以及使用由所述指令解碼器控制的地址偏移量產(chǎn)生電路,產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,使得(i)如果所有所述高位字段位Pk具有相應(yīng)的預(yù)定值Dk,則對于滿足(N-1)≥j≥(N-L-1)的所有j值,所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj(其中(N-1)≥j≥(N-L1))由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1(對于滿足(N-1)≥j≥(N-L-1)的所有j值)和組合Bj=0(對于滿足(N-1)≥j≥(N-L-1)的所有j值)之外的Bj值的組合的一對一映射給出。
從另一個方面來看,本發(fā)明提供一種包括計算機程序的計算機程序產(chǎn)品,該計算機程序用于控制計算機執(zhí)行以下步驟響應(yīng)于程序指令,使用指令解碼器控制數(shù)據(jù)處理操作;以及使用由所述指令解碼器控制的地址偏移量產(chǎn)生電路,產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時,所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,使得(i)如果所有所述高位字段位Pk具有各自的預(yù)定值Dk,則對于滿足(N-1)≥j≥(N-L-1)的所有j值,所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj(其中(N-1)≥j≥(N-L-1))由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1(對于滿足(N-1)≥j≥(N-L-1)的所有j值)和組合Bj=0(對于滿足(N-1)≥j≥(N-L-1)的所有j值)之外的Bj值的組合的一對一映射給出。
應(yīng)該理解的是,計算機程序產(chǎn)品可以采用廣泛的各種不同形式,例如存儲介質(zhì)或從數(shù)據(jù)連接的下載等等。在計算機程序產(chǎn)品內(nèi),有關(guān)的計算機程序應(yīng)該包括利用本技術(shù)的一個或多個地址偏移量產(chǎn)生指令。
現(xiàn)在參考附圖將描述本發(fā)明的實施例,所述實施例僅僅作為例子,其中圖1示意性地說明可以使用本技術(shù)的數(shù)據(jù)處理系統(tǒng);圖2示意性地說明包括地址偏移量產(chǎn)生能力的已知轉(zhuǎn)移指令;圖3說明例如圖2的轉(zhuǎn)移指令的轉(zhuǎn)移指令的動作;圖4說明要產(chǎn)生的地址偏移量值;圖5示意性地說明用于產(chǎn)生圖4的地址偏移量值的地址偏移量產(chǎn)生指令;圖6示意性地說明示例性邏輯電路,其用于解碼來自地址產(chǎn)生指令的附加位以便在所產(chǎn)生的地址偏移量值內(nèi)提供更大數(shù)目的位;圖7示意性地表示指令的符號、高位字段位和所產(chǎn)生的相應(yīng)高位偏移量值的位之間的示例性普遍關(guān)系;以及圖8示意性地說明可以執(zhí)行根據(jù)當前技術(shù)的程序指令的通用計算機的體系結(jié)構(gòu)。
圖4示出了為N位值的地址偏移量值。這個地址偏移量值的最低有效Z位不必由地址產(chǎn)生指令內(nèi)的字段表示,因為它們具有由有關(guān)程序的指令字長所確定的固定值。如果指令字是32位字并且在存儲器內(nèi)是字對齊的,則地址偏移量值的最低有效2位可以限定為“00”并且不必在地址偏移量產(chǎn)生指令的字段內(nèi)指定。類似地,對于半字對齊的16位指令(16位半字),地址偏移量值的最低有效位可以限定為“0”并且也不必在偏移量產(chǎn)生指令的偏移量字段內(nèi)指定。
在這個實例中,范圍[BN-4B1]包括在以下之間擴展的位Bj地址偏移量值的最低有效端,其開始于需要考慮指令字長來指定的位置;以及低于最高有效端的一位位置的位置,該最高有效端是在傳統(tǒng)指令中可以指定的最大位置。
在這個實例中為了擴展地址偏移量值的編址范圍,在地址偏移量值中插入另外兩個位,即位BN-2和BN-3,原先的符號位S往前移動變?yōu)锽N-1。以所示方式從地址偏移量產(chǎn)生指令中得到這些附加位。更具體而言,當使用邏輯表達式與能夠利用傳統(tǒng)指令指定的地址值的最高有效位結(jié)合時,這些附加位由重新用來提供編碼的附加位中的相應(yīng)那個指定。應(yīng)該理解的是,圖4所示的表達式示出了所需的關(guān)系,但是這個表達式可以以許多不同形式來重寫。本技術(shù)包括表示圖4所示關(guān)系的所有這些可供選擇的形式。
圖5示意性地說明地址偏移量產(chǎn)生指令(ARM/Thumb型系統(tǒng)中的新BL/BLX指令)。相對圖2比較這個指令,可以看到,已經(jīng)根據(jù)圖4所示的邏輯表達式重新使用與“t”相鄰的兩個位編碼關(guān)于地址偏移量值的附加信息。因此,全部地址偏移量值由傳統(tǒng)地址偏移量字段和如上所述解釋的兩個附加位值一起給出。
圖6更直接地說明如何從圖5的地址偏移量產(chǎn)生指令中得到地址偏移量值。首先,除了S位外,可以直接采用傳統(tǒng)地址偏移量字段并且將其放在與以前相同的位置。然后,使用所示的相應(yīng)邏輯門將編碼附加地址偏移量信息的兩個附加位值(即P1和P2)與符號位S結(jié)合以產(chǎn)生擴展的地址偏移量值的位BN-2和BN-3,所述符號位S是傳統(tǒng)偏移量值的最高有效位??梢灾苯邮褂梅栁籗提供擴展的地址偏移量值的BN-1。如此產(chǎn)生的擴展的地址偏移量值是25位值(鑒于半字(在這個實例中是16位半字)對準還插入為“0”的LSB值)。該25位值被進一步符號擴展以產(chǎn)生將與32位地址值相結(jié)合的32位值(例如,作為轉(zhuǎn)移操作的一部分)。這個結(jié)合可以通過與轉(zhuǎn)移指令的PC值相加來實現(xiàn),該值是其地址加上常量偏移量(在Thumb/Wrist中是4)。其它給出相同結(jié)果的處理操作和操作組合也被包括在本技術(shù)內(nèi)。因此,在地址偏移量范圍先前限制為正或負4MB的情況下,這可以擴展到正或負16MB,這是顯著優(yōu)勢。這個擴展的范圍可以以與現(xiàn)有代碼向后兼容的方式實現(xiàn)。
圖7是說明高位字段位P1和P0、偏移量符號位S和產(chǎn)生的偏移量值的三個最高有效位BN-1、BN-2和BN-3之間更一般的關(guān)系的表格。當P1=P0=1時,這對應(yīng)于傳統(tǒng)編碼并且因此所有三個值BN-1、BN-2和BN-3都等于S。這剩下S、P1和P0的其它六種可能組合,它們一對一映射到BN-1、BN-2和BN-3的剩余可能3位組合。這樣的映射的一個實例是如圖4和圖6所示的映射。
在下表中也示出了這個映射
圖8示意性地說明可以執(zhí)行根據(jù)上述技術(shù)的程序指令的通用計算機200。通用計算機200包括中央處理單元202、隨機存取存儲器204、只讀存儲器206、網(wǎng)絡(luò)接口卡208、硬盤驅(qū)動器210、顯示驅(qū)動器212和顯示器214和帶有鍵盤218和鼠標220的用戶輸入/輸出電路216,這些部件都經(jīng)由公共總線222連接。在操作中,中央處理單元202將執(zhí)行計算機程序指令,所述計算機程序指令可存儲在隨機存取存儲器204、只讀存儲器206和硬盤驅(qū)動器210中的一個或多個中或者經(jīng)由網(wǎng)絡(luò)接口卡208動態(tài)下載。所執(zhí)行處理的結(jié)果可以經(jīng)由顯示驅(qū)動器212和顯示器214顯示給用戶??梢越?jīng)由用戶輸入輸出電路216從鍵盤218或鼠標220接收用于控制通用計算機200的操作的用戶輸入。應(yīng)該理解的是,可以以各種不同的計算機語言編寫計算機程序。計算機程序可以存儲和分布在記錄介質(zhì)上或者動態(tài)下載到通用計算機200。當在合適的計算機程序的控制下操作時,通用計算機200可以執(zhí)行上述技術(shù)并且可以視為構(gòu)成了用于執(zhí)行上述技術(shù)的裝置。通用計算機200的結(jié)構(gòu)可以顯著變化,圖8僅僅是一個實例。
權(quán)利要求
1.一種用于處理數(shù)據(jù)的裝置,所述裝置包括指令解碼器,其響應(yīng)于程序指令來控制數(shù)據(jù)處理操作;以及地址偏移量產(chǎn)生電路,該電路由所述指令解碼器來控制并且用來產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,使得(i)如果所有所述高位字段位Pk具有相應(yīng)的預(yù)定值Dk,則對于所有滿足(N-1)≥j≥(N-L-1)的j值,所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj,其中(N-1)≥j≥(N-L-1),由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1和組合Bj=0之外的Bj值的組合的一對一映射給出,其中組合Bj=1針對滿足(N-1)≥j≥(N-L-1)的所有j值,且組合Bj=0針對滿足(N-1)≥j≥(N-L-1)的所有j值。
2.如權(quán)利要求1所述的裝置,其中所述預(yù)定值Dk都等于1。
3.如權(quán)利要求1或2所述的裝置,其中所述地址偏移量產(chǎn)生電路用來產(chǎn)生所述N位地址偏移量的位Bj的值,每個位值Bj具有由以下規(guī)則中相應(yīng)的預(yù)定規(guī)則給出的值對于符號位直接指定的一個j值,Bj=S;Bj=S XOR Pk(j)XOR Dk(j),其中k(j)是從除了所述符號位直接指定的j值之外的j值到k值的一對一索引映射。
4.如權(quán)利要求3所述的裝置,其中所述符號位直接指定的j值是N-1。
5.如前面權(quán)利要求的任一項所述的裝置,其中所述地址偏移量產(chǎn)生指令是轉(zhuǎn)移指令并且所述N位地址偏移量是N位轉(zhuǎn)移目標地址偏移量。
6.如權(quán)利要求5所述的裝置,其中所述N位轉(zhuǎn)移目標地址偏移量與所述轉(zhuǎn)移指令的程序地址結(jié)合以產(chǎn)生轉(zhuǎn)移目標地址。
7.如前面權(quán)利要求的任一項所述的裝置,其中所述N位地址偏移量在使用之前通過所述地址偏移量產(chǎn)生指令進一步被符號擴展。
8.如前面權(quán)利要求的任一項所述的裝置,其中L=2。
9.如前面權(quán)利要求的任一項所述的裝置,其中N=25。
10.如前面權(quán)利要求的任一項所述的裝置,其中Z是1和2中的一個。
11.如前面權(quán)利要求的任一項所述的裝置,其中在所述地址偏移量產(chǎn)生指令中直接指定位值BN-2-L到BZ。
12.一種處理數(shù)據(jù)的方法,所述方法包括以下步驟響應(yīng)于程序指令,使用指令解碼器控制數(shù)據(jù)處理操作;以及使用由所述指令解碼器控制的地址偏移量產(chǎn)生電路,產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,使得(i)如果所有所述高位字段位Pk具有相應(yīng)預(yù)定值Dk,則對于滿足(N-1)≥j≥(N-L-1)的所有j值所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj,其中(N-1)≥j≥(N-L-1),由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1和組合Bj=0之外的Bj值的組合的一對一映射給出,其中組合Bj=1針對滿足(N-1)≥j≥(N-L-1)的所有j值,且組合Bj=0針對滿足(N-1)≥j≥(N-L-1)的所有j值。
13.如權(quán)利要求12所述的方法,其中所述預(yù)定值Dk都等于1。
14.如權(quán)利要求12或13所述的方法,其中所述地址偏移量產(chǎn)生電路用來產(chǎn)生所述N位地址偏移量的位Bj的值,每個位值Bj具有由以下規(guī)則中相應(yīng)預(yù)定規(guī)則給出的值對于符號位直接指定的一個j值,Bj=S;Bj=S XOR Pk(j)XOR Dk(j),其中k(j)是從除了所述符號位直接指定的j值之外的j值到k值的一對一索引映射。
15.如權(quán)利要求14所述的方法,其中所述符號位直接指定的j值是N-1。
16.如權(quán)利要求12-15的任一項所述的方法,其中所述地址偏移量產(chǎn)生指令是轉(zhuǎn)移指令并且所述N位地址偏移量是N位轉(zhuǎn)移目標地址偏移量。
17.如權(quán)利要求16所述的方法,其中所述N位轉(zhuǎn)移目標地址偏移量與所述轉(zhuǎn)移指令的程序地址結(jié)合以產(chǎn)生轉(zhuǎn)移目標地址。
18.如前面權(quán)利要求12-17的任一項所述的方法,其中所述N位地址偏移量在使用之前通過所述地址偏移量產(chǎn)生指令進一步被符號擴展。
19.如前面權(quán)利要求12-18的任一項所述的方法,其中L=2。
20.如前面權(quán)利要求12-19的任一項所述的方法,其中N=25。
21.如前面權(quán)利要求12-20的任一項所述的方法,其中Z是1和2中的一個。
22.如前面權(quán)利要求12-21的任一項所述的方法,其中在所述地址偏移量產(chǎn)生指令中直接指定位值BN-2-L到BZ。
23.一種包括計算機程序的計算機程序產(chǎn)品,該計算機程序用于控制計算機執(zhí)行以下步驟響應(yīng)于程序指令,使用指令解碼器控制數(shù)據(jù)處理操作;以及使用由所述指令解碼器控制的地址偏移量產(chǎn)生電路,產(chǎn)生N位地址偏移量,該地址偏移量具有由包括偏移量值符號指定位S的地址偏移量產(chǎn)生指令所指定的值;其中當表示成二進制補碼數(shù)時所述N位地址偏移量具有位值Bi,其中(N-1)≥i≥Z且(N-1)>Z≥0,所述地址偏移量產(chǎn)生指令包括L個高位字段位Pk,其中(N-Z)>L≥1且L>k≥0,并且所述地址偏移量產(chǎn)生電路是可操作的,使得(i)如果所有所述高位字段位Pk具有相應(yīng)預(yù)定值Dk,則對于滿足(N-1)≥j≥(N-L-1)的所有j值所述N位地址偏移量的位Bj由Bj=S給出;以及(ii)如果任何所述高位字段位Pk不具有所述預(yù)定值Dk,則所述N位地址偏移量的位Bj,其中(N-1)≥j≥(N-L-1),由預(yù)定的從所述高位字段位Pk和所述偏移量值符號指定位S的值的組合到除了組合Bj=1和組合Bj=0之外的Bj值的組合的一對一映射給出,其中組合Bj=1針對滿足(N-1)≥j≥(N-L-1)的所有j值,且組合Bj=0針對滿足(N-1)≥j≥(N-L-1)的所有j值。
24.如權(quán)利要求23所述的計算機程序產(chǎn)品,其中所述預(yù)定值Dk都等于1。
25.如權(quán)利要求23或24所述的計算機程序產(chǎn)品,其中所述地址偏移量產(chǎn)生電路用來產(chǎn)生所述N位地址偏移量的位Bjd的值,每個位值Bj具有由以下規(guī)則中的相應(yīng)預(yù)定規(guī)則給出的值對于符號位直接指定的一個j值,Bj=S;Bj=S XOR Pk(j)XOR Dk(j),其中k(j)是從除了所述符號位直接指定的j值之外的j值到k值的一對一索引映射。
26.如權(quán)利要求25所述的計算機程序產(chǎn)品,其中所述符號位直接指定的j值是N-1。
27.如權(quán)利要求23-26的任一項所述的計算機程序產(chǎn)品,所述地址偏移量產(chǎn)生指令是轉(zhuǎn)移指令并且所述N位地址偏移量是N位轉(zhuǎn)移目標地址偏移量。
28.如權(quán)利要求27所述的計算機程序產(chǎn)品,所述N位轉(zhuǎn)移目標地址偏移量與所述轉(zhuǎn)移指令的程序地址結(jié)合以產(chǎn)生轉(zhuǎn)移目標地址。
29.如權(quán)利要求23-28的任一項所述的計算機程序產(chǎn)品,其中所述N位地址偏移量在使用之前通過所述地址偏移量產(chǎn)生指令進一步被符號擴展。
30.如權(quán)利要求23-29的任一項所述的計算機程序產(chǎn)品,其中L=2。
31.如權(quán)利要求23-30的任一項所述的計算機程序產(chǎn)品,其中N=25。
32.如權(quán)利要求23-31的任一項所述的計算機程序產(chǎn)品,其中Z是1和2中的一個。
33.如權(quán)利要求23-32的任一項所述的計算機程序產(chǎn)品,其中在所述地址偏移量產(chǎn)生指令中直接指定位值BN-2-L到BZ。
全文摘要
提供了一種支持地址偏移量產(chǎn)生指令的數(shù)據(jù)處理系統(tǒng)(2),所述指令利用傳統(tǒng)指令編碼中的先前冗余位編碼地址偏移量值的位,同時保持與所述傳統(tǒng)編碼的向后兼容。
文檔編號G06F9/318GK1788252SQ200380110341
公開日2006年6月14日 申請日期2003年12月30日 優(yōu)先權(quán)日2003年6月11日
發(fā)明者D·J·西爾 申請人:Arm有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
随州市| 南昌县| 锡林郭勒盟| 聂荣县| 云梦县| 三明市| 曲阜市| 青浦区| 老河口市| 镇巴县| 阳曲县| 平顺县| 页游| 马龙县| 浦北县| 民和| 永平县| 永定县| 榆林市| 棋牌| 泌阳县| 信丰县| 霍州市| 锡林浩特市| 乌拉特后旗| 文登市| 琼海市| 景谷| 淳化县| 枣阳市| 广水市| 杭锦旗| 乃东县| 苏州市| 拉孜县| 达拉特旗| 堆龙德庆县| 黑龙江省| 海林市| 介休市| 葵青区|