[go: up one dir, main page]

JP2007140733A - 半導体処理装置及び半導体集積回路 - Google Patents

半導体処理装置及び半導体集積回路 Download PDF

Info

Publication number
JP2007140733A
JP2007140733A JP2005331334A JP2005331334A JP2007140733A JP 2007140733 A JP2007140733 A JP 2007140733A JP 2005331334 A JP2005331334 A JP 2005331334A JP 2005331334 A JP2005331334 A JP 2005331334A JP 2007140733 A JP2007140733 A JP 2007140733A
Authority
JP
Japan
Prior art keywords
page
data
memory
byte
mat
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
JP2005331334A
Other languages
English (en)
Inventor
Nobuaki Yamada
信昭 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2005331334A priority Critical patent/JP2007140733A/ja
Priority to US11/599,264 priority patent/US20070113001A1/en
Publication of JP2007140733A publication Critical patent/JP2007140733A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】不揮発性メモリの消去対象とされる記憶情報をバックアップするのに要する時間を短縮する。
【解決手段】ページ単位で書換え動作が可能にされる複数のメモリマット(21,22)と、前記メモリマットに対するバイトアクセス制御可能なメモリ制御回路(26,37,38)とを有する。メモリ制御回路はバイトアクセス制御において複数のメモリマットを動作させ、データ書き換えでは一のメモリマットの中で選択されたページから読出したデータを書込みバイトデータでマージし、マージしたデータを他のメモリマットの中で選択された対応ページに書き込み、読出しでは複数のメモリマットの各々で選択されたページのうち有効なページであって最も最近書換えられたページから読出しを行う。一のメモリマットの中で選択されたページは他のメモリマットの中で選択されたページに対して書換え前の実質的なバックアップデータを保有することになる。
【選択図】図1

Description

本発明は、書換え可能な不揮発性メモリを備えた半導体集積回路、そして、書換え可能な不揮発性メモリと前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有する半導体処理装置に係り、例えばICカード用マイクロコンピュータ等に適用して有効な技術に関する。
特許文献1には、CPUと共に電気的に書換え可能なEEPROMを備え、EEPROMをデータ領域及びプログラム領域の双方に利用するようにしたICカード用マイクロコンピュータについて記載がある。特許文献2には電気的に書換え可能なフラッシュメモリをCPUと共にオンチップしたマイクロコンピュータについて記載がある。特許文献3には、同一メモリセル構成のFlashメモリとEEPROMとを有するICカード用マイクロコンピュータについて記載がある。マイクロコンピュータにおいてデータ記憶領域として利用されるEEPROMやフラッシュメモリに対しては、データ処理上、所要の時間内にデータの書き換えが可能であることが要求される。EEPROMもフラッシュメモリも共に電気的に消去及び書込み可能な不揮発性メモリセルを用いて構成される点は同じである。EEPROMは消去及び書込み単位であるバイト単位で不揮発性メモリセルのウェル領域を電気的に分離して構成される。これにより、ウェル領域とコントロールゲートの間に高電圧を印加してバイト単位消去を行い、また、ドレインとコントロールゲートの間に高電圧を印加してバイト単位の書き込みを行うことができるようになっている。消去及び書込み対象外のバイトデータには消去・書込み動作は一切行われない。一方、フラッシュメモリは、バイト単位のウェル分離を行わず、ページ単位即ちワード線単位でウェル領域とコントロールゲートの間に高電圧を印加してワード線単位の一括消去を行う。書き込みはワード線単位でコントロールゲートに高電圧を印加して行うようになっている。したがって、フラッシュメモリでバイトデータを書換える場合は、書換え動作の対象とされるワード線1本分の記憶情報をデータラッチに退避し、退避した後に当該ワード線を単位として一括消去を行う。この後、退避したデータラッチ上における書換えられるべきバイトデータを外部からの書き込みバイトデータに置き換え、置き換えが行われた1ワード線分のデータを用いてワード線単位の書き込みを行う。
特開昭63−266698号公報 特開平05−266219号公報 国際公開公報2004−023385号公報
本発明者はEEPROMをフラッシュメモリに置き換えることを検討した。即ち、EEPROMはバイト単位で不揮発性メモリセルのウェル領域分離が行われているためバイト単位の書き換えを直接行うことができるが、チップ面積が大きくなってしまう。そこで、バイト単位のウェル領域分離が行われていないフラッシュメモリを採用することにより、チップ面積の40%程度の小型化、或いは記憶容量の増大を企図した。しかしながら、消去書込み単位がページ単位例えばワード線単位とされるフラッシュメモリにおいてバイト単位の書き換えを行うには、消去前にワード線単位でデータラッチに退避したデータが動作電源等の遮断によって不所望に破壊されるのを抑制することが必要になる。そのためには、退避したデータを不揮発性メモリ領域に一次的にバックアップしたりする動作を行わなければならない。この動作をデータの書換えの度にCPUのソフトウェアで行っていたのでは書換え動作時間が長くかかり過ぎてしまう。例えば非接触インタフェースを行うカードデバイスに用いるICカード用マイクロコンピュータのような用途では、限られた非接触インタフェース時間内にフラッシュメモリの書き換え等を行わなければならないから、動作の高速化が要求される。
本発明の目的は、不揮発性メモリの消去対象とされる記憶情報をバックアップするのに要する時間を短縮することができる半導体処理装置並びに半導体集積回路を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
〔1〕本発明に係る半導体処理装置(1)は、書換え可能な不揮発性メモリ(6)と、前記不揮発性メモリをアクセス可能なデータ処理ユニット(2)とを有する。前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマット(21,22)と、前記データ処理ユニットからのアクセス指示に応答して前記メモリマットに対するメモリ動作を制御するメモリ制御回路(26,37,38)とを有する。前記メモリ制御回路はメモリマットの所定のアドレス領域に対するアクセスに応答してバイトアクセス制御を行い、その他のアドレス領域に対するアクセスに応答してページアクセス制御を行う。前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う。
上記した手段によれば、バイトアクセス制御によるデータの書換え動作では、一のメモリマットの中で選択された最も最近書換えられた有効ページには書換え対象バイト以外のデータがそのまま保存され、他のメモリマットの中で選択されたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されたページに対して書換え前の実質的なバックアップデータを保有することになる。バックアップのために別の領域にデータを転送するための別のアクセス動作を追加することを要しない。読出しにおいてバックアップページなのか正規ページなのかは、各々のページの管理情報より、最も最近書換えられたページであるか否かを判定することによって区別される。
本発明の具体的な一つの形態として、前記管理情報として、当該ページが保有するデータが破壊されているか否かを示すための複数ビットのエラー判定ビット(PDS2,PDS3)を含む。前記メモリ制御回路は前記選択されたページの有効性を当該ページが保有する前記エラー判定ビットによって判定する。
本発明の更に具体的な形態として、前記エラー判定ビットは全ビット同一論理値以外の複数の論理値の組み合わせを有する。消去又は書込み途中の電源遮断等によるデータ破壊があれば、複数ビットのエラー判定ビットは共に論理値0又は1の同じ論理値になると考えられるからである。
本発明の更に具体的な形態として、前記メモリ制御回路は、前記マージしたデータを書込む前記対応ページの有効無効を問わない。
本発明の更に具体的な形態として、前記管理情報として当該ページが保有するデータの優先度を示すための複数ビットの優先度データ(PDS0,PDS1)を有する。前記制御回路は、優先度の高い優先度データに対応するページほど最近書換えられたページであると判定する。
本発明の更に具体的な形態として、前記メモリ制御回路は、前記バイトデータをマージしたデータの書き込みにおいて、書込み対象ページの優先度データを、前記バイトデータによるマージ対象とされた元のデータを保有するページの優先度よりも高い優先度に更新する。これにより、最も最近書換えられたページか否かを判定可能なように優先度データを更新する操作が容易になる。
本発明の別の具体的な一つの形態として、前記バイトアクセス制御の対象とされる前記所定のアドレス領域はデータ格納領域とされ、前記ページアクセス制御の対象とされる前記その他のアドレス領域はプログラム格納領域とされる。データアクセスに対しては書込みであっても高速アクセスの要求を満足することが必要になるが、プログラムに関してはデータ処理途上で高速に書換えなければならない事情は殆どないことを考慮し、アドレスマッピング可能なプログラムメモリ容量の増大を最優先させたものである。
本発明の更に別の具体的な一つの形態として、前記バイトアクセス制御の対象とされる前記所定のアドレス領域は第1のデータ格納領域とされ、前記ページアクセス制御の対象とされる前記その他のアドレス領域は第2のデータ格納領域とされる。メモリセル数に対するアドレスマッピング容量は第2のデータ領域に比べて第1のデータ領域は半減する。しかしながら、最大書換え保証回数は第2のデータ領域に比べて第1のデータ領域は倍増する。
本発明の更に別の具体的な一つの形態として、前記メモリ制御回路はアドレス制御部(37)を有する。前記アドレス制御部は、前記データ処理ユニットから供給されるアクセスアドレス信号(ADRS)を入力し、入力したアクセスアドレス信号に対してページを選択するページ選択アドレス(XADRS)とページ内のバイトを選択するバイト選択アドレス(YADRS)と、2ビットのマット選択制御信号(MC1,MC2)とを生成する。前記アドレス制御部は、前記ページアクセス制御を指定する前記アクセスアドレス信号に対しては2個のメモリマットに共通のページアドレスを生成すると共に前記アクセスアドレス信号の所定の1ビットの値に応じて前記マット選択制御信号を第1の値又は第2の値とし、前記バイトアクセス制御を指定する前記アクセスアドレス信号対しては2個のメモリマットに共通のページアドレスを生成すると共にその他の制御情報に基づいて前記選択制御信号を第3の値又は第4の値とする。前記メモリ制御回路は、前記マット選択制御信号が第3の値のときは前記最も最近書換えられたと判定されたページから読出しを行う。
前記その他の制御情報は、例えば、選択的にテストモードを設定するための制御情報である。更に具体的形態として、前記メモリ制御回路は、前記選択制御信号が第4の値のときは前記判定されたページとは異なるページから読出しを行う。外部に読み出されないバックアップ側のページデータに検証等のようなテスト動作に用いることができる。
本発明の更に別の具体的な一つの形態として、前記バイトアクセス制御を行うメモリマットの所定のアドレス領域は、アクセス不可能な領域とアクセス可能な領域とに2分割された領域である。これに対応するには、ページ選択を行うアドレス信号(XADRS)をデコードするデコード論理は、ページアクセスだけのデコード論理に対して1ビット少ないアドレス情報に対するデコード論理を持つことが必要になり、これに応じてアドレス制御回路(37)はCPU等からのアクセスアドレス信号(ADRS)から必要なアドレス信号(XADRS)を切り出すときその上位側アドレスビットの1ビットを削除することが必要になる。
別の形態として、前記バイトアクセス制御を行うメモリマットの所定のアドレス領域は、アクセス不可とアクセス可能な領域がページ毎に交互に配置された領域としてもよい。この場合は、ページ選択を行うアドレス信号(XADRS)をデコードするデコード論理は、ページアクセスだけのデコード論理と同じであってよく、アドレス制御回路もCPU等からのアクセスアドレス信号の上位側から必要なアドレス信号を単に切り出して出力すればよい。従って、アドレス制御回路にデータ格納領域を設定するレジスタを設け、ソフトにてレジスタの値を書換えデータ格納領域を設定できる。
〔2〕本発明の別の観点による半導体処理装置は、書換え可能な不揮発性メモリと、前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有する。前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、前記データ処理ユニットからのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御が可能なメモリ制御回路とを有する。前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う。
上記した手段によれば、バイトアクセス制御によるデータの書換え動作では、一のメモリマットの中で選択された最も最近書換えられた有効ページには書換え対象バイト以外のデータがそのまま保存され、他のメモリマットの中で選択されたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されたページに対して書換え前の実質的なバックアップデータを保有することになる。バックアップのために別の領域にデータを転送するための別のアクセス動作を追加することを要しない。読出しにおいてバックアップページなのか正規ページなのかは、各々のページの管理情報より、最も最近書換えられたページであるか否かを判定することによって区別される。
〔3〕本発明の別の観点による半導体集積回路は、書換え可能な不揮発性メモリを有する。前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、外部からのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御を行うメモリ制御回路とを有する。前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う。
上記同様に、バイトアクセス制御によるデータの書換え動作では、一のメモリマットの中で選択された最も最近書換えられた有効ページには書換え対象バイト以外のデータがそのまま保存され、他のメモリマットの中で選択されたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されたページに対して書換え前の実質的なバックアップデータを保有することになる。
〔4〕本発明の別の観点による半導体集積回路は、書換え可能な不揮発性メモリを有する。前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、外部からのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御を行うメモリ制御回路とを有する。前記メモリ制御回路はバイトアクセス制御において複数のメモリマットを動作させ、データ書き換えでは一のメモリマットの中で選択されたページから読出したデータを書込みバイトデータでマージし、マージしたデータを他のメモリマットの中で選択された対応ページに書き込み、読出しでは複数のメモリマットの各々で選択されたページのうち有効なページであって最も最近書換えられたページから読出しを行う。
上記同様に、バイトアクセス制御によるデータの書換え動作では、一のメモリマットの中で選択されたページには書換え対象バイト以外のデータがそのまま保存され、他のメモリマットの中で選択されたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されたページに対して書換え前の実質的なバックアップデータを保有することになる。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
すなわち、不揮発性メモリの消去対象とされる記憶情報をバックアップするのに要する時間を短縮することができる。
また不揮発性メモリの消去及び書き込みをするとき、複数のメモリマットのいずれか一つを選択し消去及び書込み動作を行うことで高電圧チャージポンプの負荷を低減でき、低消費電力及び電圧発生回路(VPPG)の面積を低減できる。
《ICカード用マイクロコンピュータ》
図2には本発明の半導体処理装置の一例に係るマイクロコンピュータのブロック図が示される。同図に示されるマイクロコンピュータ(MCU)1は、特に制限されないが、所謂ICカードマイコンと称されるICカード用マイクロコンピュータである。同図に示されるマイクロコンピュータ1は、単結晶シリコンなどの1個の半導体基板若しくは半導体チップにCMOSなどの半導体集積回路製造技術によって形成される。
マイクロコンピュータ1は、中央処理装置(CPU)2、ランダム・アクセス・メモリ(RAM)4、タイマ(TIMR)5、フラッシュメモリ(FLASH)6、コプロセッサ(COPRO)7、クロック生成回路(CPG)9、マスクROM(MSKROM)10、システムコントロールロジック(SYSCNT)11、入出力ポート(IOP)12、データバス13、及びアドレスバス及びコントロールバス14を有する。
前記マスクROM10は前記CPU2が実行するプログラム(動作プログラム)の格納に利用される。前記フラッシュメモリ6はCPU2の動作プログラムの格納と共にCPU2による演算処理で利用されるデータの格納に用いられる。前記RAM4はCPU2のワーク領域又はデータの一時記憶領域とされる。前記CPU2は、マスクROM10又はフラッシュメモリ6から命令をフェッチし、フェッチした命令をデコードし、デコード結果に基づいてオペランドフェッチやデータ演算を行う。コプロセッサ7はRSAや楕円曲線暗号演算における剰余乗算処理などをCPU2に代わって行うプロセッサユニットとされる。I/Oポート12は2ビットの入出力端子I/O1,I/O2を有し、データの入出力と外部割り込み信号の入力に兼用される。I/Oポート12はデータバス13に結合され、データバス13には前記CPU2、RAM4、タイマ5、フラッシュメモリ6、マスクROM10、及びコプロセッサ7が接続される。システムコントロールロジック11はマイクロコンピュータ1の動作モードの制御及び割り込み制御を行い、更に暗号鍵の生成に利用する乱数発生ロジックを有する。/RESはマイクロコンピュータ1に対するリセット信号である。マイクロコンピュータ1はリセット信号/RESによってリセット動作が指示されると、内部が初期化され、CPU2は動作プログラムの先頭番地から命令実行を開始する。クロック生成回路9は外部クロック信号CLKを受けて内部クロック信号CKを生成する。マイクロコンピュータ1は内部クロック信号CKに同期動作される。
前記フラッシュメモリ6はデータ格納領域とプログラム格納領域に割り当てられる。フラッシュメモリ6のデータ格納領域は暗号鍵やID情報等の格納に用いられる。フラッシュメモリ6はデータバス13との間では例えばバイト単位でデータの入出力を行う。フラッシュメモリ6の内部における消去及び書込み単位はデータ格納領域に対してもプログラム格納領域に対してもページ単位とされる。ページ単位による消去及び書込みは、例えば256バイトのページデータの他に、後述する4ビットのページデータステータスの分を含むワード線単位の複数のメモリセルを単位とする。従って、8ビットのデータを書換える場合にもページ単位で消去及び書込み動作を行わなければならない。システム上で頻繁に書換えられことが予想されるフラッシュメモリ6のデータ格納領域に対しては、消去及び書込み動作対象とされるページのデータの内、書換え対象とされる8ビット以外のデータがその動作途中で電源が遮断されても失われないようにするためのバックアップの考慮がなされている。専らマイクロコンピュータの製造メーカが書き換えを行うプログラム格納領域とは事情が異なる。必要なデータ処理速度を得るには、フラッシュメモリ6のデータ格納領域に対する消去及び書込み動作は高速であることが必要になる。前記バックアップの考慮が、逆に、データ領域における消去及び書込み動作時間を長くする要因になってはならない。フラッシュメモリ6は、後述するように、頻繁に書き換えが行われると予想されるデータ格納領域対しては時間をかけずにバックアップと同等の効果を得ることができるように構成されている。
図3にはマイクロコンピュータ1の別の例が示される。同図に示されるマイクロコンピュータ1は、第1図のマイクロコンピュータと外部インタフェース手段が相違される。すなわち図3のマイクロコンピュータは図示を省略するアンテナに接続可能なアンテナ端子TML1,TML2を有する高周波部(RF)15を備える。高周波部15は前記アンテナが所定の電波(例えばマイクロ波)を横切ることによって生ずる誘導電流を動作電源として電源電圧Vccを出力し、リセット信号RES及びクロック信号CKを生成し、アンテナから非接触で情報の入出力を行なう。I/Oポート12は外部と入出力すべき情報をRF部15とやり取りする。特に非接触インタフェースを介してセキュリティー処理を行なう場合には、限られた非接触インタフェース時間内にフラッシュメモリ6の書き換え等を行わなければならないから、データの書込み動作に対して一層の高速化が要求される。
《フラッシュメモリ》
図1には前記フラッシュメモリ6の一例が示される。フラッシュメモリ6は例えば2個のメモリマット21,22を有する。各々のメモリマット21,22はウェル領域にマトリクス配置された複数の不揮発性メモリセルを有する。不揮発性メモリセルは例えばソースとドレインの間のチャネル形成領域の上に夫々絶縁膜を介してシリコンナイトライドのような電荷蓄積層とメモリゲートを積層した所謂MONOS構造を有する。同一行に配置された不揮発性メモリセルのメモリゲートは対応するワード線に、同一列に配置された不揮発性メモリセルのドレインは対応するビット線に接続され、不揮発性メモリセルのソースはソース線に接続される。ここでは消去及び書込みは前記ページ単位とされるから、少なくともワード線方向の1ページの範囲ではウェル領域の分離は行われていない。前記ビット線は例えば1ページ分の不揮発性メモリセルの数分存在する。各ページの記憶領域はページデータ領域(PDAT)とページデータステータス領域(PDATS)とから成る。特に制限されないが、ページデータ領域(PDAT)は256バイト、ページデータステータス領域(PDATS)はiビットとされる。
消去動作では、例えば、2個のメモリマット21,22はマット制御回路(MATCNT)26で生成されるマット選択信号MS1,MS2によって決定される何れか一方のマットのウェル領域には消去電圧として1.5Vのウェル電圧、消去対象ワード線には消去電圧として−8.5Vのメモリゲート電圧、消去非対象ワード線には消去阻止電圧として1.5Vのメモリゲート電圧が供給され、全てのビット線及びソース線は1.5Vにされる。これにより、ウェル領域から消去対象メモリセルのメモリゲート電極へ向かう電界が形成され、消去対象メモリセルは一括して、電荷蓄積領域に捕獲されている電子が酸化膜を通してFNトンネルにてウェル領域に放出され、これによってそれらメモリセルの閾値電圧は低くされる。書き込み動作では、例えば、2個のメモリマット21,22はマット制御回路(MATCNT)26で生成されるマット選択信号MS1,MS2によって決定される何れか一方のマットのウェル領域には書き込み電圧として−10.7Vのウェル電圧、書き込み対象ワード線には書き込み電圧として1.5Vのメモリゲート電圧、書き込み非対象ワード線には書き込み阻止電圧として−10.7Vのメモリゲート電圧が供給される。書込み選択の不揮発性メモリセルに接続するソース線及びビット線には書き込み電圧として−10.7V、書込み非選択の不揮発性メモリセルに接続するソース線及びビット線には書き込み阻止電圧として1.5Vが印加される。書き込み選択の不揮発性メモリセルにはメモリゲート電極からウェル領域へ向かう電界が形成され、当該メモリセルのウェル領域からFNトンネルにて電荷蓄積領域に電子が捕獲され、その閾値電圧が高くされる。消去及び書込み動作などに用いる高電圧はチャージポンプ回路等を備えた電圧発生回路(VPPG)23で生成される。
前記ワード線はワードドライバ回路24によって選択的に駆動される。何れのワード線を駆動するかはXアドレスデコーダ(XADEC)25によるデコード出力とマット制御回路(MATCNT)26で生成されるマット選択信号MS1,MS2によって決定される。
メモリマット21,22の内の何れか一方のメモリマットのビット線がセレクタ回路(BLSEL)27を介して選択される。選択されたビット線の内、前記ページデータ領域に対応するものがセンスアンプ回路(SAA)28とページデータ書き込みラッチ(PDLAT)29に接続され、前記ページデータステータス領域に対応するものがページデータステータス書込みラッチ(PDSLAT)30に接続される。ページデータ書き込みラッチ29の各ビットはデータ線32に接続され、また、データ線32はセンスアンプ回路28の対応入出力ノードがビット対応で接続される。前記データバス13はYスイッチ回路(YSW)33で選択されたバイト単位で前記データ線32に接続可能にされる。Yスイッチ回路33によるバイト単位の選択動作はYアドレスデコーダ(YADEC)35のデコード出力によって制御される。ページデータステータス書込みラッチ30にはマット制御回路26から書込み用のページデータステータスが供給される。前記セレクタ回路27の選択動作は前記マット制御回路26から出力されるマット選択信号MS3,MS4によって制御される。マット制御回路26の動作形態は2ビットのマット制御信号MC1,MC2と、メモリマット21,22のアクセス対象ページから読み込んだページデータステータスとによって決定される。その動作形態の詳細は後述する。
アドレス制御回路(ACNT)37はホストから出力されるアドレス信号ADRSを入力し、それに応じて、前記Xアドレスデコーダ25に供給されるXアドレス信号XADR、Yアドレスデコーダ35に供給されるYアドレス信号YADRS、及び前記マット制御信号MC1,MC2を出力する。アドレス信号ADRSの上位側がXアドレス信号XADR、下位側がYアドレス信号YADRSとされる。
内部タイミング制御回路(TCNT)38はアドレス及びコントロールバス14から供給される制御信号の組み合わせ等によって指示されるアクセスコマンドを解読し、その結果に従って、消去動作、書込み動作、又は読出し動作の内部タイミングを生成して、その動作を制御する。前記制御信号は例えばライトイネーブル信号WE、出力イネーブル信号OE、メモリイネーブル信号ME等である。
図4にはフラッシュメモリ6のアドレスマップが例示される。アドレスは16進数で示されている。フラッシュメモリの論理アドレスは0x0000〜0xFFFFの64Kバイトとされる。0x0000〜0x7FFFにはプログラム格納領域が割り当てられる。0x8000〜0xFFFFはデータ格納領域に割り当てられるが、0x8000〜0xBFFFはアクセス不可能領域になっている。便宜上、データ格納領域をバイトアクセス領域、プログラム格納領域をページアクセス領域とも称する。メモリマット21には奇数ページが割り当てられ、メモリマット22には偶数ページが割り当てられる。ページデータステータス領域(PDATS)はデータ格納領域に対して有意とされ、プログラム格納領域に対しては無意味とされる。
図5にはマット制御信号MC1,MC2の意義が例示される。アドレス制御回路37は入力されるアドレス信号ADSRSがバイトアクセス領域を指定しているかページアクセス領域を指定しているかを判別する。ページアクセス領域が指定されているときは、そのアドレス信号ADSRSが奇数ページのアドレスであればマット制御信号をMC1,MC2=01とする。これに応答してマット制御回路26はMS1を活性化してワードドライバ回路24に対しメモリマット21のワード線を駆動可能とし、BS1を活性化してセレクタ回路27にデータ線32のメモリマット21への接続を選択させる。これにより、メモリマット21のアクセスが可能になる。一方、ページアクセス領域が指定されているときは、そのアドレス信号ADSRSが偶数ページのアドレスであればマット制御信号をMC1,MC2=10とする。これに応答してマット制御回路26はMS2を活性化してワードドライバ回路24に対しメモリマット22のワード線を駆動可能とし、BS2を活性化してセレクタ回路27にデータ線32のメモリマット22への接続を選択させる。これにより、メモリマット22のアクセスが可能になる。
バイトアクセス領域が指定されているとき、テストモードでなければマット制御信号MC1,MC2=00、テストモードであればマット制御信号MC1,MC2=11とする。テスト動作は例えば図示を省略するコントロールレジスタのテストモードビットがセットされることによって指定される。マット制御信号がMC1,MC2=00のとき、マット制御回路26は信号MS1,MS2を共に活性化し、双方のメモリマット21,22においてページ選択動作を可能にする。マット制御回路26は双方のメモリマットから読み出されたページデータステータスを入力し、そのページデータステータスの状態に応じてセレクタ回路27にデータ線32をメモリマット21又は22の何れか一方に接続させる。読み出し動作ではセレクタ回路27で導通が選択された一方のメモリマットから読み出されたページデータがセンスアンプ回路28でセンス増幅され、Yアドレス信号YADRSに従ってYスイッチ回路33で選択されたバイトデータがデータバス13に出力される。消去及び書込み動作ではセレクタ回路27で導通が選択された一方のメモリマットから読み出されたページデータがページデータラッチ回路29にラッチされ、ラッチされたページデータは、バス13から入力されてYスイッチ回路33で選択されて供給された書込みバイトデータとマージされる。セレクタ回路27を介してデータ線32に導通された一方のメモリマットからマット制御回路26に読み出されたページデータステータスは最も最近更新したことが分かるよう更新され、更新されたページデータステータスがページデータステータスラッチ回路30にロードされる。ページデータラッチ回路29が保持する更新されたページデータと、ページデータステータスラッチ回路30が保持する更新されたページデータステータスは、前記とは反対側のメモリマットに書込まれる。
テストモードにおいてマット制御信号がMC1,MC2=11のときは、セレクタ回路27の選択形態がページデータステータスによらずに、図示を省略するコントロールレジスタの制御ビットの値に応じて可変可能とされる。したがて、セレクタ回路27による選択形態を、制御信号MC1,MC2=00の時と逆にすることが可能であり、バックアップされたデータを外部に読み出して検証したりすることが可能になる。
図6にはページデータステータスの具体例が示される。ページデータステータスはPDS0〜PDS3の4ビットから成り、PDS0、PDS1は優先順位を示す優先度データとされ、PDS2,PDS3はエラー判定ビットとされる。優先度データPDS0、PDS1は00,01,10,11,00の順に更新され、更新される順に優先度が高くされる。バイトアクセスにおいて双方のメモリマット21,22で選択される一方のメモリマットの選択ページが保有する優先度データPDS0、PDS1が00、他方のメモリマットの選択ページが保有する優先度データPDS0、PDS1が11のときは、00の優先度データの方が優先度が高い。エラー判定ビットPD2,PD3は消去及び書込み動作途中で電源遮断があったかを検出するのに用いる。ページの書換え時に電源遮断によってデータ破壊があると、複数ビットのエラー判定ビットPDS2,PDS3は共に論理値1又は0に揃うことになると考えられるからである。
図7にはページデータステータスの状態に応じたマット制御回路26による制御形態の概略が例示される。バイトアクセスにおいてメモリマット21,22で選択される一方のメモリマットの選択ページが保有するエラー判定ビットPDS2、PDS3と、他方のメモリマットの選択ページが保有するエラー判定ビットPDS2、PDS3とから、双方のメモリマットから読み出したページデータの有効性を判定する。PDS2とPDS3が同一論理値であれば無効と判定する。共に無効なときは、読み出すべき有効なデータもなければ、書換えられるべき有効なデータもないので、エラー処理を行なう。例えばマット制御回路26はCPUに向けてエラーコード若しくはデータエラーの割り込みを出力する。一方が有効であれば、当該一方のページデータを読出し対象とし、書き換え時には当該無効なページを書込み対象とするように信号BS1,BS2によってセレクタ回路27を制御する。上記書換え時にマット制御回路26は、有効とされたページの優先度データPDS0、PDS1とエラー判定ビットPDS2、PDS3を夫々1段階更新した新たな優先順位データとパリティーとをラッチ回路30にラッチし、これをページデータと一緒にして書き換えデータとする。双方共に有効な時は、優先度データPDS0、PDS1を参照してページデータの優先度を判定する。双方のメモリマットから読み出されたページデータに対しては優先度の高い方をデータ線32に導通させるように信号BS1,BS2によってセレクタ回路27を制御して選択する。書込み時には優先度の低い方のページデータを格納するメモリマットのページを書込み対象とするように信号BS1,BS2によってセレクタ回路27を制御する。上記書込み時にマット制御回路26は、優先順位が高い方のページの優先度データPDS0、PDS1とエラー判定ビットPDS2、PDS3を夫々1段階更新した新たな優先順位データとパリティーとをラッチ回路30にラッチし、これをページデータと一緒にして書き換えデータとする。
これにより、バイトアクセス領域に対する書込み動作において、一のメモリマットの中で選択された最も最近書換えられた有効ページには書換え対象バイト以外のデータがそのまま保存され、他のメモリマットの中で選択されたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されて書換えられたページに対して書換え前の実質的なバックアップデータを保有することになる。メモリマットに対する消去及び書込み動作中に電源が遮断されても、今回書き込み非対象とされたデータは消失せずに、反対側のメモリマットの対応ページに残っている。バックアップのために別の領域にデータを転送するための別のアクセス動作を追加することを要しない。
図8にはページアクセス領域に対するバイト読出し動作におけるデータの流れが示される。MC1,MC2=01又は10とされる。マット制御回路26はMC1,MC2の値に応じてワードドライバ回路24及びセレクタ回路27を選択制御する。MC1,MC2=01のページアクセスの場合にはXアドレス信号XADRSに従ってメモリマット21のワード線が駆動されてページが選択され、選択されたページデータがセンスアンプ回路28によってセンス増幅され、センスアンプ回路28に保持されたページデータに対してYスイッチ回路33がYアドレス信号YADRSに基づいてバイトデータを選択し、選択されたバイトデータがデータバス13に出力される。MC1,MC2=10のページアクセスの場合にはメモリマット22のワード線が駆動されて、同様のバイト読出しが行われる。
図9にはバイトアクセス領域に対するバイト読出し動作におけるデータの流れが示される。MC1,MC2=00とされる。Xアドレスデコーダ25はXアドレス信号XADRSにしたがってワード線選択信号を形成する。マット制御回路26はワードドライバ回路24を介して双方のメモリマット21,22で前記ワード線選択信号に従ってワード線を駆動し、双方のメモリマット21,22で選択されたページのページデータステータスを取得する。マット制御回路26は双方のページのページデータステータスからページの有効性を判定し、図7で説明した制御形態に従い、例えば一方のみ有効であれば当該有効ページのページデータをセレクタ回路27で選択する。双方のページが有効であるときは優先順位の高い方のページのページデータをセレクタ回路27で選択する。双方無効であればエラー処理を通知する。セレクタ回路27で選択されたページデータはセンスアンプ回路28によってセンス増幅される。センスアンプ回路28に保持されたページデータに対してYスイッチ回路33がYアドレス信号YADRSに基づいてバイトデータを選択し、選択されたバイトデータがデータバス13に出力される。
図10にはページアクセス領域に対するページ書込み動作におけるデータの流れが示される。Yスイッチ回路33がYアドレス信号YADRSに基づいてバイト単位でデータ線を選択する。Yアドレス信号YADRSの順位インクリメントに同期しながら、データバス13から書込みバイトデータが順次入力されると、バイト単位の書き込みデータが順次下位側より上位側に向けて書込みデータラッチ回路29にラッチされる。MC1,MC2=01又は10とされ、マット制御回路26は、MC1,MC2の値に応じてデータ線をメモリマット21又は22に接続し、MC1,MC2の値に応じてワードドライバ回路24を選択駆動する。これにより、MC1,MC2=01のページアクセスの場合にはメモリマット21で選択されたページに1ページのデータが書き込まれる。この例では書込みデータはプログラムとされる。
図11及び図12にはバイトアクセス領域に対するバイト書換え動作におけるデータの流れが示される。特に図11は書換え対象ページデータを書き込みバイトデータでマージするためのデータ読出しにおけるデータの流れを示す。図12はマージされたページデータによる書込み動作のデータの流れを示す。MC1,MC2=00とされる。図11においてXアドレスデコーダ25はXアドレス信号XADRSにしたがってワード線選択信号を形成する。マット制御回路26はワードドライバ回路24を介して双方のメモリマット21,22で前記ワード線選択信号に従ってワード線を駆動し、双方のメモリマット21,22で選択されたページのページデータステータスを取得する。マット制御回路26は双方のページのページデータステータスからページの有効性を判定し、図7で説明した制御形態に従い、例えば一方のみ有効であれば当該有効ページのページデータをセレクタ回路27で選択する。双方のページが有効であるときは優先順位の高い方のページのページデータをセレクタ回路27で選択する。双方無効であればエラー処理を通知する。セレクタ回路27で選択されたページデータはセンスアンプ回路28によってセンス増幅される。センスアンプ回路28に保持されたページデータはページデータ書き込みラッチ回路29に内部転送される。ページデータ書き込みラッチ回路29には、データバス13から入力された書き込みバイトデータがYスイッチ回路33を介して供給される。供給されるバイト位置はYアドレス信号YADRSによってYスイッチ回路33が選択する。これにより、ページデータ書込みラッチ回路29上において、優先順位の高い方のページデータが書込みバイトデータによってマージされる。ページデータスタータス書込みラッチ回路30には前記マージされたページデータと一緒に書き込まれる新たなページデータステータスがマット制御回路26によって用意される。用意されるページデータステータは、ページデータ書き込みラッチ回路29にラッチされたページデータの優先順位よりも高い優先順を有し、また其れとは異なるパリティーを有する。
書込み用のページデータが用意されると、今度は図12のデータ経路で書込みページに対する消去処理と、書込み処理が行われる。即ち、マット制御回路26は前記ページデータ書き込みラッチ回路29にロードしたデータのページとは反対側のメモリマットの対応ページを消去及び書込み処理の対象とする。その規則は図7で説明した通りであり、優先順位の低い方のページ又は無効なページとされる。先ず、その消去及び書込み対象ページに対してページ一括で消去処理が行なわれる。次に、当該ページに対してページデータ書き込みラッチ回路29とページデータステータ書込みラッチ回路30に保持されているデータがセレクタ回路27を介して対応するメモリマットの前記消去及び書込み対象ページに供給されて書き込まれる。消去及び書込み処理のタイミング制御はタイミング制御回路38が行う。
図11及び図12に示されるバイトアクセス領域に対するバイト書換え動作より明らかなように、双方のメモリマット21,22で選択されたページが共に有効であるとき、双方のページのなかで優先順位の高い方の有効ページには書換え対象バイト以外のデータがそのまま保存され、優先順位の低い方のページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、一のメモリマットの中で選択されたページは他のメモリマットの中で選択されて書換えられたページに対して書換え前の実質的なバックアップデータを保有することになる。メモリマットに対する消去及び書込み動作中に電源が遮断されても、今回書き込み非対象とされたデータは消失せずに、反対側のメモリマットの対応ページに残っている。双方のメモリマットで選択された一方のページが無効であるときは、有効ページには書換え対象バイト以外のデータがそのまま保存され、当初無効とされたページには書換え対象バイトが更新されたページデータが新たに書き込まれることになる。したがって、当初有効とされた一のページは書き込み対象とされた当初無効なページに対して書換え前の実質的なバックアップデータを保有することになる。メモリマットに対する消去及び書込み動作中に電源が遮断されても、今回書き込み非対象とされたデータは消失せずに、当初有効とされたページに残っている。したがって、バックアップのために別の領域にデータを転送するための別のアクセス動作を追加することを要しないから、ICカード用マイコン1においてフラッシュメモリ6に対するバイト書き換えを伴うデータ処理の高速化に資することができる。当然、フラッシュメモリ6の不揮発性メモリセルはバイト単位のウェル領域分離を行うことを要しないから、フラッシュメモリ6の占有面積を大凡40%縮小することができる。データ領域(バイトアクセス領域)がプログラム領域(ページアクセス領域)の大凡半分とすると、データ領域の実質記憶容量はプログラム領域の記憶容量の大凡半分になるが、全体的には単位記憶容量に対する占有面積は小さくなる。
特に図示はしないが、テストモードにおいてMC1,MC2=11の場合には、バイトアクセス領域に対するバイトアクセス動作において、選択された双方のページが有効なとき、読出し選択されるページの選択はページデータステータスに依存されず、図示を省略するコントロールレジスタの所定の制御ビットの値に依存する。従って、テストモードにおいて、コントロールレジスタの所定の制御ビットの値を第1の値にすればMC1,MC2=00の場合と同様の動作を行うことができ、コントロールレジスタの所定の制御ビットの値を第2の値にすれば、バックアップ側のページデータを読み出して、バックアップが正常に行われているか否かを検証したりすることができる。
図13にはフラッシュメモリ6のアドレスマップの別の例が示される。アドレスは16進数で示されている。フラッシュメモリの論理アドレスは0x0000〜0xFFFFの64Kバイトとされ、0x0000〜0x7FFFにはプログラム格納領域が割り当てられ、0x8000〜0xFFFFはデータ格納領域に割り当てられている点は図4と同じである。相違点は、バイトアクセス領域におけるアクセス不可能領域のマッピングである。図4では、その下位側半分の0x8000〜0xBFFFのリニアな空間をアクセス不可能領域としたが、図13では、ページデータ領域とページサイズのアクセス不能領域とを交互に配置した。メモリマット21には奇数ページが割り当てられ、メモリマット22には偶数ページが割り当てられる点が図13と同じである。図14には図13のアドレスマップに対応するマット制御信号MC1,MC2の意義が例示される。図5とはアクセスアドレス範囲が相違する。
図4及び図5のように、前記バイトアクセス領域をアクセス不可能な領域とアクセス可能な領域とに2分割する場合は、Xアドレス信号XADRSをデコードするデコーダ25のデコード論理は、ページアクセスだけのデコード論理に対して1ビット少ないアドレス情報に対するデコード論理を持つことが必要になり、これに応じてアドレス制御回路37はCPUからのアクセスアドレス信号ADRSからXアドレス信号XADRSを切り出すときその上位側アドレスビットの1ビットを削除することが必要になる。図13及び図14のように、バイトアクセス領域にページデータ領域とアクセス不能なページ領域を交互に配置する場合は、Xアドレス信号XADRSをデコードするデコーダ25のデコード論理は、ページアクセスだけのデコード論理と同じであってよく、アドレス制御回路37もCPUからのアクセスアドレスADRSの上位側からXアドレス信号XADRSを単に切り出して出力すればよい。この意味では、図13及び図14のアドレスマッピングを採用することで、アドレス制御回路37にデータ格納領域を設定するレジスタを設け、ソフトにてレジスタの値を書換えデータ格納領域を設定できる。
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
例えば、ページサイズは256バイトに限定されず、またバイトアクセスは8ビットアクセスに限定されず、適宜変更可能である。メモリマットの数は2個に限定されず4個又は8個等であってもよい。一部のメモリマットをバイトアクセス制御に割り当て、残りのメモリマットをページアクセス制御に割り当てるようにしても良い。不揮発性メモリセルはMONOS構造に限定されず、フローティングゲート構造であっても良い。また、スプリットゲートゲート構造の不揮発性メモリセルを採用することも可能である。メモリマットのアレイ構成はAND型に限定されず、NAND、NOR等のその他適宜のアレイ構成を採用することが可能である。エラー判定ビットや優先度データのビット数やビット配置は適宜変更可能である。エラー判定ビットとして01と10を交互に用いたが、01又は10のように、相互に論理値の異なる1種類のビット配列をエラー判定ビットとして採用してもよい。また、フラッシュメモリの外部インタフェースビット数はバイトに限定されない。2バイト又は4バイト等の単位であってもよい。バイトアクセス制御に際してバイトデータを切り出せばよい。不揮発性メモリに対する外部からのアクセス制御にはデータバスから供給されるコマンドを用いるようにしても良い。また、アドレス制御回路はフラッシュメモリ内のメモリ制御回路の一部の機能として備える場合に限定されない。例えば、マイクロコンピュータ内部のMMU(メモリ・マネージメント・ユニット)、バスステートコントローラ、又はメモリコントローラがその機能を備えてもよい。
本発明が適用されるマイクロコンピュータはICカード用マイクロコンピュータに限定されない。汎用マイクロコンピュータに適用してもよい。その場合には、不揮発性メモリ領域は全てデータ格納領域、即バイトアクセス領域にしても良い。その場合には、単位記憶容量に対するフラッシュメモリの占有面積は小さくならないが、2個のメモリマットに交互に書込む制御形態が採用されるが故に、書換え可能回数の上限を見掛け上約2倍にすることができ、書換え可能な不揮発性データ格納領域の寿命を延ばすことができる。この意味において、本発明はプログラム格納領域を設定しない不揮発性メモリを持つ半導体処理装置にも適用可能である。半導体処理装置はマイクロコンピュータに限定されず、コプロセッサやアクセラレータ等、データ処理を行なう半導体集積回路に広く適用することができる。
マイクロコンピュータに搭載されるフラッシュメモリを例示するブロック図である。 本発明の半導体処理装置の一例に係るマイクロコンピュータを例示するブロック図である。 非接触インタフェースを有するマイクロコンピュータを例示するブロック図である。 フラッシュメモリのアドレスマップである。 マット制御信号MC1,MC2の意義を例示する説明図である。 ページデータステータスの具体例を示す説明図である。 ページデータステータスの状態に応じたマット制御回路による制御形態の概略を例示するフローチャートである。 ページアクセス領域に対するバイト読出し動作におけるデータの流れを示すフロー図である。 バイトアクセス領域に対するバイト読出し動作におけるデータの流れを示すフロー図である。 ページアクセス領域に対するページ書込み動作におけるデータの流れを示すフロー図である。 バイトアクセス領域に対するバイト書換え動作において書換え対象ページデータを書き込みバイトデータでマージするためのデータ読出しにおけるデータの流れを示すフロー図である。 バイトアクセス領域に対するバイト書換え動作においてマージされたページデータによる書込み動作のデータの流れを示すフロー図である。 フラッシュメモリの別のアドレスマップである。 図13のアドレスマップに対応するマット制御信号MC1,MC2の意義を例示する説明図である。
符号の説明
1 マイクロコンピュータ
2 CPU
6 フラッシュメモリ
13 データバス
14 アドレス及びコントロールバス
21,22 メモリマット
PDAT ページデータ領域
PDATS ページデータステータス領域
PDS0、PDS1 優先度データ
PDS2,PDS3 エラー判定ビット
24 ワードドライバ回路
25 Xアドレスデコーダ(XADEC)
26 マット制御回路(MATCNT)
MS1,MS2 マット選択信号
27 セレクタ回路(BLSEL)
28 センスアンプ回路(SAA)28
29 ページデータ書き込みラッチ(PDLAT)
30 ページデータステータス書込みラッチ(PDSLAT)
32 データ線32
33 Yスイッチ回路
35 Yアドレスデコーダ(YADEC)
37 アドレス制御回路(ACNT)
ADRS アドレス信号
XADR Xアドレス信号
YADRS Yアドレス信号
MC1,MC2 マット制御信号
38 内部タイミング制御回路(TCNT)

Claims (21)

  1. 書換え可能な不揮発性メモリと、前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有し、
    前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、前記データ処理ユニットからのアクセス指示に応答して前記メモリマットに対するメモリ動作を制御するメモリ制御回路とを有し、
    前記メモリ制御回路はメモリマットの所定のアドレス領域に対するアクセスに応答してバイトアクセス制御を行い、その他のアドレス領域に対するアクセスに応答してページアクセス制御を行い、
    前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う半導体処理装置。
  2. 前記管理情報として、当該ページが保有するデータが破壊されているか否かを示すための複数ビットのエラー判定ビットを含み、
    前記メモリ制御回路は前記選択されたページの有効性を当該ページが保有する前記エラー判定ビットによって判定する請求項1記載の半導体処理装置。
  3. 前記エラー判定ビットは全ビット同一論理値以外の複数の論理値の組み合わせを有する請求項2記載の半導体処理装置。
  4. 前記メモリ制御回路は、前記マージしたデータを書込む前記対応ページの有効無効を問わない請求項2記載の半導体処理装置。
  5. 前記管理情報として当該ページが保有するデータの優先度を示すための複数ビットの優先度データを有し、
    前記制御回路は、優先度の高い優先度データに対応するページほど最近書換えられたページであると判定する請求項4記載の半導体処理装置。
  6. 前記メモリ制御回路は、前記バイトデータをマージしたデータの書き込みにおいて、書込み対象ページの優先度データを、前記バイトデータによるマージ対象とされた元のデータを保有するページの優先度よりも高い優先度に更新する請求項5記載の半導体処理装置。
  7. 前記バイトアクセス制御の対象とされる前記所定のアドレス領域はデータ格納領域とされ、
    前記ページアクセス制御の対象とされる前記その他のアドレス領域はプログラム格納領域とされる請求項1記載の半導体処理装置。
  8. 前記バイトアクセス制御の対象とされる前記所定のアドレス領域は第1のデータ格納領域とされ、
    前記ページアクセス制御の対象とされる前記その他のアドレス領域は第2のデータ格納領域とされる請求項1記載の半導体処理装置。
  9. 前記メモリ制御回路はアドレス制御部を有し、
    前記アドレス制御部は、前記データ処理ユニットから供給されるアクセスアドレス信号を入力し、入力したアクセスアドレス信号に対してページを選択するページ選択アドレスとページ内のバイトを選択するバイト選択アドレスと、2ビットのマット選択制御信号とを生成し、
    前記アドレス制御部は、前記ページアクセス制御を指定する前記アクセスアドレス信号に対しては2個のメモリマットに共通のページアドレスを生成すると共に前記アクセスアドレス信号の所定の1ビットの値に応じて前記マット選択制御信号を第1の値又は第2の値とし、前記バイトアクセス制御を指定する前記アクセスアドレス信号対しては2個のメモリマットに共通のページアドレスを生成すると共にその他の制御情報に基づいて前記マット選択制御信号を第3の値又は第4の値とし、
    前記メモリ制御回路は、前記マット選択制御信号が第3の値のときは前記最も最近書換えられたと判定されたページから読出しを行う請求項1記載の半導体処理装置。
  10. 前記その他の制御情報は選択的にテストモードを設定するための制御情報である請求項9記載の半導体処理装置。
  11. 前記メモリ制御回路は、前記マット選択制御信号が第4の値のときは前記最も最近書換えられたと判定されたページとは異なるページから読出しを行う請求項9記載の半導体処理装置。
  12. 前記バイトアクセス制御を行うメモリマットの所定のアドレス領域は、アクセス不可能な領域とアクセス可能な領域とに全体が2分割された領域である請求項1記載の半導体処理装置。
  13. 前記バイトアクセス制御を行うメモリマットの所定のアドレス領域は、アクセス不可とアクセス可能な領域がページ毎に交互に配置された領域である請求項1記載の半導体処理装置。
  14. 書換え可能な不揮発性メモリと、前記不揮発性メモリをアクセス可能なデータ処理ユニットとを有し、
    前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、前記データ処理ユニットからのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御が可能なメモリ制御回路とを有し、
    前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う半導体処理装置。
  15. 前記管理情報として、当該ページが保有するデータが破壊されているか否かを示すための複数ビットのエラー判定ビットを含み、
    前記メモリ制御回路は前記選択されたページの有効性を当該ページが保有する前記エラー判定ビットによって判定する請求項14記載の半導体処理装置。
  16. 前記エラー判定ビットは全ビット同一論理値以外の複数の論理値の組み合わせを有する請求項15記載の半導体処理装置。
  17. 前記メモリ制御回路は、前記マージしたデータを書込む前記対応ページの有効無効を問わない請求項15記載の半導体処理装置。
  18. 前記管理情報として当該ページが保有するデータの優先度を示すための複数ビットの優先度データを有し、
    前記制御回路は、優先度の高い優先度データに対応するページほど最近書換えられたページであると判定する請求項17記載の半導体処理装置。
  19. 前記メモリ制御回路は、前記バイトデータをマージしたデータの書き込みにおいて、書込み対象ページの優先度データを、前記バイトデータによるマージ対象とされた元のデータを保有するページの優先度よりも高い優先度に更新する請求項18記載の半導体処理装置。
  20. 書換え可能な不揮発性メモリを有し、
    前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、外部からのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御を行うメモリ制御回路とを有し、
    前記メモリ制御回路はバイトアクセス制御において複数のメモリマットの各々のページから当該ページの管理情報を読み出し、読み出した管理情報から有効ページの中で最も最近書換えられたページを判定し、データ書き換えでは前記判定したページから読出したデータをバイト単位の書込みデータでマージし、マージしたデータを他のメモリマットの中で選択した対応ページに書き込み、読出しでは前記判定されたページから読出しを行う半導体集積回路。
  21. 書換え可能な不揮発性メモリを有し、
    前記不揮発性メモリは、ページ単位で書換え動作が可能にされる複数のメモリマットと、外部からのアクセス指示に応答して前記メモリマットに対するバイトアクセス制御を行うメモリ制御回路とを有し、
    前記メモリ制御回路はバイトアクセス制御において複数のメモリマットを動作させ、データ書き換えでは一のメモリマットの中で選択されたページから読出したデータを書込みバイトデータでマージし、マージしたデータを他のメモリマットの中で選択された対応ページに書き込み、読出しでは複数のメモリマットの各々で選択されたページのうち有効なページであって最も最近書換えられたページから読出しを行う半導体集積回路。
JP2005331334A 2005-11-16 2005-11-16 半導体処理装置及び半導体集積回路 Withdrawn JP2007140733A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005331334A JP2007140733A (ja) 2005-11-16 2005-11-16 半導体処理装置及び半導体集積回路
US11/599,264 US20070113001A1 (en) 2005-11-16 2006-11-15 Semiconductor processor and semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005331334A JP2007140733A (ja) 2005-11-16 2005-11-16 半導体処理装置及び半導体集積回路

Publications (1)

Publication Number Publication Date
JP2007140733A true JP2007140733A (ja) 2007-06-07

Family

ID=38042277

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005331334A Withdrawn JP2007140733A (ja) 2005-11-16 2005-11-16 半導体処理装置及び半導体集積回路

Country Status (2)

Country Link
US (1) US20070113001A1 (ja)
JP (1) JP2007140733A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332579B2 (en) 2010-05-31 2012-12-11 Kabushiki Kaisha Toshiba Data storage apparatus and method of writing data
JP2014222528A (ja) * 2014-07-08 2014-11-27 株式会社東芝 メモリシステムおよび不揮発性メモリの制御方法
US9053007B2 (en) 2011-03-28 2015-06-09 Kabushiki Kaisha Toshiba Memory system, controller, and method for controlling memory system

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7882301B2 (en) * 2007-05-09 2011-02-01 Stmicroelectronics S.R.L. Wear leveling in storage devices based on flash memories and related circuit, system, and method
US20080282024A1 (en) * 2007-05-09 2008-11-13 Sudeep Biswas Management of erase operations in storage devices based on flash memories
US8041883B2 (en) 2007-05-09 2011-10-18 Stmicroelectronics S.R.L. Restoring storage devices based on flash memories and related circuit, system, and method
US7991942B2 (en) 2007-05-09 2011-08-02 Stmicroelectronics S.R.L. Memory block compaction method, circuit, and system in storage devices based on flash memories
JP4800415B2 (ja) * 2009-08-17 2011-10-26 富士通株式会社 中継装置、macアドレス検索方法
US10937499B2 (en) * 2019-04-12 2021-03-02 Micron Technology, Inc. Content addressable memory systems with content addressable memory buffers
US11860782B2 (en) * 2019-08-13 2024-01-02 Neuroblade Ltd. Compensating for DRAM activation penalties

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04263386A (ja) * 1991-02-18 1992-09-18 Fuji Photo Film Co Ltd Icメモリカード
TW231343B (ja) * 1992-03-17 1994-10-01 Hitachi Seisakusyo Kk
US5590306A (en) * 1992-09-08 1996-12-31 Fuji Photo Film Co., Ltd. Memory card management system for writing data with usage and recording codes made significant
US5696917A (en) * 1994-06-03 1997-12-09 Intel Corporation Method and apparatus for performing burst read operations in an asynchronous nonvolatile memory
GB9801373D0 (en) * 1998-01-22 1998-03-18 Memory Corp Plc Memory system
JP4037605B2 (ja) * 2000-12-04 2008-01-23 株式会社東芝 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332579B2 (en) 2010-05-31 2012-12-11 Kabushiki Kaisha Toshiba Data storage apparatus and method of writing data
US9053007B2 (en) 2011-03-28 2015-06-09 Kabushiki Kaisha Toshiba Memory system, controller, and method for controlling memory system
JP2014222528A (ja) * 2014-07-08 2014-11-27 株式会社東芝 メモリシステムおよび不揮発性メモリの制御方法

