JP2009093388A - 半導体集積回路装置及び半導体集積回路装置の制御方法 - Google Patents

半導体集積回路装置及び半導体集積回路装置の制御方法 Download PDF

Info

Publication number
JP2009093388A
JP2009093388A JP2007262975A JP2007262975A JP2009093388A JP 2009093388 A JP2009093388 A JP 2009093388A JP 2007262975 A JP2007262975 A JP 2007262975A JP 2007262975 A JP2007262975 A JP 2007262975A JP 2009093388 A JP2009093388 A JP 2009093388A
Authority
JP
Japan
Prior art keywords
flash memory
sector
data
input terminal
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007262975A
Other languages
English (en)
Inventor
Isao Sasazaki
勲 笹▲崎▼
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2007262975A priority Critical patent/JP2009093388A/ja
Publication of JP2009093388A publication Critical patent/JP2009093388A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

【課題】ユーザからは、寿命の長い不揮発性メモリセル領域を内蔵しているように見える半導体集積回路装置を提供する。
【解決手段】CPU1がリードするプログラムコードやデータを格納する不揮発性メモリとして、4個のセクタ4〜7を有するフラッシュメモリ2を設けると共に、フラッシュメモリ・ライト装置28から与えられる有効セクタ指示データが指示するセクタを選択するためのアドレス信号A19、A18を生成するセクタ選択信号生成回路8を設ける。そして、セクタ4〜7のうち、有効とされているセクタが寿命となったか否かを判断し、有効とされているセクタが寿命となったときは、未使用のセクタを新たに有効なセクタとするための有効セクタ指示データをセクタ選択信号生成回路8に与えるという動作をフラッシュメモリ・ライト装置28に実行させる。
【選択図】図1

Description

本発明は、外部装置である不揮発性メモリ・ライト装置からプログラムコードやデータがライトされる書き換え可能な不揮発性メモリを内蔵する半導体集積回路装置、及び、このような半導体集積回路装置の制御方法に関する。
たとえば、外部装置であるフラッシュメモリ・ライト装置からプログラムやデータがライトされるフラッシュメモリを内蔵するマイクロコンピュータでは、フラッシュメモリの保持値を書き換える場合、マイクロコンピュータ内蔵の高電圧レギュレータ又は外部から高電圧(約10V)をフラッシュメモリに供給し、フラッシュメモリの保持値をイレーズして、全てのアドレスの全てのビットの保持値を“1”とし、その後、更新値をライトし、リードチェックを行い、更新値が正しくライトされているか否かをチェックするということが行われる。
特開2000−222891号公報 特開平04−281541号公報 特開2002−7221号公報 特開平7−45084号公報
ところで、フラッシュメモリのリード回数には制限がなく、リードのみを行う場合には、フラッシュメモリを半永久的に使用することが可能である。しかしながら、ライト回数には制限があり、この点から、フラッシュメモリには寿命が存在する。このため、フラッシュメモリを内蔵するマイクロコンピュータにおいては、内蔵のフラッシュメモリが寿命となったときは、マイクロコンピュータ自体の寿命となる。そこで、フラッシュメモリには、ライト回数に起因する寿命が存在することを前提とし、マイクロコンピュータに内蔵されるフラッシュメモリの寿命を、見かけ上、長くすることが要請されている。
本発明は、かかる点に鑑み、ユーザからは、寿命の長い不揮発性メモリを内蔵しているように見える半導体集積回路装置、及び、このような半導体集積回路装置の制御方法を提供することを目的とする。
本出願で開示する半導体集積回路装置は、書き換え可能な複数のメモリ領域を有する第1の不揮発性メモリと、前記複数のメモリ領域のうち1つのメモリ領域を選択するためのデータが記録された第2の不揮発性メモリと、前記データを前記1つのメモリ領域を選択するための選択信号に変換するデータ変換回路とを有するものである。
本出願が開示する半導体集積回路装置の制御方法は、外部装置が、第1の不揮発性メモリのうち選択信号生成回路によって選択される領域にデータを書き込む工程と、前記外部装置が、前記選択された領域を読み出し、前記データが正しく書き込まれたか否かをチェックする工程と、前記選択した領域に前記データが正しく書き込まれていないと判断された場合、前記外部装置は、前記選択した領域に替えて前記第1の不揮発性メモリ内の他の領域を有効とするデータを前記選択信号生成回路に書き込む工程とを含むものである。
開示した半導体集積回路装置によれば、書き換え可能な複数のメモリ領域を有する第1の不揮発性メモリと、前記複数のメモリ領域のうち1つのメモリ領域を選択するためのデータが記録された第2の不揮発性メモリと、前記データを前記1つのメモリ領域を選択するための選択信号に変換するデータ変換回路とを有するので、有効とされているメモリ領域が寿命となったか否かを判断し、前記有効とされているメモリ領域が寿命となったときは、未使用のメモリ領域を新たに有効なメモリ領域とするための選択を行うことにより、有効とするメモリ領域を、寿命となったメモリ領域から未使用のメモリ領域に交替させることができ、ユーザからは、寿命の長い不揮発性メモリを内蔵しているように見える。
開示した半導体集積回路装置の制御方法によれば、外部装置が、第1の不揮発性メモリのうち選択信号生成回路によって選択される領域にデータを書き込んだ場合において、前記外部装置が、前記選択された領域を読み出し、前記データが正しく書き込まれたか否かをチェックし、前記選択した領域に前記データが正しく書き込まれていないと判断された場合、前記外部装置は、前記選択した領域に替えて前記第1の不揮発性メモリ内の他の領域を有効とするデータを前記選択信号生成回路に書き込む工程が行われるので、有効とするメモリ領域を、寿命となったメモリ領域から未使用のメモリ領域に交替させることができ、ユーザからは、半導体集積回路装置は寿命の長い不揮発性メモリを内蔵しているように見える。
図1は本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータの一部分を示す回路図である。図1中、1はCPU(central processing unit)、2はCPU1がリードするプログラムコードやデータが外部装置であるフラッシュメモリ・ライト装置によりライトされるフラッシュメモリである。フラッシュメモリ2は、後述するように、メモリセル領域を4つのセクタに分割し、セクタ単位でデータ消去可能とされているものである。
フラッシュメモリ2において、ADD_1は2個のアドレス信号入力端子からなるアドレス信号入力端子群、ADD_2は18個のアドレス信号入力端子からなるアドレス信号入力端子群である。フラッシュメモリ2には、アドレス信号として20ビットのアドレス信号A19〜A0が与えられるが、上位2ビットのアドレス信号A19、A18はアドレス信号入力端子群ADD_1に与えられ、下位18ビットのアドレス信号A17〜A0はアドレス信号入力端子群ADD_2に与えられる。
D_INは16個のデータ入力端子からなるデータ入力端子群であり、データ入力端子群D_INには16ビットのデータが並列に与えられる。XCSはチップセレクト信号入力端子である。チップセレクト信号入力端子XCSに“0”(接地電位VSS)を与えると、フラッシュメモリ2は選択状態となる。これに対して、チップセレクト信号入力端子XCSに“1”(電源電位VDD)を与えると、フラッシュメモリ2は非選択状態となる。
XRDはリード信号入力端子、XWEはライト信号入力端子である。リード信号入力端子XRDに“1”、ライト信号入力端子XWEに“0”を与えると、フラッシュメモリ2はライトモードとなり、フラッシュメモリ2へのライトアクセスが可能となる。これに対して、リード信号入力端子XRDに“0”、ライト信号入力端子XWEに“1”を与えると、フラッシュメモリ2はリードモードとなり、フラッシュメモリ2へのリードアクセスが可能となる。D_OUTは16個のデータ出力端子からなるデータ出力端子群である。
図2はフラッシュメモリ2の概念図である。図2中、3はメモリセル領域、4〜7はメモリセル領域3を4つに分割してなるセクタと呼ばれるメモリセル領域であり、データ消去の単位をなすものである。セクタ4〜7は、フラッシュメモリ2に与えられるアドレス信号A19〜A0の下位18ビットのアドレス信号A17〜A0で選択される同一数のアドレスを有しており、セクタ4〜7の選択は、アドレス信号A19〜A0の上位2ビットのアドレス信号A19、A18をセクタ選択信号として行われる。
本例では、フラッシュメモリ2は、アドレス信号A19、A18として“00”が与えられると、セクタ4を選択し、アドレス信号A19、A18として“01”が与えられると、セクタ5を選択し、アドレス信号A19、A18として“10”が与えられると、セクタ6を選択し、アドレス信号A19、A18として“11”が与えられると、セクタ7を選択するように構成される。
ここで、セクタ4〜7は、たとえば、まず、セクタ4が選択的に有効とされ、セクタ4に寿命が来たときは、次にセクタ5が選択的に有効とされ、セクタ5に寿命が来たときは、次にセクタ6が選択的に有効とされ、セクタ6に寿命が来たときは、次にセクタ7が選択的に有効とされるという制御を受けるが、セクタ4〜7の有効・無効の制御は、フラッシュメモリ・ライト装置により行われる。
また、図1において、8はフラッシュメモリ2のセクタ4〜7の選択に使用するセクタ選択信号であるアドレス信号A19、A18を生成するセクタ選択信号生成回路であり、9はフラッシュメモリ、10はデータ変換回路である。
フラッシュメモリ9は、外部装置であるフラッシュメモリ・ライト装置により、セクタ4〜7のうち、有効とすべきセクタを指示する3ビットの有効セクタ指示データがライトされるものである。フラッシュメモリ9において、ADDはアドレス信号入力端子群であり、アドレス信号入力端子群は常に“0”を供給する内部ノードに接続され、フラッシュメモリ9は常に0番地が指定されている状態となっている。
D_INは3個のデータ入力端子からなるデータ入力端子群であり、データ入力端子群D_INには3ビットの有効セクタ指示データが並列に与えられる。XCSはチップセレクト信号入力端子である。チップセレクト信号入力端子XCSは常に“0”を供給する内部ノードに接続されており、フラッシュメモリ9は常に選択状態とされている。
XRDはリード信号入力端子、XWEはライト信号入力端子である。リード信号入力端子XRDに“1”、ライト信号入力端子XWEに“0”を与えると、フラッシュメモリ9はライトモードとなり、フラッシュメモリ9へのライトアクセスが可能となる。これに対して、リード信号入力端子XRDに“0”、ライト信号入力端子XWEに“1”を与えると、フラッシュメモリ9はリードモードとなり、フラッシュメモリ9へのリードアクセスが可能となる。D_OUTは3個のデータ出力端子からなるデータ出力端子群である。
本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータは、工場出荷時に、フラッシュメモリ・ライト装置により、フラッシュメモリ9の0番地に有効セクタ指示データとして“111”が書き込まれる。なお、本例では、フラッシュメモリ9として、複数のアドレスを有する既存のフラッシュメモリを使用することを前提としているが、フラッシュメモリ9のアドレス数は最低で1個あれば足りるので、このようなフラッシュメモリを設けるようにしても良い。
データ変換回路10は、フラッシュメモリ9からリードされた有効セクタ指示データをセクタ選択信号であるアドレス信号A19、A18に変換し、これらアドレス信号A19、A18をフラッシュメモリ2のアドレス信号入力端子ADD_1に与えるものであり、表1はデータ変換回路10の機能表である。
Figure 2009093388
即ち、データ変換回路10は、フラッシュメモリ9が出力する有効セクタ指示データ=“111”のときは、アドレス信号A19、A18として“00”を出力し、フラッシュメモリ9が出力する有効セクタ指示データ=“110”のときは、アドレス信号A19、A18として“01”を出力し、フラッシュメモリ9が出力する有効セクタ指示データ=“100”のときは、アドレス信号A19、A18として“10”を出力し、フラッシュメモリ9が出力する有効セクタ指示データ=“000”のときは、アドレス信号A19、A18として“11”を出力するように構成される。
したがって、セクタ4を有効セクタとする場合には、フラッシュメモリ9の0番地には“111”がライトされ、セクタ5を有効セクタとする場合には、フラッシュメモリ9の0番地には“110”がライトされ、セクタ6を有効セクタとする場合には、フラッシュメモリ9の0番地には“100”がライトされ、セクタ7を有効セクタとする場合には、フラッシュメモリ9の0番地には“000”がライトされる。
11はフラッシュメモリ・ライト装置が出力するモード設定信号MDを入力するための2個のモード設定信号入力端子からなるモード設定信号入力端子群である。本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータは、モード設定信号MDにより、第1モード、第2モード又は第3モードに設定される。
第1モードは、CPU1によるフラッシュメモリ2へのリードアクセスを可能とするモードである(以下、通常モードという)。第2モードは、フラッシュメモリ・ライト装置によるフラッシュメモリ2へのライトアクセス及びリードアクセスを可能とするモードである(以下、フラッシュメモリ・ライトモードという)。第3モードは、フラッシュメモリ・ライト装置によるフラッシュメモリ9へのライトアクセス及びリードアクセスを可能とするモードである(以下、セクタ設定モードという)。
本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータは、モード設定信号MD=“00”とすると、通常モードとなり、モード設定信号MD=“01”とすると、フラッシュメモリ・ライトモードとなり、モード設定信号MD=“10”とすると、セクタ設定モードとなる。
12はフラッシュメモリ・ライト装置が出力するフラッシュメモリ2、9用の高電圧VPPを入力するための高電圧入力端子、13はフラッシュメモリ・ライト装置が出力するフラッシュメモリ2又はフラッシュメモリ9に与えるリード信号F_RDを入力するためのリード信号入力端子、14はフラッシュメモリ・ライト装置が出力するフラッシュメモリ2又はフラッシュメモリ9に与えるライト信号F_WEを入力するためのライト信号入力端子である。
15はフラッシュメモリ・ライト装置が並列出力するフラッシュメモリ2に与える18ビットのアドレス信号F_Aを入力するための18個のアドレス信号入力端子からなるアドレス信号入力端子群、16はフラッシュメモリ・ライト装置が並列出力するフラッシュメモリ2に与える16ビットのプログラムコードやデータ又はフラッシュメモリ9に与える3ビットの有効セクタ指示データ等のデータDA_Iを入力し、又は、フラッシュメモリ2から出力される16ビット又はフラッシュメモリ9から並列出力される3ビットのデータDA_Oを出力する16個のデータ入出力端子からなるデータ入出力端子群である。
17は並列16ビット構成のデータDA_Iを入力するデータ入力バッファであり、その入力端子群をデータ入出力端子群16に接続している。18は並列16ビット構成のデータDA_Oを出力するスリーステイトバッファからなるデータ出力バッファであり、その出力制御端子をリード信号入力端子13に接続し、その出力端子群をデータ入出力端子群16に接続している。
19〜26はフラッシュメモリ・ライト装置から与えられるモード設定信号MDにより選択動作が制御されるセレクタであり、Aは第1の入力端子(又は第1の入力端子群)、Bは第2の入力端子(又は第2の入力端子群)、Cは第3の入力端子(又は第3の入力端子群)、Xは出力端子(又は出力端子群)である。セレクタ19〜25は、フラッシュメモリ2、9へのアクセスを制御するアクセス制御回路を構成するものである。
セレクタ19〜25は、モード設定信号MD=“00”(通常モード)のときは、第1の入力端子(又は第1の入力端子群)Aを出力端子(又はその出力端子群)Xに接続し、モード設定信号MD=“01”(フラッシュメモリ・ライトモード)のときは、第2の入力端子(又は第2の入力端子群)Bを出力端子(又は出力端子群)Xに接続し、モード設定信号MD=“10”(セクタ設定モード)のときは、第3の入力端子(又は第3の入力端子群)Cを出力端子(又は出力端子群)Xに接続するように構成される。
セレクタ26は、モード設定信号MD=“01”(フラッシュメモリ・ライトモード)のときは、第1の入力端子群Aを出力端子群Xに接続し、モード設定信号MD=“10”(セクタ設定モード)のときは、第2の入力端子群Bを出力端子群Xに接続するように構成される。
本例では、セレクタ19は、第1の入力端子Aを常に“0”が供給される内部ノードに接続し、第2の入力端子Bを常に“0”が供給される内部ノードに接続し、第3の入力端子Cをリード信号入力端子13に接続し、出力端子Xをフラッシュメモリ9のリード信号入力端子XRDに接続している。
セレクタ20は、第1の入力端子Aを常に“1”が供給される内部ノードに接続し、第2の入力端子Bを常に“1”が供給される内部ノードに接続し、第3の入力端子Cをライト信号入力端子14に接続し、出力端子Xをフラッシュメモリ9のライト信号入力端子XWEに接続している。
セレクタ21は、第1の入力端子群Aを内部アドレスバスを介してCPU1の対応するアドレス信号出力端子群に接続し、第2の入力端子群Bをアドレス信号入力端子群15に接続し、第3の入力端子群Cを常に“0”が供給される内部ノードに接続し、出力端子群Xをフラッシュメモリ2のアドレス信号入力端子群ADD_2に接続している。
セレクタ22は、第1の入力端子群Aを内部データバスを介してCPU1のデータ出力端子群に接続し、第2の入力端子群Bをデータ入力バッファ17の出力端子群に接続し、第3の入力端子群Cを常に“0”が供給される内部ノードに接続し、出力端子群Xをフラッシュメモリ2のデータ入力端子群D−INに接続している。
セレクタ23は、第1の入力端子群AをCPU1が出力する32ビットのアドレス信号の上位4ビットをデコードしてフラッシュメモリ2を選択するフラッシュメモリ選択信号D_CSを出力するアドレスデコーダ(図示せず)のフラッシュメモリ選択信号出力端子に接続し、第2の入力端子Bを常に“0”が供給される内部ノードに接続し、第3の入力端子Cを常に“1”が供給される内部ノードに接続し、出力端子Xをフラッシュメモリ2のチップセレクタ信号入力端子XCSに接続している。
セレクタ24は、第1の入力端子AをCPU1のリード信号出力端子に接続し、第2の入力端子Bをリード信号入力端子13に接続し、第3の入力端子Cを常に“1”が供給される内部ノードに接続し、出力端子Xをフラッシュメモリ2のリード信号入力端子XRDに接続している。
セレクタ25は、第1の入力端子Aを常に“1”が供給される内部ノードに接続し、第2の入力端子Bをライト信号入力端子14に接続し、第3の入力端子Cを常に“1”が供給される内部ノードに接続し、出力端子Xをフラッシュメモリ2のライト信号入力端子XWEに接続している。
セレクタ26は、第1の入力端子群Aをフラッシュメモリ2のデータ出力端子群D_OUTに接続し、第2の入力端子群Bをフラッシュメモリ9のデータ出力端子群D_OUTに接続し、出力端子群Xをデータ出力バッファ18の入力端子群に接続している。
また、図1において、35は内部バスであり、内部バス35には、CPU1及びフラッシュメモリ2のほか、RAM36や周辺回路37などが接続されている。
図3は本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータにフラッシュメモリ・ライト装置を接続した状態を示す回路図である。図3中、27は本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ、28はフラッシュメモリ・ライト装置であり、マイクロコンピュータ27は、フラッシュメモリ・ライト装置28を接続した状態で使用される。
フラッシュメモリ・ライト装置28において、29はモード設定信号MDを出力するための2個のモード設定信号出力端子からなるモード設定信号出力端子群、30はフラッシュメモリ2、9に与える高電圧VPPを出力するための高電圧出力端子、31はフラッシュメモリ2に与えるリード信号F_RDを出力するためのリード信号出力端子、32はフラッシュメモリ2に与えるライト信号F_WEを出力するためのライト信号出力端子である。
33はフラッシュメモリ2に与えるアドレス信号F_Aを出力するための18個のアドレス出力端子からなるアドレス信号出力端子群、34はフラッシュメモリ2に与えるプログラムコードやデータ及びフラッシュメモリ9に与える有効セクタ指示データの出力、及び、フラッシュメモリ2が出力したプログラムコードやデータ及びフラッシュメモリ9が出力した有効セクタ指示データを入力するための16個のデータ入出力端子からなるデータ入出力端子群である。
なお、モード設定信号出力端子群29はモード設定信号入力端子群11に接続され、高電圧出力端子30は高電圧入力端子12に接続され、リード信号出力端子31はリード信号入力端子13に接続され、ライト信号出力端子32はライト信号入力端子14に接続され、アドレス信号出力端子群33はアドレス信号入力端子群15に接続され、データ入出力端子群34はデータ入出力端子群16に接続される。
図4はマイクロコンピュータ27内のセレクタ19〜25の通常モード時の状態を示す回路図である。フラッシュメモリ・ライト装置28は、通常モードを設定する場合には、モード設定信号MD=“00”とする。この場合、セレクタ19〜25は、第1の入力端子(又は第1の入力端子群)Aを出力端子(又は出力端子群)Xに接続する。
この結果、セレクタ19は、“0”をフラッシュメモリ9のリード信号入力端子XRDに与え、セレクタ20は、“1”をフラッシュメモリ9のライト信号入力端子XWEに与えるので、フラッシュメモリ9はリードモードとなり、0番地から有効セクタ指示データを出力し、データ変換回路10は、フラッシュメモリ9が出力する有効セクタ指示データに対応するアドレス信号A19、A18を出力し、これをフラッシュメモリ2のアドレス信号入力端子群ADD_1に与える。
また、セレクタ21は、CPU1からのアドレス信号C_Aをフラッシュメモリ2のアドレス信号入力端子群ADD_2に与える。セレクタ23は、アドレスデコーダからのフラッシュメモリ2を選択する信号D_CSをフラッシュメモリ2のチップセレクト信号入力端子XCSに与える。セレクタ24は、CPU1からのリード信号C_RDをフラッシュメモリ2のリード信号入力端子XRDに与える。セレクタ25は、“1”をフラッシュメモリ2のライト信号入力端子XWEに与える。
この結果、CPU1は、アドレスデコーダに対してフラッシュメモリ2を選択するアドレス信号を出力すると共に、リード信号C_RDとして“0”を出力することにより、フラッシュメモリ2のセクタ4〜7のうち、データ変換回路10により選択されたセクタへのリードアクセスを行うことが可能となる。
なお、通常モード時には、セレクタ25は、“1”をフラッシュメモリ2のライト信号入力端子XWEに与えるので、CPU1によるフラッシュメモリ2へのライトアクセスは不可能となる。また、通常モード時には、セレクタ22は、CPU1のデータ出力端子群とフラッシュメモリ2のデータ入力端子群D_INとを接続する。
図5はマイクロコンピュータ27内のセレクタ19〜26のフラッシュメモリ・ライトモード時の状態を示す回路図である。フラッシュメモリ・ライト装置28は、フラッシュメモリ・ライトモードを設定する場合には、モード設定信号MD=“01”とする。この場合、セレクタ19〜25は、第2の入力端子(又は第2の入力端子群)Bを出力端子(又は出力端子群)Xに接続し、セレクタ26は、第1の入力端子群Aを出力端子群Xに接続する。
この結果、セレクタ19は、“0”をフラッシュメモリ9のリード信号入力端子XRDに与え、セレクタ20は、“1”をフラッシュメモリ9のライト信号入力端子XWEに与えるので、フラッシュメモリ9はリードモードとされ、0番地から有効セクタ指示データを出力し、データ変換回路10は、フラッシュメモリ9が出力する有効セクタ指示データに対応するアドレス信号A19、A18を出力し、これをフラッシュメモリ2のアドレス信号入力端子群ADD_1に与える。
また、セレクタ21は、フラッシュメモリ・ライト装置28からのアドレス信号F_Aをフラッシュメモリ2のアドレス信号入力端子群ADD_2に与える。セレクタ22は、フラッシュメモリ・ライト装置28からのデータDA_Iをフラッシュメモリ2のデータ入力端子群D_INに与える。
また、セレクタ23は、“0”をフラッシュメモリ2のチップセレクト信号入力端子XCSに与える。セレクタ24は、フラッシュメモリ・ライト装置28からのリード信号F_RDをフラッシュメモリ2のリード信号入力端子XRDに与える。セレクタ25は、フラッシュメモリ・ライト装置28からのライト信号F_WEをフラッシュメモリ2のライト信号入力端子XWEに与える。
この結果、フラッシュメモリ・ライト装置28は、リード信号F_RD=“1”、ライト信号F_WE=“0”とすることにより、フラッシュメモリ2のセクタ4〜7のうち、データ変換回路10により選択されたセクタへのライトアクセスが可能となり、リード信号F_RD=“0”、ライト信号F_WE=“1”とすることにより、フラッシュメモリ2のセクタ4〜7のうち、データ変換回路10により選択されたセクタへのリードアクセスを行うことが可能となる。
また、セレクタ26は、フラッシュメモリ2が出力端子群D_OUTに出力するデータDA_O(プログラムコードやデータ)をデータ出力バッファ18の出力端子群に与える。この結果、フラッシュメモリ・ライト装置28が出力するリード信号F_RD=“0”の場合に、フラッシュメモリ2から出力されるデータDA_O(プログラムコードやデータ)のフラッシュメモリ・ライト装置28への転送が可能となる。
図6はマイクロコンピュータ27内のセレクタ19〜26のセクタ設定モード時の状態を示す回路図である。フラッシュメモリ・ライト装置28は、セクタ設定モードを設定する場合には、モード設定信号MD=“10”とする。この場合、セレクタ19〜25は、第3の入力端子(又は第3の入力端子群)Cを出力端子(又は出力端子群)Xに接続し、セレクタ26は、第2の入力端子群Bを出力端子群Xに接続する。
この結果、セレクタ19は、フラッシュメモリ・ライト装置28からのリード信号F_RDをフラッシュメモリ9のリード信号入力端子XRDに与え、セレクタ20は、フラッシュメモリ・ライト装置28からのライト信号F_WEをフラッシュメモリ9のライト信号入力端子XWEに与える。
そこで、フラッシュメモリ・ライト装置28は、リード信号F_RD=“1”、ライト信号F_WE=“0”とすることにより、フラッシュメモリ9へのライトアクセスが可能となり、フラッシュメモリ・ライト装置28は、リード信号F_RD=“0”、ライト信号F_WE=“1”とすることにより、フラッシュメモリ9へのリードアクセスが可能となる。
また、セレクタ23は、“1”をフラッシュメモリ2のチップセレクト信号入力端子XCSに与える。この結果、フラッシュメモリ2は非選択状態となる。なお、この場合、セレクタ21は、“0”をフラッシュメモリ2のアドレス信号入力端子群ADD_2に与え、セレクタ22は、“0”をフラッシュメモリ2のデータ入力端子群D_INに与え、セレクタ24は、“1”をフラッシュメモリ2のリード信号入力端子XRDに与え、セレクタ25は、“1”をフラッシュメモリ2のライト信号入力端子XWEに与える。
また、セレクタ26は、フラッシュメモリ9が出力端子群D_OUTに出力するデータDA_O(有効セクタ指示データ)をデータ出力バッファ18の出力端子に与える。この結果、フラッシュメモリ・ライト装置28が出力するリード信号F_RD=“0”の場合に、フラッシュメモリ9から出力されるデータDA_O(有効セクタ指示データ)のフラッシュメモリ・ライト装置28への転送が可能となる。
図7はフラッシュメモリ・ライト装置28によるマイクロコンピュータ27の制御方法(本発明の半導体集積回路装置の制御方法の一実施形態)を示すフローチャートである。前述のように、マイクロコンピュータ27は、フラッシュメモリ・ライト装置28が接続されて使用されるが、マイクロコンピュータ27を使用する場合には、まず、フラッシュメモリ2にプログラムやデータの初期値をライトする必要がある。
そこで、フラッシュメモリ・ライト装置28は、まず、モード設定信号MD=“01”として、マイクロコンピュータ27をフラッシュメモリ・ライトモードとし、フラッシュメモリ2にCPU1がリードするプログラムコードやデータの初期値をライトする(ステップS1)。次に、モード設定信号MD=“00”として、マイクロコンピュータ2を通常モードとし(ステップS2)、CPU1からのフラッシュメモリ2へのリードアクセスを可能とする。
この場合、フラッシュメモリ9には、工場出荷時に、有効セクタ指示データとして既に“111”がライトされているので、データ変換回路10は、アドレス信号A19、A18として“00”を出力し、フラッシュメモリ2は、有効セクタとしてセクタ4を選択する。この結果、フラッシュメモリ・ライト装置28がフラッシュメモリ2のデータ入力端子群D_INに与えるプログラムコードやデータの初期値は、セクタ4にライトされる。
その後、フラッシュメモリ2の保持値を更新する場合(ステップS3でYESの場合)には、フラッシュメモリ・ライト装置28は、モード設定信号MD=“01”として、マイクロコンピュータ27をフラッシュメモリ・ライトモードとし、フラッシュメモリ2にプログラムコードやデータの更新値をライトする(ステップS4)。
この場合、フラッシュメモリ9には、有効セクタ指示データとして“111”がライトされているので、データ変換回路10は、アドレス信号A19、A18として“00”を出力し、フラッシュメモリ2は、有効セクタとしてセクタ4を選択する。この結果、フラッシュメモリ・ライト装置28がフラッシュメモリ2のデータ入力端子群D_INに与えるプログラムコードやデータの更新値は、セクタ4にライトされる。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ2から更新値をリードし、更新値が正しくライトされているか否かをチェックし(ステップS5)、更新値が正しくライトされている場合(ステップS6でYESの場合)には、モード設定信号MD=“00”として、マイクロコンピュータ27を通常モードとし、CPU1からのフラッシュメモリ2へのリードアクセスを可能とする。
以後、セクタ4に更新値が正しくライトされる限り、更新値はセクタ4にライトされることになるが、セクタ4が寿命となり、更新値のリードチェックで、更新値が正しくライトされていないことが判明した場合(ステップS6でNOの場合)には、フラッシュメモリ・ライト装置28は、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“111”)の変更が可能か否かを判定する(ステップS7)。
ここで、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“111”)の変更が可能な場合(ステップS7でYESの場合)には、フラッシュメモリ・ライト装置28は、モード設定信号MD=“10”として、マイクロコンピュータ27をセクタ設定モードとし、フラッシュメモリ9に次の有効セクタ指示データ(本例の場合、“110”)をライトする(ステップS8)。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ9から有効セクタ指示データをリードし、有効セクタ指示データが正しくライトされているか否かをチェックし(ステップS9)、有効セクタ指示データが正しくライトされている場合(ステップS10でYESの場合)には、モード設定信号MD=“01”とし、マイクロコンピュータ27をフラッシュメモリ・ライトモードとし、フラッシュメモリ2に更新値をライトする(ステップS4)。
この場合、フラッシュメモリ9には、有効セクタ指示データとして“110”がライトされているので、データ変換回路10は、アドレス信号A19、A18として“01”を出力し、フラッシュメモリ2は、有効セクタとしてセクタ5を選択する。この結果、フラッシュメモリ・ライト装置28がフラッシュメモリ2のデータ入力端子群D_INに与えるプログラムコードやデータの更新値は、セクタ5にライトされることになる。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ2から更新値をリードして、更新値が正しくライトされているか否かをチェックし(ステップS5)、更新値が正しくライトされている場合(ステップS6でYESの場合)には、モード設定信号MD=“00”として、マイクロコンピュータ27を通常モードとし、CPU1からのフラッシュメモリ2へのリードアクセスを可能とする。
以後、セクタ5に更新値が正しくライトされる限り、更新値はセクタ5にライトされることになるが、セクタ5が寿命となり、更新値のリードチェックで、更新値が正しくライトされていないことが判明した場合(ステップS6でNOの場合)には、フラッシュメモリ・ライト装置28は、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“110”)の変更が可能か否かを判定する(ステップS7)。
ここで、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“110”)の変更が可能な場合(ステップS7でYESの場合)には、フラッシュメモリ・ライト装置28は、モード設定信号MD=“10”として、マイクロコンピュータ27をセクタ設定モードとし、フラッシュメモリ9に次の有効セクタ指示データ(本例の場合、“100”)をライトする(ステップS8)。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ9から有効セクタ指示データをリードし、有効セクタ指示データが正しくライトされているか否かをチェックし(ステップS9)、有効セクタ指示データが正しくライトされている場合(ステップS10でYESの場合)には、モード設定信号MD=“01”として、マイクロコンピュータ27をフラッシュメモリ・ライトモードとし、フラッシュメモリ2に更新値をライトする(ステップS4)。
この場合、フラッシュメモリ9には、有効セクタ指示データとして“100”がライトされているので、データ変換回路10は、アドレス信号A19、A18として“10”を出力し、フラッシュメモリ2は、有効セクタとしてセクタ6を選択する。この結果、フラッシュメモリ・ライト装置28がフラッシュメモリ2のデータ入力端子群D_INに与えるプログラムコードやデータの更新値は、セクタ6にライトされることになる。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ2から更新値をリードし、更新値が正しくライトされているか否かをチェックし(ステップS5)、更新値が正しくライトされている場合(ステップS6でYESの場合)には、モード設定信号MD=“00”とし、マイクロコンピュータ27を通常モードとし、CPU1からのフラッシュメモリ2へのリードアクセスを可能とする。
以後、セクタ6に更新値が正しくライトされる限り、更新値はセクタ6にライトされることになるが、セクタ6が寿命となり、更新値のリードチェックで、更新値が正しくライトされていないことが判明した場合(ステップS6でNOの場合)には、フラッシュメモリ・ライト装置28は、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“100”)の変更が可能か否かを判定する(ステップS7)。
ここで、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“100”)の変更が可能な場合(ステップS7でYESの場合)には、フラッシュメモリ・ライト装置28は、モード設定信号MD=“10”として、マイクロコンピュータ27をセクタ設定モードとし、フラッシュメモリ9に次の有効セクタ指示データ(本例の場合、“000”)をライトする(ステップS8)。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ9から有効セクタ指示データをリードし、有効セクタ指示データが正しくライトされているか否かをチェックし(ステップS9)、有効セクタ指示データが正しくライトされている場合(ステップS10でYESの場合)には、モード設定信号MD=“01”とし、マイクロコンピュータ27をフラッシュメモリ・ライトモードとし、フラッシュメモリ2にプログラムコードやデータの更新値をライトする(ステップS4)。
この場合、フラッシュメモリ9には、有効セクタ指示データとして“000”がライトされているので、データ変換回路10は、アドレス信号A19、A18として“11”を出力し、フラッシュメモリ2は、有効セクタとしてセクタ7を選択する。この結果、フラッシュメモリ・ライト装置28がフラッシュメモリ2のデータ入力端子群D_INに与えるプログラムコードやデータの更新値は、セクタ7にライトされることになる。
次に、フラッシュメモリ・ライト装置28は、フラッシュメモリ2から更新値をリードし、更新値が正しくライトされているか否かをチェックし(ステップS5)、更新値が正しくライトされている場合(ステップS6でYESの場合)には、モード設定信号MD=“00”とし、マイクロコンピュータ27を通常モードとし、CPU1からのフラッシュメモリ2のセクタ7へのリードアクセスを可能とする。
以後、セクタ7に更新値が正しくライトされる限り、更新値はセクタ7にライトされることになるが、セクタ7が寿命となり、更新値のリードチェックで、更新値が正しくライトされていないことが判明した場合(ステップS6でNOの場合)、フラッシュメモリ9にライトされている有効セクタ指示データ(本例の場合、“000”)の変更が可能であるか否かを判断する(ステップS7)。
本例の場合、フラッシュメモリ9には有効セクタ指示データとして最後の有効セクタ指示データ“000”がライトされているので、有効セクタ指示データの変更は不可能である。そこで、この場合、フラッシュメモリ・ライト装置28は、エラーを表示し(ステップS11)、マイクロコンピュータ27の制御を終了する。
また、ステップS10でNOの場合、即ち、フラッシュメモリ9に有効セクタ指示データを正しくライトできなかった場合には、フラッシュメモリ9は寿命であるとみなして、フラッシュメモリ・ライト装置28はエラーを表示し(ステップS12)、マイクロコンピュータ27の制御を終了する。なお、フラッシュメモリ2にライトした更新値のリードチェック(ステップS5)は、1データ毎に実行しても良いし、セクタ内の全データを単位として実行するようにしても良い。
以上のように、本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ27によれば、CPU1がリードするプログラムコードやデータを格納する不揮発性メモリとして、4個のセクタ4〜7を有するフラッシュメモリ2が設けられていると共に、フラッシュメモリ・ライト装置28から与えられる有効セクタ指示データが指示するセクタを選択するためのセクタ選択信号(アドレス信号A19、A18)を生成するセクタ選択信号生成回路8と、フラッシュメモリ2に対するアクセスを制御するセレクタ19〜26が設けられている。
したがって、フラッシュメモリ2のセクタ4〜7のうち、有効とされているセクタが寿命となったか否かを判断し、有効とされているセクタが寿命となったときは、未使用のセクタを新たに有効なセクタとするための有効セクタ指示データをセクタ選択信号生成回路8に与えるという動作をフラッシュメモリ・ライト装置28に実行させることにより、有効とするセクタを、寿命となったセクタから未使用のセクタに自動的に交替させることができ、ユーザからは、寿命の長いフラッシュメモリ2を内蔵しているように見える。
なお、本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ27においては、プログラムコードやデータを格納する不揮発性メモリとして、4つのセクタを有する1個のフラッシュメモリ2を設けるようにしているが、この代わりに、複数のフラッシュメモリを設けるようにしても良い。
また、本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ27においては、プログラムコードやデータを格納する不揮発性メモリとして、フラッシュメモリ2を設けるようにしているが、この代わりに、FRAM(強誘電体メモリ)を設けるようにしても良い。
本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータの一部分を示す回路図である。 本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータが内蔵するフラッシュメモリの概念図である。 本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータにフラッシュメモリ・ライト装置を接続した状態を示す回路図である。 本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ内のセレクタの通常モード時の状態を示す回路図である。 本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ内のセレクタのフラッシュメモリ・ライトモード時の状態を示す回路図である。 本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ内のセレクタのセクタ設定モード時の状態を示す回路図である。 図1に示すフラッシュメモリ・ライト装置による本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータの制御方法(本発明の半導体集積回路装置の制御方法の一実施形態)を示すフローチャートである。
符号の説明
1…CPU
2…フラッシュメモリ
3…メモリセル領域
4〜7…セクタ
8…セクタ選択信号生成回路
9…フラッシュメモリ
10…データ変換回路
11…モード設定信号入力端子
12…高電圧入力端子
13…リード信号入力端子
14…ライト信号入力端子
15…アドレス信号入力端子
16…データ入出力端子
17…データ入力バッファ
18…データ出力バッファ
19〜26…セレクタ
27…本発明の半導体集積回路装置の一実施形態であるマイクロコンピュータ
28…フラッシュメモリ・ライト装置
29…モード設定信号出力端子
30…高電圧出力端子
31…リード信号出力端子
32…ライト信号出力端子
33…アドレス信号出力端子
34…データ入出力端子
35…内部バス
36…RAM
37…周辺回路

