JP4229140B2 - 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機 - Google Patents

集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機 Download PDF

Info

Publication number
JP4229140B2
JP4229140B2 JP2006167300A JP2006167300A JP4229140B2 JP 4229140 B2 JP4229140 B2 JP 4229140B2 JP 2006167300 A JP2006167300 A JP 2006167300A JP 2006167300 A JP2006167300 A JP 2006167300A JP 4229140 B2 JP4229140 B2 JP 4229140B2
Authority
JP
Japan
Prior art keywords
data
route table
integrated circuit
circuit chip
memory
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
JP2006167300A
Other languages
English (en)
Other versions
JP2007334728A (ja
Inventor
勝幸 照山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2006167300A priority Critical patent/JP4229140B2/ja
Priority to US11/806,885 priority patent/US20070294469A1/en
Priority to EP07252283A priority patent/EP1868097B1/en
Priority to DE602007006104T priority patent/DE602007006104D1/de
Priority to KR1020070056551A priority patent/KR20070120029A/ko
Priority to CN2007101101902A priority patent/CN101089878B/zh
Publication of JP2007334728A publication Critical patent/JP2007334728A/ja
Application granted granted Critical
Publication of JP4229140B2 publication Critical patent/JP4229140B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record 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
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/22Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は集積回路チップ、データ読み出し方法、およびデータ書き込み方法にかかり、特に、データ更新中の電源断発生時に対応するためデータを二重化して保持する集積回路チップ、データ読み出し方法、およびデータ書き込み方法に関する。
近年、ICカードを用いた様々なサービス事業が展開されている。ICカードではデータの保持にNVM(不揮発性メモリ)が利用されており、データ書き込み中の電源断発生時に対応するためデータを二重化して保持している。特開平11−25003号公報「情報処理方法および情報処理装置」には、データ書き込み中の電源断でもデータの一貫性を維持できるメモリ管理方法が開示されている。
特開平11−25003号公報
ところで、上記背景技術で想定されているEEPROMなどのページ単位の消去・書き換えを行うタイプのNVMの場合、データを更新する際は、いったん更新対象のデータをRAMへ転送し、それを更新してからNVMへ書き戻すという処理が必要である。このように、従来の方法では、データ書き込み中の電源断に対応するためのメモリ管理に複雑な処理を必要としていた。
本発明は、上記背景技術が有する問題点に鑑みてなされたものであり、本発明の目的は、データ書き込み中の電源断でもデータの一貫性を維持できるメモリ管理を行うにあたり、処理を単純化することの可能な、新規かつ改良された集積回路チップ、データ読み出し方法、およびデータ書き込み方法を提供することである。
上記課題を解決するため、本発明の第1の観点によれば、集積回路チップが提供される。本発明の集積回路チップは、データの書き換え(読み出しおよび書き込み)が可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであることを特徴とする。
上記背景技術において、ICカード内のデータを更新する場合、EEPROMなどのNVMではページ単位の消去・書き換えが必要となるため、まとまった単位でNVMの上のデータをいったんRAM(揮発性メモリ)へコピーしてからRAM上でデータを更新した後で、NVMのページを消去し、書き戻すといった処理が必要となる。これに対して本発明によれば、消去が不要で、バイト単位での直接書き換えが可能なNVMを利用するので、RAMへのコピーが不要となり、データ更新時は二重化されたデータの無効面を更新し、最後に有効面と無効面を切り替えるといった単純な処理に置き換えることが可能である。
本発明の集積回路チップにおいて、前記メモリとしては、例えばFeRAMを利用することができる。FeRAMは強誘電体を利用した不揮発メモリの一種である。強誘電体とは、電圧を加えることによって物質内の自発分極(物質内に電気的な正負が生じる状態)の方向を自由に変化させ、電圧をかけなくてもその分極方向を持続させることのできる誘電体(分極により電荷を蓄え、直流電流を通さない物質)のことであり、これを記憶素子とする不揮発メモリがFeRAMである。FeRAMは構造などがDRAMに似ていて、フラッシュメモリの10倍以上に及ぶ高速な読み書きが可能である。また、信頼性の面においてもフラッシュメモリ、EEPROMに比べて格段に高い。
また、前記不揮発性メモリは、例えば、論理ブロックと物理ブロックとの対応情報とブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、を含むデータ構造を採用することが可能である。書き換えを実行する単位が1バイトであるため、ページ(セグメント)ごとに書き込む必要がない。その結果、データ構造からセグメントテーブルを削除することが可能となる。
また、本発明の集積回路チップは、ICカードやデータ処理装置(携帯電話機やPDA等)に搭載されるものであってもよい。現在広く流通しており今後も普及が見込まれるICカードや携帯電話等を用いて、様々なサービス事業を展開することが可能である。
本発明の第2の観点によれば、ページ単位でのデータ消去が不要でバイト単位での書き換えが可能な不揮発性メモリと、揮発性メモリとを備えた集積回路チップからデータを読み出すデータ読み出し方法が提供される。本発明のデータ読み出し方法は、前記集積回路チップを起動する起動工程と、読み出し指定されたデータの位置を、前記不揮発性メモリ上のルートテーブルの有効面から取得し、その取得したデータを前記揮発性メモリ上のバッファへコピーする工程と、前記揮発性メモリからデータを読み出す工程と、を含むことを特徴とする。なお、前記不揮発性メモリは、論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
を含むものである。
前記起動工程は、例えば、前記テーブルスイッチにより前記ルートテーブルの有効面をチェックする工程と、前記ルートテーブルの有効面から無効面へ、前記論理ブロックに対応する前記物理ブロックの情報をコピーする工程と、を含むことが可能である。
本発明の第3の観点によれば、ページ単位でのデータ消去が不要でバイト単位での書き換えが可能な不揮発性メモリを備えた集積回路チップに対してデータを書き込むデータ書き込み方法が提供される。本発明のデータ書き込み方法は、前記集積回路チップを起動する起動工程と、書き込み指定されたデータの位置を、前記不揮発性メモリ上のルートテーブルの無効面から取得し、新しいデータを格納した位置を示すように前記ルートテーブルの無効面を更新する工程と、前記テーブルスイッチを反転し、前記ルートテーブルの有効面と無効面とを切り替える工程と、を含むことを特徴とする。なお、前記不揮発性メモリは、論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、を含むものである。
前記起動工程は、例えば、前記テーブルスイッチにより前記ルートテーブルの有効面をチェックする工程と、前記ルートテーブルの有効面から無効面へ、前記論理ブロックに対応する前記物理ブロックの情報をコピーする工程と、を含むことが可能である。
本発明の第4の観点によれば、集積回路チップを搭載し、電磁誘導によってデータ通信を行うICカードであって、前記集積回路チップは、データの書き換えが可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであり、前記不揮発性メモリのデータ構造は、論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、を含むICカードが提供される。
本発明の第5の観点によれば、集積回路チップを搭載し、電磁誘導によってデータ通信を行う携帯電話機であって、前記集積回路チップは、データの書き換えが可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであり、前記不揮発性メモリのデータ構造は、論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、を含む携帯電話機が提供される。
以上のように、本発明によれば、データ書き込み中に電源断が起こってもデータの一貫性を維持できるメモリ管理を行うにあたり、処理を単純化することが可能である。
以下に添付図面を参照しながら、本発明にかかる集積回路チップ、データ読み出し方法、およびデータ書き込み方法の好適な実施形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
以下では、まずICカードを用いたシステムの構成とICカードの構造について説明し、さらに、ICカードのブロークントランザクション処理の流れについて説明する。さらに、ICカードのNVM(不揮発性メモリ)の種類について、まず、EEPROMにおけるテーブルのデータ構造、起動処理、データ読み出し処理、およびデータ書き込み処理について説明する。さらに、本実施形態に特徴的な構成として、ICカードのNVM(不揮発性メモリ)がFeRAMの場合におけるテーブルのデータ構造、起動処理、データ読み出し処理、およびデータ書き込み処理について説明する。
(1)システム構成(図1)
図1は、ICカードを用いたシステムの構成を示す説明図である。
図1に示したシステムの一例では、集積回路チップ(ICチップ)を備えたICカード100と、ICカード100との間で直接通信を行いICカード100に記録されたデータの読み出しおよび書き込みを行うリーダライタ200と、を含んで構成される。
ICカード100は、データを保持するための集積回路チップ110を搭載している。集積回路チップ110は、図1に示したように、電源を切っても記憶内容を保持することができるNVM(nonvolatile memory:不揮発性メモリ)112と、電源を切ると記憶内容が失われるRAM(揮発性メモリの一例)114とを含む。NVM112は、このICカード100で利用可能な様々なサービスのデータを保持する。RAM114は、例えばデータの読み出し/書き込み時に一時的にデータを保持するために用いられる。
ICカード100は、カード型のデータ通信装置であってもよく、また、ICカード機能を有する集積回路チップを携帯電話機等の情報通信端末機器(データ処理装置)に内蔵したものであってもよい。ICカードが機器に内蔵される場合であっても、機器に着脱可能に構成される場合であっても、本明細書では便宜上「ICカード」と称する場合がある。また、ICカード機能を有する集積回路チップは、例えば携帯電話機やPDAなどの携帯端末、あるいはパーソナルコンピュータ(PC)などの情報処理端末に搭載されて外部機器とデータ通信を行う。この場合、リーダライタ200と有線あるいは無線で接続するためのインタフェース以外に、外部機器接続用のインタフェースを備えている。
リーダライタ200は、ICカード100と直接通信を行い、ICカード100に記録されたデータの読み出しおよび書き込みを行う機能を有する。ICカード100とリーダライタ200との間のデータ通信は、例えば電磁誘導の原理に基づく無線通信により実現される。リーダライタ200はコンピュータ等の情報処理装置と一体に構成されたり、また、ケーブル等を介して通信したりする。かかる情報処理装置はサービス事業者が管理しており、ICカードを用いた様々なサービス事業が展開されている。
(2)ブロークントランザクション処理の流れ(図2)
以下の説明では、図1に示した集積回路チップ110内のNVM112とRAM114におけるブロークントランザクション処理を中心に説明する。ブロークントランザクションとは、ICカードにおけるデータ書き込み中の電源断のことである。図2に、ファイルシステムを単純なデータ構造とした場合の一般的な処理の流れを示す。
まず、ブロークントランザクション対応のためNVM上のデータを二重化する。図2において、参照符号A、Bは、NVM上の1ページのデータを示す。それぞれのデータにはカウンタC1、C2が含まれており、データA、Bのどちらが有効面であるかを示している。起動時では、カウンタC1が“1”であり、カウンタC2が“−”であり、データAが有効面、データBが無効面であるものとする。
起動時にNVM上の有効面AのデータがRAMへコピーされる(ステップS102)。更新時にRAM上のデータが更新され、カウンタが加算される(ステップS104)。コミット時にRAM上のデータをNVMの無効面Bへコピーする。コピーする際、NVMがEEPROMである場合には、書き換え前に消去が必要であるため消去してからコピーを行う(ステップS106)。その後、有効面Aを消去する(ステップS108)。この状態で、カウンタC1が“−”であり、カウンタC2が“2”であり、データAが無効面、データBが有効面となる。
(3)データ構造(図3)
図3は、実際のファイルシステムにおけるEEPROM上の管理テーブルのデータ構造を示す説明図である。
EEPROMの管理テーブルは、図3に示したように、ルートテーブルとセグメントテーブルで構成される。セグメントテーブルに論理ブロック(Li)と物理ブロック(Pi)の対応表を持たせ、1つのセグメントテーブルをEEPROMの1ページに割り当て、それぞれを二重化する。二重化したセグメントテーブルの有効/無効を示す情報をルートテーブルで保持し、ルートテーブルもまた二重化する。ルートテーブルには、セグメントテーブルの有効面(Si)に関する情報と、上記の「(1)ブロークントランザクション処理の流れ」と同様に、ブロークントランザクション処理用のカウンタCを保持する。
論理ブロックと物理ブロックの対応表がEEPROMの書き換え単位である1ページに収まれば、ブロークントランザクション対応の要件を満たすことができるが、1ページ64バイトだとするとユーザブロックを64ブロックしか管理できないことになるため、複数のセグメントテーブルに分割し、セグメントテーブルをルートテーブルで管理する仕組みをとっている。
また、ルートテーブルとセグメントテーブルにはそれぞれCRC(Cyclic Redundancy Check:巡回冗長検査)が付与されており、EEPROMからの読み出し時やEEPROMへの書き込み時にCRCがチェックされる。
(4)起動処理(図4)
図4は、起動処理を示す説明図である。
起動処理では、まず、EEPROM上の管理テーブルの有効面をRAMへコピーする。ルートテーブルのCRCチェックでエラーが発生した場合、ブロークントランザクション対応処理では、両方のルートテーブルのCRCとカウンタを確認してルートテーブル有効面を決定する。
図4に示したように、まず、EEPROM上の両方のルートテーブルの内容を見て、消去されていない面を有効面であると判断する(ステップS202)。そして、ルートテーブル有効面をEEPROMからRAMへコピーする(ステップS204)。そして、RAM上のルートテーブルにあるセグメントビットマップ(S0、S1、・・・、Sn)からセグメントテーブルの有効面を取得する(ステップS206)。そして、セグメントテーブル有効面をEEPROMからRAMへコピーする(ステップS208)。ステップS202、S204をセグメントテーブルの個数分繰り返す。
(5)データ読み出し処理(図5)
図5は、データ読み出し処理を示す説明図である。
データ読み出し処理では、指定されたデータの位置をRAM上の管理テーブルから取得し、そのデータを物理ブロック(EEPROM)からバッファ(RAM)へコピーする。
図5に示したように、まず、RAM上のセグメントテーブルの情報を元に、指定された論理ブロック番号から物理ブロック番号へ変換する(ステップS302)。そして、物理ブロック番号に対応するEEPROM上の物理ブロックからデータをRAM上のバッファへコピーする(ステップS304)。
(6)データ書き込み処理(図6)
図6は、データ書き込み処理を示す説明図である。
データ書き込み処理では、指定されたデータの位置をRAM上の管理テーブルから取得し、新しいデータを格納した位置を示すようにRAM上の管理テーブルを更新し、その情報をEEPROMへコピーする。EEPROMではコピーの前に消去を実行する。
まず、EEPROM上の書き込み用バッファ(図中Pn−1)を確保し、そのバッファに指定されたデータを書き込む(ステップS402)。そして、RAM上のセグメントテーブルにおいて、書き込み用バッファの位置を示す要素(L7)と書き込まれるデータの位置を示す要素(L1)をスワップする(ステップS404)。そして、スワップを行ったセグメントテーブルに対応する、RAM上のルートテーブルのセグメントビットマップを反転する(ステップS406)。これにより、有効面と無効面を切り替える。
さらに、RAM上のルートテーブルのカウンタをインクリメントする(ステップS408)。そして、セグメントテーブルをRAMからEEPROMの無効面へコピーする(ステップS410)。そして、ルートテーブルをRAMからEEPROMの無効面へコピーする(ステップS412)。最後に、ルートテーブル有効面を消去する。
ここでは、2つのセグメントテーブル要素を更新する処理を説明したが、複数のデータを書き込む場合は、書き込み用バッファへの書き込みとセグメントテーブルを更新する処理(ステップS402〜S406)を繰り返し実行する。最終的なEEPROMへの書き込みをルートテーブルの書き換えと消去で行うことにより、複数のデータを一度に更新できる仕組みになっている。また、書き込み処理の最後のステップでEEPROMへの書き込みを行うため、EEPROMを逐次更新する方式と比較して書き込み回数が抑えられている。
<FeRAMを利用した場合のファイルシステム>
以下では、本実施形態に特徴的なFeRAMを利用した場合のファイルシステムについて説明する。FeRAMは強誘電体を利用した不揮発メモリの一種である。強誘電体とは、電圧を加えることによって物質内の自発分極(物質内に電気的な正負が生じる状態)の方向を自由に変化させ、電圧をかけなくてもその分極方向を持続させることのできる誘電体(分極により電荷を蓄え、直流電流を通さない物質)のことであり、これを記憶素子とする不揮発メモリがFeRAMである。FeRAMは構造などがDRAMに似ていて、フラッシュメモリの10倍以上に及ぶ高速な読み書きが可能である。また、信頼性の面においてもフラッシュメモリ、EEPROMに比べて格段に高い。
ストレージメモリとしてFeRAMを利用した場合、EEPROMと同様にそのメモリデバイスの制約を考慮したファイルシステムを設計する必要がある。すなわち、EEPROMの場合、データの書き換えにはページ単位の消去と書き込みが必要であるが、FeRAMの場合、バイト単位で消去不要の書き換えが可能である。また、FeRAMはEEPROMに比べ、データの書き換え回数が多く、書き換え処理時間が少ないことも特長である。このようなバイト単位で書き換え可能な不揮発性メモリを利用したファイルシステムを設計する場合、次のことが考えられる。
(a)1バイト単位での書き込みが可能で、書き込み時間が少ないことから、今まで書き込み処理の最後にまとめて行っていたNVM上のデータ更新を、書き込み処理の中で分散して行うことが可能となり、書き込み処理の時間を短縮できる可能性がある。
(b)1バイト単位での書き込みが可能であることから、ページ(セグメント)単位でデータを管理する必要がない。データ構造が簡略化され、処理時間を短縮できる可能性がある。
(c)1バイト単位での書き込みが可能で、書き換え回数が108回以上であることから、RAMへ転送せずにFeRAM上のデータを直接更新できる可能性がある。その結果、RAMの使用量を節約できる可能性がある。
(7)データ構造(図7)
図7に、FeRAMを用いた直接更新型ファイルシステムのデータ構造を示す。
FeRAMの管理テーブルは、図7に示したように、ルートテーブルのみで構成される。ルートテーブルの中に論理ブロック(Li)と物理ブロック(Pi)の対応表と、ブロークントランザクション用のカウンタCを保持し、二重化する。また、ルートテーブルの有効/無効を示すためのテーブルスイッチ(R)が存在する。
FeRAMの場合は、書き換えを実行する単位が1バイトであるため、ページ(セグメント)ごとに書き込む必要がない。その結果、データ構造からセグメントテーブルを削除することが可能となる。セグメントテーブルを使用しないことで、セグメントテーブル内で更新されない部分を再度同じデータで書き込むことがなくなり、メモリの書き換え回数が少なくなる。また、複数のセグメントテーブルを管理する必要がなくなり、関連する処理を削減できる。
(8)起動処理(図8)
図8は、起動処理を示す説明図である。
起動処理では、FeRAM上の管理テーブルの有効面を、FeRAM上の無効面へコピーする。データ読み出し処理では有効面にだけアクセスするため、この処理はデータ書き込み処理直前に行うことも可能である。
図8に示したように、まず、FeRAM上のテーブルスイッチからルートテーブル有効面をチェックする(ステップS502)。そして、ルートテーブルを有効面(FeRAM)から無効面(FeRAM)へコピーする(ステップS504)。
(9)データ読み出し処理(図9)
データ読み出し処理では、指定されたデータの位置を、FeRAM上のルートテーブル有効面から取得し、そのデータを物理ブロック(FeRAM)からバッファ(RAM)へコピーする。
図9に示したように、まず、ルートテーブル有効面の情報を元に、指定された論理ブロック番号から物理ブロック番号へ変換する(ステップS602)。そして、物理ブロック番号に対応するFeRAM上の物理ブロックから、データをRAM上のバッファへコピーする(ステップS604)。
(10)データ書き込み処理(図10)
データ書き込み処理では、指定されたデータの位置を、FeRAM上のルートテーブル無効面から取得し、新しいデータを格納した位置を示すようにFeRAM上のルートテーブル無効面を更新する。最後に、FeRAM上のテーブルスイッチを更新する。
図10に示したように、まず、FeRAM上の書き込み用バッファ(図中Pn−1)を確保し、そのバッファに指定されたデータを書き込む(ステップS702)。そして、FeRAM上のルートテーブル無効面において、書き込み用バッファの位置を示す要素(L7)と書き込まれるデータの位置を示す要素(L)をスワップする(ステップS704)。そして、FeRAM上のルートテーブル無効面のカウンタをインクリメントする(ステップS706)。最後に、テーブルスイッチを反転する(ステップS708)。これにより、有効面と無効面を切り替える。
最終的なFeRAMへの書き込みをテーブルスイッチで行うことにより、複数のデータを一度に更新できる仕組みになっている。複数のデータを更新する場合、書き込み用バッファとルートテーブル無効面における処理(ステップS702〜S706)を繰り返し実行する。
(本実施形態の効果)
以上説明したように、本実施形態によれば、バイト単位での直接書き換えが可能なため、ページ単位での管理が不要となり、データ構造がシンプルになる。また、FeRAM上のデータを直接書き換えができるため、更新の際にRAMではなく、二重化されたFeRAMの無効面へコピーするため、RAMの使用量を削減できる。さらに、データ構造がシンプルになり、データ更新の際のRAMからFeRAMへのコピーが不要となるため、データ書き込み処理時間を短縮できる。
以上、添付図面を参照しながら本発明にかかる集積回路チップ、データ読み出し方法、およびデータ書き込み方法の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
例えば、上記実施形態では、ページ単位でのデータ消去が不要でバイト単位での書き換えが可能な不揮発性メモリの一例として、FeRAMを利用した場合について説明したが、本発明はこれに限定されない。ページ単位でのデータ消去が不要でバイト単位で書き換え可能なあらゆる不揮発性メモリ(将来開発されるものを含む。)を用いることが可能である。
(産業上の利用可能性)
本発明は集積回路チップ、データ読み出し方法、およびデータ書き込み方法にかかり、特に、データ更新中の電源断発生時に対応するためデータを二重化して保持する集積回路チップ、データ読み出し方法、およびデータ書き込み方法に関する。
ICカードを用いたシステムを示す説明図である。 ブロークントランザクション処理の流れを示す説明図である。 データ構造を示す説明図である。 起動処理を示す説明図である。 データ読み出し処理を示す説明図である。 データ書き込み処理を示す説明図である。 直接更新型ファイルシステムのデータ構造を示す説明図である。 起動処理を示す説明図である。 データ読み出し処理を示す説明図である。 データ書き込み処理を示す説明図である。
符号の説明
100 ICカード
110 集積回路チップ(ICチップ)
112 NVM
114 RAM
200 リーダライタ

Claims (7)

  1. データの書き換えが可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、
    前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであり、
    前記不揮発性メモリのデータ構造は、
    論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、
    前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
    を含むことを特徴とする、集積回路チップ。
  2. ページ単位でのデータ消去が不要でバイト単位での書き換えが可能な不揮発性メモリと、揮発性メモリとを備えた集積回路チップからデータを読み出すデータ読み出し方法であって、
    前記不揮発性メモリは、
    論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、
    前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
    を含むものであり、
    前記集積回路チップを起動する起動工程と、
    読み出し指定されたデータの位置を、前記不揮発性メモリ上のルートテーブルの有効面から取得し、その取得したデータを前記揮発性メモリ上のバッファへコピーする工程と、
    前記揮発性メモリからデータを読み出す工程と、
    を含むことを特徴とする、データ読み出し方法。
  3. 前記起動工程は、
    前記テーブルスイッチにより前記ルートテーブルの有効面をチェックする工程と、
    前記ルートテーブルの有効面から無効面へ、前記論理ブロックに対応する前記物理ブロックの情報をコピーする工程と、
    を含むことを特徴とする、請求項2に記載のデータ読み出し方法。
  4. ページ単位でのデータ消去が不要でバイト単位での書き換えが可能な不揮発性メモリを備えた集積回路チップに対してデータを書き込むデータ書き込み方法であって、
    前記不揮発性メモリは、
    論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、
    前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
    を含むものであり、
    前記集積回路チップを起動する起動工程と、
    書き込み指定されたデータの位置を、前記不揮発性メモリ上のルートテーブルの無効面から取得し、新しいデータを格納した位置を示すように前記ルートテーブルの無効面を更新する工程と、
    前記テーブルスイッチを反転し、前記ルートテーブルの有効面と無効面とを切り替える工程と、
    を含むことを特徴とする、データ書き込み方法。
  5. 前記起動工程は、
    前記テーブルスイッチにより前記ルートテーブルの有効面をチェックする工程と、
    前記ルートテーブルの有効面から無効面へ、前記論理ブロックに対応する前記物理ブロックの情報をコピーする工程と、
    を含むことを特徴とする、請求項4に記載のデータ書き込み方法。
  6. 集積回路チップを搭載し、電磁誘導によってデータ通信を行うICカードであって、
    前記集積回路チップは、
    データの書き換えが可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、
    前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであり、
    前記不揮発性メモリのデータ構造は、
    論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、
    前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
    を含むことを特徴とする、ICカード。
  7. 集積回路チップを搭載し、電磁誘導によってデータ通信を行う携帯電話機であって、
    前記集積回路チップは、
    データの書き換えが可能でありデータを二重化して記憶するメモリを備えた集積回路チップであって、
    前記メモリは、ページ単位でのデータ消去が不要で、バイト単位でのデータ書き換えが可能な不揮発性メモリであり、
    前記不揮発性メモリのデータ構造は、
    論理ブロックと物理ブロックとの対応情報と、ブロークントランザクション用のカウンタとをそれぞれ二重化して保持するルートテーブルと、
    前記ルートテーブルの有効面/無効面を示すためのテーブルスイッチと、
    を含むことを特徴とする、携帯電話機。
JP2006167300A 2006-06-16 2006-06-16 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機 Expired - Fee Related JP4229140B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006167300A JP4229140B2 (ja) 2006-06-16 2006-06-16 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機
US11/806,885 US20070294469A1 (en) 2006-06-16 2007-06-05 Integrated circuit chip, data reading method, and data writing method
EP07252283A EP1868097B1 (en) 2006-06-16 2007-06-06 Integrated circuit chip, data reading method and data writing method
DE602007006104T DE602007006104D1 (de) 2006-06-16 2007-06-06 Chip für eine integrierte Schaltung, Datenleseverfahren und Datenschreibverfahren
KR1020070056551A KR20070120029A (ko) 2006-06-16 2007-06-11 집적회로 칩, 데이터 판독 방법, 및 데이터 기록 방법
CN2007101101902A CN101089878B (zh) 2006-06-16 2007-06-18 数据读取方法和数据写入方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006167300A JP4229140B2 (ja) 2006-06-16 2006-06-16 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機

Publications (2)

Publication Number Publication Date
JP2007334728A JP2007334728A (ja) 2007-12-27
JP4229140B2 true JP4229140B2 (ja) 2009-02-25

Family

ID=38441634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006167300A Expired - Fee Related JP4229140B2 (ja) 2006-06-16 2006-06-16 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機

Country Status (6)

Country Link
US (1) US20070294469A1 (ja)
EP (1) EP1868097B1 (ja)
JP (1) JP4229140B2 (ja)
KR (1) KR20070120029A (ja)
CN (1) CN101089878B (ja)
DE (1) DE602007006104D1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012203443A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリシステムおよびメモリシステムの制御方法
US9390773B2 (en) 2011-06-28 2016-07-12 Hewlett Packard Enterprise Development Lp Shiftable memory
US9606746B2 (en) 2011-10-27 2017-03-28 Hewlett Packard Enterprise Development Lp Shiftable memory supporting in-memory data structures
US9576619B2 (en) 2011-10-27 2017-02-21 Hewlett Packard Enterprise Development Lp Shiftable memory supporting atomic operation
KR101660611B1 (ko) 2012-01-30 2016-09-27 휴렛 팩커드 엔터프라이즈 디벨롭먼트 엘피 워드 시프트 정적 랜덤 액세스 메모리(ws-sram)
US9542307B2 (en) 2012-03-02 2017-01-10 Hewlett Packard Enterprise Development Lp Shiftable memory defragmentation
CN107678977B (zh) * 2017-09-30 2021-01-05 北京智芯微电子科技有限公司 一种计数器的读写方法及装置
CN108226590B (zh) * 2017-12-27 2021-06-01 深圳市科陆电子科技股份有限公司 一种结算电能表掉电数据的方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5113512A (en) * 1988-06-21 1992-05-12 Matsushita Electric Industrial Co., Ltd. System for managing a storage medium reducing physical space needed
JP3721725B2 (ja) * 1997-07-09 2005-11-30 ソニー株式会社 情報処理方法および情報処理装置
JPH11203191A (ja) * 1997-11-13 1999-07-30 Seiko Epson Corp 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体
BR0007239B1 (pt) * 1999-10-21 2014-03-18 Panasonic Corp Aparelho de acesso á placa de memória semicondutora, placa de memória semicondutora e método de inicialização.
US6961838B2 (en) * 2000-06-02 2005-11-01 Hewlett-Packard Development Company, L.P. Generating updated virtual disks using distributed mapping tables accessible by mapping agents and managed by a centralized controller
JP2003067244A (ja) * 2001-08-24 2003-03-07 Matsushita Electric Ind Co Ltd 不揮発性記憶装置及びその制御方法
JP4058322B2 (ja) * 2002-10-07 2008-03-05 株式会社ルネサステクノロジ メモリカード
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
TW594477B (en) * 2003-05-02 2004-06-21 Genesys Logic Inc Method and related device for accessing non-volatile memory of dual platforms for PC and X-BOX
NO324607B1 (no) * 2003-11-24 2007-11-26 Thin Film Electronics Asa Fremgangsmate for a betjene et datalagringsapparat som benytter passiv matriseadressering
US20050251617A1 (en) * 2004-05-07 2005-11-10 Sinclair Alan W Hybrid non-volatile memory system
US7802015B2 (en) * 2004-01-26 2010-09-21 Tantalus Systems Corp. Communications system of heterogeneous elements

Also Published As

Publication number Publication date
EP1868097B1 (en) 2010-04-28
CN101089878A (zh) 2007-12-19
US20070294469A1 (en) 2007-12-20
CN101089878B (zh) 2010-06-23
EP1868097A1 (en) 2007-12-19
JP2007334728A (ja) 2007-12-27
DE602007006104D1 (de) 2010-06-10
KR20070120029A (ko) 2007-12-21

Similar Documents

Publication Publication Date Title
JP4229140B2 (ja) 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機
KR101002978B1 (ko) 플래시 메모리 관리 시스템 및 방법
RU2243588C2 (ru) Энергонезависимое устройство памяти, устройство записи и способ записи
CN101655775B (zh) 卡和主机设备
US8463983B2 (en) Container marker scheme for reducing write amplification in solid state devices
KR100870392B1 (ko) 시스템 및 데이터 저장 방법
TWI606388B (zh) 資料儲存裝置及其資料維護方法
CN109685190B (zh) 一种ic卡掉电保护方法及装置
CN114077559A (zh) 存储装置的存取管理的方法及设备
US7117326B2 (en) Tracking modifications to a memory
JP2005322209A (ja) シリコン記憶媒体制御方法およびシリコン記憶媒体
KR100456736B1 (ko) 플래시 메모리를 구비한 디지털 기기의 부팅 시간 단축 방법
JP2013161222A (ja) Icカード、及びプログラム
JP2005222202A (ja) 不揮発性記憶装置のデータ保護方法
US20050251632A1 (en) Silicon storage media, controller and access method thereof
JP2019049876A (ja) 電子情報記憶媒体、icカード、電子情報記憶媒体によるテーブル管理方法及びテーブル管理プログラム
US9196369B2 (en) Communication device and communication method
JP7322923B2 (ja) セキュアエレメント,トランザクション制御方法およびデバイス
US7346730B2 (en) Mobile electronic device
JP2022187935A (ja) セキュアエレメント,電子情報記憶媒体およびデータの更新方法
CN111198651B (zh) 进行存储空间管理的方法以及数据存储装置及其控制器
JP5050508B2 (ja) 記憶装置、記憶装置のプログラム及び記憶処理方法
JP6015461B2 (ja) 情報記録媒体、データ読み書き方法、及びデータ読み書きプログラム
KR20000040307A (ko) 대용량 전화번호부 저장방법
KR100521155B1 (ko) 플래시 메모리의 정보기록장치 및 그 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080422

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080623

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

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

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees