JP4336168B2 - Ecc機能付き半導体記憶装置 - Google Patents

Ecc機能付き半導体記憶装置 Download PDF

Info

Publication number
JP4336168B2
JP4336168B2 JP2003315488A JP2003315488A JP4336168B2 JP 4336168 B2 JP4336168 B2 JP 4336168B2 JP 2003315488 A JP2003315488 A JP 2003315488A JP 2003315488 A JP2003315488 A JP 2003315488A JP 4336168 B2 JP4336168 B2 JP 4336168B2
Authority
JP
Japan
Prior art keywords
read
write
data
parity
group
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.)
Expired - Fee Related
Application number
JP2003315488A
Other languages
English (en)
Other versions
JP2005085357A (ja
Inventor
知也 河越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2003315488A priority Critical patent/JP4336168B2/ja
Publication of JP2005085357A publication Critical patent/JP2005085357A/ja
Application granted granted Critical
Publication of JP4336168B2 publication Critical patent/JP4336168B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Static Random-Access Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、ECC(Error Check and Correct)機能付き半導体記憶装置に関し、特に、各群が複数の列からなり、複数群に分割され、群単位でデータの読出しおよび書込みが行なわれる正規部のメモリセルアレイと、各行が正規部の同一行のメモリセルのデータのパリティを記憶するパリティ部のメモリセルアレイとを備えたECC機能付き半導体記憶装置に関する。
特許文献1には、ECC機能を有する半導体記憶装置が開示されている。このECC機能付き半導体記憶装置では、メモリセルアレイは、mビットのデータビットを記憶するm個の列(ノーマル部)と、pビットのパリティビットを記憶するp個の列(パリティ部)とからなる。
このECC機能付き半導体記憶装置では、読出し時には、メモリセルアレイから(m+p)ビットが読出され、ECC回路が、pビットのパリティビットを用いてmビットのデータビットのエラーをチェックして、エラーがあれば訂正を行なう。
また、書込み時には、mビットの書込みデータが与えられ、パリティビット発生回路が、mビットのデータビットからpビットのパリティビットを発生し、書込みドライバが、メモリセルアレイに(m+p)ビットを書込む。
このようなECC機能付き半導体記憶装置では、エラーがチェックされて、エラーがあれば訂正されるので、信頼性が向上する。
特開2001−84792号公報
上述のように、特許文献1では、書込み時には、mビットの書込みデータが与えられ、ノーマル部のm個の列すべてに対してデータの書込みを行なう。
しかしながら、たとえば、第0〜第31列(ノーマル部)と第32列〜第36列(パリティ部)とからなるメモリセルアレイにおいて、第0〜第7列にデータの書込みを行なうような場合には、書込みを行なう行のパリティビットを再計算するために、書込みを行なう列(第0〜第7列)以外の第8〜第31列のデータが必要となる。
そのため、メモリセルアレイから書込みを行なう行の第8〜第31列のデータと、これらのデータのエラーのチェックおよび訂正を行なうために第0〜第7列のデータおよびパリティ部のパリティを読み出さなければならない。
そして、これらを読出した後、第8〜第31列のデータのエラーのチェックおよび訂正を行なわなければならない。
したがって、このようにメモリセルアレイのうち特定の列のみにデータの書込みを行なう場合には、メモリセルへ実際にデータが書込まれるまでには、長時間要することになる。
それゆえに、本発明の目的は、メモリセルアレイのうち特定の列のみにデータの書込みを行なうような場合にでも、高速に書込みができるECC機能付き半導体記憶装置を提供することである。
上記課題を解決するために、本発明は、行列状に配置されるとともに、複数の列を1個の群としたときに複数群に分割され、群単位でデータの読出しおよび書込みが行なわれる正規部のメモリセルアレイと、各行が正規部の同一行のメモリセルのデータのパリティを記憶するパリティ部のメモリセルアレイとを備えたECC機能付き半導体記憶装置であって、正規部と同一のワード線の活性化によってその開閉が制御され、読出し用ビット線対と接続される読出し用のポートと、パリティ部専用のワード線の活性化によってその開閉が制御され、書込み用ビット線対と接続される書込み用のポートを有するパリティ部のメモリセルと、正規部の各列のメモリセルからデータの読出しを行なう正規部の各列の読出し系回路と、パリティ部の各列のメモリセルから読出し用ポートおよび読出し用ビット線対を通じて、パリティの読出しを行なうパリティ部の各列の読出し系回路と、パリティ部の各列の読出し系回路で読み出されたパリティを用いて、正規部の各列の読出し系回路で読み出されたデータに誤りがあれば、訂正を行なう訂正回路と、読書き制御信号が非書込みを指示する群に属する列についての訂正回路から出力されるデータと、読書き制御信号が書込みを指示する群に属する列についての外部からの書込みデータとからなる情報ビットのデータについてのパリティを算出するパリティ算出回路と、正規部の各列が属する群の読書き制御信号が書込みを指示するときに、外部からの書込みデータをビット線対を通じてメモリセルに書込む正規部の各列の書込みドライバと、外部からのアドレス信号を所定サイクル遅延させて遅延アドレス信号を出力するアドレス遅延回路と、遅延アドレス信号に従って、パリティ部専用のワード線を活性化させるパリティ部専用のロウ系デコーダと、各群の読書き制御信号を所定サイクル数遅延させて各群の遅延読書き制御信号を出力する制御信号生成回路と、いずれかの群の遅延読書き制御信号が書込みを指示するときに、算出されたパリティを書込み用ビット線対および書込み用ポートを通じてメモリセルに書込むパリティ部の各列の書込みドライバとを備える。
本発明に係るECC機能付き半導体記憶装置によれば、メモリセルアレイのうち特定の列のみにデータの書込みを行なうような場合にでも、高速に書込みができる。
以下、本発明の実施の形態について図面を用いて説明する。
図1は、本発明の実施形態に係るECC機能付き半導体記憶装置の構成を示す。同図を参照して、このECC機能付き半導体記憶装置100は、CPU(central processing unit)11と、CLK生成回路12と、データ遅延回路14と、制御信号生成回路13と、ECC読出し回路15と、ECC書込み回路16と、セレクト部17と、メモリセルアレイ21と、第1ロウ系デコーダ18と、第2ロウ系デコーダ19と、メモリセルアレイ周辺回路群22と、アドレス遅延回路20とを備える。
CLK生成回路12は、クロック信号CLKφ1,φ2を生成して、各構成要素に供給する。
CPU11は、読出しデータバスRDB0〜RDB31から読出しデータを受ける。すなわち、CPU11は、読出しデータバスRDB0〜RDB7から8ビットの第0群読出しデータData_R0〜7を受け、読出しデータバスRDB8〜RDB15から8ビットの第1群読出しデータData_R8〜15を受け、読出しデータバスRDB16〜RDB23から8ビットの第2群読出しデータData_R16〜23を受け、読出しデータバスRDB24〜RDB31から8ビットの第3群読出しデータData_R24〜31を受ける。
また、CPU11は、書込みデータバスWDB0〜WDB31へ書込みデータを出力する。すなわち、CPU11は、書込みデータバスWDB0〜WDB7に8ビットの第0群書込みデータData_W0〜7を出力し、書込みデータバスWDB8〜WDB15に8ビットの第1群書込みデータData_W8〜15を出力し、書込みデータバスWDB16〜WDB23に8ビットの第2群書込みデータData_W16〜23を出力し、書込みデータバスWDB24〜WDB31に8ビットの第3群書込みデータData_W24〜31を出力する。
また、CPU11は、読書き制御信号線へ読書き制御信号R/W0〜R/W3を出力し、ロウアドレス信号線へロウアドレス信号A0〜A8を出力する。読書き制御信号R/W0が「H」レベルのときには、第0群の列に対して書込みを行なわないこと(非書込み)を指示し、読書き制御信号R/W0が「L」レベルのときには、第0群の列に対して書込みを指示する。読書き制御信号R/W1が「H」レベルのときには、第1群の列に対して書込みを行なわないこと(非書込み)を指示し、読書き制御信号R/W1が「L」レベルのときには、第1群の列に対して書込みを指示する。読書き制御信号R/W2が「H」レベルのときには、第2群の列に対して書込みを行なわないこと(非書込み)を指示し、読書き制御信号R/W2が「L」レベルのときには、第2群の列に対して書込みを指示する。読書き制御信号R/W3が「H」レベルのときには、第3群の列に対して書込みを行なわないこと(非書込み)を指示し、読書き制御信号R/W3が「L」レベルのときには、第3群の列に対して書込みを指示する。ただし、読書き制御信号R/W0〜3によって、書込みが指示されたか、非書込みが指示されたかにかかわりなく、読出しは常に行なわれる。
図2は、アドレス遅延回路20の構成を示す。同図を参照して、このアドレス遅延回路20は、フリップフロップFF3で構成される。このフリップフロップFF3は、ロウアドレス信号Ai(i=0〜8)を1サイクルだけ遅延させた遅延ロウアドレス信号dAi(i=0〜8)を出力する。
図3は、データ遅延回路14の構成を示す。同図を参照して、このデータ遅延回路14は、フリップフロップFF4で構成される。このフリップフロップFF4は、書込みデータData_Wi(i=0〜31)を1サイクルだけ遅延させた遅延書込みデータdData_Wi(i=0〜31)を出力する。
図4は、制御信号生成回路13の構成を示す。同図を参照して、フリップフロップFF0によって、読書き制御信号R/Wi(i=0〜3)を1サイクル遅延させた遅延読書き制御信号dR/Wi(i=0〜3)が生成される。
論理回路L11によって、クロック信号CLKφ1が「L」レベル、かつクロック信号CLKφ2が「L」レベルのときに、プリチャージ信号PC0〜PC3,PCPが「L」レベルとなり、センスアンプ活性化信号SAE0〜SAE3,SAEPが「L」レベルとなる。
このように、プリチャージ信号PC0〜PC3,PCPは、読書き制御信号R/W0〜R/W3のレベルに依存せず、プリチャージ回路32を活性化させて、プリチャージを行なわせる。また、センスアンプ活性化信号SAE0〜SAE3,SAEPは、読書き制御信号R/W0〜R/W3のレベルに依存せず、センスアンプ33を活性化させて、増幅を行なわせる。
インバータIV1によって、クロック信号CLKφ2が「L」レベルのときに、ビット線選択信号BLS0〜BLS3,BLSPが「H」レベルとなる。このように、ビット線選択信号BLS0〜BLS3,BLSPは、読書き制御信号R/W0〜R/W3のレベルに依存せず、ビット線選択回路31を活性化させて、ビット線対の選択を行なわせる。
論理回路L12によって、読書き制御信号R/Wi(i=0〜3)が「L」レベル、クロック信号CLKφ1が「H」レベル、かつクロック信号CLKφ2が「H」レベルのときに、書込みドライバ活性化信号WEi(i=0〜3)が「H」レベルとなる。
論理回路L13,L14によって、遅延読書き制御信号R/W0〜R/W3のうちのいずれかが「L」レベル、クロック信号CLKφ1が「H」レベル、かつクロック信号CLKφ2が「H」レベルのときに、書込みドライバ活性化信号WEPが「H」レベルとなる。
図5は、図1におけるメモリセルアレイ21と、メモリセルアレイ周辺回路群22と、第1ロウ系デコーダ18と、第2ロウ系デコーダ19の構成を示す。
同図を参照して、メモリセルアレイ21は、行列上に配置されたSRAM(Static Randam Access Memory)セルMC1,MC2からなる。
メモリセルアレイ21は、第0〜第31列のノーマル部と、第32列〜第37列のパリティ部に分けられる。第0〜第31列をノーマル部の第0〜第31列といい、第32〜第37列をパリティ部の第0〜第5列という。また、ノーマル部の第0〜第7列を第0群の列といい、ノーマル部の第8列〜第15列を第2群の列といい、ノーマル部の第16列〜第23列を第2群の列といい、ノーマル部の第24列〜第31列を第3群の列という。
図6は、ノーマル部のSRAMセルMC1の構成を示す。同図を参照して、ノーマル部のSRAMセルMC1は、記憶素子である2つのインバータをクロスカップル(交差接続)させたフリップフロップFPと、アクセス用のNチャネルMOSトランジスタNM5,NM6からなる。記憶素子であるフリップフロップFPでは、クロスカップリングさせた2つの記憶ノード(N,I_N)は、(「H」レベル,「L」レベル)または(「L」レベル,「H」レベル)の双安定状態を保持する。
アクセス用のNチャネルMOSトランジスタNM5,NM6のゲートは、ワード線WLに接続される。また、アクセス用のNチャネルMOSトランジスタNM5,NM6のソースは、ビット線対BL,I_BLに接続され、ドレインは、記憶素子(フリップフロップFP)と接続される。
ワード線WLが活性化されると、そのワード線WLと接続するSRAMセルMC1のアクセス用NチャネルMOSトランジスタNM5,NM6が導通する。これにより、読出し時には、そのSRAMセルMC1の記憶素子(フリップフロップFP)のデータが、そのSRAMセルMC1に接続しているビット線対BL,I_BLに送られ、書込み時には、そのSRAMセルMC1に接続しているビット線対BL,I_BLのデータがそのSRAMセルMC1の記憶素子(フリップフロップFP)に送られる。
図7は、パリティ部のSRAMセルMC2の構成を示す。同図を参照して、パリティ部のSRAMセルMC2は、記憶素子である2つのインバータをクロスカップル(交差接続)させたフリップフロップFPと、アクセス用のNチャネルMOSトランジスタNM7,NM8,NM9,NM10からなる。記憶素子であるフリップフロップFPでは、クロスカップリングさせた2つの記憶ノード(N,I_N)は、(「H」レベル,「L」レベル)または(「L」レベル,「H」レベル)の双安定状態を保持する。
アクセス用のNチャネルMOSトランジスタNM7,NM8のゲートは、ワード線WLに接続される。また、アクセス用のNチャネルMOSトランジスタNM7,NM8のソースは、読出し用ビット線対RBLP,I_RBLPに接続され、ドレインは、記憶素子(フリップフロップFP)と接続される。
アクセス用のNチャネルMOSトランジスタNM9,NM10のゲートは、パリティ書込み専用ワード線PWLに接続される。また、アクセス用のNチャネルMOSトランジスタNM9,NM10のソースは、書込み用ビット線対WBLP,I_WBLPに接続され、ドレインは、記憶素子(フリップフロップFP)と接続される。
読出し時に、ワード線WLが活性化されると、そのワード線WLと接続するSRAMセルMC2のアクセス用NチャネルMOSトランジスタNM7,NM8が導通する。これにより、そのSRAMセルMC2の記憶素子(フリップフロップFP)のデータが、そのSRAMセルMC2に接続している読出し用ビット線対RBLP,I_RBLPに送られる。
書込み時に、パリティ書込み専用ワード線PWLが活性化されると、そのワード線PWLと接続するSRAMセルMC2のアクセス用NチャネルMOSトランジスタNM9,NM10が導通する。これにより、そのSRAMセルMC2に接続している書込み用ビット線対WBLP,I_WBLPのデータがそのSRAMセルMC2の記憶素子(フリップフロップFP)に送られる。
再び図5を参照して、第1ロウ系デコーダ18は、プリデコーダ24と、32個のロウデコーダ26とからなる。各ロウデコーダ26は、16個の行に対して設けられる。プリデコーダ24は、ロウアドレス信号A0〜A3によって、各ロウデコーダ26に接続される16個の行の中から1個の行を選択する。また、ロウアドレス信号A4〜A8によって、32個のロウデコーダ26の中から1個のロウデコーダ26が選択される。選択されたロウデコーダ26は、プリデコーダ24によって選択された行のワード線WLを「H」レベルに活性化する。
第2ロウ系デコーダ19は、プリデコーダ23と、32個のロウデコーダ25とからなる。各ロウデコーダ25は、16個の行に対して設けられる。
プリデコーダ23は、遅延ロウアドレス信号dA0〜dA3によって、各ロウデコーダ25に接続される16個の行の中から1個の行を選択する。また、遅延ロウアドレス信号dA4〜dA8によって、32個のロウデコーダ25の中から1個のロウデコーダ25が選択される。選択されたロウデコーダ25は、プリデコーダ23によって選択された行のワード線PWLを「H」レベルに活性化する。
メモリセルアレイ周辺回路群22は、列ごとに、ビット線選択回路31と、プリチャージ回路32と、センスアンプ33と、読出しバッファRBと、書込みドライバWDRとを有する。ビット線選択回路31と、プリチャージ回路32と、センスアンプ33と、読出しバッファRBとを読出し系回路という。
各列のビット線選択回路31は、NチャネルMOSトランジスタNM0,NM1とからなる。
ノーマル部の第0群の列におけるビット線選択回路31のNチャネルMOSトランジスタNM0,NM1のゲートは、ビット線選択信号BLS0を受ける。ビット線選択信号BLS0がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM0,NM1がオンになり、第0群の列のビット線対BL,I_BLが選択される。
ノーマル部の第1群の列におけるビット線選択回路31のNチャネルMOSトランジスタNM0,NM1のゲートは、ビット線選択信号BLS1を受ける。ビット線選択信号BLS1がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM0,NM1がオンになり、第1群の列のビット線対BL,I_BLが選択される。
ノーマル部の第2群の列におけるビット線選択回路31のNチャネルMOSトランジスタNM0,NM1のゲートは、ビット線選択信号BLS2を受ける。ビット線選択信号BLS2がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM0,NM1がオンになり、第2群の列のビット線対BL,I_BLが選択される。
ノーマル部の第3群の列におけるビット線選択回路31のNチャネルMOSトランジスタNM0,NM1のゲートは、ビット線選択信号BLS3を受ける。ビット線選択信号BLS3がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM0,NM1がオンになり、第3群の列のビット線対BL,I_BLが選択される。
パリティ部におけるビット線選択回路31のNチャネルMOSトランジスタNM0,NM1のゲートは、ビット線選択信号BLSPを受ける。ビット線選択信号BLSPがイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM0,NM1がオンになり、パリティ部の列のビット線対RBLP,I_RBLPが選択される。
各列のプリチャージ回路32は、PチャネルMOSトランジスタPM0,PM1,PM2からなる。
ノーマル部の第0群の列におけるプリチャージ回路32のPチャネルMOSトランジスタPM0,PM1,PM2のゲートは、プリチャージ信号PC0を受ける。プリチャージ信号PC0がイネーブル(Lレベル)になると、PチャネルMOSトランジスタPM0,PM1,PM2がオンになり、第0群の列のビット線対BL,I_BLが「H」レベルにプリチャージされる。
ノーマル部の第1群の列におけるプリチャージ回路32のPチャネルMOSトランジスタPM0,PM1,PM2のゲートは、プリチャージ信号PC1を受ける。プリチャージ信号PC1がイネーブル(Lレベル)になると、PチャネルMOSトランジスタPM0,PM1,PM2がオンになり、第1群の列のビット線対BL,I_BLが「H」レベルにプリチャージされる。
ノーマル部の第2群の列におけるプリチャージ回路32のPチャネルMOSトランジスタPM0,PM1,PM2のゲートは、プリチャージ信号PC2を受ける。プリチャージ信号PC2がイネーブル(Lレベル)になると、PチャネルMOSトランジスタPM0,PM1,PM2がオンになり、第2群の列のビット線対BL,I_BLが「H」レベルにプリチャージされる。
ノーマル部の第3群の列におけるプリチャージ回路32のPチャネルMOSトランジスタPM0,PM1,PM2のゲートは、プリチャージ信号PC3を受ける。プリチャージ信号PC3がイネーブル(Lレベル)になると、PチャネルMOSトランジスタPM0,PM1,PM2がオンになり、第3群の列のビット線対BL,I_BLが「H」レベルにプリチャージされる。
パリティ部におけるプリチャージ回路32のPチャネルMOSトランジスタPM0,PM1,PM2のゲートは、プリチャージ信号PCPを受ける。プリチャージ信号PCPがイネーブル(Lレベル)になると、PチャネルMOSトランジスタPM0,PM1,PM2がオンになり、パリティ部の列のビット線対RBLP,I_RBLPが「H」レベルにプリチャージされる。
各列のセンスアンプ33は、PチャネルMOSトランジスタPM3,PM4と、NチャネルMOSトランジスタNM2,NM3,NM4とからなる。
ノーマル部の第0群の列におけるセンスアンプ33のNチャネルMOSトランジスタNM4のゲートは、センスアンプ活性化信号SAE0を受ける。センスアンプ活性化信号SAE0がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM4がオンになり、第0群の列のセンスアンプ33が活性化される。
ノーマル部の第1群の列におけるセンスアンプ33のNチャネルMOSトランジスタNM4のゲートは、センスアンプ活性化信号SAE1を受ける。センスアンプ活性化信号SAE1がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM4がオンになり、第1群の列のセンスアンプ33が活性化される。
ノーマル部の第2群の列におけるセンスアンプ33のNチャネルMOSトランジスタNM4のゲートは、センスアンプ活性化信号SAE2を受ける。センスアンプ活性化信号SAE2がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM4がオンになり、第2群の列のセンスアンプ33が活性化される。
ノーマル部の第3群の列におけるセンスアンプ33のNチャネルMOSトランジスタNM4のゲートは、センスアンプ活性化信号SAE3を受ける。センスアンプ活性化信号SAE3がイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM4がオンになり、第3群の列のセンスアンプ33が活性化される。
パリティ部におけるセンスアンプ33のNチャネルMOSトランジスタNM4のゲートは、センスアンプ活性化信号SAEPを受ける。センスアンプ活性化信号SAEPがイネーブル(Hレベル)になると、NチャネルMOSトランジスタNM4がオンになり、パリティ部の列のセンスアンプ33が活性化される。
各列の読出しバッファRBは、その列のビット線対と、その列の読出し信号線とに接続される。
ノーマル部における第0群の列における読出しバッファRBは、接続されているビット線対BL,I_BLのセンスアンプ33で増幅されたデータを受けて、読出し信号線RB0〜RB7に第0群読出しデータData_R0〜7として出力する。
ノーマル部における第1群の列における読出しバッファRBは、接続されているビット線対BL,I_BLのセンスアンプ33で増幅されたデータを受けて、読出し信号線RB8〜RB15に第1群読出しデータData_R8〜15として出力する。
ノーマル部における第2群の列における読出しバッファRBは、接続されているビット線対BL,I_BLのセンスアンプ33で増幅されたデータを受けて、読出し信号線RB16〜RB23に第2群読出しデータData_R16〜23として出力する。
ノーマル部における第3群の列における読出しバッファRBは、接続されているビット線対BL,I_BLのセンスアンプ33で増幅されたデータを受けて、読出し信号線RB24〜RB31に第3群読出しデータData_R24〜31として出力する。
パリティ部における読出しアンプRBは、接続されているビット線対RBLP,I_RBLPのセンスアンプ33で増幅されたデータを受けて、読出し信号線RP0〜RP5にパリティ読出しデータとして出力する。
各列の書込みドライバWDRは、その列のビット線対と、その列の書込み信号線とに接続される。
ノーマル部の第0群の列における書込みドライバWDRは、書込みドライバ活性化信号WE0を受ける。書込みドライバ活性化信号WE0がイネーブル(Hレベル)になると、書込みドライバWDRは、書込み信号線WD0〜WD7から受けた第0群書込みデータData_W0〜7をビット線対BL,I_BLに出力する。
ノーマル部の第1群の列における書込みドライバWDRは、書込みドライバ活性化信号WE1を受ける。書込みドライバ活性化信号WE1がイネーブル(Hレベル)になると、書込みドライバWDRは、書込み信号線WD8〜WD15から受けた第1群書込みデータData_W8〜15をビット線対BL,I_BLに出力する。
ノーマル部の第2群の列における書込みドライバWDRは、書込みドライバ活性化信号WE2を受ける。書込みドライバ活性化信号WE2がイネーブル(Hレベル)になると、書込みドライバWDRは、書込み信号線WD16〜WD23から受けた第2群書込みデータData_W16〜23をビット線対BL,I_BLに出力する。
ノーマル部の第3群の列における書込みドライバWDRは、書込みドライバ活性化信号WE3を受ける。書込みドライバ活性化信号WE3がイネーブル(Hレベル)になると、書込みドライバWDRは、書込み信号線WD24〜WD31から受けた第3群書込みデータData_W24〜31をビット線対BL,I_BLに出力する。
パリティ部における書込みドライバWDRは、書込みドライバ活性化信号WEPを受ける。書込みドライバ活性化信号WEPがイネーブル(Hレベル)になると、書込みドライバWDRは、書込み信号線WP0〜WP5から受けたパリティ書込みデータをビット線対WBLP,I_WBLPに出力する。
再び、図1を参照して、セレクト部17は、データ遅延回路14から出力される遅延書込みデータdData_W0〜31と、読出しデータバスRDB0〜RDB31の32ビットの読出しデータData_R0〜31を受けて、これらのデータに基づいて得られる32ビットのデータをECC書込み回路16に出力する。より具体的には、セレクト部30は、セレクタS0〜S3を備え、各セレクタS0〜S3は、以下の動作を行なう。
セレクタS0は、ECC読出し回路15から読出しデータバスRDB0〜RDB7に出力された第0群読出しデータData_R0〜7と、データ遅延回路14から出力された遅延書込みデータdData_W0〜7とを受ける。セレクタS0は、読書き制御信号R/W0が「H」レベルのとき(すなわち、第0群の列の非書込み時)には、第0群読出しデータData_R0〜7をECC書込み回路16に出力する。セレクタS0は、読書き制御信号R/W0が「L」レベルのとき(すなわち、第0群の列の書込み時)には、遅延書込みデータdData_W0〜7をECC書込み回路16に出力する。
セレクタS1は、ECC読出し回路15から読出しデータバスRDB8〜RDB15に出力された第1群読出しデータData_R8〜15と、データ遅延回路14から出力された遅延書込みデータdData_W8〜15とを受ける。セレクタS1は、読書き制御信号R/W1が「H」レベルのとき(すなわち、第1群の列の非書込み時)には、第1群読出しデータData_R8〜15をECC書込み回路16に出力する。セレクタS1は、読書き制御信号R/W1が「L」レベルのとき(すなわち、第1群の列の書込み時)には、遅延書込みデータdData_W8〜15をECC書込み回路16に出力する。
セレクタS2は、ECC読出し回路15から読出しデータバスRDB16〜RDB23に出力された第2群読出しデータData_R16〜23と、データ遅延回路14から出力された遅延書込みデータdData_W16〜23とを受ける。セレクタS2は、読書き制御信号R/W2が「H」レベルのとき(すなわち、第2群の列の非書込み時)には、第2群読出しデータData_R16〜23をECC書込み回路16に出力する。セレクタS2は、読書き制御信号R/W2が「L」レベルのとき(すなわち、第2群の列の書込み時)には、遅延書込みデータdData_W16〜23をECC書込み回路16に出力する。
セレクタS3は、ECC読出し回路15から読出しデータバスRDB24〜RDB31に出力された第3群読出しデータData_R24〜31と、データ遅延回路14から出力された遅延書込みデータdData_W24〜31とを受ける。セレクタS3は、読書き制御信号R/W3が「H」レベルのとき(すなわち、第3群の列の非書込み時)には、第3群読出しデータData_R24〜31をECC書込み回路16に出力する。セレクタS3は、読書き制御信号R/W3が「L」レベルのとき(すなわち、第3群の列の書込み時)には、遅延書込みデータdData_W24〜dWD31をECC書込み回路16に出力する。
ECC書込み回路16は、図8に具体的な構成例が示されるように、セレクト部17から出力された32ビットのデータを情報ビットのデータとして、誤り訂正を可能にするための6ビットのパリティを算出し、6ビットのパリティ書込みデータとして書込み信号線WP0〜WP5へ出力する。この情報ビットである32ビットのデータと、算出された6ビットのパリティ書込みデータとからなるデータは、ハミング符号を形成する。
ECC読出し回路15は、図9に具体的な構成例が示されるように、読出し信号線RB0〜RB31から第0群、第1群、第2群および第3群の読出しデータ、すなわち32ビットのノーマル読出しデータを受け、読出し信号線RP0〜RP5から6ビットのパリティ読出しデータを受ける。ECC読出し回路15は、6ビットのパリティ読出しデータをを用いて、32ビットのノーマル読出しデータのうちの1ビットの誤り訂正を行ない、誤り訂正後の32ビットのノーマル読出しデータを読出しデータバスRDB0〜RDB31に出力する。
(各サイクルの動作の概要)
次に、図10を参照して、本実施の形態のECC機能付き半導体記憶装置100の各サイクルの動作の概要について説明する。
第2サイクルにおいて、第3群の列の読書き制御信号R/W3が書込みを示す「L」レベルとなる。第3群の列のメモリセルMC1に第3群書込みデータD2wの書込みが行なわれる。第2サイクルでは、これと並行して、ノーマル部およびパリティ部のすべての列のメモリセルMC1,MC2から32ビットのノーマル読出しデータD2r,6ビットのパリティ読出しデータP2rの読出しが開始される。
第3サイクルにおいて、第2群の列の読書き制御信号R/W2が書込みを示す「L」レベルとなる。第2群の列のメモリセルMC1に第2群書込みデータD3wの書込みが行なわれる。第3サイクルでは、これと並行して、ノーマル部およびパリティ部のすべての列のメモリセルMC1,MC2から32ビットのノーマル読出しデータD3r,6ビットのパリティ読出しデータP3rの読出しが開始され、第4サイクルにその読出しが完了する。
第3サイクルでは、さらにこれと並行して、パリティ読出しデータP2rを用いてノーマル読出しデータD2rの誤り訂正が行なわれる。誤り訂正されたノーマル読出しデータD2rは、CPU11に入力される。また、データ遅延回路14で第2群書込みデータD2wが遅延させられた第2群遅延書込みデータdD2wと、誤り訂正されたノーマル読出しデータD2rとを用いて、パリティ書込みデータP2wが計算される。そして、パリティ書込みデータP2wがメモリセルMC2に書込まれる。
このように本発明の実施の形態に係るECC機能付き半導体記憶装置では、メモリセルにデータの書込みを行なう場合には、1サイクルで、指定された群のメモリセルへのデータの書込み、および正規部およびパリティ部のすべての列のメモリセルからのデータの読出しを行なう。そして、次のサイクルで、次に指定された群のメモリセルへのデータの書込み、およびすべての列のメモリセルからのデータの読出しを行ない、これと並行して、パリティ部へのパリティの書込みを行なう。したがって、実質的に1サイクルで、メモリセルにデータの書込みを行なうことができ、データの書込みを高速化することができる。
(動作の詳細)
次に、図11に示すタイミングチャートを参照しつつ、このECC機能付き半導体記憶装置100の動作の詳細を説明する。
まず、第2サイクルにおいて、読書き制御信号R/W0〜R/W2が「H」レベルとなり、読書き制御信号R/W3が「L」レベルとなる。(図11の(1)に示す)。
クロック信号CLKφ1およびCLKφ2が「L」レベルのときには、制御信号生成回路13によって、プリチャージ信号PC0〜PC3,PCPが「L」レベルとなる(図11の(2)に示す)。これにより、すべてのプリチャージ回路32は、接続されたビット線対BL,I_BLを、プリチャージする。
また、クロック信号CLKφ2が「L」レベルのときには、制御信号生成回路13によって、ビット線選択信号BLS0〜BLS3,BLSPが「H」レベルとなる(図11の(3)に示す)。これにより、すべてのビット線選択回路31は、それに接続されたビット線対BL,I_BLまたはRBLP,I_RBLPと、対応する読出し信号線RB0〜RB31またはRP0〜RP5とを接続する。
クロック信号CLKφ1が「H」レベルになると、入力されたロウアドレス信号A0〜A8に対応するワード線WLが活性化され(図11の(4)に示す)、活性化されたワード線に接続されているすべての列のメモリセルMC1またはMC2のデータが、そのメモリセルMC1またはMC2に接続されているビット線対BL,I_BLまたはRBLP,I_RBLPに読出しデータとして出力される。
また、クロック信号CLKφ1およびCLKφ2が「L」レベルのとき以外には、制御信号生成回路13によって、センスアンプ活性化信号SAE0〜SAE3,SAEPが「H」レベルとなる(図11の(5)に示す)。これにより、すべてのセンスアンプ33は、活性化状態となり、それに接続するビット線対BL,I_BLまたはRBLP,I_RBLPのノーマル読出しデータまたはパリティ読出しデータを増幅する(図11の(6)に示す)。
制御信号生成回路13によって、クロック信号CLKφ1およびCLKφ2が「H」レベルのときに、書込みドライバ活性化信号WE3が「H」レベルとなる(図11の(7)に示す)。
CPU11は、第3群書込みデータData_W24〜31を書込みデータバスWDB24〜WDB31に出力する(図11の(8)に示す)。
第3群の列における書込みドライバWDRは、書込みドライバ活性化信号WE3が「H」レベルとなると、書込み信号線WD24〜WD31の第3群書込みデータData_W24〜31をビット線対BL,I_BLに出力する(図11の(9)に示す)。これにより、活性化されているワード線WLに接続されているメモリセルMC1にデータが書込まれる。
このメモリセルMC1への書込みと並行して、前述のように増幅された32ビットのノーマル読出しデータは、読出し信号線RB0〜RB31を通じてECC読出し回路15に送られ、6ビットのパリティ読出しデータは、読出し信号線RP0〜RP5を通じて、ECC読出し回路15に送られる(図11の(10)に示す)。
ECC読出し回路15は、6ビットのパリティ読出しデータを用いて、32ビットのノーマル読出しデータの誤り訂正を行ない、訂正後のノーマル読出しデータを読出しデータバスRDB0〜RDB31を通じて、CPU11およびセレクト部17に出力する(図11の(11)に示す)。
第3サイクルにおいて、CPU11は、読出しデータバスRDB0〜RDB31を通じて訂正後のノーマル読出しデータを取込む(図11の(12)に示す)。
セレクト部17は、読出しデータバスRDB0〜RDB31を通じて誤り訂正されたノーマル読出しデータを受け、書込みデータバスWDB24〜WDB31を通じて第3群遅延書込みデータを受け、書込みデータバスWDB0〜WDB23に誤り訂正された読出しデータを出力し、書込みデータバスWDB24〜WDB31に第3群遅延書込みデータを出力する。書込みデータバスWDB0〜WDB31の32ビットのデータは、ECC書込み回路15に送られる(図11の(13)に示す)
ECC書込み回路15は、セレクト部17から出力された書込みデータバスWDB0〜WDB31の32ビットのデータを用いて、パリティ書込みデータを算出して、書込み信号線WP0〜WP5に出力する(図11の(14)に示す)。
第3サイクルでは、読書き制御信号R/W0,R/W1,R/W3が「H」レベルとなり、読書き制御信号R/W2が「L」レベルとなる(図11の(15)に示す)。
第3サイクルにおいては、第0群、第1群および第3群の列に対応する信号および回路は、第2サイクルの第0群、第1群、第2群の列に対応する信号および回路と同様に動作し、第2群の列に対応する信号および回路は、第2サイクルの第3群の列に対応する信号および回路と同様に動作する。
第3サイクルにおいて、クロック信号CLKφ1およびφ2が「H」レベルのときには、制御信号生成回路13によって、書込みドライバ活性化信号WE2およびWEPが「H」レベルとなる(図11の(16)に示す)。
第3サイクルにおいて、クロック信号CLKφ1が「H」レベルになると、入力されたロウアドレス信号A0〜A8に対応するワード線WLが活性化される(図11の(17)に示す)。
また、アドレス遅延回路20で遅延させられたロウアドレス信号dA0〜dA8に対応するワード線PWLが活性化される(図11の(18)に示す。)
第2群の列における書込みドライバWDRは、書込みドライバ活性化信号WE2が「H」レベルとなると、書込み信号線WD16〜WD23の第2群書込みデータData_W16〜23をビット線対BL,I_BLに出力する(図11の(19)に示す)。これにより、活性化されているワード線WLに接続されているメモリセルMC1にデータが書込まれる。
パリティ部における書込みドライバWDRは、書込みドライバ活性化信号WEPが「H」レベルとなると、書込み信号線WP0〜WP5のパリティ書込みデータをビット線WBLP,I_WBLPに出力する(図11の(20)に示す)。これにより、活性化されているワード線PWLに接続されているメモリセルMC2にデータが書込まれる。
(従来の構成)
次に、本実施の形態に係るECC機能付き半導体記憶装置との比較のため、従来のECC機能付き半導体記憶装置の詳細について説明する。
図12は、従来のECC機能付き半導体記憶装置の構成を示す。同図を参照して、このECC機能付き半導体記憶装置200が、本実施の形態のECC機能付き半導体記憶装置100と相違する点は、このECC機能付き半導体記憶装置200は、制御信号生成回路13の代わりに制御信号生成回路63を備え、メモリセルアレイ21の代わりにメモリセルアレイ71を備え、メモリセルアレイ周辺回路群22の代わりにメモリセルアレイ周辺回路群72を備え、データ遅延回路14とアドレス遅延回路20と第2ロウ系デコーダ19とを備えない点である。
従来の読書き制御信号R/W0〜3は、本実施の形態の読書き制御信号R/W0〜3と、以下のように、その指示する内容が異なる。
読書き制御信号R/W0が「L」レベルのときには、第0群の列に対して書込みを指示する。読書き制御信号R/W1が「H」レベルのときには、第1群の列に対して読出しを指示し、読書き制御信号R/W1が「L」レベルのときには、第1群の列に対して書込みを指示する。読書き制御信号R/W2が「H」レベルのときには、第2群の列に対して読出しを指示し、読書き制御信号R/W2が「L」レベルのときには、第2群の列に対して書込みを指示する。読書き制御信号R/W3が「H」レベルのときには、第3群の列に対して読出しを指示し、読書き制御信号R/W3が「L」レベルのときには、第3群の列に対して書込みを指示する。したがって、読書き制御信号R/W0〜3によって、読出しか、書込みかのいずれかが行なわれ、本実施の形態のように1サイクルで読出しと書込みが行なわれることがない。
図13は、従来の制御信号生成回路63の構成を示す。同図を参照して、論理回路L1によって、読書き制御信号R/Wi(i=0〜3)が「H」レベル、クロック信号CLKφ1が「L」レベル、かつクロック信号CLKφ2が「L」レベルのときに、プリチャージ信号PCi(i=0〜3)が「L」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)が「L」レベルのときには、プリチャージ信号PCi(i=0〜3)が「L」レベルとならない。
論理回路L2によって、読書き制御信号R/Wi(i=0〜3)が「H」レベル、かつクロック信号CLKφ2が「L」レベルのときに、ビット線選択信号BLSi(i=0〜3)が「H」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)が「L」レベルのときには、ビット線選択信号BLSi(i=0〜3)が「H」レベルとならない。
論理回路L3およびフリップフロップFF1によって、読書き制御信号R/Wi(i=0〜3)が「H」レベル、かつクロック信号CLKφ1が「H」レベルとなる時点から、クロック信号CLKφ1が「L」レベル、かつクロック信号CLKφ2が「L」レベルとなる時点まで、センスアンプ活性化信号SAEi(i=0〜3)が「H」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)が「L」レベルのときには、クロック信号CLKφ1が「H」レベルとなる時点からセンスアンプ活性化信号SAEi(i=0〜3)が「H」レベルとならない。
論理回路L4によって、読書き制御信号R/Wi(i=0〜3)が「L」レベル、クロック信号CLKφ1が「H」レベル、かつクロック信号CLKφ2が「H」レベルのときに、書込みドライバ活性化信号WEi(i=0〜3)が「H」レベルとなる。
論理回路L5,L6によって、読書き制御信号R/W0〜R/W3が「H」レベル、クロック信号CLKφ1が「L」レベル、かつクロック信号CLKφ2が「L」レベルのときに、プリチャージ信号PCPが「L」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)のいずれかが「L」レベルのときには、プリチャージ信号PCPが「L」レベルとならない。
論理回路L5,L7によって、読書き制御信号R/W0〜R/W3が「H」レベル、かつクロック信号CLKφ2が「L」レベルのときに、ビット線選択信号BLSPが「H」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)のいずれかが「L」レベルのときには、ビット線選択信号BLSPが「H」レベルとならない。
論理回路L5,L8およびフリップフロップFF2によって、読書き制御信号R/W0〜R/W3が「H」レベル、かつクロック信号CLKφ1が「H」レベルとなる時点から、クロック信号CLKφ1が「L」レベル、かつクロック信号CLKφ2が「L」レベルとなる時点まで、センスアンプ活性化信号SAEPが「H」レベルとなる。このように従来のECC機能付き半導体記憶装置200では、本実施の形態に係るECC機能付き半導体記憶装置100と異なり、読書き制御信号R/Wi(i=0〜3)のいずれかが「L」レベルのときには、クロック信号CLKφ1が「H」レベルとなる時点からセンスアンプ活性化信号SAEPが「H」レベルとならない。
論理回路L9,L10によって、読書き制御信号R/W0〜R/W3のうちのいずれかが「L」レベル、クロック信号CLKφ1が「H」レベル、かつクロック信号CLKφ2が「H」レベルのときに、書込みドライバ活性化信号WEPが「H」レベルとなる。
図14は、図12におけるメモリセルアレイ71と、メモリセルアレイ周辺回路群72と、第1ロウ系デコーダ18の構成を示す。
同図を参照して、メモリセルアレイ71におけるパリティ部のSRAMセルアレイは、本実施の形態と異なり、ノーマル部のSRAMセルアレイと同様の構成である。また、パリティ部のビット線対およびワード線も、本実施の形態と異なり、ノーマル部のビット線対およびワード線と同様である。
メモリセルアレイ周辺回路群72における、パリティ部の書込みドライバWDRは、本実施の形態のパリティ部の書込みドライバWDRのように書込み用ビット線対と接続するのではなく、ノーマル部の書込みドライバWDRと同様に、ビット線対BL,I_BLと接続する。
(従来のECC機能付き半導体記憶装置の各サイクルの動作の概要)
次に、図15を参照して、従来のECC機能付き半導体記憶装置200の各サイクルの動作の概要について説明する。
第3サイクルにおいて、第3群の列の読書き制御信号R/W3が書込みを示す「L」レベルとなる。第3群の列のメモリセルMC1に第3群書込みデータD2wの書込みが行なわれるが、それに先立つ第2サイクルにおいて、すべての読書き制御信号R/W0〜R/W3が読出しを示す「H」レベルとなる。そして、ノーマル部およびパリティ部のすべての列から32ビットのノーマル読出しデータD2rと、6ビットのパリティ読出しデータP2rとの読出しが開始される。第3サイクルにその読出しが完了する。
第3サイクルにおいて、パリティ読出しデータP2rを用いてノーマル読出しデータD2rの誤り訂正が行なわれる。誤り訂正されたノーマル読出しデータD2rは、CPU11に入力される。また、第3群書込みデータD2wと、誤り訂正されたノーマル読出しデータD2rとを用いて、パリティ書込みデータP2wが計算される。そして、ノーマル書込みデータD2wとパリティ書込みデータP2wがメモリセルMC1に書込まれる。
このように従来のECC機能付き半導体記憶装置では、メモリセルにデータの書込みを行なう場合には、データの書込みを行なうサイクルの1サイクル前に、すべての列のメモリセルからのデータの読出しを行なう。したがって、メモリセルにデータの書込みを行なう場合には、2サイクルを必要とし、書込み速度が低下する。
(従来の動作の詳細)
次に、図16に示すタイミングチャートを参照して、従来のECC機能付き半導体記憶装置200の動作の詳細を説明する。
まず、第2サイクルにおいて、読書き制御信号R/W0〜R/W3が「H」レベルとなる(図16の(1)に示す)。
第2サイクルにおいて、クロック信号CLKφ1およびCLKφ2が「L」レベルのときには、制御信号生成回路63によって、プリチャージ信号PC0〜PC3,PCPが「L」レベルとなる(図16の(2)に示す)。これにより、すべてのプリチャージ回路32は、接続されたビット線対BL,I_BLを、プリチャージする。
第2サイクルにおいて、クロック信号CLKφ2が「L」レベルのときには、制御信号生成回路63によって、ビット線選択信号BLS0〜BLS3,BLSPが「H」レベルとなる(図16の(3)に示す)。これにより、すべてのビット線選択回路31は、それに接続されたビット線対BL,I_BLまたはBLP,I_BLPと、対応する読出し信号線RB0〜RB31またはRP0〜RP5とを接続する。
第2サイクルにおいて、クロック信号CLKφ1が「H」レベルになると、入力されたロウアドレス信号A0〜A8に対応するワード線WLが活性化され(図16の(4)に示す)、活性化されたワード線に接続されているすべての列のメモリセルMC1のデータが、そのメモリセルMC1に接続されているビット線対BL,I_BLに読出しデータとして出力される。
また、クロック信号CLKφ1が「H」レベルになってから、次の第3サイクルでクロック信号CLKφ1およびCLKφ2が「L」レベルになるまでの間、センスアンプ活性化信号SAE0〜SAE3,SAEPが「H」レベルとなる(図16の(5)に示す)。これにより、すべてのセンスアンプ33は、活性化状態となり、それに接続するビット線対BL,I_BLのノーマル読出しデータまたはパリティ読出しデータを増幅する(図16の(6)に示す)。
第2サイクルにおいては、制御信号生成回路63によって、ノーマル書込みドライバ活性化信号WE0〜WE3、およびパリティ書込みドライバ活性化信号WEPが「L」レベルとなる(図16の(7)に示す)。
このようにして、32ビットのノーマル読出しデータは、読出し信号線RB0〜RB31を通じて、6ビットのパリティ読出しデータは、読出し信号線RP0〜RP5を通じて、ECC読出し回路15に送られる(図16の(8)に示す)。
ECC読出し回路15は、6ビットのパリティ読出しデータを用いて、32ビットのノーマル読出しデータの誤り訂正を行ない、訂正後のノーマル読出しデータを読出しデータバスRDB0〜RDB31を通じて、CPU11およびセレクト部17に出力する(図16の(9)に示す)。
第3サイクルにおいて、CPU11は、読出しデータバスRDB0〜RDB31を通じて訂正後のノーマル読出しデータを取込む(図16の(10)に示す)。
また、CPU11は、第3群書込みデータData_W24〜31を書込みデータバスWDB24〜WDB31に出力する(図16の(11)に示す)。
セレクト部17は、読出しデータバスRDB0〜RDB31を通じて誤り訂正されたノーマル読出しデータと、書込みデータバスWDB24〜WDB31を通じて第3群書込みデータData_W24〜31とを受け、書込みデータバスWDB0〜WDB23に、誤り訂正された読出しデータを出力し、書込みデータバスWDB24〜WDB31に、第3群書込みデータData_W24〜31を出力する。書込みデータバスWDB0〜WDB31の32ビットのデータは、ECC書込み回路15に送られる(図16の(12)に示す)
ECC書込み回路15は、セレクト部17から出力された書込みデータバスWDB0〜WDB31の32ビットのデータを用いてパリティ書込みデータを算出して、書込み信号線WP0〜WP5に出力する(図16の(13)に示す)。
第3サイクルでは、読書き制御信号R/W0〜R/W2が「H」レベルとなり、読書き制御信号R/W3が「L」レベルとなる(図16の(14)に示す)。
第3サイクルにおいては、第0群、第1群および第2群の列に対応する信号および回路は、読出しサイクルと同様に動作する。
一方、第3群の列に対応する信号および回路は、以下の動作を行なう。
第3サイクルにおいて、クロック信号CLKφ1が「H」レベルになると、入力されたロウアドレス信号A0〜A8に対応するワード線WLが活性化される(図16の(15)に示す)。
第3サイクルにおいて、クロック信号CLKφ1およびφ2が「H」レベルのときには、制御信号生成回路63によって、書込みドライバ活性化信号WE3,WEPが「H」レベルとなる(図16の(16)に示す)。
第3群の列における書込みドライバWDRは、書込みドライバ活性化信号WE3が「H」レベルとなると、書込み信号線WD24〜WD31の第3群書込みデータData_W24〜31をビット線対BL,I_BLに出力する(図16の(17)に示す)。これにより、活性化されているワード線WLに接続されているメモリセルMC1にデータが書込まれる。
パリティ部における書込みドライバWDRは、書込みドライバ活性化信号WEPが「H」レベルとなると、書込み信号線WP0〜WP5のパリティ書込みデータをビット線対BLP,I_BLPに出力する(図16の(18)に示す)。これにより、活性化されているワード線WLに接続されているメモリセルMC1にデータが書込まれる。
以上のように、本実施の形態に係るECC機能付き半導体記憶装置によれば、メモリセルアレイのうち、指定された群に対してデータの書込みを行なうような場合に、1サイクルで、その群のメモリセルへのデータの書込み、および正規部とパリティ部のすべての列のメモリセルからのデータの読出しを行なう。そして、次のサイクルで、パリティ部へのパリティの書込みを行なうが、この書込みは、次に指定された群に対してのデータの書込み、および正規部とパリティ部のすべての列のメモリセルからのデータの読出しと並行して行なうことができる。したがって、実質的に1サイクルで、メモリセルにデータの書込みを行なうことができるので、データの書込みを高速化することができる。
本発明は、上記の実施形態に限定するものではなく、たとえば、以下のような変形例も含む。
(1) 複数サイクル後にパリティ部への書込み
本発明の実施形態では、あるサイクルで、正規部へデータの書込みを行なったときに、その書込みを行なったデータに対応する新たなパリティの書込みは、1サイクル後に行なわれるが、nサイクル後(n>2)に行なうものとしてもよい。nサイクル後に行なう場合には、アドレス遅延回路によってアドレスA0〜A8をnサイクル遅延させ、データ遅延回路によって書込みデータData_W0〜31をnサイクル遅延させ、制御信号生成回路で、読書き制御信号R/W0〜3をnサイクル遅延させるものとすればよい。
(2) 1サイクルで正規部の複数群に対してのデータの書込み
本発明の実施形態では、各サイクルでは、正規部の1つの群に対して、データの書込みを行なうものとした(つまり、8ビットデータの書込み)が、本発明は、これに限定するものではなく、2つの群に対してのデータの書込み(16ビットデータの書込み)、3つの群に対してのデータの書込み(24ビットデータの書込み)、または4つの群に対してのデータの書込み(32ビットデータの書込み)を行なうものとしてもよい。
(3) メモリセルアレイの列の数
本発明の実施の形態では、第0〜第31列のノーマル部と、第32列〜第37列のパリティ部とからなるメモリセルアレイを例として用いたが、これに限定するものではない。ただし、ハミング符号(1ビット誤り訂正)を形成するためには、ノーマル部の列の数を2nとし、パリティ部の列の数pとしたときに、2p−p−1≧nの条件を満たすことが必要となる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本発明の実施形態に係るECC機能付き半導体記憶装置の構成を示す図である。 アドレス遅延回路20の構成を示す図である。 データ遅延回路14の構成を示す図である。 制御信号生成回路13の構成を示す図である。 図1におけるメモリセルアレイ21と、メモリセルアレイ周辺回路群22と、第1ロウ系デコーダ18と、第2ロウ系デコーダ19の構成を示す図である。 ノーマル部のSRAMセルMC1の構成を示す図である。 パリティ部のSRAMセルMC2の構成を示す図である。 ECC書込み回路16の構成を示す図である。 ECC読出し回路15の構成を示す図である。 本発明の実施の形態に係るECC機能付き半導体記憶装置の各サイクルの動作の概要を示す図である。 本発明の実施の形態に係るECC機能付き半導体記憶装置の動作の詳細を示すタイミングチャートである。 従来のECC機能付き半導体記憶装置の構成を示す図である。 従来の制御信号生成回路63の構成を示す図である。 図12におけるメモリセルアレイ71と、メモリセルアレイ周辺回路群72と、第1ロウ系デコーダ18の構成を示す図である。 従来のECC機能付き半導体記憶装置の各サイクルの動作の概要を示す図である。 従来のECC機能付き半導体記憶装置の動作の詳細を示すタイミングチャートである。
符号の説明
11 CPU、12 CLK生成回路、13,63 制御信号生成回路、14 データ遅延回路、15 ECC読出し回路、16 ECC書込み回路、17 セレクト部、18 第1ロウ系デコーダ、19 第2ロウ系デコーダ、20 アドレス遅延回路、21,71 メモリセルアレイ、22,72 メモリセルアレイ周辺回路群、23,24 プリデコーダ、25,26 ロウデコーダ、31 ビット線選択回路、32 プリチャージ回路、33 センスアンプ、100,200 ECC機能付き半導体記憶装置、RB 読出しバッファ、WDR 書込みドライバ、NM0〜NM10 NチャネルMOSトランジスタ、PM0〜PM4 PチャネルMOSトランジスタ、MC1,MC2 メモリセル、BL,I_BL,WBLP,I_WBLP,RBLP,I_RBLP ビット線、WL,PWL ワード線、FF0〜FF4,FP フリップフロップ、S0,S1,S2,S3 セレクタ、L1〜L14 論理回路、IV1 インバータ、N,I_N ノード。

Claims (7)

  1. 行列状に配置されるとともに、複数の列を1個の群としたときに複数群に分割され、群単位でデータの読出しおよび書込みが行なわれる正規部のメモリセルアレイと、各行が正規部の同一行のメモリセルのデータのパリティを記憶するパリティ部のメモリセルアレイとを備えたECC機能付き半導体記憶装置であって、
    正規部と同一のワード線の活性化によってその開閉が制御され、読出し用ビット線対と接続される読出し用のポートと、パリティ部専用のワード線の活性化によってその開閉が制御され、書込み用ビット線対と接続される書込み用のポートを有するパリティ部のメモリセルと、
    正規部の各列のメモリセルからデータの読出しを行なう正規部の各列の読出し系回路と、
    パリティ部の各列のメモリセルから前記読出し用ポートおよび前記読出し用ビット線対を通じて、パリティの読出しを行なうパリティ部の各列の読出し系回路と、
    前記パリティ部の各列の読出し系回路で読み出されたパリティを用いて、前記正規部の各列の読出し系回路で読み出されたデータに誤りがあれば、訂正を行なう訂正回路と、
    読書き制御信号が非書込みを指示する群に属する列についての前記訂正回路から出力されるデータと、前記読書き制御信号が書込みを指示する群に属する列についての前記外部からの書込みデータとからなる情報ビットのデータについてのパリティを算出するパリティ算出回路と、
    正規部の各列が属する群の読書き制御信号が書込みを指示するときに、外部からの書込みデータをビット線対を通じてメモリセルに書込む正規部の各列の書込みドライバと、
    外部からのアドレス信号を所定サイクル遅延させて遅延アドレス信号を出力するアドレス遅延回路と、
    前記遅延アドレス信号に従って、パリティ部専用のワード線を活性化させるパリティ部専用のロウ系デコーダと、
    各群の読書き制御信号を所定サイクル数遅延させて各群の遅延読書き制御信号を出力する制御信号生成回路と、
    いずれかの群の前記遅延読書き制御信号が書込みを指示するときに、前記算出されたパリティを前記書込み用ビット線対および書込み用ポートを通じてメモリセルに書込むパリティ部の各列の書込みドライバとを備えたECC機能付き半導体記憶装置。
  2. 前記正規部の各列の書込みドライバは、前記正規部の各列の読出し系回路を経由することなく、前記書込みデータをビット線対に出力する、請求項1記載のECC機能付き半導体記憶装置。
  3. 前記正規部の各列の書込みドライバは、前記正規部の各列の読出し系回路によるメモリセルからのデータの読出し後に、その読出しが行なわれたサイクルと同一のサイクルで前記書込みを行なう、請求項2記載のECC機能付き半導体記憶装置。
  4. 外部からの書込みデータを所定サイクル数遅延させた遅延書込みデータを出力するデータ遅延回路と、
    各群について設けられ、前記データ遅延回路から出力される遅延書込みデータと、前記訂正回路から出力されるデータとを受けて、その群の読書き制御信号が書込みを指示するときには、前記遅延書込みデータを前記パリティ算出回路に出力し、その群の読書き制御信号が非書込みを指示するときには、前記訂正回路から出力されたデータを前記パリティ算出回路に出力するセレクタとをさらに備えた請求項3記載のECC機能付き半導体記憶装置。
  5. 前記所定サイクル数は、1サイクルとする、請求項4記載のECC機能付き半導体記憶装置。
  6. 前記制御信号生成回路は、さらに、
    前記遅延読書き制御信号のいずれかが書込みを指示するときに、パリティ部の各列の書込みドライバを活性化させる書込みドライバ活性化信号を生成する、請求項5記載のECC機能付き半導体記憶装置。
  7. 前記正規部およびパリティ部の各列の読出し系回路は、センスアンプと、ビット線選択回路と、プリチャージ回路と、読出しバッファとを含み、
    前記制御信号生成回路は、さらに、
    前記読書き制御信号のレベルに依存せずに、クロック信号に基づき前記センスアンプを活性化させるセンスアンプ活性化信号を生成し、
    前記読書き制御信号のレベルに依存せずに、クロック信号に基づき前記ビット線選択回路にビット線対の選択を行なわせるビット線選択信号を生成し、
    前記読書き制御信号のレベルに依存せずに、クロック信号に基づき前記プリチャージ回路にプリチャージを行なわせるプリチャージ信号を生成する、請求項5記載のECC機能付き半導体記憶装置。
JP2003315488A 2003-09-08 2003-09-08 Ecc機能付き半導体記憶装置 Expired - Fee Related JP4336168B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003315488A JP4336168B2 (ja) 2003-09-08 2003-09-08 Ecc機能付き半導体記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003315488A JP4336168B2 (ja) 2003-09-08 2003-09-08 Ecc機能付き半導体記憶装置

Publications (2)

Publication Number Publication Date
JP2005085357A JP2005085357A (ja) 2005-03-31
JP4336168B2 true JP4336168B2 (ja) 2009-09-30

Family

ID=34415744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003315488A Expired - Fee Related JP4336168B2 (ja) 2003-09-08 2003-09-08 Ecc機能付き半導体記憶装置

Country Status (1)

Country Link
JP (1) JP4336168B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4703220B2 (ja) * 2005-03-04 2011-06-15 株式会社東芝 半導体記憶装置
KR100694407B1 (ko) 2005-04-21 2007-03-12 주식회사 하이닉스반도체 불량 셀 교정 회로를 포함하는 불휘발성 강유전체 메모리장치
KR100803373B1 (ko) 2007-02-09 2008-02-13 주식회사 하이닉스반도체 반도체 메모리 장치의 데이터 에러 측정 회로
JP5067131B2 (ja) 2007-11-07 2012-11-07 富士通セミコンダクター株式会社 半導体メモリ、半導体メモリの動作方法およびシステム
US9311181B2 (en) 2012-11-15 2016-04-12 Samsung Electronics Co., Ltd. Memory controller changing partial data in memory device and method for changing partial data thereof
CN115422880A (zh) * 2022-09-21 2022-12-02 长鑫存储技术有限公司 半导体结构、版图结构以及存储器

Also Published As

Publication number Publication date
JP2005085357A (ja) 2005-03-31

Similar Documents

Publication Publication Date Title
US7275200B2 (en) Transparent error correcting memory that supports partial-word write
KR101089409B1 (ko) 메모리 어레이 에러 정정 장치, 시스템 및 방법
US7610542B2 (en) Semiconductor memory in which error correction is performed by on-chip error correction circuit
US20080183984A1 (en) Memory system with read-modify-write
JP2005063547A (ja) 半導体記憶装置
US7949933B2 (en) Semiconductor integrated circuit device
JP2669303B2 (ja) ビットエラー訂正機能付き半導体メモリ
JP2007066423A (ja) 半導体集積回路装置
JP4336168B2 (ja) Ecc機能付き半導体記憶装置
US20050278594A1 (en) Semiconductor memory device having ECC circuit
US6967882B1 (en) Semiconductor memory including static memory
JP4050091B2 (ja) 半導体メモリ装置
KR100566162B1 (ko) 버스트 동작에 의해 데이터 및 패리티 데이터를입출력하는 반도체 기억 장치
JP4102313B2 (ja) 半導体集積回路装置
JP2515097B2 (ja) 半導体記憶装置
JP4889343B2 (ja) 半導体記憶装置
JP3240897B2 (ja) 半導体記憶装置
JPWO2008032549A1 (ja) 半導体記憶装置
JPH11203889A (ja) 半導体記憶装置
JP4241580B2 (ja) シリアルアクセスメモリ
WO2013080309A1 (ja) 半導体記憶装置、及び試験方法
JP2006092634A (ja) 半導体記憶装置
WO2006057794A2 (en) Transparent error correcting memory that supports partial-word write
JPH0746517B2 (ja) 半導体メモリ及びそのテスト方法
JPH09251778A (ja) Icメモリ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090615

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090623

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090626

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130703

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees