JPH05241951A - メモリ制御装置 - Google Patents
メモリ制御装置Info
- Publication number
- JPH05241951A JPH05241951A JP4075285A JP7528592A JPH05241951A JP H05241951 A JPH05241951 A JP H05241951A JP 4075285 A JP4075285 A JP 4075285A JP 7528592 A JP7528592 A JP 7528592A JP H05241951 A JPH05241951 A JP H05241951A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- bank
- extended
- dram
- expansion
- 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
Landscapes
- Dram (AREA)
Abstract
(57)【要約】
【目的】 異種類のメモリと隣接するようなメモリで構
成される場合において、該メモリをアクセスする際に生
じるトラブルを回避することができるメモリ制御装置を
提供する。 【構成】 選択指示手段(CPU)20により、拡張メ
モリバンク(Xバンク0〜2)24a〜24cに対して
のメモリの有無及びメモリのサイズを含むステータス情
報が検出されて、該拡張メモリバンク24a〜24cの
使用可能及び使用禁止のいずれかが選択指示され、前記
選択指示手段によって使用可能と選択指示された拡張メ
モリが拡張メモリ制御手段(拡張DRAM制御回路)に
よりアクセス可能となる。
成される場合において、該メモリをアクセスする際に生
じるトラブルを回避することができるメモリ制御装置を
提供する。 【構成】 選択指示手段(CPU)20により、拡張メ
モリバンク(Xバンク0〜2)24a〜24cに対して
のメモリの有無及びメモリのサイズを含むステータス情
報が検出されて、該拡張メモリバンク24a〜24cの
使用可能及び使用禁止のいずれかが選択指示され、前記
選択指示手段によって使用可能と選択指示された拡張メ
モリが拡張メモリ制御手段(拡張DRAM制御回路)に
よりアクセス可能となる。
Description
【0001】
【産業上の利用分野】本発明は、レーザプリンタのコン
トローラやパーソナルコンピュータ等に具備されるダイ
ナミックランダムアクセスメモリ(以下、DRAMと称
す)等からなるメモリ手段を制御するメモリ制御装置に
関する。
トローラやパーソナルコンピュータ等に具備されるダイ
ナミックランダムアクセスメモリ(以下、DRAMと称
す)等からなるメモリ手段を制御するメモリ制御装置に
関する。
【0002】
【従来の技術】近年の半導体技術の進展は、DRAMを
はじめとするメモリの大集積化を可能にし、該メモリの
ビット単価を低減させてきた。これに伴って、レーザプ
リンタのコントローラやパーソナルコンピュータにおい
ても一般的に数MB(メガバイト)〜10MB程度の容
量のDRAMを有するようになった。
はじめとするメモリの大集積化を可能にし、該メモリの
ビット単価を低減させてきた。これに伴って、レーザプ
リンタのコントローラやパーソナルコンピュータにおい
ても一般的に数MB(メガバイト)〜10MB程度の容
量のDRAMを有するようになった。
【0003】このようにDRAMが広く普及した背景に
は、DRAMの記憶セル自体の小型化とパッケージの小
型化が大きく影響を及ぼした。
は、DRAMの記憶セル自体の小型化とパッケージの小
型化が大きく影響を及ぼした。
【0004】即ち、スタティックランダムアクセスメモ
リ(SRAM)では、1ビットの記憶セルに5〜6個の
トランジスタを必要とするのに対して、DRAMの場合
は、1ビットのデータを記憶保持するために等価的に1
個のトランジスタと1個のコンデンサで構成されている
ので、記憶セル自体の小型化を図ることができ、しかも
定期的にこの記憶セルに対する読み出しと書き込みの動
作(リフレッシュ制御という)を行なうことにより、長
時間のデータ保持を可能にしている。また、DRAMで
は、アドレスラインの上位をロー(Row)アドレス、
下位をカラム(Column)アドレスとに分け多重化
させることにより、パッケージのピン数を削減し小型化
を図っている。
リ(SRAM)では、1ビットの記憶セルに5〜6個の
トランジスタを必要とするのに対して、DRAMの場合
は、1ビットのデータを記憶保持するために等価的に1
個のトランジスタと1個のコンデンサで構成されている
ので、記憶セル自体の小型化を図ることができ、しかも
定期的にこの記憶セルに対する読み出しと書き込みの動
作(リフレッシュ制御という)を行なうことにより、長
時間のデータ保持を可能にしている。また、DRAMで
は、アドレスラインの上位をロー(Row)アドレス、
下位をカラム(Column)アドレスとに分け多重化
させることにより、パッケージのピン数を削減し小型化
を図っている。
【0005】DRAMをデータの記憶手段として用いる
場合、上記の2つの理由からリフレッシュ制御とローア
ドレスとカラムアドレスの制御によるリード(読み出
し)/ライト(書き込み)制御を行なうための回路が、
通常CPU(中央演算処理装置)とDRAMとの間に設
けられる。また、DRAMの多くには高速なリード/ラ
イト動作を可能にする高速ページモード等もサポートし
ている。
場合、上記の2つの理由からリフレッシュ制御とローア
ドレスとカラムアドレスの制御によるリード(読み出
し)/ライト(書き込み)制御を行なうための回路が、
通常CPU(中央演算処理装置)とDRAMとの間に設
けられる。また、DRAMの多くには高速なリード/ラ
イト動作を可能にする高速ページモード等もサポートし
ている。
【0006】DRAMやCPUを含むシステム回路の設
計においては、上述したようにDRAM部の制御回路が
複雑になるという理由で、CPUとDRAM部との間に
介在してDRAM部を一括して制御するDRAMコント
ローラや、該DRAMコントローラを直接CPU内部に
取り込んだDRAMコントローラ内蔵型CPUが製品化
されるようになった。
計においては、上述したようにDRAM部の制御回路が
複雑になるという理由で、CPUとDRAM部との間に
介在してDRAM部を一括して制御するDRAMコント
ローラや、該DRAMコントローラを直接CPU内部に
取り込んだDRAMコントローラ内蔵型CPUが製品化
されるようになった。
【0007】図14は、CPUとDRAMとの間にDR
AMコントローラを用いて構成した回路を示している。
同図においてCPU1は、メモリアクセスを実行する際
アドレスバス(Address Bus)上にメモリア
ドレスを出力し、該メモリアドレスが有効であることを
示すアドレスアサート信号AS、リード信号RD、もし
くはライト信号WRをそれぞれ出力する。
AMコントローラを用いて構成した回路を示している。
同図においてCPU1は、メモリアクセスを実行する際
アドレスバス(Address Bus)上にメモリア
ドレスを出力し、該メモリアドレスが有効であることを
示すアドレスアサート信号AS、リード信号RD、もし
くはライト信号WRをそれぞれ出力する。
【0008】DRAMコントローラ2は、CPU1から
の上述した各信号AS,RD,WRを入力して多重化ア
ドレス信号MA<n..0>として、ローアドレスとカ
ラムアドレスとを分離して出力すると共に、ローアドレ
スをストローブする信号RAS<m..0>とカラムア
ドレスをストローブする信号CAS<m..0>、更に
DRAMに対してリード/ライトを指示する信号OE,
WEをそれぞれ生成する。
の上述した各信号AS,RD,WRを入力して多重化ア
ドレス信号MA<n..0>として、ローアドレスとカ
ラムアドレスとを分離して出力すると共に、ローアドレ
スをストローブする信号RAS<m..0>とカラムア
ドレスをストローブする信号CAS<m..0>、更に
DRAMに対してリード/ライトを指示する信号OE,
WEをそれぞれ生成する。
【0009】尚、通常DRAMコントローラ2では、D
RAMで構成するメモリ空間を複数のバンク(Ban
k)、即ち、DRAMバンク(0)3a,DRAMバン
ク(1)3b,DRAMバンク(2)3c,…に分け
て、それぞれ独立して制御できるようにしたものが多
く、CPU1より出力される上位アドレスから各々のD
RAMバンクを選択してアクセスする信号RAS<
m..0>,CAS<m..0>(<>内の数字はバン
クの番号を示す)を生成する。CPU1とDRAMバン
ク(0)〜(2)3a〜3cとの間はリード或はライト
するデータを転送するためのデータバス(Data B
us)のみが直接接続されている。
RAMで構成するメモリ空間を複数のバンク(Ban
k)、即ち、DRAMバンク(0)3a,DRAMバン
ク(1)3b,DRAMバンク(2)3c,…に分け
て、それぞれ独立して制御できるようにしたものが多
く、CPU1より出力される上位アドレスから各々のD
RAMバンクを選択してアクセスする信号RAS<
m..0>,CAS<m..0>(<>内の数字はバン
クの番号を示す)を生成する。CPU1とDRAMバン
ク(0)〜(2)3a〜3cとの間はリード或はライト
するデータを転送するためのデータバス(Data B
us)のみが直接接続されている。
【0010】また図15は、DRAMコントローラ2が
CPU1の中に含まれた場合の回路構成を示すものであ
り、DRAMバンク(0)〜(2)3a〜3cの構成及
びそのアクセス制御は上述した図14と同様である。
CPU1の中に含まれた場合の回路構成を示すものであ
り、DRAMバンク(0)〜(2)3a〜3cの構成及
びそのアクセス制御は上述した図14と同様である。
【0011】次に、図16は図14及び図15に示すD
RAMコントローラ2の構成を示すブロック図である。
同図において、4は上位アドレスシフト部であり、DR
AMチップの種類を示す信号RAMtypeによりアド
レスA<N..0>からロー(上位)アドレスフィール
ドを決定する。ここで、1Mビット(256kword
×4ビット)DRAMは、ロー/カラム(下位)アドレ
スフィールドが各々9ビットで、4Mビット(1Mワー
ド×4ビット)DRAMは、ロー/カラムアドレスフィ
ールドが各々10ビットで構成されているので、1Mビ
ットDRAMに比べて4MビットDRAMでは、ローア
ドレスフィールドが1ビットだけ上位アドレス方向にシ
フトすることになる。
RAMコントローラ2の構成を示すブロック図である。
同図において、4は上位アドレスシフト部であり、DR
AMチップの種類を示す信号RAMtypeによりアド
レスA<N..0>からロー(上位)アドレスフィール
ドを決定する。ここで、1Mビット(256kword
×4ビット)DRAMは、ロー/カラム(下位)アドレ
スフィールドが各々9ビットで、4Mビット(1Mワー
ド×4ビット)DRAMは、ロー/カラムアドレスフィ
ールドが各々10ビットで構成されているので、1Mビ
ットDRAMに比べて4MビットDRAMでは、ローア
ドレスフィールドが1ビットだけ上位アドレス方向にシ
フトすることになる。
【0012】図17において、(a)は1MビットDR
AMを使用する場合のアドレスバスの構成例を、(b)
は4MビットDRAMを使用する場合の構成例をそれぞ
れ示すものである。再び図16に戻って、5はバンク選
択部であり、A<N..0>信号の上位アドレスより、
(m+1)個のバンクのうちの1つを選択する信号ba
nk<m..0>、及び高速ページモードをサポートす
る場合は各バンクのローアドレスフィールドを比較する
信号comp<m..0>をそれぞれ出力する。
AMを使用する場合のアドレスバスの構成例を、(b)
は4MビットDRAMを使用する場合の構成例をそれぞ
れ示すものである。再び図16に戻って、5はバンク選
択部であり、A<N..0>信号の上位アドレスより、
(m+1)個のバンクのうちの1つを選択する信号ba
nk<m..0>、及び高速ページモードをサポートす
る場合は各バンクのローアドレスフィールドを比較する
信号comp<m..0>をそれぞれ出力する。
【0013】6はローアドレスとカラムアドレスとを多
重化して信号MA<n..0>として出力するMOX
(多重化装置)である。7はローアドレス保持・比較部
であり、高速ページモードの場合にCPUのDRAMへ
のアクセス毎に、且つ各バンク毎にローアドレスフィー
ルドを比較し、ローアドレスが更新されて保持されてい
るローアドレスの値と異なる場合には、信号row−m
iss<m..0>を生成してローミスサイクルを発生
させ、バス制御部8から出力される信号latch<
m..0>により、新規ローアドレスをラッチし保持す
る。バス制御部8はCPU1とDRAMとの間のデータ
転送及び高速ページモード(ローミスサイクルを含
む)、リフレッシュ等のタイミング制御を行なう。
重化して信号MA<n..0>として出力するMOX
(多重化装置)である。7はローアドレス保持・比較部
であり、高速ページモードの場合にCPUのDRAMへ
のアクセス毎に、且つ各バンク毎にローアドレスフィー
ルドを比較し、ローアドレスが更新されて保持されてい
るローアドレスの値と異なる場合には、信号row−m
iss<m..0>を生成してローミスサイクルを発生
させ、バス制御部8から出力される信号latch<
m..0>により、新規ローアドレスをラッチし保持す
る。バス制御部8はCPU1とDRAMとの間のデータ
転送及び高速ページモード(ローミスサイクルを含
む)、リフレッシュ等のタイミング制御を行なう。
【0014】9はシステムクロックCLKを分周してリ
フレッシュを発生させるための信号refreshを生
成するリフレッシュタイマである。10はRAS/CA
Sジェネレータであり、バス制御部8より出力されるタ
イミング信号state−controlとバンク選択
部5からの信号bank<m..0>とを入力して、各
DRAMバンクを直接制御する信号RAS<m..0
>,CAS(m..0>,OE及びWEをそれぞれ生成
する。
フレッシュを発生させるための信号refreshを生
成するリフレッシュタイマである。10はRAS/CA
Sジェネレータであり、バス制御部8より出力されるタ
イミング信号state−controlとバンク選択
部5からの信号bank<m..0>とを入力して、各
DRAMバンクを直接制御する信号RAS<m..0
>,CAS(m..0>,OE及びWEをそれぞれ生成
する。
【0015】
【発明が解決しようとする課題】従来、図14のCPU
1とは別体のDRAMコントローラ2や、図15のCP
U11に内蔵されたDRAMコントローラ2において
は、ピン数やコスト削減の関係からDRAMバンクの数
は2〜3個にするのが一般的であった。
1とは別体のDRAMコントローラ2や、図15のCP
U11に内蔵されたDRAMコントローラ2において
は、ピン数やコスト削減の関係からDRAMバンクの数
は2〜3個にするのが一般的であった。
【0016】例えば、図18に示すように、図15のD
RAMコントローラ2を内蔵したCPU1から出力され
る信号RAS0,CAS0により、標準DRAM(シス
テムを構成するのに最小限必要なメモリ)11を制御す
るのに対して、信号RAS1,CAS1はメモリ拡張用
に使用される。この場合、メモリの拡張をDRAMモジ
ュールやメモリボード等に分けて、数段階に分けて増設
できるように拡張メモリ空間を複数のバンク、即ちXバ
ンク(0)12a,Xバンク(1)12b,Xバンク
(2)12c,…に分けて制御できるようにするため
に、CPU1と拡張メモリとの間に拡張DRAM制御回
路13を付加する。
RAMコントローラ2を内蔵したCPU1から出力され
る信号RAS0,CAS0により、標準DRAM(シス
テムを構成するのに最小限必要なメモリ)11を制御す
るのに対して、信号RAS1,CAS1はメモリ拡張用
に使用される。この場合、メモリの拡張をDRAMモジ
ュールやメモリボード等に分けて、数段階に分けて増設
できるように拡張メモリ空間を複数のバンク、即ちXバ
ンク(0)12a,Xバンク(1)12b,Xバンク
(2)12c,…に分けて制御できるようにするため
に、CPU1と拡張メモリとの間に拡張DRAM制御回
路13を付加する。
【0017】CPU1は拡張メモリ領域の各バンクの状
態(メモリの有無及びメモリサイズ)を検出し、拡張D
RAM制御回路13に対して、制御するDRAMチップ
の種類を示す信号DRAMtypeを出力することによ
り、拡張DRAM制御回路13は、アドレスバスの上位
アドレスから各バンクの選択を行なう。
態(メモリの有無及びメモリサイズ)を検出し、拡張D
RAM制御回路13に対して、制御するDRAMチップ
の種類を示す信号DRAMtypeを出力することによ
り、拡張DRAM制御回路13は、アドレスバスの上位
アドレスから各バンクの選択を行なう。
【0018】図19は、図18に示すメモリ領域のメモ
リマップの例を示している。但し、この図においてメモ
リマップは標準DRAMのサイズを2MB、拡張メモリ
の増設単位を1MB宛、或は4MBにして示してある。
リマップの例を示している。但し、この図においてメモ
リマップは標準DRAMのサイズを2MB、拡張メモリ
の増設単位を1MB宛、或は4MBにして示してある。
【0019】元来、DRAMコントローラ2において
は、1つのRAS,CAS信号では1種類のDRAMし
か制御できず、図18に示す拡張メモリ領域の各バン
ク、即ちXバンク(0)12a,Xバンク(1)12
b,、Xバンク(2)12c,…は総て1MB単位或は
4MB単位しか選択することができない。
は、1つのRAS,CAS信号では1種類のDRAMし
か制御できず、図18に示す拡張メモリ領域の各バン
ク、即ちXバンク(0)12a,Xバンク(1)12
b,、Xバンク(2)12c,…は総て1MB単位或は
4MB単位しか選択することができない。
【0020】図19においては、8000,0000番
地より下位アドレスに標準DRAM(2MB)を、80
00,0000番地より上位アドレスを拡張メモリ領域
にそれぞれ割り当てている。各々拡張メモリバンクの開
始アドレスは、1MBのサイズであれば、8000,0
000、8010,0000、8020,0000、…
と1MB単位に増え、4MBサイズであれば、800
0,0000、8040,0000、8080,000
0、…と4MB単位に増えていく。拡張メモリ領域に増
設可能なメモリは1種類であり、この拡張メモリの領域
に1MBと4MBのサイズとを混在させることは許され
ない(メモリが無い場合、即ち0MBの場合は許され
る)。
地より下位アドレスに標準DRAM(2MB)を、80
00,0000番地より上位アドレスを拡張メモリ領域
にそれぞれ割り当てている。各々拡張メモリバンクの開
始アドレスは、1MBのサイズであれば、8000,0
000、8010,0000、8020,0000、…
と1MB単位に増え、4MBサイズであれば、800
0,0000、8040,0000、8080,000
0、…と4MB単位に増えていく。拡張メモリ領域に増
設可能なメモリは1種類であり、この拡張メモリの領域
に1MBと4MBのサイズとを混在させることは許され
ない(メモリが無い場合、即ち0MBの場合は許され
る)。
【0021】図20は、この拡張メモリ領域のXバンク
(0)12aに4MB、Xバンク(1)12bとXバン
ク(2)12cに1MBのメモリが増設された場合のメ
モリマップを示している。同図(a)はRAMタイプを
1MBとした場合に生じるメモリのオバーラップの発生
状態を示している。即ち、Xバンク0の領域がXバンク
1とXバンク2を含んでいる。この場合、CPU1aは
8000,0000〜800F,FFFF番地をアクセ
スする場合には問題ないが、8010,0000番地よ
りも上位アドレス空間をアクセスする場合は、Xバンク
(0)12aとXバンク(1)12b、或はXバンク
(0)12aとXバンク(2)12cが同時にアクセス
されデータバスの衝突が生じ、DRAMチップやCPU
1の損傷及び破壊を招いてしまう。
(0)12aに4MB、Xバンク(1)12bとXバン
ク(2)12cに1MBのメモリが増設された場合のメ
モリマップを示している。同図(a)はRAMタイプを
1MBとした場合に生じるメモリのオバーラップの発生
状態を示している。即ち、Xバンク0の領域がXバンク
1とXバンク2を含んでいる。この場合、CPU1aは
8000,0000〜800F,FFFF番地をアクセ
スする場合には問題ないが、8010,0000番地よ
りも上位アドレス空間をアクセスする場合は、Xバンク
(0)12aとXバンク(1)12b、或はXバンク
(0)12aとXバンク(2)12cが同時にアクセス
されデータバスの衝突が生じ、DRAMチップやCPU
1の損傷及び破壊を招いてしまう。
【0022】また、同図(b)は、RAMタイプを4M
Bとした場合のメモリマップである。この場合は、Xバ
ンク(0)12aの4MBの空間のみ正常にアクセスす
ることが可能であり、Xバンク(1)12bとXバンク
(2)12cの1MB宛の空間は、1MBと4MBとで
はDRAMチップ構成が異なるので、アクセスする際に
誤動作を生じる。即ち、1MBの空間を1MビットDR
AM×8個で構成し、4MBの空間を4MビットDRA
M×8個で構成したとすれば、ロー/カラムアドレス幅
が異なるので、ロー/アドレスが変化するような場合に
対応が取れなくなる。
Bとした場合のメモリマップである。この場合は、Xバ
ンク(0)12aの4MBの空間のみ正常にアクセスす
ることが可能であり、Xバンク(1)12bとXバンク
(2)12cの1MB宛の空間は、1MBと4MBとで
はDRAMチップ構成が異なるので、アクセスする際に
誤動作を生じる。即ち、1MBの空間を1MビットDR
AM×8個で構成し、4MBの空間を4MビットDRA
M×8個で構成したとすれば、ロー/カラムアドレス幅
が異なるので、ロー/アドレスが変化するような場合に
対応が取れなくなる。
【0023】また、同図(b)においてはXバンク
(1)12bは実際には8040,0000〜804
F,FFFF番地に物理的に配置されるが、8050,
0000〜807F,FFFFまで1MBの空間が恰も
存在するかのように取り扱われることになる「Xバンク
(2)12cの空間についても同様」。
(1)12bは実際には8040,0000〜804
F,FFFF番地に物理的に配置されるが、8050,
0000〜807F,FFFFまで1MBの空間が恰も
存在するかのように取り扱われることになる「Xバンク
(2)12cの空間についても同様」。
【0024】また、図21に示すように、Xバンク
(0)12aとXバンク(2)12cに1MB、Xバン
ク(1)12bに4MBのDRAMが増設された場合に
おいては、RAMタイプを4MBとして選択すると、実
際に使用可能な領域が8040,0000〜807F,
FFFF番地までの4MBとなり、Xバンク(0)12
aとXバンク(1)12bに付加された2MB分のメモ
リが無駄になってしまう。RAMタイプを1MBとして
Xバンク(0)12aとXバンク(2)12cとを使用
する場合は、図20の(a)と同様な現象が起こり得る
という問題点がある。
(0)12aとXバンク(2)12cに1MB、Xバン
ク(1)12bに4MBのDRAMが増設された場合に
おいては、RAMタイプを4MBとして選択すると、実
際に使用可能な領域が8040,0000〜807F,
FFFF番地までの4MBとなり、Xバンク(0)12
aとXバンク(1)12bに付加された2MB分のメモ
リが無駄になってしまう。RAMタイプを1MBとして
Xバンク(0)12aとXバンク(2)12cとを使用
する場合は、図20の(a)と同様な現象が起こり得る
という問題点がある。
【0025】本発明は、上記事情に鑑みてなされたもの
で、その第1の目的とするところは、異種類のメモリと
隣接するようなメモリで構成される場合において、該メ
モリをアクセスする際に生じるトラブルを回避すること
ができるメモリ制御装置を提供することにある。
で、その第1の目的とするところは、異種類のメモリと
隣接するようなメモリで構成される場合において、該メ
モリをアクセスする際に生じるトラブルを回避すること
ができるメモリ制御装置を提供することにある。
【0026】また、本発明の第2の目的とするところ
は、使用可能なメモリ領域を連続的なメモリ空間として
与えることができるメモリ制御装置を提供することにあ
る。
は、使用可能なメモリ領域を連続的なメモリ空間として
与えることができるメモリ制御装置を提供することにあ
る。
【0027】
【課題を解決するための手段】上述した第1の目的を達
成するため本発明の第1発明は、メモリ領域と増設可能
な拡張メモリバンクからなる拡張メモリ領域とを有する
メモリ手段と、該メモリ手段の前記メモリ領域と前記拡
張メモリ領域とを独立して制御するコントローラと、該
コントローラより出力されるアドレス信号と制御信号と
に基づいて前記拡張メモリバンクを選択してアクセスす
る拡張メモリ制御手段とを有するメモリ制御装置におい
て、前記拡張メモリバンクに対して拡張メモリの有無及
びメモリのサイズを含むステータス情報を検出して、該
拡張メモリバンクの使用可能及び使用禁止のいずれかを
選択指示する選択指示手段を有し、前記拡張メモリ制御
手段は、前記選択指示手段によって使用可能と選択指示
された拡張メモリをアクセス可能に構成したことを特徴
とするものである。
成するため本発明の第1発明は、メモリ領域と増設可能
な拡張メモリバンクからなる拡張メモリ領域とを有する
メモリ手段と、該メモリ手段の前記メモリ領域と前記拡
張メモリ領域とを独立して制御するコントローラと、該
コントローラより出力されるアドレス信号と制御信号と
に基づいて前記拡張メモリバンクを選択してアクセスす
る拡張メモリ制御手段とを有するメモリ制御装置におい
て、前記拡張メモリバンクに対して拡張メモリの有無及
びメモリのサイズを含むステータス情報を検出して、該
拡張メモリバンクの使用可能及び使用禁止のいずれかを
選択指示する選択指示手段を有し、前記拡張メモリ制御
手段は、前記選択指示手段によって使用可能と選択指示
された拡張メモリをアクセス可能に構成したことを特徴
とするものである。
【0028】また、同じ目的を達成する上で、前記拡張
メモリ領域が複数種類のメモリからなる拡張メモリバン
クを有する場合、前記選択指示手段において1種類のメ
モリからなるように該拡張メモリバンクの使用可能及び
使用禁止のいずれかを選択指示することが望ましい。
メモリ領域が複数種類のメモリからなる拡張メモリバン
クを有する場合、前記選択指示手段において1種類のメ
モリからなるように該拡張メモリバンクの使用可能及び
使用禁止のいずれかを選択指示することが望ましい。
【0029】更に、上述した第2の目的を達成するため
本発明の第2発明は、メモリ領域と増設可能な拡張メモ
リバンクからなる拡張メモリ領域とを有するメモリ手段
と、該メモリ手段の前記メモリ領域と前記拡張メモリ領
域とを独立して制御するコントローラと、該コントロー
ラより出力されるアドレス信号と制御信号とに基づいて
前記拡張メモリバンクを選択してアクセスする拡張メモ
リ制御手段とを有するメモリ制御装置において、前記拡
張メモリ領域が複数種類のメモリから構成されている場
合、或は増設された拡張メモリバンクよりも下位アドレ
ス空間に未増設の拡張メモリバンクが存在する場合に、
1種類のメモリからなる該拡張メモリバンクを使用可能
とし、且つ前記未増設の拡張メモリバンクを使用禁止と
し、更に使用禁止とした該拡張メモリバンクをメモリ空
間から削除して、使用可能な該拡張メモリバンクを連続
したメモリアドレス空間に再配置することを指示する再
配置指示手段を有し、前記拡張メモリ制御手段は、前記
再配置指示手段から出力される指示信号に基づいて前記
拡張メモリバンクを制御する如く構成したことを特徴と
するものである。
本発明の第2発明は、メモリ領域と増設可能な拡張メモ
リバンクからなる拡張メモリ領域とを有するメモリ手段
と、該メモリ手段の前記メモリ領域と前記拡張メモリ領
域とを独立して制御するコントローラと、該コントロー
ラより出力されるアドレス信号と制御信号とに基づいて
前記拡張メモリバンクを選択してアクセスする拡張メモ
リ制御手段とを有するメモリ制御装置において、前記拡
張メモリ領域が複数種類のメモリから構成されている場
合、或は増設された拡張メモリバンクよりも下位アドレ
ス空間に未増設の拡張メモリバンクが存在する場合に、
1種類のメモリからなる該拡張メモリバンクを使用可能
とし、且つ前記未増設の拡張メモリバンクを使用禁止と
し、更に使用禁止とした該拡張メモリバンクをメモリ空
間から削除して、使用可能な該拡張メモリバンクを連続
したメモリアドレス空間に再配置することを指示する再
配置指示手段を有し、前記拡張メモリ制御手段は、前記
再配置指示手段から出力される指示信号に基づいて前記
拡張メモリバンクを制御する如く構成したことを特徴と
するものである。
【0030】
【作用】請求項1のメモリ制御装置は、選択指示手段に
より拡張メモリバンクに対してのメモリの有無及びメモ
リのサイズを含むステータス情報が検出されて該拡張メ
モリバンクの使用可能及び使用禁止のいずれかが選択指
示され、前記選択指示手段によって使用可能と選択指示
された拡張メモリが拡張メモリ制御手段によりアクセス
可能となる。
より拡張メモリバンクに対してのメモリの有無及びメモ
リのサイズを含むステータス情報が検出されて該拡張メ
モリバンクの使用可能及び使用禁止のいずれかが選択指
示され、前記選択指示手段によって使用可能と選択指示
された拡張メモリが拡張メモリ制御手段によりアクセス
可能となる。
【0031】また、請求項2のメモリ制御装置は、拡張
メモリ領域が複数種類のメモリからなる拡張メモリバン
クを有する場合、選択指示手段において1種類のメモリ
からなるように該拡張メモリバンクの使用可能及び使用
禁止のいずれかが選択指示される。
メモリ領域が複数種類のメモリからなる拡張メモリバン
クを有する場合、選択指示手段において1種類のメモリ
からなるように該拡張メモリバンクの使用可能及び使用
禁止のいずれかが選択指示される。
【0032】更に請求項3のメモリ制御装置は、拡張メ
モリ領域が複数種類のメモリから構成されている場合、
或は増設された拡張メモリバンクよりも下位アドレス空
間に未増設の拡張メモリバンクが存在する場合に、再配
置指示手段により1種類のメモリからなる該拡張メモリ
バンクを使用可能とし、且つ前記未増設の拡張メモリバ
ンクを使用禁止とし、更に使用禁止とした拡張メモリバ
ンクをメモリ空間から削除して、使用可能な該拡張メモ
リバンクを連続したメモリアドレス空間に再配置するこ
とが指示され、前記再配置指示手段から出力される指示
信号に基づき拡張メモリバンクが拡張メモリ制御手段に
より制御される。
モリ領域が複数種類のメモリから構成されている場合、
或は増設された拡張メモリバンクよりも下位アドレス空
間に未増設の拡張メモリバンクが存在する場合に、再配
置指示手段により1種類のメモリからなる該拡張メモリ
バンクを使用可能とし、且つ前記未増設の拡張メモリバ
ンクを使用禁止とし、更に使用禁止とした拡張メモリバ
ンクをメモリ空間から削除して、使用可能な該拡張メモ
リバンクを連続したメモリアドレス空間に再配置するこ
とが指示され、前記再配置指示手段から出力される指示
信号に基づき拡張メモリバンクが拡張メモリ制御手段に
より制御される。
【0033】
【実施例】以下、本発明の実施例を図1〜図13に基づ
き説明する。
き説明する。
【0034】[第1実施例]図1は、本発明の第1実施
例に係るメモリ制御装置のブロック構成図であり、同図
において、20はDRAMコントローラ21を内蔵した
CPUである。22はDRAMによって構成されたメモ
リ手段で、そのメモリ領域は、標準DRAM23の領域
(標準メモリ領域)と拡張DRAM24a,24b,2
4c,…の領域(拡張メモリ領域)の2つに分けられて
いる。そして、DRAMコントローラ21により、標準
メモリ領域と拡張メモリ領域とを独立して制御する。
例に係るメモリ制御装置のブロック構成図であり、同図
において、20はDRAMコントローラ21を内蔵した
CPUである。22はDRAMによって構成されたメモ
リ手段で、そのメモリ領域は、標準DRAM23の領域
(標準メモリ領域)と拡張DRAM24a,24b,2
4c,…の領域(拡張メモリ領域)の2つに分けられて
いる。そして、DRAMコントローラ21により、標準
メモリ領域と拡張メモリ領域とを独立して制御する。
【0035】標準DRAM23は、本装置を構成するに
当たって最小限必要とするメモリ容量を持ち、標準で実
装されている。また、拡張DRAM24a,24b,2
4c,…は、本装置のメモリ容量を増設してシステム性
能を向上するために設けられる複数のメモリバンク、即
ちXバンク(0)、Xバンク(1)、Xバンク(2),
…からなる着脱可能なメモリモジュール或はメモリボー
ド等からなり、拡張DRAM制御回路25によって制御
される。
当たって最小限必要とするメモリ容量を持ち、標準で実
装されている。また、拡張DRAM24a,24b,2
4c,…は、本装置のメモリ容量を増設してシステム性
能を向上するために設けられる複数のメモリバンク、即
ちXバンク(0)、Xバンク(1)、Xバンク(2),
…からなる着脱可能なメモリモジュール或はメモリボー
ド等からなり、拡張DRAM制御回路25によって制御
される。
【0036】次に、図1の構成におけるメモリ制御装置
の動作を説明する。CPU20はリセット後の初期化時
において、拡張DRAM部の各バンクに増設されたメモ
リの有無及びメモリの種類を各バンクのメモリより出力
されるRAMstatus信号を入力することによって
検出する。このRAMstatus信号は図2に示すよ
うに各バンクにつき3ビットの値を持っており、図3に
示すように各バンクのRAMstatus信号によって
メモリの有無と種類が分かる。
の動作を説明する。CPU20はリセット後の初期化時
において、拡張DRAM部の各バンクに増設されたメモ
リの有無及びメモリの種類を各バンクのメモリより出力
されるRAMstatus信号を入力することによって
検出する。このRAMstatus信号は図2に示すよ
うに各バンクにつき3ビットの値を持っており、図3に
示すように各バンクのRAMstatus信号によって
メモリの有無と種類が分かる。
【0037】CPU20はこれらのRAMstatus
信号を検出した後、最も効率的にメモリを使用できるよ
うに使用するメモリバンクを選択する。ここで、拡張D
RAM領域中のメモリはCPU20の信号RAS1,C
AS1によって制御され、DRAMコントローラ21は
拡張メモリ中の1種類のDRAMチップを選択可能であ
る。従って、CPU20はこの拡張DRAM領域中の使
用可能なバンクのDRAMチップのパラメータ;ロー
(Row)アドレス幅やカラム(column)アドレ
ス幅等をDRAMコントローラ21に設定する。
信号を検出した後、最も効率的にメモリを使用できるよ
うに使用するメモリバンクを選択する。ここで、拡張D
RAM領域中のメモリはCPU20の信号RAS1,C
AS1によって制御され、DRAMコントローラ21は
拡張メモリ中の1種類のDRAMチップを選択可能であ
る。従って、CPU20はこの拡張DRAM領域中の使
用可能なバンクのDRAMチップのパラメータ;ロー
(Row)アドレス幅やカラム(column)アドレ
ス幅等をDRAMコントローラ21に設定する。
【0038】次に、CPU20はこのDRAMチップの
種類をコードデータRAMタイプ(図4参照)として、
また、拡張DRAM領域;Xバンク(0)24a,Xバ
ンク(1)24b,Xバンク(2)24c,…のうち、
どのバンクを有効にするかを指示する信号XBENV<
m..0>(括弧内の数字はバンク番号を示す)を出力
する。これらXBENV信号の値が「1」のとき有効
(アクセス可能)、「0」のとき無効(アクセス不能)
となる。
種類をコードデータRAMタイプ(図4参照)として、
また、拡張DRAM領域;Xバンク(0)24a,Xバ
ンク(1)24b,Xバンク(2)24c,…のうち、
どのバンクを有効にするかを指示する信号XBENV<
m..0>(括弧内の数字はバンク番号を示す)を出力
する。これらXBENV信号の値が「1」のとき有効
(アクセス可能)、「0」のとき無効(アクセス不能)
となる。
【0039】図1において、拡張DRAM制御回路25
の内部ブロック図を図5に示す。同図においては、拡張
DRAM部のバンク数を4(即ち、図1においてm=
3)として構成している。同図において、25はCPU
20より出力される信号RAMtype<1..0>を
図4に示すようにデコードしてメモリサイズの情報を出
力するデコーダである。26はCPU20より出力され
る多重化されたアドレスの上位ビットA<12..8>
うち、2ビットをデコーダ25より出力されるメモリサ
イズ情報から選択して、バンク選択用アドレス;BA0
とBA1信号を生成するバンクアドレス選択部である。
の内部ブロック図を図5に示す。同図においては、拡張
DRAM部のバンク数を4(即ち、図1においてm=
3)として構成している。同図において、25はCPU
20より出力される信号RAMtype<1..0>を
図4に示すようにデコードしてメモリサイズの情報を出
力するデコーダである。26はCPU20より出力され
る多重化されたアドレスの上位ビットA<12..8>
うち、2ビットをデコーダ25より出力されるメモリサ
イズ情報から選択して、バンク選択用アドレス;BA0
とBA1信号を生成するバンクアドレス選択部である。
【0040】CPU20より出力されるアドレスバス中
に割り当てられるバンク選択用アドレスのビットとメモ
リサイズ情報との関係を図6に示す。同図(a)はメモ
リサイズが256KBの場合でローアドレスとカラムア
ドレスにそれぞれ8ビットを必要とし、これらの上位2
ビットA<9..8>がバンク選択用アドレスとなる。
また、同図(b)はメモリサイズが1メガバイト、
(e)は4メガバイト、(d)は16メガバイトの場合
を示している。
に割り当てられるバンク選択用アドレスのビットとメモ
リサイズ情報との関係を図6に示す。同図(a)はメモ
リサイズが256KBの場合でローアドレスとカラムア
ドレスにそれぞれ8ビットを必要とし、これらの上位2
ビットA<9..8>がバンク選択用アドレスとなる。
また、同図(b)はメモリサイズが1メガバイト、
(e)は4メガバイト、(d)は16メガバイトの場合
を示している。
【0041】再び図5に戻って、27はバンクアドレス
選択部25より出力されるアドレスBA0,BA1信号
をデコードし、ローミスサイクル発生時のRAS1信号
の立ち上がりエッジ(図7における[A]時点)で、こ
のデコードしたデータをラッチしXBK0〜XBK3信
号として出力するデコーダ/ラッチである。28はリフ
レッシュ検出部であり、CPU20はリフレッシュサイ
クル時には図8に示すようなタイミング信号;CAS1
true→RAS1true→CAS1false→R
AS1false(CASビフォアRASリフレッシュ
サイクル)を検出してリフレッシュサイクルであること
を示す信号refreshを生成する。
選択部25より出力されるアドレスBA0,BA1信号
をデコードし、ローミスサイクル発生時のRAS1信号
の立ち上がりエッジ(図7における[A]時点)で、こ
のデコードしたデータをラッチしXBK0〜XBK3信
号として出力するデコーダ/ラッチである。28はリフ
レッシュ検出部であり、CPU20はリフレッシュサイ
クル時には図8に示すようなタイミング信号;CAS1
true→RAS1true→CAS1false→R
AS1false(CASビフォアRASリフレッシュ
サイクル)を検出してリフレッシュサイクルであること
を示す信号refreshを生成する。
【0042】29,30は拡張DRAM領域の各バン
ク、即ちXバンク(0)〜(2)24a〜24cのアク
セスを制御する信号XCAS<3..0>,XRAS<
3..0>(括弧内の数字はバンク番号を示す)を生成
するXCASジェネレータ及びXRASジェネレータで
ある。
ク、即ちXバンク(0)〜(2)24a〜24cのアク
セスを制御する信号XCAS<3..0>,XRAS<
3..0>(括弧内の数字はバンク番号を示す)を生成
するXCASジェネレータ及びXRASジェネレータで
ある。
【0043】ここで、XCASジェネレータ29はCP
U20より出力される信号XBENV<3..0>によ
って各バンクの使用可或は使用不可を決定し、デコーダ
/ラッチ27よりローミスサイクル時に生成されるバン
ク選択信号BK0〜BK3を入力して、実際にリード/
ライトすべきバンクを選択して信号XCAS<3..0
>の1つを出力する。
U20より出力される信号XBENV<3..0>によ
って各バンクの使用可或は使用不可を決定し、デコーダ
/ラッチ27よりローミスサイクル時に生成されるバン
ク選択信号BK0〜BK3を入力して、実際にリード/
ライトすべきバンクを選択して信号XCAS<3..0
>の1つを出力する。
【0044】尚、リフレッシュサイクル時には信号XC
AS<3..0>のすべてが信号CAS1に基づいて出
力される(図8参照)。
AS<3..0>のすべてが信号CAS1に基づいて出
力される(図8参照)。
【0045】また、XRASジェネレータ30も同様に
有効なバンクをリード/ライト時にRAS1信号が出力
されると、信号XBENV<3..0>の1つを出力で
きるようにし、リフレッシュ時には総てのバンクに対し
て信号XRAS<3..0>を出力する(図8参照)。
有効なバンクをリード/ライト時にRAS1信号が出力
されると、信号XBENV<3..0>の1つを出力で
きるようにし、リフレッシュ時には総てのバンクに対し
て信号XRAS<3..0>を出力する(図8参照)。
【0046】XCAS<3..0>信号及びXRAS<
3..0>信号の論理式を以下に示す: XCASi=!refresh&XBENVi&XBKi&CAS1 #refresh&CAS1 …(1) XRASi=!refresh&XBENVi&RAS1 #refresh&RAS1 …(2) ここで、&は論理積、#は論理和、!は論理否定、iは
バンク番号を示す。
3..0>信号の論理式を以下に示す: XCASi=!refresh&XBENVi&XBKi&CAS1 #refresh&CAS1 …(1) XRASi=!refresh&XBENVi&RAS1 #refresh&RAS1 …(2) ここで、&は論理積、#は論理和、!は論理否定、iは
バンク番号を示す。
【0047】図1において、拡張DRAM部の各々バン
クに対して同一のメモリが増設されている場合は、総て
のバンクに対するXBENV<m..0>信号を「1」
にしてアクセス可能とし、例えば、図15に示すメモリ
マップとなる。
クに対して同一のメモリが増設されている場合は、総て
のバンクに対するXBENV<m..0>信号を「1」
にしてアクセス可能とし、例えば、図15に示すメモリ
マップとなる。
【0048】一方、これらのバンクが2種類以上のメモ
リから構成されている場合は、上述したように信号XB
ENV<m..0>で使用するバンクを選択することに
より、上述した従来の問題点を解決できる。
リから構成されている場合は、上述したように信号XB
ENV<m..0>で使用するバンクを選択することに
より、上述した従来の問題点を解決できる。
【0049】図9は、拡張DRAM部のXバンク(0)
24aに1メガビットメモリが、Xバンク(1)24b
に4メガビットメモリが、Xバンク(2)24cに1メ
ガビットメモリが増設された場合に、CPU20より信
号RAMtype<l..0>とXBENV<m..0
>とを制御することにより得られるメモリマップを示し
ている。同図(a)はXバンク(2)24cの4Mビッ
トメモリをアクセス可能とし、Xバンク(0)24aと
Xバンク(1)24bとをアクセス禁止にした構成であ
り、この場合に信号RAMtype<1..0>とXB
ENV<2..0>は、 [RAMtype1,RAMtype0]=[1.0] [XBENV2,XBENV1,XBENV0=[0,1,0] …(3) である。
24aに1メガビットメモリが、Xバンク(1)24b
に4メガビットメモリが、Xバンク(2)24cに1メ
ガビットメモリが増設された場合に、CPU20より信
号RAMtype<l..0>とXBENV<m..0
>とを制御することにより得られるメモリマップを示し
ている。同図(a)はXバンク(2)24cの4Mビッ
トメモリをアクセス可能とし、Xバンク(0)24aと
Xバンク(1)24bとをアクセス禁止にした構成であ
り、この場合に信号RAMtype<1..0>とXB
ENV<2..0>は、 [RAMtype1,RAMtype0]=[1.0] [XBENV2,XBENV1,XBENV0=[0,1,0] …(3) である。
【0050】また、同図(b)はXバンク(0)24a
とXバンク(2)24cの1メガビットメモリをアクセ
ス可能とし、Xバンク(1)24bをアクセス禁止にし
た構成である。この場合の信号RAMtype<1..
0>とXBENV<2..0>は、 [RAMtype1,RAMtype0]=[0,1] [XBENV2,XBENV1,XBENV0]=[1,0,1] …(4) である。
とXバンク(2)24cの1メガビットメモリをアクセ
ス可能とし、Xバンク(1)24bをアクセス禁止にし
た構成である。この場合の信号RAMtype<1..
0>とXBENV<2..0>は、 [RAMtype1,RAMtype0]=[0,1] [XBENV2,XBENV1,XBENV0]=[1,0,1] …(4) である。
【0051】図9に示されるように、2種類以上のメモ
リで構成される場合は、2種類のメモリマップを持つ構
成となるが、メモリ管理プログラム等を作成することに
より、拡張用に増設されたメモリを効率よく使用するこ
とが可能である。
リで構成される場合は、2種類のメモリマップを持つ構
成となるが、メモリ管理プログラム等を作成することに
より、拡張用に増設されたメモリを効率よく使用するこ
とが可能である。
【0052】[第2実施例]次に、図10は本発明の第
2実施例に係るメモリ制御装置のブロック構成図であ
り、拡張DRAM部の各バンク、即ちXバンク(0)2
4a,Xバンク(1)24b,Xバンク(2)24c,
…より得られるRAMstatus信号において、メモ
リが存在しないバンク及び2種類以上のメモリが存在す
る場合に使用禁止にするバンクをメモリマップ上から削
除して、標準DRAMより上位のメモリ空間を連続的に
アドレッシングする信号SHIFTをCPU20から拡
張DRAM制御回路25へ出力するものである。
2実施例に係るメモリ制御装置のブロック構成図であ
り、拡張DRAM部の各バンク、即ちXバンク(0)2
4a,Xバンク(1)24b,Xバンク(2)24c,
…より得られるRAMstatus信号において、メモ
リが存在しないバンク及び2種類以上のメモリが存在す
る場合に使用禁止にするバンクをメモリマップ上から削
除して、標準DRAMより上位のメモリ空間を連続的に
アドレッシングする信号SHIFTをCPU20から拡
張DRAM制御回路25へ出力するものである。
【0053】本実施例での拡張DRAM制御回路25の
内部構成ブロック図を図11に示す。同図において、デ
コーダ25及びバンクアドレス選択部26、リフレッシ
ュ検出部28、XRASジェネレータ30の構成は第1
実施例と同一のものであり、本実施例での説明は省略す
る。27はCPU20から出力される信号SHIFT、
XBENV<3..0>とバンクアドレス選択部26か
ら出力されるバンク選択用アドレス信号BA0,BA1
とから拡張DRAM部の各バンクに対する制御信号XC
AS<3..0>の出力を制御するためのバンク選択信
号XBK0〜XBK3を生成する。
内部構成ブロック図を図11に示す。同図において、デ
コーダ25及びバンクアドレス選択部26、リフレッシ
ュ検出部28、XRASジェネレータ30の構成は第1
実施例と同一のものであり、本実施例での説明は省略す
る。27はCPU20から出力される信号SHIFT、
XBENV<3..0>とバンクアドレス選択部26か
ら出力されるバンク選択用アドレス信号BA0,BA1
とから拡張DRAM部の各バンクに対する制御信号XC
AS<3..0>の出力を制御するためのバンク選択信
号XBK0〜XBK3を生成する。
【0054】尚、このバンク制御部27の構成を図12
に示す。同図において、31a,31b,31c,31
dは、Xバンク(0)制御部、Xバンク(1)制御部、
Xバンク(2)制御部、Xバンク(3)制御部であり、
XBENV<3..0>中に設定された使用禁止のバン
クをメモリ空間上から完全に削除し、メモリ領域をシフ
トさせて連続メモリ空間を持たせるように制御するもの
である。これらの各制御部31a〜31dで生成される
信号XA0〜XA3の論理式を以下に示す; XA0=(BA==00)&XBENV0 …(5) XA1=(BA==01)&XBENV0&XBENV1 #(BA==00)&!XBENV0&XBENV1 …(6) XA2=(BA==10)&XBANV0&XBENV1&XBENV2 #(BA==01)&!(XBENV0&XBENV1)&XBENV 2 #(BA==00)&!(XBENV0#XBENV1)&XBENV 2 …(7) XA3=(BA==11)&XBENV0&XBENV1&XBENV2&X BENV3 #(BA==10)&!(XBENV0&XBENV1&XBENV2 )&XBENV3 #(BA==01)&[!{XBENV0#(XBENV1&XBEN V2)}#XBENV0&!(XBENV1#XBENV2)]&XBENV3 #(BA==00)&!(XBENV0#XBENV1#XBENV2 )&XBENV3 …(8) ここで、(BA==mm)は、BA1=m、且つBA=
nのときに1となることを表わしている。
に示す。同図において、31a,31b,31c,31
dは、Xバンク(0)制御部、Xバンク(1)制御部、
Xバンク(2)制御部、Xバンク(3)制御部であり、
XBENV<3..0>中に設定された使用禁止のバン
クをメモリ空間上から完全に削除し、メモリ領域をシフ
トさせて連続メモリ空間を持たせるように制御するもの
である。これらの各制御部31a〜31dで生成される
信号XA0〜XA3の論理式を以下に示す; XA0=(BA==00)&XBENV0 …(5) XA1=(BA==01)&XBENV0&XBENV1 #(BA==00)&!XBENV0&XBENV1 …(6) XA2=(BA==10)&XBANV0&XBENV1&XBENV2 #(BA==01)&!(XBENV0&XBENV1)&XBENV 2 #(BA==00)&!(XBENV0#XBENV1)&XBENV 2 …(7) XA3=(BA==11)&XBENV0&XBENV1&XBENV2&X BENV3 #(BA==10)&!(XBENV0&XBENV1&XBENV2 )&XBENV3 #(BA==01)&[!{XBENV0#(XBENV1&XBEN V2)}#XBENV0&!(XBENV1#XBENV2)]&XBENV3 #(BA==00)&!(XBENV0#XBENV1#XBENV2 )&XBENV3 …(8) ここで、(BA==mm)は、BA1=m、且つBA=
nのときに1となることを表わしている。
【0055】また、&は論理積、#は論理和、!は論理
否定を示す。
否定を示す。
【0056】上記式(8)において、1行目〜2行目は
全バンクのメモリが使用可能であり、メモリバンクのシ
フトが発生しないことを示している。3行目〜4行目は
Xバンク(0)〜(3)の中で1つだけ使用禁止バンク
が存在し、Xバンク(3)が1つ分だけ下位メモリ空間
へシフトすることを示している。5行目〜6行目はXバ
ンク(0)〜(3)の中の2つが使用禁止となり、Xバ
ンク(3)が2つ分下位メモリ空間へシフトすることを
示している。
全バンクのメモリが使用可能であり、メモリバンクのシ
フトが発生しないことを示している。3行目〜4行目は
Xバンク(0)〜(3)の中で1つだけ使用禁止バンク
が存在し、Xバンク(3)が1つ分だけ下位メモリ空間
へシフトすることを示している。5行目〜6行目はXバ
ンク(0)〜(3)の中の2つが使用禁止となり、Xバ
ンク(3)が2つ分下位メモリ空間へシフトすることを
示している。
【0057】尚、上記式(5)〜(7)についても、各
行の論理式の意味は上記式(8)と同様であるから、そ
の説明を省略する。
行の論理式の意味は上記式(8)と同様であるから、そ
の説明を省略する。
【0058】また、図12中、32は信号BA0とBA
1とをデコードして信号XBENV<3..0>が
「1」であるバンクを出力するバンク選択部であり、内
部の構成は以下の論理式により表わすことができる; XB0=(BA==00)&XBENV0 …(9) XB1=(BA==01)&XBENV1 …(10) XB2=(BA==10)&XBENV2 …(11) XB3=(BA==11)&XBENV3 …(12) 15はSHIFT入力が「1」である場合には、Xバン
ク制御部31a〜31dから出力される信号XA0〜X
A3を選択し、SHIFT入力が「0」である場合に
は、バンク選択部32から出力される信号XB0〜XB
3を選択し、信号RAS1の立ち上がりエッジ(図7の
[A])でこれら選択された信号をラッチし、信号XB
K0〜XBK3としてXCASジェネレータ29へ出力
する。即ち、 XBKi:=XAi&SHIFT#XBi&!SHIFT …(13) となる。
1とをデコードして信号XBENV<3..0>が
「1」であるバンクを出力するバンク選択部であり、内
部の構成は以下の論理式により表わすことができる; XB0=(BA==00)&XBENV0 …(9) XB1=(BA==01)&XBENV1 …(10) XB2=(BA==10)&XBENV2 …(11) XB3=(BA==11)&XBENV3 …(12) 15はSHIFT入力が「1」である場合には、Xバン
ク制御部31a〜31dから出力される信号XA0〜X
A3を選択し、SHIFT入力が「0」である場合に
は、バンク選択部32から出力される信号XB0〜XB
3を選択し、信号RAS1の立ち上がりエッジ(図7の
[A])でこれら選択された信号をラッチし、信号XB
K0〜XBK3としてXCASジェネレータ29へ出力
する。即ち、 XBKi:=XAi&SHIFT#XBi&!SHIFT …(13) となる。
【0059】ここで、iはバンク番号、:は信号RAS
1の立ち上がりでラッチされることを示す。
1の立ち上がりでラッチされることを示す。
【0060】また、図11におけるXCASジェネレー
タ29は以下の論理式で構成される; XCASi=XBKi&!refresh&CAS1 #refresh&CAS1 …(14) 図13は、上述した第1実施例と同様に、拡張DRAM
部のXバンク0に1MBメモリが、Xバンク(1)24
bに4MBメモリが、Xバンク(2)24cに1MBメ
モリが増設された場合に、CPU20よりSHIFTを
「1」にして使用禁止としたバンクをメモリ空間から削
除し、使用可能なバンクを標準DRAM領域に対して連
続メモリ空間をはるようにシフトさせたものである。
タ29は以下の論理式で構成される; XCASi=XBKi&!refresh&CAS1 #refresh&CAS1 …(14) 図13は、上述した第1実施例と同様に、拡張DRAM
部のXバンク0に1MBメモリが、Xバンク(1)24
bに4MBメモリが、Xバンク(2)24cに1MBメ
モリが増設された場合に、CPU20よりSHIFTを
「1」にして使用禁止としたバンクをメモリ空間から削
除し、使用可能なバンクを標準DRAM領域に対して連
続メモリ空間をはるようにシフトさせたものである。
【0061】同図(a)はXバンク(1)24aの4M
Bを使用可能とした場合、同図(b)はXバンク(0)
24aとXバンク(2)24cの各々の1MBを使用可
能とした場合の例を示している。信号RAMtype<
1..0>とXBENV<2..0>は上記式(9)と
同じである。
Bを使用可能とした場合、同図(b)はXバンク(0)
24aとXバンク(2)24cの各々の1MBを使用可
能とした場合の例を示している。信号RAMtype<
1..0>とXBENV<2..0>は上記式(9)と
同じである。
【0062】尚、SHIFTを「0」にした場合は、使
用禁止のバンクがあってもバンク自体のシフトは行なわ
ないので、図9のメモリマップに示す通りとなる。
用禁止のバンクがあってもバンク自体のシフトは行なわ
ないので、図9のメモリマップに示す通りとなる。
【0063】図12中、33はセレクタ/ラッチであ
る。
る。
【0064】なお、上述の各実施例においてはDRAM
を用いた場合で説明したが、SRAMを用いても良いこ
とは云うまでもない。
を用いた場合で説明したが、SRAMを用いても良いこ
とは云うまでもない。
【0065】
【発明の効果】以上説明したように本発明のメモリ制御
装置によれば、拡張RAM部の各バンクより得られるス
テータス情報から、メモリサイズ(或はRAMチップ)
の異なる複数種類のメモリが存在する場合に使用可能/
使用禁止とする選択信号により、使用禁止としたバンク
に対しては、いかなるリード/ライト動作も禁止される
ので、従来この部分へのアクセス時に生じていた不都合
を回避できる。
装置によれば、拡張RAM部の各バンクより得られるス
テータス情報から、メモリサイズ(或はRAMチップ)
の異なる複数種類のメモリが存在する場合に使用可能/
使用禁止とする選択信号により、使用禁止としたバンク
に対しては、いかなるリード/ライト動作も禁止される
ので、従来この部分へのアクセス時に生じていた不都合
を回避できる。
【0066】また、使用禁止としたバンクを使用する際
は、該バンクのメモリタイプ等を設定し直して、先に使
用可能としたバンクを使用禁止にすることにより補助的
に使用できるので、メモリを効率的に使用することがで
きる。
は、該バンクのメモリタイプ等を設定し直して、先に使
用可能としたバンクを使用禁止にすることにより補助的
に使用できるので、メモリを効率的に使用することがで
きる。
【0067】更に、前記ステータス情報から使用禁止と
するバンクをメモリ空間より削除して、この削除するバ
ンクよりも上位のアドレス空間に割り当てられているバ
ンクを下位アドレス空間へシフトして制御することによ
り、使用可能なメモリバンクを連続的なアドレス空間と
して自動的に再配置でき、効率的なメモリ利用とアクセ
ス制御が可能となる。
するバンクをメモリ空間より削除して、この削除するバ
ンクよりも上位のアドレス空間に割り当てられているバ
ンクを下位アドレス空間へシフトして制御することによ
り、使用可能なメモリバンクを連続的なアドレス空間と
して自動的に再配置でき、効率的なメモリ利用とアクセ
ス制御が可能となる。
【図1】本発明の第1実施例に係るメモリ制御装置のブ
ロック構成図である。
ロック構成図である。
【図2】RAMステータスのビット構成を示す図であ
る。
る。
【図3】RAMステータスとメモリサイズとの関係を示
す図である。
す図である。
【図4】RAMタイプとメモリサイズとの関係を示す図
である。
である。
【図5】図1の装置における拡張DRAM制御回路のブ
ロック構成図である。
ロック構成図である。
【図6】メモリサイズとアドレスバスとの関係を示す図
である。
である。
【図7】ローミスサイクルのタイミング図である。
【図8】リフレッシュサイクルのタイミング図である。
【図9】図1の装置におけるメモリマップの例を示す図
である。
である。
【図10】本発明の第2実施例に係るメモリ制御装置の
ブロック構成図である。
ブロック構成図である。
【図11】図10の装置における拡張DRAM制御回路
のブロック構成図である。
のブロック構成図である。
【図12】図11におけるバンク制御部のブロック構成
図である。
図である。
【図13】図10の装置におけるメモリマップの例を示
す図である。
す図である。
【図14】従来のメモリ制御装置のブロック構成図であ
る。
る。
【図15】別の従来のメモリ制御装置のブロック構成図
である。
である。
【図16】図14及び図15の装置におけるDRAMコ
ントローラのブロック構成図である。
ントローラのブロック構成図である。
【図17】DRAMチップの種類とアドレスバスの占有
状態を示す図である。
状態を示す図である。
【図18】更に別の従来のメモリ制御装置のブロック構
成図である。
成図である。
【図19】図18の装置におけるメモリマップの例を示
す図である。
す図である。
【図20】図18の装置におけるメモリマップの例を示
す図である。
す図である。
【図21】図18の装置におけるメモリマップの例を示
す図である。
す図である。
20 選択指示手段(CPU) 21 コントローラ(DRAMコントローラ) 22 メモリ手段 23 標準メモリ領域(標準DRAM) 24a〜24c 拡張メモリ領域(拡張メモリバンク) 25 拡張メモリ制御手段(拡張DRAM制御回路) 31a〜31d 再配置指示手段(Xバンク制御部)
Claims (3)
- 【請求項1】 メモリ領域と増設可能な拡張メモリバン
クからなる拡張メモリ領域とを有するメモリ手段と、該
メモリ手段の前記メモリ領域と前記拡張メモリ領域とを
独立して制御するコントローラと、該コントローラより
出力されるアドレス信号と制御信号とに基づいて前記拡
張メモリバンクを選択してアクセスする拡張メモリ制御
手段とを有するメモリ制御装置において、前記拡張メモ
リバンクに対して拡張メモリの有無及びメモリのサイズ
を含むステータス情報を検出して、該拡張メモリバンク
の使用可能及び使用禁止のいずれかを選択指示する選択
指示手段を有し、前記拡張メモリ制御手段は、前記選択
指示手段によって使用可能と選択指示された拡張メモリ
をアクセス可能に構成したことを特徴とするメモリ制御
装置。 - 【請求項2】 前記拡張メモリ領域が複数種類のメモリ
からなる拡張メモリバンクを有する場合、前記選択指示
手段において1種類のメモリからなるように該拡張メモ
リバンクの使用可能及び使用禁止のいずれかを選択指示
することを特徴とする請求項1記載のメモリ制御装置 - 【請求項3】 メモリ領域と増設可能な拡張メモリバン
クからなる拡張メモリ領域とを有するメモリ手段と、該
メモリ手段の前記メモリ領域と前記拡張メモリ領域とを
独立して制御するコントローラと、該コントローラより
出力されるアドレス信号と制御信号とに基づいて前記拡
張メモリバンクを選択してアクセスする拡張メモリ制御
手段とを有するメモリ制御装置において、前記拡張メモ
リ領域が複数種類のメモリから構成されている場合、或
は増設された拡張メモリバンクよりも下位アドレス空間
に未増設の拡張メモリバンクが存在する場合に、1種類
のメモリからなる該拡張メモリバンクを使用可能とし、
且つ前記未増設の拡張メモリバンクを使用禁止とし、更
に使用禁止とした該拡張メモリバンクをメモリ空間から
削除して、使用可能な該拡張メモリバンクを連続したメ
モリアドレス空間に再配置することを指示する再配置指
示手段を有し、前記拡張メモリ制御手段は、前記再配置
指示手段から出力される指示信号に基づいて前記拡張メ
モリバンクを制御する如く構成したことを特徴とするメ
モリ制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4075285A JPH05241951A (ja) | 1992-02-26 | 1992-02-26 | メモリ制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4075285A JPH05241951A (ja) | 1992-02-26 | 1992-02-26 | メモリ制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05241951A true JPH05241951A (ja) | 1993-09-21 |
Family
ID=13571805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4075285A Pending JPH05241951A (ja) | 1992-02-26 | 1992-02-26 | メモリ制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05241951A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100607939B1 (ko) * | 1999-10-02 | 2006-08-03 | 삼성전자주식회사 | Dram 구성을 자동 검출하는 장치 및 방법 |
-
1992
- 1992-02-26 JP JP4075285A patent/JPH05241951A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100607939B1 (ko) * | 1999-10-02 | 2006-08-03 | 삼성전자주식회사 | Dram 구성을 자동 검출하는 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5907512A (en) | Mask write enablement for memory devices which permits selective masked enablement of plural segments | |
CA2011518C (en) | Distributed cache dram chip and control method | |
US4860252A (en) | Self-adaptive computer memory address allocation system | |
JP3590413B2 (ja) | メモリ制御装置 | |
US5509132A (en) | Semiconductor memory device having an SRAM as a cache memory integrated on the same chip and operating method thereof | |
US5226139A (en) | Semiconductor memory device with a built-in cache memory and operating method thereof | |
JPH0420492B2 (ja) | ||
KR970705810A (ko) | 개선된 메모리 구조, 장치, 시스템 및 이를 사용하는 방법(an improved memory architecture and devices, systems and methods utilizing the same) | |
JP2002516452A (ja) | 同時にアクセスおよびリフレッシュ動作を行うダイナミックランダムアクセスメモリシステムならびにその使用方法 | |
KR980011414A (ko) | 랜덤 액세스 메모리 | |
EP0436077A2 (en) | Multiplexed serial register architecture for VRAM | |
US7350018B2 (en) | Method and system for using dynamic random access memory as cache memory | |
US6256256B1 (en) | Dual port random access memories and systems using the same | |
JP2004536417A (ja) | 読出及び書込動作でバースト順序が異なるアドレッシングを行うメモリデバイス | |
US6256221B1 (en) | Arrays of two-transistor, one-capacitor dynamic random access memory cells with interdigitated bitlines | |
US6408356B1 (en) | Apparatus and method for modifying signals from a CPU to a memory card | |
US6222786B1 (en) | Dynamic random access memory with write-without-restore and systems and methods using the same | |
JPH05241951A (ja) | メモリ制御装置 | |
JPH0467717B2 (ja) | ||
US6141727A (en) | Device and method for controlling data storage device | |
US6035372A (en) | Dynamic RAM in a microprocessor system | |
JP2848105B2 (ja) | ダイナミック型半導体記憶装置 | |
JPH05108471A (ja) | メモリ装置 | |
JP3075213B2 (ja) | メモリ制御回路 | |
JPH06223205A (ja) | データ処理装置 |