專利名稱:利用同位檢查以進(jìn)行指令模式切換的處理器及方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于處理器的技術(shù)領(lǐng)域,尤指一種在電腦裝置中利用同位檢查以進(jìn)行指令模式切換的處理器及方法。
背景技術(shù):
一般處理器具有一32比特/16比特的指令模式,并在此兩種模式切換執(zhí)行,以節(jié)省程序碼儲(chǔ)存所需的空間,于美國(guó)第USP 5,758,115號(hào)專利案公告中,是以程序計(jì)數(shù)器(Program Counter,PC)中的T比特以決定該處理器具位于32比特或16比特指令模式,并利用分枝(Branch)指令來(lái)切換程序計(jì)數(shù)器中T比特的值,其指令模式切換如圖1所示,當(dāng)執(zhí)行分枝(Branch)指令220時(shí),是分枝至(Branch to)16比特指令儲(chǔ)存的起始地址Badd(1)并執(zhí)行16比特指令,該+1是用以切換該T比特以指示該處理器位于16比特指令模式,當(dāng)執(zhí)行分枝(Branch)指令240時(shí),是分枝至(Branch to)32比特指令儲(chǔ)存的地址Badd(2)并執(zhí)行32比特指令,該+0是用以將該T比特改變?yōu)椤?’,以指示該處理器位于32比特指令模式,采取此種切換方法有ARM及MIPS是列的處理器,然而采取此種切換方法的32比特指令及16比特指令需分別儲(chǔ)存在不同的區(qū)塊,32比特指令及16比特指令無(wú)法夾雜存放在同一區(qū)塊,因此程序碼儲(chǔ)存空間無(wú)法獲得最佳化。
針對(duì)32比特指令及16比特指令無(wú)法夾雜儲(chǔ)存在同一區(qū)塊的問(wèn)題,美國(guó)第USP 6,209,079B1號(hào)專利案公告中,是以指令碼中的最高比特(Most Significant Bit,MSB)比特以決定該處理器具位于32比特或16比特指令模式而解決32比特指令及16比特指令無(wú)法夾雜儲(chǔ)存在同一區(qū)塊的問(wèn)題,如圖2所示,若于32比特邊界的MSB若為‘1’,則該32比特代表一32比特指令,若于32比特邊界的MSB若為‘0’,則該32比特代表兩個(gè)16比特指令,若16比特指令B的MSB若為‘0’,則表示為兩個(gè)循序執(zhí)行的16比特指令,若16比特指令B的MSB若為‘1’,則表示為兩個(gè)平行執(zhí)行的16比特指令,采取此種切換方法有M32R系列的處理器,于此種切換方法中,32比特指令及16比特指令無(wú)需分別儲(chǔ)存在不同的區(qū)塊,而達(dá)到提高程序碼密度(Code Density)的目的,然而,當(dāng)執(zhí)行分枝(branch)或跳躍(jump)指令時(shí)需小心處理,以免跳躍至一32比特指令的后半部份,由于該32比特指令的后半部份并非一可執(zhí)行的指令,會(huì)產(chǎn)生不可預(yù)期的錯(cuò)誤,因此跳躍地址需限制在字組邊界(word boundary)或32比特邊界(32-bit boundary),對(duì)于分枝一鏈結(jié)(branch-and-link)及跳躍一鏈結(jié)(jump-and-link)指令的返回地址(return address)亦需限制在字組邊界(word boundary)或32比特邊界(32-bit boundary),此種限制會(huì)增加使用上的不方便性,同時(shí),使用上述技術(shù)的處理器在執(zhí)行分枝或跳躍指令時(shí)并無(wú)任何容錯(cuò)的設(shè)計(jì),亦即當(dāng)該處理器因硬體或外界干擾而產(chǎn)生錯(cuò)誤的跳躍地址時(shí),該處理器即會(huì)無(wú)法處理而使整個(gè)系統(tǒng)停滯(halt),因此,現(xiàn)有32比特/16比特的指令模式變換方法的設(shè)計(jì)仍有諸多缺失而有予以改進(jìn)的必要。
發(fā)明人爰因于此,本于積極發(fā)明的精神,亟思一種可以解決上述問(wèn)題的“一種利用同位檢查以進(jìn)行指令模式切換的處理器及方法”,幾經(jīng)研究實(shí)驗(yàn)終至完成此項(xiàng)發(fā)明。
發(fā)明內(nèi)容
本發(fā)明的目的是在提供一種利用同位檢查以進(jìn)行指令模式切換的處理器及方法,以避免現(xiàn)有技術(shù)因需將跳躍地址限制在字組邊界或32比特邊界所引起的復(fù)雜問(wèn)題,同時(shí),提高程序碼密度及增加系統(tǒng)的穩(wěn)定度而達(dá)到容錯(cuò)的目的。
依據(jù)本發(fā)明的一特色,是提出一種以同比特檢查進(jìn)行指令模式切換的處理器,其可分別于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由兩個(gè)N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-p)比特的指令碼,P為大于或等于1的整數(shù),其中,每一N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令的每一N比特字組的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),該處理器包含一指令輸入裝置、一指令擷取裝置及一執(zhí)行模式切換邏輯,該指令輸入裝置包含一寬度為2N比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的2N比特字組,該指令擷取裝置用以擷取該指令碼輸入裝置的一2N比特字組,以及該執(zhí)行模式切換邏輯用以判斷擷取的2N比特字組為二個(gè)(N-P)比特的指令或一個(gè)2(N-P)比特的指令,以切換處理器執(zhí)行于N比特或2N比特模式,其中,當(dāng)擷取的2N比特字組為偶同位時(shí),如所包含的兩個(gè)N比特字組均為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,如所包含的兩個(gè)N比特字組均為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令。
依據(jù)本發(fā)明的另一特色,是提出一種于處理器中以同比特檢查進(jìn)行指令模式切換的方法,該處理器可執(zhí)行于N比特及2N比特模式,該處理器包含一指令輸入裝置,其提供N比特模式指令及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由兩個(gè)N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令的每一N比特字組的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),該方法包括(A)擷取一代表指令的2N比特字組;(B)當(dāng)擷取的2N比特字組為特定同位狀態(tài)時(shí),如其所包含的兩個(gè)N比特字組均為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,而切換處理器執(zhí)行于N比特模式;以及(C)當(dāng)擷取的2N比特字組為特定同位狀態(tài)時(shí),如所包含的兩個(gè)N比特字組均為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令,而切換處理器執(zhí)行于2N比特模式。
由于本發(fā)明設(shè)計(jì)新穎,能提供產(chǎn)業(yè)上利用,且確有增進(jìn)功效,故依法申請(qǐng)發(fā)明專利。
為進(jìn)一步說(shuō)明本發(fā)明的技術(shù)內(nèi)容,以下結(jié)合實(shí)施例及附圖詳細(xì)說(shuō)明如下,其中圖1是現(xiàn)有指令模式切換的示意圖。
圖2是另一現(xiàn)有指令模式切換的示意圖。
圖3是本發(fā)明的一種利用同位檢查以進(jìn)行指令模式切換的處理器的架構(gòu)圖。
圖4是本發(fā)明的程序組譯時(shí)同位比特產(chǎn)生的示意圖。
圖5是本發(fā)明的程序執(zhí)行時(shí)同位比特檢查的示意圖。
圖6是本發(fā)明的同位比特檢查表。
圖7是一程序在存儲(chǔ)器位置中的排列方式及六種不同跳躍地址狀態(tài)的示意圖。
圖8是本發(fā)明的程序組譯時(shí)另一同位檢查比特產(chǎn)生的示意圖。
圖9是本發(fā)明的另一同位比特檢查表。
圖10是本發(fā)明的再一同位比特檢查表。
具體實(shí)施例方式
本發(fā)明的利用同比特檢查進(jìn)行指令模式切換的處理器及方法是可分別于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由兩個(gè)N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),于本實(shí)施例中,N值較佳為16,P值較佳為1,但其僅為說(shuō)明時(shí)的方便,并未為限制本發(fā)明的使用范圍及權(quán)力。
圖3顯示本發(fā)明的利用同位檢查以進(jìn)行指令模式切換的處理器的系統(tǒng)架構(gòu),其包含一指令輸入裝置310、一指令擷取裝置320及一執(zhí)行模式切換邏輯330,該指令輸入裝置310包含一寬度為2N=32比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的32比特字組,該指令擷取裝置320用以擷取該指令碼輸入裝置310的一32比特字組,該執(zhí)行模式切換邏輯330用以判斷擷取的32比特字組為二個(gè)N-P=15比特的指令或一個(gè)2(N-P)=30比特的指令,以切換處理器執(zhí)行于16比特或32比特模式。
于本實(shí)施例中,該處理器可執(zhí)行N=16比特及2N=32比特兩種模式,在對(duì)該該處理器所執(zhí)行的指令集(instruction set)編碼時(shí),該16比特模式指令由一個(gè)16比特字組所組成,每一16比特模式指令包含一比特的同位比特,該同位比特是位于該16比特的最高比特(MostSignificant Bit,MSB),但亦可位于該16比特的任何比特中,該32比特模式指令由兩個(gè)16比特字組所組成,每一16比特字組包含1個(gè)同位比特及15比特的指令碼,每一同位比特是位于每一16比特字組的最高比特。
如圖4所顯示,設(shè)代表指令的32比特字組的特定同位狀態(tài)為偶同位,在32比特字組中若包含二個(gè)16比特指令時(shí),第31比特即為一16比特模式指令的同位比特,其是將第30比特至第16比特共15比特執(zhí)行XOR運(yùn)算的結(jié)果,以使第31比特至第16比特成為偶同位狀態(tài);第15比特即為另一16比特模式指令的同位比特,其是將第14比特至第0比特共15比特執(zhí)行XOR運(yùn)算的結(jié)果,以使第15比特至第0比特成為偶同位狀態(tài);亦即16比特字組設(shè)定為第一同位狀態(tài)(偶同位狀態(tài))。
每一32比特模式指令中包含二個(gè)同位比特,亦即在32比特字組中,若包含一個(gè)30比特指令時(shí),第31比特即為第30比特至第16比特共15比特執(zhí)行XNOR運(yùn)算的結(jié)果,以使第31比特至第16比特成為奇同位狀態(tài);第15比特即為第14比特至第0比特共15比特執(zhí)行XNOR運(yùn)算的結(jié)果,以使第15比特至第0比特成為奇同位狀態(tài);每一32比特模式指令的每一16比特字組的同位比特是將其16比特字組設(shè)定為第二同位狀態(tài)(奇同位狀態(tài))。
當(dāng)一程序經(jīng)由一組譯器(assembler)組譯后,代表?yè)?jù)程序的復(fù)數(shù)個(gè)機(jī)械碼是儲(chǔ)存于該指令輸入裝置310的一寬度為32比特的存儲(chǔ)空間,以供該處理器執(zhí)行,該指令擷取裝置320用以擷取該指令碼輸入裝置310的-32比特字組,該執(zhí)行模式切換邏輯330用以判斷擷取的32比特字組為二個(gè)15比特的指令或一個(gè)30比特的指令,以切換該處理器執(zhí)行于16比特或32比特模式。
該執(zhí)行模式切換邏輯330首先如圖5所示,對(duì)該擷取的32比特字組的第31比特至第16比特執(zhí)行一互斥或(XOR)運(yùn)算以得到一UHP信號(hào)(Upper Half Parity)510,第15比特至第0比特執(zhí)行一互斥或運(yùn)算以得到一LHP信號(hào)(Lower Half Parity)520,再對(duì)該UHP信號(hào)510及LHP信號(hào)520執(zhí)行一互斥或運(yùn)算以得到一WP信號(hào)(WordParity)530,該執(zhí)行模式切換邏輯330再依該UHP信號(hào)510、LHP信號(hào)520及WP信號(hào)530以判定該處理器執(zhí)行于16比特或32比特模式。
如圖6所示,當(dāng)該WP信號(hào)530為偶同位(E)時(shí),表示該擷取的32比特字組至少包含有一個(gè)正確的指令,UHP信號(hào)510及LHP信號(hào)520均為偶同位(E)時(shí),表示該擷取的32比特字組包含二個(gè)15比特指令,而UHP信號(hào)510及LHP信號(hào)520均為奇同位(O)時(shí),表示該擷取的32比特字組包含一個(gè)30比特指令。
WP信號(hào)530為奇同位(O)時(shí),表示該擷取的32比特字組并不包含正常指令,為一特殊狀態(tài)。而這種特殊狀態(tài),有下列幾種可能(1)該擷取的32比特字組區(qū)域非程序碼區(qū)段;(2)該擷取的32比特字組是程序碼區(qū)段,但比特有錯(cuò)誤,才會(huì)導(dǎo)致有效的偶同位(E)變奇同位(O);(3)代表其他特殊的狀態(tài)轉(zhuǎn)換。在本發(fā)明實(shí)施例中,可將WP信號(hào)530為奇同位(O)定義為比特有錯(cuò)誤,以作為資料比特是否有誤的檢查。
圖7是顯示有一程序經(jīng)過(guò)本發(fā)明的技術(shù)組譯后所產(chǎn)生的機(jī)械碼其在存儲(chǔ)器位置中的排列方式,其中有些指令格式僅需要執(zhí)行15比特指令即可,有些指令格式則需要執(zhí)行30比特指令,因此產(chǎn)生一序列的30比特與15比特指令混雜的程序碼,如圖7所顯示,依據(jù)本發(fā)明的技術(shù),32比特模式指令及16模式比特指令即可夾雜儲(chǔ)存在同一區(qū)塊,而達(dá)到提高程序碼密度(Code Density)的目的。
依據(jù)本發(fā)明的技術(shù),該處理器無(wú)需特別指定跳躍地址目的地的指令狀態(tài)即可判斷出正確的指令模式,亦即該處理器因有該執(zhí)行模式切換邏輯330,其會(huì)根據(jù)跳躍地址的資料內(nèi)容自動(dòng)判斷出正確的指令模式,圖7亦顯示該處理器六種不同跳躍地址狀態(tài)及該執(zhí)行模式切換邏輯330所判斷的正確的指令模式,各狀態(tài)描述如下?tīng)顟B(tài)(1)該處理器跳躍到一32比特邊界(32-bit boundary),此時(shí)該WP=(E)表為有效指令,(UHP,IHP)=(O,O)表為一個(gè)30比特指令,故該處理器執(zhí)行此一30比特指令。
狀態(tài)(2)該處理器跳躍到一32比特邊界,此時(shí)該WP=(E)表為有效指令,(UHP,LHP)=(E,E)表為兩個(gè)15比特指令,故該處理器執(zhí)行第一個(gè)15比特指令。
狀態(tài)(3)該處理器未跳躍到一32比特邊界,此時(shí)該WP=(E)表為有效指令,(UHP,LHP)=(E,E)表為兩個(gè)15比特指令,故該處理器執(zhí)行第二個(gè)15比特指令。
狀態(tài)(4)該處理器未跳躍到一32比特邊界,此時(shí)該WP=(E)表為有效指令,(UHP,LHP)=(O,O)表為一個(gè)30比特指令,因此為錯(cuò)誤狀態(tài),故該處理器發(fā)出例外(Exception)信號(hào)。
狀態(tài)(5)該處理器跳躍到一32比特邊界,此時(shí)該WP=(O)表為無(wú)效指令,為特殊狀態(tài),故該處理器發(fā)出例外(Exception)信號(hào)。
狀態(tài)(6)該處理器未跳躍到一32比特邊界,此時(shí)該WP=(O)表為無(wú)效指令,為特殊狀態(tài),故該處理器發(fā)出例外(Exception)信號(hào)。
如圖8所顯示,第一同位狀態(tài)亦可采用奇同位狀態(tài)而第二同位狀態(tài)采用偶同位狀態(tài),亦即在32比特字組中若包含二個(gè)16比特指令時(shí),第31比特即為一16比特模式指令的同位檢查比特,其是將第30比特至第16比特共15比特執(zhí)行XNOR運(yùn)算的結(jié)果,以使第31比特至第16比特成為奇同位狀態(tài);第15比特即為另一16比特模式指令的同位比特,其是將第14比特至第0比特共15比特執(zhí)行XNOR運(yùn)算的結(jié)果,以使第15比特至第0比特成為奇同位狀態(tài);亦即16比特字組設(shè)定為第一同位狀態(tài)(奇同位狀態(tài))。
每一32比特模式指令中包含二個(gè)同位比特,亦即在32比特字組中若包含一個(gè)30比特指令時(shí),第31比特即為第30比特至第16比特共15比特執(zhí)行XOR運(yùn)算的結(jié)果,以使笫31比特至第16比特成為偶同位狀態(tài);第15比特即為第14比特至第0比特共15比特執(zhí)行XOR運(yùn)算的結(jié)果,以使第15比特至第0比特成為偶同位狀態(tài);每一32比特模式指令的每一16比特字組的同位比特是將其16比特字組設(shè)定為第二同位狀態(tài)(偶同位狀態(tài))。
在另一種實(shí)施架構(gòu)中,設(shè)代表指令的32比特字組的特定同位狀態(tài)為奇同位,亦即WP=O(奇同位),在此時(shí),因?yàn)檎V噶顬槠嫱?,則第31比特至第16比特的同位檢查信號(hào)UHP,一定與第15比特至第0比特的同位檢查信號(hào)LHP相反。此時(shí)于正常指令中,若UHP為第一同位狀態(tài),則LHP為第二同位狀態(tài),亦即,于正常指令中(WP=O),若設(shè)第一同位狀態(tài)為偶同位(E)時(shí),即UHP=E時(shí),表示該32比特字組中,包含二個(gè)15比特指令;于正常指令中(WP=O),若設(shè)第一同位狀態(tài)為奇同位(O)時(shí),即UHP=O時(shí),表示該32比特字組中,包含一個(gè)30比特指令,此時(shí)的同位比特檢查表,如圖9所示。
圖10顯示另一種同位比特檢查表,于正常指令中(WP=O),若設(shè)第一同位狀態(tài)為奇同位(O)時(shí),即UHP=O時(shí),表示該32比特字組中,包含二個(gè)15比特指令,于正常指令中(WP=O),而UHP=E時(shí),表示該32比特字組中,包含一個(gè)30比特指令。
由上述可知,由于使用本發(fā)明的技術(shù),該處理器執(zhí)行分枝(branch)或跳躍(jump)指令時(shí)無(wú)需擔(dān)心跳躍至一32比特指令的后半部份,此時(shí)如狀態(tài)(4),該處理器發(fā)出例外(Exception)信號(hào),因此跳躍地址無(wú)需限制在字組邊界或32比特邊界,同理,對(duì)于分枝-鏈結(jié)及跳躍-鏈結(jié)指令的返回地址亦無(wú)需限制在字組邊界或32比特邊界,不只提高程序碼密度(Code Density),亦增加使用的方便性,同時(shí),處理器在執(zhí)行分枝或跳躍指令而跳躍至錯(cuò)誤的位置或該處理器因硬體或外界干擾而產(chǎn)生錯(cuò)誤的跳躍地址時(shí),該處理器會(huì)發(fā)出例外信號(hào),以讓作業(yè)系統(tǒng)處理而不會(huì)使整個(gè)系統(tǒng)停頓(halt)或產(chǎn)生不可預(yù)期的錯(cuò)誤,以增加系統(tǒng)的穩(wěn)定度,而達(dá)到容錯(cuò)的目的。
綜上所陳,本發(fā)明無(wú)論就目的、手段及功效,均不同于現(xiàn)有技術(shù)的特征,實(shí)為一極具實(shí)用價(jià)值的發(fā)明。惟應(yīng)注意的是,上述諸多實(shí)施例僅是為了便于說(shuō)明而舉例而已,本發(fā)明所主張的權(quán)利范圍自應(yīng)以申請(qǐng)專利范圍所述為準(zhǔn),而非僅限于上述實(shí)施例。
權(quán)利要求
1.一種以同比特檢查進(jìn)行指令模式切換的處理器,其可分別于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由兩個(gè)N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令的每一N比特字組的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),其特征在于,該處理器包含一指令輸入裝置,其包含一寬度為2N比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的2N比特字組;一指令擷取裝置,用以擷取該指令碼輸入裝置的一2N比特字組;以及一執(zhí)行模式切換邏輯,用以判斷擷取的2N比特字組為二個(gè)(N-P)比特的指令或一個(gè)2(N-P)比特的指令,以切換處理器執(zhí)行于N比特或2N比特模式;其中,當(dāng)擷取的2N比特字組為偶同位時(shí),如所包含的兩個(gè)N比特字組均為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,如所包含的兩個(gè)N比特字組均為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令。
2.如權(quán)利要求1所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
3.如權(quán)利要求1所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該N值為16,P值為1。
4.一種于處理器中以同比特檢查進(jìn)行指令模式切換的方法,該處理器可執(zhí)行于N比特及2N比特模式,該處理器具有一指令集,其提供N比特模式指令及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由兩個(gè)N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令的每一N比特字組的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),其特征在于,該方法包括擷取一代表指令的2N比特字組;以及當(dāng)擷取的2N比特字組為偶同位時(shí),如其所包含的兩個(gè)N比特字組均為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,而切換處理器執(zhí)行于N比特模式;以及當(dāng)擷取的2N比特字組為偶同位時(shí),如所包含的兩個(gè)N比特字組均為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令,而切換處理器執(zhí)行于2N比特模式。
5.如權(quán)利要求4所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
6.如權(quán)利要求4所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其中,該N值為16,P值為1。
7.一種以同比特檢查進(jìn)行指令模式切換的處理器,其可分別于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由一個(gè)上半N比特字組及一下半N比特字組所組成,每一N比特字組包含P個(gè)同位比特及比特的指令碼,P為大于或等于1的整數(shù),其中,每一上半N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一下半N比特模式指令的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),每一2N比特模式指令設(shè)定為第二同位狀態(tài),其特征在于,該處理器包含一指令輸入裝置,其包含一寬度為2N比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的2N比特字組;一指令擷取裝置,用以擷取該指令碼輸入裝置的一2N比特字組;以及一執(zhí)行模式切換邏輯,用以判斷擷取的2N比特字組為二個(gè)(N-P)比特的指令或一個(gè)2(N-P)比特的指令,以切換處理器執(zhí)行于N比特或2N比特模式;其中,當(dāng)擷取的2N比特字組為奇同位時(shí),如所包含的上半N比特字組為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,如所包含的上半N比特字組為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令。
8.如權(quán)利要求7所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
9.如權(quán)利要求7所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該N值為16,P值為1。
10.一種于處理器中以同比特檢查進(jìn)行指令模式切換的方法,該處理器可執(zhí)行于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由一個(gè)上半N比特字組及一下半N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一上半N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一下半N比特模式指令的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),每一2N比特模式指令設(shè)定為第二同位狀態(tài),其特征在于,該方法包括擷取一代表指令的2N比特字組;以及當(dāng)擷取的2N比特字組為奇同位時(shí),如其所包含的上半N比特字組為第一同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,而切換處理器執(zhí)行于N比特模式;以及當(dāng)擷取的2N比特字組為奇同位時(shí),如其所包含的上半N比特字組為第二同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令,而切換處理器執(zhí)行于2N比特模式。
11.如權(quán)利要求10所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
12.如權(quán)利要求10所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其特征在于,其中,該N值為16,P值為1。
13.一種以同比特檢查進(jìn)行指令模式切換的處理器,其可分別于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由一個(gè)上半N比特字組及一下半N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一上半N比特模式指令的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),每一下半N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令設(shè)定為第二同位狀態(tài),其特征在于,該處理器包含一指令輸入裝置,其包含一寬度為2N比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的2N比特字組;一指令擷取裝置,用以擷取該指令碼輸入裝置的一2N比特字組;以及一執(zhí)行模式切換邏輯,用以判斷擷取的2N比特字組為二個(gè)(N-P)比特的指令或一個(gè)2(N-P)比特的指令,以切換處理器執(zhí)行于N比特或2N比特模式;其中,當(dāng)擷取的2N比特字組為奇同位時(shí),如所包的上半N比特字組為第二同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,如所包含的上半N比特字組為第一同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令。
14.如權(quán)利要求13所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
15.如權(quán)利要求13所述的以同比特檢查進(jìn)行指令模式切換的處理器,其特征在于,其中,該N值為16,P值為1。
16.一種于處理器中以同比特檢查進(jìn)行指令模式切換的方法,該處理器可執(zhí)行于N比特及2N比特模式執(zhí)行N比特及2N比特模式指令,該N比特模式指令由一個(gè)N比特字組所組成,該2N比特模式指令由一個(gè)上半N比特字組及一下半N比特字組所組成,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,P為大于或等于1的整數(shù),其中,每一上半N比特模式指令的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),每一下半N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令設(shè)定為第二同位狀態(tài),其特征在于,該方法包括擷取一代表指令的2N比特字組;以及當(dāng)擷取的2N比特字組為奇同位時(shí),如其所包含的上半N比特字組為第二同位狀態(tài),判定該2N比特字組為二個(gè)(N-P)比特的指令,而切換處理器執(zhí)行于N比特模式;以及當(dāng)擷取的2N比特字組為奇同位時(shí),如其所包含的上半N比特字組為第一同位狀態(tài),判定該2N比特字組為一個(gè)2(N-P)比特的指令,而切換處理器執(zhí)行于2N比特模式。
17.如權(quán)利要求16所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其特征在于,其中,該第一同位狀態(tài)為偶同位,該第二同位狀態(tài)為奇同位。
18.如權(quán)利要求16所述的于處理器中以同比特檢查進(jìn)行指令模式切換的方法,其特征在于,其中,該N值為16,P值為1。
全文摘要
一種利用同位檢查進(jìn)行指分模式切換的處理器及方法,其可執(zhí)行于N比特及2N比特模式,每一N比特字組包含P個(gè)同位比特及(N-P)比特的指令碼,其中,每一N比特模式指令的同位比特是將其N比特字組設(shè)定為第一同位狀態(tài),每一2N比特模式指令的每一N比特字組的同位比特是將其N比特字組設(shè)定為第二同位狀態(tài),該處理器包含一指令輸入裝置、一指令擷取裝置及一執(zhí)行模式切換邏輯,該指令輸入裝置包含一寬度為2N比特的存儲(chǔ)空間以供儲(chǔ)存復(fù)數(shù)個(gè)代表指令的2N比特字組,該指令擷取裝置用以擷取該指令碼輸入裝置的一2N比特字組,以及該執(zhí)行模式切換邏輯用以判斷擷取的2N比特字組為二個(gè)(N-P)比特的指令或一個(gè)2(N-P)比特的指令。
文檔編號(hào)G06F9/30GK1532689SQ0310727
公開(kāi)日2004年9月29日 申請(qǐng)日期2003年3月21日 優(yōu)先權(quán)日2003年3月21日
發(fā)明者梁伯嵩 申請(qǐng)人:凌陽(yáng)科技股份有限公司