JPH07271663A - メモリ制御回路 - Google Patents

メモリ制御回路

Info

Publication number
JPH07271663A
JPH07271663A JP5926094A JP5926094A JPH07271663A JP H07271663 A JPH07271663 A JP H07271663A JP 5926094 A JP5926094 A JP 5926094A JP 5926094 A JP5926094 A JP 5926094A JP H07271663 A JPH07271663 A JP H07271663A
Authority
JP
Japan
Prior art keywords
address
row address
signal
memory
burst transfer
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
Application number
JP5926094A
Other languages
English (en)
Inventor
Tatatomi Suzuki
忠臣 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP5926094A priority Critical patent/JPH07271663A/ja
Publication of JPH07271663A publication Critical patent/JPH07271663A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 任意のメモリアドレス範囲で大量のデータ転
送を正しくかつ高速にアクセスするバースト転送が可能
なメモリ制御回路を提供する。 【構成】 行アドレス監視回路19は、昇順方向にアク
セスする場合には行アドレスの最大値、降順方向にアク
セスする場合には行アドレスの最小値を検出したとき検
出信号20を出力する。メモリ制御信号生成回路10
は、行アドレス監視回路19から検出信号20が出力さ
れない場合にはバースト転送の動作を継続させ、行アド
レス監視回路19から検出信号20が出力された場合に
はメモリ素子12に対して一旦バースト転送の動作を終
了させる制御信号を通知し、その後に同一のバスマスタ
からアクセス要求があった場合にはメモリ素子12に対
して当該バスマスタから出力された次の列アドレスを取
り込ませてバースト転送を再開する制御信号を通知す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、列アドレス入力と行ア
ドレス入力を備えるメモリ素子に対してバースト転送を
指示する制御信号を送出するメモリ制御回路に関する。
【0002】
【従来の技術】近年、画像データに対して種々の編集処
理を施すことができる画像処理装置の開発が盛んであ
り、ワークステーションやパーソナルコンピュータにお
いても画像データに対して種々の編集処理を施すことが
できるようになってきている。そして、このような画像
処理装置においては画像データに対して編集処理を行う
ために、内部に1〜数ページ分の画像データを格納でき
る画像メモリを備えるのが通常である。
【0003】ところで、画像データのデータ量は非常に
大きいものであり、1ページ当たり数Mバイトから数十
Mバイトにも及ぶことがある。そのために、画像メモリ
への画像データの書き込み、あるいは画像データからの
読み出しにかなりの時間を要することになるが、画像メ
モリに書き込みを行っている時間あるいは画像メモリか
ら読み出しを行っている時間には画像データに対して所
定の編集処理を実行することができないので、画像処理
装置のスループットが大幅に悪化してしまうという問題
がある。
【0004】そこで、従来の画像処理装置においては、
画像メモリに画像データを書き込む際のデータ転送方式
及び画像メモリから画像データを読み出す際のデータ転
送方式として通常バースト転送が採用されている。
【0005】バースト転送を用いたデータ転送制御方式
は、例えば、特開平1−271861号公報、特開平2
−250137号公報、特開平2−250138号公
報、特開平3−163638号公報に開示されている
が、画像メモリとしてはビット単価が安価なダイナミッ
クメモリが使用されることが多く、その場合にはダイナ
ミックメモリのページモード、スタティックカラムモー
ド、あるいはニブルモードを用いてバースト転送を行う
のが通常である。
【0006】そこで、画像メモリとしてダイナミックメ
モリを用い、そのページモードを用いてバースト転送を
行う場合について説明すると次のようである。
【0007】図11において、1はバスマスタ、2はデ
ータバス、3はアドレスバス、4は双方向バスバッフ
ァ、5は列アドレス/行アドレス切替回路、6はメモリ
データバス、7は時分割アドレスバス(MADD)、8
はアクセス調停回路、9は調停結果、10はメモリ制御
信号生成回路、11は制御信号、12はダイナミックメ
モリ、13、14、15はアクセス要求信号、16、1
7、18はアクセス応答信号を示す。
【0008】図11においては、CPUなどのバスマス
タ1は1個のみを図示しているが、一般的にはダイナミ
ックメモリ12に対しては複数のバスマスタからアクセ
スがあるものであり、この図11においては3つのアク
セス要求信号13、14、15がある場合について描い
ている。アクセス調停回路8は、これら複数のバスマス
タからのアクセス要求信号13、14、15について優
先順位の関係を入力設定されるようになっており、複数
のアクセス要求信号が同時に発生したときに、上記優先
順位の設定状態に基づいて調停を行って、その調停結果
9をメモリ制御信号生成回路10に入力するものであ
る。
【0009】いま、バスマスタ1が出力するバースト転
送のアクセス要求信号14がアクティブで、かつ他のア
クセス要求信号13及び15の中でアクセス要求信号1
4よりも優先度が高いものがインアクティブであるとす
ると、アクセス調停回路8はバスマスタ1のアクセス要
求信号14を選択して、そのアクセス要求を示す調停結
果9をメモリ制御信号生成回路10に入力する。これに
より、メモリ制御信号生成回路10がバースト転送のタ
イミングで制御信号11をダイナミックメモリ12に対
して出力するとともに、バスマスタ1に対して、当該バ
スマスタ1のアクセス要求が受け入れられたことを表す
アクセス応答信号17を出力する。ここで、制御信号1
1は、ダイナミックメモリ12を動かすための列アドレ
スストローブ(RAS)信号あるいは行アドレスストロ
ーブ(CAS)信号などである。また、アクセス調停回
路8によってアクセス要求信号13あるいは15が選択
されたときには、それぞれそれらのアクセス要求を出し
たバスマスタに対してアクセス応答信号16あるいは1
8が出力されることになる。
【0010】一方、バスマスタ1はデータバス2及びア
ドレスバス3を備えている。このデータバス2は双方向
バスバッファ4を介してダイナミックメモリ12のメモ
リデータバス6に接続されている。またアドレスバス3
は列アドレス/行アドレス切り換え回路5を介してダイ
ナミックメモリ12の時分割アドレスバス7に接続され
ている。
【0011】そして、メモリ制御信号生成回路10は、
調停結果9がバスマスタ1のアクセス要求を示している
間は、バスマスタ1に関してバースト転送を継続するも
のである。
【0012】図11に示すような従来例におけるバース
ト転送時の動作は次のようになる。バスマスタ1はダイ
ナミックメモリ12との間でバースト転送を行おうとす
る場合、アドレスバス3にダイナミックメモリ12に関
する列/行アドレス信号を出力するとともに、アクセス
要求信号14を出力する。そして、上述したようにバス
マスタ1のアクセス要求を示す調停結果9が得られたと
きには、メモリ制御信号生成回路10からアクセス応答
信号17が出力されるとともに、ダイナミックメモリ1
2に対して制御信号11としてまずRAS信号が出力さ
れ、このRAS信号のアクティブエッジにてアドレスバ
ス3に出力された列アドレスをダイナミックメモリ12
に取り込ませる。次に、RAS信号をアクティブに保っ
たまま引き続き制御信号11としてCAS信号を出力す
る。そして、このCAS信号のアクティブエッジにてア
ドレスバス3に出力された行アドレスをダイナミックメ
モリ12に取り込ませ、当該アドレスにアクセスする。
【0013】その後、CAS信号をインアクティブに
し、再度アクティブにするという操作により次の行アド
レスをダイナミックメモリ12に取り込ませ、最初のア
クセスとは別のアドレスへのアクセスを行う。このよう
に、CAS信号と行アドレスを順次入力することを繰り
返すことで連続した高速のアクセス、つまりバースト転
送を実現している。
【0014】
【発明が解決しようとする課題】この従来のバースト転
送方式においては、上述した説明で明らかなとおり、ア
ドレスバス3上の列アドレスは、RAS信号のアクティ
ブエッジにて最初に1回だけダイナミックメモリ12に
入力されるものであり、以後、行アドレスが順次変更さ
れていっても、ダイナミックメモリ12に取り込まれた
列アドレスの値は当該バースト転送の間は固定されるこ
とになる。したがって、逆にみれば、1回のバースト転
送中にアクセス可能なメモリ空間は、列アドレス固定の
状態で行アドレスの変化可能な範囲に限られることにな
る。
【0015】具体的な数値を挙げて例を説明すれば、1
メガ×1ビット構成のダイナミックメモリを8個使用し
て1メガバイトのページメモリを構成した場合、列アド
レス固定で行アドレスを変化させることでアクセス可能
な範囲は、列アドレスが一定値(固定)で行アドレスが
最大値1024相当となる1キロバイトまでとなる。すなわ
ち、ダイナミックメモリの先頭アドレスからアクセスす
る場合、[列アドレス=0番地/行アドレス=0番地]
からアクセスされ、[列アドレス=0番地/行アドレス
=1023番地]までが1回のバースト転送でアクセス可能
になる最大の範囲となる。仮に、ダイナミックメモリの
途中のアドレス、例えば[列アドレス=0番地/行アド
レス=500 番地]からアクセスするとすれば、そこから
[列アドレス=0番地/行アドレス=1023番地]までの
範囲がアクセス可能となるものである。
【0016】しかしながら、最近では数メガバイトから
数十メガバイトにも及ぶ大量のデータ転送を連続して行
うようなことが要求されることがある。そのような場合
には、メモリにアクセスしている途中で必ず行アドレス
が全て1(ハイレベル)のアドレスを通過した後、行ア
ドレスからの繰り上げ(キャリー)が発生するため、列
アドレスが変化しなければ正常なアクセスが行えないこ
とになる。ところが従来のバースト転送方式では、上述
したように列アドレスはRAS信号のアクティブエッジ
にて1回入力されるだけで固定されてしまうので、行ア
ドレスがどんどん変化していくと、既にアクセスが終了
したアドレスに対して2回目、3回目のアクセスを実行
してしまい、正常なデータ転送を行うことができないこ
ととなる。
【0017】この様子を図12によって具体的な例で説
明する。図12は前述した例と同じように、1メガ×1
ビット構成のダイナミックメモリ50を8個用いて1メ
ガバイトのページメモリを構成した例を示している。
【0018】いま、[列アドレス=0番地/行アドレス
=0番地]から1キロバイト以上の範囲にわたってメモ
リアドレスにアクセスしてバースト転送を行う場合につ
いて考えると、最初に当該ページメモリ(ダイナミック
メモリ)には列アドレス=0番地が入力されて固定さ
れ、列アドレス=0番地のダイナミックメモリについて
行アドレスを繰り上げながらアクセスが行われていく。
そして、[列アドレス=0番地/行アドレス=1023番
地]までアクセスされると、行アドレスからの繰り上げ
が発生するため、バスマスタからのアドレスバス上には
[列アドレス=1番地/行アドレス=0番地]が出力さ
れることになる。したがって、本来的には次の列アドレ
ス=1番地のダイナミックメモリの[列アドレス=1番
地/行アドレス=0番地]にアクセスしなければならな
いところである。しかしながら、当該ページメモリに取
り込まれた列アドレスは最初の0番地に固定されたまま
であり、改めてバスマスタ上の新しい列アドレス=1番
地が取り込まれることはないから、ページメモリ上で
は、前にアクセスしていた列アドレス=0番地のダイナ
ミックメモリの[列アドレス=0番地(固定)/行アド
レス=0番地]のメモリアドレスへ2回目のアクセスが
実行されてしまうのである。そして、そのまま当該ダイ
ナミックメモリのメモリアドレスに順次2回目のアクセ
スが行われていき、さらにアクセスが進んで、アドレス
バス上のアドレス信号が[列アドレス=2番地/行アド
レス=0番地]となれば、上記と同様の作用で同じダイ
ナミックメモリの[列アドレス=0番地/行アドレス=
0番地]のメモリアドレスへ3回目のアクセスが実行さ
れてしまうのである。このように、既にアクセスが終了
したアドレスに2回目、3回目のアクセスが実行される
ため、正常なデータ転送は行い得ない。
【0019】上記の例は、メモリの連続したアドレスエ
リアに対して、アドレスの進行方向を昇順(小さいアド
レスから大きいアドレスへ進行する方向)でアクセスし
た場合について説明したものであるが、アドレスの進行
方向を降順(大きいアドレスから小さいアドレスへ進行
する方向)でアクセスした場合にも同様の問題が発生す
る。すなわち、降順の場合には、行アドレスが全て 0
(ローレベル)のアドレスを通過した後、行アドレスか
らの繰り下げ(ボロー)が発生し、やはり列アドレスが
アドレスバス上では変化するが、ダイナミックメモリ上
では固定されているため、この場合も上述した昇順の場
合と同様に、既にアクセスが終了したアドレスに対し
て、2回目、3回目のアクセスを実行してしまい、正常
なデータ転送を行うことができない。
【0020】上述の不具合を回避するためには、従来で
は転送元のメモリアドレスや転送先のメモリアドレスと
転送単位とをバスマスタが管理し、行アドレスからの繰
り上げ(キャリー)/繰り下げ(ボロー)が発生するア
ドレスをまたぐバースト転送は行わないよう制御してい
る。すなわち、上述したように、バースト転送を正常に
行い得る範囲に制限が課せられることになる。
【0021】このように、従来のバースト転送方式で
は、大量のデータ転送を行おうとすると行アドレスから
の繰り上げ(キャリー)あるいは繰り下げ(ボロー)が
発生するアドレスにおいて正常に転送を行うことができ
ず、高速に大量のデータ転送を行うバースト転送方式の
本来の目的さえも達成することができないという問題点
がある。
【0022】また、正常なデータ転送を行おうとすれ
ば、転送元のメモリアドレスや転送先のメモリアドレス
と転送単位に制限が加わることとなり、任意のアドレス
間でバースト転送ができないという問題点がある。
【0023】さらに、バスマスタにおいて、転送元のメ
モリアドレスや転送先のメモリアドレスと転送単位の管
理が煩雑になるという問題点もあった。
【0024】本発明は上記課題を解決するためのもの
で、バスマスタにおける転送元のメモリアドレスや転送
先のメモリアドレス、また転送単位の管理を無くし、任
意のメモリアドレス範囲で大量のデータ転送を正しくか
つ高速にアクセスするバースト転送が可能なメモリ制御
回路を提供することを目的とする。
【0025】
【課題を解決するための手段】このため本発明のメモリ
制御回路では、少なくとも一つのバスマスタからのアク
セス要求に基づいて列アドレス入力と行アドレス入力を
備えるメモリ素子に対してバースト転送を指示する制御
信号を送出するメモリ制御回路であって、前記メモリ素
子の連続したアドレスエリアに対してアドレスの昇順方
向にアクセスする場合には行アドレスの最大値、または
最大値に準ずる値を検出したときに検出結果信号を出力
し、アドレスの降順方向にアクセスする場合には行アド
レスの最小値、または最小値に準ずる値を検出したとき
に検出結果信号を出力する行アドレス監視手段と、行ア
ドレス監視手段から検出結果信号が出力されない場合に
はバースト転送の動作を継続させ、行アドレス監視手段
から検出結果信号が出力された場合にはメモリ素子に対
して一旦バースト転送の動作を終了させる制御信号を通
知し、その後に同一のバスマスタからアクセス要求があ
った場合にはメモリ素子に対して当該バスマスタから出
力された次の列アドレスを取り込ませてバースト転送を
再開する制御信号を通知するメモリ制御信号生成手段と
を備えることを特徴としている。
【0026】
【作用】本発明では、行アドレス監視手段が設けられて
おり、メモリ素子へのアクセスが行われている間、行ア
ドレス入力が監視される。そして、昇順方向にアクセス
される場合には、行アドレスが最大値、例えば図12に
示した具体例においては行アドレス=1023番地、または
当該最大値に準ずる値になったとき、また降順方向にア
クセスされる場合には行アドレスが最小値、例えば図1
2の例では行アドレス=0番地、または当該最小値に準
ずる値になったとき、検出結果信号が出力される。すな
わち、行アドレスの繰り上げ/繰り下げによって列アド
レス入力が変化する直前にこの検出結果信号が出力され
ることになる。
【0027】この行アドレス監視手段から検出結果信号
が出力されると、一旦強制的にバースト転送が終了され
る。そして、バスマスタから依然としてアクセス要求が
継続している場合には、新しい列アドレス入力の値をメ
モリ素子に改めて取り込ませ、この新しい列アドレスの
値に基づいてバースト転送を再開するようにしている。
したがって、行アドレスからの繰り上げ/繰り下げが発
生するアドレスをまたぐバースト転送を行っても、同じ
メモリアドレスに何回もアクセスされるようなことはな
くなり、特別な制限が課せられることもなく、正常かつ
高速のバースト転送を行わせることができるものであ
る。また、このようなバースト転送の一旦停止、新しい
列アドレスの取り込み、バースト転送の再開という一連
の動作は行アドレス監視手段とメモリ制御信号生成手段
とによって行われ、バスマスタは一切関与しないため、
バスマスタの負荷を軽減することにもなる。
【0028】
【実施例】以下、本発明の詳細を図面を参照しつつ一実
施例に基づいて説明する。図1は本発明の一実施例であ
るメモリ制御回路のブロック構成図を示している。図1
において、図11と同じ番号は同じ内容を表しており、
1はバスマスタ、2はデータバス、3はアドレスバス、
4は双方向バスバッファ、5は列アドレス/行アドレス
切替回路、6はメモリデータバス、7は時分割アドレス
バス(MADD)、8はアクセス調停回路、9は調停結
果、10はメモリ制御信号生成回路、11は制御信号、
12はダイナミックメモリ、13、14、15はアクセ
ス要求信号、16、17、18はアクセス応答信号を示
す。さらに、19は行アドレス監視回路、20は検出結
果信号である。
【0029】図1に示した実施例では、ダイナミックメ
モリ12にアクセスするデバイスとして、バスマスタ1
を想定している。当該バスマスタ1はデータバス2及び
アドレスバス3を備える。このうち、データバス2は、
双方向バスバッファ4を介してダイナミックメモリ12
のメモリデータバス6に接続されている。また、アドレ
スバス3は、列アドレス/行アドレス切替回路5を介し
てダイナミックメモリ12の時分割アドレスバス7に接
続されている。さらに、当該アドレスバス3は行アドレ
ス監視回路19にも接続されており、この行アドレス監
視回路19の検出結果信号20はメモリ制御信号生成回
路10に入力されるように接続されている。
【0030】一方、上記バスマスタ1から出力されるア
クセス要求信号14は、他のデバイスから出力されるア
クセス要求信号13や15とともにアクセス調停回路8
に入力される。このアクセス調停回路8は、アクセス要
求信号13、14及び15を予め定められたアクセス優
先順位に従って調停し、その調停結果9をメモリ制御信
号生成回路10に出力する。そして、メモリ制御信号生
成回路10は、バスマスタ1を含む各デバイスにアクセ
ス応答信号16、17、あるいは18を出力するととも
に、調停結果9及び検出結果信号20をもとにしてダイ
ナミックメモリ12に対する制御信号11を出力する。
この制御信号11は、ダイナミックメモリ12を動かす
ための列アドレスストローブ(RAS)信号あるいは行
アドレスストローブ(CAS)信号などである。
【0031】なお、バスマスタ1は、他のメモリ等のデ
バイスと接続されており、応答信号のやりとりを通じ
て、それら他のデバイスとの間でデータ交換等を行うも
のである。
【0032】次に、図1に示す一実施例の動作につい
て、図1から図9に基づいて詳しく説明する。なお、各
図に示した各信号のうち、ローアクティブの信号は各信
号の記号の先頭に”n”をつけることで表現している。
また、本実施例におけるダイナミックメモリ12は、1
メガ×1ビット構成のダイナミックメモリを8個使用し
て1メガバイトのメモリを構成する例を取り上げてい
る。さらに本実施例の動作に関する以下の説明では、バ
スマスタ1がダイナミックメモリ12に対して、アドレ
ス進行方向が昇順のバースト転送の読出しアクセスを行
う場合について説明するが、降順方向にアクセスする場
合も、また書込みアクセスを行う場合も、同様の制御態
様が適用されることは言うまでもない。
【0033】まず、図1において、バスマスタ1はアド
レスバス3にダイナミックメモリ12を指し示すアドレ
ス(列アドレス及び行アドレス)を出力する。これと同
時に、バスマスタ1はアクセス要求信号14をアクセス
調停回路8に出力する。バスマスタ1がCPUの場合に
は、このアクセス要求信号14はアドレスバス3に出力
されたアドレスをデコードしたチップセレクト信号であ
る場合が一般的である。また、バスマスタ1が画像処理
デバイスやハードディスクコントローラ等のインプット
/アウトプットデバイスである場合には、このアクセス
要求信号14はダイレクトメモリアクセス(DMA)リ
クエスト等となる。
【0034】アクセス要求信号14を入力されたアクセ
ス調停回路8では、予め定められたアクセス優先順位に
従い、各デバイスから送られてくるアクセス要求信号1
3,14,15を調停する。このアクセス調停回路8
は、原理的にはNOT回路、AND回路等の論理回路の
組合せで実現することができる。そのようなアクセス調
停回路8の一構成例を図2に示す。
【0035】図2の構成例では、3つのアクセス要求信
号13、14、15のうち、アクセス要求信号13のア
クセス優先順位が最も高く、次いでアクセス要求信号1
4,アクセス要求信号15の順に優先順位が与えられて
いる場合のものを示している。従って、アクセス要求信
号13がアクティブとなった場合には、他のアクセス要
求信号14,15の状態の如何に拘わらず、アクセス要
求信号13を表す調停結果91がアクティブとなり、同
時に他の調停結果92及び93はインアクティブとなっ
て、最終的な出力としての調停結果9としては、上記調
停結果91が出力されることとなる。
【0036】また、アクセス要求信号14がアクティブ
となったときに、より優先順位の高いアクセス要求信号
13がインアクティブであれば、調停結果としては、ア
クティブ要求信号15の状態の如何にかかわらず、アク
セス要求信号14を表す調停結果92がアクティブとな
る。このとき他の調停結果91と93はともにインアク
ティブとなるため、調停結果9としては、上記調停結果
92が出力される。
【0037】さらに、アクセス要求信号15がアクティ
ブとなったとき、それよりも優先順位の高いアクセス要
求信号13及び14がともにインアクティブであれば、
このアクセス要求信号15が受け付けられる。このとき
の調停結果9の状態は、調停結果93のみがアクティブ
で、他の調停結果91及び92はともにインアクティブ
となる。
【0038】ここで、図2に示した一構成例の動作をま
とめると、調停結果91、92、93は排他制御されて
いることになる。以下に行う本実施例の説明では、この
図2に示した構成例からなるアクセス調停回路8を備え
たものとして説明を行うこととするが、一般的には、ア
クセス調停回路8に入力されるアクセス要求信号の数は
3つに限られるものでないことは言うまでもない。
【0039】いま、バスマスタ1からのアクセス要求信
号14がアクティブで、それより優先順位の高いアクセ
ス要求信号13がインアクティブであるとすると、アク
セス調停回路8の出力である調停結果9としては、アク
セス要求信号14を表す調停結果92のみがアクティブ
となる。この調停結果9(92)は、図1で説明したよ
うに、次段のメモリ制御信号生成回路10に入力され
る。
【0040】当該メモリ制御信号生成回路10では、調
停結果9を受けて適切なタイミングでアクセス応答信号
16、17、18及び制御信号11を生成する。上記の
ように調停結果9として調停結果92がアクティブとな
っている場合には、バスマスタ1に対するアクセス応答
信号17のみがアクティブとなってバスマスタ1に入力
され、かつ制御信号11がダイナミックメモリ12に入
力される。このような動作を行うメモリ制御信号生成回
路10の一構成例を図3に示す。
【0041】図3において、調停結果9に関する全ての
調停結果91、92、及び93がローアドレスストロー
ブ(RAS)生成回路24、カラムアドレスストローブ
(CAS)生成回路25、ライトイネーブル(WE)生
成回路26、アウトプットイネーブル(OE)生成回路
27に入力されている。そして、これらRAS生成回路
24、CAS生成回路25、WE生成回路26、OE生
成回路27は、調停結果91、92、93のうち、何れ
か一つの信号がアクティブになると、そのアクセス要求
に応じた適切なタイミングでダイナミックメモリに対す
る制御信号11を生成する。
【0042】図4には、上記RAS生成回路24の一構
成例を表す状態遷移図を示す。この図4では、ARA、
ARB、ARCはそれぞれ入力信号である調停結果9
1、92、93を表し、また、RQA、RQB、RQC
は同じくアクセス要求信号13、14、15を表し、さ
らに、CADDは検出結果信号20を表している。また
図4では、これらの各記号の先頭に”−”記号を付ける
ことでこれらの各信号がインアクティブ状態にあること
を表し、各信号の記号の先頭に”−”記号を付けないこ
とでアクティブ状態にあることを表している。また、”
×”記号は論理積を、”+”記号は論理和を表してい
る。
【0043】図4のRAS生成回路24は、調停結果9
1(ARA)、92(ARB)、及び93(ARC)が
全てインアクティブである場合には240で示す待機状
態SIをループしている。調停結果91(ARA)がア
クティブとなった場合には、241で示す状態SAに遷
移し、アクセス要求信号13(RQA)の処理を行うた
めに適切なタイミングで図3に示すnRAS信号31を
生成する。調停結果93(ARC)がアクティブとなっ
た場合(注:この場合の条件は「−ARA×−ARB×
ARC」とはしなくてよい。なぜなら、ARA、AR
B、ARCは排他制御されているからである。)には、
243で示す状態SCに遷移し、アクセス要求信号15
(RQC)の処理を行うために適切なタイミングでnR
AS信号31を生成する。どちらの場合にもnRAS信
号31の生成が終了すると待機状態SIに戻る。なお、
アクセス要求信号13(RQA)及び15(RQC)に
より実行される処理の内容は、本実施例の動作には直接
関係なく、またバースト転送を行う場合には、状態S
A、状態SCは242で示す状態SBと同様の動作とな
るため、ここでは状態SA及び状態SCの動作について
は詳述しない。
【0044】本実施例のものにおいて、調停結果92
(ARB)がアクティブになった場合(前述した調停結
果93(ARC)がアクティブとなった場合の”注”を
参照)には、RAS生成回路24はアクセス要求信号1
4(RQB)の処理を行うために適切なタイミングでn
RAS信号31を生成する。より具体的に説明すれば、
図4において調停結果92(ARB)がアクティブとな
ったときに、RAS生成回路24は待機状態SIから2
42で示す状態SBのうち244で示す状態SB1に遷
移し、nRAS信号31をアサートする。この状態SB
1では調停結果91(ARA)、92(ARB)及び検
出結果信号20(CADD)をモニタしている。ここ
で、検出結果信号20(CADD)は、図1に示すよう
に行アドレス監視回路19から出力されるものである。
【0045】図4の状態SB1において、245に示す
ように調停結果92(ARB)がアクティブでかつ検出
結果20(CADD)がインアクティブ(すなわち−C
ADD)の状態にある間は状態SB1をループし続け、
その結果としてnRAS信号31をアサートし続ける。
この状態は、246に示すような、状態SB1において
調停結果92(ARB)がインアクティブ(すなわち−
ARB)または検出結果信号20(CADD)がアクテ
ィブという条件が満たされるまで維持される。そして、
この246で示すような条件が満たされると、247で
示す状態SB2に遷移し、nRAS信号31をネゲート
する。
【0046】図5に、状態SB1から次の状態への遷移
を表す真理値表の一例を示す。さらに、図5の真理値表
を簡略化したものを図6に示す。本実施例において、上
述した図4の状態SB1から次の状態への遷移は、図6
に示した簡略化した真理値表に基づいている。ただし、
図6の表中の項目2の調停結果91(ARA)=0かつ
調停結果92(ARB)= 1という条件は、図2におい
て調停結果91(ARA)、調停結果92(ARB)が
排他制御されていることから、調停結果92(ARB)
= 1という条件と同等であるため、図4には調停結果9
2(ARB)=1という条件のみが反映されている。な
お、状態SB2からは無条件で待機状態SIに戻る。
【0047】以上、図3に示すRAS生成回路24の構
成例について説明したが、同図に示されたCAS生成回
路25、WE生成回路26、OE生成回路27について
も同様のシーケンスで回路を実現することができるた
め、ここではそれらの構成例についての詳細な説明は省
略する。
【0048】図3に戻り、アクセス応答信号A生成回路
28には調停結果91及び検出結果信号20が入力され
ており、調停結果91がアクティブになったときにだけ
アクセス応答信号16を生成するために動作する。ま
た、アクセス応答信号B生成回路29には調停結果92
及び検出結果信号20が入力されており、調停結果92
がアクティブになったときにだけアクセス応答信号17
を生成するために動作する。同様に、アクセス応答信号
C生成回路30には調停結果93及び検出結果信号20
が入力されており、調停結果93がアクティブになった
ときにだけアクセス応答信号18を生成するために動作
する。これらのアクセス応答信号A生成回路28、アク
セス応答信号B生成回路29、アクセス応答信号C生成
回路30の具体的な構成例については、これらもCAS
生成回路25等と同様に、図4に示すRAS生成回路2
4と同様のシーケンスで回路を実現することができるた
め、ここではそれらの構成例についての詳細な説明は省
略する。
【0049】次に、図3中の各回路24〜30に入力さ
れている検出結果信号20を生成、出力している図1中
の行アドレス監視回路19について説明する。図7に行
アドレス監視回路19の一構成例を示す。
【0050】図7に示した一構成例において、行アドレ
ス監視回路19は、行アドレスラッチ回路36と、行ア
ドレス比較回路38とから構成されている。行アドレス
ラッチ回路36は、アドレスバス3のうち行アドレスに
相当するアドレス線を入力とし、これを行アドレスラッ
チクロック35にてラッチする。行アドレスラッチクロ
ック35としては図3に示すnCAS信号32をそのま
ま使用することができる。また、図1のバスマスタ1が
CPUである場合には、この行アドレスラッチクロック
35として、当該CPUが出力するアドレスストローブ
信号やアドレスラッチイネーブル信号等を使用すること
も可能である。
【0051】次に、行アドレス監視回路19の動作を説
明すれば、次のようである。なお、以下の説明では、上
記行アドレスラッチクロック35として、図3に示すn
CAS信号32を使用した場合を例として取り上げる。
【0052】まず、図3に示すCAS生成回路24がn
CAS信号32を出力すると、図7に示す行アドレスラ
ッチ回路36はnCAS信号32のアクティブエッジ
(立ち下がりエッジ)にてアドレスバス3上の行アドレ
スをラッチする。ここではラッチされた10ビットの行ア
ドレスの値を000H(H は16進数を示す)として説明す
る。行アドレスラッチ回路36によってラッチされた行
アドレス、すなわち図7に示したラッチアドレス37
は、nCAS信号32が再度アサートされるまでは変化
しない。つまり、1回の転送中は保持されていることと
なる。その後、アドレスバス3に出力されるアドレス、
特にアドレスバス3のうち行アドレスに相当するアドレ
ス線が変化すると、nCAS信号32のアサート/ネゲ
ートが繰り返されてバースト転送が進行していくが、そ
の際、nCAS信号32が再度アサートされるたびごと
にラッチアドレス37が変化することとなる。
【0053】このようにして取り込まれたラッチアドレ
ス37は、行アドレス比較回路38に入力される。この
行アドレス比較回路38では、入力されたラッチアドレ
ス37の全てのアドレス線を逐次、論理値 1、つまりハ
イレベルと比較している。そして、ラッチアドレス37
の全てのアドレス線が 1でなければ、検出結果信号20
は出力されず(インアクティブ)、ラッチアドレス37
の全てのアドレス線が1になると検出結果信号20が出
力(アクティブ)されるように構成されている。
【0054】このようにバースト転送の進行中、ラッチ
アドレス37は行アドレス比較回路38によって逐次モ
ニタされるが、上述したとおり、行アドレスに相当する
アドレス線が全てハイレベル(3FFH)になるまでの間は
検出結果信号20はインアクティブな状態に保持され
る。その後バースト転送が進み、行アドレスに相当する
アドレス線が全てハイレベル(3FFH)になると、そのと
きのnCAS信号32のアクティブエッジにてラッチさ
れたラッチアドレス37は全て 1となるため、行アドレ
ス比較回路38によって検出結果信号20が出力され
る。
【0055】なお、さらにバースト転送を続けると、次
の転送では行アドレスに相当するアドレス線は全てロー
(000H)となり、代わりに列アドレスに相当するアドレ
ス線が 1だけ繰り上げられる。そうするとラッチアドレ
ス37は全てローとなるため、検出結果信号20は再び
出力されなくなる。検出結果信号20はこのように変化
するものであり、これが図1及び図3に示すメモリ制御
信号生成回路10に供給される。
【0056】なお、以上の説明では、行アドレス比較回
路38はラッチアドレス37が全てハイレベルになると
検出結果信号20を出力するものとして説明したが、こ
のように行アドレスが全てハイレベルであることを検出
することは、バースト転送のアドレス進行方向が昇順の
場合に有効な方法である。逆にバースト転送のアドレス
進行方向が降順の場合には、行アドレスが全てローレベ
ルであることを検出するため、行アドレス比較回路38
においてラッチアドレス37が全てローレベルになった
とき検出結果信号20が出力されるようにすることが有
効な方法となることは容易に理解されよう。しかし、い
ずれにしてもこれらの組み合わせに限定されるものでは
なく、要は列アドレスが繰り上がり/繰り下がりを生ず
る時点を検出できるように構成すれば良いものであるこ
とは言うまでもない。
【0057】次に、図8及び図9に基づいて、これまで
説明してきた図1図示の一実施例の動作を説明する。図
8及び図9は、図1の一実施例の動作を説明するための
タイミングチャートである。図中、3桁の数字は10ビッ
トの列アドレスまたは行アドレスの値を16進数で表した
ものである。また、このタイミングチャートでは、メモ
リ素子12のデータを読み出す場合について説明してい
る。
【0058】まず、図8のタイミングチャートでは、1
回のバースト転送中に行アドレスからの繰り上げが発生
するアドレスをまたがなかった場合の各信号の生成関係
を示している。すなわち、アドレスバス3に、[列アド
レス=001H/行アドレス=001H]から[列アドレス=00
1H/行アドレス=005H]が出力された場合について説明
しており、この間、行アドレスの繰り上げは発生してお
らず、したがって列アドレスは変化していない。
【0059】図8では、まずアクセス要求信号14が発
生すると、調停回路8によって調停が行われる。この例
ではより優先順位の高いアクティブ要求信号13が発生
していないため、調停結果9としてはアクセス要求信号
14を表す調停結果92が出力される。すると、メモリ
制御信号生成回路10により、適当なタイミングでnR
AS信号31、nCAS信号32、nOE信号34が制
御信号11としてメモリ素子12に入力されるととも
に、アクセス応答信号17がバスマスタ1に対して出力
される。この例では、メモリ素子12のデータを読み出
す場合について説明しているため、nOE信号34がア
クティブとされnWE信号33がインアクティブとされ
ているが、書き込みアクセスの場合にはこれとは反対
に、nWE信号33がアクティブとなり、nOE信号3
4がインアクティブとなるものである。
【0060】メモリ素子12では、nRAS信号31が
入力されると、そのアクティブエッジ(立ち下がり)で
アドレスバス3上の列アドレス=001Hを取り込み、nR
AS信号31が持続する限り、その値を保持する。次
に、nCAS信号32が入力されると、その最初のアク
ティブエッジ(立ち下がり)で最初の行アドレス=001H
を取り込む。そして、これら取り込んだ列アドレスと行
アドレスの値に基づき、メモリ素子12上で[列アドレ
ス=001H/行アドレス=001H]のアドレスにアクセスが
行われる。以下、nCAS信号32がインアクティブ、
アクティブを繰り返し、そのアクティブエッジの各々で
順次新しい行アドレスが取り込まれ、次々と異なるアド
レスにアクセスが行われて、バースト転送が行われるこ
とになる。ところで、行アドレス監視回路19でもnC
AS信号32のアクティブエッジ(立ち下がり)にて行
アドレスをラッチするが、その結果ラッチされたラッチ
アドレス37は最初は001Hであり、さらにバースト転送
中に002H,003H,004H, …と変化していく。この図8で示
した例では、1回のバースト転送中、すなわちアクセス
要求信号14がアクティブとなっている期間にはラッチ
アドレス37は3FFHとならないため、行アドレス監視回
路19からの検出結果信号20はアクティブとならな
い。したがって、このバースト転送は中断されることが
なく、アクセス要求信号14がネゲートされるまで継続
される。すなわち、メモリ素子12に取り込まれた列ア
ドレス=001Hの値は、このバースト転送の途中で変更さ
れない。そして、アクセス要求信号14がネゲートされ
た後、正常にバースト転送を終了する。
【0061】次に、図9に基づいて、1回のバースト転
送中に行アドレスからの繰り上げが発生するアドレスを
またいだ場合の動作について説明する。ここでは、[列
アドレス=001H/行アドレス=3FEH]から[列アドレス
002H/行アドレス002H]までのアドレスにアクセスする
場合の例について示している。図9における基本的な信
号生成のタイミングは、図8に基づいて説明したものと
同様である。
【0062】図9では、図8の場合と同様に、nRAS
信号及びnCAS信号の最初のアクティブエッジで列ア
ドレス=001H、行アドレス=3FEHがメモリ素子12に取
り込まれ、この[列アドレス=001H/行アドレス=3FE
H]のアドレスからアクセスが開始される。一方、行ア
ドレス監視回路19では、nCAS信号32の最初のア
クティブエッジにて行アドレス=3FEHをラッチアドレス
37としてラッチし、以降このラッチアドレス37はバ
ースト転送中に3FEH,3FFH,000H,001H,…と変化してい
く。すると、ラッチアドレス37が3FFHとなるところ
で、図7に基づいて説明したように、行アドレス監視回
路19の検出結果信号20がアクティブとなる。このた
め、この検出結果信号20を入力されているメモリ制御
信号生成回路10内の各信号生成回路24〜30は、ア
クセス要求信号14の処理を行うための動作を中断し、
結果としてバースト転送を強制的に一旦停止する。
【0063】しかし、このバースト転送停止後も引き続
き調停結果92がアクティブであるので、これら各信号
生成回路24〜30はこれを検出してアクセス要求信号
14の処理を行うための動作を再起動し、バースト転送
を継続させようとする。そしてその際、まずnRAS信
号31がインアクティブからアクティブに変化するた
め、そのアクティブエッジ(立ち下がり)にて新しい列
アドレス=002Hがメモリ素子12に取り込まれることに
なる。その後nCAS信号によって行アドレスが000Hか
ら順次取り込まれることになるが、すでにメモリ素子1
2内に取り込まれた列アドレスが1つ繰り上げられてい
るため、新しいアドレスに正しくアクセスすることがで
きるものである。そして、アクティブ要求信号14がネ
ゲートされたところで、バースト転送が正常に終了され
ることとなる。なお、以上の説明で明らかなとおり、こ
の一連の動作に関しては図1におけるバスマスタ1は何
の制御も行っておらず、行アドレス開始回路19とメモ
リ制御信号生成回路10とによって自動的に行われるも
のである。
【0064】さらに、図10に本発明の他の実施例構成
を示す。図1の一実施例構成では、行アドレス監視回路
19において行アドレスを監視するための入力をアドレ
スバス3から取っていたのに対し、図10の実施例で
は、同じ入力を時分割アドレスバス7から取っているも
のであり、他の構成は同じである。すなわち、図1の一
実施例構成のものでは、アドレスバス3のアドレス信号
のうち行アドレスに相当する部分を見て行アドレスを取
り込んでいるのに対し、図10に示した実施例構成のも
のでは、列アドレス/行アドレス切替回路5が切り替え
て時分割アドレスバス7上に出す行アドレスを取り込ん
でいるものである。要するに、行アドレス監視回路19
では行アドレスが取り込めれば良いのであり、どこから
行アドレスを取り込むかは本発明において本質的な問題
ではない。
【0065】なお、本発明は上記各実施例に限定される
ものではなく、本発明の思想を逸脱しない限り色々な変
形が可能であることは言うまでもない。例えば、以上の
説明では、行アドレス監視回路19が列アドレスの最大
値3FFHを検出したときに検出結果信号20を出力するも
のとして説明したが、当該行アドレス監視回路19の果
たすべき機能は列アドレスの繰り上がりの発生を検知す
ればよいのであるから、上記列アドレスの最大値3FFHに
準ずる値、例えば、3FEH等を検出したときに検出結果信
号20を出力するようにしてもよい。
【0066】また、上記各実施例では、ページモードを
用いてバースト転送を行う場合について説明したが、ス
タティックカラムモード、ニブルモードなどの他のモー
ドでバースト転送を行う場合にも適用できるものであ
る。
【0067】さらに、既に述べたとおり、メモリ素子1
2へのアクセスを降順方向で行う場合でも同様に実施で
きる。なお、この場合には、行アドレス監視回路19は
行アドレスの最小値、または最小値に準ずる値を検出し
たときに検出結果信号20を出力する。さらには書き込
みアクセス、読み出しアクセスのいずれにも適用可能で
ある。
【0068】
【発明の効果】以上のように本発明によれば、行アドレ
スからの繰り上げ/繰り下げが発生するアドレスをまた
いだ大量のデータ転送を行った場合でも、行アドレスか
らの繰り上げ/繰り下げが発生するアドレスを検出し、
列アドレスを自動更新できるようにしたので、転送元の
メモリアドレスや転送先のメモリアドレスと転送単位に
制限が課せられることなく、任意のアドレス間で正しく
かつ高速にバースト転送を行うことが可能となる。ま
た、そのための一連の制御をバスマスタの制御によらず
自動的に実行するようにしたため、バスマスタにおける
転送元のメモリアドレスや転送先のメモリアドレスと転
送単位の管理という煩雑な処理をなくすことも可能とな
る。結果として、オーバーヘッドが少なく信頼性の高い
メモリ制御回路を提供することができる。
【図面の簡単な説明】
【図1】 本発明の一実施例構成を示す図である。
【図2】 本発明の一実施例構成におけるアクセス調停
回路の一構成例を示す図である。
【図3】 本発明の一実施例構成におけるメモリ制御信
号生成回路の一構成例を示す図である。
【図4】 本発明の一実施例構成におけるRAS生成回
路の一構成例を示す図である。
【図5】 本発明の一実施例構成におけるRAS生成回
路の動作を説明するための真理値表である。
【図6】 本発明の一実施例構成におけるRAS生成回
路の動作を説明するための簡略化された真理値表であ
る。
【図7】 本発明の一実施例構成における行アドレス監
視回路の一構成例を示す図である。
【図8】 本発明の一実施例構成の動作を説明するため
のタイムチャートである。
【図9】 本発明の一実施例構成の動作を説明するため
のタイムチャートである。
【図10】 本発明の他の実施例構成を示す図である。
【図11】 従来技術の構成を示す図である。
【図12】 メモリ素子の構成例を示す図である。
【符号の説明】
1…バスマスタ、2…データバス、3…アドレスバス、
4…双方向バスバッファ、5…列アドレス/行アドレス
切替回路、6…メモリデータバス、7…時分割アドレス
バス、8…アクセス調停回路、9…調停結果、10…メ
モリ制御信号生成回路、11…制御信号、12…ダイナ
ミックメモリ、13、14、15…アクセス要求信号、
16、17、18…アクセス応答信号、19…行アドレ
ス監視回路、20…検出結果信号。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】少なくとも一つのバスマスタからのアクセ
    ス要求に基づいて列アドレス入力と行アドレス入力を備
    えるメモリ素子に対してバースト転送を指示する制御信
    号を送出するメモリ制御回路であって、 前記メモリ素子の連続したアドレスエリアに対してアド
    レスの昇順方向にアクセスする場合には行アドレスの最
    大値、または最大値に準ずる値を検出したときに検出結
    果信号を出力し、アドレスの降順方向にアクセスする場
    合には行アドレスの最小値、または最小値に準ずる値を
    検出したときに検出結果信号を出力する行アドレス監視
    手段と、 行アドレス監視手段から検出結果信号が出力されない場
    合にはバースト転送の動作を継続させ、行アドレス監視
    手段から検出結果信号が出力された場合にはメモリ素子
    に対して一旦バースト転送の動作を終了させる制御信号
    を通知し、その後に同一のバスマスタからアクセス要求
    があった場合にはメモリ素子に対して当該バスマスタか
    ら出力された次の列アドレスを取り込ませてバースト転
    送を再開する制御信号を通知するメモリ制御信号生成手
    段とを備えることを特徴とするメモリ制御回路。
JP5926094A 1994-03-29 1994-03-29 メモリ制御回路 Pending JPH07271663A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5926094A JPH07271663A (ja) 1994-03-29 1994-03-29 メモリ制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5926094A JPH07271663A (ja) 1994-03-29 1994-03-29 メモリ制御回路

Publications (1)

Publication Number Publication Date
JPH07271663A true JPH07271663A (ja) 1995-10-20

Family

ID=13108234

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5926094A Pending JPH07271663A (ja) 1994-03-29 1994-03-29 メモリ制御回路

Country Status (1)

Country Link
JP (1) JPH07271663A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002008376A (ja) * 2000-03-24 2002-01-11 Cypress Semiconductor Corp 同期式バーストメモリ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002008376A (ja) * 2000-03-24 2002-01-11 Cypress Semiconductor Corp 同期式バーストメモリ

Similar Documents

Publication Publication Date Title
US4449183A (en) Arbitration scheme for a multiported shared functional device for use in multiprocessing systems
US5455915A (en) Computer system with bridge circuitry having input/output multiplexers and third direct unidirectional path for data transfer between buses operating at different rates
US5857114A (en) DMA system for re-arbitrating memory access priority during DMA transmission when an additional request is received
JP3749732B2 (ja) コンピュータ・バス上の共用リソースに対する高速アクセス
US5664122A (en) Method and apparatus for sequencing buffers for fast transfer of data between buses
US5574868A (en) Bus grant prediction technique for a split transaction bus in a multiprocessor computer system
US5717873A (en) Deadlock avoidance mechanism and method for multiple bus topology
JP3290650B2 (ja) メモリ制御装置
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
US6205507B1 (en) Memory coherency in a processor-to-bus cycle in a multi-processor system
JPH07271663A (ja) メモリ制御回路
US5809534A (en) Performing a write cycle to memory in a multi-processor system
US5278965A (en) Direct memory access controller
JPH11184761A (ja) リードモディファイライト制御システム
JP2000227895A (ja) 画像データ転送装置および画像データ転送方法
JPH06324957A (ja) バス監視装置
JP3266610B2 (ja) Dma転送方式
JP2837698B2 (ja) ダイレクト・メモリ・アクセス制御装置
JPH06187229A (ja) メモリ制御回路
JPH1139266A (ja) マルチプロセッサ装置
JPH11184827A (ja) マスタスレーブ装置
JPH1011356A (ja) メモリアクセスシステム
JP2820054B2 (ja) バスインタフェース装置
JPH0743668B2 (ja) アクセス制御装置
JP2710483B2 (ja) 半導体集積回路