JPH10240631A - 情報処理方法および情報処理装置 - Google Patents
情報処理方法および情報処理装置Info
- Publication number
- JPH10240631A JPH10240631A JP9062542A JP6254297A JPH10240631A JP H10240631 A JPH10240631 A JP H10240631A JP 9062542 A JP9062542 A JP 9062542A JP 6254297 A JP6254297 A JP 6254297A JP H10240631 A JPH10240631 A JP H10240631A
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- area
- blocks
- block number
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
に障害が生じても、その複数のデータの整合性を維持す
ることができるようにする。 【解決手段】 第1の領域は、データ領域を構成する物
理ブロックの物理ブロック番号#00H乃至#03H
を、論理ブロック番号%00H乃至%03Hそれぞれと
対応付けて記憶している。そして、例えば、論理ブロッ
ク%00Hと%02Hへのデータの書き込み要求がある
と、そのデータは、データ領域を構成する物理ブロック
のうちのデータの更新用のための更新ブロックである、
例えば物理ブロック#04Hと#05Hにそれぞれ書き
込まれ、第2の領域に、その物理ブロックのブロック番
号#04Hと#05Hが、論理ブロック%00Hと%0
2Hそれぞれと対応付けられて記憶される。
Description
び情報処理装置に関し、特に、例えば、データの送受信
を非接触で行うIC(Interrated Curcuit)カードなど
に用いて好適な情報処理方法および情報処理装置に関す
る。
テムでの利用が期待されているICカード(スマートカ
ード)が開発されている。
処理に必要なデータなどを記憶するメモリを内蔵し、所
定のリーダ/ライタ(R/W)に接触させた状態で、デ
ータの送受信が行われる。
ッテリを有していないバッテリレス型のICカードがあ
り、このようなバッテリレス型のICカードは、R/W
から電力が供給される。
て、非接触でR/Wとの間でデータの送受信を行うとと
もに、その電磁波により必要な電力を取得するようなも
のもある。
でICカードとR/Wと間でデータの送受信を行う場合
においては、ICカードが内蔵するメモリにアクセスし
ている途中で、電磁波の受信状態が不良になった場合に
十分な電力が得られなくなり、メモリにおけるデータの
整合性に欠陥が生じる(メモリコラプション(Memory C
orruption)が生じる)課題があった。
データの送受信を行う場合においても、ユーザが、IC
カードを、R/Wに対して自由に抜き差しすることがで
きるときには、メモリにアクセスしている途中で、IC
カードがR/Wから抜かれると、やはり、メモリコラプ
ションが生じることがあった。
S−DOS(Microsoft-Disc Operating System)(登
録商標)のFAT(File Allocation Table)のよう
に、データが記憶される単位(MS−DOSの場合はセ
クタ)毎に、情報が保持される場合には、FATにメモ
リコラプションが生じると、データ(ファイル)の位置
情報がすべて失われ、データにアクセスすることができ
なくなる。
最悪の場合で、ICカードが使用不能となるため、メモ
リコラプションについては、何らかの対処が必要とな
る。
ブロック単位でデータの読み書きが行われるため、関連
する複数のデータが、複数のブロックにそれぞれ書き込
まれることがある。即ち、例えば、ICカードを、電車
賃の支払いのための電子マネーなどとして利用する場合
に、ログ(利用した履歴)を記憶しておきたいことがあ
る。そして、いま、ログとして、例えば、乗車した駅と
時刻、降車した駅と時刻、乗降車した駅間の運賃などの
関連する情報が記憶されるとすると、これらの関連する
情報が、複数のブロックに分けて書き込まれることがあ
る。従って、このような場合には、1ブロックについて
のメモリコラプションに対処するだけでなく、関連する
データが書き込まれる複数のブロックのいずれかでメモ
リコラプションが生じたときにも対処する必要がある。
たものであり、メモリコラプションに対して、効果的に
対処することができるようにするものである。
理方法は、第1または第2の領域のうちの一方の領域が
記憶しているブロック番号に対応するデータ領域の1以
上のブロックに書き込むべきデータを、データ領域を構
成するブロックのうちのデータの更新用のための1以上
の更新ブロックに書き込み、そのデータを書き込んだ更
新ブロックであったブロックのブロック番号を、第1ま
たは第2の領域のうちの他方に記憶させることを特徴と
する。
たは第2の領域のうちの一方の領域が記憶しているブロ
ック番号に対応するデータ領域の1以上のブロックに書
き込むべきデータを、データ領域を構成するブロックの
うちのデータの更新用のための1以上の更新ブロックに
書き込むデータ書き込み手段と、データを書き込んだ更
新ブロックであったブロックのブロック番号を、第1ま
たは第2の領域のうちの他方に記憶させるブロック番号
書き込み手段とを備えることを特徴とする。
たは第2の領域のうちの一方の領域が記憶しているブロ
ック番号に対応するブロック番号領域のブロックに記憶
されているブロック番号に対応するデータ領域の1以上
のブロックに書き込むべきデータを、データ領域を構成
するブロックのうちのデータの更新用のための1以上の
更新ブロックに書き込み、そのデータを書き込んだデー
タ領域の更新ブロックであったブロックのブロック番号
を、ブロック番号領域を構成するブロックのうちのブロ
ック番号の更新用のための更新ブロックに書き込み、ブ
ロック番号を書き込んだブロック番号領域の更新ブロッ
クであったブロックのブロック番号を、第1または第2
の領域のうちの他方に記憶させることを特徴とする。
または第2の領域のうちの一方の領域が記憶しているブ
ロック番号に対応するブロック番号領域のブロックに記
憶されているブロック番号に対応するデータ領域の1以
上のブロックに書き込むべきデータを、データ領域を構
成するブロックのうちのデータの更新用のための1以上
の更新ブロックに書き込むデータ書き込み手段と、デー
タを書き込んだデータ領域の更新ブロックであったブロ
ックのブロック番号を、ブロック番号領域を構成するブ
ロックのうちのブロック番号の更新用のための更新ブロ
ックに書き込む第1のブロック番号書き込み手段と、ブ
ロック番号を書き込んだブロック番号領域の更新ブロッ
クであったブロックのブロック番号を、第1または第2
の領域のうちの他方に記憶させる第2のブロック番号書
き込み手段とを備えることを特徴とする。
は、第1または第2の領域のうちの一方の領域が記憶し
ているブロック番号に対応するデータ領域の1以上のブ
ロックに書き込むべきデータを、データ領域を構成する
ブロックのうちのデータの更新用のための1以上の更新
ブロックに書き込み、そのデータを書き込んだ更新ブロ
ックであったブロックのブロック番号を、第1または第
2の領域のうちの他方に記憶させるようになされてい
る。
は、データ書き込み手段は、第1または第2の領域のう
ちの一方の領域が記憶しているブロック番号に対応する
データ領域の1以上のブロックに書き込むべきデータ
を、データ領域を構成するブロックのうちのデータの更
新用のための1以上の更新ブロックに書き込み、ブロッ
ク番号書き込み手段は、データを書き込んだ更新ブロッ
クであったブロックのブロック番号を、第1または第2
の領域のうちの他方に記憶させるようになされている。
は、第1または第2の領域のうちの一方の領域が記憶し
ているブロック番号に対応するブロック番号領域のブロ
ックに記憶されているブロック番号に対応するデータ領
域の1以上のブロックに書き込むべきデータを、データ
領域を構成するブロックのうちのデータの更新用のため
の1以上の更新ブロックに書き込み、そのデータを書き
込んだデータ領域の更新ブロックであったブロックのブ
ロック番号を、ブロック番号領域を構成するブロックの
うちのブロック番号の更新用のための更新ブロックに書
き込み、ブロック番号を書き込んだブロック番号領域の
更新ブロックであったブロックのブロック番号を、第1
または第2の領域のうちの他方に記憶させるようになさ
れている。
は、データ書き込み手段は、第1または第2の領域のう
ちの一方の領域が記憶しているブロック番号に対応する
ブロック番号領域のブロックに記憶されているブロック
番号に対応するデータ領域の1以上のブロックに書き込
むべきデータを、データ領域を構成するブロックのうち
のデータの更新用のための1以上の更新ブロックに書き
込み、第1のブロック番号書き込み手段は、データを書
き込んだデータ領域の更新ブロックであったブロックの
ブロック番号を、ブロック番号領域を構成するブロック
のうちのブロック番号の更新用のための更新ブロックに
書き込むようになされている。第2のブロック番号書き
込み手段は、ブロック番号を書き込んだブロック番号領
域の更新ブロックであったブロックのブロック番号を、
第1または第2の領域のうちの他方に記憶させるように
なされている。
カードシステムの一実施の形態の構成例を示している。
ICカード2、およびコントローラ3で構成され、R/
W1とICカード2との間では、電磁波を利用して非接
触で、データの送受信が行われるようになされている。
カード2に送信し、ICカード2は、そのコマンドを受
信し、そのコマンドに対応する処理を行う。そして、I
Cカード2は、その処理結果に対応する応答データをR
/W1に送信する。
ば、RS−485Aの規格などに準拠したもの)を介し
てコントローラ3に接続されており、コントローラ3
は、R/W1に対して所定の制御信号を供給すること
で、所定の処理を行わせる。
いる。
DPU(Data Processing Unit)31、ICカード2に
送信するデータおよびICカード2から受信したデータ
の処理を行うSPU(Signal Processing Unit)32、
コントローラ3との通信を行うSCC(Serial Communi
cation Controller)33、および、データの処理に必
要な情報を予め記憶しているROM部41と、処理途中
のデータを一時的に記憶するRAM部42で構成される
メモリ部34が、バスを介して接続されている。
するフラッシュメモリ22も接続されている。
マンドをSPU32に出力するとともに、ICカード2
から受信した応答データをSPU32から受け取るよう
になされている。
マンドに対して所定の処理(例えば、BPSK(BiPhas
e Shift Keying)変調(ワンチェスタコードへのコーデ
ィング)など)を行った後、変調回路23に出力すると
ともに、ICカード2により送信されてきた応答データ
を復調回路25から受け取り、そのデータに対して所定
の処理を行うようになされている。
た所定の周波数(例えば13.56MHz)の搬送波
を、SPU32より供給されたデータで、ASK(Ampl
itudeShift Keying)変調し、生成された変調波をアン
テナ27を介して、電磁波としてICカード2に出力す
るようになされている。このとき、変調回路23は、変
調度を1未満にして、ASK変調を行う。即ち、データ
がローレベルのときにおいても、変調波の最大振幅がゼ
ロにならないようにする。
信した変調波(ASK変調波)を復調し、復調されたデ
ータをSPU32に出力するようになされている。
している。このICカード2においては、IC51は、
アンテナ53を介して、R/W1により送信された変調
波を受信するようになされている。なお、コンデンサ5
2は、アンテナ53とともにLC回路を構成し、所定の
周波数(キャリア周波数)の電磁波に同調(共振)する
ようになされている。
部61は、ASK復調部81で、アンテナ53を介して
受信した変調波(ASK変調波)を検波して復調し、復
調後のデータをBPSK復調回路62およびPLL(Ph
ase Locked Loop)部63に出力するとともに、電圧レ
ギュレータ82で、ASK復調部81が検波した信号を
安定化し、各回路に直流電力として供給するようになさ
れている。
回路83でデータのクロック周波数と同一の周波数の信
号を発振し、その信号をPLL部63に出力するように
なされている。
K変調部81は、演算部64より供給されたデータに対
応して、ICカード2の電源としてのアンテナ53の負
荷を変動させる(例えば、データに対応して所定のスイ
ッチング素子をオン/オフさせ、スイッチング素子がオ
ン状態であるときだけ所定の負荷をアンテナ53に並列
に接続させる)ことにより、アンテナ53を介して受信
している変調波をASK変調し(ICカード2からデー
タを送信するときは(ICカード2にデータを送信させ
るときは)、R/W1は、その出力する変調波の最大振
幅を一定にしており、この変調波が、アンテナ53の負
荷の変動により、ASK変調される)、その変調成分
を、アンテナ53を介してR/W1に送信する(R/W
1のアンテナ27の端子電圧を変動させる)ようになさ
れている。
給されたデータより、そのデータに同期したクロック信
号を生成し、そのクロック信号をBPSK復調回路62
およびBPSK変調回路68に出力するようになされて
いる。
1で復調されたデータが、BPSK変調されている場
合、PLL部63より供給されたクロック信号に従っ
て、そのデータの復調(ワンチェスタコードのデコー
ド)を行い、復調したデータを演算部64に出力するよ
うになされている。
供給されたデータが暗号化されている場合、そのデータ
を暗号/復号部92で復号化した後、そのデータを、シ
ーケンサ91(データ書き込み手段)(ブロック番号書
き込み手段)(第1および第2のブロック番号書き込み
手段)で処理するようになされている。なお、データが
暗号化されていない場合、BPSK復調回路62より供
給されたデータは、暗号/復号部92を介さず、シーケ
ンサ91に、直接供給される。
ンドとしてのデータに対応する処理を行うようになされ
ている。即ち、例えば、シーケンサ91は、EEPRO
M66(記憶手段)に対するデータの書き込みや読み出
しなどを行う。
PROM66に記憶されるデータや、EEPROM66
に記憶されているデータから、パリティとして、リード
ソロモン符号を算出するようになされている。
所定の処理を行った後、その処理に対応する応答データ
(R/W1に送信するデータ)をBPSK変調回路68
に出力するようになされている。
供給されたデータをBPSK変調し、変調後のデータを
RFインタフェース部61のASK変調部84に出力す
るようになされている。
処理プログラムその他の必要なデータを記憶している。
RAM67は、シーケンサ91が処理を行うとき、処理
の途中のデータなどを、一時的に記憶するようになされ
ている。
d Programmable ROM)66は、不揮発性のメモリであ
り、ICカード2がR/W1との通信を終了し、電力供
給が停止した後も、データを記憶し続けるようになされ
ている。
ータの送受信処理について説明する。
定の電磁波を放射して、アンテナ27の負荷状態を監視
し、ICカード2が接近することによる負荷状態の変化
が検出されるまで待機する。なお、ここでは、R/W1
は、所定の短いパターンのデータでASK変調した電磁
波を放射して、ICカード2への呼びかけを、ICカー
ド2からの応答が一定時間において得られるまで繰り返
す処理(ポーリング)を行うようにしてもよい。
検出されると、R/W1のSPU32は、所定の周波数
(例えば、データのクロック周波数の2倍の周波数)の
矩形波を搬送波として、ICカード2に送信するデータ
(ICカード2に実行させる処理に対応するコマンド
や、ICカード2に書き込むデータなど)で、BPSK
変調を行い、生成した変調波(BPSK変調信号)(ワ
ンチェスタコード)を変調回路23に出力する。
換を利用して、変調波の位相の変化に、データを対応さ
せることができ、このようにした場合、BPSK変調信
号が反転しても、元のデータに復調されるので、復調す
るとき変調波の極性を配慮する必要が無くなる。
信号で、所定の搬送波を1未満(例えば0.1)の変調
度(=データ信号の最大振幅/搬送波の最大振幅)でA
SK変調し、生成された変調波(ASK変調波)を、ア
ンテナ27を介してICカード2に送信する。
は、ディジタル信号の2つのレベル(ハイレベルとロー
レベル)のうちの、例えばハイレベルで変調波を生成す
るようになされている。
およびコンデンサ52で構成されるLC回路において、
R/W1のアンテナ27が放射した電磁波の一部が電気
信号に変換され、その電気信号(変調波)が、IC51
のRFインタフェース61に出力される。そして、RF
インタフェース61のASK復調部81は、その変調波
を整流平滑化することで、包絡線検波を行い、これによ
り生成される信号を電圧レギュレータ82に供給すると
ともに、その信号の直流成分を抑制してデータ信号を抽
出し、そのデータ信号をBPSK復調回路62およびP
LL部63に出力する。
1より供給された信号を安定化し、直流電力を生成し、
各回路に供給する。
V0は、例えば次のようになる。 V0=V10(1+k×Vs(t))cos(ωt) 但し、V10cos(ωt)は、搬送波を、kは変調度
を、Vs(t)はSPU32が出力するデータを、それ
ぞれ表す。
圧V1におけるローレベルの値VLRは、例えば次のよう
になる。 VLR=V10(1+k×(−1))−Vf
て、整流平滑化を行うための整流回路を構成するダイオ
ードにおける電圧降下を示しており、一般に0.7ボル
ト程度である。
1により整流平滑化された信号を受信すると、その信号
を安定化し、直流電力として、演算部64を始めとする
各回路に供給する。なお、変調波の変調度kは1未満で
あるので、整流後の電圧変動(ハイレベルとローレベル
の差)が小さい。従って、電圧レギュレータ82におい
て、直流電力を容易に生成することができる。
が3ボルト以上になるように受信した場合、整流後のロ
ーレベル電圧VLRは、2.15(=3×(1−0.0
5)−0.7)ボルト以上となり、電圧レギュレータ8
2は、電源として充分な電圧を各回路に供給することが
できる。さらに、この場合、整流後の電圧V1の交流成
分(データ成分)の振幅2×k×V10(Peak-to-Peak
値)は、0.3(=2×0.05×3)ボルト以上にな
り、ASK復調部81は、十分高いS/N比でデータの
復調を行うことができる。
調波を利用することにより、エラーレートの低い(S/
N比の高い状態で)通信を行うとともに、電源として充
分な直流電圧がICカード2に供給される。
1からデータ信号(BPSK変調信号)を受信すると、
そのデータ信号を、PLL部63より供給されるクロッ
ク信号に従って復調し、復調したデータを演算部64に
出力する。
供給されたデータが暗号化されている場合は、暗号/復
号部92で復号化した後、そのデータ(コマンド)をシ
ーケンサ91に供給して処理する。なお、この期間、即
ち、ICカード2にデータを送信後、それに対する返答
を受信するまでの間、R/W1は、値が1のデータを送
信したまま待機している。従って、この期間において
は、ICカード2は、最大振幅が一定である変調波を受
信している。
の処理結果などについてのデータ(R/W1に送信する
データ)を、BPSK変調回路68に出力する。BPS
K変調回路68は、R/W1のSPU32と同様に、そ
のデータをBPSK変調(ワンチェスタコードにコーデ
ィング)した後、RFインタフェース部61のASK変
調部84に出力する。
3の両端に接続される負荷を、スイッチング素子を利用
し、BPSK変調回路68からのデータに応じて変動さ
せることにより、受信している変調波(ICカード2に
よるデータの送信時においては、上述したように、R/
W1が出力する変調波の最大振幅は一定になっている)
を、送信するデータに応じてASK変調し、これにより
R/W1のアンテナ27の端子電圧を変動させて、その
データをR/W1に送信する。
ード2からのデータの受信時においては、値が1(ハイ
レベル)のデータの送信を継続している。そして、復調
回路25において、ICカード2のアンテナ53と電磁
気的に結合しているアンテナ27の端子電圧の微小な変
動(例えば、数十マイクロボルト)から、ICカード2
により送信されてきたデータが検出される。
(ASK変調波)が高利得の増幅器で増幅されて復調さ
れ、その結果得られるディジタルデータがSPU32に
出力される。SPU32は、そのデータ(BPSK変調
信号)を復調し、DPU31に出力する。DPU31
は、SPU32からのデータを処理し、その処理結果に
応じて、通信を終了するか否かを判断する。そして、再
度、通信を行うと判断した場合、上述した場合と同様に
して、R/W1とICカード2との間で通信が行われ
る。一方、通信を終了すると判断した場合、R/W1
は、ICカード2との通信処理を終了する。
未満であるASK変調を利用して、ICカード2にデー
タを送信し、ICカード2は、そのデータを受け取り、
そのデータに対応する処理を行って、その処理の結果に
対応するデータを、R/W1に返送する。
91による、EEPROM66に対するデータの読み書
き処理について説明するが、その前に、その前段階の準
備として、本発明によるメモリコラプションに対する対
処方法について説明する。
法の基本原理について説明する。
み書きが所定のブロック単位で行われるとし、あるブロ
ックB1に記憶されたデータを更新する(ブロックB1
に記憶されているデータを、他のデータに書き換える)
ことを考える。
ータを書き込むと(既に記憶されているデータに上書き
すると)、その書き込みの最中に、ICカードへの電力
の供給が不足したりしたときには、新たなデータは完全
には書き込まれず、さらに、ブロックB1に記憶されて
いたデータは破壊されることになり、メモリコラプショ
ンが生じる。従って、ブロックB1に書き込むべき新た
なデータを、そのブロックB1に実際に書き込む場合に
は、メモリコラプションが生じると、それに対処するこ
とはできなくなる。即ち、例えば、ブロックB1に記憶
されていたデータが、電子マネーの残金などであって、
新たに買い物をして、その代金を差し引いた額を、新た
なデータとして書き込むようなことを、上述のような手
法を用いて行った場合には、メモリコラプションが生じ
ると、ICカードは使用不可能になる。
なデータを、そのブロックB1とは異なるブロックB2
に書き込む。このようにすることで、ブロックB2への
書き込みの最中にメモリコラプションが生じた場合に
は、新たなデータの書き込みは完全に行われず、その有
効性は保証されないが、少なくとも、ブロックB1に記
憶されていたデータが破壊されることは防止することが
できる。
きには、そのデータは、ブロックB2とは異なるブロッ
クである、例えばブロックB1に書き込まれる。このよ
うに、新たなデータが供給された場合に、前回書き込ま
れたデータが記憶されているブロック以外のブロック
に、その新たなデータを書き込むようにすることで、少
なくとも、新たなデータの書き込みによる、前回書き込
まれたデータの破壊が行われないようにし、これによ
り、ICカードが最悪の場合でも、使用不可にならない
ようにする。
原理を適用したメモリの読み書き方法について説明す
る。
(8ビット)の最新情報、8バイトのデータ、および2
バイトの有効性情報が、その先頭から順次配置された1
1バイトで構成されている。但し、1ブロックのビット
数、さらには、最新情報、データ、および有効性情報に
割り当てるビット数は、上述したものに特に限定される
ものではない。
しさ(最新性)を示すもので、例えば、絶対的な日付お
よび時刻や、シーケンシャルな番号その他を用いること
ができる。即ち、絶対的な日付および時刻を用いる場合
には、データが記憶された日付および時刻を最新情報と
して記憶するようにすれば、その最新情報により、デー
タの記憶がなされた最新のブロックを検出することがで
きる。また、シーケンシャルな番号を用いる場合には、
データの書き込みが行われるたびに、例えばインクリメ
ントされる番号を最新情報として記憶するようにすれ
ば、その値の最も大きいブロックが、データの書き込み
がなされた最新のものということになる。
クのうちのいずれが新しいかが認識できれば充分であ
り、従って、最新情報は、少なくとも3つの状態を表す
ことができれば良い。即ち、例えば、いま、3つの状態
を表すことのできる最新情報として、0,1,2の3値
を用いることとすると、2つのブロックのうちのいずれ
かに書き込みが行われるごとに、0,1,2,0,・・
・を、その書き込みが行われたブロックの最新情報とす
れば良い。この場合、2つのブロックの最新情報が0と
1ならば1のブロックの方が新しく、1と2ならば2の
ブロックの方が新しく、2と0ならば0のブロックの方
が新しいということになる。このように、最新情報とし
て、0,1,2の3値を用いる場合には、そのビット数
は2ビットで済む。その他、例えば、最新情報として
は、1ビットのフラグを3個用い、ブロックの書き込み
が行われるごとに、ビットをたてるフラグを順次変化さ
せるようにしても良い。
1,2の3値を用いることとする。
性情報およびデータの書き込みが正常に終了したかどう
かの、いわば、最新性情報およびデータの有効性(有効
か無効か)を示すもので、例えば、RS(リードソロモ
ン)符号などを用いることができる。
訂正符号に限定されるものではない。即ち、有効性情報
は、上述のように最新性情報およびデータが有効か、ま
たは無効かを表すことができれば良く、従って、例え
ば、最新性情報およびデータを書き込みながら計算され
るパリティであっても、また、例えば、最新性情報およ
びデータが正常に書き込まれた後に付加される1ビット
のフラグなどであっても良い。
域としての2つのブロックを有しており、図4(A)
は、第1の領域としてのブロックにデータ01H乃至0
8H(Hは16進数を表す)が、第2の領域としてのブ
ロックに8つのデータFFHが、それぞれ既に記憶され
ている様子を示している。
8Hが、新たに書き込むべきデータとして供給されたと
すると、まず、第1および第2の領域としての2つのブ
ロックの有効性が、有効性情報を参照することで判定さ
れる。なお、ここでは、いずれのブロックも有効であっ
たとする。
には、そのうちのいずれが新しいかを、最新情報を参照
して判定する。図4(A)では、第1または第2の領域
としてのブロックの最新情報が01Hまたは00Hにそ
れぞれなっているので、第1の領域としてのブロックの
方が新しい(第1の領域としてのブロックが最新)とい
うことになる。
したように、前回書き込まれたデータの破壊を行わない
ようにするために、最新のブロックではないブロック
に、新たなデータの書き込みを行う。従って、この場
合、データ11H乃至18Hは、例えば図4(B)に示
すように、第2の領域としてのブロックに書き込まれ
る。データ11H乃至18Hの書き込みの終了後は、ま
ず、その書き込みが行われた方のブロックの最新情報を
更新する。即ち、最新のブロックであった、第1の領域
としてのブロックの最新情報が01Hであったから、い
ま書き込みの行われた第2の領域としてのブロックの最
新情報は、01Hを1だけインクリメントした02Hと
される。
ックに対して、データ11H乃至18Hおよび最新情報
02Hの有効性を表す有効性情報の書き込みが行われ
る。
データの読み書き処理について、図5および図6のフロ
ーチャートを参照してさらに説明する。
読み出し処理について説明する。
いて、第1および第2の領域の有効性情報を参照するこ
とで、その有効性が判定される。ステップS1におい
て、第1の領域としてのブロックのみが有効であると判
定された場合、即ち、第1の領域としてのブロックが有
効で、第2の領域としてのブロックが無効である場合、
ステップS2に進み、その有効なブロックである第1の
領域からデータが読み出され、処理を終了する。また、
ステップS1において、第2の領域としてのブロックの
みが有効であると判定された場合、即ち、第1の領域と
してのブロックが無効で、第2の領域としてのブロック
が有効である場合、ステップS3に進み、その有効なブ
ロックである第2の領域からデータが読み出され、処理
を終了する。
第2の領域としてのブロックのいずれも有効であると判
定された場合、ステップS4に進み、第1および第2の
領域としてのブロックの最新情報を参照することで、そ
の最新性が判定される。ステップS4において、第1の
領域の方が第2の領域より新しいと判定された場合、ス
テップS2に進み、その新しい方の第1の領域としての
ブロックからデータが読み出され、処理を終了する。ま
た、ステップS4において、第2の領域の方が第1の領
域より新しいと判定された場合、ステップS3に進み、
その新しい方の第2の領域としてのブロックからデータ
が読み出され、処理を終了する。
書き込み処理について説明する。
のステップS1における場合と同様に、有効性が判定さ
れる。ステップS11において、第1の領域としてのブ
ロックのみが有効であると判定された場合、ステップS
12に進み、有効でないブロックである第2の領域に、
データと、その最新情報および有効性情報を更新したも
のが書き込まれ、処理を終了する。また、ステップS1
1において、第2の領域としてのブロックのみが有効で
あると判定された場合、ステップS14に進み、有効で
ないブロックである第1の領域に、データと、その最新
情報および有効性情報を更新したものが書き込まれ、処
理を終了する。
び第2の領域としてのブロックのいずれも有効であると
判定された場合、ステップS16に進み、図5のステッ
プS4における場合と同様に、第1および第2の領域と
してのブロックの最新性が判定される。ステップS16
において、第1の領域の方が第2の領域より新しいと判
定された場合、ステップS12に進み、その新しい方の
第1の領域としてのブロックを保持するために、古い方
の第2の領域としてのブロックに、上述したように、デ
ータと、最新情報および有効性情報が書き込まれる。ま
た、ステップS16において、第2の領域の方が第1の
領域より新しいと判定された場合、ステップS14に進
み、その新しい方の第2の領域としてのブロックを保持
するために、古い方の第1の領域としてのブロックに、
上述したようにデータと、最新情報および有効性情報が
書き込まれる。
のブロックは、外部からは、同一の論理的なブロックで
ある論理ブロックとして認識されるようになされてい
る。即ち、第1および第2の領域としてのブロックは、
物理的に存在するブロックである物理ブロックであり、
各物理ブロックには、その識別のために、ユニークな番
号である物理ブロック番号が割り当てられている。そし
て、第1および第2の領域としての物理ブロックの物理
ブロック番号には、いずれにも、論理ブロックを識別す
るための論理ブロック番号として、同一の番号が対応付
けられており、これにより、第1および第2の領域とし
ての物理ブロックは、外部からは1つの論理ブロックと
して認識されるようになされている。
領域としての物理ブロックの物理ブロック番号は異なる
が、いずれにも、同一の論理ブロック番号が割り当てら
れており、外部からは、そのような論理ブロック番号を
有する論理ブロックにアクセスの要求がなされる。そし
て、メモリ側では、論理ブロックへのアクセスの要求が
あると、それに対応する物理ブロック番号のブロック、
即ち、第1および第2の領域について、図5または図6
で説明した読み出しまたは書き込み処理がそれぞれ行わ
れる。
論理ブロック番号のいずれも1バイトで表されるとす
る。
ロックのデータの書き込みの終了後に、その物理ブロッ
クの最新情報と有効性情報が更新されるため、関連する
複数のデータを、複数の物理ブロックに書き込む場合に
おいては、新旧混在したデータが生じることがある。即
ち、外部から見た場合において、複数の論理ブロック
に、複数のデータを書き込んでいる最中にメモリコラプ
ションが生じると、メモリコラプションが生じる前に書
き込みのなされた論理ブロックには、新しいデータが存
在することになるが、メモリコラプションの生じた論理
ブロックから、メモリコラプションが生じなければ新た
なデータの書き込みが行われたはずの論理ブロックまで
には、古いデータが存在することになる。
ものであり、従って、それ全体で有用なものである場合
においては、上述のように、その中に、新しいものと古
いものとが混在すると、その整合性がとれなくなる。即
ち、関連する複数のデータが、例えば、前述したよう
に、乗車した駅と時刻、降車した駅と時刻、乗降車した
駅間の運賃などである場合において、乗車した駅につい
ては新しいデータが書き込まれ、乗車した時刻について
は古いデータのままでは、その整合性がとれず、意味の
ないものとなる。
複数のデータが書き込まれる場合において、その複数の
データの書き込みが終了するまでにメモリコラプション
が生じたときには、外部から見て、論理ブロックに、そ
の関連する複数のデータすべての古いものが存在するよ
うにする必要がある。
うに構成する。
領域としての物理ブロックと、データ領域を構成する物
理ブロックの物理ブロック番号を記憶する第1および第
2の領域としての物理ブロックとで構成する。
と同様に、1つの物理ブロックは、11バイトで構成さ
れている。
11バイト単位でデータを記憶するようになされてお
り、図7においては、データ領域は、物理ブロック番号
として#00H乃至#07それぞれが割り当てられた8
の物理ブロックで構成されている(#は、物理ブロック
番号であることを表す)。
ブロックが見えるようになされており、その4つの論理
ブロックそれぞれには、論理ブロック番号として%00
H乃至%03Hが割り当てられている。なお、図7に示
した状態では、論理ブロック番号%00H乃至%03H
と、物理ブロック番号#00H乃至#03Hとがそれぞ
れ対応付けられている。
クは、その先頭の1バイトが最新情報に、終わりの2バ
イトが有効性情報に、それぞれ割り当てられている点
で、図4における場合と共通している。但し、最新情報
と有効性情報との間の8バイトには、データ領域の物理
ブロックの物理ブロック番号、即ち、データ領域を構成
する物理ブロックへのポインタが配置される。
有効性情報との間の8バイトのうち、前半の4バイトに
は、データ領域の対象ブロックの物理ブロック番号が配
置され、その後半の4バイトには、データ領域の更新ブ
ロックの物理ブロック番号が配置される。
む場合に、本来、その書き込みの対象となるべき物理ブ
ロックを意味する。即ち、例えば、基本原理では、上述
したように、ブロックB1に記憶されたデータを、新し
いデータに書き換える場合に、その新しいデータを、ブ
ロックB2に書き込むが、この場合において、本来、新
しいデータを書き込むべきブロックB1が、対象ブロッ
クに相当する。
クに情報を書き込んでその記憶内容を更新するときに用
いられる更新用の物理ブロックを意味する。即ち、例え
ば、基本原理において、ブロックB1に記憶されたデー
タを、新しいデータに書き換える場合に、その新しいデ
ータを実際に書き込むブロックB2が、更新ブロックに
相当する。
有効性情報との間の8バイトのうちの前半の4バイトに
配置される4つの物理ブロック番号は、論理ブロック番
号と対応付けられるようになされている。即ち、例え
ば、その1乃至4バイト目に配置される物理ブロック番
号は、それぞれ論理ブロック番号%00H乃至%03H
に対応付けられるようになされている。
物理ブロック番号は、それぞれ#FEまたは#FFとな
っている。
図7では、4つの関連するデータが、物理ブロック#0
0H(物理ブロック番号が#00Hの物理ブロック)乃
至#03に記憶されており、その物理ブロック番号#0
0H乃至03Hが、第1の領域における最新情報と有効
性情報との間の8バイトのうちの前半の4バイト(以
下、適宜、データ領域の対象ブロックへのポインタの欄
という)に、その順番で配置されている。
合には、物理ブロック番号#00H乃至03Hそれぞれ
は、論理ブロック番号%00H乃至%03Hと対応付け
られている。
ては、論理ブロック%00H(論理ブロック番号が%0
0Hの論理ブロック)乃至%03Hに対応付けられた物
理ブロック#00H乃至#03Hのうちのいずれかが、
アクセスの対象となるべきブロック、即ち、対象ブロッ
クとなる。
とはならない、いわば空き領域となっている物理ブロッ
クがなり得る。従って、図7において、第1の領域に注
目した場合には、物理ブロック#04H乃至#07Hが
更新ブロックとなり得るので、その第1の領域における
最新情報と有効性情報との間の8バイトのうちの後半の
4バイト(以下、適宜、データ領域の更新ブロックへの
ポインタの欄という)には、それらの更新ブロックの物
理ブロック番号#04H乃至#07Hが配置されてい
る。
ちの一方の領域としての、例えば、第1の領域のみが有
効であるとされているとして、外部から、論理ブロック
番号%00Hと%02Hに対応する論理ブロックそれぞ
れに、関連する2つのデータの書き込みの要求があった
とする。
の、データ領域の対象ブロックへのポインタの欄を参照
することで、論理ブロック番号%00Hと%02Hに対
応する物理ブロック番号#00Hと#02Hとが認識さ
れ、それらの物理ブロック#00Hおよび#02Hが、
関連する2つのデータそれぞれを書き込むべき対象ブロ
ックとして認識される。
の更新ブロックへのポインタの欄を参照することで、対
象ブロックと同一の数の更新ブロックの物理ブロック番
号#04Hおよび#05Hが認識される。なお、更新ブ
ロックの物理ブロック番号は、例えば、データ領域の更
新ブロックへのポインタの欄の左から配置されているも
のから順番に認識される。
物理ブロック#00Hまたは#02Hに書き込むべき2
つのデータが、図8に示すように、更新ブロックである
物理ブロック#04Hまたは#05Hそれぞれに書き込
まれる。
Hと%02Hに対応する物理ブロック番号#00Hと#
02Hに書き込むべき2つのデータが、それぞれ40H
乃至4AHと50H乃至5AHであったとして、これら
が、更新ブロックである物理ブロック#04Hと#05
Hそれぞれに書き込まれた状態を示している。
ブロックであった物理ブロックのブロック番号#04H
と#05Hとが、有効でなかった第2の領域におけるデ
ータ領域の対象ブロックへのポインタの欄に書き込まれ
る。即ち、第1の領域におけるデータ領域の対象ブロッ
クへのポインタの欄が、第2の領域にコピーされ、その
うちの、対象ブロックの物理ブロック番号#00Hまた
は#02Hが、図8に示すように、実際にデータが書き
込まれた更新ブロックの物理ブロック番号#04Hまた
は#05Hにそれぞれ書き換えられる。その結果、第2
の領域に注目した場合には、物理ブロック番号#04H
または#05Hは、物理ブロック番号#00Hまたは#
02Hが対応付けられていた論理ブロック番号%00H
または%02Hにそれぞれ対応付けられる。
ブロック#00Hと#02Hは更新ブロックとされ、そ
の物理ブロック番号#00Hと#02Hが、有効でなか
った第2の領域におけるデータ領域の更新ブロックへの
ポインタの欄に書き込まれる。即ち、第1の領域におけ
るデータ領域の更新ブロックへのポインタの欄が、第2
の領域にコピーされ、そのうちの、データが書き込まれ
た物理ブロックの物理ブロック番号#04Hまたは#0
5Hが、図8に示すように、対象ブロックの物理ブロッ
ク番号#00Hまたは#02Hにそれぞれ書き換えられ
る。その結果、第2の領域に注目した場合には、物理ブ
ロック#00Hおよび#02Hは更新ブロックとなる。
後は、図4における場合と同様に、その第2の領域にお
ける最新情報と有効性情報とが順次書き込まれる(書き
換えられる)。
データ領域の対象ブロックへのポインタの欄の書き込み
が終了しないと、有効である旨の有効性情報は書き込ま
れない。即ち、上述の場合においては、2つの論理ブロ
ック%00Hと%02Hへのデータの書き込みが両方と
も終了しなければ、第2の領域には、有効である旨の有
効性情報は書き込まれない。
%02Hへのデータの書き込みが行われている間にメモ
リコラプションが生じた場合には、第1の領域のみが有
効な状態となったままになり、論理ブロック%00Hと
%02Hからは、有効である第1の領域を参照すること
で、その論理ブロック%00Hと%02Hにそれぞれ対
応付けられている物理ブロック#00Hと#02Hに記
憶されている古いデータが読み出されることになる。
2Hへのデータの書き込みが終了し、第2の領域におけ
る最新情報と有効性情報の更新が行われた場合には、論
理ブロック%00Hと%02Hからは、有効で且つ最も
新しい第2の領域を参照することで、その論理ブロック
%00Hと%02Hにそれぞれ対応付けられている物理
ブロック#04Hと#05Hに記憶されている新しいデ
ータが読み出されることになる。
と%02Hに記憶される、複数のデータとしての2つデ
ータが関連性を有するものであるときには、メモリコラ
プションが生じても、個々のデータの整合性とともに、
その2つのデータの間の整合性を維持することが可能と
なる。
リに対するデータの読み書き処理について、図9および
図10のフローチャートを参照してさらに説明する。
読み出し処理について説明する。
たはS26において、図5のステップS1またはS4に
おける場合とそれぞれ同様の判定処理が行われる。
よび第1と第2の領域の両方が有効であるが、第1の領
域の方が新しい場合は、ステップS22に進み、また、
第2の領域のみが有効の場合、および第1と第2の領域
の両方が有効であるが、第2の領域の方が新しい場合
は、ステップS24に進む。
データ領域の対象ブロックへのポインタの欄を参照する
ことで、読み出すべきデータの論理ブロック番号(この
論理ブロック番号は、例えば、外部から供給されるもの
とする)に対応する物理ブロック番号、即ち、対象ブロ
ックへのポインタとしての、その物理ブロック番号が認
識され、ステップS23に進む。ステップS23では、
ステップS23で認識された物理ブロック番号に対応す
る物理ブロックからデータが読み出され、処理を終了す
る。
おけるデータ領域の対象ブロックへのポインタの欄を参
照することで、読み出すべきデータの論理ブロック番号
に対応する物理ブロック番号、即ち、対象ブロックへの
ポインタとしての、その物理ブロック番号が認識され、
ステップS25に進む。ステップS25では、ステップ
S24で認識された物理ブロック番号に対応する物理ブ
ロックからデータが読み出され、処理を終了する。
て、読み出し処理について説明する。
において、図5のステップS1またはS4における場合
とそれぞれ同様の判定処理が行われる。
よび第1と第2の領域の両方が有効であるが、第1の領
域の方が新しい場合は、ステップS32に進み、第1の
領域におけるデータ領域の更新ブロックへのポインタの
欄を参照することで、更新ブロックとすることができる
物理ブロックの物理ブロック番号が認識され、ステップ
S33に進む。ステップS33では、その認識された物
理ブロックの番号に対応する物理ブロック、即ち、更新
ブロックに、外部などから供給された、書き込むべきデ
ータが書き込まれる。
き込むデータが供給された場合には、ステップS32で
は、その複数の論理ブロックと同一の数の更新ブロック
の物理ブロック番号が、第1の領域におけるデータ領域
の更新ブロックへのポインタの欄を、例えば、左から右
方向に順次サーチすることで認識されるようになされて
いる。さらに、この場合、ステップS33では、このよ
うにして認識された複数の物理ブロック番号それぞれに
対応する更新ブロックに、外部からのデータが順次書き
込まれるようになされている。
域におけるデータ領域の対象ブロックへのポインタの欄
と、データ領域の更新ブロックへのポインタの欄とを更
新し、かつその最新情報および有効性情報を更新したも
のが、第2の領域にコピーされる。
象ブロックへのポインタの欄については、外部から供給
されたデータを書き込む論理ブロックの論理ブロック番
号に対応付けられていた物理ブロック番号(図7および
図8の例では、#00Hと#02H)が、実際にデータ
を書き込んだ更新ブロックの物理ブロック番号(図7お
よび図8の例では、#04Hと#05H)に更新され
る。また、第1の領域におけるデータ領域の更新ブロッ
クへのポインタの欄については、データの書き込まれた
物理ブロック(更新ブロックであった物理ブロック)の
物理ブロック番号(図7および図8の例では、#04H
と#05H)が、データを書き込む論理ブロックの論理
ブロック番号に対応付けられていた物理ブロック番号
(図7および図8の例では、#00Hと#02H)に更
新される。さらに、最新情報と有効性情報とが更新さ
れ、以上の更新結果が、第2の領域に書き込まれて、処
理を終了する。
び第1と第2の領域の両方が有効であるが、第2の領域
の方が新しい場合は、ステップS36乃至S38に順次
進み、第1または第2の領域についての処理が、逆に第
2または第1の領域についてそれぞれ行われることを除
けば、ステップS32乃至S34における場合とそれぞ
れ同様の処理が行われる。
モリに対する読み書き方式は、データ領域への1段のポ
インタを利用したものなので、以下、適宜、シングルポ
インタ方式という。
合には、図7および図8に示したように、データ領域の
対象ブロックへのポインタの欄に、4つの物理ブロック
番号の記憶が可能なようになっていることから、最大
で、4ブロック分のデータの整合性を維持することがで
きる。
領域の更新ブロックへのポインタの欄を、データ領域の
対象ブロックへのポインタの欄と同様に、4つの物理ブ
ロック番号の記憶が可能なようにしたのは、整合性の維
持が可能な最大のブロック数である4ブロック分のデー
タの書き込みを行うのに、やはり、4つの更新ブロック
が必要となるためである。
のメモリ構成に適用した場合には、上述のように、最大
で、4ブロック分のデータの整合性を維持することがで
きるが、逆に言えば、それより多いブロック分の整合性
の維持を図ることは困難である。即ち、第1および第2
の領域としての物理ブロックに、データ領域を構成する
物理ブロックの物理ブロック番号を記憶させて管理する
だけでは、第1および第2の領域としての物理ブロック
に、物理ブロック番号を記憶させることのできる数によ
って、データの整合性を維持することができるブロック
数が制限される。
ように構成する。
するデータ領域としての物理ブロックと、データ領域を
構成する物理ブロックへのポインタとしての、そのブロ
ック番号を記憶するポインタ領域としての物理ブロッ
ク、およびポインタ領域を構成する物理ブロックへのポ
インタとしての、そのブロック番号を記憶する第1およ
び第2の領域としての物理ブロックとで構成する。
つの物理ブロックは、8バイトで構成されている。
8バイト単位でデータを記憶するようになされており、
図11においては、データ領域は、物理ブロック番号と
して#00H乃至#17Hそれぞれが割り当てられた2
4の物理ブロックで構成されている。
ブロックが見えるようになされており、その16の論理
ブロックそれぞれには、論理ブロック番号として%00
H乃至%0FHが割り当てられている。但し、ここで
は、説明の都合上、データ領域を構成する物理ブロック
と同一の数だけ論理ブロックが存在するものとし、外部
から論理ブロックとして見える物理ブロック以外の8つ
の物理ブロックそれぞれに、論理ブロック番号として%
10乃至%17を仮想的に割り当てておく。図11に示
した状態では、論理ブロック番号%00H乃至%17H
と、物理ブロック番号#00H乃至#17Hとがそれぞ
れ対応付けられている。
する各物理ブロックは、8バイト単位で、データ領域を
構成する物理ブロックへのポインタとしての、その物理
ブロック番号を記憶するようになされており、図11に
おいては、ポインタ領域は、物理ブロック番号として#
1B乃至#1Dそれぞれが割り当てられた6の物理ブロ
ックで構成されている。ここでは、ポインタ領域を構成
する各物理ブロックは、8バイト単位で物理ブロック番
号を記憶するようになされており、また、物理ブロック
番号は1バイトで表されるから、1の物理ブロックに
は、8個の物理ブロック番号が記憶されるようになされ
ている。
置される8つの物理ブロック番号は、論理ブロック番号
と対応付けられるようになされている。即ち、その1乃
至8バイト目に配置される物理ブロック番号は、ある論
理ブロック番号(後述するように、%00H,%08
H、または%10H)を基準として0乃至7だけオフセ
ットした(ずれた)論理ブロック番号に対応付けられる
ようになされている。
は、その先頭の1バイトが最新情報に、終わりの1バイ
トが有効性情報に、それぞれ割り当てられている。そし
て、最新情報と有効性情報との間の6バイトには、ポイ
ンタ領域の物理ブロックへのポインタとしての、その物
理ブロック番号が配置されている。
情報と有効性情報との間の6バイトのうち、前半の4バ
イト(以下、適宜、ポインタ領域の対象ブロックへのポ
インタの欄という)には、ポインタ領域の対象ブロック
の物理ブロック番号が配置され、その後半の4バイト
(以下、適宜、ポインタ領域の更新ブロックへのポイン
タの欄という)には、ポインタ領域の更新ブロックの物
理ブロック番号が配置される。
域の対象ブロックへのポインタの欄に配置される3つの
物理ブロック番号に対応するポインタ領域の物理ブロッ
クが記憶している物理ブロック番号は、論理ブロック番
号と対応付けられるようになされている。即ち、例え
ば、その1乃至3バイト目に配置される物理ブロック番
号に対応するポインタ領域の物理ブロックが記憶してい
る物理ブロック番号は、それぞれ論理ブロック番号%0
0H乃至%07H、%08H乃至%0FH、または%1
0H乃至%17Hに対応付けられるようになされてい
る。
1の領域に注目した場合においては、ポインタ領域の対
象ブロックへのポインタの欄における1バイト目の物理
ブロック番号#18Hが指しているポインタ領域の物理
ブロックの1乃至8バイト目に配置された物理ブロック
番号#00H乃至#07Hは、第1の領域におけるポイ
ンタ領域の対象ブロックへのポインタの欄における1バ
イト目に対応付けられている論理ブロック番号%00H
乃至%07Hにそれぞれ対応付けられる。即ち、ポイン
タ領域の対象ブロックへのポインタの欄における1バイ
ト目の物理ブロック番号が指すポインタ領域の物理ブロ
ックの1乃至8バイト目に配置された物理ブロック番号
は、論理ブロック番号%00Hを基準として0乃至7だ
けオフセットした論理ブロック番号%00H乃至%07
Hにそれぞれ対応付けられる。
インタの欄における2バイト目の物理ブロック番号#1
9Hが指しているポインタ領域の物理ブロックの1乃至
8バイト目に配置された物理ブロック番号#08H乃至
#0FHは、第1の領域におけるポインタ領域の対象ブ
ロックへのポインタの欄における2バイト目に対応付け
られている論理ブロック番号%08H乃至%0FHにそ
れぞれ対応付けられる。即ち、ポインタ領域の対象ブロ
ックへのポインタの欄における2バイト目の物理ブロッ
ク番号が指すポインタ領域の物理ブロックの1乃至8バ
イト目に配置された物理ブロック番号は、論理ブロック
番号%08Hを基準として0乃至7だけオフセットした
論理ブロック番号%08H乃至%0FHにそれぞれ対応
付けられる。
へのポインタの欄における3バイト目の物理ブロック番
号が指すポインタ領域の物理ブロックの1乃至8バイト
目に配置された物理ブロック番号は、論理ブロック番号
%10Hを基準として0乃至7だけオフセットした論理
ブロック番号%10H乃至%17Hにそれぞれ対応付け
られる。
の物理ブロック番号は、それぞれ#1Eまたは#1Fと
なっている。
例えば、第1の領域に注目した場合には、ポインタ領域
の対象ブロックへのポインタの欄に記述された物理ブロ
ック番号に対応する物理ブロックが、アクセス対象とな
るべきポインタ領域の対象ブロックとなる。従って、図
11では、物理ブロック#18H乃至#1AHがポイン
タ領域の対象ブロックとなっている。また、図11で
は、ポインタ領域の残りの物理ブロック#1BH乃至#
1DHが、ポインタ領域の更新のための更新ブロックと
なっており、これにより、その物理ブロック番号#1B
H乃至#1DHが、第1の領域におけるポインタ領域の
更新ブロックへのポインタの欄に記述されている。
ブロックに記述された物理ブロック番号に対応する、デ
ータ領域の物理ブロックのうち、例えば、論理ブロック
%00H乃至%0FHに対応するものがデータ領域の対
象ブロックとなるようになされている。従って、図11
では、物理ブロック#00H乃至#0FHがデータ領域
の対象ブロックとなり、データ領域の残りの物理ブロッ
ク(論理ブロック%10H乃至%17Hに対応する物理
ブロック)#10H乃至#17Hが、データ領域の更新
のための更新ブロックとなっている。
更新ブロックは、その物理ブロック番号が、ポインタ領
域の更新ブロックへのポインタの欄に記述されているの
で、その欄を参照することで認識することができる。一
方、データ領域の更新ブロックは、論理ブロック%10
H乃至%17Hに対応する物理ブロックであるから、ポ
インタ領域の対象ブロックへのポインタの欄の3バイト
目に記述されている物理ブロック番号に対応するポイン
タ領域の物理ブロックを参照することで、そこに記述さ
れている物理ブロック番号から認識することができる。
の領域としての、例えば、第1の領域のみが有効である
とされているとして、外部から、例えば、論理ブロック
番号%00Hと%02Hに対応する論理ブロックそれぞ
れに、関連する2つのデータの書き込みの要求があった
とする。
の、ポインタ領域の対象ブロックへのポインタの欄を参
照し、さらに、そこに記述されている物理ブロック番号
に対応する物理ブロックを参照することで、関連する2
つのデータを書き込むべきデータ領域の物理ブロックで
ある対象ブロックが認識される。即ち、まず、上述した
ことから、第1の領域におけるポインタ領域の対象ブロ
ックへのポインタの欄の1バイト目を参照することで、
論理ブロック%00Hと%02Hに対応するデータ領域
の物理ブロックの物理ブロック番号が記述された、ポイ
ンタ領域の物理ブロック#18Hを認識することができ
る。そして、その物理ブロック#18Hの1バイト目と
3バイト目を参照することで、論理ブロック%00Hと
%02Hに対応するデータ領域の物理ブロック(対象ブ
ロック)の物理ブロック番号#00Hと#02Hをそれ
ぞれ認識することができる。
される。即ち、上述したことから、第1の領域における
ポインタ領域の対象ブロックへのポインタの欄の3バイ
ト目を参照することで、データ領域の更新ブロックとな
る論理ブロック%10H乃至%17Hに対応する物理ブ
ロックの物理ブロック番号が記述された、ポインタ領域
の物理ブロック#1AHを認識することができる。そし
て、その物理ブロック#1AHを参照することで、デー
タ領域の更新ブロックとなっている物理ブロックの物理
ブロック番号#10H乃至#17Hを認識することがで
きる。なお、ここでは、データ領域の更新ブロックとし
て、データの書き込み対象である、データ領域の対象ブ
ロックと同一の数の物理ブロックが、物理ブロック#1
AHを、例えば左から順次参照することで認識されるよ
うになされている。従って、ここでは、物理ブロック番
号#10Hと#11Hに対応する、データ領域の物理ブ
ロックが更新ブロックとされる。
ロックである物理ブロック#00Hまたは#02Hに書
き込むべき2つのデータが、図12に示すように、デー
タ領域の更新ブロックである物理ブロック#10Hまた
は#11Hそれぞれに書き込まれる。
0Hと%02Hに対応する物理ブロック番号#00Hと
#02Hに書き込むべき2つのデータが、それぞれ8バ
イトの00Hと8バイトの02Hであったとして、これ
らが、データ領域の更新ブロックである物理ブロック#
10Hと#11Hそれぞれに書き込まれた状態を示して
いる。
いるポインタ領域の物理ブロック番号#18Hに対応す
る物理ブロックに記憶されているデータ領域の物理ブロ
ック番号#00Hおよび#02Hに対応する物理ブロッ
クに書き込むべき2つのデータを、データ領域の更新ブ
ロック#10Hと#11Hにそれぞれ書き込んだ後は、
そのデータを書き込んだ、データ領域の更新ブロックで
あった物理ブロックのブロック番号#10Hと#11H
が、ポインタ領域の更新ブロックに書き込まれるととも
に、本来ならばデータが書き込まれたはずであったデー
タ領域の物理ブロック(対象ブロック)の物理ブロック
番号#00Hおよび#02Hが、ポインタ領域の、他の
更新ブロックに書き込まれる
領域の更新ブロックへのポインタの欄を参照すること
で、ポインタ領域の更新ブロックが認識される。なお、
ここでは、ポインタ領域の更新ブロックとして、ポイン
タ領域の対象ブロックのうち、上述のようなデータ領域
への書き込みに伴って変更(更新)する必要のあるもの
と同一の数の物理ブロックが、ポインタ領域の更新ブロ
ックへのポインタの欄を、例えば左から順次参照するこ
とで認識されるようになされている。従って、上述の場
合においては、本来、データが書き込まれるべき物理ブ
ロック(データ領域の対象ブロック)の物理ブロック番
号#00Hと#02Hが記憶されている、ポインタ領域
の物理ブロック#18H、および実際にデータが書き込
まれた物理ブロックの物理ブロック番号#10Hと#1
1Hが記憶されている、ポインタ領域の物理ブロック#
1AHの2つの物理ブロックと同一の数である、ポイン
タ領域の更新ブロック#1BHと#1CHの2つが、第
1の領域におけるポインタ領域の更新ブロックへのポイ
ンタの欄を左から順次参照することで認識される。
ロック#1BHまたは#1CHのうちの、例えば、更新
ブロック#1BHには、データ領域の対象ブロックの物
理ブロック番号#00Hと#02Hが記憶されている、
ポインタ領域の物理ブロック#18Hの記憶内容がコピ
ーされ、そのうちの、データ領域の対象ブロックの物理
ブロック番号#00Hまたは#02Hが、図12に示す
ように、実際にデータが書き込まれたデータ領域の更新
ブロックの物理ブロック番号#10Hまたは#11Hに
それぞれ書き換えられる。
ック#1BHまたは#1CHのうちの残りの更新ブロッ
ク#1CHには、実際にデータが書き込まれた物理ブロ
ックの物理ブロック番号#10Hと#11Hが記憶され
ている、ポインタ領域の物理ブロック#1AHの記憶内
容がコピーされ、その物理ブロック番号#10Hと#1
1Hが、図12に示すように、本来、データが書き込ま
れるべき物理ブロックの物理ブロック番号(データ領域
の対象ブロック)#00Hまたは#02Hにそれぞれ書
き換えられる。
インタ領域の更新ブロックであった物理ブロックのブロ
ック番号#1BHと#1CHが、有効でなかった第2の
領域におけるポインタ領域の対象ブロックへのポインタ
の欄に書き込まれる。即ち、第1の領域におけるポイン
タ領域の対象ブロックへのポインタの欄が、第2の領域
にコピーされ、そのうちの、論理アドレス%00H乃至
%07Hに対応する1バイト目が、ポインタ領域の物理
ブロックの物理ブロック番号#1BHに書き換えられる
とともに、論理アドレス%10H乃至%17Hに対応す
る3バイト目が、ポインタ領域の物理ブロックの物理ブ
ロック番号#1CHに書き換えられる(図12)。
は、物理ブロック#1BH,#19H、および#1CH
が、ポインタ領域の対象ブロックとなり、これにより、
データ領域の更新ブロックであった物理ブロック#10
Hまたは#11Hは、データ領域の対象ブロックであっ
た物理ブロック#00Hまたは#02Hが対応付けられ
ていた論理ブロック番号%00Hまたは%02Hにそれ
ぞれ対応付けられるとともに、対象ブロックであった物
理ブロック#00Hまたは#02Hは、論理ブロック%
10Hまたは%11Hにそれぞれ対応付けられ、更新ブ
ロックとされる。
対象ブロックへのポインタの欄の1バイト目を参照する
と、論理ブロック%00Hと%02Hに対応するデータ
領域の物理ブロックの物理ブロック番号が記述された、
ポインタ領域の物理ブロックは、物理ブロック#1BH
ということになり、さらに、その物理ブロック#1BH
の1バイト目と3バイト目を参照すると、論理ブロック
%00Hと%02Hに対応するデータ領域の物理ブロッ
クは、それぞれ物理ブロック#10Hと#11Hという
ことになる。また、第2の領域におけるポインタ領域の
対象ブロックへのポインタの欄の3バイト目を参照する
と、論理ブロック%10Hと%11Hに対応するデータ
領域の物理ブロックの物理ブロック番号が記述された、
ポインタ領域の物理ブロックは、物理ブロック#1CH
ということになり、さらに、その物理ブロック#1CH
の1バイト目と2バイト目を参照すると、論理ブロック
%10Hと%11Hに対応するデータ領域の物理ブロッ
ク、つまりデータ領域の更新ブロックは、物理ブロック
#00Hと#02Hということになる。
ータが書き込まれるべき物理ブロックの物理ブロック番
号#00Hと#02Hが記憶されていた物理ブロックの
物理ブロック番号#18H、および実際にデータが書き
込まれた物理ブロックの物理ブロック番号#10Hと#
11Hが記憶されていた物理ブロックの物理ブロック番
号#1AHが、有効でなかった第2の領域におけるポイ
ンタ領域の更新ブロックへのポインタの欄に書き込まれ
る。即ち、第1の領域におけるポインタ領域の更新ブロ
ックへのポインタの欄が、第2の領域にコピーされ、そ
のうちの、記憶内容の更新がされたポインタ領域の物理
ブロックの物理ブロック番号#1BHまたは#1CH
が、図12に示すように、論理アドレス%00H乃至%
07Hに対応していた物理ブロック番号が記憶された物
理ブロック番号#18H、または論理アドレス%10H
乃至%17Hに対応していた物理ブロック番号が記憶さ
れた物理ブロック番号#1AHに、それぞれ書き換えら
れる。
は、物理ブロック#18H,#1AH、および#1DH
が、ポインタ領域の更新ブロックとなる。
後は、シングルポインタ方式における場合と同様に、そ
の第2の領域における最新情報と有効性情報とが順次書
き込まれる。
ポインタ領域の書き込みが終了しないと、有効である旨
の有効性情報は書き込まれない。即ち、上述の場合にお
いては、2つの論理ブロック%00Hと%02Hへのデ
ータの書き込みが終了しなければ、第2の領域には、有
効である旨の有効性情報は書き込まれない。
%02Hへのデータの書き込みが行われている間にメモ
リコラプションが生じた場合には、第1の領域のみが有
効な状態となったままになり、論理ブロック%00Hと
%02Hからは、有効である第1の領域を参照すること
で、その論理ブロック%00Hと%02Hにそれぞれ対
応付けられている物理ブロック#00Hと#02Hに記
憶されている古いデータが読み出されることになる。
2Hへのデータの書き込みが終了し、第2の領域におけ
る最新情報と有効性情報の更新が行われた場合には、論
理ブロック%00Hと%02Hからは、有効で且つ最も
新しい第2の領域を参照することで、その論理ブロック
%00Hと%02Hにそれぞれ対応付けられている物理
ブロック#10Hと#11Hに記憶されている新しいデ
ータが読み出されることになる。
と%02Hに記憶される、複数のデータとしての2つデ
ータが関連性を有するものであるときには、メモリコラ
プションが生じても、シングルポインタ方式における場
合と同様に、その2つのデータの間の整合性を維持する
ことが可能となる。
インタ領域の対象ブロックへのポインタの欄には、ポイ
ンタ領域の物理ブロックの3つ分の物理ブロック番号を
記憶させることができ、また、ポインタ領域の1の物理
ブロックには、データ領域の物理ブロックの8つ分の物
理ブロック番号を記憶させることができるので、最大
で、データ領域の物理ブロックを、24(=3×8)個
管理することができる。従って、最大で、24ブロック
のうちの半分である12ブロックをデータ領域の更新ブ
ロックとすることができ、そのブロック数分、即ち、シ
ングルポインタ方式よりも多いブロック数のデータの整
合性を維持することができる。なお、図11および図1
2では、24ブロックのうちの8ブロックを更新ブロッ
クとしてあり、最大で、8ブロック分のデータの整合性
を維持することができるようになされている。
たメモリに対する読み書き方式は、データ領域への、い
わば2段のポインタを利用したものなので、以下、適
宜、ダブルポインタ方式という。
読み書き処理について、図13および図14のフローチ
ャートを参照してさらに説明する。
て、読み出し処理について説明する。
たはS58において、図5のステップS1またはS4に
おける場合とそれぞれ同様の判定処理が行われる。
よび第1と第2の領域の両方が有効であるが、第1の領
域の方が新しい場合は、ステップS52に進み、また、
第2の領域のみが有効の場合、および第1と第2の領域
の両方が有効であるが、第2の領域の方が新しい場合
は、ステップS55に進む。
ポインタ領域の対象ブロックへのポインタの欄を参照す
ることで、読み出すべきデータの論理ブロック番号に対
応する物理ブロック番号が記憶されている、ポインタ領
域の物理ブロックの物理ブロック番号(ポインタ)が認
識され、ステップS53に進む。即ち、例えば、図11
で説明したようにメモリが構成される場合において、論
理ブロック番号が%00H乃至%07H、または%08
H乃至%0FHのとき、ポインタ領域の対象ブロックへ
のポインタの欄の1または2バイト目に記憶されている
物理ブロック番号がそれぞれ認識される。
識された物理ブロック番号に対応するポインタ領域の物
理ブロックを参照することで、読み出すべきデータの論
理ブロック番号に対応する物理ブロック番号が認識さ
れ、ステップS54に進む。即ち、読み出すべきデータ
の論理ブロック番号が、ある基準値(図11の場合にお
いては、%00Hまたは%08H)から0乃至7だけオ
フセットした値である場合には、ステップS52で認識
された物理ブロック番号に対応する物理ブロックの左か
ら、そのオフセット分だけずれた位置に記憶された物理
ブロック番号が、読み出すべきデータの論理ブロック番
号に対応する物理ブロック番号として認識される。
53で認識された物理ブロック番号に対応する物理ブロ
ックからデータが読み出され、処理を終了する。
おけるポインタ領域の対象ブロックへのポインタの欄を
参照することで、読み出すべきデータの論理ブロック番
号に対応する物理ブロック番号が記憶されている、ポイ
ンタ領域の物理ブロックの物理ブロック番号が認識さ
れ、以下、ステップS56,S57に順次進み、ステッ
プS53,S54それぞれに相当する処理が行われ、処
理を終了する。
て、書き込み処理について説明する。
において、図5のステップS1またはS4における場合
とそれぞれ同様の判定処理が行われる。
よび第1と第2の領域の両方が有効であるが、第1の領
域の方が新しい場合は、ステップS62に進み、第1の
領域におけるポインタ領域の対象ブロックへのポインタ
の欄を参照することで、更新ブロックとすることができ
るデータ領域の物理ブロックの物理ブロック番号が記憶
されたポインタ領域の物理ブロックの物理ブロック番号
が認識され、ステップS63に進む。即ち、例えば、図
11に示したようにメモリが構成される場合において
は、第1の領域におけるポインタ領域の対象ブロックへ
のポインタの欄の3バイト目に記憶された物理ブロック
番号#1AHが認識される。
識された物理ブロック番号に対応する物理ブロックに記
憶された、データ領域の更新ブロックの物理ブロック番
号を参照することで、データ領域の更新ブロックが認識
され、ステップS64に進み、そのデータ領域の更新ブ
ロックに、外部などから供給された、書き込むべきデー
タが書き込まれる。
き込むデータが供給された場合には、ステップS63で
は、その複数の論理ブロックと同一の数の、データ領域
の更新ブロックの物理ブロック番号が、ステップS62
で認識された物理ブロック番号に対応する物理ブロック
(ポインタ領域の物理ブロック)を、例えば、左から右
方向に順次サーチすることで認識されるようになされて
いる。さらに、この場合、ステップS64では、このよ
うにして認識された複数の物理ブロック番号それぞれに
対応するデータ領域の更新ブロックに、外部からのデー
タが順次書き込まれるようになされている。
書き込みの対象とした論理ブロックの論理ブロック番号
が対応付けられていた物理ブロック番号を記憶していた
物理ブロックを更新したものが、ポインタ領域の更新ブ
ロックにコピーされる。即ち、例えば、図11および図
12で説明した場合においては、データの書き込みの対
象とした論理ブロックの論理ブロック番号%00H,%
02Hが対応付けられていた物理ブロック番号#00
H,#02Hを記憶していた物理ブロック#18Hを更
新し、そのうちの物理ブロック番号#00H,#02H
をそれぞれ#10H,#11Hとしたものが、ポインタ
領域の更新ブロック#1BHにコピーされる。
の更新ブロックへのポインタ(データ領域の更新ブロッ
クの物理ブロック番号)を記憶している物理ブロックを
更新したものが、ポインタ領域の更新ブロックにコピー
される。即ち、例えば、図11および図12で説明した
場合においては、データ領域の更新ブロックの物理ブロ
ック番号#10H乃至#17Hを記憶している物理ブロ
ック#1AHを更新し、そのうちの物理ブロック番号#
10H,#11Hをそれぞれ#00H,#02Hとした
ものが、ポインタ領域の更新ブロック#1Cにコピーさ
れる。
域におけるポインタ領域の対象ブロックへのポインタの
欄、およびポインタ領域の更新ブロックへのポインタの
欄とを更新し、さらに、その最新情報および有効性情報
を更新したものが、第2の領域にコピーされる。
を例にすれば、第1の領域におけるポインタ領域の対象
ブロックへのポインタの欄については、外部から供給さ
れたデータを書き込む論理ブロックに対応付けられてい
たデータ領域の物理ブロック#00H,#02Hへのポ
インタのポインタとなっている1バイト目に記憶されて
いた物理ブロック番号#18Hが、実際にデータを書き
込んだデータ領域の物理ブロック#10H,#11Hへ
のポインタのポインタである物理ブロック番号#1BH
に更新されるとともに、実際にデータを書き込んだデー
タ領域の物理ブロック#10H,#11Hへのポインタ
のポインタとなっていた物理ブロック番号#1AHが、
データを書き込む論理ブロックに対応付けられていたデ
ータ領域の物理ブロック#00H,#02Hへのポイン
タのポインタとなった物理ブロック番号#1CHに更新
される。
更新ブロックへのポインタの欄については、物理ブロッ
ク番号の更新されたポインタ領域の物理ブロック(更新
ブロックであった物理ブロック)の物理ブロック番号#
1BH,#1CHが、ポインタ領域の更新ブロックとな
った物理ブロックの物理ブロック番号#18H,#1A
Hにそれぞれ更新される。
び有効性情報が更新され、以上の更新結果が、第2の領
域に書き込まれ、処理を終了する。
び第1と第2の領域の両方が有効であるが、第2の領域
の方が新しい場合は、ステップS68乃至S72に順次
進み、第1または第2の領域についての処理が、逆に第
2または第1の領域についてそれぞれ行われることを除
けば、ステップS62乃至S66における場合とそれぞ
れ同様の処理が行われる。
も、シングルポインタ方式と同様に、整合性を維持する
ことができる物理ブロックの数には制限があるが、シン
グルポインタ方式をダブルポインタ方式に拡張するのと
同様にして、ダブルポインタ方式を拡張していき、デー
タ領域へのポインタを、3段、4段、・・・とすれば、
整合性を維持することができる物理ブロックの数を、よ
り多くすることができる。従って、1ブロックの長さを
考慮して、データ領域へのポインタの段数を適切に設定
することで、整合性を維持することができる物理ブロッ
クの数の上限を、所望の値にすることができる。
ンサ91による、EEPROM66に対するデータの読
み書き処理は、上述のダブルポインタ方式により行われ
るようになされており、この場合のEEPROM66の
メモリ割り当ての例を、図15に示す。
ロックを256個有している。各物理ブロックは、32
バイトのデータ部(D00乃至D1F)と、8バイトの
パリティ部(P0乃至P5)との合計40バイトで構成
されている。
に物理ブロック番号#00H乃至#FFHがそれぞれ割
り当てられており、このうち、物理ブロック#00H乃
至#EFHがデータ領域を、物理ブロック#F0H乃至
#FDHがポインタ領域を、物理ブロック#FEH,#
FFHが第1、第2の領域を、それぞれ構成している。
物理ブロック#00H乃至#EFHのうち、224の物
理ブロックが対象ブロック(以下、データブロックとも
いう)とされ、残りの16の物理ブロックが更新ブロッ
クとされている。従って、ここでは、最大で、16ブロ
ック分のデータの整合性を維持することができるように
なされている。なお、図15に示した状態では、物理ブ
ロック#00H乃至#DFHがデータブロックに、物理
ブロック#E0H乃至EFHが更新ブロックになってい
る。
ック#F0H乃至#FDHのうちの7個ずつが、それぞ
れ対象ブロック(以下、ポインタブロックともいう)ま
たは更新ブロックとされている。なお、図15に示した
状態では、物理ブロック#F0H乃至#F6Hがポイン
タブロックに、物理ブロック#F7H乃至FDHが更新
ブロックになっている。
は、有効判定ブロックとして図示してある。
第2の領域)の構成例を示している。
クのデータ部の1バイト目(D00)には、最新情報
(最新性判定情報)が配置され、2乃至8バイト目(D
01乃至D07)には、ポインタ領域の対象ブロック
(ポインタブロック)の物理ブロック番号が配置され
る。
バイト目(D08乃至D17)には、データ領域の更新
ブロックの物理ブロック番号が配置される。即ち、上述
の場合においては、第1および第2の領域に、データ領
域の更新ブロックの物理ブロック番号が記憶されたポイ
ンタ領域の物理ブロックの物理ブロック番号(データ領
域の更新ブロックへのポインタのポインタ)が記憶され
るようになされていたが、ここでは、データ領域の更新
ブロックの物理ブロック番号(データ領域の更新ブロッ
クへのポインタ)が、直接、有効判定ブロックに配置さ
れている。
タ領域の更新ブロックの物理ブロック番号が記憶される
物理ブロックはない。
1バイト目(D18乃至D1E)には、ポインタ領域の
更新ブロックの物理ブロック番号が配置され、その32
バイト目(D1F)は予備とされている。
は、上述の有効性判定情報に相当する、例えばRS符号
などが配置される。
M66が構成されている場合の、有効性判定ブロックの
データ部の初期値の例を、図16(B)に示す。
物理ブロック(ポインタブロックおよびその更新ブロッ
ク)の構成例を示している。
0乃至D1F)には、データ領域の物理ブロックの物理
ブロック番号が32個単位で配置される。なお、ポイン
タ領域を構成する物理ブロックのパリティ部は、上述し
た有効性情報として用いられるものではなく、通常のパ
リティとしての役割を果たすものであり、従って、この
パリティ部に配置される情報は、誤り訂正能力を有する
ものであることが好ましい。これは、ダブルポインタ方
式では、ポインタ領域を構成する物理ブロックのデータ
部に配置された情報に誤りがないかどうかの有効性は、
そのパリティ部に配置される情報によってではなく、有
効判定ブロックの有効性情報としてのパリティ部に基づ
いて、最終的に判定されるからである。
M66が構成されている場合の、ポインタ領域を構成す
る物理ブロックのデータ部の初期値の例を、図17
(B)に示す。
(データブロックおよびその更新ブロック)は、データ
部に物理ブロック番号ではなく、読み書きされるデータ
が配置される他は、ポインタ領域を構成する物理ブロッ
クと同様に構成されるので、その説明は省略する。
成される場合の、そのEEPROM66に対するデータ
の読み書き処理について説明する。
に近接し、ICカード2を構成する各ブロックに電源の
供給が開始されると、シーケンサ91では、図18のフ
ローチャートにしたがった初期処理が行われる。
81において、シーケンサ91は、EEPROM66を
参照することにより、有効で、かつ最新の有効判定ブロ
ックを選択し、ステップS82に進み、その選択した有
効判定ブロックをRAM67にコピーする。さらに、シ
ーケンサ91は、ステップS83に進み、選択した有効
性判定ブロックに配置されているポインタ領域のポイン
タブロックの物理ブロック番号を参照し、その物理ブロ
ック番号に対応するポインタブロックを、EEPROM
66から読み出し、RAM67にコピーして、初期処理
を終了する。
には、図19に示すように、有効かつ最新の有効判定ブ
ロックと、7つのポインタブロックに記憶されているデ
ータ領域のデータブロックの物理ブロック番号(図15
に示すように、EEPROM66が構成されていた場合
には、物理ブロック番号#00H乃至#DFH)とが記
憶される。
のステップS81の処理の詳細を示している。
おいて、シーケンサ91は、物理ブロック番号#FEH
と#FFHに対応する有効判定ブロックの有効性情報と
してのパリティ部を参照し、有効かどうかを判定する。
号#FEHに対応する有効判定ブロックのみ有効である
と判定された場合、ステップS92に進み、シーケンサ
91は、選択すべき有効判定ブロックの物理ブロック番
号を格納する変数Bnに、物理ブロック番号#FEHを
セットし、リターンする。また、ステップS91におい
て、物理ブロック番号#FFHに対応する有効判定ブロ
ックのみ有効であると判定された場合、ステップS93
に進み、シーケンサ91は、変数Bnに、物理ブロック
番号#FFHをセットし、リターンする。
ック番号#FEHおよび#FFHに対応するいずれの有
効判定ブロックも有効であると判定された場合、ステッ
プS94に進み、シーケンサ91は、それぞれの有効判
定ブロックの最新情報としての、そのデータ部の1バイ
ト目を参照することで、いずれの有効判定ブロックが新
しいかを判定する。ステップS94において、物理ブロ
ック番号#FEHまたは#FFHに対応する有効判定ブ
ロックが新しいと判定された場合、ステップS92また
はS93に進み、それぞれ上述した場合と同様の処理が
行われ、リターンする。
後、シーケンサ91に対して、EEPROM66からの
データの読み出しの要求が行われた場合の、シーケンサ
91の読み出し処理について説明する。なお、ここで
は、データの読み出しの要求とともに、その読み出すデ
ータが記憶されている論理ブロックの論理ブロック番号
も、シーケンサ91に供給されるものとする。
ように、まず最初に、ステップS101において、シー
ケンサ91は、読み出すべきデータのブロック数を変数
nにセットするとともに、そのブロック数をカウントす
るための変数iに、初期値としての、例えば1をセット
する。ここで、シーケンサ91には、上述したように、
読み出すべきデータが記憶されている論理ブロックの論
理ブロック番号が供給されるようになされており、シー
ケンサ91では、その論理ブロック番号の数により、読
み出すべきデータのブロック数nが認識されるようにな
されている。
02において、変数Blに、i番目の論理ブロックの論
理ブロック番号をセットし、ステップS103に進み、
RAM67を参照することにより、上述したようにし
て、論理ブロック番号Blに対応付けられている物理ブ
ロック番号Bpを認識する。
04において、EEPROM66の、物理ブロック番号
Bpに対応する物理ブロックからデータを読み出し、R
AM67に確保された送信バッファに転送する。即ち、
RAM67には、図18で説明した初期処理の結果を記
憶する領域の他に、送信バッファとなる領域が確保され
ており、その送信バッファに、EEPROM66から読
み出されたデータが転送される。
ケンサ91は、変数iを1だけインクリメントし、ステ
ップS106に進み、変数iがn以下であるかどうかを
判定する。ステップS106において、変数iがn以下
であると判定された場合、即ち、要求されたブロック数
だけのデータを、まだ読み出していない場合、ステップ
S102に戻り、以下、上述した場合と同様の処理が行
われる。また、ステップS106において、変数iがn
より大きいと判定された場合、即ち、要求された論理ブ
ロックのデータの読み出しを完了した場合、ステップS
107に進み、RAM67の送信バッファに記憶されて
いたデータが、上述したようにしてR/W1に送信さ
れ、読み出し処理を終了する。
のステップS103の処理のより詳細を示している。
において、シーケンサ91は、論理ブロック番号Bl
が、%00H以上%DFH以下の範囲の値であるかどう
かを判定する。
ック番号として、例えば、%00H乃至%DFHの22
4個(データブロックと同一の数)が用意されており、
ステップS111の判定処理は、論理ブロック番号Bl
が、使用し得る値のものかを確認するために行われる。
番号Blが、%00H以上%DFH以下の範囲の値でな
いと判定された場合、ステップS112に進み、所定の
エラー処理が行われ、読み出し処理を終了する。即ち、
この場合、論理ブロック番号Blが使用し得る値ではな
いため、その後の処理は行われない。
ロック番号Blが、%00H以上%DFH以下の範囲の
値であると判定された場合、ステップS113に進み、
RAM67を参照することで、論理ブロック番号Blに
対応する物理ブロック番号Bpが認識され、リターンす
る。
た後、シーケンサ91に対して、EEPROM66への
データの書き込み(EEPROM66に記憶されたデー
タの更新)の要求が行われた場合の、シーケンサ91の
書き込み処理について説明する。
ともに、そのデータおよびそのデータを書き込む論理ブ
ロックの論理ブロック番号も、シーケンサ91に供給さ
れるものとする。さらに、RAM67には、上述した領
域の他に、シーケンサ91で受信された、書き込むデー
タを記憶する受信バッファの領域も確保されており、そ
の受信バッファに、書き込むデータが記憶されるものと
する。
ように、まず最初に、ステップS121において、シー
ケンサ91は、書き込むデータのブロック数を変数nに
セットするとともに、そのブロック数をカウントするた
めの変数iに、初期値としての、例えば1をセットす
る。ここで、シーケンサ91では、上述したように、そ
こに供給される論理ブロック番号の数から、書き込むデ
ータのブロック数nが認識されるようになされている。
22において、変数Blに、i番目の論理ブロック(i
番目のデータを書き込む論理ブロック)の論理ブロック
番号をセットし、ステップS123に進み、RAM67
を参照することにより、上述したようにして、論理ブロ
ック番号Blに対応する論理ブロックに書き込むべきデ
ータを実際に書き込む、データ領域の更新ブロックの物
理ブロック番号Brを求め、さらに、それに伴い、その
更新ブロックBrをデータブロックとするための処理を
行う。
ローチャートに示すように、まず最初に、ステップS1
41において、シーケンサ91は、RAM67を参照す
ることで、論理ブロック番号Blに対応する論理ブロッ
クに書き込むべきデータを実際に書き込む、データ領域
の更新ブロックの物理ブロック番号Brを求める。具体
的には、RAM67に記憶された有効判定ブロックの、
データ領域の更新ブロックの物理ブロック番号が記述さ
れた部分の左からi番目を参照し、そこに記述されてい
る物理ブロック番号を、変数Brにセットする。
ンサ91は、図21のステップS103における場合と
同様に、RAM67を参照することで、論理ブロック番
号Blに対応付けられている物理ブロック番号Bpを認
識する。
43において、物理ブロック番号Bpを、RAM67
の、データ領域の更新ブロックの物理ブロック番号Br
が記述されていた位置に書き込み、ステップS144に
進み、その物理ブロック番号Brを、RAM67の、論
理ブロック番号Blに対応付けられていた物理ブロック
番号Bpが記述されていた位置に書き込み、リターンす
る。
は、図25に示すように、物理ブロック番号BrとBp
との記憶位置が交換され、これにより、データ領域の更
新ブロックであった物理ブロックBrが、論理ブロック
Blに対応するデータブロックとされ、論理ブロックB
lに対応付けられていた物理ブロックBpがデータ領域
の更新ブロックとされる。
は、ステップS124に進み、シーケンサ91におい
て、データ領域の更新ブロックBr(正確には、データ
領域の更新ブロックであったが、図24で説明した処理
によりデータブロックとされた物理ブロックBr)に、
受信バッファに記憶された、i番目のデータが書き込ま
れ、ステップS125に進む。
は、変数iを1だけインクリメントし、ステップS12
6に進み、変数iがn以下であるかどうかを判定する。
ステップS126において、変数iがn以下であると判
定された場合、即ち、要求されたブロック数だけのデー
タを、まだ書き込んでいない場合、ステップS122に
戻り、以下、上述した場合と同様の処理が行われる。ま
た、ステップS126において、変数iがnより大きい
と判定された場合、即ち、要求されたブロック数のデー
タの書き込みを完了した場合、ステップS128に進
み、シーケンサ91は、ステップS122乃至S126
の処理を行うことにより、RAM67に記憶されたポイ
ンタブロックのうち、その記憶内容が変更(更新)され
たものの数を、変数mにセットし、その変更されたポイ
ンタブロックをカウントするための変数jに、初期値と
しての、例えば1をセットする。
ブロックの記憶内容は、ステップS123の処理(図2
4で説明した処理)により変更されるが、このようにし
て、ポインタブロックの記憶内容が変更された場合、そ
のポインタブロックが記憶されているRAM67の領域
に、その旨を示すフラグがたてられるようになされてお
り、ステップS128では、そのフラグを参照すること
で、記憶内容が変更されたポインタブロックの数が認識
されるようになされている。
ンサ91において、変更されたポインタブロックの、例
えば、RAM67の上からj番目のものの物理ブロック
番号が変数Bnにセットされる。そして、シーケンサ9
1は、ステップS130において、RAM67を参照す
ることにより、本来、データを書き込むべき物理ブロッ
クの物理ブロック番号を記憶しているポインタブロック
の物理ブロック番号Bnを認識し、さらに、そのポイン
タブロックBnを、ポインタ領域の更新ブロックとする
ための処理を行う。
ローチャートに示すように、まず最初に、ステップS1
51において、シーケンサ91は、RAM67を参照す
ることで、新たにポインタブロックとする、ポインタ領
域の更新ブロックの物理ブロック番号Btを求める。具
体的には、RAM67に記憶された有効判定ブロック
の、ポインタ領域の更新ブロックの物理ブロック番号が
記述された部分の左からj番目を参照し、そこに記述さ
れている物理ブロック番号を、変数Btにセットする。
52において、物理ブロック番号Btを、RAM67
の、ポインタブロックの物理ブロック番号Bnが記述さ
れていた位置に書き込み、ステップS153に進み、物
理ブロック番号Bnを、RAM67の、ポインタ領域の
更新ブロックの物理ブロック番号Btが記述されていた
位置に書き込み、リターンする。
は、図27に示すように、物理ブロック番号BnとBt
との記憶位置が交換され、これにより、ポインタ領域の
更新ブロックであった物理ブロックBtがポインタブロ
ックとされ、ポインタブロックであった物理ブロックB
nが、ポインタ領域の更新ブロックとされる。
処理後は、ステップS131に進み、シーケンサ91
は、EEPROM66に記憶されている、ポインタ領域
の更新ブロックBtに、RAM67の更新されたポイン
タブロックのうちの、上からj番目のものをコピーし、
ステップS132に進む。ステップS132では、シー
ケンサ91は、変数jを1だけインクリメントし、ステ
ップS133に進み、変数jがm以下であるかどうかを
判定する。ステップS133において、変数jがm以下
であると判定された場合、即ち、変更されたポインタブ
ロックすべてについての処理が、まだ終了していない場
合、ステップS129に戻り、以下、上述した場合と同
様の処理が行われる。また、また、ステップS133に
おいて、変数jがmより大きいと判定された場合、即
ち、変更されたポインタブロックすべてについての処理
が終了した場合、ステップS134に進み、シーケンサ
91は、RAM67に記憶されている有効判定ブロック
の最新情報としての、そのデータ部の1バイト目を1だ
けインクリメントする。
に、最新情報として、0,1,2の3値が順次用いられ
るようになされており、前回の最新情報のインクリメン
トの結果得られた値が2である場合には、ステップS1
34では、最新情報は0とされるようになされている。
135に進み、シーケンサ91は、RAM67が記憶し
ている有効判定ブロックのパリティ部に書き込むべきR
S符号をパリティ演算部93に演算させ、その有効判定
ブロックに書き込み、ステップS136に進む。ステッ
プS136では、シーケンサ91は、RAM67が記憶
している有効判定ブロックを、図28に示すように、E
EPROM66に記憶されている、初期処理(図18)
のステップS81で選択しなかった方の有効判定ブロッ
クの位置に上書きし、ステップS137に進む。ステッ
プS137では、シーケンサ91において、データの書
き込みが正常に終了したことを示す書き込み終了情報
を、R/W1に送信するための制御が行われ、書き込み
処理を終了する。
終了し、さらに、データ領域を構成する物理ブロックへ
のポインタを記憶するポインタ領域への書き込みが終了
してから、ポインタ領域を構成する物理ブロックへのポ
インタを記憶する有効判定ブロック(第1または第2の
領域)の記憶内容を更新するようにしたので、1以上の
物理ブロックにおける物理的なメモリコラプションに対
処することが可能となる。即ち、データ領域を構成する
1の物理ブロックのメモリコラプションに対処するのと
同時に、複数の物理ブロックのメモリコラプションにも
対処することが可能となる。
クと、ポインタ領域とに記憶される情報は、データ領域
における論理ブロック番号を物理ブロック番号に変換す
る、いわば変換表の役割を果たすから、有効判定ブロッ
クや、ポインタ領域の書き込みの最中に障害が発生する
と、論理的なメモリコラプションが生じるが、そのよう
な論理的なメモリコラプションにも対処することが可能
となる。
き込みの最中に障害が発生し、メモリコラプションが生
じても、それらの複数のデータの整合性を維持するとい
う、メモリコラプションに対する効果的な対処が可能と
なる。
用した場合について説明したが、本発明は、その他、メ
モリその他の記憶手段に、データを書き込むあらゆる装
置に適用可能である。但し、本発明は、例えば、上述の
非接触カードシステムや、また、接触型であっても、ユ
ーザがICカードの抜き差しを自由に行うことができる
システムなどの、いわば、データの送受信が不安定な状
態で行われるシステムについて、特に有用である。
クまたはポインタ領域に、ポインタ領域またはデータ領
域の、いわば空き領域としての、ポインタ領域の更新ブ
ロックの物理ブロック番号、またはデータ領域の更新ブ
ロックの物理ブロック番号をそれぞれ記憶させるように
したが、これらの更新ブロックの物理ブロック番号は、
必ずしも記憶させる必要はない。但し、更新ブロックの
物理ブロック番号を記憶させておかない場合には、デー
タの書き込みの際に、更新ブロックとなる物理ブロック
を、EEPROM66の記憶内容をサーチすることによ
り検出する必要があるため、処理の高速化などの観点か
らは、更新ブロックの物理ブロック番号を記憶させてお
くようにするのが望ましい。
6上の所定の位置に、有効判定ブロックを記憶させる領
域、ポインタ領域、およびデータ領域を割り当てるよう
にしたが、これらの領域を割り当てる位置は、特に限定
されるものではない。さらに、これらの領域は、EEP
ROM66上に連続した範囲の領域として確保する必要
もない。即ち、有効判定ブロックを記憶させる領域、ポ
インタ領域、またはデータ領域それぞれは、EEPRO
M66上の不連続な位置に確保することが可能である。
66に、前回の記憶内容のみを保持しておくようにした
が、その他、例えば、前回と前々回の記憶内容を保持し
ておくようにすることなども可能である。但し、この場
合、より多くの記憶容量が必要となる。
求項7に記載の情報処理装置によれば、第1または第2
の領域のうちの一方の領域が記憶しているブロック番号
に対応するデータ領域の1以上のブロックに書き込むべ
きデータが、データ領域を構成するブロックのうちのデ
ータの更新用のための1以上の更新ブロックに書き込ま
れ、そのデータを書き込んだ更新ブロックであったブロ
ックのブロック番号が、第1または第2の領域のうちの
他方に記憶される。従って、1のブロックに、データを
書き込む場合だけでなく、複数のブロックにデータを書
き込む場合においても、メモリコラプションに、効果的
に対処することが可能となる。
項14に記載の情報処理装置によれば、第1または第2
の領域のうちの一方の領域が記憶しているブロック番号
に対応するブロック番号領域のブロックに記憶されてい
るブロック番号に対応するデータ領域の1以上のブロッ
クに書き込むべきデータが、データ領域を構成するブロ
ックのうちのデータの更新用のための1以上の更新ブロ
ックに書き込まれ、そのデータを書き込んだデータ領域
の更新ブロックであったブロックのブロック番号が、ブ
ロック番号領域を構成するブロックのうちのブロック番
号の更新用のための更新ブロックに書き込まれる。そし
て、ブロック番号を書き込んだブロック番号領域の更新
ブロックであったブロックのブロック番号が、第1また
は第2の領域のうちの他方に記憶される。従って、より
多くのブロックにデータを書き込む場合においても、メ
モリコラプションに、効果的に対処することが可能とな
る。
施の形態の構成例を示すブロック図である。
ク図である。
である。
を説明するためのフローチャートである。
を説明するためのフローチャートである。
成例を示す図である。
成例を示す図である。
明するためのフローチャートである。
説明するためのフローチャートである。
成例を示す図である。
成例を示す図である。
明するためのフローチャートである。
明するためのフローチャートである。
を行う場合の、図3のEEPROM66の構成例を示す
図である。
例を示す図である。
例を示す図である。
う前に行われる初期処理を説明するためのフローチャー
トである。
説明するためのフローチャートである。
明するためのフローチャートである。
を説明するためのフローチャートである。
明するためのフローチャートである。
を説明するためのフローチャートである。
処理を説明するための図である。
を説明するためのフローチャートである。
処理を説明するための図である。
ための図である。
ローラ, 21 IC, 23 変調回路, 25 復
調回路, 27 アンテナ, 51 IC,52 コン
デンサ, 53 アンテナ, 61 RFインタフェー
ス部, 62BPSK復調回路, 63 PLL部,
64 演算部, 65 ROM,66 EEPROM,
67 RAM, 68 BPSK変調回路, 81
ASK復調部, 82 電圧レギュレータ, 83 発
振回路, 84 ASK変調部, 91 シーケンサ,
92 暗号/復号部, 93 パリティ演算部
Claims (14)
- 【請求項1】 所定のブロック単位で情報を記憶する記
憶手段を用いた情報処理方法であって、 前記記憶手段が、 データを前記ブロック単位で記憶するデータ領域と、 前記ブロックに割り当てられた番号であるブロック番号
を複数記憶する第1と第2の領域とを有する場合におい
て、 前記第1または第2の領域のうちの一方の領域が記憶し
ている前記ブロック番号に対応するデータ領域の1以上
のブロックに書き込むべきデータを、前記データ領域を
構成するブロックのうちのデータの更新用のための1以
上の更新ブロックに書き込み、 そのデータを書き込んだ前記更新ブロックであったブロ
ックのブロック番号を、前記第1または第2の領域のう
ちの他方に記憶させることを特徴とする情報処理方法。 - 【請求項2】 前記第1および第2の領域は、複数の前
記ブロック番号の他、その記憶内容の新しさまたは有効
性それぞれに関する最新情報または有効性情報も記憶
し、 前記最新情報および有効性情報に基づいて、前記第1ま
たは第2の領域のうちの一方の領域を選択し、選択した
一方の領域が記憶している前記ブロック番号に対応する
前記データ領域の1以上のブロックに書き込むべきデー
タを、1以上の前記更新ブロックに書き込むことを特徴
とする請求項1に記載の情報処理方法。 - 【請求項3】 前記データを書き込んだ1以上の更新ブ
ロックのブロック番号を、前記第1または第2の領域の
うちの他方の領域に記憶させた後、その他方の領域にお
ける前記最新情報と有効性情報を更新することを特徴と
する請求項2に記載の情報処理方法。 - 【請求項4】 前記最新情報および有効性情報に基づい
て、前記第1または第2の領域のうちのいずれかを選択
し、選択した領域が記憶している前記ブロック番号に対
応するブロックに記憶されているデータを読み出すこと
を特徴とする請求項3に記載のデータ処理方法。 - 【請求項5】 前記データを書き込むべきであったブロ
ックを更新ブロックとし、そのブロック番号も、前記第
1または第2の領域のうちの他方に記憶させることを特
徴とする請求項1に記載のデータ処理方法。 - 【請求項6】 前記第1または第2の領域のうちの一方
の領域が記憶している前記ブロック番号に対応する前記
データ領域の1以上のブロックに書き込むべきデータ
を、その一方の領域が記憶している前記ブロック番号に
対応する前記データ領域の1以上の更新ブロックに書き
込むことを特徴とする請求項5に記載のデータ処理方
法。 - 【請求項7】 所定のブロック単位で情報を記憶する記
憶手段を用いて情報処理を行う情報処理装置であって、 前記記憶手段が、 データを前記ブロック単位で記憶するデータ領域と、 前記データ領域を構成するブロックの番号であるブロッ
ク番号を複数記憶する第1と第2の領域とを有する場合
において、 前記第1または第2の領域のうちの一方の領域が記憶し
ている前記ブロック番号に対応する前記データ領域の1
以上のブロックに書き込むべきデータを、前記データ領
域を構成するブロックのうちのデータの更新用のための
1以上の更新ブロックに書き込むデータ書き込み手段
と、 前記データを書き込んだ前記更新ブロックであったブロ
ックのブロック番号を、前記第1または第2の領域のう
ちの他方に記憶させるブロック番号書き込み手段とを備
えることを特徴とする情報処理装置。 - 【請求項8】 所定のブロック単位で情報を記憶する記
憶手段を用いた情報処理方法であって、 前記記憶手段が、 データを前記ブロック単位で記憶するデータ領域と、 前記ブロックに割り当てられた番号であるブロック番号
であって、前記データ領域のブロックのブロック番号
を、前記ブロック単位で記憶するブロック番号領域と、 前記ブロック番号領域を構成する前記ブロックのブロッ
ク番号を複数記憶する第1と第2の領域とを有する場合
において、 前記第1または第2の領域のうちの一方の領域が記憶し
ている前記ブロック番号に対応する前記ブロック番号領
域のブロックに記憶されている前記ブロック番号に対応
する前記データ領域の1以上のブロックに書き込むべき
データを、前記データ領域を構成するブロックのうちの
データの更新用のための1以上の更新ブロックに書き込
み、 そのデータを書き込んだ前記データ領域の更新ブロック
であったブロックのブロック番号を、前記ブロック番号
領域を構成するブロックのうちのブロック番号の更新用
のための更新ブロックに書き込み、 ブロック番号を書き込んだ前記ブロック番号領域の更新
ブロックであったブロックのブロック番号を、前記第1
または第2の領域のうちの他方に記憶させることを特徴
とする情報処理方法。 - 【請求項9】 前記第1および第2の領域は、複数の前
記ブロック番号の他、その記憶内容の新しさまたは有効
性それぞれに関する最新情報または有効性情報も記憶
し、 前記最新情報および有効性情報に基づいて、前記第1ま
たは第2の領域のうちの一方の領域を選択し、選択した
一方の領域が記憶している前記ブロック番号に対応する
前記ブロック番号領域のブロックに記憶されている前記
ブロック番号に対応する前記データ領域の1以上のブロ
ックに書き込むべきデータを、前記データ領域の1以上
の前記更新ブロックに書き込むことを特徴とする請求項
8に記載の情報処理方法。 - 【請求項10】 前記ブロック番号領域の更新ブロック
であったブロックのブロック番号を、前記第1または第
2の領域のうちの他方に記憶させた後、その他方の領域
における前記最新情報と有効性情報を更新することを特
徴とする請求項9に記載の情報処理方法。 - 【請求項11】 前記最新情報および有効性情報に基づ
いて、前記第1または第2の領域のうちのいずれかを選
択し、選択した領域が記憶している前記ブロック番号に
対応する前記ブロック番号領域のブロックに記憶されて
いる前記ブロック番号に対応する前記データ領域のブロ
ックに記憶されているデータを読み出すことを特徴とす
る請求項10に記載のデータ処理方法。 - 【請求項12】 前記データを書き込むべきであった前
記データ領域のブロックを、前記データ領域の更新ブロ
ックとし、そのブロック番号を、前記ブロック番号領域
の更新ブロックに書き込み、 前記データ領域の更新ブロックとしたブロックのブロッ
ク番号を書き込んだ、前記ブロック番号領域の更新ブロ
ックであったブロックのブロック番号も、前記第1また
は第2の領域のうちの他方に記憶させることを特徴とす
る請求項8に記載のデータ処理方法。 - 【請求項13】 前記第1または第2の領域のうちの一
方の領域が記憶している前記ブロック番号に対応する前
記ブロック番号領域のブロックに記憶されている前記ブ
ロック番号に対応する前記データ領域の1以上のブロッ
クに書き込むべきデータを、その一方の領域が記憶して
いる前記ブロック番号に対応する前記ブロック番号領域
のブロックに記憶されている前記ブロック番号に対応す
るデータ領域の1以上の更新ブロックに書き込むことを
特徴とする請求項12に記載のデータ処理方法。 - 【請求項14】 所定のブロック単位で情報を記憶する
記憶手段を用いた情報処理を行う情報処理装置であっ
て、 前記記憶手段が、 データを前記ブロック単位で記憶するデータ領域と、 前記ブロックに割り当てられた番号であるブロック番号
であって、前記データ領域のブロックのブロック番号
を、前記ブロック単位で記憶するブロック番号領域と、 前記ブロック番号領域を構成する前記ブロックのブロッ
ク番号を複数記憶する第1と第2の領域とを有する場合
において、 前記第1または第2の領域のうちの一方の領域が記憶し
ている前記ブロック番号に対応する前記ブロック番号領
域のブロックに記憶されている前記ブロック番号に対応
する前記データ領域の1以上のブロックに書き込むべき
データを、前記データ領域を構成するブロックのうちの
データの更新用のための1以上の更新ブロックに書き込
むデータ書き込み手段と、 データを書き込んだ前記データ領域の更新ブロックであ
ったブロックのブロック番号を、前記ブロック番号領域
を構成するブロックのうちのブロック番号の更新用のた
めの更新ブロックに書き込む第1のブロック番号書き込
み手段と、 ブロック番号を書き込んだ前記ブロック番号領域の更新
ブロックであったブロックのブロック番号を、前記第1
または第2の領域のうちの他方に記憶させる第2のブロ
ック番号書き込み手段とを備えることを特徴とする情報
処理装置。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06254297A JP3702923B2 (ja) | 1997-02-28 | 1997-02-28 | 情報処理方法および情報処理装置 |
SG1998000382A SG71759A1 (en) | 1997-02-28 | 1998-02-20 | Apparatus and method for data processing |
US09/027,577 US6363455B2 (en) | 1997-02-28 | 1998-02-23 | Apparatus and method for data processing employing data blocks and updating blocks |
TW087102656A TW362197B (en) | 1997-02-28 | 1998-02-24 | Method and apparatus for data processing |
MYPI98000800A MY138670A (en) | 1997-02-28 | 1998-02-25 | Apparatus and method for data processing |
EP10172942.4A EP2293219A3 (en) | 1997-02-28 | 1998-02-25 | Apparatus and method for data processing |
EP98103316.0A EP0862129B1 (en) | 1997-02-28 | 1998-02-25 | Apparatus and method for data processing |
KR10-1998-0006308A KR100498520B1 (ko) | 1997-02-28 | 1998-02-27 | 정보처리방법및정보처리장치 |
CN2010101445273A CN101930551A (zh) | 1997-02-28 | 1998-02-28 | 数据处理装置和方法 |
CN201010144553.6A CN101807262B (zh) | 1997-02-28 | 1998-02-28 | 数据处理装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06254297A JP3702923B2 (ja) | 1997-02-28 | 1997-02-28 | 情報処理方法および情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10240631A true JPH10240631A (ja) | 1998-09-11 |
JP3702923B2 JP3702923B2 (ja) | 2005-10-05 |
Family
ID=13203232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06254297A Expired - Lifetime JP3702923B2 (ja) | 1997-02-28 | 1997-02-28 | 情報処理方法および情報処理装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6363455B2 (ja) |
EP (2) | EP2293219A3 (ja) |
JP (1) | JP3702923B2 (ja) |
KR (1) | KR100498520B1 (ja) |
CN (2) | CN101930551A (ja) |
MY (1) | MY138670A (ja) |
SG (1) | SG71759A1 (ja) |
TW (1) | TW362197B (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003216902A (ja) * | 2002-01-25 | 2003-07-31 | Sony Corp | 近接通信システム及び近接通信方法、データ管理装置及びデータ管理方法、記憶媒体、並びにコンピュータ・プログラム |
JP2005235028A (ja) * | 2004-02-23 | 2005-09-02 | Sony Corp | 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
US7017825B2 (en) | 2001-12-11 | 2006-03-28 | Matsushita Electric Industrial Co., Ltd. | IC card and data processing method therefor |
JP2007519996A (ja) * | 2003-12-30 | 2007-07-19 | サンディスク コーポレイション | 不揮発性メモリおよびフェーズ化されたプログラム障害処理を伴う方法 |
EP2111012A2 (en) | 2008-04-16 | 2009-10-21 | Sony Corporation | Reader/writer, communication processing device, communication processing method, data management system and communication system |
JP2011034125A (ja) * | 2009-07-29 | 2011-02-17 | Sony Corp | 情報処理方法、情報処理装置、およびプログラム |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3721725B2 (ja) | 1997-07-09 | 2005-11-30 | ソニー株式会社 | 情報処理方法および情報処理装置 |
JP2005518033A (ja) * | 2002-02-18 | 2005-06-16 | アクサルト ソシエテ アノニム | スマートカードのデータ編成 |
JP2005338926A (ja) * | 2004-05-24 | 2005-12-08 | Toshiba Corp | 携帯可能電子装置 |
US7986480B2 (en) * | 2005-11-03 | 2011-07-26 | Hitachi Global Storage Technologies Netherlands B.V. | Micro-journaling of data on a storage device |
US7725666B2 (en) * | 2005-11-03 | 2010-05-25 | Hitachi Global Storage Technologies Netherlands B.V. | Micro-journaling of data on a storage device |
US8060703B1 (en) * | 2007-03-30 | 2011-11-15 | Symantec Corporation | Techniques for allocating/reducing storage required for one or more virtual machines |
JP2009258860A (ja) * | 2008-04-14 | 2009-11-05 | Sony Corp | 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム |
EP2270758B1 (en) * | 2009-06-30 | 2013-11-27 | Kabushiki Kaisha Toshiba | Portable electronic apparatus, processing apparatus for portable electronic apparatus, and data processing method in portable electronic apparatus |
JP5464066B2 (ja) | 2010-06-10 | 2014-04-09 | ソニー株式会社 | 通信装置、及び、通信方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR565389A (fr) | 1922-06-02 | 1924-01-25 | Procédé pour l'utilisation de la vapeur et particulièrement de la vapeur d'échappement au réchauffage de l'eau | |
KR910002448B1 (ko) | 1987-03-20 | 1991-04-22 | 가부시키가이샤 도시바 | 휴대가능 전자장치 |
JPH02293950A (ja) * | 1989-05-08 | 1990-12-05 | Mitsubishi Electric Corp | メモリバックアップ方式 |
JPH03189786A (ja) | 1989-12-19 | 1991-08-19 | Sony Corp | 情報カード装置 |
JPH0731582B2 (ja) * | 1990-06-21 | 1995-04-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | パリティ保護データを回復するための方法および装置 |
JPH04139544A (ja) | 1990-10-01 | 1992-05-13 | Fujitsu Ltd | データ復元方法 |
US5418353A (en) | 1991-07-23 | 1995-05-23 | Hitachi Maxell, Ltd. | Non-contact, electromagnetically coupled transmission and receiving system for IC cards |
DE69232627T2 (de) | 1991-11-12 | 2002-12-12 | Dainippon Printing Co Ltd | Verfahren zur kontaktfreien Kommunikation zwischen einem Halbleiter- Datenaufzeichnungsträger und einer Lese-/Schreibvorrichtung |
CA2072728A1 (en) | 1991-11-20 | 1993-05-21 | Michael Howard Hartung | Dual data buffering in separately powered memory modules |
JPH05233426A (ja) * | 1992-02-20 | 1993-09-10 | Fujitsu Ltd | フラッシュ・メモリ使用方法 |
FR2687816B1 (fr) * | 1992-02-24 | 1994-04-08 | Gemplus Card International | Procede de personnalisation d'une carte a puce. |
JP2775549B2 (ja) * | 1992-05-08 | 1998-07-16 | 三菱電機株式会社 | 連想メモリセルおよび連想メモリ回路 |
GB2276961B (en) * | 1993-03-30 | 1997-03-26 | Int Computers Ltd | Set-associative memory |
US5566314A (en) * | 1993-08-30 | 1996-10-15 | Lucent Technologies Inc. | Flash memory device employing unused cell arrays to update files |
EP0690386A1 (en) * | 1994-04-04 | 1996-01-03 | International Business Machines Corporation | Address translator and method of operation |
JPH0877050A (ja) * | 1994-09-02 | 1996-03-22 | Nippon Telegr & Teleph Corp <Ntt> | データベース再構成装置及びデータベース再構成方法 |
KR0119195B1 (ko) * | 1994-11-07 | 1997-10-04 | 구자홍 | 공중전화기의 카드 데이타 백업 방법 |
JPH08221333A (ja) * | 1995-02-10 | 1996-08-30 | Nec Home Electron Ltd | Icカード装置 |
FR2730833B1 (fr) | 1995-02-16 | 1997-03-28 | Gemplus Card Int | Procede de mise a jour securisee de memoire eeprom |
JPH08286979A (ja) * | 1995-04-10 | 1996-11-01 | Nec Corp | Sramカードのバックアップ方式 |
US5568423A (en) * | 1995-04-14 | 1996-10-22 | Unisys Corporation | Flash memory wear leveling system providing immediate direct access to microprocessor |
US5963970A (en) * | 1996-12-20 | 1999-10-05 | Intel Corporation | Method and apparatus for tracking erase cycles utilizing active and inactive wear bar blocks having first and second count fields |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
-
1997
- 1997-02-28 JP JP06254297A patent/JP3702923B2/ja not_active Expired - Lifetime
-
1998
- 1998-02-20 SG SG1998000382A patent/SG71759A1/en unknown
- 1998-02-23 US US09/027,577 patent/US6363455B2/en not_active Expired - Lifetime
- 1998-02-24 TW TW087102656A patent/TW362197B/zh not_active IP Right Cessation
- 1998-02-25 EP EP10172942.4A patent/EP2293219A3/en not_active Withdrawn
- 1998-02-25 MY MYPI98000800A patent/MY138670A/en unknown
- 1998-02-25 EP EP98103316.0A patent/EP0862129B1/en not_active Expired - Lifetime
- 1998-02-27 KR KR10-1998-0006308A patent/KR100498520B1/ko not_active IP Right Cessation
- 1998-02-28 CN CN2010101445273A patent/CN101930551A/zh active Pending
- 1998-02-28 CN CN201010144553.6A patent/CN101807262B/zh not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7017825B2 (en) | 2001-12-11 | 2006-03-28 | Matsushita Electric Industrial Co., Ltd. | IC card and data processing method therefor |
JP2003216902A (ja) * | 2002-01-25 | 2003-07-31 | Sony Corp | 近接通信システム及び近接通信方法、データ管理装置及びデータ管理方法、記憶媒体、並びにコンピュータ・プログラム |
JP2007519996A (ja) * | 2003-12-30 | 2007-07-19 | サンディスク コーポレイション | 不揮発性メモリおよびフェーズ化されたプログラム障害処理を伴う方法 |
JP2005235028A (ja) * | 2004-02-23 | 2005-09-02 | Sony Corp | 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
US8756384B2 (en) | 2004-02-23 | 2014-06-17 | Sony Corporation | Information processing device and information processing method for data recovery after failure |
EP2111012A2 (en) | 2008-04-16 | 2009-10-21 | Sony Corporation | Reader/writer, communication processing device, communication processing method, data management system and communication system |
US8698599B2 (en) | 2008-04-16 | 2014-04-15 | Sony Corporation | Reader/writer, communication processing device, communication processing method, data management system and communication system |
JP2011034125A (ja) * | 2009-07-29 | 2011-02-17 | Sony Corp | 情報処理方法、情報処理装置、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US6363455B2 (en) | 2002-03-26 |
EP0862129B1 (en) | 2017-07-26 |
KR19980071776A (ko) | 1998-10-26 |
US20020007433A1 (en) | 2002-01-17 |
KR100498520B1 (ko) | 2005-11-22 |
EP2293219A3 (en) | 2015-02-25 |
MY138670A (en) | 2009-07-31 |
EP0862129A3 (en) | 2001-05-30 |
JP3702923B2 (ja) | 2005-10-05 |
EP0862129A2 (en) | 1998-09-02 |
SG71759A1 (en) | 2000-04-18 |
CN101807262B (zh) | 2014-10-29 |
CN101807262A (zh) | 2010-08-18 |
CN101930551A (zh) | 2010-12-29 |
EP2293219A2 (en) | 2011-03-09 |
TW362197B (en) | 1999-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3721725B2 (ja) | 情報処理方法および情報処理装置 | |
JP3702923B2 (ja) | 情報処理方法および情報処理装置 | |
US7752406B2 (en) | Information processing method and information processing apparatus having data locations accessible by different devices in accordance with different permissions | |
US7613301B2 (en) | Data storage device and data storage method | |
EP2041703A1 (en) | Portable electronic device and control method thereof | |
JPH1139450A (ja) | Icカード | |
JP5633125B2 (ja) | 情報処理方法、情報処理装置、およびプログラム | |
JPH10105661A (ja) | 情報処理方法および情報処理装置、並びに伝送媒体 | |
JP3890602B2 (ja) | 情報処理装置および情報処理方法、並びに記録媒体 | |
JP3890603B2 (ja) | 情報処理装置および情報処理方法、リーダ/ライタおよびアクセス方法、並びに記録媒体 | |
JP3179375B2 (ja) | 非接触データ送受信方法およびその装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040803 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041004 |
|
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: 20050629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050712 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080729 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110729 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130729 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |