TWI259398B - Device and method using operation mode in processor to switch register - Google Patents

Device and method using operation mode in processor to switch register Download PDF

Info

Publication number
TWI259398B
TWI259398B TW093102495A TW93102495A TWI259398B TW I259398 B TWI259398 B TW I259398B TW 093102495 A TW093102495 A TW 093102495A TW 93102495 A TW93102495 A TW 93102495A TW I259398 B TWI259398 B TW I259398B
Authority
TW
Taiwan
Prior art keywords
register
operation mode
processor
decoding
temporary storage
Prior art date
Application number
TW093102495A
Other languages
English (en)
Other versions
TW200527281A (en
Inventor
Jeng-Yu Wu
Original Assignee
Sunplus Technology Co Ltd
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
Application filed by Sunplus Technology Co Ltd filed Critical Sunplus Technology Co Ltd
Priority to TW093102495A priority Critical patent/TWI259398B/zh
Priority to US10/995,390 priority patent/US20050172108A1/en
Publication of TW200527281A publication Critical patent/TW200527281A/zh
Application granted granted Critical
Publication of TWI259398B publication Critical patent/TWI259398B/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/30098Register arrangements
    • 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/30181Instruction operation extension or modification
    • 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/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

1259398 玫、發明說明: 【發明所屬之技術領域】 本發明係關於處理H之技術領域,尤指 中以操作模式來切換暫存器之裝置及方法。、處心 5 10 15 【先前技術】 般的處判中’由於處理器會受到指令編碼空間 制’使得處理器所能存取的暫存器受限於指令 u,’、、::,如圖1所示,其顯示處理器中具有多個暫存器 U,當處理器要存取草_斬左哭— n士 一暫存裔11内谷¥,解碼器12會解 位此指令具有暫存器^址攔位,處理器會依據該欄 :㈣碼,透過多工選擇器,存取指定的暫存器,由於暫 ==個數會受到暫存器^址攔位長度的限制,假設該 批’、Pblt的長度’則表示處理器能夠存取暫存器11之 二目的最大上限為,個,若想再擴充或增加所能存取的暫 :二唯-的方法就必須增加指令集中之暫存器定址欄位 門長度’但此將會減少指令集中其他攔位所能定義之空 二位’立即值攔位’等··..),因此,此-變 定的功能影響很大’另外,對-個指令集已固 也是不可行的,由此可知:=!=式相容性來說 白知處理态亚無法有效地擴充 所此存取的暫存器個數,而有^以改進之必要。 發明内容 20 1259398 暫存ifΓ之主要目的係在提供—種以操作模式來切換 暫存。。之衣置及方法,俾以解決習知技術之各項缺失。 ,據本t明之—特色,係提出_種於處理器中以操作 ==暫存器之裝置’其包括:一暫存器位址解碼器, ;=器之指令解碼’以產生-解碼輸出;至少- 處理二多數個第二暫存器;一選擇裝置,係依據該 处5之#作模式及該解碼輪出,由該至少 及多數個第二暫存器,選出其中之-以輸出。 n 10作r 月之另—特色’係提出—種於處理器中以操 10 吴式來切換暫存器之方法,該處理器具有至少-第^ f及多數個第二暫存器,該處理器提供多種摔作二暫 步驟:(A)將微處理器之指令解碼,以產生 碼輸出,由該至少一第一暫存哭月夕奴之“作板式及该解 15出其中之1㈣之存W多數個第二暫存器,選 依據本發明之又一特色,係提出—種於處理哭中 作权式來切換暫存器之裝置,其包括:木 器,用以將微處理器之指令解碼,^位址解碼 /丨、一筮一如士 以產生一解碼輸出;至 ^ ^ I存器,·多數個第二暫存器;一選 20據該處理器之操作模式及該解 ^ ^ 存裔及5亥弟一暫存器與一第二 皙 出其中之—而輸出之。 之κ的組合,選 依據本發明之再—特色,係提出 作模式來切換暫存器之方法,該處理器具有=第中二喿 1259398 存器及多數個第二暫存器 該方法包括步驟:(:二益美供多種操作模式, -解碼輸出、及B ::T器之指令解碼,以產生 解,,由該多數個第二暫存器及該;= 乍模式及該 ,-暫存器之-部份的組合,選出其中之—而輪^與-第 【實施方式】 10 15 20 為能讓貴審查委員能更瞭解本發 舉二較佳具體實施例說明如下。 技術内$ ’特 有關本發明之於# ^ ^ 之裝置及方法的—較佳者;;H桑作模式來切換暫存器 圖,其主要由至少參照圖2所示之電路示意 _ y個弟一暫存器21、多數個筮《•献—口口 補裝置20、和解碼器25等 子為 25用以將微處理器之指令解碼,以產生出解碼器 =集中’存取暫存器之指令具有一。位元之 值、以及處二 並將所式,而決定存取之暫存器内容, ⑽¥ 内容讀出於系統匯流排而由運曾單元 29處理,+或透過系統匯流排而將資料寫入所決定之 置2G包括有—第—多 碼幹出1&24 ’用以依據該處理11之操作模式及該解 :輸:二由該第_暫存器21及第二暫存器22 ::出之。於本實施例中,處理器可具有使用者模式、 = 及除錯模式等多種模式。前述第二暫存器22之 係對應於處理器指令之暫存器定址攔位的長度,例 25 1259398 如,定址攔位為P位元時,第二暫存器22之個數為2P,而該 等第二暫存器22之其中一個暫存器221和該第一暫存器21 係刀別耦接至该第一多工選擇器23之兩個連接端23 1和 232,該第一多工選擇器23之控制端233係依據處理器之操 5作模式而選擇將連接端231或232連通至該第一多工選擇器 23之選定端234。 刖述第二多工選擇器24具有多數個連接端241及一選 定端242’並由-控制端243選擇將該等連接端241之一連通 至該選定端242,其中,該等連接端241分別連接至第一多 10 ,選擇器23之選定端234、及除該第二暫存器221外的其餘 第二暫存器22;該第二多工選擇器24之控制端243與解碼器 25之輸出相連’而解碼器25解碼指令之暫存器定址搁位, 以依據解碼之結果,選擇將該等連接端241之-連通至該選 定端242。 15 刖返之杀構,由於解碼器25解碼指令之暫存器定址 攔位的結果係選擇將該等連接端241之一連通至該選定端 242,而该等連接端241則係連接至第一多工選擇器η之選 疋立而232及除該第二暫存器22 i之外的其餘第二暫存器u, 匕田解碼H 25之解碼結果為將連接至該第—多工選擇 =之選定端234的連接端241連通至該選定端2 儀 ”二暫存器需進一步依照第一多工選擇器23而二斤 2;4日:二:多:選擇器23係將其連接端231連通至選定端 、琴擇哭2::理杰係存取第一暫存器21,反之,當第-多工 k⑽謂其連接端232連通至選定端234時,則處理器 20 1259398 係存取第二暫存器221,且由於第一多工選擇器23係由處理 器之操作模式所控制,因此可使得處理器在不同的操作模 式下,由相同的暫存器位址來存取不同的暫存器,而達成 以操作模式來切換暫存器之目的,俾擴充可存取之暫存器 5 數目。 仍請參考圖2所示,在本實施例中,當處理器在核心 模式或使用者模式時,控制端233係將該第一多工選擇器23 之連接端232連通至選定端234,因此,處理器將只能存取 第二暫存器22卜而無法存取第一暫存器21,故可在核心模 10 式或使用者模式時,保護第一暫存器21之内容不會被更 改,反之,當處理器在除錯模式工作時,控制端233係將該 第一多工選擇器23之連接端231連通至選定端234,因此, 處理器將可存取到第一暫存器21,而第一暫存器21可儲存 例如處理器識別碼,以供除錯程式使用,不但可達成擴充 15 可存取暫存器之數目,亦可提供特定程式執行所需之識別 資訊,達成軟體識別保護之功效。 圖3顯示本發明之於處理器中以操作模式來切換暫存 器之裝置及方法的另一較佳實施例,相同於前一實施例, 其電路係由至少一個第一暫存器3 1、多數個第二暫存器 20 32、一選擇裝置30、和一解碼器35等所構成,該選擇裝置 30亦包括有一第一多工選擇器33以及一第二多工選擇器 34,其不同之處在於該第一多工選擇器33之兩連接端332 及331係分別耦接至該多數個第二暫存器32之其中一個暫 存器321、及第一暫存器31與該耦接至第一多工選擇器33 1259398 之連接端332的第二暫存 可依據處理器之摔作r ° —部份,俾使選擇裝置30 32或第-暫存器31與:;:;二出,而由該第二暫存器 出其中之—而輸出…暫存…21之-部份的組合,選 ;模式時,控制端33 ^田一處理杰在核心模式或使用者 連通至選定端334,因此,^;:Γ 33之連接端332 而盔法存取楚一勒六 处里裔將能存取第二暫存器321, 作時,控制端_=^之,/處理器在除錯模式工 ίο 15 20 哭之數P :之】Z暫存器切,因而亦能達成擴充可存取暫存 護:::特定程式執行所需™,達成軟 由以上之說明可知,本發明葬 式來控制多工選擇器,以切換可;取:暫存=操;= 相同的暫存器定址攔位來存取不同 二了: 存取的暫存器個數,另外,所擴充之暫存器係二=: 被使用者任意更改。 暫存-不會在-般模式下 上述實施例僅係為了方便說明而舉例而已 主張之權利範圍自應以中請專利範圍所述為準,㈣ 於上述實施例。 心 【圖式簡單說明】 圖1係習之技術之暫存器存取裝置。 10 1259398 器之 來切換暫存器 圖2係本發明一較佳實施例之以操作模式來切換暫存 裝置。 圖3係本發明另一較佳實施例之以操作模式 之裝置。 5 【圖號說明】 12 解碼器 23、33第一多工選 擇器 233、 控制端 243 29、39運算單元 21、 31第一暫存 24、 34第二多工 擇器 234 、選定端 242 331 、連接端. 332 341 20 ^ 3〇選擇裝置 333、 控制端 343 11 暫存器 22 、第二暫存器 221、 32 321 23ι、連接端 232、 241、 25、35解>5馬器 334、選定端 342

