JP2008299501A - プロセッサ - Google Patents

プロセッサ Download PDF

Info

Publication number
JP2008299501A
JP2008299501A JP2007143517A JP2007143517A JP2008299501A JP 2008299501 A JP2008299501 A JP 2008299501A JP 2007143517 A JP2007143517 A JP 2007143517A JP 2007143517 A JP2007143517 A JP 2007143517A JP 2008299501 A JP2008299501 A JP 2008299501A
Authority
JP
Japan
Prior art keywords
instruction
circuit
data
register
push
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2007143517A
Other languages
English (en)
Inventor
Iwao Honda
巌 本田
Shinya Kishida
慎也 岸田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
System Solutions Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Sanyo Semiconductor 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 Sanyo Electric Co Ltd, Sanyo Semiconductor Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2007143517A priority Critical patent/JP2008299501A/ja
Priority to CN2008101091591A priority patent/CN101315598B/zh
Priority to US12/128,325 priority patent/US8255672B2/en
Publication of JP2008299501A publication Critical patent/JP2008299501A/ja
Pending legal-status Critical Current

Links

Images

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/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • 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
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30134Register stacks; shift registers

Landscapes

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

Abstract

【課題】プログラムサイズを削減する。
【解決手段】プロセッサは、複数のレジスタと、メモリから命令を読み出す命令読出回路と、命令読出回路によって読み出された命令が、複数のレジスタに格納されているデータの退避を指示する命令である場合、レジスタごとにデータを所定の記憶領域に退避する命令を生成する命令生成回路と、メモリから読み出された命令、および、命令生成回路によって生成された命令を実行する命令実行回路と、を備える。
【選択図】図1

Description

本発明は、プロセッサに関する。
プロセッサでは、割り込みが発生した時や、消費電力を抑えるためにスリープモードに移行する時等に、全てのレジスタもしくは実行中の処理で使用されている一部のレジスタに格納されているデータをスタックに退避することが行われる。このように複数のレジスタに格納されているデータをスタックに退避する場合、対象となるレジスタの数に応じたスタック命令がプログラムメモリから読み出され、スタック処理が実行される(例えば、特許文献1)。
特開2003−345456号公報
このように、複数のレジスタのデータを退避するスタック命令がプログラムに記述されているため、レジスタの数に応じてプログラムサイズが増大することとなる。
本発明は上記課題を鑑みてなされたものであり、プログラムサイズを削減可能なプロセッサを提供することを目的とする。
上記目的を達成するため、本発明のプロセッサは、複数のレジスタと、メモリから命令を読み出す命令読出回路と、前記命令読出回路によって読み出された前記命令が、前記複数のレジスタに格納されているデータの退避を指示する命令である場合、前記レジスタごとに前記データを所定の記憶領域に退避する命令を生成する命令生成回路と、前記メモリから読み出された前記命令、および、前記命令生成回路によって生成された前記命令を実行する命令実行回路と、を備える。
プログラムサイズを削減可能なプロセッサを提供することができる。
図1は、本発明の一実施形態であるプロセッサの構成を示す図である。プロセッサ10は、プログラムカウンタ11、マルチスタック用レジスタ12、データレジスタ13、アドレスレジスタ14、プログラムアドレス生成回路15、プログラムメモリインタフェース16、マルチスタックモジュール17、セレクタ18、命令レジスタ19、命令デコード回路20、制御回路21、アドレス演算回路22、及びデータメモリインタフェース23を含んで構成されている。
プログラムカウンタ11には、プログラムメモリから読み出す命令を指定するプログラムカウント値が格納される。マルチスタック用レジスタ12(記憶回路)には、複数のレジスタに格納されたデータをスタックする処理(マルチスタック処理)が行われる際の、スタック対象となる複数のレジスタを指定するデータ(指定データ)が格納される。データレジスタ13には、各種データが格納され、アドレスレジスタ14には、各種アドレスが格納される。
プログラムアドレス生成回路15は、制御回路21の制御に基づいて、プログラムカウンタ11に格納されたプログラムカウント値をカウントアップするとともに、プログラムカウント値に応じた、プログラムメモリ25に対するアドレスを生成して出力する。なお、プログラムアドレス生成回路15は、制御回路21から出力される信号cnt_stpに応じてプログラムカウント値の更新を停止することができる。本実施形態では、プログラムカウント値の更新は、信号cnt_stpが“0”の場合に実行され、“1”の場合に停止されることとする。
プログラムメモリインタフェース16は、プログラムアドレス生成回路15によって生成されたアドレスに格納された命令をプログラムメモリ25から読み出す。
なお、プログラムアドレス生成回路15及びプログラムメモリインタフェース16によって構成される回路が、本発明の命令読出回路に相当する。
マルチスタックモジュール17(命令生成回路)は、制御回路21の制御に基づいて、マルチスタック用レジスタ12に設定されたデータで指定される複数のレジスタに格納されたデータをスタックに退避する複数のPUSH命令の生成や、退避されたデータを指定される複数のレジスタに復元する複数のPOP命令の生成を行う。
セレクタ18は、制御回路21から出力される選択信号inst_selに基づいて、プログラムメモリインタフェース16から出力される命令、または、マルチスタックモジュール17から出力される命令の何れか一方を選択して命令レジスタ19に格納する。本実施形態では、セレクタ18から出力される命令は、選択信号inst_selが“0”の場合はプログラムメモリインタフェース16から出力される命令となり、“1”の場合にマルチスタックモジュール17から出力される命令となることとする。
命令デコード回路20は、命令レジスタ19に格納された命令をデコードする。また、命令デコード回路20は、デコードした命令が複数のPUSH命令の生成を指示するPUSHM命令である場合、PUSHM命令がデコードされたことを示す信号pushm_decを制御回路21に出力する。同様に、命令デコード回路20は、デコードした命令が複数のPOP命令の生成を指示するPOPM命令である場合、POPM命令がデコードされたことを示す信号popm_decを制御回路21に出力する。さらに、命令デコード回路20は、PUSHM命令またはPOPM命令において指定されたスタックポインタを示すデータstk_idをマルチスタックモジュール17に出力する。
制御回路21は、命令デコード回路20から信号pushm_dec,popm_decを受信すると、マルチスタックモジュール17にPUSH命令またはPOP命令の生成を指示するとともに、プログラムアドレス生成回路15にプログラムカウント値の更新を停止させるために信号cnt_stpを変化させる。さらに、制御回路21は、マルチスタックモジュール17でのPUSH命令またはPOP命令の生成が行われている間、マルチスタックモジュール17から出力される命令を選択するように選択信号inst_selを変化させる。
アドレス演算回路22は、命令デコード回路20のデコード結果に基づいて、アクセス対象データのアドレス演算等を行う。
データメモリインタフェース23は、アドレス演算回路22で算出されたアドレスに基づいて、データメモリ26に対するアクセスを行う。例えば、データメモリインタフェース23は、データレジスタ13に格納されたデータをデータメモリ26に書き込んだり、データメモリ26から読み出したデータをデータレジスタ13に書き込んだりする。PUSH命令の場合、データレジスタ13またはアドレスレジスタ14のうち、指定されたレジスタに格納されたデータが、データメモリ26中の指定された領域に退避される。また、POP命令の場合、データメモリ26中の指定された領域に格納されたデータが、データレジスタ13またはアドレスレジスタ14のうち、指定されたレジスタに復元される。
なお、命令デコード回路20、アドレス演算回路22、及びデータメモリインタフェース23により構成される回路が本発明の命令実行回路に相当する。
図2は、マルチスタックモジュール17の構成例を示す図である。マルチスタックモジュール17は、カウンタ回路31、命令コード生成回路32、及びレジスタID比較回路33を含んで構成されている。マルチスタックモジュール17には、PUSH命令の生成開始を指示する信号push_strt、PUSH命令の生成実行を指示するpush_exe、POP命令の生成開始を指示する信号pop_strt、POP命令の生成実行を指示するpop_exe、プロセッサ10のクロックCLK、スタックポインタを示すデータstk_id、PUSH命令の対象となるレジスタの範囲の開始を示すデータpush_sid,終了を示すデータpush_eidが入力される。なお、POP命令の場合は、POP命令の対象となるレジスタの範囲の開始を示すデータpop_sid,終了を示すデータpop_eidが入力される。そして、マルチスタックモジュール17からは、生成された命令コードinst_code及び命令の生成終了を示す信号gen_endが出力される。なお、本実施形態では、信号push_strt,push_exe,pop_strt,pop_exeは、“1”の場合にそれぞれの動作が指示されることとする。
カウンタ回路31は、スタック対象のレジスタの範囲を示すデータpush_sid(pop_eid),push_eid(pop_sid)に基づいて、生成するPUSH命令またはPOP命令の引数とするレジスタを識別するデータreg_idをクロックCLKに応じてカウントアップまたはカウントダウンして出力する。
命令コード生成回路32は、カウンタ回路31から出力されるデータreg_idと、命令デコード回路20から出力されるデータstk_idとを用いて、データreg_idで指定されるレジスタに格納されたデータを、データstk_idで示されるスタックポインタのスタック領域(記憶領域)に退避するPUSH命令、もしくは、データstk_idで示されるスタックポインタのスタック領域に格納されたデータを、データreg_idで指定されるレジスタに復元するPOP命令を、命令inst_codeとして出力する。
レジスタID比較回路33は、カウンタ回路31から出力されるデータreg_idと、スタック対象のレジスタの範囲を示すデータpush_sid(pop_eid),push_eid(pop_sid)とを比較し、PUSH命令またはPOP命令の生成終了を示す信号gen_endを出力する。
図3は、カウンタ回路31の構成例を示す図である。カウンタ回路31は、セレクタ41〜43、加算器44,45、内部レジスタ46、OR回路51〜54、NOR回路55、及びAND回路56を含んで構成されている。
図4は、カウンタ回路31の動作を示す図である。例えば、PUSH命令の生成開始を指示する信号push_strtが“1”になると、セレクタ41からはデータpush_sidが出力され、セレクタ42からは“1”が出力される。したがって、セレクタ43から出力されるデータreg_idは、push_sid + 1となり、内部レジスタ46から出力されるデータcnt_regは、push_sid + 2となる。そして、PUSH命令の生成実行を指示する信号push_exeが“1”になると、セレクタ43から出力されるデータreg_idは内部レジスタ46から出力されるデータcnt_regになり、データcnt_regはクロックCLKに応じて1ずつカウントアップされることとなる。つまり、PUSH命令を生成する場合、データreg_idは、push_sid + 1から順にカウントアップされていくこととなる。同様に、POP命令を生成する場合、データreg_idは、pop_sid - 1から順にカウントダウンされていくこととなる。
図5は、命令コード生成回路32の構成例を示す図である。命令コード生成回路32は、セレクタ61〜63、内部レジスタ64、連結回路65、OR回路71〜73、NOR回路74、及びAND回路75を含んで構成される。なお、push_codeはPUSH命令の命令コードであり、pop_codeはPOP命令の命令コードである。また、連結回路65は、セレクタ62から出力される命令コードに、セレクタ63から出力されるデータと、入力されるデータreg_idとを連結し、命令inst_codeとして出力する回路である。
図6は、命令コード生成回路32の動作を示す図である。例えば、PUSH命令の生成開始を指示する信号push_strtが“1”の場合、セレクタ62からは命令コードpush_codeが出力され、セレクタ63からはデータstk_idが出力される。したがって、連結回路65から出力される命令inst_codeは、データreg_idで示されるレジスタをデータstk_idで示されるスタックポインタが示す領域にPUSHする命令push + reg_id + stk_idとなる。そして、内部レジスタ64には、セレクタ63から出力されるデータstk_idが保持され、PUSH命令の生成実行を指示する信号push_exeが“1”になると、セレクタ63から出力されるデータは内部レジスタ64から出力されるデータgen_regとなり、連結回路65から出力される命令はpush + reg_id + gen_regとなる。つまり、PUSH命令を生成する場合、データreg_idで示されるレジスタをデータstk_idで示されるスタックポインタが示す領域に退避する命令が出力されることとなる。同様に、POP命令を生成する場合、データstk_idで示されるスタックポインタが示す領域に格納されたデータをデータreg_idで示されるレジスタに復元する命令が出力されることとなる。
図7は、レジスタID比較回路33の構成例を示す図である。レジスタID比較回路33は、コンパレータ81,82、AND回路83,84、及びOR回路85を含んで構成される。なお、コンパレータ81,82から出力される信号cmp1,cmp2は、入力される2つのデータが異なる場合は“0”、等しい場合は“1”となる。
図8は、レジスタID比較回路33の動作を示す図である。例えば、PUSH命令を生成する場合、データreg_idがカウントアップされてデータpush_eidと等しくなると信号cmp2が“1”となり、生成終了を示す信号gen_endが“1”となる。同様に、POP命令を生成する場合、データreg_idがカウントダウンされてデータpop_eidと等しくなると信号cmp1が“1”となり、生成終了を示す信号gen_endが“1”となる。
図9〜図13は、PUSHM命令によるマルチスタック処理の一例を示すタイミングチャートである。具体的には、図9はプロセッサ10全体のタイミングチャート、図10は、制御回路21のタイミングチャート、図11はカウンタ回路31のタイミングチャート、図12は命令コード生成回路32のタイミングチャート、図13はレジスタID比較回路33のタイミングチャートを示している。なお、PCはプログラムカウンタ値を示すものであり、F,PDEC,DEC,ADR,DATA,EXE1,EXE2は、パイプライン処理におけるプログラムフェッチ、プリデコード、デコード、アドレス演算、データメモリアクセス、演算1、演算2の各フェーズを表すものとする。
初期状態では、図10に示すように、信号cnt_stpが“0”である。そのため、図9に示すように、プログラムカウンタ11のプログラムカウント値PCはクロックCLKに応じてカウントアップされている。また、図10に示すように、選択信号inst_selが“0”である。そのため、図9に示すように、プログラムメモリ25からプログラムカウント値PCに応じた命令のフェッチが行われている。そして、図9に示すように、PUSHM命令に先立ち、スタック対象のレジスタを指定するMSTKPM命令が実行されている。
なお、本実施形態のMSTKPM命令は、プログラムではmstkpm(a, b)のように記述され、aで示すデータがpush_sid(pop_eid)にセットされ、bで示すデータがpush_eid(pop_sid)にセットされる。図9の例では、push_sidに“1”がセットされ、push_eidに“5”がセットされる。なお、push_sid(pop_eid)及びpush_eid(pop_sid)とレジスタとの関係は予め定められていることとする。
その後、PUSHM命令がフェッチされてデコードされると、図10に示すように、命令デコード回路20が信号pushm_decを“1”に変化させる。これに応じて、制御回路21は、信号push_strtを“1”に変化させるとともに、信号cnt_stpを“1”に変化させ、選択信号inst_selを“1”に変化させる。これにより、図9に示すように、プログラムカウンタ値PCの更新が停止されるとともに、マルチスタックモジュール17にPUSH命令の生成開始が指示され、セレクタ18からはマルチスタックモジュール17から出力される命令が出力されることとなる。
なお、本実施形態のPUSHM命令は、プログラムではpushm stk_idのように記載される。命令デコード回路20では、pushm stk_idの命令が、push_sidで示されるレジスタに格納されたデータをstk_idで示されるスタックポインタの領域に退避するPUSH命令としてデコードされる。そのため、図9においては、pushm sp0の命令が、アドレス演算フェーズ以降、bxで示されるレジスタに格納されたデータをsp0で示されるスタックポインタの領域に退避するPUSH命令であるpush bx, sp0となっている。なお、bxは、push_sidの“1”に対応するレジスタを示すものである。
また、制御回路21から出力される信号push_strtが“1”となり、その後、信号push_exeが“1”となることにより、図11に示すように、カウンタ回路31から出力されるデータreg_idが、push_sidである“1”に1を加算した“2”から順にカウントアップされていく。そして、図12に示すように、命令コード生成回路32は、reg_idの“2”〜“5”に対応するレジスタであるr0〜r3のデータを、sp0で示されるスタックポインタの領域に退避する命令inst_codeが順に生成して出力する。
カウンタ回路31から出力されるデータreg_idが、push_eidと等しい“5”になると、図13に示すように、レジスタID比較回路33から出力される信号gen_endが“1”となる。これに応じて、図10に示すように、制御回路21は、信号push_exeを“0”に変化させるとともに、信号cnt_stpを“0”に変化させ、選択信号inst_selを“0”に変化させる。これにより、図9に示すように、マルチスタックモジュール17に対してPUSH命令の生成停止が指示されるとともに、プログラムカウンタ値PCの更新が再開され、セレクタ18からはプログラムメモリインタフェース16から出力される命令が出力されることとなる。
図14〜図18は、POPM命令によるマルチスタック処理の一例を示すタイミングチャートである。具体的には、図14はプロセッサ10全体のタイミングチャート、図15は、制御回路21のタイミングチャート、図16はカウンタ回路31のタイミングチャート、図17は命令コード生成回路32のタイミングチャート、図18はレジスタID比較回路33のタイミングチャートを示している。
POPM命令の場合、信号pushm_decが信号popm_decとなり、信号push_strt,push_exeが信号pop_strt,pop_exeとなるが、基本的な動作は図9〜13に示したPUSHMの場合と同様である。
このように、プロセッサ10によれば、PUSHM命令を用いることによって、複数のレジスタに対する複数のPUSH命令の全てをプログラムメモリ25からフェッチするのではなく、マルチスタックモジュール17で生成することにより、プログラムメモリ25に格納されるプログラムのサイズを削減することができる。
また、プロセッサ10によれば、POPM命令を用いることによって、複数のレジスタに対する複数のPOP命令の全てをプログラムメモリ25からフェッチするのではなく、マルチスタックモジュール17で生成することにより、プログラムメモリ25に格納されるプログラムのサイズを削減することができる。
そして、プロセッサ10では、PUSH命令またはPOP命令をマルチスタックモジュール17で生成する際には、プログラムメモリ25からの命令のフェッチが停止されるため、プログラムメモリ25へのアクセスによる電力消費を抑制することができる。
また、プロセッサ10では、マルチスタック用レジスタ12に設定されたデータに基づいて、スタック対象のレジスタが決定される。そのため、退避または復元が必要なレジスタのみをスタック対象とすることが可能となり、処理効率の向上及び消費電力の削減が可能となる。
さらに、プロセッサ10では、マルチスタック用レジスタ12にスタック対象のレジスタの範囲を示すデータを設定する命令が実装されており、処理状況に応じてスタック対象のレジスタを適切に変更することが可能となり、処理効率の向上及び消費電力の削減が可能となる。
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
本発明の一実施形態であるプロセッサの構成を示す図である。 マルチスタックモジュールの構成例を示す図である。 カウンタ回路の構成例を示す図である。 カウンタ回路の動作を示す図である。 命令コード生成回路の構成例を示す図である。 命令コード生成回路の動作を示す図である。 レジスタID比較回路の構成例を示す図である。 レジスタID比較回路の動作を示す図である。 PUSHM命令の場合におけるプロセッサ全体のタイミングチャートを示す図である。 PUSHM命令の場合における制御回路のタイミングチャートを示す図である。 PUSHM命令の場合におけるカウンタ回路のタイミングチャートを示す図である。 PUSHM命令の場合における命令コード生成回路のタイミングチャートを示す図である。 PUSHM命令の場合におけるレジスタID比較回路のタイミングチャートを示す図である。 POPM命令の場合におけるプロセッサ全体のタイミングチャートを示す図である。 POPM命令の場合における制御回路のタイミングチャートを示す図である。 POPM命令の場合におけるカウンタ回路のタイミングチャートを示す図である。 POPM命令の場合における命令コード生成回路のタイミングチャートを示す図である。 POPM命令の場合におけるレジスタID比較回路のタイミングチャートを示す図である。
符号の説明
10 プロセッサ
11 プログラムカウンタ
12 マルチスタック用レジスタ
13 データレジスタ
14 アドレスレジスタ
15 プログラムアドレス生成回路
16 プログラムメモリインタフェース
17 マルチスタックモジュール
18 セレクタ
19 命令レジスタ
20 命令デコード回路
21 制御回路
22 アドレス演算回路
23 データメモリインタフェース
25 プログラムメモリ
26 データメモリ
31 カウンタ回路
32 命令コード生成回路
33 レジスタID比較回路

Claims (5)

  1. 複数のレジスタと、
    メモリから命令を読み出す命令読出回路と、
    前記命令読出回路によって読み出された前記命令が、前記複数のレジスタに格納されているデータの退避を指示する命令である場合、前記レジスタごとに前記データを所定の記憶領域に退避する命令を生成する命令生成回路と、
    前記メモリから読み出された前記命令、および、前記命令生成回路によって生成された前記命令を実行する命令実行回路と、
    を備えることを特徴とするプロセッサ。
  2. 請求項1に記載のプロセッサであって、
    前記命令生成回路は、
    前記命令読出回路によって読み出された前記命令が、前記所定の記憶領域に退避された前記データの前記複数のレジスタへの復元を指示する命令である場合、前記レジスタごとに前記データを前記所定の記憶領域から復元する命令を生成すること、
    を特徴とするプロセッサ。
  3. 請求項1又は2に記載のプロセッサであって、
    前記命令読出回路から読み出された前記命令が、前記命令生成回路に前記レジスタごとの前記命令の生成を指示する命令である場合には、前記命令生成回路に前記レジスタごとの前記命令の生成を指示するとともに、前記命令読出回路に前記メモリからの前記命令の読み出しの停止を指示する制御回路を、
    更に備えることを特徴とするプロセッサ。
  4. 請求項1〜3の何れか一項に記載のプロセッサであって、
    前記複数のレジスタのうちの一部を指定するための指定データを記憶する記憶回路を更に備え、
    前記命令生成回路は、
    前記複数のレジスタのうち、前記記憶回路に格納された前記指定データで指定されるレジスタごとに前記命令を生成すること、
    を特徴とするプロセッサ。
  5. 請求項4に記載のプロセッサであって、
    前記命令実行回路は、
    前記メモリから読み出された前記命令が、前記指定データを前記記憶回路に格納する命令である場合、前記指定データを前記記憶回路に格納すること、
    を特徴とするプロセッサ。
JP2007143517A 2007-05-30 2007-05-30 プロセッサ Pending JP2008299501A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007143517A JP2008299501A (ja) 2007-05-30 2007-05-30 プロセッサ
CN2008101091591A CN101315598B (zh) 2007-05-30 2008-05-23 处理器
US12/128,325 US8255672B2 (en) 2007-05-30 2008-05-28 Single instruction decode circuit for decoding instruction from memory and instructions from an instruction generation circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007143517A JP2008299501A (ja) 2007-05-30 2007-05-30 プロセッサ

Publications (1)

Publication Number Publication Date
JP2008299501A true JP2008299501A (ja) 2008-12-11

Family

ID=40089588

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007143517A Pending JP2008299501A (ja) 2007-05-30 2007-05-30 プロセッサ

Country Status (3)

Country Link
US (1) US8255672B2 (ja)
JP (1) JP2008299501A (ja)
CN (1) CN101315598B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10559351B2 (en) 2017-02-20 2020-02-11 Texas Instruments Incorporated Methods and apparatus for reduced area control register circuit

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02204832A (ja) * 1989-02-02 1990-08-14 Fujitsu Ltd 命令制御方式
JPH04533A (ja) * 1990-04-17 1992-01-06 Nec Corp 情報処理システム
JPH04260929A (ja) * 1991-01-21 1992-09-16 Mitsubishi Electric Corp データ処理装置
JPH0520072A (ja) * 1991-07-16 1993-01-29 Matsushita Electric Ind Co Ltd レジスタの退避復帰機能付データ処理装置
JPH0561901A (ja) * 1990-09-03 1993-03-12 Matsushita Electric Ind Co Ltd プログラム制御型プロセツサ
JPH08505965A (ja) * 1992-11-09 1996-06-25 セイコーエプソン株式会社 コンテキスト切り換え装置及び方法
JP2001306319A (ja) * 2000-02-14 2001-11-02 Oki Electric Ind Co Ltd 命令処理装置及び命令処理方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4339796A (en) * 1978-06-30 1982-07-13 International Business Machines Corporation System for generating a plurality of different addresses for a working memory of a microcontroller during execution of certain instructions
US4493027A (en) * 1981-05-22 1985-01-08 Data General Corporation Method of performing a call operation in a digital data processing system having microcode call and return operations
JPH0795278B2 (ja) * 1985-08-30 1995-10-11 株式会社日立製作所 処理装置の割込制御方式
JPH0752399B2 (ja) * 1988-06-30 1995-06-05 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 記憶システム
US5142635A (en) * 1989-04-07 1992-08-25 Intel Corporation Method and circuitry for performing multiple stack operations in succession in a pipelined digital computer
JP2616182B2 (ja) * 1990-08-29 1997-06-04 三菱電機株式会社 データ処理装置
JP3619939B2 (ja) * 1994-09-26 2005-02-16 株式会社ルネサステクノロジ 中央処理装置
US20020129229A1 (en) * 2000-12-29 2002-09-12 Michael Cornaby Microinstruction sequencer stack
JP2003345456A (ja) 2002-05-28 2003-12-05 Matsushita Electric Ind Co Ltd コンピュータシステムにおける割り込み処理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02204832A (ja) * 1989-02-02 1990-08-14 Fujitsu Ltd 命令制御方式
JPH04533A (ja) * 1990-04-17 1992-01-06 Nec Corp 情報処理システム
JPH0561901A (ja) * 1990-09-03 1993-03-12 Matsushita Electric Ind Co Ltd プログラム制御型プロセツサ
JPH04260929A (ja) * 1991-01-21 1992-09-16 Mitsubishi Electric Corp データ処理装置
JPH0520072A (ja) * 1991-07-16 1993-01-29 Matsushita Electric Ind Co Ltd レジスタの退避復帰機能付データ処理装置
JPH08505965A (ja) * 1992-11-09 1996-06-25 セイコーエプソン株式会社 コンテキスト切り換え装置及び方法
JP2001306319A (ja) * 2000-02-14 2001-11-02 Oki Electric Ind Co Ltd 命令処理装置及び命令処理方法

