説明

NORフラッシュメモリの読み取り方法

【課題】NORフラッシュメモリの読み取り方法を提供する。
【解決手段】
本発明は、NORフラッシュメモリの読み取り方法を提供し、組込み式Linuxオペレーションシステムで使用され、巡回冗長検査値を照合し、カウンタに予め設けられた繰り返し読み取り回数の閾値により、ジャーナリングファイルシステムデータの繰り返し読み取りを継続するか否かを決定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、NORフラッシュ(NOR Flash)メモリの読み取り方法を提供し、第1組巡回冗長検査値(Cycle Redundancy Check)及び第2巡回冗長検査値を照合し、ジャーナリングファイルシステムデータ(Journalling Flash File System version 2 data 略称:JFFS2 data)の読み取りが成功か失敗かを判定する。
【背景技術】
【0002】
従来のフラッシュメモリ(Flash Memory)のデータアクセスの管理技術について言えば、NOR型とNAND型フラッシュメモリは、何れも書き込み(Write)前に消去を実行する(Erase before Write)特性を有する。フラッシュメモリ中の某位置にデータを書き込み後、該位置に対し、再度各込みの動作を行なう場合、先に消去(Erase)の動作を行なう必要があり、即ち、先に元々書き込まれていたデータを消去し、そうでなければ、後続のデータが書き込みエラーを発生する事になる。該フラッシュメモリの特徴は、以下にある:単一のメモリユニットにおいて、1ビット、1ビットの方式で、論理“0”又はプログラミングされた状態中から論理“1”又は既にクリアされた状態に書き換えられることはできない。従って、1つのユニットが要求する状態に設定されるようにするためには、先ず、全てのブロックに先に消去を行い、その後に、それらに対し、論理“0”のビットを保存し、それぞれプログラミングを行う必要がある。
【0003】
しかしながら、この2種のフラッシュメモリは、消去の回数に制限がある;セグメント(Segment)(又はブロック(Block))の消去回数(Limited erase counts)が許可された消去回数を超えると、データ書き込み又は読み取りが不正確となり、該セグメント(又はブロック)を再使用できず、この種の状況を消耗する(wear-out)と呼ぶ。セグメント(又はブロック)の消去回数は、通常10万〜100万回程度である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−318465号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
このような操作設計は、フラッシュメモリに必然的に使用期限をもたらすものである。使用期限に到達する前には、フラッシュメモリの読み取りが不安定となり、又はフラッシュメモリ自身の歩留まりの問題が起こすデータ読み取りが正常でなくなることがあり、これが本発明の処理しようとする課題である。
【0006】
従来技術の不足に鑑み、本発明者は、多くの時間及び資源を投入し、該分野において絶え間ない努力を行い、革新的方式、手段により、長期に渡る問題を解決し、社会に良好な成果をもたらし、産業の発展を促進する。
【課題を解決するための手段】
【0007】
本発明は、NORフラッシュメモリの読み取り方法であり、カウンタ(Counter)を内蔵したLinuxオペレーティングシステムに運用され、以下のステップを含む:
(1)ジャーナリングファイルシステムデータを確立するステップであり、該LinuxオペレーティングシステムによりNORフラッシュメモリに接続し、該NORフラッシュメモリ内でジャーナリングファイルシステムデータを確立する;
(2)巡回冗長検査値を設定するステップであり、確立又は更新された後の該ジャーナリングファイルシステムデータを該Linuxオペレーティングシステムにより計算した後、該ジャーナリングファイルシステムデータの第1組巡回冗長検査値と組み合わせる;
(3)ジャーナリングファイルシステムデータの読み取りステップであり、該Linuxオペレーティングシステムが確立の完成した該ジャーナリングファイルシステムデータを読み取り、該読み取ったジャーナリングファイルシステムデータに基づき、第2組巡回冗長検査値を計算する;
(4)巡回冗長検査値を繰り返し検証するステップであり、該第1組巡回冗長検査値と該第2組巡回冗長検査値が照合を経て同一でなければ、該Linuxオペレーティングシステムが該ジャーナリングファイルシステムデータを再度繰り返し読み取り、該カウンタ上に繰り返し読み取り回数を追加する;
(5)ジャーナリングファイルシステムデータの読み取りを完成するステップであり、ステップ(3)及びステップ(4)を受け、該第1組巡回冗長検査値及び該第2組巡回冗長検査値が同一に属する場合、該Linuxオペレーティングシステムがジャーナリングファイルシステムデータの読み取りを継続する;
(6)ジャーナリングファイルシステムデータを読み取ることができないステップであり、ステップ(4)を受けて、該カウンタ中に繰り返し読み取り回数の閾値(Threshold value)を予め設け、該第1組巡回冗長検査値及び該第2組巡回検査値を繰り返し照合した後、何れも同一に属さない回数が該閾値を超えれば、該Linuxオペレーションシステムは、読み取り失敗を判定する。
【発明の効果】
【0008】
本発明が達成する効果一は、該NORフラッシュメモリが読み取られる時、“損耗(Wear-out)”に達した場合、その内の該ジャーナリングファイルシステムデータを円滑に読み取ることができない可能性があり、該第1組巡回冗長検査値及び該第2組巡回検査値を複数回繰り返し照合することにより、該ジャーナリングファイルシステムデータをできる限り再度確実に読み出し可能にすることである。
【0009】
本発明が達成する効果二は、効果一を受けて、該NORフラッシュメモリが既に損壊している状況において、即ち、既に不安定である動作において、使用者に該ジャーナリングファイルシステムデータをできる限りアクセスできるようにし、バックアップ又は保存を行うことができるようにすることである。
【0010】
本発明が達成する効果三は、効果二を受けて、該NORフラッシュメモリが既に初期損壊している状況において、該Linuxオペレーティングシステムは、管理者に警告を発し、後続に回復不可能な読み取りエラーが発生し、該Linuxオペレーションシステムサービスが中断されることを回避することである。
【図面の簡単な説明】
【0011】
【図1】本発明のシステム構築図である。
【図2】本発明の動作フロー図である。
【発明を実施するための形態】
【0012】
本発明は、NORフラッシュメモリの読み取り方法に関し、図1において、搭配一Linuxオペレーションシステム1及び該Linuxオペレーションシステム1中に内蔵するカウンタ11の動作を組み合わせ、また、該Linuxオペレーションシステム1自身に設置するジャーナリングファイルシステム(Journalling Flash File System version 2 略称:JFFS2)12も組み合わせ、共に以下のステップを含む:
(1)ジャーナリングファイルシステムデータを確立するステップであり、該Linuxオペレーティングシステム1によりNORフラッシュメモリ2に接続し、該NORフラッシュメモリ2内でジャーナリングファイルシステムデータ21を確立する;
(2)巡回冗長検査値を設定するステップであり、確立又は更新された後の該ジャーナリングファイルシステムデータ21を該Linuxオペレーティングシステム1により計算した後、該ジャーナリングファイルシステムデータ21の第1組巡回冗長検査値と組み合わせる;
(3)ジャーナリングファイルシステムデータの読み取りステップであり、該Linuxオペレーティングシステム1が確立の完成した該ジャーナリングファイルシステムデータ21を読み取り、該読み取ったジャーナリングファイルシステムデータ21に基づき、第2組巡回冗長検査値を計算する;
(4)巡回冗長検査値を繰り返し検証するステップであり、該第1組巡回冗長検査値と該第2組巡回冗長検査値が照合を経て同一でなければ、該Linuxオペレーティングシステム1が該ジャーナリングファイルシステムデータ1を再度繰り返し読み取り、該カウンタ11上に繰り返し読み取り回数を追加する;
(5)ジャーナリングファイルシステムデータの読み取りを完成するステップであり、ステップ(3)及びステップ(4)を受け、該第1組巡回冗長検査値及び該第2組巡回冗長検査値が同一に属する場合、該Linuxオペレーティングシステム1がジャーナリングファイルシステムデータ21の読み取りを継続する;
(6)ジャーナリングファイルシステムデータを読み取ることができないステップであり、ステップ(4)を受けて、該カウンタ11中に繰り返し読み取り回数の閾値を予め設け、該第1組巡回冗長検査値及び該第2組巡回検査値を繰り返し照合した後、何れも同一に属さない回数が該閾値を超えれば、該Linuxオペレーションシステム1は、読み取り失敗を判定する。
【0013】
上記を更に整理した後、簡略したフロー図が図2のように示され、本発明のNORフラッシュメモリの読み取り方法は、以下のようである:
(1)該ジャーナリングファイルシステムデータ21を読み取る;(S1)
(2)該第1組巡回冗長検査値及び該第2組巡回冗長検査値が同一であるかを照合する;(S2)
(3)第(2)点を受けて、同一であれば、該ジャーナリングファイルシステムデータ21を円滑に読み取ることができる;(S3)
(4)第(2)点を受けて、同一でなければ、該カウンタ11上に繰り返し読み取り回数を追加する;(S4)
(5)第(4)点を受けて、該カウンタ11中の繰り返し読み取り回数が予め設ける閾値を超えているかを検査し、予め設ける閾値を超えていなければ、第(2)点のステップを繰り返す;(S5)
(6)第(4)点を受けて、該カウンタ11中の繰り返し読み取り回数が予め設ける閾値を超えているかを検査し、予め設ける閾値を超えていれば、該ジャーナリングファイルシステムデータ21を読み取ることができないと判定する。(S6)
【0014】
某状況において(例えば、損耗に到達する)、NORフラッシュメモリは、ジャーナリングファイルシステムデータを読み取る時、計算して得られた該第2組巡回冗長検査値が元に配給される該第1組巡回冗長検査値と同一でなければ、検証失敗となり、更に、該ジャーナリングファイルシステムデータを読み取ることができなくなるので、逐一上記の方式が必要であり、更に、該ジャーナリングファイルシステムデータを複数回繰り返し読み取り、該第1組巡回冗長検査値及び該第2組巡回冗長検査値が同一になるまで繰り返す。また、該ジャーナリングファイルシステムデータを円滑に読み取ることができなきことが持続する場合、該カウンタに予め設けた繰り返し読み取り回数の閾値を介して判定し、該閾値を超えれば、読み取り失敗と判定する。
【0015】
本発明が提供する方法を説明したが、一定時間を与えて、該ジャーナリングファイルシステムデータを読み取ることができなかった後に、該第1組巡回冗長検査値及び該第2組巡回冗長検査値を再度繰り返し読み取り、照合し、同一の巡回冗長検査値を得るまで続け、該ジャーナリングファイルシステムデータの読み取りに成功し、更に、システム管理者に警告情報を発し、できる限り迅速に修復を行うことができるようにし(ソフトウェア又はハードウェア方面であるかを問わない)、関連データのバックアップ、保存を行うことができ、なぜならば、最初の読み取りが失敗した後、該ジャーナリングファイルシステムに既に瑕疵が発生したことを認識し、できる限り早く処理しない場合、後続で問題が発生しないようにすることが困難になり、全体の作業に影響するからである。
【0016】
なお、本発明では好ましい実施例を前述の通り開示したが、これらは決して本発明に限定するものではなく、当該技術を熟知する者なら誰でも、本発明の精神と領域を脱しない均等の範囲内で各種の変動や潤色を加えることができることは勿論である。
【符号の説明】
【0017】
1 Linuxオペレーションシステム
11 カウンタ
12 ジャーナリングファイルシステム
2 NORフラッシュ
21 ジャーナリングファイルシステムデータ
S1 ジャーナリングファイルシステムデータを読み出す
S2 該第1組巡回冗長検査値と該第2組巡回冗長検査値が同一であるか否かを照合する
S3 ジャーナリングファイルシステムデータの読み取りに成功する
S4 カウンタの繰り返し読み取り回数を追加
S5 読み取り回数の閾値を超えているかを判断する
S6 読み取りに失敗する

【特許請求の範囲】
【請求項1】
カウンタを内蔵したLinuxオペレーティングシステムに運用され、以下のステップ:
(1)ジャーナリングファイルシステムデータを確立するステップであり、該LinuxオペレーティングシステムによりNORフラッシュメモリに接続し、該NORフラッシュメモリ内でジャーナリングファイルシステムデータを確立する;
(2)巡回冗長検査値を設定するステップであり、確立又は更新された後の該ジャーナリングファイルシステムデータを該Linuxオペレーティングシステムにより計算した後、該ジャーナリングファイルシステムデータの第1組巡回冗長検査値と組み合わせる;
(3)ジャーナリングファイルシステムデータの読み取りステップであり、該Linuxオペレーティングシステムが確立の完成した該ジャーナリングファイルシステムデータを読み取り、該読み取ったジャーナリングファイルシステムデータに基づき、第2組巡回冗長検査値を計算する;
(4)巡回冗長検査値を繰り返し検証するステップであり、該第1組巡回冗長検査値と該第2組巡回冗長検査値が照合を経て同一でなければ、該Linuxオペレーティングシステムが該ジャーナリングファイルシステムデータを再度繰り返し読み取り、該カウンタ上に繰り返し読み取り回数を追加する;
(5)ジャーナリングファイルシステムデータの読み取りを完成するステップであり、ステップ(3)及びステップ(4)を受け、該第1組巡回冗長検査値及び該第2組巡回冗長検査値が同一に属する場合、該Linuxオペレーティングシステムがジャーナリングファイルシステムデータの読み取りを継続する;
(6)ジャーナリングファイルシステムデータを読み取ることができないステップであり、ステップ(4)を受けて、該カウンタ中に繰り返し読み取り回数の閾値を予め設け、該第1組巡回冗長検査値及び該第2組巡回検査値を繰り返し照合した後、何れも同一に属さない回数が該閾値を超えれば、該Linuxオペレーションシステムは、読み取り失敗を判定する;
を含むNORフラッシュメモリの読み取り方法。

【図1】
image rotate

【図2】
image rotate


【公開番号】特開2012−137967(P2012−137967A)
【公開日】平成24年7月19日(2012.7.19)
【国際特許分類】
【出願番号】特願2010−290368(P2010−290368)
【出願日】平成22年12月27日(2010.12.27)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
【出願人】(511001219)京潤科技股▲ふん▼有限公司 (2)
【Fターム(参考)】