JP4413663B2 - 命令キャッシュシステム - Google Patents

命令キャッシュシステム Download PDF

Info

Publication number
JP4413663B2
JP4413663B2 JP2004075648A JP2004075648A JP4413663B2 JP 4413663 B2 JP4413663 B2 JP 4413663B2 JP 2004075648 A JP2004075648 A JP 2004075648A JP 2004075648 A JP2004075648 A JP 2004075648A JP 4413663 B2 JP4413663 B2 JP 4413663B2
Authority
JP
Japan
Prior art keywords
program
instruction cache
instruction
cache
instruction data
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
JP2004075648A
Other languages
English (en)
Other versions
JP2005266997A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004075648A priority Critical patent/JP4413663B2/ja
Publication of JP2005266997A publication Critical patent/JP2005266997A/ja
Application granted granted Critical
Publication of JP4413663B2 publication Critical patent/JP4413663B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は命令キャッシュシステムに関し、より詳しくは、中央処理装置(CPU)が次に読み込むべき命令データを、プログラムメモリから高速のバッファメモリである命令キャッシュに予め取り込んでおき、中央処理装置(CPU)が該命令キャッシュから命令データを読み出すことにより処理を高速化させる技術に関する。
半導体技術の進歩に伴い、マイクロプロセッサの処理速度が向上し、マイクロプロセッサによるデータ処理量が益々増大しつつある。マイクロプロセッサの処理速度が上がるにつれて、プログラムメモリと中央処理装置(CPU)との間の命令データの転送時間が無視できないほどになり、特にリアルタイム処理が要求される処理システムでは、この転送時間の長短がマイクロプロセッサの性能として顕著に現れている。
命令データの転送に要する時間による処理効率の影響を低下させる技術として、図8に示すように、主記憶のプログラムメモリ8−3より高速な命令キャッシュ8−2を、主記憶のプログラムメモリ8−3と中央処理装置(CPU)8−1との間に備え、該命令キャッシュ8−2に命令データを予めプログラムメモリ8−3から取り込んでおき、該命令キャッシュ8−2から中央処理装置(CPU)8−1へ命令データを転送する命令キャッシュシステムを組み込んだマイクロプロセッサが知られている。
このような命令キャッシュを備えるマイクロプロセッサでは、予め命令キャッシュ8−2に取込む命令データのヒット率を高めるために、命令キャッシュ8−2の容量又はキャッシュブロックサイズを大きくする工夫が一般的に行われている。なお、命令キャッシュ8−2に取込んだ命令データがミスヒットである場合に、その命令データだけを主記憶のプログラムメモリ8−3から命令キャッシュ8−2にリプレースするのではなく、或る纏まった単位(4バイト、8バイト、・・・等)の命令データをリプレースする。このリプレースする纏まった命令データの単位をキャッシュブロックサイズ或いは単にブロックサイズと称している。
一方、最近ではコストパフォーマンスの追求のために、比較的小容量の命令キャッシュ8−2を搭載したマイクロプロセッサが数多く出現しているが、小容量の命令キャッシュ8−2を搭載したマイクロプロセッサでは、命令キャッシュ容量が小さいことによるミスヒットが多発し、このミスヒット時の処理負担(リプレース時のオーバーヘッド)が全体のプログラム処理の実行速度を大幅に低下させてしまう。
主記憶のプログラムメモリ8−3から命令データの転送中は、中央処理装置(CPU)8−1の動作が完全に停止してしまうため、マイクロプロセッサ(CPU)全体の性能低下の要因となる。一例として、大容量・低速の主記憶プログラムメモリ8−3は1ワードのアクセスに5クロックサイクルを要し、小容量・高速の命令キャッシュ8−2は1ワードのアクセスに1クロックサイクルを要し、キャッシュブロックサイズを4ワードとした場合、予め取込んだ命令データがミスヒットであるとき、リプレースに5×4=20クロックサイクルの停止時間が発生する。
図9に命令キャッシュヒット時とミスヒット時の動作のタイミングチャートを示す。命令キャッシュに取り込んだ命令データがヒットしている場合は、図9の(a)に示すように、パイプライン処理の命令データがスムーズに流れ、1クロックサイクルで1命令が実行され、マイクロプロセッサは性能を最大限に発揮することができる。
しかし、命令キャッシュに取り込んだ命令データがミスヒットした場合、図9の(b)に示すように、主記憶プログラムメモリ8−3からブロックサイズ(4ワード)分の命令を命令キャッシュ8−2に転送するのに5×4=20クロックサイクル必要とし、この転送が完了するまでの間、パイプライン処理による命令の実行は停止(ストール)するため、マイクロプロセッサの性能を著しく低下させてしまう。即ち、1クロックサイクルで実行される命令が20クロックサイクルを必要とすることになり、20倍の性能劣化となる。
また、下記の特許文献1に記載の命令キャッシュのリプレース装置などのように、キャッシュブロックサイズと同容量のFIFOを搭載し、FIFOに命令データを先読みして格納しておき、FIFOから命令キャッシュに命令データを送る構成では、ミスヒット時の処理負担を削減することができるが、命令キャッシュのミスヒットを避けることはできない。
また、下記の特許文献2のキャッシュメモリシステム、特許文献3の先行制御方式、特許文献4の情報処理装置、特許文献5の命令バッファシステムなどは、ミスヒット時の処理負担を削減し、ミスヒットの発生を低下させることはできるが、ミスヒットの確率をゼロにすることはできず、従って安定した動作性能を保証することはできない。
近年、種々の車載用センサ等にマイクロプロセッサが使用され、特に安全性の維持向上に係るデータ処理システム等に用いられるマイクロプロセッサでは、性能の低下が重大な事故や人命の損傷に繋がることもあり、安定した確実な動作性能が保証されるマイクロプロセッサが要求されている。
上述のキャッシュシステムに関する特許文献は下記のとおりである。
特開平7−105098号公報 特開平11−143775号公報 特開平3−137729号公報 特開平4−90027号公報 特開平1−205228号公報
上述したように、中央処理装置(CPU)への命令データの転送時間は、マイクロプロセッサの処理効率に大きく影響し、また、予め命令キャッシュに取り込む命令データのミスヒットの発生により、命令データのリプレースのために中央処理装置(CPU)の処理が停止し、これによりマイクロプロセッサの処理性能の低下を招く。
本発明は、中央処理装置(CPU)への命令データの転送時間を短縮すると共に、小容量の命令キャッシュを用いて、命令キャッシュに取り込む命令データのミスヒットを無くし、マイクロプロセッサの性能向上を図ることを目的とする。また、命令の実行(プログラムの処理)の時間に揺らぎがあり、次の命令データの転送が完了する前に、現在実行中のプログラム処理が終了してしまう場合があるが、次の命令データが命令キャッシュに完全に取り込まれた後、直ちに命令フェッチを行うことを可能とし、命令データの転送時間を短縮すると共に、命令フェッチのミスヒットを無くし、マイクロプロセッサの性能向上を図ることを目的とする。
本発明の命令キャッシュシステムは、(1)中央処理装置(CPU)が実行するプログラムの命令データを、予め主記憶プログラムメモリから命令キャッシュに取り込み、該命令キャッシュから命令データを中央処理装置(CPU)に転送する命令キャッシュシステムにおいて、前記命令キャッシュを2面構成とし、一方の面の命令キャッシュから中央処理装置(CPU)が命令データをフェッチして実行する動作と並行して、他方の面の命令キャッシュへ次のプログラムの命令データを前記主記憶プログラムメモリから転送し、前記一方の面の命令キャッシュからフェッチした命令データの実行が終了した後に、前記一方の面の命令キャッシュと前記他方の面の命令キャッシュの接続を切り替え、前記他方の面の命令キャッシュから中央処理装置(CPU)が命令データをフェッチして実行する動作と並行して、前記一方の面の命令キャッシュへ次のプログラムの命令データを前記主記憶プログラムメモリから転送する動作を、前記命令キャッシュの一方及び他方の面を交互に切り替えながら繰り返す手段を備え、前記プログラムを前記命令キャッシュの1つの面の容量以内に収まるプログラム片に分割し、かつ、各プログラム片内においてプログラムの実行が他のプログラム片に跨ることなく完結するプログラム構造とし、該プログラム片を単位として前記命令キャッシュに転送することを特徴とするものである。
また、(2)前記次のプログラムの命令データを前記主記憶プログラムメモリから命令キャッシュへ転送し終えたことを示す転送完了フラグを設定する手段を備え、該転送完了フラグを監視して次のプログラムの命令データが命令キャッシュへ転送し終えた後に、前記命令キャッシュの一方の面と他方の面の接続の切り替えを行うことを特徴とするものである。
また、(3)前記中央処理装置(CPU)を含むマイクロプロセッサのリセット直後の初期化ルーチンプログラム実行中に、前記命令キャッシュの一方の面にメインプログラムの先頭アドレスのプログラム片を転送しておき、該初期化ルーチンプログラムからメインプログラムに処理が移行した際に、命令キャッシュからメインプログラムの先頭アドレスのプログラム片をフェッチして実行することを特徴とするものである。
本発明によれば、命令キャッシュとして、中央処理装置(CPU)が命令データを命令キャッシュからフェッチする面と、主記憶プログラムメモリから命令キャッシュへ命令データを転送する面とを備え、中央処理装置(CPU)の命令データのフェッチと次のプログラムの命令データの命令キャッシュへの転送を並列に行い、かつ、プログラムを命令キャッシュの1面の容量に収まるプログラム片に分割し、該プログラム片の中で分岐処理等の実行が他のプログラム片に跨ることなく完結するプログラム構造とすることにより、膨大なプログラムを小容量の命令キャッシュにより、命令データの転送時間を削減するとともに、フェッチした命令データのヒット率を100%にすることができ、マイクロプロセッサの安定した動作性能を保証することができ、性能を向上させることができる。
例えば、512KBのプログラムを実行する場合に、本発明によれば、該プログラムを例えば4KBのプログラム片に分割し、4KBの命令キャッシュを2個搭載するだけで、キャッシュした命令データのヒット率100%を実現することができ、高い動作性能を保証することができる。
また、主記憶プログラムメモリから命令キャッシュへの命令データの転送完了を示すフラグを監視し、該フラグがセットされてから命令キャッシュの面切り替えを行うことにより、次のプログラム片の命令データの転送完了する前に、現行のプログラム片の実行が終了した場合でも、命令データの転送途中に面切り替えが行われることなく、面切り替え後にフェッチする命令データは必ずヒットし、マイクロプロセッサの性能を向上させることができる。
また、初期化ルーチンプログラムを実行中にメインプログラムの最初のプログラム片を命令キャッシュに転送しておくことにより、メインプログラムの開始時における命令データの転送時間を短縮すると共に、命令データのミスフェッチを無くすことができ、マイクロプロセッサの性能を向上させることができる。
図1に本発明の命令キャッシュシステムの構成を示す。同図において、1−1は中央処理装置(CPU)、1−2は2面構成の命令キャッシュ、1−3,1−4は命令キャッシュの面切り替えを行うスイッチ(選択回路)、1−5は面切り替えを制御するACTレジスタ、1−6は主記憶プログラムメモリ、1−7は主記憶プログラムメモリ1−6から命令キャッシュ1−2へ転送する命令データのアドレスを管理するアドレス管理部である。
命令キャッシュ1−2は、スイッチ1−3の選択によって中央処理装置(CPU)1−1側に接続されるアクティブ面と、スイッチ1−4の選択によって主記憶プログラムメモリ1−6に接続されるスタンバイ面とから成る。命令キャッシュ1−2のアクティブ面及びスタンバイ面はそれぞれnKBの容量(nは0より大きい数値)であるとする。
主記憶プログラムメモリ1−6には、1回のフェッチにより取り込まれる命令のプログラムコード量が、命令キャッシュ1−2の1面(アクティブ面又はスタンバイ面)の容量であるnKBに収まるようにプログラムを分割して格納しておく。この分割したプログラムの単位をプログラム片と称することとする。
上記の各プログラム片は、分岐処理やジャンプ処理が他のプログラム片に跨ることなく、当該プログラム片内で完結するように元のプログラムに改変を行っておく。このプログラムの改変の具体例を図7に示す。図7はif文による分岐処理を1つのプログラム片内で完結させる場合の例である。
図7の(a)はプログラム分割前の元のプログラムの例を示し、コード量は3nKBであるとする。該プログラムは、先頭のif文判定が真のときは(1)〜(6)の処理を行い、先頭のif文判定が偽のときは(1)’〜(6)’の処理を実行するプログラムである。このようなプログラムに対して、本発明では図7の(b)に示すように、コード量が命令キャッシュ容量nKB以内に収まるように、if文の構文を3つのプログラム片7−1,7−2,7−3に3分割する。
そして、各プログラム片7−1,7−2,7−3は、自プログラム片内でif文の分岐処理が完結するよう元のプログラムを改変し、プログラム片7−1は(1)〜(2),(1)’〜(2)’の処理を行い、プログラム片7−2は(3)〜(4),(3)’〜(4)’の処理を行い、プログラム片7−3は(5)〜(6),(5)’〜(6)’の処理を行うよう、プログラムの構成を変更する。
なお、各プログラム片7−1,7−2,7−3の最後に、命令キャッシュの各面が交互にアクティブ面となるようにACTレジスタ1−5を設定するためのact変数の代入処理(7)、(8)、(9)を追加する。なお、ここでは説明を簡明にするため、if文による分岐判定の追加やact変数の代入処理のコード量は無視し、各プログラム片のコード量がnKBとなるように分割した例を示している。
図2に本発明による命令キャッシュシステムの動作シーケンスを示す。同図において、中央処理装置(CPU)1−1は、今、命令キャッシュ1−2のアクティブ面(A面)からプログラム片(1)をフェッチし、該プログラム片(1)の命令データをデコードして処理を実行しているが、この動作と並行して、次ぎに実行されるべきプログラム片(2)を、主記憶プログラムメモリ1−6から命令キャッシュ1−2のスタンバイ面(B面)に取り込む。
つまり、中央処理装置(CPU)1−1が命令キャッシュ1−2のアクティブ面(A面)から命令データをフェッチし、プログラム(1)を実行している間に、プログラム(1)の最終アドレス(X)の次アドレス(X+4)から始まるプログラム(2)の命令群を主記憶プログラムメモリ1−6から命令キャッシュ1−2のスタンバイ面(B面)に転送する。なお、この動作例ではマイクロプロセッサは32ビットCPUを用いている例を示している。そのため、各アドレスに1バイト(8ビット)のデータを記憶する主記憶メモリ1−6から命令データをフェッチ際のアドレスは+4ずつインクリメントされる。
中央処理装置(CPU)1−1はプログラム(1)の処理の最後に「act=1;」というコードを実行し、ACTレジスタ1−5に‘1’を書き込む。ACTレジスタ1−5に‘1’が書き込まれると、スイッチ1−3及びスイッチ1−4は、図1に示す接続状態と反対側の接続状態に切り替えられ、命令キャッシュ1−2のアクティブ面とスタンバイ面とが切り替わる。
命令キャッシュ1−2の面切り替えの後、中央処理装置(CPU)1−1はプログラム(2)の処理を実行し、それと並行して命令キャッシュのスタンバイ面(A面)に次に実行すべきプログラム(3)の命令群を主記憶プログラムメモリ1−6から転送する。以下、同様にして順々に後続のプログラムの処理を実行していく。
従って、プログラム(1)が中央処理装置(CPU)1−1で実行されている間に、プログラム(2)が命令キャッシュ1−2のスタンバイ面に転送され、プログラム(1)の実行が終わり、次のプログラム(2)を開始しようとするときに、命令キャッシュ1−2の面切り替えが行われ、命令キャッシュ1−2のアクティブ面にはプログラム(2)の命令が既に格納されていることになり、命令キャッシュ1−2への命令データの転送時間を削減することができる。
また、プログラムを命令キャッシュ1−2の1面(アクティブ面又はスタンバイ面)の容量(nKB)以内に収まるように分割し、かつ、その分割したプログラム片の中で分岐処理が完結し、命令フェッチの順に従って次々にプログラムを実行すればよいようにプログラムを編成することにより、面切り替え間で実行される各プログラム片は、実行すべき命令データが必ず当該プログラム片内に存在することになり、全体として膨大な処理プログラム(m×nKB mは相当大きな数)でも、小容量の命令キャッシュ(2×nKB)を用いてフェッチ命令のヒット率100%を達成することができる。
次に転送完了フラグを設けた本発明の実施形態について説明する。図3は該実施形態の構成を示す。この実施形態は、図1の構成に更に主記憶プログラムメモリ1−6から命令キャッシュ1−2への命令データの転送完了を示す転送完了フラグを格納する転送完了フラグ部3−1を備えたものである。
図4にこの実施形態の動作シーケンスを示す。同図において、図2のシーケンスと同様に、中央処理装置(CPU)1−1は、命令キャッシュ1−2のアクティブ面(A面)からプログラム片(1)をフェッチし、該プログラム片(1)の命令データをデコードして処理を実行し、この動作と並行して、次ぎに実行されるべきプログラム片(2)を、主記憶プログラムメモリ1−6から命令キャッシュ1−2のスタンバイ面(B面)に取り込む。
該プログラム片(2)のスタンバイ面(B面)への転送完了は、プログラム(1)上で監視する。この動作例では、プログラム(1)内のWhileLoop文「while(!flag){}」により、転送完了フラグ部3−1に転送完了を示すフラグがセットされるまで、面切り替えを待機(Wait)させる。
上述のプログラム片(2)のスタンバイ面(B面)への転送が完了し、転送完了を示すフラグがセットされると、プログラム(1)はwhileLoop文を抜け出し、次行の「flag=0;」のコードにより転送完了フラグをクリアし、次行の「act=1;」のコードにより面切り替えを行う。以降の動作シーケンスは、図2に示した動作シーケンスと同様であるので重複した説明は省略する。
各プログラム片はそれぞれ分岐処理等の有無により処理の実行時間に揺らぎがあり、次のプログラム片(2)の転送が完了するまでに、現在実行中のプログラム(1)の処理が終了してしまう場合があるが、そのような場合でも、転送完了フラグを監視して面切り替えを行うことにより、プログラム片の転送途中に面切り替えが行われてしまうようなることはなく、スタンバイ面に命令データが完全に転送された後に面切り替えが行われるため、面切り替え後のフェッチ命令データは必ずヒットすることになる。
次に初期化ルーチンプログラム実行中にスタンバイ面に命令データを転送する実施形態について説明する。図5にこの実施形態の構成を示す。この実施形態は、ブート用リードオンリメモリ(ROM)5−1に初期化ルーチンプログラムを格納し、マイクロプロセッサのリセット後に初期化ルーチン(スタートアップルーチン)が実行されている間に、主記憶プログラムメモリ1−6に記憶されたメインプログラムの先頭プログラムのプログラム片(1)を命令キャッシュ1−2のスタンバイ面(A面)へ転送する。
図6にこの実施形態の動作シーケンスを示す。同図に示すように、初期化ルーチンプログラムの最後にWhileLoop文「while(!flag){}」のコードを記述し、該コードにより前述の図4の動作シーケンスと同様に、プログラム片(1)の転送が完了したかどうかを、転送完了フラグ部3−1にセットされるフラグにより監視し、転送完了を示すフラグがセットされると、whileLoop文を抜け出し、次行の「flag=0;」のコードにより転送完了フラグをクリアし、次行の「act=1;」のコードにより面切り替えを行う。以降の動作シーケンスは、図4に示した動作シーケンスと同様であるので重複した説明は省略する。
このように初期化ルーチンの実行中にスタンバイ面に命令データを転送することにより、マイクロプロセッサのリセット後、初期化プログラムを実行し終え、メインプログラムに制御を渡した場合に、命令キャッシュ1−2のアクティブ面には既に実行すべきプログラム(1)の命令が格納されており、命令データの転送時間が短縮されると共に、スタンバイ面に命令データが完全に転送された後に面切り替えが行われるため、面切り替え後のフェッチ命令データは必ずヒットすることになる。
本発明の命令キャッシュシステムの構成を示す図である。 本発明の命令キャッシュシステムの動作シーケンスを示す図である。 本発明の転送完了フラグを設けた実施形態の構成を示す図である。 本発明の転送完了フラグを設けた実施形態の動作シーケンスを示す図である。 本発明の初期化ルーチンプログラム実行中にスタンバイ面に命令データを転送する実施形態の構成を示す図である。 本発明の初期化ルーチンプログラム実行中にスタンバイ面に命令データを転送する実施形態の動作シーケンスを示す図である。 プログラムを各プログラム片内で実行が完結するように改変した具体例を示す図である。 従来の命令キャッシュシステムの構成を示す図である。 命令キャッシュヒット時とミスヒット時の動作のタイミングチャートを示す図である。
符号の説明
1−1 中央処理装置(CPU)
1−2 2面構成の命令キャッシュ
1−3,1−4 命令キャッシュの面切り替えを行うスイッチ(選択回路)
1−5 面切り替えを制御するACTレジスタ
1−6 主記憶プログラムメモリ
1−7 転送する命令データのアドレスを管理するアドレス管理部

Claims (2)

  1. 中央処理装置が実行するプログラムの命令データを、予め主記憶プログラムメモリから命令キャッシュに取り込み、該命令キャッシュから命令データを中央処理装置に転送する命令キャッシュシステムにおいて、
    前記命令キャッシュを2面構成とし、一方の面の命令キャッシュから中央処理装置が命令データをフェッチして実行する動作と並行して、他方の面の命令キャッシュへ次のプログラムの命令データを前記主記憶プログラムメモリから転送し、前記一方の面の命令キャッシュからフェッチした命令データの実行が終了した後に、前記一方の面の命令キャッシュと前記他方の面の命令キャッシュの接続を切り替え、前記他方の面の命令キャッシュから中央処理装置が命令データをフェッチして実行する動作と並行して、前記一方の面の命令キャッシュへ次のプログラムの命令データを前記主記憶プログラムメモリから転送する動作を、前記命令キャッシュの一方及び他方の面を交互に切り替えながら繰り返す手段と、
    前記次のプログラムの命令データを前記主記憶プログラムメモリから命令キャッシュへ転送し終えたことを示す転送完了フラグを設定する手段とを備え、
    該転送完了フラグを監視して次のプログラムの命令データを命令キャッシュへ転送し終えた後に、前記命令キャッシュの一方の面と他方の面の接続の切り替えを行い、
    前記プログラムを前記命令キャッシュの1つの面の容量以内に収まるプログラム片に分割し、かつ、各プログラム片内においてプログラムの実行が他のプログラム片に跨ることなく完結するプログラム構造とし、該プログラム片を単位として前記命令キャッシュに転送することを特徴とする命令キャッシュシステム。
  2. 前記中央処理装置を含むマイクロプロセッサのリセット直後の初期化ルーチンプログラム実行中に、前記命令キャッシュの一方の面にメインプログラムの先頭アドレスのプログラム片を転送しておき、該初期化ルーチンプログラムからメインプログラムに処理が移行した際に、命令キャッシュからメインプログラムの先頭アドレスのプログラム片をフェッチして実行することを特徴とする請求項1に記載の命令キャッシュシステム。
JP2004075648A 2004-03-17 2004-03-17 命令キャッシュシステム Expired - Fee Related JP4413663B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004075648A JP4413663B2 (ja) 2004-03-17 2004-03-17 命令キャッシュシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004075648A JP4413663B2 (ja) 2004-03-17 2004-03-17 命令キャッシュシステム

Publications (2)

Publication Number Publication Date
JP2005266997A JP2005266997A (ja) 2005-09-29
JP4413663B2 true JP4413663B2 (ja) 2010-02-10

Family

ID=35091510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004075648A Expired - Fee Related JP4413663B2 (ja) 2004-03-17 2004-03-17 命令キャッシュシステム

Country Status (1)

Country Link
JP (1) JP4413663B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5244421B2 (ja) * 2008-02-29 2013-07-24 株式会社ソニー・コンピュータエンタテインメント 情報処理装置およびプログラム分割方法
JP2010033420A (ja) * 2008-07-30 2010-02-12 Oki Semiconductor Co Ltd キャッシュ回路及びキャッシュメモリ制御方法
JP5808450B1 (ja) 2014-04-04 2015-11-10 ファナック株式会社 マルチコアプロセッサを使用して逐次プログラムを実行する制御装置
JP7436192B2 (ja) 2019-12-05 2024-02-21 ファナック株式会社 制御装置及び産業機械

