JP2000231549A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JP2000231549A JP2000231549A JP2000029153A JP2000029153A JP2000231549A JP 2000231549 A JP2000231549 A JP 2000231549A JP 2000029153 A JP2000029153 A JP 2000029153A JP 2000029153 A JP2000029153 A JP 2000029153A JP 2000231549 A JP2000231549 A JP 2000231549A
- Authority
- JP
- Japan
- Prior art keywords
- ram
- flag information
- microprocessor
- memory
- access
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Microcomputers (AREA)
- Bus Control (AREA)
Abstract
AMを内蔵して、このRAMに簡易かつ高速にアクセス
できるようにしたマイクロプロセッサの提供。 【解決手段】 本発明に係るマイクロプロセッサは、仮
想アドレスから物理アドレスへの変換を行うMMU3
と、ロード/ストア命令の実行を制御するLSU4とを
備える。LSU4は、外部メモリに対する読み出し/書
き込みデータを一時的に格納するDCACHE41と、キャッ
シュ以外の特殊な用途に使用されるSPRAM42と、DCACH
EやSPRAMをアクセスするための仮想アドレスを生成する
アドレス生成器43とを有する。MMU3は、仮想/物
理アドレス変換を行う変換テーブルを生成する。この変
換テーブル内には、SPRAMへのアクセスを行うか否かを
示すフラグ情報が含まれている。LSUは、このフラグ
がセットされていれば、無条件にSPRAMにアクセスに行
くため、SPRAMを主記憶メモリのメモリマップに割り当
てる必要がなくなる。
Description
高速にデータの読み書きが可能なRAMを内蔵するマイ
クロプロセッサの内部構成に関する。
として従来知られているものは、メモリとI/Oデバイ
スである。メモリは、ほとんどのプロセッサに接続され
るため、プロセッサのメモリマップに直接割り当てられ
ることが多い。一方、I/Oデバイスは、メモリに比べ
ると、必要とするアドレス範囲が狭いため、以下の二つ
の方法のいずれかで管理するのが一般的である。
当て、専用の命令でそのメモリ空間にアクセスする。例
えば、Intel社のx86プロセッサは、メモリとは別個
のI/O空間を持っており、in/out命令で明示的にその
空間へのアクセスを行う。
デバイスを割り当てる。例えば、MIPSアーキテクチャに
基づくプロセッサは、通常のメモリ操作と同様の命令で
I/Oデバイスをアクセスする。
のうち、(2)の方式を採用する例が多い。その理由
は、通常のメモリアクセスと全く同じ命令が使えるの
で、命令セットが単純になり、プログラミングもしやす
いためである。しかし、I/Oデバイスにアクセスする
際は、キャッシュメモリの使用を禁止する、読み書
きの順序を保証する等の必要があり、ソフトウェアもし
くはハードウェアでこれに配慮しなくてはならない。
対する読み書きの順序は保証されるが、一つのI/Oの
複数のレジスタが複数のアドレスに割り当てられている
場合などでは、読み書きの順序が保証されないおそれが
ある。
-order 実行を行うプロセッサは、特別に扱う必要があ
る。
積化やDRAM混載技術などの進展に伴い、キャッシュ
メモリ以外のメモリをプロセッサと同じチップ内に収容
できるようになり、この種のメモリを主記憶メモリやキ
ャッシュメモリと違う目的で使用することも可能になっ
た。
のメモリを主記憶メモリと同じようにマッピングする
と、その領域は、外部の主記憶メモリやI/Oに割り当
てることができないため、メモリマップ割り当ての制限
になる。
は、キャッシュメモリにキャッシュされたデータと同様
に高速に利用できるため、外部メモリのアクセスと同様
にキャッシュしてしまうのは無駄であるばかりでなく、
リフィルの際に外部メモリをキャッシュしているものを
追い出す可能性があり、さらにこの種のメモリとキャッ
シュとの間にリフィルのためのデータパスを付加する必
要がある。
モリの高速性を生かして、かつ、キャッシュの高速性を
生かすためには、メモリ参照の際に、この種のメモリに
アクセスしようとしているのか、あるいは、キャッシュ
メモリにアクセスしようとしているのかを自動判別しな
ければならない。
されたものであり、その目的は、キャッシュメモリ以外
の目的で利用可能なRAMを内蔵して、このRAMに簡
易かつ高速にアクセスできるようにしたマイクロプロセ
ッサを提供することにある。
め、仮想アドレスを物理アドレスに変換するメモリ管理
ユニットと、ロード/ストア命令を実行するロード/ス
トア命令実行部と、を備えたマイクロプロセッサは、前
記ロード/ストア命令実行部によるデータの読み書きが
可能で、かつ、外部メモリとの間でデータをDMA(Dir
ect Memory Access)転送可能なRAMを備え、前記メモ
リ管理ユニットは、前記RAMに対するアクセスを行う
か否かを示す第1のフラグ情報を生成するフラグ情報生
成部を有する。
セスを行うか否かを、第1のフラグ情報にて設定できる
ようにしたため、RAMに対するアクセス制御をプログ
ラマブルに切り替えることができる。
基づいてRAMにアクセスする場合は物理アドレスへの
変換を行わないようにしたため、高速アクセスが可能に
なる。
基づいてRAMにアクセスする場合はキャッシュ・ヒッ
ト/ミス結果とは独立にRAMへのアクセスを開始する
ようにしたため、キャッシュ・ヒット/ミス結果が得ら
れない間にRAMへのアクセスを開始できる。
記録された変換テーブルを設けるため、各アドレス単位
でRAMに対するアクセスを行うか否かを設定できる。
セスを行うか否かを示す第2のフラグ情報を設けるた
め、I/O領域へのアクセスを許容するか否かをプログ
ラマブルに設定変更できる。
基づいてI/O領域にアクセスする場合はキャッシュ・
ヒット/ミス結果を無視するようにしたため、キャッシ
ュ・ヒット/ミス結果が得られない間にI/O領域への
アクセスを開始できる。
基づいてI/O領域にアクセスを行う場合であって、ロ
ード/ストア命令実行部がRAMもしくはI/O領域に
対する有効なロード/ストア命令を保持しており、か
つ、ストアバッファ中にまだRAMもしくはI/O領域
に書き込まれていないデータが存在する場合には、スト
アバッファ中のデータがRAMもしくはI/O領域に書
き込まれるまで、次のI/O領域へのアクセスを開始し
ないようにしたため、I/O領域への読み書きの順序を
ソフトウェアと完全に一致させることができる。
記録された変換テーブルを設けるため、各アドレス単位
でI/O領域に対するアクセスを行うか否かを設定でき
る。
セッサについて、図面を参照しながら具体的に説明す
る。
イクロプロセッサの一実施形態の内部構成を示すブロッ
ク図である。図1のマイクロプロセッサは、外部バスB
1に接続されたバス・インタフェース・ユニット(Bus I
nterface Unit)1と、プロセッサが実行する命令のフェ
ッチ(取り込み)を行うIFU(Instruction Fetch Uni
t)2と、仮想アドレスから物理アドレスへの変換を行う
MMU(Memory Management Unit)3と、ロード/ストア
に関連する命令を実行するLSU(Load Store Unit)4
と、ロード/ストア以外の命令を実行する複数の実行ユ
ニット5a,5b,5cと、浮動小数点演算を行うFP
U(Floating Point Unit)6a,6bと、プロセッサ各
部の制御を行う制御論理部(Control Logic)7とを備え
る。
記憶するBTACを参照しつつPC(Program Counter)を生
成するPC PIPE21と、命令を一時的に格納するICACHE
(Instruction Cache Memory)22と、命令の種類を判別
してその命令を実行する実行ユニットを選択する命令発
行&ステージング部(Instruction issue & Staging blo
ck)23とを有する。
スへの変換を行う3つのTLB(Translation Lookaside
Buffer)を有する。OS(Operating System)が有するペ
ージ・テーブルの一部のうち、物理ページ番号や保護情
報など、プロセッサが必要とするアドレス変換情報がT
LBに書き込まれており、これに基づいてMMU3は物
理アドレスへの変換を行う。
Translation Lookaside Buffer)31と、ITLB(Instruc
tion Translation Lookaside Buffer)32と、DTLB33
(Data Translation Lookaside Buffer)33である。
TLBと呼ばれる。ITLB32は命令の仮想アドレスのデ
ータパス(Datapath)に直接接続される専用のTLBであ
り、DTLB33はデータの仮想アドレスのデータパスに直
列接続される専用のTLBである。これらTLBは、少
数ではあるが、高速にアドレス変換を行う。JTLB31
は、命令/データの別に関係なく、ページをマッピング
する。
アによって制御される。プロセッサは、JTLB31に変換
テーブル100が存在しない場合に例外を起こし、例外
ハンドラのプログラムがOSのページテーブルから該当
するページを探し出し、JTLB31に変換テーブル100
の情報を書き込む。
/書き込みデータを一時的に格納するDCACHE(Data Cach
e Memory)41と、キャッシュ以外の特殊な用途に使用
されるSPRAM(Scratch Pad RAM)42と、DCACHE41やSP
RAM42をアクセスするための仮想アドレスを生成する
アドレス生成器(Virtual Address Computation)43と
を有する。
行い、その内部には制御レジスタ(Control Register)7
1が設けられている。
簡単に説明する。まず、PC PIPE21で生成されたPC
(Program Counter)に基づいて、IFU2は命令のフェ
ッチを行う。なお、PCは仮想アドレスである。
アドレスに変換する。物理アドレスは、ICACHE22内の
ITAGにおける検索に利用され、PCの指し示す命令がIC
ACHE22内に存在するか否かを調べる。PCの指し示す
命令がICACHE22内に存在しない場合(キャッシュ・ミ
スのとき)には、物理アドレスによって不図示の外部メ
モリへのアクセスを行う。
HE22を制御するIFU2の制御論理部からBIU1の
制御論理部に対して、キャッシュミスが起きたことを示
す情報と、アクセスを行うべき物理アドレス情報とが渡
される。BIU1は、これらの情報に基づいて外部メモ
リをアクセスし、アクセスが終了すると、データとキャ
ッシュ・ラインの取得が終わった旨の信号とをIFU2
に供給する。IFU2は、アクセスしたデータをICACHE
22に書き込む。同時に、リフィルされたキャッシュラ
インのうち、PCの指し示す命令と、場合によっては、
PCの指し示す命令の後に続くいくつかの命令を、命令
発行&ステージング部23に供給する。
に存在する場合には、該当するICACHE22内の命令と、
場合によってはPCの指し示す命令の後に続くいくつか
の命令が命令発行&ステージング部23に供給される。
種類を判別し、命令を実際に実行する実行ユニット(例
えば、LSU4や他の実行ユニット)を決定する。この
際、命令発行&ステージング部23は、各実行ユニット
の空き具合を鑑みて動的に判断する。
命令の場合には、処理できる実行ユニットはLSU4だ
けなので、LSU4に命令を供給できる状態になると、
命令発行&ステージング部23はLSU4に命令を送
る。
を行う場合の動作を説明する。図2は、図1のLSU4
内部の一部構成を図示したものであり、SPRAM42に関
係する部分を制御系(Control)8とデータパス(Datapat
h)に分けて図示している。
データパスに与える制御信号を生成する。データパス
は、制御系8からの制御信号に基づいてデータを流して
いく。これが命令の実行に相当する。
つないでいる各線は制御信号を示している。通常、制御
信号は制御系8からデータパスに供給される。なお、図
2では省略しているが、データパスから制御系8に供給
される制御信号も存在する。例えば、ICACHE22がミス
してパイプライン処理を止める場合には、データパスの
一部であるICACHE22のTAGからミス信号が制御系8
に供給されてパイプライン処理を停止させる。
たブロックは、パイプライン処理を行う際にステージを
区切るためのレジスタ構造を示している。これらブロッ
クは、回路的には、フリップフロップやラッチで構成さ
れ、クロックに同期して、読み出しや書き込みを行う。
以下では、これらブロックを総称してパイプラインレジ
スタと呼ぶ。
ontrol)の制御を受けて、フェッチされた命令をパイプ
ラインレジスタ10aに格納する。命令はパイプライン
レジスタ10aから命令デコーダ(Instruction Decode
r)82に送られる。命令デコーダ82では、命令の識別
や命令の処理に必要な中間的な制御信号を生成する。中
間的な制御信号を生成する理由は、命令デコーダ82で
プロセッサのすべての制御信号を生成するのは量的およ
び速度的に不可能なためであり、命令デコーダ82は、
命令よりも演算器の制御信号に近く、かつ、演算器の制
御信号そのものよりも抽象的な信号を生成する。
であることが命令デコーダ82で分かった場合には、制
御信号群が、関係する制御論理部に送られる。具体的に
は、制御信号群は、図2中のパイプライン制御論理部(P
ipeline Control)83、GPR制御論理部(General Pur
pose Register Control)84、およびLSU制御論理部
(LSU Control)85に送られる。
論理部85では、データの流れのステージに同期する形
で命令や制御信号が流れていく。このため、制御系8と
データパスの双方にパイプラインレジスタ10a〜10
jが設けられている。
インレジスタ10の中身の状況に応じて、パイプライン
の進行の制御を行う。例えば、演算器上でリソースハザ
ードが生じた場合には、パイプラインを停止するなどの
処理を行う。
命令を実行するのに必要な制御信号を生成する。すなわ
ち、GPR制御論理部84の制御によりレジスタファイ
ル11からパイプラインレジスタ10に送られたデータ
は、アドレス生成器43に送られてアドレスが生成され
る。アドレス生成器43はアダー(Adder)制御論理部8
6により制御され、アドレス生成器43により生成され
たアドレスは、次段のパイプラインレジスタ10に送ら
れる。
は、パイプライン制御論理部83とLSU制御論理部8
5からの信号を受けて、SPRAM42へのアクセスを行
う。その際、パイプラインレジスタ10中のアドレスを
使用する。このアドレスがロード命令であるときは、リ
ード・イネーブル信号を有効にし、ライト・イネーブル
信号を無効にする。そして、SPRAM42からデータを読
み出し、パイプラインレジスタ10に格納する。格納さ
れたデータは、次のステージでレジスタファイル11に
書き戻される。
レスがストア命令であるときは、リード・イネーブル信
号を無効にし、ライト・イネーブル信号を有効にする。
そして、レジスタファイル11からステージされてきた
データをSPRAM42に書き込む。
ry Access)コントローラ9は、図示のように、外部バス
を介してプロセッサ内部のBIU制御論理部(BIU Contr
ol)88に接続されている。DMAコントローラ9がB
IU制御論理部88に制御信号を送ってDMA処理を開
始すると、BIU制御論理部88はSPR制御論理部8
7に信号を送ってSPRAM42をリード/ライトさせる。
すなわち、SPR制御論理部87は、BIU制御論理部
88を介して間接的にDMAコントローラ9とも接続さ
れている。
4とBIU12(BIU12からのアクセス要求は元は
DMAコントローラ9からのものである)の双方から同
時に発せられた場合は、SPR制御論理部87が両者を
調停してイネーブル信号群を決定し、アドレス入力とデ
ータ入力のセレクタを切り替える。
M42に対するアクセス要求の優先順位をプログラマブ
ルに制御するには、SPR制御論理部87に図2に点線
で示す制御レジスタ71を接続し、この制御レジスタ7
1の値を優先順位に応じてプログラマブルに変化させれ
ばよい。
像データ等の大量のデータをプロセッサで加工処理する
際に、一時的なメモ・パッド領域として用いるのに適し
ている。
である。上述したように、MMU3の内部には3つのT
LBが設けられるが、このうち、JTLB31が本来のTL
Bである。JTLB31は例えば48個のエントリーを有
し、ページ単位で仮想アドレスをマッピングし、物理ア
ドレスへの変換テーブル100を生成する。
0は、必要に応じて、ITLB32とDTLB33にコピーされ
る。このように、TLBを3つに分けた理由は、JTLB3
1はエントリー数が多いため、JTLB31でアドレスの変
換を行うと、変換処理に時間がかかることから、必要な
分だけITLB32やDTLB33にコピーして高速に変換処理
を行うようにしている。
模式的に示した図である。変換テーブル100は、仮想
アドレスのページ番号と、仮想アドレスに対応する物理
アドレスと、フラグ情報とを対応づけたものである。
示すCフラグと、メモリへの書き込みが可能か否かを示
すDフラグと、変換エントリーが有効か無効かを示すV
フラグと、SPRAM42へのアクセスを行うか否かを示す
Sフラグ(第1のフラグ情報)とを有する。
条件にSPRAM42にアクセスに行く。具体的には、仮想
アドレスの下位側のオフセットアドレスを用いてSPRAM
42にアクセスする。これにより、SPRAM42を物理メ
モリのメモリマップに割り当てなくて済み、メモリマッ
プの割り当てを簡易化できる。
は、ICACHE22やDCACHE41のキャッシュ・ヒット/キ
ャッシュ・ミス結果を無視して、SPRAM42へのアクセ
スを行う。これにより、キャッシュ・ヒットしたか否か
を確認することなくSPRAM42にアクセスできるため、S
PRAM42に対する読み書きを高速に行うことができる。
例を説明したが、フラグの種類や数は特に限定されな
い。例えば、I/O領域へのアクセス用にフラグを設け
てもよい。以下、このフラグを仮にI/Oフラグ(第2
のフラグ情報)と呼ぶ。
シュメモリの使用を禁止し、かつ、読み書きの順序を保
証するのが望ましい。
ドレスに対してロード/ストア命令を実行する際、その
命令に先行するストア命令の完了を保証するシステムの
一例を示す回路図である。図5のストアバッファ80
は、すべての書き込みデータを一時的に格納するのに用
いられる。
グがセットされていない場合には、図5のゲートG1か
ら、ICACHE22またはDCACHE41の利用を許可するハイ
レベル信号(Cashed信号)がLSU制御論理部85に供給さ
れる。
ストアバッファ80中にまだメモリに書き込まれていな
いデータが存在し、かつ、LSU4中に有効なロード/
ストア命令が存在する場合には、図5のゲートG2か
ら、I/O領域アクセス用のロード/ストア命令をスト
ールする旨のハイレベル信号(Stall_Request信号)がパ
イプライン制御論理部83に供給される。
ード/ストアの実行順序が保証されないシステムであっ
ても、最小限の回路付加により、I/O領域へのアクセ
ス前に、先行するストア命令の完了を保証することがで
きる。
より、I/O領域を主記憶メモリのメモリマップに割り
当てなくて済み、また、I/Oフラグがセットされてい
れば、強制的にキャッシュを無効にでき、かつソフトウ
ェアが配慮することなく書き込み順序を保証できるた
め、簡易かつ迅速にI/O領域にアクセスすることがで
きる。
なSPRAMの一例を説明したが、DMA転送が可能である
ことは必ずしも必須の要件ではない。DMA転送を行わ
ないSPRAMは、例えば、プロセッサが連続的に生成する
データの一時保管場所として用いられる。
行部によるデータの読み書きが可能で、かつ、外部メモ
リとの間でDMA転送可能なRAMに対してアクセスを
行うか否かを、第1のフラグ情報により判断するため、
RAMへのアクセスを高速に行うことができる。すなわ
ち、RAMにアクセスする際には、キャッシュ・ヒット
/ミス結果を参照しなくて済むため、通常のメモリより
も迅速にアクセスを行える。
で、通常のメモリアクセスと同様の命令を用いて上述し
たRAMにアクセスできるようになり、命令セットを単
純化でき、プログラム設計が容易になる。
を第2のフラグ情報に基づいて判断するため、I/O領
域にアクセスするための特別な命令や、特別なメモリ割
り当てが不要となる。
の内部構成を示すブロック図。
するストア命令の完了を保証するシステムの一例を示す
回路図。
Claims (8)
- 【請求項1】仮想アドレスを物理アドレスに変換するメ
モリ管理ユニットと、ロード/ストア命令を実行するロ
ード/ストア命令実行部と、を備えたマイクロプロセッ
サは、 前記ロード/ストア命令実行部によるデータの読み書き
が可能なRAMを備え、 前記メモリ管理ユニットは、前記RAMに対するアクセ
スを行うか否かを示す第1のフラグ情報を生成するフラ
グ情報生成部を有することを特徴とするマイクロプロセ
ッサ。 - 【請求項2】前記メモリ管理ユニットは、前記第1のフ
ラグ情報に基づいて前記RAMにアクセスを行う場合に
は、物理アドレスへの変換を行わずに仮想アドレス中の
少なくとも一部のアドレス情報を用いて前記RAMにア
クセスすることを特徴とする請求項1に記載のマイクロ
プロセッサ。 - 【請求項3】外部メモリから読み出したデータを一時的
に格納するキャッシュメモリを備え、 前記メモリ管理ユニットは、前記第1のフラグ情報に基
づいて前記RAMにアクセスを行う場合には、前記キャ
ッシュメモリに対するキャッシュ・ヒット/ミス結果に
関係なく、前記RAMにアクセスすることを特徴とする
請求項1または2に記載のマイクロプロセッサ。 - 【請求項4】前記メモリ管理ユニットは、仮想アドレス
をページ単位で物理アドレスに変換する変換テーブルを
生成するテーブル生成部を有し、 前記フラグ情報生成部は、仮想アドレスに対応する前記
第1のフラグ情報をページ単位で前記変換テーブルに格
納することを特徴とする請求項1〜3のいずれかに記載
のマイクロプロセッサ。 - 【請求項5】前記フラグ情報格納部は、I/O領域への
アクセスを行うか否かを示す第2のフラグ情報を生成す
ることを特徴とする請求項1〜4のいずれかに記載のマ
イクロプロセッサ。 - 【請求項6】前記メモリ管理ユニットは、前記第2のフ
ラグ情報に基づいてI/O領域にアクセスを行う場合に
は、前記キャッシュメモリに対するキャッシュ・ヒット
/ミス結果を無視してI/O領域をアクセスすることを
特徴とする請求項5に記載のマイクロプロセッサ。 - 【請求項7】前記RAMに格納すべきデータを、前記R
AMに格納する前に一時的に格納するストアバッファを
備え、 前記メモリ管理ユニットは、前記第2のフラグ情報に基
づいてI/O領域にアクセスを行う場合であって、前記
ロード/ストア命令実行部が前記RAMに対する有効な
ロード/ストア命令を保持しており、かつ、前記ストア
バッファ中にまだ前記RAMに書き込まれていないデー
タが存在する場合には、前記ストアバッファ中のデータ
が前記RAMに書き込まれるまで、I/O領域へのアク
セスを中断することを特徴とする請求項5または6に記
載のマイクロプロセッサ。 - 【請求項8】前記メモリ管理ユニットは、仮想アドレス
をページ単位で物理アドレスに変換する変換テーブルを
生成するテーブル生成部を有し、 前記フラグ情報生成部は、仮想アドレスに対応する前記
第2のフラグ情報をページ単位で前記変換テーブルに格
納することを特徴とする請求項5〜7のいずれかに記載
のマイクロプロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/246,407 US6412057B1 (en) | 1999-02-08 | 1999-02-08 | Microprocessor with virtual-to-physical address translation using flags |
US09/246,407 | 1999-02-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000231549A true JP2000231549A (ja) | 2000-08-22 |
JP4162825B2 JP4162825B2 (ja) | 2008-10-08 |
Family
ID=22930544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000029153A Expired - Fee Related JP4162825B2 (ja) | 1999-02-08 | 2000-02-07 | マイクロプロセッサ |
Country Status (2)
Country | Link |
---|---|
US (1) | US6412057B1 (ja) |
JP (1) | JP4162825B2 (ja) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003029967A (ja) * | 2001-07-17 | 2003-01-31 | Fujitsu Ltd | マイクロプロセッサ |
WO2003058454A2 (en) * | 2001-12-28 | 2003-07-17 | Intel Corporation | Method for extending the local memory address space of a processor |
WO2004031943A1 (ja) * | 2002-09-30 | 2004-04-15 | Renesas Technology Corp. | データプロセッサ |
JP2011065650A (ja) * | 2009-09-18 | 2011-03-31 | Intel Corp | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
WO2014014711A1 (en) * | 2012-07-18 | 2014-01-23 | Micron Technology, Inc | Memory management for a hierarchical memory system |
US9448965B2 (en) | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US9703574B2 (en) | 2013-03-15 | 2017-07-11 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US10019311B2 (en) | 2016-09-29 | 2018-07-10 | Micron Technology, Inc. | Validation of a symbol response memory |
US10146555B2 (en) | 2016-07-21 | 2018-12-04 | Micron Technology, Inc. | Adaptive routing to avoid non-repairable memory and logic defects on automata processor |
US10268602B2 (en) | 2016-09-29 | 2019-04-23 | Micron Technology, Inc. | System and method for individual addressing |
US10417236B2 (en) | 2008-12-01 | 2019-09-17 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous DMA parallel processing of a single data stream by multiple devices |
US10430210B2 (en) | 2014-12-30 | 2019-10-01 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US10592450B2 (en) | 2016-10-20 | 2020-03-17 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10684983B2 (en) | 2009-12-15 | 2020-06-16 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US10691964B2 (en) | 2015-10-06 | 2020-06-23 | Micron Technology, Inc. | Methods and systems for event reporting |
US10769099B2 (en) | 2014-12-30 | 2020-09-08 | Micron Technology, Inc. | Devices for time division multiplexing of state machine engine signals |
US10846103B2 (en) | 2015-10-06 | 2020-11-24 | Micron Technology, Inc. | Methods and systems for representing processing resources |
US10929764B2 (en) | 2016-10-20 | 2021-02-23 | Micron Technology, Inc. | Boolean satisfiability |
US10977309B2 (en) | 2015-10-06 | 2021-04-13 | Micron Technology, Inc. | Methods and systems for creating networks |
US11023758B2 (en) | 2009-01-07 | 2021-06-01 | Micron Technology, Inc. | Buses for pattern-recognition processors |
US11366675B2 (en) | 2014-12-30 | 2022-06-21 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US11488645B2 (en) | 2012-04-12 | 2022-11-01 | Micron Technology, Inc. | Methods for reading data from a storage buffer including delaying activation of a column select |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7864758B1 (en) * | 2001-09-28 | 2011-01-04 | Emc Corporation | Virtualization in a storage system |
US7496771B2 (en) * | 2005-11-15 | 2009-02-24 | Mips Technologies, Inc. | Processor accessing a scratch pad on-demand to reduce power consumption |
US8438003B2 (en) * | 2007-04-12 | 2013-05-07 | Cadence Design Systems, Inc. | Methods for improved simulation of integrated circuit designs |
US8291192B2 (en) * | 2008-10-30 | 2012-10-16 | Kyocera Document Solutions, Inc. | Memory management system |
US10409763B2 (en) * | 2014-06-30 | 2019-09-10 | Intel Corporation | Apparatus and method for efficiently implementing a processor pipeline |
US10007435B2 (en) | 2015-05-21 | 2018-06-26 | Micron Technology, Inc. | Translation lookaside buffer in memory |
CN110362509B (zh) * | 2018-04-10 | 2024-04-12 | 北京忆恒创源科技股份有限公司 | 统一地址转换方法与统一地址空间 |
US11392380B2 (en) | 2019-12-28 | 2022-07-19 | Intel Corporation | Apparatuses, methods, and systems to precisely monitor memory store accesses |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5924485A (ja) * | 1982-07-30 | 1984-02-08 | Toshiba Corp | 入出力ペ−ジング機構 |
JP2774862B2 (ja) * | 1990-07-16 | 1998-07-09 | 株式会社日立製作所 | Dma制御装置および情報処理装置 |
GB2282471B (en) * | 1993-09-29 | 1997-11-05 | Advanced Risc Mach Ltd | Cache storage |
US5606683A (en) | 1994-01-28 | 1997-02-25 | Quantum Effect Design, Inc. | Structure and method for virtual-to-physical address translation in a translation lookaside buffer |
US5765194A (en) * | 1996-05-01 | 1998-06-09 | Hewlett-Packard Company | Timing consistent dynamic compare with force miss circuit |
-
1999
- 1999-02-08 US US09/246,407 patent/US6412057B1/en not_active Expired - Fee Related
-
2000
- 2000-02-07 JP JP2000029153A patent/JP4162825B2/ja not_active Expired - Fee Related
Cited By (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003029967A (ja) * | 2001-07-17 | 2003-01-31 | Fujitsu Ltd | マイクロプロセッサ |
WO2003058454A2 (en) * | 2001-12-28 | 2003-07-17 | Intel Corporation | Method for extending the local memory address space of a processor |
WO2003058454A3 (en) * | 2001-12-28 | 2003-11-27 | Intel Corp | Method for extending the local memory address space of a processor |
US7174429B2 (en) | 2001-12-28 | 2007-02-06 | Intel Corporation | Method for extending the local memory address space of a processor |
CN1299206C (zh) * | 2001-12-28 | 2007-02-07 | 英特尔公司 | 扩展处理器的局部存储器地址空间的方法、设备和系统 |
WO2004031943A1 (ja) * | 2002-09-30 | 2004-04-15 | Renesas Technology Corp. | データプロセッサ |
US7415576B2 (en) | 2002-09-30 | 2008-08-19 | Renesas Technology Corp. | Data processor with block transfer control |
US10838966B2 (en) | 2008-12-01 | 2020-11-17 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous DMA parallel processing of a single data stream by multiple devices |
US10417236B2 (en) | 2008-12-01 | 2019-09-17 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous DMA parallel processing of a single data stream by multiple devices |
US11023758B2 (en) | 2009-01-07 | 2021-06-01 | Micron Technology, Inc. | Buses for pattern-recognition processors |
JP2013254524A (ja) * | 2009-09-18 | 2013-12-19 | Intel Corp | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
JP2011065650A (ja) * | 2009-09-18 | 2011-03-31 | Intel Corp | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 |
US9003164B2 (en) | 2009-09-18 | 2015-04-07 | Intel Corporation | Providing hardware support for shared virtual memory between local and remote physical memory |
US8719547B2 (en) | 2009-09-18 | 2014-05-06 | Intel Corporation | Providing hardware support for shared virtual memory between local and remote physical memory |
US11768798B2 (en) | 2009-12-15 | 2023-09-26 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US10684983B2 (en) | 2009-12-15 | 2020-06-16 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US11226926B2 (en) | 2009-12-15 | 2022-01-18 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US11488645B2 (en) | 2012-04-12 | 2022-11-01 | Micron Technology, Inc. | Methods for reading data from a storage buffer including delaying activation of a column select |
US10831672B2 (en) | 2012-07-18 | 2020-11-10 | Micron Technology, Inc | Memory management for a hierarchical memory system |
WO2014014711A1 (en) * | 2012-07-18 | 2014-01-23 | Micron Technology, Inc | Memory management for a hierarchical memory system |
JP2015522886A (ja) * | 2012-07-18 | 2015-08-06 | マイクロン テクノロジー, インク. | 階層メモリシステムのためのメモリ管理 |
US9524248B2 (en) | 2012-07-18 | 2016-12-20 | Micron Technology, Inc. | Memory management for a hierarchical memory system |
US10089242B2 (en) | 2012-07-18 | 2018-10-02 | Micron Technology, Inc. | Memory management for a hierarchical memory system |
US9747242B2 (en) | 2013-03-15 | 2017-08-29 | Micron Technology, Inc. | Methods and apparatuses for providing data received by a plurality of state machine engines |
US9703574B2 (en) | 2013-03-15 | 2017-07-11 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US10372653B2 (en) | 2013-03-15 | 2019-08-06 | Micron Technology, Inc. | Apparatuses for providing data received by a state machine engine |
US11775320B2 (en) | 2013-03-15 | 2023-10-03 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US11016790B2 (en) | 2013-03-15 | 2021-05-25 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US10929154B2 (en) | 2013-03-15 | 2021-02-23 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US10606787B2 (en) | 2013-03-15 | 2020-03-31 | Mircron Technology, Inc. | Methods and apparatuses for providing data received by a state machine engine |
US9448965B2 (en) | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US10067901B2 (en) | 2013-03-15 | 2018-09-04 | Micron Technology, Inc. | Methods and apparatuses for providing data received by a state machine engine |
US10430210B2 (en) | 2014-12-30 | 2019-10-01 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US11366675B2 (en) | 2014-12-30 | 2022-06-21 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US11947979B2 (en) | 2014-12-30 | 2024-04-02 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US11580055B2 (en) | 2014-12-30 | 2023-02-14 | Micron Technology, Inc. | Devices for time division multiplexing of state machine engine signals |
US10769099B2 (en) | 2014-12-30 | 2020-09-08 | Micron Technology, Inc. | Devices for time division multiplexing of state machine engine signals |
US11977902B2 (en) | 2015-10-06 | 2024-05-07 | Micron Technology, Inc. | Methods and systems for event reporting |
US10691964B2 (en) | 2015-10-06 | 2020-06-23 | Micron Technology, Inc. | Methods and systems for event reporting |
US10846103B2 (en) | 2015-10-06 | 2020-11-24 | Micron Technology, Inc. | Methods and systems for representing processing resources |
US11816493B2 (en) | 2015-10-06 | 2023-11-14 | Micron Technology, Inc. | Methods and systems for representing processing resources |
US10977309B2 (en) | 2015-10-06 | 2021-04-13 | Micron Technology, Inc. | Methods and systems for creating networks |
US10698697B2 (en) | 2016-07-21 | 2020-06-30 | Micron Technology, Inc. | Adaptive routing to avoid non-repairable memory and logic defects on automata processor |
US10146555B2 (en) | 2016-07-21 | 2018-12-04 | Micron Technology, Inc. | Adaptive routing to avoid non-repairable memory and logic defects on automata processor |
US10402265B2 (en) | 2016-09-29 | 2019-09-03 | Micron Technology, Inc. | Validation of a symbol response memory |
US10339071B2 (en) | 2016-09-29 | 2019-07-02 | Micron Technology, Inc. | System and method for individual addressing |
US10268602B2 (en) | 2016-09-29 | 2019-04-23 | Micron Technology, Inc. | System and method for individual addressing |
US10521366B2 (en) | 2016-09-29 | 2019-12-31 | Micron Technology, Inc. | System and method for individual addressing |
US10949290B2 (en) | 2016-09-29 | 2021-03-16 | Micron Technology, Inc. | Validation of a symbol response memory |
US10019311B2 (en) | 2016-09-29 | 2018-07-10 | Micron Technology, Inc. | Validation of a symbol response memory |
US10789182B2 (en) | 2016-09-29 | 2020-09-29 | Micron Technology, Inc. | System and method for individual addressing |
US11194747B2 (en) | 2016-10-20 | 2021-12-07 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10929764B2 (en) | 2016-10-20 | 2021-02-23 | Micron Technology, Inc. | Boolean satisfiability |
US11829311B2 (en) | 2016-10-20 | 2023-11-28 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10592450B2 (en) | 2016-10-20 | 2020-03-17 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
Also Published As
Publication number | Publication date |
---|---|
JP4162825B2 (ja) | 2008-10-08 |
US6412057B1 (en) | 2002-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4162825B2 (ja) | マイクロプロセッサ | |
US6549985B1 (en) | Method and apparatus for resolving additional load misses and page table walks under orthogonal stalls in a single pipeline processor | |
US5510934A (en) | Memory system including local and global caches for storing floating point and integer data | |
KR101467069B1 (ko) | 일련의 페이지의 캐시 플러싱 및 일련의 엔트리의 tlb 무효화를 위한 시스템, 방법 및 장치 | |
JP3285644B2 (ja) | キャッシュメモリを有するデータプロセッサ | |
CN109240950B (zh) | 处理器、区分系统管理模式条目的方法以及存储介质 | |
US6138208A (en) | Multiple level cache memory with overlapped L1 and L2 memory access | |
US9069690B2 (en) | Concurrent page table walker control for TLB miss handling | |
EP3238074A1 (en) | Cache accessed using virtual addresses | |
JP2008542948A (ja) | コンフィギュラブルトランスレーションルックアサイドバッファを備えたマイクロプロセッサ | |
US10552153B2 (en) | Efficient range-based memory writeback to improve host to device communication for optimal power and performance | |
EP0664897B1 (en) | High speed programmable logic controller | |
US11954044B2 (en) | Translation lookaside buffer prewarming | |
KR20030010727A (ko) | 변환 색인 버퍼 플러시 필터 | |
JP2006302313A (ja) | マイクロコード・キャッシュ・システム及び方法 | |
JP3841810B2 (ja) | データプロセッサ | |
JP3862959B2 (ja) | マイクロプロセッサのロード/ストア命令制御回路、およびロード/ストア命令制御方法 | |
JP4160228B2 (ja) | マイクロプロセッサ | |
US6820254B2 (en) | Method and system for optimizing code using an optimizing coprocessor | |
US6338128B1 (en) | System and method for invalidating an entry in a translation unit | |
EP0726524A2 (en) | Protocol and system for performing line-fill addressing during copy-back operation | |
US11080188B1 (en) | Method to ensure forward progress of a processor in the presence of persistent external cache/TLB maintenance requests | |
JP2004272939A (ja) | 1チップデータプロセッサ | |
JP3105110B2 (ja) | 演算装置 | |
TWI782754B (zh) | 微處理器和在微處理器中實現的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050303 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080310 |
|
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: 20080715 |
|
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: 20080723 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110801 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110801 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |