JPH0322052A - メモリマッパ装置 - Google Patents
メモリマッパ装置Info
- Publication number
- JPH0322052A JPH0322052A JP15568689A JP15568689A JPH0322052A JP H0322052 A JPH0322052 A JP H0322052A JP 15568689 A JP15568689 A JP 15568689A JP 15568689 A JP15568689 A JP 15568689A JP H0322052 A JPH0322052 A JP H0322052A
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- signal
- data
- register
- 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
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明は、所定容量単位でブロック化された複数ブロッ
クを有するメモリのブロックアドレスをアクセスするメ
モリマッパ装置に関する。
クを有するメモリのブロックアドレスをアクセスするメ
モリマッパ装置に関する。
[従来の技術]
最近、小型電子機器として、例えば複合機能を有する電
卓や電子手帳などが実用化されているが、これら電子機
器については、プログラムステップ数、データ量の増大
により大容量メモリが用いられるようになっている。
卓や電子手帳などが実用化されているが、これら電子機
器については、プログラムステップ数、データ量の増大
により大容量メモリが用いられるようになっている。
ところで、このような電子機器に用いられるCPUにお
いてメモリアドレス線数が16本用意されているものは
、直接メモリアクセス処理可能なアドレス空間が、 2 ”− 6 5 5 3 6 (8ビットマシンの場合は64Kバイト)になる。した
がって、これより大きなアドレス空間を扱うには、何ら
かの方法によりメモリアドレス線を補ってアドレスを拡
張する必要がある。
いてメモリアドレス線数が16本用意されているものは
、直接メモリアクセス処理可能なアドレス空間が、 2 ”− 6 5 5 3 6 (8ビットマシンの場合は64Kバイト)になる。した
がって、これより大きなアドレス空間を扱うには、何ら
かの方法によりメモリアドレス線を補ってアドレスを拡
張する必要がある。
そこで、従来、このような問題を解決する方法として、
アドレスバスの追加にCPUの出力ボートを使用するも
のが考えられている。ところが、このものはプログラミ
ングは可能であるものの、ソフトウェア上での制約が多
く、特に、出力ポートを切替える命令を行ったアドレス
と実行後のアドレスが連続的にならない。例えば、80
012h番地で出力ボートを3に切替えると、次の命令
の実行アドレスは30013hとなる。
アドレスバスの追加にCPUの出力ボートを使用するも
のが考えられている。ところが、このものはプログラミ
ングは可能であるものの、ソフトウェア上での制約が多
く、特に、出力ポートを切替える命令を行ったアドレス
と実行後のアドレスが連続的にならない。例えば、80
012h番地で出力ボートを3に切替えると、次の命令
の実行アドレスは30013hとなる。
このことがプログラム設計の際に障害となり、適用でき
る範囲が限定されていた。
る範囲が限定されていた。
一方、別の方法としては、メモリマッパを使用する方法
も考えられている。この方法は、メモリアドレス空間を
所定長の論理的メモリユニット(セグメント)の集合に
設定し、論理アドレスを構成するセグメント開始アドレ
ス値にオフセットアドレス値を加算してメモリ実アドレ
スを生成することで拡張アドレスを得るようにしている
。この方法によれば1つのセグメント空間に対するアク
セスは可能であるが、連続したセグメントあるいは離れ
て位置するセグメント空間を連続してアクセスすること
はできず、メモリ空間のアクセスの融通性が制限される
ことなどから、プログラムの設計が面倒になる欠点があ
った。
も考えられている。この方法は、メモリアドレス空間を
所定長の論理的メモリユニット(セグメント)の集合に
設定し、論理アドレスを構成するセグメント開始アドレ
ス値にオフセットアドレス値を加算してメモリ実アドレ
スを生成することで拡張アドレスを得るようにしている
。この方法によれば1つのセグメント空間に対するアク
セスは可能であるが、連続したセグメントあるいは離れ
て位置するセグメント空間を連続してアクセスすること
はできず、メモリ空間のアクセスの融通性が制限される
ことなどから、プログラムの設計が面倒になる欠点があ
った。
[発明が解決しようとする課題]
このように、従来のアドレスバスの追加にCPUの出力
ボートを使用するものは、出力ポートを切替える命令を
行ったアドレスと実行後のアドレスが連続的にならない
ため、プログラム設計の際の障害となるとともに、適用
できる範囲が限定されてしまい、また、メモリマッパを
使用するものは、連続したセグメントあるいは離れて位
置するセグメント空間を連続してアクセスすることはで
きず、メモリ空間のアクセスの融通性が制限されること
など、プログラムの設計が面倒になる欠点があった。
ボートを使用するものは、出力ポートを切替える命令を
行ったアドレスと実行後のアドレスが連続的にならない
ため、プログラム設計の際の障害となるとともに、適用
できる範囲が限定されてしまい、また、メモリマッパを
使用するものは、連続したセグメントあるいは離れて位
置するセグメント空間を連続してアクセスすることはで
きず、メモリ空間のアクセスの融通性が制限されること
など、プログラムの設計が面倒になる欠点があった。
本発明は、上記事情に鑑みてなされたもので、連続して
いない空間も連続しているようにして処理でき、しかも
プログラム設計を簡単にできるメモリマッパ装置を提供
することを目的とする。
いない空間も連続しているようにして処理でき、しかも
プログラム設計を簡単にできるメモリマッパ装置を提供
することを目的とする。
[課題を解決するための手段]
本発明は、所定容量単位でブロック化された複数ブロッ
クを持つメモリのプログラム領域またはデータ領域のブ
ロックアドレスをアクセスするメモリマッパ装置におい
て、少なくとも2分割されたCPUのアドレス空間によ
り直接アクセスされる上記メモリのプログラム領域また
はデータ領域のブロックアドレスを指定する複数のアド
レスレジスタと、メモリアクセス状態により上記アドレ
スレジスタのいずれかを選択指定するレジスタ選択手段
と、このレジスタ選択手段により選択指定されているア
ドレスレジスタの内容を任意に書き替える書き替え手段
からなっている。
クを持つメモリのプログラム領域またはデータ領域のブ
ロックアドレスをアクセスするメモリマッパ装置におい
て、少なくとも2分割されたCPUのアドレス空間によ
り直接アクセスされる上記メモリのプログラム領域また
はデータ領域のブロックアドレスを指定する複数のアド
レスレジスタと、メモリアクセス状態により上記アドレ
スレジスタのいずれかを選択指定するレジスタ選択手段
と、このレジスタ選択手段により選択指定されているア
ドレスレジスタの内容を任意に書き替える書き替え手段
からなっている。
[作用]
本発明によれば、所定容量単位でブロック化された複数
ブロックを持つメモリのプログラム領域またはデータ領
域の各ブロックアドレスをアドレスレジスタを選択指定
することでアクセスできるようになる。また、アドレス
レジスタを2分割されたCPUのアドレス空間に対応し
て選択指定することにより、これらアドレスレジスタに
より指定されたブロックアドレスを連続してアクセスす
ることもできる。
ブロックを持つメモリのプログラム領域またはデータ領
域の各ブロックアドレスをアドレスレジスタを選択指定
することでアクセスできるようになる。また、アドレス
レジスタを2分割されたCPUのアドレス空間に対応し
て選択指定することにより、これらアドレスレジスタに
より指定されたブロックアドレスを連続してアクセスす
ることもできる。
[実施例]
以下、本発明の一実施例を図面にしたがい説明する。
第1図は同実施例の回路構戊を示すものである。図にお
いて、1は8ビットCPUで、このCPUIは8本のデ
ータ線DO〜D7と16本のアトレス線AO〜Al5が
用意され、直接メモリアクセス処理可能なアドレス空間
を64Kバイトにしている。また、このCPUIはアド
レス空間を32Kバイトずつの2つのBANK構成とし
ている。
いて、1は8ビットCPUで、このCPUIは8本のデ
ータ線DO〜D7と16本のアトレス線AO〜Al5が
用意され、直接メモリアクセス処理可能なアドレス空間
を64Kバイトにしている。また、このCPUIはアド
レス空間を32Kバイトずつの2つのBANK構成とし
ている。
CPUIに用意されたデータ線DO−D7をメモリマッ
パ2に接続するとともに、メモリ3〜6に接続し、また
、アドレス線AO〜Al5のうち、アドレス線AO 、
AI ,Al5を上記メモリマッパ2に接続するととも
に、アドレス線An −AI4を上記メモリ3〜6に接
続している。
パ2に接続するとともに、メモリ3〜6に接続し、また
、アドレス線AO〜Al5のうち、アドレス線AO 、
AI ,Al5を上記メモリマッパ2に接続するととも
に、アドレス線An −AI4を上記メモリ3〜6に接
続している。
メモリマッパ2はプログラムアドレスレジスタ(IBR
)21とデータアドレスレジスタ(BRO )(BRI
)22、23を有している。
)21とデータアドレスレジスタ(BRO )(BRI
)22、23を有している。
これらアドレスレジスタ21〜23はアドレス線AO、
Alのアドレス信号により選択され、レジスタセット信
号RSが「1」の状態でデータ線DO〜D7のデータ書
き込みが行われる。また、アドレス線A15のアドレス
信号、データ信号DTがともに「1」で、フェッチ信号
FEが「1」のタイミングでアドレスレジスタ21の読
み出しが行われ、同様にしてアドレス線Al5のアドレ
ス信号およびデータ信号DTがともにrOJでフエツチ
信号FEが「1」のタイミングでアドレスレジスタ22
の読み出し、アドレスiAl5のアドレス信号が「1」
、データ信号DTがrOJで、フエッチ信号FEが「1
」のタイミングでアドレスレジスタ23の読み出が行わ
れるようになっている。
Alのアドレス信号により選択され、レジスタセット信
号RSが「1」の状態でデータ線DO〜D7のデータ書
き込みが行われる。また、アドレス線A15のアドレス
信号、データ信号DTがともに「1」で、フェッチ信号
FEが「1」のタイミングでアドレスレジスタ21の読
み出しが行われ、同様にしてアドレス線Al5のアドレ
ス信号およびデータ信号DTがともにrOJでフエツチ
信号FEが「1」のタイミングでアドレスレジスタ22
の読み出し、アドレスiAl5のアドレス信号が「1」
、データ信号DTがrOJで、フエッチ信号FEが「1
」のタイミングでアドレスレジスタ23の読み出が行わ
れるようになっている。
ここで、アドレスレジスタ21〜23は第6図に示すよ
うにDO−D7の1バイトより構成され、このうちのD
o−D4をメモリブロック指定用バイト、DB、D7を
メモリ指定用バイトとしている。ここでのブロック指定
用バイトDO−D4の内容は拡張アドレス信号としてア
ドレス線A15〜Al9に出力され、上記アドレス線A
O〜Al4のアドレス信号とともに上記メモリ3〜6に
与えられる。また、メモリ指定用バイトD6、D7の内
容は、第7図に示す組み合わせによりEO−E3のイネ
ーブル信号として出力され、上記メモリ3〜6に与えら
れる。ここでは、イネープル信号EOはメモリ3、イネ
ーブル信号Elはメモリ4、イネーブル信号E2はメモ
リ5、イネーブル信号E3はメモリ6に与えられるもの
である。
うにDO−D7の1バイトより構成され、このうちのD
o−D4をメモリブロック指定用バイト、DB、D7を
メモリ指定用バイトとしている。ここでのブロック指定
用バイトDO−D4の内容は拡張アドレス信号としてア
ドレス線A15〜Al9に出力され、上記アドレス線A
O〜Al4のアドレス信号とともに上記メモリ3〜6に
与えられる。また、メモリ指定用バイトD6、D7の内
容は、第7図に示す組み合わせによりEO−E3のイネ
ーブル信号として出力され、上記メモリ3〜6に与えら
れる。ここでは、イネープル信号EOはメモリ3、イネ
ーブル信号Elはメモリ4、イネーブル信号E2はメモ
リ5、イネーブル信号E3はメモリ6に与えられるもの
である。
メモリ3〜6はIMバイトの空間を有するもので、それ
ぞれの空間を32Kバイトずつ32のブロックBLO−
BL31に分割している。
ぞれの空間を32Kバイトずつ32のブロックBLO−
BL31に分割している。
第2図は、メモリマッパ2とメモリ3〜6の接続関係を
示すものである。この場合、論理アドレス信号AO〜A
l5のうち、アドレス信号Al5をメモリマッパ2のレ
ジスタ選択部24に与え、アドレスレジスタ21〜23
のうちから対応するものを1つ選択指定し、これの内容
を取り出す。この場合、選択指定されたアドレスレジス
タ21〜23の内容のメモリ指定用バイトD6、D7に
応じたイネーブル信号EO−E3によりメモリ3〜6の
うちの1つが指定され、ブロック指定用パイ}DO〜D
4に応じたアドレス信号A15〜Al9により指定され
たメモリのブロックが指定され、このアドレス信号AI
5〜Al9とともに20ビット実アドレスを構成する論
理アドレス信号AO〜Al4により指定されたメモリブ
ロックのアドレスをアクセスするようになる。
示すものである。この場合、論理アドレス信号AO〜A
l5のうち、アドレス信号Al5をメモリマッパ2のレ
ジスタ選択部24に与え、アドレスレジスタ21〜23
のうちから対応するものを1つ選択指定し、これの内容
を取り出す。この場合、選択指定されたアドレスレジス
タ21〜23の内容のメモリ指定用バイトD6、D7に
応じたイネーブル信号EO−E3によりメモリ3〜6の
うちの1つが指定され、ブロック指定用パイ}DO〜D
4に応じたアドレス信号A15〜Al9により指定され
たメモリのブロックが指定され、このアドレス信号AI
5〜Al9とともに20ビット実アドレスを構成する論
理アドレス信号AO〜Al4により指定されたメモリブ
ロックのアドレスをアクセスするようになる。
第3図は、メモリマッパ2の具体的回路構或を示すもの
である。この場合、プログラムアドレスレジスタ21と
データアドレスレジスタ22、23には、CPUIより
データ線DO−D7が接続されるとともに、レジスタセ
ット信号RSが与えられる。また、CPUIよりアドレ
ス線AO1Alが上記レジスタ選択部24を構成するデ
コーダ25に接続される。デコーダ25はアドレス線A
O 、Atのアドレス信号AO 、AIの組み合わせに
よりアドレスレジスタ21〜23を選択指定するもので
ある。そして、アドレスレジスタ21〜23の出力はマ
ルチプレクサ26に与えられる。
である。この場合、プログラムアドレスレジスタ21と
データアドレスレジスタ22、23には、CPUIより
データ線DO−D7が接続されるとともに、レジスタセ
ット信号RSが与えられる。また、CPUIよりアドレ
ス線AO1Alが上記レジスタ選択部24を構成するデ
コーダ25に接続される。デコーダ25はアドレス線A
O 、Atのアドレス信号AO 、AIの組み合わせに
よりアドレスレジスタ21〜23を選択指定するもので
ある。そして、アドレスレジスタ21〜23の出力はマ
ルチプレクサ26に与えられる。
マルチプレクサ26にはCPUIのアドレス線A15よ
りアドレス信号Al5が与えられるとともに、データ信
号DT,フェッチ信号FEが与えられる。
りアドレス信号Al5が与えられるとともに、データ信
号DT,フェッチ信号FEが与えられる。
また、アドレス線Al5のアドレス信号A15はインバ
ータ27を介して、またデータ信号DTは直接アドレス
発生部28に与えられる。
ータ27を介して、またデータ信号DTは直接アドレス
発生部28に与えられる。
ここで、マルチプレクサ26は、第4図に示すようにア
ドレス信号Al5およびデータ信号DTがともに「1」
によりレジスタ番地「2」を指示し、プログラムアドレ
ス用レジスタ21を指定するとともに、フエツチ信号F
Eが「1」により同レジスタ21のデータを読み出し、
また、アドレス信号Al5およびデータ信号DTがとも
に「o」でレジスタ番地「0」を指示し、データアドレ
ス用レジスタ22を指定するとともに、フz 7チ信号
FEが「1」により同レジスタ22のデータを読み出し
、アドレス信号Al5が「1」、データ信号DTが「0
」で、レジスタ番地「1」を指示し、データアドレスレ
ジスタ23を指定するとともに、フエツチ信号FEが「
1」により同アドレスレジスタ23のデータを読み出し
、さらに、アドレス信号Al5が「0」、データ信号D
TがrlJで、アドレスレジスタ番地無しを指示するよ
うにしている。すなわち、アドレス信号Al5およびデ
ータ信号DTの出力状態によりアドレスレジスタが選択
指定される。そして、マルチブレクサ26より出力され
る各アドレスレジスタ21〜23のメモリブロック指定
用バイトDO−D7は拡張アドレス信号としてアドレス
線A15〜Al9に出力され、メモリ指定用バイトDB
、D7はメモリ指定用信号としてデコーダ2つに与えら
れる。デコーダ2つは第7図に示すようにメモリ指定用
バイトDB 、D7の内容の組み合わせによりEO〜E
3のイネーブル信号を出力するようにしている。
ドレス信号Al5およびデータ信号DTがともに「1」
によりレジスタ番地「2」を指示し、プログラムアドレ
ス用レジスタ21を指定するとともに、フエツチ信号F
Eが「1」により同レジスタ21のデータを読み出し、
また、アドレス信号Al5およびデータ信号DTがとも
に「o」でレジスタ番地「0」を指示し、データアドレ
ス用レジスタ22を指定するとともに、フz 7チ信号
FEが「1」により同レジスタ22のデータを読み出し
、アドレス信号Al5が「1」、データ信号DTが「0
」で、レジスタ番地「1」を指示し、データアドレスレ
ジスタ23を指定するとともに、フエツチ信号FEが「
1」により同アドレスレジスタ23のデータを読み出し
、さらに、アドレス信号Al5が「0」、データ信号D
TがrlJで、アドレスレジスタ番地無しを指示するよ
うにしている。すなわち、アドレス信号Al5およびデ
ータ信号DTの出力状態によりアドレスレジスタが選択
指定される。そして、マルチブレクサ26より出力され
る各アドレスレジスタ21〜23のメモリブロック指定
用バイトDO−D7は拡張アドレス信号としてアドレス
線A15〜Al9に出力され、メモリ指定用バイトDB
、D7はメモリ指定用信号としてデコーダ2つに与えら
れる。デコーダ2つは第7図に示すようにメモリ指定用
バイトDB 、D7の内容の組み合わせによりEO〜E
3のイネーブル信号を出力するようにしている。
一方、アドレス発生部28はアドレス線Al5のアドレ
ス信号が「0」、データ信号DTが「1」で出力を発生
するもので、ここではオア回路30を介してメモリ3を
指定するイネーブル信号EOと、ブロック指定用信号と
してアドレス線A15〜Al9に対してro O O
O OJを出力するようにしている。
ス信号が「0」、データ信号DTが「1」で出力を発生
するもので、ここではオア回路30を介してメモリ3を
指定するイネーブル信号EOと、ブロック指定用信号と
してアドレス線A15〜Al9に対してro O O
O OJを出力するようにしている。
しかして、このような構或において、まず、メモリマッ
パ2のプログラムアドレスレジスタ(IBR)21にデ
ータを書き込む場合を説明する。この場合、第5図(a
)に示すようにCPUIのアドレス線AO−Al5のう
ちアドレス線AO 、Alのアドレス信号AO 、Al
がメモリマッパ2に送られる。これらアドレス信号AO
、Atはメモリマッパ2のデコーダ25に与えられ、こ
の時のアドレス信号AO、Alの組み合わせによりレジ
スタ21が選択される。この状態で、データ書き込み信
号WRとともに、レジスタセット信号RSが与えられる
と、CPUIよりデータ線DO〜D7のデータDO〜D
7がレジスタ21に書き込まれる。
パ2のプログラムアドレスレジスタ(IBR)21にデ
ータを書き込む場合を説明する。この場合、第5図(a
)に示すようにCPUIのアドレス線AO−Al5のう
ちアドレス線AO 、Alのアドレス信号AO 、Al
がメモリマッパ2に送られる。これらアドレス信号AO
、Atはメモリマッパ2のデコーダ25に与えられ、こ
の時のアドレス信号AO、Alの組み合わせによりレジ
スタ21が選択される。この状態で、データ書き込み信
号WRとともに、レジスタセット信号RSが与えられる
と、CPUIよりデータ線DO〜D7のデータDO〜D
7がレジスタ21に書き込まれる。
一方、メモリマッパ2のデータアドレス用レジスタ(B
RO)(BRI)22、23にデータを書き込む場合も
上述と同様で、アドレス線AO、A1のアドレス信号A
O 、AIにより、レジスタ22、23が選択指定され
た状態で、CPUIのデータ線DO〜D7を介してデー
タDO〜D7が書き込まれるようになる。
RO)(BRI)22、23にデータを書き込む場合も
上述と同様で、アドレス線AO、A1のアドレス信号A
O 、AIにより、レジスタ22、23が選択指定され
た状態で、CPUIのデータ線DO〜D7を介してデー
タDO〜D7が書き込まれるようになる。
次に、CPUIによりプログラムを読み込む場合を説明
する。この場合、CPUIは第8図(a)に示すように
アドレス空間を32KバイトずつのバンクBANKO、
BANKIに構成されているが、oooo〜7FFFま
でのバンクBANKOでは、アドレス線Al5のアドレ
ス信号が「0」、データ信号DTが「1」となる。する
と、アドレス発生部28よりオア回路30を介してイネ
ーブル信号EOが出力されるとともに、ブロック指定用
の拡張アドレス信号としてアドレス線AI5〜Al9に
対してr0 0 0 0 0Jが出力される。これによ
り、メモリ3が指定されるとともに、バンクBANKO
の論理アドレスAO〜Al4と拡張アドレスA15〜A
19からなる実アドレスが出力されることから、拡張ア
ドレス信号によりメモリ3のブロックBLIが無条件で
指定されるようになり、このブロックBLIに対してプ
ログラムの読み込みが実行されることになる。
する。この場合、CPUIは第8図(a)に示すように
アドレス空間を32KバイトずつのバンクBANKO、
BANKIに構成されているが、oooo〜7FFFま
でのバンクBANKOでは、アドレス線Al5のアドレ
ス信号が「0」、データ信号DTが「1」となる。する
と、アドレス発生部28よりオア回路30を介してイネ
ーブル信号EOが出力されるとともに、ブロック指定用
の拡張アドレス信号としてアドレス線AI5〜Al9に
対してr0 0 0 0 0Jが出力される。これによ
り、メモリ3が指定されるとともに、バンクBANKO
の論理アドレスAO〜Al4と拡張アドレスA15〜A
19からなる実アドレスが出力されることから、拡張ア
ドレス信号によりメモリ3のブロックBLIが無条件で
指定されるようになり、このブロックBLIに対してプ
ログラムの読み込みが実行されることになる。
次に、8000〜FFFFのバンクBANK 1では、
第5図(b)に示すようにアドレス線A15のアドレス
信号およびデータ信号DTがともに「1」となり、プロ
グラムアドレスレジスタ21が指定される。そして、こ
の状態でフェッチ信号FEが「1」になると、同レジス
タ21のデータが読み出される。この場合、レジスタ2
1のメモリブロック指定バイトDO〜D7の内容は拡張
アドレス信号としてアドレス線AI5〜Al9に出力さ
れ、メモリ指定バイトDB、D7の内容はデコーダ2つ
に与えられるが、ここで、DB − rOJ、D7 −
rOJとすれば、イネーブル信号EOが出力され、メ
モリ3が指定される。また、アドレスaA15〜Al9
に対して出力されたブロック指定用信号はバンクBAN
KIの論理アドレスAO〜Al4とともに、実アドレス
として出力されるが、ここで、拡張アドレス信号により
ブロックBL20が指定されたとすれば、メモリ3のブ
ロックBL20に対してプログラムの読み込みが実行さ
れることになる。つまり、この場合は、0000〜7F
FFのバンクBANKOについては、メモリ3のブロッ
クBLIに固定的にプログラムの読み込みが実行され、
これに続けて8000−FFFFのBANKIでは、任
意のブロック、ここではブロックBL20についてプロ
グラムの読み込みが実行される。この状態を第8図(b
)に示している。
第5図(b)に示すようにアドレス線A15のアドレス
信号およびデータ信号DTがともに「1」となり、プロ
グラムアドレスレジスタ21が指定される。そして、こ
の状態でフェッチ信号FEが「1」になると、同レジス
タ21のデータが読み出される。この場合、レジスタ2
1のメモリブロック指定バイトDO〜D7の内容は拡張
アドレス信号としてアドレス線AI5〜Al9に出力さ
れ、メモリ指定バイトDB、D7の内容はデコーダ2つ
に与えられるが、ここで、DB − rOJ、D7 −
rOJとすれば、イネーブル信号EOが出力され、メ
モリ3が指定される。また、アドレスaA15〜Al9
に対して出力されたブロック指定用信号はバンクBAN
KIの論理アドレスAO〜Al4とともに、実アドレス
として出力されるが、ここで、拡張アドレス信号により
ブロックBL20が指定されたとすれば、メモリ3のブ
ロックBL20に対してプログラムの読み込みが実行さ
れることになる。つまり、この場合は、0000〜7F
FFのバンクBANKOについては、メモリ3のブロッ
クBLIに固定的にプログラムの読み込みが実行され、
これに続けて8000−FFFFのBANKIでは、任
意のブロック、ここではブロックBL20についてプロ
グラムの読み込みが実行される。この状態を第8図(b
)に示している。
次に、CPUIのプログラムがデータを参照する場合を
説明する。この場合、CPU1の0000〜FFFFの
バンクBANKOでは、第5図(C)に示すようにアド
レス線Al5のアドレス信号およびデータ信号DTがと
もに「O」となり、データアドレスレジスタ22が指定
される。
説明する。この場合、CPU1の0000〜FFFFの
バンクBANKOでは、第5図(C)に示すようにアド
レス線Al5のアドレス信号およびデータ信号DTがと
もに「O」となり、データアドレスレジスタ22が指定
される。
そして、この状態でフェッチ信号FEが「1」になると
、同レジスタ22のデータが読み出される。
、同レジスタ22のデータが読み出される。
この場合、レジスタ22のメモリブロック指定バイトD
O〜D7の内容はメモリブロック指定信号としてアドレ
ス線Al5〜Al9に出力され、メモリ指定バイトDB
、D7の内容はデコーダ29に与えられるが、ここで
、DB − rlJ 、D? − I’l」とすれば、
イネーブル信号E1が出力され、メモリ4が指定される
。また、アドレス線A15〜A19に対して出力された
ブロック指定用信号はバンクBANKOの論理アドレス
AO〜Al4とともに、実アドレスとして出力されるが
、ここで、拡張アドレス信号によりブロックBL2が指
定されたとすれば、メモリ4のブロックBL2に対して
データ参照が実行されることになる。
O〜D7の内容はメモリブロック指定信号としてアドレ
ス線Al5〜Al9に出力され、メモリ指定バイトDB
、D7の内容はデコーダ29に与えられるが、ここで
、DB − rlJ 、D? − I’l」とすれば、
イネーブル信号E1が出力され、メモリ4が指定される
。また、アドレス線A15〜A19に対して出力された
ブロック指定用信号はバンクBANKOの論理アドレス
AO〜Al4とともに、実アドレスとして出力されるが
、ここで、拡張アドレス信号によりブロックBL2が指
定されたとすれば、メモリ4のブロックBL2に対して
データ参照が実行されることになる。
次に、8000〜FFFFのバンクBANK 1では、
第5図(C)に示すようにアドレス線A15のアドレス
信号が「1」およびデータ信号DTが「1」となり、プ
ログラムアドレスレジスタ23が指定される。そして、
この状態でフエツチ信号FEが「1」になると、同レジ
スタ23のデータが読み出される。この場合、レジスタ
23のブロック指定バイトDO〜D7の内容はメモリブ
ロック指定用信号としてアドレス線AI5〜AI9に出
力され、メモリ指定バイトD6、D7の内容はデコーダ
29に与えられるが、ここで、DB − rlJ、D7
− rlJとすれば、イネープル信号E3が出力され
、メモリ6が指定される。また、アドレス線A15〜A
l9に対して出力されたブロック指定用の拡張アドレス
信号はバンクBANK 1の論理アドレスAO〜Al4
とともに、実アドレスとして出力されるが、ここで、拡
張アドレス信号によりブロックBL21が指定されたと
すれば、メモリ6のブロックBL21に対してデータ参
照が実行されることになる。つまり、この場合は,、0
000〜7FFFのバンクBANKOについては、メモ
リ4のブロックBL2に対してデータ参照が実行され、
これに続けて8000〜FFFFのバンクBANK1で
は、メモリ6のブロックBL21についてデータ参照が
実行される。この状態を第9図(a)(b)に示してい
る。
第5図(C)に示すようにアドレス線A15のアドレス
信号が「1」およびデータ信号DTが「1」となり、プ
ログラムアドレスレジスタ23が指定される。そして、
この状態でフエツチ信号FEが「1」になると、同レジ
スタ23のデータが読み出される。この場合、レジスタ
23のブロック指定バイトDO〜D7の内容はメモリブ
ロック指定用信号としてアドレス線AI5〜AI9に出
力され、メモリ指定バイトD6、D7の内容はデコーダ
29に与えられるが、ここで、DB − rlJ、D7
− rlJとすれば、イネープル信号E3が出力され
、メモリ6が指定される。また、アドレス線A15〜A
l9に対して出力されたブロック指定用の拡張アドレス
信号はバンクBANK 1の論理アドレスAO〜Al4
とともに、実アドレスとして出力されるが、ここで、拡
張アドレス信号によりブロックBL21が指定されたと
すれば、メモリ6のブロックBL21に対してデータ参
照が実行されることになる。つまり、この場合は,、0
000〜7FFFのバンクBANKOについては、メモ
リ4のブロックBL2に対してデータ参照が実行され、
これに続けて8000〜FFFFのバンクBANK1で
は、メモリ6のブロックBL21についてデータ参照が
実行される。この状態を第9図(a)(b)に示してい
る。
したがって、このようにすればCPUIの論理アドレス
信号に対してメモリマッパにより拡張アドレス信号を付
加可能にしたので、CPUIにより処理可能なアドレス
空間以上の大きなアドレス空間を取り扱うことができる
。また、CPUIの処理可能な空間をバンクBANKO
,BANKIに2分割し、それぞれのバンクBANKO
,BANKIに対してメモリ3〜6の任意のメモリブロ
ックBLO〜BL31を割り当てることができるので、
連続した空間は勿論、連続していない空間も、あたかも
連続しているようにアクセスすることができるようにな
り、メモリ空間のアクセスの融通性を高めることができ
るとともに、プログラム設計上での制約も受けず、簡単
な設計を実現できる。
信号に対してメモリマッパにより拡張アドレス信号を付
加可能にしたので、CPUIにより処理可能なアドレス
空間以上の大きなアドレス空間を取り扱うことができる
。また、CPUIの処理可能な空間をバンクBANKO
,BANKIに2分割し、それぞれのバンクBANKO
,BANKIに対してメモリ3〜6の任意のメモリブロ
ックBLO〜BL31を割り当てることができるので、
連続した空間は勿論、連続していない空間も、あたかも
連続しているようにアクセスすることができるようにな
り、メモリ空間のアクセスの融通性を高めることができ
るとともに、プログラム設計上での制約も受けず、簡単
な設計を実現できる。
なお、本発明は上記実施例にのみ限定されず、要旨を変
更しない範囲で適宜変形して実施できる。
更しない範囲で適宜変形して実施できる。
例えば上述の実施例では、CPUIがプログラムを読み
込む場合、CPUIの0000〜7FFFのバンクBA
NKOでは、アドレス発生部28の出力によりメモリ3
のブロックBLIを無条件で指定するようにしたが、プ
ログラムアドレス用レジスタ21に相当するレジスタを
2個設けて同じような動作をおこなわせるようにしても
よい。
込む場合、CPUIの0000〜7FFFのバンクBA
NKOでは、アドレス発生部28の出力によりメモリ3
のブロックBLIを無条件で指定するようにしたが、プ
ログラムアドレス用レジスタ21に相当するレジスタを
2個設けて同じような動作をおこなわせるようにしても
よい。
[発明の効果]
本発明によれば、所定容量単位でブロック化された複数
ブロックを持つメモリのプログラム領域またはデータ領
域の各ブロックアドレスをアドレスレジスタを選択指定
することでアクセスできるので、CPUで処理可能なア
ドレス空間以上の大きなアドレス空間を取り扱うことが
できる。また、アドレスレジスタを2分割されたCPU
のアドレス空間に対応して選択指定するとともに、これ
らアドレスレジスタにより指定されたブロックアドレス
を連続してアクセスすることもできるので、、連続した
空間は勿論、連続していない空間も、あたかも連続して
いるようにアクセスすることができ、メモリ空間のアク
セスの融通性を高めることができるとともに、プログラ
ム設計を簡単なものにできる。
ブロックを持つメモリのプログラム領域またはデータ領
域の各ブロックアドレスをアドレスレジスタを選択指定
することでアクセスできるので、CPUで処理可能なア
ドレス空間以上の大きなアドレス空間を取り扱うことが
できる。また、アドレスレジスタを2分割されたCPU
のアドレス空間に対応して選択指定するとともに、これ
らアドレスレジスタにより指定されたブロックアドレス
を連続してアクセスすることもできるので、、連続した
空間は勿論、連続していない空間も、あたかも連続して
いるようにアクセスすることができ、メモリ空間のアク
セスの融通性を高めることができるとともに、プログラ
ム設計を簡単なものにできる。
第1図は本発明の一実施例の回路構成を示すブロック図
、第2図は同実施例のメモリマッパとメモリの接続関係
を説明するための図、第3図は同実施例に用いられるメ
モリマッパの回路構成図、第4図は同実施例のアドレス
レジスタの選択指定を説明するための図、第5図は同実
施例の動作を第7図はアドレスレジスタのメモリ指定バ
イトの内容とイネーブル信号の関係を示す図、第8図お
よび第9図は同実施例の動作を説明するための図である
。 1・・・CPU,2・・・メモリマッパ、21・・・プ
ログラムアドレスレジスタ、22、23・・・データア
ドレスレジスタ、25、29・・・デコーダ、26・・
・マルチプレクサ、28・・・アドレス発生部、3〜6
・・・メモリ。
、第2図は同実施例のメモリマッパとメモリの接続関係
を説明するための図、第3図は同実施例に用いられるメ
モリマッパの回路構成図、第4図は同実施例のアドレス
レジスタの選択指定を説明するための図、第5図は同実
施例の動作を第7図はアドレスレジスタのメモリ指定バ
イトの内容とイネーブル信号の関係を示す図、第8図お
よび第9図は同実施例の動作を説明するための図である
。 1・・・CPU,2・・・メモリマッパ、21・・・プ
ログラムアドレスレジスタ、22、23・・・データア
ドレスレジスタ、25、29・・・デコーダ、26・・
・マルチプレクサ、28・・・アドレス発生部、3〜6
・・・メモリ。
Claims (1)
- 所定容量単位でブロック化された複数ブロックを持つメ
モリのプログラム領域またはデータ領域のブロックアド
レスをアクセスするメモリマッパ装置において、少なく
とも2分割されたCPUのアドレス空間により直接アク
セスされる上記メモリのプログラム領域またはデータ領
域のブロックアドレスを指定する複数のアドレスレジス
タと、メモリアクセス状態により上記アドレスレジスタ
のいずれかを選択指定するレジスタ選択手段と、このレ
ジスタ選択手段により選択指定されているアドレスレジ
スタの内容を任意に書き替える手段とを具備したことを
特徴とするメモリマッパ装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP15568689A JPH0322052A (ja) | 1989-06-20 | 1989-06-20 | メモリマッパ装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP15568689A JPH0322052A (ja) | 1989-06-20 | 1989-06-20 | メモリマッパ装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0322052A true JPH0322052A (ja) | 1991-01-30 |
Family
ID=15611340
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP15568689A Pending JPH0322052A (ja) | 1989-06-20 | 1989-06-20 | メモリマッパ装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0322052A (ja) |
-
1989
- 1989-06-20 JP JP15568689A patent/JPH0322052A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6252637A (ja) | デジタルプロセツサ制御 | |
| JPH0248931B2 (ja) | ||
| JPS5868286A (ja) | キヤツシユメモリおよびその作動方法 | |
| JPS5844263B2 (ja) | 記憶制御回路 | |
| US7124261B2 (en) | Access to bit values within data words stored in a memory | |
| JPH0322052A (ja) | メモリマッパ装置 | |
| JPS5886651A (ja) | ワ−ド編制メモリのバイト参照方法及びメモリ・システム | |
| US5933856A (en) | System and method for processing of memory data and communication system comprising such system | |
| JPS63244152A (ja) | 拡張記憶装置アクセス制御装置 | |
| JPS61214039A (ja) | キヤツシユメモリ | |
| JP2692180B2 (ja) | マイクロコンピュータ | |
| JPS62151955A (ja) | メモリアドレツシング方式 | |
| JPH0376504B2 (ja) | ||
| JPH02226447A (ja) | コンピユータ・システムおよびその記憶装置アクセス方法 | |
| JPS603656B2 (ja) | 計算機のメモリ拡張方式 | |
| JPH0232434A (ja) | メモリアクセス装置 | |
| JPS59106047A (ja) | マイクロコンピユ−タ | |
| JPS63237143A (ja) | プログラマブルコントロ−ラ | |
| JPH0267654A (ja) | メモリシステム | |
| JPS635432A (ja) | マイクロプロセツサ | |
| JPS6243746A (ja) | タグ付デ−タ制御方式 | |
| JPH01108652A (ja) | アドレス変換方式 | |
| JPS6340954A (ja) | 記憶装置 | |
| JPS6180331A (ja) | 可変長デ−タ処理装置 | |
| JPH0154729B2 (ja) |