(57)【要約】【課題】半導体メモリへの素材データの書き込み中に書き込みエラーが発生した場合でも、正常に運用できる半導体メモリ情報蓄積装置を提供する【解決手段】半導体メモリ情報蓄積装置において、先天性バッドブロックテーブル５と後天性バッドブロックテーブル６とを参照して書き込み可能と判定された蓄積部１の半導体メモリ１１〜１３のブロックに素材データを書き込むようにしている。また、素材データの書き込みの最中に後天性バッドブロックが発生し、書き込みエラーとなった場合には、書き込み補助コントローラ４によりテーブル６を登録・更新し、登録・更新されたテーブル６により半導体メモリ１１〜１３における新たな書き込み可能ブロックを決定することにより、書き込みが中断された素材データの書き込みを新たに決定したブロックで再開するようにしている。【選択図】      図１
2008204114.tif 000002
【特許請求の範囲】
【請求項１】
ページ単位で書き込み可能な不揮発性メモリを情報記憶媒体とする蓄積部と、
前記蓄積部に対する情報データの書き込み・読み出し時に当該情報データを一時的に保存するもので、当該情報データの書き込み時には前記一時保存された情報データを前記蓄積部に出力するバッファ部と、
前記不揮発性メモリに予め存在している先天性バッドブロックのアドレス情報を格納する先天性バッドブロックテーブルと、
前記不揮発性メモリの運用中に発生する後天性バッドブロックのアドレス情報を格納する後天性バッドブロックテーブルと、
前記蓄積部に対して情報データの書き込み・読み出しを行うもので、前記情報データの書き込み時に前記先天性バッドブロックテーブル及び前記後天性バッドブロックテーブルから先天性、後天性それぞれのバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスを決定し、前記バッファ部における前記情報データの保存量が規定量以上になると当該情報データを前記決定されたアドレスに書き込む書き込み／読み出し制御部と
を具備し、
前記蓄積部は、前記書き込み／読み出し制御部によって書き込みが指示された部位に前記情報データの書き込みエラーが生じる場合に、前記書き込み／読み出し制御部に書き込み不能情報及びその部位のアドレスを通知し、
前記書き込み／読み出し制御部は、前記書き込み不能情報及び書き込み不能部位のアドレスに基づいて前記後天性バッドブロックテーブルの内容を登録・更新し、当該登録・更新後の後天性バッドブロックテーブルからバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスに前記情報データを書き込むことを特徴とする半導体メモリ情報蓄積装置。
【請求項２】
前記バッファ部は、書き込み単位が前記不揮発性メモリと同容量で、書き込み不良が発生しないバッファを複数個つなげてなるリングバッファであり、取り込んだ前記映像データを先頭アドレスから最終アドレスまで順次書き込み、最終アドレスまで行くと先頭アドレスに戻ることを特徴とする請求項１に記載の半導体メモリ情報蓄積装置。
【請求項３】
前記蓄積部は、前記不揮発性メモリを複数個備え、互いに並列接続して各メモリに同一データを書き込むことを特徴とする請求項２に記載の半導体メモリ情報蓄積装置。
【請求項４】
ページ単位で書き込み可能な不揮発性メモリを情報記憶媒体とする蓄積部と、前記蓄積部に対する情報データの書き込み・読み出し時に当該情報データを一時的に保存するもので、当該情報データの書き込み時には前記一時保存された情報データを前記蓄積部に出力するバッファ部と、前記不揮発性メモリに予め存在している先天性バッドブロックのアドレス情報を格納する先天性バッドブロックテーブルと、前記不揮発性メモリの運用中に発生する後天性バッドブロックのアドレス情報を格納する後天性バッドブロックテーブルと、前記蓄積部に対して情報データの書き込み・読み出しを行うもので、前記情報データの書き込み時に前記先天性バッドブロックテーブル及び前記後天性バッドブロックテーブルから先天性、後天性それぞれのバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスを決定し、前記バッファ部における前記情報データの保存量が規定量以上になると当該情報データを前記決定されたアドレスに書き込む書き込み／読み出し制御部とを具備する半導体メモリ情報蓄積装置の書き込み不良対策方法であって、
前記蓄積部は、前記書き込み／読み出し制御部によって書き込みが指示された部位に前記情報データの書き込みエラーが生じる場合に、前記書き込み／読み出し制御部に書き込み不能情報及びその部位のアドレスを通知し、
前記書き込み／読み出し制御部は、前記書き込み不能情報及び書き込み不能部位のアドレスに基づいて前記後天性バッドブロックテーブルの内容を登録・更新し、当該登録・更新後の後天性バッドブロックテーブルからバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスに前記情報データを書き込むことを特徴とする半導体メモリ情報蓄積装置の書き込み不良対策方法。
【請求項５】
前記バッファ部は、書き込み単位が前記不揮発性メモリと同容量で、書き込み不良が発生しないバッファを複数個つなげてなるリングバッファであり、取り込んだ前記映像データを先頭アドレスから最終アドレスまで順次書き込み、最終アドレスまで行くと先頭アドレスに戻ることを特徴とする請求項４に記載の半導体メモリ情報蓄積装置の書き込み不良対策方法。
【請求項６】
前記蓄積部は、前記不揮発性メモリを複数個備え、互いに並列接続して各メモリに同一データを書き込むことを特徴とする請求項５に記載の半導体メモリ情報蓄積装置の書き込み不良対策方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリに素材データ等の情報を蓄積する半導体メモリ情報蓄積装置に係り、特に半導体メモリの書き込み不良対策方法に関する。
【背景技術】
【０００２】
半導体メモリを記録媒体として使用する情報蓄積装置は、例えば、複数チャンネル同時マルチアクセスや高速ランダムアクセスが可能となることから、素材データ等の情報コンテンツの記録再生に広く普及されつつある。特に、この半導体メモリ情報蓄積装置は、稼動部分が無いため、信頼性が高いという利点を有する。
【０００３】
上記情報蓄積装置に利用される半導体メモリには、比較的安価で大容量化に優れた不揮発性メモリが用いられている。しかしながら、不揮発性メモリには、出荷時から書き込めない不良部位（先天性バッドブロック）が存在することがあり、さらには同一箇所に書き込みを繰り返し行うことにより不良部位（後天性バッドブロック）が発生することもある。これら不良部位の存在は、半導体メモリにおけるデータの正常な記憶を妨げる要因となっている。
【０００４】
これに対し、従来の半導体メモリ情報蓄積装置では、素材データを正常に蓄積させるため、半導体メモリにおけるバッドブロックを避けてデータを書き込むよう制御している。しかしながら、半導体メモリにおいて後天性バッドブロックは突然発生することがあるため、半導体メモリにおけるバッドブロックを避けて素材データを書き込むようにしても、書き込みの最中にバッドブロックが発生し、書き込み失敗となってしまう場合があった。このため、書き込みに長時間かかる映像データ等を半導体メモリに書き込んでいる最中に書き込みエラーが生じると、再度最初からその映像データを書き込まなければならず、時間の大幅なロスとなってしまっていた。
【０００５】
なお、半導体メモリ情報蓄積装置に搭載されたタイマーにより、半導体メモリへの書き込みを強制停止させ、その続きを他の半導体メモリへ書き込むことで、突然発生する半導体メモリのバッドブロックに起因する書き込みエラーを回避する例もある（例えば、特許文献１参照）。
【特許文献１】特開２００１−３１９４８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
以上のように、従来の不揮発性メモリを用いた半導体メモリ情報蓄積装置は、書き込みの最中にエラーが生じると、再度同じデータを最初から書き込まなくてはならず、情報の書き込みに多大な時間を費やす要因となっていた。
【０００７】
この発明は上記事情によりなされたもので、その目的は、突然の書き込みエラーが生じた場合でも正常に運用できる半導体メモリ情報蓄積装置とその書き込み不良対策方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明は、ページ単位で書き込み可能な不揮発性メモリを情報記憶媒体とする蓄積部と、前記蓄積部に対する情報データの書き込み・読み出し時に当該情報データを一時的に保存するもので、当該情報データの書き込み時には前記一時保存された情報データを前記蓄積部に出力するバッファ部と、前記不揮発性メモリに予め存在している先天性バッドブロックのアドレス情報を格納する先天性バッドブロックテーブルと、前記不揮発性メモリの運用中に発生する後天性バッドブロックのアドレス情報を格納する後天性バッドブロックテーブルと、前記蓄積部に対して情報データの書き込み・読み出しを行うもので、前記情報データの書き込み時に前記先天性バッドブロックテーブル及び前記後天性バッドブロックテーブルから先天性、後天性それぞれのバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスを決定し、前記バッファ部における前記情報データの保存量が規定量以上になると当該情報データを前記アドレスに書き込む書き込み／読み出し制御部とを具備し、前記蓄積部は、前記書き込み／読み出し制御部によって書き込みが指示された部位に前記情報データの書き込みエラーが生じる場合に、前記書き込み／読み出し制御部に書き込み不能情報及びその部位のアドレスを通知し、前記書き込み／読み出し制御部は、前記書き込み不能情報及び書き込み不能部位のアドレスに基づいて前記後天性バッドブロックテーブルの内容を登録・更新し、当該登録・更新後の後天性バッドブロックテーブルからバッドブロックのアドレス情報を読み出してバッドブロックが存在しない部位のアドレスに前記情報データを書き込む。
【０００９】
このようにして、本発明の半導体メモリ情報蓄積装置は、先天性バッドブロックテーブルと後天性バッドブロックテーブルとを参照して書き込み可能と判定された蓄積部の半導体メモリのブロックに、書き込み制御部により情報データを書き込むようにしている。また、情報データの書き込みの最中に後天性バッドブロックが発生し、書き込みエラーとなった場合には、書き込み制御部により後天性バッドブロックテーブルを登録・更新し、半導体メモリの新たな書き込み可能ブロックを決定することにより、書き込みが中断された情報データを新たに決定したブロックに書き込むようにしている。
【発明の効果】
【００１０】
この発明によれば、半導体メモリへの情報データの書き込み中に書き込みエラーが発生した場合、半導体メモリにおける書き込み可能な別の部位を瞬時に割り当てる制御を行うため、突然の書き込みエラーが生じた場合でも正常に運用できる半導体メモリ情報蓄積装置とその書き込み不良対策方法を提供することが可能である。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照しながら本発明の実施の形態について詳細に説明する。なお、実際は、情報データとして映像、音声、静止画が入力されるが、書き込みの最中に生じる書き込みエラーによる時間のロスは、容量の大きなデータを書き込むときに顕著であるため、以下では映像についてのみ述べる。
【００１２】
図１は、本発明の一実施形態に係る半導体メモリ情報蓄積装置の構成を示すブロック図である。図１において、蓄積部１は、それぞれページ単位で書き込み可能な複数（ここでは３個とする）の不揮発性半導体メモリ１１〜１３を並列に接続して構成される。それぞれの半導体メモリに同じ情報のデータを蓄積することにより、いずれかの半導体メモリに後天性バッドブロックが発生した場合でも、残りの半導体メモリに情報データを書き込むことができるようになされている。
【００１３】
この蓄積部１は、リングバッファ２に一時的に保存されている入力映像データを、書き込み／読み出しコントローラ３による書き込みの制御を受けて取り込み、メモリ１１〜１３に書き込む。また、蓄積部１は、書き込み／読み出しコントローラ３の読み出しの制御によりメモリ１１〜１３から読み出された映像データをリングバッファ２に出力する。
【００１４】
さらに、上記蓄積部１は、書き込み時に書き込みエラーが生じた場合に、エラー発生を示すエラー発生情報及びエラーを生じたブロックを特定するアドレス情報を含む書き込みエラー情報を書き込み／読み出しコントローラ３に通知する機能を備える。
【００１５】
上記リングバッファ２は、書き込み単位が半導体メモリと同容量で、書き込み不能が発生しないバッファが複数個つながって構成されており、取り込んだ入力映像データを先頭アドレスから最終アドレスまで順次書き込み、最終アドレスまで行くと先頭アドレスに戻るようになっている。これにより、リングバッファ２は、外部から入力される映像データを内部に書き込み続けることが可能となる。ただし、リングバッファ２が１周して、まだ蓄積部１に書き込めていない映像データを格納しているバッファに映像データを書き込もうとした場合には、リングバッファ２は、外部に書き込みＮＧを出力し、映像データの供給を停止する。
【００１６】
さらに、リングバッファ２は、蓄積部１に映像データを書き込むときに、蓄積されるデータの容量が、半導体メモリ１１〜１３の書き込み単位である１ページを超えると、書き込み／読み出しコントローラ３へリングバッファ２に映像データが蓄積された旨のデータ蓄積信号を出力する。また、読み出し時には、リングバッファ２は、蓄積部１からの情報データを一時保存した後、外部へ出力する機能を有する。
【００１７】
上記書き込み／読み出しコントローラ３は、蓄積部１に対して入力映像データの書き込み／読み出しを制御するもので、書き込み制御の際にはリングバッファ２からデータ蓄積信号に従い、書き込み制御を開始し、書き込み補助コントローラ４からの指示に従い、書き込みアドレスを制限する。
【００１８】
また、蓄積部１から書き込みエラー情報の通知を受けたときには、蓄積部１への書き込み制御を中止し、エラー情報を書き込み補助コントローラ４に転送する。そして、再度入力される書き込み補助コントローラ４からの指示に従い、書き込みアドレスを制限し、リングバッファ２に溜まった映像データを書き込むべく蓄積部１に対する書き込み制御を再開する。
【００１９】
上記書き込み補助コントローラ４は、先天性バッドブロックテーブル５及び後天性バッドブロックテーブル６を管理する。ここで、先天性バッドブロックテーブル５は、上記蓄積部１を構成するメモリ１１〜１３に予め存在しているバッドブロック（先天性バッドブロック）のアドレス情報を格納する。また、後天性バッドブロックテーブル６は、上記蓄積部１の運用中にメモリ１１〜１３に発生する後天性バッドブロックのアドレス情報を格納する。
【００２０】
上記書き込み補助コントローラ４は、データ書き込み時に各テーブル５，６を参照してそれぞれに格納されるアドレス情報以外、すなわちバッドブロックになっていない部位のアドレス情報を書き込みアドレスとして発生するように、上記書き込み／読み出しコントローラ３に指示する。また、書き込み／読み出しコントローラ３からエラー発生情報の通知を受けたとき、その情報に示されるアドレス情報を後天性バッドブロックとして把握し、後天性バッドブロックテーブル６に登録またはその登録内容を更新する。そして、登録・更新後の後天性バッドブロックテーブル６を再度参照し、書き込み可能アドレスを発生するよう書き込み／読み出しコントローラ３に指示する。
【００２１】
次に、上記構成による半導体メモリ情報格納装置において、図２を参照して上記書き込み／読み出しコントローラ３及び書き込み補助コントローラ４による制御部の処理動作を説明する。
【００２２】
図２は、本実施形態に係る書き込み／読み出しコントローラ３及び書き込み補助コントローラ４による制御部が、蓄積部１へ映像データを書き込み際の処理動作を示すフローチャートである。
【００２３】
まず、外部からの入力映像データの書き込み指示を受けると（ステップＳＴ２ａ）、書き込み補助コントローラ４は、予め要された先天性バッドブロックテーブル５を参照してメモリ１１〜１３それぞれにおける先天性バッドブロックのアドレスを読み出し（ステップＳＴ２ｂ）、このアドレスで示すブロック以外のブロックが書き込み可能であるものとし、書き込み可能ブロックのアドレスを書き込み／読み出しコントローラ３に通知する（ステップＳＴ２ｃ）。次に後天性バッドブロックテーブル６から後天性バッドブロックのアドレスを読み出し（ステップＳＴ２ｄ）、このアドレスで示すブロック以外のブロックが書き込み可能であるものとし、書き込み可能ブロックのアドレスを書き込み／読み出しコントローラ３に通知する（ステップＳＴ２ｅ）。
【００２４】
続いて、書き込み／読み出しコントローラ３は、リングバッファ２からのデータ蓄積信号の有無を判断する（ステップＳＴ２ｆ）。データ蓄積信号があった場合（ステップＳＴ２ｆのＹｅｓ）、リングバッファ２に蓄積された１ページ分の映像データを、メモリ１１〜１３の書き込み可能ブロックに書き込む（ステップＳＴ２ｇ）。ここで蓄積部１から書き込みエラー情報通知の有無を判断し（ステップＳＴ２ｈ）、通知が無ければ（ステップＳＴ２ｈのＮｏ）書き込み処理を終了する。
【００２５】
また、一部のメモリで書き込みエラーが発生し、書き込み／読み出しコントローラ３にエラー情報の通知があった場合には（ステップＳＴ２ｈのＹｅｓ）、書き込み補助コントローラ４は、エラー発生ブロックのアドレス情報の登録・更新を行う（ステップＳＴ２ｉ）。次に、書き込み補助コントローラ４は、更新された後天性バッドブロックテーブル６から後天性バッドブロックのアドレスを読み出し（ステップＳＴ２ｊ）、書き込み可能ブロックのアドレスを書き込み／読み出しコントローラ３に再度通知する（ステップＳＴ２ｋ）。
【００２６】
書き込み／読み出しコントローラ３は、リングバッファ２に蓄積された映像データを、メモリ１１〜１３の書き込み可能ブロックに書き込み（ステップＳＴ２ｌ）、その処理動作をＳＴ２ｈに進める。
【００２７】
以上のように、上記一実施形態では、先天性バッドブロックテーブル５と後天性バッドブロックテーブル６とを参照して書き込み可能と判定されたブロックに映像データを書き込むようにしている。また、映像データの書き込みの最中に後天性バッドブロックが発生し、書き込みエラーとなった場合には、書き込み補助コントローラ４により後天性バッドブロックテーブル６を登録・更新し、これを参照することで半導体メモリ１１〜１３における新たな書き込み可能ブロックを決定し、書き込みが中断された映像データの書き込みを新たに決定したブロックで再開するようにしている。
【００２８】
したがって、半導体メモリへの書き込みの最中に書き込みエラーが生じた場合、後天性バッドブロックテーブル６を更新し、新たな書き込み可能ブロックを決定し、そのブロックに書き込み途中のデータを瞬時に書き込むため、装置の外部から見ると、後天性バッドブロックにより書き込みができなかった場合でも、正常に半導体メモリへの書き込みができる。これにより、映像データを書き込んでいる最中に、書き込みエラーが生じても、再度その素材データを最初から書き込む必要がなくなり、時間のロスを回避することが可能となる。
【００２９】
なお、この発明は上記一実施形態に限定されるものではない。例えば上記一実施形態では、３個の半導体メモリを並列に接続して情報データを蓄積する例について説明したが、半導体メモリが３個でない場合（単数を含む）であっても同様に実施可能である。
【００３０】
さらに、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００３１】
【図１】本発明に係る半導体メモリ情報蓄積装置の一実施形態の構成を示すブロック図。
【図２】上記一実施形態の書き込み／読み出しコントローラ及び書き込み補助コントローラが映像データを蓄積部に書き込む際の処理動作を示すフローチャート。
【符号の説明】
【００３２】
１…蓄積部、１１，１２，１３…半導体メモリ、２…リングバッファ、３…書き込み／読み出しコントローラ、４…書き込み補助コントローラ、５…先天性バッドブロックテーブル、６…後天性バッドブロックテーブル。
【図１】
2008204114.tif 000003
【図２】
2008204114.tif 000004