(57)【特許請求の範囲】
【請求項１】
データを記憶する記憶装置であって、
第１および第２のアドレスによって指定される記憶単位を有する記憶手段と、
前記第１のアドレスをデコードし、前記記憶手段に供給する第１のデコード手段と、
前記第２のアドレスをデコードし、前記記憶手段に供給する第２のデコード手段と、
前記記憶手段に書き込むデータをローテーションし、そのローテーション結果を、前記第１および第２のデコード手段によるデコード結果にしたがい、前記記憶手段に書き込む書き込み用ローテーション手段と、
前記第２のアドレスをデコードし、前記記憶手段に供給する、前記第２のデコード手段とは異なるデコード結果を出力する第３のデコード手段と、
前記第１および第３のデコード手段によるデコード結果にしたがい、前記記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力する読み出し用ローテーション手段と
を備えることを特徴とする記憶装置。
【請求項２】
前記第２または第３のデコード手段のうちの少なくとも一方は、そのデコード結果をプログラマブルに変更することができるものである
ことを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記記憶単位は、第１または第２のアドレスのデコード結果によってそれぞれ特定される行または列に配置されており、
所定の行に配置された前記記憶単位は、前記第１のアドレスのデコード結果によって指定され、
所定の列に配置された前記記憶単位は、前記第２のアドレスのデコード結果によって指定される
ことを特徴とする請求項１に記載の記憶装置。
【請求項４】
前記データは画像データであり、
前記書き込み用ローテーション手段は、前記画像データを構成する水平方向に並ぶ画素をローテーションする
ことを特徴とする請求項１に記載の記憶装置。
【請求項５】
データを記憶する記憶装置の記憶方法であって、
前記記憶装置は、第１および第２のアドレスによって指定される記憶単位を有する記憶手段を備え、
前記第１のアドレスをデコードし、前記記憶手段に供給する第１のデコードステップと、
前記第２のアドレスをデコードし、前記記憶手段に供給する第２のデコードステップと、
前記記憶手段に書き込むデータをローテーションし、そのローテーション結果を、前記第１および第２のデコードステップにおけるデコード結果にしたがい、前記記憶手段に書き込む書き込み用ローテーションステップと、
前記第２のアドレスをデコードし、前記記憶手段に供給する、前記第２のデコードステップにおけるデコード結果とは異なるデコード結果を出力する第３のデコードステップと、
前記第１および第３のデコードステップにおけるデコード結果にしたがい、前記記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力する読み出し用ローテーションステップと
を備えることを特徴とする記憶方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置および記憶方法に関し、特に、例えば、ラインスキャン順に入力される画素を、所定の順序で出力することなどができるようにする記憶装置および記憶方法に関する。
【０００２】
【従来の技術】
例えば、ディジタル画像データを、衛星回線やインターネットその他の通信ネットワークを介して送信（通信）する場合、およびディジタルＶＴＲ（Video Tape Record）やＤＶＤ（Digital Versatile Disc）などの記録メディアに記録する場合においては、ノイズ対策や、ネットワーク上のセキュリティ、著作権や放映権の保護等の観点から、画像データに対して、シャッフリング（またはスクランブル）を施すことが多い。そして、シャッフリングは、簡単にいえば、画像を構成するラインスキャン順の画素を並べ替えることで行われる。
【０００３】
また、例えば、画像の符号化／復号等についての規格であるＭＰＥＧ（Moving Picture Experts Group）における動き検出においては、処理対象となっている現フレームの８画素×８画素のブロックと、その現フレームに対して参照フレームとなる、時間的に先行（過去）または後行（未来）するフレームの所定のサーチ範囲との間のブロックマッチングが行われるが、この場合、１フレームである参照フレームから、サーチ範囲を検出する必要がある。そして、１フレームから、サーチ範囲を検出する場合において、画像がラインスキャン順に供給されてメモリに記憶されるときには、例えば、そのメモリから、サーチ範囲の縦の画素数に等しい数のラインを読み出し、その読み出したラインを垂直方向に切っていくことで、サーチ範囲の横の画素数に等しい数の画素を取り出す必要がある。従って、サーチ範囲の検出は、水平方向順に並ぶ画素で構成される参照フレームの複数ラインを、垂直方向順に並ぶ画素で構成される画像に変換することで、即ち、参照フレームの複数ラインを構成するラインスキャン順の画素を並べ替えることで行われる。
【０００４】
さらに、例えば、画像を９０度回転させることは、水平方向順に並ぶ画素で構成される画像を、垂直方向順に並ぶ画素で構成される画像に変換することで行うことができるから、やはり、画像を構成するラインスキャン順の画素を並べ替えることで行われる。
【０００５】
従って、画像を構成する画素を並べ替える技術は、各種の画像処理において用いられる。
【０００６】
図２７は、水平方向順に並ぶ画素で構成される画像を、垂直方向順に並ぶ画素で構成される画像に変換するための、従来の画素の並べ替え装置の一例の構成を示している。
【０００７】
処理の対象となるディジタル画像データは、例えば、ラインスキャン順に、４画素単位で、パラレルデータとして、パラレル／シリアル変換回路３０１に供給される。パラレル／シリアル変換回路３０１では、そこに供給される４画素のパラレルデータが、シリアルデータに変換され、１ライン分の記憶容量を有するラインメモリ３０２乃至３０５に順次供給される。
【０００８】
即ち、ラインメモリ３０２では、パラレル／シリアル変換回路３０１からの画素が記憶される。そして、ラインメモリ３０２に記憶された画素は、パラレル／シリアル変換回路３０１から、新たに画素が供給されるごとに、右にシフトされていき、ある画素に注目した場合に、その注目画素が、ラインメモリ３０２に供給されてから、１ライン分の画素が供給されると、注目画素は、ラインメモリ３０２から出力され、後段のラインメモリ３０３に供給される。
【０００９】
ラインメモリ３０３においても、ラインメモリ３０２における場合と同様に、ラインメモリ３０２から供給された画素が１ライン分だけ遅延され、後段のラインメモリ３０４に供給される。以下、同様にして、ラインメモリ３０４、３０５それぞれにおいて、画素データは、１ライン分ずつ遅延されていく。
【００１０】
従って、ラインメモリ３０２乃至３０５からは、ある連続する４ラインに注目した場合に、その４ラインの同一列の画素が、パラレルに出力され、これにより、図２７の並べ替え装置では、水平（行または横）方向順に並ぶ画素で構成される画像の４ライン分が、垂直（列または縦）方向順に並ぶ画素で構成される画像に変換される。
【００１１】
【発明が解決しようとする課題】
以上のように、従来においては、画像を構成する画素を並べ替える場合に、画素を並べ替えようとするラインの数に対応する数のラインメモリが必要となる。そして、ラインメモリには、処理対象の画像を構成する１ライン分の記憶容量が必要とされることから、処理対象の画像が、例えば、ＨＤＴＶ（High Density Television）などで用いられる高精細なものである場合には、大きな記憶容量のラインメモリが必要となる。
【００１２】
さらに、ラインメモリは、一般に、ＳＲＡＭ（Static RAM(Random Access Memory)）で構成される。ＳＲＡＭは、同一容量の、例えばＤＲＡＭ（Dynamic RAM）などと比較して、約１０乃至２０倍程度のチップサイズとなるから、装置のＬＳＩ（Large Scale Integration）化を図る場合に、ラインメモリを使用することは、チップサイズの増大を招くことになる。
【００１３】
一方、画像を構成する画素を並べ替える技術としては、図２７に示したように、バッファとしてのラインメモリを用いて、画素の並べ替えを行う方法の他、例えば、画像を記憶させるフレームメモリを用意し、そのフレームメモリに画像を書き込むときの書き込みアドレス、またはそのフレームメモリに記憶させた画像を読み出すときの読み出しアドレスのうちのいずれか一方をスクランブル（シャッフリング）する方法がある。そして、書き込みアドレスまたは読み出しアドレスをスクランブルする方法としては、スクランブルしたアドレスを記憶させたアドレス変換用のメモリを用意し、そのアドレス変換用のメモリに、書き込みアドレスまたは読み出しアドレスを与えて、スクランブルしたアドレスを読み出す方法があるが、この方法では、フレームメモリにアクセスする時間の他に、アドレス変換用のメモリにアクセスする時間を要するため、処理が遅延することになる。
【００１４】
本発明は、このような状況に鑑みてなされたものであり、装置の大型化を極力避けて、画素等の並べ替えを迅速に行うことができるようにするものである。
【００１５】
【課題を解決するための手段】
本発明の記憶装置は、第１および第２のアドレスによって指定される記憶単位を有する記憶手段と、第１のアドレスをデコードし、記憶手段に供給する第１のデコード手段と、第２のアドレスをデコードし、記憶手段に供給する第２のデコード手段と、記憶手段に書き込むデータをローテーションし、そのローテーション結果を、第１および第２のデコード手段によるデコード結果にしたがい、記憶手段に書き込む書き込み用ローテーション手段と、第２のアドレスをデコードし、記憶手段に供給する、第２のデコード手段とは異なるデコード結果を出力する第３のデコード手段と、第１および第３のデコード手段によるデコード結果にしたがい、記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力する読み出し用ローテーション手段とを備えることを特徴とする。
【００１６】
本発明の記憶方法は、第１のアドレスをデコードし、記憶手段に供給する第１のデコードステップと、第２のアドレスをデコードし、記憶手段に供給する第２のデコードステップと、記憶手段に書き込むデータをローテーションし、そのローテーション結果を、第１および第２のデコードステップにおけるデコード結果にしたがい、記憶手段に書き込む書き込み用ローテーションステップと、第２のアドレスをデコードし、記憶手段に供給する、第２のデコードステップにおけるデコード結果とは異なるデコード結果を出力する第３のデコードステップと、第１および第３のデコードステップにおけるデコード結果にしたがい、記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力する読み出し用ローテーションステップとを備えることを特徴とする。
【００１７】
本発明の記憶装置においては、記憶手段は、第１および第２のアドレスによって指定される記憶単位を有している。第１のデコード手段は、第１のアドレスをデコードし、記憶手段に供給するようになされている。第２のデコード手段は、第２のアドレスをデコードし、記憶手段に供給するようになされている。書き込み用ローテーション手段は、記憶手段に書き込むデータをローテーションし、そのローテーション結果を、第１および第２のデコード手段によるデコード結果にしたがい、記憶手段に書き込むようになされている。第３のデコード手段は、第２のアドレスをデコードし、記憶手段に供給するようになされており、第２のデコード手段とは異なるデコード結果を出力するようになされている。読み出し用ローテーション手段は、第１および第３のデコード手段によるデコード結果にしたがい、記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力するようになされている。
【００１８】
本発明の記憶方法においては、第１のデコードステップにおいて、第１のアドレスをデコードし、記憶手段に供給し、第２のデコードステップにおいて、第２のアドレスをデコードし、記憶手段に供給し、書き込み用ローテーションステップにおいて、記憶手段に書き込むデータをローテーションし、そのローテーション結果を、第１および第２のデコードステップにおけるデコード結果にしたがい、記憶手段に書き込み、第３のデコードステップにおいて、第２のアドレスをデコードし、第２のデコードステップにおけるデコード結果とは異なるデコード結果を記憶手段に供給し、読み出し用ローテーションステップにおいて、第１および第３のデコードステップにおけるデコード結果にしたがい、記憶手段に記憶されたデータを読み出し、そのデータをローテーションして出力するようになされている。
【００１９】
【発明の実施の形態】
以下に、本発明の実施の形態を説明するが、その前段階の準備として、データの読み出しと書き込みとが、別々のタイミングで行われるＤＲＡＭチップと、データの読み出しと書き込みとを、同時のタイミングで行うことができるＤＲＡＭチップとについて説明する。
【００２０】
図１は、データの読み出しと書き込みとが、別々のタイミングで行われるＤＲＡＭチップの構成例を示している。
【００２１】
このＤＲＡＭチップには、メモリセルを特定するためのアドレスとしての行アドレスおよび列アドレス、行アドレスの入力タイミングに同期したＲＡＳ（Row Address Strobe）信号、列アドレスの入力タイミングに同期したＣＡＳ（Column Address Strobe）信号、電源として用いられる電圧ＶＤＤおよびＶSS、並びに読み出しと書き込みとのいずれを行うかを表すライトイネーブル信号ＷＥなどが供給されるようになされている。
【００２２】
バッファ１Ｒには、ＲＡＳ信号が供給されるようになされており、バッファ１Ｒは、ＲＡＳ信号に同期して、行アドレスラッチ回路２Ｒに対し、ＤＲＡＭチップに供給されるアドレスの一部を、行アドレスとしてラッチするための同期信号を出力するようになされている。さらに、バッファ１Ｒは、ＲＡＳ信号に基づき、ＥＱＹＥ信号を生成し、ＡＮＤゲート９の一方の入力端子に供給するようになされている。即ち、ＲＡＳ信号は、いわゆるチップイネーブル信号としての性質も有しており、バッファ１Ｒは、そのチップイネーブル信号に基づき、例えば、ＤＲＡＭチップが不活性状態にあるときにＨレベルとなり、活性状態にあるときにＬレベルとなるＥＱＹＥ信号を生成するようになされている。
【００２３】
バッファ１Ｃには、ＣＡＳ信号が供給されるようになされており、バッファ１Ｃは、ＣＡＳ信号に同期して、列アドレスラッチ回路２Ｒに対し、ＤＲＡＭチップに供給されるアドレスの一部を列アドレスとしてラッチするための同期信号を出力するようになされている。さらに、バッファ１Ｃは、ＣＡＳ信号に基づいて、出力バッファ１１がデータをラッチして出力するタイミングを制御するＤout制御信号を生成し、出力バッファ１１に供給するようになされている。即ち、ＣＡＳ信号は、いわゆるアウトプットイネーブル信号の性質も有しており、バッファ１Ｃは、そのアウトプットイネーブル信号に基づき、出力バッファ１１におけるデータのラッチを制御するＤout制御信号を生成するようになされている。
【００２４】
行アドレスラッチ回路２Ｒは、バッファ１Ｒからの同期信号に同期して、ＤＲＡＭチップに供給されるアドレスの一部を行アドレスとしてラッチし、行デコーダ３Ｒに供給するようになされている。また、行アドレスラッチ回路２Ｒは、行アドレスのラッチを完了すると、その完了を表すラッチ完了信号ＬＣＨを、列アドレスラッチ回路２Ｃに供給するようになされている。
【００２５】
列アドレスラッチ回路２Ｃは、バッファ１Ｃからの同期信号、および行アドレスラッチ回路２Ｒからのラッチ完了信号ＬＣＨに同期して、ＤＲＡＭチップに供給されるアドレスの一部を列アドレスとしてラッチし、列デコーダ３ＣおよびＡＴＤ（Address Transit Detector）回路８に供給するようになされている。
【００２６】
行デコーダ３Ｒ（第１のデコード手段）または列デコーダ３Ｃ（第２のデコード手段）は、行アドレスラッチ回路２Ｒまたは列アドレスラッチ回路３Ｃからの行アドレスをデコードし、そのデコード結果に基づいて、行ドライバ４Ｒまたは列ドライバ４Ｃを、それぞれ制御するようになされている。
【００２７】
行ドライバ４Ｒは、行デコーダ３Ｒからの制御にしたがって、メモリセルアレイ５の中に行方向に配置されたワード線ＷＬを駆動し、これにより、データを読み書きする対象の行のメモリセル（記憶単位）を指定するようになされている。
【００２８】
列ドライバ４Ｃは、列デコーダ３Ｃからの制御にしたがって、カラムスイッチ７iを制御し、これにより、ＳＡ（センスアンプ）６iを介して、メモリセルアレイ５の中に列方向に配置されたビット線ＢＬまたは！ＢＬを、データバスＤまたは！Ｄに、それぞれ接続して、メモリセルに対するデータの読み書きが可能な状態とするようになされている。
【００２９】
ここで、図１等において、バー（￣）を付したＢＬ等は、ＢＬ等の反転を表すが、本明細書中では、そのようなバー（￣）を付したＢＬ等を、ＢＬの前に！マークを付した！ＢＬ等と記述する。
【００３０】
メモリセルアレイ５（記憶手段）は、メモリセルが、行方向と列方向それぞれに配置されて構成されており、各メモリセルは、その行または列の位置をそれぞれ特定するための行アドレスまたは列アドレスによって特定されるようになされている。即ち、メモリセルアレイ５は、行方向または列方向に、それぞれ、ＮまたはＭ個のメモリセルが配置されて構成されている。さらに、メモリセルアレイ５は、行方向にＭ本のワード線ＷＬを有しているとともに、列方向にＮ本（組）のビット線ＢＬおよび！ＢＬを有しており、各メモリセルは、ワード線ＷＬとビット線ＢＬおよび！ＢＬとの交点に対応している。そして、行ドライバ４Ｒによって駆動されるワード線ＷＬと、列ドライバ４Ｃによって、データバスＤおよび！Ｄに接続されるビット線ＢＬおよび！ＢＬとの交点に対応するメモリセルが、データを読み書きする対象とされる。
【００３１】
センスアンプ群６は、メモリセルアレイ５の行方向に配列されたメモリセルの数（メモリセルの列数）と同一の数のＳＡ６1乃至６Nから構成されており、ＳＡ６i（ｉ＝１，２，・・・，Ｎ）は、データの読み出し対象のメモリセルから読み出されたデータを増幅、ラッチし、カラムスイッチ７iを介して、データバスＤおよび！Ｄ上に出力するようになされている。
【００３２】
カラムスイッチ７iは、ＳＡ６iと同一の数だけ設けられており、列ドライバ４Ｃにおいて、列デコーダ３Ｃにおける列アドレスのデコード結果に基づき、そのオン／オフが制御されるようになされている。即ち、カラムスイッチ７iは、オン状態になることにより、データバスＤおよび！Ｄと、センスアンプ６iに接続されたビット線ＢＬおよび！ＢＬとを電気的に接続し、そのビット線ＢＬおよび！ＢＬ上にあるメモリセルに対して、データの読み書きが可能な状態とするようになされている。
【００３３】
なお、上述したことから、図１のＤＲＡＭチップには、Ｎ個のＳＡ６1乃至６N、およびＮ個のカラムスイッチ７1乃至７Nが設けられているが、図が煩雑になるのを避けるため、１のＳＡ６i、および１のカラムスイッチ７iだけを図示してある。
【００３４】
ＡＴＤ回路８は、列アドレスラッチ回路２Ｃの出力に基づいて、例えば、列アドレスが遷移する（切り替わる）間においてＨレベルとなり、他の場合においてＬレベルとなるＡＴＤ信号を生成し、ＡＮＤゲート９の他方の入力端子に供給するようになされている。
【００３５】
ＡＮＤゲート９は、バッファ１ＲからのＥＱＹＥ信号と、ＡＴＤ回路８からのＡＴＤ信号の論理積をとり、データバスＤおよび！Ｄをショートするためのショート信号ＣＹを、列ドライバ４Ｃに供給するようになされている。
【００３６】
ここで、上述したように、ＥＱＹＥ信号は、ＤＲＡＭチップが不活性状態のときのみＨレベルとなり、ＡＴＤ信号は、列アドレスの遷移時にのみＨレベルとなるから、ショート信号ＣＹは、ＤＲＡＭチップが不活性状態で、かつ列アドレスの遷移時にのみＨレベルとなり、他の場合にはＬレベルとなる。そして、列ドライバ４Ｃは、このようなショート信号ＣＹがＨレベルになっているときに、データバスＤおよび！Ｄをショートすることで、そのデータバスＤおよび！Ｄ上にのっているデータを消去する。このようにすることにより、メモリセルアレイ５に対するデータの読み書きの高速化を図ることができる。
【００３７】
ＭＡ（メインアンプ）１０は、データバスＤおよび！Ｄに接続されており、メモリセルアレイ５から読み出され、データバスＤおよび！Ｄ上に出力されたデータを増幅して、出力バッファ１１に供給するようになされている。出力バッファ１１は、バッファ１ＣからのＤout制御信号にしたがって、ＭＡ１０からのデータをラッチし、出力端子Ｄoutから出力するようになされている。
【００３８】
入力バッファ１２は、入力端子Ｄinに接続されており、その入力端子Ｄinから入力される書き込み対象のデータをラッチし、記録アンプ１３に供給するようになされている。記録アンプ１３は、入力バッファ１２からのデータを増幅し、データバスＤおよび！Ｄ上に出力するようになされている。
【００３９】
次に、図２は、図１のメモリセルアレイ５，ＳＡ６i、およびカラムスイッチ７iの構成例を示している。
【００４０】
ビット線イコライズ信号線は、メモリセルアレイ５に対するデータの読み書きを行うときにＬレベルにされ、他の場合にはＬレベルにされているビット線イコライズ信号が供給されるようになされており、このビットイコライズ信号線には、ＦＥＴ（ＮチャネルＦＥＴ）２１乃至２３のゲートが接続されている。そして、ＦＥＴ２１および２２のドレインは、電圧ＶＤＤの１／２の電圧が供給されている１／２ＶＤＤ線に接続されており、ＦＥＴ２１または２２のソースは、ＦＥＴ２３のドレインまたはソースにそれぞれ接続されている。また、ＦＥＴ２１のソースとＦＥＴ２３のドレインとの接続点は、ビット線ＢＬの一端に接続されており、ＦＥＴ２２のソースとＦＥＴ２３のソースとの接続点は、ビット線！ＢＬの一端に接続されている。
【００４１】
なお、ビット線イコライズ信号線および１／２ＶＤＤ線は、メモリセルアレイ５において行方向に配置されており、また、３つのＦＥＴ２１乃至２３でなる回路は、メモリセルアレイ５を構成する行方向のメモリセルの数と同一の数だけ設けられている。
【００４２】
ビット線ＢＬには、さらに、ＦＥＴ（ＮチャネルＦＥＴ）２４のドレインが接続されており、そのソースには、一端が接地されたコンデンサ２５の他端が接続されている。そして、ＦＥＴ２４のゲートは、ワード線ＷＬに接続されている。ここで、以上のＦＥＴ２４およびコンデンサ２５が、１のメモリセルを構成しており、メモリセルアレイ５では、このように構成されるメモリセルが、列方向にＭ個、行方向にＮ個、それぞれ配置されている。なお、このＦＥＴ２４およびコンデンサ２５によるメモリセルは、一般的な、ＤＲＡＭのメモリセルの構成と同様である。
【００４３】
ビット線ＢＬには、また、ＦＥＴ（ＰチャネルＦＥＴ）２６のドレインも接続されており、ビット線ＢＬとＦＥＴ２６のドレインとの接続点は、ＦＥＴ（ＮチャネルＦＥＴ）２７のドレインおよびＦＥＴ（ＰチャネルＦＥＴ）２８のゲートと接続されている。また、ＦＥＴ２７のゲートは、ＦＥＴ２６のゲートと接続されている。
【００４４】
ＦＥＴ２８のドレインは、ビット線！ＢＬ，ＦＥＴ（ＮチャネルＦＥＴ）２９のドレイン、およびＦＥＴ２６のゲートとＦＥＴ２７のゲートとの接続点に接続されている。さらに、ＦＥＴ２８および２９のゲートどうしが接続されており、そのゲートどうしの接続点は、ＦＥＴ２６および２７のドレインどうしの接続点とも接続されている。そして、ＦＥＴ２６および２８のソースは、センスアンプＨ信号線に、ＦＥＴ２７および２９のソースは、センスアンプＬ信号線に、それぞれ接続されている。
【００４５】
ここで、以上のＦＥＴ２６乃至２９が、１のＳＡ６iを構成しており、上述したように、このように構成されるＳＡ６iが、メモリセルアレイ５を構成する行方向のメモリセルの数と同一の数だけ設けられている。
【００４６】
なお、センスアンプＨ信号線およびセンスアンプＬ信号線は、メモリセルアレイ５における行方向と平行に配置されている。そして、センスアンプＨ信号線またはセンスアンプＬ信号線には、ＳＡ６iを駆動するための所定のＨレベルまたはＬレベルの信号としてのセンスアンプＨ信号またはセンスアンプＬ信号が、それぞれ供給されるようになされている。
【００４７】
ビット線ＢＬまたは！ＢＬの他端には、ＦＥＴ（ＮチャネルＦＥＴ）３０または３１のドレインが、それぞれ接続されている。また、ＦＥＴ３０または３１のソースは、データバスＤまたは！Ｄに、それぞれ接続されている。そして、ＦＥＴ３０および３１のゲートどうしが接続されており、その接続点は、列デコード線ＹＬに接続されている。
【００４８】
ここで、以上のＦＥＴ３０および３１が、１のカラムスイッチ７iを構成しており、上述したように、このように構成されるカラムスイッチ７iが、メモリセルアレイ５を構成する行方向のメモリセルの数と同一の数だけ設けられている。
【００４９】
また、列デコード線ＹＬは、列ドライバ４Ｃによって駆動されるようになされており、これにより、カラムスイッチ７iとしてのＦＥＴ３０および３１のゲートにＨまたはＬレベルが印加され、ＦＥＴ３０および３１がオンまたはオフし、ビット線ＢＬ，！ＢＬと、データバスＤ，！Ｄとの電気的な接続状態が制御されるようになされている。
【００５０】
次に、図３のタイミングチャートを参照して、図２のメモリセルアレイ５，ＳＡ６i、およびカラムスイッチ７iの動作について説明する。なお、ここでは、図２に示したＦＥＴ２４およびコンデンサ２５からなるメモリセルを対象に、データの読み書きが行われるものとする。
【００５１】
データの読み出し時および書き込み時においては、図３（Ａ）に示すように、ビット線イコライズ信号がＨレベルからＬレベルにされる。これにより、ＦＥＴ２１乃至２３は、オン状態からオフ状態となり、ビット線ＢＬおよび！ＢＬは、電圧ＶＤＤの１／２の電圧を供給する１／２ＶＤＤ線から電気的に切り離される。
【００５２】
その後、ＦＥＴ２４およびコンデンサ２５でなるメモリセルの行アドレスが行デコーダ３Ｒに与えられると、列デコーダ３Ｒは、その行アドレスをデコードし、さらに、そのデコード結果にしたがって、ＦＥＴ２４およびコンデンサ２５でなるメモリセルの行のワード線ＷＬ、即ち、ＦＥＴ２４のゲートに接続されたワード線ＷＬを、図３（Ｂ）に示すように、ＬレベルからＨレベルにする。これにより、ＦＥＴ２４は、オフ状態からオン状態となり、そのソースに接続されたコンデンサ２５は、ビット線ＢＬと電気的に接続される。
【００５３】
さらに、センスアンプＨ信号は、図３（Ｃ）に示すように、ＬレベルからＨレベルにされ、センスアンプＬ信号は、図３（Ｄ）に示すように、ＨレベルからＬレベルにされる。これにより、ＳＡ６iが動作状態となる。
【００５４】
ＳＡ６iが動作状態となると、ビット線ＢＬ上に現れるコンデンサ２５の電圧が差動増幅されてラッチされる。その結果、図３（Ｅ）に示すように、ビット線ＢＬの電圧は、ＶＤＤ／２から、ＨまたはＬレベルのうちの一方に、ビット線！ＢＬの電圧は、ＶＤＤ／２から他方に、それぞれ変化する。
【００５５】
即ち、ビット線ＢＬおよび！ＢＬの電位は、ビット線イコライズ信号がＨレベルの状態では、ＦＥＴ２１乃至２３がオン状態になっているから、１／２ＶＤＤ線上の電圧ＶＤＤ／２となっている。そして、ビット線イコライズ信号がＨレベルからＬレベルとなると、ＦＥＴ２１乃至２３がオン状態からオフ状態となり、ビット線ＢＬおよび！ＢＬは、１／２ＶＤＤ線から切り離されるが、ビット線ＢＬおよび！ＢＬの容量によって、しばらくは、ＶＤＤ／２の電位に保持されたままとなる。さらに、ワード線ＷＬがＬレベルからＨレベルになると、ビット線ＢＬとコンデンサ２５とが接続され、ビット線ＢＬの電位は、電圧ＶＤＤ／２から、コンデンサ２５にチャージされている電荷の分だけ変化する。そして、ＳＡ６iが動作状態となると、ＳＡ６iにおいて、ビット線ＢＬの電位の変化分が差動増幅される。即ち、ＳＡ６iでは、コンデンサ２５の電圧が、電圧ＶＤＤ／２を基準電圧として差動増幅される。
【００５６】
その後、図３（Ｆ）に示すように、ＦＥＴ２４およびコンデンサ２５でなるメモリセルの列アドレスが列デコーダ３Ｃに与えられると、列デコーダ３Ｃは、その列アドレスをデコードし、さらに、そのデコード結果にしたがって、ＦＥＴ２４およびコンデンサ２５でなるメモリセルの列のカラムスイッチ７iを、オフ状態からオン状態にするように、列ドライバ４Ｃを制御する。列ドライバ４Ｃは、この制御にしたがい、カラムスイッチ７iに接続された列デコード線ＹＬを、図３（Ｇ）に示すように、ＬレベルからＨレベルにする。
【００５７】
列デコード線ＹＬ上のＨレベルは、カラムスイッチ７iとしてのＦＥＴ３０および３１のゲートに印加される。これにより、ＦＥＴ３０および３１は、オフ状態からオン状態になり、ビット線ＢＬはデータバスＤと、ビット線！ＢＬはデータバス！Ｄと、それぞれ、電気的に接続される。
【００５８】
データの読み出し時においては、上述のようにして、ビット線ＢＬおよび！ＢＬとデータバスＤおよび！Ｄとが接続されることにより、ＳＡ６iで差動増幅されたコンデンサ２５の電圧、即ち、ＦＥＴ２４およびコンデンサ２５でなるメモリセルに記憶されていたデータが、図３（Ｈ）に示すように、データバスＤおよび！Ｄ上に出力される（データバスＤには、メモリセルに記憶されていたデータが、データバス！Ｄには、メモリセルに記憶されていたデータの反転が、それぞれ出力される）。
【００５９】
一方、データの書き込み時においては、上述のようにして、ビット線ＢＬおよび！ＢＬとデータバスＤおよび！Ｄとが接続された後、図３（Ｉ）に示すように、書き込み対象のデータが、データバスＤ上に出力される。そして、その書き込み対象のデータに対応する電荷が、ビット線ＢＬおよびＦＥＴ２４を介して、コンデンサ２５にチャージされ、これにより、書き込み対象のデータが、ＦＥＴ２４およびコンデンサ２５でなるメモリセルに記憶される。
【００６０】
次に、図１のＤＲＡＭチップの動作について説明する。
【００６１】
ＤＲＡＭチップには、データを読み書きするメモリセルを特定するためのアドレス、ＲＡＳ信号、ＣＡＳ信号等が入力され、アドレスが、行アドレスラッチ回路２Ｒおよび列アドレスラッチ回路２Ｃに供給されるとともに、ＲＡＳ信号またはＣＡＳ信号が、バッファ１Ｒまたは１Ｃにそれぞれ供給される。
【００６２】
バッファ１Ｒまたは１Ｃでは、ＲＡＳ信号またはＣＡＳ信号に基づいて、所定の同期信号が生成され、行アドレスラッチ回路２Ｒまたは列アドレスラッチ回路２Ｃにそれぞれ供給される。行アドレスラッチ回路２Ｒは、バッファ１Ｒからの同期信号に同期して、そこに供給されるアドレスを、行アドレスとしてラッチし、行デコーダ３Ｒに出力する。また、列アドレスラッチ回路２Ｃは、バッファ１Ｃからの同期信号に同期して、そこに供給されるアドレスを、列アドレスとしてラッチし、列デコーダ３ＣおよびＡＴＤ回路８に供給する。
【００６３】
ここで、ＡＴＤ回路８に供給された列アドレスは、上述したようなＡＴＤ信号とされ、さらに、ＡＮＤゲート９を介することで、ショート信号ＣＹとされる。そして、このショート信号ＣＹは、上述したように、列ドライバ４Ｃに対して、データバスＤおよび！Ｄをショートするタイミングを指示する信号として与えられる。
【００６４】
データの読み出し時においては、以上のようにして行デコーダ３Ｒに与えられる行アドレスと、列デコーダ３Ｃに与えられる列アドレスとによって特定されるメモリセルから、図２および図３で説明したようにして、データが読み出され、そのデータが、データバスＤおよび！Ｄ上に出力される（但し、データバス！Ｄ上には、メモリセルから読み出されたデータの反転が出力される）。
【００６５】
データバスＤおよび！Ｄ上に出力されたデータは、ＭＡ１０で増幅され、出力バッファ１１に供給される。また、出力バッファ１１には、上述したように、バッファ１Ｃにおいて生成されたＤout制御信号が供給されるようになされており、出力バッファ１１では、そのＤout制御信号にしたがって、ＭＡ１０からのデータがラッチされ、出力端子Ｄoutから出力される。
【００６６】
一方、データの書き込み時においては、入力端子Ｄinに書き込み対象のデータが入力され、入力バッファ１２でラッチされる。入力バッファ１２でラッチされたデータは、記録アンプ１３で増幅され、データバスＤおよび！Ｄ上に出力される。そして、このデータバスＤおよび！Ｄ上のデータは、上述したようにして行デコーダ３Ｒに与えられる行アドレスと、列デコーダ３Ｃに与えられる列アドレスとによって特定されるメモリセルに、図２および図３で説明したようにして書き込まれる。
【００６７】
なお、図１のＤＲＡＭチップでは、行デコーダ３Ｒに与えられる行アドレスと、列デコーダ３Ｃに与えられる列アドレスとの１組によって、一度には、１のメモリセル（または、あるワード線上の、複数のメモリセルでなる１セットのメモリセル群）しか指定することができないから、データの読み出しと書き込みとは、別々のタイミングでしか行うことができない。即ち、データの読み出しと書き込みとを、同時に行うことはできない。
【００６８】
次に、図４は、データの書き込みと読み出しとを同時に行うことができるＤＲＡＭチップの一実施の形態の構成例を示している。なお、図中、図１における場合と対応する部分には、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【００６９】
図４のＤＲＡＭチップにおいては、列アドレスラッチ回路２Ｃ、列デコーダ３Ｃ、列ドライバ４Ｃ、カラムスイッチ７i，ＡＴＤ回路８，ＡＮＤゲート９と並列に、それぞれと同様に構成される列アドレスラッチ回路１０２Ｃ、列デコーダ１０３Ｃ（第３のデコード手段）、列ドライバ１０４Ｃ、カラムスイッチ１０７i，ＡＴＤ回路１０８，ＡＮＤゲート１０９がさらに設けられている。
【００７０】
従って、図４の実施の形態では、列アドレスラッチ回路、列デコーダ、列ドライバ、カラムスイッチ，ＡＴＤ回路，ＡＮＤゲートそれぞれが２つずつ設けられており、これに対応して、データバスも、カラムスイッチ７iと接続されるデータバスＤWおよび！ＤWの他に、カラムスイッチ１０７iと接続されるデータバスＤRおよび！ＤRが設けられている。
【００７１】
ここで、図４のデータバスＤWおよび！ＤWは、図１のデータバスＤおよび！Ｄに対応するものであるが、データバスＤRおよび！ＤRと区別するために、図４では、データバスＤWおよび！ＤWと記述してある。
【００７２】
図４のＤＲＡＭチップでは、例えば、列アドレスラッチ回路２Ｃ、列デコーダ３Ｃ、列ドライバ４Ｃ、カラムスイッチ７i，ＡＴＤ回路８，ＡＮＤゲート９を、データの書き込み用のものとし、列アドレスラッチ回路１０２Ｃ、列デコーダ１０３Ｃ、列ドライバ１０４Ｃ、カラムスイッチ１０７i，ＡＴＤ回路１０８，ＡＮＤゲート１０９を、データの読み出し用のものとして、それぞれ使用することで、ある行の、異なる列のメモリセル（または、ある行の複数のメモリセルでなる１のメモリセル群と、他の１のメモリセル群）に対して、データの読み出しと書き込みとを同時に行うことができるようになされている。
【００７３】
即ち、行アドレスラッチ回路２Ｒには、データの読み書きを同時に行うメモリセルの行の行アドレスが供給されてラッチされる。行アドレスラッチ回路２Ｒでラッチされた行アドレスは、行デコーダ３Ｒに供給される。
【００７４】
また、列アドレスラッチ回路２Ｃには、データの書き込みを行うメモリセルの列の列アドレスＷが供給されてラッチされる。さらに、列アドレスラッチ回路１０２Ｃには、データの読み出しを行うメモリセルの列の列アドレスＲが供給されてラッチされる。列アドレスラッチ回路２Ｃまたは１０２Ｃでラッチされた列アドレスＷまたはＲは、それぞれ列デコーダ３Ｃまたは１０３Ｃに供給される。
【００７５】
ここで、列アドレスラッチ回路２Ｃでラッチされた列アドレスＷは、図１における場合と同様に、ＡＴＤ回路８にも供給され、列ドライバ４Ｃに対して、データバスＤWおよび！ＤWをショートするタイミングを指示する信号として与えられる。同様に、列アドレスラッチ回路１０２Ｃでラッチされた列アドレスＲは、ＡＴＤ回路１０８にも供給され、列ドライバ１０４Ｃに対して、データバスＤRおよび！ＤRをショートするタイミングを指示する信号として与えられる。
【００７６】
一方、入力端子Ｄinには、書き込み対象のデータが入力され、入力バッファ１２でラッチされる。入力バッファ１２でラッチされたデータは、記録アンプ１３で増幅され、データバスＤWおよび！ＤW上に出力される。そして、このデータバスＤWおよび！ＤW上のデータは、行デコーダ３Ｒに与えられる行アドレスと、列デコーダ３Ｃに与えられる列アドレスＷとによって特定されるメモリセルに、図２および図３で説明したようにして書き込まれる。
【００７７】
さらに、行デコーダ３Ｒに与えられる行アドレスと、列デコーダ１０３Ｃに与えられる列アドレスＲとによって特定されるメモリセルから、図２および図３で説明した場合と同様にして、データが読み出され、そのデータが、データバスＤRおよび！ＤR上に出力される（但し、データバス！ＤR上には、メモリセルから読み出されたデータの反転が出力される）。
【００７８】
データバスＤRおよび！ＤR上に出力されたデータは、ＭＡ１０で増幅され、出力バッファ１１に供給される。また、出力バッファ１１には、バッファ１Ｃにおいて生成されたＤout制御信号が供給されるようになされており、出力バッファ１１では、そのＤout制御信号にしたがって、ＭＡ１０からのデータがラッチされ、出力端子Ｄoutから出力される。
【００７９】
以上のようにして、ある行アドレスと列アドレスＷとで特定されるメモリセルへのデータの書き込みと、その行アドレスと他の列アドレスＲとで特定されるメモリセルへのデータの読み出しとが同時に行われる。
【００８０】
次に、図５は、図４のメモリセルアレイ５，ＳＡ６i、カラムスイッチ７i、およびカラムスイッチ１０７iの構成例を示している。なお、図中、図２における場合と対応する部分については、同一の符号を付してある。即ち、図５の回路は、カラムスイッチ１０７iが新たに設けられている他は、図２における場合と同様に構成されている。
【００８１】
カラムスイッチ１０７iは、カラムスイッチ７iに対して並列に設けられている。
【００８２】
即ち、カラムスイッチ１０７iは、ＦＥＴ（ＮチャネルＦＥＴ）４１乃至４４で構成されている。ＦＥＴ４１のゲートは、ビット線ＢＬに接続されており、そのソースは、ＦＥＴ４２のドレインと接続されている。ＦＥＴ４２のソースは、データバスＤRに接続されており、そのゲートは、ＦＥＴ４４のゲートと接続されている。また、ＦＥＴ４１のドレインは、ＦＥＴ４３のドレインと接続されており、そのドレインどうしの接続点は接地されている。さらに、ＦＥＴ４３のゲートは、ビット線！ＢＬに接続されており、そのソースは、ＦＥＴ４４のドレインと接続されている。ＦＥＴ４４のソースは、データバス！ＤRに接続されている。そして、ＦＥＴ４２および４４のゲートどうしの接続点は、列デコード線ＹＬＲに接続されている。
【００８３】
列デコード線ＹＬＲは、列ドライバ１０４Ｃによって駆動されるようになされており、これにより、カラムスイッチ１０７iを構成するＦＥＴ４２および４４がオン／オフする。そして、ＦＥＴ４２および４４がオン状態とされた場合には、データバスＤRには、ＦＥＴ４１および４２を介して、ビット線ＢＬ上の電圧（ＳＡ６iにおいて、コンデンサ２５の電圧が差動増幅されてラッチされたもの）が出力され、データバス！ＤRには、ＦＥＴ４３および４４を介して、ビット線！ＢＬ上の電圧が出力される。
【００８４】
なお、図５では、図２における列デコード線ＹＬを、列デコード線ＹＬＷと記述してある。
【００８５】
次に、その動作について説明する。
【００８６】
いま、行デコーダ３Ｒに対して、メモリセルアレイ５の第ｍ行のメモリセルの行アドレスｍが与えられ（但し、ｍは１乃至Ｍの範囲の整数値）、列デコーダ３Ｃまたは１０３Ｃに対して、メモリセルアレイ５の第ｎ１または第ｎ２列のメモリセルの列アドレスｎ１またはｎ２がそれぞれ与えられたとする（但し、ｎ１，ｎ２は、１乃至Ｎの範囲の整数値で、ｎ１≠ｎ２）。
【００８７】
この場合、図３で説明した場合と同様に、ビット線イコライズ信号がＨレベルからＬレベルにされ（図３（Ａ））、行ドライバ４Ｒによって、第ｍ行のワード線ＷＬがＬレベルからＨレベルにされる（図３（Ｂ））（第ｍ行のメモリセルが指定される）。さらに、センスアンプＨ信号が、ＬレベルからＨレベルにされ（図３（Ｃ））、センスアンプＬ信号が、ＨレベルからＬレベルにされる（図３（Ｄ））。これにより、ＳＡ６1乃至６Nが動作状態となる。
【００８８】
ＳＡ６1乃至６Nが動作状態となると、それぞれにおいて、ビット線ＢＬ上に現れる、行アドレスｍによって指定される第ｍ行のメモリセルを構成するコンデンサ２５の電圧が差動増幅されてラッチされる。その結果、図３（Ｅ）に示したように、ビット線ＢＬの電圧は、ＶＤＤ／２から、ＨまたはＬレベルのうちの一方に、ビット線！ＢＬの電圧は、ＶＤＤ／２から他方に、それぞれ変化する。
【００８９】
そして、列ドライバ４Ｃは、第ｎ１列のカラムスイッチ７n1に接続された列デコード線ＹＬＷを、図３（Ｇ）に示したように、ＬレベルからＨレベルにし、これにより、第ｎ１列のカラムスイッチ７n1は、オフ状態からオン状態にされる。従って、第ｎ１列のビット線ＢＬおよび！ＢＬは、データバスＤWおよび！ＤWと、電気的に接続される。
【００９０】
その後、書き込み対象のデータが、入力バッファ１２および記録アンプ１３を介して、データバスＤWおよび！ＤW上に出力されると、その書き込み対象のデータに対応する電荷が、第ｎ１列のビット線ＢＬおよびＦＥＴ２４を介して、コンデンサ２５にチャージされ、これにより、書き込み対象のデータが、ＦＥＴ２４およびコンデンサ２５でなる、第ｍ行第ｎ１列のメモリセルに記憶される。
【００９１】
一方、列ドライバ１０４Ｃは、第ｎ２列のカラムスイッチ１０７n2に接続された列デコード線ＹＬＲを、図３（Ｇ）に示したように、ＬレベルからＨレベルにし、これにより、第ｎ２列のカラムスイッチ１０７n2は、オフ状態からオン状態にされる。従って、第ｎ２列のビット線ＢＬおよび！ＢＬは、データバスＤRおよび！ＤRと、電気的に接続される。
【００９２】
このように、第ｎ２列のビット線ＢＬおよび！ＢＬとデータバスＤRおよび！ＤRとが接続されることにより、第ｎ２列のＳＡ６n2で差動増幅されたコンデンサ２５の電圧、即ち、ＦＥＴ２４およびコンデンサ２５でなる、第ｍ行第ｎ２列のメモリセルに記憶されていたデータが、データバスＤRおよび！ＤR上に出力される（データバスＤRには、メモリセルに記憶されていたデータが、データバス！ＤRには、メモリセルに記憶されていたデータの反転が、それぞれ出力される）。このデータバスＤRおよび！ＤR上のデータは、ＭＡ１０および出力バッファ１１を介して出力される。
【００９３】
以上のようにして、第ｍ行第ｎ１列のメモリセルへのデータの書き込みと、第ｍ行第ｎ２列のメモリセルからのデータの読み出しとが同時に行われる。
【００９４】
即ち、図４のＤＲＡＭチップでは、第ｍ行第ｎ列のメモリセルを、データの読み書きが可能な状態にするための２つのカラムスイッチ７iおよび１０７iが、並列に配置されているので、ある第ｍ行のメモリセルの中の、第ｎ１列にあるものと、第ｎ２列にあるものとのうちの、いずれか一方に、データの書き込みを行い、他方から、データの読み出しを行うことができる。
【００９５】
次に、図４のＤＲＡＭチップでは、カラムスイッチ７iをオン／オフするための列デコーダ３Ｃおよび列ドライバ４Ｃと、カラムスイッチ１０７iをオン／オフするための列デコーダ１０３Ｃおよび列ドライバ１０４Ｃとが設けられており、これを利用することで、ＤＲＡＭチップにおいて、データのシャッフリングを行うことが可能となる。
【００９６】
即ち、図６は、データのシャッフリングを行うシャッフリング装置に適用可能なＤＲＡＭチップの一実施の形態の構成例を示している。なお、図中、図４における場合と対応する部分については、同一の符号を付してある。即ち、図６のＤＲＡＭチップは、列アドレスラッチ回路２Ｃまたは１１３Ｃそれぞれに替えて、ライトアドレスカウンタ１１２Ｃまたはリードアドレスカウンタ１１３Ｃが設けられている他は、図４における場合と同様に構成されている。
【００９７】
ライトアドレスカウンタ１１２Ｃには、ライトパルスが供給されるようになされており、ライトアドレスカウンタ１１２Ｃは、バッファ１Ｃからの同期信号、および行アドレスラッチ回路２Ｒからのラッチ完了信号ＬＣＨに同期しながら、かつライトパルスをカウントすることで、例えば、８ビットのカウント値を１ずつインクリメントしていく。そして、その８ビットのカウント値を、ライトアドレスとしての列アドレスＷとして出力するようになされている。
【００９８】
リードアドレスカウンタ１１３Ｃには、リードパルスが供給されるようになされており、リードアドレスカウンタ１１３Ｃは、バッファ１Ｃからの同期信号、および行アドレスラッチ回路２Ｒからのラッチ完了信号ＬＣＨに同期しながら、かつリードパルスをカウントすることで、例えば、８ビットのカウント値を１ずつインクリメントしていく。そして、その８ビットのカウント値を、リードアドレスとしての列アドレスＲとして出力するようになされている。
【００９９】
ここで、上述したように、列アドレスＷまたはＲは、列デコーダ３Ｃまたは１０３Ｃにそれぞれ供給されるようになされているが、列デコーダ３Ｃおよび１０３Ｃの構成が完全に同一であり、従って、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果が同一のものとなるようになされている場合には、図４で説明したような、データの書き込みと読み出しとを同時に行うことができるＤＲＡＭチップを実現することができる。
【０１００】
これに対して、図６のＤＲＡＭチップでは、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果が異なるものとなるようになされている。
【０１０１】
即ち、例えば、いま、列アドレスＷ，Ｒが、８ビットであるとすると（従って、説明を簡単にするために、１の列アドレスを、１列のメモリセルに対応させると、メモリセルアレイの列数Ｎは２５６（＝２8））、列デコーダ３Ｃは、例えば、図７（Ａ）に示すように、列アドレスＷが、０，１，２，・・・，２５５（＝２8−１）のとき、そのデコード結果として、列ドライバ４Ｃに、カラムスイッチ７1，７2，７3，・・・，７256をオンにさせるようになされている。また、列デコーダ１０３Ｃは、例えば、図７（Ｂ）に示すように、列アドレスＲが、０，１，２，・・・，２５５のとき、そのデコード結果として、列ドライバ１０４Ｃに、カラムスイッチ１０７256，１０７255，１０７254，・・・，１０７0をオンにさせるようになされている。
【０１０２】
なお、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果は、８ビットで表現されるアドレスの少なくとも一部について異なれば良く、８ビットで表現されるアドレスのすべてについて異なる必要はない。即ち、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果は、８ビットで表現されるあるアドレスＡが入力されたときに同一であっても、他のアドレスＢが入力されたときに異なれば良い。
【０１０３】
以上のように、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果が異なるものとなるようになされている結果、図６のＤＲＡＭチップでは、高速なシャッフリングを行うことができる。
【０１０４】
即ち、図８は、図６のＤＲＡＭチップを利用したシャッフリング装置の一実施の形態の構成例を示している。
【０１０５】
ＤＲＡＭチップ１２１は、図６のＤＲＡＭチップと同様に構成され、そこには、ライトアドレス制御信号およびリードアドレス制御信号が供給されるようになされている。なお、図８のＤＲＡＭチップ１２１の入出力端子（Ｉ／Ｏ）は、図６の入力端子Ｄinおよび出力端子Ｄoutに対応している。
【０１０６】
Ｉ／Ｏセレクタ１２２は、そこに入力されるシャッフリング対象のディジタル画像データを、ＤＲＡＭチップ１２１の入出力端子に供給するとともに、ＤＲＡＭチップ１２１の入出力端子から供給されるシャッフリングデータ（シャッフリングされた画像データ）を出力するようになされている。
【０１０７】
以上のように構成されるシャッフリング装置では、まず最初に、ライトアドレス制御信号が、ＤＲＡＭチップ１２１に供給されるととともに、シャッフリング対象の画像データが、Ｉ／Ｏセレクタ１２２に供給される。
【０１０８】
Ｉ／Ｏセレクタ１２２は、そこに供給される画像データを、順次、ＤＲＡＭチップ１２１の入出力端子に出力する。ＤＲＡＭチップ１２１では、Ｉ／Ｏセレクタ１２２からの画像データが、入力端子Ｄin、入力バッファ１２、および記録アンプ１３を介して、データバスＤW上に出力される。
【０１０９】
また、ライトアドレス制御信号は、行アドレスとライトパルスから構成されており、ＤＲＡＭチップ１２１（図６）において、行アドレスは、行アドレスラッチ回路２Ｒに、ライトパルスは、ライトアドレスカウンタ１１２Ｃに、それぞれ供給される。
【０１１０】
行アドレスラッチ回路２Ｒは、そこに供給される行アドレスをラッチし、行デコーダ３Ｒに出力する。行デコーダ３Ｒは、行アドレスラッチ回路２Ｒからの行アドレスをデコードし、そのデコード結果にしたがって、行ドライバ４Ｒを制御する。これにより、メモリセルアレイ５の、対応する行のワード線ＷＬ（図５）がＨレベルにされる。
【０１１１】
一方、ライトアドレスカウンタ１１２Ｃは、ライトパルスをカウントし、そのカウント値を、列アドレスＷとして、列デコーダ３Ｃに出力する。列デコーダ３Ｃは、ライトアドレスカウンタ１１２Ｃからの列アドレスＷをデコードし、そのデコード結果にしたがって、列ドライバ４Ｃを制御する。これにより、対応するカラムスイッチ７iがオンにされ、メモリセルアレイ５の、対応する列のビット線ＢＬおよび！ＢＬが、データバスＤWおよび！ＤWと接続される。
【０１１２】
その結果、Ｈレベルにされたワード線ＷＬの行の、データバスＤWおよび！ＤWと接続されたビット線ＢＬおよび！ＢＬの列にあるメモリセルに、データバスＤW上に出力された画像データが書き込まれる。
【０１１３】
そして、例えば、１フレーム（あるいは、１フィールド）の画像データの書き込みが終了すると、リードアドレス制御信号が、ＤＲＡＭチップ１２１に供給される。
【０１１４】
リードアドレス制御信号は、行アドレスとリードパルスから構成されており、ＤＲＡＭチップ１２１（図６）において、行アドレスは、行アドレスラッチ回路２Ｒに、リードパルスは、リードアドレスカウンタ１１３Ｃに、それぞれ供給される。
【０１１５】
行アドレスラッチ回路２Ｒ、行デコーダ３Ｒ、および行ドライバ４Ｒでは、画像データをメモリセルアレイ５に書き込んだ場合と同様の処理が行われ、これにより、メモリセルアレイ５の、対応する行のワード線ＷＬ（図５）がＨレベルにされる。なお、リードアドレス制御信号に含まれる行アドレスは、ライトアドレス制御信号に含まれる行アドレスと異なっていても良いし、同一であっても良い。
【０１１６】
一方、リードアドレスカウンタ１１３Ｃは、リードパルスをカウントし、そのカウント値を、列アドレスＲとして、列デコーダ１０４Ｃに出力する。列デコーダ１０４Ｃは、リードアドレスカウンタ１１３Ｃからの列アドレスＲをデコードし、そのデコード結果にしたがって、列ドライバ１０４Ｃを制御する。これにより、対応するカラムスイッチ１０７iがオンにされ、メモリセルアレイ５の、対応する列のビット線ＢＬおよび！ＢＬが、データバスＤWおよび！ＤWと接続される。
【０１１７】
その結果、Ｈレベルにされたワード線ＷＬの行の、データバスＤWおよび！ＤWと接続されたビット線ＢＬおよび！ＢＬの列にあるメモリセルに記憶された画像データが読み出され、データバスＤWおよび！ＤW上に出力される。
【０１１８】
データバスＤW（！ＤW）上に出力された画像データは、ＭＡ１０、出力バッファ１１、および出力端子Ｄoutを介して、Ｉ／Ｏセレクタ１２２に供給される。Ｉ／Ｏセレクタ１２２は、以上のようにしてＤＲＡＭチップ１２１から供給される画像データを出力する。
【０１１９】
なお、メモリセル５に記憶された１フレームの画像データの読み出しは、例えば、垂直ブランキング期間内に行われ、次のフレームの画像データの供給が開始されると、上述した、ＤＲＡＭチップ１２１への画像データの書き込みが、再び行われる。
【０１２０】
上述したように、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果が異なるものとなるようになされているため、画像データがＤＲＡＭチップ１２１に書き込まれるアドレスの順番と、画像データがＤＲＡＭチップから読み出されるアドレスの順番も異なるものとなり、その結果、前述したようなアドレス変換用のメモリを設けることことなく、Ｉ／Ｏセレクタ１２２からは、シャッフリングされた画像データ（シャッフリングデータ）が出力される。従って、アドレス変換用のメモリへのアクセスによる処理の遅延がないため、画像のシャッフリングを、高速に行うことができる。
【０１２１】
さらに、図８のシャッフリング装置を構成するＤＲＡＭチップ１２１（図６）では、図１に示したＤＲＡＭチップに比較して、列デコーダ３Ｃおよび列ドライバ４Ｃ等の他に、列デコーダ１０３Ｃおよび列ドライバ１０４Ｃが必要となるが、図２７における場合のように、ラインメモリは必要ないため、シャッフリング装置をＬＳＩ（Large Scale Integration）化する場合に、図２７における場合に比較して、チップサイズを小さくすることができる。
【０１２２】
なお、画像データのシャッフリングは、単純には、画像データを書き込むときと読み出すときのアドレスの順番を異なるものにすれば良く、それ以外の制約は特にない。従って、画像データの書き込み時においては、画像データを、ラインスキャン順に対応するアドレスに書き込む必要はない。
【０１２３】
次に、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果を異なるものとすることは、例えば、列デコーダ３Ｃと列デコーダ４Ｃとの間のコンタクト（結線）と、列デコーダ１０３Ｃと列デコーダ１０４Ｃとの間のコンタクトとを異なるものとすることで実現することができる。
【０１２４】
ところで、列デコーダ３Ｃと列デコーダ４Ｃとの間のコンタクトと、列デコーダ１０３Ｃと列デコーダ１０４Ｃとの間のコンタクトとを異なるものとすることにより、列デコーダ３Ｃと１０３Ｃとにおけるデコード結果が異なるものとなるようにした場合においては、シャッフリングのパターンを変更するときに、列デコーダ３Ｃと列デコーダ４Ｃとの間のコンタクトや、列デコーダ１０３Ｃと列デコーダ１０４Ｃとの間のコンタクトを変更する必要があり、面倒である。
【０１２５】
そこで、図９は、データのシャッフリングを行うシャッフリング装置に適用可能なＤＲＡＭチップの他の一実施の形態の構成例を示している。なお、図中、図６における場合と対応する部分については、同一の符号を付してある。即ち、図９のＤＲＡＭチップは、列デコーダ１０３Ｃに替えて、列デコーダ１３１Ｃが設けられている他は、図６における場合と同様に構成されている。
【０１２６】
列デコーダ１３１Ｃ（第３のデコード手段）は、そのデコード結果をプログラマブルに変更することができるものとなっており、例えば、その記憶内容によって記憶内容を読み出す検索動作を行うことができるＣＡＭ（Content Addressable Memory）（連想メモリ）で構成されている。即ち、２Kが、メモリセルアレイ５の列数Ｎに等しい場合には、列アドレスＷ，Ｒは、Ｋビットで与えられるが（但し、１の列アドレスに、ある１列のメモリセルが対応するものとする）、この場合、列デコーダ１３１Ｃは、行方向にＮ（＝２K）個、列方向にＫ個のＣＡＭセルが配置されて構成される。なお、図９において、列デコーダ１３１Ｃには、端子ＣＥCAM，ＷＥCAM，ＤCAM，ＡＤＤCAMが設けられているが、端子ＣＥCAMまたはＷＥCAMは、列デコーダ１３１Ｃを構成するＣＡＭに対して、チップイネーブル信号またはライトイネーブル信号を供給するための端子である。また、端子ＤCAMは、列デコーダ１３１Ｃを構成するＣＡＭに対して書き込むデータを供給するための端子であり、端子ＡＤＤCAMは、端子ＤCAMから供給されるデータを書き込むアドレスを供給するための端子である。
【０１２７】
図１０は、Ｋ＝８の場合（列アドレスＷ，Ｒが８ビットで与えられる場合）の列デコーダ１３１Ｃの構成例を示している。
【０１２８】
同図に示すように、列デコーダ１３１は、行方向に２５６（＝２8）個、列方向に８個のＣＡＭセルが配置されて構成されている。
【０１２９】
第ｉ行ｊ列に配置されたＣＡＭセルｉ＿ｊのマッチ線、ワード線、検索イネーブル線は、その上に配置されたＣＡＭセルｉ−１＿ｊのマッチ線、ワード線、検索イネーブル線とそれぞれ接続されている他、その下に配置されたＣＡＭセルｉ＋１＿ｊのマッチ線、ワード線、検索イネーブル線ともそれぞれ接続されている（但し、ｉ＝１，２，・・・，Ｋ：ｊ＝１，２，・・・，Ｎ）。
【０１３０】
そして、第１行第ｊ列に配置されたＣＡＭセル１＿ｊのマッチ線Ｍ＃ｊは、列ドライバ１０４Ｃの、カラムスイッチ１０７jのオン／オフを制御する部分（図５における列デコード線ＹＬＲに相当する部分）に結線されている。また、第８行ｊ列に配置されたＣＡＭセル８＿ｊの検索イネーブル線どうしが接続されており、これが、検索イネーブル線Ｓとされている。さらに、第８行ｊ列に配置されたＣＡＭセル８＿ｊのワード線は、ワード線ＷＬ＃ｊとされている。
【０１３１】
また、第ｉ行ｊ列に配置されたＣＡＭセルｉ＿ｊのビット線は、その左に配置されたＣＡＭセルｉ＿ｊ−１のビット線と接続されている他、その右に配置されたＣＡＭセルｉ＿ｊ＋１のビット線とも接続されている。なお、第ｉ行第１列のＣＡＭセルｉ＿１の正論理または負論理のビット線は、それぞれ、ビット線ＢＬ＃ｉまたは！ＢＬ＃ｉとされている。
【０１３２】
次に、図１１は、図１０のＣＡＭセルｉ＿ｊの構成例を示している。
【０１３３】
ＦＥＴ（ＰチャネルＦＥＴ）５１のソースには、所定のＨレベルが印加されており、そのゲートは、ＦＥＴ（ＮチャネルＦＥＴ）５３のゲートと接続されている。また、ＦＥＴ５１のドレインは、ＦＥＴ（ＮチャネルＦＥＴ）５２のソースと接続されている。そして、ＦＥＴ５２のゲートは、ワード線ＷＬ＃ｊと接続されており、そのドレインは、ビット線ＢＬ＃ｉと接続されている。
【０１３４】
ＦＥＴ５３のドレインは、ＦＥＴ５１のドレインとＦＥＴ５２のソースとの接続点に接続されており、そのソースには、所定のＬレベルが印加されている。
【０１３５】
ＦＥＴ（ＰチャネルＦＥＴ）５４のソースには、所定のＨレベルが供給されており、そのゲートは、ＦＥＴ５１のドレインとＦＥＴ５２のソースとの接続点に接続されている。また、ＦＥＴ５４のドレインは、ＦＥＴ５１および５３のゲートどうしの接続点に接続されている。さらに、ＦＥＴ５４のドレインは、ＦＥＴ（ＮチャネルＦＥＴ）５５のソース、およびＦＥＴ（ＮチャネルＦＥＴ）５６のドレインとも接続されている。
【０１３６】
ＦＥＴ５５のゲートは、ワード線ＷＬ＃ｊと接続されており、そのドレインは、ビット線！ＢＬ＃ｉと接続されている。ＦＥＴ５６のゲートは、ＦＥＴ５４のゲートと接続されており、そのソースには、所定のＬレベルが印加されている。
【０１３７】
ここで、以上のＦＥＴ５１乃至５６が、一般的なメモリセルを構成しており、その構成は、いわゆる６トランジスタのＣＭＯＳ（Complementary Metal Oxide Semiconductor）型のＳＲＡＭ（Static RAM）のメモリセルと、基本的に同一である。
【０１３８】
ＦＥＴ（ＮチャネルＦＥＴ）５７のソースは、ビット線ＢＬ＃ｉに接続されており、そのゲートは、検索イネーブル線Ｓに接続されている。また、ＦＥＴ５７のドレインは、ＦＥＴ（ＮチャネルＦＥＴ）５８のソースに接続されている。ＦＥＴ５８のゲートは、ＦＥＴ５６のゲートに接続されており、そのドレインは、ＦＥＴ（ＮチャネルＦＥＴ）５９のドレインに接続されている。そして、ＦＥＴ５８および５９のドレインどうしの接続点は、マッチ線Ｍ＃ｊに接続されている。
【０１３９】
ＦＥＴ５９のゲートは、ＦＥＴ５３のゲートに接続されており、そのソースは、ＦＥＴ（ＮチャネルＦＥＴ）６０のドレインに接続されている。ＦＥＴ６０のゲートは、検索イネーブル線Ｓに接続されており、そのソースは、ビット線！ＢＬ＃ｉに接続されている。
【０１４０】
次に、その動作について説明する。
【０１４１】
まず、データの書き込み時においては、ワード線ＷＬ＃ｊがＬレベルからＨレベルにされる。これによりＦＥＴ５２および５５のゲートには、Ｈレベルが印加され、ＦＥＴ５２および５５は、オン状態になる。そして、ＦＥＴ５２または５５がオンになることにより、ビット線ＢＬ＃ｉまたは！ＢＬ＃ｉが、ＦＥＴ５４または５１のゲートと、それぞれ接続される（電気的に接続される）。
【０１４２】
いま、書き込み対象のデータとして、ビット線ＢＬ＃ｉ上に、１としてのＨレベルが出力されたとすると、ビット線！ＢＬ＃ｉ上には、その反転である０としてのＬレベルが出力される。
【０１４３】
ビット線ＢＬ＃ｉ上のＨレベルが、オン状態のＦＥＴ５２を介して、ＦＥＴ５４のゲートに印加され、これにより、ＦＥＴ５４はオフ状態になる。また、ＦＥＴ５４のゲートは、ＦＥＴ５６のゲートに接続されており、従って、ビット線ＢＬ＃ｉ上のＨレベルは、ＦＥＴ５６のゲートにも印加される。これにより、ＦＥＴ５６はオン状態になる。
【０１４４】
一方、ビット線！ＢＬ＃ｉ上のＬレベルは、オン状態のＦＥＴ５５を介して、ＦＥＴ５１のゲートに印加され、これにより、ＦＥＴ５１はオン状態になる。また、ＦＥＴ５１のゲートは、ＦＥＴ５３のゲートに接続されており、従って、ビット線！ＢＬ＃ｉ上のＬレベルは、ＦＥＴ５３のゲートにも印加される。これにより、ＦＥＴ５３はオフ状態になる。
【０１４５】
その後、ワード線ＷＬ＃ｊがＨレベルからＬレベルにされると、ＦＥＴ５２および５５のゲートには、Ｌレベルが印加され、ＦＥＴ５２および５５は、オフ状態になり、ＦＥＴ５１および５３のゲートは、ビット線！ＢＬ＃ｉから、ＦＥＴ５４および５６のゲートは、ビット線ＢＬ＃ｉから、それぞれ切り離される。
【０１４６】
このとき、上述したように、ＦＥＴ５１はオン状態に、ＦＥＴ５３はオフ状態に、ＦＥＴ５４はオフ状態に、ＦＥＴ５６はオン状態に、それぞれなっているから、ＦＥＴ５１および５３のドレインどうしの接続点はＨレベルになっており、ＦＥＴ５４および５６のドレインどうしの接続点はＬレベルになっている。従って、ＦＥＴ５１および５３のドレインどうしの接続点に接続されているＦＥＴ５１および５３のゲートには、Ｈレベルが印加され、ＦＥＴ５４および５６のゲートには、Ｌレベルが印加されるから、書き込み対象のデータが１であった場合には、ＦＥＴ５１はオン状態に、ＦＥＴ５３はオフ状態に、ＦＥＴ５４はオフ状態に、ＦＥＴ５６はオン状態に、それぞれ維持され、これにより書き込み対象のデータである１が記憶される。
【０１４７】
なお、逆に、書き込み対象のデータが０であった場合（書き込み対象のデータとして、ビット線ＢＬ＃ｉ上に、０としてのＬレベルが出力された場合）には、ＦＥＴ５１および５３のゲートには、Ｈレベルが、ＦＥＴ５４および５６のゲートには、Ｌレベルが、それぞれ印加され、これにより、ＦＥＴ５１はオフ状態に、ＦＥＴ５３はオン状態に、ＦＥＴ５４はオン状態に、ＦＥＴ５６はオフ状態に、それぞれ維持され、書き込み対象のデータである０が記憶される。
【０１４８】
次に、データの読み出しについてであるが、この場合も、ワード線ＷＬ＃ｊがＬレベルからＨレベルにされる。これによりＦＥＴ５２および５５のゲートには、Ｈレベルが印加され、ＦＥＴ５２および５５は、オン状態になる。そして、ＦＥＴ５２または５５がオンになることにより、ビット線ＢＬ＃ｉまたは！ＢＬ＃ｉが、ＦＥＴ５４または５１のゲートと、それぞれ接続される（電気的に接続される）。
【０１４９】
書き込まれたデータが１であった場合、上述したように、ＦＥＴ５４のゲートにはＨレベルが印加されており、従って、ビット線ＢＬ＃ｉ上には、このＨレベルが、読み出したデータとして出力される（ビット線！ＢＬ＃ｉ上には、ＦＥＴ５１に印加されているＬレベルが出力される）。一方、書き込まれたデータが０であった場合、上述したように、ＦＥＴ５４のゲートにはＬレベルが印加されており、従って、ビット線ＢＬ＃ｉ上には、このＬレベルが、読み出したデータとして出力される（ビット線！ＢＬ＃ｉ上には、ＦＥＴ５１に印加されているＨレベルが出力される）。
【０１５０】
次に、検索動作について説明する。
【０１５１】
検索動作時においては、ワード線ＷＬ＃ｊはＬレベルのままとされ、検索イネーブル線Ｓおよびマッチ線Ｍ＃ｊがＬレベルからＨレベルにされる。
【０１５２】
また、ビット線ＢＬ＃ｉおよび！ＢＬ＃ｉが、検索するデータに対応するレベルにされる。即ち、１（Ｈレベル）を検索する場合には、ビット線ＢＬ＃ｉまたは！ＢＬ＃ｉは、それぞれＨレベルまたはＬレベルとされ、０（Ｌレベル）を検索する場合には、ビット線ＢＬ＃ｉまたは！ＢＬ＃ｉは、それぞれＬレベルまたはＨレベルとされる。
【０１５３】
なお、検索を行わないＣＡＭセルのビット線ＢＬ＃ｉおよび！ＢＬ＃ｉは、いずれもＨレベルにされる。
【０１５４】
例えば、いま、ＣＡＭセルｉ＿ｊに１が記憶されているとすると、上述したように、ＦＥＴ５３または５６のゲートは、それぞれＬレベルまたはＨレベルになっている。従って、ＦＥＴ５３または５６のゲートと接続されているＦＥＴ５９または５８のゲートには、ＬレベルまたはＨレベルがそれぞれ印加され、これにより、ＦＥＴ５９または５８は、オフまたはオン状態になっている。
【０１５５】
また、検索イネーブル線ＳはＨレベルとされるから、ＦＥＴ５７および６０のゲートには、Ｈレベルが印加され、これにより、ＦＥＴ５７および６０はオン状態となる。従って、ＣＡＭセルに１が記憶されている場合には、ＦＥＴ５７乃至６０のうち、ＦＥＴ５７，５８，６０がオン状態となり、ＦＥＴ５９がオフ状態となることにより、マッチ線Ｍ＃ｊは、オン状態となっているＦＥＴ５８および５７を介して、ビット線ＢＬ＃ｉと接続される。
【０１５６】
そして、いま、検索するデータが、例えば、１であった場合には、上述したように、ビット線ＢＬ＃ｉはＨレベルとされるから、そのようなＨレベルのビット線ＢＬ＃ｉと、Ｈレベルのマッチ線Ｍ＃ｊとの間には電流が流れず、その結果、マッチ線Ｍ＃ｊは、Ｈレベルに維持される。
【０１５７】
また、検索するデータが、例えば、０であった場合には、上述したように、ビット線ＢＬ＃ｉはＬレベルとされるから、そのようなＬレベルのビット線ＢＬ＃ｉと、Ｈレベルのマッチ線Ｍ＃ｊとの間に電流が流れ、その結果、マッチ線Ｍ＃ｊは、ビット線ＢＬ＃ｉのレベルであるＬレベルに引き落とされる。
【０１５８】
一方、ＣＡＭセルｉ＿ｊに０が記憶されているとすると、上述したように、ＦＥＴ５３または５６のゲートは、それぞれＨレベルまたはＬレベルになっている。従って、ＦＥＴ５３または５６のゲートと接続されているＦＥＴ５９または５８のゲートには、ＨレベルまたはＬレベルがそれぞれ印加され、これにより、ＦＥＴ５９または５８は、オンまたはオフ状態になっている。
【０１５９】
また、検索イネーブル線ＳはＨレベルとされるから、ＦＥＴ５７および６０のゲートには、Ｈレベルが印加され、これにより、ＦＥＴ５７および６０はオン状態となる。従って、ＣＡＭセルに０が記憶されている場合には、ＦＥＴ５７乃至６０のうち、ＦＥＴ５７，５９，６０がオン状態となり、ＦＥＴ５８がオフ状態となることにより、マッチ線Ｍ＃ｊは、オン状態となっているＦＥＴ５９および６０を介して、ビット線！ＢＬ＃ｉと接続される。
【０１６０】
そして、いま、検索するデータが、例えば、１であった場合には、上述したように、ビット線！ＢＬ＃ｉはＬレベルとされるから、そのようなＬレベルのビット線！ＢＬ＃ｉと、Ｈレベルのマッチ線Ｍ＃ｊとの間に電流が流れ、その結果、マッチ線Ｍ＃ｊは、ビット線！ＢＬ＃ｉのレベルであるＬレベルに引き落とされる。
【０１６１】
また、検索するデータが、例えば、０であった場合には、上述したように、ビット線！ＢＬ＃ｉはＨレベルとされるから、そのようなＨレベルのビット線！ＢＬ＃ｉと、Ｈレベルのマッチ線Ｍ＃ｊとの間には電流が流れず、その結果、マッチ線Ｍ＃ｊは、Ｈレベルに維持される。
【０１６２】
従って、検索するデータと、ＣＡＭセルｉ＿ｊに記憶されているデータとが一致している場合には、マッチ線Ｍ＃ｊは、Ｈレベルに維持され、一致していない場合には、マッチ線Ｍ＃ｊは、ＨレベルからＬレベルにされる。
【０１６３】
その結果、図１０においては、ある第Ｊ列に注目した場合に、その第Ｊ列に配置されたＣＡＭセルｉ＿Ｊのマッチ線Ｍ＃Ｊは、相互に接続されているから、その第Ｊ列に配置されたすべてのＣＡＭセル１＿Ｊ乃至８＿Ｊにおいて、それぞれの記憶値と、ビット線ＢＬ１乃至ＢＬ８それぞれに入力されたデータとが一致した場合にのみ、マッチ線Ｍ＃ＪのレベルはＨレベルに維持され、ＣＡＭセル１＿Ｊ乃至８＿Ｊそれぞれの記憶値と、ビット線ＢＬ１乃至ＢＬ８それぞれに入力されたデータとの組み合わせのうち、１つでも一致しないものがあれば、マッチ線Ｍ＃ＪのレベルはＨレベルからＬレベルにされることになる。
【０１６４】
従って、図１０の列デコーダ１３１Ｃでは、ＣＡＭセル１＿Ｊ乃至８＿Ｊそれぞれに所定の値を記憶させておくことにより、その８つの記憶値でなる８ビットに一致する列アドレスＲがビット線ＢＬ１乃至ＢＬ８上に供給されたときにのみ、そのデコード結果として、カラムスイッチ１０７Jをオン状態にすることが可能となる。即ち、ＣＡＭセル１＿Ｊ乃至８＿Ｊそれぞれに記憶させておく値によって、列アドレスＲのデコード結果をプログラマブルに変更することができる。その結果、シャッフリングのパターンを、容易に変更することが可能となる。
【０１６５】
次に、図１０の列デコーダ１３１Ｃの動作について説明する。
【０１６６】
図９のＤＲＡＭチップを用いて、画像データなどのシャッフリングを初めて行う場合、あるいは、シャッフリングのパターンを変更したい場合には、列デコーダ１３１Ｃを構成するＣＡＭセル１＿１乃至８＿２５６のプログラムを行う（ＣＡＭセル１＿１乃至８＿２５６それぞれにデータを記憶させ、あるいは、それぞれの記憶値を変更する）。
【０１６７】
即ち、まず最初に、ビット線ＢＬ１および！ＢＬ１乃至ＢＬ８乃至！ＢＬ８、検索イネーブル線Ｓ、並びにワード線ＷＬ１乃至ＷＬ２５６をＬレベルにする。
【０１６８】
そして、ワード線ＷＬ１乃至ＷＬ２５６のうち、例えば、ワード線ＷＬ１だけをＬレベルからＨレベルにし、ビット線ＢＬ１乃至ＢＬ８を、カラムスイッチ１０７1をオン状態にするときに入力する列アドレスＲに対応するレベルにする。即ち、例えば、カラムスイッチ１０７1をオン状態にするときに入力する列アドレスＲを、その最下位ビットから、Ｂ１，Ｂ２，Ｂ３，Ｂ４，Ｂ５，Ｂ６，Ｂ７，Ｂ８とする場合には、ビット線ＢＬ１乃至ＢＬ８を、ビットＢ１乃至Ｂ８それぞれに対応するレベルにする。これにより、ＣＡＭセル１＿１乃至８＿１には、上述したようにして、ビットＢ１乃至Ｂ８がそれぞれ記憶される。
【０１６９】
次に、ワード線ＷＬ１乃至ＷＬ２５６のうち、例えば、ワード線ＷＬ２だけをＬレベルからＨレベルにし、ビット線ＢＬ１乃至ＢＬ８を、カラムスイッチ１０７2をオン状態にするときに入力する列アドレスＲに対応するレベルにする。即ち、例えば、カラムスイッチ１０７2をオン状態にするときに入力する列アドレスＲを、その最下位ビットから、Ｂ１’，Ｂ２’，Ｂ３’，Ｂ４’，Ｂ５’，Ｂ６’，Ｂ７’，Ｂ８’とする場合には、ビット線ＢＬ１乃至ＢＬ８を、ビットＢ１’乃至Ｂ８’それぞれに対応するレベルにする。これにより、ＣＡＭセル１＿１乃至８＿１には、上述したようにして、ビットＢ１’乃至Ｂ８’がそれぞれ記憶される。
【０１７０】
以下、同様の処理を、他のワード線ＷＬ３乃至ＷＬ２５６それぞれだけを、順次、ＬレベルからＨレベルにして行い、各列ごとのＣＡＭセルに、データを記憶させていく。
【０１７１】
なお、各列のＣＡＭセルに記憶させる８ビットのデータは、任意の２列に注目した場合に、異なる値になっている必要がある。これは、記憶されている８ビットのデータが一致している列が存在すると、メモリセルアレイ５を構成するメモリセルの多重選択が行われ、誤動作する場合があるからである。
【０１７２】
以上のようにして、ＣＡＭセル１＿１乃至８＿２５６にデータを記憶させた後は、次のようにして、列アドレスＲのデコード処理をすることができる。
【０１７３】
即ち、デコード処理を行う場合においては、検索イネーブル線Ｓ、マッチ線Ｍ１乃至Ｍ２５６、ワード線ＷＬ１乃至ＷＬ８がＨレベルにされる。そして、リードアドレスカウンタ１１３Ｃ（図９）から供給される列アドレスＲを構成する各ビットのうちの最下位ビットから最上位ビットそれぞれが、ビット線ＢＬ１乃至ＢＬ８に与えられる。ここで、マッチ線Ｍ１乃至Ｍ２５６をＨレベルにする処理は、例えば、列ドライバ１０４Ｃによって行われる。
【０１７４】
いま、例えば、リードアドレスカウンタ１１３Ｃから与えられた列アドレスＲが、その最下位ビットから、ｂ１，ｂ２，ｂ３，ｂ４，ｂ５，ｂ６，ｂ７，ｂ８であり、第Ｊ列のＣＡＭセル１＿Ｊ乃至８＿Ｊに、データｂ１，ｂ２，ｂ３，ｂ４，ｂ５，ｂ６，ｂ７，ｂ８と一致するデータが記憶されているとともに、他の列のＣＡＭセルには一致しないデータが記憶されているとすると、マッチ線Ｍ＃ＪのみがＨレベルに維持され、他のマッチ線はＬレベルになる。これにより、列ドライバ１０４Ｃにおいて、カラムスイッチ１０７Jのみがオンにされ、メモリセルアレイ５（図９）を構成する第Ｊ列のメモリセルからのデータの読み出しが行われる。
【０１７５】
次に、例えば、図６のＤＲＡＭチップは、デコード結果が異なる２つの列デコーダ３Ｃと１０３Ｃを有しているが、この構成を利用することで、画像を構成する画素の順序を任意に並べ替えることが可能となる。
【０１７６】
即ち、図１２は、画像を構成する画素の順序を任意の順序に並べ替える並べ替え装置に適用可能なＤＲＡＭチップの一実施の形態の構成例を示している。なお、図中、図６における場合と対応する部分については、同一の符号を付してある。即ち、図１２のＤＲＡＭチップは、ローテーション回路１４１および１４２が新たに設けられている他は、図６のＤＲＡＭチップと基本的に同様に構成されている。
【０１７７】
但し、図１２においては、バッファ１Ｒ，１Ｃ、行アドレスラッチ回路２Ｒ、行デコーダ３Ｒ、行デコーダ４Ｒ、列ドライバ４Ｃ、センスアンプ群６，ＡＴＤ回路８，ＡＮＤゲート９，ＭＡ１０、出力バッファ１１、入力バッファ１２、記録アンプ１３、列ドライバ１０４Ｃ、ＡＴＤ回路１０８，ＡＮＤゲート１０９、ライトアドレスカウンタ１１２Ｃ、およびリードアドレスカウンタ１１３Ｃの図示は省略してある。
【０１７８】
また、図１２では、図６のデータバスＤWが、４本のライトバスＤW1，ＤW2，ＤW3，ＤW4として示されており、図６のデータバスＤRも、４本のリードバスＤR1，ＤR2，ＤR3，ＤR4として示されている。そして、ライトバスＤW1の一端はカラムスイッチ７1乃至７4に、ライトバスＤW2の一端はカラムスイッチ７5乃至７8に、ライトバスＤW3の一端はカラムスイッチ７9乃至７12に、ライトバスＤW4の一端はカラムスイッチ７13乃至７16に、それぞれ接続されており、いずれの他端も、ローテンション回路１４１に接続されている。一方、リードバスＤR1の一端はカラムスイッチ１０７1乃至１０７4に、リードバスＤR2の一端はカラムスイッチ１０７5乃至１０７8に、リードバスＤR3の一端はカラムスイッチ１０７9乃至１０７12に、リードバスＤR4の一端はカラムスイッチ１０７13乃至１０７16に、それぞれ接続されており、いずれの他端も、ローテンション回路１４２に接続されている。
【０１７９】
さらに、図１２では、図６の列デコーダ３Ｃが、４つの列デコーダ３Ｃ1，３Ｃ2，３Ｃ3，３Ｃ4として示されており、図６の列デコーダ１０３Ｃも、４つの列デコーダ１０３Ｃ1，１０３Ｃ2，１０３Ｃ3，１０３Ｃ4として示されている。そして、列デコーダ３Ｃ1はカラムスイッチ７1乃至７4を、列デコーダ３Ｃ2はカラムスイッチ７5乃至７8を、列デコーダ３Ｃ3はカラムスイッチ７9乃至７12を、列デコーダ３Ｃ4はカラムスイッチ７13乃至７16を、それぞれ制御するようになされており、列デコーダ１０３Ｃ1はカラムスイッチ１０７1乃至１０７4を、列デコーダ１０３Ｃ2はカラムスイッチ１０７5乃至１０７8を、列デコーダ１０３Ｃ3はカラムスイッチ１０７9乃至１０７12を、列デコーダ１０３Ｃ4はカラムスイッチ１０７13乃至１０７16を、それぞれ制御するようになされている。
【０１８０】
即ち、列デコーダ３Ｃ1は、そこに列アドレスＷとして０，３，２，１が供給されたときのみ、カラムスイッチ７1乃至７4をそれぞれオンにし、ライトバスＤW1と、メモリセルアレイ５のメモリセル群５1乃至５4それぞれとを接続するようになされている。
【０１８１】
なお、図１２では、１６のメモリセル群５1乃至５16を図示してあるが、１のメモリセル群５iは、１画素の記憶に必要なメモリセルを表している（但し、ここでは、説明を簡単にするために、１画素には１ビットが割り当てられているものとしてあり、このため、１のメモリセル群５iは、１のメモリセルに等しい）。また、図１２では、１６のメモリセル群５1乃至５16は、例えば、同一のワード線ＷＬ上に設けられている。従って、メモリセル群５1乃至５16を対象として、データの読み書きを行う場合は、行アドレスは一定であるため、以下では、行アドレスに関する説明は、適宜省略する。
【０１８２】
列デコーダ３Ｃ2は、そこに列アドレスＷとして１，０，３，２が供給されたときのみ、カラムスイッチ７5乃至７8をそれぞれオンにし、ライトバスＤW2と、メモリセルアレイ５のメモリセル群５5乃至５8それぞれとを接続するようになされている。列デコーダ３Ｃ3は、そこに列アドレスＷとして２，１，０，３が供給されたときのみ、カラムスイッチ７9乃至７12をそれぞれオンにし、ライトバスＤW3と、メモリセルアレイ５のメモリセル群５9乃至５12それぞれとを接続するようになされている。列デコーダ３Ｃ4は、そこに列アドレスＷとして３，２，１，０が供給されたときのみ、カラムスイッチ７13乃至７16をそれぞれオンにし、ライトバスＤW4と、メモリセルアレイ５のメモリセル群５13乃至５16それぞれとを接続するようになされている。
【０１８３】
列デコーダ１０３Ｃ1は、そこに列アドレスＲとして０乃至３が供給されたときのみ、カラムスイッチ１０７1乃至１０７4をそれぞれオンにし、リードバスＤR1と、メモリセルアレイ５のメモリセル群５1乃至５4それぞれとを接続するようになされている。列デコーダ１０３Ｃ2は、そこに列アドレスＲとして０乃至３が供給されたときのみ、カラムスイッチ１０７5乃至１０７8をそれぞれオンにし、リードバスＤR2と、メモリセルアレイ５のメモリセル群５5乃至５8それぞれとを接続するようになされている。列デコーダ１０３Ｃ3は、そこに列アドレスＲとして０乃至３が供給されたときのみ、カラムスイッチ１０７9乃至１０７12をそれぞれオンにし、リードバスＤR3と、メモリセルアレイ５のメモリセル群５9乃至５12それぞれとを接続するようになされている。列デコーダ１０３Ｃ4は、そこに列アドレスＲとして０乃至３が供給されたときのみ、カラムスイッチ１０７13乃至１０７16をそれぞれオンにし、リードバスＤR4と、メモリセルアレイ５のメモリセル群５13乃至５16それぞれとを接続するようになされている。
【０１８４】
ローテーション回路１４１（書き込み用ローテーション手段）は、記録アンプ１３（図１２においては、図示せず）から供給されるパラレルデータとしての４画素を、所定の画素数だけローテーションして、そのローテーション後の４画素を、ライトバスＤW1乃至ＤW4にそれぞれ出力するようになされている。
【０１８５】
ローテーション回路１４２（読み出し用ローテーション手段）は、リードバスＤR1乃至ＤR4それぞれからの、合計４画素を、所定の画素数だけローテーションして、そのローテーション後の４画素を、ＭＡ１０（図１２においては、図示せず）に出力するようになされている。
【０１８６】
次に、その動作について説明する。なお、ここでは、説明を簡単にするために、例えば、図１３に示すような、横×縦が４×４画素で構成される画像が、１フレームの画像として供給されるものとする。また、ここでは、図１３の画像を構成する画素が、いわゆるラインスキャン順に、４画素単位で供給されるものとする。即ち、図１２のＤＲＡＭチップには、最初に、画素ａ，ｂ，ｃ，ｄが供給され、その後、画素ｅ，ｆ，ｇ，ｈが供給され、続いて、画素ｉ，ｊ，ｋ，ｌが供給され、最後に、画素ｍ，ｎ，ｏ，ｐが供給されるようになっている。
【０１８７】
まず、図１４のフローチャートを参照して、画像を書き込む書き込み処理について説明する。
【０１８８】
画像の書き込み時においては、まず最初に、ステップＳ１において、列アドレスＷが、初期値としての、例えば０とされ、図１３に示した画像の第Ｗ＋１行の４画素が、ローテーション回路１４１に供給されるのを待って、ステップＳ２に進む。ステップＳ２では、ローテーション回路１４１において、そこに供給された４画素が、Ｗ画素分だけローテーションされる。そして、そのローテーションされた４画素が、ライトバスＤW1乃至ＤW4にそれぞれ出力される。
【０１８９】
その後、ステップＳ３に進み、列アドレスＷが、列デコーダ３Ｃ1乃至３Ｃ4に供給される。列デコーダ３Ｃ1乃至３Ｃ4では、列アドレスＷがデコードされ、そのデコード結果として、カラムスイッチ７1乃至７16のうちの所定のものがオンにされる。これにより、ライトバスＤW1乃至ＤW4それぞれは、いずれかのメモリセル群と接続されるので、ステップＳ４において、ライトバスＤW1乃至ＤW4上の画素それぞれは、接続されたメモリセル群に供給されて記憶される（書き込まれる）。
【０１９０】
そして、ステップＳ５に進み、列アドレスＷが、図１３の画像のライン数−１に等しい３に一致するかどうかが判定される。ステップＳ５において、列アドレスＷが３に等しくないと判定された場合（Ｗが３未満の場合）、ステップＳ６に進み、列アドレスＷが１だけインクリメントされる。そして、次の行（ライン）の４画素が、ローテーション回路１４１に供給されるのを待って、ステップＳ２に戻り、以下、ステップＳ２以降の処理を繰り返す。
【０１９１】
また、ステップＳ５において、列アドレスＷが３に一致すると判定された場合、即ち、図１３に示した４×４画素で構成される１フレームの画像を構成するすべての画素ａ乃至ｐが、メモリセルアレイ５に書き込まれた場合、処理を終了する。
【０１９２】
以上の書き込み処理によれば、図１３に示した画素ａ乃至ｐは、図１５に示すように、メモリセルアレイ５に書き込まれる。
【０１９３】
即ち、列アドレスＷが０の場合は、ローテーション回路１４１には、図１５（Ａ）に示すように、図１３の画像の第１行の画素ａ，ｂ，ｃ，ｄが供給される。この場合、ローテーション回路１４１では、画素ａ，ｂ，ｃ，ｄの並びが、例えば、右に、０画素だけローテーションされる。即ち、この場合、画素ａ，ｂ，ｃ，ｄの並びは、図１５（Ｂ）に示すように、そのままとされる。そして、画素ａ，ｂ，ｃ，ｄの並びのうち、最も左の画素ａはライトバスＤW1に、左から２番目の画素ｂはライトバスＤW2に、左から３番目の画素ｃはライトバスＤW3に、最も右の画素ｄはライトバスＤW4に、それぞれ出力される。
【０１９４】
一方、図１２では、列アドレスＷが０の場合、上述したように、デコーダ３Ｃ1乃至３Ｃ4において、その列アドレスＷのデコード結果として、カラムスイッチ７1，７6，７11，７16がそれぞれオンにされる。
【０１９５】
従って、ライトバスＤW1乃至ＤW4上の画素ａ乃至ｄは、図１５（Ｃ）に示すように、カラムスイッチ７1，７6，７11，７16を介して、メモリセル群５1，５6，５11，５16にそれぞれ供給されて記憶される。
【０１９６】
次に、列アドレスＷが１となると、ローテーション回路１４１には、図１５（Ｄ）に示すように、図１３の画像の第２行の画素ｅ，ｆ，ｇ，ｈが供給される。この場合、ローテーション回路１４１では、画素ｅ，ｆ，ｇ，ｈの並びが、例えば、右に、１画素だけローテーションされる。即ち、この場合、画素ｅ，ｆ，ｇ，ｈの並びは、図１５（Ｅ）に示すように、画素ｈ，ｅ，ｆ，ｇの並びにされる。そして、画素ｈ，ｅ，ｆ，ｇの並びのうち、最も左の画素ｈはライトバスＤW1に、左から２番目の画素ｅはライトバスＤW2に、左から３番目の画素ｆはライトバスＤW3に、最も右の画素ｇはライトバスＤW4に、それぞれ出力される。
【０１９７】
一方、図１２では、列アドレスＷが１の場合、上述したように、デコーダ３Ｃ1乃至３Ｃ4において、その列アドレスＷのデコード結果として、カラムスイッチ７4，７5，７10，７15がそれぞれオンにされる。
【０１９８】
従って、ライトバスＤW1乃至ＤW4上の画素ｈ，ｅ，ｆ，ｇは、図１５（Ｆ）に示すように、カラムスイッチ７4，７5，７10，７15を介して、メモリセル群５4，５5，５10，５15にそれぞれ供給されて記憶される。
【０１９９】
次に、列アドレスＷが２となると、ローテーション回路１４１には、図１５（Ｇ）に示すように、図１３の画像の第３行の画素ｉ，ｊ，ｋ，ｌが供給される。この場合、ローテーション回路１４１では、画素ｉ，ｊ，ｋ，ｌの並びが、例えば、右に、２画素だけローテーションされる。即ち、この場合、画素ｉ，ｊ，ｋ，ｌの並びは、図１５（Ｈ）に示すように、画素ｋ，ｌ，ｉ，ｊの並びにされる。そして、画素ｋ，ｌ，ｉ，ｊの並びのうち、最も左の画素ｋはライトバスＤW1に、左から２番目の画素ｌはライトバスＤW2に、左から３番目の画素ｉはライトバスＤW3に、最も右の画素ｊはライトバスＤW4に、それぞれ出力される。
【０２００】
一方、図１２では、列アドレスＷが２の場合、上述したように、デコーダ３Ｃ1乃至３Ｃ4において、その列アドレスＷのデコード結果として、カラムスイッチ７3，７8，７9，７14がそれぞれオンにされる。
【０２０１】
従って、ライトバスＤW1乃至ＤW4上の画素ｋ，ｌ，ｉ，ｊは、図１５（Ｉ）に示すように、カラムスイッチ７3，７8，７9，７14を介して、メモリセル群５3，５8，５9，５14にそれぞれ供給されて記憶される。
【０２０２】
そして、列アドレスＷが３となると、ローテーション回路１４１には、図１５（Ｊ）に示すように、図１３の画像の第４行の画素ｍ，ｎ，ｏ，ｐが供給される。この場合、ローテーション回路１４１では、画素ｍ，ｎ，ｏ，ｐの並びが、例えば、右に、３画素だけローテーションされる。即ち、この場合、画素ｍ，ｎ，ｏ，ｐの並びは、図１５（Ｋ）に示すように、画素ｎ，ｏ，ｐ，ｍの並びにされる。そして、画素ｎ，ｏ，ｐ，ｍの並びのうち、最も左の画素ｎはライトバスＤW1に、左から２番目の画素ｏはライトバスＤW2に、左から３番目の画素ｐはライトバスＤW3に、最も右の画素ｍはライトバスＤW4に、それぞれ出力される。
【０２０３】
一方、図１２では、列アドレスＷが３の場合、上述したように、デコーダ３Ｃ1乃至３Ｃ4において、その列アドレスＷのデコード結果として、カラムスイッチ７2，７7，７12，７13がそれぞれオンにされる。
【０２０４】
従って、ライトバスＤW1乃至ＤW4上の画素ｎ，ｏ，ｐ，ｍは、図１５（Ｌ）に示すように、カラムスイッチ７2，７7，７12，７13を介して、メモリセル群５2，５7，５12，５13にそれぞれ供給されて記憶される。
【０２０５】
次に、図１６のフローチャートを参照して、以上のようにしてメモリセルアレイ５に書き込まれた画素ａ乃至ｐを読み出す読み出し処理について説明する。
【０２０６】
画像の読み出し時においては、まず最初に、ステップＳ１１において、列アドレスＲが、初期値としての、例えば０とされ、ステップＳ１２に進み、列アドレスＲが、列デコーダ１０３Ｃ1乃至１０３Ｃ4に供給される。列デコーダ１０３Ｃ1乃至１０３Ｃ4では、列アドレスＷがデコードされ、そのデコード結果として、カラムスイッチ１０７1乃至１０７16のうちの所定のものがオンにされる。これにより、リードバスＤR1乃至ＤR4それぞれは、いずれかのメモリセル群と接続され、ステップＳ１３において、リードバスＤR1乃至ＤR4上に、それぞれと接続されたメモリセル群に記憶されている画素が出力される（読み出される）。
【０２０７】
リードバスＤR1乃至ＤR4上にそれぞれ出力された合計４画素は、ローテーション回路１４２に供給される。ローテーション回路１４２では、ステップＳ１４において、リードバスＤR1乃至ＤR4からの４画素が、Ｒ画素分だけ、図１４で説明した書き込み処理とは逆方向にローテーション（以下、適宜、逆ローテーションという）される。そして、そのローテーションされた４画素が出力される。
【０２０８】
その後、ステップＳ１５に進み、列アドレスＲが、図１３の画像の列数−１に等しい３に一致するかどうかが判定される。ステップＳ１５において、列アドレスＲが３に等しくないと判定された場合（Ｒが３未満の場合）、ステップＳ１６に進み、列アドレスＲが１だけインクリメントされる。そして、ステップＳ１２に戻り、以下、ステップＳ１２以降の処理を繰り返す。
【０２０９】
また、ステップＳ１５において、列アドレスＲが３に一致すると判定された場合、即ち、図１３に示した４×４画素で構成される１フレームの画像を構成するすべての画素ａ乃至ｐが、メモリセルアレイ５から読み出された場合、処理を終了する。
【０２１０】
以上の読み出し処理によれば、図１５（Ｌ）に示したように、メモリセルアレイに記憶された画素ａ乃至ｐは、図１７に示すように、メモリセルアレイ５から読み出される。
【０２１１】
即ち、列アドレスＲが０の場合、図１２では、上述したように、デコーダ１０３Ｃ1乃至１０３Ｃ4において、その列アドレスＲのデコード結果として、カラムスイッチ１０７1，１０７5，１０７9，１０７13がそれぞれオンにされる。従って、図１７（Ａ）に示すメモリセル群５1乃至５16のうち、メモリセル群５1，５5，５9，５13にそれぞれ記憶された画素ａ，ｅ，ｉ，ｍが、図１７（Ｂ）に示すように、カラムスイッチ１０７1，１０７5，１０７9，１０７13を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２１２】
リードバスＤR1乃至ＤR4上の画素ａ，ｅ，ｉ，ｍは、ローテーション回路１４２で受信される。ローテーション回路１４２では、受信した画素ａ，ｅ，ｉ，ｍの並びが、ローテーション回路１４１における場合とは逆の左方向に、０画素だけ逆ローテーションされ、即ち、この場合、画素ａ，ｅ，ｉ，ｍの並びは、図１７（Ｃ）に示すように、そのままとされ、出力される。
【０２１３】
次に、列アドレスＲが１となると、図１２では、上述したように、デコーダ１０３Ｃ1乃至１０３Ｃ4において、その列アドレスＲのデコード結果として、カラムスイッチ１０７2，１０７6，１０７10，１０７14がそれぞれオンにされる。従って、図１７（Ｄ）に示すメモリセル群５1乃至５16のうち、メモリセル群５2，５6，５10，５14にそれぞれ記憶された画素ｎ，ｂ，ｆ，ｊが、図１７（Ｅ）に示すように、カラムスイッチ１０７2，１０７6，１０７10，１０７14を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２１４】
リードバスＤR1乃至ＤR4上の画素ｎ，ｂ，ｆ，ｊは、ローテーション回路１４２で受信される。ローテーション回路１４２では、受信した画素ｎ，ｂ，ｆ，ｊの並びが、１画素だけ逆ローテーションされ、即ち、この場合、画素ｎ，ｂ，ｆ，ｊの並びは、図１７（Ｆ）に示すように、画素ｂ，ｆ，ｊ，ｎの並びとされ、出力される。
【０２１５】
次に、列アドレスＲが２となると、図１２では、上述したように、デコーダ１０３Ｃ1乃至１０３Ｃ4において、その列アドレスＲのデコード結果として、カラムスイッチ１０７3，１０７7，１０７11，１０７15がそれぞれオンにされる。従って、図１７（Ｇ）に示すメモリセル群５1乃至５16のうち、メモリセル群５3，５7，５11，５15にそれぞれ記憶された画素ｋ，ｏ，ｃ，ｇが、図１７（Ｈ）に示すように、カラムスイッチ１０７3，１０７7，１０７11，１０７15を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２１６】
リードバスＤR1乃至ＤR4上の画素ｋ，ｏ，ｃ，ｇは、ローテーション回路１４２で受信される。ローテーション回路１４２では、受信した画素ｋ，ｏ，ｃ，ｇの並びが、２画素だけ逆ローテーションされ、即ち、この場合、画素ｋ，ｏ，ｃ，ｇの並びは、図１７（Ｉ）に示すように、画素ｃ，ｇ，ｋ，ｏの並びとされ、出力される。
【０２１７】
そして、列アドレスＲが３となると、図１２では、上述したように、デコーダ１０３Ｃ1乃至１０３Ｃ4において、その列アドレスＲのデコード結果として、カラムスイッチ１０７4，１０７8，１０７12，１０７16がそれぞれオンにされる。従って、図１７（Ｊ）に示すメモリセル群５1乃至５16のうち、メモリセル群５4，５8，５12，５16にそれぞれ記憶された画素ｈ，ｌ，ｐ，ｄが、図１７（Ｋ）に示すように、カラムスイッチ１０７4，１０７8，１０７12，１０７16を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２１８】
リードバスＤR1乃至ＤR4上の画素ｈ，ｌ，ｐ，ｄは、ローテーション回路１４２で受信される。ローテーション回路１４２では、受信した画素ｈ，ｌ，ｐ，ｄの並びが、３画素だけ逆ローテーションされ、即ち、この場合、画素ｈ，ｌ，ｐ，ｄの並びは、図１７（Ｌ）に示すように、画素ｄ，ｈ，ｌ，ｐの並びとされ、出力される。
【０２１９】
従って、図１２のＤＲＡＭチップによれば、水平方向順の画素ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐの並びが、垂直方向順の画素ａ，ｅ，ｉ，ｍ，ｂ，ｆ，ｊ，ｎ，ｃ，ｇ，ｋ，ｏ，ｄ，ｈ，ｌ，ｐの並びに並べ替えられる。即ち、ラインメモリやアドレス変換用のメモリを用いずに、画素の並び替えを行うことができる。その結果、装置の大型化を極力避け、処理の迅速化を図ることができる。
【０２２０】
また、図１２のＤＲＡＭチップでは、ラインスキャン順、即ち、水平方向に連続して入力される画像データが、垂直方向に連続した画像データに変換されることとなるから、水平方向と垂直方向とが所望の画素数で構成される２次元の画素のブロックを、ラインメモリ等を用いずに得ることができ、例えば、ＭＰＥＧにおける動き検出を行う動き検出回路や、解像度想像を行うクラス分類適用処理回路などの、画像から、２次元の画素のブロックを抽出して処理の対象とする回路に適用することで、その回路の小型化を図ることが可能となる。
【０２２１】
ここで、クラス分類適応処理について説明する。
【０２２２】
クラス分類適応処理では、例えば、ＳＤ（Standard Desity）画像と、所定の予測係数との線形結合により、ＨＤ（High Density）画像の画素の予測値を求める適応処理を行うことで、ＳＤ画像には含まれていない高周波成分が復元されるようになされている。
【０２２３】
即ち、例えば、いま、ＨＤ画像を構成する画素（以下、適宜、ＨＤ画素という）の画素値ｙの予測値Ｅ［ｙ］を、幾つかのＳＤ画素（ＳＤ画像を構成する画素）の画素値（以下、適宜、学習データという）ｘ1，ｘ2，・・・と、所定の予測係数ｗ1，ｗ2，・・・の線形結合により規定される線形１次結合モデルにより求めることを考える。この場合、予測値Ｅ［ｙ］は、次式で表すことができる。
【０２２４】
0004228433.tif 000002
【０２２５】
そこで、一般化するために、予測係数ｗの集合でなる行列Ｗ、学習データの集合でなる行列Ｘ、および予測値Ｅ［ｙ］の集合でなる行列Ｙ’を、
【数１】
0004228433.tif 000003
で定義すると、次のような観測方程式が成立する。
【０２２６】
ＸＷ＝Ｙ’
0004228433.tif 000004
【０２２７】
そして、この観測方程式に最小自乗法を適用して、ＨＤ画素の画素値ｙに近い予測値Ｅ［ｙ］を求めることを考える。この場合、教師データとなるＨＤ画素の真の画素値ｙの集合でなる行列Ｙ、およびＨＤ画素の画素値ｙに対する予測値Ｅ［ｙ］の残差ｅの集合でなる行列Ｅを、
【数２】
0004228433.tif 000005
で定義すると、式（２）から、次のような残差方程式が成立する。
【０２２８】
0004228433.tif 000006
【０２２９】
この場合、ＨＤ画素の画素値ｙに近い予測値Ｅ［ｙ］を求めるための予測係数ｗiは、自乗誤差
【数３】
0004228433.tif 000007
を最小にすることで求めることができる。
【０２３０】
従って、上述の自乗誤差を予測係数ｗiで微分したものが０になる場合、即ち、次式を満たす予測係数ｗiが、ＨＤ画素の画素値ｙに近い予測値Ｅ［ｙ］を求めるため最適値ということになる。
【０２３１】
【数４】
0004228433.tif 000008
0004228433.tif 000009
【０２３２】
そこで、まず、式（３）を、予測係数ｗiで微分することにより、次式が成立する。
【０２３３】
【数５】
0004228433.tif 000010
0004228433.tif 000011
【０２３４】
式（４）および（５）より、式（６）が得られる。
【０２３５】
【数６】
0004228433.tif 000012
0004228433.tif 000013
【０２３６】
さらに、式（３）の残差方程式における学習データｘ、予測係数ｗ、教師データｙ、および残差ｅの関係を考慮すると、式（６）から、次のような正規方程式を得ることができる。
【０２３７】
【数７】
0004228433.tif 000014
0004228433.tif 000015
【０２３８】
式（７）の正規方程式は、求めるべき予測係数ｗの数と同じ数だけたてることができ、従って、式（７）を解くことで（但し、式（７）を解くには、式（７）において、予測係数ｗにかかる係数で構成される行列が正則である必要がある）、最適な予測係数ｗを求めることができる。なお、式（７）を解くにあたっては、例えば、掃き出し法（Gauss-Jordanの消去法）などを適用することが可能である。
【０２３９】
以上のようにして、最適な予測係数ｗを求めておき、さらに、その予測係数ｗを用い、式（１）により、ＨＤ画素の画素値ｙに近い予測値Ｅ［ｙ］を求めるのが適応処理である。
【０２４０】
なお、適応処理は、ＳＤ画像には含まれていない、ＨＤ画像に含まれる成分が再現される点で、補間処理とは異なる。即ち、適応処理では、式（１）だけを見る限りは、いわゆる補間フィルタを用いての補間処理と同一であるが、その補間フィルタのタップ係数に相当する予測係数ｗが、教師データｙを用いての、いわば学習により求められるため、ＨＤ画像に含まれる成分を再現することができる。即ち、容易に、高解像度の画像を得ることができる。このことから、適応処理は、いわば画像の創造（解像度想像）作用がある処理ということができる。
【０２４１】
図１８は、以上のような適応処理により、ＳＤ画像をＨＤ画像に変換するクラス分類適応処理回路の構成例を示している。
【０２４２】
ＳＤ画像は、クラス分類回路２１４および遅延回路２１８に供給されるようになされており、クラス分類回路２１４では、適応処理により予測値を求めようとするＨＤ画素（以下、適宜、注目画素という）が、ＳＤ画像に基づいて、所定のクラスにクラス分類される。
【０２４３】
即ち、クラス分類回路２１４は、まず最初に、注目画素の周辺にあるＳＤ画素として、例えば、注目画素からの距離が所定値以下のＳＤ画素でなるクラスタップを、ＳＤ画像から抽出し、そのクラスタップを構成する、例えばすべてのＳＤ画素の画素値のパターンにあらかじめ割り当てられた値を、注目画素のクラスとして、係数ＲＯＭ（Read Only Memory）２１９のアドレス端子（ＡＤ）に供給する。
【０２４４】
具体的には、クラス分類回路２１４は、例えば、図１９に示すように、注目画素を中心とする４×４のＳＤ画素（同図において○印で示す）でなるクラスタップを、ＳＤ画像から抽出し、これらの１６のＳＤ画素の画素値のパターンに対応する値を、注目画素のクラスとして出力する。
【０２４５】
ここで、各ＳＤ画素の画素値を表すのに、例えば、８ビットなどの多くのビット数が割り当てられている場合、１６のＳＤ画素の画素値のパターン数は、（２8）16通りという莫大な数となり、その後の処理の迅速化が困難となる。
【０２４６】
そこで、クラス分類を行う前の前処理として、クラスタップには、それを構成するＳＤ画素のビット数を低減するための処理である、例えばＡＤＲＣ（Adaptiv Dynamic Range Coding）処理などが施される。
【０２４７】
即ち、ＡＤＲＣ処理では、まず、クラスタップを構成する１６のＳＤ画素から、その画素値の最大のもの（以下、適宜、最大画素という）と最小のもの（以下、適宜、最小画素という）とが検出される。そして、最大画素の画素値ＭＡＸと最小画素の画素値ＭＩＮとの差分ＤＲ（＝ＭＡＸ−ＭＩＮ）が演算され、このＤＲをクラスタップの局所的なダイナミックレンジとし、このダイナミックレンジＤＲに基づいて、クラスタップを構成する各画素値が、元の割当ビット数より少ないＫビットに再量子化される。つまり、クラスタップを構成する各画素値から最小画素の画素値ＭＩＮが減算され、各減算値が、ＤＲ／２Kで除算される。
【０２４８】
その結果、クラスタップを構成する各画素値はＫビットで表現されるようになる。従って、例えばＫ＝１とした場合、１６のＳＤ画素の画素値のパターン数は、（２1）16通りになり、ＡＤＲＣ処理を行わない場合に比較して、パターン数を非常に少ないものとすることができる。
【０２４９】
係数ＲＯＭ２１９は、あらかじめ学習が行われることにより求められた予測係数を、クラスごとに記憶しており、クラス分類回路２１４からクラスが供給されると、そのクラスに対応するアドレスに記憶されている予測係数を読み出し、予測演算回路２２０に供給する。
【０２５０】
一方、遅延回路２１８では、予測演算回路２２０に対して、係数ＲＯＭ２１９から予測係数が供給されるタイミングと、後述する予測タップ生成回路２１６から予測タップが供給されるタイミングとを一致させるために必要な時間だけ、ＳＤ画像が遅延され、予測タップ生成回路２１６に供給される。
【０２５１】
予測タップ生成回路２１６では、そこに供給されるＳＤ画像から、予測演算回路２２０において注目画素の予測値を求めるのに用いるＳＤ画素が抽出され、これが予測タップとして、予測演算回路２２０に供給される。即ち、予測タップ生成回路２１６では、ＳＤ画像から、例えば、クラス分類回路２１４で抽出されたクラスタップと同一の画素で構成されるクラスタップが抽出され、予測演算回路２２０に供給される。
【０２５２】
予測演算回路２２０では、係数ＲＯＭ２１９からの予測係数ｗ，ｗ2，・・・と、予測タップ生成回路２１６からの予測タップｘ1，ｘ2，・・・とを用いて、式（１）に示した演算が行われることにより、注目画素ｙの予測値Ｅ［ｙ］が求められ、これが、ＨＤ画素の画素値として出力される。
【０２５３】
以下同様の処理が、その他のＨＤ画素を注目画素として行われ、これにより、ＳＤ画像がＨＤ画像に変換される。
【０２５４】
次に、図２０は、図１８の係数ＲＯＭ２１９に記憶させる予測係数を算出する学習処理を行う学習装置の構成例を示している。
【０２５５】
学習における教師データｙとなるべきＨＤ画像が、間引き回路２２１および遅延回路２２８に供給されるようになされており、間引き回路２２１では、ＨＤ画像が、例えば、その画素数が間引かれることにより少なくされ、これによりＳＤ画像とされる。このＳＤ画像は、クラス分類回路２２６および予測タップ生成回路２２７に供給される。
【０２５６】
クラス分類回路２２６または予測タップ生成回路２２７では、図１８のクラス分類回路２１４または予測タップ生成回路２１６における場合と同様の処理が行われ、これにより注目画素のクラスまたは予測タップがそれぞれ出力される。クラス分類回路２２６が出力するクラスは、予測タップメモリ２２９および教師データメモリ２３０のアドレス端子（ＡＤ）に供給され、予測タップ生成回路２２７が出力する予測タップは、予測タップメモリ２２９に供給される。
【０２５７】
予測タップメモリ２２９では、クラス分類回路２２６から供給されるクラスに対応するアドレスに、予測タップ生成回路２２７から供給される予測タップが記憶される。
【０２５８】
一方、遅延回路２２８では、注目画素に対応するクラスが、クラス分類回路２２６から教師データメモリ２３０に供給される時間だけ、ＨＤ画像が遅延され、そのうちの、注目画素であるＨＤ画素の画素値だけが、教師データとして、教師データメモリ２３０に供給される。
【０２５９】
そして、教師データメモリ２３０では、クラス分類回路２２６から供給されるクラスに対応するアドレスに、遅延回路２２８から供給される教師データが記憶される。
【０２６０】
以下同様の処理が、あらかじめ学習用に用意されたすべてのＨＤ画像を構成するすべてのＨＤ画素が注目画素とされるまで繰り返される。
【０２６１】
以上のようにして、予測タップメモリ２２９または教師データメモリ２３０の同一のアドレスには、図１９において○印で示したＳＤ画素または図１９において×印で示したＨＤ画素とそれぞれ同一の位置関係にあるＳＤ画素またはＨＤ画素が、学習データｘまたは教師データｙとして記憶される。
【０２６２】
なお、予測タップメモリ２２９と教師データメモリ２３０においては、同一アドレスに複数の情報を記憶することができるようになされており、これにより、同一アドレスには、同一のクラスに分類される複数の学習データｘと教師データｙを記憶することができるようになされている。
【０２６３】
その後、演算回路２３１は、予測タップメモリ２２９または教師データメモリ２３０から、同一アドレスに記憶されている学習データとしての予測タップまたは教師データとしてのＨＤ画素の画素値を読み出し、それらを用いて、最小自乗法によって、予測値と教師データとの間の誤差を最小にする予測係数を算出する。即ち、演算回路２３１では、クラスごとに、式（７）に示した正規方程式がたてられ、これを解くことにより予測係数が求められる。
【０２６４】
以上のようにして、演算回路２３１で求められたクラスごとの予測係数が、図１８の係数ＲＯＭ２１９における、そのクラスに対応するアドレスに記憶されている。
【０２６５】
なお、以上のような学習処理において、予測係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があるが、そのようなクラスについては、例えば、クラスを無視して正規方程式をたてて解くことにより得られる予測係数などが、いわばデフォルトの予測係数として用いられる。
【０２６６】
図１２のＤＲＡＭチップは、画像からクラスタップおよび予測タップを検出して処理を行うクラス分類適応処理回路（図１８）や、学習装置（図２０）に適用することができる。
【０２６７】
なお、図１２のＤＲＡＭチップを用いて、画像を構成する画素の順序を並べ替える並べ替え装置を構成した場合の、その構成は、例えば、図８のシャッフリング装置と同様になるため、その説明は省略する。
【０２６８】
次に、図１２においては、水平方向に連続して入力される画素の並びを、各行ごとに、その行数−１画素分だけ右にローテーションし、列デコーダ３Ｃのデコード結果にしたがって、メモリセルアレイ５に書き込み、さらに、列デコーダ１０３Ｃのデコード結果にしたがって、メモリセルアレイ５から画素を読み出し、その画素の並びを、書き込み時における場合と逆にローテーションすることで、垂直方向に連続した画素の並びに並べ替えるようにしたが、図１２で説明したローテーションの方法や、列アドレスのデコードの方法以外の方法を用いても、水平方向に連続して入力される画素の並びを、垂直方向に連続した画素の並びに並べ替えるようにすることが可能である。また、ローテーションの方法や、列アドレスのデコードの方法を変更することで、水平方向に連続して入力される画素の並びを、垂直方向に連続した画素の並び以外の並びに並べ替えるようにすることも可能である。
【０２６９】
即ち、例えば、図２１に示すように、列デコーダ３Ｃ1は、そこに列アドレスＷとして０，３，１，２が供給されたときのみ、カラムスイッチ７1乃至７4をそれぞれオンにし、ライトバスＤW1と、メモリセルアレイ５のメモリセル群５1乃至５4それぞれとを接続するようにする。また、列デコーダ３Ｃ2は、そこに列アドレスＷとして２，０，３，１が供給されたときのみ、カラムスイッチ７5乃至７8をそれぞれオンにし、ライトバスＤW2と、メモリセルアレイ５のメモリセル群５5乃至５8それぞれとを接続するようにする。さらに、列デコーダ３Ｃ3は、そこに列アドレスＷとして１，２，０，３が供給されたときのみ、カラムスイッチ７9乃至７12をそれぞれオンにし、ライトバスＤW3と、メモリセルアレイ５のメモリセル群５9乃至５12それぞれとを接続するようにする。また、列デコーダ３Ｃ4は、そこに列アドレスＷとして３，１，２，０が供給されたときのみ、カラムスイッチ７13乃至７16をそれぞれオンにし、ライトバスＤW4と、メモリセルアレイ５のメモリセル群５13乃至５16それぞれとを接続するようにする。
【０２７０】
なお、ここでは、列デコーダ１０３Ｃ1乃至１０３Ｃ4のデコード結果は変更しない。
【０２７１】
そして、いま、図１３と同様の図２２（Ａ）に示すように、第１行が画素ａ，ｂ，ｃ，ｄ、第２行が画素ｅ，ｆ，ｇ，ｈ、第３行が画素ｉ，ｊ，ｋ，ｌ、第４行が画素ｍ，ｎ，ｏ，ｐでなる４×４画素の画像がラインスキャン順に、ローテーション回路１４１に入力されるとすると、ローテーション回路１４１では、第１乃至第４行の画素の並びが、例えば、０，２，１，３画素だけ、それぞれ右にローテーションされる。従って、図２２（Ｂ）に示すように、第１行の画素ａ，ｂ，ｃ，ｄの並びはそのままに、第２行の画素ｅ，ｆ，ｇ，ｈは、画素ｇ，ｈ，ｅ，ｆの並びに、第３行の画素ｉ，ｊ，ｋ，ｌの並びは、画素ｌ，ｉ，ｊ，ｋの並びに、第４行の画素ｍ，ｎ，ｏ，ｐの並びは、画素ｎ，ｏ，ｐ，ｍの並びに、それぞれされる。上述したように、ローテーション回路１４１における各行のローテーション結果としての４画素の並びのうち、最も左の画素はライトバスＤW1に、左から２番目の画素はライトバスＤW2に、左から３番目の画素はライトバスＤW3に、最も右の画素はライトバスＤW4に、それぞれ出力される。
【０２７２】
一方、ライトバスＤW1に接続されているカラムスイッチ７1乃至７4、ライトバスＤW2に接続されているカラムスイッチ７5乃至７8、ライトバスＤW3に接続されているカラムスイッチ７9乃至７12、ライトバスＤW4に接続されているカラムスイッチ７13乃至７16は、列アドレスＷとして、０，１，２，３それぞれが与えられた場合に、図２１で説明したように制御されるから、カラムスイッチ７1乃至７16に接続されているメモリセル群５1乃至５16それぞれには、図２２（Ｃ）に示すように、画素ａ，ｎ，ｇ，ｌ，ｉ，ｂ，ｏ，ｈ，ｅ，ｊ，ｃ，ｐ，ｍ，ｆ，ｋ，ｄが記憶される。
【０２７３】
そして、列アドレスＲとして、０が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７1，１０７5，１０７9，１０７13をそれぞれオンにするから、図２２（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５1，５5，５9，５13にそれぞれ記憶された画素ａ，ｉ，ｅ，ｍが、図２２（Ｄ）に示すように、カラムスイッチ１０７1，１０７5，１０７9，１０７13を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２７４】
リードバスＤR1乃至ＤR4上の画素ａ，ｉ，ｅ，ｍは、ローテーション回路１４２で受信され、左方向に、０画素だけ逆ローテーションされて出力される。即ち、この場合、画素ａ，ｉ，ｅ，ｍの並びは、図２２（Ｅ）に示すように、そのままとされ、出力される。従って、その画素ａ，ｉ，ｅ，ｍの並びのうち、左から２番目の画素ｉと３番目の画素ｅとを入れ替えることで、図２２（Ｆ）に示すように、図２２（Ａ）の画像の第１列の画素ａ，ｅ，ｉ，ｍの並びが得られる。
【０２７５】
次に、列アドレスＲとして、１が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７2，１０７6，１０７10，１０７14をそれぞれオンにするから、図２２（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５2，５6，５10，５14にそれぞれ記憶された画素ｎ，ｂ，ｊ，ｆが、図２２（Ｇ）に示すように、カラムスイッチ１０７2，１０７6，１０７10，１０７14を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２７６】
リードバスＤR1乃至ＤR4上の画素ｎ，ｂ，ｊ，ｆは、ローテーション回路１４２で受信され、左方向に、１画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｎ，ｂ，ｊ，ｆの並びは、図２２（Ｈ）に示すように、画素ｂ，ｊ，ｆ，ｎの並びとされ、出力される。従って、その画素ｂ，ｊ，ｆ，ｎの並びのうち、左から２番目の画素ｊと３番目の画素ｆとを入れ替えることで、図２２（Ｉ）に示すように、図２２（Ａ）の画像の第２列の画素ｂ，ｆ，ｊ，ｎの並びが得られる。
【０２７７】
次に、列アドレスＲとして、２が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７3，１０７7，１０７11，１０７15をそれぞれオンするから、図２２（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５3，５7，５11，５15にそれぞれ記憶された画素ｇ，ｏ，ｃ，ｋが、図２２（Ｊ）に示すように、カラムスイッチ１０７3，１０７7，１０７11，１０７15を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２７８】
リードバスＤR1乃至ＤR4上の画素ｇ，ｏ，ｃ，ｋは、ローテーション回路１４２で受信され、左方向に、２画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｇ，ｏ，ｃ，ｋの並びは、図２２（Ｋ）に示すように、画素ｃ，ｋ，ｇ，ｏの並びとされ、出力される。従って、その画素ｃ，ｋ，ｇ，ｏの並びのうち、左から２番目の画素ｋと３番目の画素ｇとを入れ替えることで、図２２（Ｌ）に示すように、図２２（Ａ）の画像の第３列の画素ｃ，ｇ，ｋ，ｏの並びが得られる。
【０２７９】
次に、列アドレスＲとして、３が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、その列アドレスＲのデコード結果として、カラムスイッチ１０７4，１０７8，１０７12，１０７16をそれぞれオンするから、図２２（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５4，５8，５12，５16にそれぞれ記憶された画素ｌ，ｈ，ｐ，ｄが、図２２（Ｍ）に示すように、カラムスイッチ１０７4，１０７8，１０７12，１０７16を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２８０】
リードバスＤR1乃至ＤR4上の画素ｌ，ｈ，ｐ，ｄは、ローテーション回路１４２で受信され、左方向に、３画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｌ，ｈ，ｐ，ｄの並びは、図２２（Ｎ）に示すように、画素ｄ，ｌ，ｈ，ｐの並びとされ、出力される。従って、その画素ｄ，ｌ，ｈ，ｐの並びのうち、左から２番目の画素ｌと３番目の画素ｈとを入れ替えることで、図２２（Ｏ）に示すように、図２２（Ａ）の画像の第４列の画素ｄ，ｈ，ｌ，ｐの並びが得られる。
【０２８１】
以上のように、図２１のＤＲＡＭチップでも、図１２における場合と同様に、水平方向順の画素ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐの並びを、垂直方向順の画素ａ，ｅ，ｉ，ｍ，ｂ，ｆ，ｊ，ｎ，ｃ，ｇ，ｋ，ｏ，ｄ，ｈ，ｌ，ｐの並びに並べ替えることができる。
【０２８２】
次に、例えば、図２３に示すように、列デコーダ３Ｃ1は、そこに列アドレスＷとして０，１，３，２が供給されたときのみ、カラムスイッチ７1乃至７4をそれぞれオンにし、ライトバスＤW1と、メモリセルアレイ５のメモリセル群５1乃至５4それぞれとを接続するようにする。また、列デコーダ３Ｃ2は、そこに列アドレスＷとして０，１，２，３が供給されたときのみ、カラムスイッチ７5乃至７8をそれぞれオンにし、ライトバスＤW2と、メモリセルアレイ５のメモリセル群５5乃至５8それぞれとを接続するようにする。さらに、列デコーダ３Ｃ3は、そこに列アドレスＷとして１，０，２，３が供給されたときのみ、カラムスイッチ７9乃至７12をそれぞれオンにし、ライトバスＤW3と、メモリセルアレイ５のメモリセル群５9乃至５12それぞれとを接続するようにする。また、列デコーダ３Ｃ4は、そこに列アドレスＷとして１，０，３，２が供給されたときのみ、カラムスイッチ７13乃至７16をそれぞれオンにし、ライトバスＤW4と、メモリセルアレイ５のメモリセル群５13乃至５16それぞれとを接続するようにする。
【０２８３】
なお、ここでも、列デコーダ１０３Ｃ1乃至１０３Ｃ4のデコード結果は変更しない。
【０２８４】
そして、いま、図１３と同様の図２４（Ａ）に示すように、第１行が画素ａ，ｂ，ｃ，ｄ、第２行が画素ｅ，ｆ，ｇ，ｈ、第３行が画素ｉ，ｊ，ｋ，ｌ、第４行が画素ｍ，ｎ，ｏ，ｐでなる４×４画素の画像がラインスキャン順に、ローテーション回路１４１に入力されるとすると、ローテーション回路１４１では、第１乃至第４行の画素の並びが、例えば、０，２，１，３画素だけ、それぞれ右にローテーションされる。従って、図２２（Ｂ）と同様の図２４（Ｂ）に示すように、第１行の画素ａ，ｂ，ｃ，ｄの並びはそのままに、第２行の画素ｅ，ｆ，ｇ，ｈは、画素ｇ，ｈ，ｅ，ｆの並びに、第３行の画素ｉ，ｊ，ｋ，ｌの並びは、画素ｌ，ｉ，ｊ，ｋの並びに、第４行の画素ｍ，ｎ，ｏ，ｐの並びは、画素ｎ，ｏ，ｐ，ｍの並びに、それぞれされる。上述したように、ローテーション回路１４１における各行のローテーション結果としての４画素の並びのうち、最も左の画素はライトバスＤW1に、左から２番目の画素はライトバスＤW2に、左から３番目の画素はライトバスＤW3に、最も右の画素はライトバスＤW4に、それぞれ出力される。
【０２８５】
一方、ライトバスＤW1に接続されているカラムスイッチ７1乃至７4、ライトバスＤW2に接続されているカラムスイッチ７5乃至７8、ライトバスＤW3に接続されているカラムスイッチ７9乃至７12、ライトバスＤW4に接続されているカラムスイッチ７13乃至７16は、列アドレスＷとして、０，１，２，３それぞれが与えられた場合に、図２３で説明したように制御されるから、カラムスイッチ７1乃至７16に接続されているメモリセル群５1乃至５16それぞれには、図２４（Ｃ）に示すように、画素ａ，ｇ，ｎ，ｌ，ｂ，ｈ，ｉ，ｏ，ｅ，ｃ，ｊ，ｐ，ｆ，ｄ，ｍ，ｋが記憶される。
【０２８６】
そして、列アドレスＲとして、０が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７1，１０７5，１０７9，１０７13をそれぞれオンにするから、図２４（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５1，５5，５9，５13にそれぞれ記憶された画素ａ，ｂ，ｅ，ｆが、図２４（Ｄ）に示すように、カラムスイッチ１０７1，１０７5，１０７9，１０７13を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２８７】
リードバスＤR1乃至ＤR4上の画素ａ，ｂ，ｅ，ｆは、ローテーション回路１４２で受信され、左方向に、０画素だけ逆ローテーションされて出力される。即ち、この場合、画素ａ，ｂ，ｅ，ｆの並びは、図２４（Ｅ）に示すように、そのままとされ、出力される。
【０２８８】
次に、列アドレスＲとして、１が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７2，１０７6，１０７10，１０７14をそれぞれオンにするから、図２４（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５2，５6，５10，５14にそれぞれ記憶された画素ｇ，ｈ，ｃ，ｄが、図２４（Ｆ）に示すように、カラムスイッチ１０７2，１０７6，１０７10，１０７14を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２８９】
リードバスＤR1乃至ＤR4上の画素ｇ，ｈ，ｃ，ｄは、ローテーション回路１４２で受信され、左方向に、２画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｇ，ｈ，ｃ，ｄの並びは、図２４（Ｇ）に示すように、画素ｃ，ｄ，ｇ，ｈの並びとされ、出力される。
【０２９０】
次に、列アドレスＲとして、２が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７3，１０７7，１０７11，１０７15をそれぞれオンするから、図２４（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５3，５7，５11，５15にそれぞれ記憶された画素ｎ，ｉ，ｊ，ｍが、図２４（Ｈ）に示すように、カラムスイッチ１０７3，１０７7，１０７11，１０７15を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２９１】
リードバスＤR1乃至ＤR4上の画素ｎ，ｉ，ｊ，ｍは、ローテーション回路１４２で受信され、左方向に、１画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｎ，ｉ，ｊ，ｍの並びは、図２４（Ｉ）に示すように、画素ｉ，ｊ，ｍ，ｎの並びとされ、出力される。
【０２９２】
次に、列アドレスＲとして、３が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、その列アドレスＲのデコード結果として、カラムスイッチ１０７4，１０７8，１０７12，１０７16をそれぞれオンするから、図２４（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５4，５8，５12，５16にそれぞれ記憶された画素ｌ，ｏ，ｐ，ｋが、図２４（Ｊ）に示すように、カラムスイッチ１０７4，１０７8，１０７12，１０７16を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０２９３】
リードバスＤR1乃至ＤR4上の画素ｌ，ｏ，ｐ，ｋは、ローテーション回路１４２で受信され、左方向に、３画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｌ，ｏ，ｐ，ｋの並びは、図２４（Ｋ）に示すように、画素ｋ，ｌ，ｏ，ｐの並びとされ、出力される。
【０２９４】
従って、図２３のＤＲＡＭチップによれば、水平方向順の画素ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐの並びが、図２４（Ａ）の画像の左上、右上、左下、右下の２×２画素のブロックを、ラインスキャン順に走査するような順番の画素の並びが得られる。即ち、左上の２×２画素のブロックを構成する画素ａ，ｂ，ｅ，ｆの並び、右上の２×２画素のブロックを構成する画素ｃ，ｄ，ｇ，ｈの並び、左下の２×２画素のブロックを構成する画素ｉ，ｊ，ｍ，ｎの並び、右下の２×２画素のブロックを構成する画素ｋ，ｌ，ｏ，ｐの並びが得られる。
【０２９５】
次に、例えば、図２５に示すように、列デコーダ３Ｃ1は、そこに列アドレスＷとして０，２，１，３が供給されたときのみ、カラムスイッチ７1乃至７4をそれぞれオンにし、ライトバスＤW1と、メモリセルアレイ５のメモリセル群５1乃至５4それぞれとを接続するようにする。また、列デコーダ３Ｃ2は、そこに列アドレスＷとして２，０，３，１が供給されたときのみ、カラムスイッチ７5乃至７8をそれぞれオンにし、ライトバスＤW2と、メモリセルアレイ５のメモリセル群５5乃至５8それぞれとを接続するようにする。さらに、列デコーダ３Ｃ3は、そこに列アドレスＷとして０，２，１，３が供給されたときのみ、カラムスイッチ７9乃至７12をそれぞれオンにし、ライトバスＤW3と、メモリセルアレイ５のメモリセル群５9乃至５12それぞれとを接続するようにする。また、列デコーダ３Ｃ4は、そこに列アドレスＷとして２，０，３，１が供給されたときのみ、カラムスイッチ７13乃至７16をそれぞれオンにし、ライトバスＤW4と、メモリセルアレイ５のメモリセル群５13乃至５16それぞれとを接続するようにする。
【０２９６】
なお、ここでも、列デコーダ１０３Ｃ1乃至１０３Ｃ4のデコード結果は変更しない。
【０２９７】
そして、いま、図１３と同様の図２６（Ａ）に示すように、第１行が画素ａ，ｂ，ｃ，ｄ、第２行が画素ｅ，ｆ，ｇ，ｈ、第３行が画素ｉ，ｊ，ｋ，ｌ、第４行が画素ｍ，ｎ，ｏ，ｐでなる４×４画素の画像がラインスキャン順に、ローテーション回路１４１に入力されるとすると、ローテーション回路１４１では、第１乃至第４行の画素の並びが、例えば、０，２，１，３画素だけ、それぞれ右にローテーションされる。従って、図２２（Ｂ）と同様の図２６（Ｂ）に示すように、第１行の画素ａ，ｂ，ｃ，ｄの並びはそのままに、第２行の画素ｅ，ｆ，ｇ，ｈは、画素ｇ，ｈ，ｅ，ｆの並びに、第３行の画素ｉ，ｊ，ｋ，ｌの並びは、画素ｌ，ｉ，ｊ，ｋの並びに、第４行の画素ｍ，ｎ，ｏ，ｐの並びは、画素ｎ，ｏ，ｐ，ｍに、それぞれされる。上述したように、ローテーション回路１４１における各行のローテーション結果としての４画素の並びのうち、最も左の画素はライトバスＤW1に、左から２番目の画素はライトバスＤW2に、左から３番目の画素はライトバスＤW3に、最も右の画素はライトバスＤW4に、それぞれ出力される。
【０２９８】
一方、ライトバスＤW1に接続されているカラムスイッチ７1乃至７4、ライトバスＤW2に接続されているカラムスイッチ７5乃至７8、ライトバスＤW3に接続されているカラムスイッチ７9乃至７12、ライトバスＤW4に接続されているカラムスイッチ７13乃至７16は、列アドレスＷとして、０，１，２，３それぞれが与えられた場合に、図２５で説明したように制御されるから、カラムスイッチ７1乃至７16に接続されているメモリセル群５1乃至５16それぞれには、図２６（Ｃ）に示すように、画素ａ，ｌ，ｇ，ｎ，ｉ，ｂ，ｏ，ｈ，ｃ，ｊ，ｅ，ｐ，ｋ，ｄ，ｍ，ｆが記憶される。
【０２９９】
そして、列アドレスＲとして、０が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７1，１０７5，１０７9，１０７13をそれぞれオンにするから、図２６（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５1，５5，５9，５13にそれぞれ記憶された画素ａ，ｉ，ｃ，ｋが、図２６（Ｄ）に示すように、カラムスイッチ１０７1，１０７5，１０７9，１０７13を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０３００】
リードバスＤR1乃至ＤR4上の画素ａ，ｉ，ｃ，ｋは、ローテーション回路１４２で受信され、左方向に、０画素だけ逆ローテーションされて出力される。即ち、この場合、画素ａ，ｉ，ｃ，ｋの並びは、図２６（Ｅ）に示すように、そのままとされ、出力される。従って、その画素ａ，ｉ，ｃ，ｋの並びのうち、左から２番目の画素ｉと３番目の画素ｃとを入れ替えることで、図２６（Ｆ）に示すように、図２６（Ａ）の画像の、最も左上の画素ａを基準として、水平および垂直方向の両方向に１画素おきの間引きを行った結果としての画素ａ，ｃ，ｉ，ｋの並びが得られる。
【０３０１】
次に、列アドレスＲとして、１が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７2，１０７6，１０７10，１０７14をそれぞれオンにするから、図２６（Ｃ）に示したメモリセル群５1乃至５16のうち、メモリセル群５2，５6，５10，５14にそれぞれ記憶された画素ｌ，ｂ，ｊ，ｄが、図２６（Ｇ）に示すように、カラムスイッチ１０７2，１０７6，１０７10，１０７14を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０３０２】
リードバスＤR1乃至ＤR4上の画素ｌ，ｂ，ｊ，ｄは、ローテーション回路１４２で受信され、左方向に、１画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｌ，ｂ，ｊ，ｄの並びは、図２６（Ｈ）に示すように、画素ｂ，ｊ，ｄ，ｌの並びとされ、出力される。従って、その画素ｂ，ｊ，ｄ，ｌの並びのうち、左から２番目の画素ｊと３番目の画素ｄとを入れ替えることで、図２６（Ｉ）に示すように、図２６（Ａ）の画像の、第１行第２列の画素ｂを基準として、水平および垂直方向の両方向に１画素おきの間引きを行った結果としての画素ｂ，ｄ，ｊ，ｌの並びが得られる。
【０３０３】
次に、列アドレスＲとして、２が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、カラムスイッチ１０７3，１０７7，１０７11，１０７15をそれぞれオンするから、図２６（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５3，５7，５11，５15にそれぞれ記憶された画素ｇ，ｏ，ｅ，ｍが、図２６（Ｊ）に示すように、カラムスイッチ１０７3，１０７7，１０７11，１０７15を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０３０４】
リードバスＤR1乃至ＤR4上の画素ｇ，ｏ，ｅ，ｍは、ローテーション回路１４２で受信され、左方向に、２画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｇ，ｏ，ｅ，ｍの並びは、図２６（Ｋ）に示すように、画素ｅ，ｍ，ｇ，ｏの並びとされ、出力される。従って、その画素ｅ，ｍ，ｇ，ｏの並びのうち、左から２番目の画素ｍと３番目の画素ｇとを入れ替えることで、図２６（Ｌ）に示すように、図２６（Ａ）の画像の、第２行第１列の画素ｅを基準として、水平および垂直方向の両方向に１画素おきの間引きを行った結果としての画素ｅ，ｇ，ｍ，ｏの並びが得られる。
【０３０５】
次に、列アドレスＲとして、３が与えられると、デコーダ１０３Ｃ1乃至１０３Ｃ4は、図１２における場合と同様に、その列アドレスＲのデコード結果として、カラムスイッチ１０７4，１０７8，１０７12，１０７16をそれぞれオンするから、図２６（Ａ）に示したメモリセル群５1乃至５16のうち、メモリセル群５4，５8，５12，５16にそれぞれ記憶された画素ｎ，ｈ，ｐ，ｆが、図２６（Ｍ）に示すように、カラムスイッチ１０７4，１０７8，１０７12，１０７16を介して、リードバスＤR1乃至ＤR4上にそれぞれ出力される。
【０３０６】
リードバスＤR1乃至ＤR4上の画素ｎ，ｈ，ｐ，ｆは、ローテーション回路１４２で受信され、左方向に、３画素だけ逆ローテーションされて出力される。即ち、この場合、画素ｎ，ｈ，ｐ，ｆの並びは、図２６（Ｎ）に示すように、画素ｆ，ｎ，ｈ，ｐの並びとされ、出力される。従って、その画素ｆ，ｎ，ｈ，ｐの並びのうち、左から２番目の画素ｎと３番目の画素ｈとを入れ替えることで、図２６（Ｏ）に示すように、図２６（Ａ）の画像の、第２行第２列の画素ｆを基準として、水平および垂直方向の両方向に１画素おきの間引きを行った結果としての画素ｆ，ｈ，ｎ，ｐの並びが得られる。
【０３０７】
以上のように、図２５のＤＲＡＭチップによれば、水平方向順の画素ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐの並びを、１画素ごとの間引きを行った画素の並びに並べ替えることができる。
【０３０８】
ここで、列デコーダ３Ｃ（３Ｃ1乃至３Ｃ4）におけるデコード結果の変更は、列デコーダ３Ｃを、例えば、図９の列デコーダ１３１Ｃと同様の構成にすることで、容易に行うことができる。
【０３０９】
なお、本実施の形態では、２つの列デコーダ３Ｃおよび１０３Ｃ（または１３１Ｃ）を設けるようにしたが、列デコーダは、３以上設けるようにすることも可能である。
【０３１０】
また、本実施の形態においては、行アドレスと列アドレスの２つのアドレスによってメモリセルを特定するようにしたが、メモリセルは、その他、例えば、３以上のアドレス（例えば、画像を構成する画素の行方向、列方向、および時間方向を指定するアドレスなど）によって特定するようにすることも可能である。
【０３１１】
さらに、本実施の形態では、画像を構成する画素の並べ替えを行うようにしたが、画像以外の、例えば、音声からサンプリングしたサンプル値のなどの並べ替えを行うことも可能である。
【０３１２】
また、本実施の形態では、４×４画素でなる画像を、画素の並べ替え処理の対象としたが、４×４画素以外でなる画像を、処理の対象とすることも可能である。但し、処理の対象とする画像を構成する画素を記憶するメモリセルすべては、基本的に、１ワード線上に配置されている必要があるため、画素数の多い画像については、１ワード線のメモリセルに記憶可能な画素数で構成されるブロックに分割し、各ブロックを、並列に処理する必要がある。
【０３１３】
さらに、本実施の形態においては、処理のリアルタイム性については言及しなかったが、メモリセルアレイ５に、１フレーム分より幾分多い記憶容量を持たせることで、リアルタイム処理が可能となる。なお、メモリセルアレイ５は、上述したように、ＤＲＡＭのメモリセルで構成されるから、メモリセルアレイ５を、１フレーム分より幾分多い記憶容量としても、それによるチップサイズの増加は、例えば、ＳＲＡＭで構成されるラインメモリなどを設けることによるチップサイズの増加に比較して僅かである。
【０３１４】
また、例えば、図１２において、列デコーダ３Ｃと１０３Ｃとのデコード結果を入れ替えても、上述したような画素の並べ替えが可能である。
【０３１５】
【発明の効果】
以上の如く、本発明の記憶装置および記憶方法によれば、第１のアドレスがデコードされて、記憶手段に供給され、第２のアドレスがデコードされて、記憶手段に供給される一方、記憶手段に書き込むデータがローテーションされ、そのローテーション結果が、第１および第２のアドレスのデコード結果にしたがい、記憶手段に書き込まれる。そして、第２のアドレスが、書き込み時におけるデコード結果とは異なるデコード結果にデコードされて、記憶手段に供給され、第１および第２のアドレスのデコード結果にしたがい、記憶手段に記憶されたデータが読み出され、そのデータがローテーションされて出力される。従って、装置の大型化を極力避けて、例えば、画像を構成する画素等の並べ替えを迅速に行うことが可能となる。
【図面の簡単な説明】
【図１】データの読み出しと書き込みが別々のタイミングで行われるＤＲＡＭチップの構成例を示すブロック図である。
【図２】図１のメモリセルアレイ５，ＳＡ６i、およびカラムスイッチ７iの構成例を示す回路図である。
【図３】図２のメモリセルアレイ５，ＳＡ６i、およびカラムスイッチ７iの動作を説明するためのタイミングチャートである。
【図４】データの読み出しと書き込みを同時に行うことができるＤＲＡＭチップの一実施の形態の構成例を示すブロック図である。
【図５】図４のメモリセルアレイ５，ＳＡ６i、カラムスイッチ７iおよび１０７iの構成例を示す回路図である。
【図６】データのシャッフリングに適用可能なＤＲＡＭチップの一実施の形態の構成例を示すブロック図である。
【図７】図６の列デコーダ３Ｃおよび１０３Ｃのデコード処理を説明するための図である。
【図８】図６のＤＲＡＭチップを利用したシャッフリング装置の一実施の形態の構成例を示すブロック図である。
【図９】データのシャッフリングに適用可能なＤＲＡＭチップの他の実施の形態の構成例を示すブロック図である。
【図１０】図９の列デコーダ１３１Ｃの構成例を示すブロック図である。
【図１１】図１０のＣＡＭセルｉ＿ｊの構成例を示す回路図である。
【図１２】本発明を適用したＤＲＡＭチップの第１実施の形態の構成例を示すブロック図である。
【図１３】画素の並べ替えの対象とする画像を示す図である。
【図１４】図１２のＤＲＡＭチップにおける書き込み処理を説明するためのフローチャートである。
【図１５】図１２のＤＲＡＭチップにおける書き込み処理を説明するため図である。
【図１６】図１２のＤＲＡＭチップにおける読み出し処理を説明するためのフローチャートである。
【図１７】図１２のＤＲＡＭチップにおける読み出し処理を説明するため図である。
【図１８】クラス分類適応処理回路の構成例を示すブロック図である。
【図１９】図１８のクラス分類回路１４の処理を説明するための図である。
【図２０】学習装置の構成例を示すブロック図である。
【図２１】本発明を適用したＤＲＡＭチップの第２実施の形態の構成例を示すブロック図である。
【図２２】図２１のＤＲＡＭチップの処理を説明するための図である。
【図２３】本発明を適用したＤＲＡＭチップの第３実施の形態の構成例を示すブロック図である。
【図２４】図２３のＤＲＡＭチップの処理を説明するための図である。
【図２５】本発明を適用したＤＲＡＭチップの第４実施の形態の構成例を示すブロック図である。
【図２６】図２５のＤＲＡＭチップの処理を説明するための図である。
【図２７】従来の、画素の並べ替えを行う並べ替え装置の一例の構成を示すブロック図である。
【符号の説明】
１Ｒ，１Ｃ  バッファ，  ２Ｒ  行アドレスラッチ回路，  ２Ｃ  列アドレスラッチ回路，  ３Ｒ  行デコーダ，  ３Ｃ，３Ｃ1乃至３Ｃ4  列デコーダ，  ４Ｒ  行ドライバ，  ４Ｃ  列ドライバ，  ５  メモリセルアレイ，  ６  センスアンプ群，  ６1乃至６N  センスアンプ，  ７1乃至７N  カラムスイッチ，  ８ＡＴＤ回路，  ９  ＡＮＤゲート，  １０  ＭＡ，  １１  出力バッファ，  １２  入力バッファ，  １３  記録アンプ，  ２１乃至２４  ＦＥＴ，  ２５  コンデンサ，  ２６乃至３１，４１乃至４４，５１乃至６０  ＦＥＴ，  １０２Ｃ  列アドレスラッチ回路，  １０３Ｃ，１０３Ｃ1乃至１０３Ｃ4  列デコーダ，  １０４Ｃ  列ドライバ，  １０７1乃至１０７N  カラムスイッチ，  １０８ＡＴＤ回路，  １０９  ＡＮＤゲート，  １１２Ｃ  ライトアドレスカウンタ，  １１３Ｃ  リードアドレスカウンタ，  １２１  ＤＲＡＭチップ，  １２２Ｉ／Ｏセレクタ，  １３１Ｃ  列デコーダ，  １４１，１４２  ローテーション回路，  １＿１乃至８＿２５６  ＣＡＭセル
【図１】
0004228433.tif 000016
【図２】
0004228433.tif 000017
【図３】
0004228433.tif 000018
【図４】
0004228433.tif 000019
【図５】
0004228433.tif 000020
【図６】
0004228433.tif 000021
【図７】
0004228433.tif 000022
【図８】
0004228433.tif 000023
【図９】
0004228433.tif 000024
【図１０】
0004228433.tif 000025
【図１１】
0004228433.tif 000026
【図１２】
0004228433.tif 000027
【図１３】
0004228433.tif 000028
【図１４】
0004228433.tif 000029
【図１５】
0004228433.tif 000030
【図１６】
0004228433.tif 000031
【図１７】
0004228433.tif 000032
【図１８】
0004228433.tif 000033
【図１９】
0004228433.tif 000034
【図２０】
0004228433.tif 000035
【図２１】
0004228433.tif 000036
【図２２】
0004228433.tif 000037
【図２３】
0004228433.tif 000038
【図２４】
0004228433.tif 000039
【図２５】
0004228433.tif 000040
【図２６】
0004228433.tif 000041
【図２７】
0004228433.tif 000042