Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4666741B2 - Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus - Google Patents
[go: Go Back, main page]

JP4666741B2 - Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus - Google Patents

Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus Download PDF

Info

Publication number
JP4666741B2
JP4666741B2 JP2000314387A JP2000314387A JP4666741B2 JP 4666741 B2 JP4666741 B2 JP 4666741B2 JP 2000314387 A JP2000314387 A JP 2000314387A JP 2000314387 A JP2000314387 A JP 2000314387A JP 4666741 B2 JP4666741 B2 JP 4666741B2
Authority
JP
Japan
Prior art keywords
information
storage area
word
information storage
words
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
JP2000314387A
Other languages
Japanese (ja)
Other versions
JP2001188709A (en
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2000314387A priority Critical patent/JP4666741B2/en
Publication of JP2001188709A publication Critical patent/JP2001188709A/en
Application granted granted Critical
Publication of JP4666741B2 publication Critical patent/JP4666741B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)
  • Read Only Memory (AREA)
  • Television Signal Processing For Recording (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、情報の書換回数を管理する情報書換回数管理方法および情報書換回数管理装置に関するものである。また、本発明は、ソフトウエアまたは映画等のコンテンツの使用回数を管理する使用回数管理方法および使用回数記憶装置に関するものである。
【0002】
【従来の技術】
近年、MPEG2方式と呼ばれる高度な映像圧縮方式と、DVDと呼ばれる5GB近い大容量を有する光ディスクとが開発されている。この2つの技術を結合することにより、DVDは2時間以上の高品質のディジタルAVデータを記録することが可能となり、映画などの映像コンテンツを家庭で高画質に楽しむことができるようになってきている。
【0003】
また、従来の映画業界では、国・地域ごと公開する時期をずらすのが通例であった。ハリウッド映画を例に挙げると、米国で最初に公開され、その半年後に日本や欧州で公開される。このように時期をずらすことにより、米国での興行成績に応じて、より良い映画を厳選して世界中に配布することが可能となったり、国・地域毎の倫理上の問題を解決する時間を稼ぐことが可能となる。特に、倫理に関する考え方は、その国の風土や習慣や宗教に依存し、各国毎に異なる。従って、ある国で倫理上問題のない内容であったとしても、別の国では倫理上問題となることが有り得るので、注意が必要である。
【0004】
こうした背景から、DVDには再生可能な地域制限の機構が組み込まれている。DVDディスクには、このディスクを再生してよい地域の情報が記載され、DVD再生装置には、この装置が使われる地域の情報が記憶される。
【0005】
DVD再生装置における地域情報の記憶方法は、単に設定できればよいのであれば、スイッチ(ジャンパピンやディップスイッチ等)や、1回だけ書込み可能な不揮発性メモリ(PROM)や、何度でも書込み可能な不揮発性メモリ(EEPROM)を用いてもよい。
【0006】
但し、ユーザが海外へ転勤する場合や、製造者が輸出先を変更する場合を考慮すると1回しか設定できない方式では不便である。逆に、設定回数が無制限である場合、上述した倫理上の問題がある。そこで、設定できる回数に上限を設け、その回数までならユーザが地域を設定し直してよいことになっている。これを実現する為に、一般的に、ワード(例えばバイト)単位に消去・書込みが可能なEEPROMが、設定されている地域情報と設定した回数との情報を保持する。
【0007】
【発明が解決しようとする課題】
しかしながら、単にEEPROM等で地域情報や設定回数を保持するだけでは、地域制限を外すといった、違法な改造に対して防御力が弱かった。例えば、EEPROMの地域情報や設定回数を保持している個所が漏洩してしまうと、その値を書き換えることで、設定回数が無制限になってしまう。このような違法行為が氾濫すると有用なコンテンツが配布されなくなり、正しい行為をしている多くのユーザの利益を損ねる結果になる。
【0008】
また、上記のような地域情報だけでなく、一般のソフトウエアまたは映画等のコンテンツに対しても、使用(再生またはコピーを含む)回数を設定する事は意義がある。例えば、コンテンツの使用可能な回数の度合いに応じて料金を決定する場合、ユーザは、料金に基づいてコンテンツを使用する権利を得ることができる。このような状況下でも、違法な改造によって使用回数の制限が外されると、コンテンツが無限に使用可能になり、その結果、有用なコンテンツが配布されず、正しい行為をしている多くのユーザの利益を損ねる結果になる。
【0009】
本発明は上記問題点に鑑み、違法行為の氾濫を防ぎ、ユーザが許容された最大限の回数の書き換えが可能な情報書換回数管理方法および情報書換回数装置を提供する。また、コンテンツの使用回数を制限する使用回数管理方法および使用回数記憶装置を提供する。
【0010】
【課題を解決するための手段】
本発明の情報書換回数管理方法は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、該情報格納領域は、リセット後に最初に実行される初期化処理プログラムと同じセクタにあり、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域に、情報を所定の順番に書き込む、書き込みステップと、該情報格納領域に書き込んだ情報のうち、書換許容回数の範囲内で最後に書き込んだ情報を検索して読み出す、読み出しステップと、を包含する。
【0011】
前記情報格納領域を含むセクタの全てのワードの全てのビットを消去する、消去ステップをさらに含んでもよい。
【0012】
前記セクタの全てのワードの全てのビットを1に書きこむ、消去ステップをさらに含んでもよい。
【0014】
前記所定の順番が前記ワードのアドレスの順番であってもよい。
【0016】
前記情報は、コンテンツを再生する地域を制限する地域情報を含んでもよい。
【0017】
本発明の情報書換回数管理方法は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域に、情報を所定の順番に、該ワード内の1つ以上のビットを1から0に書き込む、書き込みステップ該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報として、少なくとも1つ以上のビットが0である情報格納領域のワードを所定の順番に検索し、最後に合致したワードを読み出す、読み出しステップと、を包含する
【0018】
本発明の情報書換回数管理方法は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域に、情報を所定の順番に、該ワード内の1つのビットを1から0に書き込む、書き込みステップ該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書き込んだ情報を検索するとともに、2つ以上のビットが0であるワードの情報を無効と判断する、読み出しステップを包含する
【0019】
本発明の情報書換回数管理方法は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域と書換回数格納領域を用いる情報書換回数管理方法であって、該情報格納領域のワード数に基づいて書換許容回数が決定され、該書換回数格納領域は、リセット後に最初に実行される初期化処理プログラムと同じセクタにあり、該情報格納領域に情報を所定の順番に書き込むとともに、該情報格納領域に書込んだ回数を書換回数格納領域に格納する、書き込みステップ該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書き込んだ情報を検索して読み出す、読み出しステップと、を包含する
【0021】
本発明の情報書換回数管理装置は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内になくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、を備え、該第1のセクタは、該マイコンが最初に実行するアドレスを含むセクタである
【0023】
前記所定の順番は、前記ワードのアドレスの順番であってもよい。
【0025】
前記情報は、コンテンツを再生する地域を制限する地域情報を含んでもよい。
【0026】
本発明の情報書換回数管理装置は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、を備え、
マイコンは、ワード内の1つ以上のビットを1から0に書き込み、かつ、所定の書換許容回数の範囲内で最後に書込んだ情報として、情報格納領域の少なくとも1つ以上のビットが0であるワードを所定の順番に検索し、最後に合致したワードを読み出す。
【0027】
本発明の情報書換回数管理装置は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、を備え、該マイコンは、ワード内の1つのビットを1から0に書き込み、2つ以上のビットが0であるワードの情報を無効と判断す
【0028】
本発明の情報書換回数管理装置は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域と、該情報格納領域に書込んだ回数を格納する書換回数格納領域を備える、不揮発性メモリと、該情報格納領域のワード数に基づいて書換許容回数が決定され、該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、を備え、該書換回数格納領域は、該マイコンが最初に実行する該第1のセクタ内にある
【0038】
本発明の情報書換回数管理装置は、複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリと、マイコンとを備える情報書換回数管理装置であって、該不揮発性メモリは、それぞれ1つ以上のセクタから構成されるブート領域とシステム領域とを含み、該ブート領域は、少なくとも1つのワードを含む情報格納領域を有し、該ブート領域には、該マイコンの初期化を行うマイコン初期化手段が配置され、該情報格納領域のワード数に基づいて書換許容回数が決定され、該マイコンは、該情報格納領域に情報をワード単位に所定の順番に書き込み、該情報格納領域に書換許容回数の範囲内で最後に書込んだ情報を検索して読み出すことを特徴とする。
【0039】
前記ブート領域には、前記情報格納領域の内容を検査する検査手段が更に配置されてもよい。
【0040】
前記マイコンは、該マイコンがリセットされた直後に、前記マイコン初期化手段を実行し、次いで前記検査手段を実行し、その後、前記システム領域に格納されたプログラムを実行してもよい。
【0041】
前記ブート領域には、該情報書換回数管理装置に接続される上位制御装置から前記システム領域に格納するプログラムを受信するI/F制御手段が更に配置されてもよい。
【0042】
前記ブート領域には、前記システム領域のプログラムを書換えるフラッシュメモリ書換手段が更に配置されてもよい。
【0043】
前記マイコンは、該マイコンがリセットされた直後に、前記マイコン初期化手段を実行し、次いで前記情報書換回数管理装置に接続される上位制御装置からの受信を待ってもよい。
【0044】
前記マイコンは、前記システム領域のプログラムから前記ブート領域のプログラムを呼び出してもよい。
【0045】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【0046】
(実施の形態1)
プログラムやデータを格納する不揮発性メモリとして、フラッシュメモリがある。フラッシュメモリの特徴は、チップ全体、または、チップをいくつかに分割したセクタと呼ばれる単位で内容を消去でき、例えば8ビットまたは16ビットのワードと呼ばれる単位で内容を書込めることである。セクタは複数のワードを含み、ワードは複数のビットを含む。フラッシュメモリは、従来のEEPROMに比べて消去をワード単位からセクタ単位に簡略化したことにより、記憶容量当りのコストが低減している。フラッシュメモリにおいて、一般に、消去とはビットを1にすることであり、書込みとはビットを0にすることである。すなわち、フラッシュメモリは、書き込み(ビットを1から0に変更)はワード単位に行い、消去(ビットを0から1に変更)はセクタ単位で行う。
【0047】
なお、以下の説明では、フラッシュメモリを使用した形態を説明するが、本明細書において「フラッシュメモリ」は、メモリ空間がセクタ単位に分割され、セクタ単位に消去可能で、セクタより小さいワード単位に書き込み可能な不揮発性メモリを意味する。
【0048】
小型演算素子(MPU:Micro Processer Unit、以下マイコンと略す)は、リセットされると所定の番地に格納されているプログラムから実行するように設計されている。上記所定の番地に置かれるプログラムは、マイコンの初期化処理プログラム、例えばメモリ空間のウェイト設定やスタックポインタの初期値設定や各種割込みの許可禁止の設定といった、マイコンを使う上で必要不可欠な処理を含んでいる。
【0049】
マイコンのプログラム格納領域としてフラッシュメモリを使うと、マイコンがリセットされた後に最初に実行されるアドレスを含む唯一のセクタが存在する。本明細書において、このセクタを「第1のセクタ」として引用する。仮に、このセクタが消去されると、マイコンは初期化処理をおこなうことができず、暴走することになる。従って、このセクタは消去しづらい特徴を有し、消去されたくないデータを保持するのに適している。
【0050】
図1を参照して、フラッシュメモリの1ワードに上書きしたときに記憶されるビットの状態を説明する。
【0051】
フラッシュメモリに、専用の書き込み装置等を用いて、マイコンの初期化処理プログラムを含むプログラムを初めて書き込むとき、所定の領域を情報格納領域として空けておく。そのとき、この領域のある8ビットに記憶される値は、図1Aのように全てのビットが1である。
【0052】
次に、図1Bのように、同じ領域にビットパターンとして01111111b(添え字bは2進数を示す)のデータを上書きすると、01111111bが記憶される。
【0053】
次いで、図1Cのように、図1Bで得られたビットパターンに11010111bのデータをさらに上書きすると、01010111bが記憶される。つまり、フラッシュメモリには、既に記憶されているビットパターンと上書きされたビットパターンとの論理積が記憶される。
【0054】
同様に、図1Bで得られたビットパターンに、11011111bを上書きすると(図1D参照)、01011111bが記憶される。
【0055】
ここで、上記のようなフラッシュメモリを用いて、装置の地域制限に関する情報を装置に記憶させる具体例を説明する。例えば、ワード単位で記憶されるデータを、(1)少なくとも1つ以上のビットが0である、(2)所定数を越えるビットが0ならば無効である、と設定する。記憶されるデータは装置の地域情報であり、その装置は同時に1つ以上の地域に存在することはない。そこで、例えば、装置が、存在している地域に対応する1つのビットを0とし、それ以外のビットを1と設定する。この場合、条件(1)記憶されるデータは1つのビットだけが0であり、条件(2)2つ以上のビットが0ならば無効であると解釈される。したがって、上記設定では、図1Dのように、2つのビットが0を有するデータは無効と解釈される(条件2)。
【0056】
上記の設定のように、装置に地域情報を記憶させることができる。図1Bで得られたデータは、ワードの第1のビットのみが0であり、装置がこのデータを記憶している場合、装置が地域Aに存在すると設定する。このとき、装置が使用するコンテンツ(例えば,再生されるDVDディスク)もまた地域情報を有していると、装置の地域情報とコンテンツの地域情報とを照合することで、ある地域に存在する装置がそのコンテンツを再生してもよいかどうかが判断される。例えば、コンテンツ1が図1Eに示す地域情報に関するデータ(この場合、8ビットからなる1ワード)を有しており、ワードの左端のビットから順に地域A〜地域Hに相当し、ビット「0」が再生可能な地域を表し、ビット「1」が再生不可能な地域を表している場合、コンテンツ1は、地域A、地域C、地域Dに存在する装置により再生可能である。コンテンツ1を再生する装置が、図1Bで得られたデータを記憶していれば、装置はコンテンツ1を再生することができる。逆に、この装置は、図1Fに示されるデータを記憶するデータ1010000を有するコンテンツ2を再生することができない。
【0057】
上記設定において、情報を記憶する領域のワード数を、書換が許容される回数に等しくする。図2は、書換が許容されている回数(書換許容回数の上限値)Nが8の場合を示す。以下、図2を用いて、地域情報の管理方法について説明する。
【0058】
フラッシュメモリ201の第1のセクタ202に、マイコンの初期化処理プログラムを含むプログラム領域203と、N(=8)ワード分の情報格納領域204が配置される。本明細書において、「第1のセクタ」とは、マイコンがリセットされると始めに実行するプログラムを格納するプログラム領域を含むセクタを意味する。したがって、マイコンがリセットされると第1のセクタの202の先頭番地のプログラムから実行される。Nワード分の情報格納領域204は、まだこの領域に書き込みがなければ、全てのビットが1である。ここで、情報格納領域204のワード205は8ビットで構成され、11111111bは、16進数で表現するとFFh(添え字hは16進数を示す)と表現される。
【0059】
地域情報は、設定される順番に応じて、情報格納領域204を構成する各ワード205の番地に昇順に書込まれる。初めて設定された地域情報(F7h=11110111b)は、1番目のワード206に書込まれ、2回目に設定された地域情報(FBh=11111011b)は、2番目のワード207に書込まれ、3回目に設定された地域情報(7Fh=01111111b)は、3番目のワード208に書込まれる。書換が許容されている回数Nまで地域を設定し直すと、情報格納領域204にこれ以上有意に地域情報を書き込むことのできる領域は無くなる。書換許容回数の上限値を超えるN+1回目(本実施形態において9回目)の地域情報を(例えば、4番目のワード209に)無理やり新たに書き込むと、複数のビットが0(3Fh=00111111b)となり、無効な地域情報と判断される。
【0060】
最後に書込んだ情報がどれであるか判断するには、情報格納領域204に少なくとも1つ以上のビットが0であるワードを、番地の昇順に検索し、最後に合致したワードが所望の情報である。ここで、合致したワードの番地をXとしてマイコンは記憶しておくことで、書換許容回数の範囲内で最後に書きこんだ情報を読み出すことができる。
【0061】
情報格納領域204をワード単位に番地の昇順で書き込むには、最後に書込まれたワードの番地Xに1を加えた番地に、新しい情報を書き込めばよい。
【0062】
ここで、ワード中の1つのビットだけに0の情報を書き込むと設定することで、地域A〜地域Hのうちの装置が存在する一つの地域とビット0とを1:1に対応させて説明したが、単に、地域情報の変更に関する情報を情報格納領域204に記憶させるのであれば、ワード中の1より多いビットが0であっても構わない。例えば、ワード単位に記憶されるデータを、(1)少なくとも1つ以上のビットが0である、(2)8を越えるビットが0ならば無効である、と設定してもよい。ワードは8ビットしかないので、条件(2)は成り立つことはない。この条件(1)と(2)であれば、FFh=11111111b以外の値は全て、同様に管理できる。
【0063】
更に、ビットの値の0と1とを反転させても構わない。つまり、ワード単位に記憶されるデータに、(1)少なくとも1つ以上のビットが0である。(2)所定数を越えるビットが1ならば無効である、と設定してもよい。例えば、装置の地域情報に当てはめるならば、装置が、現在存在している地域に対応する1つのビットを1、それ以外のビットを0と設定する。この場合、条件(1)記憶されるデータは1つのビットだけが1であり、条件(2)記憶されるデータの2つ以上のビットが1ならば無効であると解釈される。
【0064】
図3は、ビット反転した地域情報の管理方法の概念図である。以下、図3について説明する。なお、図2と同じ構成については、同一番号を付し、説明を省略する。
【0065】
地域情報は、設定される順番に応じて、情報格納領域204を構成する各ワード205の番地の昇順に書込まれる。初めて設定された地域情報(08h=00001000b)は、1番目のワード306に書込まれ、2回目に設定された地域情報(04h=00000100b)は、2番目のワード307に書込まれ、3回目に設定された地域情報(80h=10000000b)は、3番目のワード308に書込まれる。書換が許容されている回数Nまで、地域を設定し直すと、情報格納領域204にこれ以上地域情報を有意に書き込むことのできる領域は無くなる。無理やりに新たな地域情報を4番目のワード309に書き込むと、全てのビットが0(00h=00000000b)となり、再生可能な地域を増やすことはできない。補足説明すると、ワード309に元々、01h=00000001bが設定されていたとして、これとは異なるビットが1の値、例えば02h=00000010bを書き込むと、図1を用いて説明したように論理和として記憶されるため、全てのビットが0となる。
【0066】
次に、FFh=11111111bも含めて、全ての取り得る値を管理する方法について、図4Aを参照しながら説明する。なお、図2と同じ構成については、同一番号を付し、説明を省略する。
【0067】
フラッシュメモリ201は、さらに、書換が許容されている回数N(=8)に等しいビット数から構成される書換回数格納領域410が配置される。書換回数格納領域410は、全てのビットが1に初期化され、情報格納領域204に書き込まれる毎に、1つのビットが0に変更される。
【0068】
地域情報は、設定される順番に応じて、情報格納領域204を構成する各ワード205の番地の昇順に書込まれる。初めて設定された地域情報(F7h=11110111b)は、1番目のワード206に書込まれ、書換回数格納領域410の最上位ビットが0(7Fh=01111111b)に変更される。2回目に設定された地域情報(FFh=11111111b)は、2番目のワード207に書込まれ、書換回数格納領域410の第2位ビットが0(3Fh=00111111b)に変更される。3回目に設定された地域情報(7Fh=01111111b)は、3番目のワード208に書込まれ、書換回数格納領域410の第3位ビットが0(1Fh=00011111b)に変更される。書換が許容されている回数Nまで、地域を設定し直すと、情報格納領域204にこれ以上地域情報を書き込むことのできる領域は無くなり、書換回数格納領域410も全てのビットが0になり、書換できる回数が無くなったことを示す。図4Aに示されるように、N+1回目の書きこみがあった場合も、書換回数格納領域410は全てのビットが0のままである。
【0069】
最後に書込んだ情報がどれであるか判断するには、書換回数格納領域の0になっているビットの数Xを求めればよく、情報格納領域のX番目のワードが所望の情報である。したがって、書換回数格納領域410の0のビットの数Xは、情報格納領域204に書きこんだ回数を示す。逆に、書換回数格納領域410の1のビットの数Yは、情報格納領域204に書きこみ可能な残りの回数を示す。
【0070】
情報格納領域をワード単位に番地の昇順で書き込むには、X+1番目のワードに、新しい情報を書き込めばよい。
【0071】
また、一般のソフトウエアなどのコンテンツの使用回数を制限するために、図4Bに示されるように、情報格納領域204なしで、使用回数格納領域420を第1のセクタ202に設けてもよい。使用回数格納領域420は、上述した書換回数格納領域410と同等の機能を有していれば、コンテンツの使用回数をカウントすることができる。使用されるコンテンツ210は、図4Bに示されるように、一般に、フラッシュメモリ201に含まれる。
【0072】
図4Bに示されるように、使用回数格納領域420はコンテンツが使用されるごとに、FFh(11111111b)、7Fh(01111111b)、3Fh(00111111b)、・・・、と減少してもよい。これは、使用回数に応じて、データのビットパターンに左から順に0を記憶させていき、残りの1であるビットの数を読み出すことにより、使用可能な残りの回数を降順にカウントすることができる。逆に、書きこまれた0のビットの数を読み出すことで、コンテンツを使用した回数を昇順にカウントすることもできる。使用回数格納領域420が00h(00000000)になると、これ以上使用することができない。8つのビットからなる1ワードを使用すると8回までカウント可能である。
【0073】
以上に説明したように、本発明の実施の形態1によれば、消去せずに書込むと記憶された値と書込んだ値の論理積が記憶されるというフラッシュメモリの素子特性に着目し、フラッシュメモリを追記型のメモリとして利用することができる。情報格納領域204はプログラム領域203と同じセクタに存在するため、情報格納領域204の記憶しているデータを消去する場合、プログラム領域203も同様に消去される。プログラム領域203を消去してしまうと、マイコンは初期化されず制御不能となるため、地域情報の変更は所定の回数しかできない。また、マイコンはリセット後に特定の番地のプログラムを実行するという特徴から、その番地を含むフラッシュメモリのセクタに、追記型のメモリとして利用する領域を配置することで、消去されることを防ぎ、追記型としてしか利用できないように保護することができる。
【0074】
(実施の形態2)
以下、実施の形態1で説明した情報格納領域を用いて、その情報格納領域の内容が正しいかを検査し、その内容に従って動作することを保証する光ディスク装置の一実施の形態について、図面を参照しながら説明する。
【0075】
図5は、本発明の実施の形態2における光ディスク装置の構成を示すブロック図である。図5に示されるように光ディスク装置502は、パーソナルコンピュータ等の上位制御装置501と、SCSIやATAPI等のI/Fバス503を介して接続される。
【0076】
光ディスク装置502は、フラッシュメモリ508と、フラッシュメモリ508に格納された制御プログラムに従い、光ディスク装置502を制御するマイコン505と、SCSIやATAPI等のプロトコル制御を行うI/F回路504と、著作権を保護するための相互認証や情報の暗号化を行う著作権保護回路506と、一時的にデータを蓄えるDRAM507と、光ピックアップ(図示せず)のサーボ制御や光電変換や信号処理を行うその他の回路509とを備える。本実施の形態において、情報書換回数管理装置または使用回数記憶装置の例として、光ディスク装置を説明するが、本発明は、上記光ディスク装置に限定されないことはいうまでもない。
【0077】
フラッシュメモリ508を制御プログラムの格納に用いる利点は、制御プログラムに何らかの不具合があったり、より新しい規格に対応するためには、制御プログラムを更新できることにある。但し、フラッシュメモリ508に格納される制御プログラムの更新に失敗すると、光ディスク装置502は復旧不能に陥る危険性がある。
【0078】
そこで、フラッシュメモリ508のセクタ単位で消去できるという特性を利用して、復旧に必要な最低限の機能を持ち工場出荷時にのみ書き換えするブート領域と、最新の制御プログラムを格納するため工場出荷後も書き換えするシステム領域とに分割するのが一般的である。そのようなフラッシュメモリ508の領域分割を踏まえて、情報の改ざんを検出したり、情報を必ず参照するようにして、情報の書換回数が正しく管理される方法について説明する。
【0079】
図6は、フラッシュメモリ508のレイアウト図である。フラッシュメモリ508の領域は、大別してブート領域601とシステム領域602から構成される。これらの領域は、フラッシュメモリ508のセクタの単位で構成される。ここでは、ブート領域601が、第1セクタ603と第2セクタ604とから構成され、システム領域602が、第3セクタ605と第4セクタ606と第5セクタ607とから構成される。ブート領域601は、光ディスク装置502を復旧する機能が必要なので、マイコンの初期化処理プログラム610とI/F制御処理プログラム611とフラッシュメモリ書換処理プログラム612とが格納される。さらに、ブート領域601は、書換回数または使用回数に制限の付いた情報を記憶する情報格納領域615と、情報格納領域615の内容を検査する第1検査処理プログラム613と第2検査処理プログラム614とが格納される。システム領域602は、その他の回路509の制御プログラムを含み、光ディスク装置502の全ての機能を実現するシステム制御プログラム616が格納される。ここで、第1検査処理プログラム613と第2検査処理プログラム614とは、消去されないように、第1セクタ603に配置される。
【0080】
図7は、ブート領域601の主たる機能を説明するフローチャートである。マイコン505が電源を入れたとき等のリセットの発生があると、マイコンの初期化処理を行う(ステップ701)。ブート領域601のプログラムに留まっておくモードかどうか判断し(ステップ702)、ブート領域601のプログラムに留まっておくモードであればI/F制御処理(ステップ705)へ、そうでなければ第1検査処理(ステップ703)へ分岐する。ブート領域601のプログラムに留まっておくモードかどうかは、ジャンパピンをショートすることで指定したり、システム領域602のチェックサムエラー等により決定される。情報格納領域615の内容が正しいかどうかを検査する第1検査処理を行う場合(ステップ703)、その結果が正しいかどうかを判断し(ステップ704)、その結果が正しければシステム領域602に格納されるシステム制御プログラム616に制御を渡し、その結果が正しくなければ、I/F制御処理(ステップ705)へ分岐する。ステップ705では、上位制御装置501からの命令が来るまで待ち、その命令を受け取るI/F制御処理を行う。上位制御装置501からの命令を判別し(ステップ706)、その命令がシステム制御プログラムの更新であれば、フラッシュメモリ書換処理を行って(ステップ707)、自らマイコンをリセットする。その命令がシステム制御プログラムの更新でなければ、その命令に従ったその他の処理を行い(ステップ708)、再び命令待ちに戻る(ステップ705)。
【0081】
図8A〜図8Cは、ブート領域601で実行されるシステム領域602の書換処理(図7の処理(ステップ705)〜(ステップ707)に相当する)の手順を説明する図である。図8において、図5の構成図と同じ構成要素は同じ番号を付している。
【0082】
図8Aにおいて、インターネット等で最新のシステム制御プログラム616を入手した上位制御装置501は、光ディスク装置502にシステム制御プログラムの更新を命令すると共に、新しいシステム制御プログラム616を送る。光ディスク装置502は、受け取ったシステム制御プログラム616をDRAM507に一時的に格納する。
【0083】
図8Bにおいて、システム制御プログラムの更新を命令された光ディスク装置502は、フラッシュメモリ508のブート領域601にあるフラッシュメモリ書換処理プログラム612を、DRAM507にコピーする。なぜならば、フラッシュメモリ508を書き換えるためにフラッシュメモリ508を操作するときに、フラッシュメモリ508上のプログラムを実行するための操作、例えば読み出すことを含むその他の操作ができないからである。
【0084】
図8Cにおいて、マイコン505はDRAM507上のフラッシュメモリ書換処理プログラムに一時的に制御を移し、そのプログラムに従って、フラッシュメモリ508上のシステム領域602を消去した後に、DRAM507上のシステム制御プログラム616をシステム領域602に書込む。
【0085】
システム制御プログラム616は、ユーザに対して公開されているため、悪意を持った人によって改ざんされる危険性が高いと言える。そのため、情報格納領域615の内容を検査する第1検査処理プログラム613と第2検査処理プログラム614も、情報格納領域615と同様に、ブート領域601に配置することが好ましいことは明白である。本明細書において、情報格納領域の内容の検査を「第1検査」と呼び、システム制御プログラムの著作権に関連する検査を「第2検査」と呼ぶ。
【0086】
図9は、図7に示す第1検査処理703の詳細フローチャートである。変数の初期化として、検査結果を正常に、検査するワードを情報格納領域615の先頭ワードとする(ステップ901)。情報格納領域615のどのワードにも不正な値がないことを検査し終わるまで(ステップ902)、次の処理を繰り返す。検査ワードが正しいかを確認し(ステップ903)、もし不正な値があれば検査結果を異常とし(ステップ904)、検査処理を終了する。検査ワードが正しい値ならば、検査ワードとして情報格納領域615の次のワードを設定し(ステップ905)、情報格納領域615の全てのワードを検査し終えたならば(ステップ902)、検査処理を終了する。
【0087】
以上説明したように、第1検査処理プログラム613を、処理を行うプログラムが改ざんされにくいブート領域601に配置する(図6参照)とともに、システム制御プログラム616に制御を渡す前に実行する(図7参照)ことによって、情報格納領域615の内容が改ざんされていないかどうかを検査することが確実に行える。従って、システム制御プログラム616に制御が渡った時点では、情報格納領域615の内容は信頼できることが保証できる。
【0088】
図10は、システム領域の大まかな処理の流れを示すフローチャートである。
【0089】
システム領域602に格納されたシステム制御プログラム616に処理が渡ると、上位制御装置501からの命令が来るまで待ち、その命令を受け取るI/F制御処理を行う(ステップ1001)。その命令の種類によって分岐が行われ(ステップ1002)、著作権保護の関連の命令であれば、情報格納領域615の内容に従って動作するように第2検査処理プログラム614が実行され(ステップ1003)、実行後再び命令待ちに戻る。その命令が著作権保護の関連でない命令ならば、システム領域に組み込まれたその他の処理が実行され(ステップ1004)、実行後再び命令待ちに戻る。
【0090】
図11は、第2検査処理に関連するフローチャートである。先ず、システム制御プログラム616に制御が移った後に、情報格納領域615が改ざんされていないか確認するために第1検査処理を行い(ステップ1101)、その結果を判断し(ステップ1102)、その結果が正常でなければ他の処理を行わずに終了する。その結果が正常であれば、情報格納領域615を参照して最後に記録したワードを現在の地域情報として設定し(ステップ1103)、その地域情報と著作権保護回路506とを用いて著作権関連の処理(すなわち、第2検査処理)を行う(ステップ1104)。
【0091】
以上説明したように、第2検査処理プログラム614を、処理を行うプログラムが改ざんされにくいブート領域に配置する(図6参照)とともに、システム制御プログラム616に制御が移った後に実行する(図10参照)。第2検査処理プログラム614は、システム領域602に格納されているシステム制御プログラム616には存在しない著作権保護回路の制御を行うプログラムを含むため、上位制御装置501が要求する処理を行うためには、第2検査処理プログラム614を呼び出さなければならない。従って、システム制御プログラム616に処理が移った後に、情報格納領域615の内容が改ざんされたかの検査および、情報格納領域615の内容に従って著作権保護関連の処理が確実に行われることを保証できる。
【0092】
なお、実施の形態1において、情報格納領域に書込む値と書込む領域の順番の制限や、書換回数格納領域に書込む値などは一例であって、消去せずに書込むと記憶された値と書込んだ値の論理積が記憶されるというフラッシュメモリの素子特性を利用して、記憶される情報を保全するのであれば、どのような方法および装置であってもよい。また、情報格納領域に格納される情報は、地域情報に限定されるものではない。さらに、情報格納領域の配置は、マイコンがリセット後に最初に実行する番地と同じセクタに配置するのであって、フラッシュメモリの最初のセクタに限定している訳ではない。
【0093】
なお、実施の形態2において、マイコンがリセット後に最初に実行する番地を含むセクタを、ブート領域が構成要素として含んでいればよいのであって、ブート領域が第1セクタと第2セクタによって構成されていると限定しているのではない。また、図7で示したブート領域の処理の流れも一例に過ぎず、システム領域に制御を渡す前に、第1検査処理が実行されればよいし、図9で示した第1検査処理のフローチャートも情報格納領域の改ざんを検査できさえすれば、どのような処理手順でも良い。さらに、図11で示した第2検査処理のフローチャートにおいて、ハードウェアの制御と抱き合わせて検査処理を行ったのは、この第2検査処理を実行せざるを得ない状況にすることが目的であるので、この目的が達成できる限り、どのような処理手順でも良い。
【0094】
また、本実施の形態で説明した第1のセクタは、実施の形態1で説明した使用回数格納領域を含み、使用回数記憶装置の構成要素として使用してもよいことはいうまでもない。また、本実施の形態で説明した方法を、コンテンツの使用回数および使用可能な回数を管理するための方法として使用できることを言うまでもない。
【0095】
【発明の効果】
本発明の情報書換回数管理方法によれば、消去せずに書込むと記憶された値と書込んだ値の論理積が記憶されるというフラッシュメモリの素子特性に着目し、フラッシュメモリを追記型のメモリとして利用することができる。また、マイコンはリセット後に特定の番地のプログラムから実行するという特徴から、その番地を含むフラッシュメモリのセクタに、追記型のメモリとして利用する領域を配置することで、消去されることを防ぎ、追記型としてしか利用できないように保護することができる。さらに、消去されることを防いだ領域に、利用された回数を記憶する情報を格納すれば、0が設定されたビット数により利用された回数をカウントすることで、利用された回数を不正に元に戻される行為から保護することができる。
【0096】
本発明の情報書換回数管理方法によれば、情報格納領域の検査処理を行うプログラムが、改ざんされにくい領域に配置されるとともに更新可能なプログラムに制御を渡す前に実行することによって、情報格納領域の内容が改ざんされていないかどうかを検査することが確実に行える。従って、更新可能なプログラムに制御が渡った時点では、情報格納領域の内容は信頼できることが保証できる。
【0097】
本発明の情報書換回数管理方法によれば、情報格納領域の検査処理と情報格納領域の内容を利用する処理を行うプログラムが改ざんされにくい領域に配置するとともに、更新可能なプログラムに制御が移った後に実行する。この検査処理を含むプログラムは、上位制御装置が要求する処理を行うためには不可欠な処理を含むため、必ず呼び出されなければならない。従って、更新可能なプログラムに処理が移った後に、情報格納領域の内容が改ざんされたかの検査および情報格納領域の内容に従った処理が確実に行われることを保証する。
【図面の簡単な説明】
【図1A】消去状態のフラッシュメモリに記憶されているデータの図。
【図1B】1回目の書込み後にフラッシュメモリに記憶されているデータの図。
【図1C】2回目の書込み後にフラッシュメモリに記憶されているデータの図。
【図1D】2回目の別の書込み後にフラッシュメモリに記憶されているデータの図。
【図1E】コンテンツ1が記憶しているデータの図。
【図1F】コンテンツ2が記憶しているデータの図。
【図2】1つのビットが0である書込みデータの管理方法の概念図。
【図3】1つのビットが1である書込みデータの他の管理方法の概念図。
【図4A】情報格納領域および書換回数格納領域を使用したデータの管理方法の概念図。
【図4B】降順の書換回数を記憶する書換回数格納領域を使用したデータの管理方法の概念図。
【図5】光ディスク装置の構成を示すブロック図。
【図6】フラッシュメモリのレイアウト図。
【図7】ブート領域のプログラム全体のフローチャート。
【図8A】システム領域を書き換える処理の第1段階の手順図。
【図8B】システム領域を書き換える処理の第2段階の手順図。
【図8C】システム領域を書き換える処理の第3段階の手順図。
【図9】第1検査処理のフローチャート。
【図10】システム領域のプログラム全体のフローチャート。
【図11】第2検査処理に関するフローチャート。
【符号の説明】
201 フラッシュメモリ
202 第1のセクタ
203 プログラム領域
204 情報格納領域
205,206,207、208,209 ワード
306,307,308,309 ワード
410 書換回数格納領域
501 上位制御装置
502 光ディスク装置
503 I/Fバス
504 I/F回路
505 マイコン
506 著作権保護回路
507 DRAM
508 フラッシュメモリ
509 その他の回路
510 内部バス
601 ブート領域
602 システム領域
603 第1セクタ
604 第2セクタ
605 第3セクタ
606 第4セクタ
607 第5セクタ
610 マイコンの初期化処理プログラム
611 I/F制御処理プログラム
612 フラッシュメモリ書換処理プログラム
613 第1検査処理プログラム
614 第2検査処理プログラム
615 情報格納領域
616 システム制御プログラム
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information rewrite count management method and an information rewrite count management apparatus for managing information rewrite count. The present invention also relates to a usage count management method and usage count storage device for managing the usage count of content such as software or movies.
[0002]
[Prior art]
In recent years, an advanced video compression system called the MPEG2 system and an optical disk having a large capacity near 5 GB called a DVD have been developed. By combining these two technologies, DVDs can record high-quality digital AV data for more than two hours, and video content such as movies can be enjoyed with high image quality at home. Yes.
[0003]
In addition, in the conventional movie industry, it is customary to shift the release time for each country / region. Taking Hollywood movies as an example, it is first released in the United States and half a year later in Japan and Europe. By shifting the time in this way, it will be possible to carefully select and distribute better movies around the world according to the performance in the United States, or to solve ethical problems in each country / region. It becomes possible to earn. In particular, ethical thinking depends on the country's climate, customs, and religion, and varies from country to country. Therefore, even if the content is not ethically problematic in one country, it should be noted that it may be ethically problematic in another country.
[0004]
Against this background, DVDs have a reproducible regional restriction mechanism. The DVD disc describes information on the area where the disc can be played back, and the DVD playback device stores information on the area where the disc is used.
[0005]
As long as it is only necessary to set the region information storage method in the DVD player, a switch (jumper pin, dip switch, etc.), a non-volatile memory (PROM) that can be written only once, and a writable information can be written any number of times. A non-volatile memory (EEPROM) may be used.
[0006]
However, it is inconvenient if the method can be set only once considering the case where the user is transferred to overseas or the manufacturer changes the export destination. Conversely, when the set number of times is unlimited, there is an ethical problem described above. Therefore, an upper limit is set for the number of times that can be set, and the user may reset the area if that number is reached. In order to realize this, generally, an EEPROM that can be erased and written in units of words (for example, bytes) holds information on the set area information and the set number of times.
[0007]
[Problems to be solved by the invention]
However, simply holding the area information and the set number of times with an EEPROM or the like has a weak defense against illegal modification such as removing the area restriction. For example, if a location holding EEPROM area information and the number of times of setting leaks, the number of times of setting becomes unlimited by rewriting the value. If such illegal activities are flooded, useful content will not be distributed, resulting in the loss of the benefits of many users who are doing the right thing.
[0008]
Moreover, it is meaningful to set the number of times of use (including reproduction or copying) not only for the area information as described above but also for contents such as general software or movies. For example, when the fee is determined according to the degree of the number of times the content can be used, the user can obtain the right to use the content based on the fee. Even under these circumstances, if the number of times of use is removed due to illegal modification, the content can be used indefinitely. As a result, many users who do not distribute useful content and are doing the right thing The result is a loss of profits.
[0009]
In view of the above problems, the present invention provides an information rewrite frequency management method and an information rewrite frequency device that prevent flooding of illegal activities and allow the user to rewrite the maximum number of times permitted. Also provided are a usage count management method and a usage count storage device for limiting the usage count of content.
[0010]
[Means for Solving the Problems]
  The information rewrite count management method of the present invention is an information storage area including at least one word of a non-volatile memory that can be written to each word including a plurality of bits and can be erased for each sector including a plurality of words.The information storage area is in the same sector as the initialization processing program executed first after reset, and the allowable number of rewrites is determined based on the number of words in the information storage area. , The information storage areaIn the writing step of writing information in a predetermined order, and the information written in the information storage area,TheAnd a reading step of searching for and reading the last written information within the range of the allowable number of times of rewriting.
[0011]
The method may further include an erasing step of erasing all bits of all words of the sector including the information storage area.
[0012]
The method may further include an erasing step of writing all the bits of all the words in the sector to 1.
[0014]
The predetermined order may be the order of the addresses of the words.
[0016]
The information may include area information that restricts an area where content is reproduced.
[0017]
The information rewrite frequency management method of the present invention is an information rewrite using an information storage area including at least one word of a nonvolatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words. A number of times management method, wherein an allowable number of rewrites is determined based on the number of words in the information storage area, and information is stored in the information storage area in a predetermined order.Write one or more bits in a word from 1 to 0,writingStepWhen,Of the information written in the information storage area, the documentAt least one or more bits are 0 as the last written information within the allowable number of conversionsTheWord in the information storage areaTheSearch in the given order and read the last matching word,readingStepAnd including.
[0018]
  The information rewrite frequency management method of the present invention is an information rewrite using an information storage area including at least one word of a nonvolatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words. A number of times management method, wherein an allowable number of rewrites is determined based on the number of words in the information storage area, and information is stored in the information storage area in a predetermined order.Write one bit in a word from 1 to 0,writingStepWhen,Among the information written in the information storage area, the last written information within the range of the allowable number of rewrites is searched,It is determined that information of a word in which two or more bits are 0 is invalid.readingStepWhen,Include.
[0019]
  Information rewrite frequency management method of the present inventionIsAn information rewrite count management method using an information storage area including at least one word and a rewrite count storage area of a nonvolatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words. Thus, the allowable number of rewrites is determined based on the number of words in the information storage area, and the rewrite number storage area is in the same sector as the initialization processing program that is executed first after reset, and information is stored in the information storage area. Write in a predetermined order andStores the number of writes in the information storage area in the rewrite count storage area,writingStepWhen,Including a reading step of searching for and reading the information written last in the range of the allowable number of rewrites in the information written in the information storage area.
[0021]
  An information rewrite count management device according to the present invention is a non-volatile memory that can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words, and is stored in the first sector of the non-volatile memory. InSmallA non-volatile memory comprising an information storage area including at least one word;The allowable number of rewrites is determined based on the number of words in the information storage area,Information is written in a predetermined order to the words in the information storage area, and among the information written to the words in the information storage area,TheA microcomputer that searches for and reads the last written information within the allowable number of rewritesThe first sector is a sector including an address that is first executed by the microcomputer..
[0023]
The predetermined order may be the order of the addresses of the words.
[0025]
The information may include area information that restricts an area where content is reproduced.
[0026]
  An information rewrite count management device according to the present invention is a non-volatile memory that can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words, and is stored in the first sector of the non-volatile memory. A non-volatile memory including an information storage area including at least one word, and an allowable number of rewrites based on the number of words in the information storage area, and writing information in words in the information storage area in a predetermined order, Among the information written in the word of the information storage area, a microcomputer that searches and reads the information written last within the range of the allowable number of rewrites, and a microcomputer,
  TheThe microcomputerTheWrites one or more bits in a word from 1 to 0, andTheAs the last written information within the specified allowable number of rewrites,TheA word in which at least one bit of the information storage area is 0TheSearch in a predetermined order and read the last matched word.
[0027]
  An information rewrite count management device according to the present invention is a non-volatile memory that can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words, and is stored in the first sector of the non-volatile memory. A non-volatile memory including an information storage area including at least one word, and an allowable number of rewrites based on the number of words in the information storage area, and writing information in words in the information storage area in a predetermined order, A microcomputer that searches for and reads the information written last in the range of the allowable number of rewrites of the information written in the word of the information storage area,The microcomputerTheWrites one bit in a word from 1 to 0, and determines that information of a word in which two or more bits are 0 is invalidRu.
[0028]
  An information rewrite count management device according to the present invention is a non-volatile memory that can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words, and is stored in the first sector of the non-volatile memory. An information storage area including at least one word inRewrite count storage area that stores the number of writes to the information storage areaThe number of rewrites allowed is determined based on the non-volatile memory and the number of words in the information storage area, information is written in a predetermined order in the words in the information storage area, and the information written in the words in the information storage area A microcomputer that searches for and reads the last written information within the allowable number of rewrites, and the rewrite number storage area is in the first sector that is first executed by the microcomputer..
[0038]
  The information rewrite frequency management device of the present invention is an information rewrite frequency management device comprising a nonvolatile memory that can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words, and a microcomputer. The nonvolatile memory includes a boot area and a system area each composed of one or more sectors. The boot area includes an information storage area including at least one word. Microcomputer initialization means for initializing the microcomputer is arranged,The allowable number of rewrites is determined based on the number of words in the information storage area,The microcomputer writes information in the information storage area in a predetermined order in units of words, and stores the information in the information storage area.TheIt is characterized in that the last written information is searched and read out within the range of the allowable number of rewrites.
[0039]
The boot area may further include inspection means for inspecting the contents of the information storage area.
[0040]
The microcomputer may execute the microcomputer initialization unit immediately after the microcomputer is reset, then execute the inspection unit, and then execute the program stored in the system area.
[0041]
The boot area may further include an I / F control means for receiving a program stored in the system area from a host controller connected to the information rewrite count management apparatus.
[0042]
In the boot area, flash memory rewriting means for rewriting a program in the system area may be further arranged.
[0043]
The microcomputer may execute the microcomputer initialization unit immediately after the microcomputer is reset, and then wait for reception from a host control device connected to the information rewrite count management device.
[0044]
The microcomputer may call the boot area program from the system area program.
[0045]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0046]
(Embodiment 1)
There is a flash memory as a non-volatile memory for storing programs and data. A feature of the flash memory is that the contents can be erased in units called so-called sectors obtained by dividing the entire chip or the chip into several parts. For example, the contents can be written in units called 8-bit or 16-bit words. A sector includes a plurality of words, and a word includes a plurality of bits. In the flash memory, erasing is simplified from the word unit to the sector unit as compared with the conventional EEPROM, thereby reducing the cost per storage capacity. In a flash memory, generally, erasing is to set a bit to 1, and writing is to set a bit to 0. That is, in the flash memory, writing (bit is changed from 1 to 0) is performed in units of words, and erasing (bit is changed from 0 to 1) is performed in units of sectors.
[0047]
In the following description, a form using a flash memory will be described. In this specification, a “flash memory” is a memory space divided into sectors, which can be erased in units of sectors, and in units of words smaller than sectors. It means a writable nonvolatile memory.
[0048]
A small computing element (MPU: Micro Processor Unit, hereinafter abbreviated as a microcomputer) is designed to be executed from a program stored at a predetermined address when reset. The program placed at the above-mentioned predetermined address is an initialization processing program for the microcomputer, for example, processing that is indispensable for using the microcomputer, such as memory space wait setting, stack pointer initial value setting, and permission / prohibition setting for various interrupts Contains.
[0049]
When a flash memory is used as a program storage area of a microcomputer, there is only one sector including an address that is executed first after the microcomputer is reset. In the present specification, this sector is referred to as “first sector”. If this sector is erased, the microcomputer cannot perform initialization processing and runs out of control. Therefore, this sector has a feature that is difficult to erase, and is suitable for holding data that is not desired to be erased.
[0050]
With reference to FIG. 1, the state of bits stored when one word of the flash memory is overwritten will be described.
[0051]
When a program including an initialization processing program for a microcomputer is written into the flash memory for the first time using a dedicated writing device or the like, a predetermined area is reserved as an information storage area. At this time, the values stored in 8 bits in this area are all 1 as shown in FIG. 1A.
[0052]
Next, when data of 01111111b (subscript b indicates a binary number) is overwritten as a bit pattern in the same area as shown in FIG. 1B, 01111111b is stored.
[0053]
Next, as shown in FIG. 1C, when the data of 11010111b is further overwritten on the bit pattern obtained in FIG. 1B, 010110111b is stored. That is, the flash memory stores the logical product of the bit pattern already stored and the overwritten bit pattern.
[0054]
Similarly, when 11011111b is overwritten on the bit pattern obtained in FIG. 1B (see FIG. 1D), 01011111b is stored.
[0055]
Here, a specific example will be described in which information related to the region restriction of the device is stored in the device using the above flash memory. For example, data stored in units of words is set as (1) at least one bit is 0, and (2) invalid if there are 0 bits exceeding a predetermined number. The stored data is regional information of the device, and the device does not exist in more than one region at the same time. Therefore, for example, the apparatus sets one bit corresponding to the existing area to 0 and sets the other bits to 1. In this case, the condition (1) stored data is interpreted as invalid if only one bit is 0 and condition (2) two or more bits are 0. Therefore, in the above setting, as shown in FIG. 1D, data having two bits of 0 is interpreted as invalid (condition 2).
[0056]
As in the above setting, the area information can be stored in the apparatus. In the data obtained in FIG. 1B, when only the first bit of the word is 0, and the device stores this data, it is set that the device exists in the region A. At this time, if the content used by the device (for example, a DVD disc to be played back) also has regional information, the device existing in a certain region is checked by comparing the regional information of the device with the regional information of the content. Is determined to play the content. For example, the content 1 has data related to the area information shown in FIG. 1E (in this case, 1 word consisting of 8 bits), and corresponds to areas A to H in order from the leftmost bit of the word, and the bit “0”. Represents a reproducible region and bit “1” represents a non-reproducible region, the content 1 can be replayed by devices existing in region A, region C, and region D. If the device that reproduces the content 1 stores the data obtained in FIG. 1B, the device can reproduce the content 1. Conversely, this device cannot play content 2 having data 1010000 storing the data shown in FIG. 1F.
[0057]
In the above setting, the number of words in the area for storing information is made equal to the number of times rewriting is allowed. FIG. 2 shows a case where the number of times that rewriting is permitted (upper limit value of the number of permitted rewritings) N is 8. Hereinafter, the management method of area information is demonstrated using FIG.
[0058]
In the first sector 202 of the flash memory 201, a program area 203 containing a microcomputer initialization program and an information storage area 204 for N (= 8) words are arranged. In the present specification, the “first sector” means a sector including a program area for storing a program to be executed first when the microcomputer is reset. Therefore, when the microcomputer is reset, the program is executed from the program at the head address of 202 in the first sector. In the information storage area 204 for N words, all bits are 1 if there is no writing in this area yet. Here, the word 205 of the information storage area 204 is composed of 8 bits, and 11111111b is expressed as FFh (subscript h indicates a hexadecimal number) when expressed in hexadecimal.
[0059]
The area information is written in ascending order at the addresses of the words 205 constituting the information storage area 204 in accordance with the set order. The area information (F7h = 11110111b) set for the first time is written in the first word 206, and the area information (FBh = 11111011b) set for the second time is written in the second word 207. The area information (7Fh = 011111111b) set to “3” is written in the third word 208. When the area is reset until the number N of times when rewriting is permitted, there is no area in which the area information can be written more significantly in the information storage area 204. If the N + 1-th (9th in the present embodiment) area information exceeding the upper limit of the allowable number of rewrites is forcibly newly written (for example, in the fourth word 209), a plurality of bits become 0 (3Fh = 00111111b), Judged as invalid local information.
[0060]
To determine which information was written last, a word having at least one bit of 0 is searched in the information storage area 204 in ascending order of the address, and the last matching word is the desired information. It is. Here, by storing the address of the matched word as X, the microcomputer can read the last written information within the allowable number of rewrites.
[0061]
In order to write the information storage area 204 in ascending order of addresses in units of words, new information may be written at an address obtained by adding 1 to the address X of the last written word.
[0062]
Here, by setting that 0 information is written in only one bit in the word, one area in which devices in areas A to H exist and bit 0 are associated with 1: 1. However, as long as information related to the change of the area information is stored in the information storage area 204, more than 1 bits in the word may be 0. For example, data stored in units of words may be set as (1) at least one or more bits are 0, and (2) invalid if more than 8 bits are 0. Since the word has only 8 bits, condition (2) does not hold. With these conditions (1) and (2), all values other than FFh = 11111111b can be managed similarly.
[0063]
Further, the bit values 0 and 1 may be inverted. That is, (1) at least one or more bits are 0 in the data stored in word units. (2) If the number of bits exceeding a predetermined number is 1, it may be set as invalid. For example, when applying to the region information of the device, the device sets 1 bit corresponding to the currently existing region to 1 and the other bits to 0. In this case, only one bit of the data stored in the condition (1) is 1, and if two or more bits of the data stored in the condition (2) are 1, it is interpreted as invalid.
[0064]
FIG. 3 is a conceptual diagram of a method for managing bit-inverted area information. Hereinafter, FIG. 3 will be described. In addition, about the same structure as FIG. 2, the same number is attached | subjected and description is abbreviate | omitted.
[0065]
The area information is written in ascending order of the addresses of the words 205 constituting the information storage area 204 according to the set order. The area information set for the first time (08h = 00001000b) is written in the first word 306, and the area information set for the second time (04h = 00000100b) is written in the second word 307. The area information set to (80h = 10000000b) is written in the third word 308. If the area is reset until the number N of times when rewriting is permitted, no more area information can be written in the information storage area 204 any more. If new area information is forcibly written into the fourth word 309, all bits become 0 (00h = 00000000b), and the reproducible area cannot be increased. As a supplementary explanation, if 01h = 00000001b was originally set in the word 309, if a different bit is written with a value of 1, for example, 02h = 00000010b, it is stored as a logical sum as described with reference to FIG. Therefore, all bits are 0.
[0066]
Next, a method for managing all possible values including FFh = 11111111b will be described with reference to FIG. 4A. In addition, about the same structure as FIG. 2, the same number is attached | subjected and description is abbreviate | omitted.
[0067]
The flash memory 201 is further provided with a rewrite count storage area 410 composed of the number of bits equal to the number N (= 8) of rewrite allowed. In the rewrite count storage area 410, all bits are initialized to 1 and each time the bits are written to the information storage area 204, one bit is changed to 0.
[0068]
The area information is written in ascending order of the addresses of the words 205 constituting the information storage area 204 according to the set order. The first set area information (F7h = 11110111b) is written in the first word 206, and the most significant bit of the rewrite count storage area 410 is changed to 0 (7Fh = 0111111111b). The area information (FFh = 11111111b) set for the second time is written in the second word 207, and the second-order bit of the rewrite count storage area 410 is changed to 0 (3Fh = 001111111b). The area information (7Fh = 0111111b) set for the third time is written in the third word 208, and the third-order bit of the rewrite count storage area 410 is changed to 0 (1Fh = 00011111b). If the area is reset up to the number N of times that rewrite is permitted, there is no area in which the area information can be written any more in the information storage area 204, and all the bits in the rewrite count storage area 410 are set to 0. Indicates that there are no more possible times. As shown in FIG. 4A, even when the N + 1th writing is performed, all the bits in the rewrite count storage area 410 remain 0.
[0069]
In order to determine which information is written last, the number X of 0 bits in the rewrite count storage area is obtained, and the Xth word in the information storage area is the desired information. Therefore, the number X of 0 bits in the rewrite count storage area 410 indicates the number of times of writing in the information storage area 204. Conversely, the number Y of 1 bits in the rewrite count storage area 410 indicates the remaining number of times that data can be written to the information storage area 204.
[0070]
In order to write the information storage area in ascending order of addresses in units of words, new information may be written in the X + 1th word.
[0071]
In addition, in order to limit the number of times content such as general software is used, as shown in FIG. 4B, a usage number storage area 420 may be provided in the first sector 202 without the information storage area 204. If the use count storage area 420 has a function equivalent to the above-described rewrite count storage area 410, the use count of the content can be counted. The content 210 to be used is generally contained in the flash memory 201 as shown in FIG. 4B.
[0072]
As shown in FIG. 4B, the usage count storage area 420 may decrease as FFh (11111111b), 7Fh (01111111b), 3Fh (00111111b),. According to the number of times of use, 0 is stored in the bit pattern of the data in order from the left, and the remaining number of usable bits can be counted in descending order by reading the number of remaining 1 bits. it can. Conversely, by reading the number of 0 bits written, the number of times the content has been used can be counted in ascending order. When the use count storage area 420 reaches 00h (00000000), it cannot be used any more. If one word consisting of 8 bits is used, it is possible to count up to 8 times.
[0073]
As described above, according to the first embodiment of the present invention, attention is paid to the element characteristic of the flash memory in which the logical product of the stored value and the written value is stored when writing without erasing. The flash memory can be used as a write-once memory. Since the information storage area 204 exists in the same sector as the program area 203, when the data stored in the information storage area 204 is erased, the program area 203 is similarly erased. If the program area 203 is erased, the microcomputer is not initialized and becomes uncontrollable, so the area information can be changed only a predetermined number of times. In addition, because the microcomputer executes a program at a specific address after a reset, an area to be used as a write-once memory is placed in the sector of the flash memory that includes that address, preventing it from being erased. It can be protected so that it can only be used as a mold.
[0074]
(Embodiment 2)
Hereinafter, referring to the drawings, an embodiment of an optical disc apparatus that uses the information storage area described in the first embodiment to check whether the contents of the information storage area are correct and to operate according to the contents will be described with reference to the drawings. While explaining.
[0075]
FIG. 5 is a block diagram showing the configuration of the optical disc apparatus according to Embodiment 2 of the present invention. As shown in FIG. 5, the optical disk device 502 is connected to a host control device 501 such as a personal computer via an I / F bus 503 such as SCSI or ATAPI.
[0076]
The optical disk device 502 is copyrighted to a flash memory 508, a microcomputer 505 that controls the optical disk device 502 in accordance with a control program stored in the flash memory 508, an I / F circuit 504 that performs protocol control such as SCSI and ATAPI. Copyright protection circuit 506 that performs mutual authentication and information encryption for protection, DRAM 507 that temporarily stores data, and other circuits that perform servo control, photoelectric conversion, and signal processing of an optical pickup (not shown) 509. In the present embodiment, an optical disk device will be described as an example of the information rewrite frequency management device or the usage frequency storage device, but the present invention is not limited to the optical disk device.
[0077]
The advantage of using the flash memory 508 for storing the control program is that the control program can be updated in order to have some trouble or to comply with a newer standard. However, if the update of the control program stored in the flash memory 508 fails, there is a risk that the optical disk device 502 will be unable to be recovered.
[0078]
Therefore, by utilizing the characteristic that the flash memory 508 can be erased in units of sectors, a boot area that has the minimum functions necessary for restoration and is rewritten only at the time of shipment from the factory, and the latest control program is stored even after the shipment from the factory. Generally, it is divided into a system area to be rewritten. Based on such area division of the flash memory 508, a method of correctly managing the number of rewrites of information by detecting falsification of information or always referring to information will be described.
[0079]
FIG. 6 is a layout diagram of the flash memory 508. The area of the flash memory 508 is roughly divided into a boot area 601 and a system area 602. These areas are configured in units of sectors of the flash memory 508. Here, the boot area 601 is composed of a first sector 603 and a second sector 604, and the system area 602 is composed of a third sector 605, a fourth sector 606, and a fifth sector 607. Since the boot area 601 needs a function for restoring the optical disk device 502, a microcomputer initialization processing program 610, an I / F control processing program 611, and a flash memory rewriting processing program 612 are stored. Further, the boot area 601 includes an information storage area 615 that stores information with restrictions on the number of times of rewriting or use, a first inspection processing program 613 that inspects the contents of the information storage area 615, and a second inspection processing program 614. Is stored. The system area 602 includes a control program for the other circuit 509 and stores a system control program 616 that realizes all the functions of the optical disk device 502. Here, the first inspection processing program 613 and the second inspection processing program 614 are arranged in the first sector 603 so as not to be erased.
[0080]
FIG. 7 is a flowchart for explaining the main functions of the boot area 601. If a reset occurs such as when the microcomputer 505 is turned on, the microcomputer is initialized (step 701). It is determined whether or not the mode is to remain in the boot area 601 program (step 702). If the mode is to remain in the boot area 601 program, the process proceeds to the I / F control process (step 705). Processing branches to processing (step 703). Whether or not the mode stays in the program in the boot area 601 is specified by shorting a jumper pin or is determined by a checksum error in the system area 602 or the like. When the first inspection process for inspecting whether the contents of the information storage area 615 are correct is performed (step 703), it is determined whether the result is correct (step 704). If the result is correct, it is stored in the system area 602. Control is passed to the system control program 616, and if the result is not correct, the process branches to I / F control processing (step 705). In step 705, the control waits until a command from the host controller 501 is received, and performs an I / F control process for receiving the command. A command from the host controller 501 is discriminated (step 706). If the command is an update of the system control program, a flash memory rewrite process is performed (step 707) and the microcomputer is reset by itself. If the command is not an update of the system control program, other processing according to the command is performed (step 708), and the process waits for the command again (step 705).
[0081]
8A to 8C are diagrams for explaining the procedure of the rewriting process (corresponding to the process (step 705) to (step 707) in FIG. 7) of the system area 602 executed in the boot area 601. In FIG. 8, the same components as those in the configuration diagram of FIG.
[0082]
In FIG. 8A, the host control device 501 that has obtained the latest system control program 616 via the Internet or the like instructs the optical disc device 502 to update the system control program and sends a new system control program 616. The optical disk device 502 temporarily stores the received system control program 616 in the DRAM 507.
[0083]
In FIG. 8B, the optical disc apparatus 502 instructed to update the system control program copies the flash memory rewrite processing program 612 in the boot area 601 of the flash memory 508 to the DRAM 507. This is because when the flash memory 508 is operated to rewrite the flash memory 508, an operation for executing a program on the flash memory 508, for example, other operations including reading cannot be performed.
[0084]
In FIG. 8C, the microcomputer 505 temporarily transfers control to the flash memory rewrite processing program on the DRAM 507, and after erasing the system area 602 on the flash memory 508 according to the program, the system control program 616 on the DRAM 507 is transferred to the system area. Write to 602.
[0085]
Since the system control program 616 is open to the user, it can be said that there is a high risk of being tampered with by a malicious person. Therefore, it is obvious that the first inspection processing program 613 and the second inspection processing program 614 that inspect the contents of the information storage area 615 are also preferably arranged in the boot area 601 as in the information storage area 615. In this specification, the inspection of the contents of the information storage area is called “first inspection”, and the inspection related to the copyright of the system control program is called “second inspection”.
[0086]
FIG. 9 is a detailed flowchart of the first inspection process 703 shown in FIG. As initialization of variables, the inspection result is normally set, and the word to be inspected is set as the first word in the information storage area 615 (step 901). The next process is repeated until it is checked that there is no illegal value in any word in the information storage area 615 (step 902). It is confirmed whether the inspection word is correct (step 903). If there is an invalid value, the inspection result is abnormal (step 904), and the inspection process is terminated. If the check word is a correct value, the next word in the information storage area 615 is set as the check word (step 905). If all the words in the information storage area 615 have been checked (step 902), the check processing is performed. finish.
[0087]
As described above, the first inspection processing program 613 is arranged in the boot area 601 where the program to be processed is not easily tampered (see FIG. 6), and is executed before passing control to the system control program 616 (FIG. 7). Thus, it can be surely checked whether or not the contents of the information storage area 615 have been tampered with. Therefore, when the control is passed to the system control program 616, it can be guaranteed that the contents of the information storage area 615 are reliable.
[0088]
FIG. 10 is a flowchart showing a rough processing flow in the system area.
[0089]
When the processing is passed to the system control program 616 stored in the system area 602, it waits for an instruction from the host controller 501 and performs an I / F control process for receiving the instruction (step 1001). Branching is performed according to the type of the instruction (step 1002). If the instruction is related to copyright protection, the second inspection processing program 614 is executed so as to operate according to the contents of the information storage area 615 (step 1003). After execution, it returns to waiting for instructions again. If the instruction is not related to copyright protection, other processing incorporated in the system area is executed (step 1004), and after execution, the process returns to waiting for the instruction.
[0090]
FIG. 11 is a flowchart related to the second inspection process. First, after the control is transferred to the system control program 616, a first inspection process is performed to check whether the information storage area 615 has been tampered with (step 1101), and the result is judged (step 1102). If is not normal, the process ends without performing other processing. If the result is normal, the last recorded word is set as the current area information with reference to the information storage area 615 (step 1103), and the copyright information is related using the area information and the copyright protection circuit 506. (I.e., the second inspection process) is performed (step 1104).
[0091]
As described above, the second inspection processing program 614 is arranged in the boot area where the processing program is difficult to be tampered (see FIG. 6), and is executed after the control is transferred to the system control program 616 (see FIG. 10). ). Since the second inspection processing program 614 includes a program for controlling the copyright protection circuit that does not exist in the system control program 616 stored in the system area 602, in order to perform the processing requested by the host control device 501 The second inspection processing program 614 must be called. Therefore, it can be assured that after the processing shifts to the system control program 616, whether the contents of the information storage area 615 have been tampered with and that the copyright protection-related processing is reliably performed according to the contents of the information storage area 615.
[0092]
In the first embodiment, the value to be written to the information storage area and the order of the area to be written, the value to be written to the rewrite count storage area, and the like are examples, and are stored when written without being erased. Any method and apparatus may be used as long as the stored information is maintained by utilizing the element characteristic of the flash memory in which the logical product of the value and the written value is stored. Further, the information stored in the information storage area is not limited to the area information. Furthermore, the information storage area is arranged in the same sector as the address that the microcomputer executes first after resetting, and is not limited to the first sector of the flash memory.
[0093]
In the second embodiment, the boot area only has to include the sector including the address that is first executed by the microcomputer after reset, and the boot area is configured by the first sector and the second sector. It is not limited to being. Further, the flow of processing in the boot area shown in FIG. 7 is merely an example, and it is only necessary that the first inspection process is executed before the control is transferred to the system area. In the first inspection process shown in FIG. As long as the flowchart can check the alteration of the information storage area, any processing procedure may be used. Furthermore, in the flowchart of the second inspection process shown in FIG. 11, the purpose of performing the inspection process in conjunction with the hardware control is to make it necessary to execute the second inspection process. Therefore, any processing procedure may be used as long as this object can be achieved.
[0094]
Needless to say, the first sector described in the present embodiment includes the use count storage area described in the first embodiment and may be used as a component of the use count storage device. It goes without saying that the method described in this embodiment can be used as a method for managing the number of times content can be used and the number of times it can be used.
[0095]
【The invention's effect】
According to the information rewrite frequency management method of the present invention, paying attention to the element characteristic of the flash memory that the logical product of the stored value and the written value is stored when writing without erasing, the flash memory is write-once type It can be used as a memory. In addition, because the microcomputer is executed from a program at a specific address after resetting, an area used as a write-once memory is placed in the sector of the flash memory that includes that address, preventing it from being erased. It can be protected so that it can only be used as a mold. Furthermore, if information that stores the number of times of use is stored in the area that is prevented from being erased, the number of times of use is counted illegally by counting the number of times of use with the number of bits set to 0. You can protect against undoing actions.
[0096]
According to the information rewrite count management method of the present invention, an information storage area can be obtained by executing a program for performing an inspection process of an information storage area before being transferred to an updatable program that is placed in an area that is not easily tampered with. It is possible to reliably check whether the contents of the file have been tampered with. Therefore, when the control is transferred to the updatable program, it can be guaranteed that the contents of the information storage area are reliable.
[0097]
According to the information rewrite count management method of the present invention, the program that performs the information storage area inspection process and the process that uses the contents of the information storage area is placed in an area that is difficult to be tampered with, and control is transferred to an updatable program. Run later. The program including the checking process includes a process indispensable for performing the process requested by the host controller, and must be called up. Therefore, after the process moves to an updatable program, it is ensured that the content storage area has been tampered with and the process according to the information storage area is reliably performed.
[Brief description of the drawings]
FIG. 1A is a diagram of data stored in an erased flash memory.
FIG. 1B is a diagram of data stored in a flash memory after the first writing.
FIG. 1C is a diagram of data stored in a flash memory after a second writing.
FIG. 1D is a diagram of data stored in flash memory after another second write.
FIG. 1E is a diagram of data stored in content 1;
FIG. 1F is a diagram of data stored in a content 2;
FIG. 2 is a conceptual diagram of a method for managing write data in which one bit is 0;
FIG. 3 is a conceptual diagram of another management method of write data in which one bit is 1. FIG.
FIG. 4A is a conceptual diagram of a data management method using an information storage area and a rewrite count storage area.
FIG. 4B is a conceptual diagram of a data management method using a rewrite count storage area for storing the number of rewrites in descending order.
FIG. 5 is a block diagram showing a configuration of an optical disc apparatus.
FIG. 6 is a layout diagram of a flash memory.
FIG. 7 is a flowchart of the entire boot area program.
FIG. 8A is a procedure diagram of a first stage of processing for rewriting a system area;
FIG. 8B is a procedure diagram of a second stage of processing for rewriting a system area.
FIG. 8C is a procedure diagram of a third stage of processing for rewriting a system area.
FIG. 9 is a flowchart of first inspection processing.
FIG. 10 is a flowchart of the entire program in the system area.
FIG. 11 is a flowchart relating to second inspection processing;
[Explanation of symbols]
201 flash memory
202 first sector
203 Program area
204 Information storage area
205, 206, 207, 208, 209 words
306, 307, 308, 309 words
410 Rewrite count storage area
501 Host controller
502 Optical disk device
503 I / F bus
504 I / F circuit
505 microcomputer
506 Copyright protection circuit
507 DRAM
508 flash memory
509 Other circuits
510 Internal bus
601 Boot area
602 System area
603 1st sector
604 2nd sector
605 3rd sector
606 4th sector
607 5th sector
610 Microcomputer initialization processing program
611 I / F control processing program
612 Flash memory rewrite processing program
613 First inspection processing program
614 Second inspection processing program
615 Information storage area
616 system control program

Claims (21)

複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、
該情報格納領域は、リセット後に最初に実行される初期化処理プログラムと同じセクタにあり、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域に、情報を所定の順番に書き込む、書き込みステップと、
該情報格納領域に書き込んだ情報のうち、書換許容回数の範囲内で最後に書き込んだ情報を検索して読み出す、読み出しステップと、
を包含する情報書換回数管理方法。
An information rewrite frequency management method using an information storage area including at least one word of a non-volatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words ,
The information storage area is in the same sector as the initialization processing program executed first after reset,
The allowable number of rewrites is determined based on the number of words in the information storage area,
A writing step for writing information in the information storage area in a predetermined order;
Among information written to the information storage area, it reads search the last written information within the said rewriting permissible number, and reading step,
Information rewrite frequency management method including.
前記情報格納領域を含むセクタの全てのワードの全てのビットを消去する、消去ステップをさらに含む、請求項1に記載の情報書換回数管理方法。  2. The information rewrite count management method according to claim 1, further comprising an erasing step of erasing all bits of all words of a sector including the information storage area. 前記セクタの全てのワードの全てのビットを1に書きこむ、消去ステップをさらに含む、請求項1に記載の情報書換回数管理方法。  2. The information rewrite frequency management method according to claim 1, further comprising an erasing step of writing all bits of all words of the sector to 1. 前記所定の順番が前記ワードのアドレスの順番である、請求項1に記載の情報書換回数管理方法。  The information rewrite count management method according to claim 1, wherein the predetermined order is an order of addresses of the words. 前記情報は、コンテンツを再生する地域を制限する地域情報を含む、請求項1に記載の情報書換回数管理方法。  The information rewrite count management method according to claim 1, wherein the information includes area information that restricts an area in which content is reproduced. 複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域に、情報を所定の順番に、該ワード内の1つ以上のビットを1から0に書き込む、書き込みステップ
該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報として、少なくとも1つ以上のビットが0である情報格納領域のワードを所定の順番に検索し、最後に合致したワードを読み出す、読み出しステップと、
を包含する情報書換回数管理方法。
An information rewrite frequency management method using an information storage area including at least one word of a non-volatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words,
The allowable number of rewrites is determined based on the number of words in the information storage area,
To the information storage area, the information in a predetermined order, write one or more bits in the word from 1 to 0, and the writing step,
Among information written to the information storage area, as finally the written information within the 該書 conversion permitted number, the word of the data storage area at least one bit is 0 in the predetermined order Retrieve and retrieve the last matched word , read step ;
Information rewriting number of times management methods, including.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域を用いる情報書換回数管理方法であって、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域に、情報を所定の順番に、該ワード内の1つのビットを1から0に書き込む、書き込みステップ
該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書き込んだ情報を検索するとともに、2つ以上のビットが0であるワードの情報を無効と判断する、読み出しステップ
を包含する情報書換回数管理方法。
An information rewrite frequency management method using an information storage area including at least one word of a non-volatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words,
The allowable number of rewrites is determined based on the number of words in the information storage area,
To the information storage area, the information in a predetermined order, writes one bit in the word from 1 to 0, and the writing step,
A step of reading out information written in the information storage area within the range of the allowable number of rewrites , and determining that information of a word having two or more bits of 0 is invalid ; ,
Information rewriting number of times management methods, including.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリの少なくとも1つのワードを含む情報格納領域と書換回数格納領域を用いる情報書換回数管理方法であって、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該書換回数格納領域は、リセット後に最初に実行される初期化処理プログラムと同じセクタにあり、
該情報格納領域に情報を所定の順番に書き込むとともに、該情報格納領域に書込んだ回数を書換回数格納領域に格納する、書き込みステップ
該情報格納領域に書き込んだ情報のうち、該書換許容回数の範囲内で最後に書き込んだ情報を検索して読み出す、読み出しステップと、
を包含する情報書換回数管理方法。
An information rewrite count management method using an information storage area including at least one word and a rewrite count storage area of a nonvolatile memory which can be written for each word including a plurality of bits and can be erased for each sector including a plurality of words. And
The allowable number of rewrites is determined based on the number of words in the information storage area,
The rewrite count storage area is in the same sector as the initialization processing program executed first after reset,
A writing step of writing information in the information storage area in a predetermined order and storing the number of times of writing in the information storage area in the rewrite count storage area;
Among the information written in the information storage area, the last written information within the range of the permitted number of rewrites is retrieved and read, and a reading step;
Information rewriting number of times management methods, including.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内になくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、
を備え
該第1のセクタは、該マイコンが最初に実行するアドレスを含むセクタである、
情報書換回数管理装置。
Writable each word comprising a plurality of bits, the information including a non-volatile memory erasable for each sector including a plurality of words, the first even without least in a sector one word of the nonvolatile memory A non-volatile memory comprising a storage area;
The allowable number of rewrites is determined based on the number of words in the information storage area,
The information words of the information storage area writing in a predetermined order, of the information written to a word of the information storage area, reads search the last the written information in the range of the rewriting permissible number, and a microcomputer ,
Equipped with a,
The first sector is a sector including an address that the microcomputer executes first.
Information rewrite count management device.
前記所定の順番は、前記ワードのアドレスの順番である、請求項に記載の情報書換回数管理装置。The information rewrite count management device according to claim 9 , wherein the predetermined order is an order of addresses of the words. 前記情報は、コンテンツを再生する地域を制限する地域情報を含む、請求項に記載の情報書換回数管理装置。The information rewrite count management device according to claim 9 , wherein the information includes area information that restricts an area where content is reproduced. 複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、
を備え、
マイコンは、ワード内の1つ以上のビットを1から0に書き込み、かつ、所定の書換許容回数の範囲内で最後に書込んだ情報として、情報格納領域の少なくとも1つ以上のビットが0であるワードを所定の順番に検索し、最後に合致したワードを読み出す
報書換回数管理装置。
A non-volatile memory that is writable for each word including a plurality of bits and is erasable for each sector including a plurality of words, the information storage area including at least one word in the first sector of the non-volatile memory A non-volatile memory comprising:
The allowable number of rewrites is determined based on the number of words in the information storage area,
A microcomputer that writes information in words in the information storage area in a predetermined order and retrieves and reads the information written last in the range of the allowable number of rewrites in the information written in the word of the information storage area; ,
With
The microcomputer writes one or more bits in the word from 1 to 0, and, as a last the written information within the said predetermined rewriting permissible number, at least one of the information storage area the bit is 0 word searches in the predetermined order, reading the word that matches the last,
Information rewriting the management apparatus.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域を備える、不揮発性メモリと、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、
を備え、
マイコンは、ワード内の1つのビットを1から0に書き込み、2つ以上のビットが0であるワードの情報を無効と判断する、
報書換回数管理装置。
A non-volatile memory that is writable for each word including a plurality of bits and is erasable for each sector including a plurality of words, the information storage area including at least one word in the first sector of the non-volatile memory A non-volatile memory comprising:
The allowable number of rewrites is determined based on the number of words in the information storage area,
A microcomputer that writes information in words in the information storage area in a predetermined order and retrieves and reads the information written last in the range of the allowable number of rewrites in the information written in the word of the information storage area; ,
With
The microcomputer writes one bit in the word 0 and 1, you determined to be invalid two or more bits of the word information is 0,
Information rewriting the management apparatus.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリであって、該不揮発性メモリの第1のセクタ内に少なくとも1つのワードを含む情報格納領域と、該情報格納領域に書込んだ回数を格納する書換回数格納領域を備える、不揮発性メモリと、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該情報格納領域のワードに情報を所定の順番に書き込み、該情報格納領域のワードに書き込んだ情報のうち、該書換許容回数の範囲内で最後に書込んだ情報を検索して読み出す、マイコンと、
を備え、
該書換回数格納領域は、該マイコンが最初に実行するアドレスを含む該第1のセクタ内にある、
報書換回数管理装置。
A non-volatile memory that is writable for each word including a plurality of bits and is erasable for each sector including a plurality of words, the information storage area including at least one word in the first sector of the non-volatile memory A non-volatile memory comprising a rewrite count storage area for storing the number of times of writing in the information storage area ,
The allowable number of rewrites is determined based on the number of words in the information storage area,
A microcomputer that writes information in words in the information storage area in a predetermined order and retrieves and reads the information written last in the range of the allowable number of rewrites in the information written in the word of the information storage area; ,
With
The rewrite count storage area is in the first sector including the address that the microcomputer executes first.
Information rewriting the management apparatus.
複数のビットを含むワード毎に書き込み可能で、複数のワードを含むセクタ毎に消去可能な不揮発性メモリと、マイコンとを備える情報書換回数管理装置であって、
該不揮発性メモリは、それぞれ1つ以上のセクタから構成されるブート領域とシステム領域とを含み、
該ブート領域は、少なくとも1つのワードを含む情報格納領域を有し、
該ブート領域には、該マイコンの初期化を行うマイコン初期化手段が配置され、
該情報格納領域のワード数に基づいて書換許容回数が決定され、
該マイコンは、該情報格納領域に情報をワード単位に所定の順番に書き込み、
該情報格納領域に書換許容回数の範囲内で最後に書込んだ情報を検索して読み出すことを特徴とする情報書換回数管理装置。
An information rewrite frequency management device comprising a non-volatile memory that can be written for each word including a plurality of bits and erasable for each sector including a plurality of words, and a microcomputer,
The nonvolatile memory includes a boot area and a system area each composed of one or more sectors,
The boot area has information storage region including at least one word,
Microcomputer initialization means for initializing the microcomputer is arranged in the boot area,
The allowable number of rewrites is determined based on the number of words in the information storage area,
The microcomputer writes information in the information storage area in a predetermined order in units of words,
Information rewrite count management apparatus characterized by reading searching for finally the written information in the range of the rewriting permitted number in the information storage area.
前記ブート領域には、前記情報格納領域の内容を検査する検査手段が更に配置される、請求項15に記載の情報書換回数管理装置。The information rewrite count management device according to claim 15 , wherein an inspection unit that inspects the contents of the information storage area is further arranged in the boot area. 前記マイコンは、該マイコンがリセットされた直後に、前記マイコン初期化手段を実行し、次いで前記検査手段を実行し、その後、前記システム領域に格納されたプログラムを実行する、請求項16に記載の情報書換回数管理装置。The microcomputer according to claim 16 , wherein the microcomputer executes the microcomputer initialization unit immediately after the microcomputer is reset, then executes the inspection unit, and then executes a program stored in the system area. Information rewrite count management device. 前記ブート領域には、前記情報書換回数管理装置に接続される上位制御装置から前記システム領域に格納するプログラムを受信するI/F制御手段が更に配置される、請求項15に記載の情報書換回数管理装置。Wherein the boot area, the information rewriting count management from said upper control device connected to the apparatus for receiving a program to be stored in the system area I / F control means is further arranged, information rewrite count of claim 15 Management device. 前記ブート領域には、前記システム領域のプログラムを書換えるフラッシュメモリ書換手段が更に配置される、請求項15に記載の情報書換回数管理装置。The information rewrite count management device according to claim 15 , wherein flash memory rewriting means for rewriting a program in the system area is further arranged in the boot area. 前記マイコンは、該マイコンがリセットされた直後に、前記マイコン初期化手段を実行し、次いで前記情報書換回数管理装置に接続される上位制御装置からの受信を待つ、請求項15に記載の情報書換回数管理装置。The information rewrite according to claim 15 , wherein the microcomputer executes the microcomputer initialization unit immediately after the microcomputer is reset, and then waits for reception from a host control device connected to the information rewrite count management device. Count management device. 前記マイコンは、前記システム領域のプログラムから前記ブート領域のプログラムを呼び出す請求項15に記載の情報書換回数管理装置。The information rewrite frequency management device according to claim 15 , wherein the microcomputer calls the boot area program from the system area program.
JP2000314387A 1999-10-18 2000-10-13 Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus Expired - Fee Related JP4666741B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000314387A JP4666741B2 (en) 1999-10-18 2000-10-13 Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP11-295048 1999-10-18
JP29504899 1999-10-18
JP2000314387A JP4666741B2 (en) 1999-10-18 2000-10-13 Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus

Publications (2)

Publication Number Publication Date
JP2001188709A JP2001188709A (en) 2001-07-10
JP4666741B2 true JP4666741B2 (en) 2011-04-06

Family

ID=26560101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000314387A Expired - Fee Related JP4666741B2 (en) 1999-10-18 2000-10-13 Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus

Country Status (1)

Country Link
JP (1) JP4666741B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111208950B (en) * 2020-01-15 2023-07-14 山西银河电子设备厂 Method for improving NORFLASH service cycle based on singlechip

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05258585A (en) * 1992-03-16 1993-10-08 Ricoh Co Ltd Filing device
JPH0817192A (en) * 1994-06-27 1996-01-19 Yaskawa Electric Corp Position storage method by flash memory

Also Published As

Publication number Publication date
JP2001188709A (en) 2001-07-10

Similar Documents

Publication Publication Date Title
US6601139B1 (en) Information processing method and apparatus using a storage medium storing all necessary software and content to configure and operate the apparatus
KR100568642B1 (en) ATAPI disk drive device
JP4988288B2 (en) Online system and method for restoring electronic media in an electronic storage device
JP4288893B2 (en) Information processing apparatus, program loading method, recording medium, program updating method, and circuit element
US20100299458A1 (en) Simple nonautonomous peering media clone detection
JP2001297038A (en) Data storage device, recording medium, and recording medium control method
US20040242029A1 (en) Writing apparatus, semiconductor memory card, writing proguram, and writing method
EP1193601A2 (en) Memory apparatus and memory access restricting method
US20010029568A1 (en) Apparatus and method for preserving a region code for an optical disk drive
JP4666741B2 (en) Information rewrite count management method, information rewrite count management apparatus, use count management method, and use count storage apparatus
JP4731325B2 (en) Recording medium, data processing apparatus, and data processing method
KR100586063B1 (en) A flash memory data structure having a variable size and having a system area capable of updating data, a USB storage device having the flash memory, and a method of controlling the system area.
KR100390717B1 (en) Information update count managing method, information update count managing apparatus, contents usage count managing method, and contents usage count storing apparatus
JP2006065503A (en) RECORDING MEDIUM CONTAINING RIGHT INFORMATION, INFORMATION PROCESSING DEVICE, AND RIGHT INFORMATION MANAGEMENT METHOD
KR20080018071A (en) Content recording device and method
KR20080088911A (en) Data storage card, connection device and method using bad information of memory as encryption key
JP2000156034A (en) Digital signal storage device, digital signal storage method, program recording medium, digital signal recording device, and digital signal recording method
JP3898916B2 (en) Storage device inspection data falsification prevention device and falsification prevention method
JP2004192529A (en) Information processing device and computer software
JP2001034717A (en) Data reader
JP2006004376A (en) Information playback device
KR100781677B1 (en) Information processing terminal and operating method of the terminal
JP3930344B2 (en) Disk drive device
KR100431326B1 (en) Method for Upgrading System Program of Host Player Device
JP4537431B2 (en) Microprocessor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101101

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110111

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

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4666741

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees