JP6185589B2 - 半導体装置および半導体装置におけるデータ秘匿方法 - Google Patents

半導体装置および半導体装置におけるデータ秘匿方法 Download PDF

Info

Publication number
JP6185589B2
JP6185589B2 JP2015531706A JP2015531706A JP6185589B2 JP 6185589 B2 JP6185589 B2 JP 6185589B2 JP 2015531706 A JP2015531706 A JP 2015531706A JP 2015531706 A JP2015531706 A JP 2015531706A JP 6185589 B2 JP6185589 B2 JP 6185589B2
Authority
JP
Japan
Prior art keywords
data
storage unit
bit
scrambled
twin
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015531706A
Other languages
English (en)
Other versions
JPWO2015022741A1 (ja
Inventor
誠二 澤田
誠二 澤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas 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
Publication of JPWO2015022741A1 publication Critical patent/JPWO2015022741A1/ja
Application granted granted Critical
Publication of JP6185589B2 publication Critical patent/JP6185589B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0466Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS]
    • G11C16/0475Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS] comprising two or more independent storage sites which store independent data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1012Data reordering during input/output, e.g. crossbars, layers of multiplexers, shifting or rotating
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Read Only Memory (AREA)

Description

本発明は、半導体装置に関し、たとえば相補的なデータを保持する2つの不揮発性メモリセルを含む半導体装置に関する。
従来から、記憶データの秘匿性を高める技術が知られている。
たとえば、特開2008−204507公報(特許文献1)の半導体装置は、乱数発生部により生成されたスクランブル情報を用いて、書込みデータに対しスクランブル処理を施してから、データ記憶部に書込みを行う方式が記載されている。スクランブル情報は、揮発性メモリであるSRAMに記憶されるので、半導体装置の電源オフ状態においてデータ記憶部に記憶データが残っていても、電源オフ時にスクランブル情報が消去されるためにデータ記憶部の記憶データを正しく読出すことができなくなる。これにより記憶データの秘匿性の向上を図ることができる。
また、特開2010−277584号公報(特許文献2)にも、書込みデータをスクランブル処理して書込み、読出した後は、ディスクランブル処理をする不揮発性記憶装置が記載されている。
特開2008−204507公報 特開2010−277584号公報
ところで、相補的なデータを保持する2つのセルで構成されるツインセルにおいて、ツインセルデータの消去によって、2つのセルの閾値電圧をともに小さい状態にする。この際に、ツインセルデータ消去前の書込み状態における2つのセルの閾値電圧の差が、ツインセルデータ消去後も残る可能性が想定される。そのため、ツインセルデータを消去したにも関わらず、ツインセルデータ消去前の書込状態が読出され、セキュリティ上問題となる可能性がある。
しかしながら、特許文献1に記載の方式では、電源をオフにするとデータ記憶部の記憶データは読出されなくなるという問題がある。
また、特許文献2に記載の方式では、スクランブル処理された書込みデータとともに、書込み単位ごとに異なるビットパターンである書込み済みフラグと、誤り訂正符号とを記憶することによって、書込み中の電源遮断などの異常を検出することを目的としており、上述のようなセキュリティ上の問題を解決することができない。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかであろう。
本発明の一実施形態の半導体装置によれば、スクランブル部は、第1の記憶部内のツインセルに書込むデータをスクランブルデータを用いてスクランブル処理する。書込み部は、第1の記憶部内のツインセルにスクランブル処理後の書込みデータを書込む。書込み部は、第2の記憶部内のメモリセルにスクランブルデータを書込む。ディスクランブル部は、第2の記憶部から読出されたスクラブルデータを用いて、第1の記憶部から読出されたデータをディスクランブル処理する。
本発明の一実施形態によれば、ツインセルデータ消去前の書込状態が読出されるのを回避することができる。
第1の実施形態の半導体装置の構成を表わす図である。 第1の実施形態の半導体装置におけるメモリアレイからのツインセルデータの消去処理の手順を表わすフローチャートである。 の実施形態のマイクロコンピュータの構成を表わす図である。 フラッシュメモリモジュールの構成を表わす図である。 (a)は、スプリットゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。(b)は、ホットキャリア書込み方式を用いるスタックド・ゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。(c)は、はFNトンネル書込み方式を用いるスタックド・ゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。 (a)は、ツインセルデータが“0”を記憶する状態を表わす図である。(b)は、ツインセルデータが“1”を記憶する状態を表わす図である。(c)は、ツインセルデータのイニシャライズ状態を表わす図である。 (a)は、ツインセルデータ“0”を消去する際のシーケンスを表わす図である。(b)は、ツインセルデータ“1”を消去する際のシーケンスを表わす図である。 第2の実施形態のツインセルデータの読出し系、書込み系、消去系の詳細な回路構成を表わす図である。 第3の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。 第4の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる拡張部の構成を表わす図である。 第5の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。 (a)は、シングルセルが、シングルセルデータ“0”を記憶する状態を表わす図である。(b)は、シングルセルが、シングルセルデータ“1”を記憶する状態を表わす図である。 第6の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。 (a)は、3個のシングルセルが、シングルセルデータ“0”を記憶する状態を表わす図である。(b)は、3個のシングルセルが、シングルセルデータ“1”を記憶する状態を表わす図である。 読出し列選択回路&センスアンプに含まれるセンスアンプを表わす図である。 第7の実施形態の正規部と拡張部の構成を表わす図である。 第7の実施形態の変形例の正規部と拡張部の構成を表わす図である。 第8の実施形態のメモリアレイの1消去ブロック構成を表わす図である。 第8の実施形態における複数のソース線の活性化タイミングを表わす図である。
以下、本発明の実施の形態について、図面を用いて説明する。
[第1の実施形態]
図1は、第1の実施形態の半導体装置の構成を表わす図である。
この半導体装置500は、第1の記憶部502と、第2の記憶部503と、スクランブル部501と、書込み部509と、書込み部511と、ディスクランブル部504とを備える。
第1の記憶部502は、ツインセル505を含む。ツインセル505は、メモリセル506と、メモリセル507とからなる。メモリセル506とメモリセル507は、電気的に書換え可能である。ツインセル505は、メモリセル506とメモリセル507の閾値電圧の相違によって相補的に1ビットのデータを記憶する。
第2の記憶部503は、電気的に書き換え可能なメモリセル510を含む。
第1の記憶部502内のツインセル505のデータが消去されるときには、第2の記憶部503内のメモリセル510のデータも消去される。
スクランブル部501は、第1の記憶部502のツインセル505に書込むデータをスクランブルデータを用いてスクランブル処理する。
書込み部509は、第1の記憶部502内のツインセル505にスクランブル処理後の書込みデータを書込む。
書込み部511は、第2の記憶部503内のメモリセル510にスクランブルデータを書込む。
ディスクランブル部504は、第2の記憶部503から読出されたスクラブルデータを用いて、第1の記憶部502から読出されたデータをディスクランブル処理する。
図2は、第1の実施形態の半導体装置における第1の記憶部への書込みデータの書込み処理および読出し処理の手順を表わすフローチャートである。
まず、半導体装置は、書込み要求信号を受信する(ステップS101)。
スクランブル部501は、第1の記憶部502のツインセル505に書込むデータをスクランブルデータを用いてスクランブル処理する(ステップS102)。
次に、書込み部509は、第1の記憶部502内のツインセル505にスクランブル処理後の書込みデータを書込む(ステップS103)。
次に、書込み部511は、第2の記憶部503内のメモリセル510にスクランブルデータを書込む(ステップS104)。
次に、半導体装置は、読出し要求信号を受信する(ステップS105)。
次に、ディスクランブル部504は、第2の記憶部503から読出されたスクラブルデータを用いて、第1の記憶部502から読出されたデータをディスクランブル処理する(ステップS106)。
以上のように、本実施の形態によれば、スクランブル処理後の書込みデータが消去されたとしても、スクランブル処理後の書込みデータとスクランブルデータの両方が読出されない限り、書込みデータが復元されないようにすることができる。
[第2の実施形態]
本実施の形態の半導体装置は、マイクロコンピュータである。
(マイクロコンピュータ)
図3は、第2の実施形態のマイクロコンピュータ1の構成を表わす図である。
図3に示されるマイクロコンピュータ(MCU)1は、たとえば相補型MOS集積回路製造技術などによって、単結晶シリコンのような1個の半導体チップに形成される。
マイクロコンピュータ1は、特に制限されないが、高速バスHBUSと周辺バスPBUSを有する。高速バスHBUSと周辺バスPBUSは、特に制限されないが、それぞれデータバス、アドレスバスおよびコントロールバスを有する。2個のバスを設けることによって、共通バスに全ての回路を共通接続する場合に比べてバスの負荷を軽くし、高速アクセス動作を保証することができる。
高速バスHBUSには、命令制御部と実行部を備えて命令を実行する中央処理装置(CPU)2、ダイレクトメモリアクセスコントローラ(DMAC)3、高速バスHBUSと周辺バスPBUSとのバスインタフェース制御若しくはバスブリッジ制御を行うバスインタフェース回路(BIF)4が接続される。
高速バスHBUSには、さらに、中央処理装置2のワーク領域などに利用されるランダムアクセスメモリ(RAM)5、およびデータやプログラムを格納する不揮発性メモリモジュールとしてのフラッシュメモリモジュール(FMDL)6が接続される。
周辺バスPBUSには、フラッシュメモリモジュール(FMDL)6に対するコマンドアクセス制御を行うフラッシュシーケンサ(FSQC)7、外部入出力ポート(PRT)8,9、タイマ(TMR)10、およびマイクロコンピュータ1を制御するための内部のクロックCLKを生成するクロックパルスジェネレータ(CPG)11が接続される。
さらに、マイクロコンピュータ1は、XTAL/EXTALに発振子が接続され、または外部クロックが供給されるクロック端子、スタンバイ状態を指示する外部ハードウェアスタンバイ端子STB、リセットを指示する外部リセット端子RES、外部電源端子Vcc、外部接地端子Vssを備える。
ここでは、ロジック回路としてのフラッシュシーケンサ7と、アレイ構成のフラッシュメモリモジュール6は、別CADツールを用いて設計されているため、便宜上別々の回路ブロックとして図示されているが、双方併せて一つのフラッシュメモリを構成する。フラッシュメモリモジュール6は、読出し専用の高速アクセスポート(HACSP)を介して高速バスHBUSに接続される。CPU2またはDMAC3は、高速バスHBUSから高速アクセスポートを介してフラッシュメモリモジュール6をリードアクセスすることができる。CPU2またはDMAC3は、フラッシュメモリモジュール6に対して書込みおよび初期化のアクセスを行うときは、バスインタフェース4を介して周辺バスPBUS経由でフラッシュシーケンサ7にコマンドを発行する。これによってフラッシュシーケンサ7が周辺バスPBUSから低速アクセスポート(LACSP)を通じてフラッシュメモリモジュールの初期化や書込み動作の制御が行われる。
(フラッシュメモリモジュール)
図4は、フラッシュメモリモジュール6の構成を表わす図である。
フラッシュメモリモジュール6は、1ビットの情報の記憶を2個の不揮発性メモリセルを用いて行う。すなわち、メモリアレイ(MARY)19は、夫々書換え可能な2個の不揮発性メモリセルMCP,MCNを1ビットのツインセルとして複数個備える。図4には、代表的に1対だけ図示されている。本明細書では、メモリセルMCPをポジティブセル、メモリセルMCNをネガティブセルと呼ぶ。
揮発性メモリセルMCP,MCNは、たとえば、図5(a)に例示されるスプリットゲート型フラッシュメモリ素子である。このメモリ素子は、ソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介して配置されたコントロールゲートCGとメモリゲートMGを有する。メモリゲートMGとゲート絶縁膜の間にはシリコンナイトライドなどの電荷トラップ領域(SiN)が配置される。選択ゲート側のソースまたはドレイン領域は、ビット線BLに接続され、メモリゲートMG側のソースまたはドレイン領域はソース線SLに接続される。
メモリセルの閾値電圧Vthを下げるにはBL=Hi−Z(高インピーダンス状態)、CG=Open、MG=−10V、SL=6、WELL=0Vとし、ウェル領域(WELL)とメモリゲートMG間の高電界によって電荷トラップ領域(SiN)からウェル領域(WELL)に電子が引き抜かれる。この処理単位はメモリゲートMGを共有する複数メモリセルとされる。
メモリセルの閾値電圧Vthを上げるにはBL=0V、CG=0.9V、MG=10V、SL=6、WELL=0Vとし、ソース線SLからビット線BLに書込み電流を流し、それによってコントロールゲートCGとメモリゲートMGの境界部分で発生するホットエレクトロンが電荷トラップ領域(SiN)に注入される。電子の注入はビット線電流を流すか否かによって決まるからこの処理はビット単位で制御される。
読出しはBL=1.5V、CG=1.5V,MG=0V、SL=0V、WELL=0Vで行われる。メモリセルの閾値電圧Vthが低ければメモリセルはオン状態にされ、閾値電圧Vthが高ければオフ状態にされる。
メモリ素子はスプリットゲート型フラッシュメモリ素子に限定されず、図5(b),図5(c)に例示されるスタックド・ゲート型フラッシュメモリ素子であってよい。このメモリ素子はソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介してフローツイングゲートFGとコントロールゲートWLがスタックされて構成される。図5(b)では、ホットキャリア書込み方式によって閾値電圧Vthを上げ、ウェル領域WELLへの電子の放出によって閾値電圧Vthを下げる。図5(c)では、FNトンネル書込み方式によって閾値電圧Vthを上げ、ビット線BLへの電子の放出によって閾値電圧Vthを下げる。
上述のメモリゲートMG、コントロールゲートCG、ソース線SL、WELL、ビット線BLへ与える電圧は、フラッシュシーケンサ7の制御によって、電源回路(VPG)31で生成されて供給される。
以下の説明では、メモリ素子がスプリットゲート型フラッシュメモリ素子であるとして説明する。
不揮発性メモリセルMCP,MCNから成る一つのツインセルによる情報記憶は不揮発性メモリセルMCP,MCNに相補データを格納することによって行う。
すなわち、メモリセルMCP,MCNのそれぞれは、セルデータ“1”(低閾値電圧状態;閾値電圧が消去ベリファイレベルよりも小さい状態)またはセルデータ“0”(高閾値電圧状態;閾値電圧が消去ベリファイレベル以上の状態)を保持することができる。
図6(a)に示すように、ツインセルデータ“0”は、ポジティブセルMCPがセルデータ“0”、ネガティブセルMCNがセルデータ“1”を保持する状態である。図6(b)に示すように、ツインセルデータ“1”はポジティブセルMCPがセルデータ“1”、ネガティブセルMCNがセルデータ“0”を保持する状態である。図6(c)に示すように、ツインセルのポジティブセルMCPおよびネガティブセルMCNが共にセルデータ“1”を保持する状態はイニシャライズ状態であり、ツインセルデータは不定になる。イニシャライズ状態は、ブランク消去状態ともいう。
ツインセルデータ“0”の状態およびツインセルデータ“1”の状態からイニシャライズ状態にすることをツインセルデータの消去という。また、イニシャライズ状態からツインセルデータ“1”保持状態またはツインセルデータ“0”保持状態にすることを通常の書込みという。
ツインセルデータの消去時には、一旦、ポジティブセルMCPとネガティブセルMCNの両方のセルデータを“0”にする処理(プレライトと呼ぶ)を行なってから、消去パルスを印加して両方のセルデータを“1”にする処理が行なわれる。プレライトでは、ポジティブセルMCPとネガティブセルMCNの両方に対して、印加する電圧を通常の書込み時よりも小さくする、または書込みパルスを与える期間を短くすることによって、通常の書込み時よりも弱い書込みを行なう。プレライトでは、閾値電圧が小さい方のメモリセルの閾値電圧の増加量が、通常の書込み時の閾値電圧Vthの増加量よりも小さい。プレライトを実施する目的は、ポジティブセルMCPとネガティブセルMCNの間の消去ストレスのばらつきを小さくし、リテンション特性悪化を抑制するためである。プレライトによるストレスが、通常の書込みによるストレスよりも大きくならないよう、プレライト時には、図5に示した一般的な通常の書込み(Vth増加)のときの電圧よりも小さい電圧が与えられる。
図7(a)は、ツインセルデータ“0”を消去する際のシーケンスを表わす図である。
図7(a)に示すように、ツインセルデータ“0”の消去を実行する場合に、プレライトによって、両方のセルが共にセルデータ“1”を保持するイニシャライズ状態となるが、消去前はポジティブセルMCPの閾値電圧Vthの方がネガティブセルMCNの閾値電圧Vthよりも大きいため、消去後でもこの関係が維持される可能性が想定される。この関係が維持された状態で読出しを実施すると、イニシャライズ状態にも関わらずポジティブセルMCPとネガティブセルMCNの閾値電圧Vthに差があるために、不定値ではなく実質的に直前のツインセルデータ“0”と等しいデータ“0”を読出してしまう可能性がある。
図7(b)は、ツインセルデータ“1”を消去する際のシーケンスを表わす図である。
図7(b)に示すように、ツインセルデータ“1”の消去を実行する場合に、プレライトによって、両方のセルが共にセルデータ“1”を保持するイニシャライズ状態となるが、消去前はネガティブセルMCNの閾値電圧Vthの方がポジティブセルMCPの閾値電圧Vthよりも大きいため、消去後でもこの関係が維持される可能性が想定される。この直前のツインセルデータ状態で読出しを実施すると、イニシャライズ状態にも関わらず、ポジティブセルMCPとネガティブセルMCNの閾値電圧Vthに差があるために、不定値ではなく実質的に直前のツインセルデータ“1”と等しいデータ“1”を読出してしまう可能性がある。
このように消去したにも関わらず、読む度にデータが定まらないような不定値ではなく、高い確率で直前のツインセルデータと等しいデータが読み出せてしまうとしたら、セキュリティ上問題となる可能性がある。本発明の実施形態では、このような可能性のある問題を解決することを目的とする。
図4に代表的に示されたツインセルのメモリセルMCP,MCNにおいて、メモリゲートMGは、共通のメモリゲート選択線MGLに接続され、コントロールゲートCGは、共通のワード線WLに接続される。実際には多数のツインセルがマトリクス配置され、行方向の配列単位で対応するメモリゲート選択線MGLおよびワード線WLに接続される。メモリセルMCP,MCNは、列単位でビット線BLP,BLNに接続される。
ワード線WLは、第1行デコーダ(RDEC1)24によって選択される。メモリゲート選択線MGLは、第2行デコーダ(RDEC2)25によって選択される。第1行デコーダ24および第2行デコーダ25による選択動作は、読出しアクセスではHACSPに供給されるアドレス情報などに従い、データの書込み動作および初期化動作ではLACSPに供給されるアドレス情報などに従う。
書込み列選択回路51は、列デコーダ(CDEC)30のデコード結果に従って、書込み列を選択し、周辺バスPBUSのデータバス(PBUS_D)にインタフェースされる入出力回路(IOBUF)29から送られる書込みデータをスクランブル部35へ出力する。列デコーダ30の選択動作は、LACSPに供給されるアドレス情報などに従う。
スクランブル部35は、書込み列選択回路51から送られる書込みデータをスクランブル処理して、スクランブル処理された書込みデータを書込みラッチ部36に送る。
書込みラッチ部36は、スクランブル処理された書込みデータをラッチし、選択された書込み列のビット線BLP,BLNのいずれかに書込み電流が流れるようにすることによって、選択された書込み列のメモリセルMCP,MCNのいずれかに対して書込みを行なう(すなわち、閾値電圧Vthを上げる)。
ベリファイ部33は、選択された書込み列のビット線BLP,BLNの電圧と、書込みラッチ部36に保持されているスクランブル処理された書込みデータに従って、メモリセルMCP,MCNの閾値電圧Vthが書込みベリファイレベルよりも大きいか否かの検証を実行する。書込みベリファイ結果は、周辺データバスPBUS_Dを通じてフラッシュシーケンサ7に供給される。
ベリファイ部33は、消去ベリファイを実行する。消去ベリファイにおいては、消去対象領域の各ツインセルを構成するメモリセルMCP,MCNの両方の閾値電圧Vthが消去ベリファイレベルよりも小さいか否かの検証が行なわれる。消去ベリファイ結果は、周辺データバスPBUS_Dを通じてフラッシュシーケンサ7に供給される。
メモリセルMCPと接続されるビット線BLPおよびメモリセルMCNに接続されるビット線BLNは、列選択&増幅部37に接続される。
列選択&増幅部37は、読出し列を選択する。列選択&増幅部37は、選択された読出し列のビット線BLP,BLNの電圧の差を増幅することによって、選択された読出し列のメモリセルMCP,MCNのツインセルデータを読出す。
ディスクランブル部38は、列選択&増幅部37から出力される読出されたツインセルデータをディスクランブル処理して、出力バッファ(OBUF)26を介して高速バスHBUSのデータバスHBUS_Dに出力する。
電源回路(VPG)31は、読出し、書込み、初期化に必要な各種動作電圧を生成する。 タイミングジェネレータ(TMG)32は、CPU2等からHACSPに供給されるアクセスストローブ信号、FSQC7からLACSPに供給されるアクセスコマンド等に従って、内部動作タイミングを規定する内部制御信号を生成する。
フラッシュメモリの制御部は、フラッシュシーケンサ(FSQC)7とタイミングジェネレータ(TMG)32によって構成される。
図8は、第2の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。
図8に示すように、第2の実施形態の半導体装置は、正規部100と、拡張部101とを備える。
正規部100は、書込み列選択回路51と、スクランブラー61_1〜61_Nと、インバータIVN_1〜IVN_Nと、書込みラッチ回路62P_1〜62P_N,62N_1〜62N_Nと、正規マットNMAT1と、読出し列選択回路&センスアンプ64と、ディスクランブラー65_1〜65_Nとを備える。
拡張部101は、スクランブルデータ発生回路52と、インバータIVE_1〜IVE_Nと、書込みラッチ回路63P_1〜63P_N,63N_1〜63N_Nと、拡張マットEMAT1と、読出し列選択回路&センスアンプ66とを備える。
スクランブラー61_1〜61_Nは、図4のスクランブル部35を構成する。ディスクランブラー65_1〜65_Nは、図4のディスクランブル部38を構成する。書込みラッチ回路62P_1〜62P_N,62N_1〜62N_N,63P_1〜63P_N,63N_1〜63N_Nは、図4の書込みラッチ部36を構成する。読出し列選択回路&センスアンプ64,66は、図4の列選択&増幅部37を構成する。
スクランブルデータ発生回路52は、NビットのスクランブルデータS1〜SNを発生する。各ビットSiは、書込みラッチ回路63P_iへ送られるとともに、インバータIVE_iを経由して書込みラッチ回路63N_iへ送られる。
スクランブルデータ発生回路52は、第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択される行が同一の書込みデータに対して、同一のスクランブルデータ(S1〜SN)を出力し、選択される行が互いに異なる書込みデータに対しては、互いに異なるスクランブルデータ(S1〜SN)を出力する。
スクランブルデータ発生回路52は、発生したスクランブルデータが(S1〜SN)がEMAT1に未だ書込まれていない場合に、スクランブルデータ(S1〜SN)を書込みラッチ回路63P_1〜63P_N,63N_1〜63N_Nへ出力する。
正規マットNMAT1は、複数個のツインセルMTC(i,j)を備える。ただし、iは列を表わし、1〜Nとする。jは、行を表わし、1〜Lとする。ツインセルMTC(i,j)は、ポジティブセルMCP(i,j)とネガティブセルMCN(i,j)を含む。ポジティブセルMCP(i,j)は、ビット線BLNP_iと接続する。ネガティブセルMCN(i,j)は、ビット線BLNN_iと接続する。
拡張マットEMAT1は、複数個のツインセルETC(i,j)を備える。ただし、iは列を表わし、1〜Nとする。jは、行を表わし、1〜Lとする。ツインセルETC(i,j)は、ポジティブセルEMCP(i,j)とネガティブセルEMCN(i,j)を含む。ポジティブセルEMCP(i,j)は、ビット線BLEP_iと接続する。ネガティブセルEMCN(i,j)は、ビット線BLEN_iと接続する。
正規マットNMAT1のツインセルMTC(i,j)(i=1〜N、j=1〜L)のツインセルデータが消去されるときには、拡張マットEMAT1のツインセルETC(i,j)(i=1〜N、j=1〜L)のツインセルデータも消去される。
書込み列選択回路51は、正規マットNMAT1の第1列〜第N列のうちのデータを書込む列を選択する。書込み列選択回路51は、選択した列がjの場合には、選択した列jに対応するスクランブラー61_jに、入出力回路(IOBUF)29から送られる1ビットの書込みデータを出力する。
スクランブラー61_i(i=1〜N)は、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNのうちの1ビットSiを受ける。スクランブラー61_iは、書込み列選択回路51から1ビットの書込みデータDが送られてきたときには、Siで1ビットの書込みデータをスクランブル処理する。スクランブル処理された書込みデータDSiは、書込みラッチ回路62P_iへ送られるとともに、インバータIVN_iを経由して書込みラッチ回路62N_iへ送られる。
スクランブル処理とは、スクランブルデータを用いて書込みデータを可逆的に変換することを意味する。ディスクランブル処理とは、スクランブルデータを用いてスクランブル処理後のデータを変換することによって元の書込みデータを得ることを意味する。
スクランブル処理の方式の一例では、スクランブル処理によって書込みデータとスクランブルデータの排他的論理和をとり、ディスクランブル処理によってスクランブル処理後のデータとスクランブルデータの排他的論理和をとり元の書込みデータを得る。ここで、N個のスクランブラー61_i(i=1〜N)によるスクランブル処理の方式のすべてが同一であってもよいし、すべてが異なっていてもよいし、同一のものと相違するものとが混在していてもよい。
書込みラッチ回路62P_i(i=1〜N)は、スクランブラー61_iから送られるスクランブル処理された書込みデータDSiが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLNP_iを接地電圧Vssと接続させることによって、ビット線BLNP_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルMCP(i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路62P_i(i=1〜N)は、スクランブラー61_iから送られるスクランブル処理された書込みデータDSiが「1」の場合には、ビット線BLNP_iを電源電圧VDDと接続させることによって、ビット線BLNP_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルMCP(i,k)の閾値電圧Vthが変化しない。
書込みラッチ回路62N_i(i=1〜N)は、インバータIVN_iから送られるスクランブル処理された書込みデータの反転データ/DSiが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLNN_iを接地電圧Vssと接続させることによって、ビット線BLNN_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルMCN(i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路62N_i(i=1〜N)は、インバータIVN_iから送られるスクランブル処理された書込みデータの反転データ/DSiが「1」の場合には、ビット線BLNN_iを電源電圧VDDと接続させることによって、ビット線BLNN_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルMCN(i,k)の閾値電圧Vthが変化しない。
読出し列選択回路&センスアンプ64は、正規マットNMAT1の第1列〜第N列のうちのデータを読出す列を選択する。読出し列選択回路&センスアンプ64は、選択した列がjの場合には、ビット線BLNP_jの電圧とビット線BLNN_jの電圧の差を増幅して、スクランブル処理されたツインセルデータを読出して、ディスクランブラー65_jへ出力する。第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行がk行の場合には、ツインセルMTC(j,k)のスクランブル処理された書込みデータRDSjが読出される。ツインセルMTC(j,k)にスクランブル処理された書込みデータDSjが書込まれた後、ツインセルMTC(j,k)のデータが消去されなかった場合に、読出されたデータRDSjはDSjと等しくなる。一方、ツインセルMTC(j,k)のデータが消去された後に、ツインセルMTC(j、k)からデータが読出された場合には、読出されたデータRDSjは、本来は不定値となるはずであるが、図7を用いて説明したように、DSjと等しくなる場合がある。
書込みラッチ回路63P_i(i=1〜N)は、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNのうちの1ビットSiを受ける。書込みラッチ回路63P_iは、Siが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLEP_iを接地電圧Vssと接続させることによって、ビット線BLEP_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルEMCP(i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路63P_i(i=1〜N)は、Siが「1」の場合には、ビット線BLEP_iを電源電圧VDDと接続させることによって、ビット線BLEP_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルEMCP(i,k)の閾値電圧Vthが変化しない。
書込みラッチ回路63N_i(i=1〜N)は、インバータIVE_iから送られるNビットのスクランブルデータS1〜SNのうちの1ビットSiの反転値/Siを受ける。書込みラッチ回路63N_iは、/Siが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLEN_iを接地電圧Vssと接続させることによって、ビット線BLEN_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルEMCN(i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路63N_i(i=1〜N)は、/Siが「1」の場合には、ビット線BLNN_iを電源電圧VDDと接続させることによって、ビット線BLEN_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルEMCN(i,k)の閾値電圧Vthが変化しない。
読出し列選択回路&センスアンプ66は、拡張マットEMAT1の第1列〜第N列のうちのデータを読出す列を選択する。読出し列選択回路&センスアンプ66は、選択した列がjの場合には、ビット線BLEP_jの電圧とビット線BLEN_jの電圧の差を増幅し、スクランブルデータを読出して、読出されたスクランブルデータをディスクランブラー65_jへ出力する。第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行がk行の場合には、ツインセルETC(j,k)のスクランブルデータRSjが出力される。ツインセルETC(j,k)にスクランブルデータSjが書込まれた後、ツインセルETC(j,k)のデータが消去されなかった場合に、読出されたツインセルデータRSjはSjと等しくなる。一方、ツインセルETC(j,k)のデータが消去された後に、ツインセルETC(j、k)からデータが読出された場合には、読出されたデータRSjは、本来は不定値となるはずであるが、図7を用いて説明したように、Sjと等しくなる場合がある。
ディスクランブラー65_i(i=1〜N)は、読出し列選択回路&センスアンプ64から出力された1ビットのスクランブル処理されたツインセルデータRDSiを、読出し列選択回路&センスアンプ66から出力された1ビットのスクランブルデータRSiを用いてディスクランブル処理して、出力バッファ(OBUF)26へ出力する。
ここで、N個のディスクランブラー65_i(i=1〜N)によるディスクランブル処理の方式のすべてが同一であってもよいし、すべてが異なっていてもよいし、同一のものと相違するものとが混在していてもよい。ただし、ディスクランブラー65_i(i=1〜N)によるディスクランブル処理の方式は、対応するスクランブラー61_iにおいてスクラブルデータSiを用いて変換された書込みデータDSiを同一のスクランブルデータSiを用いて元の書込みデータDに復元できるものでなくてはならない。
以上のように、本実施の形態によれば、スクランブル処理された書込みデータが正規マットに書込まれ、消去されていない場合には、スクランブル処理された書込みデータとスクランブルデータが正しく読出されるので、ディスクランブル処理によって書込みデータを正常に復元することができる。
スクランブル処理された書込みデータが正規マットに書込まれ、消去された場合には、スクランブルデータも拡張マットから消去される。この状態でも、消去前のスクランブル処理された書込みデータと、消去前のスクランブルデータの両方が読出される可能性はあるが、その確率は低いので、ディスクランブル処理によって書込みデータが復元される確率を低くすることができる。
[第2の実施形態の変形例]
第2の実施形態では、書込み列選択回路51で選択された列、第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行のツインセルに1ビットのスクランブル処理された書込みデータが書込まれることとしたが、これに限定されるものではない。外部からNビットの書込みデータが入力され、第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行のすべての列のそれぞれに、1ビットのスクランブル処理された書込みデータが書込まれることとしてもよい。
また、第2の実施形態では、スクランブラー61_iおよびディスクランブラー65_iは、1ビットのデータSiを用いて書込みデータをスクランブル処理およびディスクランブル処理することとしたが、これに限定するものではない。スクランブラー61_iおよびディスクランブラー65_iは、Nビットのスクランブルデータ(S1〜SN)のうちの複数ビットを用いて書込みデータをスクランブル処理およびディスクランブル処理することとしてもよい。
[第3の実施形態]
図9は、第3の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。
図9の半導体装置が、図8の第2の実施形態の半導体装置と相違する点は、以下である。図8の半導体装置の正規部100が、N個のスクランブラー61_1〜61_NとN個のディスクランブラー65_1〜65_Nを備えたのに対して、図8の半導体装置の正規部200が、1個のスクランブラー71と1個のディスクランブラー75を備える点である。
スクランブラー71は、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNを受ける。スクランブラー71は、書込み列選択回路51が選択した列がiで、書込み列選択回路51から1ビットの書込みデータDが送られてきたときには、Siで1ビットの書込みデータをスクランブル処理する。スクランブル処理された書込みデータDSiは、書込みラッチ回路62P_iへ送られるとともに、インバータIVN_iを経由して書込みラッチ回路62N_iへ送られる。
ディスクランブラー75は、読出し列選択回路&センスアンプ64から出力された1ビットのスクランブル処理されたツインセルデータRDSiを、読出し列選択回路&センスアンプ66から出力された1ビットのスクランブルデータRSiを用いてディスクランブル処理して、出力バッファ(OBUF)26へ出力する。ここで、ディスクランブラー75によるディスクランブル処理の方式は、スクランブラー71においてスクラブルデータSiを用いて変換された書込みデータDSiを同一のスクランブルデータSiを用いて元の書込みデータDに復元できるものでなくてはならない。
以上のように、本実施の形態によれば、1個のスクランブラー71および1個のディスクランブラー75によって、N個の列の書込みデータのスクランブル処理およびディスクランブル処理を行なうので、回路の規模を第2の実施形態よりも小さくすることができる。
[第3の実施形態の変形例]
第3の実施形態においても、第2の実施形態の変形例と同様に、外部からNビットの書込みデータが入力され、第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行のすべての列のそれぞれに、1ビットのスクランブル処理された書込みデータが書込まれることとしてもよい。
また、スクランブラー71およびディスクランブラー75は、Nビットのスクランブルデータ(S1〜SN)のうちの複数ビットを用いて書込みデータをスクランブル処理およびディスクランブル処理することとしてもよい。
[第4の実施形態]
図10は、第4の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる拡張部の構成を表わす図である。正規部については、第2の実施形態と同様なので説明を繰り返さない。
拡張部301は、図8の第2の実施形態の半導体装置の拡張部101と相違する点は、以下である。
図8の拡張部101が、2N個の書込みラッチ回路63P_1〜63P_N,63N_1〜6N_Nを備えるのに対して、図10の拡張部301が、6N個の書込みラッチ回路73P1_1〜73P1_N,73P2_1〜73P2_N,73P3_1〜73P3_N,73N1_1〜73N1_N,73N2_1〜73N2_N,73N3_1〜73N3_Nを備える。
図8の拡張部101の拡張マットEMAT1が、N×L個のツインセルETC(i,j)を備える(ただし、iは1〜N、j=1〜L)のに対して、図10の拡張部301の拡張マットEMAT2が、3N×L個のツインセルETC(s,i,j)を備える(ただし、s=1〜3、i=1〜N、j=1〜L)。
ツインセルETC(s,i,j)は、ポジティブセルEMCP(s,i,j)とネガティブセルEMCN(s,i,j)を含む。ポジティブセルEMCP(s,i,j)は、ビット線BLEPs_iと接続する。ネガティブセルEMCN(s,i,j)は、ビット線BLENs_iと接続する。
スクランブルデータ発生回路52は、NビットのスクランブルデータS1〜SNを発生する。各ビットSiは、書込みラッチ回路73P1_i,73P2_i,73P3_iへ送られるとともに、インバータIVE_iを経由して書込みラッチ回路73N1_i,73N2_i,73N3_iへ送られる。
書込みラッチ回路73P1_i,73P2_i,73P3_iは、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNのうちの1ビットSiを受ける。書込みラッチ回路73P1_i,73P2_i,73P3_iは、Siが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLEP1_i,BLEP2_i,BLEP3_iを接地電圧Vssと接続させることによって、ビット線BLEP1_i,BLEP2_i,BLEP3_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルEMCP(1,i,k),EMCP(2,i,k),EMCP(3,i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路73P1_i,73P2_i,73P3_iは、Siが「1」の場合には、ビット線BLEP1_i,BLEP2_i,BLEP3_iを電源電圧VDDと接続させることによって、ビット線BLEP1_i,BLEP2_i,BLEP3_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルEMCP(1,i,k),EMCP(2,i,k),EMCP(3,i,k)の閾値電圧Vthが変化しない。
書込みラッチ回路73N1_i,73N2_i,73N3_iは、インバータIVE_iからNビットのスクランブルデータS1〜SNのうちの1ビットの反転値/Siを受ける。書込みラッチ回路73N1_i,73N2_i,73N3_iは、/Siが「0」の場合には、書込みパルスWNLSが活性化された期間、ビット線BLEN1_i,BLEN2_i,BLEN3_iを接地電圧Vssと接続させることによって、ビット線BLEN1_i,BLEN2_i,BLEN3_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルEMCN(1,i,k),EMCN(2,i,k),EMCN(3,i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路73N1_i,73N2_i,73N3_iは、/Siが「1」の場合には、ビット線BLEN1_i,BLEN2_i,BLEN3_iを電源電圧VDDと接続させることによって、ビット線BLEN1_i,BLEN2_i,BLEN3_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルEMCN(1,i,k),EMCN(2,i,k),EMCN(3,i,k)の閾値電圧Vthが変化しない。
読出し列選択回路&センスアンプ6は、拡張マットEMAT2の第1列〜第N列のうちのデータを読出す列を選択する。読出し列選択回路&センスアンプ6は、選択した列がjの場合には、ビット線BLEP1_jの電圧とビット線BLEN1_jの電圧の差を増幅し、スクランブルデータを読出して、判定回路77へ出力する。読出し列選択回路&センスアンプ6は、選択した列がjの場合には、ビット線BLEP2_jの電圧とビット線BLEN2_jの電圧の差を増幅し、スクランブルデータを読出して、判定回路77へ出力する。読出し列選択回路&センスアンプ6は、選択した列がjの場合には、ビット線BLEP3_jの電圧とビット線BLEN3_jの電圧の差を増幅し、スクランブルデータを読出して、判定回路77へ出力する。
第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行がk行の場合には、ツインセルETC(1,j,k)の第1のスクランブルデータRSj1、ツインセルETC(2,j,k)の第2のスクランブルデータRSj2、ツインセルETC(3,j,k)の第3のスクランブルデータRSj3が読出される。
ツインセルETC(1,j,k)、ETC(2,j,k)、ETC(3,j,k)にスクランブルデータSjが書込まれた後、ツインセルETC(1,j,k)、ETC(2,j,k)、ETC(3,j,k)のデータが消去されなかった場合には、読出されたデータRSj1,RSj2,RSj3はSjと等しくなる。一方、ツインセルETC(1,j,k)、ETC(2,j,k)、ETC(3,j,k)のデータが消去された後に、ツインセルETC(1,j、k),ETC(2,j,k)、ETC(3,j,k)からデータが読出された場合には、読出されたデータRSj1,RSj2,RSj3は、本来は不定値となるはずであるが、図7を用いて説明したように、Sjと等しくなる場合がある。
判定回路77は、第1のスクランブルデータRSi1と、第2のスクランブルデータRSi2と、第3のスクランブルデータRSi3の値がすべて同一のときには、その同一の値を読出したスクランブルデータRSiとして出力する。
判定回路77は、第1のスクランブルデータRSi1と、第2のスクランブルデータRSi2と、第3のスクランブルデータRSi3の中の2つが「1」で、残りが「0」の場合には、「0」をスクランブルデータRSiとして出力する。判定回路77は、第1のスクランブルデータRSi1と、第2のスクランブルデータRSi2と、第3のスクランブルデータRSi3の中の2つが「0」で、残りが「1」の場合には、「1」をスクランブルデータRSiとして出力する。
以上のように、本実施の形態によれば、拡張マットの3つのツインセルにスクランブルデータを書込み、読出し時には、3つのツインセルから読出されたデータの値に基づいて、スクランブルデータを決定するので、消去前のスクランブルデータが読出される確率を低くすることができる。
[第5の実施形態]
図11は、第5の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。
図11の半導体装置が、図8の第2の実施形態の半導体装置と相違する点は、以下である。図8の半導体装置が、2N個の書込みラッチ回路63P_1〜63P_N,63N_1〜63N_Nを備えるのに対して、図11の拡張部401が、N個の書込みラッチ回路83_1〜83_Nを備える点である。
また、図8の拡張部101の拡張マットEMAT1が、N×L個のツインセルETC(i,j)を備える(ただし、iは1〜N、j=1〜L)のに対して、図11の拡張部401の拡張マットEMAT3が、N×L個のシングルセルEMC(i,j)を備える(ただし、i=1〜N、j=1〜L)。シングルセルEMC(i,j)は、ビット線BLE_iと接続する。
図12(a)に示すように、シングルセルデータ“0”は、メモリセルMCがセルデータ“0”(高閾値電圧状態;閾値電圧が消去ベリファイレベル以上の状態)を保持する状態である。図12(b)に示すように、シングルセルデータ“1”は、メモリセルMCがセルデータ“1”(低閾値電圧状態;閾値電圧が消去ベリファイレベルよりも小さい状態)を保持する状態である。
スクランブルデータ発生回路52は、NビットのスクランブルデータS1〜SNを発生する。各ビットSiは、書込みラッチ回路83_iへ送られる。
書込みラッチ回路83_i(i=1〜N)は、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNのうちの1ビットSiを受ける。書込みラッチ回路83_iは、Siが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLE_iを接地電圧Vssと接続させることによって、ビット線BLE_iに書込み電流が流れるようにする。これによって、選択された行kのシングルセルEMC(i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。書込みラッチ回路83_iは、Siが「1」の場合には、ビット線BLE_iを電源電圧VDDと接続させることによって、ビット線BLE_iに書込み電流が流れないようにする。これによって、選択された行kのシングルセルEMC(i,k)の閾値電圧Vthが変化しない。
読出し列選択回路&センスアンプ86は、拡張マットEMAT3の第1列〜第N列のうちのデータを読出す列を選択する。読出し列選択回路&センスアンプ6のセンスアンプの一方の入力端子は、選択した列がjの場合には、ビット線BLE_jと接続し、他方の入力端子が定電流源回路と接続する。このセンスアンプは、2つの入力端子の電圧の差を増幅し、スクランブルデータを読出してディスクランブラー65_jへ出力する。
第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行がk行の場合には、シングルセルEMC(j,k)のスクランブルデータRSjが出力される。シングルセルEMC(j,k)にスクランブルデータSjが書込まれた後、シングルセルEMC(j,k)のデータが消去されなかった場合に、読出されたデータRSjはSjと等しくなる。一方、シングルセルEMC(j,k)のデータが消去された後に、シングルセルEMC(j、k)からデータが読出された場合には、読出されたデータRSjは、固定値「1」となる。
以上のように、本実施の形態によれば、スクランブル処理された書込みデータが正規マットに書込まれ、消去されていない場合には、スクランブル処理された書込みデータとスクランブルデータが正しく読出されるので、ディスクランブル処理によって書込みデータを正常に復元することができる。
スクランブル処理された書込みデータが正規マットに書込まれ、消去された場合には、スクランブルデータも拡張マットから消去される。この状態では、消去前のスクランブル処理された書込みデータが読出される可能性があるが、消去前のスクランブルデータが読出されることはない(固定値「1」が読出される)ので、ディスクランブル処理によって書込みデータが復元されるのを回避できる。
[第6の実施形態]
図13は、第6の実施形態の半導体装置におけるツインセルデータの書込みおよび読出しに携わる主要な構成要素を表わす図である。
図13の半導体装置が、図8の第2の実施形態の半導体装置と相違する点は、以下である。図8の半導体装置の2N個の書込みラッチ回路63P_1〜63P_N,63N_1〜6N_Nを備えるのに対して、図13の拡張部501が、3N個の書込みラッチ回路93_1_1〜93_1_N,93_2_1〜93_2_N,93_3_1〜93_3_Nを備える点である。
また、図8の拡張部101の拡張マットEMAT1が、N×L個のツインセルETC(i,j)を備える(ただし、iは1〜N、j=1〜L)のに対して、図13の拡張部501の拡張マットEMAT4が、3N×L個のシングルセルEMC(s,i,j)を備える(ただし、s=1〜3、i=1〜N、j=1〜L)。シングルセルEMC(s,i,j)は、ビット線BLEs_iと接続する。
スクランブルデータ発生回路52は、NビットのスクランブルデータS1〜SNを発生する。各ビットSiは、書込みラッチ回路93_1_i,93_2_i,93_3_iへ送られる。
書込みラッチ回路93_1_i,93_2_i,93_3_iは、スクランブルデータ発生回路52からNビットのスクランブルデータS1〜SNのうちの1ビットSiを受ける。書込みラッチ回路93_1_i,93_2_i,93_3_iは、Siが「0」の場合には、書込みパルスWPLSが活性化された期間、ビット線BLE1_i,BLE2_i,BLE3_iを接地電圧Vssと接続させることによって、ビット線BLE1_i,BLE2_i,BLE3_iに書込み電流が流れるようにする。これによって、選択された行kのメモリセルEMC(1,i,k),EMC(2,i,k),EMC(3,i,k)の閾値電圧Vthが増加し、セルデータ「0」が書込まれる。
書込みラッチ回路93_1_i,93_2_i,93_3_iは、Siが「1」の場合には、ビット線BLE1_i,BLE2_i,BLE3_iを電源電圧VDDと接続させることによって、ビット線BLE1_i,BLE2_i,BLE3_iに書込み電流が流れないようにする。これによって、選択された行kのメモリセルEMC(1,i,k),EMC(2,i,k),EMC(3,i,k)の閾値電圧Vthが変化しない。
図14(a)に示すように、記憶するSiが“0”の場合には、メモリセルEMC(1,i,k)、EMC(2,i,k),EMC(3,i,k)はセルデータ“0”(高閾値電圧状態;閾値電圧が消去ベリファイレベル以上の状態)を保持する状態である。図14(b)に示すように、記憶するSiが“1”の場合には、メモリセルEMC(1,i,k)、EMC(2,i,k),EMC(3,i,k)はセルデータ“1”(低閾値電圧状態;閾値電圧が消去ベリファイレベルよりも小さい状態)を保持する状態である。
読出し列選択回路&センスアンプ96は、拡張マットEMAT4の第1列〜第N列のうちのデータを読出す列を選択する。
図15は、読出し列選択回路&センスアンプ96のセンスアンプ97を表わす図である。センスアンプ97の一方の入力端子は、選択した列がjの場合には、ビット線BLE1_j、BLE2_j、およびBLE3_jと接続し、他方の入力端子が定電流源回路98と接続する。センスアンプ97は、2つの入力端子の電圧の差を増幅し、スクランブルデータを読出してディスクランブラー65_jへ出力する。
本実施の形態では、3つのメモリセルのうちのいずれかのメモリセルのデータ保持特性が悪く閾値電圧が低下した場合でも、3つのメモリセルからの電流の合計値と定電流源回路98からの電流の和とが比較されるので、読出しマージンを確保することができる。したがって、定電流源回路98が出力する定電流は、読出しマージンを考慮した値に設定される。
第1行デコーダ(RDEC1)24および第2行デコーダ(RDEC2)25によって選択された行がk行の場合には、シングルセルEMC(1,j,k)、EMC(2,j,k)、EMC(3,j,k)のスクランブルデータRSjが出力される。シングルセルEMC(1,j,k),EMC(2,j,k)、EMC(3,j,k)にスクランブルデータSjが書込まれた後、シングルセルEMC(1,j,k),EMC(2,j,k)、EMC(3,j,k)のデータが消去されなかった場合に、読出されたデータRSjはSjと等しくなる。一方、シングルセルEMC(1,j,k),EMC(2,jk)、EMC(3,j,k)のデータが消去された後に、シングルセルEMC(1,j、k),EMC(2,j,k),EMC(3,j,k)からデータが読出された場合には、読出されたデータRSjは、固定値「1」となる。
以上のように、本実施の形態によれば、スクランブル処理された書込みデータが正規マットに書込まれ、消去されていない場合には、スクランブル処理された書込みデータとスクランブルデータが正しく読出されるので、ディスクランブル処理によって書込みデータを正常に復元することができる。この際、拡張マット内のスクランブルデータの保持力を第5の実施形態よりも高めることができる。
スクランブル処理された書込みデータが正規マットに書込まれ、消去された場合には、スクランブルデータも拡張マットから消去される。この状態では、消去前のスクランブル処理された書込みデータが読出される可能性があるが、消去前のスクランブルデータが読出されることはない(固定値「1」が読出される)ので、ディスクランブル処理によって書込みデータが復元されるのを回避できる。
[第7の実施形態]
図16は、第7の実施形態の正規部と拡張部の構成を表わす図である。
図16に示すように、本実施の形態の半導体装置は、図8の第2の実施形態の正規部100をM個備える(正規部100_1〜100_)。
つまり、拡張部101のスクランブルデータ発生回路52で生成されたNビットのスクランブルデータS1〜SNがM個の正規部100_1〜100_Mのスクランブラー61_1〜61_Nへ送られる。拡張部101の読出し列選択回路&センスアンプ66から出力された読出されたNビットのスクランブルデータRS1〜RSNがM個の正規部100_1〜100_Mのディスクランブラー65_1〜65_Nへ送られる。
ここで、正規部100_iがM個のデータ入力ピンDI1〜DIMの中のデータ入力ピンDIiに対応し、M個のデータ出力ピンDO1〜DOMの中のデータ出力ピンDOiに対応する。
M個の正規部100_1〜100_Mが、M個のデータ入力ピンDI1〜DIMからのMビットの書込みデータの同時書込みを実行し、M個の正規部100_1〜100_Mが同時読出しを実行して、M個のデータ出力ピンDO1〜DOMから読出したMビットのデータを出力する。
以上のように、本実施の形態では、Nビットのスクランブルデータが正規部のN×M列の書込みデータに適用されるので、第2の実施形態に比べて、拡張マットの領域を小さくすることができる。
[第7の実施形態の変形例]
図17は、第7の実施形態の変形例の正規部と拡張部の構成を表わす図である。
図17に示すように、本変形例の半導体装置は、図9の第3の実施形態の正規部200をM個備える(正規部200_1〜200_M)。
つまり、拡張部101のスクランブルデータ発生回路52で生成されたNビットのスクランブルデータS1〜SNがM個の正規部200_1〜200_Mのスクランブラー71へ送られる。拡張部101の読出し列選択回路&センスアンプ66から出力された読出されたNビットのスクランブルデータRS1〜RSNがM個の正規部200_1〜200_Mのディスクランブラー75へ送られる。
ここで、第7の実施形態と同様に、正規部200_iがM個のデータ入力ピンDI1〜DIMの中のデータ入力ピンDIiに対応し、M個のデータ出力ピンDO1〜DOMの中のデータ出力ピンDOiに対応する。
M個の正規部200_1〜200_Mが、M個のデータ入力ピンDI1〜DIMからのMビットの書込みデータの同時書込みを実行し、M個の正規部200_1〜200_Mが同時読出しを実行して、M個のデータ出力ピンDO1〜DOMから読出したMビットのデータを出力する。
以上のように、本変形例では、Nビットのスクランブルデータが正規部のN×M列の書込みデータに適用されるので、第3の実施形態に比べて、拡張マットの領域を小さくすることができる。
[第8の実施形態]
図18は、第8の実施形態のメモリアレイの1消去ブロック構成を表わす図である。
1消去ブロックは、正規マットと拡張マットからなる。1消去ブロックの正規マットは、小ブロックNMAT<0>〜NMAT<31>に分割される。1消去ブロックの拡張マットは、小ブロックEMAT<0>〜EMAT<31>に分割される。
正規マットの小ブロックNMAT<i>と拡張マットの小ブロックEMAT<i>は、互いに隣接して配置される。一例として、拡張マットの小ブロックEMAT<i>に格納されたスクランブルデータは、正規マットの小ブロックNMAT<i>への書込みデータのスクランブル処理およびディスクランブル処理に用いるものとしてもよい。あるいは、拡張マットの小ブロックEMAT<i>に格納されたスクランブルデータの一部が、正規マットの小ブロックNMAT<i>への書込みデータのスクランブル処理およびディスクランブル処理に用い、残りが、他の1個以上の正規マットの小ブロックEMAT<j>(j≠i)への書込みデータのスクランブル処理およびディスクランブル処理に用いることとしてもよい。
正規マットの小ブロックNMAT<i>と拡張マットの小ブロックEMAT<i>のメモリセルは、共通のソース線SL<i>と接続され、これらのメモリセルは、同一のタイミングで消去が実行される。
図19に示すように、まず、ソース線SL<0>が活性化され、第1番目に正規マットの小ブロックNMAT<0>と拡張マットの小ブロックEMAT<0>のメモリセルが消去される。
次に、ソース線SL<1>が活性化され、正規マットの小ブロックNMAT<1>と拡張マットの小ブロックEMAT<1>のメモリセルが消去される。
最後に、ソース線SL<31>が活性化され、正規マットの小ブロックNMAT<31>と拡張マットの小ブロックEMAT<31>のメモリセルが消去される。
以上のように、本実施の形態によれば、拡張マットを物理的に分散して配置するので、拡張マットを物理的に集中して配置した場合に生じる、特定の時分割消去時のみ消去するビット数が増加したり、拡張マットを追加で時分割消去しなければならなくなる問題を回避できる。
本発明は、上記実施形態に限定されるものではなく、たとえば以下のような変形例も含まれる。
(1)切替制御
本発明の実施の形態の半導体装置は、書込み時に書込みデータをスクランブル処理し、読出し時に読出しデータをディスクランブル処理することとしたが、本発明は、上記第1段階の処理に限定されるものではない。
たとえば、半導体装置は、通常の書込みおよび読出しの機能と、上記スクランブル処理を伴う書込みおよびディスクランブル処理を伴う読出しの機能の両方を備え、いずれの機能を実行するかを切り替えることができるものとしてもよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
1 マイクロコンピュータ(MCU)、2 中央処理装置(CPU)、3 ダイレクトメモリアクセスコントローラ(DMAC)、4 バスインタフェース回路(BIF)、5 ランダムアクセスメモリ(RAM)、6 フラッシュメモリモジュール(FMDL)、7 フラッシュシーケンサ(FSQC)、8,9 外部入出力ポート(PRT)、10 タイマ(TMR)、11 クロックパルスジェネレータ(CPG)、19 メモリアレイ(MARY)、24 第1行デコーダ(RDEC1)、25 第2行デコーダ(RDEC2)、29 入出力回路(IOBUF)、30 列デコーダ(CDEC)、31 電源回路(VPG)、32,タイミングジェネレータ(TMG)、33 ベリファイ部、34 書込み列選択部、35,501 スクランブル部、36 書込みラッチ部、37 列選択&増幅部、38,504 ディスクランブル部、51 書込み列選択回路、52 スクランブルデータ発生回路、61_1〜61_N,71 スクランブラー、62P_1〜62P_N,62N_1〜62N_N,63P_1〜63P_N,63N_1〜63N_,73P1_1〜73P1_N,73P2_1〜73P2_N,73P3_1〜73P3_N,73N1_1〜73N1_N,73N2_1〜73N2_N,73N3_1〜73N3_N,83_1〜83_N,93_1_1〜93_1_N,93_2_1〜93_2_N,93_3_1〜93_3_N 書込みラッチ回路、64,66 読出し列選択回路&センスアンプ、65_1〜65_N,75 ディスクランブラー、97 センスアンプ、98 定電流源回路、100,100_1〜100_M,200,200_1〜200_M 正規部、101,301,401,501 拡張部、NMAT1,NMAT<0>〜NMAT<31> 正規マット、EMAT1,EMAT2,EMAT3,EMAT4,EMAT<0>〜EMAT<31> 拡張マット、500 半導体装置、502 第1の記憶部、503 第2の記憶部、506,507,510,MCP(i,j),MCN(i,j),EMCP(i,j),EMCN(i,j),EMC(i,j),EMC(s,i,j),EMCP(s,i,j),EMCN(s,i,j) メモリセル、505,MTC(i,j),ETC(i,j),ETC(s,i,j) ツインセル509,511 書込み部、BLNP_1〜BLNP_N,BLNN_1〜BLNN_N,BLEP_1〜BLEP_N,BLEN_1〜BLEN_N,BLE_1〜BLE_N ビット線、IVN_1〜IVN_N,IVE_1〜IVE_N インバータ、PBUS_D 周辺データバス、DI0〜DIM データ入力ピン、DO0〜DOM データ出力ピン。

Claims (18)

  1. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含む第2の記憶部と、
    前記第1の記憶部内の前記ツインセルに書込むデータをスクランブルデータを用いてスクランブル処理するスクランブル部と、
    前記第1の記憶部内の前記ツインセルにスクランブル処理後の書込みデータを書込む第1の書込み部と、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む第2の書込み部と、
    前記第2の記憶部から読出されたスクランブルデータを用いて、前記第1の記憶部から読出されたデータをディスクランブル処理するディスクランブル部とを備え、
    前記第2の記憶部は、1つのメモリセルからなり、前記スクランブルデータの1ビットを記憶するシングルセルを含む半導体装置。
  2. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含む第2の記憶部と、
    前記第1の記憶部内の前記ツインセルに書込むデータをスクランブルデータを用いてスクランブル処理するスクランブル部と、
    前記第1の記憶部内の前記ツインセルにスクランブル処理後の書込みデータを書込む第1の書込み部と、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む第2の書込み部と、
    前記第2の記憶部から読出されたスクランブルデータを用いて、前記第1の記憶部から読出されたデータをディスクランブル処理するディスクランブル部とを備え、
    前記第2の記憶部は、1つのメモリセルからなり、前記スクランブルデータの1ビットを記憶する複数のシングルセルを含み、前記複数のシングルセルは、スクランブルデータの1ビットを重複して記憶し、
    一方の入力端子が前記複数のシングルセルと接続する複数のビット線に同時に接続され、他方の入力端子が定電流源回路と接続されるセンスアンプを備える半導体装置。
  3. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含む第2の記憶部と、
    前記第1の記憶部内の前記ツインセルに書込むデータをスクランブルデータを用いてスクランブル処理するスクランブル部と、
    前記第1の記憶部内の前記ツインセルにスクランブル処理後の書込みデータを書込む第1の書込み部と、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む第2の書込み部と、
    前記第2の記憶部から読出されたスクランブルデータを用いて、前記第1の記憶部から読出されたデータをディスクランブル処理するディスクランブル部とを備え、
    前記第2の記憶部は、2つのメモリセルからなり、スクランブルデータの1ビットを記憶する複数のツインセルを含み、前記複数のツインセルは、スクランブルデータの1ビットを重複して記憶し、
    前記複数のツインセルから読出された1ビットの値がすべて同一であるときには、前記同一の値を前記ディスクランブル部へ送り、前記複数のツインセルから読出された1ビットの値のうち他と異なるものがあるときには、頻度が少ない方の値を前記ディスクランブル部へ送る判定回路を備える半導体装置。
  4. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含む第2の記憶部と、
    前記第1の記憶部内の前記ツインセルに書込むデータをスクランブルデータを用いてスクランブル処理するスクランブル部と、
    前記第1の記憶部内の前記ツインセルにスクランブル処理後の書込みデータを書込む第1の書込み部と、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む第2の書込み部と、
    前記第2の記憶部から読出されたスクランブルデータを用いて、前記第1の記憶部から読出されたデータをディスクランブル処理するディスクランブル部とを備え、
    前記第1の記憶部および前記第2の記憶部は、それぞれ同一の個数の小ブロックに分割
    され、
    前記第1の記憶部の小ブロックおよび前記第2の記憶部の小ブロックの組は、同一のタイミングで消去される半導体装置。
  5. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含む第2の記憶部と、
    前記第1の記憶部内の前記ツインセルに書込むデータをスクランブルデータを用いてスクランブル処理するスクランブル部と、
    前記第1の記憶部内の前記ツインセルにスクランブル処理後の書込みデータを書込む第1の書込み部と、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む第2の書込み部と、
    前記第2の記憶部から読出されたスクランブルデータを用いて、前記第1の記憶部から読出されたデータをディスクランブル処理するディスクランブル部とを備え、
    前記第1の記憶部のデータが消去されるときには、前記第2の記憶部のデータも消去される半導体装置。
  6. 前記スクランブル部は、
    前記第1の記憶部の列ごとに設けられる複数個のスクランブラーを含み、
    前記スクランブラーは、対応の列のツインセルに対する1ビットの書込みデータを前記スクランブルデータを用いてスクランブル処理し、
    前記ディスクランブル部は、
    前記第1の記憶部の列ごとに設けられる複数個のディスクランブラーを含み、
    前記ディスクランブラーは、対応の列のツインセルから読出された1ビットのデータを前記第2の記憶部から読出されたスクランブルデータ用いてディスクランブル処理する、請求項1〜5のいずれか1項に記載の半導体装置。
  7. 前記スクランブルデータは、複数のビットで構成され、
    前記スクランブラーは、対応の列のツインセルに対する1ビットの書込みデータを前記スクランブルデータを構成する複数ビットのうち前記列に対応する1ビットを用いてスクランブル処理し、
    前記ディスクランブラーは、対応の列のツインセルから読出された1ビットのデータを前記スクランブルデータを構成する複数ビットのうち前記列に対応する1ビットを用いてディスクランブル処理する、請求項6記載の半導体装置。
  8. 前記スクランブル部は、
    前記第1の記憶部の複数の列に共通に設けられるスクランブラーを含み、
    前記スクランブラーは、前記ツインセルに対する1ビットの書込みデータを前記スクランブルデータを用いてスクランブル処理し、
    前記ディスクランブル部は、
    前記第1の記憶部の複数の列に共通に設けられるディスクランブラーを含み、
    前記ディスクランブラーは、前記ツインセルから読出された1ビットのデータを前記第2の記憶部から読出されたスクランブルデータ用いてディスクランブル処理する、請求項1〜5のいずれか1項に記載の半導体装置。
  9. 前記スクランブルデータは、複数のビットで構成され、
    前記スクランブラーは、ツインセルに対する1ビットの書込みデータを前記スクランブルデータを構成する複数ビットのうち前記ツインセルの列に対応する1ビットを用いてスクランブル処理し、
    前記ディスクランブラーは、前記ツインセルから読出された1ビットのデータを前記スクランブルデータを構成する複数ビットのうち前記ツインセルの列に対応する1ビットを用いてディスクランブル処理する、請求項8記載の半導体装置。
  10. 複数組のデータ入力ピンおよびデータ出力ピンと、
    データ入力ピンおよびデータ出力ピンの組ごとに、前記スクランブラーおよび前記ディスクランブラーを備え、
    複数個の前記スクランブラーは、同一のスクランブルデータを用いてスクランブル処理し、複数個の前記ディスクランブラーは、同一のスクランブルデータを用いてディスクランブル処理する、請求項8記載の半導体装置。
  11. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含み、前記ツインセルのデータが消去される時に前記メモリセル内のデータが消去されるように構成された第2の記憶部と、
    第1のデータをスクランブルデータを用いてスクランブル処理を施して第2のデータを生成し、前記第1の記憶部内の前記ツインセルに前記第2のデータを書込み、前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込む手段と、
    前記第2の記憶部から読出された前記スクランブルデータを用いて、前記第1の記憶部から読出された前記第2のデータをディスクランブル処理するディスクランブル部とを備えた、半導体装置。
  12. 前記第2の記憶部は、2つのメモリセルからなり、前記スクランブルデータの1ビットを記憶するツインセルを含む、請求項11記載の半導体装置。
  13. 前記第2の記憶部は、1つのメモリセルからなり、前記スクランブルデータの1ビットを記憶するシングルセルを含む、請求項11記載の半導体装置。
  14. 前記第2の記憶部は、1つのメモリセルからなり、前記スクランブルデータの1ビットを記憶する複数のシングルセルを含み、前記複数のシングルセルは、スクランブルデータの1ビットを重複して記憶し、
    一方の入力端子が前記複数のシングルセルと接続する複数のビット線に同時に接続され、他方の入力端子が定電流源回路と接続されるセンスアンプを備える、請求項11記載の半導体装置。
  15. 前記第2の記憶部は、2つのメモリセルからなり、スクランブルデータの1ビットを記憶する複数のツインセルを含み、前記複数のツインセルは、スクランブルデータの1ビットを重複して記憶し、
    前記複数のツインセルから読出された1ビットの値がすべて同一であるときには、前記同一の値を前記ディスクランブル部へ送り、前記複数のツインセルから読出された1ビットの値のうち他と異なるものがあるときには、頻度が少ない方の値を前記ディスクランブル部へ送る判定回路を備える、請求項11記載の半導体装置。
  16. 前記第1の記憶部および前記第2の記憶部は、それぞれ同一の個数の小ブロックに分割され、
    前記第1の記憶部の小ブロックおよび前記第2の記憶部の小ブロックの組は、同一のタイミングで消去される、請求項11記載の半導体装置。
  17. 前記第1の記憶部のデータが消去されるときには、前記第2の記憶部のデータも消去される、請求項11記載の半導体装置。
  18. 電気的に書換え可能で、閾値電圧の相違によって相補的に1ビットのデータを記憶するツインセルを含む第1の記憶部と、
    電気的に書き換え可能なメモリセルを含み、前記ツインセルのデータが消去される時に
    前記メモリセル内のデータが消去されるように構成された第2の記憶部とを備えた半導体装置におけるデータ秘匿方法であって、
    書込み要求信号を受信するステップと、
    前記書込み要求信号の受信の後、第1のデータをスクランブルデータを用いてスクランブル処理を施して第2のデータを生成するステップと、
    前記第1の記憶部内の前記ツインセルに前記第2のデータを書込むステップと、
    前記第2の記憶部内の前記メモリセルに前記スクランブルデータを書込むステップと、
    読出し要求信号を受信するステップと、
    前記読出し要求信号の受信の後、前記第2の記憶部から読出された前記スクランブルデータを用いて、前記第1の記憶部から読出された前記第2のデータをディスクランブル処理するステップとを備えた、半導体装置におけるデータ秘匿方法。
JP2015531706A 2013-08-15 2013-08-15 半導体装置および半導体装置におけるデータ秘匿方法 Expired - Fee Related JP6185589B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/071954 WO2015022741A1 (ja) 2013-08-15 2013-08-15 半導体装置

Publications (2)

Publication Number Publication Date
JPWO2015022741A1 JPWO2015022741A1 (ja) 2017-03-02
JP6185589B2 true JP6185589B2 (ja) 2017-08-23

Family

ID=52468142

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015531706A Expired - Fee Related JP6185589B2 (ja) 2013-08-15 2013-08-15 半導体装置および半導体装置におけるデータ秘匿方法

Country Status (3)

Country Link
US (2) US10073982B2 (ja)
JP (1) JP6185589B2 (ja)
WO (1) WO2015022741A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10372948B2 (en) * 2015-12-15 2019-08-06 Taiwan Semiconductor Manufacturing Company Ltd. Scrambling apparatus and method thereof
JP6181218B2 (ja) * 2016-02-09 2017-08-16 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
KR102601216B1 (ko) * 2016-09-29 2023-11-10 삼성전자주식회사 반도체 장치의 설계 방법
JP2018156713A (ja) * 2017-03-21 2018-10-04 ルネサスエレクトロニクス株式会社 記憶装置及び記憶方法
JP6997595B2 (ja) * 2017-11-09 2022-01-17 ルネサスエレクトロニクス株式会社 半導体記憶装置、及び半導体記憶装置の制御方法
JP2019179799A (ja) * 2018-03-30 2019-10-17 ルネサスエレクトロニクス株式会社 半導体記憶装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61181239A (ja) 1985-02-06 1986-08-13 Matsushita Electric Works Ltd デ−タ送信機
JP3638770B2 (ja) 1997-12-05 2005-04-13 東京エレクトロンデバイス株式会社 テスト機能を備える記憶装置
US6385727B1 (en) * 1998-09-25 2002-05-07 Hughes Electronics Corporation Apparatus for providing a secure processing environment
JP4079552B2 (ja) * 1999-07-16 2008-04-23 富士通株式会社 不正コピーを防止した不揮発性半導体メモリ
KR20060028781A (ko) 2003-06-30 2006-04-03 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 디지털 콘텐츠 복제 방지 방법 및 저장 모듈
US7177183B2 (en) * 2003-09-30 2007-02-13 Sandisk 3D Llc Multiple twin cell non-volatile memory array and logic block structure and method therefor
US20060232826A1 (en) * 2005-04-13 2006-10-19 Hagai Bar-El Method, device, and system of selectively accessing data
US20080052446A1 (en) * 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
JP5311784B2 (ja) 2006-10-11 2013-10-09 ルネサスエレクトロニクス株式会社 半導体装置
JP4498370B2 (ja) 2007-02-14 2010-07-07 株式会社東芝 データ書き込み方法
JP4986651B2 (ja) 2007-02-16 2012-07-25 ルネサスエレクトロニクス株式会社 半導体装置
US7876615B2 (en) * 2007-11-14 2011-01-25 Jonker Llc Method of operating integrated circuit embedded with non-volatile programmable memory having variable coupling related application data
JP5019611B2 (ja) 2007-12-27 2012-09-05 株式会社東芝 メモリシステム
US8301912B2 (en) 2007-12-31 2012-10-30 Sandisk Technologies Inc. System, method and memory device providing data scrambling compatible with on-chip copy operation
US8099544B2 (en) 2008-02-29 2012-01-17 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
WO2009107283A1 (en) 2008-02-29 2009-09-03 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
US9123422B2 (en) * 2012-07-02 2015-09-01 Super Talent Technology, Corp. Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells
US8261159B1 (en) * 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8413016B2 (en) 2009-04-28 2013-04-02 Panasonic Corporation Nonvolatile memory device and controller for judging a normal or anomalous condition of an error-corrected bit pattern
JP5492679B2 (ja) 2009-06-30 2014-05-14 パナソニック株式会社 記憶装置およびメモリコントローラ
JP5426326B2 (ja) * 2009-11-09 2014-02-26 ルネサスエレクトロニクス株式会社 データ受信装置、データ受信方法、及びプログラム
JP5328732B2 (ja) * 2010-08-06 2013-10-30 ルネサスエレクトロニクス株式会社 半導体装置
US8341500B2 (en) * 2010-08-31 2012-12-25 Apple Inc. Detecting corrupted data for a system having non-volatile memory

Also Published As

Publication number Publication date
US10339335B2 (en) 2019-07-02
JPWO2015022741A1 (ja) 2017-03-02
WO2015022741A1 (ja) 2015-02-19
US10073982B2 (en) 2018-09-11
US20180357441A1 (en) 2018-12-13
US20160203328A1 (en) 2016-07-14

Similar Documents

Publication Publication Date Title
TWI620187B (zh) 半導體裝置、預寫入程式及復原程式
US10339335B2 (en) Semiconductor device
JP3976839B2 (ja) 不揮発性メモリシステムおよび不揮発性半導体メモリ
JP4970834B2 (ja) 奇数状態メモリセルを用いて仮想的ページ記憶を支援する集積回路デバイスとフラッシュメモリアレイ
TWI643314B (zh) 半導體裝置
US8023330B2 (en) Method of erasing a nonvolatile memory device
JP3080744B2 (ja) 電気的に書き込み一括消去可能な不揮発性半導体記憶装置
WO2009081745A1 (ja) 不揮発性半導体記憶装置
JP2011134125A (ja) コントローラ及びデータストレージシステム
KR20090125142A (ko) 페이지 삭제 기능내의 어드레스 천이 검출을 갖춘 디코딩 제어
JP6097398B2 (ja) 半導体装置
JP5940705B1 (ja) 半導体記憶装置
TWI607440B (zh) Semiconductor device
TWI564899B (zh) 半導體儲存裝置以及資料處理方法
JP2009080884A (ja) 不揮発性半導体記憶装置
JPH113594A (ja) 不揮発性メモリおよびデータ書込み、読出し方法
JP4671300B2 (ja) 不揮発性メモリ装置
TWI776607B (zh) 半導體裝置及連續讀出方法
JP2004014052A (ja) 不揮発性半導体記憶装置
JP2005222693A (ja) 不揮発性メモリ装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170620

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20170703

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170725

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170727

R150 Certificate of patent or registration of utility model

Ref document number: 6185589

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees