JPH0764851A - データ記憶装置 - Google Patents

データ記憶装置

Info

Publication number
JPH0764851A
JPH0764851A JP5209105A JP20910593A JPH0764851A JP H0764851 A JPH0764851 A JP H0764851A JP 5209105 A JP5209105 A JP 5209105A JP 20910593 A JP20910593 A JP 20910593A JP H0764851 A JPH0764851 A JP H0764851A
Authority
JP
Japan
Prior art keywords
data
area
stored
bit
data storage
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.)
Withdrawn
Application number
JP5209105A
Other languages
English (en)
Inventor
Hiroshi Kamata
博史 鎌田
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP5209105A priority Critical patent/JPH0764851A/ja
Priority to US08/283,998 priority patent/US5523915A/en
Publication of JPH0764851A publication Critical patent/JPH0764851A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、記憶領域をより有効に活用
できるデータ記憶装置を提供することである。 【構成】 各データ記憶領域11Ai に7ビットの領域
1 〜a7 からなるシステム領域aを設けている。シス
テム領域aのビットa1 には、その記憶領域がオープエ
リアか、それともシークレットエリアかを示す1ビット
のデータが記憶され、ビットa2 には、その記憶領域に
記憶されているデータがデータ群の中の先頭のデータか
否かを示す1ビットのデータが、ビットa3 にはその記
憶領域に記憶されているデータがデータ群の中の最後の
データか否かを示す1ビットのデータが記憶される。ま
た、ビットa4 、a5 には、同じデータが複数のデータ
記憶領域に分割されて記憶されているか否かを示す合計
2ビットのデータが記憶され、ビットa6 には、その領
域が空き領域の先頭か否かを示す1ビットのデータが記
憶される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、書き込み回数に制限が
ある不揮発性メモリを用いたデータ記憶装置に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】RAM
等の揮発性メモリに例えばキー入力されたデータを記憶
させる装置では、装置の電源をオフされたときにもRA
Mのデータを保持しておくために電池等により常にRA
Mをバックアップするようにしている。他方、不揮発性
のメモリ、例えば電気的書き込み・消去可能なEEPR
OMにデータを記憶させ、電池等によるメモリのバック
アップを不要としたデータ記憶装置もある。EEPRO
Mは、現状ではデータの書き込み回数に制限があり、一
定回数以上書き込みを行うとデータが正しく書き込めな
くなる場合がある。
【0003】ところで、上記のようなデータ記憶装置で
は、データ領域に記憶されているデータあるいはデータ
領域の書き込み可能な領域等を管理するために、記憶し
てあるデータの先頭のデータ、最後のデータあるいはデ
ータ領域の空き領域等を示す管理データを記憶しておく
必要がある。
【0004】従来、上記の管理データを記憶する管理領
域はデータ領域と別に設けられているが、1つの管理領
域に繰り返しデータの書き込みを行うと管理領域が書き
込み不良となる欠点があった。
【0005】本発明の目的は、記憶すべきデータだけで
なく管理データをも正しく記憶出来るデータ記憶装置を
提供することである。
【0006】
【課題を解決するための手段】データを記憶する複数の
データ記憶領域を有するデータ記憶装置において、本発
明のデータ記憶装置は、少なくともデータ記憶領域に記
憶されているデータの中の先頭のデータ及びデータ記憶
領域の空き領域の先頭を示す管理情報を記憶する管理領
域を各データ記憶領域内に設けたものである。例えば、
各データ記憶領域に記憶されているデータがデータ群の
中の先頭のデータか、最後のデータか、あるいはそのデ
ータ記憶領域が空き領域の先頭か否かを示す管理情報を
記憶する管理領域をそれぞれのデータ記憶領域内に設け
ている。
【0007】
【作用】本発明では、記憶されているデータの中の先頭
のデータ、あるいは空き領域を示す管理情報を記憶する
管理領域を各データ記憶領域に設けたので、データ領域
と別に管理用の記憶領域を設ける必要がなく、データ記
憶装置の記憶領域を有効に活用できる。また、データの
順序、あるいは空き領域が変化して管理情報を書き替え
る場合にも、該当する管理領域の管理情報のみを書き替
えればよいので、個々の管理領域に対する書き替え回数
が少なくなり、管理領域が書き込み不良となる可能性を
少なくできる。
【0008】
【実施例】以下、本発明の実施例を図面を参照しながら
説明する。図1は、本発明の一実施例のデータ記憶装置
の回路ブロック図であり、このデータ記憶装置は、入力
された氏名及び住所データを記憶するようになってい
る。
【0009】同図において、制御部1は、ROM2に格
納されている制御プログラムに従って、キー入力部3か
ら入力される名前、住所からなるデータをRAM4へ一
時格納すると共に、データの書き込みが指示されたと
き、RAM4に記憶してあるデータを不揮発性メモリで
あるEEPROM5へ保存する。このEEPROM5に
格納されたデータは、データ読み出し時にキー入力部3
の図示しないカーソルキーの操作に応じて、所定の順
序、例えば50音順の正順またはその逆の順序で読み出
され液晶表示部6に表示される。
【0010】電源回路部7は、例えば太陽電池等からな
る電池8の出力電圧を安定化して回路各部に供給する回
路である。また、電源回路部7は、EEPROM5へデ
ータを書き込む場合には、外部入力端子9から供給され
る比較的高い外部電圧を安定化してEEPROM5に出
力する。
【0011】ここで、EEPROM5の記憶領域の構成
を図2を参照して説明する。この実施例では、EEPR
OM5のアドレス1〜400をデータ領域11に、アド
レス401〜512を予備のデータ領域12にそれぞれ
割り当てている。
【0012】データ領域11は複数(例えば、400
個)のデータ記憶領域11A1 、11A2 ・・11Ai
からなる。この実施例では、1組の氏名及び住所データ
のデータ量が多く1のデータ記憶領域11Ai に入りき
れないときには、そのデータを複数のデータ記憶領域1
1Ai に分割して記憶するようにしている。
【0013】各データ記憶領域11Ai は、システムデ
ータ(管理情報)を記憶するシステム領域(管理領域)
aと、同一のデータを複数の記憶領域に分割して記憶し
たときに、同じデータが記憶されている次の格納アドレ
スを指す残りポインタを記憶する領域bと、50音順で
1つ前のデータの格納アドレスを指す前ポインタを記憶
する領域cと、50音順で1つ後のデータの格納アドレ
スを指す後ポインタを記憶する領域dと、氏名及び住所
等のキー入力されたデータを記憶する領域eとで構成さ
れている。なお、予備のデータ領域12も複数(例え
ば、112個)の予備のデータ記憶領域12A1 、12
2 ・・12Ai からなり、データ領域11と同じ構成
となっている。
【0014】システム領域aは、図3に示すように全体
で7ビットa1 〜a7 の領域で構成されている。1ビッ
ト目のビットa1 は、対応するデータ記憶領域11A1
がオープンエリアか、それとも特定のシークレットコー
ドを入力しないとデータを読み出すことのできないシー
クレットエリアの何れであるかを示すビットであり、シ
ークレットエリアのときは「1」が、オープンエリアの
ときは「0」が設定される。
【0015】2ビット目のビットa2 は、そのデータ記
憶領域11Ai に記憶されているデータが、データ群
(データ領域11及び予備のデータ領域12に記憶され
ている全てのデータ)の中の先頭のデータ、すなわち5
0音順の1番目のデータか否かを示すビットであり、先
頭のデータのときは「1」が、それ以外のときは「0」
が設定される。
【0016】3ビット目のビットa3 は、その領域に記
憶されているデータが、データ群の中で50音順の最後
のデータか否か示すビットであり、最後のデータのとき
は「1」が、それ以外のときは「0」が設定される。
【0017】4ビット目及び5ッビット目のビットa4
及びa5 は、データが分割されて記憶されている場合の
領域の数を記憶するビットであり、データが分割されて
いないときには「01」が、データが2つのデータ記憶
領域11Ai に分割されて記憶されているときには「1
0」が、3つのデータ記憶領域11Ai に分割されて記
憶されているときには「11」が記憶される。
【0018】6ビット目のビットa6 は、そのデータ記
憶領域11Ai がデータ領域11の空き領域の先頭か否
かを示すビットであり、空き領域の先頭のときには
「1」が、それ以外のとき「0」が設定される。
【0019】7ビット目のビットa7 は、その予備のデ
ータ記憶領域12Ai が予備のデータ領域12の空き領
域の先頭か否かを示すビットであり、空き領域の先頭の
ときには「1」が、それ以外のとき「0」が設定され
る。
【0020】今、図2に示すようにデータ領域11の領
域eに「あ・・」、「え・・」、「い・・」の3個の氏
名及び住所データが記憶されていて、「あ・・」のデー
タはデータ量が多いのでアドレス「1」と「2」に分割
されて記憶されているものとする。
【0021】アドレス「1」に記憶されている50音順
の先頭のデータ「あ・・」の残りポインタbには、分割
された残りのデータの格納アドレス「2」が記憶され、
前ポインタcには、50音順の1つ前のデータ、この場
合、50音順の最後のデータである「え・・」の格納ア
ドレス「3」が記憶されている。また、後ポインタdに
は、50音順の次のデータである「い・・」の格納アド
レス「4」が記憶されている。
【0022】また、図示していないが、アドレス「1」
のシステム領域aのビットa1 には、このデータがオー
プンエリアのデータであれば「0」が設定され、ビット
2には、このデータ「あ・・」がデータ領域11に記
憶されているデータの中で50音順の先頭のデータであ
るので「1」が設定され、ビットa3 には「0」が設定
されている。また、データ「あ・・」はアドレス「1」
とアドレス「2」に分割されて記憶されているのでビッ
トa4 、a5 に「10」が設定され、この領域は空き領
域ではないのでビットa6 、a7 に「0」が設定されて
いる。
【0023】アドレス「4」に記憶されている50音順
で2番目のデータ「い・・」の残りポインタbには、こ
のデータは分割されていないので何もアドレスは記憶さ
れていない。前ポインタcには、50音順で1つ前のデ
ータである「あ・・」の格納アドレス「1」が記憶さ
れ、後ポインタdには、1つ後のデータである「え・
・」の格納アドレス「3」が記憶されている。
【0024】次に、以上のような構成のデータ記憶装置
のデータ書き込み時の動作を図4のフローチャートを参
照して説明する。図4のステップS1において、キー入
力部3から入力されたデータをRAM4に格納する。そ
して、ステップS2で図示しない書き込みキーが操作さ
れたのを検出したなら、ステップS3で外部入力端子9
に外部電圧が供給されているか否かを判別する。外部か
ら書き込み用の電圧が供給されているときには、ステッ
プS4に進みデータ領域11の各システム領域aを順に
サーチしてビットa6 に「1」が設定されている領域、
すなわちデータ領域11の空き領域の先頭をサーチす
る。
【0025】システム領域aのビットa6 に「1」が設
定されている領域が存在しないとき、すなわちデータ領
域11に空き領域が存在しないときには(S4、YE
S)、データ領域11の使用可能な全ての領域に既にデ
ータが書き込まれている場合であるので、ステップS5
に進み新たなデータを記憶する領域が無いことを液晶表
示部6に表示する。また、ステップS3の判別でデータ
の書き込み時に外部電圧が供給されていないときには、
ステップS6に進みエラー表示を行う。
【0026】一方、ステップS4の判別で空き領域の先
頭を示すビットa6 に「1」が設定されているデータ記
憶領域11Ai が存在するとき、すなわちデータ領域1
1に空き領域が存在するときには、ステップS7に進
み、今回書き込もうとしているデータに対して50音順
で順番が1つ前のデータと1つ後のデータをサーチす
る。このステップS7の処理では、例えば書き込むべき
氏名データの先頭の文字とデータ領域11に既に記憶さ
れている氏名データの先頭の文字とを順に比較して、5
0音順の1つ前のデータと1つ後のデータを検索する。
【0027】そして、次のステップS8でシステム領域
aのビットa6 に「1」が設定されているデータ記憶領
域11Ai にデータを書き込む。さらにそのアドレスの
前ポインタcに1つ前のデータの格納アドレスを、後ポ
インタdに1つ後のデータの格納アドレスをそれぞれ書
き込む。その後、ステップS9で書き込み前のデータと
EEROM5に実際に書き込まれたデータとが一致する
か否かを判別する。このとき、データが一致しない場合
には、再度データの書き込み及び読み出しを行い、書き
込み前と書き込み後のデータの比較を行う。
【0028】ステップS9の判別でデータの書き込みが
正常に行われた場合には、ステップS10に進み次にシ
ステム領域aの各ビットの書き替えを行う。ステップS
10におけるシステム領域aの各ビットの書き替えは、
今回データを書き込んだデータ記憶領域11Ai のシス
テム領域aのビットa6 を「0」に書き替え、データ領
域11を順にサーチして次の空き領域の先頭を探し、空
き領域が存在したならそのシステム領域aのビットa6
を「1」に書き替える。なお、新たなデータを書き込ん
だことにより、50音順の先頭のデータ、あるいは最後
のデータが変更になった場合には、該当するデータのシ
ステム領域aのビットa2 またはビットa3 を書き替え
る。
【0029】ステップS9の判別で2回とも正常にデー
タを書き込めなかった場合には、そのデータ記憶領域1
1Ai を不良と判断し、ステップS11に進み予備のデ
ータ記憶領域12Ai のシステム領域aを順に検索し
て、予備領域の空き領域の先頭を示すビットa7
「1」が設定されている領域をを探す。そして、ビット
7に「1」が設定されている予備のデータ記憶領域1
2Ai を検出したなら、その予備のデータ記憶領域12
i に、入力された氏名及び住所データとサーチした前
後のデータのアドレスを書き込む。さらに、1つ前のデ
ータの後ポインタdに今回データを書き込んだ予備のデ
ータ領域12Ai のアドレスを設定し、同様に1つ後の
データの前ポインタcにデータを書き込んだ予備のデー
タ記憶領域12Ai のアドレスを設定する。
【0030】これにより、データ領域11のデータ記憶
領域11Ai が書き込み不良となった場合でも、予備の
データ領域12にそのデータを書き込むことで、データ
領域11に記憶可能な個数分のデータ(実施例では、4
00個のデータ)を常に記憶することができる。また、
予備のデータ領域12は、データ記憶領域11Ai が書
き込み不良となった場合のみ使用されるので、データ領
域11の記憶領域に比べて書き込み不良となる確率が少
なく、必要なデータを確実に保存することができる。
【0031】ここで、図5に示すようにアドレス「5」
にデータ「う・・」の書き込みを2回行って2回ともデ
ータを正常に書き込めなかった場合について説明する。
先ず、予備のデータ領域12のシステム領域aを順にサ
ーチして空き領域の先頭を探す。アドレス「401」が
予備のデータ領域12の空き領域の先頭であることを検
出したなら、そのアドレスにデータ「う・・」を書き込
み、50音順でデータ「う・・」の前後のデータをサー
チする。この場合、「う・・」の1つ前のデータは「い
・・」でその格納アドレスは「4」であるので、前ポイ
ンタcに「4」を設定し、1つ後のデータは「え・・」
でその格納アドレスは「3」であるので、後ポインタd
に「3」を設定する。
【0032】さらに、50音順で1つ前のデータである
「い・・」の後ポインタdにデータ「う・・」の格納ア
ドレス「401」を設定し、同様に1つ後のデータであ
る「え・・」の前ポインタcにその格納アドレス「40
1」を設定する。
【0033】上述した実施例では、データ領域11及び
予備のデータ領域12の各データ記憶領域11Ai 、1
2Ai にシステムデータを記憶するシステム領域aを設
け、該当するデータ記憶領域11Ai または予備のデー
タ記憶領域12Ai にデータが記憶されている場合に
は、その領域に記憶されているデータがデータ領域11
及び予備のデータ領域12に記憶されているデータ群の
中の先頭のデータか、最後のデータか、あるいはその領
域にデータが記憶されていない場合には、その領域が空
き領域の先頭か否かを示す管理情報(例えば、各1ビッ
トの情報)を記憶するようにした。従って、データ領域
11と別にシステム領域を設け、そのシステム領域にデ
ータ群の中の先頭のデータのアドレス、最後のデータの
アドレス、空き領域の先頭アドレス等を記憶させる従来
の方法に比べて、システム領域として使用される記憶領
域を少なくでき、データ記憶装置の記憶領域をより有効
に活用できる。
【0034】なお、上述した実施例では、システム領域
を各1ビットの構成としたが、これに限らず他の構成で
もよい。また、上述した実施例では、データを50音順
にEEPROM5に記憶しているが、順序づけて記憶し
ない場合にも本発明は適用できる。さらに、本発明のデ
ータ記憶装置は、小型電子式計算機、電子手帳、ワープ
ロ、パーソナルコンピュータ等に適用できる。
【0035】
【発明の効果】本発明では、各データ記憶領域にデータ
とともにデータの先頭及び空き領域の先頭を示す管理情
報を記憶するようにしたので、従来のようにデータ領域
と別に管理情報を記憶する管理領域を設ける必要がなく
なる。また、各データ記憶領域の管理情報を共通に管理
する管理方法ではないので、特定の管理領域に対しての
みデータの書き替えが行われて管理領域の書き込み不良
が発生するのを防止できる。
【図面の簡単な説明】
【図1】本発明の実施例のデータ記憶装置の回路ブロッ
ク図である。
【図2】EEPROMの記憶領域の構成を示す図であ
る。
【図3】システム領域の構成を示す図である。
【図4】書き込み処理のフローチャートである。
【図5】EEPROMの記憶領域が書き込み不良で予備
のデータ領域にデータを書き込む場合の説明図である。
【符号の説明】
11 データ領域 12 予備のデータ領域 a システム領域

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 データを記憶する複数のデータ記憶領域
    を有するデータ記憶装置において少なくとも前記データ
    記憶領域に記憶されているデータの中の先頭のデータ及
    び該データ記憶領域の空き領域の先頭を示す管理情報を
    記憶する管理領域を、各データ記憶領域毎に設けたこと
    を特徴とするデータ記憶装置。
JP5209105A 1993-08-03 1993-08-24 データ記憶装置 Withdrawn JPH0764851A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5209105A JPH0764851A (ja) 1993-08-24 1993-08-24 データ記憶装置
US08/283,998 US5523915A (en) 1993-08-03 1994-08-01 Data storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5209105A JPH0764851A (ja) 1993-08-24 1993-08-24 データ記憶装置

Publications (1)

Publication Number Publication Date
JPH0764851A true JPH0764851A (ja) 1995-03-10

Family

ID=16567378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5209105A Withdrawn JPH0764851A (ja) 1993-08-03 1993-08-24 データ記憶装置

Country Status (1)

Country Link
JP (1) JPH0764851A (ja)

Similar Documents

Publication Publication Date Title
KR940002755B1 (ko) 1칩 마이크로 컴퓨터
US5943692A (en) Mobile client computer system with flash memory management utilizing a virtual address map and variable length data
US5964873A (en) Method for updating a ROM BIOS
EP0369829B1 (en) Information searching apparatus
JPH09330273A (ja) メモリカードおよびメモリカードにおける誤り訂正方法
CN113568579B (zh) 一种存储器、数据存储方法以及数据读取方法
US4975872A (en) Dual port memory device with tag bit marking
US4926388A (en) Electronic device for independently erasing secret and non-secret data from memory
JP2661131B2 (ja) 情報記憶読出方法とその装置
JPH0764851A (ja) データ記憶装置
US4249250A (en) Computer storage arrangements with overwrite warning
JPS60247766A (ja) プログラム計算機
KR100201513B1 (ko) 싱글 칩 마이크로컴퓨터 및 그것을 내장한 전자기기
JPH0776895B2 (ja) 携帯用小型機器
JPH0749815A (ja) データ記憶装置
JPH0817192A (ja) フラッシュメモリによる位置記憶方法
US5877753A (en) Electronic apparatus having a schedule management function
JPH06119510A (ja) メモリカード
JPH0744453A (ja) データ記憶装置
JPH0744451A (ja) データ記憶装置
JP2000067588A (ja) データ記憶装置及びデータ記憶装置の制御方法
JP2702943B2 (ja) 半導体記憶装置
JP2004118937A (ja) 不揮発性メモリおよびこれを有したデータ記憶装置
JPH0330877Y2 (ja)
JP2788765B2 (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001031