Claims (4)

  1. 書き換え可能な複数のメモリ領域を有する第1の不揮発性メモリと、
    前記複数のメモリ領域のうち1つのメモリ領域を選択するためのデータが記録された第2の不揮発性メモリと、
    前記データを前記1つのメモリ領域を選択するための選択信号に変換するデータ変換回路と
    を有することを特徴とする半導体集積回路装置。
  2. 前記第2の不揮発性メモリへの前記1つのメモリ領域を選択するためのデータの書き込みは、外部装置から書き込まれる
    ことを特徴とする請求項1に記載の半導体集積回路装置。
  3. 前記選択信号は、前記第1の不揮発性メモリのアドレスを指示する信号の一部であることを特徴とする請求項1又は2に記載の半導体集積回路装置。
  4. 外部装置が、第1の不揮発性メモリのうち選択信号生成回路によって選択される領域にデータを書き込む工程と、
    前記外部装置が、前記選択された領域を読み出し、前記データが正しく書き込まれたか否かをチェックする工程と、
    前記選択した領域に前記データが正しく書き込まれていないと判断された場合、前記外部装置は、前記選択した領域に替えて前記第1の不揮発性メモリ内の他の領域を有効とするデータを前記選択信号生成回路に書き込む工程と
    を含むことを特徴とする半導体集積回路装置の制御方法。
JP2007262975A 2007-10-09 2007-10-09 半導体集積回路装置及び半導体集積回路装置の制御方法 Pending JP2009093388A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007262975A JP2009093388A (ja) 2007-10-09 2007-10-09 半導体集積回路装置及び半導体集積回路装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007262975A JP2009093388A (ja) 2007-10-09 2007-10-09 半導体集積回路装置及び半導体集積回路装置の制御方法

Publications (1)

Publication Number Publication Date
JP2009093388A true JP2009093388A (ja) 2009-04-30

Family

ID=40665323

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007262975A Pending JP2009093388A (ja) 2007-10-09 2007-10-09 半導体集積回路装置及び半導体集積回路装置の制御方法

Country Status (1)

Country Link
JP (1) JP2009093388A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022190513A1 (ja) * 2021-03-08 2022-09-15 オムロン株式会社 通信制御装置、通信制御プログラム、rfidリーダシステム及びデータ記憶方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022190513A1 (ja) * 2021-03-08 2022-09-15 オムロン株式会社 通信制御装置、通信制御プログラム、rfidリーダシステム及びデータ記憶方法

Similar Documents

Publication Publication Date Title
US6556504B2 (en) Nonvolatile semiconductor memory device and data input/output control method thereof
US7768831B2 (en) Flash memory device and method of controlling flash memory device
JP5016841B2 (ja) 不揮発性半導体記憶装置
JP2008181642A (ja) フラッシュメモリ装置及び動作方法及びプログラム方法及びデータ読み出し方法
JP2007164839A (ja) 不揮発性半導体記憶装置及びその自己テスト方法
KR100837279B1 (ko) 과표본화 읽기 동작을 수행하는 플래시 메모리 장치 및그것의 인터페이싱 방법
JP2012203940A (ja) 半導体記憶装置及びその動作環境設定方法
JP5745136B1 (ja) 不揮発性半導体記憶装置とその書き込み方法
JP4577849B2 (ja) 半導体装置および半導体装置に対する制御方法
EP3057100B1 (en) Memory device and operating method of same
JP6473733B2 (ja) 半導体記憶装置およびその動作設定方法
JP2007207285A (ja) 半導体メモリ、メモリシステム
KR100953062B1 (ko) 불휘발성 메모리 소자의 어드레스 입력 방법 및 동작 방법
JP5258244B2 (ja) 半導体集積回路
JP2009093388A (ja) 半導体集積回路装置及び半導体集積回路装置の制御方法
JP4660316B2 (ja) 不揮発性メモリ装置
JP2012155788A (ja) Nand型フラッシュメモリ
US8423705B2 (en) Semiconductor device and method for controlling thereof
JP2004227736A (ja) 不揮発性半導体記憶装置
JP6035760B2 (ja) 半導体記憶装置及び半導体記憶装置の制御方法
KR20030038320A (ko) 반도체 메모리
JP2001306316A (ja) 制御回路およびそれを用いた半導体装置
JP6886547B1 (ja) 半導体記憶装置およびecc関連情報の読出し方法
JP2008226355A (ja) 半導体メモリ
JPH1186600A (ja) 不揮発性半導体記憶装置