Also Published As

Publication number Publication date
US20070113001A1 (en) 2007-05-17

Similar Documents

Publication Publication Date Title
JP4129381B2 (ja) 不揮発性半導体記憶装置
TWI391936B (zh) 記憶體裝置架構以及操作
US10359944B2 (en) Memory devices having distributed controller systems
KR100939146B1 (ko) 비휘발성 반도체 메모리 시스템 및 그 데이터 기입 방법
US20070113001A1 (en) Semiconductor processor and semiconductor integrated circuit
JP5016841B2 (ja) 不揮発性半導体記憶装置
JP2008502090A (ja) ユーザにより密度/動作性能を設定可能なメモリデバイス
JP2008117510A (ja) 半導体装置
US6922362B2 (en) Structure for updating a block of memory cells in a flash memory device with erase and program operation reduction
JP4499111B2 (ja) 不揮発性記憶装置の情報設定方法、および不揮発性記憶装置
KR100837273B1 (ko) 플래시 메모리 장치
JP2006107719A (ja) 不揮発性メモリ装置及びそれのプログラム方法
JP2008251154A (ja) 不揮発性半導体記憶装置
JP2004355699A (ja) 不揮発性記憶装置及び半導体記憶装置
JPH05290585A (ja) 電気的に書き込み可能な不揮発性メモリ
KR100965079B1 (ko) 불휘발성 메모리 장치
KR20110001581A (ko) 불휘발성 메모리 장치의 카피백 동작 방법
JP2006323499A (ja) 半導体装置
JP2003006053A (ja) データ処理装置
JPH11185485A (ja) 半導体記憶装置及びデータ処理装置
JPH0877081A (ja) ファイルメモリシステム
JP4018085B2 (ja) 不揮発性メモリ、およびそれを用いたメモリカード、情報処理装置、ならびに不揮発性メモリのソフトウェアライトプロテクト制御方法
JPH1139889A (ja) 不揮発性記憶媒体のデータ書込方法
JP2006221677A (ja) メモリカード
JP2005085316A (ja) 不揮発性半導体メモリ

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: 20090203