JP2004246754A - 半導体記憶装置およびその制御装置 - Google Patents
半導体記憶装置およびその制御装置 Download PDFInfo
- Publication number
- JP2004246754A JP2004246754A JP2003037716A JP2003037716A JP2004246754A JP 2004246754 A JP2004246754 A JP 2004246754A JP 2003037716 A JP2003037716 A JP 2003037716A JP 2003037716 A JP2003037716 A JP 2003037716A JP 2004246754 A JP2004246754 A JP 2004246754A
- Authority
- JP
- Japan
- Prior art keywords
- data
- parity data
- column decoder
- memory
- semiconductor memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1018—Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
- G11C7/1027—Static column decode serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled bit line addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/10—Aspects relating to interfaces of memory device to external buses
- G11C2207/105—Aspects related to pads, pins or terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Dram (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を提供すること。
【解決手段】制御回路51は、メモリセルアレイ52に対するパリティデータの入出力が、メモリセルアレイ52に対するパリティデータに対応するデータの入出力のタイミングと異なるように、カラムデコーダ54およびパリティカラムデコーダ55を制御する。したがって、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくECC機能に対応させることが可能となる。
【選択図】 図5
【解決手段】制御回路51は、メモリセルアレイ52に対するパリティデータの入出力が、メモリセルアレイ52に対するパリティデータに対応するデータの入出力のタイミングと異なるように、カラムデコーダ54およびパリティカラムデコーダ55を制御する。したがって、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくECC機能に対応させることが可能となる。
【選択図】 図5
Description
【0001】
【発明の属する技術分野】
本発明は、ECC(Error Checking and Correcting)機能に対応した半導体記憶装置に関し、特に、メモリバス幅を削減することが可能な半導体記憶装置およびそれを制御する制御装置に関する。
【0002】
【従来の技術】
近年、コンピュータの処理速度が著しく高速になり、それに伴ってコンピュータの信頼性を向上させるための機能が必要になってきている。その機能の1つとして、ECC機能を挙げることができる。高信頼性が要求されるコンピュータにおいては、主記憶にECC機能に対応したものが使用される場合が多い。これによって、エラーが発生した場合にはパリティデータによるエラーを補正することができる。
【0003】
たとえば、64ビットの本来のデータに8ビットのパリティデータを付加することにより、72ビットのうちの任意の1ビットのエラーを補正することができると共に、2ビット以上のエラーを検出することが可能となる。
【0004】
これに関する技術として、特開平11−65944号公報に開示された発明がある。この特開平11−65944号公報に開示されたデータ誤り検出回路は、nビットのバーストエラーの検出機能を持つECC回路をk個備える構成を採り、各メモリ素子から出力されるmビットのデータをk個に分割して、それらをk個用意される別々のECC回路に入力するように構成する。これによって、メモリ装置を構成するメモリ素子の出力ビット数が増加するときでも、メモリ素子の出力ビット数が少ないときに使用されるECC回路を使って、メモリ素子の故障発生を検出できるようになる。
【0005】
【特許文献1】
特開平11−65944号公報
【0006】
【発明が解決しようとする課題】
しかし、上述した特開平11−65944号公報に開示されたデータ誤り検出回路においては、メモリ素子の出力ビット数が増加する場合に対応することができるが、メモリバス幅自体を削減することはできない。したがって、システムにECC機能を付加するとメモリバス幅が増加してしまうため、小型のシステムにECC機能を付加することが困難であるといった問題点があった。
【0007】
本発明は、上記問題点を解決するためになされたものであり、第1の目的は、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を提供することである。
【0008】
第2の目的は、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を制御する制御装置を提供することである。
【0009】
【課題を解決するための手段】
本発明のある局面に係る半導体記憶装置は、バースト動作によってデータの入出力を行なう半導体記憶装置であって、複数のメモリセルを有するメモリセルアレイと、ロウアドレスをデコードするロウデコーダと、カラムアドレスをデコードする第1のカラムデコーダと、パリティ用のカラムアドレスをデコードする第2のカラムデコーダと、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第1のカラムデコーダおよび第2のカラムデコーダを制御する制御手段とを含む。
【0010】
本発明の別の局面に係る制御装置は、バースト動作によってデータの入出力を行なう半導体記憶装置を制御する制御装置であって、半導体記憶装置に対して入出力するパリティデータを保持して所定ビット単位でシフトするバッファと、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なう演算手段と、バッファに対するパリティデータの入出力を制御するスイッチング手段とを含む。
【0011】
【発明の実施の形態】
図1は、ECC機能を付加したシステムの一例を示す図である。このシステムは、CPU(Central Processing Unit)1と、ECC演算機能を有するメモリ制御装置2と、メモリ3とを含む。CPU1とメモリ制御装置2との間のデータバス(主データ)幅は64ビットである。また、メモリ制御装置2とメモリ3との間のメモリバス幅は72ビット(主データが64ビット、パリティデータが8ビット)である。
【0012】
メモリ制御装置2は、ECC演算部21を含む。データ書込みに時において、ECC演算部21は、CPU1から出力された64ビットの主データから8ビットのパリティデータを演算する。そして、メモリ制御装置2は、メモリ3に対して64ビットの主データと8ビットのパリティデータとを出力する。
【0013】
また、データ読出し時において、ECC演算部21は、メモリ3から読出された64ビットの主データと8ビットのパリティデータとを用いてエラー検出を行ない、エラーが発生した場合にはエラー補正を行って64ビットの主データをCPU1へ出力する。
【0014】
図2は、メモリ3の一例であるSDRAM(Synchronous Dynamic Random Access Memory)の構成を示す図である。SDRAMは、バースト動作と呼ばれる連続した複数のデータを連続して入出力する機能を有している。このSDRAMは、8ビットのDQ(データ入出力)端子と1ビットのパリティ入出力端子とを有するメモリデバイスが8個搭載されたメモリモジュールによって構成される。図2においては、データD0〜7が入出力されるメモリデバイスを示している。
【0015】
図2に示すように、SDRAM3は、メモリ制御装置2からコマンドを受けてSDRAM3の全体的な制御を行なう制御回路31と、メモリセルアレイ32と、ロウデコーダ33と、カラムデコーダ34とを含む。ロウデコーダ33は、制御回路31からロウアドレスを受けて、ワード線(WL)0〜511のいずれかをアクティブにする。また、カラムデコーダ34は、制御装置31からカラムアドレスを受けて、共通ソース線(CSL)0〜511のいずれかをアクティブにする。
【0016】
ロウデコーダ33およびカラムデコーダ34によって選択されたメモリセルに対する書込み/読出しが可能になる。このメモリデバイスは、8回のバースト動作で512ビットの主データおよび64ビットのパリティデータの書込み/読出しが行なわれる。
【0017】
図1に示すシステムにおいては、64ビットの主データに8ビットのパリティデータが付加されるので、バス幅が72ビットになってしまい、この構成を小型のシステムに採用することが困難である。以下に、この問題点を解決するシステムについて説明する。
【0018】
図3は、本発明の実施の形態におけるECC機能を付加したシステムの一例を示す図である。このシステムは、CPU1と、ECC演算機能を有するメモリ制御装置4と、メモリ5とを含む。CPU1とメモリ制御装置4との間のデータバス(主データ)幅は64ビットである。また、メモリ制御装置4とメモリ5との間のメモリバス(主データ)幅も64ビットである。
【0019】
図4は、本発明の実施の形態におけるメモリ制御装置4の概略構成を示すブロック図である。このメモリ制御装置4は、メモリ5に対して制御信号を出力することによりデータの入出力を制御し、ECC演算機能を有するECC演算部41と、データD0〜63のスイッチング制御を行なうスイッチング部43と、パラレルデータをシリアルデータに変換するパラレル−シリアル変換用バッファ(以下、P/S変換用バッファと略す。)42とを含む。
【0020】
メモリ制御部4においては、64ビットのメモリバスが8ビットの8グループに分割される。CPU1がメモリ5に対してバーストでデータを書込んでいる間は、スイッチング部43が非導通となり、ECC演算部41が演算した8ビットのパリティデータが順次P/S変換用バッファ42に格納されて、8ビット単位でシフトされる。そして、CPU1がメモリ5に対するデータの書込みを終了したときに、スイッチング部43が導通して64ビットのパリティデータがメモリ5へ出力される。
【0021】
また、メモリ5から64ビットのパリティデータが出力されているときに、スイッチング部43が導通し、64ビットのパリティデータが8ビットずつP/S変換用バッファ42に格納される。そして、CPU1がメモリ5からバーストでデータを読出している間、ECC演算部41は、P/S変換用バッファ42から出力される8ビットのパリティデータを参照してエラーの検出および補正を行なう。なお、メモリ制御装置4の動作の詳細は、後述する。
【0022】
図5は、本発明の実施の形態におけるメモリ5の一例であるSDRAMの概略構成を示す図である。SDRAM5は、バースト機能を有しており、クロックに同期して動作を行なう。このSDRAMは、8ビットのDQ(データ入出力)端子を有するメモリデバイスが8個搭載されたメモリモジュールによって構成される。図5においては、データD0〜7が入出力されるメモリデバイスを示している。
【0023】
図5に示すように、SDRAM5は、メモリ制御装置4からコマンドを受けてSDRAM5の全体的な制御を行なう制御回路51と、メモリセルアレイ52と、ロウデコーダ53と、カラムデコーダ54と、パリティカラムデコーダ55とを含む。ロウデコーダ53は、制御回路51からロウアドレスを受けて、ワード線(Wl)0〜511のいずれかをアクティブにする。
【0024】
カラムデコーダ54は、制御回路51からカラムアドレス(A0〜8)を受けて、CSL0〜511のいずれかをアクティブにする。また、パリティカラムデコーダ55は、制御回路51からパリティカラムアドレス(A3〜8)を受けて、パリティCSL0〜63のいずれかをアクティブにする。
【0025】
ロウデコーダ53およびカラムデコーダ54によって選択されたメモリセルに対するデータの書込み/読出しが可能になる。このメモリデバイスは、8回のバースト動作で512ビットの主データおよび64ビットのパリティデータの書込み/読出しが行なわれる。また、ロウデコーダ53およびパリティカラムデコーダ55によって選択されたメモリセルに対するパリティの書込み/読出しが可能になる。
【0026】
このSDRAM5は、CPU1がバーストでデータを書込むときは、8回のバースト書込みが終了した後に64ビットのパリティデータの書込みが行なわれる。また、CPU1がバーストでデータを読出すときは、SDRAM5が最初に64ビットのパリティデータを出力し、その後で8回のバースト読出しが行なわれる。
【0027】
図6は、SDRAM5の書込み動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置4およびSDRAM5の書込み動作について説明する。
【0028】
まず、制御回路51がメモリ制御装置4から活性化(ACT)コマンドおよびロウアドレス“01”を受けると、ロウデコーダ53はWL01をアクティブにする(T1)。
【0029】
次に、制御回路51がメモリ制御装置4から書込み(WRT)コマンド、カラムアドレス“08”および書込みデータ(バースト1に対応した64ビットデータ)を受けると、カラムデコーダ54はCSL08をアクティブにしてメモリセルアレイ52への書込み動作を行なう(T3)。このとき、ECC演算部41は、8ビットのパリティデータを計算し、P/S変換用バッファ(P8)42に書込む。
【0030】
その後、クロックに同期してCSL09〜15が順次アクティブとなってバースト書込み(バースト2〜8)が行なわれる(T4〜T10)。この間、ECC演算部41は、8ビットのパリティデータの計算を7回行ない、順次P/S変換用バッファ42に書込んでシフトさせる。T10において、P/S変換用バッファ42に64ビットのパリティデータが全て揃うことになる。
【0031】
次に、パリティカラムデコーダ55がPCSL1をアクティブにすることにより、メモリ制御装置4から出力される64ビットのパリティデータをメモリセルアレイ52に書込む(T11)。このとき、スイッチング部43が導通し、P/S変換用バッファ42に格納される64ビットのパリティデータがD0〜D63に出力される。
【0032】
最後に、制御回路51がメモリ制御装置4からプリチャージ(PRE)コマンドを受けると、ロウデコーダ53がWL01を非アクティブにして、プリチャージが行なわれる(T13)。
【0033】
図7は、SDRAM5の読出し動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置4およびSDRAM5の読出し動作について説明する。
【0034】
まず、制御回路51がメモリ制御装置4から活性化(ACT)コマンドおよびロウアドレス“01”を受けると、ロウデコーダ53はWL01をアクティブにする(T1)。
【0035】
次に、制御回路51がメモリ制御装置4から読出し(READ)コマンド、カラムアドレス“08”を受けると、パリティカラムデコーダ55はPCSL01をアクティブにしてメモリセルアレイ52から64ビットのパリティデータを読出す(T3)。このとき、スイッチング部43が導通し、P/S変換用バッファ42に64ビットのパリティデータが書込まれる。
【0036】
次に、カラムデコーダ54はCSL08をアクティブにして、メモリセルアレイ52から64ビットデータ(バースト1に対応したデータ)を読出す(T4)。このとき、スイッチング部43が非導通となり、ECC演算部41はP/S変換用バッファ42から出力される8ビットのパリティデータを参照して、SDRAM5から出力される64ビットデータのエラー検出および補正を行なう。
【0037】
その後、クロックに同期してCSL09〜15が順次アクティブとなってバースト読出し(バースト2〜8)が行なわれる(T5〜T11)。この間、ECC演算部41は、P/S変換用バッファ42から順次出力される8ビットのパリティデータを参照して、SDRAM5から出力される64ビットデータのエラー検出および補正を順次7回行なう。
【0038】
最後に、制御回路51がメモリ制御装置4からプリチャージ(PRE)コマンドを受けると、ロウデコーダ53がWL01を非アクティブにして、プリチャージが行なわれる(T13)。
【0039】
以上説明したように、本実施の形態におけるメモリ5によれば、データ書込み時において、8回の64ビットバースト書込みが終了した後に64ビットのパリティデータを書込み、データ読出し時において、まず64ビットのパリティデータの読出しを行なった後に8回の64ビットバースト読出しを行なうようにしたので、メモリバス幅を増加させることなくECC機能に対応することが可能となった。
【0040】
また、本実施の形態におけるメモリ制御装置4によれば、データ書込み時において、8回の64ビットバースト書込み中に順次8ビットのパリティデータを8回計算し、バースト書込みが終了した後に64ビットのパリティデータを出力し、データ読出し時において、まず64ビットのパリティデータをP/S変換用バッファ42に格納した後、8回の64ビットバースト読出し中に順次エラーの検出および補正を行なうようにしたので、上記効果を奏するメモリ5を制御することが可能となった。
【0041】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0042】
【発明の効果】
本発明のある局面に係る半導体記憶装置によれば、制御部が、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第1のカラムデコーダおよび第2のカラムデコーダを制御するので、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくECC機能に対応させることが可能となった。
【0043】
本発明の別の局面に係る制御装置によれば、演算手段が、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なうので、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を制御することが可能となった。
【図面の簡単な説明】
【図1】ECC機能を付加したシステムの一例を示す図である。
【図2】メモリ3の一例であるSDRAMの構成を示す図である。
【図3】本発明の実施の形態におけるECC機能を付加したシステムの一例を示す図である。
【図4】本発明の実施の形態におけるメモリ制御装置4の概略構成を示すブロック図である。
【図5】本発明の実施の形態におけるメモリ5の一例であるSDRAMの概略構成を示す図である。
【図6】SDRAM5の書込み動作を説明するためのタイミングチャートである。
【図7】SDRAM5の読出し動作を説明するためのタイミングチャートである。
【符号の説明】
1 CPU、2,4 メモリ制御装置、3,5 メモリ、21,41 ECC演算部、31,51 制御回路、32,52 メモリセルアレイ、33,53 ロウデコーダ、34,54 カラムデコーダ、42 P/S変換用バッファ、43 スイッチング部、55 パリティカラムデコーダ。
【発明の属する技術分野】
本発明は、ECC(Error Checking and Correcting)機能に対応した半導体記憶装置に関し、特に、メモリバス幅を削減することが可能な半導体記憶装置およびそれを制御する制御装置に関する。
【0002】
【従来の技術】
近年、コンピュータの処理速度が著しく高速になり、それに伴ってコンピュータの信頼性を向上させるための機能が必要になってきている。その機能の1つとして、ECC機能を挙げることができる。高信頼性が要求されるコンピュータにおいては、主記憶にECC機能に対応したものが使用される場合が多い。これによって、エラーが発生した場合にはパリティデータによるエラーを補正することができる。
【0003】
たとえば、64ビットの本来のデータに8ビットのパリティデータを付加することにより、72ビットのうちの任意の1ビットのエラーを補正することができると共に、2ビット以上のエラーを検出することが可能となる。
【0004】
これに関する技術として、特開平11−65944号公報に開示された発明がある。この特開平11−65944号公報に開示されたデータ誤り検出回路は、nビットのバーストエラーの検出機能を持つECC回路をk個備える構成を採り、各メモリ素子から出力されるmビットのデータをk個に分割して、それらをk個用意される別々のECC回路に入力するように構成する。これによって、メモリ装置を構成するメモリ素子の出力ビット数が増加するときでも、メモリ素子の出力ビット数が少ないときに使用されるECC回路を使って、メモリ素子の故障発生を検出できるようになる。
【0005】
【特許文献1】
特開平11−65944号公報
【0006】
【発明が解決しようとする課題】
しかし、上述した特開平11−65944号公報に開示されたデータ誤り検出回路においては、メモリ素子の出力ビット数が増加する場合に対応することができるが、メモリバス幅自体を削減することはできない。したがって、システムにECC機能を付加するとメモリバス幅が増加してしまうため、小型のシステムにECC機能を付加することが困難であるといった問題点があった。
【0007】
本発明は、上記問題点を解決するためになされたものであり、第1の目的は、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を提供することである。
【0008】
第2の目的は、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を制御する制御装置を提供することである。
【0009】
【課題を解決するための手段】
本発明のある局面に係る半導体記憶装置は、バースト動作によってデータの入出力を行なう半導体記憶装置であって、複数のメモリセルを有するメモリセルアレイと、ロウアドレスをデコードするロウデコーダと、カラムアドレスをデコードする第1のカラムデコーダと、パリティ用のカラムアドレスをデコードする第2のカラムデコーダと、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第1のカラムデコーダおよび第2のカラムデコーダを制御する制御手段とを含む。
【0010】
本発明の別の局面に係る制御装置は、バースト動作によってデータの入出力を行なう半導体記憶装置を制御する制御装置であって、半導体記憶装置に対して入出力するパリティデータを保持して所定ビット単位でシフトするバッファと、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なう演算手段と、バッファに対するパリティデータの入出力を制御するスイッチング手段とを含む。
【0011】
【発明の実施の形態】
図1は、ECC機能を付加したシステムの一例を示す図である。このシステムは、CPU(Central Processing Unit)1と、ECC演算機能を有するメモリ制御装置2と、メモリ3とを含む。CPU1とメモリ制御装置2との間のデータバス(主データ)幅は64ビットである。また、メモリ制御装置2とメモリ3との間のメモリバス幅は72ビット(主データが64ビット、パリティデータが8ビット)である。
【0012】
メモリ制御装置2は、ECC演算部21を含む。データ書込みに時において、ECC演算部21は、CPU1から出力された64ビットの主データから8ビットのパリティデータを演算する。そして、メモリ制御装置2は、メモリ3に対して64ビットの主データと8ビットのパリティデータとを出力する。
【0013】
また、データ読出し時において、ECC演算部21は、メモリ3から読出された64ビットの主データと8ビットのパリティデータとを用いてエラー検出を行ない、エラーが発生した場合にはエラー補正を行って64ビットの主データをCPU1へ出力する。
【0014】
図2は、メモリ3の一例であるSDRAM(Synchronous Dynamic Random Access Memory)の構成を示す図である。SDRAMは、バースト動作と呼ばれる連続した複数のデータを連続して入出力する機能を有している。このSDRAMは、8ビットのDQ(データ入出力)端子と1ビットのパリティ入出力端子とを有するメモリデバイスが8個搭載されたメモリモジュールによって構成される。図2においては、データD0〜7が入出力されるメモリデバイスを示している。
【0015】
図2に示すように、SDRAM3は、メモリ制御装置2からコマンドを受けてSDRAM3の全体的な制御を行なう制御回路31と、メモリセルアレイ32と、ロウデコーダ33と、カラムデコーダ34とを含む。ロウデコーダ33は、制御回路31からロウアドレスを受けて、ワード線(WL)0〜511のいずれかをアクティブにする。また、カラムデコーダ34は、制御装置31からカラムアドレスを受けて、共通ソース線(CSL)0〜511のいずれかをアクティブにする。
【0016】
ロウデコーダ33およびカラムデコーダ34によって選択されたメモリセルに対する書込み/読出しが可能になる。このメモリデバイスは、8回のバースト動作で512ビットの主データおよび64ビットのパリティデータの書込み/読出しが行なわれる。
【0017】
図1に示すシステムにおいては、64ビットの主データに8ビットのパリティデータが付加されるので、バス幅が72ビットになってしまい、この構成を小型のシステムに採用することが困難である。以下に、この問題点を解決するシステムについて説明する。
【0018】
図3は、本発明の実施の形態におけるECC機能を付加したシステムの一例を示す図である。このシステムは、CPU1と、ECC演算機能を有するメモリ制御装置4と、メモリ5とを含む。CPU1とメモリ制御装置4との間のデータバス(主データ)幅は64ビットである。また、メモリ制御装置4とメモリ5との間のメモリバス(主データ)幅も64ビットである。
【0019】
図4は、本発明の実施の形態におけるメモリ制御装置4の概略構成を示すブロック図である。このメモリ制御装置4は、メモリ5に対して制御信号を出力することによりデータの入出力を制御し、ECC演算機能を有するECC演算部41と、データD0〜63のスイッチング制御を行なうスイッチング部43と、パラレルデータをシリアルデータに変換するパラレル−シリアル変換用バッファ(以下、P/S変換用バッファと略す。)42とを含む。
【0020】
メモリ制御部4においては、64ビットのメモリバスが8ビットの8グループに分割される。CPU1がメモリ5に対してバーストでデータを書込んでいる間は、スイッチング部43が非導通となり、ECC演算部41が演算した8ビットのパリティデータが順次P/S変換用バッファ42に格納されて、8ビット単位でシフトされる。そして、CPU1がメモリ5に対するデータの書込みを終了したときに、スイッチング部43が導通して64ビットのパリティデータがメモリ5へ出力される。
【0021】
また、メモリ5から64ビットのパリティデータが出力されているときに、スイッチング部43が導通し、64ビットのパリティデータが8ビットずつP/S変換用バッファ42に格納される。そして、CPU1がメモリ5からバーストでデータを読出している間、ECC演算部41は、P/S変換用バッファ42から出力される8ビットのパリティデータを参照してエラーの検出および補正を行なう。なお、メモリ制御装置4の動作の詳細は、後述する。
【0022】
図5は、本発明の実施の形態におけるメモリ5の一例であるSDRAMの概略構成を示す図である。SDRAM5は、バースト機能を有しており、クロックに同期して動作を行なう。このSDRAMは、8ビットのDQ(データ入出力)端子を有するメモリデバイスが8個搭載されたメモリモジュールによって構成される。図5においては、データD0〜7が入出力されるメモリデバイスを示している。
【0023】
図5に示すように、SDRAM5は、メモリ制御装置4からコマンドを受けてSDRAM5の全体的な制御を行なう制御回路51と、メモリセルアレイ52と、ロウデコーダ53と、カラムデコーダ54と、パリティカラムデコーダ55とを含む。ロウデコーダ53は、制御回路51からロウアドレスを受けて、ワード線(Wl)0〜511のいずれかをアクティブにする。
【0024】
カラムデコーダ54は、制御回路51からカラムアドレス(A0〜8)を受けて、CSL0〜511のいずれかをアクティブにする。また、パリティカラムデコーダ55は、制御回路51からパリティカラムアドレス(A3〜8)を受けて、パリティCSL0〜63のいずれかをアクティブにする。
【0025】
ロウデコーダ53およびカラムデコーダ54によって選択されたメモリセルに対するデータの書込み/読出しが可能になる。このメモリデバイスは、8回のバースト動作で512ビットの主データおよび64ビットのパリティデータの書込み/読出しが行なわれる。また、ロウデコーダ53およびパリティカラムデコーダ55によって選択されたメモリセルに対するパリティの書込み/読出しが可能になる。
【0026】
このSDRAM5は、CPU1がバーストでデータを書込むときは、8回のバースト書込みが終了した後に64ビットのパリティデータの書込みが行なわれる。また、CPU1がバーストでデータを読出すときは、SDRAM5が最初に64ビットのパリティデータを出力し、その後で8回のバースト読出しが行なわれる。
【0027】
図6は、SDRAM5の書込み動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置4およびSDRAM5の書込み動作について説明する。
【0028】
まず、制御回路51がメモリ制御装置4から活性化(ACT)コマンドおよびロウアドレス“01”を受けると、ロウデコーダ53はWL01をアクティブにする(T1)。
【0029】
次に、制御回路51がメモリ制御装置4から書込み(WRT)コマンド、カラムアドレス“08”および書込みデータ(バースト1に対応した64ビットデータ)を受けると、カラムデコーダ54はCSL08をアクティブにしてメモリセルアレイ52への書込み動作を行なう(T3)。このとき、ECC演算部41は、8ビットのパリティデータを計算し、P/S変換用バッファ(P8)42に書込む。
【0030】
その後、クロックに同期してCSL09〜15が順次アクティブとなってバースト書込み(バースト2〜8)が行なわれる(T4〜T10)。この間、ECC演算部41は、8ビットのパリティデータの計算を7回行ない、順次P/S変換用バッファ42に書込んでシフトさせる。T10において、P/S変換用バッファ42に64ビットのパリティデータが全て揃うことになる。
【0031】
次に、パリティカラムデコーダ55がPCSL1をアクティブにすることにより、メモリ制御装置4から出力される64ビットのパリティデータをメモリセルアレイ52に書込む(T11)。このとき、スイッチング部43が導通し、P/S変換用バッファ42に格納される64ビットのパリティデータがD0〜D63に出力される。
【0032】
最後に、制御回路51がメモリ制御装置4からプリチャージ(PRE)コマンドを受けると、ロウデコーダ53がWL01を非アクティブにして、プリチャージが行なわれる(T13)。
【0033】
図7は、SDRAM5の読出し動作を説明するためのタイミングチャートである。このタイミングチャートを参照しながら、メモリ制御装置4およびSDRAM5の読出し動作について説明する。
【0034】
まず、制御回路51がメモリ制御装置4から活性化(ACT)コマンドおよびロウアドレス“01”を受けると、ロウデコーダ53はWL01をアクティブにする(T1)。
【0035】
次に、制御回路51がメモリ制御装置4から読出し(READ)コマンド、カラムアドレス“08”を受けると、パリティカラムデコーダ55はPCSL01をアクティブにしてメモリセルアレイ52から64ビットのパリティデータを読出す(T3)。このとき、スイッチング部43が導通し、P/S変換用バッファ42に64ビットのパリティデータが書込まれる。
【0036】
次に、カラムデコーダ54はCSL08をアクティブにして、メモリセルアレイ52から64ビットデータ(バースト1に対応したデータ)を読出す(T4)。このとき、スイッチング部43が非導通となり、ECC演算部41はP/S変換用バッファ42から出力される8ビットのパリティデータを参照して、SDRAM5から出力される64ビットデータのエラー検出および補正を行なう。
【0037】
その後、クロックに同期してCSL09〜15が順次アクティブとなってバースト読出し(バースト2〜8)が行なわれる(T5〜T11)。この間、ECC演算部41は、P/S変換用バッファ42から順次出力される8ビットのパリティデータを参照して、SDRAM5から出力される64ビットデータのエラー検出および補正を順次7回行なう。
【0038】
最後に、制御回路51がメモリ制御装置4からプリチャージ(PRE)コマンドを受けると、ロウデコーダ53がWL01を非アクティブにして、プリチャージが行なわれる(T13)。
【0039】
以上説明したように、本実施の形態におけるメモリ5によれば、データ書込み時において、8回の64ビットバースト書込みが終了した後に64ビットのパリティデータを書込み、データ読出し時において、まず64ビットのパリティデータの読出しを行なった後に8回の64ビットバースト読出しを行なうようにしたので、メモリバス幅を増加させることなくECC機能に対応することが可能となった。
【0040】
また、本実施の形態におけるメモリ制御装置4によれば、データ書込み時において、8回の64ビットバースト書込み中に順次8ビットのパリティデータを8回計算し、バースト書込みが終了した後に64ビットのパリティデータを出力し、データ読出し時において、まず64ビットのパリティデータをP/S変換用バッファ42に格納した後、8回の64ビットバースト読出し中に順次エラーの検出および補正を行なうようにしたので、上記効果を奏するメモリ5を制御することが可能となった。
【0041】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0042】
【発明の効果】
本発明のある局面に係る半導体記憶装置によれば、制御部が、メモリセルアレイに対するパリティデータの入出力が、メモリセルアレイに対するパリティデータに対応するデータの入出力のタイミングと異なるように、第1のカラムデコーダおよび第2のカラムデコーダを制御するので、パリティデータの入出力用端子が不要となり、メモリバス幅を増加させることなくECC機能に対応させることが可能となった。
【0043】
本発明の別の局面に係る制御装置によれば、演算手段が、半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算してバッファに順次所定ビット単位で格納し、半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じてバッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なうので、メモリバス幅を増加させることなくECC機能に対応した半導体記憶装置を制御することが可能となった。
【図面の簡単な説明】
【図1】ECC機能を付加したシステムの一例を示す図である。
【図2】メモリ3の一例であるSDRAMの構成を示す図である。
【図3】本発明の実施の形態におけるECC機能を付加したシステムの一例を示す図である。
【図4】本発明の実施の形態におけるメモリ制御装置4の概略構成を示すブロック図である。
【図5】本発明の実施の形態におけるメモリ5の一例であるSDRAMの概略構成を示す図である。
【図6】SDRAM5の書込み動作を説明するためのタイミングチャートである。
【図7】SDRAM5の読出し動作を説明するためのタイミングチャートである。
【符号の説明】
1 CPU、2,4 メモリ制御装置、3,5 メモリ、21,41 ECC演算部、31,51 制御回路、32,52 メモリセルアレイ、33,53 ロウデコーダ、34,54 カラムデコーダ、42 P/S変換用バッファ、43 スイッチング部、55 パリティカラムデコーダ。
Claims (7)
- バースト動作によってデータの入出力を行なう半導体記憶装置であって、
複数のメモリセルを有するメモリセルアレイと、
ロウアドレスをデコードするロウデコーダと、
カラムアドレスをデコードする第1のカラムデコーダと、
パリティ用のカラムアドレスをデコードする第2のカラムデコーダと、
前記メモリセルアレイに対するパリティデータの入出力が、前記メモリセルアレイに対する前記パリティデータに対応するデータの入出力のタイミングと異なるように、前記第1のカラムデコーダおよび前記第2のカラムデコーダを制御する制御手段とを含む、半導体記憶装置。 - 前記制御手段は、前記第1のカラムデコーダを制御して所定回のバースト動作によるデータの書込みの制御を行なった後に、前記第2のカラムデコーダを制御して当該データに対応するパリティデータの書込みの制御を行なう、請求項1記載の半導体記憶装置。
- 前記制御手段は、前記第2のカラムデコーダを制御してパリティデータの読出しの制御を行なった後に、前記第1のカラムデコーダを制御して所定回のバースト動作による当該パリティデータに対応するデータの読出しの制御を行なう、請求項1または2記載の半導体記憶装置。
- 前記第2のカラムデコーダは、前記第1のカラムデコーダによってデコードされるアドレスの一部をデコードする、請求項1〜3のいずれかに記載の半導体記憶装置。
- バースト動作によってデータの入出力を行なう半導体記憶装置を制御する制御装置であって、
前記半導体記憶装置に対して入出力するパリティデータを保持して所定ビット単位でシフトするバッファと、
前記半導体記憶装置に対する所定回のバースト動作で書込まれるデータのパリティデータを計算して前記バッファに順次所定ビット単位で格納し、前記半導体記憶装置に対する所定回のバースト動作で読出されるデータに応じて前記バッファから順次所定ビット単位でパリティデータを読出してエラーの補正を行なう演算手段と、
前記バッファに対するパリティデータの入出力を制御するスイッチング手段とを含む、制御装置。 - 前記スイッチング手段は、前記半導体記憶装置に対する所定回のバースト書込みが終了した後に、前記バッファに格納される当該データに対応したパリティデータを出力する、請求項5記載の制御装置。
- 前記スイッチング手段は、前記半導体記憶装置に対する所定回のバースト読出しが行なわれる前に、当該データに対応したパリティデータを前記バッファに出力する、請求項5または6記載の制御装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003037716A JP2004246754A (ja) | 2003-02-17 | 2003-02-17 | 半導体記憶装置およびその制御装置 |
US10/682,153 US7075851B2 (en) | 2003-02-17 | 2003-10-10 | Semiconductor memory device inputting/outputting data and parity data in burst operation |
TW092131485A TWI251142B (en) | 2003-02-17 | 2003-11-11 | Semiconductor memory device and its controller |
KR1020030096614A KR100566162B1 (ko) | 2003-02-17 | 2003-12-24 | 버스트 동작에 의해 데이터 및 패리티 데이터를입출력하는 반도체 기억 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003037716A JP2004246754A (ja) | 2003-02-17 | 2003-02-17 | 半導体記憶装置およびその制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004246754A true JP2004246754A (ja) | 2004-09-02 |
Family
ID=32844446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003037716A Pending JP2004246754A (ja) | 2003-02-17 | 2003-02-17 | 半導体記憶装置およびその制御装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7075851B2 (ja) |
JP (1) | JP2004246754A (ja) |
KR (1) | KR100566162B1 (ja) |
TW (1) | TWI251142B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7305607B2 (en) | 2005-04-21 | 2007-12-04 | Hynix Semiconductor Inc. | Nonvolatile ferroelectric memory device including failed cell correcting circuit |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7116600B2 (en) * | 2004-02-19 | 2006-10-03 | Micron Technology, Inc. | Memory device having terminals for transferring multiple types of data |
JP4551740B2 (ja) * | 2004-11-08 | 2010-09-29 | 株式会社東芝 | 低密度パリティチェック符号復号器及び方法 |
CN100369016C (zh) * | 2005-07-22 | 2008-02-13 | 中国科学院空间科学与应用研究中心 | 一种同步动态随机存取存储器的控制器 |
DE102007026406B4 (de) * | 2007-06-06 | 2009-04-30 | Continental Automotive Gmbh | Vorrichtung und Verfahren zum Codieren eines Datenwortes und zum Speichern des codierten Datenwortes |
US7791974B2 (en) * | 2008-03-31 | 2010-09-07 | Intel Corporation | Recovery of existing SRAM capacity from fused-out blocks |
US8023358B2 (en) * | 2008-04-02 | 2011-09-20 | International Business Machines Corporation | System and method for providing a non-power-of-two burst length in a memory system |
US8934311B2 (en) * | 2011-09-06 | 2015-01-13 | Samsung Electronics Co., Ltd. | Semiconductor memory device capable of screening a weak bit and repairing the same |
US8872686B2 (en) * | 2013-03-14 | 2014-10-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Low glitch current digital-to-analog converter |
CN107577614B (zh) * | 2013-06-29 | 2020-10-16 | 华为技术有限公司 | 数据写入方法及内存系统 |
KR102204391B1 (ko) | 2014-08-18 | 2021-01-18 | 삼성전자주식회사 | 공유 가능한 ecc 셀 어레이를 갖는 메모리 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5002031A (en) * | 1989-05-17 | 1991-03-26 | Mitsubishi Denki Kabushiki Kaisha | Fuel control apparatus for an internal-combustion engine |
JP2570634B2 (ja) * | 1994-10-24 | 1997-01-08 | 日本電気株式会社 | 半導体記憶装置 |
US5687114A (en) * | 1995-10-06 | 1997-11-11 | Agate Semiconductor, Inc. | Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell |
JPH1165944A (ja) | 1997-08-13 | 1999-03-09 | Fujitsu Ltd | データ誤り検出装置 |
KR100287018B1 (ko) * | 1998-08-07 | 2001-04-16 | 윤종용 | 에러 정정 회로를 구비한 반도체 메모리 장치 |
JP4266436B2 (ja) * | 1999-04-28 | 2009-05-20 | 富士通マイクロエレクトロニクス株式会社 | 半導体記憶装置 |
JP3975245B2 (ja) | 1999-12-16 | 2007-09-12 | 株式会社ルネサステクノロジ | 記録再生装置および半導体メモリ |
JP2004103081A (ja) * | 2002-09-06 | 2004-04-02 | Renesas Technology Corp | 半導体記憶装置 |
-
2003
- 2003-02-17 JP JP2003037716A patent/JP2004246754A/ja active Pending
- 2003-10-10 US US10/682,153 patent/US7075851B2/en not_active Expired - Fee Related
- 2003-11-11 TW TW092131485A patent/TWI251142B/zh not_active IP Right Cessation
- 2003-12-24 KR KR1020030096614A patent/KR100566162B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7305607B2 (en) | 2005-04-21 | 2007-12-04 | Hynix Semiconductor Inc. | Nonvolatile ferroelectric memory device including failed cell correcting circuit |
Also Published As
Publication number | Publication date |
---|---|
US7075851B2 (en) | 2006-07-11 |
TWI251142B (en) | 2006-03-11 |
US20040160853A1 (en) | 2004-08-19 |
KR100566162B1 (ko) | 2006-03-29 |
TW200416545A (en) | 2004-09-01 |
KR20040074906A (ko) | 2004-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11327838B2 (en) | Memory device having error correction function and operating method thereof | |
TWI509623B (zh) | 用於內建錯誤更正的儲存架構 | |
TWI384355B (zh) | 記憶體陣列錯誤校正裝置,系統及方法 | |
EP1815338B1 (en) | Predictive error correction code generation facilitating high-speed byte-write in a semiconductor memory | |
US8286054B2 (en) | Semiconductor memory, operating method of semiconductor memory, and system | |
JP2005327437A (ja) | 半導体記憶装置 | |
US20030093744A1 (en) | Error correcting memory and method of operating same | |
US10803971B2 (en) | Device for supporting error correction code and test method thereof | |
US6493843B1 (en) | Chipkill for a low end server or workstation | |
JP2001084792A (ja) | 半導体装置、同期式半導体メモリ装置及び同期式半導体メモリ装置のエラーチェック及び訂正方法 | |
JP2006190425A (ja) | 半導体記憶装置 | |
JP2007242162A (ja) | 半導体記憶装置 | |
KR20170039057A (ko) | 메모리 시스템 및 메모리 에러 정정 방법 | |
US9436398B2 (en) | Memory interface supporting both ECC and per-byte data masking | |
JP2008299922A (ja) | 半導体メモリ、半導体メモリの動作方法およびシステム | |
US9627092B2 (en) | Semiconductor device performing error correction operation | |
KR20170095988A (ko) | 오류 정정 코딩이 있는 메모리 연산을 파이프라이닝하기 위한 방법 및 장치 | |
JP2005025827A (ja) | 半導体集積回路装置およびそのエラー検知訂正方法 | |
JP2004246754A (ja) | 半導体記憶装置およびその制御装置 | |
JP2010123156A (ja) | 半導体記憶装置及びその制御方法 | |
JP2003059290A5 (ja) | ||
US7827463B2 (en) | Semiconductor memory device | |
JP2008027296A (ja) | メモリ装置 | |
JP4921216B2 (ja) | メモリ制御回路、記憶システム、情報処理装置、および、メモリ制御方法 | |
JP2007141372A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060123 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080606 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080617 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081014 |