JP3152595B2 - マイクロコンピュータの割り込み処理装置 - Google Patents

マイクロコンピュータの割り込み処理装置

Info

Publication number
JP3152595B2
JP3152595B2 JP25389995A JP25389995A JP3152595B2 JP 3152595 B2 JP3152595 B2 JP 3152595B2 JP 25389995 A JP25389995 A JP 25389995A JP 25389995 A JP25389995 A JP 25389995A JP 3152595 B2 JP3152595 B2 JP 3152595B2
Authority
JP
Japan
Prior art keywords
data
nonvolatile memory
interrupt
program counter
program
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
JP25389995A
Other languages
English (en)
Other versions
JPH0997176A (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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP25389995A priority Critical patent/JP3152595B2/ja
Publication of JPH0997176A publication Critical patent/JPH0997176A/ja
Application granted granted Critical
Publication of JP3152595B2 publication Critical patent/JP3152595B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データの書き込み
及び読み出しが可能なEEPROM等の不揮発性メモリ
の所定記憶領域を1チップマイクロコンピュータの動作
制御の為のプログラムデータ記憶領域として使用する、
マイクロコンピュータの割り込み処理装置に関する。
【0002】
【従来の技術】一般に、1チップマイクロコンピュータ
に内蔵される、該1チップマイクロコンピュータの動作
制御を行う為のプログラムデータを記憶するプログラム
メモリとしては、読み出し専用のマスクROM、書き込
み及び読み出しが可能なEPROM及びEEPROM等
がある。
【0003】後者の不揮発性メモリの場合、前者のマス
クROMに比べて、データの一部書き換えが可能という
利点を有している。具体的には、前記不揮発性メモリの
記憶領域は複数バイト単位(1ページ)毎の書き換えが
可能となっている。そして、書き換えデータを蓄える為
の前記複数バイトの記憶容量を有するRAMが設けられ
ている。前記RAMへのデータ書き込み動作は、前記不
揮発性メモリから読み出されたプログラムデータの解読
結果に基づき行われるが、前記RAMから前記不揮発性
メモリへのデータ書き込み動作時は、プログラム動作は
停止しており、ロジック回路等を用いてハード的に行わ
れる。言い換えれば、前記RAMから前記不揮発性メモ
リへのデータ書き込みが終了するまでは、プログラム動
作は再開されない構成となっている。
【0004】
【発明が解決しようとする課題】よって、前記RAMか
ら前記不揮発性メモリへのデータ書き込み時に、割り込
み要求が発生した場合、上記したデータ書き込みが終了
するまで、割り込み要求に基づく割り込み処理を実行で
きない問題があった。例えば、前記不揮発性メモリの1
ページを128バイトとすると、128バイト分のデー
タ書き込みには約5msec程度の時間を要することに
なり、急を要する割り込み処理には極めて不都合であっ
た。
【0005】そこで、本発明は、前記不揮発性メモリの
データ書き込みと平行して割り込み処理も実行できるマ
イクロコンピュータの割り込み処理装置を提供すること
を目的とする。
【0006】
【課題を解決するための手段】本発明は、前記問題点を
解決する為に成されたものであり、その特徴とするとこ
ろは、データの書き込み及び読み出しが可能な第1不揮
発性メモリを内蔵し、該第1不揮発性メモリの所定領域
に記憶されたプログラムデータに基づき、通常動作又は
割り込み要求に対応する割り込み処理動作を行う1チッ
プマイクロコンピュータにおいて、前記第1不揮発性メ
モリに書き込まれた割り込み要求に基づく割り込み処理
を実行する為のプログラムデータと同一のプログラムデ
ータが記憶された第2不揮発性メモリと、前記第1及び
第2不揮発性メモリをアクセスするプログラムカウンタ
と、各種割り込み要求に対応するアドレス値に前記プロ
グラムカウンタの値を変更する割り込みベクタ発生回路
と、前記第1不揮発性メモリの所定領域へのデータ書き
込み中に割り込み要求が発生した時、前記割り込みベク
タ発生回路を制御して、前記プログラムカウンタのアド
レス値を前記第2不揮発性メモリを指定する様にする制
御回路と、を備え、前記第1不揮発性メモリのデータ書
き込み動作と平行して割り込み処理を実行可能とした点
である。
【0007】
【発明の実施の形態】本発明の詳細を図面に従って具体
的に説明する。図1は本発明のマイクロコンピュータ割
り込み処理装置を示す図であり、1チップマイクロコン
ピュータの内部構成を示している。図1において、
(1)はEEPROM(第1不揮発性メモリ)であり、
1チップマイクロコンピュータの動作制御を行う為のプ
ログラムデータ及びその他の各種データが書き込まれた
ものである。該EEPROM(1)は「0000H」か
ら[7FFFH」までのアドレスを有するものとする。
但し、Hはヘキサデシマルである。また、該EEPRO
M(1)内部に示した破線の区切りが1ページ(例えば
128バイト)を表すものとする。該EEPROM
(1)は1ページ毎のデータ書き換えが可能である。
【0008】(2)はマスクROM(第2不揮発性メモ
リ)であり、「8000H」から「FFFFH」のアド
レスを有している。即ち、EEPROM(1)及びマス
クROM(2)のアドレスは、同一アドレス空間で連続
するアドレスとしている。別の見方をすると、EEPR
OM(1)及びマスクROM(2)のアドレスは、各
々、最上位ビットが「0」「1」と異なる。そして、該
マスクROM(2)には、EEPROM(1)に既に書
き込まれている割り込み処理の為のプログラムデータと
同一のプログラムデータが書き込まれる。尚、EEPR
OM(1)及びマスクROM(2)に対する割り込み処
理の為のプログラムデータの書き込みアドレスは、最上
位ビットを除く同一アドレスに書き込まれる。割り込み
要求の種類には、タイマ割り込み、外部割り込み等があ
るが、例えばタイマ割り込み要求の為のプログラムデー
タがEEPROM(1)の「001BH」に書き込まれ
ているとすると、このプログラムデータはマスクROM
(2)の「801BH」に書き込まれ、最上位ビットが
異なるのみとなる。
【0009】(3)はプログラムカウンタPCであり、
EEPROM(1)及びマスクROM(2)の何れか一
方のアドレスをアクセスするものである。(4)はペー
ジアドレスラッチであり、EEPROM(1)のデータ
書き換えを行う時にページ指定を行うものであり、クロ
ックCLKに同期して、プログラムカウンタ(3)から
出力されるページ指定に必要なアドレスデータの上位9
ビットをラッチするものである。ここで、クロックCL
Kをページアドレスラッチ(4)に印加する為にAND
ゲート(5)が設けられている。該ANDゲート(5)
には、EEPROM(1)をデータ書き込みモードとす
る時に「1」となる信号MODE、RAM(2)への書
き込みを指定する時に「1」となる信号AREA、及び
クロックCLK0が印加される。従って、信号MODE
及びAREAが共に「1」となっている時にANDゲー
ト(5)からクロックCLK0と等しいクロックCLK
が出力されページアドレスラッチ(4)に印加される。
【0010】ANDゲート(6)(7)及びORゲート
(8)はマルチプレクサを構成し、EEPROM(1)
の全アドレス数に合わせて16個設けられている。16
個のANDゲート(6)の一方の入力には、プログラム
カウンタ(3)から出力される16ビットのアドレスデ
ータが各々印加される。また、上位9個のANDゲート
(7)の一方の入力には、ページアドレスラッチ(4)
にラッチされたアドレスデータの上位9ビットが印加さ
れる。更に、16個のANDゲート(6)の他方の入力
には信号MODEが反転印加されると共に16個のAN
Dゲート(7)の他方の入力には信号MODEがそのま
ま印加される。即ち、EEPROM(1)のデータ書き
換えを行う場合は、信号MODEが「1」となっている
為、ページアドレスラッチ(4)のアドレス値がEEP
ROM(1)に印加され、該EEPROM(1)のペー
ジ指定が行われる。一方、EEPROM(1)を通常の
データ読み出し状態として使用する場合は、信号MOD
Eが「0」の為、EEPROM(1)はプログラムカウ
ンタ(3)の値によって直接アクセスされる。尚、EE
PROM(1)にデータ書き込みを行う期間は、ライト
イネーブル信号*WE1が「0」となっている。
【0011】(9)はRAMであり、EEPROM
(1)の1ページ(128バイト)分の記憶容量を有す
る。該RAM(9)は、EEPROM(1)に書き込む
べき128バイト分のデータを記憶するものである。
(10)はページ内アドレスラッチであり、RAM
(9)の128バイトをアクセスする為に、前記クロッ
クCLKに同期して、プログラムカウンタ(3)から出
力されるアドレスデータの下位7ビットをラッチするも
のである。該ページ内アドレスラッチ(10)のラッチ
動作はページアドレスラッチ(4)のラッチ動作と同時
に行われる。RAM(9)は、ページ内アドレスラッチ
(10)の値でアクセスされ、128バイト分のデータ
の書き込みを行う。この書き込み期間中はライトイネー
ブル信号*WE2は「0」となる。RAM(9)に記憶
される書き込みデータは、1バイト分ずつ入力ポート
(11)に印加され、その後、内部バス(12)を介し
てアキュムレータACC(13)に一旦蓄えられた後、
再び内部バス(12)を介してRAM(9)の指定アド
レスに書き込まれる。この動作を128回繰り返す。
【0012】(14)は所定周波数の発振クロックを発
生する発振器である。(15)は前記発振クロックを所
定分周する分周器である。(16)はタイマであり、分
周器(15)の分周クロックで計数を行い、ANDゲー
ト(5)から出力されるクロックCLKでリセットされ
るものである。該タイマ(16)にクロックCLKが印
加される状態とは、RAM(2)が書き込み状態となっ
ていることを意味しており、RAM(9)へのデータ書
き込み中は定期的にクロックCLKがタイマ(16)に
印加される為、該タイマ(16)からはオーバーフロー
信号OVF1は発生しない。ところが、RAM(2)へ
のデータ書き込みが終了すると、信号AREAが「0」
となり、クロックCLKは発生しなくなる。すると、タ
イマ(16)は所定値までを計数してしまい、該タイマ
(16)からはオーバーフロー信号OVF1(=
「1」)が発生する。(17)は前記発振クロックを所
定分周する分周器である。ANDゲート(18)には、
オーバーフロー信号OVF1と分周器(17)の分周ク
ロックとが印加される。即ち、ANDゲート(18)か
らは、RAM(2)への1ページ分のデータ書き込みが
終了した後に、分周器(17)の分周クロックが出力さ
れる。尚、ページ内アドレスラッチ(10)は、オーバ
ーフロー信号OVF1を受けることによりリセットされ
る。
【0013】RAM(2)への1ページ分のデータ書き
込みが終了すると、クロックCLKが途絶え、プログラ
ムカウンタ(3)とEEPROM(1)及びRAM
(2)とはアクセスが遮断されてしまう。そこで、イン
クリメンタ(19)が必要となる。該インクリメンタ
(19)は、ANDゲート(18)から出力される分周
クロックを受けてページ内アドレスラッチ(10)のイ
ンクリメントをハード的に行う。例えば、EEPROM
(1)の斜線部分の1ページが最終的にページアドレス
ラッチ(4)により指定されているとすると、RAM
(9)に書き込まれている128バイト分のデータは、
インクリメンタ(19)にてインクリメントされるペー
ジ内アドレスラッチ(10)の値で順次アクセスされて
1バイト分ずつ読み出され、内部バス(12)を介して
EEPROM(1)の斜線部分の1ページに書き込まれ
る。
【0014】よって、RAM(2)からEEPROM
(1)へのデータ書き込み中は、EEPROM(1)を
プログラムカウンタ(3)でアクセスできない為、従来
では、この最中に所定の割り込み要求が発生しても、割
り込み処理を実行できなかった訳である。本発明では、
この問題を解決できる。(20)はタイマであり、AN
Dゲート(18)から出力される分周クロックを計数す
る。RAM(2)はこの分周クロックに同期してデータ
の読み出しを行う為、この分周クロックを128回計数
すれば、RAM(2)からの128バイト分のデータ読
み出し即ちEEPROM(1)へのデータ書き込みを検
出できる。タイマ(20)は、ANDゲート(18)出
力を128回計数することによりオーバーフロー信号O
VF2を発生する。
【0015】(21)は割り込みベクタ発生回路であ
り、各種割り込み要求に対応するアドレスデータをプロ
グラムカウンタ(3)にセットするものである。(2
2)は割り込み設定回路であり、多重割り込みが発生し
た場合に何れの割り込み要求を優先させるか、また、割
り込み要求の受付をイネーブル又はディセーブルとする
か等の設定をして、割り込みベクタ発生回路(21)を
制御するものである。
【0016】NORゲート(23)(24)はRSフリ
ップフロップを構成する請求項で言う制御回路であり、
NORゲート(23)の一方の入力にはインバータ(2
5)を介してライトイネーブル信号*WE1が印加さ
れ、NORゲート(24)にはオーバーフロー信号OV
F2(=「1」)と前記1チップマイクロコンピュータ
のリセット時に発生するイニシャルクリア信号INT
(=「1」)とが印加される。従って、EEPROM
(1)へのデータ書き込みが行われている期間中は、ラ
イトイネーブル信号*WE1が「0」、且つオーバーフ
ロー信号OVF2及びイニシャルクリア信号INTが
「0」の為、前記RSフリップフロップがセットされて
NORゲート(24)から「1」が出力される。割り込
みベクタ発生回路(21)は、前記RSフリップフロッ
プのセット出力を受けることにより、プログラムカウン
タ(3)の最上位ビットを「1」に固定する。よって、
EEPROM(1)へのデータ書き込み中に所定の割り
込み要求が発生すると、割り込みベクタ発生回路(2
1)によりその割り込み要求に対応するアドレスデータ
がプログラムカウンタ(3)にセットされるがその最上
位ビットは「1」のまま固定である。よって、EEPR
OM(1)に代わってマスクROM(2)がアクセスさ
れ、EEPROM(1)へのデータ書き込み動作と平行
して割り込み処理が実行されることになる。
【0017】一方、前記1チップマイクロコンピュータ
がリセットされた時点では、イニシャルクリア信号IN
Tのみが「1」となる為、前記RSフリップフロップは
リセットされ、NORゲート(24)の出力は「0」と
なる。すると、割り込みベクタ発生回路(21)からプ
ログラムカウンタ(3)にセットされるアドレスデータ
の最上位ビットは「0」になる。即ち、プログラムカウ
ンタ(3)はEEPROM(1)をアクセスする形とな
る。オーバーフロー信号OVF2が発生した時も同様で
ある。よって、EEPROM(1)にデータを書き込ま
ない時は、割り込み要求が発生すると、EEPROM
(1)に書き込まれた割り込み要求の為のプログラムデ
ータの記憶されたアドレスがプログラムカウンタ(3)
によってアクセスされ、このプログラムデータの解読結
果に基づき、割り込み処理が実行される。
【0018】(26)は、EEPROM(1)及びマス
クROM(2)から読み出されたプログラムデータを内
部バス(12)を介して保持するインストラクションレ
ジスタIRである。また、(27)は、インストラクシ
ョンレジスタIR(26)にセットされたプログラムデ
ータを解読し、前記1チップマイクロコンピュータを動
作制御する為の制御信号を発生するインストラクション
デコーダIDECである。勿論、割り込み要求に対する
制御信号もインストラクションデコーダ(27)から得
られる。
【0019】以上より、EEPROM(1)へのデータ
書き込み中に、何らかの割り込み要求が発生したとして
も、マスクROM(2)がアクセスされる様に構成した
為、EEPROM(1)へのデータ書き込みと平行して
割り込み処理を実行できる。よって、緊急を要する割り
込み要求が発生したとしても即座に対応でき、1チップ
マイクロコンピュータ内部でのデータ処理に支障を来す
こともない。
【0020】尚、本発明の実施の形態においては、EE
PROM(1)及びマスクROM(2)を同一空間で、
最上位ビットのみが異なる様に設定しているが、これに
限定されることなく、例えば、全体アドレス空間を00
00HからFFFFHまでとし、この中間にマスクRO
M(2)のアドレス空間を設ける様にしてもよい。この
場合は、マスクROM(2)に割り振られたアドレス切
り換えを、割り込みベクタ発生回路(21)がプログラ
ムカウンタ(3)に対して行える様にすればよい。
【0021】
【発明の効果】本発明によれば、第1不揮発性メモリへ
のデータ書き込み中に、何らかの割り込み要求が発生し
た場合でも、制御回路によって、第2不揮発性メモリが
アクセスされる様に構成した。これにより、第1不揮発
性メモリへのデータ書き込み動作と平行して割り込み処
理を実行できる。その為、緊急を要する割り込み要求が
発生したとしても即座に対応でき、1チップマイクロコ
ンピュータ内部でのデータ処理に支障を来すこともない
利点が得られる。
【図面の簡単な説明】
【図1】本発明のマイクロコンピュータの割り込み処理
装置を示す回路ブロック図である。
【符号の説明】 (1) EEPROM (2) マスクROM (3) プログラムカウンタ (21) 割り込みベクタ発生回路 (23)(24) NORゲート

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 データの書き込み及び読み出しが可能な
    第1不揮発性メモリを内蔵し、該第1不揮発性メモリの
    所定領域に記憶されたプログラムデータに基づき、通常
    動作又は割り込み要求に対応する割り込み処理動作を行
    う1チップマイクロコンピュータにおいて、 前記第1不揮発性メモリに書き込まれた割り込み要求に
    基づく割り込み処理を実行する為のプログラムデータと
    同一又は異なるプログラムデータが記憶された第2不揮
    発性メモリと、 前記第1及び第2不揮発性メモリをアクセスするプログ
    ラムカウンタと、 各種割り込み要求に対応するアドレス値に前記プログラ
    ムカウンタの値を変更する割り込みベクタ発生回路と、 前記第1不揮発性メモリの所定領域へのデータ書き込み
    中に割り込み要求が発生した時、前記割り込みベクタ発
    生回路を制御して、前記プログラムカウンタのアドレス
    値を前記第2不揮発性メモリを指定する様にする制御回
    路と、を備え、 前記第1不揮発性メモリのデータ書き込み動作と平行し
    て割り込み処理を実行可能としたことを特徴とするマイ
    クロコンピュータの割り込み処理装置。
  2. 【請求項2】 前記第1及び第2不揮発性メモリは、同
    一アドレス空間で連続したアドレスを割り振られている
    ことを特徴とする請求項1記載のマイクロコンピュータ
    の割り込み処理装置。
  3. 【請求項3】 前記第1及び第2不揮発性メモリのアド
    レスの一部ビットは異なることを特徴とする請求項2記
    載のマイクロコンピュータの割り込み処理装置。
  4. 【請求項4】 前記制御回路は、前記第1不揮発性メモ
    リへのデータ書き込み中は該第1不揮発性メモリの為の
    書き込み許可信号を受けることにより前記プログラムカ
    ウンタを前記第2不揮発性メモリをアクセスできる値と
    する様に前記割り込みベクタ発生回路を制御し、前記第
    1不揮発性メモリへのデータの書き込みが終了した時は
    書き込み終了信号を受けることにより前記プログラムカ
    ウンタの最上位ビットを前記第1不揮発性メモリをアク
    セスできる値に変更する様に前記割り込みベクタ発生回
    路を制御することを特徴とする請求項3記載のマイクロ
    コンピュータの割り込み処理装置。
JP25389995A 1995-09-29 1995-09-29 マイクロコンピュータの割り込み処理装置 Expired - Fee Related JP3152595B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25389995A JP3152595B2 (ja) 1995-09-29 1995-09-29 マイクロコンピュータの割り込み処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25389995A JP3152595B2 (ja) 1995-09-29 1995-09-29 マイクロコンピュータの割り込み処理装置

Publications (2)

Publication Number Publication Date
JPH0997176A JPH0997176A (ja) 1997-04-08
JP3152595B2 true JP3152595B2 (ja) 2001-04-03

Family

ID=17257638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25389995A Expired - Fee Related JP3152595B2 (ja) 1995-09-29 1995-09-29 マイクロコンピュータの割り込み処理装置

Country Status (1)

Country Link
JP (1) JP3152595B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10017934A1 (de) * 2000-04-11 2001-08-09 Fujitsu Siemens Computers Gmbh Schaltungsanordnung mit einem Prozessor und einem System-Bus-Interface
US8402190B2 (en) 2008-12-02 2013-03-19 International Business Machines Corporation Network adaptor optimization and interrupt reduction

Also Published As

Publication number Publication date
JPH0997176A (ja) 1997-04-08

Similar Documents

Publication Publication Date Title
JP2682700B2 (ja) Icカード
KR100679758B1 (ko) 메모리 인터페이스 유닛 및 이를 포함한 데이터 프로세서 집적 회로
US5950222A (en) Microcomputer using a non-volatile memory
JPH03149635A (ja) メモリコントロールユニット
JP3152595B2 (ja) マイクロコンピュータの割り込み処理装置
JP2002222084A (ja) 半導体記憶装置、セクタアドレス変換回路、アドレス変換方法及び半導体記憶装置の使用方法
KR100321745B1 (ko) 외부메모리액세스를위한마이크로컨트롤러유닛
JPH09114678A (ja) マイクロコンピュータの割り込み処理装置
JPS63106996A (ja) 半導体集積回路装置
JPH07311708A (ja) メモリカード
JP3961806B2 (ja) 不揮発性半導体記憶装置
JPH087742B2 (ja) ワンチップマイクロコンピュータ
JP3635996B2 (ja) 情報処理システム
EP0714060B1 (en) One chip microcomputer with built-in non-volatile memory
JP2627370B2 (ja) 開発支援システム
JP3442972B2 (ja) 情報処理装置および書き換え可能型不揮発性メモリの書き換え方法
JPS623458B2 (ja)
JPH0991267A (ja) 不揮発性メモリのデータ書き込み装置
KR100288417B1 (ko) 동기형 반도체 기억 장치
JP2003196087A (ja) マイクロコントローラのメモリアドレッシング方法及びページマッピング装置
JP2004213102A (ja) マイクロコンピュータ
JPH1139222A (ja) マイクロコンピュータ
JPH0630056B2 (ja) 信号処理装置
JPH0997249A (ja) マイクロコンピュータ
JPH0789439B2 (ja) 半導体集積回路装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090126

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090126

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100126

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100126

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110126

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110126

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130126

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees