(57)【要約】【課題】メモリバス幅を増加させることなくＥＣＣ機能に対応した半導体記憶装置を提供すること。【解決手段】制御回路５１は、メモリセルアレイ５２に対するパリティデータの入出力が、メモリセルアレイ５２に対するパリティデータに対応するデータの入出力のタイミングと異なるように、カラムデコーダ５４およびパリティカラムデコーダ５５を制御する。したがって、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくＥＣＣ機能に対応させることが可能となる。【選択図】        図５
2004246754.tif 000002
【特許請求の範囲】
【請求項１】
バースト動作によってデータの入出力を行なう半導体記憶装置であって、
複数のメモリセルを有するメモリセルアレイと、
ロウアドレスをデコードするロウデコーダと、
カラムアドレスをデコードする第１のカラムデコーダと、
パリティ用のカラムアドレスをデコードする第２のカラムデコーダと、
前記メモリセルアレイに対するパリティデータの入出力が、前記メモリセルアレイに対する前記パリティデータに対応するデータの入出力のタイミングと異なるように、前記第１のカラムデコーダおよび前記第２のカラムデコーダを制御する制御手段とを含む、半導体記憶装置。
【請求項２】
前記制御手段は、前記第１のカラムデコーダを制御して所定回のバースト動作によるデータの書込みの制御を行なった後に、前記第２のカラムデコーダを制御して当該データに対応するパリティデータの書込みの制御を行なう、請求項１記載の半導体記憶装置。
【請求項３】
前記制御手段は、前記第２のカラムデコーダを制御してパリティデータの読出しの制御を行なった後に、前記第１のカラムデコーダを制御して所定回のバースト動作による当該パリティデータに対応するデータの読出しの制御を行なう、請求項１または２記載の半導体記憶装置。
【請求項４】
前記第２のカラムデコーダは、前記第１のカラムデコーダによってデコードされるアドレスの一部をデコードする、請求項１〜３のいずれかに記載の半導体記憶装置。
【請求項５】
バースト動作によってデータの入出力を行なう半導体記憶装置を制御する制御装置であって、
前記半導体記憶装置に対して入出力するパリティデータを保持して所定ビット単位でシフトするバッファと、
前記半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算して前記バッファに順次所定ビット単位で格納し、前記半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じて前記バッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なう演算手段と、
前記バッファに対するパリティデータの入出力を制御するスイッチング手段とを含む、制御装置。
【請求項６】
前記スイッチング手段は、前記半導体記憶装置に対する所定回のバースト書込みが終了した後に、前記バッファに格納される当該データに対応したパリティデータを出力する、請求項５記載の制御装置。
【請求項７】
前記スイッチング手段は、前記半導体記憶装置に対する所定回のバースト読出しが行なわれる前に、当該データに対応したパリティデータを前記バッファに出力する、請求項５または６記載の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋｉｎｇ  ａｎｄ  Ｃｏｒｒｅｃｔｉｎｇ）機能に対応した半導体記憶装置に関し、特に、メモリバス幅を削減することが可能な半導体記憶装置およびそれを制御する制御装置に関する。
【０００２】
【従来の技術】
近年、コンピュータの処理速度が著しく高速になり、それに伴ってコンピュータの信頼性を向上させるための機能が必要になってきている。その機能の１つとして、ＥＣＣ機能を挙げることができる。高信頼性が要求されるコンピュータにおいては、主記憶にＥＣＣ機能に対応したものが使用される場合が多い。これによって、エラーが発生した場合にはパリティデータによるエラーを補正することができる。
【０００３】
たとえば、６４ビットの本来のデータに８ビットのパリティデータを付加することにより、７２ビットのうちの任意の１ビットのエラーを補正することができると共に、２ビット以上のエラーを検出することが可能となる。
【０００４】
これに関する技術として、特開平１１−６５９４４号公報に開示された発明がある。この特開平１１−６５９４４号公報に開示されたデータ誤り検出回路は、ｎビットのバーストエラーの検出機能を持つＥＣＣ回路をｋ個備える構成を採り、各メモリ素子から出力されるｍビットのデータをｋ個に分割して、それらをｋ個用意される別々のＥＣＣ回路に入力するように構成する。これによって、メモリ装置を構成するメモリ素子の出力ビット数が増加するときでも、メモリ素子の出力ビット数が少ないときに使用されるＥＣＣ回路を使って、メモリ素子の故障発生を検出できるようになる。
【０００５】
【特許文献１】
特開平１１−６５９４４号公報
【０００６】
【発明が解決しようとする課題】
しかし、上述した特開平１１−６５９４４号公報に開示されたデータ誤り検出回路においては、メモリ素子の出力ビット数が増加する場合に対応することができるが、メモリバス幅自体を削減することはできない。したがって、システムにＥＣＣ機能を付加するとメモリバス幅が増加してしまうため、小型のシステムにＥＣＣ機能を付加することが困難であるといった問題点があった。
【０００７】
本発明は、上記問題点を解決するためになされたものであり、第１の目的は、メモリバス幅を増加させることなくＥＣＣ機能に対応した半導体記憶装置を提供することである。
【０００８】
第２の目的は、メモリバス幅を増加させることなくＥＣＣ機能に対応した半導体記憶装置を制御する制御装置を提供することである。
【０００９】
【課題を解決するための手段】
本発明のある局面に係る半導体記憶装置は、バースト動作によってデータの入出力を行なう半導体記憶装置であって、複数のメモリセルを有するメモリセルアレイと、ロウアドレスをデコードするロウデコーダと、カラムアドレスをデコードする第１のカラムデコーダと、パリティ用のカラムアドレスをデコードする第２のカラムデコーダと、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第１のカラムデコーダおよび第２のカラムデコーダを制御する制御手段とを含む。
【００１０】
本発明の別の局面に係る制御装置は、バースト動作によってデータの入出力を行なう半導体記憶装置を制御する制御装置であって、半導体記憶装置に対して入出力するパリティデータを保持して所定ビット単位でシフトするバッファと、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なう演算手段と、バッファに対するパリティデータの入出力を制御するスイッチング手段とを含む。
【００１１】
【発明の実施の形態】
図１は、ＥＣＣ機能を付加したシステムの一例を示す図である。このシステムは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１と、ＥＣＣ演算機能を有するメモリ制御装置２と、メモリ３とを含む。ＣＰＵ１とメモリ制御装置２との間のデータバス（主データ）幅は６４ビットである。また、メモリ制御装置２とメモリ３との間のメモリバス幅は７２ビット（主データが６４ビット、パリティデータが８ビット）である。
【００１２】
メモリ制御装置２は、ＥＣＣ演算部２１を含む。データ書込みに時において、ＥＣＣ演算部２１は、ＣＰＵ１から出力された６４ビットの主データから８ビットのパリティデータを演算する。そして、メモリ制御装置２は、メモリ３に対して６４ビットの主データと８ビットのパリティデータとを出力する。
【００１３】
また、データ読出し時において、ＥＣＣ演算部２１は、メモリ３から読出された６４ビットの主データと８ビットのパリティデータとを用いてエラー検出を行ない、エラーが発生した場合にはエラー補正を行って６４ビットの主データをＣＰＵ１へ出力する。
【００１４】
図２は、メモリ３の一例であるＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の構成を示す図である。ＳＤＲＡＭは、バースト動作と呼ばれる連続した複数のデータを連続して入出力する機能を有している。このＳＤＲＡＭは、８ビットのＤＱ（データ入出力）端子と１ビットのパリティ入出力端子とを有するメモリデバイスが８個搭載されたメモリモジュールによって構成される。図２においては、データＤ０〜７が入出力されるメモリデバイスを示している。
【００１５】
図２に示すように、ＳＤＲＡＭ３は、メモリ制御装置２からコマンドを受けてＳＤＲＡＭ３の全体的な制御を行なう制御回路３１と、メモリセルアレイ３２と、ロウデコーダ３３と、カラムデコーダ３４とを含む。ロウデコーダ３３は、制御回路３１からロウアドレスを受けて、ワード線（ＷＬ）０〜５１１のいずれかをアクティブにする。また、カラムデコーダ３４は、制御装置３１からカラムアドレスを受けて、共通ソース線（ＣＳＬ）０〜５１１のいずれかをアクティブにする。
【００１６】
ロウデコーダ３３およびカラムデコーダ３４によって選択されたメモリセルに対する書込み／読出しが可能になる。このメモリデバイスは、８回のバースト動作で５１２ビットの主データおよび６４ビットのパリティデータの書込み／読出しが行なわれる。
【００１７】
図１に示すシステムにおいては、６４ビットの主データに８ビットのパリティデータが付加されるので、バス幅が７２ビットになってしまい、この構成を小型のシステムに採用することが困難である。以下に、この問題点を解決するシステムについて説明する。
【００１８】
図３は、本発明の実施の形態におけるＥＣＣ機能を付加したシステムの一例を示す図である。このシステムは、ＣＰＵ１と、ＥＣＣ演算機能を有するメモリ制御装置４と、メモリ５とを含む。ＣＰＵ１とメモリ制御装置４との間のデータバス（主データ）幅は６４ビットである。また、メモリ制御装置４とメモリ５との間のメモリバス（主データ）幅も６４ビットである。
【００１９】
図４は、本発明の実施の形態におけるメモリ制御装置４の概略構成を示すブロック図である。このメモリ制御装置４は、メモリ５に対して制御信号を出力することによりデータの入出力を制御し、ＥＣＣ演算機能を有するＥＣＣ演算部４１と、データＤ０〜６３のスイッチング制御を行なうスイッチング部４３と、パラレルデータをシリアルデータに変換するパラレル−シリアル変換用バッファ（以下、Ｐ／Ｓ変換用バッファと略す。）４２とを含む。
【００２０】
メモリ制御部４においては、６４ビットのメモリバスが８ビットの８グループに分割される。ＣＰＵ１がメモリ５に対してバーストでデータを書込んでいる間は、スイッチング部４３が非導通となり、ＥＣＣ演算部４１が演算した８ビットのパリティデータが順次Ｐ／Ｓ変換用バッファ４２に格納されて、８ビット単位でシフトされる。そして、ＣＰＵ１がメモリ５に対するデータの書込みを終了したときに、スイッチング部４３が導通して６４ビットのパリティデータがメモリ５へ出力される。
【００２１】
また、メモリ５から６４ビットのパリティデータが出力されているときに、スイッチング部４３が導通し、６４ビットのパリティデータが８ビットずつＰ／Ｓ変換用バッファ４２に格納される。そして、ＣＰＵ１がメモリ５からバーストでデータを読出している間、ＥＣＣ演算部４１は、Ｐ／Ｓ変換用バッファ４２から出力される８ビットのパリティデータを参照してエラーの検出および補正を行なう。なお、メモリ制御装置４の動作の詳細は、後述する。
【００２２】
図５は、本発明の実施の形態におけるメモリ５の一例であるＳＤＲＡＭの概略構成を示す図である。ＳＤＲＡＭ５は、バースト機能を有しており、クロックに同期して動作を行なう。このＳＤＲＡＭは、８ビットのＤＱ（データ入出力）端子を有するメモリデバイスが８個搭載されたメモリモジュールによって構成される。図５においては、データＤ０〜７が入出力されるメモリデバイスを示している。
【００２３】
図５に示すように、ＳＤＲＡＭ５は、メモリ制御装置４からコマンドを受けてＳＤＲＡＭ５の全体的な制御を行なう制御回路５１と、メモリセルアレイ５２と、ロウデコーダ５３と、カラムデコーダ５４と、パリティカラムデコーダ５５とを含む。ロウデコーダ５３は、制御回路５１からロウアドレスを受けて、ワード線（Ｗｌ）０〜５１１のいずれかをアクティブにする。
【００２４】
カラムデコーダ５４は、制御回路５１からカラムアドレス（Ａ０〜８）を受けて、ＣＳＬ０〜５１１のいずれかをアクティブにする。また、パリティカラムデコーダ５５は、制御回路５１からパリティカラムアドレス（Ａ３〜８）を受けて、パリティＣＳＬ０〜６３のいずれかをアクティブにする。
【００２５】
ロウデコーダ５３およびカラムデコーダ５４によって選択されたメモリセルに対するデータの書込み／読出しが可能になる。このメモリデバイスは、８回のバースト動作で５１２ビットの主データおよび６４ビットのパリティデータの書込み／読出しが行なわれる。また、ロウデコーダ５３およびパリティカラムデコーダ５５によって選択されたメモリセルに対するパリティの書込み／読出しが可能になる。
【００２６】
このＳＤＲＡＭ５は、ＣＰＵ１がバーストでデータを書込むときは、８回のバースト書込みが終了した後に６４ビットのパリティデータの書込みが行なわれる。また、ＣＰＵ１がバーストでデータを読出すときは、ＳＤＲＡＭ５が最初に６４ビットのパリティデータを出力し、その後で８回のバースト読出しが行なわれる。
【００２７】
図６は、ＳＤＲＡＭ５の書込み動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置４およびＳＤＲＡＭ５の書込み動作について説明する。
【００２８】
まず、制御回路５１がメモリ制御装置４から活性化（ＡＣＴ）コマンドおよびロウアドレス“０１”を受けると、ロウデコーダ５３はＷＬ０１をアクティブにする（Ｔ１）。
【００２９】
次に、制御回路５１がメモリ制御装置４から書込み（ＷＲＴ）コマンド、カラムアドレス“０８”および書込みデータ（バースト１に対応した６４ビットデータ）を受けると、カラムデコーダ５４はＣＳＬ０８をアクティブにしてメモリセルアレイ５２への書込み動作を行なう（Ｔ３）。このとき、ＥＣＣ演算部４１は、８ビットのパリティデータを計算し、Ｐ／Ｓ変換用バッファ（Ｐ８）４２に書込む。
【００３０】
その後、クロックに同期してＣＳＬ０９〜１５が順次アクティブとなってバースト書込み（バースト２〜８）が行なわれる（Ｔ４〜Ｔ１０）。この間、ＥＣＣ演算部４１は、８ビットのパリティデータの計算を７回行ない、順次Ｐ／Ｓ変換用バッファ４２に書込んでシフトさせる。Ｔ１０において、Ｐ／Ｓ変換用バッファ４２に６４ビットのパリティデータが全て揃うことになる。
【００３１】
次に、パリティカラムデコーダ５５がＰＣＳＬ１をアクティブにすることにより、メモリ制御装置４から出力される６４ビットのパリティデータをメモリセルアレイ５２に書込む（Ｔ１１）。このとき、スイッチング部４３が導通し、Ｐ／Ｓ変換用バッファ４２に格納される６４ビットのパリティデータがＤ０〜Ｄ６３に出力される。
【００３２】
最後に、制御回路５１がメモリ制御装置４からプリチャージ（ＰＲＥ）コマンドを受けると、ロウデコーダ５３がＷＬ０１を非アクティブにして、プリチャージが行なわれる（Ｔ１３）。
【００３３】
図７は、ＳＤＲＡＭ５の読出し動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置４およびＳＤＲＡＭ５の読出し動作について説明する。
【００３４】
まず、制御回路５１がメモリ制御装置４から活性化（ＡＣＴ）コマンドおよびロウアドレス“０１”を受けると、ロウデコーダ５３はＷＬ０１をアクティブにする（Ｔ１）。
【００３５】
次に、制御回路５１がメモリ制御装置４から読出し（ＲＥＡＤ）コマンド、カラムアドレス“０８”を受けると、パリティカラムデコーダ５５はＰＣＳＬ０１をアクティブにしてメモリセルアレイ５２から６４ビットのパリティデータを読出す（Ｔ３）。このとき、スイッチング部４３が導通し、Ｐ／Ｓ変換用バッファ４２に６４ビットのパリティデータが書込まれる。
【００３６】
次に、カラムデコーダ５４はＣＳＬ０８をアクティブにして、メモリセルアレイ５２から６４ビットデータ（バースト１に対応したデータ）を読出す（Ｔ４）。このとき、スイッチング部４３が非導通となり、ＥＣＣ演算部４１はＰ／Ｓ変換用バッファ４２から出力される８ビットのパリティデータを参照して、ＳＤＲＡＭ５から出力される６４ビットデータのエラー検出および補正を行なう。
【００３７】
その後、クロックに同期してＣＳＬ０９〜１５が順次アクティブとなってバースト読出し（バースト２〜８）が行なわれる（Ｔ５〜Ｔ１１）。この間、ＥＣＣ演算部４１は、Ｐ／Ｓ変換用バッファ４２から順次出力される８ビットのパリティデータを参照して、ＳＤＲＡＭ５から出力される６４ビットデータのエラー検出および補正を順次７回行なう。
【００３８】
最後に、制御回路５１がメモリ制御装置４からプリチャージ（ＰＲＥ）コマンドを受けると、ロウデコーダ５３がＷＬ０１を非アクティブにして、プリチャージが行なわれる（Ｔ１３）。
【００３９】
以上説明したように、本実施の形態におけるメモリ５によれば、データ書込み時において、８回の６４ビットバースト書込みが終了した後に６４ビットのパリティデータを書込み、データ読出し時において、まず６４ビットのパリティデータの読出しを行なった後に８回の６４ビットバースト読出しを行なうようにしたので、メモリバス幅を増加させることなくＥＣＣ機能に対応することが可能となった。
【００４０】
また、本実施の形態におけるメモリ制御装置４によれば、データ書込み時において、８回の６４ビットバースト書込み中に順次８ビットのパリティデータを８回計算し、バースト書込みが終了した後に６４ビットのパリティデータを出力し、データ読出し時において、まず６４ビットのパリティデータをＰ／Ｓ変換用バッファ４２に格納した後、８回の６４ビットバースト読出し中に順次エラーの検出および補正を行なうようにしたので、上記効果を奏するメモリ５を制御することが可能となった。
【００４１】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００４２】
【発明の効果】
本発明のある局面に係る半導体記憶装置によれば、制御部が、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第１のカラムデコーダおよび第２のカラムデコーダを制御するので、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくＥＣＣ機能に対応させることが可能となった。
【００４３】
本発明の別の局面に係る制御装置によれば、演算手段が、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なうので、メモリバス幅を増加させることなくＥＣＣ機能に対応した半導体記憶装置を制御することが可能となった。
【図面の簡単な説明】
【図１】ＥＣＣ機能を付加したシステムの一例を示す図である。
【図２】メモリ３の一例であるＳＤＲＡＭの構成を示す図である。
【図３】本発明の実施の形態におけるＥＣＣ機能を付加したシステムの一例を示す図である。
【図４】本発明の実施の形態におけるメモリ制御装置４の概略構成を示すブロック図である。
【図５】本発明の実施の形態におけるメモリ５の一例であるＳＤＲＡＭの概略構成を示す図である。
【図６】ＳＤＲＡＭ５の書込み動作を説明するためのタイミングチャートである。
【図７】ＳＤＲＡＭ５の読出し動作を説明するためのタイミングチャートである。
【符号の説明】
１  ＣＰＵ、２，４  メモリ制御装置、３，５  メモリ、２１，４１  ＥＣＣ演算部、３１，５１  制御回路、３２，５２  メモリセルアレイ、３３，５３  ロウデコーダ、３４，５４  カラムデコーダ、４２  Ｐ／Ｓ変換用バッファ、４３  スイッチング部、５５  パリティカラムデコーダ。
【図１】
2004246754.tif 000003
【図２】
2004246754.tif 000004
【図３】
2004246754.tif 000005
【図４】
2004246754.tif 000006
【図５】
2004246754.tif 000007
【図６】
2004246754.tif 000008
【図７】
2004246754.tif 000009