"データが、複数のデータビット列部に分割されて記憶されるデータメモリセル部と、前記データに発生した誤りを訂正するための誤り訂正データが、前記複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割されて記憶される誤り訂正メモリセル部と、読み出しアドレスに応じて、前記データメモリセル部と前記誤り訂正メモリセル部とから、前記データ及び前記誤り訂正データを同時に読み出すように共通化されたロー/カラムデコーダと、前記各メモリセル部から、前記データ及び前記誤り訂正データを読み出す際に使用され、前記データのビット数と同じ数だけ設けられているセンスアンプと、制御信号に応じて、前記データと前記誤り訂正データとを切り替えて、前記センスアンプに入力するためのマルチプレクサと、制御信号に応じて、前記センスアンプより出力されるデータと誤り訂正データとを、データバッファと誤り訂正バッファとに出力し分けるデマルチプレクサと、前記マルチプレクサ及び前記デマルチプレクサに、それぞれ制御信号を出力し、前記メモリセル部に対する書き込み及び読み出しを制御する制御部とを備え、前記マルチプレクサには、任意のデータビット列部に属するビットと、前記データビット列部に対応しない誤り訂正ビット列部に属するビットとの組み合わせが入力されることを特徴とするメモリ回路。前記データビット列部及び前記誤り訂正ビット列部が、それぞれ上位側,下位側の2つに分割されており、前記データメモリセル部は、上位側,下位側データビット列部の順で配置され、前記誤り訂正メモリセル部は、下位側,上位側誤り訂正ビット列部の順で配置され、前記データメモリセル部及び前記誤り訂正メモリセル部の出力ビット線は、前記マルチプレクサの各入力端子に、配置されているビット順でそれぞれ配線されていることを特徴とする請求項1記載のメモリ回路。前記データビット列部及び前記誤り訂正ビット列部が、それぞれ上位側,下位側の2つに分割されており、前記データメモリセル部は、上位側,下位側データビット列部の順で配置され、前記誤り訂正メモリセル部は、上位側,下位側誤り訂正ビット列部の順で配置され、前記データメモリセル部の出力ビット線は、前記マルチプレクサの各入力端子に、配置されているビット順で配線され、前記誤り訂正メモリセル部の出力ビット線は、前記マルチプレクサの各入力端子に、上位側,下位側の並びを入れ替えたビット順で配線されていることを特徴とする請求項1記載のメモリ回路。請求項1ないし3記載のメモリ回路と、書き込みデータに基づいて、前記誤り訂正メモリセル部に記憶される誤り訂正データを生成する訂正データ生成部と、前記データバッファに格納されたデータと、前記誤り訂正バッファに格納されたデータとに基づいて、誤り訂正処理を行う誤り訂正処理部とを備えることを特徴とするメモリ装置。前記データバッファに格納されたデータと、前記誤り訂正バッファに格納されたデータとを、外部より直接読み出すためのデータパスを備えることを特徴とする請求項4記載のメモリ装置。前記誤り訂正処理部によって誤り訂正されたデータを、外部に出力するための出力用データバッファを備え、前記出力用データバッファの入力側バスには、データの書き込み用バスが接続され、前記出力用データバッファの出力側バスは、前記データバッファの入力バスに接続されていると共に、前記訂正データ生成部の入力バスにゲートを介して接続され、前記訂正データ生成部の出力バスは、前記誤り訂正バッファの入力バスにゲートを介して接続されており、前記制御部は、データの書き込み及び読み出しに応じて、前記各ゲートのイネーブル制御を行うことを特徴とする請求項4又は5記載のメモリ装置。データを、複数のデータビット列部に分割すると共に、前記データに発生した誤りを訂正するための誤り訂正データを、前記複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割し、任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを、カラム側の位置が異なるように配置すると共に、任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを異なるアドレスに配置したメモリセル部と、前記メモリセル部からデータ及び誤り訂正データを読み出すと、任意のデータビット列部に対応する誤り訂正ビット列部を用いて誤り訂正処理を行う誤り訂正処理部と、前記データの読み出しアドレスが与えられると、前記メモリセル部より前記データと前記データに対応する誤り訂正データとを連続して読み出す読み出し制御部とを備えたことを特徴とするメモリ装置。データを、複数のデータビット列部に分割すると共に、前記データに発生した誤りを訂正するための誤り訂正データを、前記複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割し、メモリセル部において、任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを、カラム側の位置が異なるように配置し、前記メモリセル部からデータ及び誤り訂正データを読み出した後に、任意のデータビット列部に対応する誤り訂正ビット列部を用いて誤り訂正処理を行うことを特徴とするメモリデータの誤り訂正方法。任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを異なるアドレスに配置することを特徴とする請求項8記載のメモリデータの誤り訂正方法。1ワードのデータを構成するデータビット列部を同じアドレスに配置し、当該データビット列部に対応する誤り訂正ビット列部を同じアドレスに配置することを特徴とする請求項9記載のメモリデータの誤り訂正方法。任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを同じアドレスに配置することを特徴とする請求項8記載のメモリデータの誤り訂正方法。例えば、デコーダを共通化するとともに、センスアンプも共通化して、センスアンプに入力されるデータをマルチプレクサにより切り替えるようにすれば、回路規模の増大を抑制できる。ところが、このような構成では、1つのセンスアンプ、若しくはセンスアンプの出力端子につながる配線に故障が発生した場合は自動的に2ビットエラーとなるため、誤り訂正ができなくなることが想定される。本発明は上記事情に鑑みてなされたものであり、その目的は、回路規模の増大を抑制しつつ、一部のハードウェアの故障による2ビットエラーの発生を回避できるメモリ回路,前記メモリ回路とデータの誤り訂正機能を有するメモリ装置及びメモリデータの誤り訂正方法を提供することにある。請求項1記載のメモリ回路によれば、データメモリセル部には、データが、複数のデータビット列部に分割されて記憶され、誤り訂正メモリセル部には、前記データに発生した誤りを訂正するための誤り訂正データが、前記複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割されて記憶されている。ロー/カラムデコーダは、読み出しアドレスに応じてデータ及び誤り訂正データを同時に読み出すが、この読み出しの際に使用されるセンスアンプは、前記データのビット数分だけ設けられており、各ビットに対応するセンスアンプには、制御部がマルチプレクサを制御することで、データと誤り訂正データとが切り替えて入力される。マルチプレクサには、任意のデータビット列部に属するビットと、前記データビット列部に対応しない誤り訂正ビット列部に属するビットとの組み合わせが入力されるように接続されている。そして、センスアンプより出力されるデータと誤り訂正データとは、デマルチプレクサを介してデータバッファと誤り訂正バッファとに出力し分けられる。ここで、何れか1つのセンスアンプの出力ラインに不具合が発生したこと,例えばセンスアンプが故障したこと想定する。すると、マルチプレクサにより切り替えられて上記センスアンプを介して読み出されるデータと誤り訂正データとには、それぞれ1ビットずつの誤りが含まれることになる。しかし、マルチプレクサには、前記データのデータビット列部に属するビットと、前記データビット列部に対応しない誤り訂正ビット列部に属するビットとの組み合わせが入力されるので、データビット列部と、それに対応する誤り訂正ビット列部との組み合わせ中では誤りが1ビットしか含まれなくなる。したがって、デマルチプレクサを介して、データバッファと誤り訂正バッファとに出力し分けられたデータと誤り訂正データとを、対応するビット列部を組み合わせて誤り訂正を行えば、何れも1ビットの誤りであるから訂正することができる。これにより、ロー/カラムデコーダのカラム側をデータの読み出しと誤り訂正データの読み出しとについて共通化できると共に、センスアンプをデータのビット数分だけ設けた構成でも、1ビットラインの不具合により2ビットの誤りが発生することを回避できるので、メモリ回路を小型化することが可能となる。請求項2記載のメモリ回路によれば、データビット列部及び誤り訂正ビット列部を、それぞれ上位側,下位側の2つに分割し、データメモリセル部には上位側,下位側データビット列部の順に配置し、誤り訂正メモリセル部には下位側,上位側誤り訂正ビット列部の順で配置する。そして、データメモリセル部及び誤り訂正メモリセル部の出力ビット線は、マルチプレクサの各入力端子に配置されているビット順でそれぞれ配線する。すなわち、データメモリセル部と誤り訂正メモリセル部とに配置される各ビット列部を、上位側,下位側の順序が互いに異なるように配置することで、マルチプレクサを介して各センスアンプより読み出される各ビットの組み合わせが、データビット列部に対応しない誤り訂正ビット列部に属するものとなる。請求項3記載のメモリ回路によれば、データビット列部及び誤り訂正ビット列部を、それぞれ上位側,下位側の2つに分割し、データメモリセル部には上位側,下位側データビット列部の順に配置し、誤り訂正メモリセル部も同様に上位側,下位側誤り訂正ビット列部の順で配置する。そして、データメモリセル部及び誤り訂正メモリセル部の出力ビット線は、マルチプレクサの各入力端子に、上位側,下位側の並びを入れ替えたビット順で配線する。したがって、データメモリセル部と誤り訂正メモリセル部とにデータと誤り訂正データとを書き込む場合、請求項2のように、各ビット列部の上位側,下位側の配置が互いに異なるように入れ替えて書き込みを行わずとも、請求項2と同様の効果が得られる。請求項4記載のメモリ装置によれば、請求項1ないし3記載のメモリ回路に、書き込みデータに基づき誤り訂正メモリセル部に記憶される誤り訂正データを生成する訂正データ生成部と、データバッファに格納されたデータと誤り訂正バッファに格納されたデータとに基づき誤り訂正処理を行う誤り訂正処理部とを備える。したがって、本発明のメモリ回路に、誤り訂正データの生成機能と誤り訂正処理機能とを併せ持ったメモリ装置を提供できる。請求項5記載のメモリ装置によれば、データバッファに格納されたデータと、誤り訂正バッファに格納されたデータとを、外部より直接読み出すためのデータパスを備えるので、例えばデバッグ処理を行う場合において、誤り訂正処理が行われる前のデータ値や誤り訂正データの値を読み出して確認することができる。請求項6記載のメモリ装置によれば、誤り訂正処理部によって誤り訂正されたデータを、外部に出力するための出力用データバッファを備え、出力用データバッファの入力側バスに、データの書き込み用バスを接続する。また、出力用データバッファの出力側バスを、データバッファの入力バスにゲートを介して接続すると共に訂正データ生成部の入力バスに接続し、訂正データ生成部の出力バスを、誤り訂正バッファの入力バスにゲートを介して接続する。そして、制御部は、データの書き込み及び読み出しに応じて各ゲートのイネーブル制御を行う。このように構成すれば、データをメモリセル部に書き込む場合の経路は、書き込み用バスから出力用データバッファを介し、データバッファ→データメモリセル部に至る。一方、誤り訂正データについては、出力用データバッファ→訂正データ生成部誤り訂正データ生成→誤り訂正バッファ→誤り訂正データメモリセル部に至る。したがって、データを書き込む場合と読み出す場合とに使用するバッファが共通化されるので、メモリ装置を小型化することができる。請求項7記載のメモリ装置によれば、データを、複数のデータビット列部に分割すると共に、前記データに発生した誤りを訂正するための誤り訂正データを、複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割する。そして、メモリセル部には、任意のデータビット列部と当該データビット列部に対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置すると共に、任意のデータビット列部と当該データビット列部に対応する誤り訂正ビット列部とを異なるアドレスに配置する。誤り訂正処理部は、メモリセル部からデータ及び誤り訂正データが読み出されると、任意のデータビット列部に対応する誤り訂正ビット列部を用いて誤り訂正処理を行うが、読み出し制御部は、データの読み出しアドレスが与えられると、メモリセル部よりデータと当該データに対応する誤り訂正データとを連続して読み出す。すなわち、メモリセル部においてデータと当該データに対応する誤り訂正データとが異なるアドレスに配置される構成においても、データビット列部と、当該データビット列部に対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置すれば、請求項1で説明したように、何れか1つのセンスアンプの出力ラインに不具合が発生しても、データビット列部と、それに対応する誤り訂正ビット列部との組み合わせ中では誤りが1ビットしか含まれなくなる。そして、データと誤り訂正データとを、対応するビット列部を組み合わせて誤り訂正を行えば、何れも1ビットの誤りであるから訂正することができる。したがって、請求項1と同様にメモリ回路を小型化することが可能となる。またこの場合、データを読み出す側が必要とするのは誤り訂正されたデータのみであるから、誤り訂正データを読み出すためだけにアクセスを行うことは余分な処理である。そこで、請求項7によれば、読み出し制御部が、データの読み出しアドレスが与えられると、当該データに対応する誤り訂正データも連続して読み出すので、データを読み出す側が誤り訂正データを読み出すためだけに別途アドレスを出力してアクセスを行う必要がなくなる。請求項8記載のメモリデータの誤り訂正方法によれば、データを、複数のデータビット列部に分割すると共に、前記データに発生した誤りを訂正するための誤り訂正データを、前記複数のデータビット列部にそれぞれ対応する複数の誤り訂正ビット列部に分割し、メモリセル部に、任意のデータビット列部と、そのデータビット列部に対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置しておく。そして、メモリセル部からデータ及び誤り訂正データを読み出した後に、任意のデータビット列部に対応する誤り訂正ビット列部を用いて誤り訂正処理を行う。すなわち、メモリセル部において、データビット列部と、対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置すれば、メモリセル部からデータを読み出す際に、何れか1ビットの出力ラインに不具合が発生しても、データビット列部と、それに対応する誤り訂正ビット列部との組み合わせ中では誤りが1ビットしか含まれなくなり、1ビットの誤りを訂正することができる。そして、メモリセル部におけるデータビット列部と、対応する誤り訂正ビット列部との配置関係は予め分かっているので、メモリセル部からデータビット列部と誤り訂正ビット列部とを読み出した後に、両者の対応をとれば誤り訂正処理を行うことができる。請求項9記載のメモリデータの誤り訂正方法によれば、任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを異なるアドレスに配置するので、データを読み出すバスサイズの制限によりデータビット列部と、対応する誤り訂正ビット列部とを同じアドレスで読み出すことができない場合でも、読み出し後に両者の対応をとることで誤り訂正処理を行うことができる。請求項10記載のメモリデータの誤り訂正方法によれば請求項9の従属、1ワードのデータを構成するデータビット列部を同じアドレスに配置し、当該データビット列部に対応する誤り訂正ビット列部を同じアドレスに配置する。すなわち、請求項9のようにデータビット列部と、対応する誤り訂正ビット列部とを異なるアドレスに配置する場合でも、1ワードのデータのまとまりと、対応する誤り訂正データのまとまりとをそれぞれ同じアドレスに配置すれば、読み出し後に両者の対応を容易にとることができる。尚、ここで言う1ワードとは、データを1つのまとまりで捉えるサイズ、例えば1バイト,2バイト,4バイト等で捉える場合はそれぞれを1ワードのデータと称す。請求項11記載のメモリデータの誤り訂正方法によれば請求項8の従属、任意のデータビット列部と、当該データビット列部に対応する誤り訂正ビット列部とを同じアドレスに配置する。すなわち、請求項8のようにデータビット列部と、対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置する場合でも、両者を同じアドレスに配置すれば読み出し後に両者の対応を容易にとることができる。第1実施例以下、第1実施例について図1ないし図5を参照して説明する。図1は、メモリ装置の構成を示す機能ブロック図である。データ構成は、一例として、ノーマルデータ誤り訂正データであるパリティデータと明確に区別するため、エラー訂正誤り訂正の対象となるデータをノーマルデータと称す8ビット、パリティデータ8ビットの16ビットとするが、パリティデータは例えばハミング符号であり、8ビットデータの上位4ビット、下位4ビットに対応してそれぞれ3ビットが生成されるので実際のパリティデータビット数は6である。メモリ装置1は、メモリ回路2を備えている。メモリ回路2のメモリセル部3は、上位側8ビットがデータメモリセル部3N,下位側8ビットがパリティメモリセル部3P誤り訂正メモリセル部となっている。メモリセル部3は、図中左方から右方に、第1行ローに、それぞれが4ビットの列であるノーマルデータ2上位側;第7~第4ビット、ノーマルデータ1下位側;第3~第0ビット、パリティデータ1下位側;第3~第0ビット、パリティデータ2上位側;第7~第4ビットのように配列されている。また、第2行は、ノーマルデータ4、ノーマルデータ3、パリティデータ3、パリティデータ4のように配列されている。すなわち、ノーマルデータについては上位、下位の順で、パリティデータについては下位、上位の順で配置されている。以下、ノーマルデータ2,4,6,...n1が配置されているカラム側のビット列をノーマルカラム部3NU上位側データビット列部と称し、ノーマルデータ1,3,5,...nが配置されているカラム側のビット列をノーマルカラム部3NL下位側データビット列部と称する。また、パリティデータ2,4,6,...n1が配置されているカラム側のビット列をパリティカラム部3PU上位側誤り訂正ビット列部と称し、パリティデータ1,3,5,...nが配置されているカラム側のビット列をパリティカラム部3PL下位側誤り訂正ビット列部と称する。なお、メモリセル部3のメモリの種類については特段限定しないが、例えばフラッシュROM,EEPROM,DRAM,SRAMなどである。メモリセル部3の各行は、入力されたアドレスに応じて、共通のロー/カラムデコーダ4により16ビット毎に書き込み及び読み出しが行われる。そして、読み出された16ビットのデータは、8個のセレクタマルチプレクサ57~50を介して共通のセンスアンプ67~60の入力端子に与えられる。セレクタ57の入力端子には、ノーマルカラム部3NUの第7ビットと、パリティカラム部3PUの第3ビットダミー,図中に×を付して示すとが与えられ、セレクタ56の入力端子には、ノーマルカラム部3NUの第6ビットと、パリティカラム部3PLの第2ビットとが与えられている。そして、セレクタ50の入力端子には、ノーマルカラム部3NLの第0ビットと、パリティカラム部3PUの第4ビットとが与えられている。尚、パリティカラム部3PUの第7ビットもダミーである。すなわち、データメモリセル部3N及び誤り訂正メモリセル部3Pの出力ビット線は、セレクタ5の各入力端子に配置されているビット順でそれぞれ配線されている。センスアンプ67~0の出力端子は、メモリRDバス50を介して8個のデマルチプレクサ77~0に入力され図示は1個のみ、デマルチプレクサ7を介して2つの出力ゲート8N,8Pに振り分けられる。出力ゲート8N,8Pを介したデータは、それぞれ8ビットのデータバッファ9N,パリティバッファ9P誤り訂正バッファに格納される。データバッファ9Nに格納されたノーマルデータと、パリティバッファ9Pに格納されたパリティデータとは、エラー訂正部誤り訂正処理部10U,10Lに入力されてエラー訂正処理が行われると、その後段に配置される8ビットのデータバッファ11出力用データバッファに格納される。ここで、エラー訂正部10U,10Lには、それぞれノーマルデータが4ビットずつ入力され、パリティデータは4ビットずつ使用するのは3ビット入力される。エラー訂正部10Uには、ノーマルデータの上位4ビット第7~第4ビットと、パリティデータの上位4ビット第7~第4ビットとが入力され、エラー訂正部10Lには、ノーマルデータの下位4ビット第3~第0ビットと、パリティデータの下位4ビット第3~第0ビットとが入力される。尚、メモリ装置1に対するノーマルデータの書き込み及び読み出しは、外部の上位回路によりメモリ制御部12を介して行われる。すなわち、メモリ制御部12には、アドレスが入力されると共に、書き込み用のノーマルデータが入力され、メモリセル部3より読み出されたノーマルデータは、メモリ制御部12を経由して外部に出力される。したがって、エラー訂正部10によりエラー訂正処理されてデータバッファ11に格納されたノーマルデータは、RDバス13を介してメモリ制御部12に入力される。また、メモリセル部3に書き込まれるデータは、以下のようなパスを経由して書き込まれる。メモリ制御部12よりWRバス14上に出力されたノーマルデータは、データバッファ11及び出力ゲート15を経由してデータバッファ9Nに格納される。また、データバッファ11の出力側は、パリティ生成部誤り訂正データ生成部16U,16Lの入力側に接続されており、パリティ生成部16U,16Lは、ノーマルデータの上位,下位4ビット毎にそれぞれ3ビットのパリティデータを生成して出力する。出力されたパリティデータは、出力ゲート17を介してパリティバッファ9Pに格納される。書き込み時にデータバッファ9N,パリティバッファ9Pに格納されたそれぞれ8ビットのノーマルデータ,パリティデータは、メモリWRバス18を介してメモリセル部3に書き込まれる。また、メモリWRバス18に接続されているデータバッファ9N,パリティバッファ9Pの出力側は、データバッファ2RDバス19,パリティバッファRDバス20を介してメモリ制御部12に接続されている。すなわち、メモリ制御部12は、エラー訂正部10において訂正処理が実行される前のノーマルデータ及びパリティデータを、RDバス19及び20読み出し用のデータパスを介して直接読み出せるようになっている。また、メモリ制御部12は、データの書き込み、読み出し時に応じて、ゲート8,15,17のイネーブル制御を行ったり、セレクタ5やデマルチプレクサ7の選択切り替え制御を行うSEL信号。更に、メモリ制御部12は、各バッファ9,11に、データバッファ2WR,パリティバッファWR,データバッファ1WRによりデータを格納するタイミング信号を出力する。尚、ゲート8,15,17のイネーブル制御はメモリRD信号によって行われるが、ゲート15,17にはNOTゲート21を介した反転信号が与えられている。以上の構成において、メモリ回路2に、メモリ制御部12,バッファ9及び11,エラー訂正部10,パリティ生成部16を加えたものがメモリ装置1を構成している。ここで、本実施例において使用するパリティデータは、前述のようにハミング符号である。図2は、パリティ生成部16が4ビットのノーマルデータD3:0に基づいて3ビットのパリティデータP2:0を生成するロジックを示している。すなわち、各データビットの組み合わせを排他的論理和演算することでパリティデータが生成される。また、図3は、エラー訂正部10が、4ビットのノーマルデータD3:0と3ビットのパリティデータP2:0とに基づいて誤り訂正処理を行うロジックを示している。すなわち、各ノーマルデータビットとパリティデータビットとの組み合わせを排他的論理和演算することで3ビットのシンドロームs1~s3を生成し、それらのシンドロームの値に応じて1ビットのエラーが生じているノーマルデータビット,又はパリティビットを検出することができる。そして、検出されたビットの値を反転することで誤りを訂正できる。尚、パリティビット数をmとすると、符号長nは2m-1となり、情報数kはn-mとなる。本実施例の場合、m=3n=4である。次に、本実施例の作用について図4及び図5を参照して説明する。図4は、メモリ制御部12によって実行される処理内容を中心に示すフローチャートである。尚、メモリ制御部12については、ハードウェアロジックで構成しても良いし、マイクロコンピュータのソフトウェアにより機能を実現しても良い。先ず、アドレスが入力されると、最下位ビットを除いたアドレスをロー/カラムデコーダ4に出力するステップS1。メモリセル部3に対する書き込み及び読み出しは、16ビット2バイトを1ワードとして行うからである。次に、入力される制御信号が書き込みライト,読み出しリードの何れを示しているかに応じて処理が分岐するステップS2。書き込みであれば、書き込みデータをデータバッファ11に格納するステップS7。続いて、出力ゲート15をイネーブルにしてデータバッファ11に格納したノーマルデータをデータバッファ9Nにも格納する。また、データバッファ11に格納されたデータは、パリティ生成部16にも入力されてパリティデータが生成され、出力ゲート17をイネーブルにしてパリティバッファ9Pに格納するステップS8。それから、メモリWR信号をハイHi,アクティブにして、データバッファ9Nよりノーマルデータを、パリティバッファ9Pよりパリティデータを、メモリWRバス18を介してメモリセル部3に書き込むステップS9。一方、ステップS2において、データの読み出しである場合は、メモリRD信号をハイアクティブにしてSEL信号をローにする。更に、データバッファ2WR信号をハイアクティブにして、メモリセル部3より読み出した8ビットのノーマルデータを、データバッファ9Nに格納するステップS3。例えば、読み出しアドレスが最下位であれば、メモリセル部3からは、ノーマルデータ2,ノーマルデータ1,パリティデータ1,パリティデータ2の16ビットが読み出されるが、セレクタ5及びデマルチプレクサ7が入力端子0側を選択するので、ノーマルデータ2及び1の8ビットが、センスアンプ6を経由してデータバッファ9Nに格納される。次に、メモリRD信号をハイにしたままSEL信号をローLoにし、データバッファWR信号をハイアクティブにして、メモリセル部3より読み出した8ビットのパリティデータを、データバッファ9Pに格納するステップS4。この時、セレクタ5及びデマルチプレクサ7が入力端子1側を選択するので、パリティデータ1及び2の8ビットが、センスアンプ6を経由してデータバッファ9Pに格納される。すると、ノーマルデータ,パリティデータがエラー訂正部10に入力されて、ノーマルデータの上位/下位4ビットにつきそれぞれエラー訂正処理が行われ、処理結果がデータバッファ11に格納されるステップS5。そして、メモリ制御部12は、データバッファ11に格納されたノーマルデータを、上位回路に読み出し結果として転送するステップS6。次に、より具体的にアドレス値及びデータ値を与えて、メモリセル部3からのデータ読み出し経路における第1ビットのラインの故障が発生したケース例えば、センスアンプ61の故障などの読み出し及びエラー訂正処理について、図5のタイミングチャートを参照して説明する。<ケース1:読み出し/故障なし>メモリセル部3に対する16ビット対応の読み出しアドレスが00hであり、メモリセル部3より5A52hが読み出されたとする。バイナリでは、0101101001010010bとなる。SEL信号がローの期間は、上位側の8ビット;ノーマルデータ5Ahがセレクタ5により選択され、センスアンプ6を介してメモリRDバス50に出力され、更にデマルチプレクサ7を介してデータバッファ9Nに格納される。そして、SEL信号がハイの期間は、下位側の8ビット;パリティデータ52hがセレクタ5により選択され、パリティバッファ9Pに格納される。続いて、エラー訂正部10においてエラー訂正処理が実行されるが、エラー訂正部10Uには、ノーマルデータ2;5hに対応するパリティデータ2;2hが入力され、エラー訂正部10Lには、ノーマルデータ1;Ahに対応するパリティデータ1;5hが入力される。この場合エラーが発生していないので、訂正は行われず、データバッファ11には、ノーマルデータ5Ahがそのまま格納される。<ケース2:読み出し/センスアンプ61に故障発生>この場合、ケース1と同じアドレスの同じ16ビットデータを読み出そうとすると、センスアンプ61が故障したため、16ビットデータのうち、センスアンプ61を経由して読み出される2ビットにエラーが発生するデータ値1が0になる。正常0101101001010010b第1ビット故障0101100001010000bすなわち、5850hとなる。したがって、上位側の8ビット;ノーマルデータ58hがデータバッファ9Nに格納され、下位側の8ビット;パリティデータ50hがパリティバッファ9Pに格納されることになる。そして、これらのノーマルデータ及びパリティデータに基づきエラー訂正部10においてエラー訂正処理が実行されるが、それぞれ4ビット毎に、エラー訂正部10U,10Lに入力されるノーマルデータとパリティデータとの組み合わせは、以下のようになる。ノーマルデータパリティデータエラー訂正部10U5h0hエラーエラー訂正部10L8hエラー5hすなわち、それぞれのノーマルデータ及びパリティデータの組み合わせでは、エラーが発生しているのは1ビットずつとなる。したがって、エラー訂正部10U,10Lは、それぞれ1ビットエラーを訂正することができ、結果としてデータバッファ11には、<ケース1>と同様に誤りがないノーマルデータ5Ahが格納されることになる。<ケース3;書き込み>ケース3は、アドレス0000hにノーマルデータ96hを書き込む場合を示している。データバッファ11にノーマルデータ96hが格納されると、パリティ生成部16によりパリティデータ34hが生成される。すなわち、パリティ生成部16Uにおいてパリティデータ4h,パリティ生成部16Lにおいてパリティデータ3hが生成される。すると、ノーマルデータ96h,パリティデータ34hがそれぞれデータバッファ9N,パリティバッファ9Pに格納される。そして、メモリWR信号が出力されるタイミングで、メモリセル部3に16ビットデータ9634hが書き込まれる。以上のように本実施例によれば、データメモリセル部3Nにおいて、ノーマルデータをノーマルカラム部3NU,3NLに分割して記憶し、誤り訂正メモリセル部3Pには、前記データに発生した誤りを訂正するための誤り訂正データを、パリティカラム部3PU,3PLに分割して記憶し、ロー/カラムデコーダ4は、読み出しアドレスに応じてデータ及び誤り訂正データを同時に読み出す。そして、各ビットに対応するセンスアンプ67~0には、メモリ制御部12がセレクタ57~0を制御することで、ノーマルデータと誤り訂正データとを切り替えて入力する。この場合、セレクタ5には、ノーマルカラム部3NU,3NLのビットとパリティカラム部3PL,PUのビットとの組み合わせが入力されるように接続され、センスアンプ6より出力されるノーマルデータと誤り訂正データとを、デマルチプレクサ7を介してデータバッファ9Nとパリティバッファ9Pとに出力し分けるようにした。したがって、何れか1つのセンスアンプ6の出力ラインに不具合が発生した場合でも、データビット列部と、それに対応する誤り訂正ビット列部との組み合わせ中では誤りが1ビットしか含まれなくなり、1ビットの誤りを訂正することができる。これにより、ロー/カラムデコーダ4のカラム側をデータの読み出しと誤り訂正データの読み出しとについて共通化できると共に、センスアンプ6をデータのビット数分だけ設けた構成でも、1ビットラインの不具合により2ビットの誤りが発生することを回避でき、メモリ回路2を小型化することが可能となる。そして、メモリ回路2に、パリティ生成部16と、エラー訂正部10とを加えることで誤り訂正データの生成機能とエラー訂正処理機能とを併せ持ったメモリ装置1を提供できる。また、メモリ装置1、データバッファ9Nに格納されたノーマルデータと、パリティバッファ9Pに格納されたパリティデータとを、データバッファRDバス19,パリティバッファRDバス20を介して直接読み出すようにしたので、例えばデバッグ処理を行う場合において、誤り訂正処理が行われる前のデータ値やパリティデータの値を読み出して確認することができる。更に、エラー訂正部10により誤り訂正されたノーマルデータを外部に出力するためのデータバッファ11を備え、データバッファ11の入力側バスにWRバス14を接続し、データバッファ11の出力側バスを、データバッファ9Nの入力バスに出力ゲート15を介して接続すると共にパリティデータ生成部16の入力バスに接続し、パリティ生成部16の出力バスを、パリティバッファ9Pの入力バスに出力ゲート17を介して接続し、メモリ制御部12は、データの書き込み及び読み出しに応じて出力ゲート15,17のイネーブル制御を行うようにした。このように構成すれば、データを書き込む場合と読み出す場合とに使用するバッファを共通化して、メモリ装置1を小型化することができる。第2実施例図6は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第2実施例のメモリ装置22では、メモリセル部3において、パリティメモリセル部3Pにおける上位側,下位側の配置が、第1実施例とは逆になっている。すなわち、データメモリセル部3Nと同様に、パリティカラム部3PU,パリティカラム部3PLの順上位側,下位側データビット列部,及び上位側,下位側誤り訂正ビット列部の順で配置されている。尚、RDバス19及び20の図示は省略している。それに対応して、パリティメモリセル部3Pと、セレクタ5との間の接続関係が第1実施例と等しくなるように、パリティカラム部3PU,パリティカラム部3PLの並びが入れ替わるようにして配線されている。尚、メモリセル部3にデータを書き込む場合のメモリWRバス18’の配線も、上記のパリティカラム部3PU,パリティカラム部3PLの配置順に対応していることは勿論である。以上のように構成される第2実施例によれば、データメモリセル部3Nには上位側,下位側データビット列部の順に配置し、誤り訂正メモリセル部3Pにも上位側,下位側誤り訂正ビット列部の順で配置して、データメモリセル部3N及び誤り訂正メモリセル部3Pの出力ビット線は、セレクタ5の各入力端子に、上位側,下位側の並びを入れ替えたビット順で配線したので、メモリセル部3にノーマルデータとパリティデータとを書き込む場合、第1実施例のように、各ビット列部の上位側,下位側の配置が互いに異なるように入れ替えて書き込みを行わずとも第1実施例と同様の効果が得られる。第3実施例図7ないし図9は第3実施例であり、第1実施例と異なる部分のみ説明する。第3実施例のメモリ装置31において、メモリ回路32及びメモリセル部33は一般的な構成であり、メモリセル部33のバスサイズは8ビット1ワードとなっている。したがって、セレクタ5は削除されている。そして、メモリセル部33においては、ノーマルデータとパリティデータとが1アドレスずつ交互に配置されており、ノーマルデータアドレスnに対応するパリティデータアドレスn1の4ビット列の配置は、上位,下位が逆に配置されている。すなわち、メモリセル部33は、最初のアドレスにノーマルデータ2、ノーマルデータ1が配置され上位側,下位側データビット列部、その次のアドレスにパリティデータ1、パリティデータ2が配置されている下位側,上位側誤り訂正ビット列部。次のアドレスには、ノーマルデータ4、ノーマルデータ3が配置され、その次のアドレスにはパリティデータ3、パリティデータ4が配置されている。したがって、メモリ制御部読み出し制御部34は、SEL信号によってはデマルチプレクサ7の切り替え制御のみ行う。また、上記SEL信号は、ロー/カラムデコーダ35にも与えられている。ロー/カラムデコーダ35に与えられるアドレスは、第1実施例と同様にLSBを除く上位側アドレスであり、上記SEL信号がアドレスのLSBに相当する。すなわち、SEL信号が0の場合は偶数アドレスが読み出され又は書き込まれ、SEL信号が1の場合は偶数アドレスが読み出される又は書き込まれる。また、メモリセル部33にデータを書き込むためのメモリWRバス36は8ビットバスとなり、そのメモリWRバス35には、マルチプレクサ37を介してノーマルデータ,パリティデータが与えられる。マルチプレクサ37の0側はデータバッファ9Nの出力バスに接続され、1側はパリティバッファ9Pの出力バスに接続されている。そして、マルチプレクサ37の切り替え制御もSEL信号によって行われる。次に、第3実施例の作用について図8及び図9を参照して説明する。図8,図9は図4,図5相当図である。図8においては、データの書き込み時の処理が第1実施例とは異なっており、ステップS9に替えてステップS10,S11が配置されている。すなわち、上述したように、SEL信号がアドレスのLSBとしてロー/カラムデコーダ35に入力されることで、リードアクセスについては第1実施例と全く同様に行われる。<ケース1:読み出し/故障なし>メモリセル部33に入力される読み出しアドレスが00hであり、ロー/カラムデコーダ35に入力されるSEL信号がローの期間は、メモリセル部33からアドレス00hのノーマルデータ5Ahが読み出されたとする。バイナリでは、01011010bとなる。すると、ノーマルデータ5Ahは、センスアンプ6を介してメモリRDバス20に出力され、更にデマルチプレクサ7を介してデータバッファ9Nに格納される。続いて、読み出しアドレスが00hのままでSEL信号がハイになると、アドレス0001hのパリティデータ52hが読み出され、パリティバッファ9Pに格納される。そして、エラー訂正部10においてエラー訂正処理が実行されるが、この場合エラーが発生していないので、訂正は行われず、データバッファ11には、ノーマルデータ5Ahがそのまま格納される。<ケース2:読み出し/センスアンプ61に故障発生>この場合、ケース1と同じアドレスの同じノーマルデータを読み出そうとすると、センスアンプ61の故障により第1ビットにエラーが発生する。正常01011010b第1ビット故障01011000bすなわち、ノーマルデータ58hがデータバッファ9Nに格納される。続いて読み出されるアドレス0001hのパリティデータは、正常01010010b第1ビット故障01010000bとなり、パリティデータ50hがパリティバッファ9Pに格納されることになる。そして、これらのノーマルデータ及びパリティデータに基づきエラー訂正部10においてエラー訂正処理が実行されるが、それぞれ4ビット毎に、エラー訂正部10U,10Lに入力されるノーマルデータとパリティデータとの組み合わせは第1実施例と同様になり、それぞれのノーマルデータ及びパリティデータの組み合わせでは、エラーが発生しているのは1ビットずつとなる。したがって、エラー訂正部10U,10Lは、それぞれ1ビットエラーを訂正することができ、結果としてデータバッファ11には、<ケース1>と同様に誤りがないノーマルデータ5Ahが格納されることになる。<ケース3;書き込み>ケース3は、アドレス0000hにノーマルデータ96hを書き込む場合であるが、この時は、パリティ生成部16によりパリティデータ34hが生成され、メモリWR信号がアクティブとなり且つSEL信号がローレベルの期間に、メモリセル部33のアドレス0000hにノーマルデータ96hが書き込まれステップS10、SEL信号がハイレベルに切り替わると、アドレス0001hにパリティデータ34hが書き込まれるステップS11。以上のように第3実施例によれば、メモリセル部33に、任意のデータビット列部と当該データビット列部に対応する誤り訂正ビット列部とをカラム側の位置が異なるように配置すると共に、任意のデータビット列部と当該データビット列部に対応する誤り訂正ビット列部とを異なるアドレスに配置し、メモリ制御部34は、データの読み出しアドレスが与えられると、アドレスのLSBの代わりにSEL信号を用いて、メモリセル部よりデータと当該データに対応する誤り訂正データとを連続して読み出すようにした。このように構成した場合も、何れか1つのセンスアンプ6の出力ラインに不具合が発生しても、データビット列部と、それに対応する誤り訂正ビット列部との組み合わせ中では誤りが1ビットしか含まれなくなり、1ビットの誤りを訂正することができる。そして、データを読み出す側が必要とするのは誤り訂正されたデータのみであるから、パリティデータを読み出すためだけにアクセスを行うことは余分な処理である。そこで、第3実施例によれば、データを読み出す側がパリティデータを読み出すためだけに別途アドレスを出力してアクセスを行う必要がなくなる。また、メモリセル部33におけるノーマルデータ2/1と、パリティデータ1/2との配置関係は予め分かっているので、メモリセル部33から読み出した後に両者の対応をとれば、誤り訂正処理を問題なく行うことができる。第4実施例図10は第4実施例であり、第3実施例と異なる部分について説明する。第4実施例は、第3実施例のメモリセル部33において、ノーマルデータの4ビット列及びパリティデータの4ビット列を配置する際のバリエーションを示す。尚、図中のAは例えば上位側,Bは下位側の4ビット列を示す。aは、各アドレスの上位側4ビットに、ノーマルデータを1A,1B,2A,2B,...の順で配置し、各アドレスの下位側4ビットに、パリティデータを1A,1B,2A,2B,...の順で配置する。したがって、例えばアドレス0000hのリードアクセスでは、ノーマルデータ1A,パリティデータ1Aが読み出され、アドレス0001hSEL=Hのリードアクセスでは、ノーマルデータ1B,パリティデータ1Bが読み出される。これらのビット列の配置に応じて、各リードアクセスにおいて、データバッファ9N,パリティバッファ9Pに格納されるノーマルデータ,パリティデータを4ビットずつ適宜振り分ければよい。また、bは、aの配置に対して、各アドレスの下位側4ビットに、パリティデータを1B,1A,2B,2A,...の順で配置する。したがって、例えばアドレス0000hのリードアクセスでは、ノーマルデータ1A,パリティデータ1Bが読み出され、アドレス0001hSEL=Hのリードアクセスでは、ノーマルデータ1B,パリティデータを1Aが読み出される。この場合も、ビット列の配置に応じて、各リードアクセスにおいて、データバッファ9N,パリティバッファ9Pに格納されるノーマルデータ,パリティデータを4ビットずつ適宜振り分ければよい。尚、aの配置に対して、ノーマルデータ側のA,Bを逆にしても良い。以上のように第4実施例による場合も、第3実施例と同様の効果が得られる。第5実施例図11は第5実施例である。図11は、メモリセル部が第1実施例のように16ビットサイズであり、且つノーマルデータが16ビット2バイト;1ワード構成である場合の配置例を示す。16ビットのノーマルデータを、8ビット列で上位,下位に分けるとする。8ビットのノーマルデータについてエラー訂正を行うには、パリティデータが4ビットm=4あれば良い。したがって、16ビットのノーマルデータに対してパリティデータが8ビットあれば良い。aの場合、アドレス0000hにノーマルデータ2,1が配置され上位側,下位側データビット列部、アドレス0004hにノーマルデータ4,3が配置されている。そして、アドレス0002hには、上記の4バイトノーマルデータをエラー訂正するためのパリティデータが3,1,4,2それぞれ下位側,下位側,上位側,上位側誤り訂正ビット列部の順で配置されている。そして、図示はしないが、続くアドレスアドレス0006hにはノーマルデータ5,6が配置されることになる。このように配置すれば、ノーマルデータ,パリティデータをそれぞれ8ビットずつ読み出した場合に、何れか1ビットに故障が発生していても、8ビット単位のノーマルデータに対応する4ビットのパリティデータが同じビットラインで重複して読み出されることがなく、発生するエラーは1ビットに留まるため訂正が可能となる。bは、aに対してアドレス0002hのパリティデータの配置を2,4に入れ替えたものである。また、図c,dは、a,bに対してアドレス0003hのパリティデータの配置を1,3に入れ替えたものである。これらの場合も、同様の効果が得られる。また、図11に示す配置に対してノーマルデータの配置を変更しても良く、ノーマルデータ1,3を入れ替えたり、ノーマルデータ2,4を入れ替えたりしても良い。以上のように第5実施例によれば、ノーマルデータのサイズが16ビットである場合についても同様の効果が得られる。そして、1ワードのノーマルデータ2,1を同じアドレス0000hに配置し、上記ノーマルデータ2,1に対応するパリティデータ2,1を同じアドレス0002hに配置した。すなわち、ノーマルデータと対応するパリティデータとを異なるアドレスに配置する場合でも、1ワードのノーマルデータのまとまりと、対応するパリティデータのまとまりとをそれぞれ同じアドレスに配置すれば、読み出し後に両者の対応を容易にとることができる。第6実施例図12は第6実施例である。第6実施例は、第5実施例と同様にノーマルデータが16ビット2バイト構成である場合について、第1実施例と同様に各4ビット列について3ビットのパリティデータを割り当てる。aの場合、アドレス0000hにノーマルデータが4,3,2,1の順で配置され、アドレス0002hにパリティデータが3,4,1,2の順で配置されている。bの場合、アドレス0002hのパリティデータが3,2,1,4の順で配置され、cの場合、同パリティデータが1,4,3,2の順で配置され、dの場合、同パリティデータが1,2,3,4の順で配置されている。これらのように配置した場合も、ノーマルデータ,パリティデータをそれぞれ8ビットずつ読み出した場合に、何れか1ビットのラインに故障が発生していても、8ビット単位のノーマルデータに対応する4ビットのパリティデータが同じビットラインで重複して読み出されることがなく、発生するエラーは1ビットに留まるため訂正が可能となる。第7実施例図13は第7実施例である。図13は、メモリセル部が32ビットサイズであり、且つノーマルデータが32ビット4バイト;1ワード構成である場合の配置例を示す。尚、図示はしないが、センスアンプは16ビット分配置されており、読み出しは16ビットずつ切り替えて行うものとする。この場合、32ビットのノーマルデータを、16ビット列で上位,下位に分ける。16ビットのノーマルデータについてエラー訂正を行うには、パリティデータが5ビットm=5あれば良い。そして、図13では、アドレス0000h~0008hには、ノーマルデータ1~6が配置されており、アドレス000Chには、上記ノーマルデータ1~6に対応する各5ビットのパリティデータ1~6が配置されている。その配置順は、上位側より5,3,1,6,4,2となっている。この場合、上位側の3つのパリティデータ5,3,1これらは下位側誤り訂正ビット列部の配置順を入れ替えても良いし、下位側の3つのパリティデータ6,4,2これらは上位側誤り訂正ビット列部の配置順を入れ替えても良い。また、アドレス0000h~0008hに配置されているノーマルデータを、32ビット単位で入れ替えても良い。このように配置すれば、ノーマルデータ,パリティデータをそれぞれ16ビットずつ読み出した場合に、何れか1ビットに故障が発生していても、16ビット単位のノーマルデータに対応する5ビットのパリティデータが同じビットラインで重複して読み出されることがなく、発生するエラーは1ビットに留まるため訂正が可能となる。以上のように第6実施例によれば、ノーマルデータのサイズが32ビットである場合についても同様の効果が得られる。本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。誤り訂正符号は、ハミング符号に限ることはない。ノーマルデータのサイズは、個別の設計に応じて適宜変更すれば良い。書き込み用と読み出し用とで、バッファを個別に設けても良い。第3実施例において、ノーマルデータとパリティデータとをそれぞれ独立したリードサイクルで読み出しても良い。データバッファに格納されたデータと、誤り訂正バッファに格納されたデータとを、外部より直接読み出すためのデータパスは、必要に応じて設ければ良い。ノーマルデータを何ビットのビット列に分割し、それに対して何ビットのパリティデータを割り当てるかは、m≦kを維持する範囲で適宜設定すれば良い。"