JP4610218B2 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP4610218B2
JP4610218B2 JP2004099111A JP2004099111A JP4610218B2 JP 4610218 B2 JP4610218 B2 JP 4610218B2 JP 2004099111 A JP2004099111 A JP 2004099111A JP 2004099111 A JP2004099111 A JP 2004099111A JP 4610218 B2 JP4610218 B2 JP 4610218B2
Authority
JP
Japan
Prior art keywords
instruction
loop
queue
information processing
processing apparatus
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.)
Expired - Fee Related
Application number
JP2004099111A
Other languages
English (en)
Other versions
JP2005284814A (ja
Inventor
匠 加藤
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2004099111A priority Critical patent/JP4610218B2/ja
Priority to US11/092,705 priority patent/US20050223204A1/en
Publication of JP2005284814A publication Critical patent/JP2005284814A/ja
Application granted granted Critical
Publication of JP4610218B2 publication Critical patent/JP4610218B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/325Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • G06F9/381Loop buffering

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Description

本発明は、パイプライン方式で複数の処理を並行して行う情報処理装置に関する。
従来、情報処理装置の処理速度を高速化するために、複数の命令を少しずつずらして同時並行的に実行するパイプライン処理を行う「パイプライン方式」が用いられている。
パイプライン処理では、命令を実行する速度自体が高速化される訳ではないが、命令の処理(パイプライン処理においては、一般的にはステージという)が並行して行われるために、単位時間あたりの仕事量が増大し、結果的に処理速度が向上する。十分な仕事量がある場合、パイプライン処理による速度向上比は、一般的にはステージの数と等しくなる。
一般に、情報処理装置は、実行しようとする命令の命令パケットを命令メモリから読み出して順次命令キューに格納しておき、命令キューから命令パケットを読み出して動作を実行している。なお、このように、命令パケットを命令メモリから予め読み出して命令キューに格納しておく動作は、「先読み」とも呼ばれている。
しかし、先読みを行うパイプライン方式の情報処理装置は、同一手順の命令群を繰り返し実行させる場合(すなわち、情報処理装置にループ処理を行わせる場合)には、速度向上比が低くなってしまうことがある。
従来の情報処理装置におけるループバック時のパイプライン処理について説明する。図7に従来の情報処理装置の構成を示す。
プロセッサ500は、命令キュー506を有する。
プロセッサ500は命令メモリ600から命令パケットを命令キュー506に読み込む。
また、プロセッサ500は、実行する命令がループ開始命令であったか否か、すなわちループ命令が発行されたか否かを判断する。また、ループ命令実行中にループから抜けるか否かの判定を行う。
また、図8にこの情報処理装置のループバック(ループの処理回数が規定数に達していないためにループの先頭へ戻る)時の動作を示す。なお、ここでプロセッサ500は命令メモリ600から命令パケットを読み込むのに2ステージ分の時間を要するものとする。
図9に示すように、ループ処理を構成する命令群は、ループ命令が発行された後、ループ処理の先頭命令(LT1)からループ処理の最終命令(LL)までを規定の回数だけ繰り返す。図9に示す例では、ループ処理の最終命令(LL)の一つ前の命令でループエンド(LE)を検出している。ループエンドを検出すると、ループが規定回数繰り返されたか判断し、規定回数に達していない場合はループ最終アドレスの命令を実行後ループ処理の先頭命令に戻り、規定回数に達している場合はループ処理の最終命令を実行後そのままループを抜ける。
ここで、プロセッサ500は、ループバック時には、LE→LL→LT1→LT2→・・・という順に命令を実行する必要がある。
しかし、図8に示したように、プロセッサ500では、ループエンドのアドレスが検出された時点では、既に命令パケットの読み込みが開始されており、ループエンドを検出するサイクルで読み込みを開始した命令パケットは本来実行されないものである。したがって、ループバックが検出された時点で既に読み込みが開始されている命令パケットは無効なメモリアドレスのものであるから、ループバックした後の命令(LT1)を実行するためには、新たに命令パケットを命令メモリ600から命令キュー506へ読み込み直さなければならない。
すなわち、ループエンドを検出した次のサイクルで、ループ処理の先頭命令の命令パケットの読み込みが行われるため、ループ処理の最終命令とループ処理の先頭命令の間に、図8で示す無駄なサイクル(Invalid)が発生してしまう事になる。
したがって、先読みを行うパイプライン方式の情報処理装置にループ処理を実行させると、ループバック時に遅延(レイテンシー)が生じてしまい、処理を高速化する妨げとなる。
ループ命令の高速実行を目的とした従来技術としては、特許文献1に開示される「データ処理装置」がある。
特許文献1に開示される発明は、先行する命令に付加されている付加情報が、ループを構成する命令群をループ命令キューへ格納する格納する命令であった場合には、ループを構成する命令群をループ命令キューに格納するデータ処理装置である。
特開昭63−314644号公報
しかし、特許文献1に開示される発明は、ループを構成する命令群の読み出し時間を削減することによってループ命令の高速実行を図るものであり、ループバック時のレイテンシーに関しては何ら考慮がなされていない。しかも、特許文献1に開示される発明は、ループ処理の高速実行のために、ループを構成する全ての命令群をループ命令キューに保持するため、ハードウェアの規模が大きくなってしまう。特に、多重ループの処理では、ループ命令キューに格納すべき情報量が莫大な量になってしまう。
このように、従来技術ではループバック時の遅延が発生しないようにすることができず、ループ処理の高速実行のためにループを構成する全ての命令群をループ命令キューに保持するためハードウェアの規模が大きくなってしまうという問題があった。
本発明はかかる問題に鑑みてなされたものであり、ハードウェアの規模が大きくすることなくループバック時の遅延が発生しないようにする情報処理装置を提供することを目的とする。
上記目的を達成するため、本発明の情報処理装置は、命令メモリに記憶された一の命令が読み込まれるまでに所定のステージ数を要する命令キューと、
前記命令メモリに記憶されている所定数の命令からなる命令グループ内の命令を所定の順番で所定回数だけ繰り返し実行するループ命令が発行された場合、前記命令グループ内の命令のうち、前記ステージ数より少ない数の命令を前記順番に基づき記憶するループ命令キューと、
前記順番に従って、前記ループ命令キューに記憶された命令を前記命令キューに出力した後に、連続して前記命令メモリに記憶された前記命令グループ内の命令を前記命令キューに出力するセレクタと、
を有することを特徴とする。
本発明によれば、ハードウェアの規模が大きくすることなくループバック時の遅延が発生しないようにする情報処理装置を提供できる。
〔発明の原理〕
本発明の原理について説明する。
本発明においては、演算処理装置は、命令パケットを実行した際に、その命令パケットがループ開始命令のものであるか否かを判断する。実行した命令パケットがループ開始命令のものであれば、ループ処理を形成する命令群の先頭から所定数の命令パケットをループ命令キューに格納する。
その後、ループエンドを検出した場合には、ループ命令キューに格納されている命令パケットを命令キューに読み込む。このようにすることで、ループバック時には命令メモリからループ処理の先頭の命令パケットを読み込む必要が無くなるため、ループバック時にレイテンシーを発生させないようにすることができる。
以下、上記原理に基づく本発明の好適な実施の形態について説明する。
〔第1の実施形態〕
本発明を好適に実施した第1の実施形態について説明する。図1に本実施形態にかかる情報処理装置の構成を示す。
本実施形態にかかるパイプライン方式の情報処理装置は、ループ高速化回路107を備えたプロセッサ100と命令メモリ200とがバスを介して接続された構成である。
図2に、本実施形態にかかるパイプライン方式の情報処理装置のより詳細な構成を示す。
プロセッサ100は、命令キュー106及びループ高速化回路107を有する。
プロセッサ100は命令メモリ200又はループキュー1071から命令パケットを命令キュー106に読み込む。
プロセッサ100は、実行する命令がループ開始命令であったか否か、すなわちループ命令が発行されたか否かを判断する。また、ループ命令実行中にループから抜けるか否かの判定を行う。
ループ高速化回路107は、ループ命令キュー1071、ループキュー有効フラグ(特許請求の範囲におけるフラグ)1072及びセレクタ1073を有する。
プロセッサ100は、ループ命令が発行されたと判断した際に、ループ開始アドレスの命令パケットをループ命令キュー1071に格納する。ループキュー有効フラグ1072は、ループ命令キュー1071が有効であるか否かを示すフラグである。セレクタ1073は、プロセッサ100が命令メモリ200から命令パケットを取り込むかループ命令キュー1071から命令パケットを取り込むのかを切り換える。
本実施形態にかかる情報処理装置の動作について説明する。図3に、本実施形態にかかる情報処理装置の動作の流れを示す。なお、初期状態ではセレクタ1073は命令メモリ200側、ループキュー有効フラグ1073はinvalidとなっている。
プロセッサ100は、ループ命令が発行されるまでは、命令メモリ200から命令キュー106へ命令パケットを読み込み、命令キュー106に読み込まれている命令パケットを順次処理する(ステップS101、S102/No、S104、S105/No、S106/No、S111)。
プロセッサ100が、ループ命令が発行されたと判断した場合(ステップS102/Yes)、プロセッサ100は、ループ処理の先頭の命令パケットをループ命令キュー1071に格納するとともに、ループキュー有効フラグ1072を有効(valid)とする(ステップS103)。
ループキュー有効フラグ1072がvalidとされたのち、プロセッサ100は、命令キュー106に読み込まれている命令パケットを実行する(ステップS104)。
なお、ループ命令が発行されていない場合(ステップS102/No)も同様に、プロセッサ100は、命令キュー106に読み込まれている命令パケットを実行する。
プロセッサ100は、実行する命令パケットがループを抜ける命令であるか否かを判断する(ステップS105)。
実行する命令パケットがループを抜ける命令であった場合(ステップS105/Yes(ループホップ))、プロセッサ100は、ループキュー有効フラグ1072をinvalidにする(ステップS110)。
一方、プロセッサ100で実行した命令パケットがループを抜ける命令では無かった場合(ステップS105/No)、プロセッサ100はループエンドに達したか否かを判断する(ステップS106)。
ループエンドに達していない(ステップS106/No)のであれば、プロセッサ100は、命令メモリ200から命令キュー106へ命令パケットを読み込ませる(ステップS111)。一方、ループエンドに達している(ステップS106/Yes)のであれば、プロセッサ100はループの回数がループ命令に規定される回数に達したか否かを判断する(ステップS107)。
ループ回数が規定回数に達しているのであれば(ステップS107/Yes)、プロセッサ100はループキュー有効フラグ1072をinvalidにする(ステップS110)。
一方、ループ回数が規定回数に達していない(ループ処理を行っていない場合を含む)のであれば(ステップS107/No(ループバック))、プロセッサ100は、ループキュー有効フラグ1072がvalidであるか否かを確認する(ステップS108)。
ループキュー有効フラグ1072がvalidであるならば(ステップS108/Yes)、プロセッサ100は、セレクタ1073をループ命令キュー側に切り換えて、ループ命令キュー1061に格納されている命令パケット(即ちループスタートアドレスの命令パケット)を命令キュー106へ読み込む(ステップS109)。プロセッサ100は、ループ命令キュー1071から命令キュー106へループ先頭の命令パケットを読み込んだら、セレクタ1073を命令メモリ200に切り換える。
一方、ループキュー有効フラグ1072がinvalidであるならば(ステップS108/No)、プロセッサ100は、命令メモリ200から命令キュー106へ命令パケットを読み込む(ステップS111)。
この後は、ステップS102へ進み、処理が終了するまで上記同様の手順を繰り返す。
本実施形態においては、プロセッサ100は、ループ命令キュー1071に格納されている命令パケットを、ループエンドを検出した次のサイクルで命令キュー106に読み込むため、ループエンドを検出した次のサイクルで命令メモリ200から命令パケットを読み込むよりも1サイクル早く読み込める。このため、ループバック時にレイテンシーの発生させないようにできる。
図4に、本実施形態にかかる情報処理装置のループバック時の処理を示す。図4において、IF1、IF2はプロセッサ100が命令メモリ200から命令パケットを命令キュー106に読み込むのに、2ステージかかることを表す。また、DQは、プロセッサ100が命令パケットを割り振るステージを表す。また、DEは、プロセッサ100が命令をデコードするステージを示す。また、DPは、プロセッサ100がデータポインタを更新するステージを表す。また、EXは、プロセッサ100が命令を実行するステージを表す。
ループバック時には、LE→LL→LT1→LT2→・・・という順番で命令を実行する。
この例では、命令パケットの読込みに2ステージ分の時間が必要であるため、ループエンドを検出した時点では、LT1と異なる命令パケットの読込みが開始されている。しかし、本実施形態にかかる情報処理装置は、ループエンドが検出された時点で、プロセッサ100はループ命令キュー1071からLT1の命令パケットを読み込めるため、ループエンド時にレイテンシーが発生させることなくLT1の命令パケットを読み込める。
ループ命令を実行する場合、ループ命令の命令パケットのEXステージが終了した次のステージで、ループ処理の先頭の命令パケットが命令キュー106からループ命令キュー107に書き写され、ループキュー有効フラグ1072が有効となる。
一方、ループエンドの検出は、プロセッサ100によってループ処理の最終命令の一つ前の命令で行われる。よって、ループエンドが検出された次のサイクルで、プロセッサ100はループ命令キュー106からループ処理の先頭の命令パケットを読み出すことができる。
このように、本実施形態にかかる情報処理装置は、ループバックの際には、ループ命令キューに格納されている命令パケットを読み込んで処理を行うため、ループバック時にレイテンシーが生じることが無くなる。
〔第2の実施形態〕
本発明を好適に実施した第2の実施形態について説明する。上記第1の実施形態においては、命令メモリから命令キューへ命令パケットを読み込むのに2ステージ分の時間が必要な場合について説明したが、本実施形態においては命令メモリから命令キューへ命令パケットを読み込むのにnステージ分の時間を必要とする場合について説明する。
図5に、本実施形態にかかる情報処理装置の構成を示す。この情報処理装置は、第1の実施形態と同様の構成である。ただし、本実施形態においては、ループ命令キュー1071をn−1個(10711〜1071(n-1))有する。
本実施形態にかかる情報処理装置の動作について説明する。
本実施形態にかかる情報処理装置の動作の流れは、第1の実施形態にかかる情報処理装置とほぼ同様である。
ただし、ループバック時には、プロセッサ100はセレクタ1073をループ命令キュー10711側に切り換えて命令パケットLT1を読み出した後に、セレクタ1073をループ命令キュー10712側に切り換える。これにより次サイクルにおいて、プロセッサ100はループ命令キュー10712から命令パケットLT2を読み出す。同様に、プロセッサ100はステージごとにセレクタ1073を切り換えて各ループ命令キュー10711〜1071(n-1)から命令パケットを順次読み込む。
これにより、ループバック時には、ループの先頭の命令パケットであるLT1からループのn−1番目の命令パケットであるLT(n−1)までは、命令メモリ200からではなくループ命令キュー10711〜1071(n-1)からそれぞれ読み込まれる。
よって、プロセッサ100は、これらの命令パケットをメモリアドレスの指定を行うことなく命令キュー106に読み込めるため、ループバック時にレイテンシーを生じさせることはない。
命令メモリ200からの命令パケットの読み込みに4ステージの時間を要する場合を例として、本実施形態にかかるパイプライン方式の情報処理装置の動作について説明する。
図6に、本実施形態にかかる情報処理装置のループバック時の処理を示す。図6において、IF1、IF2、IF3及びIF4はプロセッサ100が命令メモリ200から命令パケットを命令キュー106に読み込むのに、4ステージかかることを表す。また、DQは、プロセッサ100が命令パケットを割り振るステージを表す。また、DEは、プロセッサ100が命令をデコードするステージを示す。また、DPは、プロセッサ100がデータポインタを更新するステージを表す。また、EXは、プロセッサ100が命令を実行するステージを表す。
ループエンド時には、プロセッサ100は、LE→LL→LT1→LT2→LT3→LT4→・・・という順番で命令パケットを実行する。
この例では、命令パケットの読み込みに4ステージ分の時間が必要であるため、ループエンドを検出した時点では、LT1、LT2及びLT3と異なる命令パケットの読み込みが開始されている。しかし、本実施形態にかかる情報処理装置は、ループエンドが検出された時点で、プロセッサ100はループ命令キュー10711からLT1の命令パケットを、ループ命令キュー10712からLT2の命令パケットを、ループ命令キュー10713からLT3の命令パケットを命令キューへ106読み込めるため、ループエンド時にレイテンシーが発生させることなくLT1、LT2及びLT3の命令パケットを読み込める。
このように、本実施形態にかかる情報処理装置は、ループバックの際には、ループ命令キューに格納されているn−1個のメモリパケットをそれぞれ読み込んでして実行するため、ループバック時にレイテンシーが生じることが無くなる。
なお、上記各実施形態は本発明の好適な実施の一例であり、本発明はこれらに限定されることはない。
例えば、上記各実施形態においては、各ステージが同じ時間長である場合を例に説明を行ったが、本発明は、ステージの時間長が異なる場合にも適用可能である。
このように、本発明は様々な変形が可能である。
本発明を好適に実施した第1の実施形態にかかるパイプライン方式の情報処理装置の概略構成を示す図である。 第1の実施形態にかかるパイプライン方式の情報処理装置の構成を示す図である。 第1の実施形態にかかるパイプライン方式の情報処理装置の動作の流れを示す図である。 第1の実施形態にかかるパイプライン方式の情報処理装置の動作タイミングの一例を示す図である。 本発明を好適に実施した第2の実施形態にかかるパイプライン方式の情報処理装置の構成を示す図である。 第2の実施形態にかかるパイプライン方式の情報処理装置の動作タイミングの一例を示す図である。 従来技術によるパイプライン方式の情報処理装置の構成を示す図である。 従来技術によるパイプライン方式の情報処理装置の動作タイミングの一例を示す図である。 ループバック時に実行すべき命令パケットの順序を示す図である。
符号の説明
100 プロセッサ
101 命令読み込み部
102 デコーダ
103 命令実行部
104 ループ判断部
105 結果書き込み部
106 命令キュー
107 ループ高速化回路
200 命令メモリ
1071、10711〜1071(n-1) ループ命令キュー
1072 ループキュー有効フラグ
1073 セレクタ

Claims (7)

  1. 命令メモリに記憶された一の命令が読み込まれるまでに所定のステージ数を要する命令キューと、
    前記命令メモリに記憶されている所定数の命令からなる命令グループ内の命令を所定の順番で所定回数だけ繰り返し実行するループ命令が発行された場合、前記ステージ数よりも1少ない数の命令を前記命令グループの先頭から前記順番に基づき記憶するループ命令キューと、
    前記順番に従って、前記ループ命令キューに記憶された命令を前記命令キューに出力した後に、連続して前記命令メモリに記憶された前記命令グループ内の命令を前記命令キューに出力するセレクタと、
    を有することを特徴とする情報処理装置。
  2. 前記セレクタは、前記ループ命令キューに記憶された命令を前記ループ先頭命令から前記順番に従って前記命令キューに出力した後に、前記命令メモリに記憶された前記命令グループ内の命令を前記順番に従って前記命令キューに出力することを特徴とする請求項に記載の情報処理装置。
  3. 前記セレクタは、前記ループ命令キューが有効であるか否かを示すループ有効フラグに基づいて、前記ループ命令キューに記憶された命令を前記命令キューに出力するか、前記命令メモリに記憶された命令を前記命令キューに出力するか、を切り替えることを特徴とする請求項1に記載の情報処理装置。
  4. 前記ループ有効フラグは、前記ループ命令が発行された場合に前記ループ命令キューが有効であることを示す、ことを特徴とする請求項に記載の情報処理装置。
  5. 前記ループ命令キューは、前記ループ命令の最初の繰り返しの際に、前記ステージ数よりも1少ない数の命令を前記ループ先頭命令から前記順番に従って記憶することを特徴とする請求項に記載の情報処理装置。
  6. 前記命令グループ内の命令のうち、前記順番に従って最後に実行されるループ最終命令よりひとつ前に実行される命令に基づき、繰り返しを行った数が前記所定回数に達したか否かを判断することを特徴とする請求項1に記載の情報処理装置。
  7. 前記ループ命令キューから前記ループ先頭命令を読み出すステージと、前記命令メモリから前記命令グループ内の命令を読み出すステージとが、同時に開始されることを特徴とする請求項1に記載の情報処理装置。
JP2004099111A 2004-03-30 2004-03-30 情報処理装置 Expired - Fee Related JP4610218B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004099111A JP4610218B2 (ja) 2004-03-30 2004-03-30 情報処理装置
US11/092,705 US20050223204A1 (en) 2004-03-30 2005-03-30 Data processing apparatus adopting pipeline processing system and data processing method used in the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004099111A JP4610218B2 (ja) 2004-03-30 2004-03-30 情報処理装置

Publications (2)

Publication Number Publication Date
JP2005284814A JP2005284814A (ja) 2005-10-13
JP4610218B2 true JP4610218B2 (ja) 2011-01-12

Family

ID=35055738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004099111A Expired - Fee Related JP4610218B2 (ja) 2004-03-30 2004-03-30 情報処理装置

Country Status (2)

Country Link
US (1) US20050223204A1 (ja)
JP (1) JP4610218B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937557B2 (en) 2004-03-16 2011-05-03 Vns Portfolio Llc System and method for intercommunication between computers in an array
US7617383B2 (en) * 2006-02-16 2009-11-10 Vns Portfolio Llc Circular register arrays of a computer
EP1821202B1 (en) * 2006-02-16 2011-01-12 VNS Portfolio LLC Execution of instructions directly from input source
US7966481B2 (en) 2006-02-16 2011-06-21 Vns Portfolio Llc Computer system and method for executing port communications without interrupting the receiving computer
US7913069B2 (en) * 2006-02-16 2011-03-22 Vns Portfolio Llc Processor and method for executing a program loop within an instruction word
US7904615B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication
US7555637B2 (en) * 2007-04-27 2009-06-30 Vns Portfolio Llc Multi-port read/write operations based on register bits set for indicating select ports and transfer directions
TW200849087A (en) * 2007-06-01 2008-12-16 Holtek Semiconductor Inc Method of accelerating the excution of repeatative commands and its micro controller
JP5159258B2 (ja) * 2007-11-06 2013-03-06 株式会社東芝 演算処理装置
JP5209390B2 (ja) 2008-07-02 2013-06-12 ルネサスエレクトロニクス株式会社 情報処理装置及び命令フェッチ制御方法
US20100023730A1 (en) * 2008-07-24 2010-01-28 Vns Portfolio Llc Circular Register Arrays of a Computer
JP2010140398A (ja) * 2008-12-15 2010-06-24 Renesas Electronics Corp データ処理装置及びデータ処理方法
CN106445472B (zh) * 2016-08-16 2019-01-11 中国科学院计算技术研究所 一种字符操作加速方法、装置、芯片、处理器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02157939A (ja) * 1988-12-09 1990-06-18 Toshiba Corp 命令処理方法及び命令処理装置
JPH0962508A (ja) * 1995-08-29 1997-03-07 Hitachi Ltd 分岐登録命令を有するプロセッサ
JPH11327929A (ja) * 1998-03-17 1999-11-30 Matsushita Electric Ind Co Ltd プログラム制御装置
JP2001222427A (ja) * 2001-02-21 2001-08-17 Hitachi Ltd データ処理装置
JP2002073330A (ja) * 2000-08-28 2002-03-12 Mitsubishi Electric Corp データ処理装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6356731A (ja) * 1986-08-27 1988-03-11 Mitsubishi Electric Corp デ−タ処理装置
US5226130A (en) * 1990-02-26 1993-07-06 Nexgen Microsystems Method and apparatus for store-into-instruction-stream detection and maintaining branch prediction cache consistency
DE69718278T2 (de) * 1996-10-31 2003-08-21 Texas Instruments Inc Methode und System zur Einzel-Zyklus-Ausführung aufeinanderfolgender Iterationen einer Befehlsschleife

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02157939A (ja) * 1988-12-09 1990-06-18 Toshiba Corp 命令処理方法及び命令処理装置
JPH0962508A (ja) * 1995-08-29 1997-03-07 Hitachi Ltd 分岐登録命令を有するプロセッサ
JPH11327929A (ja) * 1998-03-17 1999-11-30 Matsushita Electric Ind Co Ltd プログラム制御装置
JP2002073330A (ja) * 2000-08-28 2002-03-12 Mitsubishi Electric Corp データ処理装置
JP2001222427A (ja) * 2001-02-21 2001-08-17 Hitachi Ltd データ処理装置

Also Published As

Publication number Publication date
US20050223204A1 (en) 2005-10-06
JP2005284814A (ja) 2005-10-13

Similar Documents

Publication Publication Date Title
JP4610218B2 (ja) 情報処理装置
US7124282B2 (en) Processor architecture with independently addressable memory banks for storing instructions to be executed
JP4801725B2 (ja) 演算処理装置及び演算処理装置の制御方法
JPH1124929A (ja) 演算処理装置およびその方法
JP2003108368A (ja) 並列演算プロセッサ、その演算制御方法及びプログラム
EP0730223B1 (en) Pipeline data processing apparatus for executing a plurality of data processes having a data-dependent relationship
JP2002163127A (ja) トレース制御回路
JP3097648B2 (ja) 情報処理装置及び情報処理方法
US20030154469A1 (en) Apparatus and method for improved execution of a software pipeline loop procedure in a digital signal processor
JP2007334563A (ja) マスク付きベクトル演算処理装置
JP3759729B2 (ja) スペキュレーティブ・レジスタの調整
JP2812610B2 (ja) パイプライン制御方式
JPH03147134A (ja) 命令シーケンス制御装置
JP2636192B2 (ja) 情報処理装置
JP2010204913A (ja) ベクトル処理装置
JPH0277940A (ja) データ処理装置
US6223257B1 (en) Instruction cache address generation technique having reduced delays in fetching missed data
JP3825709B2 (ja) パイプライン処理方法及びプロセッサ装置
US7124281B1 (en) Processing system having sequential address indicator signals
JP2764844B2 (ja) パイプライン処理装置
JPS60105050A (ja) パイプライン制御方式
JPH0520353A (ja) ベクトルデータ処理装置
JP2002351659A (ja) キュープロセッサ
JPH06124208A (ja) プログラム制御装置
JPH05233380A (ja) 並列実行性能測定処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090721

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090904

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100609

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101012

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101012

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131022

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees