JPH047762A - メモリアクセス方法 - Google Patents

メモリアクセス方法

Info

Publication number
JPH047762A
JPH047762A JP11154390A JP11154390A JPH047762A JP H047762 A JPH047762 A JP H047762A JP 11154390 A JP11154390 A JP 11154390A JP 11154390 A JP11154390 A JP 11154390A JP H047762 A JPH047762 A JP H047762A
Authority
JP
Japan
Prior art keywords
address
memory
cpu
access
address value
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
JP11154390A
Other languages
English (en)
Inventor
Nobutaka Maruyama
修孝 丸山
Katsuya Mitsutake
克也 光武
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 JP11154390A priority Critical patent/JPH047762A/ja
Publication of JPH047762A publication Critical patent/JPH047762A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は読み書きすべきデータを所定のワード単位でメ
モリに読み書きするメモリアクセス方法に関する。
〔従来の技術〕
従来、CPUからのアクセス要求に応してメモリをアク
セスするメモリアクセス装置では、CPUからのアクセ
ス時に送出されたアドレスを入力し、この入力したアド
レスをメモリに送出し、さらにCPUからのアドレスス
トローブ信号に基づいて、アドレスを指定しアクセスす
るようにしている。
第8図はスタティックRAM (以下、S RAMとい
う)へのアクセスサイクルを示したタイミングチャート
である。この従来のアクセス方法においては、第8図(
b)に示すようなアドレスがSRAMに送出される場合
は、同図(a)に示すようなCPUからのアドレススト
ローブ信号ASに基づいて、アクセスすべきアドレスが
指定されることになる。この指定されたアドレスに基づ
いてリード/ライトのアクセスを行うことができる。
また第9図はダイナミックRAM (以下、DRAMと
いう)へのアクセスサイクルを示したタイミングチャー
トである。この従来のアクセス方法においては、第9図
(b)に示すようなアドレスがDRAMに送出される場
合は、同図(a)に示すようなCPUからのアドレスス
トローブ(AS)信号に基づいて、最初に同図(c)に
示すような行アドレスストローブ(RAS)信号基づい
て行アドレスが指定され、次に同図(d)に示すような
列アドレスストローブ(CAS)信号に基づいて列アド
レスが指定される。この指定された行アドレス及び列ア
ドレスに基づいてリード/ライトのアクセスを行うこと
ができる。
〔発明が解決しようとする課題〕
ところで、上述した従来のメモリアクセス装置では、S
RAMあるいはDRAMのメモリのアクセスに際しては
、CPUから送出されたアクセスすべき確定されたアド
レスを入力し、コノ入カシたアドレスをメモリに送出し
なければならず、CPUからの次のアクセスすべきアド
レスか確定しないうちは、メモリに対しアドレスを指定
することができないことになる。このことがCPUのメ
モリに対するアクセスの高速化の障害となっている。
本発明は上記実情に鑑みてなされたものであり、高速な
メモリアクセスを行うことができるメモリアクセス方法
を提供することを目的とする。
〔課題を解決するための手段〕
上述した課題を解決するため、本発明に係るメモリアク
セス方法では、既にアクセスした際のアドレス値に基づ
いて次回のアクセス要求時のアドレス値を予測し、該予
測したアドレス値を要求元からの次回のアクセス要求前
にメモリに送出し、さらに要求元からの実際のアクセス
要求時のアドレス値と前記予測したアドレス値とを比較
し、致した場合は、既にメモリに送出されている予測し
たアドレス値に基づいてメモリにデータを読み書きする
ようにしている。
〔作用〕
本発明に係るメモリアクセス方法では、既にアクセスし
た際のアドレス値に基づいて次回のアクセス要求時のア
ドレス値を予測し、その予測したアドレスを次回のアク
セス要求前にメモリに送出しておく。例えば、前回のア
クセス時のアドレス値に1ワ一ド分インクリメントした
アドレス値を予測したアドレス値として、次回のアクセ
ス要求前にメモリに送出しておく。そして要求元からの
実際の次回のアクセス要求時のアドレス値と前記予測し
たアドレス値とを比較し、一致した場合は、既にメモリ
に送出されている予測したアドレス値に基づいてメモリ
に読み書きするので、要求元のメモリへのアクセスタイ
ムを短縮できる。
〔実施例〕
以下、本発明に係るメモリアクセス方法の実施例を添付
図面を参照して説明する。
第2図及び第3図は本発明に係るメモリアクセス方法の
メモリへのアドレスの送出動作を説明するためのタイミ
ングチャートである。
第2図はスタティックランダムアクセスメモリ(以下S
RAMという)へのアドレスの送出タイミングを示して
いる。同図(b)に示すように、1回目のアクセス時の
アドレス■をSRAMへ送出し、次のアクセス時のアド
レス(■+1)を、中央処理装置(以下、CPUという
)からの2回目のアクセス要求前にSRAMへ送出する
。また3回目のアクセス時のアドレス(■+2)も同様
に送出する。
ここで、アドレス(■+1)はアドレス■を+1ワ一ド
分インクリメントした値であり、同様にアドレス(■+
2)はアドレス(■+1)を+1ワ一ド分インクリメン
トした値である。例えば、アドレス■が100番地であ
った場合、+1ワ一ド分インクリメントされたアドレス
は、8 bit系のCPUでは101番地、16bit
系のCPUては102番地、32bit系のCPUでは
104番地となる。
第3図はダイナミックランダムアクセスメモリ(以下、
DRAMという)へのアドレスの送出タイミングを示し
ている。同図(b)に示すように、1回目のアクセス時
の行(Ro w )アドレス及び列(C1umn)アド
レスをDRAMへ送出し、次のアクセス時の行(Ro 
w )アドレスを、CPUからの2回目のアクセス要求
前にDRAMに送出し、次に列(C1umn)アドレス
をDRAMに送出する。同様に3回目のアクセス時の行
(Row)アドレスも、CPUからのアクセス要求前に
DRAMに送出する。これによってCPUからのアクセ
ス要求前に行(Ro w )アドレスを指定することが
できる。
上述したように、次のアクセス時のアドレスを予測し、
該予測したアドレスを、CPUからのアクセス要求前に
、メモリ(SRAM、DRAM)に送出することか可能
なのは、−船釣にCPUの送出するアドレスは、あるア
ドレスを送出すると次はその付近のアドレスをアクセス
する傾向があるので、次回のアドレスを予測できるから
である。
例えば、命令のフェッチは多くの場合、1ワードづつ増
加したアドレスを連続して送出することか多いし、また
スタックポインタを用いたデータのアクセスも1ワード
増加したアドレス又は1ワード減少したアドレスを連続
して送出することが多い。従って前回のアクセス時のあ
るアドレスに1ワ一ド分インクリメントしたアドレスを
、次回のアクセス持前に、メモリに送出しておくことが
できる。
第1図は本発明に係るメモリアクセス方法を適用したメ
モリアクセス装置の一実施例を示すブロック図である。
同図において、メモリアクセス装置1は、CPU2から
のアクセス要求に応じて、メモリ3をアクセスしてデー
タのリード/ライトを行う。
メモリアクセス装置1は、CPU2からのアドレスをラ
ッチするラッチ回路11と、ラッチ回路11から出力さ
れたアドレスを+1ワ一ド分インクリメントするインク
リメンタ12と、インクリメンタ12から出力されたア
ドレスとCPU2がら出力されたアドレスとを比較する
コンパレータ13と、インクリメンタ12から出力され
たアドレス及びCPU2から出力されたアドレスを入力
される選択信号に応じて適宜選択してメモリ3に出力す
るセレクタ14と、上記各部を制御するコントロール回
路15とを有して構成されている。
第4図はメモリアクセス動作を示す状態遷移図であり、
同図において、状態1〜3の各状態、及びある状態から
他の状態に遷移する際の条件は、遷移条件/動作(−出
力信号)で示される。
ここで遷移条件において、ASはCPUから出力される
アドレスストローブ信号、EQはコンパレータから出力
されるアドレスが一致していることを示すイコール信号
をそれぞれ示している。なお、AS、EQの場合は、そ
れぞれハイレベルを示しており、AS、EQの上に−(
バー)が付しである場合は、ローレベルを示している。
また動作において、出力信号−[LESSEL 、^C
K]の各信号においては、LEはラッチ回路11に入力
されるラッチイネーブル信号、SELはセレクタ14に
入力されるセレクト信号、ACKはCPU2に入力され
る応答信号をそれぞれ示している。さらに[LE、 S
EL 、 ACK ]の各信号レベルにおいて“11は
ハイレベル、“0”はローレベルを示している。
さらに同図において、Rst TigerはRe5et
 Timer、Aはメモリアクセスタイムをそれぞれ示
している。
次に上記メモリアクセス装置のメモリアクセス動作を第
5図及び第6図を用いて説明する。
ここでは、 ネゲート−インアクティブ(ハイレベル)アサートニア
クチイブ(ローレベル) としている。
いま、メモリ3をSRAMとし、またCPUから、第5
図(a)に示すようなアドレス、同図(e)に示すよう
なアドレスストローブ(以下、ASという)信号、同図
(f)に示すようなデータストローブ(以下、DSとい
う)信号が出力されるものとする。
ここで、時点tl前において、CPU2から出力された
アドレス■(第5図(’a)参照)がラッチ回路11、
コンパレータ]3、セレクタ14にそれぞれ入力されて
いたとすると、ラッチ回路11からはアドレス■が出力
され、インクリメンタからはアドレス(■+1)が出力
されるので、アドレス■とアドレス(■+1)とを比較
したコンパレータ13からはネゲートのn信号が出力さ
れ、またネゲートのセレクト(以下、SELという)信
号が入力されているセレクタ14からはCPU2からの
アドレス■が出力さている。なお、rτ1信号が、ネゲ
ートのときはCPU2からのアドレスが選択され、一方
アサートのときはインクリメンタ12からのアドレスが
選択される。
上述した状態で、コントロール回路15は、第3図(e
)に示すように時点t2でネゲートからアサートされた
n信号に基づいて、ラッチイネーブル(以下、LEとい
う)信号及びSEL信号をネゲートからアサートして出
力する。
コントロール回路15からの「T信号を入力するラッチ
回路11ては、第5図(i)に示すように時点t3でア
サートされたn信号に基づいて、CPU2から出力され
たアドレス■をラッチした後、第5図(b)に示すよう
にこのアドレス■をインクリメンタ12に出力する。イ
ンクリメンタ12では、入力されたアドレス■を+1ワ
一ド分インクリメントした後、第5図(C)に示すよう
にアドレス(■+1)に代わって、インクリメントした
アドレス(■+1)を、コンパレータ13及びセレクタ
14に出力する。このときコンパレータ13からは、C
PU2からのアドレス■とインクリメンタ12からのア
ドレス(■+1)との比較結果に応じたイコール(以下
、EQという)信号が出力されることになるが、この場
合はアドレスが一致しないので第3図(h)に示すよう
にネゲートのn信号が出力された状態のままである。
一方、セレクタ14では、第5図(j)に示すように時
点t3でアサートされたSEL信号に基づいて、今まで
選択していたインクリメンタ12側のアドレス(アドレ
ス(■+1))に変わって、第3図(d)に示すように
CPU2側のアドレス(アドレス■)を選択してメモリ
3に送出する。
また時点t 4からメモリアクセスタイムを経過した時
点t5からは、第5図(m)に示すようにメモリリード
サイクルでは、アウトプットイネーブル(OE)信号に
基づいて、データバス上にデータが生じる。このn信号
は、第5図(k)に示すWRITE信号を反転した信号
である。コントロール回路15は、CPU2に対しメモ
リリードした旨を知らせるために第5図(g)に示すよ
うにネゲートのアクノーレッジ(以下、ACKという)
信号をアサートにする。この時点t5てアサートされた
ACK信号に応答したCPU2は、CPUサイクル[1
]を終了する。
ところで、CPUサイクル[I]の時点t5ては、例え
ば、CPU2がアドレス■をアクセスしていると(第5
図(a)参照)、インクリメンタ12からは、アドレス
(■+1)が出力されている(第5図(c)参照)。ま
た時点t5以降、アサートからネゲートに変化したn信
号を入力するコントロール回路15は、時点t6てネゲ
ートされたに1信号に基づいて、SEL信号及びn信号
をネゲートにする。
セレクタ14では、時点t8でネゲートされた「丁τ信
号に基づいて、今まで選択していたCPU2から出力さ
れたアドレス値(アドレス■)に代わって、インクリメ
ンタ12から出力されたアドレス(アドレス(■+1)
)を選択して、メモリ3に出力する(第5図(d)参照
)。
以上説明したようにCPUサイクルIては、上記第4図
に示した状態遷移において、状態1−遷移(1−1)−
状態2−状態3という具合に状態が遷移する。
次にCPUサイクルHの開始時CPU2から出力された
アドレス(■+1)は、ラッチ回路11、コンパレータ
13、セレクタ14にそれぞれ入力され、またアサート
されたn信号はコントロール回路15に入力される。
このとき、コンパレータ13からは、インクリメンタ1
2からのアドレス値(■+1)と、CPU2からのアド
レス値(■+1)との比較結果として、アサートされた
[で信号が出力される(第5図(h)参照)。
するとコントロール回路15は、時点tloでアサート
された興信号に基づいて、口信号及び「τ1信をアサー
トする。これによって、ラッチ回路11では、時点tl
lでサートされたLE倍信号もどついて、CPU2から
のアドレス(■+1)をラッチした後インクリメンタ1
2に出力する(第5図(b)参照)。インクリメンタ1
2は、入力したアドレス(■+1)を+1ワ一ド分イン
クリメントし、該インクリメントしたアドレス(■+2
)をコンパレータ13に出力する(第5図(c)参照)
一方セレクタ14では、時点tlOでアサートされたS
EL信号に基づいて、インクリメンタ12側のアドレス
値(アドレス(■+2))に代わって、CPU2側のア
ドレス値(アドレス(■+1))に切替えて出力する。
なお、このときはインクリメンタ12からの出力及びC
PU2からの出力は共にアドレス(■+1)なので出力
値は変わらない(第5図(d)参照)。
なお、時点t8からメモリアクセスタイムを経過した時
点t12からは、メモリリードサイクルでは、データバ
ス上にデータが生じる。と同時にコントロール回路15
は、CPU2に対しメモリリードした旨を知らせるため
に第5図(g)に示すようにネゲートのACK信号をア
サートにする。
この時点t12でアサートされたACK信号に応答した
CPU2は、CPUサイクル[■]を終了する。また時
点t12でACK信号がアサートされた後は、上記時点
6、時点t8での動作と同様の動作が、時点t13、時
14においても行われる。
以上説明したようにCPUサイクル■では、上記第4図
に示した状態遷移図においては、状態1→遷移(1−2
)→状態2−状態3という具合に状態が遷移する。
次に、CPU2が次のCPUサイクル■を開始するに際
し、アクセスすべきアドレスが前回のアドレスと連続し
ている場合は、上述した時点t9以降のタイミングで読
出し動作が行われ、一方、アクセスすべきアドレスが前
回のアドレスと連続していない場合は、上述した時点t
i以降のタイミングで読出し動作が行われる。
以上説明したように、例えば、実際にCPU2がアドレ
ス(アドレス(■+2))を出力する時点t14より前
の時点t13で、インクリメンタ12がCPU2から出
力されるべきアドレス(アドレス(■+2))をメモリ
3に出力しているので、第3図に示すように、時間T 
(−t 14− t 13)だけCPU2のサイクルタ
イムが短縮される。
上述した実施例ではメモリ3からのデータの読出し動作
について説明したが、メモリ3へのデータの書き込みに
ついても、上記データの読出し動作と同様な動作が行わ
れる。このメモリ3へのブタの書き込み動作のタイミン
グを第6図に示している。なお、第6図に示したタイミ
ングチャドにおける時点t1〜時点t14での動作は、
第5図に示したタイミングチャートにおける時点tl〜
時点t14での動作と同様である。この場合、第6図(
m)に示すようにメモリライトサイクルでは、第6図(
N )に示すようにライトイネーブル(WE)信号に基
づいてデータの書き込みが行われることになる。このW
子信号は、第5図(k)に示す「m信号と同図(f)に
示すF否信号との論理和をとった信号である。
以上説明したように本実施例によれば、CPUからの前
回アクセスした時のアドレスを+1ワド分インクリメン
トし、このインクリメントしたアドレスを、CPUから
の次回のアクセス前にメモリに送出しておくことにより
、σ子信号/Wτ信号に基づいて、メモリにアクセスす
ることができるので、CPUからメモリへのアクセスタ
イムを大幅に短縮することが可能となる。
なお上記実施例では、スタティックRAMへのアクセス
について説明したが、ダイナミックRAMへのアクセス
についても同様な動作を行うことにより実現することか
できる。この場合、データの読み書きは、行アドレスス
トローブ信号、列アドレスストローブ信号に基づいて行
われることになる。
また上述した命令フェッチとデータアクセスは−船釣に
は交互に行われる。例えば、スタックから連続してデー
タを読み出すことを考えたとき、命令フェッチとスタッ
クからの読出しは交互に発生し、上位アドレスが命令領
域とデータ領域が違うときは、毎回アドレスが異なって
しまう。これを防止するために、本実施例の応用例とし
て、第7図に示すように、プログラム領域用とデータ領
域用の上述したメモリアクセス装置を設け、それぞれ独
立に動作させるようにしても良い。
第7図において、71はプログラム領域用メモリアクセ
ス装置、72はプログラム格納用メモリ、73はデータ
領域用メモリアクセス装置、74はデータ格納用メモリ
である。なお、メモリアクセス装置71及び73は、上
記第1図に示したメモリアクセス装置1の構成と同様で
ある。この場合、CPU2は、プログラム領域用へのア
クセスの場合は、メモリアクセス装置71のコントロー
ル回路15をアクティブの状態にする信号S1をコント
ロール回路15に送出し、一方データ領域用へのアクセ
スの場合は、メモリアクセス装置73のコントロール回
路15をアクティブの状態にする信号S2をコントロー
ル回路15に送出する。またCPU2には、メモリアク
セス装置71あるいは73からのACK (応答)信号
がOR回路75を経て入力される。なお、一方のメモリ
アクセス装置がアクティブのときは、他方のメモリアク
セス装置は自己の状態を保持している。
〔発明の効果〕
以上説明したように本発明によれば、次回のアクセス要
求時のアドレス値を予測し、該予測したアドレス値を、
要求元からの次回のアクセス要求前にメモリに送出し、
予測したアドレス値と実際のアクセス時のアドレス値と
が一致した場合は、既にメモリに送出されているアドレ
ス値に基づいてメモリに読み書きすべきデータを読み書
きするようにしたため、要求元(例えば中央処理装置)
のメモリへのアクセスタイムを大幅に短縮できる利点が
ある。
【図面の簡単な説明】
第1図は本発明に係るメモリアクセス方法を適用したメ
モリアクセス装置の一実施例を示すブロック図、第2図
及び第3図は本発明に係るメモリアクセス方法のメモリ
へのアドレスデータの送出動作を示すタイミングチャー
ト、第4図は本発明に係るメモリアクセス動作を説明す
るための遷移状態図、第5図はメモリからのデータの読
出し動作を示すタイミングチャ」ト、第6図はメモリへ
のデータの書き込み動作を示すタイミングチャート、第
7図は本実施例の応用例の構成を示す構成図、第8図及
び第9図は従来のメモリアクセス装置のメモリへのアド
レスデータの送出動作を示すタイミングチャートである
。 1・・メモリアクセス装置、2・・・・中央処理装置(
CPU) 、3・・・メモリ、11・・・ラッチ回路、
12・・・インクリメンタ、]3・・・コンパレータ、
14・・・セレクタ、15・・・コントロール回路。 第4図

Claims (1)

  1. 【特許請求の範囲】 要求元からのアクセス要求に応じて読み書きすべきデー
    タを所定のワード単位でメモリに読み書きするメモリア
    クセス方法において、 既にアクセスした際のアドレス値に基づいて次回のアク
    セス要求時のアドレス値を予測し、該予測したアドレス
    値を要求元からの次回のアクセス要求前にメモリに送出
    し、さらに要求元からの実際のアクセス要求時のアドレ
    ス値と前記予測したアドレス値とを比較し、一致した場
    合は、既にメモリに送出されている予測したアドレス値
    に基づいてメモリにデータを読み書きするようにしたこ
    とを特徴とするメモリアクセス方法。
JP11154390A 1990-04-26 1990-04-26 メモリアクセス方法 Pending JPH047762A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11154390A JPH047762A (ja) 1990-04-26 1990-04-26 メモリアクセス方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11154390A JPH047762A (ja) 1990-04-26 1990-04-26 メモリアクセス方法

Publications (1)

Publication Number Publication Date
JPH047762A true JPH047762A (ja) 1992-01-13

Family

ID=14564042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11154390A Pending JPH047762A (ja) 1990-04-26 1990-04-26 メモリアクセス方法

Country Status (1)

Country Link
JP (1) JPH047762A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7543105B2 (en) 2003-03-26 2009-06-02 Nec Corporation Memory access control based on hit prediction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7543105B2 (en) 2003-03-26 2009-06-02 Nec Corporation Memory access control based on hit prediction

Similar Documents

Publication Publication Date Title
JPH0212541A (ja) コンピユーテイング・システム及びその動作方法
JPS62171062A (ja) デ−タ処理装置においてメモリをアクセスする優先順位を決定する優先論理装置
JPS59188764A (ja) メモリ装置
JPH01204147A (ja) アドレス修飾回路
JPS5953631B2 (ja) 記憶制御装置
JPH047762A (ja) メモリアクセス方法
JPH11259417A (ja) バスアクセス方式およびバスアクセス制御装置
US5590302A (en) Device for generating structured addresses
JPS6285343A (ja) メモリ読み出し回路
JPS60195661A (ja) デ−タ処理システム
JP3169878B2 (ja) メモリ制御回路
JPH09311812A (ja) マイクロコンピュータ
JPH029401Y2 (ja)
JPH01273132A (ja) マイクロプロセッサ
JPS63191397A (ja) 情報処理装置
JP3242474B2 (ja) データ処理装置
JPH047761A (ja) メモリアクセス方法
JPH07146814A (ja) メモリ装置
JP2570271B2 (ja) 半導体メモリ制御装置
JPS63191398A (ja) 情報処理装置
JPH01137346A (ja) メモリ選択切換装置
JPH03271859A (ja) 情報処理装置
JPS61161560A (ja) メモリ装置
JPH02188856A (ja) メモリアクセス回路
JPS6199996A (ja) ダイナミツクram制御方式