(57)【特許請求の範囲】
【請求項１】
不揮発性メモリセルのマトリクスがＮ個の区域から構成され、前記Ｎ個の各区域がＰ個のセルから構成されるメモリカードの、前記区域の順位ｉと当該区域のセルの順位ｊで特定されるセルを、選択的にプログラミングする手段と、
前記順位ｉで特定される前記当該区域の全セルを、選択的に消去する手段と、
前記順位ｉの区域ごとに備えられ、且つ前記順位ｉと前記順位ｊで特定される前記セルと同時にプログラムされ、前記Ｎ個の区域の順位〔ｉ−１〕で特定される当該区域内のＰ個の全セルと同時に消去される補助セルと、
を有することを特徴とする集積回路。
【請求項２】
その重みの重い値は前記Ｎ個の区域の前記順位ｉを選択するために使用され、重みの軽い値は選択された前記順位ｉの前記当該区域の前記順位ｊのセルを選択するために使用されるカウンタと、
前記カウンタの重みの重い出力により制御されて、前記順位ｉが選択されると前記当該区域の前記順位ｊのセルと前記順位ｉの前記補助セルをプログラミングする電位をこれらのセルに印加することができ、且つ前記順位ｉが選択されたとき、順位〔ｉ−１〕（ｉ＞１）の当該区域の全セルと、前記順位ｉの前記補助セルとを消去する電位を印加することができる回路と、
を有することを特徴とする請求項１に記載の集積回路。
【請求項３】
前記マトリクスの不揮発性メモリセルと前記補助セルは、各々、選択トランジスタとフローティングゲートトランジスタを備え、前記マトリクスの順位〔ｉ−１〕の区域のセルのフローティングゲートトランジスタの制御ゲートは、前記順位ｉの区域の補助セルの補助フローティンゲートトランジスタの制御ゲートに接続されており、前記区域のセルのフローティングゲートトランジスタのソースは第１の共通導体に接続されており、前記補助フローティングゲートトランジスタのソースは前記第１の共通導体とは別個の第２の共通導体に接続されていることを特徴とする請求項１又は２に記載の集積回路。
【請求項４】
前記順位ｉの区域のフローティングゲートトランジスタの制御ゲートは、順位ｉのセルに読出電圧、消去電圧またはプログラミング電圧を印加することができる第３の共通導体に、順位ｉの制御トランジスタを介して接続されており、前記順位ｉの補助フローティングゲートトランジスタの制御ゲートは、前記順位ｉの補助セルに読出電圧、プログラミング電圧または消去電圧を印加することができる第４の共通導体に、順位ｉの補助制御トランジスタを介して接続されていることを特徴とする請求項３に記載の集積回路。
【請求項５】
前記順位ｉのセルの制御トランジスタと前記順位ｉの補助セルの補助制御トランジスタは、前記順位ｉのワード線によって制御されることを特徴とする請求項４に記載の集積回路。
【請求項６】
前記マトリクスの順位ｉの区域のセルに対応する各選択トランジスタは、前記順位ｉのワード線によって制御されて、前記フローティングゲートトランジスタをビット線に接続し、前記順位ｉの補助セルの選択トランジスタは前記順位ｉのワード線によって制御されて、前記補助セルの前記補助フローティングゲートトランジスタを、全ての補助セルに共通な補助ビット線に接続し、前記補助ビット線には、プログラミングモードまたは消去モードにおいて、マトリクス内のプログラムまたは消去されるべきセルに対応する順位ｊのビット線に印加される電位と同じ電位が印加されることを特徴とする請求項３〜５のいずれか１項に記載の集積回路。
【請求項７】
前記補助ビット線は、補助セルの状態を読み出すために読出増幅器に接続されていることを特徴とする請求項６に記載の集積回路。
【請求項８】
各々Ｐ個のセルからなるＮ個の区域を有するマトリクスに組織化された不揮発性メモリを含み、各区域はすぐ下の順位の区域の重みのＰ倍の重みを有している、メモリカードの決済の単位をカウントダウンする方法であって、１単位をカウントダウンするために、区域の順位の大きくなる順番に従ってメモリを操作して最初の消去されているセルを検索し、その発見した消去されているセルをプログラミングし、当該セルが最下位の区域に位置しない時、発見したセルの順位のすぐ下の順位の区域を消去して、プログラムの開始に戻る反復プログラムを実施する過程に、消去されているセルと同時にその消去されているセルが位置する区域に付属する補助セルをプログラミングし、それに続いて、すぐ下位の区域の全セルが消去されると同時にこの補助セルを消去する動作を含むことを特徴とする方法。
【請求項９】
前記メモリカードへの電源がオンされると、カウントダウンプロシージャの前に、プログラムされている前記補助セルを検索し、該補助セルと該補助セルのすぐ下位の区域の全セルを同時消去することを特徴とする請求項８に記載の方法。
【請求項１０】
前記メモリカードは、前記マトリクスのセルのアドレスカウンタを備え、消去されたセルの検索は、プログラムのため消去されているセルが見つかるまで、前記アドレスカウンタをインクリメントして、指定されたセルの状態を読み出し、前記消去されているセルが見つかると、前記アドレスカウンタをインクリメントせずに指定されたセルをプログラムし、そのとき、前記アドレスカウンタによって指定されたセルが重みの最も軽い区域に属していない時は、前記アドレスカウンタの状態を変化させずに発見したセルの順位のすぐ下の区域の全セルを消去する段階を備えることを特徴とする請求項８または９に記載の方法。
【請求項１１】
請求項１〜７の１つに記載の集積回路を使用するメモリカード。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ＩＣカード（チップカード）、特に品物またはサービスを使用するたびに（カウントすなわち決済）単位をカウントダウンする前払手段として使用されるＩＣカードに関するものである。しかし、本発明は、ＩＣカードのこの使用法に限定されてない。より一般的には、不揮発性の電気的に消去可能でプログラム可能なメモリ（ＥＥＰＲＯＭ）セルによって単位をカウントアップまたはカウントダウンしなければならない用途に関するものである。
【０００２】
【従来の技術】
非同期カードとも呼ばれるマイクロプロセッサをベースとするＩＣカードでは、カウント方法は有効であり、用途に合わせることができ、不正または操作エラーに対して保護される。しかしながら、マイクロプロセッサのないＩＣカードすなわち同期カード（コストが低いという利点がある）では、その方法は融通がきかず、あまり確実ではない。
【０００３】
今日、同期カードに最も適した原理であると思われるカウント原理は、そろばん原理であって、それによって、少数のＥＥＰＲＯＭセルで、多数の単位のカウントが可能になる。この原理の利点は、製造が容易であることであり、従って、コストがあまり高くないことである。
【０００４】
そろばん型カウントでは、メモリは、Ｐ個のセルのＮ個の区域、実際には、各々Ｐ個のセルからなるＮ個の行に組織化される。１つの行においてプログラムされるセルの数は、記憶された単位の数を示す数であり、行の順位または桁位置はこの数の重みを示す。行に割り当てられた重みは、すぐ下の順位または桁の行の重みのＰ倍である。単位の全体のカウントの数は、各行の重みによって重み付けられた、各行のプログラムされたセルの数の合計である。
【０００５】
例えば、各々８０  、８１  及び８２  、すなわち１、８及び６４の重みを有する第１、第２及び第３の行に、各々ｘ個のセル、ｙ個のセル及びｚ個のセルを有する、各々８個のセルからなる３つの行のメモリでは、メモリによって示される単位の合計カウント数はｘ＋８ｙ＋６４ｚである。この２４個のセルからなるメモリは、０から５８４  までカウントアップし、５８４  から０までカウントダウンすることができる。
【０００６】
従来のように、以下の説明では、消去されたセルは論理「１」によって示され、プログラムされたセルは論理「０」によって示されるものとし、従って、メモリは、むしろ初期の総数から単位をカウントダウンするものであって、この総数をインクリメントすることによってカウントアップするものではないものとする。従来と逆を行うことにより、逆にすることができることはもちろんである。
【０００７】
例えば、８個のセルからなる３つの行を備えるメモリの例に戻り、初期カウント値が１９４（十進法で表示）  、すなわち、ｚ＝３、ｙ＝０、ｘ＝２であると仮定する。
このメモリの初期パターンは以下の通りである。
0003613688.tif 000002
【０００８】
１単位分のカウントダウンは、最後の行の消去されたセルを０にプログラムして、ｘを１にし、カウント値を１９１  にすることからなる。また、さらに１つの単位をカウントダウンするために、最後の行の別のセルをプログラムし、ｘを０にし、カウント値を１９２  にする。
この時、メモリの２４個のセルのパターンは、下記のようになる。
１１１０００００
００００００００
００００００００                        カウント値      １９２
【０００９】
ここでは、もはや単位の重みでセルをプログラムすることができないので、問題がより困難になる。
従って、そろばん型のカウントに適切な中間シーケンスを用意する。このシーケンスは、この実施例では、下記のことからなる。
（ａ）  第１の行の『１』のセル（実際、最後の行から最初の行まで遡るときに出会う最初の１のセルであり、ここでは、第２の行にはないので、第１の行のセルである）を『０』にプログラミングする。パターンは下記のようになる。
１１００００００
００００００００
００００００００
（ｂ）第２の行全体の消去（すなわち、プログラミングが実行された行に続く行全体の消去）。パターンは下記のようになる。
１１００００００
１１１１１１１１
００００００００        カウント値は以前のように実際１９２  である。
【００１０】
しかしながら、軽い重みの行に消去されたセルがないので、１単位ごとにカウントダウンするのは必ずしも可能ではない。その時、上記と同じシーケンス、すなわち、ａ続いてｂを再度実施する。
（ａ’）  最後の行から最初の行まで遡る時に出会う最初の『１』のセルを『０』にプログラミングする。パターンは下記のようになる。
１１００００００
１１１１１１１０
００００００００
（ｂ’  ）プログラミングを実行した行に続く行全体の消去。パターンは下記のようになる。
１１００００００
１１１１１１１０
１１１１１１１１        カウント値はやはり１９２  である。
【００１１】
しかしながら、現在では、重みの最も軽い軽い行のセルを連続してプログラムすることによって単位ごとにカウントダウンすることが可能である。
従って、１単位のカウントダウンの原理は、下記の反復プロシージャ（反復手順）を実行することからなる。すなわち、消去されたセル（１で）について重みの大きくなる順位でメモリを調べることによってメモリ内で検索を実施し、このセルをプロクラムし（０にする）、そのプログラムしたセルが重みの最も軽い行に属していない場合には、直ぐ下の順位の行全体を消去し（１にする）、プロシージャ（手順）を再開始する。
【００１２】
【発明が解決しようとする課題】
しかしながら、この反復プロシージャは、かなり単純であるが、欠点があることが分かる。すなわち、反復プロシージャの（ａ）及び（ａ’）段階の間のメモリの中間パターンを再度観察すると、これらの段階の終りにメモリに含まれる残高は各々１２８  及び１８４  であるが、これらの段階はまだ１単位のカウントダウンが行われていない時実行される中間段階であるので、１９２  でなければならないことが分かる。
従って、偶然、例えばＩＣカードがその読取器から取り出されることによってこの段階中に電流を遮断されることがあると、その時、メモリは、実際の残高が何であれ全く関係のない誤った残高を保持する。
【００１３】
これは、ある用途では、大きな欠点であることが理解されよう。例えば、メモリ内の残高が、その保持者が使用できる預金である場合はそうである。すなわち、この預金の一部は永久に失われる。他の用途では、反対のことが起こりうる。いずれにせよ、この状況は、望ましくない。
本発明は、この欠点を解消することを目的とする。
【００１４】
【課題を解決するための手段】
本発明によると、不揮発性メモリのセルの各行（重みの最も軽い行は除く）に補助の不揮発性メモリセルを加えることが提案されている。このメモリセルは、当該行のセルのプロクラミング中は第１の状態に置かれ、すぐ下位の行の消去の間第２の状態に置かれる。ここでは、「プログラミング」という語は、第１の状態への移行を意味し、「消去」という語は第２の状態への移行を意味する。従って、プロクラミングの概念は相互交換可能であり、単純に、使用上の慣行による。例えば、ＥＥＰＲＯＭでは、「消去」という語は、従来、フローティングゲートでの電子の蓄積に用いられるが、その逆の場合でも本発明を適用することができる。
【００１５】
メモリカードを読取器から引っ張り出されても、または、１つの行の１つのセルのプログラミングと次の行の消去との間に時ならぬ電力カットが生じても、その時、補助セルにメモリ内の情報ビットを保持する。再度ＩＣカードを読取器に挿入すると、補助メモリセルが検査される。第２の状態のセルが検出されると、反復のａ段階（セルのプログラミング）とｂ段階（行の消去）との間で動作の時ならぬ中断があったことを意味する。また、問題となる行がわかる。この時、すぐ下の順位を有する行は、後続するカウントダウン段階の前に、消去される。
【００１６】
従って、本発明によれば、単位の残高を記憶するためのメモリカード（及びＩＣカードの集積回路）であって、そのメモリは、メモリ内の順位（ランク）ｉ、ｊ（ｉは区域の順位（ｉ＝１〜Ｎ）を示し、ｊは区域内のセルの順位（ｊ＝１〜Ｐ）を示す）を有するセルを選択的にプログラミングする手段と、選択した区域の全てのセルの選択的に消去する手段とを備える、各々Ｐ個のセルからなるＮ個の区域を有するマトリクスに組織化された不揮発性メモリを備え、順位ｉの区域の各々に、補助セルと、この補助セルを順位ｉの区域の他のいずれかのセルと同時にプログラムし、この補助セルを順位〔ｉ−１〕の区域のセルが消去されると同時に消去する手段とを備えることを特徴とするメモリカードが提供される。
【００１７】
好ましい実施例によると、集積回路は、アドレスカウンタを備え、その重みの重い出力は順位ｉの区域を示すために使用され、重みの軽い出力は区域内の順位ｊのセルを示すために使用される。この時、カウンタの重みの重い出力によって制御される回路が設けられるならば、これらの回路は、順位ｉの区域がカウンタによって選択されると、順位ｉを有する区域内の１つのセルと順位ｉを有する補助セルにプログラミング電圧を印加することができ、カウンタの状態の変化なしに、すなわち、行ｉが選択された時は常に、順位〔ｉ−１〕（ｉ＞１）の区域のセルと順位ｉの補助セルに消去電圧を印加することができる。
【００１８】
かかる構成により、メモリカードとそれが差し込まれるカード読取器との間の極めて単純化された通信プロトコルでさえ、反復カウントダウンプロシージャを実施することが極めて容易であることが分かるであろう。実際、８コンタクトカードの読取プロトコルの大部分は、カウンタのインクリメント、指定されたセルの状態の読み出し、指定されたセルのプログラミング、行の消去等の極めて少数の可能な命令を規定する。本発明によって、順位ｉの行をプログラムした後、順位〔ｉ−１〕の行を消去しなければならないにもかかわらず、カウンタを逆方向に戻す必要が全くなく、反復プロシージャを実施することが可能になる。
【００１９】
不揮発性メモリセル及び補助セルは、好ましくは、選択トランジスタとフローティングゲートトランジスタと直列接続された装置によって構成されている。
後述するように、順位が〔ｉ−１〕の区域のフローティングゲートトランジスタの制御ゲートは、順位がｉの補助セルの補助フローティングゲートトランジスタの制御ゲートに接続されている。
本発明による装置の好ましい特徴は、後で詳細に説明する。
【００２０】
メモリカード回路及び対応するメモリカードの他に、本発明は、また、カード読み取り機の制御下での同期カード内の単位のカウントダウン方法に関するものである。
本発明による方法は、各々Ｐ個のセルからなＮ個のマトリクスに組織化された不揮発性メモリを含むメモリカードからの残高の単位にカウントダウンの方法であって、各区域はすぐ下の順位の区域の重みのＰ倍の重みを有する。１単位をカウントダウンするためには、その方法は、下記の反復プロシージャを実施することからなる。すなわち、区域に順位の大きくなる順番に従ってメモリを調査することによって第１の消去されたセルの検索を実施し、このセルをプログラムし、そのセルが最下位の区域に位置しない時、発見したセルの順位のすぐ下の順位の区域を消去し、反復プログラムの開始に戻ることからなる。上記方法は、消去されたセルがプログラムされるのと同時に消去されたセルが位置する区域に付属する補助セルをプログラミングし、次に、すぐ下位の区域が消去されると同時に上記補助セルを消去することを含むことを特徴とする方法である。
【００２１】
この場合、カウントダウンプロトコルは、メモリカードへの電源がオンになると、カウントダウンプロシージャの前に、下記の予備段階を実施することが好ましい。すなわち、補助セルの検索と、順位がｉの補助セルがプログラムされた状態であるときは、この順位ｉのセルとすぐ下の順位〔ｉ−１〕の区域の全てのセルの同時消去を行う。
【００２２】
反復プロシージャについては、好ましくは、セル指示カウンタをインクリメントし、マトリクスの連続したセルの状態を、最下位の区域から開始して消去されたセルが発見されるまで読み出し、カウンタをインクリメントすることなしにこのセルをプログラムする段階を実行し、次に、カウンタによって指定されたセルが最下位の重みを有する区域に属していない時、カウンタの状態を変化させずに消去段階を実行し、反復プロシージャを再開始する段階を備える。
本発明のその他の特徴及び利点は、添付図面を参照して行う下記の詳細な説明から明らかになろう。
【００２３】
図１は、残高の単位の各々の重みを示すメモリ区域が、各々８個のセルからなる行（Ｐ＝８）で構成され、そのような行が、重みが大きくなるように３つ（Ｎ＝３）設けられ、（図面を横長に見た場合に）最下部の行が重みが最も低い行である実施例のメモリを図示したものである。
好ましくは、各不揮発性メモリセルＣ（ｉ、ｊ）は、選択トランジスタＴＳとフローティングゲートトランジスタＴＧＦを有する。トランジスタは、（ｉ、ｊ）で特定し、ｉは、（図面を横長に見た場合の）最下部（重みが軽い）から数え始める番号（順位）を示し、ｊは、列の番号（順位）を示す。
【００２４】
フローティングゲートトランジスタＴＧＦは、全てのセルに共通である導体ＡＧ１に接続されたソースを備え、アース化されているかまたはフローティングのままである。同じ順位ｉの行の全てのフローティングゲートトランジスタのフローティングゲートは、同じ順位ｉを有する制御トランジスタ（ＴＣ１、ＴＣ２、ＴＣ３）のソースに接続されている。この制御トランジスタＴＣ１、ＴＣ２またはＴＣ３のゲートは、順位ｉのワード線導体によって制御される。例えば、行１では、フローティングゲートトランジスタのゲートは全て、制御トランジスタＴＣ１のソースに接続されており、その制御トランジスタのゲートはワード線導体ＷＬ１に接続されている。
【００２５】
トランジスタＴＣ１、ＴＣ２、ＴＣ３は、選択された行（ワード線によって）のフローティングゲートトランジスタのゲートに読み出し電圧、プログラミング電圧または消去電圧を印加するために使用される共通の導体ＣＧ１に接続されているドレインを有する。
セルの選択トランジスタＴＳのソースは、同じセルのフローティングゲートトランジスタＴＧＦのドレインに接続されている。同じ順位ｉの行の全ての選択トランジスタＴＳのゲートは、同じ順位を有するワード線に接続されている。さらに、選択トランジスタのドレインは、順位ｊを有するセルについては順位ｊのビット線ＢＬｊに接続されてる。順位ｊのビット線は、順位ｊの列の全セルの選択トランジスタのドレインを接続している。
ビット線ＢＬ０、ＢＬ１、・・・ＢＬｊは、マトリクスのセルの列の選択を可能にする列マルチプレクサＭＵＸの出力に接続されている。
【００２６】
メモリカード読取器によってインクリメントまたは零にリセットされるカウンタＣＰＴは、Ｎ行・Ｐ列のマトリクスの所定のセルＣ（ｉ、ｊ）を指定するために使用される。カウンタの重みの重い出力は、Ｎ行の内の順位ｉの行を選択する。そのｉはカウントが進行するにつれて大きくなる。重みの軽い出力は、カウントが進行するにつれて行の内の様々なセルを連続的に指定するようにマルチプレクサを制御する。従って、カウンタのインクリメントによって、ｉの値が大きくなる順番で、そして、各ｉの値でｊの値が大きくなる順番で、メモリを走査することができる。
【００２７】
列マルチプレクサＭＵＸはさらに、読出増幅器ＳＡに接続されており、読出増幅器は、その出力Ｓに、ワード線とビット線とによって指定されたセルの状態についての情報要素を出力する。この出力Ｓは、カード読取器によってアクセス可能であり、メモリカードと読取器との間で情報の交換を実施する。
また、マルチプレクサＭＵＸは、選択されたビット線（カウンタＣＰＴの重みの軽い値によって）に、消去用の零電位またはプログラミング用の高電位を印加することができる。これらの電位は、書込み回路ＷＲＣから供給される。
【００２８】
第１の行（ｉ＝１）を除いて、順位ｉの行には各々補助の不揮発性メモリセルが備えられている。この補助セルは、行２及び行３の各々ごとに設けられた、補助フローティングゲートトランジスタＴＧＦＡ２またはＴＧＦＡ３と、補助選択トランジスタＴＳＡ２またはＴＳＡ３とを備える。さらに、補助制御トランジスタＴＣＡ２またはＴＣＡ３は、各補助セルごとに設けられている。
【００２９】
順位ｉの行の補助フローティングゲートトランジスタのゲートは、同じ順位の補助制御トランジスタのソースに接続されており、補助フローティングゲートトランジスタのドレインは、同じ順位の補助選択トランジスタのソースに接続されている。補助フローティングゲートトランジスタのソースは全て、制御導体ＡＧ２に接続されており、この制御導体Ａ２は導体ＡＧ１と類似した役割を果たし、すなわち、アースされているかまたはフローティング状態のままである（しかし、導体ＡＧ１とは独立している）。
【００３０】
順位ｉの補助選択トランジスタのゲートと順位ｉの補助制御トランジスタのゲートは、同じ順位ｉのワード線導体に接続されている。
全ての補助選択トランジスタの全てのドレインは、詳細に後述するように補助セルのために補助ビット線の役割を果たす共通導体ＢＬＤＥＣに接続されている。
【００３１】
更に、順位ｉの補助フローティングゲートトランジスタのゲートは、直ぐ下の順位〔ｉ−１〕の行の全てのフローティングゲートトランジスタのゲートに接続されている。従って、トランジスタＴＧＦＡ３のゲートは、第２の行のフローティングゲートトランジスタの全てのゲートに接続されている。また、トランジスタＴＧＦＡ２のゲートは、第１の行のフローティングゲートトランジスタのゲートに接続されている。
【００３２】
導体ＢＬＤＥＣは、補助セルの補助ビット線として作用する。補助セルの状態を読み出すモードでは、これらのセルの状態を集積回路の出力Ｓに転送することができる。順位ｉの行のプログラミングモードでは、マルチプレクサによって線ｔ楽されたビット線で指定されたメモリセルにプログラミング電圧（２０Ｖ）のレベルを供給するのと同様な方法で且つ同時にプログラミング電圧（例えば２０Ｖ）を供給する。導体ＢＬＤＥＣは、読出増幅器ＳＡと書込み回路ＷＲＣに接続されているように示される。
【００３３】
図２、図３及び図４は、メモリセルのプログラミング、消去または読出を実施するために様々な導体に供給されなければらない信号を示したものである。
行ｉと列ｊの交点に位置する、マトリクス内のセルのプログラミングのためには、導体ＣＧ１はアースされ、導体ＡＧ１はフローティング電位に接続され、指定された行（ｉ＝１〜Ｎ）のワード線ＷＬｉは例えば２０Ｖにされ、順位ｉの制御トランジスタ（ＴＣ１、ＴＣ２またはＴＣ３）と行ｉのセルの全選択トランジスタを同時に導通にする。指定されたセルのビット線ＢＬｊは、約２０Ｖのプログラミング電圧にされる。
【００３４】
同様に、行ｉの補助セルのプログラミングのためには、ＣＧ２がアースされ、ＡＧ２はフローティングにされ、順位ｉの補助選択トランジスタ（ＴＳＡ２またはＴＳＡ３）がオンにされ、更に、同じ順位の補助制御トランジスタ（ＴＣＡ２またはＴＣＡ３）もオンにされる。
マトリクスの行ｉのセルのプロクラミングが同じ行の補助セルのプログラミングと同時に実施されなければならないので、対応するタイミング図を、図２に一緒に示した。
マトリクスの順位〔ｉ−１〕の行を消去するために、本発明の特徴は、（従来の方法とは異なり）導体ＣＧ１（消去すべきワードの順位〔ｉ−１〕のワード線によって指定されて２０Ｖにされていなけれはならない）  は使用されないことである。
【００３５】
ここでは、行ｉは、人工的に選択され、一方、行〔ｉ−１〕を消去しようとする。２０Ｖにされるのは導体ＣＧ２であり、導体ＣＧ１ではない。導体ＣＧ１はアースされるまたはフローティングである。これは、消去に対して選択した順位ｉの行を保護する。順位ｉのワード線は、この順位ｉの行の制御トランジスタを導通にする電位にされる。行〔ｉ−１〕の制御トランジスタはオフのままであり、従って、この行〔ｉ−１〕のフローティングゲートトランジスタのゲートがアースされることを防ぐ。しかしながら、一方、これらのゲートは、行ｉの補助制御トランジスタのソースに現れる電圧を受ける。この行ｉの補助制御トランジスタは、選択された順位ｉのワード線によって制御されているので導通である。ＣＧ２は、２０Ｖの消去電圧である。従って、この電圧は、また行ｉの補助フローティングゲートトランジスタのゲートで受けられるのと同時に、行〔ｉ−１〕の全フローティングゲートトランジスタのゲートで印加される。導体ＡＧ１及び導体ＡＧ２は、アースされる。従って、これらのフローティングゲートトランジスタは全て消去される。
【００３６】
図３は、行〔ｉ−１〕のセルと順位ｉの補助セルを消去するためのプロシージャの要約図である。この消去プロシージャの間、マトリクスの全ビット線がアースされるので、補助ビット線ＢＬＤＥＣがアースされるのが分かるであろう。
読出では、アースに接続されたマトリクスのセルの状態の読出（この時、ＡＧ１はアースに接続されているか、またはフローティング状態のままである）と、または、反対に、補助セルの状態（この時、ＡＧ２はアースに接続されているかまたはフローティングのままである）の読出との間で、選択が行わなければならない。順位ｉのワード線の導体は、順位ｉの選択トランジスタおよび制御トランジスタを導通にする電位にされる。導体ＣＧ１は、約１〜５Ｖの読出電位、例えば、２Ｖにされる。ＡＧ１がアースに接続されている時、その時出力Ｓに転送されるのは、ワード線及び列マルチプレクサによって指定される行ｉ、順位ｊのセルの状態である。反対に、ＡＧ２がアースに接続されている時には、その時、出力に転送される順位ｉの補助セルの状態である。
図４は、読出動作のために使用される信号の概略図である。
【００３７】
集積回路は、メモリに記憶された単位のカウントダウンを管理する標準機能を有するカード読出器の制御下で、下記のように動作する。
カード読取器は、標準的には、下記の命令を実行することができる。
・初期化、
・１つの行内のセルを順番に、そして連続した行を１からＮへ順番に、連続してメモリセルを指定するようにメモリを走査するようにアドレスカウンタＣＰＴのインクリメント、
・指定されたセルの読出、
・アドレスカウンタによって指定されたセルのプロクラミング、
・アドレスカウンタの最も重い重み出力によって指定された行全体の消去。
【００３８】
また、本発明を実施するために、読取器は、アドレスカウンタの重い重み出力によって指定された行の補助セルの読出専用命令を出力することができなければならない。この命令は、マトリクスのメモリセルの読出の命令とは異なる。実際、図４を参照して下記に説明するように、異なる電位に対応する。
メモリカードを挿入すると、読取器は、最初、補助セルの状態を確認するためのプロシージャを実施する。このため、カウンタを初期化して、カウンタをインクリメントし、カウンタの各々重い重み出力のインクリメントの後、すなわち、新しい順位ｉのたびに、メモリの補助セルの読み出しを実施する。毎回出力される読出命令は、導体ＡＧ１ではなく、導体ＡＧ２をアースに接続する。
【００３９】
一般的に、全ての補助セルは消去状態である。なぜならば、補助セルの１つがプログラムされている時、これは、カウントダウン相で異常な中断があったからである。以下の説明では、プログラムされた補助セルが検出された場合を参照する確認プロシージャについて戻る。
確認プロシージャの後、読取器は、１単位カウントダウンプロシージャを実行することができる。これは、アドレスカウンタの再初期化と、第１の行（最も軽い重み）から始めて、１行ずつメモリを走査して、最初の消去されたセルを探す検索とから開始される反復プロシージャである。このため、読出及びインクリメントの交互の動作を連続して実施する。従って、マトリクスのセルの読み出し動作である。従って、毎回、０にセットされるのは導体ＡＧ１であり、ＡＧ２ではない。
【００４０】
消去されたセル（順位ｉ、ｊのセル）が見つかると、アドレスカウンタは停止したままとなり、カード読取器はカウンタの状態を変更することなく、指定されたセルのプログラミング段階、続いて、行の消去段階を含むシーケンスを実行する。しかしながら、プロシージャは、指定されたセルが第１の行に属する時、消去段階の前に停止する。他の行に属する時は、行消去を実施して、反復プロシージャを再開始する。
【００４１】
上記のように、プロクラミング命令は、以下の電位、すなわち、ＢＬｊ＝２０Ｖ、ＣＧ１＝ＣＦＧ２＝０Ｖ、ＡＧ１及びＡＧ２はフローティング、ＢＬＤＥＣ＝２０Ｖ、ＷＬｉ＝２０Ｖを与える。これは、順位ｉ、ｊのセルと順位ｉの補助セルの両方をプログラムする。
２つの可能性がある。１つは、カウンタが第１の行（ｉ＝１）を指定し、１単位カウントダウンプロシージャが終了する。もう１つは、他の行（ｉ＞１）を指定し、プロシージャは行消去命令を続けて実行しなければならない。
【００４２】
次に、カウンタの状態を変更をすることなく、消去命令が実施される。これによって、指定された行ｉの消去ではなく、上記に説明したように、行〔ｉ−１〕の全てのセルと順位ｉの補助セルの同時消去を実施する。実際、消去命令は、同時に以下の電位、ＣＧ１＝０、ＣＧ２＝２０Ｖ、ＷＬｉ＝２０Ｖ、ＢＬ１＝ＢＬ２＝・・・＝ＢＬＤＥＣ＝０、ＡＧ１＝ＡＧ２＝０を与える。
次に、カウントダウンプロシージャが再開始される。すなわち、カウンタを再初期化し、メモリを走査して、最初の消去されたセルを見つける。カウントダウンプロシージャは、最初に見つかった消去されたセルが本当に第１の行にあるようになるまで反復して実施される。このセルは、プログラムされ、反復プロシージャは終了する。
【００４３】
メモリカードが給電されている時、読取器によって実施される初期の確認がプログラム状態の順位ｉの補助セルの存在を示すものと仮定すると、読取器は、カウントダウンプロシージャを実施する前に、順位〔ｉ−１〕の行の消去の動作をトリガしなければならない。
カウンタは、この行ｉを示す位置に停止したままである。上記のように、消去命令は、カウンタの状態を変更することなく実施され、それによって、行ｉではなく、行〔ｉ−１〕の消去と順位ｉの補助セルの同時消去が実施される。これによって、メモリを、反復プロシージャが異常に中断されることがなかった時有するべきであったカウント値に戻るようにする。この時、上記の反復プロシージャを実行することが可能である。
【００４４】
実際、読出器による補助セルの読出はない。これは、本発明の装置が備えていない現存する装置との両立性の問題のためである。この場合、メモリセル及び補助セルの読出は、各外部読出命令に対して実行される。図４に図示した信号のクロックのタイミングは、各クロックパルスのたびに実行される。この読出の結果は、次に、２つの異なるレジスタに記憶され、これらのレジスタの１つはメモリセルの状態を示し、もう１つのレジスタは補助セルの状態を示す。読取器は、メモリセルの状態だけを読み出すことができる（回路のテスト中を除いて）。その時、不揮発性補助セルを検出するプロシージャは下記の通りである。
１．電源をオンにする
２．カウンタの第１の行までメモリを読み出す。
３．当該行の消去の命令を実行する。電流のカットが問題が起きたならば、その時対応する補助セルは０になる。この場合、回路は、次の行を消去することができる（ＣＧ２＝２０Ｖ、ＣＧ１＝０またはフローティング、ＡＧ１＝ＡＧ２＝０でそろばんの消去）。そうでない時は、何も変化しない。
４．カウンタの行のインクリメント。
この操作が最後の行まで続けられる。
【００４５】
このプロシージャでは、回路は、読取器に行番号を指定しないで適切に消去されなかった行を消去することができる。読取器が問題となる特定の行を確認することができるは、この消去が実施された後のみである。ある回路では、消去命令はプログラミング命令の後にだけ実行することができる。この場合、電源がオンになると、読取器は消去を実施するために、カウンタの各行のプログラムされたセル（０にプログラムする）に位置されなければならない。従って、カウンタのほかのビットを「０」にはプログラムしない。行が０を全く有していないならば、読取器は消去を実行しない。これは、必ずしも電流カットの問題がないので、不必要である。
【図面の簡単な説明】
【図１】本発明によるメモリを図示している。
【図２】メモリセルのプログラミング動作中に印加される電位のグラフである。
【図３】行消去動作中に印加される電位のグラフである。
【図４】マトリクスのセルと補助セルの読出段階の間の電位のグラフである。
【符号の簡単な説明】
Ｃ（ｉ、ｊ）  メモリセル
ＣＰＴ  カウンタ
ＴＳ  選択トランジスタ
ＴＧＦ  フローティングゲートトランジスタ
ＴＣ１〜ＴＣ３  制御トランジスタ
ＴＧＦＡ２、ＴＧＦＡ３  補助フローティングゲートトランジスタ
ＴＳＡ２、ＴＳＡ３  補助選択トランジスタ
ＴＣＡ２、ＴＣＡ３  補助制御トランジスタ
ＡＧ１、ＡＧ２  制御導体
ＣＧ１  共通導体
ＷＬｉ  ワード線
ＢＬｊ  ビット線
【図１】
0003613688.tif 000003
【図２】
0003613688.tif 000004
【図３】
0003613688.tif 000005
【図４】
0003613688.tif 000006