(57)【要約】【課題】この発明は、メモリ内の空きブロックの検索を迅速に行ない、特にリアルタイムで得られるデータの記録に好適する情報記録装置及び情報記録方法を提供することを目的としている。【解決手段】記録領域がブロック番号０〜１０２４で示される複数のブロックに分割され、ブロック単位でデータの記録が行なわれる不揮発性メモリ１６に対して、連続しないブロックにデータを記録する。この連続しないブロックとは、例えば、ブロック番号０，２，４，６，……のように、最も若いブロック番号０のブロックから１つおきに配置されたブロックである。【選択図】　　図５
2004094625.tif 000002
【特許請求の範囲】
【請求項１】
記録領域が複数のブロックに分割され、前記ブロック単位でデータの記録が行なわれるメモリと、
このメモリ内で連続しないブロックにデータを記録するように制御する制御手段とを具備したことを特徴とする情報記録装置。
【請求項２】
前記制御手段は、前記メモリ内で連続する複数のブロックに対して、所定数おきにデータを記録することを特徴とする請求項１記載の情報記録装置。
【請求項３】
前記制御手段は、データを記録するために指定されたブロックが使用済みである場合、その使用済みブロックの次のブロック、または、その使用済みブロックの所定数後のブロックにデータを記録することを特徴とする請求項１記載の情報記録装置。
【請求項４】
前記制御手段は、
前記メモリ内で連続する複数のブロックを所定数おきに指定する手段と、
この手段で指定したブロックが空きブロックか否かを判別する手段と、
この手段で空きブロックと判別されたブロックにデータの記録を行なう手段とを具備したことを特徴とする請求項１記載の情報記録装置。
【請求項５】
前記制御手段は、前記判別手段で空きブロックでないと判別された場合、そのブロックの次のブロック、または、そのブロックの所定数後のブロックを指定する手段を具備したことを特徴とする請求項４記載の情報記録装置。
【請求項６】
記録領域が複数のブロックに分割され、前記ブロック単位でデータの記録が行なわれるメモリに対して、連続しないブロックにデータを記録することを特徴とする情報記録方法。
【請求項７】
前記メモリ内の連続する複数のブロックに対して、所定数おきにデータを記録することを特徴とする請求項６記載の情報記録方法。
【請求項８】
データを記録するために指定されたブロックが使用済みである場合、その使用済みブロックの次のブロック、または、その使用済みブロックの所定数後のブロックにデータを記録することを特徴とする請求項６記載の情報記録方法。
【請求項９】
前記メモリ内で連続する複数のブロックを所定数おきに指定する工程と、
この工程で指定したブロックが空きブロックか否かを判別する工程と、
この工程で空きブロックと判別されたブロックにデータの記録を行なう工程とを有することを特徴とする請求項６記載の情報記録方法。
【請求項１０】
前記判別する工程で空きブロックでないと判別された場合、そのブロックの次のブロック、または、そのブロックの所定数後のブロックを指定する工程を有することを特徴とする請求項９記載の情報記録方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えばデジタルデータに変換された音声情報を半導体メモリに対して記録再生する、いわゆるボイスレコーダ等に使用して好適する情報記録装置及び情報記録方法に関する。
【０００２】
【従来の技術】
周知のように、首記の如きボイスレコーダは、マイクロホンで採取した音声情報をデジタルデータに変換し、圧縮処理によりデータ量を削減した上で、バッファメモリを介して不揮発性メモリ（フラッシュメモリ）に記録している。
【０００３】
そして、この種のボイスレコーダでは、一般に、不揮発性メモリ内の記録領域を、それぞれが一定の容量でなる複数のブロックに分割し、ブロック単位で音声データの記録再生を行なうようにしている。
【０００４】
つまり、１ファイル分に対応する音声データは、複数のブロックに分散されて不揮発性メモリに記録されるとともに、複数のブロックから読み出されることにより、連続した音声データとして再生される。
【０００５】
ところで、音声データを不揮発性メモリの複数のブロックに分散記録する場合には、不揮発性メモリの中から空きのあるブロックを検索し、その空きブロックにバッファメモリに蓄積された音声データを転送する動作が繰り返される。
【０００６】
この場合、空きブロックの検索は、不揮発性メモリ内の複数のブロックを、そのブロック番号の若いものから順番に空きブロックか使用済みブロックかを判別していくことによって行なわれる。
【０００７】
このため、不揮発性メモリ内のブロック数が少ない場合には、最終ブロックまで検索したとしても、空きブロックの検索に要する時間が短くて済み、リアルタイムで得られる音声データを取りこぼすことなく記録することが可能となる。
【０００８】
しかしながら、不揮発性メモリの大容量化に伴ないブロック数が多くなると、最終ブロックに近付くにつれて空きブロックの検索に要する時間が長くなり、リアルタイムで音声データを記録し切れなくなるという問題が生じる。
【０００９】
なお、特開２００１−１６６９７２号公報には、記録媒体にブロック単位でプログラムを分割記録する際、所要量の余りブロック量を除いた記録可能なブロック残量がゼロとなったら、記録動作を終了させることが開示されている。
【００１０】
しかしながら、この公開公報では、上記した不揮発性メモリ内のブロック数が多くなったとき、空きブロックの検索に要する時間が長くなるという問題に対処することについては、何らの記載もなされていないものである。
【００１１】
【発明が解決しようとする課題】
そこで、この発明は上記事情を考慮してなされたもので、メモリ内の空きブロックの検索を迅速に行ない、特にリアルタイムで得られるデータの記録に好適する情報記録装置及び情報記録方法を提供することを目的とする。
【００１２】
【課題を解決するための手段】
この発明に係る情報記録装置は、記録領域が複数のブロックに分割され、ブロック単位でデータの記録が行なわれるメモリと、このメモリ内で連続しないブロックにデータを記録するように制御する制御手段とを備える。
【００１３】
また、この発明に係る情報記録方法は、記録領域が複数のブロックに分割され、ブロック単位でデータの記録が行なわれるメモリに対して、連続しないブロックにデータを記録するようにしている。
【００１４】
上記のような構成及び方法によれば、記録領域が複数のブロックに分割され、ブロック単位でデータの記録が行なわれるメモリに対して、連続しないブロックにデータを記録するようにしたので、例えば、若いブロック番号のブロックから順次空きブロックを検索する際に、空きブロックの検索を迅速に行なうことができ、特にリアルタイムで得られるデータの記録に好適するものとなる。
【００１５】
【発明の実施の形態】
以下、この発明の実施の形態について、図面を参照して詳細に説明する。図１は、この実施の形態で説明する音声記録再生装置を示している。すなわち、符号１１はマイクロホンで、採取した音声情報をアナログの電気的信号に変換して出力している。
【００１６】
このマイクロホン１１から出力されたアナログ音声信号は、増幅部１２により増幅された後、Ａ／Ｄ（Ａｎａｌｏｇ／Ｄｉｇｉｔａｌ）変換部１３に供給されてデジタル化される。そして、このＡ／Ｄ変換部１３から出力されたデジタル音声データは、デジタル信号処理部１４に供給されて所定の圧縮処理を施される。
【００１７】
このデジタル信号処理部１４で圧縮処理されたデジタル音声データは、制御部１５に供給されて、そのバッファメモリ１５ａに蓄積される。そして、このバッファメモリ１５ａに蓄積されたデジタル音声データが、フラッシュメモリ１６にブロック単位で記録される。
【００１８】
また、上記フラッシュメモリ１６に記録されたデジタル音声データは、制御部１５にブロック単位で読み出され、そのバッファメモリ１５ａに記録される。このバッファメモリ１５ａに記録されたデジタル音声データは、デジタル信号処理部１４に供給されて所定の伸張処理が施される。
【００１９】
そして、このデジタル信号処理部１４により伸張処理されたデジタル音声データが、Ｄ／Ａ（Ｄｉｇｉｔａｌ／Ａｎａｌｏｇ）変換部１７に供給されてアナログ音声信号に変換され、増幅器１８によって増幅された後、スピーカ１９で音声情報として再生される。
【００２０】
なお、上記制御部１５は、図示しないＭＰＵ（Ｍｉｃｒｏ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）等を内蔵しており、操作部２０の操作情報を受けて、この音声記録再生装置の動作を統括的に制御している。この操作部２０には、停止（ＳＴＯＰ）キーや再生（ＰＬＡＹ）キー等が含まれている。
【００２１】
また、この制御部１５には、操作部２０の一部に含まれる記録（ＲＥＣ）キー２１が接続されている。さらに、この制御部１５は、液晶表示部２２を制御することによって、音声記録再生装置の停止状態や各種の動作状態、各種の設定状態等を表示させている。
【００２２】
図２及び図３は、この音声記録再生装置の記録再生動作をまとめたフローチャートを示している。まず、操作部２０の電源スイッチがオンされ、制御部１５に電源が投入されて、そのＭＰＵがリセットを解除されることにより、処理が開始（ステップＳ１１）される。
【００２３】
すると、制御部１５は、ステップＳ１２で、イニシャライズ処理を実行する。このイニシャライズ処理は、電源投入後における、制御部１５が使用する資源、例えば内蔵ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）等の値は不定であるため、必要とされる初期値をセーブするために行なわれる。
【００２４】
その後、制御部１５は、ステップＳ１３で、未使用ブロック番号（ＵＮＵＳＥＤ＿ＢＬＯＣＫ＿ＮＵＭＢＥＲ）を０に設定する。すなわち、フラッシュメモリ１６の記録領域は、一定の記録容量を有する複数のブロックに分割されている。そして、各ブロックには、先頭アドレスの最も若いブロックを０として、順番にブロック番号が付されている。
【００２５】
ここで、制御部１５は、そのバッファメモリ１５ａに蓄積されたデジタル音声データを、フラッシュメモリ１６にブロック単位で記録する際、フラッシュメモリ１６内におけるデータの記録されていない未使用（空き）ブロックを、ブロック番号０のブロックから順次検索していき、その検索された未使用ブロックに記録するようにしている。
【００２６】
そして、上記ステップＳ１３において、未使用ブロック番号を０にするということは、制御部１５が、フラッシュメモリ１６内の未使用ブロックをどこまで検索したかを示す情報を初期化するということである。
【００２７】
次に、制御部１５は、ステップＳ１４で、ファイル番号（ＦＩＬＥ＿ＮＵＭＢＥＲ）を、フラッシュメモリ１６内に既に記録されているファイルの総数に１を加えた値に設定する。
【００２８】
これは、次にユーザが音声記録を開始した場合、そのファイルに付す番号となる。例えば、フラッシュメモリ１６内に既に１０個のファイルが記録されているとすると、ステップＳ１４の処理によってファイル番号が１１となり、次に記録される音声情報のファイル番号が１１となる。
【００２９】
その後、制御部１５は、ステップＳ１５で、メイン処理を実行する。このメイン処理は、例えば、電池電圧を測定して液晶表示部２２に電池の残り電力を表わす棒グラフ等を表示させることにより、電池の残り電力を視覚的にユーザに知らせる処理等のことである。
【００３０】
そして、制御部１５は、ステップＳ１６で、操作部２０や記録キー２１等におけるキー入力が行なわれたか否かを判別する。キー入力が行なわれ（ＹＥＳ）、停止キーが操作されたと判断された場合、制御部１５は、ステップＳ１７で、停止モードに設定され、ステップＳ１８で、デジタル信号処理部１４の動作を停止させる。
【００３１】
また、キー入力が行なわれ（ＹＥＳ）、記録キー２１が操作されたと判断された場合、制御部１５は、ステップＳ１９で、記録モードに設定され、ステップＳ２０で、デジタル信号処理部１４を起動させ、ステップＳ２１で、デジタル信号処理部１４を記録モードに設定する。
【００３２】
さらに、キー入力が行なわれ（ＹＥＳ）、再生キーが操作されたと判断された場合、制御部１５は、ステップＳ２２で、再生モードに設定され、ステップＳ２３で、デジタル信号処理部１４を起動させ、ステップＳ２４で、デジタル信号処理部１４を再生モードに設定する。
【００３３】
そして、上記ステップＳ１６でキー入力がないと判断された場合（ＮＯ）、ステップＳ１８、Ｓ２１またはＳ２４の後、制御部１５は、ステップＳ２５で、モードを判別する。このモードの判別は、ステップＳ１７、Ｓ１９またはＳ２２で設定されたモードを再確認する処理である。
【００３４】
すなわち、ステップＳ１７、Ｓ１９またはＳ２２では、ただ単にモードを設定しただけである。ところが、例えば、ユーザが記録キー２１を操作し、一旦記録モードに設定されれば、制御部１５は、ユーザが記録終了のキー入力を行なうまで、フラッシュメモリ１６の残り記録容量がなくなるまで、または、電池電力が消耗するまで、記録モードを保持する必要があるからである。
【００３５】
上記ステップＳ２５で停止モードであると判断された場合、制御部１５は、ステップＳ１５の処理に戻される。また、記録モードであると判断された場合、制御部１５は、ステップＳ２６で、バッファメモリ１５ａが満杯になっているか否かを判別し、満杯でないと判断された場合（ＮＯ）、ステップＳ１５の処理に戻される。
【００３６】
一方、バッファメモリ１５ａが満杯であると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ２７で、フラッシュメモリ１６内の未使用ブロックを検索する。この場合、未使用ブロックが検索されれば、そのブロック番号が未使用ブロック番号（ＵＮＵＳＥＤ＿ＢＬＯＣＫ＿ＮＵＭＢＥＲ）として設定される。
【００３７】
その後、制御部１５は、ステップＳ２８で、ステップＳ２７による検索結果を受けて、未使用ブロックが存在するか否かを判別する。そして、未使用ブロックが存在しないと判断された場合（ＮＯ）、制御部１５は、ステップＳ２９で、液晶表示部２２にフラッシュメモリ１６が満杯であることを示す“ＦＵＬＬ”を表示させ、ステップＳ３０で、デジタル信号処理部１４を停止させ、ステップＳ３１で、停止モードに設定されて、ステップＳ１５の処理に戻される。
【００３８】
また、上記ステップＳ２８で未使用ブロックが存在すると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ３２で、ステップＳ２７で設定された未使用ブロック番号（ＵＮＵＳＥＤ＿ＢＬＯＣＫ＿ＮＵＭＢＥＲ）のブロックに、バッファメモリ１５ａのデータを記録させて、ステップＳ１５の処理に戻される。
【００３９】
ここで、上記ステップＳ２５で再生モードであると判断された場合、制御部１５は、ステップＳ３３で、バッファメモリ１５ａが空であるか否かを判別する。そして、バッファメモリ１５ａが空であると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ３４で、フラッシュメモリ１６からデータを読み出してバッファメモリ１５ａに記録させる。
【００４０】
このステップＳ３４の後、または、上記ステップＳ３３でバッファメモリ１５ａが空でないと判断された場合（ＮＯ）、制御部１５は、ステップＳ３５で、デジタル信号処理部１４からデータの要求があるか否かを判別し、ないと判断された場合（ＮＯ）、ステップＳ１５の処理に戻される。
【００４１】
また、ステップＳ３５でデジタル信号処理部１４からデータの要求があると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ３６で、バッファメモリ１５ａに蓄積されたデータをデジタル信号処理部３６に送信して、ステップＳ１５の処理に戻される。
【００４２】
図４は、上記ステップＳ２７における未使用ブロックを検索する動作をまとめたフローチャートを示している。まず、未使用ブロックの検索が要求されることにより開始（ステップＳ２７ａ）されると、制御部１５は、ステップＳ２７ｂで、フラッシュメモリ１６内の未使用ブロックの検索を行なうためのサブルーチンを呼び出す。
【００４３】
すると、制御部１５は、ステップＳ２７ｃで、現在設定されている未使用ブロック番号（ＵＮＵＳＥＤ＿ＢＬＯＣＫ＿ＮＵＭＢＥＲ）を、図示しないレジスタｎに格納した後、ステップＳ２７ｄで、現在の未使用ブロック番号に２を加算する。
【００４４】
その後、制御部１５は、ステップＳ２７ｅで、未使用ブロック番号が、フラッシュメモリ１６内のブロック番号の最大値ｍａｘを超えたか否かを判別し、未使用ブロック番号が最大値ｍａｘを超えたと判断された場合（ＮＯ）、ステップＳ２７ｆで、未使用ブロック番号を０に設定する。
【００４５】
このステップＳ２７ｆの後、または、上記ステップＳ２７ｅで未使用ブロック番号が最大値ｍａｘ以下であると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ２７ｇで、未使用ブロック番号が先にレジスタｎに格納した値と一致したか否かを判別する。
【００４６】
そして、一致していると判断された場合（ＹＥＳ）、制御部１５は、ステップＳ２７ｈで、フラッシュメモリ１６内の全てのブロックについて未使用ブロックの検索が行なわれたものと判断し、未使用ブロック無しである旨の情報を持って、図３に示したステップＳ２８の処理に移行する。
【００４７】
また、上記ステップＳ２７ｇで未使用ブロック番号がレジスタｎの値と一致していないと判断された場合（ＮＯ）、制御部１５は、ステップＳ２７ｉで、その未使用ブロック番号で示されるブロックが、空きブロックであるか否かを判別し、空きブロックであると判断された場合（ＹＥＳ）、未使用ブロック有りである旨の情報を持って、上記ステップＳ２８の処理に移行する。
【００４８】
なお、上記ステップＳ２７ｉで未使用ブロック番号で示されるブロックが空きブロックでないと判断された場合（ＮＯ）、制御部１５は、ステップＳ２７ｊで、未使用ブロック番号に１を加算して、ステップｓ２７ｅの処理に戻される。
【００４９】
図５は、フラッシュメモリ１６にまだ何もデータが記録されていない状態、つまり、全てのブロックが未使用ブロックである場合に、図４に示す動作に基づいて、フラッシュメモリ１６内の未使用ブロックが検索され、その検索された空きブロックにデータが記録されたときの、フラッシュメモリ１６内の各ブロックの使用、未使用状態を示している。
【００５０】
すなわち、最も若いブロック番号０のブロックから、上記ステップＳ２７ｄの処理により１ブロックおきに、つまり、間に１つの空きブロックが形成されるようにして、ファイル１のデータが順次記録されていくようになっている。
【００５１】
このため、次にファイル２のデータを記録する場合、空きブロックを検索する際に、ブロック番号１のブロックが空きブロックとなっているので、ファイル番号０のブロックから空きブロックの検索を開始した場合、空きブロックを迅速に検索することが可能となり、リアルタイムで得られるデジタル音声データの記録に好適するものとなる。
【００５２】
また、制御部１５におけるＭＰＵのクロック周波数を低くすることができるため、電池の寿命を延ばすことができるとともに、クロックからの不要輻射が低減でき、アナログ音声信号への影響がなく、例えば再生音のＳ／Ｎを改善することができる。
【００５３】
さらに、制御部１５とデジタル信号処理部１４との間のデータの転送速度を低く設定することができることからも、アナログ音声信号への悪影響をなくすことができる。
【００５４】
また、記録時に、フラッシュメモリ１６内の空きブロックをその都度検索しても処理が間に合うため、各ブロックが使用済みか否かの情報を蓄えるメモリを必要としなくて済み、小型化に適し経済的に有利となる。さらに、デジタル圧縮されたデータを一時保管するバッファメモリ１５ａの容量も少なくできるため、このような点でも、小型化に適し経済的に有利となる。
【００５５】
なお、上記した実施の形態では、ブロック番号０のブロックから１ブロックおきにデータを順次記録するようにしたが、これは、１ブロックおきに限らず、２ブロック以上の複数のブロックおきでも良く、要するに、フラッシュメモリ１６内で連続しないブロックにデータを記録していくようにすれば良い。
【００５６】
また、上記した実施の形態においては、記録のために指定されたブロックが既に使用済みであった場合、上記ステップＳ２７ｊの処理により、その使用済みブロックの次のブロックが未使用であるか否かを判別し、未使用であればそのブロックに記録するように動作される。
【００５７】
この場合も、例えば、使用済みブロックの次に２つ以上の空きブロックが連続することを検出し、使用済みブロックの次の次の空きブロックを使用し、使用済みブロックの直後の空きブロックはそのまま残すようにしても良いものである。つまり、空きブロックの検索は、最も若いブロック番号のブロックから開始されることを考慮すると、少しでも若いブロック番号のブロックを空きブロックとして残すことが有用である。
【００５８】
なお、この発明は上記した実施の形態に限定されるものではなく、この外その要旨を逸脱しない範囲で種々変形して実施することができる。
【００５９】
【発明の効果】
以上詳述したようにこの発明によれば、メモリ内の空きブロックの検索を迅速に行ない、特にリアルタイムで得られるデータの記録に好適する情報記録装置及び情報記録方法を提供することができる。
【図面の簡単な説明】
【図１】この発明の実施の形態を示すもので、音声記録再生装置を説明するために示すブロック構成図。
【図２】同実施の形態における音声記録再生装置の記録再生動作を説明するために示すフローチャート。
【図３】同実施の形態における音声記録再生装置の記録再生動作を説明するために示すフローチャート。
【図４】同実施の形態における音声記録再生装置の未使用ブロックの検索動作を説明するために示すフローチャート。
【図５】同実施の形態におけるフラッシュメモリ内の各ブロックの使用、未使用状態を説明するために示す図。
【符号の説明】
１１…マイクロホン、
１２…増幅部、
１３…Ａ／Ｄ変換部、
１４…デジタル信号処理部、
１５…制御部、
１６…フラッシュメモリ、
１７…Ｄ／Ａ変換部、
１８…増幅部、
１９…スピーカ、
２０…操作部、
２１…記録キー、
２２…液晶表示部。
【図１】
2004094625.tif 000003
【図２】
2004094625.tif 000004
【図３】
2004094625.tif 000005
【図４】
2004094625.tif 000006
【図５】
2004094625.tif 000007