JP2013016228A - Semiconductor device - Google Patents

Semiconductor device Download PDF

Info

Publication number
JP2013016228A
JP2013016228A JP2011148467A JP2011148467A JP2013016228A JP 2013016228 A JP2013016228 A JP 2013016228A JP 2011148467 A JP2011148467 A JP 2011148467A JP 2011148467 A JP2011148467 A JP 2011148467A JP 2013016228 A JP2013016228 A JP 2013016228A
Authority
JP
Japan
Prior art keywords
write
data
area
semiconductor device
stamp
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.)
Withdrawn
Application number
JP2011148467A
Other languages
Japanese (ja)
Inventor
Masamichi Fujito
正道 藤戸
Toru Matsushita
亨 松下
Yasunobu Aoki
康伸 青木
Ken Matsubara
謙 松原
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 Electronics Corp
Original Assignee
Renesas Electronics 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 Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011148467A priority Critical patent/JP2013016228A/en
Publication of JP2013016228A publication Critical patent/JP2013016228A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a semiconductor device which can improve data reliability.SOLUTION: A semiconductor device comprises, for example, three nonvolatile memory modules FMD1 to FMD3 each of which includes an independent internal power generation circuit VGEN1 to VGEN3. When external write data is input, one of data pieces that are obtained by halving the data is written to a data area DT[1a] of the FMD1 and the other is written to a data area DT[1b] of the FMD2. Further, parity data is generated from the halved data and is written to a data area PT[1] of the FMD3. The writing to the DT[1a], DT[1b], and PT[1] is performed during periods which do not overlap with one another, and an identifier is written to a corresponding write stamp area (for example, the PS[1a]) before and after writing is performed for each data area (for example, the DT[1a]).

Description

本発明は、半導体装置に関し、特に、フラッシュメモリ等の不揮発性メモリモジュールを備えたマイクロコンピュータ等の半導体装置に適用して有効な技術に関する。   The present invention relates to a semiconductor device, and more particularly to a technique effective when applied to a semiconductor device such as a microcomputer provided with a nonvolatile memory module such as a flash memory.

例えば特許文献1には、ECC回路内臓のPROMにおいて、メインPROMセル内とパリティPROMセル内の誤りの有無を書き込みベリファイ時に確認する技術が示されている。特許文献2には、複数のフラッシュメモリに対する同時アクセス数(インターリーブ比)を適宜変更することで、動作状況に応じてピーク電流やアクセス時間等を最適化する技術が示されている。特許文献3には、1ビットのデータを相補データとして2個の記憶素子に書き込み、読み出し時に2個の記憶素子からの読み出し信号を差動増幅することでリテンション性能を向上させる技術が示されている。   For example, Patent Document 1 discloses a technique for confirming whether or not there is an error in a main PROM cell and a parity PROM cell at the time of write verification in a PROM with a built-in ECC circuit. Patent Document 2 discloses a technique for optimizing a peak current, an access time, and the like according to an operation state by appropriately changing the number of simultaneous accesses (interleave ratio) to a plurality of flash memories. Patent Document 3 discloses a technique for improving retention performance by writing 1-bit data as complementary data to two storage elements and differentially amplifying read signals from the two storage elements at the time of reading. Yes.

特開平9−231785号公報JP-A-9-231785 特開2007−193810号公報JP 2007-193810 A 特開2008−117510号公報JP 2008-117510 A

近年、例えばフラッシュメモリ等を搭載したマイクロコンピュータ(所謂マイコン)等が様々な分野で広く使用されている。マイコン等に搭載されたフラッシュメモリは、命令(コード)の格納用のみならず、データの格納用としても使用され、マイコンの動作過程で頻繁に書き込み動作が行われる場合がある。フラッシュメモリに格納されるデータの中には、重要度が高いデータも多く含まれるが、マイコン等の使用環境によっては、当該データを確実に保護することが困難となる場合が生じ得る。その一つとして、例えば、電源の瞬停等が挙げられる。   In recent years, for example, microcomputers (so-called microcomputers) equipped with a flash memory or the like are widely used in various fields. A flash memory mounted on a microcomputer or the like is used not only for storing instructions (codes) but also for storing data, and a write operation may be frequently performed during the operation process of the microcomputer. The data stored in the flash memory includes a lot of highly important data. However, depending on the use environment of the microcomputer or the like, it may be difficult to reliably protect the data. One of them is, for example, a momentary power interruption.

例えば、1回の書き込みを行う際の単位領域となる書き込みブロックを複数備えたメモリモジュール内で、ある書き込みブロックを対象に書き込み動作を行っている最中に電源の瞬停が生じた場合を想定する。ある書き込みブロックに対して書き込み動作を行っている間、当該書き込みブロックのアドレスは、ラッチ回路によって保持されている。この際に、当該メモリモジュールにおいて電源の瞬停が生じると、当該ラッチ回路の保持情報が破壊される恐れがある。この場合、当該書き込みブロックのアドレスが意図しないアドレスに変更され、別の書き込みブロックを対象とした誤書き込みが生じ、結果的に、書き込み非対象領域のデータが破壊される事態が生じ得る。また、これと同様な事態が、消去動作時にも生じ得る。   For example, assume a momentary power failure occurs while a write operation is being performed on a certain write block in a memory module that has multiple write blocks that serve as unit areas for a single write. To do. While a write operation is performed on a certain write block, the address of the write block is held by a latch circuit. At this time, if an instantaneous power failure occurs in the memory module, there is a possibility that the information held in the latch circuit is destroyed. In this case, the address of the writing block is changed to an unintended address, erroneous writing for another writing block may occur, and as a result, the data in the writing non-target area may be destroyed. A similar situation can also occur during the erase operation.

前述したように、マイコン等は様々な分野において多様な環境で使用されるため、電源の瞬停等が起こらないようにすることは容易ではなく、分野によっては、このような状況下でもデータを確実に保護することが求められる場合がある。なお、例えば前述した特許文献1や特許文献3の技術を用いることで、リテンション特性の低下等に伴うデータ化けの問題を解決することは可能であるが、電源の瞬停等に伴い書き込み非対象領域のデータが破壊される問題を解決することは困難である。   As described above, since microcomputers and the like are used in various fields and in various environments, it is not easy to prevent a momentary power failure or the like from occurring. There may be a need to ensure protection. Note that, for example, by using the techniques of Patent Document 1 and Patent Document 3 described above, it is possible to solve the problem of garbled data due to a decrease in retention characteristics, etc. It is difficult to solve the problem that the data in the area is destroyed.

本発明は、このようなことを鑑みてなされたものであり、その目的の一つは、データの信頼性の向上を実現可能な半導体装置(または記憶装置)を提供することにある。本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。   The present invention has been made in view of the above, and an object of the present invention is to provide a semiconductor device (or a storage device) capable of improving data reliability. The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち、代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。   Of the inventions disclosed in the present application, the outline of a typical embodiment will be briefly described as follows.

本実施の形態による半導体装置は、N(Nは3以上の整数)個の不揮発性メモリモジュールを備え、各不揮発性メモリモジュールが、自身の動作電源を生成する内部電源生成回路と、第1および第2書き込みデータ領域と、第1および第2書き込みスタンプ領域とを有する。第1および第2書き込みデータ領域には、それぞれ、J(Jは1以上の整数)ビットの書き込みデータが書き込まれる。第1書き込みスタンプ領域には、第1書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ所定の書き込み用識別子が書き込まれ、第2書き込みスタンプ領域には、第2書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ所定の書き込み用識別子が書き込まれる。   The semiconductor device according to the present embodiment includes N (N is an integer of 3 or more) non-volatile memory modules, and each non-volatile memory module includes an internal power generation circuit that generates its own operation power, It has a second write data area and first and second write stamp areas. In each of the first and second write data areas, J (J is an integer of 1 or more) bits of write data is written. Predetermined write identifiers are written into the first write stamp area before and after writing to the first write data area, respectively, and before writing to the second write data area is started in the second write stamp area. And a predetermined writing identifier are written after the writing.

ここで、当該半導体装置は、K(KはJより大きい整数)ビットの第1外部書き込みデータが入力された際、第1外部書き込みデータをJビット単位で分割することで(N−1)個の第1分割書き込みデータを生成し、第1および第2処理を行う。第1処理では、N個中の(N−1)個の不揮発性メモリモジュールにおける第1書き込みデータ領域を対象に、(N−1)個の第1分割書き込みデータが互いに重複しない(N−1)個の第1期間でそれぞれ書き込まれる。この際には、更に、当該各第1書き込みデータ領域に対応する各第1書き込みスタンプ領域を対象に、(N−1)個の第1期間で書き込み用識別子がそれぞれ書き込まれる。第2処理では、第1処理で非対象とされる1個の不揮発性メモリモジュールの第1書き込みデータ領域を対象に、(N−1)個の第1分割書き込みデータに対する各ビット毎のパリティ演算結果から得られるJビットの第1パリティデータが、(N−1)個の第1期間とは重複しない第2期間で書き込まれる。この際には、更に、当該第1書き込みデータ領域に対応する第1書き込みスタンプ領域を対象に、第2期間で書き込み用識別子が書き込まれる。また、当該半導体装置は、Kビットの第2外部書き込みデータが入力された際、第2外部書き込みデータをJビット単位で分割することで(N−1)個の第2分割書き込みデータを生成し、前述した第1および第2処理と同様な処理を、第2書き込みデータ領域および第2書き込みスタンプ領域を対象に行う。   Here, when the first external write data of K (K is an integer greater than J) bits is input, the semiconductor device divides the first external write data in units of J bits (N−1). First divided write data is generated, and the first and second processes are performed. In the first process, (N−1) first divided write data do not overlap each other for the first write data area in (N−1) non-volatile memory modules out of N (N−1). ) For each of the first periods. At this time, further, write identifiers are written in (N−1) first periods for each first write stamp area corresponding to each first write data area. In the second process, a parity operation for each bit is performed on (N−1) pieces of first divided write data for the first write data area of one nonvolatile memory module that is not targeted in the first process. J-bit first parity data obtained from the result is written in a second period that does not overlap with (N−1) first periods. At this time, the write identifier is further written in the second period for the first write stamp area corresponding to the first write data area. In addition, when the K-bit second external write data is input, the semiconductor device generates (N−1) second divided write data by dividing the second external write data in units of J bits. The same process as the first and second processes described above is performed on the second write data area and the second write stamp area.

このような半導体装置を用いると、各不揮発性メモリモジュールにおける第1および第2書き込みスタンプ領域を参照することで、電源瞬停等によっていずれか1個の不揮発性メモリモジュールの書き込み動作時に異常が生じたことを検出することができる。この場合、異常が生じた不揮発性メモリモジュールにおいては、本来書き込み非対象であった書き込みデータ領域のデータが破壊される恐れがあるが、この破壊されたデータは、当該1個の不揮発性メモリモジュールを除いた残りの不揮発性メモリモジュールのデータを用いて復元することができる。その結果、データの信頼性の向上が実現可能になる。   When such a semiconductor device is used, an abnormality occurs in the write operation of any one of the nonvolatile memory modules due to an instantaneous power failure or the like by referring to the first and second write stamp areas in each nonvolatile memory module. Can be detected. In this case, in the non-volatile memory module in which an abnormality has occurred, there is a possibility that the data in the write data area that was originally not targeted for writing may be destroyed, but this destroyed data is stored in the one non-volatile memory module. Restoration can be performed using the data of the remaining nonvolatile memory module except for. As a result, data reliability can be improved.

本願において開示される発明のうち、代表的な実施の形態によって得られる効果を簡単に説明すると、不揮発性メモリモジュールを備えた半導体装置(または記憶装置)において、データの信頼性の向上が実現可能になる。   The effects obtained by the representative embodiments of the invention disclosed in this application will be briefly described. In the semiconductor device (or storage device) including the nonvolatile memory module, it is possible to improve data reliability. become.

(a)は、本発明の実施の形態1による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図であり、(b)は、(a)における記憶データの一例を示す説明図である。(A) is the schematic which shows the structural example of the non-volatile memory unit contained in the semiconductor device (memory | storage device) by Embodiment 1 of this invention, (b) is the memory | storage data of (a). It is explanatory drawing which shows an example. (a)は、図1の不揮発性メモリユニットにおける書き込み動作時の処理の一例を示すフロー図であり、(b)は、図1の不揮発性メモリユニットにおける消去動作時の処理の一例を示すフロー図である。(A) is a flow chart showing an example of a process during a write operation in the nonvolatile memory unit of FIG. 1, and (b) is a flow chart showing an example of a process during an erase operation in the nonvolatile memory unit of FIG. FIG. 本発明の実施の形態2による半導体装置において、その全体構成の一例を示すブロック図である。In the semiconductor device by Embodiment 2 of this invention, it is a block diagram which shows an example of the whole structure. 図3の半導体装置において、その各フラッシュメモリモジュールの概略構成例を示す回路ブロック図である。FIG. 4 is a circuit block diagram showing a schematic configuration example of each flash memory module in the semiconductor device of FIG. 3. 図4における各メモリセルの詳細を示すものであり、(a)は各メモリセルの詳細な構成例を示す回路図、(b)は(a)における各種動作条件の一例を示す説明図である。FIG. 5 shows details of each memory cell in FIG. 4, (a) is a circuit diagram showing a detailed configuration example of each memory cell, and (b) is an explanatory diagram showing examples of various operation conditions in (a). . 図5(b)の動作に伴う各メモリセルのしきい値状態の一例を示すものであり、(a)は各フラッシュメモリモジュールが通常メモリの場合の説明図、(b)は各フラッシュメモリモジュールが相補メモリの場合の説明図である。FIG. 5B shows an example of the threshold state of each memory cell associated with the operation of FIG. 5B, where FIG. 5A is an explanatory diagram when each flash memory module is a normal memory, and FIG. FIG. 3 is an explanatory diagram in the case of a complementary memory. 図3の半導体装置において、そのフラッシュメモリモジュールユニットの主要部の構成例を示す概略図である。FIG. 4 is a schematic diagram illustrating a configuration example of a main part of the flash memory module unit in the semiconductor device of FIG. 3. 図7のフラッシュメモリモジュールユニットにおいて、その消去開始スタンプ、消去終了スタンプ、書き込み開始スタンプ、書き込み終了スタンプの詳細な構成例を示す説明図である。FIG. 8 is an explanatory diagram showing a detailed configuration example of the erase start stamp, erase end stamp, write start stamp, and write end stamp in the flash memory module unit of FIG. 7. 図3の半導体装置において、そのフラッシュチェックユニットの動作例を示すフロー図である。FIG. 4 is a flowchart showing an operation example of the flash check unit in the semiconductor device of FIG. 3. (a)は、図3の半導体装置において、そのフラッシュ復元ユニットの動作例を示すフロー図であり、(b)は(a)の補足図である。(A) is a flowchart which shows the operation example of the flash decompression | restoration unit in the semiconductor device of FIG. 3, (b) is a supplementary figure of (a). 図3の半導体装置を適用した携帯電話システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the mobile telephone system to which the semiconductor device of FIG. 3 is applied. 本発明の実施の形態3による半導体装置において、その全体構成の一例を示すブロック図である。In the semiconductor device by Embodiment 3 of this invention, it is a block diagram which shows an example of the whole structure. 図12の半導体装置において、そのフラッシュメモリモジュールのデータ復元を手動で行う場合の手順を示すフロー図である。FIG. 13 is a flowchart showing a procedure for manually performing data restoration of the flash memory module in the semiconductor device of FIG. 12. 本発明の実施の形態4による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図である。FIG. 10 is a schematic diagram showing a configuration example of a nonvolatile memory unit included in a semiconductor device (storage device) according to a fourth embodiment of the present invention. 本発明の実施の形態5による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図である。FIG. 10 is a schematic diagram showing a configuration example of a nonvolatile memory unit included in a semiconductor device (storage device) according to a fifth embodiment of the present invention.

以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。   In the following embodiment, when it is necessary for the sake of convenience, the description will be divided into a plurality of sections or embodiments. However, unless otherwise specified, they are not irrelevant, and one is the other. Some or all of the modifications, details, supplementary explanations, and the like are related. Further, in the following embodiments, when referring to the number of elements (including the number, numerical value, quantity, range, etc.), especially when clearly indicated and when clearly limited to a specific number in principle, etc. Except, it is not limited to the specific number, and may be more or less than the specific number.

さらに、以下の実施の形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。   Further, in the following embodiments, the constituent elements (including element steps and the like) are not necessarily indispensable unless otherwise specified and apparently essential in principle. Needless to say. Similarly, in the following embodiments, when referring to the shapes, positional relationships, etc. of the components, etc., the shapes are substantially the same unless otherwise specified, or otherwise apparent in principle. And the like are included. The same applies to the above numerical values and ranges.

また、実施の形態の各機能ブロックを構成する回路素子は、特に制限されないが、公知のCMOS(相補型MOSトランジスタ)等の集積回路技術によって、単結晶シリコンのような半導体基板上に形成される。なお、実施の形態では、MISFET(Metal Insulator Semiconductor Field Effect Transistor)の一例としてMOSFET(Metal Oxide Semiconductor Field Effect Transistor)(MOSトランジスタと略す)を用いるが、ゲート絶縁膜として非酸化膜を除外するものではない。   The circuit elements constituting each functional block of the embodiment are not particularly limited, but are formed on a semiconductor substrate such as single crystal silicon by a known integrated circuit technology such as a CMOS (complementary MOS transistor). . In the embodiment, a MOSFET (Metal Oxide Semiconductor Field Effect Transistor) (abbreviated as a MOS transistor) is used as an example of a MISFET (Metal Insulator Semiconductor Field Effect Transistor), but a non-oxide film is not excluded as a gate insulating film. Absent.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.

(実施の形態1)
《不揮発性メモリユニットの概略構成および概略動作》
図1(a)は、本発明の実施の形態1による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図であり、図1(b)は、図1(a)における記憶データの一例を示す説明図である。図1(a)に示す半導体装置(不揮発性メモリユニット)MEMU1は、複数(ここでは3個)の不揮発性メモリモジュール(例えばフラッシュメモリモジュール等)FMD1〜FMD3を備えている。FMD1は、FMD1用の動作電源を生成する内部電源生成回路VGEN1と、N個のデータ領域DT[1a]〜DT[Na]と、DT[1a]〜DT[Na]にそれぞれ対応して設けられるN個の消去スタンプ領域ES[1a]〜ES[Na]および書き込みスタンプ領域PS[1a]〜PS[Na]を備えている。
(Embodiment 1)
<< Schematic configuration and schematic operation of nonvolatile memory unit >>
FIG. 1A is a schematic diagram showing a configuration example of a nonvolatile memory unit included in the semiconductor device (memory device) according to the first embodiment of the present invention, and FIG. It is explanatory drawing which shows an example of the memory | storage data in a). A semiconductor device (nonvolatile memory unit) MEMU1 shown in FIG. 1A includes a plurality (three in this case) of nonvolatile memory modules (for example, flash memory modules) FMD1 to FMD3. The FMD 1 is provided corresponding to the internal power generation circuit VGEN 1 that generates the operation power for the FMD 1, the N data areas DT [1a] to DT [Na], and DT [1a] to DT [Na], respectively. N erase stamp areas ES [1a] to ES [Na] and write stamp areas PS [1a] to PS [Na] are provided.

DT[1a]〜DT[Na]のそれぞれは、1ビット以上の容量を持ち、FMD1における1回の内部書き込みの単位領域となる。例えば、DT[1a]〜DT[Na]のそれぞれが1バイトの容量を持つものとすると、ある書き込みサイクルでDT[1a]に1バイトのデータが書き込まれ、別の書き込みサイクルでDT[2a]に1バイトのデータが書き込まれる。PS[1a]には、DT[1a]を対象とした書き込み動作の開始前と終了後に、それぞれ所定の識別子が書き込まれる。同様に、PS[2a]には、DT[2a]を対象とした書き込み動作の開始前と終了後に所定の識別子が書き込まれ、PS[Na]には、DT[Na]を対象とした書き込み動作の開始前と終了後に所定の識別子が書き込まれる。また、ES[1a]には、DT[1a]を対象とした消去動作の開始前と終了後に、それぞれ所定の識別子が書き込まれる。同様に、ES[2a]には、DT[2a]を対象とした消去動作の開始前と終了後に所定の識別子が書き込まれ、ES[Na]には、DT[Na]を対象とした消去動作の開始前と終了後に所定の識別子が書き込まれる。   Each of DT [1a] to DT [Na] has a capacity of 1 bit or more, and becomes a unit area for one internal write in FMD1. For example, if each of DT [1a] to DT [Na] has a capacity of 1 byte, 1 byte of data is written to DT [1a] in a certain write cycle, and DT [2a] in another write cycle. One byte of data is written in Predetermined identifiers are written in PS [1a] before and after the start of the write operation for DT [1a]. Similarly, a predetermined identifier is written to PS [2a] before and after the start of the write operation for DT [2a], and the write operation for DT [Na] is written to PS [Na]. A predetermined identifier is written before and after the start of. In addition, predetermined identifiers are written in ES [1a] before and after the start of the erase operation for DT [1a]. Similarly, a predetermined identifier is written in ES [2a] before and after the start of the erase operation for DT [2a], and the erase operation for DT [Na] is written in ES [Na]. A predetermined identifier is written before and after the start of.

FMD2は、FMD2用の動作電源を生成する内部電源生成回路VGEN2と、N個のデータ領域DT[1b]〜DT[Nb]と、DT[1b]〜DT[Nb]にそれぞれ対応して設けられるN個の消去スタンプ領域ES[1b]〜ES[Nb]および書き込みスタンプ領域PS[1b]〜PS[Nb]を備えている。各データ領域DT[1b]〜DT[Nb]、各消去スタンプ領域ES[1b]〜ES[Nb]および各書き込みスタンプ領域PS[1b]〜PS[Nb]の機能に関してはFMD1と同様である。FMD3は、FMD3用の動作電源を生成する内部電源生成回路VGEN3と、N個のデータ領域(パリティ領域)PT[1]〜PT[N]と、PT[1]〜PT[N]にそれぞれ対応して設けられるN個の消去スタンプ領域ES[1]〜ES[N]および書き込みスタンプ領域PS[1]〜PS[N]を備えている。各データ領域(パリティ領域)PT[1]〜PT[N]、各消去スタンプ領域ES[1]〜ES[N]および各書き込みスタンプ領域PS[1]〜PS[N]の機能に関しては、PT[1]〜PT[N]のデータ内容を除いてFMD1と同様である。   The FMD 2 is provided corresponding to the internal power generation circuit VGEN 2 that generates the operation power for the FMD 2, N data areas DT [1b] to DT [Nb], and DT [1b] to DT [Nb], respectively. N erase stamp areas ES [1b] to ES [Nb] and write stamp areas PS [1b] to PS [Nb] are provided. The functions of the data areas DT [1b] to DT [Nb], the erase stamp areas ES [1b] to ES [Nb], and the write stamp areas PS [1b] to PS [Nb] are the same as those of the FMD1. The FMD3 corresponds to the internal power generation circuit VGEN3 that generates an operation power supply for the FMD3, N data areas (parity areas) PT [1] to PT [N], and PT [1] to PT [N], respectively. N erase stamp areas ES [1] to ES [N] and write stamp areas PS [1] to PS [N]. Regarding the functions of the data areas (parity areas) PT [1] to PT [N], the erase stamp areas ES [1] to ES [N], and the write stamp areas PS [1] to PS [N], PT Except for the data content of [1] to PT [N], it is the same as FMD1.

FMD3のPT[1]〜PT[N]には、図1(b)に示すように、FMD1のDT[1a]〜DT[Na]とFMD2のDT[1b]〜DT[Nb]のパリティ演算結果が記憶される。例えば、DT[1a]、DT[1b]が共に1ビットの場合、PT[1]も1ビットとなり、図1(b)に示すように、DT[1a]のデータとDT[1b]のデータの偶数パリティ演算結果(すなわち‘1’の数を偶数にする値)がPT[1]に格納される。同様に、DT[2a]、DT[2b]が共に1ビットの場合、PT[2]も1ビットとなり、DT[2a]のデータとDT[2b]のデータの偶数パリティ演算結果がPT[2]に格納される。なお、ここでは偶数パリティを用いたが、勿論、‘1’の数を奇数に揃える奇数パリティを用いてもよい。また、例えばDT[1a]、DT[1b]が共に1バイトの場合には、PT[1]も1バイトとなり、DT[1a]のデータとDT[1b]のデータの各ビット毎のパリティ演算結果がPT[1]に格納される。   As shown in FIG. 1B, parity operations of DT [1a] to DT [Na] of FMD1 and DT [1b] to DT [Nb] of FMD2 are performed on PT [1] to PT [N] of FMD3. The result is stored. For example, when both DT [1a] and DT [1b] are 1 bit, PT [1] is also 1 bit, and as shown in FIG. 1B, the data of DT [1a] and the data of DT [1b] The result of the even parity operation (that is, the value that makes the number of “1” an even number) is stored in PT [1]. Similarly, when both DT [2a] and DT [2b] are 1 bit, PT [2] is also 1 bit, and the even parity operation result of the data of DT [2a] and the data of DT [2b] is PT [2 ] Is stored. Although the even parity is used here, it is needless to say that an odd parity in which the number of ‘1 ’s is set to an odd number may be used. For example, when both DT [1a] and DT [1b] are 1 byte, PT [1] is also 1 byte, and the parity calculation for each bit of the data of DT [1a] and the data of DT [1b] The result is stored in PT [1].

このような構成例において、例えば、DT[1a]〜DT[Na]、DT[1b]〜DT[Nb]およびPT[1]〜PT[N]のそれぞれが1バイトであるものとし、メモリユニットMEMU1に対して外部から2バイトの外部書き込みデータが入力された場合を想定する。この場合、2バイトの外部書き込みデータが1バイトずつ分割され、当該2個の分割データ(1バイト)がFMD1(例えばDT[1a])とFMD2(例えばDT[1b])にそれぞれ書き込まれると共に、この2個の分割データのパリティ演算結果(1バイト)がFMD3(例えばPT[1])に書き込まれる。   In such a configuration example, for example, each of DT [1a] to DT [Na], DT [1b] to DT [Nb] and PT [1] to PT [N] is assumed to be 1 byte, and the memory unit It is assumed that 2-byte external write data is input to MEMU1 from the outside. In this case, the 2-byte external write data is divided by 1 byte, and the two divided data (1 byte) are written to FMD1 (for example, DT [1a]) and FMD2 (for example, DT [1b]), respectively. The parity calculation result (1 byte) of the two divided data is written to FMD3 (for example, PT [1]).

ここで、FMD1〜FMD3への書き込みは、図2(a)に示すように、それぞれ重複しない期間で時系列的に行われる。図2(a)は、図1の不揮発性メモリユニットにおける書き込み動作時の処理の一例を示すフロー図であり、図2(b)は、図1の不揮発性メモリユニットにおける消去動作時の処理の一例を示すフロー図である。図2(a)の例では、まず、FMD1の書き込み期間において、書き込みスタンプ領域(例えばPS[1a])に書き込み開始スタンプ(識別子)が書き込まれ(S101)、データ領域(例えばDT[1a])にデータAが書き込まれ(S102)、書き込みスタンプ領域(例えばPS[1a])に書き込み終了スタンプ(識別子)が書き込まれる(S103)。   Here, as shown in FIG. 2A, writing to the FMD1 to FMD3 is performed in time series in periods that do not overlap each other. 2A is a flowchart showing an example of processing at the time of write operation in the nonvolatile memory unit of FIG. 1, and FIG. 2B is a flowchart of processing at the time of erase operation in the nonvolatile memory unit of FIG. It is a flowchart which shows an example. In the example of FIG. 2A, first, in the writing period of FMD1, a writing start stamp (identifier) is written in a writing stamp area (for example, PS [1a]) (S101), and a data area (for example, DT [1a]). Data A is written in (S102), and a write end stamp (identifier) is written in a write stamp area (for example, PS [1a]) (S103).

続いて、FMD2の書き込み期間に移行する。FMD2の書き込み期間では、書き込みスタンプ領域(例えばPS[1b])に書き込み開始スタンプ(識別子)が書き込まれ(S104)、データ領域(例えばDT[1b])にデータBが書き込まれ(S105)、書き込みスタンプ領域(例えばPS[1b])に書き込み終了スタンプ(識別子)が書き込まれる(S106)。次いで、S102のデータAとS105のデータBを用いてパリティ演算を行う(S107)。その後、FMD3の書き込み期間に移行する。FMD3の書き込み期間では、書き込みスタンプ領域(例えばPS[1])に書き込み開始スタンプ(識別子)が書き込まれ(S108)、データ領域(例えばPT[1])にS107でのパリティデータが書き込まれ(S109)、書き込みスタンプ領域(例えばPS[1])に書き込み終了スタンプ(識別子)が書き込まれる(S110)。   Subsequently, the writing period of FMD2 is started. In the FMD2 write period, a write start stamp (identifier) is written in the write stamp area (eg, PS [1b]) (S104), and data B is written in the data area (eg, DT [1b]) (S105). A write end stamp (identifier) is written in a stamp area (for example, PS [1b]) (S106). Next, a parity operation is performed using the data A in S102 and the data B in S105 (S107). After that, it shifts to the writing period of FMD3. In the FMD3 write period, a write start stamp (identifier) is written in the write stamp area (eg, PS [1]) (S108), and the parity data in S107 is written in the data area (eg, PT [1]) (S109). ), A write end stamp (identifier) is written in a write stamp area (for example, PS [1]) (S110).

なお、パリティ演算(S107)は、前述した外部書き込みデータがメモリユニットMEMU1に入力された以降のいずれかの期間で、例えばMEMU1内に設けられたパリティ演算回路(図示せず)等を用いて行えばよく、図2(a)の箇所に限定されるものではない。例えば、S101より前の期間で行ったり、あるいは、FMD1やFMD2の書き込み期間と並行して行うことも可能である。また、FMD1の書き込み期間(S101〜S103)とFMD2の書き込み期間(S104〜S106)とFMD3の書き込み期間(S108〜S110)は、図2(a)の順番に限定されるものではなく、適宜入れ替えることが可能である。   The parity calculation (S107) is performed using a parity calculation circuit (not shown) provided in the MEMU1, for example, in any period after the external write data is input to the memory unit MEMU1. What is necessary is just and it is not limited to the location of Fig.2 (a). For example, it can be performed in a period before S101 or in parallel with the writing period of FMD1 or FMD2. The FMD1 writing period (S101 to S103), the FMD2 writing period (S104 to S106), and the FMD3 writing period (S108 to S110) are not limited to the order shown in FIG. It is possible.

さらに、図2(a)に示したFMD1〜FMD3への書き込み動作と同様に、図2(b)に示すように、FMD1〜FMD3への消去動作も、それぞれ重複しない期間で時系列的に行われる。図2(b)の例では、まず、FMD1の消去期間において、消去スタンプ領域(例えばES[1a])に消去開始スタンプ(識別子)が書き込まれ(S201)、データ領域(例えばDT[1a])のデータが消去され(S202)、消去スタンプ領域(例えばES[1a])に消去終了スタンプ(識別子)が書き込まれる(S203)。続いて、FMD2の消去期間に移行する。FMD2の消去期間では、消去スタンプ領域(例えばES[1b])に消去開始スタンプ(識別子)が書き込まれ(S204)、データ領域(例えばDT[1b])のデータが消去され(S205)、消去スタンプ領域(例えばES[1b])に消去終了スタンプ(識別子)が書き込まれる(S206)。   Further, similarly to the writing operation to FMD1 to FMD3 shown in FIG. 2 (a), as shown in FIG. 2 (b), the erasing operation to FMD1 to FMD3 is also performed in a time series in a non-overlapping period. Is called. In the example of FIG. 2B, first, in the erase period of FMD1, an erase start stamp (identifier) is written in the erase stamp area (eg, ES [1a]) (S201), and the data area (eg, DT [1a]). Is erased (S202), and an erasure end stamp (identifier) is written in an erasure stamp area (for example, ES [1a]) (S203). Subsequently, the process proceeds to the erase period of FMD2. In the erase period of FMD2, an erase start stamp (identifier) is written in the erase stamp area (eg, ES [1b]) (S204), and data in the data area (eg, DT [1b]) is erased (S205). An erasure end stamp (identifier) is written in an area (for example, ES [1b]) (S206).

次いで、FMD3の消去期間に移行する。FMD3の消去期間では、消去スタンプ領域(例えばES[1])に消去開始スタンプ(識別子)が書き込まれ(S207)、データ領域(例えばPT[1])のデータが消去され(S208)、消去スタンプ領域(例えばES[1])に消去終了スタンプ(識別子)が書き込まれる(S209)。なお、図2(a)の場合と同様に、FMD1の消去期間(S201〜S203)とFMD2の消去期間(S204〜S206)とFMD3の消去期間(S207〜S209)は、図2(b)の順番に限定されるものではなく、適宜入れ替えることが可能である。   Next, the process moves to the FMD3 erasure period. In the erase period of the FMD 3, an erase start stamp (identifier) is written in the erase stamp area (eg, ES [1]) (S207), and data in the data area (eg, PT [1]) is erased (S208). An erasure end stamp (identifier) is written in an area (for example, ES [1]) (S209). As in FIG. 2A, the FMD1 erase period (S201 to S203), the FMD2 erase period (S204 to S206), and the FMD3 erase period (S207 to S209) are the same as those in FIG. It is not limited to the order and can be changed as appropriate.

《本実施の形態1の主要な特徴および効果》
以上のように、本実施の形態1の半導体装置(不揮発性メモリユニット)は、それぞれ独立の内部電源生成回路を持つ複数(ここでは3個)の不揮発性メモリモジュールを備え、その内の2個にデータを書き込み、残りの1個にパリティを書き込むことが第1の特徴となっている。また、この際に、各不揮発性メモリモジュール毎に互い重複しない期間で書き込みを行うことが第2の特徴となっている。更に、各不揮発性メモリモジュール内において、書き込みの単位領域となる各データ領域毎に書き込みスタンプ領域を設け、各データ領域に書き込みを行う前後で書き込みスタンプ領域に識別子を書き込むことが第3の特徴となっている。
<< Main features and effects of the first embodiment >>
As described above, the semiconductor device (nonvolatile memory unit) of the first embodiment includes a plurality (three in this case) of nonvolatile memory modules each having an independent internal power generation circuit, and two of them are included. The first feature is that data is written in the memory and parity is written in the remaining one. At this time, the second feature is that writing is performed for each nonvolatile memory module in a period not overlapping each other. Furthermore, in each nonvolatile memory module, a write stamp area is provided for each data area serving as a unit area for writing, and an identifier is written in the write stamp area before and after writing to each data area. It has become.

このような各種特徴を備えることで、例えば、ある不揮発性メモリモジュール内のあるデータ領域を対象にデータの書き込みを行っている最中に電源の瞬停等が生じた際に、当該不揮発性メモリモジュール内の別のデータ領域のデータが破壊される場合があるが、この破壊されたデータを復元することが可能になる。ここで、電源の瞬停とは、瞬間的に電源電圧が低下する現象を意味する。例えば、図1のDT[1a]にデータの書き込みを行っている最中に電源の瞬停が生じ、その結果、DT[1a]を表しているアドレスラッチ情報が破壊され(例えばDT[2a]のアドレスに変更され)、DT[1a]の代わりにDT[2a]に誤書き込みが生じた場合を想定する。この場合においても、DT[1b]やPT[1]に対する書き込み動作は、書き込み期間が重複していないことと、内部電源生成回路を独立に設けていることから、高い確率で正常に行うことができる。   By providing such various features, for example, when an instantaneous power failure occurs while data is being written to a certain data area in a certain nonvolatile memory module, the nonvolatile memory Although data in another data area in the module may be destroyed, this corrupted data can be restored. Here, the instantaneous power interruption means a phenomenon in which the power supply voltage instantaneously decreases. For example, an instantaneous power failure occurs while data is being written to DT [1a] in FIG. 1, and as a result, address latch information representing DT [1a] is destroyed (for example, DT [2a]). Assume that a write error occurs in DT [2a] instead of DT [1a]. Even in this case, the writing operation to DT [1b] and PT [1] can be normally performed with high probability because the writing periods do not overlap and the internal power generation circuit is provided independently. it can.

その後、不揮発性メモリユニットは、任意の時期に、FMD1〜FMD3内の書き込みスタンプ領域をチェックするものとする。この場合、FMD2,FMD3における書き込みスタンプ領域には正常な識別子が書き込まれているが、FMD1の書き込みスタンプ領域には異常な識別子が書き込まれていることが判る。この例では、PS[1a]には書き込み開始スタンプのみが書き込まれ、書き込み終了スタンプが書き込まれておらず、逆に、PS[2a]には書き込み終了スタンプのみが書き込まれ、書き込み開始スタンプが書き込まれていないことが判る。これによって、不揮発性メモリユニットは、FMD1のDT[1a]とDT[2a]において書き込み動作時の異常が発生したことを判別することができる。なお、仮にDT[1a]とDT[2a]で書き込みスタンプ領域を共用化したような場合には、このような判別が困難となるため、データ領域毎に書き込みスタンプ領域を設けることが有益となる。   Thereafter, the nonvolatile memory unit checks the write stamp areas in the FMD1 to FMD3 at an arbitrary time. In this case, a normal identifier is written in the write stamp area in FMD2 and FMD3, but an abnormal identifier is written in the write stamp area in FMD1. In this example, only the write start stamp is written in PS [1a] and the write end stamp is not written. Conversely, only the write end stamp is written in PS [2a] and the write start stamp is written. It turns out that it is not. As a result, the nonvolatile memory unit can determine that an abnormality has occurred during the write operation in DT [1a] and DT [2a] of FMD1. If the write stamp area is shared by DT [1a] and DT [2a], it is difficult to make such a determination. Therefore, it is beneficial to provide a write stamp area for each data area. .

このようにして書き込み動作時の異常が判別できると、不揮発性メモリユニットは、DT[1b]のデータとPT[1]のパリティデータによってDT[1a]の正しいデータを復元すると共にDT[1a]に正しいデータの書き込みを行うことができる。同様に、DT[2b]のデータとPT[2]のパリティデータによってDT[2a]の正しいデータを復元すると共にDT[2a]に正しいデータの書き込みを行うことができる。したがって、電源の瞬停等に伴い非書き込み対象のデータが破壊された場合であっても、正しいデータを復元することができ、データの信頼性を向上させることが可能になる。なお、このように、DT[1a]とDT[2a]のみを復元対象とすることも可能であるが、実際には、FMD1におけるデータ全体の信頼性が疑わしいような場合も生じ得るため、DT[1a]〜DT[Na]を復元対象とすることも有益である。   When the abnormality during the write operation can be determined in this way, the nonvolatile memory unit restores the correct data of DT [1a] by using the data of DT [1b] and the parity data of PT [1] and DT [1a]. It is possible to write correct data. Similarly, the correct data of DT [2a] can be restored by using the data of DT [2b] and the parity data of PT [2], and the correct data can be written to DT [2a]. Therefore, even when non-write target data is destroyed due to a momentary power interruption or the like, correct data can be restored and data reliability can be improved. Although it is possible to restore only DT [1a] and DT [2a] as described above, in reality, there may be a case where the reliability of the entire data in FMD1 is suspicious. It is also useful to set [1a] to DT [Na] as restoration targets.

また、ここでは、不揮発性メモリモジュールの数は3個の場合を例としたが、3個以上であればよい。例えば、4個とした場合、外部書き込みデータが3分割され、3分割されたデータが4個中の3個にそれぞれ書き込まれ、残りの1個にパリティが書き込まれることになる。ただし、各不揮発性メモリモジュールには順番に書き込みが行われるため、書き込みに要する全体の時間を短縮するためには3個とすることが望ましい。更に、本実施の形態1の半導体装置(不揮発性メモリユニット)は、消去動作に関しても、前述した第2および第3の特徴と同様の特徴を備え、同様な効果が得られる。ただし、不揮発性メモリモジュールによっては消去動作が存在しない場合があるため、消去動作に伴う当該特徴は必ずしも必須ではない。例えば、フラッシュメモリやEEPROM(Electrically Erasable Programmable Read Only Memory)等と異なり、記憶素子の結晶状態を変化させてその抵抗値によって情報を記憶する相変化メモリや、記憶素子の磁化状態を変化させてその抵抗値によって情報を記憶する磁気抵抗メモリ(MRAM)等では消去動作が存在しない。   In this example, the number of nonvolatile memory modules is three as an example, but it may be three or more. For example, when the number is four, external write data is divided into three, and the three divided data are written into three of the four, and parity is written into the remaining one. However, since writing is sequentially performed in each nonvolatile memory module, it is desirable that the number is three in order to reduce the total time required for writing. Furthermore, the semiconductor device (nonvolatile memory unit) of the first embodiment also has the same features as the second and third features described above with respect to the erase operation, and the same effect can be obtained. However, since the erase operation may not exist depending on the nonvolatile memory module, the feature associated with the erase operation is not necessarily essential. For example, unlike flash memory, EEPROM (Electrically Erasable Programmable Read Only Memory), etc., the phase change memory that stores information by changing the crystal state of the storage element and the resistance value, and the magnetization state of the storage element are changed. An erase operation does not exist in a magnetoresistive memory (MRAM) that stores information according to a resistance value.

以上、本実施の形態1の半導体装置を用いることで、代表的には、不揮発性メモリモジュールを備えた半導体装置(または記憶装置)において、データの信頼性の向上が実現可能になる。   As described above, by using the semiconductor device of the first embodiment, typically, it is possible to improve data reliability in a semiconductor device (or a storage device) including a nonvolatile memory module.

(実施の形態2)
本実施の形態2では、前述した実施の形態1の不揮発性メモリモジュールとしてフラッシュメモリモジュールを適用した半導体装置について説明する。
(Embodiment 2)
In the second embodiment, a semiconductor device to which a flash memory module is applied as the nonvolatile memory module of the first embodiment will be described.

《半導体装置の全体構成》
図3は、本発明の実施の形態2による半導体装置において、その全体構成の一例を示すブロック図である。図3には、半導体装置の一例として、例えばCMOSプロセス等により単結晶シリコンのような1個の半導体チップ上に形成されたマイクロコンピュータMCUが示されている。MCUは、特に制限されないが、高速バスHBSと低速バス(周辺バス)LBSの2バス構成を有する。HBSとLBSは、特に制限されないが、それぞれデータバス、アドレスバス及びコントロールバスを含んでいる。バスを2バス構成に分離することにより、共通バスに全ての回路を共通接続する場合に比べてバスの負荷が軽くなり、高速アクセス動作が実現可能となる。
<< Overall configuration of semiconductor device >>
FIG. 3 is a block diagram showing an example of the overall configuration of the semiconductor device according to the second embodiment of the present invention. FIG. 3 shows, as an example of a semiconductor device, a microcomputer MCU formed on one semiconductor chip such as single crystal silicon by, for example, a CMOS process. The MCU is not particularly limited, but has a two-bus configuration of a high-speed bus HBS and a low-speed bus (peripheral bus) LBS. The HBS and the LBS are not particularly limited, but include a data bus, an address bus, and a control bus, respectively. By separating the bus into two bus configurations, the load on the bus is reduced as compared with the case where all the circuits are commonly connected to the common bus, and a high-speed access operation can be realized.

高速バスHBSには、中央処理ユニット(プロセッサ)CPU、ダイレクトメモリアクセスコントローラDMAC、バスインタフェース回路BSIF、ランダムアクセスメモリRAM、およびフラッシュメモリモジュールユニットFMDUが接続される。FMDUは、図1(a)に示したように、不揮発性メモリモジュールとしての3個のフラッシュメモリモジュールFMD1〜FMD3を備える。例えばFMD1〜FMD3に対する読み出し動作時には、FMD1〜FMD3からの読み出しデータがHBSを介して伝送される。CPUは、RAMをワーク領域として用いながら所定の演算処理等を実行する。DMACは、CPU等からの命令に基づいて、RAMとFMDUとの間のデータ転送を制御する。BSIFは、HBSやLBSの使用権の制御や、HBSとLBSの間のバスブリッジの制御などを行う。   A central processing unit (processor) CPU, a direct memory access controller DMAC, a bus interface circuit BSIF, a random access memory RAM, and a flash memory module unit FMDU are connected to the high-speed bus HBS. As shown in FIG. 1A, the FMDU includes three flash memory modules FMD1 to FMD3 as nonvolatile memory modules. For example, at the time of a read operation for FMD1 to FMD3, read data from FMD1 to FMD3 is transmitted via the HBS. The CPU executes predetermined arithmetic processing and the like while using the RAM as a work area. The DMAC controls data transfer between the RAM and the FMDU based on a command from the CPU or the like. The BSIF controls the usage rights of the HBS and LBS, and controls the bus bridge between the HBS and the LBS.

低速バスLBSには、フラッシュメモリモジュールユニットFMDU、フラッシュシーケンサFSEQ、タイマTMR、外部入出力ポートPORT1,PORT2、バスインタフェース回路BSIF、クロック生成回路PLLに加えてフラッシュチェックユニットFCHKUが接続される。FSEQは、FMDUに対するコマンドアクセスの制御を行う。PLLは、MCUの各種内部クロック信号を生成する。PORT1,PORT2は、MCUの外部端子Din/Doutを介して外部との間の通信を制御する。なお、MCUには、外部端子として更にXTAL/EXTAL、STBY/RES、Vcc/Vssが備わっている。XTAL/EXTALには、例えば水晶振動子が接続されるか或いは外部クロック信号が供給され、PLLは当該端子を用いて動作を行う。STBYはスタンバイ状態を指示する外部ハードウェアスタンバイ端子、RESはリセットを指示する外部リセット端子、Vccは外部電源電圧端子、Vssは外部接地電源電圧端子である。   In addition to the flash memory module unit FMDU, the flash sequencer FSEQ, the timer TMR, the external input / output ports PORT1 and PORT2, the bus interface circuit BSIF, and the clock generation circuit PLL, the low-speed bus LBS is connected to the flash check unit FCHKU. FSEQ controls command access to FMDU. The PLL generates various internal clock signals of the MCU. PORT1 and PORT2 control communication with the outside via external terminals Din / Dout of the MCU. The MCU further includes XTAL / EXTAL, STBY / RES, and Vcc / Vss as external terminals. For example, a crystal resonator is connected to XTAL / EXTAL or an external clock signal is supplied, and the PLL operates using the terminal. STBY is an external hardware standby terminal for instructing a standby state, RES is an external reset terminal for instructing a reset, Vcc is an external power supply voltage terminal, and Vss is an external ground power supply voltage terminal.

ここで、例えばCPUとFMDU内のFMD1〜FMD3との間では、HBSを介して高速な読み出しアクセス動作が可能となっている。また、例えばCPUとFMDU内のFMD1〜FMD3との間では、LBSおよびFSEQを介した書き込みアクセス動作等が可能となっている。このようにFMDUは、CPU(又はDMAC)の読み出し・書き込みアクセスの対象とされ、CPUは、例えば一時的なデータ等をRAMに、次回の電源投入後に使用するデータ等をFMDUに格納しながら、所定のコードを実行する。当該所定のコードは、例えば、FMDU内のFMD1〜FMD3のいずれかに格納されていたり、あるいはFMDU内に別途設けたコード格納用のフラッシュメモリモジュール(図示せず)に格納されている。   Here, for example, a high-speed read access operation is possible via the HBS between the CPU and the FMD1 to FMD3 in the FMDU. Further, for example, a write access operation via LBS and FSEQ is possible between the CPU and FMD1 to FMD3 in the FMDU. As described above, the FMDU is a target of read / write access of the CPU (or DMAC). The CPU stores, for example, temporary data in the RAM and data used after the next power-on in the FMDU. Execute predetermined code. The predetermined code is stored, for example, in any of FMD1 to FMD3 in the FMDU, or stored in a code storage flash memory module (not shown) provided separately in the FMDU.

また、実際のフラッシュメモリでは、書き込み動作に伴い数ステップの処理が必要とされるため、ここではFSEQがCPUからFMDUに向けた書き込み命令ならびに外部書き込みデータを受け、FSEQがFMDUの書き込み動作に必要な各種処理(例えば、消去動作→書き込み動作→ベリファイ動作)を時系列的に制御する。この際に、例えばFSEQが図1等で説明したパリティデータの生成回路を備えると共にFMD1〜FMD3書き込み順序を適宜制御することで、図1等で説明したような動作を実現可能になる。例えば、FSEQは、CPUから外部書き込みデータを受け、それを2分割したデータをFMD1とFMD2にそれぞれ異なる期間で書き込み、更に、この2分割したデータから生成したパリティデータをFMD1,FMD2とは異なる期間でFMD3に書き込む。   Further, in an actual flash memory, processing of several steps is required along with the writing operation, and here, the FSEQ receives a write command and external write data from the CPU to the FMDU, and the FSEQ is necessary for the FMDU write operation. Various processes (for example, erase operation → write operation → verify operation) are controlled in time series. At this time, for example, the FSEQ includes the parity data generation circuit described with reference to FIG. 1 and the like, and the operation described with reference to FIG. For example, FSEQ receives externally written data from the CPU, writes the data divided into two into FMD1 and FMD2 in different periods, and further generates parity data generated from the divided data into periods different from FMD1 and FMD2. Write to FMD3.

フラッシュチェックユニットFCHKUは、概略的には、FMD1〜FMD3内の書き込みスタンプ領域および消去スタンプ領域に書き込まれた識別子をLBSを介して読み出し、当該識別子によってFMD1〜FMD3のいずれかに書き込み動作時の異常または消去動作時の異常が生じたことを判別する。更に、図3のMCU内には、フラッシュ復元ユニットFREUが備わっている。FREUは、概略的には、FCHKUの判別結果を受けて、これに基づいて異常と判別されたフラッシュメモリモジュールにおける正しいデータを復元し、この正しいデータをFSEQに送信する。これに応じて、FSEQは、対象とされるフラッシュメモリモジュールに対して正しいデータの書き込みを行う。   The flash check unit FCHKU generally reads the identifiers written in the write stamp area and the erase stamp area in the FMD1 to FMD3 via the LBS, and an abnormality during a write operation to any of the FMD1 to FMD3 by the identifier. Alternatively, it is determined that an abnormality has occurred during the erase operation. Further, a flash restoration unit FREU is provided in the MCU of FIG. In general, the FREU receives the FCHKU determination result, restores correct data in the flash memory module determined to be abnormal based on this, and transmits this correct data to the FSEQ. In response to this, the FSEQ writes correct data to the target flash memory module.

このようなマイクロコンピュータMCUは、内部に様々な機能ブロックを備えているため、例えば、消費電流が瞬間的に増大すること等によって電源の瞬停が生じる恐れがある。このような場合にも、前述した本実施の形態1の方式を用いることで、フラッシュメモリモジュールの記憶データの信頼性を向上させることが可能になる。なお、図3におけるFCHKU,FREUの詳細な動作例に関しては後述する。また、FSEQ,FREU,FCHKUは、例えばシーケンサ回路を設けてハード的に実現したり、あるいは単数または複数の制御用簡易プロセッサ等を設けてプログラム的に実現することが可能である。更に、FSEQ,FREU,FCHKUは、ここではFMDUの外部に備わっているがFMDUの内部に備わっていてもよい。   Since such a microcomputer MCU has various functional blocks inside, there is a possibility that an instantaneous power failure may occur due to, for example, an instantaneous increase in current consumption. Even in such a case, the reliability of the data stored in the flash memory module can be improved by using the method of the first embodiment described above. A detailed operation example of FCHKU and FREU in FIG. 3 will be described later. Further, FSEQ, FREU, and FCHKU can be realized by hardware by providing, for example, a sequencer circuit, or can be realized by programming by providing one or more simple processors for control. Furthermore, FSEQ, FREU, and FCHKU are provided outside the FMDU here, but may be provided inside the FMDU.

《フラッシュメモリモジュールの全体構成》
図4は、図3の半導体装置において、その各フラッシュメモリモジュールの概略構成例を示す回路ブロック図である。図5は、図4における各メモリセルの詳細を示すものであり、図5(a)は各メモリセルの詳細な構成例を示す回路図、図5(b)は図5(a)における各種動作条件の一例を示す説明図である。図6は、図5(b)の動作に伴う各メモリセルのしきい値状態の一例を示すものであり、図6(a)は各フラッシュメモリモジュールが通常メモリの場合の説明図、図6(b)は各フラッシュメモリモジュールが相補メモリの場合の説明図である。図4に示すフラッシュメモリモジュールFMDは、メモリマットMMAT、行デコード回路RDEC1,RDEC2、列デコード回路CDEC、書き込みデータラッチ回路WLT、書き込み列選択回路WSEL、ベリファイ回路VRFY、入出力バッファ回路IOBF、出力バッファ回路OBF、および内部電源生成回路VGENを備えている。
<Overall configuration of flash memory module>
FIG. 4 is a circuit block diagram showing a schematic configuration example of each flash memory module in the semiconductor device of FIG. 5 shows details of each memory cell in FIG. 4, FIG. 5 (a) is a circuit diagram showing a detailed configuration example of each memory cell, and FIG. 5 (b) shows various types in FIG. 5 (a). It is explanatory drawing which shows an example of operating conditions. FIG. 6 shows an example of the threshold state of each memory cell associated with the operation of FIG. 5B. FIG. 6A is an explanatory diagram in the case where each flash memory module is a normal memory. (B) is an explanatory diagram when each flash memory module is a complementary memory. The flash memory module FMD shown in FIG. 4 includes a memory mat MMAT, row decode circuits RDEC1 and RDEC2, a column decode circuit CDEC, a write data latch circuit WLT, a write column selection circuit WSEL, a verify circuit VRFY, an input / output buffer circuit IOBF, and an output buffer. A circuit OBF and an internal power supply generation circuit VGEN are provided.

MMATは、複数(ここでは2個を例示)のメモリセルMC1,MC2を備えている。FMDが通常メモリの場合、MC1には1ビットの情報が記憶され、MC2にも1ビットの情報が記憶される。一方、FMDが相補メモリの場合、MC1,MC2によって1ビットの情報が相補(正極、負極)の状態で記憶される。各メモリセルMC1,MC2は、例えば、図5(a)に例示されるスプリットゲート型フラッシュメモリ素子とされる。このメモリ素子は、ソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介して配置されたコントロールゲートCGとメモリゲートMGを有し、メモリゲートとゲート絶縁膜の間にはシリコンナイトライド等の電荷トラップ領域(SiN)が配置されている。CG側のソース又はドレイン領域はビット線BLに接続され、MG側のソース又はドレイン領域はソース線SLに接続される。   The MMAT includes a plurality (two examples here) of memory cells MC1 and MC2. When the FMD is a normal memory, 1-bit information is stored in MC1, and 1-bit information is also stored in MC2. On the other hand, when the FMD is a complementary memory, MC1 and MC2 store 1-bit information in a complementary (positive and negative) state. Each of the memory cells MC1 and MC2 is, for example, a split gate flash memory device illustrated in FIG. This memory element has a control gate CG and a memory gate MG disposed on a channel formation region between a source / drain region via a gate insulating film, and a silicon nitride is interposed between the memory gate and the gate insulating film. A charge trap region (SiN) such as a ride is disposed. The source or drain region on the CG side is connected to the bit line BL, and the source or drain region on the MG side is connected to the source line SL.

図5(b)に示すように、メモリセルのしきい値電圧(Vth)を下げる際には、BL=1.5V、CG=0V、MG=−10V、SL=6V、ウェル領域WELL=0Vとされる。これによって、WELLとMG間の高電界によって電荷トラップ領域(SiN)からWELLに電子が引き抜かれる。この処理単位はMGを共有する複数メモリセルとされる。メモリセルのVthを上げる際には、BL=0V、CG=1.5V、MG=10V、SL=6V、WELL=0Vとされる。これによって、SLからBLに書き込み電流が流れ、それによってCGとMGの境界部分で発生するホットエレクトロンが電荷トラップ領域(SiN)に注入される。電子の注入はBLに電流を流すか否かによって決まるため、この処理はビット単位で制御される。読み出しの際には、BL=1.5V、CG=1.5V,MG=0V、SL=0V、WELL=0Vとされる。メモリセルのVthが低ければメモリセルはオン状態にされ、高ければオフ状態にされる。また、ここでは、メモリセルのVthを下げる動作を消去動作とし、メモリセルのVthを上げる動作を書き込み動作としている。   As shown in FIG. 5B, when lowering the threshold voltage (Vth) of the memory cell, BL = 1.5V, CG = 0V, MG = −10V, SL = 6V, well region WELL = 0V It is said. As a result, electrons are extracted from the charge trap region (SiN) to WELL by a high electric field between WELL and MG. This processing unit is a plurality of memory cells sharing MG. When increasing the Vth of the memory cell, BL = 0V, CG = 1.5V, MG = 10V, SL = 6V, and WELL = 0V. As a result, a write current flows from SL to BL, whereby hot electrons generated at the boundary between CG and MG are injected into the charge trap region (SiN). Since the electron injection is determined by whether or not a current is supplied to BL, this process is controlled in units of bits. At the time of reading, BL = 1.5V, CG = 1.5V, MG = 0V, SL = 0V, and WELL = 0V. If Vth of the memory cell is low, the memory cell is turned on, and if it is high, it is turned off. Here, the operation of lowering the Vth of the memory cell is an erasing operation, and the operation of raising the Vth of the memory cell is a writing operation.

なお、メモリ素子は、このようなスプリットゲート型フラッシュメモリ素子に限定されず、例えば広く知られているスタックド・ゲート型フラッシュメモリ素子であってよい。このメモリ素子はソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介してフローティングゲート(FG)とコントロールゲート(CG)がスタックされて構成される。このようなメモリ素子では、例えば、ホットキャリア書き込み方式によってしきい値電圧を上げる動作が行われ、ウェル領域(WELL)への電子の放出によってしきい値電圧を下げる動作が行われる。また、例えば、FNトンネル書き込み方式によってしきい値電圧を上げる動作が行われ、ビット線(BL)への電子の放出によってしきい値電圧を下げる動作が行われる。   The memory device is not limited to such a split gate flash memory device, and may be a widely known stacked gate flash memory device, for example. This memory element is configured by stacking a floating gate (FG) and a control gate (CG) on a channel formation region between a source / drain region via a gate insulating film. In such a memory element, for example, an operation for increasing the threshold voltage is performed by a hot carrier writing method, and an operation for decreasing the threshold voltage is performed by releasing electrons into the well region (WELL). Further, for example, an operation for increasing the threshold voltage is performed by the FN tunnel writing method, and an operation for decreasing the threshold voltage is performed by releasing electrons to the bit line (BL).

FMDが通常メモリの場合、メモリセルMC1,MC2は、例えば図6(a)に示すような状態で‘0’または‘1’の情報(データ)を記憶する。例えばMC1に対してデータを書き込む際には、まず図5(b)で述べた消去動作によってMC1が消去状態(Vthが低い状態)とされる。この状態から‘1’データを書き込む際にはMC1に対して特に何も行われず、MC1は消去状態を保つ。この状態がデータ‘1’に対応する。一方、消去状態のMC1に対して‘0’データを書き込む際には、MC1に対して図5(b)で述べた書き込み動作が行われる。その結果、MC1が書き込み状態(Vthが高い状態)となり、この状態がデータ‘0’に対応する。MC2に関しても、このMC1と同様の動作が行われる。なお、ここでは、Vthが低い状態をデータ‘1’とし、Vthが高い状態をデータ‘0’としたが、勿論、データ‘0’と‘1’の対応関係を入れ替えることも可能である。   When the FMD is a normal memory, the memory cells MC1 and MC2 store “0” or “1” information (data) in a state as shown in FIG. For example, when data is written to MC1, MC1 is first brought into an erased state (Vth is low) by the erase operation described with reference to FIG. When writing "1" data from this state, nothing is done to MC1, and MC1 maintains the erased state. This state corresponds to data “1”. On the other hand, when “0” data is written to MC1 in the erased state, the write operation described with reference to FIG. As a result, MC1 enters a write state (a state in which Vth is high), and this state corresponds to data “0”. Regarding MC2, the same operation as MC1 is performed. Here, the state where Vth is low is data ‘1’, and the state where Vth is high is data ‘0’. Of course, the correspondence between data ‘0’ and ‘1’ can be interchanged.

一方、FMDが相補メモリの場合、メモリセルMC1,MC2は、例えば図6(b)に示すような状態で‘0’または‘1’の情報(データ)を記憶する。MC1,MC2に対してデータを書き込む際には、まず図5(b)で述べた消去動作によってMC1,MC2が共に初期状態(Vthが低い状態)とされる。この状態をブランク状態(データ‘B’)と呼ぶ。ブランク状態から‘1’データを書き込む際には、負極用となるMC2に対して図5(b)で述べた書き込み動作が行われる。その結果、MC1が初期状態、MC2が書き込み状態(Vthが高い状態)となり、この状態がデータ‘1’に対応する。一方、ブランク状態のMC1,MC2に対して‘0’データを書き込む際には、正極用となるMC1に対して図5(b)で述べた書き込み動作が行われる。その結果、MC2が初期状態、MC1が書き込み状態となり、この状態がデータ‘0’に対応する。なお、ここでは、正極側においてVthが低い状態をデータ‘1’とし、Vthが高い状態をデータ‘0’としたが、勿論、データ‘0’と‘1’の対応関係を入れ替えることも可能である。   On the other hand, when the FMD is a complementary memory, the memory cells MC1 and MC2 store “0” or “1” information (data) in the state shown in FIG. 6B, for example. When writing data to MC1 and MC2, first, MC1 and MC2 are both brought into an initial state (a state in which Vth is low) by the erase operation described with reference to FIG. This state is called a blank state (data ‘B’). When writing “1” data from the blank state, the writing operation described in FIG. 5B is performed on the MC2 for the negative electrode. As a result, MC1 is in an initial state, MC2 is in a write state (Vth is high), and this state corresponds to data ‘1’. On the other hand, when “0” data is written to MC1 and MC2 in the blank state, the writing operation described in FIG. 5B is performed on MC1 for the positive electrode. As a result, MC2 is in an initial state and MC1 is in a write state, and this state corresponds to data “0”. Here, the state where Vth is low on the positive electrode side is data '1', and the state where Vth is high is data '0'. Of course, the correspondence relationship between data '0' and '1' can also be switched. It is.

図4のメモリマットMMATにおいて、MC1,MC2のメモリゲートMGは、共通のメモリゲート選択線MGLに接続され、コントロールゲートCGは共通のワード線WLに接続され、ソースノードは共通のソース線SLに接続される。ここでは、代表的に2個のメモリセルMC1,MC2を示したが、実際には、同一のMGL,WL,SLに2個以上のメモリセルが接続される。また、ここでは、1本のMGL,WL,SLを示しているが、実際には、当該MGL,WL,SLに並んで複数本のMGL,WL,SLが順次配置され、これらのそれぞれに対して2個以上のメモリセルが接続される。MC1,MC2のサブビット線SBLは、それぞれ読み出し列選択回路RSELを介してセンスアンプ回路ブロックSABKに接続される。SABKは、当該SBLから入力された読み出し信号を増幅し、読み出し系メインビット線RMBLに出力する。   In the memory mat MMAT of FIG. 4, the memory gates MG of MC1 and MC2 are connected to the common memory gate selection line MGL, the control gate CG is connected to the common word line WL, and the source node is connected to the common source line SL. Connected. Here, two memory cells MC1 and MC2 are typically shown, but actually two or more memory cells are connected to the same MGL, WL, and SL. In addition, although one MGL, WL, and SL are shown here, actually, a plurality of MGL, WL, and SL are sequentially arranged alongside the MGL, WL, and SL. Two or more memory cells are connected. The sub bit lines SBL of MC1 and MC2 are connected to the sense amplifier circuit block SABK via the read column selection circuit RSEL, respectively. The SABK amplifies the read signal input from the SBL and outputs it to the read main bit line RMBL.

ここで、FMDが通常メモリの場合、SABK内にはMC1,MC2のSBLにそれぞれ対応して2個のセンスアンプ回路が設けられ、これに応じて2ビット分のRMBLが設けられる。この際、各センスアンプ回路は、データ‘1’とデータ‘0’の中間レベルを基準としてSBLの信号を増幅する。一方、FMDが相補メモリの場合、SABK内にはMC1,MC2のSBLに対応して1個のセンスアンプ回路が設けられ、これに応じて1ビット分のRMBLが設けられる。すなわち、センスアンプ回路の差動入力端子の一方がMC1のSBLに、他方がMC2のSBLにそれぞれ接続される。このように、相補メモリの場合には、ツインセル(MC1,MC2)の情報をセンスアンプ回路によって差動で判定するため、通常メモリの場合と比べてMC1,MC2のデータリテンション特性(MC1,MC2の経時的なしきい値電圧変動)に対するマージンを拡大することができる。一方、通常メモリの場合には、相補メモリの場合と比べて小面積化を図ることが可能になる。   Here, when the FMD is a normal memory, two sense amplifier circuits are provided in the SABK corresponding to the SBLs of MC1 and MC2, respectively, and RMBL for 2 bits is provided accordingly. At this time, each sense amplifier circuit amplifies the SBL signal with reference to the intermediate level between the data “1” and the data “0”. On the other hand, when the FMD is a complementary memory, one sense amplifier circuit is provided in the SABK corresponding to the SBLs of MC1 and MC2, and an RMBL for one bit is provided accordingly. That is, one of the differential input terminals of the sense amplifier circuit is connected to the SBL of MC1 and the other is connected to the SBL of MC2. As described above, in the case of the complementary memory, since the information of the twin cells (MC1, MC2) is differentially determined by the sense amplifier circuit, the data retention characteristics (MC1, MC2 of MC1, MC2) are compared with those of the normal memory. The margin for fluctuations in threshold voltage over time can be expanded. On the other hand, in the case of a normal memory, the area can be reduced as compared with the case of a complementary memory.

出力バッファ回路OBFは、前述したメモリマットMMAT内のセンスアンプ回路ブロックSABKからの出力信号をRMBLを介して受け、それをバッファリングしたのちデータ出力信号(読み出しデータ)DO[0]〜DO[N]として図3の高速バスHBSに出力する。行デコード回路RDEC1は、ワード線WLを駆動し、行デコード回路RDEC2は、メモリゲート選択線MGL、ソース線SL、およびサブビット線選択回路BSELの選択信号をそれぞれ駆動する。RDEC1,RDEC2における選択動作は、読み出し動作時には図3の高速バスHBSを介して供給されるアドレス情報等に従い、書き込み動作および消去動作時には図3の低速バスLBSを介して供給されるアドレス情報等に従う。   The output buffer circuit OBF receives the output signal from the sense amplifier circuit block SABK in the memory mat MMAT described above via the RMBL, and after buffering it, the data output signal (read data) DO [0] to DO [N ] To the high-speed bus HBS of FIG. Row decode circuit RDEC1 drives word line WL, and row decode circuit RDEC2 drives select signals for memory gate select line MGL, source line SL, and sub-bit line select circuit BSEL, respectively. The selection operation in RDEC1 and RDEC2 follows the address information supplied via the high-speed bus HBS of FIG. 3 during the read operation, and follows the address information supplied via the low-speed bus LBS of FIG. 3 during the write operation and the erase operation. .

また、MC1,MC2のサブビット線SBLは、サブビット線選択回路BSELを介してそれぞれ異なる書き込み系メインビット線WMBLに接続される。書き込みデータラッチ回路WLTは、各WMBLにそれぞれ接続されるラッチ回路LT1,LT2を備え、当該ラッチ回路のラッチデータに基づいて各WMBLに対して選択的に書き込み電流を流す。書き込み列選択回路WSELは、WLT内の各ラッチ回路を選択的に入出力バッファ回路IOBFに接続すると共に、各ラッチ回路に接続されたWMBLを選択的にベリファイ回路VRFYに接続する。この際の選択信号は、列デコード回路CDECによって生成される。CDECの選択動作は、図3の低速バスLBSを介して供給されるアドレス情報等に従う。   Further, the sub bit lines SBL of MC1 and MC2 are connected to different write main bit lines WMBL via the sub bit line selection circuit BSEL. The write data latch circuit WLT includes latch circuits LT1 and LT2 respectively connected to each WMBL, and allows a write current to selectively flow to each WMBL based on the latch data of the latch circuit. The write column selection circuit WSEL selectively connects each latch circuit in the WLT to the input / output buffer circuit IOBF, and selectively connects the WMBL connected to each latch circuit to the verify circuit VRFY. The selection signal at this time is generated by the column decode circuit CDEC. The CDEC selection operation follows address information supplied via the low-speed bus LBS of FIG.

ベリファイ回路VRFYは、各WMBLにそれぞれ接続されたベリファイ用センスアンプ回路VSAを備え、各VSAのベリファイ結果はIOBFに出力される。IOBFは、図3の低速バスLBSを介してデータ入力信号(書き込みデータ)DI[0]〜DI[N]が入力され、LBSを介してデータ出力信号(読み出しデータ)DO[0]〜DO[N]を出力する。内部電源生成回路VGENは、レギュレータ回路等を含み、読み出し動作、書き込み動作、消去動作に必要な各種動作電源を生成する。   The verify circuit VRFY includes a verify sense amplifier circuit VSA connected to each WMBL, and the verify result of each VSA is output to the IOBF. The IOBF receives data input signals (write data) DI [0] to DI [N] via the low-speed bus LBS of FIG. 3, and data output signals (read data) DO [0] to DO [ N] is output. The internal power supply generation circuit VGEN includes a regulator circuit and the like, and generates various operation power supplies necessary for a read operation, a write operation, and an erase operation.

《フラッシュメモリモジュールの全体動作》
図4のフラッシュメモリモジュールFMDに対する書き込み動作および読み出し動作について簡単に説明する。まず、書き込み動作を行う際には、予め図3のフラッシュシーケンサFSEQの命令に応じてFMDが図5(b)に示したような消去動作を行い、メモリセルMC1,MC2のしきい値電圧Vthを図6(a)に示すような消去状態又は図6(b)に示すような初期状態にしておく。次いで、FSEQの命令に応じて、入出力バッファ回路IOBFが、データ入力信号DI[0]〜DI[N]に基づいて書き込みデータラッチ回路WLT内の各ラッチ回路の値を設定する。例えば、FMDが通常メモリの場合で、DI[0]=‘1’、DI[1]=‘0’の際には、DI[0]に応じてラッチ回路LT1に‘1’が設定され、DI[1]に応じてラッチ回路LT2に‘0’が設定される。また、FMDが相補メモリの場合で、DI[0]=‘1’の際には、ラッチ回路LT1に正極データの‘1’が、ラッチ回路LT2に負極データの‘0’がそれぞれ設定され、逆に、DI[0]=‘0’の際には、LT1に正極データの‘0’が、LT2に負極データの‘1’がそれぞれ設定される。
<Overall operation of flash memory module>
A write operation and a read operation for the flash memory module FMD of FIG. 4 will be briefly described. First, when performing a write operation, the FMD performs an erase operation as shown in FIG. 5B in advance in accordance with the instruction of the flash sequencer FSEQ in FIG. 3, and the threshold voltage Vth of the memory cells MC1 and MC2 Is set to an erased state as shown in FIG. 6A or an initial state as shown in FIG. Next, the input / output buffer circuit IOBF sets the value of each latch circuit in the write data latch circuit WLT based on the data input signals DI [0] to DI [N] in accordance with the FSEQ command. For example, when the FMD is a normal memory and DI [0] = “1” and DI [1] = “0”, “1” is set in the latch circuit LT1 according to DI [0]. '0' is set in the latch circuit LT2 in accordance with DI [1]. When the FMD is a complementary memory and DI [0] = “1”, positive data “1” is set in the latch circuit LT1 and negative data “0” is set in the latch circuit LT2, respectively. On the other hand, when DI [0] = “0”, “1” of positive polarity data is set in LT1, and “1” of negative polarity data is set in LT2.

ここで、‘0’が設定されたラッチ回路は、対応する書き込み系メインビット線WMBLに対して書き込み電流を所定の期間供給し、‘1’が設定されたラッチ回路は、対応するWMBLに対して書き込み電流の供給を行わない。したがって、例えば前述した通常メモリにおけるDI[0]=‘1’、DI[1]=‘0’場合や、あるいは前述した相補メモリにおけるDI[0]=‘1’の場合には、LT2がMC2を対象にWMBLおよびサブビット線選択回路BSELを介して書き込み電流を供給し、その結果、MC2のVthが上昇する。   Here, the latch circuit set to “0” supplies the write current to the corresponding write system main bit line WMBL for a predetermined period, and the latch circuit set to “1” corresponds to the corresponding WMBL. The write current is not supplied. Therefore, for example, when DI [0] = '1' and DI [1] = '0' in the above-described normal memory, or when DI [0] = '1' in the above-described complementary memory, LT2 is MC2. Is supplied via the WMBL and the sub-bit line selection circuit BSEL, and as a result, the Vth of MC2 rises.

続いて、FSEQの命令に応じてベリファイ動作が行われる。ベリファイ動作では、MC1,MC2の記憶データがBSELおよび各WMBLを介して読み出される。各WMBLに読み出されたデータはベリファイ用センスアンプ回路VSAによって判定され、書き込み電流が供給されたメモリセル(対応するラッチ回路に‘0’が設定されたメモリセル)のVthが十分なレベルに達したかが検証される。この検証結果は、IOBFを介してFSEQに通知され、仮に十分なレベルに達していない場合にはFSEQの命令に応じて再度書き込み電流の供給が行われる。このような動作の結果、図6(a)又は図6(b)に示したような書き込み状態が実現される。   Subsequently, a verify operation is performed in accordance with the FSEQ command. In the verify operation, the data stored in MC1 and MC2 are read out via BSEL and each WMBL. The data read to each WMBL is determined by the verify sense amplifier circuit VSA, and the Vth of the memory cell to which the write current is supplied (the memory cell in which “0” is set in the corresponding latch circuit) is set to a sufficient level. It is verified whether it has been reached. The verification result is notified to the FSEQ via the IOBF, and if the level has not reached a sufficient level, the write current is supplied again in response to the FSEQ command. As a result of such an operation, a write state as shown in FIG. 6A or 6B is realized.

一方、読み出し動作を行う際には、MC1,MC2の記憶データが読み出し列選択回路RSELを介してセンスアンプ回路ブロックSABKに入力される。FMDが通常メモリの場合、MC1,MC2からの読み出し信号が2個のセンスアンプ回路によってそれぞれ増幅され、2本の読み出し系メインビット線RMBLに出力される。一方、FMDが相補メモリの場合、MC1,MC2からの読み出し信号が1個のセンスアンプ回路によって差動増幅され、1本のRMBLに出力される。出力バッファ回路OBFは、当該RMBLの信号を受けて、高速バスHBSに向けてデータ出力信号DO[0]〜DO[N]を出力する。   On the other hand, when the read operation is performed, the data stored in MC1 and MC2 is input to the sense amplifier circuit block SABK via the read column selection circuit RSEL. When the FMD is a normal memory, read signals from MC1 and MC2 are amplified by two sense amplifier circuits and output to two read main bit lines RMBL. On the other hand, when the FMD is a complementary memory, read signals from MC1 and MC2 are differentially amplified by one sense amplifier circuit and output to one RMBL. The output buffer circuit OBF receives the RMBL signal and outputs data output signals DO [0] to DO [N] toward the high-speed bus HBS.

《フラッシュメモリモジュールユニットの全体構成および全体動作》
図7は、図3の半導体装置において、そのフラッシュメモリモジュールユニットの主要部の構成例を示す概略図である。図7に示すフラッシュメモリモジュールユニットFMDUは、3個のフラッシュメモリモジュールFMD1〜FMD3を備えている。FMD1において、メモリマットMMAT上には、複数(ここでは4本を例示)のワード線WL[1a]〜WL[4a]と、複数(ここでは2本を例示)のメモリゲート選択線MGL[1a],MGL[2a]が延伸している。ここでは、MGL[1a]に8個のデータ領域DT[1a]〜DT[8a]と、8個の書き込みスタンプ領域PS[1a]〜PS[8a]と、1個の消去スタンプ領域ES[1a]が接続されている。
<Overall configuration and operation of flash memory module unit>
FIG. 7 is a schematic diagram showing a configuration example of a main part of the flash memory module unit in the semiconductor device of FIG. The flash memory module unit FMDU shown in FIG. 7 includes three flash memory modules FMD1 to FMD3. In FMD1, a plurality (here, four are exemplified) of word lines WL [1a] to WL [4a] and a plurality (here, two are exemplified) of memory gate selection lines MGL [1a are arranged on the memory mat MMAT. ], MGL [2a] is extended. Here, eight data areas DT [1a] to DT [8a], eight write stamp areas PS [1a] to PS [8a], and one erase stamp area ES [1a] are stored in MGL [1a]. ] Is connected.

フラッシュメモリでは、通常、消去単位と書き込み単位が異なっている。ここでは、MGL[1a]を共有する各領域が内部消去単位となり、DT[1a]〜DT[8a]のそれぞれがデータの内部書き込み単位となる。ここで、例えば、DT[1a]〜DT[8a]のそれぞれは1バイトであり、PS[1a]〜PS[8a]のそれぞれは2ビットであり、ES[1a]は2ビットである。DT[1a]〜DT[4a]とPS[1a]〜PS[4a]はWL[1a]に接続され、DT[5a]〜DT[8a]とPS[5a]〜PS[8a]はWL[2a]に接続される。ES[1a]は、WL[1a]かWL[2a]の一方に接続されるか、あるいはWL[1a]とWL[2a]の両方に1ビットずつ接続される。   In flash memory, the erase unit and the write unit are usually different. Here, each area sharing MGL [1a] is an internal erase unit, and each of DT [1a] to DT [8a] is an internal data write unit. Here, for example, each of DT [1a] to DT [8a] is 1 byte, each of PS [1a] to PS [8a] is 2 bits, and ES [1a] is 2 bits. DT [1a] to DT [4a] and PS [1a] to PS [4a] are connected to WL [1a], and DT [5a] to DT [8a] and PS [5a] to PS [8a] are connected to WL [1a]. 2a]. ES [1a] is connected to either WL [1a] or WL [2a], or connected to both WL [1a] and WL [2a] bit by bit.

同様に、MGL[2a]には、8個のデータ領域DT[9a]〜DT[16a]と、8個の書き込みスタンプ領域PS[9a]〜PS[16a]と、1個の消去スタンプ領域ES[2a]が接続されている。このMGL[2a]を共有する各領域が内部消去単位となり、DT[9a]〜DT[16a]のそれぞれがデータの内部書き込み単位となる。DT[9a]〜DT[12a]とPS[9a]〜PS[12a]はWL[3a]に接続され、DT[13a]〜DT[16a]とPS[13a]〜PS[16a]はWL[4a]に接続される。ES[2a]は、WL[3a]かWL[4a]の一方に接続されるか、あるいはWL[3a]とWL[4a]の両方に1ビットずつ接続される。   Similarly, MGL [2a] includes eight data areas DT [9a] to DT [16a], eight write stamp areas PS [9a] to PS [16a], and one erase stamp area ES. [2a] is connected. Each area sharing MGL [2a] is an internal erase unit, and each of DT [9a] to DT [16a] is an internal data write unit. DT [9a] to DT [12a] and PS [9a] to PS [12a] are connected to WL [3a], and DT [13a] to DT [16a] and PS [13a] to PS [16a] are WL [3a]. 4a]. ES [2a] is connected to either WL [3a] or WL [4a], or connected to both WL [3a] and WL [4a] bit by bit.

FMD2も、FMD1と同様の構成を備えている。図7では、FMD2をFMD1と区別するため、例えば、FMD1のWL[1a]がFMD2ではWL[1b]となっており、FMD1のDT[1a]がFMD2ではDT[1b]となっているように、添字が「a」から「b」に変更されている。また、FMD2では、便宜上、FMD1のMGL[2a]に関連する部分の記載を省略している。FMD3も、FMD2と同様の構成を備えている。図7では、FMD3をFMD1,FMD2と区別するため、例えば、FMD2のWL[1b]がFMD3ではWL[1]となっているように、添字「b」が削除されている。また、FMD3では、図1の場合と同様に、FMD2における各データ領域DT[1b]〜DT[8b]がパリティ領域(データ領域)PT[1]〜PT[8]に置き換わっている。PT[1]〜PT[8]のそれぞれは、DT[1b]〜DT[8b]のそれぞれと同一の容量値(ここでは1バイト)を持つ。   The FMD 2 has the same configuration as the FMD 1. In FIG. 7, to distinguish FMD2 from FMD1, for example, WL [1a] of FMD1 is WL [1b] in FMD2, and DT [1a] of FMD1 is DT [1b] in FMD2. In addition, the subscript is changed from “a” to “b”. Further, in FMD2, for convenience, the description of the part related to MGL [2a] of FMD1 is omitted. The FMD 3 has the same configuration as the FMD 2. In FIG. 7, in order to distinguish FMD3 from FMD1 and FMD2, for example, the subscript “b” is deleted so that WL [1b] of FMD2 is WL [1] in FMD3. In FMD3, as in FIG. 1, the data areas DT [1b] to DT [8b] in FMD2 are replaced with parity areas (data areas) PT [1] to PT [8]. Each of PT [1] to PT [8] has the same capacitance value (here, 1 byte) as each of DT [1b] to DT [8b].

このような構成例において、例えば、図3のCPU等によって書き込み命令と共に2バイトの外部書き込みデータが生じた場合を例に動作の一例を説明する。図3のフラッシュシーケンサFSEQは、当該書き込み動作に先だって、フラッシュメモリモジュールFMD1〜FMD3に対して予め消去動作を行わせる。これに応じて、FMD1〜FMD3は、下記(1−1)〜(1−9)の順番で処理を行う。   In such a configuration example, an example of the operation will be described by taking, for example, a case where 2-byte external write data is generated together with a write command by the CPU of FIG. The flash sequencer FSEQ in FIG. 3 causes the flash memory modules FMD1 to FMD3 to perform an erase operation in advance prior to the write operation. In response to this, FMD1 to FMD3 perform processing in the following order (1-1) to (1-9).

(1−1)WL[1a](又はWL[2a])等を立ち上げ、ES[1a]に消去開始スタンプを書き込む。   (1-1) Start up WL [1a] (or WL [2a]) and write an erase start stamp to ES [1a].

(1−2)MGL[1a]等を制御し、DT[1a]〜DT[8a]、PS[1a]〜PS[8a]、ES[1a]を一括消去する。   (1-2) Control MGL [1a] and the like, and erase DT [1a] to DT [8a], PS [1a] to PS [8a], and ES [1a] at once.

(1−3)WL[2a](又はWL[1a])等を立ち上げ、ES[1a]に消去終了スタンプを書き込む。   (1-3) WL [2a] (or WL [1a]) or the like is started, and an erase end stamp is written to ES [1a].

(1−4)WL[1b](又はWL[2b])等を立ち上げ、ES[1b]に消去開始スタンプを書き込む。   (1-4) WL [1b] (or WL [2b]) or the like is started and an erase start stamp is written to ES [1b].

(1−5)MGL[1b]等を制御し、DT[1b]〜DT[8b]、PS[1b]〜PS[8b]、ES[1b]を一括消去する。   (1-5) MGL [1b] and the like are controlled, and DT [1b] to DT [8b], PS [1b] to PS [8b], and ES [1b] are collectively erased.

(1−6)WL[2b](又はWL[1b])等を立ち上げ、ES[1b]に消去終了スタンプを書き込む。   (1-6) WL [2b] (or WL [1b]) or the like is started, and an erase end stamp is written to ES [1b].

(1−7)WL[1](又はWL[2])等を立ち上げ、ES[1]に消去開始スタンプを書き込む。   (1-7) WL [1] (or WL [2]) and the like are started, and an erase start stamp is written to ES [1].

(1−8)MGL[1]等を制御し、PT[1]〜PT[8]、PS[1]〜PS[8]、ES[1]を一括消去する。   (1-8) MGL [1] and the like are controlled, and PT [1] to PT [8], PS [1] to PS [8], and ES [1] are collectively erased.

(1−9)WL[2](又はWL[1])等を立ち上げ、ES[1]に消去終了スタンプを書き込む。   (1-9) WL [2] (or WL [1]) or the like is started, and an erase end stamp is written to ES [1].

次いで、例えば図3のフラッシュシーケンサFSEQは、図3のCPU等からの2バイトの外部書き込みデータを1バイト毎に分割し、それぞれをFMD1用およびFMD2用の書き込みデータとして準備する。更に、FSEQは、このFMD1用およびFMD2用の書き込みデータを対象にパリティ演算を行うことでFMD3用の1バイトの書き込みデータ(パリティデータ)を準備する。FMD1〜FMD3は、FSEQから前述した書き込みデータを受けると共に、FSEQからの書き込み順番の制御に基づいて、下記(2−1)〜(2−9)の順番で処理を行う。   Next, for example, the flash sequencer FSEQ in FIG. 3 divides the 2-byte external write data from the CPU or the like in FIG. 3 into 1 byte, and prepares them as write data for FMD1 and FMD2. Further, FSEQ prepares 1-byte write data (parity data) for FMD3 by performing a parity operation on the write data for FMD1 and FMD2. The FMD1 to FMD3 receive the write data described above from the FSEQ, and perform processing in the following order (2-1) to (2-9) based on the control of the write order from the FSEQ.

(2−1)WL[1a]等を立ち上げ、PS[1a]に書き込み開始スタンプを書き込む。   (2-1) Start up WL [1a] and write a write start stamp in PS [1a].

(2−2)WL[1a]等を立ち上げ、DT[1a]に1バイトのデータを書き込む。   (2-2) Start up WL [1a] and write 1 byte of data to DT [1a].

(2−3)WL[1a]等を立ち上げ、PS[1a]に書き込み終了スタンプを書き込む。   (2-3) Start up WL [1a] etc. and write a write end stamp in PS [1a].

(2−4)WL[1b]等を立ち上げ、PS[1b]に書き込み開始スタンプを書き込む。   (2-4) Start up WL [1b] etc. and write a write start stamp in PS [1b].

(2−5)WL[1b]等を立ち上げ、DT[1b]に1バイトのデータを書き込む。   (2-5) Start up WL [1b] and write 1-byte data to DT [1b].

(2−6)WL[1b]等を立ち上げ、PS[1b]に書き込み終了スタンプを書き込む。   (2-6) WL [1b] and the like are started and a write end stamp is written in PS [1b].

(2−7)WL[1]等を立ち上げ、PS[1]に書き込み開始スタンプを書き込む。   (2-7) Start up WL [1] and write a write start stamp in PS [1].

(2−8)WL[1]等を立ち上げ、PT[1]に1バイトのパリティデータを書き込む。   (2-8) Start up WL [1] and write 1-byte parity data to PT [1].

(2−9)WL[1]等を立ち上げ、PS[1]に書き込み終了スタンプを書き込む。   (2-9) Start up WL [1] etc. and write a write end stamp in PS [1].

ここで、フラッシュメモリを用いる場合には、消去動作と書き込み動作が存在するため、例えば前述した(1−1),(1−3)等における消去開始スタンプおよび消去終了スタンプの実現方法や、前述した(2−1),(2−3)等における書き込み開始スタンプおよび書き込み終了スタンプの実現方法に工夫が必要となる。図8は、図7のフラッシュメモリモジュールユニットにおいて、その消去開始スタンプ、消去終了スタンプ、書き込み開始スタンプ、書き込み終了スタンプの詳細な構成例を示す説明図である。   Here, when a flash memory is used, since there are an erase operation and a write operation, for example, the method for realizing the erase start stamp and the erase end stamp in the above (1-1), (1-3), etc. Thus, it is necessary to devise a method for realizing the write start stamp and the write end stamp in (2-1), (2-3), and the like. FIG. 8 is an explanatory diagram showing a detailed configuration example of the erase start stamp, erase end stamp, write start stamp, and write end stamp in the flash memory module unit of FIG.

図8において、まず、FMDが通常メモリの場合、製品出荷時には各データ領域のデータは‘1’(消去状態)となっており、各消去スタンプ領域ESのデータは‘01’、各書き込みスタンプ領域PSのデータは‘11’となっている。この状態でデータ領域に‘0’又は‘1’の書き込み動作を行う場合、当該データ領域に対応する書き込みスタンプ領域PSのデータは、当該データ領域への書き込み動作の開始前に‘01’となり、書き込み動作の終了後に‘00’となる。すなわち、ここではPS(2ビット)の上位ビットが前述した書き込み開始スタンプに対応し、下位ビットが前述した書き込み終了スタンプに対応しており、‘11’に対して書き込み開始スタンプを書き込みことで‘01’となり、更に書き込み終了スタンプを書き込むことで‘00’となる。   In FIG. 8, first, when the FMD is a normal memory, the data in each data area is “1” (erased state) at the time of product shipment, the data in each erase stamp area ES is “01”, and each write stamp area. The PS data is “11”. When a write operation of “0” or “1” is performed in this state, the data in the write stamp area PS corresponding to the data area becomes “01” before the start of the write operation to the data area. It becomes “00” after the end of the write operation. That is, here, the upper bits of PS (2 bits) correspond to the above-mentioned write start stamp, the lower bits correspond to the above-mentioned write end stamp, and by writing the write start stamp to '11' It becomes 01, and further becomes 00 when writing the writing end stamp.

続いて、消去動作を行う場合、図7のように消去対象領域に含まれている消去スタンプ領域ESのデータは、消去動作の開始前に‘01’から‘00’となり、消去動作中には‘11’となり、消去動作の終了後に‘01’となる。すなわち、ここではES(2ビット)の下位ビットが前述した消去開始スタンプに対応し、上位ビットが前述した消去終了スタンプに対応しており、‘01’に対して消去開始スタンプを書き込むことで‘00’となり、消去動作中は必然的に‘11’となり、‘11’に対して消去終了スタンプを書き込みことで‘01’となる。この際には、同時にPSに対しても消去動作が行われてしまうため、消去動作開始前に‘00’であったPSは、消去動作終了後に必然的に‘11’となる。この消去動作終了後におけるES=‘01’とPS=‘11’は、前述した製品出荷時と同じ状態になる。   Subsequently, when performing the erasing operation, the data in the erasing stamp area ES included in the erasing target area is changed from “01” to “00” before starting the erasing operation as shown in FIG. It becomes “11”, and becomes “01” after the erase operation is completed. That is, here, the lower bit of ES (2 bits) corresponds to the erasure start stamp described above, and the upper bit corresponds to the erasure end stamp described above. It becomes “00”, necessarily becomes “11” during the erasing operation, and becomes “01” by writing the erasure end stamp to “11”. At this time, since the erase operation is simultaneously performed on the PS, the PS which was “00” before the start of the erase operation is necessarily “11” after the end of the erase operation. After this erase operation, ES = '01 'and PS = '11' are in the same state as when the product is shipped.

一方、FMDが相補メモリの場合にも、前述した通常メモリの場合とほぼ同様の動作が行われる。FMDが相補メモリの場合、製品出荷時には各データ領域のデータは図6(b)で述べた‘B’(ブランク状態)となっており、各消去スタンプ領域ESのデータは‘0B’、各書き込みスタンプ領域PSのデータは‘BB’となっている。この状態でデータ領域に‘0’又は‘1’の書き込み動作を行う場合、当該データ領域に対応する書き込みスタンプ領域PSのデータは、当該データ領域への書き込み動作の開始前に‘0B’となり、書き込み動作の終了後に‘00’となる。すなわち、ここでもPS(2ビット)の上位ビットが前述した書き込み開始スタンプに対応し、下位ビットが前述した書き込み終了スタンプに対応しており、‘BB’に対して書き込み開始スタンプを書き込みことで‘0B’となり、更に書き込み終了スタンプを書き込むことで‘00’となる。   On the other hand, when the FMD is a complementary memory, substantially the same operation as that of the normal memory described above is performed. When the FMD is a complementary memory, the data in each data area is “B” (blank state) described in FIG. 6B at the time of product shipment, and the data in each erase stamp area ES is “0B”. The data in the stamp area PS is “BB”. When a write operation of “0” or “1” is performed in this state, the data in the write stamp area PS corresponding to the data area becomes “0B” before the start of the write operation to the data area. It becomes “00” after the end of the write operation. That is, here, the upper bits of PS (2 bits) correspond to the write start stamp described above, the lower bits correspond to the write end stamp described above, and by writing the write start stamp to 'BB' It becomes “0B”, and further becomes “00” by writing a writing end stamp.

続いて、消去動作を行う場合、図7のように消去対象領域に含まれている消去スタンプ領域ESのデータは、消去動作の開始前に‘0B’から‘00’となり、消去動作中には‘BB’となり、消去動作の終了後に‘0B’となる。すなわち、ここでもES(2ビット)の下位ビットが前述した消去開始スタンプに対応し、上位ビットが前述した消去終了スタンプに対応しており、‘0B’に対して消去開始スタンプを書き込むことで‘00’となり、消去動作中は必然的に‘BB’となり、‘BB’に対して消去終了スタンプを書き込みことで‘0B’となる。この際には、同時にPSに対しても消去動作が行われてしまうため、消去動作開始前に‘00’であったPSは、消去動作終了後に必然的に‘BB’となる。この消去動作終了後におけるES=‘0B’とPS=‘BB’は、前述した製品出荷時と同じ状態になる。なお、このような各スタンプの値は、例えば、各フラッシュメモリモジュール自体が内部で生成したり、あるいは、フラッシュシーケンサFSEQが生成することも可能である。   Subsequently, when performing the erase operation, the data in the erase stamp area ES included in the erase target area is changed from “0B” to “00” before the start of the erase operation as shown in FIG. It becomes “BB”, and becomes “0B” after completion of the erase operation. That is, the lower bit of ES (2 bits) also corresponds to the erasure start stamp described above, and the upper bit corresponds to the erasure end stamp described above. By writing the erasure start stamp to '0B', It becomes “00”, inevitably becomes “BB” during the erasing operation, and becomes “0B” by writing an erasure end stamp to “BB”. At this time, the erase operation is also performed on the PS at the same time. Therefore, the PS that was '00' before the start of the erase operation is necessarily 'BB' after the end of the erase operation. After this erase operation, ES = '0B' and PS = 'BB' are in the same state as at the time of product shipment. Such a stamp value can be generated internally by each flash memory module itself, or can be generated by the flash sequencer FSEQ.

このような構成例において、書き込み動作に伴い書き込み開始スタンプと書き込み終了スタンプが共に書き込まれている場合(すなわちPS=‘00’時)あるいは未書き込みに伴い書き込み開始スタンプと書き込み終了スタンプが共に書き込まれていない場合(すなわちPS=‘11’又は‘BB’時)は正常とみなせる。また、消去開始スタンプが書き込まれておらず、かつ消去終了スタンプが書き込まれている場合(すなわちES=‘01’又は‘0B’時)は正常とみなせる。そして、PS,ESがこれら以外の場合には異常とみなせる。なお、相補メモリにおいて、データ‘B’を判別する際には、例えば、図4において、SABK内のセンスアンプ回路の2入力に対して選択的に接続可能な中間レベルの生成回路等を設け、MC1とMC2の読み出し信号を当該中間レベルを基準に個別に判別すればよい。   In such a configuration example, both the writing start stamp and the writing end stamp are written together with the writing operation (that is, when PS = '00 '), or both the writing start stamp and the writing end stamp are written along with no writing. If not (that is, when PS = '11 'or' BB '), it can be regarded as normal. Further, when the erase start stamp is not written and the erase end stamp is written (that is, when ES = '01 'or' 0B '), it can be regarded as normal. If PS and ES are other than these, it can be regarded as abnormal. In order to determine the data 'B' in the complementary memory, for example, in FIG. 4, an intermediate level generation circuit that can be selectively connected to the two inputs of the sense amplifier circuit in the SABK is provided. The read signals of MC1 and MC2 may be individually discriminated based on the intermediate level.

例えば、書き込み開始スタンプと書き込み終了スタンプのいずれか一方のみが書き込まれている場合(異常時)、書き込み動作の最中の電源瞬停等によって、書き込み対象のデータ領域が意図せずに変更された可能性がある。また、消去開始スタンプが書き込まれている場合(異常時)、前述したように消去動作過程で必然的に変更される筈の消去開始スタンプが変更されずに残っているため、電源瞬停等によって消去動作過程に辿り着く前に、消去対象の領域が意図せずに変更された可能性がある。さらに、消去開始スタンプは書き込まれていないが、消去終了スタンプも書き込まれていない場合(異常時)、電源瞬停等によって消去動作過程で消去対象の領域が意図せずに変更された可能性がある。   For example, if only one of the write start stamp and write end stamp is written (when an error occurs), the data area to be written was changed unintentionally due to an instantaneous power interruption during the write operation. there is a possibility. In addition, when the erase start stamp has been written (in the case of an abnormality), as described above, the erasure start stamp that is inevitably changed during the erase operation process remains unchanged. There is a possibility that the area to be erased has been changed unintentionally before reaching the erase operation process. Furthermore, if the erase start stamp has not been written, but the erase end stamp has not been written (when an error occurs), the erase target area may have been changed unintentionally during the erase operation due to a momentary power failure, etc. is there.

《フラッシュチェックユニットの動作》
図9は、図3の半導体装置において、そのフラッシュチェックユニットの動作例を示すフロー図である。フラッシュチェックユニットFCHKUは、例えば、電源投入時(S300)等で、自動的に処理を実行するように構成されている。これによって、特に外部からの命令等を必要としない自動処理が実現可能となる。ただし、勿論、外部から命令を起点とすることや、あるいは、電源投入時の他に外部から命令を起点とすることも可能である。電源投入後、FCHKUは、FMD1内におけるアドレスが最も小さい書き込みスタンプ領域(例えば図7のPS[1a])ならびにアドレスが最も小さい消去スタンプ領域(例えば図7のES[1a])を読み出し、FMD1のスタンプチェックを行う(S310)。
<Operation of flash check unit>
FIG. 9 is a flowchart showing an operation example of the flash check unit in the semiconductor device of FIG. The flash check unit FCHKU is configured to automatically execute a process, for example, when the power is turned on (S300). This makes it possible to implement automatic processing that does not require an external command or the like. However, of course, it is possible to start the instruction from the outside, or to start the instruction from the outside in addition to when the power is turned on. After power-on, the FCHKU reads the write stamp area (eg, PS [1a] in FIG. 7) having the smallest address in the FMD1 and the erase stamp area (eg, ES [1a] in FIG. 7) having the smallest address. A stamp check is performed (S310).

S310において、FCHKUは、まず、書き込み開始スタンプが押されているかを確認する(S301)。書き込み開始スタンプが押されていない場合、書き込み終了スタンプが押されているかを確認する(S302)。ここで、書き込み開始スタンプも書き込み終了スタンプも押されていない場合(すなわち図8におけるPS=‘11’又は‘BB’の場合)は、正常となり、S306へ移行する。また、S301において、書き込み開始スタンプが押されている場合、更に書き込み終了スタンプが押されているかを確認する(S303)。書き込み開始スタンプと書き込み終了スタンプが共に押されている場合(すなわち図8におけるPS=‘00’の場合)は、正常となり、同じくS306へ移行する。一方、S301で書き込み開始スタンプが押されており、S303で書き込み終了スタンプが押されていない場合(S305)や、S301で書き込み開始スタンプが押されておらず、S302で書き込み終了スタンプが押されている場合(S304)はエラーとなる。   In S310, the FCHKU first confirms whether the writing start stamp is pressed (S301). If the writing start stamp is not pressed, it is confirmed whether the writing end stamp is pressed (S302). Here, when neither the writing start stamp nor the writing end stamp is pressed (that is, when PS = '11 'or' BB 'in FIG. 8), it becomes normal and the process proceeds to S306. If the write start stamp is pressed in S301, it is further confirmed whether the write end stamp is pressed (S303). When both the writing start stamp and the writing end stamp are pressed (that is, when PS = “00” in FIG. 8), it is normal and the process proceeds to S306. On the other hand, if the writing start stamp is pressed in S301 and the writing end stamp is not pressed in S303 (S305), or if the writing start stamp is not pressed in S301, the writing end stamp is pressed in S302. (S304), an error occurs.

次いで、FCHKUは、S306において、消去開始スタンプが押されているかを確認する。消去開始スタンプが押されていない場合、消去終了スタンプが押されているかを確認する(S307)。消去開始スタンプが押されておらず、かつ消去終了スタンプが押されている場合(すなわち図8におけるES=‘01’又は‘0B’の場合)は、正常となり、S311へ移行する。一方、S306で消去開始スタンプが押されている場合(S308)や、S306で消去開始スタンプが押されておらず、S307で消去終了スタンプも押されていない場合(S309)は、エラーとなる。   Next, the FCHKU confirms whether or not the erase start stamp is pressed in S306. If the erase start stamp has not been pressed, it is confirmed whether the erase end stamp has been pressed (S307). If the erasure start stamp is not pressed and the erasure end stamp is pressed (that is, if ES = '01 'or' 0B 'in FIG. 8), it becomes normal and the process proceeds to S311. On the other hand, if the erase start stamp is pressed in S306 (S308), or if the erase start stamp is not pressed in S306 and the erase end stamp is not pressed in S307 (S309), an error occurs.

続いて、FCHKUは、FMD2内におけるアドレスが最も小さい書き込みスタンプ領域(例えば図7のPS[1b])ならびにアドレスが最も小さい消去スタンプ領域(例えば図7のES[1b])を読み出し、前述したFMD1のスタンプチェック(S310)と同様にFMD2のスタンプチェックを行う(S311)。更に、FCHKUは、FMD3内におけるアドレスが最も小さい書き込みスタンプ領域(例えば図7のPS[1])ならびにアドレスが最も小さい消去スタンプ領域(例えば図7のES[1])を読み出し、前述したFMD1のスタンプチェック(S310)と同様にFMD3のスタンプチェックを行う(S312)。   Subsequently, the FCHKU reads the write stamp area (for example, PS [1b] in FIG. 7) having the smallest address in the FMD2 and the erase stamp area (for example, ES [1b] in FIG. 7) having the smallest address in the FMD2. In the same manner as the stamp check (S310), the FMD2 stamp check is performed (S311). Further, the FCHKU reads the write stamp area (for example, PS [1] in FIG. 7) having the smallest address in the FMD3 and the erase stamp area (for example, ES [1] in FIG. 7) having the smallest address in the FMD3. Similar to the stamp check (S310), the FMD3 stamp is checked (S312).

次いで、FCHKUは、各FMDのスタンプ情報が同じであったかを確認する(S313)。同じの場合、正常となり、S315へ移行し、同じで無い場合にはエラーとなる(S314)。すなわち、図7の例では、DT[1a]とDT[1b]とPT[1]を1個のセットとして書き込み動作または消去動作が行われる。このため、例えば、DT[1a]に対応するPS[1a]が‘00’(PSのみの判断では正常)であり、DT[1b]に対応するPS[1b]が‘11’(PSのみの判断では正常)のような場合には、DT[1a],DT[1b]内のDT[1a]のみに書き込みが行われことになり、何らかの異常が疑われる。そこで、S313によってこのような事態を異常と判断することで、データの信頼性を更に向上させることが可能になる。   Next, the FCHKU confirms whether the stamp information of each FMD is the same (S313). If they are the same, it is normal and the process proceeds to S315, and if they are not the same, an error occurs (S314). That is, in the example of FIG. 7, the write operation or the erase operation is performed with DT [1a], DT [1b], and PT [1] as one set. Therefore, for example, PS [1a] corresponding to DT [1a] is “00” (normal in the determination of only PS), and PS [1b] corresponding to DT [1b] is “11” (only PS In the case of “normal” in the determination, writing is performed only to DT [1a] in DT [1a] and DT [1b], and some abnormality is suspected. Therefore, it is possible to further improve the reliability of data by determining such a situation as abnormal in S313.

続いて、FCHKUは、FMD1〜FMD3における書き込みスタンプ領域および消去スタンプ領域を全アドレスに渡ってチェックしたかを判別する(S315)。全アドレスをチェックした場合には正常終了となる(S316)。一方、全アドレスをチェックしていない場合には、次のアドレスに移行してS310の処理に戻る。例えば、前述した例では、アドレスが最も小さい書き込みスタンプ領域(例えば図7のPS[1a],PS[1b],PS[1])および消去スタンプ領域(例えば図7のES[1a],ES[1b],ES[1])を対象としたため、今度はアドレスが次に小さい書き込みスタンプ領域(例えば図7のPS[2a],PS[2b],PS[2])を対象とする。なお、消去スタンプ領域に関しても同様にして、例えば書き込みスタンプ領域を一定の数だけ確認する毎にアドレスを変更して確認を行う。具体的には、例えば、PS[9a]を対象とする際にES[2a]の確認を行う。   Subsequently, the FCHKU determines whether the write stamp area and the erase stamp area in the FMD1 to FMD3 are checked over all addresses (S315). If all addresses are checked, the process ends normally (S316). On the other hand, if all addresses have not been checked, the process proceeds to the next address and returns to the process of S310. For example, in the above-described example, the write stamp area (eg, PS [1a], PS [1b], PS [1] in FIG. 7) and the erase stamp area (eg, ES [1a], ES [ 1b], ES [1]), this time, the write stamp area having the next smallest address (for example, PS [2a], PS [2b], PS [2] in FIG. 7) is targeted. The erase stamp area is similarly checked by changing the address every time a certain number of write stamp areas are confirmed. Specifically, for example, when PS [9a] is targeted, ES [2a] is confirmed.

《フラッシュ復元ユニットの動作》
図9に示したフラッシュチェックユニットFCHKUを用いたスタンプチェック(S310〜S312)によって、FMD1〜FMD3のいずれかに書き込み動作時または消去動作時の異常があった場合にはそのフラッシュメモリモジュールを特定することができる。この情報を受けて、図3のフラッシュ復元ユニットFREUは、図3のフラッシュシーケンサFSEQを用いながら、異常と特定されたフラッシュメモリモジュールに対してデータの復元を実行する。
<Operation of flash recovery unit>
If any of the FMD1 to FMD3 has an abnormality during the write operation or the erase operation by the stamp check (S310 to S312) using the flash check unit FCHKU shown in FIG. 9, the flash memory module is specified. be able to. Upon receiving this information, the flash restoration unit FREU in FIG. 3 performs data restoration on the flash memory module identified as abnormal while using the flash sequencer FSEQ in FIG.

図10(a)は、図3の半導体装置において、そのフラッシュ復元ユニットの動作例を示すフロー図であり、図10(b)は、図10(a)の補足図である。図10(a)のフローは、前述した図9のフラッシュチェックユニットFCHKUの処理結果を受けて、例えば、電源投入時や、あるいは外部からの命令を受けた際などに行われる。例えば、図7のFMD1が異常と特定された場合を例とすると、フラッシュ復元ユニットFREUは、まず、復元対象アドレスとして先頭アドレス(例えばDT[1a],DT[1b],PT[1]のアドレス)を設定する(S401)。   FIG. 10A is a flowchart showing an operation example of the flash restoration unit in the semiconductor device of FIG. 3, and FIG. 10B is a supplementary diagram of FIG. The flow of FIG. 10A is performed upon receiving the processing result of the flash check unit FCHKU of FIG. 9 described above, for example, when the power is turned on or when an external command is received. For example, in the case where FMD1 in FIG. 7 is identified as abnormal, the flash restoration unit FREU first has the head address (for example, the address of DT [1a], DT [1b], PT [1] as the restoration target address). ) Is set (S401).

次いで、FREUは、復元対象アドレスの正常データ(DT[1b])とパリティデータ(PT[1])を読み出し、異常と特定されたフラッシュメモリモジュール(FMD1)の復元データ(正しいデータ)を図10(b)に示すような各ビット毎の偶数パリティの関係表に基づいて演算する(S402)。ここでは、FMD1が異常な場合を例としているが、仮にFMD3(パリティデータ)が異常な場合であっても図10(b)の関係表に基づいて復元することができる。なお、データ領域(FMD1,FMD2)の修復のみを目的とするのであれば、パリティデータの復元は、必ずしも必要という訳ではない。ただし、FMD3を破壊されたまま放置し、その状態で、FMD1又はFMD2が破壊された場合には、データ領域(FMD1,FMD2)の修復が困難となり得るので、この観点からはパリティデータの復元を行う方が望ましい。   Next, the FREU reads the normal data (DT [1b]) and the parity data (PT [1]) at the address to be restored, and the restored data (correct data) of the flash memory module (FMD1) identified as abnormal is shown in FIG. The calculation is performed based on the even parity relationship table for each bit as shown in (b) (S402). Here, the case where FMD1 is abnormal is taken as an example, but even if FMD3 (parity data) is abnormal, it can be restored based on the relationship table of FIG. If the purpose is to restore only the data areas (FMD1, FMD2), it is not always necessary to restore the parity data. However, if the FMD 3 is left as it is and the FMD 1 or FMD 2 is destroyed in that state, the data areas (FMD 1 and FMD 2) can be difficult to be repaired. It is better to do it.

続いて、FREUは、図3のフラッシュシーケンサFSEQを用いて、異常と特定されたフラッシュメモリモジュール(FMD1)における復元対象アドレス(DT[1a])含む内部消去単位を消去し、S402で演算した復元データを復元対象アドレスに書き込む(S403)。次いで、FREUは、復元対象アドレスとして次のアドレス(例えばDT[2a],DT[2b],PT[2]のアドレス)を設定し(S404)、その結果、最終アドレスを超えていれば終了し、最終アドレス以下であればS402に戻って同様の処理を繰り返す(S405)。これによって、異常と特定されたフラッシュメモリモジュール(FMD1)の全領域が復元される。なお、S403における「消去」は、図7から判るように、実際には復元対象アドレスを一定の数だけ推移させる毎に行われる。   Subsequently, the FREU erases the internal erase unit including the restoration target address (DT [1a]) in the flash memory module (FMD1) identified as abnormal by using the flash sequencer FSEQ of FIG. 3, and the restoration calculated in S402. Data is written to the restoration target address (S403). Next, the FREU sets the next address (for example, the address of DT [2a], DT [2b], PT [2]) as the restoration target address (S404). If it is equal to or less than the final address, the process returns to S402 and the same processing is repeated (S405). As a result, the entire area of the flash memory module (FMD1) identified as abnormal is restored. Note that “erasing” in S403 is actually performed every time a certain number of restoration target addresses are changed, as can be seen from FIG.

《半導体装置の適用例》
図11は、図3の半導体装置を適用した携帯電話システムの構成例を示すブロック図である。図11に示す携帯電話システムRFSYSは、図3の半導体装置(マイクロコンピュータ)MCUに加えて、ドライバ回路DV1,DV2、ディスプレイDSPY、スピーカSPK、変復調回路MOD、キーパッドKPAD、インタフェース回路IF1,IF2、外部メモリOMEM、ストレージSTG等を備えている。KPADは、ユーザからの入力情報を受け、当該情報をIF1を介してMCUに出力する。MODは、MCUからのベースバンド信号をRF信号に変調してアンテナANTに送信し、またANTが受信したRF信号をベースバンド信号に復調してMCUに出力する。
<Application examples of semiconductor devices>
FIG. 11 is a block diagram illustrating a configuration example of a mobile phone system to which the semiconductor device of FIG. 3 is applied. The mobile phone system RFSYS shown in FIG. 11 includes, in addition to the semiconductor device (microcomputer) MCU shown in FIG. 3, a driver circuit DV1, DV2, a display DSPY, a speaker SPK, a modulation / demodulation circuit MOD, a keypad KPAD, an interface circuit IF1, IF2, An external memory OMEM, storage STG, and the like are provided. The KPAD receives input information from the user and outputs the information to the MCU via IF1. The MOD modulates a baseband signal from the MCU into an RF signal and transmits it to the antenna ANT, and demodulates the RF signal received by the ANT into a baseband signal and outputs it to the MCU.

DV1は、MCUからの画像情報に基づいてDSPYに所定の表示を行わせる。DV2は、MCUからの音声情報に基づいてSPKに所定の音声を発生される。OMEMはMCUの処理過程で適宜使用され、STGには、MCUを介して入力された例えば画像データや音声データ等が保存される。IF2は、外部カードCD等とMCUとの通信を制御する。なお、MCUとの間の各入出力は、図3の外部入出力ポートPORT1,PORT2を介して行われたり、場合によってはMCUに備わっている専用端子を介して行われる。また、このような各ブロックの動作は、バッテリBATから電源ユニットPWUを介して供給される電源を用いて行われる。   DV1 causes DSPY to perform a predetermined display based on image information from the MCU. DV2 generates a predetermined voice in SPK based on voice information from MCU. The OMEM is appropriately used in the process of the MCU, and the STG stores, for example, image data, audio data, and the like input via the MCU. The IF 2 controls communication between the external card CD or the like and the MCU. Each input / output to / from the MCU is performed via the external input / output ports PORT1 and PORT2 in FIG. 3, or in some cases, via dedicated terminals provided in the MCU. Such an operation of each block is performed using power supplied from the battery BAT via the power supply unit PWU.

近年、このような携帯電話システムでは、多機能化が進み、これに応じて配線基板上に数多くの部品が搭載されている。ここで、各部品がある瞬間に同時に動作すると、BATの電流供給能力や配線基板上の電源配線パターン等に応じて電源の瞬停等が生じる場合がある。一方、MCU内のフラッシュメモリモジュール内には、例えば、重要な個人情報や、あるいは携帯電話用のコード等が格納される場合があり、このようなデータが電源の瞬停等で破壊されると重大な不都合が生じる場合がある。そこで、前述したような半導体装置を用いると、このような破壊が生じた場合でも、例えば携帯電話システムの電源投入時等でデータを修復することが可能になる。また、ここでは、携帯電話システムを例としたが、勿論、それ異常に信頼性(安全性)が求められる分野(例えば自動車、鉄道、航空機分野等)のシステムに適用することも有益である。   In recent years, such mobile phone systems have become more multifunctional, and in response to this, many components are mounted on a wiring board. Here, if each component operates simultaneously at a certain moment, there may be a momentary power interruption or the like depending on the current supply capability of the BAT, the power supply wiring pattern on the wiring board, or the like. On the other hand, in the flash memory module in the MCU, for example, important personal information or a code for a mobile phone may be stored. When such data is destroyed due to a momentary power interruption or the like, Serious inconveniences may occur. Therefore, when the semiconductor device as described above is used, even when such destruction occurs, data can be restored, for example, when the mobile phone system is turned on. In addition, here, the mobile phone system is taken as an example, but it is of course useful to apply it to a system in a field (for example, automobile, railway, aircraft field, etc.) in which reliability (safety) is abnormally required.

以上、本実施の形態2の半導体装置を用いることで、代表的には、フラッシュメモリモジュールを備えた半導体装置(または記憶装置)において、データの信頼性の向上が実現可能になる。   As described above, by using the semiconductor device of the second embodiment, typically, it is possible to improve data reliability in a semiconductor device (or a storage device) including a flash memory module.

(実施の形態3)
《半導体装置の全体構成(変形例)》
図12は、本発明の実施の形態3による半導体装置において、その全体構成の一例を示すブロック図である。図12に示す半導体装置(マイクロコンピュータ)MCUは、前述した図3の構成例と比較して、フラッシュ復元ユニットFREUが削除された構成となっている。これ以外の部分に関しては図3と同様であるため、詳細な説明は省略する。FREUは、図10から判るように、比較的長い処理時間を要する恐れがある。したがって、FREUを回路として備えずに、ユーザの選択に応じて、別途図3のCPUの復元プログラム等を介して手動でデータ復元を行う方が効率的な場合も有り得る。
(Embodiment 3)
<< Overall Configuration of Semiconductor Device (Modification) >>
FIG. 12 is a block diagram showing an example of the overall configuration of the semiconductor device according to the third embodiment of the present invention. The semiconductor device (microcomputer) MCU shown in FIG. 12 has a configuration in which the flash restoration unit FREU is deleted as compared with the configuration example of FIG. 3 described above. Since other parts are the same as those in FIG. 3, detailed description thereof is omitted. FREU may take a relatively long processing time as can be seen from FIG. Therefore, there may be a case where it is more efficient not to provide the FREU as a circuit but to manually perform data restoration separately via a CPU restoration program shown in FIG.

図13は、図12の半導体装置において、そのフラッシュメモリモジュールのデータ復元を手動で行う場合の手順を示すフロー図である。図13では、まず、CPU等が、メモリチェックユニットFCHKUに対して、異常と特定されたフラッシュメモリモジュールFMDが存在するか否かの問い合わせを行う(S501)。異常なFMDが存在しなければ、処理は終了となる。一方、異常なFMDが存在する場合、そのFMDの番号(例えばFMD1)をFCHKUから取得する(S502)。続いて、CPU等は、正常なFMD(例えばFMD2,FMD3)に対して、FMDの単位で各データ領域(各パリティ領域)のデータを一括して読み出し(S503)、当該読み出したデータから前述した図10(b)の関係表を用いて異常なFMDにおける正しいデータ(復元データ)を一括して算出する(S504)。   FIG. 13 is a flowchart showing a procedure for manually performing data restoration of the flash memory module in the semiconductor device of FIG. In FIG. 13, first, the CPU or the like inquires of the memory check unit FCHKU whether there is a flash memory module FMD identified as abnormal (S501). If there is no abnormal FMD, the process ends. On the other hand, if there is an abnormal FMD, the FMD number (for example, FMD1) is acquired from the FCHKU (S502). Subsequently, the CPU or the like reads out the data of each data area (each parity area) in a unit of FMD with respect to a normal FMD (for example, FMD2, FMD3) (S503), and described above from the read data. The correct data (restored data) in the abnormal FMD is calculated in a lump using the relation table of FIG. 10B (S504).

ここで、S503,S504の処理は、例えば図3のRAMをワーク領域として用いながら行われ、復元データはFMDの単位で一括してRAMに保管される。一方、前述した図10のFREUによる処理は、FREU内等に例えば数バイト程度のメモリを備えることを前提として各データ領域の単位で行われ、各データ領域単位の復元データが当該メモリに保管される。この前提の場合、FMD全体の復元データを算出するのに要する時間は、図3の高速バスHBSやRAMを利用することが可能な図13の場合の方が、図10の場合よりも短くなる。なお、FREU内のメモリ容量を増加させることも可能であるが、この場合、半導体装置の面積(コスト)の増大を招き、また、FREUがHBSを介してRAMをアクセスできるように構成することも可能であるが、この場合も、当該アクセス制御に伴うFREUの面積増大や、HBSの効率低下等が懸念される。   Here, the processing of S503 and S504 is performed, for example, using the RAM of FIG. 3 as a work area, and the restoration data is collectively stored in the RAM in units of FMD. On the other hand, the processing by the FREU in FIG. 10 described above is performed in units of each data area on the assumption that a memory of, for example, about several bytes is provided in the FREU and the like, and restored data in units of each data area is stored in the memory. The In this case, the time required to calculate the restoration data of the entire FMD is shorter in the case of FIG. 13 where the high-speed bus HBS and RAM of FIG. 3 can be used than in the case of FIG. . Although it is possible to increase the memory capacity in the FREU, in this case, the area (cost) of the semiconductor device is increased, and the FREU can access the RAM via the HBS. Although it is possible, there is also a concern about an increase in the area of the FREU accompanying the access control, a decrease in the efficiency of the HBS, and the like.

S504の処理に続いて、CPU等は、図3のフラッシュシーケンサFSEQを介して、復元が必要なFMD(例えばFMD1)のデータを一括して消去し(S505)、当該FMDに対して、RAM上に保管されている復元データを一括して書き込む(S506)。この際には、前述した各スタンプも書き込まれる。また、この書き込みの際には、例えば、図3のDMACを利用することも可能である。   Subsequent to the processing of S504, the CPU or the like erases the data of the FMD (for example, FMD1) that needs to be restored collectively via the flash sequencer FSEQ in FIG. 3 (S505), and the FMD is stored in the RAM. The restoration data stored in is collectively written (S506). At this time, the above-described stamps are also written. In this writing, for example, the DMAC shown in FIG. 3 can be used.

以上、本実施の形態3の半導体装置を用いることで、代表的には、フラッシュメモリモジュールを備えた半導体装置(または記憶装置)において、データの信頼性の向上が実現可能になる。更に、実施の形態2の場合と比較して、データの復元を効率的に行える場合がある。なお、ここでは、フラッシュ復元ユニットFREUの削除を行ったが、場合によって加えてメモリチェックユニットFCHKUも削除し、FREUの場合と同様にしてFCHKUの機能をCPU等に持たせることも可能である。ただし、CPUの起動や動作自体に必要なデータがFMDに保管されているような場合には、CPUを用いた復元動作が困難となる場合も考えられ、また、一般的にCPUの負荷はできるだけ低い方が望ましいため、このような観点からは図3のような構成例が望ましい。   As described above, by using the semiconductor device of the third embodiment, typically, it is possible to improve data reliability in a semiconductor device (or a storage device) including a flash memory module. Furthermore, there are cases where data restoration can be performed more efficiently than in the second embodiment. Although the flash restoration unit FREU is deleted here, the memory check unit FCHKU may be deleted in some cases, and the function of the FCHKU may be provided to the CPU or the like in the same manner as in the case of FREU. However, when data necessary for starting up or operating the CPU itself is stored in the FMD, it may be difficult to perform a restoring operation using the CPU, and generally, the load on the CPU is as low as possible. Since the lower one is desirable, the configuration example as shown in FIG. 3 is desirable from such a viewpoint.

(実施の形態4)
《不揮発性メモリユニットの概略構成(変形例)》
図14は、本発明の実施の形態4による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図である。図14に示す不揮発性メモリユニットMEMU2は、図1の構成例と比較して、パリティデータが各不揮発性メモリモジュール(例えばフラッシュメモリモジュール等)FMD1〜FMD3毎に分散して書き込まれる点が異なっている。これ以外の部分に関しては、図1の場合と同様であるため、詳細な説明は省略する。
(Embodiment 4)
<< Schematic Configuration of Nonvolatile Memory Unit (Modification) >>
FIG. 14 is a schematic diagram showing a configuration example of a nonvolatile memory unit included in a semiconductor device (storage device) according to the fourth embodiment of the present invention. Compared with the configuration example of FIG. 1, the nonvolatile memory unit MEMU2 shown in FIG. 14 is different in that parity data is distributed and written for each of the nonvolatile memory modules (for example, flash memory modules) FMD1 to FMD3. Yes. Since other parts are the same as those in FIG. 1, detailed description thereof is omitted.

図14の例では、FMD1のデータ領域DT[1a]とFMD2のデータ領域DT[1b]に対応してFMD3のデータ領域(パリティ領域)PT[1]にパリティデータが書き込まれ、FMD1のデータ領域DT[2a]とFMD3のデータ領域DT[2b]に対応してFMD2のデータ領域(パリティ領域)PT[2]にパリティデータが書き込まれる。以降、図示は省略するが、同様にして、3番目のデータ領域に対応してFMD1にパリティデータが書き込まれ、4番目のデータ領域に対応してFMD3にパリティデータが書き込まれる。すなわち、不揮発性メモリモジュールの数をJとすると、各不揮発性メモリモジュールではJ個のデータ領域の内の1個にパリティデータが格納されることになる。   In the example of FIG. 14, parity data is written in the data area (parity area) PT [1] of FMD3 corresponding to the data area DT [1a] of FMD1 and the data area DT [1b] of FMD2, and the data area of FMD1 Parity data is written in the data area (parity area) PT [2] of FMD2 corresponding to the data area DT [2b] of DT [2a] and FMD3. Thereafter, although illustration is omitted, similarly, parity data is written in FMD1 corresponding to the third data area, and parity data is written in FMD3 corresponding to the fourth data area. That is, assuming that the number of nonvolatile memory modules is J, parity data is stored in one of the J data areas in each nonvolatile memory module.

このような構成例を用いると、例えば、図10でも述べたように、パリティデータの復元は行わず、データ領域の修復のみを目的とする場合、その復元に要する時間を短縮することが可能になる。すなわち、例えば図1においてFMD1が破壊された場合、N個のデータ領域DT[1a]〜DT[Na]を復元する必要があるが、図14においてFMD1が破壊された場合、1/3の割合でパリティデータが含まれているため、(2/3)×N個のデータ領域を復元すればよい。これによって、復元に要する時間を図1の場合と比較して約2/3に短縮することが可能になる。   By using such a configuration example, for example, as described in FIG. 10, it is possible to reduce the time required for the restoration when the purpose is to restore only the data area without restoring the parity data. Become. That is, for example, when FMD1 is destroyed in FIG. 1, N data areas DT [1a] to DT [Na] need to be restored, but when FMD1 is destroyed in FIG. Therefore, (2/3) × N data areas may be restored. As a result, the time required for restoration can be shortened to about 2/3 compared with the case of FIG.

以上、本実施の形態4の半導体装置を用いることで、代表的には、不揮発性メモリモジュールを備えた半導体装置(または記憶装置)において、データの信頼性の向上が実現可能になる。さらに、実施の形態1の場合と比較して、データの復元に要する時間を短縮できる場合がある。   As described above, by using the semiconductor device of the fourth embodiment, typically, it is possible to improve data reliability in a semiconductor device (or a storage device) including a nonvolatile memory module. Furthermore, there are cases where the time required for data restoration can be reduced as compared with the case of the first embodiment.

(実施の形態5)
《不揮発性メモリユニットの概略構成(変形例)》
図15は、本発明の実施の形態5による半導体装置(記憶装置)において、それに含まれる不揮発性メモリユニットの構成例を示す概略図である。図15に示す不揮発性メモリユニットMEMU3は、図1の構成例と比較して、外部データの書き込み単位が異なっている。これ以外の部分に関しては、図1の場合と同様であるため、詳細な説明は省略する。図1では、外部書き込みデータが分割されて2個のフラッシュメモリモジュールに書き込まれる例を示したが、図15では、外部書き込みデータが1個のフラッシュメモリモジュールに書き込まれている。
(Embodiment 5)
<< Schematic Configuration of Nonvolatile Memory Unit (Modification) >>
FIG. 15 is a schematic diagram showing a configuration example of a nonvolatile memory unit included in a semiconductor device (storage device) according to Embodiment 5 of the present invention. The nonvolatile memory unit MEMU3 shown in FIG. 15 differs from the configuration example of FIG. 1 in the external data writing unit. Since other parts are the same as those in FIG. 1, detailed description thereof is omitted. Although FIG. 1 shows an example in which external write data is divided and written in two flash memory modules, FIG. 15 shows external write data written in one flash memory module.

ここで、例えば、複数の外部書き込みデータがシリアルに入力されてくるような場合に、この各外部書き込みデータが、FMD1のデータ領域DT[1]→FMD2のデータ領域DT[2]→FMD1のデータ領域DT[3]→FMD2のデータ領域DT[4],…といったように、FMD1,FMD2に対して交互に書き込まれる。また、例えば、DT[2]へ書き込みを行った後、DT[3]への書き込みを行う前に、FMD3のデータ領域(パリティ領域)PT[1,2]に対してDT[1]のデータとDT[2]のデータのパリティデータを書き込む。   Here, for example, when a plurality of external write data are input serially, each external write data is the data area DT [1] of the FMD1 → data area DT [2] of the FMD2 → data of the FMD1. The data is written alternately in the FMD1 and FMD2, as in the data area DT [4] of the area DT [3] → FMD2. Also, for example, after writing to DT [2], before writing to DT [3], the data of DT [1] with respect to the data area (parity area) PT [1,2] of FMD3 And parity data of DT [2] data are written.

このような構成例を用いると、パリティデータを生成する上で外部書き込みデータのデータフローに制限が加わる恐れはあるが、実施の形態1の場合と同様に、データの信頼性の向上が実現可能になる。   When such a configuration example is used, there is a risk that the data flow of external write data may be restricted in generating parity data, but as in the case of Embodiment 1, it is possible to improve data reliability. become.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、ここでは、フラッシュメモリ等の不揮発性メモリを例として説明を行ったが、場合によっては、所謂ストレージと呼ばれる各種外部記憶装置等に対しても同様に適用可能である。   As mentioned above, the invention made by the present inventor has been specifically described based on the embodiments. However, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. For example, here, a nonvolatile memory such as a flash memory has been described as an example. However, in some cases, the present invention can be similarly applied to various external storage devices called so-called storages.

ANT アンテナ
BAT バッテリ
BL ビット線
BSEL サブビット線選択回路
BSIF バスインタフェース回路
CD 外部カード
CDEC 列デコード回路
CG コントロールゲート
CPU 中央処理ユニット
DI データ入力信号
DMAC ダイレクトメモリアクセスコントローラ
DO データ出力信号
DSPY ディスプレイ
DT データ領域
DV ドライバ回路
Din,Dout,XTAL,EXTAL,STBY,RES、Vcc,Vss 外部端子
ES 消去スタンプ領域
FCHKU フラッシュチェックユニット
FMD 不揮発性メモリモジュール(フラッシュメモリモジュール)
FMDU フラッシュメモリモジュールユニット
FREU フラッシュ復元ユニット
FSEQ フラッシュシーケンサ
HBS 高速バス
IF インタフェース回路
IOBF 入出力バッファ回路
KPAD キーパッド
LBS 低速バス
LT ラッチ回路
MC メモリセル
MCU マイクロコンピュータ
MEMU 不揮発性メモリユニット
MG メモリゲート
MGL メモリゲート選択線
MMAT メモリマット
MOD 変復調回路
OBF 出力バッファ回路
OMEM 外部メモリ
PLL クロック生成回路
PORT 外部入出力ポート
PS 書き込みスタンプ領域
PT データ領域(パリティ領域)
PWU 電源ユニット
RAM ランダムアクセスメモリ
RDEC 行デコード回路
RFSYS 携帯電話システム
RMBL 読み出し系メインビット線
RSEL 読み出し列選択回路
SABK センスアンプ回路ブロック
SBL サブビット線
SL ソース線
SPK スピーカ
STG ストレージ
TMR タイマ
VGEN 内部電源生成回路
VRFY ベリファイ回路
VSA ベリファイ用センスアンプ回路
WELL ウェル領域
WL ワード線
WLT 書き込みデータラッチ回路
WMBL 書き込み系メインビット線
WSEL 書き込み列選択回路
ANT antenna BAT battery BL bit line BSEL sub bit line selection circuit BSIF bus interface circuit CD external card CDEC column decoding circuit CG control gate CPU central processing unit DI data input signal DMAC direct memory access controller DO data output signal DSPY display DT data area DV driver Circuit Din, Dout, XTAL, EXTAL, STBY, RES, Vcc, Vss External terminal ES Erase stamp area FCHKU Flash check unit FMD Non-volatile memory module (flash memory module)
FMDU flash memory module unit FREU flash restoration unit FSEQ flash sequencer HBS high-speed bus IF interface circuit IOBF I / O buffer circuit KPAD keypad LBS low-speed bus LT latch circuit MC memory cell MCU microcomputer MEMU nonvolatile memory unit MG memory gate MGL memory gate selection Line MMAT Memory mat MOD Modulation / demodulation circuit OBF Output buffer circuit OMEM External memory PLL Clock generation circuit PORT External input / output port PS Write stamp area PT Data area (parity area)
PWU Power supply unit RAM Random access memory RDEC Row decoding circuit RFSYS Mobile phone system RMBL Read system main bit line RSEL Read column selection circuit SABK Sense amplifier circuit block SBL Sub bit line SL Source line SPK Speaker STG Storage TMR Timer VGEN Internal power generation circuit VRFY Verify Circuit VSA verify sense amplifier circuit WELL well region WL word line WLT write data latch circuit WMBL write system main bit line WSEL write column selection circuit

Claims (16)

N(Nは3以上の整数)個の不揮発性メモリモジュールを備え、
前記N個の不揮発性メモリモジュールのそれぞれは、
自身の動作電源を生成する内部電源生成回路と、
それぞれJ(Jは1以上の整数)ビットの書き込みデータが書き込まれる第1および第2書き込みデータ領域と、
前記第1書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ所定の書き込み用識別子が書き込まれる第1書き込みスタンプ領域と、
前記第2書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ前記書き込み用識別子が書き込まれる第2書き込みスタンプ領域とを備え、
K(KはJより大きい整数)ビットの第M(Mは1および2)外部書き込みデータが入力された際に、
前記N個の不揮発性メモリモジュール内の(N−1)個の不揮発性メモリモジュールにおける前記第M書き込みデータ領域を対象に、前記第M外部書き込みデータを前記Jビット単位で分割することで生成した前記(N−1)個の第M分割書き込みデータを、互いに重複しない前記(N−1)個の第1期間でそれぞれ書き込み、更に、当該(N−1)個の不揮発性メモリモジュールにおける前記第M書き込みスタンプ領域を対象に、前記(N−1)個の前記第1期間で前記書き込み用識別子をそれぞれ書き込む第1処理と、
前記第1処理で非対象とされる1個の不揮発性メモリモジュールの前記第M書き込みデータ領域を対象に、前記(N−1)個の前記第M分割書き込みデータに対する各ビット毎のパリティ演算結果から得られる前記Jビットの第Mパリティデータを、前記(N−1)個の前記第1期間とは重複しない第2期間で書き込み、更に、当該1個の不揮発性メモリモジュールにおける前記第M書き込みスタンプ領域を対象に、前記第2期間で前記書き込み用識別子を書き込む第2処理とを実行することを特徴とする半導体装置。
N (N is an integer of 3 or more) non-volatile memory modules,
Each of the N nonvolatile memory modules is
An internal power generation circuit that generates its own operating power;
First and second write data areas in which write data of J (J is an integer of 1 or more) bits are written,
A first write stamp area in which a predetermined write identifier is written before and after writing to the first write data area;
A second write stamp area in which the write identifier is written before and after the start of writing to the second write data area,
When Kth (K is an integer greater than J) bit Mth (M is 1 and 2) external write data is input,
The M-th external write data is generated by dividing the M-th external write data in the J-bit unit for the M-th write data area in the (N-1) non-volatile memory modules in the N non-volatile memory modules. The (N-1) M-th divided write data is written in the (N-1) first periods that do not overlap each other, and the (N-1) non-volatile memory modules in the first (N-1) non-volatile memory modules. A first process of writing the write identifiers in the (N−1) first periods for the M write stamp area;
Parity calculation result for each bit with respect to the (N-1) M-th divided write data for the M-th write data area of one nonvolatile memory module that is not targeted in the first process. The J-bit M-th parity data obtained from (1) is written in a second period that does not overlap the (N−1) first periods, and the M-th write in the one nonvolatile memory module A semiconductor device, wherein a second process of writing the write identifier in the second period is performed on a stamp region.
請求項1記載の半導体装置において、さらに、
前記N個の不揮発性メモリモジュールの前記第1および第2書き込みスタンプ領域を対象に読み出し動作を行い、前記書き込み用識別子の状態によって前記N個の不揮発性メモリモジュールのいずれか1個に書き込み動作時の異常が生じたか否かを判別するチェック回路を有することを特徴とする半導体装置。
The semiconductor device according to claim 1, further comprising:
A read operation is performed on the first and second write stamp areas of the N nonvolatile memory modules, and a write operation is performed on any one of the N nonvolatile memory modules according to the state of the write identifier. A semiconductor device comprising a check circuit for determining whether or not an abnormality has occurred.
請求項2記載の半導体装置において、さらに、
前記チェック回路で異常と判別された1個の不揮発性メモリモジュールを除く(N−1)個の不揮発性メモリモジュールの前記第1書き込み領域を対象に読み出し動作を行い、当該読み出しデータに対してパリティ演算を行うことで当該1個の不揮発性メモリモジュールにおける前記第1書き込み領域のデータを復元し、更に、当該(N−1)個の不揮発性メモリモジュールの前記第2書き込み領域を対象に読み出し動作を行い、当該読み出しデータに対してパリティ演算を行うことで当該1個の不揮発性メモリモジュールにおける前記第2書き込み領域のデータを復元するデータ復元回路を有することを特徴とする半導体装置。
3. The semiconductor device according to claim 2, further comprising:
A read operation is performed on the first write areas of (N−1) non-volatile memory modules excluding one non-volatile memory module determined to be abnormal by the check circuit, and the read data is subjected to parity. By performing an operation, data in the first write area in the one nonvolatile memory module is restored, and further, a read operation is performed on the second write areas in the (N−1) nonvolatile memory modules. And a data restoration circuit for restoring the data in the second write area in the one nonvolatile memory module by performing a parity operation on the read data.
請求項2記載の半導体装置において、
前記チェック回路は、前記半導体装置に対して電源投入が行われたことをトリガとして動作を行うことを特徴とする半導体装置。
The semiconductor device according to claim 2,
2. The semiconductor device according to claim 1, wherein the check circuit operates by using a power-on to the semiconductor device as a trigger.
請求項1記載の半導体装置において、
前記第2処理で前記第1パリティデータが書き込まれる前記1個の不揮発性メモリモジュールと前記第2処理で前記第2パリティデータが書き込まれる前記1個の不揮発性メモリモジュールとは異なっていることを特徴とする半導体装置。
The semiconductor device according to claim 1,
The one nonvolatile memory module in which the first parity data is written in the second process is different from the one nonvolatile memory module in which the second parity data is written in the second process. A featured semiconductor device.
請求項1記載の半導体装置において、
前記Nの値は3であることを特徴とする半導体装置。
The semiconductor device according to claim 1,
The semiconductor device according to claim 1, wherein the value of N is 3.
請求項1記載の半導体装置において、
前記N個の不揮発性メモリモジュールのそれぞれは、
前記第1書き込みデータ領域に対してデータの消去動作を行う際に、当該消去動作の開始前と終了後にそれぞれ所定の消去用識別子が書き込まれる第1消去スタンプ領域と、
前記第2書き込みデータ領域に対してデータの消去動作を行う際に、当該消去動作の開始前と終了後にそれぞれ前記消去用識別子が書き込まれる第2消去スタンプ領域とを備え、
前記N個の不揮発性メモリモジュールに対する消去動作ならびに当該消去動作に伴う前記第1消去スタンプ領域および/または第2消去スタンプ領域への書き込み動作は、前記N個の不揮発性メモリモジュール毎に重複しない期間で行われることを特徴とする半導体装置。
The semiconductor device according to claim 1,
Each of the N nonvolatile memory modules is
A first erasure stamp area in which a predetermined erasure identifier is written before and after the start of the erasure operation when performing the data erasure operation on the first write data area;
A second erasure stamp area in which the erasure identifier is written before and after the erasure operation is performed when performing the data erasure operation on the second write data area,
The erasing operation for the N nonvolatile memory modules and the writing operation to the first erasing stamp area and / or the second erasing stamp area associated with the erasing operation are not overlapped for each of the N nonvolatile memory modules. A semiconductor device, wherein
請求項1記載の半導体装置において、
前記N個の不揮発性メモリモジュールは、1個の半導体チップ上に搭載され、
当該半導体チップ上には、更に、前記N個の不揮発性メモリモジュールをアクセス対象として所定の演算処理を実行するプロセッサが搭載されることを特徴とする半導体装置。
The semiconductor device according to claim 1,
The N nonvolatile memory modules are mounted on one semiconductor chip,
A semiconductor device, further comprising a processor for executing predetermined arithmetic processing on the N non-volatile memory modules as an access target on the semiconductor chip.
N(Nは3以上の整数)個のフラッシュメモリモジュールを備え、
前記N個のフラッシュメモリモジュールのそれぞれは、
自身の動作電源を生成する内部電源生成回路と、
消去命令に応じて内部のデータが一括して消去される消去領域と、
前記消去領域内に設けられ、それぞれJ(Jは1以上の整数)ビットの書き込みデータが書き込まれる第1および第2書き込みデータ領域と、
前記消去領域内に設けられ、前記第1書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ所定の書き込み用識別子が書き込まれる第1書き込みスタンプ領域と、
前記消去領域内に設けられ、前記第2書き込みデータ領域への書き込み開始前と書き込み終了後にそれぞれ前記書き込み用識別子が書き込まれる第2書き込みスタンプ領域と、
前記消去領域内に設けられ、当該消去領域に対する消去動作の開始前と終了後にそれぞれ所定の消去用識別子が書き込まれる消去スタンプ領域とを備え、
前記N個のフラッシュメモリモジュールに対する消去動作ならびに当該消去動作に伴う前記消去スタンプ領域への書き込み動作は、前記N個のフラッシュメモリモジュール毎に重複しない期間で行われ、
K(KはJより大きい整数)ビットの第M(Mは1および2)外部書き込みデータが入力された際に、
前記N個のフラッシュメモリモジュール内の(N−1)個のフラッシュメモリモジュールにおける前記第M書き込みデータ領域を対象に、前記第M外部書き込みデータを前記Jビット単位で分割することで生成した前記(N−1)個の第M分割書き込みデータを、互いに重複しない前記(N−1)個の第1期間でそれぞれ書き込み、更に、当該(N−1)個のフラッシュメモリモジュールにおける前記第M書き込みスタンプ領域を対象に、前記(N−1)個の前記第1期間で前記書き込み用識別子をそれぞれ書き込む第1処理と、
前記第1処理で非対象とされる1個のフラッシュメモリモジュールの前記第M書き込みデータ領域を対象に、前記(N−1)個の前記第M分割書き込みデータに対する各ビット毎のパリティ演算結果から得られる前記Jビットの第Mパリティデータを、前記(N−1)個の前記第1期間とは重複しない第2期間で書き込み、更に、当該1個のフラッシュメモリモジュールにおける前記第M書き込みスタンプ領域を対象に、前記第2期間で前記書き込み用識別子を書き込む第2処理とを実行することを特徴とする半導体装置。
N (N is an integer of 3 or more) flash memory modules,
Each of the N flash memory modules is
An internal power generation circuit that generates its own operating power;
An erase area where internal data is erased in batch according to an erase command,
First and second write data areas provided in the erase area, each of which is written with J (J is an integer of 1 or more) bits of write data;
A first write stamp area provided in the erase area, to which a predetermined write identifier is written before and after writing to the first write data area;
A second write stamp area provided in the erase area, to which the write identifier is written before and after writing to the second write data area, and
An erasure stamp area provided in the erasure area, each having a predetermined erasure identifier written before and after the start of an erasure operation on the erasure area,
The erase operation for the N flash memory modules and the write operation to the erase stamp area accompanying the erase operation are performed in a period that does not overlap for each of the N flash memory modules,
When Kth (K is an integer greater than J) bit Mth (M is 1 and 2) external write data is input,
The (M−1) th write data area in (N−1) flash memory modules in the N flash memory modules is generated by dividing the Mth external write data in units of the J bits. N-1) Mth divided write data are written in the (N-1) first periods that do not overlap each other, and the Mth write stamp in the (N-1) flash memory modules. A first process for writing the identifiers for writing in the (N−1) first periods for each region;
From the parity calculation result for each bit with respect to the (N−1) Mth divided write data for the Mth write data area of one flash memory module that is not targeted in the first process. The obtained J-bit M-th parity data is written in a second period that does not overlap the (N-1) first periods, and the M-th write stamp area in the one flash memory module. And a second process of writing the write identifier in the second period.
請求項9記載の半導体装置において、さらに、
前記N個のフラッシュメモリモジュールの前記第1および第2書き込みスタンプ領域と前記消去スタンプ領域を対象に読み出し動作を行い、前記書き込み用識別子と前記消去用識別子の状態によって前記N個のフラッシュメモリモジュールのいずれか1個に書き込み動作時かあるいは消去動作時の異常が生じたか否かを判別するチェック回路を有することを特徴とする半導体装置。
The semiconductor device according to claim 9, further comprising:
A read operation is performed on the first and second write stamp areas and the erase stamp area of the N flash memory modules, and the N flash memory modules are controlled according to the state of the write identifier and the erase identifier. A semiconductor device comprising: a check circuit that determines whether any one of the abnormalities during a write operation or an erase operation has occurred.
請求項10記載の半導体装置において、さらに、
前記チェック回路で異常と判別された1個のフラッシュメモリモジュールを除く(N−1)個のフラッシュメモリモジュールの前記第1書き込み領域を対象に読み出し動作を行い、当該読み出しデータに対してパリティ演算を行うことで当該1個のフラッシュメモリモジュールにおける前記第1書き込み領域のデータを復元し、更に、当該(N−1)個のフラッシュメモリモジュールの前記第2書き込み領域を対象に読み出し動作を行い、当該読み出しデータに対してパリティ演算を行うことで当該1個のフラッシュメモリモジュールにおける前記第2書き込み領域のデータを復元するデータ復元回路を有することを特徴とする半導体装置。
The semiconductor device according to claim 10, further comprising:
A read operation is performed on the first write areas of (N−1) flash memory modules excluding one flash memory module determined to be abnormal by the check circuit, and a parity operation is performed on the read data. To restore the data of the first write area in the one flash memory module, and further perform a read operation on the second write area of the (N-1) flash memory modules, A semiconductor device comprising a data restoration circuit for restoring data in the second write area in the one flash memory module by performing a parity operation on read data.
請求項10記載の半導体装置において、
前記書き込み用識別子は、2ビットの情報であり、前記消去領域に対して消去動作が行われた際に共に第1論理レベルとなり、書き込み開始前に一方のビットが第2論理レベルとなり、書き込み終了後に他方のビットが前記第2論理レベルとなり、
前記消去用識別子は、2ビットの情報であり、前記消去領域に対する消去動作の開始前に一方のビットが前記第2論理レベルとなり、消去動作中に両方のビットが共に前記第1論理レベルとなり、消去動作の終了後に他方のビットが前記第2論理レベルとなり、
前記チェック回路は、前記書き込み用識別子の前記一方のビットが前記第2論理レベルであり、かつ前記他方のビットが前記第1論理レベルである第1の場合か、前記書き込み用識別子の前記一方のビットが前記第1論理レベルであり、かつ前記他方のビットが前記第2論理レベルである第2の場合か、前記消去用識別子の前記一方のビットが前記第2論理レベルである第3の場合か、前記消去用識別子の前記両方のビットが共に前記第1論理レベルである第4の場合に異常と判別することを特徴とする半導体装置。
The semiconductor device according to claim 10.
The write identifier is 2-bit information, and when the erase operation is performed on the erase area, both become the first logic level, and one bit becomes the second logic level before the start of writing, and the writing ends. Later the other bit becomes the second logic level,
The erasure identifier is 2-bit information, and one bit becomes the second logic level before the start of the erase operation for the erase area, and both bits become the first logic level during the erase operation, After the erase operation ends, the other bit becomes the second logic level,
The check circuit is configured in the first case where the one bit of the write identifier is the second logic level and the other bit is the first logic level, or the one of the write identifiers A second case where the bit is the first logic level and the other bit is the second logic level, or a third case where the one bit of the erasure identifier is the second logic level Alternatively, the semiconductor device is determined to be abnormal in a fourth case in which both the bits of the erasure identifier are both at the first logic level.
請求項10記載の半導体装置において、
前記チェック回路は、更に、前記N個のフラッシュメモリモジュールの前記第1書き込みスタンプ領域における前記書き込み用識別子が共に同一か否かを判別し、共に同一で無い場合には異常と判別し、前記N個のフラッシュメモリモジュールの前記第2書き込みスタンプ領域における前記書き込み用識別子が共に同一か否かを判別し、共に同一で無い場合には異常と判別する処理を実行することを特徴とする半導体装置。
The semiconductor device according to claim 10.
The check circuit further determines whether or not the write identifiers in the first write stamp areas of the N flash memory modules are the same, and if both are not the same, determines that there is an abnormality. A semiconductor device characterized in that it is determined whether or not the write identifiers in the second write stamp areas of a plurality of flash memory modules are the same, and if both are not the same, a process of determining an abnormality is executed.
請求項9記載の半導体装置において、
前記第2処理で前記第1パリティデータが書き込まれる前記1個のフラッシュメモリモジュールと前記第2処理で前記第2パリティデータが書き込まれる前記1個のフラッシュメモリモジュールとは異なっていることを特徴とする半導体装置。
The semiconductor device according to claim 9.
The one flash memory module in which the first parity data is written in the second process is different from the one flash memory module in which the second parity data is written in the second process. Semiconductor device.
請求項9記載の半導体装置において、
前記Nの値は3であることを特徴とする半導体装置。
The semiconductor device according to claim 9.
The semiconductor device according to claim 1, wherein the value of N is 3.
請求項9記載の半導体装置において、
前記N個のフラッシュメモリモジュールは、1個の半導体チップ上に搭載され、
当該半導体チップ上には、更に、前記N個のフラッシュメモリモジュールをアクセス対象として所定の演算処理を実行するプロセッサが搭載されることを特徴とする半導体装置。
The semiconductor device according to claim 9.
The N flash memory modules are mounted on one semiconductor chip,
A semiconductor device is further provided on the semiconductor chip, wherein a processor that executes predetermined arithmetic processing with the N flash memory modules as an access target is mounted.
JP2011148467A 2011-07-04 2011-07-04 Semiconductor device Withdrawn JP2013016228A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011148467A JP2013016228A (en) 2011-07-04 2011-07-04 Semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011148467A JP2013016228A (en) 2011-07-04 2011-07-04 Semiconductor device

Publications (1)

Publication Number Publication Date
JP2013016228A true JP2013016228A (en) 2013-01-24

Family

ID=47688784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011148467A Withdrawn JP2013016228A (en) 2011-07-04 2011-07-04 Semiconductor device

Country Status (1)

Country Link
JP (1) JP2013016228A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113205839A (en) * 2020-01-31 2021-08-03 爱思开海力士有限公司 Memory system for verifying read data reliability by clock modulation and method of operating the same
US11803334B2 (en) 2019-09-02 2023-10-31 SK Hynix Inc. Memory controller and operating method thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11803334B2 (en) 2019-09-02 2023-10-31 SK Hynix Inc. Memory controller and operating method thereof
CN113205839A (en) * 2020-01-31 2021-08-03 爱思开海力士有限公司 Memory system for verifying read data reliability by clock modulation and method of operating the same
CN113205839B (en) * 2020-01-31 2023-11-14 爱思开海力士有限公司 Memory system for verifying read data reliability by clock modulation and method of operating the same

Similar Documents

Publication Publication Date Title
CN101853699B (en) Nonvolatile memory device and operating method thereof
KR101772020B1 (en) Nonvolatile memory device, operation method thereof, and memory system having the same
US8711628B2 (en) Use of emerging non-volatile memory elements with flash memory
TWI391936B (en) Memory device architectures and operation
JP5426711B2 (en) MEMORY CONTROLLER AND NONVOLATILE MEMORY DEVICE
US9263155B2 (en) Data storing system and operating method thereof
US8607120B2 (en) Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same
US8392794B2 (en) Non-volatile memory device and data processing method thereof
US20110216587A1 (en) Nonvolatile memory device, methods of programing the nonvolatile memory device and memory system including the nonvolatile memory device
US9998151B2 (en) Data storage device and operating method thereof
US9472297B2 (en) Semiconductor memory device
CN104143357A (en) Memory system, semiconductor memory device and operating method thereof
US10565052B2 (en) Data protecting method, memory control circuit unit and memory storage apparatus
CN104778974A (en) Serial memory device alert of an external host to completion of an internally self-timed operation
US10678698B2 (en) Memory storage device, control circuit and method including writing discontinuously arranged data into physical pages on word lines in different memory sub-modules
CN103811065A (en) Non-volatile memory system
US9588708B2 (en) Semiconductor memory device, operating method thereof, and data storage device including the same
CN105280235A (en) Semiconductor memory device, memory system having the same and operating method thereof
US7310277B2 (en) Non-volatile semiconductor storage device with specific command enable/disable control signal
JP2013016228A (en) Semiconductor device
KR102227196B1 (en) Data storing system and operating method thereof
US20120106254A1 (en) Memory system
US20110228605A1 (en) Nonvolatile memory
JP2013030251A (en) Memory system
US8037231B2 (en) Memory architecture for separation of code and data in a memory device

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20141007