JPH03175548A - マイクロプロセッサ及びアドレス制御方式 - Google Patents
マイクロプロセッサ及びアドレス制御方式Info
- Publication number
- JPH03175548A JPH03175548A JP1315010A JP31501089A JPH03175548A JP H03175548 A JPH03175548 A JP H03175548A JP 1315010 A JP1315010 A JP 1315010A JP 31501089 A JP31501089 A JP 31501089A JP H03175548 A JPH03175548 A JP H03175548A
- Authority
- JP
- Japan
- Prior art keywords
- address
- logical
- calculation
- memory management
- management unit
- 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
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 5
- 238000003672 processing method Methods 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[概要]
命令処理方式につき、パイプライン処理方式を採用する
マイクロプロセッサに関し、 必要とするトランジスタの数を低減して、回路構成の簡
略化を図ることを目的とし、 アドレス計算を行うアドレス演算器と、該アドレス演算
器が出力する論理アドレスを格納する2個のアドレス格
納レジスタと、アドレス変換バッファを有し、前記論理
アドレスを物理アドレスに変換するメモリ管理ユニット
とを設けて構成する。
マイクロプロセッサに関し、 必要とするトランジスタの数を低減して、回路構成の簡
略化を図ることを目的とし、 アドレス計算を行うアドレス演算器と、該アドレス演算
器が出力する論理アドレスを格納する2個のアドレス格
納レジスタと、アドレス変換バッファを有し、前記論理
アドレスを物理アドレスに変換するメモリ管理ユニット
とを設けて構成する。
[産業上の利用分野]
本発明は、命令処理方式につき、パイプライン処理方式
を採用するマイクロプロセッサ及びかかるマイクロプロ
セッサにおけるアドレス制御方式一般に、マイクロプロ
セッサにおける命令の実行処理は、■命令のデコード、
■オペランドアドレスの計算、■オペランドのフェッチ
、■命令の実行、■実行結果の書込み、という段階(ス
テージ〉を経て行われるが、高速処理を目ざしたマイク
ロプロセッサでは、各段階を並列動作させるパイプライ
ン処理方式を採用するのが普通であり、また、記憶方式
については仮想記憶方式、即ち、プログラムが扱う記憶
装置を実際に設置されている主記憶装置と切り離して論
理的にとらえ、この論理的な記憶装置(仮想アドレス空
間)を対象としてプログラムを組み、これと実際の主記
憶装置(実アドレス空間)との対応付けは計算機ハード
ウェアとオペレーションシステム(O3)の助けによっ
て行う記憶方式を採用するのが普通である。
を採用するマイクロプロセッサ及びかかるマイクロプロ
セッサにおけるアドレス制御方式一般に、マイクロプロ
セッサにおける命令の実行処理は、■命令のデコード、
■オペランドアドレスの計算、■オペランドのフェッチ
、■命令の実行、■実行結果の書込み、という段階(ス
テージ〉を経て行われるが、高速処理を目ざしたマイク
ロプロセッサでは、各段階を並列動作させるパイプライ
ン処理方式を採用するのが普通であり、また、記憶方式
については仮想記憶方式、即ち、プログラムが扱う記憶
装置を実際に設置されている主記憶装置と切り離して論
理的にとらえ、この論理的な記憶装置(仮想アドレス空
間)を対象としてプログラムを組み、これと実際の主記
憶装置(実アドレス空間)との対応付けは計算機ハード
ウェアとオペレーションシステム(O3)の助けによっ
て行う記憶方式を採用するのが普通である。
[従来の技術]
従来、かかるマイクロプロセッサとして第4図にその要
部を示すようなものが提案されている。
部を示すようなものが提案されている。
図中、1は命令デコーダ、2はアドレス計算制御回路、
3はディスプレイスメント (Displace−me
nt)発生回路、4はアドレス演算器、5はアドレス格
納レジスタ、61〜6rlは汎用レジスタ、7はメモリ
管理ユニット、8はこのメモリ管理ユニット7内に設け
られたアドレス変換専用のアドレス演算器、9は同じく
メモリ管理ユニット7内に設けられたアドレス変換バッ
ファ(Lranslationlnnk、+1qidp
huffpr l?J下 T T、 Rkいら11
0はデータ入力バス、11はアドレス転送バス、12は
外部バスである。
3はディスプレイスメント (Displace−me
nt)発生回路、4はアドレス演算器、5はアドレス格
納レジスタ、61〜6rlは汎用レジスタ、7はメモリ
管理ユニット、8はこのメモリ管理ユニット7内に設け
られたアドレス変換専用のアドレス演算器、9は同じく
メモリ管理ユニット7内に設けられたアドレス変換バッ
ファ(Lranslationlnnk、+1qidp
huffpr l?J下 T T、 Rkいら11
0はデータ入力バス、11はアドレス転送バス、12は
外部バスである。
ここに、命令デコーダ1は、命令レジスタ(図示せず)
に読み出した命令を解読し、どのようなアドレス計算を
行うかをアドレス計算制御回路2に指示するものである
。また、アドレス計算制御回路2は、アドレス計算ステ
ージにおいて必要なアドレス計算処理を制御するもので
ある。即ち、ディスプレイスメント発生回路3における
ディスプレイスメントの発生、汎用レジスタ6□〜6n
からデータ入力バス10へのレジスタデータの出力、ア
ドレス演算器4でのアドレス計算の実行、アドレス格納
レジスタ5における論理アドレスの入出力などを制御す
るものである。
に読み出した命令を解読し、どのようなアドレス計算を
行うかをアドレス計算制御回路2に指示するものである
。また、アドレス計算制御回路2は、アドレス計算ステ
ージにおいて必要なアドレス計算処理を制御するもので
ある。即ち、ディスプレイスメント発生回路3における
ディスプレイスメントの発生、汎用レジスタ6□〜6n
からデータ入力バス10へのレジスタデータの出力、ア
ドレス演算器4でのアドレス計算の実行、アドレス格納
レジスタ5における論理アドレスの入出力などを制御す
るものである。
また、アドレス演算器4は、前述のようにアドレス計算
を行うものであって、その回路構成は、いわゆる算術論
理演算回路(A L U )と同一である。また、アド
レス格納レジスタ5は、アドレス演算器4が出力するア
ドレス計算結果、即ち、論理アドレスを俣椿するI、の
て・ある−士t・ 用田しジスタロ1〜6nは、通常は
、一般のデータを格納しておくものであるが、必要な場
合には、アドレス計算に使用されるものである。
を行うものであって、その回路構成は、いわゆる算術論
理演算回路(A L U )と同一である。また、アド
レス格納レジスタ5は、アドレス演算器4が出力するア
ドレス計算結果、即ち、論理アドレスを俣椿するI、の
て・ある−士t・ 用田しジスタロ1〜6nは、通常は
、一般のデータを格納しておくものであるが、必要な場
合には、アドレス計算に使用されるものである。
また、メモリ管理ユニット7は、アドレス演算器4又は
アドレス格納レジスタ5からアドレス転送バス11に送
出される論理アドレスを受は取り、TLB9を検索して
、かかる論理アドレスにつき、アドレス変換を行い、即
ち、物理アドレスに変換し、メモリアクセスを行うもの
である。
アドレス格納レジスタ5からアドレス転送バス11に送
出される論理アドレスを受は取り、TLB9を検索して
、かかる論理アドレスにつき、アドレス変換を行い、即
ち、物理アドレスに変換し、メモリアクセスを行うもの
である。
また、メモリ管理ユニット7内に設けられたアドレス演
算器8は、TLB9にミスヒ・ソトした論理アドレスに
つき、アドレス変換を行うためのものである。かかるア
ドレス演算器8を設けることによって、ミスヒツトした
論理アドレスにつき、アドレス変換が終了するまで、次
論理アドレスをアドレス格納レジスタ5に格納しておく
ことができる。換言すれば、かかる第4図従来例のマイ
クロプロセッサにおいては、このアドレス演算器8がな
ければ、ミスヒツトした論理アドレスのアドレス変換を
行うにつき、このミスヒツトした論理アドレスを一時、
アドレス格納レジスタ5に格納しなければならず、この
ようにする場合には、ミスヒツトした論理アドレスの次
論理アドレスをアドレス格納レジスタ5に格納すること
ができず、ミスヒツトした論理アドレスのアドレス変換
終了後、パイプライン処理を続行することができなくな
ってしまう。このため、かかるアドレス演算器8が設け
られている。なお、その回路構成はアドレス演算器4と
同一である。
算器8は、TLB9にミスヒ・ソトした論理アドレスに
つき、アドレス変換を行うためのものである。かかるア
ドレス演算器8を設けることによって、ミスヒツトした
論理アドレスにつき、アドレス変換が終了するまで、次
論理アドレスをアドレス格納レジスタ5に格納しておく
ことができる。換言すれば、かかる第4図従来例のマイ
クロプロセッサにおいては、このアドレス演算器8がな
ければ、ミスヒツトした論理アドレスのアドレス変換を
行うにつき、このミスヒツトした論理アドレスを一時、
アドレス格納レジスタ5に格納しなければならず、この
ようにする場合には、ミスヒツトした論理アドレスの次
論理アドレスをアドレス格納レジスタ5に格納すること
ができず、ミスヒツトした論理アドレスのアドレス変換
終了後、パイプライン処理を続行することができなくな
ってしまう。このため、かかるアドレス演算器8が設け
られている。なお、その回路構成はアドレス演算器4と
同一である。
また、TLB9は、アドレス変換を高速に行うことを目
的として設けられたものであって、論理アドレスと物理
アドレスとの変換対及びその付属情報を登録しておくも
のである。
的として設けられたものであって、論理アドレスと物理
アドレスとの変換対及びその付属情報を登録しておくも
のである。
ここに、メモリ管理ユニット7に転送された論理アドレ
スがTLB9に登録されていた場合、即ち、TLB9に
ヒツトした場合には、1マシンサイクルでアドレス変換
が終了し、物理アドレスでメモリアクセスが行われる。
スがTLB9に登録されていた場合、即ち、TLB9に
ヒツトした場合には、1マシンサイクルでアドレス変換
が終了し、物理アドレスでメモリアクセスが行われる。
他方、メモリ管理ユニット7に転送された論理アドレス
がTLB9に登録されていない場合、即ち、TLB9に
ミスヒツトした場合においては、マイクロプログラム制
御の下にアドレス変換が行われ、その後、オペランドの
フェッチが行われる。
がTLB9に登録されていない場合、即ち、TLB9に
ミスヒツトした場合においては、マイクロプログラム制
御の下にアドレス変換が行われ、その後、オペランドの
フェッチが行われる。
また、TLB9にはヒツトしたが、キャッシュメモリ(
図示せず)にミスヒツトした場合には、主記憶(図示せ
ず)にフェッチしに行くことになる。
図示せず)にミスヒツトした場合には、主記憶(図示せ
ず)にフェッチしに行くことになる。
そこで、メモリ管理ユニット7は、アドレス変換を行お
うとしている論理アドレスがT−L B 9にミスヒツ
トした場合において、マイクロプログラム制御の下にア
ドレス変換を行ってからオペランドをフェッチして返す
までの期間中であるとか、TLB9にはヒツトしたが、
キャッシュメモリにミスヒツトした場合において、主記
憶にフェッチしにいった期間中など、論理アドレスに対
応するオペランド(データ〉を1サイクルでは返せない
場合には、その期間中、アドレス計算制御回路2に対し
て、オペランドウェイト信号0PWAITを供給するよ
うに構成されている。
うとしている論理アドレスがT−L B 9にミスヒツ
トした場合において、マイクロプログラム制御の下にア
ドレス変換を行ってからオペランドをフェッチして返す
までの期間中であるとか、TLB9にはヒツトしたが、
キャッシュメモリにミスヒツトした場合において、主記
憶にフェッチしにいった期間中など、論理アドレスに対
応するオペランド(データ〉を1サイクルでは返せない
場合には、その期間中、アドレス計算制御回路2に対し
て、オペランドウェイト信号0PWAITを供給するよ
うに構成されている。
第5図は、かかる第4図従来例のマイクロプロセッサに
おいて、TLBミスヒツトが生じた場合の動作を示すタ
イムチャートである。
おいて、TLBミスヒツトが生じた場合の動作を示すタ
イムチャートである。
図中、DCl、ACl、Mll、OEl、OWlは、そ
れぞれ命令1のパイプライン・ステージを示しており、
DCIは命令デコードステージ、ACIはアドレス計算
ステージ、MIIはマイクロプログラム起動ステージで
あって、同時に、オペランドのフェッチが行われるステ
ージ、OEIは命令実行ステージ、OWLは実行結果書
き込みステージである。DC2なども命令2などに対し
て同様の意味を有している。また、A C4wのように
添え字Wがついているものは・、そのステージがウェイ
ト(待機状態)、即ち、先のステージに進めず、そのス
テージを繰り返している状態を示している。なお、この
第5図はAC2で演算された結果(以下、AC2アドレ
スという)がTLB9にミスヒツトした場合を示してい
る。
れぞれ命令1のパイプライン・ステージを示しており、
DCIは命令デコードステージ、ACIはアドレス計算
ステージ、MIIはマイクロプログラム起動ステージで
あって、同時に、オペランドのフェッチが行われるステ
ージ、OEIは命令実行ステージ、OWLは実行結果書
き込みステージである。DC2なども命令2などに対し
て同様の意味を有している。また、A C4wのように
添え字Wがついているものは・、そのステージがウェイ
ト(待機状態)、即ち、先のステージに進めず、そのス
テージを繰り返している状態を示している。なお、この
第5図はAC2で演算された結果(以下、AC2アドレ
スという)がTLB9にミスヒツトした場合を示してい
る。
ここに、アドレス演算器4において、AC2が実行され
た後、AC2アドレスが出力されると、このAC2アド
レスは、アドレス転送バス11を介して、アドレス格納
レジスタ5に格納されるとともに、同じくアドレス転送
バス11を介して、メモリ管理ユニット7に転送され、
このAC2アドレスにつき、TLB9が検索される。こ
こで、AC2アドレスがTLB9にミスヒツトした場合
、メモリ管理ユニット7は、オペランドウェイト信号0
PWAITをアドレス計算制御回路2に供給する。これ
に応答して、OF2、MI3、AC4はウェイト状態と
される。
た後、AC2アドレスが出力されると、このAC2アド
レスは、アドレス転送バス11を介して、アドレス格納
レジスタ5に格納されるとともに、同じくアドレス転送
バス11を介して、メモリ管理ユニット7に転送され、
このAC2アドレスにつき、TLB9が検索される。こ
こで、AC2アドレスがTLB9にミスヒツトした場合
、メモリ管理ユニット7は、オペランドウェイト信号0
PWAITをアドレス計算制御回路2に供給する。これ
に応答して、OF2、MI3、AC4はウェイト状態と
される。
他方、メモリ管理ユニット7においては、アドレス計算
制御回路2に対するオペランドウェイト信号0PWAI
Tの供給から1サイクル遅れてアドレス演算器8を使用
してミスヒツトした論理アドレスにつき、マイクロプロ
グラム制御の下にアドレス変換(第5図ではDATと記
載)が行われ、これが終了したときは、アドレス計算制
御回路2に対するオペランドウェイト信号OPWA I
Tの供給が停止される。ここに、オペランドが返って
きて、ウェイト状態が解除され、OF2、MI3、AC
4が実行され、以後、パイプライン処理が続行される。
制御回路2に対するオペランドウェイト信号0PWAI
Tの供給から1サイクル遅れてアドレス演算器8を使用
してミスヒツトした論理アドレスにつき、マイクロプロ
グラム制御の下にアドレス変換(第5図ではDATと記
載)が行われ、これが終了したときは、アドレス計算制
御回路2に対するオペランドウェイト信号OPWA I
Tの供給が停止される。ここに、オペランドが返って
きて、ウェイト状態が解除され、OF2、MI3、AC
4が実行され、以後、パイプライン処理が続行される。
なお、マイクロプログラム制御の下に行われるミスヒツ
トした論理アドレスのアドレス変換は、通常、20マシ
ンサイクル前後を必要とするが、第5図及び後述する第
3図においては、便宜上、5マシンサイクルのみを記載
している。
トした論理アドレスのアドレス変換は、通常、20マシ
ンサイクル前後を必要とするが、第5図及び後述する第
3図においては、便宜上、5マシンサイクルのみを記載
している。
[発明が解決しようとする課題]
ところで、かかる第4図従来例のマイクロプロセッサに
おいては、メモリ管理ユニット7内にアドレス演算器8
を設けているが、かかるアドレス演算器8を設ける場合
には、たとえば、32ビツト構成のマイクロプロセッサ
の場合、へ千個を越える数のトランジスタを必要とする
ため、回路構成が複雑化するという問題点があった。
おいては、メモリ管理ユニット7内にアドレス演算器8
を設けているが、かかるアドレス演算器8を設ける場合
には、たとえば、32ビツト構成のマイクロプロセッサ
の場合、へ千個を越える数のトランジスタを必要とする
ため、回路構成が複雑化するという問題点があった。
本発明は、かかる点に鑑み、必要とするトランジスタの
数を低減し、回路構成の簡略化を図ることができるよう
にしたマイクロプロセッサ及びかかるマイクロプロセッ
サにおけるアドレス制御方式を提供することを目的とす
る。
数を低減し、回路構成の簡略化を図ることができるよう
にしたマイクロプロセッサ及びかかるマイクロプロセッ
サにおけるアドレス制御方式を提供することを目的とす
る。
[課題を解決するための手段]
本発明のマイクロプロセッサは、第1図に、その原理説
明図を示すように、アドレス計算を行うアドレス演算器
20と、このアドレス演算器20が出力する論理アドレ
スを格納する2個のアドレス格納レジスタ21.22と
、TLB23を有し、論理アドレスを物理アドレスに変
換するメモリ管理ユニット24とを備えて構成される。
明図を示すように、アドレス計算を行うアドレス演算器
20と、このアドレス演算器20が出力する論理アドレ
スを格納する2個のアドレス格納レジスタ21.22と
、TLB23を有し、論理アドレスを物理アドレスに変
換するメモリ管理ユニット24とを備えて構成される。
なお、図中、25はアドレス転送バスである。また、ア
ドレス演算器20の入力端子には、番地方式が、たとえ
ば、いわゆるレジスタ相対間接アドレス方式であれば、
レジスタデータ及びディスプレイスメントが供給される
。
ドレス演算器20の入力端子には、番地方式が、たとえ
ば、いわゆるレジスタ相対間接アドレス方式であれば、
レジスタデータ及びディスプレイスメントが供給される
。
また、本発明のアドレス制御方式は、第1図を参照して
説明すると、アドレス計算処理を制御するアドレス計算
制御回路(図示せず〉と、アドレス計算を行うアドレス
演算器20と、このアドレス演算器20から論理アドレ
スが出力されるアドレス転送バス25と、このアドレス
演算器20が出力する論理アドレスを格納する2個のア
ドレス格納レジスタ21.22と、TLB23を有し、
論理アドレスを物理アドレスに変換するメモリ管理ユニ
ット24とを具備してなるマイクロプロセッサにおいて
、任意の命令処理中のアドレス計算ステップで、アドレ
ス演算器20によって計算された結果である論理アドレ
スがアドレス転送バス25を経てメモリ管理ユニット2
4に送出された後、TL823にミスヒツトしたことを
メモリ管理ユニット24よりアドレス計算制御回路に通
知された際に、アドレス計算制御回路の制御の下で、ミ
スヒツト論理アドレスを一方のアドレス格納レジスタ2
1又は22において保持すると同時に、次アドレス計算
ステップでの計算結果である次論理アドレスを他方のア
ドレス格納レジスタ22又は21で保持するというもの
である。
説明すると、アドレス計算処理を制御するアドレス計算
制御回路(図示せず〉と、アドレス計算を行うアドレス
演算器20と、このアドレス演算器20から論理アドレ
スが出力されるアドレス転送バス25と、このアドレス
演算器20が出力する論理アドレスを格納する2個のア
ドレス格納レジスタ21.22と、TLB23を有し、
論理アドレスを物理アドレスに変換するメモリ管理ユニ
ット24とを具備してなるマイクロプロセッサにおいて
、任意の命令処理中のアドレス計算ステップで、アドレ
ス演算器20によって計算された結果である論理アドレ
スがアドレス転送バス25を経てメモリ管理ユニット2
4に送出された後、TL823にミスヒツトしたことを
メモリ管理ユニット24よりアドレス計算制御回路に通
知された際に、アドレス計算制御回路の制御の下で、ミ
スヒツト論理アドレスを一方のアドレス格納レジスタ2
1又は22において保持すると同時に、次アドレス計算
ステップでの計算結果である次論理アドレスを他方のア
ドレス格納レジスタ22又は21で保持するというもの
である。
ここに、アドレス計算制御回路は、TLBミスヒツトに
伴い行われるアドレス変換処理中に、前記ミスヒツト論
理アドレスをメモリ管理ユニット23に送出するように
アドレス格納レジスタ21又は22に指示信号を出力す
るという方式を採用することが好適である。
伴い行われるアドレス変換処理中に、前記ミスヒツト論
理アドレスをメモリ管理ユニット23に送出するように
アドレス格納レジスタ21又は22に指示信号を出力す
るという方式を採用することが好適である。
また、アドレス計算制御回路は、アドレス変換処理直後
に次論理アドレスをメモリ管理ユニット24に送出する
ようにアドレス格納レジスタ22又は21へ指示信号を
出力するという方式を採用することが好適である。
に次論理アドレスをメモリ管理ユニット24に送出する
ようにアドレス格納レジスタ22又は21へ指示信号を
出力するという方式を採用することが好適である。
[作用]
本発明のマイクロプロセッサにおいては、2個のアドレ
ス格納レジスタ21.22が設けられているので、TL
Bミスヒツトが生じたときは、TLB23にミスヒツト
した論理アドレスを一方のアドレス格納レジスタ、たと
えば、アドレス格納レジスタ21に保持するとともに、
次論理アドレスを他方のアドレス格納レジスタ22に格
納し、保持することができる。
ス格納レジスタ21.22が設けられているので、TL
Bミスヒツトが生じたときは、TLB23にミスヒツト
した論理アドレスを一方のアドレス格納レジスタ、たと
えば、アドレス格納レジスタ21に保持するとともに、
次論理アドレスを他方のアドレス格納レジスタ22に格
納し、保持することができる。
このように、本発明のマイクロプロセッサによれば、T
LB23にミスヒツトした論理アドレスを一方のアドレ
ス格納レジスタ、たとえば、アドレス格納レジスタ21
に保持することができるので、ミスヒツトした論理アド
レスのアドレス変換につき、アドレス演算器20を使用
することができる。したがって、第4図従来例のマイク
ロプロセッサのように、メモリ管理ユニット24内にア
ドレス変換専用のアドレス演算器を設ける必要がなく、
その分、アドレス格納レジスタを1個、余分に設けると
しても・、全体のトランジスタ数を低減することができ
る。
LB23にミスヒツトした論理アドレスを一方のアドレ
ス格納レジスタ、たとえば、アドレス格納レジスタ21
に保持することができるので、ミスヒツトした論理アド
レスのアドレス変換につき、アドレス演算器20を使用
することができる。したがって、第4図従来例のマイク
ロプロセッサのように、メモリ管理ユニット24内にア
ドレス変換専用のアドレス演算器を設ける必要がなく、
その分、アドレス格納レジスタを1個、余分に設けると
しても・、全体のトランジスタ数を低減することができ
る。
また、本発明のマイクロプロセッサによれば、ミスヒツ
トした論理アドレスの次論理アドレスを、たとえば、ア
ドレス格納レジスタ22に格納することができるので、
ミスヒツトした論理アドレスのアドレス変換終了後、パ
イプライン処理を続行することができる。
トした論理アドレスの次論理アドレスを、たとえば、ア
ドレス格納レジスタ22に格納することができるので、
ミスヒツトした論理アドレスのアドレス変換終了後、パ
イプライン処理を続行することができる。
また、本発明のアドレス制御方式によれば、アドレス計
算制御回路(図示せず〉と、アドレス演算器20と、ア
ドレス転送バス25と、2個のアドレス格納レジスタ2
1.22と、TL823を有するメモリ管理ユニット2
4とを具備してなるマイクロプロセッサにおいて、ミス
ヒツトした論理アドレスのアドレス変換及びこのアドレ
ス変換後のパイプライン処理動作をスムースに行うこと
ができる。
算制御回路(図示せず〉と、アドレス演算器20と、ア
ドレス転送バス25と、2個のアドレス格納レジスタ2
1.22と、TL823を有するメモリ管理ユニット2
4とを具備してなるマイクロプロセッサにおいて、ミス
ヒツトした論理アドレスのアドレス変換及びこのアドレ
ス変換後のパイプライン処理動作をスムースに行うこと
ができる。
[実施例]
以下、第2図及び第3図を参照して、本発明の一実施例
につき説明する。なお、第2図において第4図に対応す
る部分には同一符号を付し、その重複説明は省略する。
につき説明する。なお、第2図において第4図に対応す
る部分には同一符号を付し、その重複説明は省略する。
第2図は本発明の一実施例の要部を示す回路図であって
、本実施例においては、2個のアドレス格納レジスタ5
.13が設けられている。。これらアドレス格納レジス
タ5.13は、通常時、アドレス演算器4から出力され
る論理アドレスを交互に格納するように制御される。ま
た、本実施例においては、アドレス演算器−を備えてい
ないメモリ管理ユニット14が設けられている。このメ
モリ管理ユニット14は、TLBミスヒツトが生じた場
合、第3図に示すようなTL、Bミスヒツト通知信号を
アドレス計算制御回路2に、対して供給するように構成
されている。その他については、第4図従来例と同様に
構成されている。
、本実施例においては、2個のアドレス格納レジスタ5
.13が設けられている。。これらアドレス格納レジス
タ5.13は、通常時、アドレス演算器4から出力され
る論理アドレスを交互に格納するように制御される。ま
た、本実施例においては、アドレス演算器−を備えてい
ないメモリ管理ユニット14が設けられている。このメ
モリ管理ユニット14は、TLBミスヒツトが生じた場
合、第3図に示すようなTL、Bミスヒツト通知信号を
アドレス計算制御回路2に、対して供給するように構成
されている。その他については、第4図従来例と同様に
構成されている。
ここに、第3図は、本実施例のマイクロプロセッサにお
いて、第4図従来例の場合と同様にAC2アドレスにつ
きTLBミスヒツトが生じた場合の動作を示すタイムチ
ャートである。以下、これについて説明する。
いて、第4図従来例の場合と同様にAC2アドレスにつ
きTLBミスヒツトが生じた場合の動作を示すタイムチ
ャートである。以下、これについて説明する。
本実施例においては、ACIでActアドレスの計算が
行われると、次サイクルにおいて、AC1アドレスがア
ドレス転送バス11に送出され、アドレス格納レジスタ
5に格納されるとともに、メモリ管理ユニット14に転
送され、ACIアドレスにつき、TLB9が検索さ、れ
る。なお、このサイクルでは、アドレス演算器4におい
て、AC2アドレスの計算が行われる。
行われると、次サイクルにおいて、AC1アドレスがア
ドレス転送バス11に送出され、アドレス格納レジスタ
5に格納されるとともに、メモリ管理ユニット14に転
送され、ACIアドレスにつき、TLB9が検索さ、れ
る。なお、このサイクルでは、アドレス演算器4におい
て、AC2アドレスの計算が行われる。
次に、AC2アドレスがアドレス転送バス11に送出さ
れ、アドレス格納レジスタ13に格納されるとともに、
メモリ管理ユニット14に転送され、AC2アドレスに
つき、TLB9が検索される。ここに、AC2アドレス
がミスヒツトすると、次のサイクルでメモリ管理ユニッ
ト14はアドレス計算制御回路2に対してTLBミスヒ
ツト通知信号を供給する。なお、このサイクルではアド
レス演算器4からAC3アドレスが出力されてアドレス
格納レジスタ5に格納されるが、アドレス計算制御回路
2は、前述のTLBミスヒツト通知信号に応答して、ア
ドレス格納レジスタ5.13をロックして、AC2アド
レス、AC3アドレスを保持させる。
れ、アドレス格納レジスタ13に格納されるとともに、
メモリ管理ユニット14に転送され、AC2アドレスに
つき、TLB9が検索される。ここに、AC2アドレス
がミスヒツトすると、次のサイクルでメモリ管理ユニッ
ト14はアドレス計算制御回路2に対してTLBミスヒ
ツト通知信号を供給する。なお、このサイクルではアド
レス演算器4からAC3アドレスが出力されてアドレス
格納レジスタ5に格納されるが、アドレス計算制御回路
2は、前述のTLBミスヒツト通知信号に応答して、ア
ドレス格納レジスタ5.13をロックして、AC2アド
レス、AC3アドレスを保持させる。
そして、次のサイクルからメモリ管理ユニット14にお
いて、AC2アドレスにつき、マイクロプログラム制御
の下にアドレス変換が開始される。
いて、AC2アドレスにつき、マイクロプログラム制御
の下にアドレス変換が開始される。
このアドレス変換中に、アドレス計算制御回路2からの
アドレス送出指示信号によってアドレス格納レジスタ5
に格納されているAC2アドレスがアドレス転送バス1
1に送出されて、メモリ管理ユニット14に取り込まれ
、必要なアドレス変換が行われる。
アドレス送出指示信号によってアドレス格納レジスタ5
に格納されているAC2アドレスがアドレス転送バス1
1に送出されて、メモリ管理ユニット14に取り込まれ
、必要なアドレス変換が行われる。
そして、アドレス変換が終了した場合には、メモリ管理
ユニット14は、アドレス計算制御回路2に対して、ア
ドレス変換終了信号を供給する。
ユニット14は、アドレス計算制御回路2に対して、ア
ドレス変換終了信号を供給する。
これに応答して、アドレス計算制御回路2は、アドレス
格納レジスタ5に対してアドレス送出指示信号を供給し
、アドレス格納レジスタ5に格納されていたAC3アド
レスをアドレス転送バス11に送出させ、これをアドレ
ス格納レジスタ13に格納させるとともに、メモリ管理
ユニット14に転送し、AC3アドレスについてのTL
B9の検索を行わせる。即ち、MI3が実行される。○
E2、AC4についても実行される。ここに、中断して
いたパイプライン処理が続行される。
格納レジスタ5に対してアドレス送出指示信号を供給し
、アドレス格納レジスタ5に格納されていたAC3アド
レスをアドレス転送バス11に送出させ、これをアドレ
ス格納レジスタ13に格納させるとともに、メモリ管理
ユニット14に転送し、AC3アドレスについてのTL
B9の検索を行わせる。即ち、MI3が実行される。○
E2、AC4についても実行される。ここに、中断して
いたパイプライン処理が続行される。
かかる本実施例においては、TLBミスヒツトが生じた
場合の命令処理速度は、第4図従来例の場合と同様であ
るが、第4図従来例と異なり、2個のアドレス格納レジ
スタ5.13を備えているので、たとえば、前例のよう
にAC2アドレスがTLB9にミスヒツトしたときは、
このAC2アドレスを、たとえば、アドレス格納レジス
タ5に保持し、これをアドレス変換の途中サイクルにお
いて、メモリ管理ユニット14に取り込むことができる
。このため、第4図従来例のように、メモリ管理ユニッ
ト14にアドレス演算器を設ける必要がない、ここに、
アドレス演算器は、へ千個を越えるトランジスタを必要
とし、これに対して、アドレス格納レジスタ13は、周
辺回路を含め、二百数十個のトランジスタで足りる。
場合の命令処理速度は、第4図従来例の場合と同様であ
るが、第4図従来例と異なり、2個のアドレス格納レジ
スタ5.13を備えているので、たとえば、前例のよう
にAC2アドレスがTLB9にミスヒツトしたときは、
このAC2アドレスを、たとえば、アドレス格納レジス
タ5に保持し、これをアドレス変換の途中サイクルにお
いて、メモリ管理ユニット14に取り込むことができる
。このため、第4図従来例のように、メモリ管理ユニッ
ト14にアドレス演算器を設ける必要がない、ここに、
アドレス演算器は、へ千個を越えるトランジスタを必要
とし、これに対して、アドレス格納レジスタ13は、周
辺回路を含め、二百数十個のトランジスタで足りる。
また、本実施例においては、ミスヒツトした論理アドレ
ス、前例ではAC2アドレスの次論理アドレスを、たと
えば、アドレス格納レジスタ5に格納し、保持すること
ができるので、AC2アドレスのアドレス変換終了後、
パイプライン処理を続行することができる。
ス、前例ではAC2アドレスの次論理アドレスを、たと
えば、アドレス格納レジスタ5に格納し、保持すること
ができるので、AC2アドレスのアドレス変換終了後、
パイプライン処理を続行することができる。
このように、本実施例によれば、第4図従来例と同様に
パイプライン処理を行うことができるとともに、TLB
ミスヒツトが生じた場合、第4図従来例と同様のサイク
ルでこれを処理することができるにも関わらず、必要と
するトランジスタの数を低減し、回路構成の簡略化を図
ることができる。
パイプライン処理を行うことができるとともに、TLB
ミスヒツトが生じた場合、第4図従来例と同様のサイク
ルでこれを処理することができるにも関わらず、必要と
するトランジスタの数を低減し、回路構成の簡略化を図
ることができる。
[発明の効果]
以上のように、本発明によれば、以下の効果を得ること
ができる。
ができる。
即ち、まず、請求項1記載のマイクロプロセッサによれ
ば、2個のアドレス格納レジスタを設けるという構成を
採用したことにより、ミスヒツトした論理アドレスのア
ドレス変換につき、アドレス演算器を使用することがで
き、この結果、メモリ管理ユニット内にミスヒツトした
論理アドレスについてのアドレス変換専用のアドレス演
算器を設ける必要がないので、アドレス格納レジスタを
1個、余分に設けるとしても、全体として必要とするト
ランジスタの数を低減し、回路構成の簡略化を図ること
ができる。なお、TLBミスヒツトが生じた場合、第4
図従来例と同様のサイクルでこれを処理することができ
ることは前述した通りである。
ば、2個のアドレス格納レジスタを設けるという構成を
採用したことにより、ミスヒツトした論理アドレスのア
ドレス変換につき、アドレス演算器を使用することがで
き、この結果、メモリ管理ユニット内にミスヒツトした
論理アドレスについてのアドレス変換専用のアドレス演
算器を設ける必要がないので、アドレス格納レジスタを
1個、余分に設けるとしても、全体として必要とするト
ランジスタの数を低減し、回路構成の簡略化を図ること
ができる。なお、TLBミスヒツトが生じた場合、第4
図従来例と同様のサイクルでこれを処理することができ
ることは前述した通りである。
また、請求項2記載のアドレス制御方式によれば、アド
レス計算制御回路と、アドレス演算器と、アドレス転送
バスと、2個のアドレス格納レジス夕と、TLBを有す
るメモリ管理ユニットとを具備してなるマイクロプロセ
ッサにおいて、ミスヒツトした論理アドレスのアドレス
変換及びこのアドレス変換後のパイプライン処理動作を
スムースに行うことができる。
レス計算制御回路と、アドレス演算器と、アドレス転送
バスと、2個のアドレス格納レジス夕と、TLBを有す
るメモリ管理ユニットとを具備してなるマイクロプロセ
ッサにおいて、ミスヒツトした論理アドレスのアドレス
変換及びこのアドレス変換後のパイプライン処理動作を
スムースに行うことができる。
第1図は本発明のマイクロプロセッサの原理説明図、
第2図は本発明の一実施例の要部を示すブロック図、
第3図は第2図例のマイクロプロセッサにおいてTLB
ミスヒツトが生じた場合の動作を示すタイムチャート、 第4図は従来のマイクロプロセッサの一例の要部を示す
ブロック図、 第5図は第4図従来例のマイクロプロセッサにおいてT
LBミスヒツトが生じた場合の動作を示すタイムチャー
トである。 本発明の原理説明図 第1図
ミスヒツトが生じた場合の動作を示すタイムチャート、 第4図は従来のマイクロプロセッサの一例の要部を示す
ブロック図、 第5図は第4図従来例のマイクロプロセッサにおいてT
LBミスヒツトが生じた場合の動作を示すタイムチャー
トである。 本発明の原理説明図 第1図
Claims (1)
- 【特許請求の範囲】 1、アドレス計算を行うアドレス演算器(20)と、 該アドレス演算器(20)が出力する論理アドレスを格
納する2個のアドレス格納レジスタ(21、22)と、 アドレス変換バッファ(23)を有し、前記論理アドレ
スを物理アドレスに変換するメモリ管理ユニット(24
)とを 具備してなることを特徴とするマイクロプロセッサ。 2、アドレス計算処理を制御するアドレス計算制御回路
と、 アドレス計算を行うアドレス演算器(20)と、 該アドレス演算器(20)から論理アドレスが出力され
るアドレス転送バス(25)と、該アドレス演算器(2
0)が出力する論理アドレスを格納する2個のアドレス
格納レジスタ(21、22)と、 アドレス変換バッファ(23)を有し、前記論理アドレ
スを物理アドレスに変換するメモリ管理ユニット(24
)とを具備してなるマイクロプロセッサにおいて、 任意の命令処理中のアドレス計算ステップで、前記アド
レス演算器(20)によって計算された結果である論理
アドレスが、前記アドレス転送バス(25)を経て前記
メモリ管理ユニット(24)に送出された後、アドレス
変換バッファ(23)にミスヒットしたことを前記メモ
リ管理ユニット(24)より前記アドレス計算制御回路
に通知された際に、前記アドレス計算制御回路の制御の
下で、前記ミスヒット論理アドレスを一方のアドレス格
納レジスタにおいて保持すると同時に、次アドレス計算
ステップでの計算結果である次論理アドレスを他方のア
ドレス格納レジスタで保持することを特徴とするアドレ
ス制御方式。 3、前記アドレス計算制御回路は、アドレス変換バッフ
ァ・ミスヒットに伴い行われるアドレス変換処理中に、
前記ミスヒット論理アドレスを前記メモリ管理ユニット
(24)へ送出するようにアドレス格納レジスタ(21
、22)に指示信号を出力することを特徴とする請求項
2記載のアドレス制御方式。 4、前記アドレス計算制御回路は、アドレス変換処理直
後に次論理アドレスをメモリ管理ユニット(24)に送
出するようにアドレス格納レジスタ(21、22)へ指
示信号を出力することを特徴とする請求項2記載のアド
レス制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1315010A JPH03175548A (ja) | 1989-12-04 | 1989-12-04 | マイクロプロセッサ及びアドレス制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1315010A JPH03175548A (ja) | 1989-12-04 | 1989-12-04 | マイクロプロセッサ及びアドレス制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03175548A true JPH03175548A (ja) | 1991-07-30 |
Family
ID=18060333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1315010A Pending JPH03175548A (ja) | 1989-12-04 | 1989-12-04 | マイクロプロセッサ及びアドレス制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03175548A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202624A (ja) * | 1995-01-27 | 1996-08-09 | Kofu Nippon Denki Kk | アドレス変換制御回路 |
JP2020517030A (ja) * | 2017-04-17 | 2020-06-11 | セレブラス システムズ インク. | ディープラーニング加速化のためのデータ構造記述子 |
US11475282B2 (en) | 2017-04-17 | 2022-10-18 | Cerebras Systems Inc. | Microthreading for accelerated deep learning |
US11488004B2 (en) | 2017-04-17 | 2022-11-01 | Cerebras Systems Inc. | Neuron smearing for accelerated deep learning |
US11934945B2 (en) | 2017-02-23 | 2024-03-19 | Cerebras Systems Inc. | Accelerated deep learning |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5998367A (ja) * | 1982-11-26 | 1984-06-06 | Nec Corp | アドレス変換バツフア方式 |
JPS60168251A (ja) * | 1984-02-13 | 1985-08-31 | Fujitsu Ltd | アドレス変換制御装置 |
JPS63168752A (ja) * | 1987-01-07 | 1988-07-12 | Nippon Telegr & Teleph Corp <Ntt> | アドレス変換バツフア制御方式 |
-
1989
- 1989-12-04 JP JP1315010A patent/JPH03175548A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5998367A (ja) * | 1982-11-26 | 1984-06-06 | Nec Corp | アドレス変換バツフア方式 |
JPS60168251A (ja) * | 1984-02-13 | 1985-08-31 | Fujitsu Ltd | アドレス変換制御装置 |
JPS63168752A (ja) * | 1987-01-07 | 1988-07-12 | Nippon Telegr & Teleph Corp <Ntt> | アドレス変換バツフア制御方式 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202624A (ja) * | 1995-01-27 | 1996-08-09 | Kofu Nippon Denki Kk | アドレス変換制御回路 |
US11934945B2 (en) | 2017-02-23 | 2024-03-19 | Cerebras Systems Inc. | Accelerated deep learning |
JP2020517030A (ja) * | 2017-04-17 | 2020-06-11 | セレブラス システムズ インク. | ディープラーニング加速化のためのデータ構造記述子 |
US11475282B2 (en) | 2017-04-17 | 2022-10-18 | Cerebras Systems Inc. | Microthreading for accelerated deep learning |
US11488004B2 (en) | 2017-04-17 | 2022-11-01 | Cerebras Systems Inc. | Neuron smearing for accelerated deep learning |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5394530A (en) | Arrangement for predicting a branch target address in the second iteration of a short loop | |
US8683175B2 (en) | Seamless interface for multi-threaded core accelerators | |
US5941981A (en) | System for using a data history table to select among multiple data prefetch algorithms | |
EP0381447B1 (en) | Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system | |
US5016169A (en) | Data processor capable of correctly re-executing instructions | |
JPS63193230A (ja) | 高性能マイクロプロセッサ集積回路とメモリ参照を行なう方法 | |
CN104221005B (zh) | 用于从多线程发送请求至加速器的机制 | |
US6301654B1 (en) | System and method for permitting out-of-order execution of load and store instructions | |
JP2575219B2 (ja) | データ処理システム及びその命令実行を促進する方法 | |
JP2001034537A (ja) | アドレス変換回路 | |
US5051894A (en) | Apparatus and method for address translation of non-aligned double word virtual addresses | |
US6338128B1 (en) | System and method for invalidating an entry in a translation unit | |
JPH03175548A (ja) | マイクロプロセッサ及びアドレス制御方式 | |
JPH06295243A (ja) | データ処理装置 | |
JPH08314803A (ja) | ディスクキャッシュ制御装置 | |
JPH08161226A (ja) | データ先読み制御方法,キャッシュ制御装置およびデータ処理装置 | |
JP3185649B2 (ja) | プログラマブルコントローラ | |
JPH0248733A (ja) | 情報処理装置 | |
JP2622026B2 (ja) | 中央処理装置におけるレジスタ書込制御方式 | |
JP2000347934A (ja) | キャッシュメモリ装置 | |
JPS6221130B2 (ja) | ||
JPH06187244A (ja) | アドレス変換バッファ機構 | |
JPH0795288B2 (ja) | マイクロコンピュータ | |
JPS63311438A (ja) | ストア命令不一致制御回路 | |
JPH02259945A (ja) | ストア処理方式 |