Also Published As

Publication number Publication date
US20080301401A1 (en) 2008-12-04
US8255672B2 (en) 2012-08-28
CN101315598B (zh) 2010-09-22
CN101315598A (zh) 2008-12-03

Similar Documents

Publication Publication Date Title
JP4986431B2 (ja) プロセッサ
US8601239B2 (en) Extended register addressing using prefix instruction
KR20130016246A (ko) 다중 명령 세트에 의해 사용되는 레지스터 간의 매핑
JPH1091443A (ja) 情報処理回路、マイクロコンピュータ及び電子機器
JP5126226B2 (ja) 演算ユニット、プロセッサ及びプロセッサアーキテクチャ
KR20070107814A (ko) 의존성 명령을 패킷으로 그룹핑하여 실행하는 프로세서 및방법
US7461235B2 (en) Energy-efficient parallel data path architecture for selectively powering processing units and register files based on instruction type
US20200326940A1 (en) Data loading and storage instruction processing method and device
JP5233078B2 (ja) プロセッサ及びその処理方法
JP2008299501A (ja) プロセッサ
JP2010026674A (ja) 半導体集積回路
JP2006072961A (ja) 演算処理装置のメモリ回路
JPH1091430A (ja) 命令解読装置
US8151091B2 (en) Data processing method and system based on pipeline
US6363469B1 (en) Address generation apparatus
US20110225395A1 (en) Data processing system and control method thereof
JP2004302827A (ja) マイクロコントローラ
US9075620B2 (en) Instruction execution circuit
JP5025521B2 (ja) 半導体装置
JP7384374B2 (ja) 中央演算処理装置
JP4601624B2 (ja) 命令プリデコーダ付きダイレクトメモリアクセスユニット
JP2000003279A (ja) Vliwプロセッサ、プログラム生成装置、および記録媒体
JP2011150636A (ja) マイクロプロセッサ及びその制御方法
KR100896269B1 (ko) SIMD/SISD/Row/Column 동작을 할 수있는 SIMD 병렬 프로세서
JP2004206214A (ja) マイクロプロセッサ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110420

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110607

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110719