Claims (1)

1259398 拾、申請專利範圍·· 1 · 一種於處理器中以据 以產生解碼⑤’ _微處理器之指令解碼, 至少一第一暫存器; 器 多數個第二暫存 4擇衣4 ’係依據該處理器之操作模弋 出,由該至少一第一暫在哭 ’、、式及該解碼輪 10 中之一以輸出之。 f得裔,選出其 2.如申請專利範圍第丨項所述之裝置, 裝置係依據該解碼輸出,由該多數 存里^擇 15 弟一暫存器,以取代該多數個第二暫存器之—亥至少 3.如申請專利範圍第 裝置包括: 4《在置,其中,該選擇 至少一第一多工選擇 式,由該至少一第—二V s器之操作模 選出盆中之而二 數個第二暫存器之-, 田/、甲之一而輸出,·以及 2〇 ___ 笛-* 夕 一夕工選擇器,其係依據該解碼輪出, 個第二暫存琴盥兮结, 出,由該多數 货存為與该弟一多工選擇器 而輪出之。 k出其中之一 12 1259398 4·如申哨專利範圍第〗項所述之 操作模式包括:使用者操作模式、核心模中,該多種 作模式。 知作枳式及除錯操 其中,當該處 該選擇裝置係 5.如申請專利範圍第2項所述之裝置 理器在使用者操作模式和核心操作模^時 選擇該第二暫存器。 6·如申請專利範圍第2項所述之裝置 理器在除錯操作模式時,該選擇裝置係選擇該處 以取代該第二暫存器。 、谇°亥弟一暫存器 10 15 20 7·種於處理n巾明作 法,該處理器具有至少一第一=木刀換暫存器之方 器’該處理器提供多種操作模式;個第二暫存 (A)將微處理器之指令解石馬,以^步驟: 以及 產生一解碼輪出; ⑻係依據該處理器之 該至少-第-暫存器及多數個第二c出’由 以輸出之。 璉出其中之一 8.如申請專利範圍第7項所述 包括· / '、中,步驟(Β) (Β"依據該解碼輸出,由 其中之一;以及 们弟一暫存器選出 (Β2)依據該處理器之操 〜 少-第一暫存器,以取代、決疋疋否選擇該至 夕数個弟二暫存器之一 13 1259398 9·如申請專利範圍第7項所述之方法,苴 才呆作模式包括:使用者操作模式、核 其中,該多種 作模式。 作模式及除錯操 10·如申請專利範圍第9項所述之方法, (B2)中,當該處理器在使用者操作模式:中,於步驟 時,係選擇該第二暫存器。 、心操作模式 11·如中請專利範圍第9項所述之方法, ㈤)中,當該處理器在除錯操作模式^,於步驟 暫存器以取代該第二暫存器。 係k擇該第一 10 12· —種於處理器中以操作模式 置,該處理器具有多種操作模式,該褒置包括暫存器之裝 -暫存器位址解碼器,用以將微 以產生一解碼輸出; 阳之私令解碼, 至少一第一暫存器; 15 20 多數個第二暫存器; 出,由裝置’係依據該處理器之操作模式及該解肝 出,由该多數個第二暫存器及該第 解馬輸 益之一部份的組合,選出其中之-而輪出=、—暫存 13.如申請專利範圍第12項所述之裝置,盆中十登 中之:t:解Γ輪出,由該多數個第二暫存器選出: -暫存器與第二暫存器之一:=二決定是否選擇該第 存器。 |知的組合,以取代該第二暫 14 1259398 14·如申請專利範圍第13項 擇骏置包括: 疋之衣置,其中,該選 至少一第一多工選擇器,其依 式,由兮笛 ^ ^ 據δ亥處理器之操作模 由5亥弟—暫存器與一第二暫存 乍杈 5该第二暫存器之。…的組合、及 &出其中之—以輸出;以及 個第其係依據該解碼輪出,由該多數 以輪出之。〜工選擇器之輪出,選出其中之一 15. 如申請專利範圍第12項所述之f 10 種据你捃斗、4 p 我置,其中,續客 、式G括··使用者操作模式、核心摔作描+ ΰ #作模式。 知作拉式及除錯 其中’當該 該選擇裝置 16. 如申請專利範圍第12項所述之裝 f::在:吏用者操作模式和核心操作模式:時 係4擇該第二暫存器。 15 π如中請專·_12項所述 處理器在除錯操作模式時,該 _中,當該 器與第二暫存器之&擇该弟―暫存 I -種於處理Γ/^^取代該第二暫存器。 20 ί理器具有至少-第-暫存器及多數:ir 益,該處理器提供多種操作模式,該方法包括2二暫存 (Α)將微處理器之指令解碼, 二.. 以及 產生—解碼輪出; 15 1259398 节⑻係依據該處理器之操作模式及該 μ夕數個第二暫存器及該第一 哲”、、輪出,由 部份的組合,選出其中之—而輪一弟二暫存器之- 5 二如申請專利範圍第18項所述之方法 (Β )包括: 中’步驟 (Β1 )依據該解碼輸出, 其中之一; 亥夕數個第二暫存器選出 (Β2)依據該處理器之操作 —暫存器舆第二暫存器之、二二、疋是否選擇該第 1〇存器。 的組合,以取代該第二暫 20.如申請專利範圍第 種操作模式包括.你用抑从員所逑之方法,其中,該多 操作模式。 、飞核心操作模式及除錯 15 21·如申請專利範圍第20項所述 驟(Β2)中,者兮卢 方法’其中,於步 式時,係選擇該第二暫存器。高式和核心操作模 22.如申請專利範圍第2〇項所述 驟(Β2)中,者兮卢 方法,其中,於步 20 -暫存器魚第:暫;!:在Γ錯操作模式時,係選擇該第 存器。”弟―暫存"之一部份的給合,以取代該第二暫 16
TW093102495A 2004-02-04 2004-02-04 Device and method using operation mode in processor to switch register TWI259398B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW093102495A TWI259398B (en) 2004-02-04 2004-02-04 Device and method using operation mode in processor to switch register
US10/995,390 US20050172108A1 (en) 2004-02-04 2004-11-24 Device and method of switching registers to be accessed by changing operating modes in a processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW093102495A TWI259398B (en) 2004-02-04 2004-02-04 Device and method using operation mode in processor to switch register

Publications (2)

Publication Number Publication Date
TW200527281A TW200527281A (en) 2005-08-16
TWI259398B true TWI259398B (en) 2006-08-01

Family

ID=34806397

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093102495A TWI259398B (en) 2004-02-04 2004-02-04 Device and method using operation mode in processor to switch register

Country Status (2)

Country Link
US (1) US20050172108A1 (zh)
TW (1) TWI259398B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126743A1 (en) * 2006-07-18 2008-05-29 Via Technologies, Inc. Reducing Stalls in a Processor Pipeline
US9727336B2 (en) * 2011-09-16 2017-08-08 International Business Machines Corporation Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers
KR102072543B1 (ko) * 2013-01-28 2020-02-03 삼성전자 주식회사 복수 데이터 형식을 지원하는 가산기 및 그 가산기를 이용한 복수 데이터 형식의 가감 연산 지원 방법
TWI743611B (zh) * 2019-12-04 2021-10-21 新唐科技股份有限公司 處理裝置與其資料存取方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4787031A (en) * 1985-01-04 1988-11-22 Digital Equipment Corporation Computer with virtual machine mode and multiple protection rings
US5493687A (en) * 1991-07-08 1996-02-20 Seiko Epson Corporation RISC microprocessor architecture implementing multiple typed register sets
US6666383B2 (en) * 2001-05-31 2003-12-23 Koninklijke Philips Electronics N.V. Selective access to multiple registers having a common name
TW494644B (en) * 2001-07-09 2002-07-11 Faraday Tech Corp Method for selecting access register
US7024544B2 (en) * 2003-06-24 2006-04-04 Via-Cyrix, Inc. Apparatus and method for accessing registers in a processor

Also Published As

Publication number Publication date
US20050172108A1 (en) 2005-08-04
TW200527281A (en) 2005-08-16

Similar Documents

Publication Publication Date Title
KR101595043B1 (ko) 적어도 부분적으로 부팅 동안에 어플리케이션들을 메모리에 프리로딩하는 방법
JP2006012163A5 (zh)
JP3854624B2 (ja) ハードウェア装置及びコンピュータシステム
US7409520B2 (en) Systems and methods for time division multiplex multithreading
JP4292198B2 (ja) 実行スレッドをグループ化するための方法
JP2001273277A (ja) 演算処理システム、演算処理方法およびそのプログラム格納装置
JP4755281B2 (ja) 可変長命令をキャッシングするための方法及び装置
JP2006260571A (ja) デュアルスレッドプロセッサ
JP7084882B2 (ja) 並べ替え動作を実行するための装置および方法
JP2004516548A5 (zh)
TW200821920A (en) Compare, swap and store facility with no external serialization
TWI259398B (en) Device and method using operation mode in processor to switch register
JP2005182659A (ja) Vliw型dsp,及びその動作方法
KR100829788B1 (ko) 커맨드 디코딩 시스템, 플래시 메모리 커맨드 디코딩시스템 및 이를 이용한 방법
JP2013527534A (ja) 命令としてデータ値を評価するシステムおよび方法
US6161171A (en) Apparatus for pipelining sequential instructions in synchronism with an operation clock
TWI254249B (en) Apparatus, method and computer readable medium for generating chip select words
JP2018519592A (ja) 大規模ソースコードリポジトリにおける自動インポートおよびディペンデンシー
JPH0640303B2 (ja) デ−タ処理装置
US7290120B2 (en) Microprocessor having a power-saving fetch and decoding unit for fetching and decoding compressed program instructions and having a program instruction sequencer
JP7393886B2 (ja) ゲームプログラム、ゲーム処理方法及び情報処理装置
JP2004078604A (ja) 情報処理方法とその方法を実現するプログラム及び記録媒体
JPH04139565A (ja) マルチcpu装置
JP2583506B2 (ja) データ処理装置
JPH01177145A (ja) 情報処理装置

Legal Events

Date Code Title Description
MK4A Expiration of patent term of an invention patent