Also Published As

Publication number Publication date
JP2005266997A (ja) 2005-09-29

Similar Documents

Publication Publication Date Title
US10649783B2 (en) Multicore system for fusing instructions queued during a dynamically adjustable time window
US5941981A (en) System for using a data history table to select among multiple data prefetch algorithms
US5727227A (en) Interrupt coprocessor configured to process interrupts in a computer system
JP3549079B2 (ja) キャッシュ制御の命令プリフェッチ方法
US20140095847A1 (en) Instruction and highly efficient micro-architecture to enable instant context switch for user-level threading
US20230078414A1 (en) Servicing cpu demand requests with inflight prefetches
JPS6356731A (ja) デ−タ処理装置
JP5159258B2 (ja) 演算処理装置
JP3683248B2 (ja) 情報処理装置及び情報処理方法
JP4413663B2 (ja) 命令キャッシュシステム
CN110806900B (zh) 一种访存指令处理方法及处理器
KR19990003937A (ko) 프리페치 장치
CN112395000B (zh) 一种数据预加载方法和指令处理装置
CN114661358A (zh) 基于分支指令信息来访问分支目标缓冲器
CN114661360A (zh) 基于分支指令类型的分段分支目标缓冲器
JP6016689B2 (ja) 半導体装置
JP5116275B2 (ja) 演算処理装置、情報処理装置及び演算処理装置の制御方法
JP2008257508A (ja) キャッシュ制御方法およびキャッシュ装置並びにマイクロコンピュータ
JP2008015668A (ja) タスク管理装置
JPH09190348A (ja) 命令プリフェッチバッファ制御方法、命令プリフェッチバッファ制御装置、及び命令プリフェッチバッファフラッシュ方法
JP3493122B2 (ja) マイクロプロセッサ及び命令キャッシュ制御回路
CN113568663A (zh) 代码预取指令
KR20130004712A (ko) 중앙 처리 유닛 코어 처리 속도 향상 시스템
WO2008038373A1 (fr) Processeur pour augmenter la vitesse de prédiction de branchement
JPH0540624A (ja) 集積回路マイクロプロセツサの命令フエツチ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091007

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: 20091110

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: 20091118

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

Free format text: PAYMENT UNTIL: 20121127

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4413663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121127

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131127

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees