(57)【特許請求の範囲】
【請求項１】
下位階層に対して、前記下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータを記憶する記憶手段と、
データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、前記記憶手段より前記データを読み出すための読み出しアドレスを発生し、前記記憶手段より、前記アドレス情報により指定されるデータの取得に必要なデータを全て読み出させる読み出し制御手段と
を備えることを特徴とする記憶装置。
【請求項２】
Ｎ個の前記下位階層のデータを平均化し、１個の前記上位階層のデータとする演算を行う第１の演算手段をさらに備え、
前記記憶手段は、前記Ｎ個の下位階層のデータに対して、そのうちのＮ−１個の下位階層のデータと、前記第１の演算手段により演算されて得られた前記１個の上位階層のデータとを記憶する
ことを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記Ｎ個の下位階層のデータのうち、前記記憶手段に記憶されなかったものを、前記読み出し制御手段の制御により前記記憶手段より読み出された前記Ｎ−１個の下位階層のデータおよび前記１個の上位階層のデータから求めるための演算を行う第２の演算手段をさらに備え、
前記第１および第２の演算手段、前記記憶手段、並びに前記読み出し制御手段が１チップ上に形成されている
ことを特徴とする請求項２に記載の記憶装置。
【請求項４】
下位階層に対して、前記下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータを記憶部に記憶させ、
データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、前記記憶部より前記データを読み出すための読み出しアドレスを発生し、前記記憶部より、前記アドレス情報により指定されるデータの取得に必要なデータを全て読み出させる
ステップを含むことを特徴とする記憶読み出し制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置および記憶読み出し制御方法に関し、特に、例えば、画像データを階層符号化して記憶する場合に用いて好適な記憶装置および記憶読み出し制御方法に関する。
【０００２】
【従来の技術】
例えば、高解像度の画像データを、最下位階層または第１の階層の画像データとして、それより画素数の少ない第２の階層の画像データを形成し、さらに、それより画素数の少ない第３の階層の画像データを形成し、以下、同様にして、最上位階層までの画像データを形成する符号化手法がある。このような符号化は、階層符号化と呼ばれ、各階層の画像データは、その階層に対応した解像度（画素数）のモニタで表示される。従って、ユーザ側では、階層符号化された画像データのうち、自身が有するモニタの解像度に対応するものを選択することで、同一内容の画像を視聴することができる。
【０００３】
ところで、ある解像度の画像データを最下位階層（第１階層）の画像データとして、上位階層の画像データを、順次形成し、それらのすべてを、そのまま記憶や伝送などする場合には、最下位階層の画像データだけを記憶等する場合に比較して、上位階層の画像データの分だけ、記憶容量や伝送容量が余計に必要となる。
【０００４】
そこで、そのような記憶容量等の増加のない階層符号化方法を、本件出願人は先に提案している。
【０００５】
即ち、例えば、いま、下位階層における２×２画素（横×縦）の４画素の平均値を、上位階層の画素（画素値）とし、３階層の階層符号化を行うものとする。この場合、最下位階層の画像として、例えば、図２６（Ａ）に示すように、８×８画素を考えると、その左上の２×２画素の４画素ｈ００，ｈ０１，ｈ０２，ｈ０３の平均値ｍ０が演算され、これが、第２階層の左上の１画素とされる。同様にして、第下位階層の画像の右上の４画素ｈ１０，ｈ１１，ｈ１２，ｈ１３の平均値ｍ１、左下の４画素ｈ２０，ｈ２１，ｈ２２，ｈ２３の平均値ｍ２、右下の４画素ｈ３０，ｈ３１，ｈ３２，ｈ３３の平均値ｍ３が演算され、それぞれが、第２階層の右上、左下、右下の１画素とされる。さらに、第２階層の２×２画素の４画素ｍ０，ｍ１，ｍ２，ｍ３の平均値ｑが演算され、これが、第３階層、即ち、ここでは、最上位階層の画像の画素とされる。
【０００６】
以上の画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３，ｍ０乃至ｍ３，ｑを、そのまま全部記憶などさせたのでは、上述のように、画素ｍ０乃至ｍ３，ｑの分だけ余分に記憶容量等が必要となる。
【０００７】
そこで、図２６（Ｂ）に示すように、第３階層の画素ｑを、第２階層の画素ｍ０乃至ｍ３のうちの、例えば、右下の画素ｍ３の位置に配置する。これにより、第２の階層は、画素ｍ０乃至ｍ２およびｑで構成されることになる。
【０００８】
そして、図２６（Ｃ）に示すように、第２の階層の画素ｍ０を、それを求めるのに用いた第３の階層の画素ｈ００乃至ｈ０３のうちの、例えば、右下の画素ｈ０３の位置に配置する。第２の階層の残りの画素ｍ１，ｍ２，ｑも、同様に、第１階層の画素ｈ１３，ｈ２３，ｈ３３に代えて配置する。なお、画素ｑは、画素ｈ３０乃至ｈ３３から直接求められたものではないが、それらから直接求められたｍ３に代えて第２階層に配置されているものであるから、画素ｈ３３の位置に画素ｍ３を配置する代わりに、画素ｑを配置する。
【０００９】
以上のようにすることで、図２６（Ｃ）に示すように、全画素数は４×４の１６画素となり、図２６（Ａ）に示した最下位階層の画素だけの場合と変わらない。従って、この場合、記憶容量等の増加を防止することができる。
【００１０】
なお、画素ｑと代えられた画素ｍ３、画素ｍ０乃至ｍ３とそれぞれ代えられた画素ｈ０３，ｈ１３，ｈ２３，ｈ３３の復号は、次のようにして行うことができる。
【００１１】
即ち、ｑは、ｍ０乃至ｍ３の平均値であるから、式ｑ＝（ｍ０＋ｍ１＋ｍ２＋ｍ３）／４が成り立つ。従って、式ｍ３＝４×ｑ−（ｍ０＋ｍ１＋ｍ２）により、ｍ３を求めることができる。
【００１２】
また、ｍ０は、ｈ００乃至ｈ０３の平均値であるから、式ｍ０＝（ｈ００＋ｈ０１＋ｈ０２＋ｈ０３）／４が成り立つ。従って、式ｈ０３＝４×ｍ０−（ｈ００＋ｈ０１＋ｈ０２）により、ｈ０３を求めることができる。同様にして、ｈ１３，ｈ２３，ｈ３３も求めることができる。
【００１３】
【発明が解決しようとする課題】
ところで、以上のような階層符号化は、従来においては、その階層符号化結果を記憶する汎用的なメモリ（例えば、ＳＲＡＭ（Static Random Access Memory）やＤＲＡＭ（Dynamic RAM）など）に、平均値を計算するための加算器やシフタ（除算を行うため）、さらには、ラインディレイを行うための遅延回路などを、外付けした回路で行っていた。
【００１４】
即ち、例えば、図２６に示した場合において、第２階層の画素ｍ０を求めるためには、式ｍ０＝（ｈ００＋ｈ０１＋ｈ０２＋ｈ０３）／４を演算する必要があり、そのため、括弧内の加算を行うための加算器、およびその加算結果を４で除算、つまり、２ビット右シフトするシフタが必要となる。
【００１５】
さらに、第２階層の画素ｍ０を求めるためには、２ラインに亘る第１階層の画素ｈ００乃至ｈ０３が必要であり、また、メモリへの画像データの供給は、一般に、ラスタスキャン順で行われる。そして、メモリに対する画像データの読み書きも、ラスタスキャン順に、つまり、ライン単位で行われる。
【００１６】
従って、ｈ００で始まるラインを、遅延回路で１ライン分遅延し、ｈ０２で始まるラインが供給されるのを待って、ｍ０を計算して、ｈ００で始まるラインおよびｈ０２で始まるラインのメモリへの書き込みを行う必要がある。
【００１７】
以上のように、従来においては、メモリに外付けする各種の回路が必要であり、装置が大型化する課題があった。また、各種の回路を、メモリに外付けするために、装置全体の処理速度が制限される課題があった。
【００１８】
本発明は、このような状況に鑑みてなされたものであり、装置の小型化、処理速度の高速化を図ることができるようにするものである。
【００１９】
【課題を解決するための手段】
本発明の記憶装置は、下位階層に対して、下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータを記憶する記憶手段と、データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、記憶手段よりデータを読み出すための読み出しアドレスを発生し、記憶手段より、アドレス情報により指定されるデータの取得に必要なデータを全て読み出させる読み出し制御手段とを備えることを特徴とする。
Ｎ個の下位階層のデータを平均化し、１個の上位階層のデータとする演算を行う第１の演算手段をさらに備え、記憶手段は、Ｎ個の下位階層のデータに対して、そのうちのＮ−１個の下位階層のデータと、第１の演算手段により演算されて得られた１個の上位階層のデータとを記憶することができる。
前記Ｎ個の下位階層のデータのうち、記憶手段に記憶されなかったものを、読み出し制御手段の制御により記憶手段より読み出されたＮ−１個の下位階層のデータおよび１個の上位階層のデータから求めるための演算を行う第２の演算手段をさらに備え、第１および第２の演算手段、記憶手段、並びに読み出し制御手段が１チップ上に形成されているようにすることができる。
本発明の記憶読み出し制御方法は、下位階層に対して、下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータを記憶部に記憶させ、データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、記憶部よりデータを読み出すための読み出しアドレスを発生し、記憶部より、アドレス情報により指定されるデータの取得に必要なデータを全て読み出させるステップを含むことを特徴とする。
【００２０】
上記構成の記憶装置および記憶読み出し制御方法においては、下位階層に対して、下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータが記憶され、データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、記憶されたデータを読み出すための読み出しアドレスが発生され、アドレス情報により指定されるデータの取得に必要なデータが全て読み出される。
【００２１】
【発明の実施の形態】
以下に、本発明の実施の形態を説明するが、その前に、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態（但し、一例）を付加して、本発明の特徴を記述すると、次のようになる。
【００２２】
即ち、請求項１に記載の記憶装置は、下位階層に対して、下位階層の複数のデータの平均値をデータとする上位階層を形成する階層符号化が施された所定のデータの、全階層のデータを記憶する記憶手段（例えば、図１に示すメモリ１や、図６に示すメモリセルアレイ２３など）と、データが属する階層を表すフラグと、最上位階層のデータに割り当てられた絶対的なアドレスと、データが属する階層におけるそのデータの相対的なアドレスとからなるアドレス情報に基づいて、記憶手段よりデータを読み出すための読み出しアドレスを発生し、記憶手段より、アドレス情報により指定されるデータの取得に必要なデータを全て読み出させる読み出し制御手段（例えば、図６に示すリードアドレスコントローラ２８など）とを備えることを特徴とする。
【００２３】
請求項２に記載の記憶装置は、Ｎ個の下位階層のデータを平均化し、１個の上位階層のデータとする演算を行う第１の演算手段（例えば、図１に示す演算器２乃至５や、図６に示すライトエレメント２１など）をさらに備え、記憶手段は、Ｎ個の下位階層のデータに対して、そのうちのＮ−１個の下位階層のデータと、第１の演算手段により演算されて得られた１個の上位階層のデータとを記憶することを特徴とする。
請求項３に記載の記憶装置は、前記Ｎ個の下位階層のデータのうち、記憶手段に記憶されなかったものを、読み出し制御手段の制御により記憶手段より読み出されたＮ−１個の下位階層のデータおよび１個の上位階層のデータから求めるための演算を行う第２の演算手段（例えば、図２に示す演算器１１乃至１４や、図６に示すリードエレメント２６など）をさらに備え、第１および第２の演算手段、記憶手段、並びに読み出し制御手段が１チップ上に形成されていることを特徴とする。
【００２４】
なお、勿論この記載は、各手段を上記したものに限定することを意味するものではない。
【００２５】
図１および図２は、本発明を適用した記憶装置のアーキテクチャの概要を示している。
【００２６】
この記憶装置においては、例えば、前述の図２６における場合と同様に、下位階層における２×２画素の４画素の平均値を、上位階層の画素（画素値）として、３階層の階層符号化が行われるようになされている。なお、ここでは、最下位階層の画像を構成する１ライン目の最初の４画素（画像データ）をｈ００，ｈ０１，ｈ１０，ｈ１１と、２ライン目の最初の４画素をｈ０２，ｈ０３，ｈ１２，ｈ１３と、３ライン目の最初の４画素をｈ２０，ｈ２１，ｈ３０，ｈ３１と、４ライン目の最初の４画素をｈ２２，ｈ２３，ｈ３２，ｈ３３と、それぞれ表す。
【００２７】
この場合、これらの４×４の１６画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３が、最上位階層（ここでは、第３階層）の画素を得るための、最下位階層（第１階層）を構成する画素の最小単位であり、以下、適宜、この最小単位を、ブロックという。
【００２８】
メモリ１には、最下位階層の画像を構成する画素（画素値）がラスタスキャン順に供給される。そして、１ライン目を構成する画素ｈ００，ｈ０１，ｈ１０，ｈ１１，・・・それぞれは、図１に示すように、メモリ１を構成する、対応するセル（メモリセル）に記憶されていく。
【００２９】
その後、２ライン目を構成する最初の画素ｈ０２は、やはり、対応するセルに記憶される。そして、２ライン目を構成する２番目（２列目）の画素ｈ０３が供給されると、既に、メモリ１に記憶されている画素ｈ００乃至ｈ０２が読み出され、演算器２に供給される。さらに、演算器２には、画素ｈ０３も供給され、そこでは、それらの画素の加算値が求められる。この加算値は、演算器３に供給され、そこで、右に２ビットシフトされることにより、４で除算され、これにより、第２階層の画素である、画素ｈ００乃至ｈ０３の平均値ｍ０が求められる。この画素ｍ０は、メモリ１の、画素ｈ０３が記憶されるはずであったセルに記憶される。
【００３０】
画素ｈ０３の次に供給される画素ｈ１２は、そのまま、対応するセルに記憶される。そして、次の画素ｈ１３が供給されると、既に、メモリ１に記憶されている画素ｈ１０乃至ｈ１２が読み出され、演算器２に供給される。さらに、演算器２には、画素ｈ１３も供給され、そこでは、それらの画素の加算値が求められる。この加算値は、演算器３に供給され、そこで、右に２ビットシフトされることにより、４で除算され、これにより、第２階層の画素である、画素ｈ１０乃至ｈ１３の平均値ｍ１が求められる。この画素ｍ１は、メモリ１の、画素ｈ１３が記憶されるはずであったセルに記憶される。
【００３１】
以下、同様にして、２ライン目の構成する画素が記憶されるとともに、第２階層の画素が求められて記憶されていく。
【００３２】
そして、３ライン目を構成する画素ｈ２０，ｈ２１，ｈ３０，ｈ３１，・・・それぞれは、１ライン目における場合と同様に、対応するセルに順次記憶されていく。
【００３３】
その後、４ライン目を構成する最初の画素ｈ２２は、やはり、対応するセルに記憶される。そして、４ライン目を構成する２番目の画素ｈ２３が供給されると、既に、メモリ１に記憶されている画素ｈ２０乃至ｈ２２が読み出され、演算器２に供給される。さらに、演算器２には、画素ｈ２３も供給され、演算器２および３によって、上述した場合と同様にして、第２階層の画素である、画素ｈ２０乃至ｈ２３の平均値ｍ２が求められる。この画素ｍ２は、メモリ１の、画素ｈ２３が記憶されるはずであったセルに記憶される。
【００３４】
画素ｈ２３の次に供給される画素ｈ３２は、そのまま、対応するセルに記憶される。そして、次の画素ｈ３３が供給されると、既に、メモリ１に記憶されている画素ｈ１３乃至ｈ３２が読み出され、上述したように、第２階層の画素である、画素ｈ３０乃至ｈ３３の平均値ｍ３が求められる。
【００３５】
この画素ｍ３は、既にメモリ１に記憶されている第２階層の画素ｍ０乃至ｍ２とともに、演算器４に供給される。演算器４では、それらの画素の加算値が求められ、演算器５に供給される。演算器５では、演算器４からの加算値が、右に２ビットシフトされることにより、４で除算され、これにより、第３階層の画素である、画素ｍ０乃至ｍ３の平均値ｑが求められる。この画素ｑは、メモリ１の、画素ｈ３３が記憶されるはずであったセルに記憶される。
【００３６】
以下、同様にして、４ライン目の構成する画素が記憶されるとともに、第２階層および第３階層の画素が求められて記憶されていく。
【００３７】
そして、５ライン目以降は、１乃至４ライン目における場合と同様の処理が繰り返され、これにより、１フレームの画像を階層符号化したものがメモリ１に記憶される。
【００３８】
ここで、ブロックに対する処理は同一であるため、以下では、基本的に、画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３で構成されるブロックについてのみ説明する。
【００３９】
以上のように階層符号化された画像の、最上位階層の画素ｑを読み出す場合においては、メモリ１に記憶された画素ｑが、そのまま読み出される。
【００４０】
また、第２階層の画素ｍ０乃至ｍ３を読み出す場合においては、そのうちの画素ｍ０乃至ｍ２については、メモリ１に記憶されたものが、そのまま読み出される。そして、画素ｍ３については、図２に示すように、メモリ１に記憶されている画素ｑが演算器１１に供給され、そこで、２ビット左シフトされることにより、４倍にされ、演算器１２に供給される。演算器１２には、演算器１１の出力の他、メモリ１に記憶されている画素ｍ０乃至ｍ２も供給されるようになされており、そこでは、演算器１１の出力から、画素ｍ０乃至ｍ２が減算されることにより、画素ｍ３が求められる。即ち、画素ｑは、画素ｍ０乃至ｍ１の平均値であるから、式ｍ３＝４×ｑ−（ｍ０＋ｍ１＋ｍ２）により、画素ｍ３が求められる。
【００４１】
さらに、第１階層の画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３を読み出す場合においては、そのうちの画素ｈ００乃至ｈ０２，ｈ１０乃至ｈ１２，ｈ２０乃至ｈ２２，ｈ３０乃至ｈ３２については、メモリ１に記憶されたものが、そのまま読み出される。また、画素ｈ０３については、メモリ１に記憶されている画素ｍ０が演算器１３に供給され、そこで、２ビット左シフトされることにより、４倍にされ、演算器１４に供給される。演算器１４には、演算器１３の出力の他、メモリ１に記憶されている画素ｈ００乃至ｈ０２も供給されるようになされており、そこでは、演算器１３の出力から、画素ｈ００乃至ｈ０２が減算されることにより、画素ｈ０３が求められる。即ち、画素ｍ０は、画素ｈ００乃至ｈ０１の平均値であるから、式ｈ０３＝４×ｍ０−（ｈ００＋ｈ０１＋ｈ０２）により、画素ｈ０３が求められる。
【００４２】
画素ｈ１３またはｈ２３も、同様にして、式ｈ１３＝４×ｍ１−（ｈ１０＋ｈ１１＋ｈ１２）またはｈ２３＝４×ｍ２−（ｈ２０＋ｈ２１＋ｈ２２）にしたがった演算が行われることにより求められる。
【００４３】
そして、画素ｈ３３については、まず、上述したようにして、演算器１１および１２において、画素ｍ３が求められる。さらに、演算器１３および１４において、式ｈ３３＝４×ｍ３−（ｈ３０＋ｈ３１＋ｈ３２）にしたがった演算が行われることにより、画素ｈ３３が求められる。
【００４４】
図１および図２におけるメモリ１、並びに演算器２乃至５および１１乃至１４は、１チップの、例えばＣＭＯＳ（Complementary Metal Oxide Semiconductor）上に形成されており、従って、装置の小型化、処理速度の高速化を図ることができる。
【００４５】
なお、図１においては、第１階層の画素から第２階層の画素を求めるための演算を行う演算器２および３と、第２階層の画素から第３階層の画素を求めるための演算器４および５とを、別々に設けるようにしたが、これら（演算器２と４、および演算器３と５）は、兼用にすることが可能である。図２における演算器１１乃至１４についても同様である。
【００４６】
次に、メモリ１に対する画像データ（画素）の読み書き手順について説明する。なお、ここでは、説明を簡単にするために、上位階層の画像の作成を行わずに、最下位階層の画素を、そのままメモリ１に記憶させるものとする。
【００４７】
メモリ１には、最下位階層の画像を構成する画素（画素値）がラスタスキャン順に供給される。そして、その読み書きは、図３に示すように、ここでは、例えば、４×４画素のブロック単位で行われる。
【００４８】
但し、図３を拡大した図４に示すように、１ライン目を構成する画素ｈ００，ｈ０１，ｈ１０，ｈ１１，・・・が供給されるタイミングにおいては、その最初の４画素ｈ００，ｈ０１，ｈ１０，ｈ１１とブロックを構成する２ライン目の最初の４画素ｈ０２，ｈ０３，ｈ１２，ｈ１３、３ライン目の最初の４画素ｈ２０，ｈ２１，ｈ３０，ｈ３１、および４ライン目の最初の４画素ｈ２２，ｈ２３，ｈ３２，ｈ３３の合計１２画素は、まだ供給されていない。即ち、メモリ１には、１ライン目を構成する画素ｈ００，ｈ０１，ｈ１０，ｈ１１が供給されたタイミングでは、その４画素とともにブロックを構成する残りの１２画素が供給されていない。そこで、メモリ１では、その残りの１２画素については、前のフレームの画素（メモリ１に記憶された、前のフレームの画素）を用いることにより、４×４画素のブロックが構成される。なお、１フレーム目については、メモリ１には、まだ、前フレームの画素が記憶されていないから、残りの１２画素については、ダミーのデータとしての、例えば所定の固定値が配置され、４×４画素のブロックが構成される。
【００４９】
そして、２ライン目の最初の４画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が供給されるタイミングにおいて、その４画素が含まれるべきブロック、即ち、いまの場合、画素ｈ００，ｈ０１，ｈ１０，ｈ１１と１２個の前フレームの画素とでなるブロックが、メモリ１から読み出される。そして、そのブロックの２ライン目に、画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が配置されたブロック、即ち、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が、２ライン目に画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が、それぞれ配置されたブロックが構成され、メモリ１に記憶される。
【００５０】
さらに、３ライン目の最初の４画素ｈ２０，ｈ２１，ｈ３０，ｈ３１が供給されるタイミングにおいて、２ライン目における場合と同様の処理が行われることにより、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が、２ライン目に画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が、３ライン目に画素ｈ２０，ｈ２１，ｈ３０，ｈ３１が、それぞれ配置されたブロックが構成され、メモリ１に記憶される。
【００５１】
そして、４ライン目の最初の４画素ｈ２２，ｈ２３，ｈ３２，ｈ３３が供給されるタイミングにおいても、やはり、２ライン目における場合と同様の処理が行われる。これにより、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が、２ライン目に画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が、３ライン目に画素ｈ２０，ｈ２１，ｈ３０，ｈ３１が、４ライン目に画素ｈ２２，ｈ２３，ｈ３２，ｈ３３が、それぞれ配置されたブロックが構成され、メモリ１に記憶される。
【００５２】
従って、１ブロックの書き込みは、４ライン分の画素が供給されて完了する。また、最下位階層の画像の水平方向の画素数を、例えば、４×Ｎとすると（Ｎは正の整数）、４ライン分の画素が供給されることにより、Ｎ個のブロックの書き込みが完了する。
【００５３】
次に、メモリ１に対する画像データの読み書きは、上述したようにブロック単位で行われることから、メモリ１においては、ブロックごとに、絶対的なアドレス（絶対アドレス）が割り当てられている。
【００５４】
本実施の形態においては、ブロックには、最下位階層の画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３、第２階層の画素ｍ０乃至ｍ３、および最上位階層の画素ｑが、実質的に含まれる（画素ｈ０３，ｈ１３，ｈ２３，ｈ３３，ｍ３は、実際には、ブロックを構成していないが、上述した演算により求めることができるので、実質的に含まれていると考えることができる）から、絶対アドレスによりブロックを特定した後は、そのブロックにおける、どの階層の画素にアクセスしようとしているのかが問題となる。
【００５５】
さらに、階層を特定した後は、その階層における、どの画素にアクセスしようとしているのかが問題となる。
【００５６】
そこで、本実施の形態では、メモリ１にアクセスするためのアドレスとして、図５に示すフォーマットのものが用いられるようになされている。
【００５７】
即ち、ここでは、アドレスは、その先頭から、例えば、２ビットのレイヤフラグ、ｎビットの絶対アドレス、２ビットの第２階層相対アドレス、２ビットの第１階層相対アドレスが順次配置されて構成されている。
【００５８】
レイヤフラグには、第１乃至第３階層のうちの、アクセスしようとする階層に対応する値がセットされる。例えば、第１乃至第３階層には、００Ｂ，０１Ｂ，１０Ｂが、それぞれ割り当てられている（Ｂは、その前の数字が２進数であることを表す）。
【００５９】
絶対アドレスには、アクセスしようとするブロックの絶対的なアドレスが配置される。なお、ブロックに含まれる最上位階層（ここでは、第３階層）の画素は１個であるから、絶対アドレスによれば、最上位階層の画素を特定することができ、従って、絶対アドレスは、最上位階層の画素に割り当てられているということもできる。また、絶対アドレスのビット数であるｎについては、２nが、１フレームを構成するブロック数以下である必要がある。
【００６０】
第２階層相対アドレスには、第２階層の画素にアクセスする場合に、その第２階層の画素に割り当てられた相対的なアドレスがセットされる。ここでは、例えば、第２階層の画素ｍ０乃至ｍ３に、００Ｂ乃至１１Ｂがそれぞれ割り当てられている。
【００６１】
第１階層相対アドレスには、第１階層の画素にアクセスする場合に、その第１階層の画素に割り当てられた相対的なアドレスがセットされる。なお、ここでは、第１階層の画素は、ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３の１６画素あるが、ｈ００乃至ｈ０３と第２階層の画素ｍ０、ｈ１０乃至ｈ１３と第２階層の画素ｍ１、ｈ２０乃至ｈ２３と第２階層の画素ｍ２、ｈ３０乃至ｈ３３と第２階層の画素ｍ３は、それぞれ対応しているから、ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３のうちのいずれのグループの画素にアクセスするかは、第２階層相対アドレスによって特定することができる。そこで、第１階層相対アドレスでは、そのようなグループに含まれる第１階層の４画素のうちの、アクセスしようとしているものに対応する２ビットの値がセットされるようになされている。なお、ここでは、例えば、ｈ００乃至ｈ０３のグループに注目した場合、左上の画素ｈ００、右上の画素ｈ０１、左下の画素ｈ０２、右下の画素ｈ０３に、それぞれ００Ｂ乃至１１Ｂが割り当てられている。他のグループについても同様である。
【００６２】
従って、例えば、最上位階層の画素ｑにアクセスする場合には、レイヤフラグは１０Ｂとされ、絶対アドレスは、その画素ｑに割り当てられた絶対的なアドレスとされる。なお、この場合、第２階層相対アドレスおよび第１階層相対アドレスは必要ないので無視される。また、この場合、アドレスは、例えば、レイヤフラグと絶対アドレスだけで構成しても良い。
【００６３】
また、例えば、第２階層の画素ｍ０にアクセスする場合には、レイヤフラグは０１Ｂとされ、絶対アドレスは、画素ｑに割り当てられた絶対的なアドレスとされる。さらに、第２階層相対アドレスは、画素ｍ０の位置に割り当てられた００Ｂとされる。なお、この場合、第１階層相対アドレスは必要ないので無視される（あるいは使用されない）。
【００６４】
さらに、例えば、第２階層の画素ｍ３にアクセスする場合には、レイヤフラグは０１Ｂとされ、絶対アドレスは、画素ｑに割り当てられた絶対的なアドレスとされる。さらに、第２階層相対アドレスは、画素ｍ３の位置に割り当てられた１１Ｂとされる。なお、この場合も、第１階層相対アドレスは必要ないので無視されるか、あるいは使用されない。
【００６５】
ここで、このようなアドレスが、読み出し時に指定された場合、メモリ１からは、最上位階層の画素ｑおよび第２階層の画素ｍ０乃至ｍ２が読み出され、上述したようにして、第２階層の画素ｍ３が求められる。従って、第２階層相対アドレスが１１Ｂの場合には、最上位階層の画素ｑおよび第２階層の画素ｍ０乃至ｍ２が記憶された４個のセルにアクセスがなされる。
【００６６】
そして、例えば、第１階層の画素ｈ００にアクセスする場合には、レイヤフラグは００Ｂとされ、絶対アドレスは、画素ｑに割り当てられた絶対的なアドレスとされる。さらに、第２階層相対アドレスは、画素ｈ００に対応する第２階層の画素ｍ０の位置に割り当てられた００Ｂとされ、第１階層相対アドレスは、画素ｈ００の位置に割り当てられた００Ｂとされる。
【００６７】
また、例えば、第１階層の画素ｈ０３にアクセスする場合には、レイヤフラグは００Ｂとされ、絶対アドレスは、画素ｑに割り当てられた絶対的なアドレスとされる。さらに、第２階層相対アドレスは、画素ｈ０３に対応する第２階層の画素ｍ０の位置に割り当てられた００Ｂとされ、第１階層相対アドレスは、画素ｈ０３の位置に割り当てられた１１Ｂとされる。
【００６８】
ここで、このようなアドレスが、読み出し時に指定された場合、メモリ１からは、第２階層の画素ｍ０および第１階層の画素ｈ００乃至０２が読み出され、上述したようにして、第１階層の画素ｈ０３が求められる。従って、第１階層相対アドレスが１１Ｂとされた場合には、第２階層相対アドレスで指定されている第２階層の画素ｍ０と、その画素ｍ０を作成するのに用いた第１階層の画素ｈ００乃至ｈ０２が記憶された４個のセルにアクセスがなされる。
【００６９】
さらに、例えば、第１階層の画素ｈ３３にアクセスする場合には、レイヤフラグは００Ｂとされ、絶対アドレスは、画素ｑに割り当てられた絶対的なアドレスとされる。さらに、第２階層相対アドレスは、画素ｈ３３に対応する第２階層の画素ｍ３の位置に割り当てられた１１Ｂとされ、第１階層相対アドレスは、画素ｈ３３の位置に割り当てられた１１Ｂとされる。
【００７０】
ここで、このようなアドレスが、読み出し時に指定された場合、メモリ１からは、まず、最上位階層の画素ｑおよび第２階層の画素ｍ０乃至ｍ２が読み出され、上述したようにして、第２階層の画素ｍ３が求められる。さらに、メモリ１からは、第１階層の画素ｈ３０乃至３２が読み出され、先に求められた第２階層の画素ｍ３も用いて、上述したようにして、第１階層の画素ｈ３３が求められる。
【００７１】
なお、各階層の画素を読み出す場合には、上述したようなアドレスを指定する必要があるが、書き込み時は、上述したことから、例えば、レイヤフラグを、最下位階層に対応する００Ｂとするとともに、絶対アドレスを、画素ｑに割り当てられた絶対的なアドレスとし、第１階層相対アドレスを１１Ｂとすれば、第２階層相対アドレスを００Ｂ乃至１１Ｂに変えることで、画素ｑに対応するブロックを構成する１６のセルすべてにアクセスすることができるので、そのようなアドレス指定が行われるようになされている。
【００７２】
次に、図６は、図１および図２に示した記憶装置のより詳細な構成例を示している。
【００７３】
ライトエレメント２１には、階層符号化すべき画像を構成する画素（の画素値）が、例えば、ラスタスキャン順に順次供給されるとともに、リードバッファ２４から、既にメモリセルアレイ２３に記憶された画素が供給されるようになされている。ライトエレメント２１は、必要に応じて、そこに入力される画素を、下位階層の画素として、その上位階層の画素を求めるための演算を行い、その演算結果を、ライトバッファ２２に供給するようになされている。
【００７４】
ライトバッファ２２は、例えば、ブロックを構成する画素数と同一のセル（メモリセル）で構成されており、ライトエレメント２１からの画素を、ブロック単位でラッチし、メモリセルアレイ２３に供給するようになされている。
【００７５】
メモリセルアレイ２３は、例えば、少なくとも１フレーム分の画素を記憶することのできるセルが格子状に配置されて構成されており、デコーダ２９から供給されるアドレス（書き込みアドレス）に対応するセルに、ライトバッファ２２からの画素を記憶するようになされている。また、メモリセルアレイ２３は、デコーダ３０から供給されるアドレス（読み出しアドレス）に対応するセルに記憶された画素を読み出し、リードバッファ２４または２５に供給するようにもなされている。
【００７６】
リードバッファ２４および２５は、例えばブロックを構成する画素数と同一のセルで構成されており、メモリセルアレイ２３からの画素を、ブロック単位でラッチするようになされている。リードバッファ２４でラッチされた画素は、ライトエレメント２１に、リードバッファ２５でラッチされた画素は、リードエレメント２６に、それぞれ供給されるようになされている。
【００７７】
リードエレメント２６は、必要に応じて、リードバッファ２５からの画素を用いて、上述したような演算を行うことにより、メモリセルアレイ２３に記憶されない、例えば、第１階層の画素ｈ０３，ｈ１３，ｈ２３，ｈ３３や、第２階層の画素ｍ３を求めるようになされている。なお、リードエレメント２６には、リードアドレスコントローラ２８から制御信号が供給されるようになされており、リードエレメント２６は、この制御信号にしたがって演算を行うようになされている。
【００７８】
ライトアドレスコントローラ２７は、ブロック単位で画素をメモリセルアレイ２３に書き込むための書き込みアドレス（ライトアドレス）を発生し、デコーダ２９に供給するようになされている。なお、ライトアドレスコントローラ２７には、フレームの先頭の画素ｈ００が供給されるタイミングで、ライトスタートタイミングパルスが供給されるようになされており、ライトアドレスコントローラ２７は、そのタイミングを基準に、書き込みアドレスの出力を開始するようになされている。
【００７９】
リードアドレスコントローラ２８は、ブロック単位で画素をメモリセルアレイ２３から読み出すための読み出しアドレス（リードアドレス）を発生し、デコーダ３０に供給するようになされている。なお、リードアドレスコントローラ２８には、読み出しの開始を知らせるリードスタートタイミングパルスが供給されるようになされており、リードアドレスコントローラ２８は、そのタイミングを基準に、読み出しアドレスの出力を開始するようになされている。また、リードアドレスコントローラ２８には、図５で説明したようなアドレスを構成するためのレイヤフラグ、絶対アドレス、第２階層相対アドレス、および第１階層相対アドレスが供給されるようになされており、リードアドレスコントローラ２８は、これらに基づいて、読み出しアドレスを構成するようになされている。
【００８０】
デコーダ２９または３０は、ライトアドレスコントローラ２７またはリードアドレスコントローラ２８からの書き込みアドレスまたは読み出しアドレスを、それぞれデコードして、メモリセルアレイ２３に供給するようになされている。
【００８１】
なお、以上のブロックが１チップ上に形成されている。また、ライトエレメント２１が、図１の演算器２乃至５に、リードエレメント２６が、図２の演算器１１乃至１４に、メモリセルアレイ２３が、図１および図２のメモリ１に、それぞれ相当する。
【００８２】
次に、その書き込み時の動作について説明するが、その前に、その前段階の準備として、ライトエレメント２１およびライトバッファ２２の構成についてさらに説明する。
【００８３】
図７は、図６のライトエレメント２１の構成例を示している。
【００８４】
ラスタスキャン順に供給される画素は、ラッチ回路３１および演算器３６に供給されるようになされている。ラッチ回路３１は、そこに供給される画素をラッチし、ラッチ回路３２および演算器３５に供給するようになされている。ラッチ回路３２は、ラッチ回路３１からの画素をラッチし、ラッチ回路３３および演算器４４に供給するようになされている。ラッチ回路３３は、ラッチ回路３２からの画素をラッチし、演算器４３に供給するようになされている。
【００８５】
演算器３４には、リードバッファ２４から読み出された画素のうちの２つが、必要に応じて供給されるようになされている。演算器３４は、そこに供給される２つの画素を加算し、その加算結果を、演算器３５に供給するようになされている。演算器３５は、演算器３４の出力と、ラッチ回路３１の出力とを加算し、演算器３６に供給するようになされている。演算器３６は、そこにラスタスキャン順に供給される画素と、演算器３５の出力とを加算し、演算器３７に供給するようになされている。演算器３７は、演算器３６の出力を右に２ビットシフトすることにより、４で除算し、その除算結果を演算器４０に供給するようになされている。
【００８６】
演算器３８には、リードバッファ２４から読み出された画素のうちの２つが、必要に応じて供給されるようになされている。演算器３８は、そこに供給される２つの画素を加算し、その加算結果を、演算器３９に供給するようになされている。演算器３９には、演算器３８の出力の他、演算器４５の出力が、必要に応じて供給されるようになされており、演算器３９は、それらを加算して、演算器４０に供給するようになされている。演算器４０は、演算器３７の出力と、演算器３９の出力とを加算し、演算器４１に出力するようになされている。演算器４１は、演算器３７と同様に、演算器４０の出力を右に２ビットシフトすることにより、４で除算し、その除算結果を出力するようになされている。
【００８７】
演算器４２には、リードバッファ２４から読み出された画素のうちの２つが、必要に応じて供給されるようになされており、演算器４２は、それらを加算し、演算器４３に供給するようになされている。演算器４３は、演算器４２の出力と、ラッチ回路３３の出力とを加算し、演算器４４に供給するようになされている。演算器４４は、演算器４３の出力と、ラッチ回路３２の出力とを加算し、演算器４５に供給するようになされている。演算器４５は、演算器３７と同様に、演算器４４の出力を右に２ビットシフトすることにより、４で除算し、その除算結果を出力するようになされている。
【００８８】
次に、図８は、図６のライトバッファ２２の構成例を示している。
【００８９】
ライトバッファ２２は、同図に示すように、ブロック単位の画素を記憶する１６個のセル５１乃至６６と、そのセル５１乃至６６に画素をラッチさせるためのクロックを与えるＮＡＮＤゲート７１乃至７４とで構成されている。
【００９０】
セル５１乃至６６は、４×４の格子状に配置されており、各ラインを構成するセル５１乃至５４，５５乃至５８，５９乃至６２，６３乃至６６それぞれには、ＮＡＮＤゲート７１乃至７４それぞれからクロックが供給されるようになされている。そして、セル５１乃至６６は、このクロックに対応して、ライトエレメント２１から供給される画素をラッチし、メモリセルアレイ２３に供給するようになされている。ここで、ライトバッファ２２が、このように４×４の格子状に配置された１６のセル５１乃至６６を有することで、メモリセルアレイ２３には、その単位、即ち、ブロック単位で、画素の書き込みが行われるようになされている。
【００９１】
ＮＡＮＤゲート７１乃至７４の一端には、クロックｘｅｎＢが供給されるようになされており、その他端には、セル５１乃至５４，５５乃至５８，５９乃至６２，６３乃至６６に供給するクロックｘｅｎＢをマスクするためのマスク信号ｘｅｎ０乃至ｘｅｎ３がそれぞれ供給されるようになされている。即ち、マスク信号ｘｅｎ０乃至ｘｅｎ３は、セル５１乃至５４，５５乃至５８，５９乃至６２，６３乃至６６それぞれに、ライトエレメント２１からの画素をラッチさせるタイミングにおいて、Ｈレベルとなり、他のタイミングにおいてはＬレベルとなるようになされている。これにより、セル５１乃至５４，５５乃至５８，５９乃至６２，６３乃至６６それぞれに、ライトエレメント２１からの画素をラッチさせるタイミングでは、クロックｘｅｎＢが、セル５１乃至５４，５５乃至５８，５９乃至６２，６３乃至６６それぞれに供給され、それ以外のタイミングでは、クロックｘｅｎＢがマスクされるようになされている。
【００９２】
なお、図７のライトエレメント２１のブロック図に付したアルファベットａ乃至ｆの部分は、図８のライトバッファ２２のブロック図に付した同一のアルファベットの部分に接続されている。従って、例えば、ライトバッファ２２における１列目のセル５１，５５，５９，６３では、ライトエレメント２１におけるラッチ回路３３の出力がラッチされる。また、例えば、ライトバッファ２２における右下のセル６６では、ライトエレメント２１における演算器４１の出力がラッチされる。さらに、例えば、ライトバッファ２２における１ライン目のセル５１乃至５４では、ラッチ回路３３，３２，３１の出力、またはラッチ回路３１への入力がそれぞれラッチされる。
【００９３】
次に、図６の記憶装置の書き込み時の動作について説明する。
【００９４】
最下位階層の１ライン目の画素ｈ００，ｈ０１，ｈ１０，ｈ１１が供給されると、それらの画素は、ライトエレメント２１のラッチ回路３１乃至３３で順次ラッチされていく。そして、画素ｈ１１が供給されるタイミング、即ち、画素ｈ１１が、ラッチ回路３１に供給されるタイミングでは、ラッチ回路３１乃至３３において、画素ｈ１０，ｈ０１，ｈ００がそれぞれラッチされており、このタイミングで、ライトバッファ２２の１ライン目を構成するセル５１乃至５４はイネーブル（enable）状態（ＮＡＮＤゲート７１からクロックｘｅｎＢが出力され、データをラッチすることが可能な状態）とされる。
【００９５】
その結果、セル５１乃至５４では、画素ｈ００，ｈ０１，ｈ１０，ｈ１１がそれぞれラッチされる。
【００９６】
そして、この場合、画素ｈ００，ｈ０１，ｈ１０，ｈ１１とともにブロックを構成する２ライン目の最初の４画素ｈ０２，ｈ０３，ｈ１２，ｈ１３、３ライン目の最初の４画素ｈ２０，ｈ２１，ｈ３０，ｈ３１、および４ライン目の最初の４画素ｈ２２，ｈ２３，ｈ３２，ｈ３３の合計１２画素は、まだ供給されていないため、ライトバッファ２２の２乃至４ライン目を構成するセル５５乃至５８，５９乃至６２，６３乃至６６には、前フレームの画素Ｃが書き込まれる。
【００９７】
以上のようにして、セル５１乃至６６に記憶された４×４のデータは、メモリセルアレイ２３に供給され、対応する絶対アドレス（ここでは、画素ｑに割り当てられた絶対アドレス）が割り当てられた４×４のセルに記憶される。
【００９８】
そして、最下位階層の２ライン目の画素ｈ０２，ｈ０３，ｈ１２，ｈ１３が供給されると、それらの画素は、やはり、ライトエレメント２１のラッチ回路３１乃至３３で順次ラッチされていく。そして、画素ｈ１３が供給されるタイミング、即ち、画素ｈ１３が、ラッチ回路３１に供給されるタイミングでは、図９に示すように、ラッチ回路３１乃至３３では、画素ｈ１２，ｈ０３，ｈ０２がそれぞれラッチされる。
【００９９】
また、このとき、メモリセルアレイ２３からは、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が記憶され、２乃至４ライン目に前フレームの画素Ｃが記憶されたブロックが読み出され、リードバッファ２４に記憶される。そして、このブロックが、図９に示すように、リードバッファ２４からライトエレメント２１に供給される。
【０１００】
ライトエレメント２１において、演算器４２には、リードバッファ２４からの画素ｈ００およびｈ０１が供給される。演算器４２では、画素ｈ００とｈ０１とが加算され、その加算値（ｈ００＋ｈ０１）が演算器４３に出力される。演算器４３では、演算器４２からの加算値と、ラッチ回路３３の出力である画素ｈ０２とが加算され、その加算値（ｈ００＋ｈ０１＋ｈ０２）が演算器４４に出力される。演算器４４では、演算器４３からの加算値と、ラッチ回路３２の出力である画素ｈ０３とが加算され、その加算値（ｈ００＋ｈ０１＋ｈ０２＋ｈ０３）が演算器４５に出力される。演算器４５では、演算器４４からの加算値が４で除算され、これにより、第２階層の画素ｍ０（＝（ｈ００＋ｈ０１＋ｈ０２＋ｈ０３）／４）が求められる。
【０１０１】
また、演算器３４には、リードバッファ２４からの画素ｈ１０およびｈ１１が供給される。演算器３４では、画素ｈ１０とｈ１１とが加算され、その加算値（ｈ１０＋ｈ１１）が演算器３５に出力される。演算器３５では、演算器３４からの加算値と、ラッチ回路３１の出力である画素ｈ１２とが加算され、その加算値（ｈ１０＋ｈ１１＋ｈ１２）が演算器３６に出力される。演算器３６では、演算器３５からの加算値と、ラッチ回路３１に供給されている画素ｈ１３とが加算され、その加算値（ｈ１０＋ｈ１１＋ｈ１２＋ｈ１３）が演算器３７に出力される。演算器３７では、演算器３６からの加算値が４で除算され、これにより、第２階層の画素ｍ１（＝（ｈ１０＋ｈ１１＋ｈ１２＋ｈ１３）／４）が求められる。
【０１０２】
そして、ライトエレメント２１は、リードバッファ２４からの１ライン目のｈ００，ｈ０１，ｈ１０，ｈ１１を、ライトバッファ２２の１ライン目のセル５１乃至５４にそれぞれ供給し、このタイミングで、セル５１乃至５４はイネーブル状態とされる。その結果、セル５１乃至５４では、図９に示すように、再び、画素ｈ００，ｈ０１，ｈ１０，ｈ１１がそれぞれラッチされる。
【０１０３】
さらに、ライトバッファ２２では、セル５５乃至５８がイネーブル状態とされる。その結果、図９に示すように、セル５５では、ラッチ回路３３が出力している画素ｈ０２が、セル５６では、演算器４５が出力している画素ｍ０が、セル５７では、ラッチ回路３１が出力している画素ｈ１２が、セル５８では、演算器３７が出力している画素ｍ１が、それぞれラッチされる。
【０１０４】
そして、この場合、１ライン目の画素ｈ００，ｈ０１，ｈ１０，ｈ１１、および２ライン目の画素ｈ０２，ｍ０，ｈ１２，ｍ１とともにブロックを構成する３ライン目の最初の４画素ｈ２０，ｈ２１，ｈ３０，ｈ３１、および４ライン目の最初の４画素ｈ２２，ｈ２３，ｈ３２，ｈ３３の合計８画素は、まだ供給されていないため、ライトバッファ２２の３および４ライン目を構成するセル５９乃至６２，６３乃至６６には、前フレームの画素Ｃが書き込まれる。
【０１０５】
以上のようにして、セル５１乃至６６に記憶された４×４のデータは、メモリセルアレイ２３に供給され、対応する絶対アドレスが割り当てられた４×４のセルに記憶（上書き）される。
【０１０６】
次に、最下位階層の３ライン目の画素ｈ２０，ｈ２１，ｈ３０，ｈ３１が供給されると、それらの画素は、ライトエレメント２１のラッチ回路３１乃至３３で順次ラッチされていく。そして、画素ｈ３１が供給されるタイミング、即ち、画素ｈ３１が、ラッチ回路３１に供給されるタイミングでは、図１０に示すように、ラッチ回路３１乃至３３では、画素ｈ３０，ｈ２１，ｈ２０がそれぞれラッチされる。
【０１０７】
また、このとき、メモリセルアレイ２３からは、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が記憶されるとともに、２ライン目に画素ｈ０２，ｍ０，ｈ１２，ｍ１が記憶され、３および４ライン目に前フレームの画素Ｃが記憶されたブロックが読み出され、リードバッファ２４に記憶される。そして、このブロックが、リードバッファ２４からライトエレメント２１に供給される。
【０１０８】
この場合、ライトエレメント２１は、リードバッファ２４からの１ライン目のｈ００，ｈ０１，ｈ１０，ｈ１１を、ライトバッファ２２の１ライン目のセル５１乃至５４にそれぞれ供給し、このタイミングで、セル５１乃至５４はイネーブル状態とされる。その結果、セル５１乃至５４では、図１０に示すように、再び、画素ｈ００，ｈ０１，ｈ１０，ｈ１１がそれぞれラッチされる。
【０１０９】
さらに、ライトエレメント２１は、リードバッファ２４からの２ライン目のｈ０２，ｍ０，ｈ１２，ｍ１を、ライトバッファ２２の２ライン目のセル５５乃至５８にそれぞれ供給し、このタイミングで、セル５５乃至５８はイネーブル状態とされる。その結果、セル５５乃至５８では、図１０に示すように、再び、画素ｈ０２，ｍ０，ｈ１２，ｍ１がそれぞれラッチされる。
【０１１０】
また、ライトバッファ２２では、セル５９乃至６２がイネーブル状態とされる。その結果、図１０に示すように、セル５９では、ラッチ回路３３が出力している画素ｈ２０が、セル６０では、ラッチ回路３２が出力している画素ｈ２１が、セル６１では、ラッチ回路３１が出力している画素ｈ３０が、セル６２では、ラッチ回路３２に供給されている画素ｈ３１が、それぞれラッチされる。
【０１１１】
そして、この場合、１ライン目の画素ｈ００，ｈ０１，ｈ１０，ｈ１１、２ライン目の画素ｈ０２，ｍ０，ｈ１２，ｍ１、および３ライン目の画素ｈ２０，ｈ２１，ｈ３０，ｈ３１とともにブロックを構成する４ライン目の最初の４画素ｈ２２，ｈ２３，ｈ３２，ｈ３３は、まだ供給されていないため、ライトバッファ２２の４ライン目を構成するセル６３乃至６６には、前フレームの画素Ｃが書き込まれる。
【０１１２】
以上のようにして、セル５１乃至６６に記憶された４×４のデータは、メモリセルアレイ２３に供給されて記憶される。
【０１１３】
そして、最下位階層の４ライン目の画素ｈ２２，ｈ２３，ｈ３２，ｈ３３が供給されると、それらの画素は、ライトエレメント２１のラッチ回路３１乃至３３で順次ラッチされていく。そして、画素ｈ３３が供給されるタイミング、即ち、画素ｈ３３が、ラッチ回路３１に供給されるタイミングでは、図１１に示すように、ラッチ回路３１乃至３３では、画素ｈ３２，ｈ２３，ｈ２２がそれぞれラッチされる。
【０１１４】
また、このとき、メモリセルアレイ２３からは、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が、２ライン目に画素ｈ０２，ｍ０，ｈ１２，ｍ１が、３ライン目に画素ｈ２０、ｈ２１，ｈ３０，ｈ３１が、４ライン目に前フレームの画素Ｃが、それぞれ記憶されたブロックが読み出され、リードバッファ２４に記憶される。そして、このブロックが、図１１に示すように、リードバッファ２４からライトエレメント２１に供給される。
【０１１５】
ライトエレメント２１において、演算器４２には、リードバッファ２４からの画素ｈ２０およびｈ２１が供給される。演算器４２では、画素ｈ２０とｈ２１とが加算され、その加算値（ｈ２０＋ｈ２１）が演算器４３に出力される。演算器４３では、演算器４２からの加算値と、ラッチ回路３３の出力である画素ｈ２２とが加算され、その加算値（ｈ２０＋ｈ２１＋ｈ２２）が演算器４４に出力される。演算器４４では、演算器４３からの加算値と、ラッチ回路３２の出力である画素ｈ２３とが加算され、その加算値（ｈ２０＋ｈ２１＋ｈ２２＋ｈ２３）が演算器４５に出力される。演算器４５では、演算器４４からの加算値が４で除算され、これにより、第２階層の画素ｍ２（＝（ｈ２０＋ｈ２１＋ｈ２２＋ｈ２３）／４）が求められる。
【０１１６】
また、演算器３４には、リードバッファ２４からの画素ｈ３０およびｈ３１が供給される。演算器３４では、画素ｈ３０とｈ３１とが加算され、その加算値（ｈ３０＋ｈ３１）が演算器３５に出力される。演算器３５では、演算器３４からの加算値と、ラッチ回路３１の出力である画素ｈ３２とが加算され、その加算値（ｈ３０＋ｈ３１＋ｈ３２）が演算器３６に出力される。演算器３６では、演算器３５からの加算値と、ラッチ回路３１に供給されている画素ｈ３３とが加算され、その加算値（ｈ３０＋ｈ３１＋ｈ３２＋ｈ３３）が演算器３７に出力される。演算器３７では、演算器３６からの加算値が４で除算され、これにより、第２階層の画素ｍ３（＝（ｈ３０＋ｈ３１＋ｈ３２＋ｈ３３）／４）が求められる。この画素ｍ３は、演算器４０に供給される。
【０１１７】
一方、演算器３８には、リードバッファ２４からの画素ｍ０およびｍ１が供給される。演算器３８では、画素ｍ０とｍ１とが加算され、その加算値（ｍ０＋ｍ１）が演算器３９に出力される。演算器３９では、演算器３８からの加算値と、演算器４５の出力である画素ｍ２とが加算され、その加算値（ｍ０＋ｍ１＋ｍ２）が演算器４０に出力される。演算器４０では、演算器３７からの画素ｍ３と、演算器３９からの加算値とが加算され、その加算値（ｍ０＋ｍ１＋ｍ２＋ｍ３）が演算器４１に出力される。演算器４１では、演算器４０からの加算値が４で除算され、これにより、第３階層の画素ｑ（＝（ｍ０＋ｍ１＋ｍ２＋ｍ３）／４）が求められる。
【０１１８】
そして、ライトエレメント２１は、リードバッファ２４からの１ライン目のｈ００，ｈ０１，ｈ１０，ｈ１１を、ライトバッファ２２の１ライン目のセル５１乃至５４にそれぞれ供給し、このタイミングで、セル５１乃至５４はイネーブル状態とされる。その結果、セル５１乃至５４では、図１１に示すように、再び、画素ｈ００，ｈ０１，ｈ１０，ｈ１１がそれぞれラッチされる。
【０１１９】
さらに、ライトエレメント２１は、リードバッファ２４からの２ライン目のｈ０２，ｍ０，ｈ１２，ｍ１を、ライトバッファ２２の２ライン目のセル５５乃至５８にそれぞれ供給し、このタイミングで、セル５５乃至５８はイネーブル状態とされる。その結果、セル５５乃至５８では、図１１に示すように、再び、画素ｈ０２，ｍ０，ｈ１２，ｍ１がそれぞれラッチされる。
【０１２０】
また、ライトエレメント２１は、リードバッファ２４からの１ライン目のｈ２０，ｈ２１，ｈ３０，ｈ３１を、ライトバッファ２２の３ライン目のセル５９乃至６２にそれぞれ供給し、このタイミングで、セル５９乃至６２はイネーブル状態とされる。その結果、セル５９乃至６２では、図１１に示すように、再び、画素ｈ２０，ｈ２１，ｈ３０，ｈ３１がそれぞれラッチされる。
【０１２１】
さらに、ライトバッファ２２では、セル６３乃至６６がイネーブル状態とされる。その結果、図１１に示すように、セル６３では、ラッチ回路３３が出力している画素ｈ３２が、セル６４では、演算器４５が出力している画素ｍ２が、セル６５では、ラッチ回路３１が出力している画素ｈ３２が、セル６６では、演算器４１が出力している画素ｑが、それぞれラッチされる。
【０１２２】
その後、セル５１乃至６６に記憶された４×４のデータは、メモリセルアレイ２３に供給され、対応する絶対アドレスが割り当てられた４×４のセルに記憶される。
【０１２３】
以上のように、メモリセルアレイ２３に対しては、ブロック単位で、画素が書き込まれる。
【０１２４】
なお、最下位階層の１乃至４ライン目の他のブロックについても同様の処理が行われ、さらに、５ライン目以降についても同様の処理が繰り返される。
【０１２５】
次に、図１２は、図６のライトエレメント２１の他の構成例を示している。なお、図中、図７における場合と対応する部分については、同一の符号を付してある。即ち、このライトエレメント２１は、演算器４２乃至４５が設けられておらず、演算器３７の出力をラッチするラッチ回路８１および８２が新たに設けられている他は、図７における場合と基本的に同様に構成されている。但し、演算器３９には、演算器４５の出力に代えて、ラッチ回路８２の出力が、必要に応じて供給されるようになされている。
【０１２６】
以上のように構成されるライトエレメント２１では、１ライン目および３ライン目の書き込みは、図７における場合と同様に行われる。
【０１２７】
そして、２ライン目の書き込み時においては、図１３に示すように、最下位階層の２ライン目の画素ｈ０２がラッチ回路３１でラッチされ、そこに次の画素ｈ０３が供給されるタイミングで、メモリセルアレイ２３からリードバッファ２４を介して、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が記憶され、２乃至４ライン目に前フレームの画素Ｃが記憶されたブロックが供給される。
【０１２８】
ライトエレメント２１においては、図１３に示すように、演算器３４に、リードバッファ２４からの画素ｈ００およびｈ０１が供給される。そして、演算器３４乃至３７において、上述した場合と同様にして、第２階層の画素ｍ０（＝（ｈ００＋ｈ０１＋ｈ０２＋ｈ０３）／４）が求められる。
【０１２９】
その後、図１４に示すように、ラッチ回路３１乃至３３において、２ライン目の最下位階層の画素ｈ１２，ｈ０３，ｈ０２がそれぞれラッチされ、ラッチ回路３１に画素ｈ１３が供給されると、演算器３４には、リードバッファ２４からの画素ｈ１０およびｈ１１が供給される。そして、演算器３４乃至３７において、上述した場合と同様にして、第２階層の画素ｍ１（＝（ｈ１０＋ｈ１１＋ｈ１２＋ｈ１３）／４）が求められる。
【０１３０】
なお、演算器３７から先に出力された第２階層の画素ｍ０は、ラッチ回路８１および８２で順次ラッチされて出力される。
【０１３１】
以上の処理後、ライトエレメント２１が出力する各画素は、図７における場合と同様にして、ライトバッファ２２にラッチされ、メモリセルアレイ２３に書き込まれる。
【０１３２】
次に、４ライン目の書き込み時においては、図１５に示すように、最下位階層の４ライン目の画素ｈ２２がラッチ回路３１でラッチされ、そこに次の画素ｈ２３が供給されるタイミングで、メモリセルアレイ２３からリードバッファ２４を介して、１ライン目に画素ｈ００，ｈ０１，ｈ１０，ｈ１１が、２ライン目に画素ｈ０２，ｍ０，ｈ１２，ｍ１が、３ライン目に画素ｈ２０、ｈ２１，ｈ３０，ｈ３１が、４ライン目に前フレームの画素Ｃが、それぞれ記憶されたブロックが供給される。
【０１３３】
ライトエレメント２１においては、図１５に示すように、演算器３４に、リードバッファ２４からの画素ｈ２０およびｈ２１が供給される。そして、演算器３４乃至３７において、上述した場合と同様にして、第２階層の画素ｍ２（＝（ｈ２０＋ｈ２１＋ｈ２２＋ｈ２３）／４）が求められる。
【０１３４】
その後、図１６に示すように、ラッチ回路３１乃至３３において、４ライン目の最下位階層の画素ｈ２２，ｈ２３，ｈ３２がそれぞれラッチされ、ラッチ回路３１に画素ｈ３３が供給されると、演算器３４には、リードバッファ２４からの画素ｈ３０およびｈ３１が供給される。そして、演算器３４乃至３７において、上述した場合と同様にして、第２階層の画素ｍ３（＝（ｈ３０＋ｈ３１＋ｈ３２＋ｈ３３）／４）が求められる。
【０１３５】
なお、演算器３７から先に出力された第２階層の画素ｍ２は、ラッチ回路８１および８２で順次ラッチされて出力される。
【０１３６】
さらに、この場合、図１６に示すように、演算器３８には、リードバッファ２４からの画素ｍ０およびｍ１が、演算器３９には、ラッチ回路８２が出力する画素ｍ２が、それぞれ供給される。そして、演算器３８乃至４１において、上述した場合と同様にして、第３階層の画素ｑ（＝（ｍ０＋ｍ１＋ｍ２＋ｍ３）／４）が求められる。
【０１３７】
以上の処理後、ライトエレメント２１が出力する各画素は、図７における場合と同様にして、ライトバッファ２２にラッチされ、メモリセルアレイ２３に書き込まれる。
【０１３８】
次に、図６の記憶装置においては、そこへのデータの書き込みと、そこからのデータの読み出しとを非同期で行うことができるように、リードバッファ２４および２５の２つの読み出し用のバッファを設けているが、書き込み時に使用するライトバッファ２２とリードバッファ２４とは、１のバッファで兼用し、読み出し用のバッファは、リードバッファ２５だけにすることが可能である。
【０１３９】
図１７は、図８に示したライトバッファ２２を、リードバッファ２４としても使用することができるＩ／Ｏ（Input/Output）ポートとして構成する場合の、そのＩ／Ｏポートのセルの構成例を示している。
【０１４０】
この場合、図８のセル５１乃至６６それぞれに相当するセル８６の入力段には、セレクタ８５が設けられており、セレクタ８５は、ライトエレメント２１からの信号か、またはメモリセルアレイ２３からの信号のうちのいずれか一方を、ライト／リード（Write/Read）信号に対応して選択して出力するようになされている。
【０１４１】
ライト／リード信号は、メモリセルアレイ２３に対して、データの書き込みを行うのか、または読み出しを行うのかを指示する信号で、セレクタ８５は、ライト／リード信号が、メモリセルアレイ２３へのデータの書き込みを指示しているとき、ライトエレメント２１からの信号を選択して、セル８６に出力する。また、セレクタ８５は、ライト／リード信号が、メモリセルアレイ２３からのデータの読み出しを指示しているとき、メモリセルアレイ２３からの信号を選択して、セル８６に出力する。
【０１４２】
なお、この場合、例えば、１クロックの前半において読み出しを、後半において書き込みを、それぞれ行うようにすれば良い。
【０１４３】
次に、図６の記憶装置の読み出し時の動作について説明するが、その前に、その前段階の準備として、リードバッファ２５およびリードエレメント２６の構成についてさらに説明する。
【０１４４】
図１８は、図６のリードバッファ２５の構成例を示している。
【０１４５】
リードバッファ２５は、同図に示すように、ブロック単位の画素を記憶する１６個のセル９１乃至１０６で構成されている。セル９１乃至１０６は、４×４の格子状に配置されており、各ラインを構成するセル９１乃至９４，９５乃至９８，９９乃至１０２，１０３乃至１０６それぞれには、クロックｘｅｎＢが供給されるようになされている。そして、セル９１乃至１０６は、このクロックｘｅｎＢに対応して、メモリセルアレイ２３から供給される画素をラッチし、リードエレメント２６に供給するようになされている。ここで、リードバッファ２５が、このように４×４の格子状に配置された１６のセル９１乃至１０６を有することで、メモリセルアレイ２３からは、その単位、即ち、ブロック単位で、画素の読み出しが行われるようになされている。
【０１４６】
次に、図１９は、図６のリードエレメント２６の構成例を示している。
【０１４７】
ここで、図１８のセル９１乃至１０６の出力段に付した記号ａ０乃至ａ３，ｂ０乃至ｂ３，ｃ０乃至ｃ３，ｄ０乃至ｄ３の部分は、図１９のリードバッファ２６のブロック図に付した同一の記号の部分に接続されている。従って、例えば、リードバッファ２５におけるセル９１，９３，９９，１０１の出力は、いずれも、リードエレメント２６におけるセレクタ１１１に供給される。
【０１４８】
また、図１９における同一記号Ａ，Ａ’，Ｂ，Ｃ，Ｄの部分どうしも相互に接続されている。従って、例えば、セレクタ１１１の出力は、演算器１１４の他、セレクタ１２３にも供給されるようになされている。
【０１４９】
セレクタ１１１には、リードバッファ２５のセル９１，９３，９９，１０１のラッチ出力が供給されるようになされており、セレクタ１１１は、リードアドレスコントローラ２８（図６）から供給される制御信号にしたがって、セル９１，９３，９９，１０１のラッチ出力のうちのいずれかを選択し、演算器１１４およびセレクタ１２３に出力するようになされている。
【０１５０】
セレクタ１１２には、リードバッファ２５のセル９２，９４，１００，１０２のラッチ出力が供給されるようになされており、セレクタ１１２は、リードアドレスコントローラ２８から供給される制御信号にしたがって、セル９２，９４，１００，１０２のラッチ出力のうちのいずれかを選択し、演算器１１４およびセレクタ１２３に出力するようになされている。
【０１５１】
セレクタ１１３には、リードバッファ２５のセル９５，９７，１０３，１０５のラッチ出力が供給されるようになされており、セレクタ１１３は、リードアドレスコントローラ２８から供給される制御信号にしたがって、セル９５，９７，１０３，１０５のラッチ出力のうちのいずれかを選択し、演算器１１５およびセレクタ１２３に出力するようになされている。
【０１５２】
演算器１１４は、セレクタ１１１の出力と、セレクタ１１２の出力とを加算し、演算器１１５に供給するようになされている。演算器１１５は、演算器１１４からの加算値と、セレクタ１１３の出力とを加算し、演算器１１６に出力するようになされている。
【０１５３】
演算器１１６には、さらに、演算器１１８の出力も供給されるようになされており、演算器１１６は、演算器１１８の出力から、演算器１１５の出力を減算して、セレクタ１２３に供給するようになされている。
【０１５４】
セレクタ１１７には、リードバッファ２５のセル９６，９８，１０４のラッチ出力、および演算器１２１の出力が供給されるようになされており、セレクタ１１７は、リードアドレスコントローラ２８から供給される制御信号にしたがって、セル９６，９８，１０４のラッチ出力、または演算器１２１の出力のうちのいずれかを選択し、演算器１１８およびセレクタ１２３に出力するようになされている。
【０１５５】
演算器１１８は、セレクタ１１７の出力を、例えば、２ビットだけ左シフトすることにより４倍にし、演算器１１６に供給するようになされている。
【０１５６】
演算器１１９には、リードバッファ２５のセル９６および９８のラッチ出力が供給されるようになされており、演算器１１９は、それらを加算して、演算器１２０に供給するようになされている。演算器１２０には、さらに、リードバッファ２５のセル１０４のラッチ出力も供給されるようになされており、演算器１２０は、そのセル１０４のラッチ出力と、演算器１１９の出力とを加算して、演算器１２１に供給するようになされている。演算器１２１には、さらに、演算器１２２の出力も供給されるようになされており、演算器１２１は、演算器１２２の出力から、演算器１２０の出力を減算して、その減算結果を、セレクタ１１７および１２３に供給するようになされている。演算器１２２には、リードバッファ２５のセル１０６のラッチ出力が供給されるようになされており、演算器１２２は、セル１０６のラッチ出力を、例えば、２ビットだけ左シフトすることにより４倍にし、演算器１２１に供給するようになされている。
【０１５７】
セレクタ１２３には、セレクタ１１１乃至１１３，１１７の出力、演算器１１６，１２１の出力、リードバッファ２５のセル１０６のラッチ出力が供給されるようになされており、セレクタ１２３は、それらのうちのいずれかを、リードアドレスコントローラ２８から供給される制御信号にしたがって選択し、ラッチ回路１２４に供給するようになされている。
【０１５８】
ラッチ回路１２４は、セレクタ１２３の出力をラッチして出力するようになされている。なお、ラッチ回路１２４は、セレクタ１２３から供給される画素を、外部に出力するためのタイミングをとるもので、設けなくても良い。
【０１５９】
次に、図６の記憶装置の読み出し時の動作について説明する。
【０１６０】
図５に示したフォーマットのアドレスによって、例えば、第３階層の画素ｑの絶対アドレスが指定された場合、メモリセルアレイ２３からは、画素ｑに対応するブロックを構成する１６の画素ｈ００乃至ｈ０２，ｈ１０乃至ｈ１２，ｈ２０乃至ｈ２２，ｈ３０乃至ｈ３２，ｍ０乃至ｍ２、およびｑが読み出され、リードバッファ２５に供給される。リードバッファ２５では、図２０に示すように、メモリセルアレイ２３から読み出された１６の画素が、対応するセルに記憶される。
【０１６１】
即ち、１ライン目の画素ｈ００，ｈ０１，ｈ１０，ｈ１１は、１ライン目のセル９１乃至９４それぞれに、２ライン目の画素ｈ０２，ｍ０，ｈ１２，ｍ１は、２ライン目のセル９５乃至９８それぞれに、３ライン目の画素ｈ２０，ｈ２１，ｈ３０，ｈ３１は、３ライン目のセル９９乃至１０２それぞれに、４ライン目の画素ｈ２２，ｍ２，ｈ３２，ｑは、４ライン目のセル１０３乃至１０６それぞれに記憶される。
【０１６２】
そして、第３階層（最上位階層）の画素ｑの読み出しが指定された場合（本実施の形態では、レイヤフラグが１０Ｂの場合）には、セレクタ１２３に、セル１０６のラッチ出力を選択するように指示する制御信号が供給される。この場合、セレクタ１２３では、セル１０６のラッチ出力（ｄ３）、即ち、第３階層の画素ｑが選択されて出力される。
【０１６３】
次に、第２階層の画素ｍ０乃至ｍ３の読み出しが指定された場合（本実施の形態では、レイヤフラグが０１Ｂの場合）には、図２１に示すように、演算器１１９において、セル９６および９８のラッチ出力、即ち、画素ｍ０およびｍ１が加算され、その加算値（ｍ０＋ｍ１）が、演算器１２０に供給される。演算器１２０では、演算器１１９の出力と、セル１０４のラッチ出力、即ち、画素ｍ２とが加算され、その加算値（ｍ０＋ｍ１＋ｍ２）が演算器１２１に供給される。
【０１６４】
一方、演算器１２２では、セル１０６のラッチ出力、即ち、画素ｑが４倍され、その乗算値（４×ｑ）が、演算器１２１に供給される。
【０１６５】
演算器１２１では、演算器１２２による乗算結果（４×ｑ）から、演算器１２０による加算結果（ｍ０＋ｍ１＋ｍ２）が減算され、これにより、画素ｍ３（＝４×ｑ−（ｍ０＋ｍ１＋ｍ２））が求められる。演算器１２１で求められた画素ｍ３は、セレクタ１２３に供給される。
【０１６６】
そして、セレクタ１１７には、セル９６，９８，１０４のラッチ出力（ｂ１，ｄ１，ｂ３）、即ち、画素ｍ０乃至ｍ２それぞれを選択するように指示する制御信号が順次供給される。これにより、セレクタ１１７から１２３に対して、画素ｍ０乃至ｍ２が順次供給される。
【０１６７】
この場合、セレクタ１２３には、セレクタ１１７の出力（Ｃ）を選択するように指示する制御信号が供給され、これにより、セレクタ１２３からは、セレクタ１１７から供給される画素ｍ０乃至ｍ２が順次出力される。
【０１６８】
その後、セレクタ１２３には、演算器１２１の出力（Ｄ’）を選択するように指示する制御信号が供給され、これにより、セレクタ１２３からは、演算器１２１から供給される画素ｍ３が出力される。
【０１６９】
以上のようにして、第２階層の画素ｍ０乃至ｍ３が読み出される。
【０１７０】
次に、第１階層の画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３の読み出しが指定された場合（本実施の形態では、レイヤフラグが００Ｂの場合）には、まず、セレクタ１１１乃至１１３に、セル９１，９２，９５のラッチ出力（ａ０，ｂ０，ａ１）を選択するように指示する制御信号が供給され、これにより、セレクタ１１１乃至１１３からは、図２２に示すように、画素ｈ００，ｈ０１，ｈ０２がそれぞれ出力される。画素ｈ００およびｈ０１は、演算器１１４およびセレクタ１２３に供給され、画素ｈ０２は演算器１１５およびセレクタ１２３に供給される。
【０１７１】
演算器１１４では、セレクタ１１１からの画素ｈ００と、セレクタ１１２からのｈ０１とが加算され、その加算値（ｈ００＋ｈ０１）が、演算器１１５に供給される。演算器１１５では、演算器１１４の出力と、セレクタ１１３からの画素ｈ０２とが加算され、その加算値（ｈ００＋ｈ０１＋ｈ０２）が、演算器１１６に供給される。
【０１７２】
一方、セレクタ１１７には、セル９６ラッチ出力（ｂ１）、即ち、画素ｍ０を選択するように指示する制御信号が供給される。これにより、セレクタ１１７からは、図２２に示すように、画素ｍ０が演算器１１８に供給される。演算器１１８では、セレクタ１１７からの画素ｍ０が４倍され、その乗算値（４×ｍ０）が、演算器１１６に供給される。
【０１７３】
演算器１１６では、演算器１１８による乗算結果（４×ｍ０）から、演算器１１５による加算結果（ｈ００＋ｈ０１＋ｈ０２）が減算され、これにより、画素ｈ０３（＝４×ｍ０−（ｈ００＋ｈ０１＋ｈ０２））が求められる。演算器１２１で求められた画素ｈ０３は、セレクタ１２３に供給される。
【０１７４】
セレクタ１２３には、セレクタ１１１乃至１１３の出力（Ａ，Ｂ，Ａ’）を順次選択し、さらに、演算器１１６の出力（Ｄ）を選択するように指示する制御信号が供給される。これにより、セレクタ１２３からは、画素ｈ００乃至ｈ０３が順次出力される。
【０１７５】
その後、セレクタ１１１乃至１１３には、セル９３，９４，９７のラッチ出力（ｃ０，ｄ０，ｃ１）を選択するように指示する制御信号が供給され、これにより、セレクタ１１１乃至１１３からは、図２３に示すように、画素ｈ１０，ｈ１１，ｈ１２がそれぞれ出力される。画素ｈ１０およびｈ１１は、演算器１１４およびセレクタ１２３に供給され、画素ｈ１２は演算器１１５およびセレクタ１２３に供給される。
【０１７６】
演算器１１４および１１５では、上述した場合と同様の処理が行われ、これにより、演算器１１５から演算器１１６に対しては、画素ｈ１０乃至ｈ１２の加算値（ｈ１０＋ｈ１１＋ｈ１２）が供給される。
【０１７７】
一方、セレクタ１１７には、セル９８ラッチ出力（ｄ１）、即ち、画素ｍ１を選択するように指示する制御信号が供給される。これにより、セレクタ１１７からは、図２３に示すように、画素ｍ１が演算器１１８に供給される。演算器１１８では、セレクタ１１７からの画素ｍ１が４倍され、その乗算値（４×ｍ１）が、演算器１１６に供給される。
【０１７８】
演算器１１６では、演算器１１８による乗算結果（４×ｍ１）から、演算器１１５の出力（ｈ１０＋ｈ１１＋ｈ１２）が減算され、これにより、画素ｈ１３（＝４×ｍ１−（ｈ１０＋ｈ１１＋ｈ１２））が求められる。演算器１２１で求められた画素ｈ１３は、セレクタ１２３に供給される。
【０１７９】
この場合も、セレクタ１２３には、セレクタ１１１乃至１１３の出力（Ａ，Ｂ，Ａ’）を順次選択し、さらに、演算器１１６の出力（Ｄ）を選択するように指示する制御信号が供給され、これにより、セレクタ１２３からは、画素ｈ１０乃至ｈ１３が順次出力される。
【０１８０】
次に、セレクタ１１１乃至１１３には、セル９９，１００，１０３のラッチ出力（ａ２，ｂ２，ａ３）を選択するように指示する制御信号が供給され、これにより、セレクタ１１１乃至１１３からは、図２４に示すように、画素ｈ２０，ｈ２１，ｈ２２がそれぞれ出力される。画素ｈ２０およびｈ２１は、演算器１１４およびセレクタ１２３に供給され、画素ｈ２２は演算器１１５およびセレクタ１２３に供給される。
【０１８１】
演算器１１４および１１５では、上述した場合と同様の処理が行われ、これにより、演算器１１５から演算器１１６に対しては、画素ｈ２０乃至ｈ２２の加算値（ｈ２０＋ｈ２１＋ｈ２２）が供給される。
【０１８２】
一方、セレクタ１１７には、セル１０４ラッチ出力（ｂ３）、即ち、画素ｍ１を選択するように指示する制御信号が供給される。これにより、セレクタ１１７からは、図２４に示すように、画素ｍ２が演算器１１８に供給される。演算器１１８では、セレクタ１１７からの画素ｍ２が４倍され、その乗算値（４×ｍ２）が、演算器１１６に供給される。
【０１８３】
演算器１１６では、演算器１１８による乗算結果（４×ｍ２）から、演算器１１５の出力（ｈ２０＋ｈ２１＋ｈ２２）が減算され、これにより、画素ｈ２３（＝４×ｍ２−（ｈ２０＋ｈ２１＋ｈ２２））が求められる。演算器１２１で求められた画素ｈ２３は、セレクタ１２３に供給される。
【０１８４】
この場合も、セレクタ１２３には、セレクタ１１１乃至１１３の出力（Ａ，Ｂ，Ａ’）を順次選択し、さらに、演算器１１６の出力（Ｄ）を選択するように指示する制御信号が供給され、これにより、セレクタ１２３からは、画素ｈ２０乃至ｈ２３が順次出力される。
【０１８５】
その後、セレクタ１１１乃至１１３には、セル１０１，１０２，１０５のラッチ出力（ｃ２，ｄ２，ｃ３）を選択するように指示する制御信号が供給され、これにより、セレクタ１１１乃至１１３からは、図２５に示すように、画素ｈ３０，ｈ３１，ｈ３２がそれぞれ出力される。画素ｈ３０およびｈ３１は、演算器１１４およびセレクタ１２３に供給され、画素ｈ３２は演算器１１５およびセレクタ１２３に供給される。
【０１８６】
演算器１１４および１１５では、上述した場合と同様の処理が行われ、これにより、演算器１１５から演算器１１６に対しては、画素ｈ３０乃至ｈ３２の加算値（ｈ３０＋ｈ３１＋ｈ３２）が供給される。
【０１８７】
また、この場合、演算器１１９において、セル９６および９８のラッチ出力、即ち、画素ｍ０およびｍ１が加算され、その加算値（ｍ０＋ｍ１）が、演算器１２０に供給される。演算器１２０では、演算器１１９の出力と、セル１０４のラッチ出力、即ち、画素ｍ２とが加算され、その加算値（ｍ０＋ｍ１＋ｍ２）が演算器１２１に供給される。同時に、演算器１２２では、セル１０６のラッチ出力、即ち、画素ｑが４倍され、その乗算値（４×ｑ）が、演算器１２１に供給される。
【０１８８】
演算器１２１では、演算器１２２による乗算結果（４×ｑ）から、演算器１２０による加算結果（ｍ０＋ｍ１＋ｍ２）が減算され、これにより、画素ｍ３（＝４×ｑ−（ｍ０＋ｍ１＋ｍ２））が求められる。演算器１２１で求められた画素ｍ３は、セレクタ１１７に供給される。
【０１８９】
そして、セレクタ１１７には、演算器１２１のラッチ出力（Ｄ’）、即ち、画素ｍ３を選択するように指示する制御信号が供給される。これにより、セレクタ１１７からは、図２５に示すように、画素ｍ３が演算器１１８に供給される。演算器１１８では、セレクタ１１７からの画素ｍ３が４倍され、その乗算値（４×ｍ３）が、演算器１１６に供給される。
【０１９０】
演算器１１６では、演算器１１８による乗算結果（４×ｍ３）から、演算器１１５の出力（ｈ３０＋ｈ３１＋ｈ３２）が減算され、これにより、画素ｈ３３（＝４×ｍ３−（ｈ３０＋ｈ３１＋ｈ３２））が求められる。演算器１２１で求められた画素ｈ３３は、セレクタ１２３に供給される。
【０１９１】
この場合も、セレクタ１２３には、セレクタ１１１乃至１１３の出力（Ａ，Ｂ，Ａ’）を順次選択し、さらに、演算器１１６の出力（Ｄ）を選択するように指示する制御信号が供給され、これにより、セレクタ１２３からは、画素ｈ３０乃至ｈ３３が順次出力される。
【０１９２】
以上のようにして、第１階層の画素ｈ００乃至ｈ０３，ｈ１０乃至ｈ１３，ｈ２０乃至ｈ２３，ｈ３０乃至ｈ３３が読み出される。
【０１９３】
なお、他のブロックについても、同様にして読み出しが行われる。
【０１９４】
以上のように、メモリセルアレイ２３に対するデータの読み書きをブロック単位で行うようにし、メモリセルアレイ２３を、従来におけるラインディレイを行うための遅延回路としても用いるようにしたので、そのような遅延回路を設けずに済むようになる。
【０１９５】
なお、以上のような記憶装置は、例えば、低解像度の画像である第３階層の画素を用いて、いわば粗い検索を行い、その後、徐々に、解像度の高い下位階層の画素を用いて、精度の高い検索を行う画像検索装置などに適用可能である。
【０１９６】
また、本実施の形態では、２次元のデータである画像を対象としたが、本発明は、１次元のデータにも適用可能である。
【０１９７】
さらに、本実施の形態では、図６に示した各ブロックを１チップ上に構成するようにしたが、そのうちの幾つかのブロックは、外付けとすることも可能である。
【０１９８】
また、本実施の形態では、階層数を３としたが、階層数は、その他、例えば、２であっても、４以上であっても良い。
【０１９９】
さらに、本実施の形態では、下位階層の４画素から、上位階層の１画素を作成するようにしたが、上位階層の画素は、下位階層の３画素や、５画素以上から作成することも可能である。
【０２００】
また、本実施の形態では、下位階層の４画素のうちの、右下の画素を、その４画素から作成した上位階層の画素で置き換えるようにしたが、その他の下位階層の画素を、上位階層の画素で置き換えることも可能である。
【０２０１】
さらに、本実施の形態では、下位階層の４画素の平均値を、上位階層の画素とするようにしたが、その他、例えば、下位階層の４画素を加算したものを、上位階層の画素とすることも可能である。
【０２０２】
なお、この場合、上位階層の画像を表示等するときには、例えば、上位階層の画素を４で除算して平均値とする必要がある。
【０２０３】
また、この場合、上位階層の画素のビット数は、下位階層の画素のビット数より増加することがある。即ち、下位階層の画素のビット数を、例えば、８ビットとすると、上位階層の画素のビット数は、最大で１０ビットになることがある。従って、メモリセルアレイ２３を構成するセルは、このようなビット数の増加を考慮して構成する必要がある。但し、上位階層の画素を丸めることによる誤差が問題とならない場合には、メモリセルアレイ２３を構成するセルは、すべて同一ビット数のものとすることができる。即ち、例えば、上述の場合においては、セルは、すべて８ビットとすることができる。
【０２０４】
【発明の効果】
以上の如く、本発明の記憶装置および記憶読み出し制御方法によれば、装置の小型化、処理速度の高速化を図ることが可能となる。
【図面の簡単な説明】
【図１】本発明を適用した記憶装置の概要を説明するための図である。
【図２】本発明を適用した記憶装置の概要を説明するための図である。
【図３】ブロックを示す図である。
【図４】図３の一部を拡大した拡大図である。
【図５】アドレスのフォーマットを示す図である。
【図６】本発明を適用した記憶装置の一実施の形態の構成例を示すブロック図である。
【図７】図６のライトエレメント２１の構成例を示す図である。
【図８】図６のライトバッファ２２の構成例を示す図である。
【図９】図６の記憶装置の書き込み動作を説明するための図である。
【図１０】図６の記憶装置の書き込み動作を説明するための図である。
【図１１】図６の記憶装置の書き込み動作を説明するための図である。
【図１２】図６のライトエレメント２１の他の構成例を示す図である。
【図１３】図１２のライトエレメント２１の動作を説明するための図である。
【図１４】図１２のライトエレメント２１の動作を説明するための図である。
【図１５】図１２のライトエレメント２１の動作を説明するための図である。
【図１６】図１２のライトエレメント２１の動作を説明するための図である。
【図１７】図８のライトバッファ２２をＩ／Ｏポートとして構成する場合のセルの構成例を示す図である。
【図１８】図６のリードバッファ２５の構成例を示す図である。
【図１９】図６のリードエレメント２６の構成例を示す図である。
【図２０】図６の記憶装置の読み出し動作を説明するための図である。
【図２１】図６の記憶装置の読み出し動作を説明するための図である。
【図２２】図６の記憶装置の読み出し動作を説明するための図である。
【図２３】図６の記憶装置の読み出し動作を説明するための図である。
【図２４】図６の記憶装置の読み出し動作を説明するための図である。
【図２５】図６の記憶装置の読み出し動作を説明するための図である。
【図２６】本件出願人が先に提案した階層符号化を説明するための図である。
【符号の説明】
１  メモリ，  ２乃至５，１１乃至１４  演算器，  ２１  ライトエレメント，  ２２  ライトバッファ，  ２３  メモリセルアレイ，  ２４，２５  リードバッファ，  ２６  リードエレメント，  ２７  ライトアドレスコントローラ，２８  リードアドレスコントローラ，  ２９，３０  デコーダ，  ３１乃至３３  ラッチ回路，  ３４乃至４１  演算器，  ５１乃至６６  セル，  ７１乃至７４  ＮＡＮＤゲート，  ８１，８２  ラッチ回路，  ８５  セレクタ，  ８６，９１乃至１０６  セル，  １１１乃至１１３  セレクタ，  １１４乃至１１６演算器，  １１７  セレクタ，  １１８乃至１２２  演算器，  １２３  セレクタ，  １２４  ラッチ回路
【図１】
0003937418.tif 000002
【図２】
0003937418.tif 000003
【図３】
0003937418.tif 000004
【図４】
0003937418.tif 000005
【図５】
0003937418.tif 000006
【図６】
0003937418.tif 000007
【図７】
0003937418.tif 000008
【図８】
0003937418.tif 000009
【図９】
0003937418.tif 000010
【図１０】
0003937418.tif 000011
【図１１】
0003937418.tif 000012
【図１２】
0003937418.tif 000013
【図１３】
0003937418.tif 000014
【図１４】
0003937418.tif 000015
【図１５】
0003937418.tif 000016
【図１６】
0003937418.tif 000017
【図１７】
0003937418.tif 000018
【図１８】
0003937418.tif 000019
【図１９】
0003937418.tif 000020
【図２０】
0003937418.tif 000021
【図２１】
0003937418.tif 000022
【図２２】
0003937418.tif 000023
【図２３】
0003937418.tif 000024
【図２４】
0003937418.tif 000025
【図２５】
0003937418.tif 000026
【図２６】
0003937418.tif 000027