(57)【要約】【課題】読出し連番を向上させたシーケンシャルメモリを読出すデバイスと、その方法とを提供すること。【解決手段】まず、リードアドレスが受信され、それからリードアドレスが、既にキャッシュメモリに登録されているかどうかを確認するためにチェックされる。リードアドレスがキャッシュメモリ内に発見された場合、すなわちキャッシュヒットした場合には、指定されたリードアドレスのデータはキャッシュメモリから出力される。反対に、キャッシュメモリ内にリードアドレスが存在しない場合には、指定されたリードアドレスのデータはシーケンシャルメモリから出力される。【選択図】      図１
2004272870.tif 000002
【特許請求の範囲】
【請求項１】
シーケンシャルメモリからデータを読出すための、シーケンシャルメモリの読出し方法であって、
ａ）リードアドレスを受信し、
ｂ）前記リードアドレスがキャッシュメモリに登録されているか否かを判断し、登録されていれば段階ｃ）に進み、まだ登録されていなければ段階ｄ）に進み、
ｃ）前記キャッシュメモリから前記リードアドレスの指定されたデータを出力して終了し、
ｄ）前記シーケンシャルメモリから指定された前記リードアドレスのデータを出力することを特徴とするシーケンシャルメモリの読出し方法。
【請求項２】
請求項１に記載のシーケンシャルメモリの読出し方法において、
前記段階ｄ）は、
ｄ１）前記リードアドレスが前回読出された先行のアドレスと同じページに属するか否かを判断し、属するならば段階ｄ２）に進み、属さなければ段階ｄ４）に進み、
ｄ２）前記リードアドレスと前記先行のアドレスとの間の差がデフォルト値よりも小さいか否かを判断し、小さければ段階ｄ３）に進み、小さくなければ段階ｄ４）に進み、
ｄ３）前記先行のアドレスから始めて前記リードアドレスまで順次アドレスを読出し、前記リードアドレスの指定されたデータを出力して終了し、
ｄ４）前記リードアドレスをラッチし、
ｄ５）前記リードアドレスの指定されたデータを出力する、
段階からなることを特徴とするシーケンシャルメモリの読出し方法。
【請求項３】
請求項１に記載のシーケンシャルメモリの読出し方法において、
段階ｄ）がさらに、データによって前記キャッシュメモリを更新することを特徴とするシーケンシャルメモリの読出し方法。
【請求項４】
請求項１に記載のシーケンシャルメモリの読出し方法において、
前記キャッシュメモリが直接マップされていることを特徴とするシーケンシャルメモリの読出し方法。
【請求項５】
請求項１に記載のシーケンシャルメモリの読出し方法において、
前記キャッシュメモリが結合して設定されていることを特徴とするシーケンシャルメモリの読出し方法。
【請求項６】
リードアドレスに従ってシーケンシャルメモリからのデータを読出すための、シーケンシャルメモリを読出すデバイスであって、
キャッシュメモリと、
前記リードアドレスを受信し、前記リードアドレスがキャッシュメモリに登録されているかどうかを判断するためのキャッシュ決定ユニットと、
前記リードアドレスが前記キャッシュメモリに登録されている場合に、前記キャッシュメモリから前記リードアドレスの指定されたデータを読出し出力するキャッシュ読出しユニットと、
前記リードアドレスが前記キャッシュメモリに登録されていない場合に、前記シーケンシャルメモリから前記リードアドレスの指定されたデータを読出し出力するメモリ読出しユニットと、
を具備することを特徴とするシーケンシャルメモリを読出すデバイス。
【請求項７】
請求項６に記載のシーケンシャルメモリを読出すデバイスにおいて、
前記メモリ読出しユニットによって出力されたデータにより、前記キャッシュメモリを更新するキャッシュ更新ユニットをさらに具備することを特徴とするシーケンシャルメモリを読出すデバイス。
【請求項８】
請求項６に記載のシーケンシャルメモリを読出すデバイスにおいて、
前記メモリ読出しユニットが、
前記リードアドレスが前回読出された先行のアドレスと同じページに属するか否かを判断するページヒット決定ユニットと、
前記リードアドレスが前記先行のアドレスと同じページに属している場合に、前記リードアドレスと前記先行のアドレスとの間の差がデフォルト値より小さいか否かを判断する差異判断ユニットと、
前記リードアドレスと前記先行のアドレスとの間の差がデフォルト値より小さい場合に、前記先行のアドレスから始めて前記リードアドレスまで、順次前記シーケンシャルメモリを読出し、それから、前記リードアドレスの指定されたデータを出力するシーケンシャル読出しユニットと、
前記リードアドレスが前記先行のアドレスと同じページに属していないか、または前記リードアドレスと前記先行のアドレスとの間の差がデフォルト値よりも小さくない場合に、前記リードアドレスをラッチするラッチングユニットと、
ラッチされた前記リードアドレスに従って、前記シーケンシャルメモリからデータを出力する出力ユニットと、
を具備することを特徴とするシーケンシャルメモリを読出すデバイス。
【請求項９】
請求項６に記載のシーケンシャルメモリを読出すデバイスにおいて、
前記キャッシュメモリが直接マップされていることを特徴とするシーケンシャルメモリを読出すデバイス。
【請求項１０】
請求項６に記載のシーケンシャルメモリを読出すデバイスにおいて、
前記キャッシュメモリが結合して設定されていることを特徴とするシーケンシャルメモリを読出すデバイス。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は総じてメモリの読出しのためのデバイスとその方法に係り、より詳細には、シーケンシャルメモリの読出しデバイスとその方法に関する。
【０００２】
【従来の技術】
シーケンシャルメモリは低コストで高密度なコンピュータメモリである。シーケンシャルメモリがメモリアドレスを受信するためのピンもデータ出力のために共有されており、生産コストを減らすようになっている。シーケンシャルメモリとは、例えばシーケンシャルＲＯＭ、ＮＡＮＤ  ＲＯＭ、ＮＡＮＤフラッシュメモリなどである。従来の方法によるシーケンシャルメモリの読出しは、最初にアドレスを入力し、それからアドレスロケーションをヒットしてラッチした後に、データを引き続いて出力する。
【０００３】
アドレスロケーションをラッチし、データタスクを読出すためのメモリアクセス時間は長くかかる。このアクセス時間は、例えば１，０００ナノセカンドであり、従ってアクセススピードは速くない。データにアクセスするためにアドレスをラッチする方法に加えて、シーケンシャルメモリには、データを順次読出すためにカウンタを使うこともできる。
メモリアドレスが最初にラッチされるとして、バースト読出し方法は、最初以降のシーケンシャルアドレスのデータを読出すのに使用される。バースト読出し方法では、シーケンシャルメモリが内部にカウンタを備えており、一度あるアドレスがラッチされると、このアドレスに１が加算される度にカウンタが次のアドレスのデータを出力し得る。
【０００４】
この方法によれば、次のアドレスをラッチする処理を実行する必要がなくなり、メモリアクセスをスピードアップさせることができる。データのほとんどがシーケンシャルタイプであることから、シーケンシャルメモリは、低速メモリアクセスの欠点を補うためのバースト読出し方法を使用したデータ保存に非常に適している。
【０００５】
【発明が解決しようとする課題】
しかし、シーケンシャルメモリをプログラムの保存のために使用する場合には、低速メモリアクセスは対処されるべき重要な課題である。プログラムを実行する際には多くのジャンピング命令があり得る。例えば、サブ機能を実行するにあたって、サブ機能のロケーションにジャンプすることが要求され、その結果、新しいメモリアドレスの再読出しをラッチすることが必要となる。
【０００６】
新しいアドレスを再度ラッチし、読出すことは、実行すべきプログラムにおいて多くのジャンピング命令が存在する場合には特に、より多くの時間を費やす。そのため、シーケンシャルメモリの読出し速度を向上させることが重要な課題となる。したがって、本発明は、読出し速度を向上させることのできるシーケンシャルメモリの読出しデバイスと、その方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記従来技術の課題に鑑みて、本発明は、シーケンシャルメモリの読出し方法を提供する。まず、リードアドレスが受信され、次にこのリードアドレスが、既にキャッシュメモリに登録されているかどうかを確かめるためにチェックされる。リードアドレスがキャッシュメモリ内に発見された場合、つまりキャッシュヒットした場合には、指定されたリードアドレスのデータは、キャッシュメモリから出力される。反対に、リードアドレスがキャッシュメモリ内に存在しない場合には、指定されたリードアドレスのデータは、シーケンシャルメモリから出力される。
【０００８】
さらに、本発明は、シーケンシャルメモリの読出しデバイスを提供する。この読出しデバイスは、リードアドレスに従ってシーケンシャルメモリからのデータを読出す。読出しデバイスは少なくともキャッシュメモリと、キャッシュ決定ユニットと、キャッシュ読出しユニットと、メモリ読出しユニットとを備えている。キャッシュ決定ユニットはリードアドレスを受信し、リードアドレスがキャッシュメモリに登録されているか否かをチェックする。リードアドレスがキャッシュメモリ内に発見されれば、キャッシュ読出しユニットはキャッシュメモリからリードアドレスの指定されたデータを読出し、出力する。反対に、リードアドレスがキャッシュメモリ内に登録されていない場合には、メモリ読出しユニットがシーケンシャルメモリから指定されたリードアドレスのデータを読出し、出力する。
本発明の他の目的、特徴、利点は、以下の好適な、しかし限定的でない実施例の詳細な記述から明らかになるであろう。以下の記述は添付の図を参照してなされたものである。
【０００９】
【発明の実施の形態】
本発明の要旨は、キャッシュメモリを、メモリアクセスとシーケンシャルメモリの読出しのスピードアップに適用することである。図１を参照すると、本発明によるシーケンシャルメモリ読出し方法の好適な実施例のフローチャートが示されている。
【００１０】
この方法は、中央処理装置とシーケンシャルメモリとを含む処理システムに使用される。この処理システムは、ＤＲＡＭやＥＥＰＲＯＭなど他の種類のメモリも含んでもよい。まず、シーケンシャルメモリは、中央処理システムからアドレスを受信した後、このアドレスがシーケンシャルメモリに属しているかどうかを判断する（段階１１０）。段階１１０での判断の結果、属していなければ、このアドレスは他のメモリに属するということを示し、ここで処理を終了する。反対に、このアドレスがシーケンシャルメモリに属していれば、このアドレスがキャッシュメモリに登録されているかどうかを確認するためにチェックを受ける（段階１２０）。
【００１１】
アドレスがキャッシュメモリ内に登録されているか否かをチェックするためのひとつの方法は、アドレスをキャッシュメモリ内のタグアドレスと比較することである。タグアドレスのどれかがこのアドレスに適合するならば、すなわちキャッシュヒットした場合には、リードアドレスのデータはキャッシュメモリに保存されていることを示す。この場合、データはキャッシュメモリから直接出力され得る（段階１３０）。反対に、タグアドレスのどれもこのアドレスに適合しなければ、リードアドレスのデータは、シーケンシャルメモリから読出され（段階１４０）、キャッシュメモリを次回に備えてアクセスをスピードアップするように更新する（段階１５０）。ここで、キャッシュメモリは直接マップされたものであってもよいし、結合して設定されていてもよい。
【００１２】
図２は、図１の段階１４０（シーケンシャルメモリからのデータの読出し）を詳細に説明するためのフローチャートである。まず、アドレスが前回読み込まれた先行するアドレスと同じページに属するかどうかを確認する（段階２１０）。その結果、このアドレスが以前に読み込まれたアドレスと同じページに属していなければ、アドレスラッチサイクルを開始する（段階２４０）。そして、一定期間（１，０００ナノセカンド程度）経過後、データが出力される（段階２５０）。
【００１３】
一方、アドレスが以前に読出されたアドレスと同じページに属するならば、このアドレスと先行するアドレスとの間の差が７以上であるか、７未満であるかを判断する（段階２２０）。その結果７未満である場合、データは先行のアドレスから現在のアドレスへ、順次読出しによって出力される（段階２３０）。反対に７以上であればアドレスラッチサイクルを開始する（段階２４０）。
【００１４】
段階２３０においては、データの読出し方法は、順次、メモリの内部にあるカウンタを使うのみである。このカウンタは先行するアドレスから現在のアドレスまでを数え、それからデータを出力する。アドレスラッチサイクルは１，０００ナノセカンド待たなければならず、それから読出しを開始する。読出しには毎回２００ナノセカンドかかる。
従って、アドレスの差が７未満である場合にはアドレスラッチサイクルよりも速くなるため、シーケンシャル読出し方法を使用する。一方、アドレスの差が７以上のときには、従来のアドレスラッチサイクルがデータを読出すために使われる。
【００１５】
図３を参照すると、本発明による、リードアドレスＡに従って読出しデータＤを使用したシーケンシャルメモリの読出しデバイス３００が示されている。読出しデバイス３００は、少なくともキャッシュメモリ３１０、キャッシュ決定ユニット３２０、キャッシュ読出しユニット３４０を含んでいる。キャッシュ決定ユニット３２０は、リードアドレスＡを受信するために使用されるほか、リードアドレスＡがキャッシュメモリ３１０に登録されているか否かも判断する。
【００１６】
リードアドレスＡがキャッシュメモリ３１０に登録されていれば、キャッシュ読出しユニット３３０は、キャッシュメモリ３１０からリードアドレスＡの指定されたデータＤを読出し、出力する。その一方で、リードアドレスＡがキャッシュメモリ３１０に登録されていなければ、メモリ読出しユニット３４０は、シーケンシャルメモリ１００から、リードアドレスＡの指定されたデータＤを読み取り、出力する。
【００１７】
読み取りデバイス３００はさらに、メモリ読出しユニット３４０によって出力されたデータを使ってキャッシュメモリを更新するキャッシュ更新ユニット（図示せず）を含んでもよい。メモリ読出しユニット３４０は、ページヒット決定ユニットと、差異判断ユニットと、シーケンシャル読出しユニット（図示せず）とを含む。ページヒット決定ユニットは、現在のリードアドレスが、前回読み込まれた先行のアドレスと同じページ上にあるか否かを判断するために使用される。現在のリードアドレスＡが先行のアドレスと同じページ上にある場合、すなわちページヒットした場合、差異判断ユニットは、現在のリードアドレスＡと先行のアドレスとの間の差が、例えば７などのデフォルト値より小さいかどうかを引き続き判断する。
【００１８】
その結果、現在のリードアドレスＡと先行のアドレスとの間の差がデフォルト値よりも小さければ、シーケンシャル読出しユニットは、前回読み込まれた先行のアドレスから始めて現在のリードアドレスＡまで、シーケンシャルメモリ１００を順次読み取り、現在のリードアドレスＡの指定されたデータＤを出力する。
反対に、現在のリードアドレスＡが、先行のアドレスと違うページに属しているか、現在のアドレスＡと先行のアドレスとの間の差がデフォルト値以上ならば、ラッチングユニットはリードアドレスＡをラッチし始める。それから、出力ユニットは、ラッチされたリードアドレスに従って、シーケンシャルメモリ１００からデータＤを出力する。
【００１９】
結論として、本発明は先行技術より重要な利点を提供する。本発明は、シーケンシャルメモリの読出し速度を高めるためにキャッシュメモリを適用し、さらに、シーケンシャルメモリの直接アクセス速度を高めるためのシーケンシャル読み込み方法を使用する。
よって、本発明は、前記したシーケンシャルメモリの読出しデバイスとその方法の実施例に開示されているように、キャッシュメモリとシーケンシャル読出し方法を、シーケンシャルメモリの読出し速度を高めるために使用する。
【００２０】
本発明が、例を挙げて、好適な実施例という点に関して説明されてきた一方で、本発明がそこに限定されていないことは、理解されるべきである。反対に、本発明はさまざまな変更や、類似した処置、手順をカバーするように意図されており、そのため特許請求の範囲では、こうした変更や類似した処置、手順の、最も広義の解釈が認められるべきである。
【図面の簡単な説明】
【図１】本発明によるシーケンシャルメモリの読出し方法の好適な実施例のフローチャート。
【図２】段階１４０でシーケンシャルメモリからのデータの読出しのフローチャート。
【図３】本発明によるシーケンシャルメモリの読出しデバイスの構成を示す図。
【符号の説明】
１００  シーケンシャルメモリ
３１０  キャッシュメモリ
３２０  キャッシュ決定ユニット
３３０  キャッシュ読出しユニット
３４０  メモリ読出しユニット
【図１】
2004272870.tif 000003
【図２】
2004272870.tif 000004
【図３】
2004272870.tif 000005