JP2005202628A - メモリ制御装置、メモリ制御方法およびメモリ制御プログラム - Google Patents
メモリ制御装置、メモリ制御方法およびメモリ制御プログラム Download PDFInfo
- Publication number
- JP2005202628A JP2005202628A JP2004007598A JP2004007598A JP2005202628A JP 2005202628 A JP2005202628 A JP 2005202628A JP 2004007598 A JP2004007598 A JP 2004007598A JP 2004007598 A JP2004007598 A JP 2004007598A JP 2005202628 A JP2005202628 A JP 2005202628A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- difference
- memory
- read
- 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
Images
Abstract
【課題】多ビットのメモリに対してのアクセス(書き込み、読み出し、書き込み/読み出し)を高速に行うことができるようにする。
【解決手段】差分計算部63は、データ保持レジスタ50に一時記憶されたデータを、1まとまりとなる処理単位毎に、LUT61に保持される複数のパターン情報のそれぞれに基づいて読み出し、直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多いパターン情報を特定する。この特定したパターン情報を用いて、データ保持レジスタ50から読み出されるデータについて、出力データ生成部20において、直前に読み出されたデータとの差分情報を検出し、差分情報が同じであると判別した区間において、周波数制御回路11において生成する書き込みのためのクロック信号を高速化する。
【選択図】図1
【解決手段】差分計算部63は、データ保持レジスタ50に一時記憶されたデータを、1まとまりとなる処理単位毎に、LUT61に保持される複数のパターン情報のそれぞれに基づいて読み出し、直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多いパターン情報を特定する。この特定したパターン情報を用いて、データ保持レジスタ50から読み出されるデータについて、出力データ生成部20において、直前に読み出されたデータとの差分情報を検出し、差分情報が同じであると判別した区間において、周波数制御回路11において生成する書き込みのためのクロック信号を高速化する。
【選択図】図1
Description
この発明は、多ビットメモリに対してアクセス(書き込み、読み出し、書き込み/読み出し)を行う種々の電子機器に適用されるメモリ制御装置、メモリ制御方法およびメモリ制御プログラムに関する。
例えば、メモリへのデータの記録速度を向上させるなどのために、バス帯域を向上させるには、クロック周波数を上げる、バス幅を広げるというのが一般的である。しかし、クロック周波数を上げる場合には、消費電力増加や輻射の問題が発生する。また、クロック周波数を上げる場合には、クロックスキュー(クロック信号の到達時間差)やデバイスの仕様であるACスペック(セットアップタイム及びホールドタイム)の観点から容易ではない。また、バス幅を広げるのも、LSIのピン数の増加を生み容易な解決手段にならない。
従来、シリアルバス転送に関しては、後に記す特許文献1に開示されているようなシステムがあり、転送データが変化しない場合は、デバイスのACスペック(セットアップ及び、ホールドタイム)の影響がなくなるので、書き込みクロックスピードを上げるという技術が提案されている。
特開平11−250006号公報
ところで、携帯電話端末、カメラ付き携帯電話端末、デジタルカメラ、PDA(Personal Digital Assistant)、パーソナルコンピュータなどの種々の電子機器には、例えば、SDRAM(Synchronous Dynamic Random access Memory)などが搭載され、これを多ビットメモリとして用いて、画像データ、音声データ、テキストデータ、グラフィックスデータ、プログラムデータなどの種々のデータを記録することが行われている。
しかしながら、特許文献1に記載の技術は、シリアル転送には有効であるが、上述のような種々の電子機器に搭載される多ビットのメモリの制御(多ビットのデータ転送制御)については、十分な効果(十分なバス帯域の向上)が望めない場合がある。
すなわち、データ転送処理の信頼性の確保などの観点からメモリ等のデバイスのACスペックにおいては、アクセス禁止区間が設けられる。例えば、立ち上がりクロックで同期して動作するシステムにおいては、図11Bに示すように、クロックの立ち上がりに対して、(区間t1+区間t2)の間ではデータが変化してはいけないという規格(ACスペック)が定められている。ここで、区間t1はセットアップタイム、区間t2はホールドタイムと呼ばれる。
したがって、図11Aにおいて、データ0x00、0x01、0x08、0x04が示すように、16進数1バイトの書き込みデータが供給され、これを図11Bに示したクロック信号に基づいて、メモリに記録する場合には、図11Cに示したように、区間t2の直後のタイミングで各書き込みデータがメモリに記録されることになる。なお、この明細書において、0x00、0x01のように記載された場合の0xは、後に続く0〜9、A〜Fからなる文字列が16進数であることを示している。
そして、図12Aにおいては、0x00、0x01、0x01、0x04というように、同じデータ0x01が2回続く場合がある。このように、同じデータが連続する部分では、図12Bに示したように、クロック信号の周波数を上げることができる。これにより、図12Cに示したように、同じデータが連続する部分では、クロック信号を速くして、データを高速に処理することが可能になると考えられる。しかし、シリアル転送と違い、多ビットのメモリ制御に、上記の特許文献1に記載の技術を適用した場合は以下のような問題点がある。
1.多ビットのデータ転送(パラレルデータ転送)の場合には、同一データを続けてメモリに書き込むという現象が稀である。つまり、転送するデータが、「0」か「1」かの1ビットずつのシリアル転送の場合と異なり、多ビットのデータ(パラレルデータ)の場合には、同一の多ビットのデータの発生確率が低くなるので、クロック信号の周波数を上げることが可能な場合がシリアル転送の場合に比べ極端に減少する。
2.多ビットのデータをメモリに記録する場合、メモリ上の記録位置を示すアドレス情報と、記録しようとする書き込みデータとの両方をメモリに対して供給しなければならず、書き込みデータの効率転送だけを実現しても、データ転送の高速化を図ることができない。
3.上記の特許文献1に記載の技術は、書き込み(ライト)方向だけにしか適用できない。すなわち、書き込み方向に関しては、次の書き込みデータを把握できるため、クロックの制御は可能である。しかし、読み出し(リード)方向に関しては、次の読み出しデータを把握できないため(読み出してみないとどのようなデータか分からないため)、読み出しのためのクロック信号の周波数制御ができない。
以上のことにかんがみ、この発明は、上記問題点を解決し、多ビットのメモリに対してのアクセス(書き込み、読み出し、書き込み/読み出し)を高速に行うことができるようにするための装置、方法、プログラムを提供することを目的とする。
上記課題を解決するため、請求項1に記載の発明のメモリ制御装置は、
1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードを備えたメモリ装置用の制御装置であって、
処理対象のデータを一時的に保持する第1の保持手段と、
前記1まとまりのデータの処理順序を示す1つ以上のパターン情報を保持する第2の保持手段と、
前記第1の保持手段から前記1まとまりとなる処理単位毎に、前記第2の保持手段の前記パターン情報のそれぞれを用いてデータを読み出し、その直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定する特定手段と、
前記特定手段により特定された前記パターン情報に応じて前記第1の保持手段から読み出されるデータの供給を受けて、その直前に供給されたデータとの差分情報を検出する検出手段と、
前記検出手段からの前記差分情報の供給を順次に受けて、その直前に供給された前記差分情報と同じか否かを判別する判別手段と、
前記判別手段からの判別結果が、前記差分情報が同じであることを示している場合に、前記差分情報の前記メモリ装置への書き込みのためのクロック信号を高速化する第1の周波数制御手段と
を備えることを特徴とする。
1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードを備えたメモリ装置用の制御装置であって、
処理対象のデータを一時的に保持する第1の保持手段と、
前記1まとまりのデータの処理順序を示す1つ以上のパターン情報を保持する第2の保持手段と、
前記第1の保持手段から前記1まとまりとなる処理単位毎に、前記第2の保持手段の前記パターン情報のそれぞれを用いてデータを読み出し、その直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定する特定手段と、
前記特定手段により特定された前記パターン情報に応じて前記第1の保持手段から読み出されるデータの供給を受けて、その直前に供給されたデータとの差分情報を検出する検出手段と、
前記検出手段からの前記差分情報の供給を順次に受けて、その直前に供給された前記差分情報と同じか否かを判別する判別手段と、
前記判別手段からの判別結果が、前記差分情報が同じであることを示している場合に、前記差分情報の前記メモリ装置への書き込みのためのクロック信号を高速化する第1の周波数制御手段と
を備えることを特徴とする。
この請求項1に記載の発明のメモリ制御装置によれば、第1の保持手段に保持される処理対象のデータは、まず、特定手段により、1まとまりとなる処理単位毎に、第2の保持手段に保持される複数のパターン情報のそれぞれが用いられて読み出され、直前に読み出されたデータとの差分が算出されて、同じ差分が連続する場合が多いパターン情報が特定される。
そして、特定手段により特定されたパターン情報に基づいて、第1の保持手段から読み出されるデータの供給を受ける検出手段により、直前に読み出されたデータとの差分情報が検出される。そして、検出手段からの検出結果に基づいて、判別手段により連続する差分情報が同じであると判別された区間において、第1の周波数制御手段により書き込みのためのクロック信号が高速化(速くなるように)される。
このように、差分が同じ(均一)になる部分が多くなる処理順序を示すパターン情報が特定手段により特定され、この特定されたパターン情報に基づいて第1の保持手段から読み出されるデータから書き込みデータとなる差分情報が形成されて、この差分情報が連続して同じ(均一)になる区間において、第1の周波数制御手段により書き込みのためのクロック信号が速くなるようにされる。これにより、書き込み時のデータのメモリ装置への高速転送が可能にされ、バス帯域を向上させるようにして、データの書き込みを迅速に行うことができるようにされる。
また、請求項2に記載の発明のメモリ制御装置は、請求項1に記載のメモリ制御装置であって、
前記特定手段からの特定された前記パターン情報と前記差分情報の書き込み開始位置を示すアドレス情報とを関連付けて保持する第3の保持手段と、
前記第3の保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とする。
前記特定手段からの特定された前記パターン情報と前記差分情報の書き込み開始位置を示すアドレス情報とを関連付けて保持する第3の保持手段と、
前記第3の保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とする。
この請求項2に記載の発明のメモリ制御装置によれば、特定手段により特定されたパターン情報とバーストモード時の各まとまりの書き込みアドレス(スタートアドレス)とが、第3の保持手段により関連付けられて記憶される。この第3の保持手段に記憶された情報が用いられて、メモリ装置に記憶された差分情報が書き込み時と同じ態様で制御手段により読み出され、復元手段により復元される。
これにより、バーストモード記録される差分情報を記録時と同じ態様で読み出して、これを元の形式の処理対象のデータに復元し、これを処理回路に入力するなどのことができるようにされる。すなわち、データのメモリ装置への高速記録を実現すると共に、記録されたデータの適正な利用をも確実に行うことができるようにされる。
また、請求項3に記載の発明のメモリ制御装置は、請求項2に記載のメモリ制御装置であって、
前記特定手段は、算出した前記差分が同じである区間を示す同一区間情報を形成することができるものであり、
前記第3の保持手段は、前記特定手段からの前記同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持するものであり、
前記第3の保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する第2の周波数制御手段と
を備えることを特徴とする。
前記特定手段は、算出した前記差分が同じである区間を示す同一区間情報を形成することができるものであり、
前記第3の保持手段は、前記特定手段からの前記同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持するものであり、
前記第3の保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する第2の周波数制御手段と
を備えることを特徴とする。
この請求項3に記載の発明のメモリ制御装置によれば、第3の保持手段は、記録時において検出される差分が同じ(均一)になる区間を示す同一区間情報をもパターン情報やスタートアドレスと関連付けて記憶することができるようにされる。この第3の保持手段の同一区間情報が用いられて、差分が同じとなる区間の差分情報を読み出す場合に、その区間においては、第2の周波数制御手段により、読み出しのためのクロック信号が高速となるようにされる。
これにより、第3の保持手段に保持される同一区間情報に基づいて、差分情報の読み出し処理をも高速に行うことができるようにされる。したがって、読み出し時のデータのメモリ装置からの高速転送が可能にされ、バス帯域を向上させるようにして、データの読み出しを迅速に行うことができるようにされる。
また、請求項4に記載の発明のメモリ制御装置は、
1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードが用いられ、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれ毎に、前記パターン情報に基づいて処理対象のデータを順次に取り込み、その直前に取り込んだデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定し、
この特定したパターン情報にしたがってデータを取り込むようにし、その直前に取り込んだデータとの差分情報を検出して、この差分情報を記録データとして記録した読み出し専用メモリ装置のためのメモリ制御装置であって、
特定された前記パターン情報と前記差分情報の書き込み位置を示すアドレス情報とを関連付けて保持している保持手段と、
前記保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とする。
1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードが用いられ、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれ毎に、前記パターン情報に基づいて処理対象のデータを順次に取り込み、その直前に取り込んだデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定し、
この特定したパターン情報にしたがってデータを取り込むようにし、その直前に取り込んだデータとの差分情報を検出して、この差分情報を記録データとして記録した読み出し専用メモリ装置のためのメモリ制御装置であって、
特定された前記パターン情報と前記差分情報の書き込み位置を示すアドレス情報とを関連付けて保持している保持手段と、
前記保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とする。
この請求項4に記載の発明のメモリ制御装置によれば、読み出し専用のメモリ装置には、バーストモードでデータが記録されているが、以下のように、特定されるパターン情報にしたがって処理された差分情報が記録されている。
すなわち、書き込み対象のデータが、1まとまりとなる処理単位毎に、予め決められた複数のパターン情報のそれぞれが用いられて取り込まれ、その直前に取り込まれたデータとの差分が算出されて、同じ差分が連続する場合が多いパターン情報が特定される。この特定されたパターン情報に基づいて、順次にバッファなどから読み出される書き込み対象のデータについて、その直前に読み出されたデータとの差分情報が検出され、この差分情報が書き込みデータとして読み出し専用のメモリ装置に記録されている。
そして、保持手段には、書き込み時に用いたパターン情報とバーストモードによる各まとまりの書き込みアドレス(スタートアドレス)とが関連付けられて記録されている。この保持手段に記憶された情報が用いられて、読み出し専用のメモリ装置に記憶された差分情報が書き込み時と同じ態様で制御手段により読み出され、復元手段により復元される。
これにより、バーストモード記録される差分情報を記録時と同じ態様で読み出して、これを元の形式の処理対象のデータに復元し、これを処理回路に入力するなどのことができるようにされる。すなわち、異なるパターンで高速にバーストモード記録された差分情報を適正に読み出して利用することができるようにされる。したがって、読み出し専用メモリ(ROM:Read Only Memory)に特化したメモリ制御装置が実現される。
また、請求項5に記載の発明のメモリ制御装置は、請求項4に記載のメモリ制御装置であって、
前記保持手段は、前記パターン情報の特定時において得られる前記差分が同じである区間を示す同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持しているものであり、
前記保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する周波数制御手段
を備えることを特徴とする。
前記保持手段は、前記パターン情報の特定時において得られる前記差分が同じである区間を示す同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持しているものであり、
前記保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する周波数制御手段
を備えることを特徴とする。
この請求項5に記載の発明のメモリ制御装置によれば、保持手段は、データの記録時において検出される差分が同じ(均一)になる区間を示す同一区間情報をもパターン情報やスタートアドレスと関連付けて記憶することができるようにされる。この保持手段の同一区間情報が用いられて、差分が同じとなる区間の差分情報を読み出す場合に、その区間においては、周波数制御手段により、読み出しのためのクロック信号が高速となるようにされる。
これにより、読み出し専用メモリからの差分情報であるデータを、第1の保持手段に保持される同一区間情報に基づいて、高速に読み出すことができるようにされる。したがって、読み出し専用メモリ装置からのデータの読み出しの高速化を実現することができる。
この発明によれば、多ビットのメモリに対するアクセス(データの書き込みとデータの読み出しの一方あるいは両方)の高速化を図ることができる。特に、画像データのように、隣接する処理単位毎の多ビットデータの差分が均一となる部分の多いデータについては、高速化の効果をより顕著に発揮することができる。このため、携帯電話端末、カメラ付き携帯電話端末、デジタルカメラ、デジタルビデオカメラ、PDA、パーソナルコンピュータなどの電子機器における多ビットメモリへのアクセスの高速化を実現することができる。
以下、図を参照しながら、この発明による装置、方法、プログラムの一実施の形態について説明する。
[メモリ制御システムの構成]
図1は、この発明が適用されて構成されたこの実施の形態のメモリ制御システム(メモリ制御装置)10を説明するためのブロック図である。この実施の形態のメモリ制御システム10は、バスラインからの多ビットのデータ(パラレルデータ)の供給を受けて、これを多ビットのメモリ装置40のメモリに書き込んだり、また、メモリ装置部40のメモリに記録されている多ビットのデータを読み出して、これをバスラインに送出したりすることができるものである。
図1は、この発明が適用されて構成されたこの実施の形態のメモリ制御システム(メモリ制御装置)10を説明するためのブロック図である。この実施の形態のメモリ制御システム10は、バスラインからの多ビットのデータ(パラレルデータ)の供給を受けて、これを多ビットのメモリ装置40のメモリに書き込んだり、また、メモリ装置部40のメモリに記録されている多ビットのデータを読み出して、これをバスラインに送出したりすることができるものである。
この実施の形態において、メモリ装置40は、例えば、SDRAMを備えるものである。また、メモリ装置40は、バーストモードを有するものである。バーストモードは、例えば、64ビット単位などのように、予め決められたビット数のデータ(多ビットのデータ)を記録する場合に、最初の多ビットのデータの供給時において、メモリ上の記録位置を示すアドレスの提供を受け、その後においては、アドレスの提供は受けることなく、メモリ装置内でアドレスを生成するようにして、順次に供給される予め決められた複数個分の多ビットのデータを1まとまりのデータとして連続して記録することができるものである。
このバーストモードを用いることにより、データ転送の効率化を図ることができる。そして、以下に説明する実施の形態において、メモリ装置40は、予め決められたビット数の多ビットのデータ(例えば、64ビットのデータ)を4回連続して供給を受けて、これを順次に記録することが可能な4バーストアクセスを可能にするバーストモードを有するものとして説明する。そして、以下に説明するこの実施の形態のメモリ制御システム10は、メモリ装置40が有するバーストモードに対応した制御ができるものである。
図1に示すように、この実施の形態のメモリ制御システム10は、周波数制御回路11、制御信号生成部12、アドレス生成部13、出力データ生成部20、入力データ生成部30、データ保持レジスタ50、エントロピー計算部60からなっている。出力データ生成部20は、更に、比較器21、ラッチ部22、ALU(Arithmetic Logic Unit)23、エンコード部24、ラッチ部25、比較器26から構成され、入力データ生成部30は、比較器31、ラッチ部32、ALU33、デコード部34から構成される。また、エントロピー計算部60は、LUT(Look Up Table)61、エントロピー保持レジスタ62、差分計算部63から構成される。
周波数制御回路11は、可変周波数発生回路であり、メモリ制御システム10に外部から入力される基準クロック信号に基づいて、任意の周波数のクロック信号CLを形成し、これをメモリ装置40に供給するものである。そして、この実施の形態の周波数制御回路11は、詳しくは後述もするように、出力データ生成部20の比較器26からの情報やエントロピー計算部60の差分計算部63からの情報に基づいて、出力するクロック信号CLの周波数を調整することができるものである。
制御信号生成部12は、図示しないメインコントローラやエントロピー計算部60の差分計算部などからの情報に応じてメモリ装置40に供給する種々の制御信号(コマンド信号)CTを生成するものである。また、アドレス生成部13は、図示しないメインコントローラやエントロピー計算部60の差分計算部などからの情報に応じて、メモリ装置40に供給するアドレス情報を生成するものである。
データ保持レジスタ50は、メインメモリであるメモリ装置40の前段に配置されて2次的に使用されるメモリであり、例えば、数百キロバイト以上の記憶容量を有するキャッシュメモリである。そして、バスラインを通じてメモリ制御システム10に供給されるデータは、データ保持レジスタ50を介して、エントロピー計算部60、出力データ生成部20に供給され、また、メモリ制御システム10からバスラインへのデータの送出もデータ保持レジスタ50を介して行われる。
エントロピー計算部60は、書き込みデータの状態を把握し、メモリ装置40において書き込みデータをバーストモードで記録する場合に、所定数の多ビットのデータをどのような順番で記録するのが一番効率的であるかを検出して、これに応じて書き込み処理を制御する共に、書き込み時の情報に基づいて、メモリ装置40からのデータの読み出しをも制御する。
なお、上述もしたように、この実施の形態のメモリ装置40は、いわゆる4バーストアクセスのバーストモードを備えたものであるので、この実施の形態において、エントロピー計算部60は、1まとまりとなる4個分の多ビットのデータの処理順序を制御するようにするものである。
そして、このエントロピー計算部60の機能により、メモリ制御システム10からメモリ装置40へのデータ転送の高速化を向上させると共に、メモリ装置40からメモリ制御システム10へのデータ転送の高速化をも図ることができるようにしている。すなわち、エントロピー計算部60は、メモリ制御システム10とメモリ装置40間の双方向のデータ転送の高速化を図るためのものである。
出力データ生成部20は、エントロピー計算部60の差分計算部63からの指示に応じて、データ保持レジスタから読み出される多ビットの書き込みデータの供給を受けて、隣接する多ビットのデータ間の差分が均一か否かを判別し、これに基づき周波数制御回路11が生成するクロック信号CLの周波数を制御すると共に、メモリ装置40のメモリに実際に書き込むことになる書き込みデータDTを生成し、これをメモリ装置40に対して出力するものである。すなわち、出力データ生成部20は、周波数制御回路11において生成される書き込み時のクロック信号CLを調整すると共に、バスライン(処理システム)からの書き込みデータを処理してメモリ装置40に出力するものである。
入力データ生成部30は、エントロピー計算部60の差分計算部63からの情報に応じて動作する周波数制御回路11、制御信号生成部12、アドレス制御部13のそれぞれからの信号に基づいて、メモリ装置40から読み出された多ビットのデータDTの供給を受けて、これからバスラインに送出(入力)する形式の多ビットのデータを復元し、これをバスラインに送出するものである。すなわち、入力データ生成部30は、メモリ装置40から読み出された多ビットのデータを処理してバスライン(処理システム)に入力するものである。
そして、上述した各部が協働することにより、メモリ装置40へのデータの書き込み処理、および、メモリ装置40からのデータの読み出し処理の高速化を実現するようにしている。
[書き込み時の動作について]
次に、この実施の形態のメモリ制御システム10の動作について説明する。まず、メモリ装置40への書き込み(ライト)動作の概要について説明する。
次に、この実施の形態のメモリ制御システム10の動作について説明する。まず、メモリ装置40への書き込み(ライト)動作の概要について説明する。
バスラインからメモリ制御システム10に供給される所定ビット数の多ビットのデータは、データ保持レジスタ50に溜められる。メモリ装置40に転送可能なサイズ(量)までデータが溜まった時点で、エントロピー計算部60の差分計算部63は、LUT61で規定される読み出し順番に従って、データ保持レジスタ50から所定ビット数の多ビットのデータを読み出す。ここで、LUT61に格納されている情報は、上述のように読み出し順番を指示するためのパターン情報であり、バーストモード時において、連続して書き込む書き込みデータについてのアクセス順序の種類(バーストアクセスの種類)に対応して予め決められるものである。
図2は、この実施の形態のメモリ制御システム10のLUT61に格納されているデータ保持レジスタ50からのデータの読み出し順番を示すパターン情報の一例を説明するための図であり、バーストアクセスの種類をも示す図である。上述もしたように、メモリ装置40は、バーストモードと呼ばれる連続データアクセスモードを有するものである。
この実施の形態のメモリ装置40は、スタートアドレスの下位2ビットと、モード情報(シーケンシャルモード若しくは、インターリーブモードの別を示す情報)の提供を受けることにより、メモリ装置40で内部的にアドレスを生成し、連続して供給される予め決められた個数分(この実施の形態においては4個)の多ビットの書き込みデータを連続して記録することができるものである。
4バーストアクセスのバーストモードを備えるこの実施の形態のメモリ装置40を制御するメモリ制御システム10は、メモリ制御システム10に供給された順番に応じて、0、1、2、3というように順番付けされる1かたまりの4つの連続する多ビットのデータをバーストモードで記録する場合、図2に示したように、8つのシーケンスのうちのいずれかに対応することができるようになっている。
そして、メモリ装置40においては、図2に示したように、例えば、書き込み位置を示すスタートアドレスの下位2ビットが「01」の時においては、シーケンシャルモードでは、1、2、3、0の順に内部アドレスを生成し、インターリーブモードでは、1、0、3、2の順に内部アドレスを生成することになる。また、スタートアドレスの下位2ビットが「11」の時には、シーケンシャルモードでは、3、0、1、2の順に内部アドレスを生成し、インターリーブモードでは、3、2、1、0の順に内部アドレスを生成することになる。
なお、図2に示したように、スタートアドレスの下位2ビットが「00」の時には、シーケンシャルモード、インターリーブモードとも、0、1、2、3の順に内部アドレスを生成し、また、スタートアドレスの下位2ビットが「10」の時には、シーケンシャルモード、インターリーブモードとも、2、3、0、1の順に内部アドレスを生成するので、この重複部分を除けば、4バーストアクセスにおけるアクセスの種類(アクセスパターン)は6種類ということになる。
そして、この図2に示す情報がパターン情報として、図1に示したエントロピー計算部60のLUT61に格納されている。そして、上述もしたように、エントロピー計算部60の差分計算部63は、LUT61に格納されている図2に示した6つのシーケンスのそれぞれに応じた順番で、データ保持レジスタ50に保持されているバスラインからの多ビットのデータを読み出して、新たに読み出した多ビットのデータ(今回のデータ)とその直前に読み出した多ビットのデータ(前回のデータ)との差分を計算し、その結果を保持するようにする。
なお、4つの多ビットのデータの内、最初に読み出された多ビットのデータの場合には、例えば、ゼロデータとの差分演算を行うようにしてもよいし、最初に読みされた多ビットのデータそのままを、最初の差分値として用いるようにしてもよい。そして、結果としては、1まとまりとされる4つの多ビットのデータを対象として、1番目から4番目までの4つの差分値が得られることになる。
差分計算部63は、バーストモードにおいての1まとまりとなる4つの多ビットのデータ毎に、LUT61に保持されている図2に示した6つのシーケンス(読み込み順番)の全てに関して上述のように差分の計算を行う。そして、差分計算部63は、計算結果から、LUT61に規定されている読み込み順番(図2に示した6種類のシーケンス(処理順序))を示すパターン情報のうちで、差分情報の分布が一番均一になるシーケンスを示すパターン情報を決定(特定)し、決定情報をエントロピー保持レジスタ62に記録する。
なお、この実施の形態においては、以下に説明するように、決定情報は、メモリアドレスの下位2ビットの情報とアドレッシングモードとにより、パターン情報を特定するようにし、エントロピーモードにより、差分値の状態(差分値の分布状態)を示すようにしている。
図3に、差分計算部63からの決定情報を格納するエントロピー保持レジスタ62のデータ構造を示す。データ構造は、メモリアドレス、アドレッシングモード、エントロピーモードからなる。
上述もしたように、メモリアドレス(特に下位2ビット)及び、アドレッシングモード(「0」がシーケンシャルモード、「1」がインターリーブモード)によって、パターン情報の別が示される。すなわち、図2に示した6つのシーケンスの内のどのシーケンスでデータ保持レジスタ50からデータを読み出し、バーストモードアクセスを行うようにしたかが分かるようになっている。
また、エントロピーモードは、連続データの差分値の状態を示しており、図3に示したように、例えば、「00」の時は、2番目、3番目、4番目の差分値が同一(均一)であることを示し、「10」の時は、1番目、2番目、3番目、4番目の差分値が異なっていることを示している。同様に、エントロピーモードが「01」の時は、2番目と3番目の差分値が同一(均一)であり、「11」の時には、3番目と4番目の差分値が同一(均一)であることを示している。
また、差分計算部63で得られた決定情報は、図1に示したように、制御信号生成部12、アドレス生成部13及び、データ保持レジスタ50に送信される。制御信号生成部12及び、アドレス生成部13は、決定情報をメモリ装置40に付与し、また、データ保持レジスタ50は、差分計算部63からの決定情報により示されるパターン情報に従って順番に、出力データ生成部20に多ビットのデータを送信する。
具体的には、制御信号生成部12は、各種のコマンド信号を生成して、これをメモリ装置40に供給するが、決定情報に応じたアドレッシングモードをも供給するようにする。また、アドレス生成部13は、決定情報のメモリアドレスをメモリ装置40に供給するようにする。そして、周波数制御回路11は、書き込み時に用いられる所定の周波数のクロック信号CLを生成して、これをメモリ装置40に供給するので、データの書き込み処理を行うことが可能とされる。そして、メモリ装置40のメモリに書き込まれるデータ(書き込みデータ)は、出力データ生成部20において、以下のようにして生成される。
データ保持レジスタ50からの多ビットのデータは、出力データ生成部20の比較器21、ラッチ部22、ALU23に供給される。ラッチ部22は、これに供給された多ビットのデータを保持するが、新たに多ビットのデータが供給される毎に、先に供給されて保持している多ビットのデータを出力して、比較器21と、ALU23とに供給する。
そして、次の多ビットのデータがデータ保持レジスタ50から供給されると、上述のように、1つ前のアドレスにおいて供給された多ビットのデータ(前回のデータ)がラッチ部22から比較器21とALU23とに供給されるので、比較器21は、ラッチ部22からの前回のデータとデータ保持レジスタ50からから最新に供給された多ビットのデータ(今回のデータ)とを比較して大小関係を判別し、その判別結果をALU23とエンコード部24とに供給する。すなわち、比較器21は、データの供給タイミング毎に、前回供給された多ビットのデータ(前回のデータ)と今回供給された多ビットのデータ(今回のデータ)とを比較して、その大小関係を判別するものである。
ALU23は、比較器21からの大小関係の判別結果に基づいて、ラッチ部22からの前回のデータよりデータ保持レジスタ50から最新に供給された今回のデータが大きい場合は、加算方向(増加方向)の差分値情報を計算し、また、ラッチ部22からの前回のデータよりデータ保持レジスタ50から最新に供給された今回のデータが小さい場合は、減算方向(減少方向)の差分値情報を計算する。ALU23で計算された差分値情報は、エンコード部24に供給される。
エンコード部24は、比較器21から出力される大小関係の判別結果と、ALU23から出力される差分値情報をパッキングして、差分情報を形成し、これをラッチ部25と比較器26とに供給すると共に、メモリ装置40にも供給して書き込む(記録する)ようにする。このように、デコード部34において形成される差分情報は、実際にメモリ装置40のメモリに書き込む書き込みデータDTとなるものである。
なお、この実施の形態において、エンコード部24において形成される書き込みデータDTである差分情報は、図4に示す構造を持つ。図4に示すように、エンコード部24において形成される書き込みデータDTは、比較情報部と差分情報部から成り、上述もしたように、一つ前のアドレスの多ビットのデータ(前回のデータ)との差分情報を表す。比較情報部は、1ビットで構成され、例えば、「0」の場合は加算方向、「1」の場合は減算方向を示す。また、差分情報部は、比較情報部の加減算の方向に対応した差分値情報で構成される。なお、書き込みデータは、図6に示した形式のものに限るものではなく、その他、必要な情報を付加するようにしてももちろんよい。
そして、ラッチ部25は、エンコード部24からの差分情報である書き込みデータDTを保持するものであるが、次の差分情報(書き込みデータDT)が供給された時には、先に保持している差分情報(前回の書き込みデータDT)を比較器26に供給する。ここで、ラッチ部25から出力される差分情報である前回供給された書き込みデータを書き込みデータDTzとし、最新にエンコード部24から供給された差分情報である今回供給された書き込みデータを書き込みデータDTkとする。
比較器26は、ラッチ部25からの前回の書き込みデータDTzと、エンコード部24からの今回形成した書き込みデータ(今回の書き込みデータ)DTkとを比較し、その比較結果を周波数制御回路11に供給する。なお、比較器26から周波数制御回路11に供給される比較結果は、増減の方向、差分情報(差分値情報)の双方が同一の場合には「1」、異なる場合には「0」というような1ビットの情報である。
周波数制御回路11は、比較器11からの比較結果が、前回の書き込みデータDTzと今回の書き込みデータDTkが同じであることを示しているときには、書き込みデータDTは変化していないということなので、通常よりも高い周波数のクロック信号CLを形成し、これをメモリ装置40に供給する。
また、周波数制御回路11は、比較器11からの比較結果が、前回の書き込みデータDTzと今回の書き込みデータDTkが異なることを示しているときには、書き込みデータDTは変化したということなので、通常の周波数のクロック信号CLを形成し、これをメモリ装置40に供給する。
これにより、内容が同じ書き込みデータが連続する部分においては、クロック信号CLの周波数を通常よりも速くすることによって、バス帯域を向上させるようにし、書き込みデータDTのメモリ装置40への書き込み(記録)を迅速に行うことができるようにしている。もちろん、隣接する書き込みデータが異なる場合には、クロック信号CLは通常の周波数となるようにされるので、書き込みデータを通常通りに記録することができる。
なお、ラッチ部22の初期値は、ゼロに設定してあり、データ保持レジスタ50からの一番目のデータは、ラッチ部22のデータゼロと比較されることになる。また、この実施の形態のメモリ装置40は、上述もしたように、4バーストアクセスのバーストモードでデータの記録を行うようにしており、1まとまりとされる各4つ分の多ビットのデータの最初のデータとの比較や差分値の算出は、規定値ゼロとの間で行われる。
また、バスラインのバス幅(データ幅)は、8ビット、16ビット、32ビット、64ビット、128ビット、256ビット、512ビット、…と種々の場合があり、メモリ制御システム10とメモリ装置40とを接続するデータラインの幅(データ幅)も同様に、8ビット、16ビット、32ビット、64ビット、128ビット、256ビット、512ビット、…と種々の場合がある。
そして、バスラインのバス幅とメモリ制御システム10とメモリ装置40間のデータラインの幅とが異なっている場合であっても、キャッシュメモリであるデータ保持レジスタ50を備えることによって、所定の処理単位毎(所定のビット数毎)にデータを読み出して処理することができるようにされる。
[供給されるデータと生成したデータの例について]
次に、図5、図6を参照しながら、この実施の形態のメモリ制御システム10に対してデータ保持レジスタを通じて供給されるバスライン入力データの例と、これをこの実施の形態のメモリ制御システム10において処理することにより生成した書き込みデータとについて具体的に説明する。
次に、図5、図6を参照しながら、この実施の形態のメモリ制御システム10に対してデータ保持レジスタを通じて供給されるバスライン入力データの例と、これをこの実施の形態のメモリ制御システム10において処理することにより生成した書き込みデータとについて具体的に説明する。
図5は、この実施の形態のメモリ制御システム10への2種類のバスライン入力データの例を説明するための図であり、図6は、図5に示した2種類のバスライン入力データのそれぞれをメモリ制御システム10で処理して形成した書き込みデータを説明するための図である。なお、図5、図6の双方の図とも、X軸がアドレス情報を示し、Y軸がデータ値を示している。
図5に示すように、等差の増加方向のデータNDt1、等差の増加及び減少の複合データNDt2の2種類のデータのそれぞれをバスライン入力データとしてこの実施の形態のメモリ制御システム10で処理すると、バスライン入力データNDt1、NDt2のそれぞれは、図6に示したように、均一な差分情報に変換され、データ値が固定される。
すなわち、図5に示した等差の増加方向のデータNDt1をメモリ制御システム10で処理すると、図6において、差分情報(書き込みデータ)DT1に示すように、2番目のアドレス以降は均一なデータとなる。また、図5に示した等差の増加方向と減少方向との複合入力データNDt2をメモリ制御システム10で処理すると、図6において、差分情報(書き込みデータ)DT2が示すように、全範囲で均一なデータとなる。
したがって、図5、図6を比較すると分かるように、図5に示した等差増加方向のバスライン入力データNDt1をこの実施の形態のメモリ制御システム10で処理すると、上述のようにして得られる差分情報は、図6において実線で示したデータDT1が示すように、バーストモードで記録する1まとまりのデータの2番目以降については均一になるので、処理順序を変更することも無く、アドレスの変化方向も増加方向の単一方向となる。図6において、等差的に変化するアドレス情報0x00→0x01→0x02→0x03は、実線で示した等差増加方向のバスライン入力データNDt1を処理して得られる差分情報DT1に対応するものである。
これに対して、図5に示した等差の増加及び、減少の複合のバスライン入力データNDt2をこの実施の形態のメモリ制御システム10で処理すると、上述のようにして得られる差分情報は、図6において、点線で示したデータDT2が示すように、処理順序が変更されることにより(アドレスを増加減少させるように調整されることにより)、差分情報が均一になるようにされる。図6において、増減するように変化するアドレス情報0x01→0x00→0x03→0x02は、点線で示した等差増加方向のバスライン入力データをNDt2処理して得られる差分情報DT2に対応するものである。
このように、この実施の形態のメモリ制御システム10においては、バーストモードにより処理する1まとまりのデータの処理順序を調整することにより(アドレスの増加減少を調整することにより)、差分情報が均一になるようにさせ、書き込み時のクロック信号CLを高速化可能な区間を多く作りだすようにしている。これは、図2を用いて上述したバーストアクセスの種類の表のスタートアドレス「01」、アドレッシングモード情報「1:インターリーブ」によって、バーストモードで処理する1まとまりのデータ毎に制御できるようにしている。
したがって、図5に示したいずれのバスライン入力データをメモリ装置40のメモリに書き込む場合であっても、この実施の形態のメモリ制御システム10においては、書き込みデータとなる差分情報が均一となる区間を効果的に設けることができる。そして、差分情報が均一になる区間においては、周波数制御回路11において形成するクロック信号CLの周波数を通常よりも速くし、バス帯域を向上させ、データを高速にメモリ装置40に転送して、高速に記録することができる。
このように、バスラインからの書き込みデータをメモリ制御システム10で処理することにより、データ線41を通じて、メモリ制御システム10からメモリ装置40供給される書き込みデータ(差分情報)の変化を最小限に抑え、同じ書き込みデータが連続する区間においては、書き込みに用いるクロック信号CLの周波数を速くし、書き込みデータを高速に転送して、メモリ装置40のメモリに迅速に書き込むことができるようにしている。
また、図5、図6を用いて説明したように、バスラインから供給される多ビットのデータが同一内容のデータ(均一データ)である場合だけでなく、バスラインから供給される多ビットのデータが等差的に増加する部分、および、等差的に減少する部分の双方においても、差分情報を均一化することができ、書き込みのためのクロック信号CLの周波数を速くすることができる。すなわち、同一となることが少ない多ビットのデータについても、差分情報が同一となるデータ区間を多く出現させるようにし、データ転送を高速化を図ることができるようにされる。
このように、図1に示したメモリ制御システム10においては、図2の情報を図1のエントロピー計算部60のLUT61に持ち、差分計算部63で、最適なバーストアクセスモードを決定し、制御信号生成部12及び、アドレス生成部13を通じて、図2に示したどのモードを選択したのかを、メモリ装置40に送信するのが大きな特徴の1つである。
[書き込み(ライト)動作のタイミングチャートについて]
図7は、SDRAMにおけるバーストモードの書き込み動作の一般的なタイミングを説明するためのタイミングチャートであり、図8は、この実施の形態のメモリ制御システム10でSDRAMにバーストモードを使用して書き込み動作を行った場合のタイミングチャートである。
図7は、SDRAMにおけるバーストモードの書き込み動作の一般的なタイミングを説明するためのタイミングチャートであり、図8は、この実施の形態のメモリ制御システム10でSDRAMにバーストモードを使用して書き込み動作を行った場合のタイミングチャートである。
図7において、図7Aはクロック信号を、図7Bはコマンド信号(制御信号)を、図7Cはアドレス情報を、図7Dは記録対象のバスデータ(書き込みデータ)を示している。また、図8において、図8Aはクロック信号を、図8Bはコマンド信号を、図8Cはアドレス情報を、図8Dは記録対象のバスデータ(書き込みデータ)を示している。
図7の従来からの一般的な動作のタイミングチャートに示すように、SDRAMは、2次元配列のメモリとなっているため、メモリへのアドレスは、RAS(Row Address strobe)方向(行アドレス方向)とCAS(Column address strobe)方向(列アドレス方向)の2回与える。図7B、図7Cに示すように、SDRAMの動作規定により、Row(行)アドレス発行時は、ACT(アクティベイト)コマンドを発行し、Column(列)アドレス発行時は、WRT(ライト)コマンドを発行する。
そして、図7に示したように、バーストモードアクセス使用時は、SDRAM(メモリ装置40)へアドレスを与えるのは、バースト転送のスタートアドレスのみであり、最初のデータ転送以外は、SDRAMに与える信号はクロック信号(図7A)とバスデータ(図7D)の2種類のみである。これにより、図7に示したように、バーストモードで所定の1まとまりのデータが1回のアドレスの指定により、連続して記録するようにされる。
そして、図8に示したように、この実施の形態のメモリ制御システム10の場合には、コマンドやアドレスをメモリ装置40に与えるタイミングは同じである。そして、以下に説明するように、図2に示したスタートアドレス(メモリアドレス)は、制御信号生成部12を通じてメモリ装置40に供給されるが、これは、WRTコマンドの時に与えられるCAS方向のアドレスの下位2ビットに相当する。また、シーケンシャルモードまたはインターリーブモードの設定は、MRS(Mode Register Set)のコマンド発行時に行うようにされる。
この実施の形態のメモリ制御システム10の場合には、上述もしたように、エントロピー計算部60の差分計算部63から供給される情報に基づいて、制御信号生成部12は、MRSコマンド、ACTコマンド、WRTコマンドを形成し、これをメモリ装置40に供給する。また、エントロピー計算部60の差分計算部63から供給される情報に基づいて、アドレス生成部13は、アドレス情報を形成し、これをメモリ装置40に供給する。また、周波数制御回路11は、出力データ生成部20からの情報に基づいて、記録時におけるクロック信号の調整を行うようにしている。
すなわち、この実施の形態のメモリ制御システム10においても、図8B、図8Cに示すように、制御信号生成部12がACTコマンドを発行するタイミングで、アドレス生成部13がRow(行)アドレスを発行する。そして、制御信号生成部12がWRTコマンドを発行するタイミングで、アドレス生成部13がColumn(列)アドレスを発行し、データ線41を通じて供給されるバスデータ、この実施の形態においては、差分情報である書き込みデータDTのメモリ装置40のSDRAMへの記録が開始される。
この場合、最初の多ビットのデータ「dat_1」は、初期値ゼロと比較されるので、バスデータ「dat_1」がそのまま記録されることになるが、図6を用いて説明したように、差分情報である書き込みデータDTが均一となる部分においては、クロック信号の周波数が図8Aに示すように高速となるようにされ、差分情報である書き込みデータDTが高速にメモリ装置40のSDRAMに転送されて記録される。
そして、図7のバーストモードを用いた通常のデータ転送処理時の態様と図8に示したこの実施の形態のメモリ制御システム10によるバーストモードを用いたデータ転送処理時の態様とを比較すると明らかなように、この実施の形態のメモリ制御システム10を用いてバーストモードによりデータを転送する場合には、データ「dat_1」を転送した後においては、クロック信号CLを高速にすることができるので、データ転送の高速化をさらに顕著なものとして実現することができる。
なお、バーストモードによる記録時においては、例えば、4つの書き込みデータを1つのかたまりとして記録する4バーストモード、8つの書き込みデータを1つのかたまりとして記録する8バーストモードなどのように、多ビットのデータの1かたまり毎にSDRAMのアドレスが指示するようにされると共に、図1に示したラッチ部22の値がゼロクリアされることになる。すなわち、メモリ装置40におけるバースト転送の多ビットのデータのかたまり毎に、ラッチ部22の初期値はゼロに設定される。
[読み出し時の動作について]
次に、この実施の形態のメモリ制御システム10におけるメモリ装置40からのデータの読み出し(リード)動作について説明する。
次に、この実施の形態のメモリ制御システム10におけるメモリ装置40からのデータの読み出し(リード)動作について説明する。
メモリ装置40のSDRAMからのデータの読み出し動作においては、バーストモードを用いたデータの書き込み時において、1回のスタートアドレスの指定によって書き込まれることになる複数個の多ビットのデータ(この実施の形態においては、4個の多ビットのデータ)がどのようなシーケンス(順番)で記録されたかを知る必要があると共に、図4に示したフォーマットで記録されているデータをバスラインから供給された形式(バスラインに送出する形式)の元のデータにデコードする必要がある。
この実施の形態のメモリ制御システム10においては、メモリ装置40に対してどのようなシーケンスで書き込みデータDTを記録したかは、エントロピー計算部60のエントロピー保持レジスタ62に、図3に示したデータ構造で記憶している。このエントロピー保持レジスタ62の情報に基づいて、制御信号生成部12における制御信号の生成、アドレス生成部13におけるアドレス情報の生成、読み出し時のクロック信号の制御を行うと共に、デコードされた多ビットのデータのバスラインの送出順序の制御を行うようにしている。
また、図4に示した差分情報の形式でメモリ装置40のSDRAMに記録されているデータのデコード処理は、以下に説明するように、入力データ生成部30において行うことになる。
すなわち、この実施の形態のメモリ制御システム10に対して、例えば、図示しないシステムコントローラからの読み出しアドレスを含む読み出し指示が与えられると、エントロピー計算部60の差分計算部63は、指示された読み出しアドレスに基づいて、エントロピー保持レジスタ62に保持されている情報を検索する。
そして、差分計算部63は、検索の結果得られた図3に示したデータ構造を有する情報に基づいて、周波数制御回路11、制御信号生成部12、アドレス生成部13のそれぞれを制御する。具体的には、差分計算部63は、制御信号生成部12を制御して、バーストモードでデータを読み出すようにするための種々のコマンドである制御信号CTを生成するようにすると共に、アドレス生成部13を制御して、バーストモードでデータを読み出す場合のアドレスを生成するようにする。
さらに、差分計算部63は、検索の結果得られた図3に示した構造を持つ情報のエントロピーモードに基づいて、周波数制御回路11を制御する。例えば、図3に示したように、エントロピーモードが「00」である区間においては、1回の読み出しアドレスの指定によって読み出される4つのデータのうち、2番目以降のデータが均一(同一)であることが分かっている。そこで、この場合には、2番目以降のデータの読み出し時において、読み出しのためのクロック信号CLの周波数を速くし、メモリ装置40を高速に動作させてデータを読み出すようにすることによって、バス帯域を広げることができるようにしている。
なお、図3に示したように、エントロピーモードが「10」である場合には、1回の読み出しアドレスの指定によって読み出される4つのデータの全てが異なっているので、読み出しのためのクロック信号CLは通常のままとする。しかし、エントロピーモードが「01」の場合には、1回の読み出しアドレスの指定によって読み出される4つのデータのうち、2番目と3番目とが均一(同一)であることが分かっているので、この2番目のデータと3番目のデータを読み出す場合に、読み出しのクロックを速くすることができる。
同様に、エントロピーモードが「11」の場合には、1回の読み出しアドレスの指定によって読み出される4つのデータのうち、3番目と4番目とが均一(同一)であることが分かっているので、この3番目のデータと4番目のデータを読み出す場合に、読み出しのクロックを速くすることができる。
このように、データのバーストモードによる書き込み時においてどのようなシーケンスでデータを記録したかをエントロピー保持レジスタ62に保持していることにより、データの読み出し制御を適切に行うことができると共に、読み出し時においても、読み出しのためのクロック信号CLの周波数を速くすることが可能な区間を多数設けるようにすることによって、読み出し時におけるバス帯域を広げることができるようにしている。
上述したように、周波数制御回路11からのクロック信号CLと、制御信号生成部12からの制御信号CTと、アドレス生成部13からのアドレス情報とに応じて、メモリ装置40のSDRAMから記録時と同じバーストモードで、図4に示したデータ構造を有するデータが読み出される。
そして、メモリ装置40から読み出されたデータは、データ線41を通じて入力データ生成部30のデコード部34に供給される。デコード部34は、これに供給されたデータを比較情報部の演算方向を示すデータと差分情報部の差分値情報とに分解する。そして、比較情報部の演算方向を示す情報は、比較器31に供給され、差分情報部の差分値情報はALU33に供給される。
比較器31は、デコード部34からの1ビットの演算方向を示すデータが「0」の場合は、ALU33に対して、ラッチ部32からのデータと、デコード部34からの差分値情報とを加算するようにする加算指示を出し、また、デコード部34からの1ビットの演算方向を示すデータが「1」の場合は、ALU33に対して、ラッチ部32からのデータから、デコード部34からの差分値データを減算するようにする減算指示を出す。
これにより、ALU33においては、ラッチ部32に保持されている1アドレス前のデコードされてデータ保持レジスタ50に記憶するようにされたデータと、デコード部34において分離された読み出しデータの差分情報部の差分値情報とが、読み出しデータの比較情報部の演算方向を示す情報に基づいて、順次に加算または減算処理されて、バスラインに送出する形式のデータが順次に復元される。
そして、上述もしたように、バスラインに送出する形式に復元されたデータは、データ保持レジスタ50に格納されてバスラインへの送出を待つと共に、ラッチ部32にラッチされて、次アドレスの読み出しデータの復元に用いられるようにされる。
そして、データ保持レジスタ50に格納された復元後の読み出しデータは、エントロピー計算部60の差分計算部63によるエントロピー保持レジスタ62に保持された情報に基づく読み出し制御に応じて、このメモリ制御システム10への供給時(メモリ装置40への書き込み時)と同じ順番で、復元された多ビットのデータがバスラインに送出されて利用されることになる。
なお、上述した書き込み動作時の場合と同様に、メモリ装置40におけるバースト転送の多ビットのデータのかたまり毎に、ラッチ部32の初期値はゼロに設定される。これにより、バーストモードでメモリ装置40のSDRAMに書き込まれたデータを書き込み時と同じ多ビットのデータのかたまり毎に読み出して、これを復元し、復元したデータを処理システムへの入力データとしてバスラインに送出することができるようにされる。
図9に、一般的なバーストモード時の読み出し(リード)動作のタイミングチャートを示し、図10に、この実施の形態のメモリ制御システム10において行われるバーストモード時の読み出し(リード)動作のタイミングチャートを示す。図9において、図9Aはクロック信号を、図9Bはコマンド信号(制御信号)を、図9Cはアドレス情報を、図9Dはバスデータ(読み出しデータ)を示している。また、図10において、図10Aはクロック信号を、図10Bはコマンド信号(制御信号)を、図10Cはアドレス情報を、図10Dはバスデータ(読み出しデータ)を示している。
図9に示すように、一般的なバーストモードの読み出し動作は、図9Bに示したように、書き込み時と同様に、MRSコマンド、ACTコマンド、REDコマンドを順次に発行して、メモリ装置40からのデータの読み出しが行われる。そして、この場合、図9Cに示したように、MRSコマンド発行時にシーケンシャルモードまたはインターリーブモードの別を示す情報を発行し、ACTコマンド発行時にRow(行)アドレスを発行し、REDコマンド発行時にColumn(列)アドレスを発行する。これにより、図9Dに示したように、予め決められた複数個の多ビットのデータdat1、dat2、dat3、dat4、dat5、dat6が読み出される。この場合、図9Aに示したように、読み出しのためのクロック信号の周波数が変更されることはない。
これに対し、この実施の形態のメモリ制御システム10の場合には、図10B、図10Cに示すように、MRSコマンド、ACTコマンド、REDコマンド、および、スタートアドレスであるRow(行)アドレス、Column(列)アドレスは、基本的には、図9B、図9Cに示した一般的なバーストモードの読み出し動作の場合と同様のタイミングで行われる。そして、この実施の形態のメモリ制御システム10においては、各コマンド信号は、エントロピー計算部60の差分計算部63の制御に応じた制御信号生成部12により生成され、アドレス情報は、エントロピー計算部60の差分計算部63の制御に応じたアドレス生成部13により生成される。
そして、この実施の形態のメモリ制御システム10の場合には、図10Aに示すように、読み出されるデータが均一(同じ)である区間が連続する場合には、エントロピー計算部60の差分計算部63の制御に応じて、周波数制御回路11が読み出しのためのクロック信号を速くするので、図10Dに示すように差分情報としてメモリ装置40のSDRAMに記録されているデータを高速に読み出すことができるようにされる。
すなわち、図9と図10とを比較すると明らかなように、最初のデータdat1を読み出した後においては、この実施の形態のメモリ制御システム10の場合には、読み出しのためのクロック信号が速くされて、メモリ装置40のSDRAMに記録されているデータが高速に読み出すようにされる。換言すれば、読み出し(リード)データが均一の場合は、多ビットのメモリの読み出し動作においても高速動作ができる。
このように、この実施の形態のメモリ制御システム10は、メモリ装置40へのデータの書き込み時において、エントロピー計算部60の機能により書き込みデータの値が均一になる区間を多く発生させるようにして、出力データ生成部20の機能により、書き込みデータが均一になる区間においては、周波数制御回路11を制御して書き込みのためのクロック信号を速くして、データの書き込みを高速に行うことができるようにしている。
さらに、この実施の形態のメモリ制御システム10は、メモリ装置40からのデータの読み出し時において、エントロピー計算部60の機能により書き込み時の書き込みデータのシーケンス(順序)に合致するようにメモリ装置40からデータを読み出すが、同じデータが連続する部分においては、読み出しのためのクロック信号を速くして、メモリ装置40からのデータの読み出しを高速に行うことができるようにしている。
すなわち、この実施の形態のメモリ制御システム10は、書き込み時と読み出し時の双方において、データの転送を高速に行うことができるようにしている。
なお、この実施の形態のメモリ制御システム10においては、バーストモードが用いられて、メモリ装置40へのデータの書き込みと、メモリ装置40からのデータの読み出しとが行われるので、メモリ装置40へのデータの転送時だけでなく、メモリ装置40からのデータの読み出し時においても、所定単位毎にデータの読み出しを行うことにより、上述のように多ビットのデータを適正に復元することができ、しかも、1ファイル分の差分情報の途中からでも、読み出して、適正に多ビットのデータを復元し、これを利用することができるようにされる。
[携帯通信機器端末へのメモリ制御システム10の適用について]
近年、携帯通信機器端末では、大容量のメモリを搭載するのが増えている。これは、携帯通信機器端末が取り扱うデータが、文字データ、音声データだけでなく、画像データまで扱うようになった影響が大きい。画像データに関しては、データ量の削減の意味から圧縮されて取り扱われることが多い。
近年、携帯通信機器端末では、大容量のメモリを搭載するのが増えている。これは、携帯通信機器端末が取り扱うデータが、文字データ、音声データだけでなく、画像データまで扱うようになった影響が大きい。画像データに関しては、データ量の削減の意味から圧縮されて取り扱われることが多い。
画像データの圧縮の手法は、JPEG(Joint Photographic Experts Group)方式やMPEG(Moving Picture Experts Group)方式等で採用されているDCT(Discrete Cosine Transform:離散コサイン変換)を用いるのが一般的である。DCTは、画面内の近接するピクセル(画素)の画像情報の変化が緩やかである場合が自然画の中には多く、また、人間の目の感性が緩やかな画像情報変化に敏感で、急峻な画像情報変化に鈍感であるという、画像の性質と、利用者の目の機能との両方を利用し、高能率符号化しやすい状態に変換できるため広く利用されるようになっている。
つまり、静止画像データや動画像データなどの画像データの一般的な性質として、画面内の近接するピクセルの画像情報の変化が緩やかである、すなわち、近接するピクセルの画像情報の変化が、均一、あるいは、線形に変化する、あるいは、線形に近い状態で変化する場合が多いといえる。したがって、図5、図6を用いて説明したように、画像データをメモリに記録する場合にこの発明を適用することによって、差分情報が均一になる区間が多く発生し、画像データを高速にメモリに記録することが可能となる。
このように、扱うデータが画像データである場合が多くなってきている近年の携帯通信機器端末においては、データの変化が緩やか、すなわち、差分情報が均一な区間が多くなるという画像データの特徴を生かせるこの発明のメモリ制御システムの適用が有効である。
また、画像データを取り扱うシステムにおいては、大容量のメモリを効率的に使用するため、バーストモードアクセスを使用する場合が多い。近年主流である、SDR(Single Data Rate)のDRAM(Dynamic Random Access Memory)、DDR(Double Data Rate)のDRAM、および、SRAM(Static Random Access Memory)、フラッシュメモリなどでも、バーストモードを使用するのが殆どである。
これらのメモリを用いたメモリ装置は、アドレス発行が最初の一回だけであり、残りのアドレス生成は、メモリ装置の内部で行っている。したがって、上述のような、種々のメモリが用いられ、バーストモードを備えるメモリ装置を用いる場合に、この発明を適用することができる。
さらに、上述もしたように、バーストモードアクセスにおいては、シーケンシャルモード、インターリーブモードなどのアドレス生成モードをメモリ装置内部に備えており、この複数のモードを有効に利用して差分情報がより均一になるようにメモリ制御を行うことにより、データ転送の効率化を図ることができる。
なお、上述した実施の形態のメモリ制御システム10において、データ保持レジスタ50を設けてあるが、通常外部メモリへの頻繁なアクセスは、スピードの高速化及び、消費電力の点からシステムのボトルネックになる可能性が高いため、キャッシュメモリ等の2次メモリを外部メモリとシステムの間に置き、データの局所性(同じアドレス近辺にアクセスが集中する)を利用している場合が多い。
上述した実施の形態のメモリ制御システム10のデータ保持レジスタ50も、そのような2次メモリを流用することができるため、ハードウェアの規模の増加も必要最小限に抑えられる。
以上の点から、画像データを取り扱う携帯通信機器端末では、画像データの差分情報の均一性や、メモリ装置へのバーストモードアクセスを最適に利用したこの発明によるメモリ制御システム、メモリ制御方法が有効である。
また、この発明によるメモリ制御装置、メモリ制御方法は、全ての画像データに対して有効であり、CCD(Charge Coupled Device)などの撮像素子から取り込まれる画像データに対する処理、拡大縮小等の画サイズ変換処理、及び、LCD(Liquid Crystal Display)などの表示素子への画像の表示処理等においても、データを転送する場合に適用可能である。よって、携帯通信機器端末でのアプリケーションとの親和性も高く、バス帯域の向上に対しての効果は大きい。
[各回路部と請求項の各手段との対応付けについて]
そして、上述した実施の形態においては、データ保持レジスタ50が、第1の保持手段としての機能を実現し、エントロピー計算部60のLUT61が第2の保持手段あるいは再生専用のメモリ制御システムにおける保持手段としての機能を実現し、エントロピー計算部60の差分計算部63が、特定手段としての機能を実現している。また、出力データ生成部20の比較器21とラッチ部22とALU23と協働して、検出手段としての機能を実現し、出力データ生成部20のエンコード部24とラッチ部25と比較器26とが協働して、判別手段としての機能を実現している。また、周波数制御回路11が第1の周波数制御手段としての機能を実現している。
そして、上述した実施の形態においては、データ保持レジスタ50が、第1の保持手段としての機能を実現し、エントロピー計算部60のLUT61が第2の保持手段あるいは再生専用のメモリ制御システムにおける保持手段としての機能を実現し、エントロピー計算部60の差分計算部63が、特定手段としての機能を実現している。また、出力データ生成部20の比較器21とラッチ部22とALU23と協働して、検出手段としての機能を実現し、出力データ生成部20のエンコード部24とラッチ部25と比較器26とが協働して、判別手段としての機能を実現している。また、周波数制御回路11が第1の周波数制御手段としての機能を実現している。
また、エントロピー計算部60のエントロピー保持レジスタ62が、第3の保持手段としての機能を実現し、エントロピー計算部60の差分計算部63と周波数制御回路11、制御信号生成部12、アドレス生成部13が協働して、制御手段としての機能を実現している。また、入力データ生成部30が、復元手段としての機能を実現し、周波数制御回路11が第2の周波数制御手段としての機能も実現するようにしている。
[プログラム化について]
また、メモリ制御システム10のラッチ部22、25、32のデータを保持する機能をコンピュータの所定のレジスタにより実現するようにし、バーストモードで記録する1まとまりの多ビットのデータをどのような順番で処理するかを特定する特定手段としての機能と、差分情報を検出する検出手段としての機能と、判別手段としての機能と、周波数制御手段としての機能をコンピュータで実行するプログラム(ソフトウエア)により実現することももちろん可能である。
また、メモリ制御システム10のラッチ部22、25、32のデータを保持する機能をコンピュータの所定のレジスタにより実現するようにし、バーストモードで記録する1まとまりの多ビットのデータをどのような順番で処理するかを特定する特定手段としての機能と、差分情報を検出する検出手段としての機能と、判別手段としての機能と、周波数制御手段としての機能をコンピュータで実行するプログラム(ソフトウエア)により実現することももちろん可能である。
したがって、差分計算部63としての機能、比較器21としての機能、ALU23としての機能、エンコード部24としての機能、さらに、制御信号生成部12としての機能、アドレス生成部13としての機能、デコード部34としての機能、比較器31としての機能、ALU33としての機能のそれぞれを、コンピュータで実行するプログラムによって実現することも可能である。
すなわち、多ビットのデータのデータを保持するレジスタやワークメモリ(作業領域)さえあれば、図1に示したメモリ制御システム10の各部の機能をプログラムにより実現することができる。そして、メモリへのデータの書き込み/読み出しを行う種々の電子機器に、上述のように各部の機能を実現するプログラムを搭載することによって、多ビットのデータのデータを高速に転送可能な種々の電子機器を、機器構成を変更することなく実現することが可能である。
[その他]
なお、上述したように、この発明は、画像データを処理する場合に好適であることを説明したが、処理可能なデータは画像データだけではなく、種々のグラフィックスデータ、音声データ、テキストデータ、プログラムデータなどの種々のデータの転送制御に用いることが可能である。
なお、上述したように、この発明は、画像データを処理する場合に好適であることを説明したが、処理可能なデータは画像データだけではなく、種々のグラフィックスデータ、音声データ、テキストデータ、プログラムデータなどの種々のデータの転送制御に用いることが可能である。
また、この発明は、携帯電話端末、カメラ付き携帯電話端末、デジタルカメラ、デジタルビデオカメラ、PDA、パーソナルコンピュータなど、画像データやその他の種々のデータを転送処理する種々の電子機器に適用可能であることは言うまでもない。
また、上述した実施の形態において、メモリ制御システム10は、データの書き込みと読み出しの両方を行うものとして説明したが、これに限るものではない。例えば、上述したメモリ制御システム10の記録処理と同様にしてデータが記録された読み出し専用メモリ(ROM)用のメモリ制御システムを構成することもできる。
この場合には、図1に示したメモリ制御システム10において、LUT61、出力データ生成部20が不要になると共に、ROMにデータを記録するようにする場合に生成できる図3に示したスタートアドレス、アドレッシングモード、エントロピーモードを予め記録したエントロピー保持レジスタ62を設けるようにすれば、ROM用のメモリ制御システムを構成することができる。
もちろん、図1に示したメモリ制御システム10の入力データ生成部30を備えないメモリ制御システムを構成することにより、書き出し専用のメモリ制御システムを構成することもできる。このように、データの書き込みと読み出しの一方あるいは両方を行うこの発明によるメモリ制御システムを構成することが可能である。
10…メモリ制御システム、11…周波数制御回路、12…制御信号生成部、13…アドレス生成部、20…出力データ生成部、21…比較器、22…ラッチ部、23…ALU、24…エンコード部、25…ラッチ部、26…比較器、30…入力データ生成部、31…比較器、32…ラッチ部、33…ALU、34…デコード部、40…メモリ装置、41…データ線、50…データ保持レジスタ、60…エントロピー計算部、61…LUT、62…エントロピー保持レジスタ、63…差分計算部
Claims (15)
- 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードを備えたメモリ装置用の制御装置であって、
処理対象のデータを一時的に保持する第1の保持手段と、
前記1まとまりのデータの処理順序を示す1つ以上のパターン情報を保持する第2の保持手段と、
前記第1の保持手段から前記1まとまりとなる処理単位毎に、前記第2の保持手段の前記パターン情報のそれぞれを用いてデータを読み出し、その直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定する特定手段と、
前記特定手段により特定された前記パターン情報に応じて前記第1の保持手段から読み出されるデータの供給を受けて、その直前に供給されたデータとの差分情報を検出する検出手段と、
前記検出手段からの前記差分情報の供給を順次に受けて、その直前に供給された前記差分情報と同じか否かを判別する判別手段と、
前記判別手段からの判別結果が、前記差分情報が同じであることを示している場合に、前記差分情報の前記メモリ装置への書き込みのためのクロック信号を高速化する第1の周波数制御手段と
を備えることを特徴とするメモリ制御装置。 - 請求項1に記載のメモリ制御装置であって、
前記特定手段からの特定された前記パターン情報と前記差分情報の書き込み開始位置を示すアドレス情報とを関連付けて保持する第3の保持手段と、
前記第3の保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とするメモリ制御装置。 - 請求項2に記載のメモリ制御装置であって、
前記特定手段は、算出した前記差分が同じである区間を示す同一区間情報を形成することができるものであり、
前記第3の保持手段は、前記特定手段からの前記同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持するものであり、
前記第3の保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する第2の周波数制御手段と
を備えることを特徴とするメモリ制御装置。 - 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードが用いられ、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれ毎に、前記パターン情報に基づいて処理対象のデータを順次に取り込み、その直前に取り込んだデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定し、
この特定したパターン情報にしたがってデータを取り込むようにし、その直前に取り込んだデータとの差分情報を検出して、この差分情報を記録データとして記録した読み出し専用メモリ装置のためのメモリ制御装置であって、
特定された前記パターン情報と前記差分情報の書き込み位置を示すアドレス情報とを関連付けて保持している保持手段と、
前記保持手段に保持されている情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段と、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段と
を備えることを特徴とするメモリ制御装置。 - 請求項4に記載のメモリ制御装置であって、
前記保持手段は、前記パターン情報の特定時において得られる前記差分が同じである区間を示す同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて保持しているものであり、
前記保持手段に保持されている前記同一区間情報に基づいて、差分情報が同じ区間の差分情報を読み出す場合に、前記メモリ装置への読み出しのためのクロック信号を高速化する周波数制御手段
を備えることを特徴とするメモリ制御装置。 - 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードを備えたメモリ装置の制御方法であって、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれに基づいて、バッファから前記1まとまりとなるデータを順次に読み出し、その直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定する特定ステップと、
前記特定ステップにおいて特定された前記パターン情報に応じて前記バッファから読み出されるデータの供給を受けて、その直前に供給されたデータとの差分情報を検出する検出ステップと、
前記検出ステップにおいて検出された前記差分情報の供給を順次に受けて、その直前に供給された前記差分情報と同じか否かを判別する判別ステップと、
前記判別手段ステップにおいての判別結果が、前記差分情報が同じであることを示している場合に、前記差分情報の前記メモリ装置への書き込みのためのクロック信号を高速化する第1の周波数制御ステップと
を有することを特徴とするメモリ制御方法。 - 請求項6に記載のメモリ制御方法であって、
データの書き込み処理時において、前記特定ステップにおいて特定された前記パターン情報と前記差分情報の書き込み開始位置を示すアドレス情報とを関連付けて所定のメモリに記録する第1の記録ステップを備え、
データの読み出し処理時においては、
前記第1の記録ステップにおいて所定のメモリに記録された情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御ステップと、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元ステップと
を備えることを特徴とするメモリ制御方法。 - 請求項7に記載のメモリ制御方法であって、
前記特定ステップにおいては、算出した前記差分が同じである区間を示す同一区間情報を形成することができるものであり、
前記第1の記憶ステップにおいては、前記特定ステップにおいて形成される前記同一区間情報を、前記パターン情報と前記アドレス情報とに関連付けて記録するようにし、
前記第1の記録ステップにおいて前記所定のメモリに記録される前記同一区間情報に基づいて、差分情報が同じとなる区間においては、前記メモリ装置への読み出しのためのクロック信号を高速化する第2の周波数制御ステップと
を有することを特徴とするメモリ制御方法。 - 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードが用いられ、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれ毎に、前記パターン情報に基づいて処理対象のデータを順次に取り込み、その直前に取り込んだデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定し、
特定した前記パターン情報にしたがってデータを取り込むようにし、その直前に取り込んだデータとの差分情報を検出して、この差分情報を記録データとして記録した読み出し専用メモリ装置のためのメモリ制御方法であって、
特定された前記パターン情報と前記差分情報の書き込み位置を示すアドレス情報とを関連付けて所定のメモリに記録する第1の記録ステップと、
前記第1の記録ステップにおいて前記所定のメモリに記録した情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御ステップと、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元ステップと
を有することを特徴とするメモリ制御方法。 - 請求項9に記載のメモリ制御方法であって、
前記第1の記録ステップにおいては、前記パターン情報の特定時において得られる前記差分が同じである区間を示す同一区間情報を前記パターン情報と前記アドレス情報とに関連付けて記録するようにしており、
前記第1の記録ステップにおいて前記所定のメモリに記録された前記同一区間情報に基づいて、差分情報が同じとなる区間においては、前記メモリ装置への読み出しのためのクロック信号を高速化する周波数制御ステップ
を有することを特徴とするメモリ制御方法。 - 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードを備えたメモリ装置を制御するコンピュータを、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれに基づいて、バッファから前記1まとまりとなるデータを順次に読み出し、その直前に読み出したデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定する特定手段、
前記特定手段により特定された前記パターン情報に応じて前記バッファから読み出されるデータについて、その直前に読み出されたデータとの差分情報を検出する検出手段、
前記検出手段により検出される前記差分情報の供給を順次に受けて、その直前に供給された前記差分情報と同じか否かを判別する判別手段、
前記判別手段手段からの判別結果が、前記差分情報が同じであることを示している場合に、前記差分情報の前記メモリ装置への書き込みのためのクロック信号を高速化する第1の周波数制御手段
として機能させることを特徴とするメモリ制御プログラム。 - 請求項11に記載のメモリ制御プログラムであって、
データの書き込み処理時において、前記特定手段により特定された前記パターン情報と前記差分情報の書き込み開始位置を示すアドレス情報とを関連付けて所定のメモリに記録する第1の記録手段として機能させると共に、
データの読み出し処理時においては、
前記第1の記録手段により前記所定のメモリに記録された情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段
として機能させることを特徴とするメモリ制御プログラム。 - 請求項12に記載のメモリ制御プログラムであって、
前記特定手段は、算出した前記差分が同じである区間を示す同一区間情報を形成することができるものであり、
前記第1の記録手段は、前記特定ステップにおいて形成される前記同一区間情報も前記パターン情報と前記アドレス情報とに関連付けて記録するものであり、
前記第1の記録手段により前記所定のメモリに記録される前記同一区間情報に基づいて、差分情報が同じとなる区間においては、前記メモリ装置への読み出しのためのクロック信号を高速化する第2の周波数制御手段
として機能させることを特徴とするメモリ制御プログラム。 - 1つの開始アドレスの指定により、予め決められる個数分のデータを、1まとまりのデータとして連続して記録するバーストモードが用いられ、
前記1まとまりとなるデータの処理順序を示す複数のパターン情報のそれぞれ毎に、前記パターン情報に基づいて処理対象のデータを順次に取り込み、その直前に取り込んだデータとの差分を算出して、同じ差分が連続する場合が多い前記パターン情報を特定し、
この特定したパターン情報にしたがって取り込むようにしたデータと、その直前に取り込んだデータとの差分情報を検出して、この差分情報を記録データとして記録した読み出し専用メモリ装置を制御するコンピュータを、
特定された前記パターン情報と前記差分情報の書き込み位置を示すアドレス情報とを関連付けて所定のメモリに記録する第1の記録手段、
前記第1の記録手段により前記所定のメモリに記録した情報に基づいて、書き込み時と同じ態様で前記メモリ装置から前記差分情報を読み出すように制御する制御手段、
前記メモリ装置から読み出された差分情報から元の形式のデータを復元する復元手段
として機能させることを特徴とするメモリ制御プログラム。 - 請求項14に記載のメモリ制御方法であって、
前記第1の記録手段は、前記パターン情報の特定時において得られる前記差分が同じである区間を示す同一区間情報も前記パターン情報と前記アドレス情報とに関連付けて記録するものであり、
前記第1の記録手段により前記所定のメモリに記録された前記同一区間情報に基づいて、差分情報が同じとなる区間においては、前記メモリ装置への読み出しのためのクロック信号を高速化する周波数制御手段
として機能させることを特徴とするメモリ制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004007598A JP2005202628A (ja) | 2004-01-15 | 2004-01-15 | メモリ制御装置、メモリ制御方法およびメモリ制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004007598A JP2005202628A (ja) | 2004-01-15 | 2004-01-15 | メモリ制御装置、メモリ制御方法およびメモリ制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005202628A true JP2005202628A (ja) | 2005-07-28 |
Family
ID=34821181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004007598A Pending JP2005202628A (ja) | 2004-01-15 | 2004-01-15 | メモリ制御装置、メモリ制御方法およびメモリ制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005202628A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009044438A1 (ja) * | 2007-10-01 | 2009-04-09 | Fujitsu Microelectronics Limited | 半導体装置 |
US10565154B2 (en) | 2018-01-09 | 2020-02-18 | Samsung Electronics Co., Ltd. | Mobile device and interfacing method thereof that adjusts clock frequency based on access mode |
-
2004
- 2004-01-15 JP JP2004007598A patent/JP2005202628A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009044438A1 (ja) * | 2007-10-01 | 2009-04-09 | Fujitsu Microelectronics Limited | 半導体装置 |
US10565154B2 (en) | 2018-01-09 | 2020-02-18 | Samsung Electronics Co., Ltd. | Mobile device and interfacing method thereof that adjusts clock frequency based on access mode |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7111142B2 (en) | System for quickly transferring data | |
US20040218067A1 (en) | Digital multi-media input device with continuously store function and method for forming the same | |
CN108604211B (zh) | 用于片上系统中的多区块数据事务的系统和方法 | |
US8694707B2 (en) | Memory data transfer method and system | |
JP2008022373A (ja) | 改竄検知情報生成装置、撮像装置、改竄検知情報生成方法、プログラムおよび記憶媒体 | |
JP2009129448A (ja) | データ処理装置、データ処理方法およびデータ処理システム | |
US8688947B1 (en) | Aligned data access | |
JP2000066948A (ja) | 圧縮データ入出力機能付メモリlsi | |
JP2004159330A (ja) | ラスタスキャン順序の画像データとブロックスキャン順序の画像データとの間の変換のための画像処理装置及び方法 | |
JP2010061518A (ja) | データ保存装置及びデータ保存方法並びにプログラム | |
JP2005202628A (ja) | メモリ制御装置、メモリ制御方法およびメモリ制御プログラム | |
US20060236000A1 (en) | Method and system of split-streaming direct memory access | |
JP2004234280A (ja) | メモリ装置 | |
JP2001036491A (ja) | データストリームをフィルタリングする装置及び方法 | |
JP2002064714A (ja) | 画像処理装置及び方法及び記憶媒体 | |
JP2005202529A (ja) | メモリ制御装置、メモリ制御方法およびメモリ制御プログラム | |
JP2002077637A (ja) | 画像符号化装置及び画像符号化方法 | |
JP3402581B2 (ja) | データ復元装置 | |
JP2007221538A (ja) | シーンチェンジ判定装置、データ転送装置、シーンチェンジ判定方法、および、データ転送方法 | |
JP2006141001A (ja) | 電力消耗が減少した画像処理装置及び方法 | |
JP2007235851A (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
JPS6362083A (ja) | 射影デ−タ生成方式 | |
JP4841314B2 (ja) | データ転送回路 | |
JP2008227628A (ja) | 画像処理装置、画像処理方法、及び画像形成装置 | |
JPH07182514A (ja) | ヒストグラム構築回路 |