(57)【要約】【課題】データの転送処理中であっても、緊急停止要求に基づいてデータを確実に保護し、信頼性を大幅に向上する。【解決手段】メモリカードなどからなるデータ記憶装置１であって、データのリード／ライト転送処理中に、ホストの情報処理装置ＰＣから緊急停止を要求する緊急停止信号が入力されると、コントローラ制御回路４は直ちに転送処理を中止し、リードデータ転送終了を情報処理装置ＰＣに対して通知する。このとき、リードデータ転送終了の通知は、正常終了、または異常終了のいずれであってもよい。リードデータ転送終了を情報処理装置ＰＣに対して通知した後、再び情報処理装置ＰＣからリードデータの転送要求があっても、コントローラ２はデータを転送することなく、リードデータの転送不可能を情報処理装置ＰＣに対して通知する。【選択図】      図１
2004240820.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の半導体メモリと、動作プログラムに基づいて前記１つ以上の半導体メモリに格納されたデータを読み出し、所定の処理やデータの書き込み動作指示などを行う情報処理部とを備えた記憶装置であって、
前記情報処理部は、外部から緊急停止信号が入力されると、処理中の動作を停止するとともに、外部からのすべての処理要求に応答しない無応答状態となることを特徴とする記憶装置。
【請求項２】
請求項１記載の記憶装置において、前記情報処理部における無応答状態は、前記記憶装置の再起動により解除されることを特徴とする記憶装置。
【請求項３】
１つ以上の半導体メモリと、動作プログラムに基づいて前記１つ以上の半導体メモリに格納されたデータを読み出し、所定の処理やデータの書き込み動作指示などを行う情報処理部とを備えを備えた記憶装置であって、
前記情報処理部は、
外部電源電圧から内部電源電圧を生成し、前記半導体メモリ、および前記情報処理部に供給する電源電圧部と、
前記電源電圧部が生成した内部電源電圧が任意の電圧レベルになるとパワーオンリセット信号を出力する第１の電圧監視部と、
外部電源電圧が任意の電圧レベルになると緊急停止信号を出力する第２の電圧監視部とを設け、
前記情報処理部は、前記第２の電圧監視部から出力された緊急停止信号を受けると、処理中の動作を停止するとともに外部からのすべての処理要求に応答しない無応答状態となり、前記第１の電圧監視部から出力されたパワーオンリセット信号を受けると、リセット処理を行うことを特徴とする記憶装置。
【請求項４】
１つ以上の半導体メモリと、動作プログラムに基づいて前記１つ以上の半導体メモリに格納されたデータを読み出し、所定の処理やデータの書き込み動作指示などを行う情報処理部とを備えを備えた記憶装置であって、
前記情報処理部は、
補助用の電源電圧を供給する電源供給部と、
外部電源電圧が任意の電圧レベルになると緊急停止信号を出力するとともに、前記外部電源電圧から前記電源供給部の電源電圧に切り替えて、前記半導体メモリ、および前記情報処理部に供給する電源切替部と、
前記外部電源電圧が任意の電圧レベルになるとパワーオンリセット信号を出力する第１の電圧監視部とを設け、
前記情報処理部は、前記電源切替部から出力された緊急停止信号を受けると、処理中の動作を停止するとともに外部からのすべての処理要求に応答しない無応答状態となり、前記第１の電圧監視部から出力されたパワーオンリセット信号を受けるとリセット処理を行うことを特徴とする記憶装置。
【請求項５】
請求項１〜４のいずれか１項に記載の記憶装置において、前記緊急停止信号がリード、またはライト動作時のデータ転送処理中に入力された場合、前記情報処理部は、データ転送処理を安全終了させた後に前記無応答状態となることを特徴とする記憶装置。
【請求項６】
請求項１〜５のいずれか１項に記載の記憶装置において、前記情報処理部は、前記無応答状態となった際に外部接続されたホストに対して終了通知、エラー通知、あるいはビジー通知のいずれかを通知することを特徴とする記憶装置。
【請求項７】
１つ以上の半導体メモリと、動作プログラムに基づいて前記１つ以上の半導体メモリに格納されたデータを読み出し、所定の処理やデータの書き込み動作指示などを行う情報処理部とを備えた記憶装置であって、
前記情報処理部は、誤データの転送モードを設定する転送機能設定データを記憶する転送モード記憶部を有し、リード／ライト動作時のデータ転送処理の際に前記転送モード記憶部の転送機能設定データを参照し、前記転送機能設定データの誤データ転送機能が有効に設定されている際には、転送データに誤データが含まれていても転送処理を実行することを特徴とする記憶装置。
【請求項８】
請求項７記載の記憶装置において、
前記転送モード記憶部が、レジスタよりなり、外部入力されるコマンドによって前記転送機能設定データが設定されることを特徴とする記憶装置。
【請求項９】
請求項７記載の記憶装置において、
前記転送モード記憶部は、前記半導体メモリの一部の記憶領域からなり、
前記情報処理部は、データ転送の際に前記半導体メモリの記憶領域に記憶された転送機能設定データを参照し、誤データ転送機能が有効に設定されているデータの場合に、転送データに誤データが含まれていても転送処理を実行することを特徴とする記憶装置。
【請求項１０】
請求項７または８記載の記憶装置において、
前記情報処理部は、誤データの訂正を行うエラーデータ検出訂正部を備え、
前記エラーデータ検出訂正部は、前記転送データに誤データが含まれているか否かを検出し、誤データが含まれている際に前記誤データが訂正可能であれば、前記誤データを訂正して転送し、前記誤データが訂正不可の際には、前記誤データを訂正せずに転送することを特徴とする記憶装置。
【請求項１１】
１つ以上の半導体メモリと、動作プログラムに基づいて前記１つ以上の半導体メモリに格納されたデータを読み出し、所定の処理やデータの書き込み動作指示などを行う情報処理部とを備えた記憶装置であって、
前記半導体メモリからの読み出しの際、前記半導体メモリから読み出したデータにエラーが含まれているか否かを判定するエラー判定部を有し、
前記半導体メモリから読み出したデータを前記エラー判定部でエラーの有無の判定を行い出力する第１読み出し動作と、エラーの有無の判定を行わず出力する第２読み出し動作とを有することを特徴とする記憶装置。
【請求項１２】
請求項１１の記憶装置において、
前記エラー判定部はエラー訂正機能を有し、
前記第１読み出し動作において前記半導体メモリから読み出したデータにエラーが含まれていることが検出された場合、前記エラー訂正機能によりエラー訂正を行うことを特徴とする記憶装置。
【請求項１３】
請求項１２の記憶装置において、
前記第１読み出し動作において、前記エラー判定部は前記半導体メモリから読み出したデータに検出されたエラーが前記エラー訂正機能により訂正可能である場合は訂正を行い、所定時間内でのエラー訂正が不可能である場合はエラー訂正を行わないことを特徴とする記憶装置。
【請求項１４】
請求項１３の記憶装置において、
前記第１読み出し動作において、前記エラー判定部は前記半導体メモリから読み出したデータに所定時間内でのエラー訂正が不可能なエラーを検出した場合、前記半導体メモリから読み出したデータをエラー訂正を行わずに出力することを特徴とする記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置における信頼性の向上技術に関し、特に、不揮発性半導体メモリを用いて構成された記憶装置におけるデータ保護に適用して有効な技術に関するものである。
【０００２】
【従来の技術】
パーソナルコンピュータや多機能端末機などの外部記憶メディアとして、たとえば、ＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ）カード、スマートメディア、メモリスティックやマルチメディアカードなどの記憶装置が広く知られている。
【０００３】
このような記憶装置におけるデータのリード／ライト処理では、該メモリカードへのデータの格納に際し、音声データや映像データについては書き込みエラーが発生した場合であっても再書き込みは行わず、連続して受け取るデータを順次書き込むことでデータのオーバフローを防止し、ＦＡＴデータなどのデータに関しては書き込みエラーが発生した場合に代替領域の検索を行いデータの再書き込みを行うものがある（たとえば、特許文献１参照）。
【０００４】
また、ホストが記憶装置から、壊れているデータのリード転送要求を行った場合、該記憶装置にＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）などの訂正機能があり、かつ訂正可能であれば、該記憶装置はデータを訂正して記憶装置への書き換えた後ホストへの転送を行う。
【０００５】
さらに、データの訂正が不可能であるか、または記憶装置にパリティチェックなどの誤り検出機能が備えられている場合には、エラーをホストに通知して処理が終了となる。
【０００６】
【特許文献１】
特願２００１−３３４２４３号公報
【０００７】
【発明が解決しようとする課題】
ところが、上記のような記憶装置のリード／ライト処理技術では、次のような問題点があることが本発明者により見い出された。
【０００８】
たとえば、パーソナルコンピュータなどのホストからデータのリード／ライト処理が行われている際に、何らかの理由によって外部電源電圧が不安定になると誤リード、あるいは誤ライトが発生してしまう恐れがある。
【０００９】
この場合、ホストから記憶装置に対してデータ転送処理の中断するリセット処理によってデータのリード／ライト処理を中断することはできるが、該リセット処理が終了すると電源電圧が不安定であっても、ホストはリード／ライト処理を再び受け付けてしまうために、誤リード／誤ライトが発生してしまうという問題がある。
【００１０】
また、ホストに異常動作が発生した場合、該ホストの異常を記憶装置に通知することができないために、誤ったデータの書き換え処理であっても記憶装置に誤データが記憶されてしまうという問題がある。
【００１１】
記憶装置がＥＣＣなどによってデータの訂正を行う場合、データ訂正に伴う処理時間が長くなってしまい、ホストの待ち時間などが大きくなってしまい、リアルタイム性を損なう恐れがある。
【００１２】
さらに、音声データや画像データなどでは大量のデータを転送する必要があるので、エラーを通知するよりも多少の誤データ（たとえば、音声の途切れや画像のノイズなど）が含まれていても該データを連続して途切れなく転送することを要求されることがある。
【００１３】
本発明の目的は、データの転送処理中であっても、緊急停止要求に基づいてデータを確実に保護し、信頼性を大幅に向上することのできる記憶装置を提供することにある。
【００１４】
また、本発明の他の目的は、データに応じてエラー訂正を行うか否かを判断し、効率よくデータ転送を行うことのできる記憶装置を提供することにある。
【００１５】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【００１６】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
（１）１つ以上の半導体メモリと、情報処理部とを備えた記憶装置であって、該情報処理部は、外部から緊急停止信号が入力されると、処理中の動作を停止するとともに、外部からのすべての処理要求に応答しない無応答状態となるものである。
【００１７】
また、本願のその他の発明の概要を簡単に示す。
（２）１つ以上の半導体メモリと、情報処理部とを備えた記憶装置であって、該情報処理部は、誤データの転送モードを設定する転送機能設定データを記憶する転送モード記憶部を有し、情報処理部は、リード／ライト動作時のデータ転送処理の際に転送モード記憶部の転送機能設定データを参照し、転送機能設定データの誤データ転送機能が有効に設定されている際には、転送データに誤データが含まれていても転送処理を実行するものである。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１９】
（実施の形態１）
図１は、本発明の実施の形態１によるデータ記憶装置のブロック図、図２は、図１のデータ記憶装置におけるリードデータ転送中の緊急停止要求処理のフローチャート、図３は、図１のデータ記憶装置におけるライトデータ転送中に緊急停止信号が発行された際のフローチャート、図４は、図１のデータ記憶装置によるライトデータ転送中に緊急停止信号が発行された際のフローチャート、図５は、図１のデータ記憶装置に供給される電源電圧のシーケンス図、図６は、本発明の実施の形態１によるデータ記憶装置におけるリセット信号の接続例を示したブロック図、図７は、図６のデータ記憶装置におけるリセット信号と緊急停止信号とのシーケンス図、図８は、本発明の実施の形態１によるデータ記憶装置におけるリセット信号の他の接続例を示したブロック図、図９は、図８のデータ記憶装置を用いた信号処理の説明図である。
【００２０】
本実施の形態１において、データ記憶装置１は、たとえば、フラッシュメモリなどを用いて構成されたメモリカードからなり、ホストである情報処理装置ＰＣの外部記憶メディアとして用いられる。情報処理装置ＰＣは、パーソナルコンピュータや多機能端末機などからなる。
【００２１】
データ記憶装置（記憶装置）１は、図１に示すように、コントローラ（情報処理部）２、およびＭ個の半導体メモリ３から構成される。ここでは、半導体メモリ３がＭ個設けられた構成としたが、該半導体メモリは１つ以上であればよい。
【００２２】
コントローラ２は、動作プログラムに基づいて半導体メモリ３に格納されたプログラムやデータなどを読み出し、所定の処理やデータの書き込み動作指示などを行う。
【００２３】
半導体メモリ３は、たとえば、フラッシュメモリなどの不揮発性半導体メモリから構成されている。なお、半導体メモリ３は、フラッシュメモリ以外であってもよく、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）、ＭＲＡＭ（Ｍａｇｎｅｔｒｏｒｅｓｉｓｔｉｖｅ  ＲＡＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などのデータを記憶できるメモリであればよい。
【００２４】
本発明の実施の形態では、コントローラとメモリとを分離しているが、その２つおよび周辺部品を１つにした混載半導体としても構わない。
【００２５】
コントローラ２と半導体メモリ３とは、半導体メモリバスＭＢを介して相互に接続されている。また、コントローラ２は、コントローラ制御回路４、ならびに入出力回路５などから構成されている。コントローラ制御回路４は、入出力回路５の制御を司り、該入出力回路５は、半導体メモリ３と情報処理装置ＰＣとのデータのやり取りの制御を行う。
【００２６】
さらに、情報処理装置ＰＣとコントローラ２とは、情報処理装置バスＰＣＢを介して相互に接続されている。この情報処理装置バスＰＣＢは、機械的結合手段を有し、電気的に接続される接触タイプ、あるいは電波などの情報伝送媒体によって情報を伝達する非接触タイプのいずれであってもよい。
【００２７】
コントローラ２のコントローラ制御回路４には、信号線Ｓが接続されている。この信号線Ｓも機械的結合手段を有し、電気的に接続される接触タイプ、あるいは電波などの情報伝送媒体によって情報を伝達する非接触タイプのいずれであってもよい。
【００２８】
この信号線Ｓを介して該コントローラ制御回路４に外部から緊急停止信号が入力される。コントローラ２は、緊急停止信号を受け取るとリード／ライト動作時におけるデータ転送処理を中止する。
【００２９】
次に、本実施の形態におけるデータ記憶装置１の作用について説明する。
【００３０】
始めに、データ記憶装置１におけるリードデータ転送中の緊急停止要求処理について、図２のフローチャートを用いて説明する。
【００３１】
まず、情報処理装置ＰＣからコントローラ２に対してデータ０〜Ｎのリード転送要求があると（ステップＳ１０１）、該コントローラ２は、半導体メモリ３に対してデータ０〜Ｎ（図１）のリード転送要求を行った後（ステップＳ１０２）、情報処理装置ＰＣにリードデータ転送通知を行う（ステップＳ１０３）。
【００３２】
このリードデータ転送通知により、半導体メモリ３のデータがリードされ、コントローラ２を介して情報処理装置ＰＣにデータ０から順次、データが転送される（ステップＳ１０４）。
【００３３】
このステップＳ１０４の処理中に、たとえば、情報処理装置ＰＣにデータＫまでのリード転送が終了した際に緊急停止を要求する緊急停止信号が信号線Ｓを介して入力されると（ステップＳ１０５）、コントローラ制御回路４は緊急停止信号を受けて直ちに転送処理を中止し、リードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ１０６）。このとき、リードデータ転送終了の通知は、正常終了、または異常終了のいずれであってもよい。
【００３４】
リードデータ転送終了を情報処理装置ＰＣに対して通知した後、再び情報処理装置ＰＣからリードデータの転送要求があっても（ステップＳ１０７）、コントローラ２はデータを転送することなく、リードデータの転送不可能を情報処理装置ＰＣに対して通知する（ステップＳ１０８）。
【００３５】
次に、データ記憶装置１におけるライトデータ転送中に緊急停止信号が発行された際の処理動作について、図３のフローチャートを用いて説明する。
【００３６】
情報処理装置ＰＣからコントローラ２にデータ０〜Ｎのライト転送要求があると（ステップＳ２０１）、該コントローラ２は、半導体メモリ３に対してデータ０〜Ｎのライト転送要求を行う（ステップＳ２０２）。その後、情報処理装置ＰＣにライトデータ転送通知を行う（ステップＳ２０３）。
【００３７】
このライトデータ転送通知により、情報処理装置ＰＣから半導体メモリ３に対してライトデータが順次転送される（ステップＳ２０４）。
【００３８】
そして、ステップＳ２０４の処理中において、たとえば、データＫまでのライトデータ転送が終了した際に緊急停止を要求する緊急停止信号が信号線Ｓを介して入力されると（ステップＳ２０５）、コントローラ制御回路４はこの緊急停止信号を受けて直ちに転送処理を中止し、ライトデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ２０６）。この場合も、ライトデータ転送終了の通知は、正常終了、または異常終了のいずれであってもよい。
【００３９】
ライトデータ転送終了を情報処理装置ＰＣに対して通知した後、再び情報処理装置ＰＣからデータ０〜Ｎのライト転送要求があっても（ステップＳ２０７）、コントローラ２はデータを転送することなく、ライトデータの転送不可能を情報処理装置ＰＣに対して通知する（ステップＳ２０８）。
【００４０】
次に、データ記憶装置１によるライトデータ転送中に緊急停止信号が発行された際の他の処理動作例を図４のフローチャートを用いて説明する。
【００４１】
情報処理装置ＰＣがコントローラ２にデータ０〜Ｎのライト転送要求を行うと（ステップＳ３０１）、該コントローラ２は、半導体メモリ３に対してデータ０〜Ｎのライト転送要求を行い（ステップＳ３０２）、続いて情報処理装置ＰＣにライトデータ転送通知を行う（ステップＳ３０３）。
【００４２】
このライトデータ転送通知により、情報処理装置ＰＣから半導体メモリ３に対してライトデータが順次転送される（ステップＳ３０４）。
【００４３】
このステップＳ３０４の処理中において、たとえば、データＫまでのライトデータ転送が終了した際に緊急停止を要求する緊急停止信号が信号線Ｓを介して入力されると（ステップＳ３０５）、コントローラ制御回路４はこの緊急停止信号を受けて直ちに転送処理を中止し、情報処理装置ＰＣに対してビジー通知を行い（ステップＳ３０６）、情報処理装置ＰＣから次のコマンドが送信されないようにする。
【００４４】
なお、図４においては、ライト転送時の処理について記載したが、リード転送時においても同様の処理を行う。
【００４５】
図５は、緊急停止信号による緊急停止要求後のデータ記憶装置１に供給される電源電圧のシーケンス例を示した図である。
【００４６】
図５においては、上方から下方にかけて、緊急停止信号、外部電源電圧ＶＣＣ、およびデータ記憶装置１に入力されるコントローラステータスのそれぞれのシーケンスを示している。
【００４７】
まず、データ記憶装置１のアイドル時に情報処理装置ＰＣからデータ転送要求があると、それに基づいてデータ記憶装置１がデータ転送処理を行う。そのデータ転送処理中において、アクティブ（Ｌｏｗレベル）の緊急停止信号が入力されると、データ記憶装置１が中断処理を実行し、いかなる処理も受け付けない処理受け付け不可状態となる。
【００４８】
この処理受け付け不可状態は、データ記憶装置１の電源電圧ＶＣＣをＬｏｗレベル（電源電圧ＶＣＣをＯＦＦ）とし、再び外部電源電圧をＯＮすることにより、データ記憶装置１のリセット処理が行われて解除される。
【００４９】
また、図６は、データ記憶装置１に対して情報処理装置ＰＣがパワーオンリセット信号を送信する場合の接続例を示したブロック図である。
【００５０】
この場合、情報処理装置ＰＣとデータ記憶装置１間には、該情報処理装置ＰＣから出力されるリセット信号線ＲＳが入力されるように接続されている。
【００５１】
図７は、図６のデータ記憶装置１におけるパワーオンリセット信号と緊急停止信号との動作処理の違いを示したシーケンス図である。
【００５２】
図７においては、上方から下方にかけて、緊急停止信号、外部電源電圧ＶＣＣ、およびデータ記憶装置１に入力されるコントローラステータスのそれぞれのシーケンスを示している。
【００５３】
緊急停止信号による動作処理は図５の動作処理と同様である。また、情報処理装置ＰＣからパワーオンリセット信号が入力された場合、アクティブ（Ｌｏｗレベル）のパワーオンリセット信号が入力されると、データ記憶装置１はリセット処理の後、アイドル状態となり再びデータ転送処理などの受付を開始する。
【００５４】
つまり、データ記憶装置１は、リセット処理後はアイドル状態となり、情報処理装置ＰＣのデータ転送処理を受け付けるが、緊急停止信号による緊急停止処理後においては、データ転送処理を受け付けない。
【００５５】
このため、データ転送処理中などにおいて、外部電源電圧レベルが不安定なった場合などに緊急停止信号によって緊急停止処理を行うことにより、データ記憶装置１のデータを保護することができる。
【００５６】
ここで、データ記憶装置１に入力される緊急停止信号は、図８に示すように、情報処理装置ＰＣから出力される構成としてもよい。この場合、情報処理装置ＰＣから出力される緊急停止信号は、信号線Ｓ１を介してデータ記憶装置１に入力される。
【００５７】
このように、情報処理装置ＰＣから緊急停止信号が出力される構成は、たとえば、図９に示すように、情報処理装置ＰＣがマルチタスク（タスクＡ，Ｂ）であるときに有効である。
【００５８】
タスクＡがデータ記憶装置１を占有している際に、該データ記憶装置１のデータを保護する必要が発生した場合、タスクＢが情報処理装置バスＰＣＢとは別にＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）ポートなどを介してデータ記憶装置１に緊急停止信号を出力することができる。
【００５９】
次に、図１０は、データ記憶装置１ａにおける他の例を示すブロック図である。
【００６０】
この場合、データ記憶装置１ａは、図１のデータ記憶装置１に、電源安定化ＩＣ（電源電圧部）６、電圧監視ＩＣ７，８が新たに設けられた構成となっている。
【００６１】
電源安定化ＩＣ６は、外部入力された外部電源電圧ＶＣＣから内部電源電圧ＶＤＤを生成し、内部電源線ＮＳを介してコントローラ２、半導体メモリ３、および電圧監視ＩＣ（第１の電圧監視部）７にそれぞれ供給する。
【００６２】
電圧監視ＩＣ７は、電源安定化ＩＣ６が生成した内部電源電圧ＶＤＤの電圧レベルを監視し、異常がある場合にパワーオンリセット信号をコントローラ制御回路４に対して出力する。電圧監視ＩＣ（第２の電圧監視部）８には外部電源電圧ＶＣＣが供給されており、該外部電源電圧ＶＣＣに異常がある場合に緊急停止信号をコントローラ制御回路４に対して出力する。
【００６３】
このデータ記憶装置１ａにおける動作について、図１１のシーケンス図を用いて説明する。
【００６４】
この図１１においては、上方から下方にかけて、外部電源電圧ＶＣＣ、内部電源電圧ＶＤＤ、電圧監視ＩＣ７から出力されるパワーオンリセット信号、電圧監視ＩＣ８から出力される緊急停止信号、ならびにデータ記憶装置１に入力されるコントローラステータスのそれぞれのシーケンスを示している。
【００６５】
この図では、外部電源電圧ＶＣＣが、正規の電圧レベル（ＶＣＣレベル）からＧＮＤ（基準電位）レベルまで低下し、再びＶＣＣレベルまで復帰している。
【００６６】
まず、データ記憶装置１ａがデータ転送処理中に、外部電源電圧ＶＣＣがある電圧レベルまで低下すると、電圧監視ＩＣ８は、外部電源電圧ＶＣＣの電圧低下を検出して緊急停止信号をコントローラ制御回路４に対して出力する。
【００６７】
この緊急停止信号を受けて、データ記憶装置１ａは中断処理を実行し、いかなる処理も受け付けない処理受け付け不可状態となる。
【００６８】
その後も、外部電源電圧ＶＣＣの電圧レベルが低下すると、それに伴い内部電源電圧ＶＤＤも低下し、電圧監視ＩＣ７が電圧低下を検出してパワーオンリセット信号をコントローラ制御回路４に出力し、続いて外部電源電圧ＶＣＣがＧＮＤレベルとなる。
【００６９】
再び、外部電源電圧ＶＣＣの電圧レベルが上昇すると、それに伴って内部電源電圧ＶＤＤの電圧レベルも上昇する。電圧監視ＩＣ７は内部電源電圧ＶＤＤがある電圧レベル以上になるとパワーオンリセット信号を解除（Ｈｉｇｈレベル）し、データ記憶装置１ａのリセット処理が行われる。
【００７０】
続いて、リセット処理中において、電圧監視ＩＣ８は外部電源電圧ＶＣＣがある電圧レベル以上になると電圧監視ＩＣ８は緊急停止信号をインアクティブ（Ｈｉｇｈレベル）にする。
【００７１】
ここで、リセット処理中においては、緊急停止信号が無視されているので、電源立ち上げ後、リセット処理が終了するとデータ記憶装置１ａはアイドル状態となる。
【００７２】
また、図１２のデータ記憶装置１ｂは、電源安定化ＩＣ６（図１０）の代わりに大容量のコンデンサ（電源供給部）９を設けた場合のブロック図である。
【００７３】
この場合、内部電源線ＮＳ間にコンデンサ９が接続されており、該内部電源線ＮＳよって内部電源電圧ＶＤＤ（＝外部電源電圧ＶＣＣ）がコントローラ２、半導体メモリ３、および電圧監視ＩＣ７に供給されている。電圧監視ＩＣ７は、内部電源線ＮＳを介さずに直接外部電源電圧ＶＣＣが供給されている。ここで、コンデンサ９の代わりにバッテリなどを内部電源線ＮＳに接続するようにしてもよい。
【００７４】
図１３は、データ記憶装置１ｂにおける動作例を示すシーケンス図である。
【００７５】
図１３においては、上方から下方にかけて、外部電源電圧ＶＣＣ、内部電源線ＮＳを介して供給される内部電源電圧ＶＤＤ、電圧監視ＩＣ７から出力されるパワーオンリセット信号、電圧監視ＩＣ８から出力される緊急停止信号、ならびにデータ記憶装置１ｂに入力されるコントローラステータスのそれぞれのシーケンスを示している。
【００７６】
データ記憶装置１ｂがデータ転送処理中に、外部電源電圧ＶＣＣがある電圧レベルまで低下すると、電圧監視ＩＣ８が緊急停止信号をコントローラ制御回路４に対して出力する。この緊急停止信号を受けて、データ記憶装置１ｂは中断処理を実行し、処理受け付け不可状態となる。
【００７７】
このとき、内部電源線ＮＳにはコンデンサ９が接続されているので、該内部電源線ＮＳを介して供給される内部電源電圧ＶＤＤは、外部電源電圧ＶＣＣよりもゆっくりと低下していくことになる。
【００７８】
そして、電圧監視ＩＣ７が内部電源電圧ＶＤＤの電圧低下を検出してパワーオンリセット信号をコントローラ制御回路４に出力する。再び、外部電源電圧ＶＣＣがＧＮＤレベルから上昇すると、電圧監視ＩＣ８は外部電源電圧ＶＣＣがある電圧レベル以上になると緊急停止信号をインアクティブ（Ｈｉｇｈレベル）にする。
【００７９】
その後、内部電源電圧ＶＤＤがあるレベル以上になると、電圧監視ＩＣ７はパワーオンリセット信号を解除（Ｈｉｇｈレベル）し、データ記憶装置１ｂのリセット処理が行われ、該データ記憶装置１ｂがアイドル状態になる。
【００８０】
図１４は、他の構成例を示したデータ記憶装置１ｃのブロック図である。
【００８１】
この場合、データ記憶装置１ｃは、電圧監視ＩＣ８の代わりに緊急停止信号を出力する電源切替ＩＣ（電源切替部）１０が新たに設けられた点が、データ記憶装置１ｂ（図１２）と異なっている。
【００８２】
電源切替ＩＣ１０は、外部電源電圧ＶＣＣの電圧レベルを監視し、ある電圧レベル以下になると、内部電源線ＮＳを介した内部電源電圧ＶＤＤの供給元をコンデンサ９に切り替えるとともに、緊急停止信号をコントローラ制御回路４に対して出力する。ここでも、コンデンサ９は、大容量コンデンサではなく、バッテリなどであってもよい。
【００８３】
図１５は、データ記憶装置１ｃの動作例を示すシーケンス図である。
【００８４】
図１５においては、上方から下方にかけて、外部電源電圧ＶＣＣ、内部電源線ＮＳを介して供給される内部電源電圧ＶＤＤ、電圧監視ＩＣ７から出力されるパワーオンリセット信号、電源切替ＩＣ１０から出力される緊急停止信号、ならびにデータ記憶装置１に入力されるコントローラステータスのそれぞれのシーケンスを示している。
【００８５】
データ記憶装置１ｃがデータ転送処理中に、外部電源電圧ＶＣＣが低下すると、電源切替ＩＣ１０が、電源供給元を外部電源電圧ＶＣＣからコンデンサ９に切り替える。これにより、データ記憶装置１ｃは、外部電源電圧ＶＣＣの影響を受けることを少なくすることができる。
【００８６】
また、電源切替ＩＣ１０は緊急停止信号をコントローラ制御回路４に対して出力するとともに、電圧監視ＩＣ７がパワーオンリセット信号をコントローラ制御回路４に対して出力する。コントローラ２は、緊急停止信号を受けて中断処理を実行し、処理受け付け不可状態となる。
【００８７】
その後、外部電源電圧ＶＣＣがあるレベル以上になると、電源切替ＩＣ１０がパワーオンリセット信号を解除（Ｈｉｇｈレベル）するとともに、電圧監視ＩＣ７が緊急停止信号をインアクティブ（Ｈｉｇｈレベル）とする。
【００８８】
これによって、データ記憶装置１ａのリセット処理が行われ、データ記憶装置１ｂがアイドル状態になる。
【００８９】
図１６は、緊急停止信号と外部リセット信号とを兼用した場合の一例を示すデータ記憶装置１ｄのブロック図である。
【００９０】
データ記憶装置１ｄは、データ記憶装置１（図１）の構成に、ＡＮＤ（論理積）回路１１を新たに設けた構成となる。
【００９１】
このＡＮＤ回路１１の一方の入力部には緊急停止信号が入力され、他方の入力部には情報処理装置ＰＣから出力される外部リセット信号が入力されるように接続されている。また、ＡＮＤ回路１１の出力信号は内部リセット信号となり、コントローラ２のコントローラ制御回路４に入力されるように接続されている。
【００９２】
このデータ記憶装置１ｄにおける動作について、図１７のシーケンス図を用いて説明する。
【００９３】
図１７においては、上方から下方にかけて、情報処理装置ＰＣから出力される外部リセット信号、緊急停止信号、ＡＮＤ回路１１から出力される外部リセット信号、およびコントローラステータスのそれぞれのシーケンスを示している。
【００９４】
データ記憶装置１ｄがデータ転送処理中に、外部リセット信号（Ｌｏｗレベル）が出力されると、ＡＮＤ回路１１の出力はＬｏｗレベルとなるので、内部リセット信号がアクティブとなり、データ記憶装置１ｄのリセット処理が行われる。
【００９５】
リセット処理後、再びデータ転送処理中に、緊急停止信号（Ｌｏｗレベル）が出力されると、ＡＮＤ回路１１の出力はＬｏｗレベルとなるので、内部リセット信号がアクティブとなり、データ記憶装置１ｄのリセット処理が行われる。
【００９６】
このように、緊急停止信号を外部リセット信号と兼用することによって、コントローラ２に緊急停止信号を入力するためのＩ／Ｏピンなどが不要となり、コストを抑えることができ、かつ機能を簡略化することができるのでコントローラ２の設計を容易化することができる。
【００９７】
また、図１８は、緊急停止要求を情報処理装置バスＰＣＢを介して要求する場合の一例を示すデータ記憶装置１ｅのブロック図である。
【００９８】
データ記憶装置１ｅにおいては、コントローラ２に緊急停止要求レジスタ（レジスタ）１２が設けられている。この緊急停止要求レジスタ１２は、情報処理装置ＰＣが直接アクセスすることができるので、該緊急停止要求レジスタ１２をデータを設定することにより、緊急停止要求をすることができる。図１９は、コントローラ２に設けられ、情報処理装置ＰＣがアクセスすることのできるレジスタの一例を示す説明図である。
【００９９】
この緊急停止要求レジスタ１２を介することにより、データ記憶装置１ｅを処理受け付け不可状態からアイドル状態などに復帰させる際にリセット処理などを行わなくても、自由に復帰させることができる。
【０１００】
さらに、図２０に示すように、コントローラ２に緊急停止要求レジスタ１２を新たに設けずに、データ読み出し／書き込みを要求する処理要求レジスタ（レジスタ）１２ａなどの一部を用いて緊急停止要求を設定するようにしてもよい。この処理要求レジスタ１２ａは、図２１に示すように、情報処理装置ＰＣがアクセスすることのできる既存のレジスタの１つである。
【０１０１】
それにより、本実施の形態１によれば、データ転送処理中であっても、緊急停止要求処理により誤データの転送や誤データへのデータの書き換えなどを防止することができるので、データ記憶装置の信頼性を向上することができる。
【０１０２】
また、本実施の形態においては、リード／ライトのデータ転送処理時について記載したが、たとえば、データを転送しない処理要求、アイドル、リセット処理中、スリープ状態などのその他のいずれの場合であっても、緊急停止要求の受付は可能である。
【０１０３】
（実施の形態２）
図２２は、本発明の実施の形態２によるデータ記憶装置のブロック図、図２３は、図２２のデータ記憶装置において誤データ転送機能が有効設定されている際のリードデータ転送のフローチャート、図２４は、図２２のデータ記憶装置において誤データ転送機能が無効設定された際のリードデータ転送のフローチャート、図２５は、図２２のデータ記憶装置において訂正データを転送する誤データ訂正転送機能が有効設定されている際のリードデータ転送のフローチャート、図２６は、図２２のデータ記憶装置に設けられたコントローラのリード転送要求時におけるフローチャート、図２７は、図２２のコントローラのリード転送要求時における他の動作例を示すフローチャート、図２８は、本発明の実施の形態２によるデータ記憶装置による転送機能設定データの変更例の一例を示すフローチャート、図２９は、本発明の実施の形態２によるデータ記憶装置による転送機能設定データの変更例の他の例を示すフローチャート、図３０は、本発明の実施の形態２によるデータ記憶装置に設けられた半導体メモリに転送機能設定データを設定した際のデータ構造の一例を示す説明図、図３１は、本発明の実施の形態２によるデータ記憶装置に設けられた半導体メモリに転送機能設定データを設定した際のデータ構造の他の例を示す説明図、図３２は、本発明の実施の形態２によるデータ記憶装置による設定転送機能の切替の一例を示すフローチャート、図３３は、本発明の実施の形態２による半導体メモリに転送機能設定データを設定したデータ記憶装置のブロック図、図３４は、図３３のデータ記憶装置によるライト転送時の転送フラグの設定処理を示すフローチャート、図３５は、図３４において転送モードを設定した後のリード転送処理を示したフローチャートである。
【０１０４】
本実施の形態２において、データ記憶装置（記憶装置）１３は、たとえば、フラッシュメモリなどを用いて構成されたメモリカードからなり、ホストである情報処理装置ＰＣの外部記憶メディアとして用いられる。情報処理装置ＰＣは、パーソナルコンピュータや多機能端末機などからなる。
【０１０５】
データ記憶装置１３は、図２２に示すように、コントローラ（情報処理部）１４、および半導体メモリ１５から構成される。ここでは、半導体メモリ１５が１つであるが、該半導体メモリは複数個であってもよい。
【０１０６】
コントローラ１４は、動作プログラム、および情報処理装置ＰＣの指示に基づいて半導体メモリ１５に格納されたプログラムやデータなどを読み出し、所定の処理やデータの書き込み動作指示などを行う。
【０１０７】
半導体メモリ１５は、たとえば、フラッシュメモリなどの不揮発性半導体メモリから構成されている。なお、半導体メモリ１５は、前記実施の形態１と同様に、フラッシュメモリ以外であってもよく、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）、ＭＲＡＭ（Ｍａｇｎｅｔｒｏｒｅｓｉｓｔｉｖｅ  ＲＡＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などのデータを記憶できるメモリであればよい。
【０１０８】
本実施の形態では、コントローラとメモリとを分離しているが、その２つおよび周辺部品を１つにした混載半導体としても構わない。
【０１０９】
この半導体メモリ１５には、アドレス（物理アドレス）０〜ｎに対応して、データ記憶領域、およびエラー検出用データ領域がそれぞれ設けられている。データ記憶領域は、ユーザデータ（０）〜（ｎ）が格納される領域である。エラー検出用データ領域は、ユーザデータ（０）〜（ｎ）におけるＥＣＣコードを格納する領域である。
【０１１０】
コントローラ１４と半導体メモリ１５とは、半導体メモリバスＭＢ１を介して相互に接続されている。情報処理装置ＰＣとコントローラ１４とは、情報処理装置バスＰＣＢを介して相互に接続されている。
【０１１１】
この情報処理装置バスＰＣＢは、機械的結合手段を有し、電気的に接続される接触タイプ、あるいは電波などの情報伝送媒体によって情報を伝達する非接触タイプのいずれであってもよい。
【０１１２】
また、コントローラ１４は、コントローラ制御回路１６、入出力回路１７、転送モード切替参照メモリ（転送モード記憶部）１８、およびエラーデータ検出訂正回路（エラーデータ検出訂正部）１９から構成されている。
【０１１３】
コントローラ制御回路１６は、入出力回路１７、転送モード切替参照メモリ１８、ならびにエラーデータ検出訂正回路１９の制御を司る。入出力回路１７は、データバッファ１７ａを備え、半導体メモリ３、および情報処理装置ＰＣとのデータのやり取りの制御を司る。
【０１１４】
転送モード切替参照メモリ１８は、誤データを転送するか否かを設定する転送機能設定データを格納する。転送モード切替参照メモリ１８は、不揮発性／揮発性のいずれのメモリでもよい。または、ランダムゲートを使って構成するレジスタであってもよい。
【０１１５】
エラーデータ検出訂正回路１９は、ＥＣＣなどによって転送データのエラーを検出する。また、エラーの検出は、ＥＣＣだけでなく、たとえば、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）やパリティチェックなどの簡単な検出機能であってもよい。
【０１１６】
次に、本実施の形態におけるデータ記憶装置１４の作用について説明する。
【０１１７】
始めに、転送モード切替参照メモリ１８が誤データ転送機能を有効にする設定が行われている際のリードデータの転送処理について、図２３のフローチャートを用いて説明する。ここでは、半導体メモリ１３におけるアドレスｋ−１に格納されているユーザデータ（ｋ−１）に誤データがあるものとする。
【０１１８】
まず、情報処理装置ＰＣからコントローラ１４に対してユーザデータ（ｋ−１）のリード転送要求があると（ステップＳ４０１）、該コントローラ１４は、半導体メモリ１５に対してアドレスｋ−１のユーザデータ（ｋ−１）のリード転送要求を行い（ステップＳ４０２）、その後、情報処理装置ＰＣにリードデータ転送通知を行う（ステップＳ４０３）。
【０１１９】
このリードデータ転送通知により、半導体メモリ１５のユーザデータ（ｋ−１）がリードされ、コントローラ１４を介して情報処理装置ＰＣにデータ転送される（ステップＳ４０４）。この場合、誤データ転送機能が有効であるので、誤データが含まれたユーザデータ（ｋ−１）は、すべて転送されることになる。
【０１２０】
そして、ユーザデータ（ｋ−１）の転送が終了すると、コントローラ１４は、リードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ４０５）。このリードデータ転送終了の通知は、正常終了、または異常終了のいずれであってもよい。
【０１２１】
また、転送モード切替参照メモリ１８が誤データ転送機能を無効にする設定になっている際のリードデータの転送処理について、図２４のフローチャートを用いて説明する。ここでも、半導体メモリ１３におけるアドレスｋ−１に格納されているユーザデータ（ｋ−１）に誤データがあるものとする。
【０１２２】
情報処理装置ＰＣからコントローラ１４に対してユーザデータ（ｋ−１）のリード転送要求があると（ステップＳ５０１）、該コントローラ１４は、半導体メモリ１５に対してアドレスｋ−１のユーザデータ（ｋ−１）のリード転送要求を行った後（ステップＳ５０２）、コントローラ１４によって半導体メモリ１５のユーザデータ（ｋ−１）がリードされる（ステップＳ５０３）。エラーデータ検出訂正回路１９により誤データのチェックを行う。
【０１２３】
エラーデータ検出訂正回路１９が、ユーザデータ（ｋ−１）の誤データを検出すると、コントローラ１４は、情報処理装置ＰＣに対してエラー終了を通知する（ステップＳ５０４）。
【０１２４】
次に、転送モード切替参照メモリ１８が、誤データを訂正した後に該訂正データを転送する誤データ訂正転送機能を有効にする設定になっている際のリードデータの転送処理について、図２５のフローチャートを用いて説明する。ここでも、半導体メモリ１３におけるアドレスｋ−１に格納されているユーザデータ（ｋ−１）に誤データがあるものとする。
【０１２５】
情報処理装置ＰＣからコントローラ１４に対してユーザデータ（ｋ−１）のリード転送要求があると（ステップＳ６０１）、該コントローラ１４が半導体メモリ１５に対してアドレスｋ−１のユーザデータ（ｋ−１）のリード転送要求を行う（ステップＳ６０２）。
【０１２６】
その後、コントローラ１４が半導体メモリ１５のユーザデータ（ｋ−１）をリードし（ステップＳ６０３）、エラーデータ検出訂正回路１９がユーザデータ（ｋ−１）のチェックを行う。
【０１２７】
そして、ユーザデータ（ｋ−１）に誤データが検出されると、エラーデータ検出訂正回路１９が誤データの訂正を行い、半導体メモリ３に対してのライト転送要求を行い（ステップＳ６０４）、訂正したユーザデータ（ｋ−１）を書き換える（ステップＳ６０５）。
【０１２８】
図２５の訂正後のユーザデータ（ｋ−１）のデータを、アドレスｋ−１に書き戻している。この半導体メモリ内およびその他半導体メモリ内に代替領域を設けて、そこにユーザデータ（ｋ−１）のデータを代替してもよい。
【０１２９】
続いて、コントローラ１４は情報処理装置ＰＣに対して、リードデータ転送通知を行い（ステップＳ６０６）、訂正されたユーザデータ（ｋ−１）が転送される（ステップＳ６０７）。
【０１３０】
そして、ユーザデータ（ｋ−１）の転送が終了すると、コントローラ１４は、リードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ６０８）。この場合も、リードデータ転送終了の通知は、正常終了、または異常終了のいずれであってもよい。
【０１３１】
ここで、リード転送要求時のコントローラ１４の動作について、図２６のフローチャートを用いて説明する。
【０１３２】
まず、情報処理装置ＰＣからリード転送要求があると、コントローラ制御回路１６は、転送モード切替参照メモリ１８の転送機能設定データを参照し、誤データであっても転送するか否かを判断する（ステップＳ７０１）。
【０１３３】
誤データでも転送する場合には、半導体メモリ１５からリードしたデータをそのまま情報処理装置ＰＣに転送する（ステップＳ７０２）。
【０１３４】
また、誤データを転送しない場合には、半導体メモリ１５からリードしたデータをエラーデータ検出訂正回路１９に転送し（ステップＳ７０３）、誤データが含まれているか否かをチェックする（ステップＳ７０４）。
【０１３５】
そして、誤データが検出された際に、該誤データが訂正可能な場合には（ステップＳ７０５）、エラーデータ検出訂正回路１９がデータ訂正を行い、訂正したデータを情報処理装置ＰＣに転送する（ステップＳ７０７）。
【０１３６】
誤データを訂正できない場合には（ステップＳ７０５）、情報処理装置ＰＣに転送不可通知を行う（ステップＳ７０６）。
【０１３７】
この場合、転送機能設定データが誤データでも転送する機能に設定されていれば、誤データのチェックを行わずに転送するので、高速な転送処理を実現することができる。
【０１３８】
さらに、リード転送要求時のコントローラ１４の他の動作例について、図２７のフローチャートを用いて説明する。
【０１３９】
まず、情報処理装置ＰＣからリード転送要求があると、半導体メモリ１５からデータをリードし、エラーデータ検出訂正回路１９に転送し（ステップＳ８０１）、誤データが含まれているか否かをチェックする（ステップＳ８０２）。
【０１４０】
誤データが含まれていない場合には、リードデータを情報処理装置ＰＣに転送する（ステップＳ８０３）。また、誤データが含まれている場合、該誤データが訂正可能な場合には（ステップＳ８０４）、エラーデータ検出訂正回路１９がデータ訂正を行い、訂正したデータを情報処理装置ＰＣに転送する（ステップＳ８０５）。
【０１４１】
誤データを訂正できない場合には（ステップＳ８０４）、コントローラ制御回路１６が転送モード切替参照メモリ１８の転送機能設定データを参照し、誤データであっても転送するか否かを判断する（ステップＳ８０６）。
【０１４２】
誤データを含んでいても転送する場合には、半導体メモリ１５からリードしたデータをそのまま情報処理装置ＰＣに転送する（ステップＳ８０７）。誤データを転送しない場合には、コントローラ１４が情報処理装置ＰＣに対して転送不可通知を行う（ステップＳ８０８）。
【０１４３】
この場合、転送機能設定データが誤データでも転送する機能に設定されていても、誤データの転送が訂正不可の場合に限られるので、データの信頼性を向上させることができる。
【０１４４】
次に、情報処理装置ＰＣによって転送モード切替参照メモリ１８の転送機能設定データを変更する場合について図２８のフローチャートを用いて説明する。
【０１４５】
ここでは、データ転送時において、誤データを転送しない設定から誤データを転送する設定に変更する場合ついて説明する。
【０１４６】
情報処理装置ＰＣから、たとえば、ユーザデータ（ｋ−１）のリード転送要求があると（ステップＳ９０１）、コントローラ１４は、半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行う（ステップＳ９０２）。
【０１４７】
続いて、半導体メモリ１５のデータがリードされてコントローラ１４に転送される（ステップＳ９０３）。
【０１４８】
転送されたユーザデータ（ｋ−１）は誤データを含んでいるので、コントローラ１４は、情報処理装置ＰＣに対してエラー終了通知を行う（ステップＳ９０４）。
【０１４９】
エラー終了通知が転送されると情報処理装置ＰＣは、コントローラ１４に転送機能設定データを変更するモード切替処理を要求する（ステップＳ９０５）。コントローラ１４は、モード切替処理要求を受けて、転送モード切替参照メモリ１８の転送機能設定データを変更するとともに、情報処理装置ＰＣに該転送機能設定データの変更が完了したことを通知する（ステップＳ９０６）。
【０１５０】
続いて、情報処理装置ＰＣは、再びユーザデータ（ｋ−１）のリード転送要求を行い（ステップＳ９０７）、コントローラ１４が半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行うとともに（ステップＳ９０８）、情報処理装置ＰＣに対してリードデータ転送通知を転送する（ステップＳ９０９）。
【０１５１】
そして、半導体メモリ１５のデータがリードされ、コントローラ１４を介して情報処理装置ＰＣにデータが転送される（ステップＳ９１０）。すべてのリードデータの転送が終了すると、コントローラ１４がリードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ９１１）。
【０１５２】
また、転送機能設定データは、転送モード切替参照メモリ１８でなく、たとえば、半導体メモリ１５に設定することも可能である。
【０１５３】
この場合の情報処理装置ＰＣによる転送機能設定データの変更について図２９のフローチャートを用いて説明する。
【０１５４】
情報処理装置ＰＣから、ユーザデータ（ｋ−１）のリード転送要求があると（ステップＳ１００１）、コントローラ１４は、半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行う（ステップＳ１００２）。
【０１５５】
その後、半導体メモリ１５のデータがリードされてコントローラ１４に転送される（ステップＳ１００３）。転送されたユーザデータ（ｋ−１）は誤データを含んでいるので、コントローラ１４は情報処理装置ＰＣに対してエラー終了通知を行う（ステップＳ１００４）。
【０１５６】
このエラー終了通知により、情報処理装置ＰＣは、コントローラ１４に転送機能設定データを変更するモード切替処理を要求する（ステップＳ１００５）。モード切替処理要求を受けてコントローラ１４は、半導体メモリ１５の転送機能設定データを変更するとともに（ステップＳ１００６）、情報処理装置ＰＣに該転送機能設定データの変更が完了したことを通知する（ステップＳ１００７）。
【０１５７】
情報処理装置ＰＣは、再びユーザデータ（ｋ−１）のリード転送要求を行い（ステップＳ１００８）、コントローラ１４が半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行うとともに（ステップＳ１００９）、情報処理装置ＰＣに対してリードデータ転送通知を転送する（ステップＳ１０１０）。
【０１５８】
そして、半導体メモリ１５のデータがリードされ、コントローラ１４を介して情報処理装置ＰＣにデータが転送される（ステップＳ１０１１）。すべてのリードデータの転送が終了すると、コントローラ１４がリードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ１０１２）。
【０１５９】
本実施の形態では、リード転送毎に半導体メモリに記憶している書き換えフラグをチェックしていない。これはコントローラ内に転送フラグを記憶しているからである。これにより情報処理装置ＰＣからのリード転送の性能を低下させることなく、本発明を実現することが出来る。半導体メモリに記憶している書き換えフラグは、電源立上げ後のリセット中、及び情報処理装置ＰＣから要求があったリセット処理中にコントローラが確認する。この半導体メモリに記憶する方式は、メーカが出荷時に於いて、顧客の要求に対し簡単に対応が可能であり、顧客が適応する情報処理装置ＰＣは、モードの切替を意識する必要がない。
【０１６０】
図３０は、半導体メモリ１５に誤データ転送機能を無効にした転送機能設定データを設定した際のデータ構造を示す説明図であり、図３１は、半導体メモリ１５に誤データ転送機能が有効となった転送機能設定データを設定した際のデータ構造を示す説明図である。
【０１６１】
図３０、図３１に示すように、半導体メモリ１５のアドレスｎに対応するデータ記憶領域が転送機能設定データを設定する領域となる。この領域に転送無効フラグを設定すると誤データ転送機能が無効になり、転送有効フラグを設定すると誤データ転送機能が有効になる。
【０１６２】
転送機能設定データの設定は半導体メモリの最低どれか１つに設定し、本発明である記憶装置全体の機能設定に用いてもよい。さらに、半導体メモリ個別に設定してもかまわない。個別に設定することにより、例えば比較的データ信頼度の高さを必要とするファイル管理用データと、例えば画像音声データ等比較的高いデータ転送を必要とするデータを、それぞれ半導体メモリに区別して保存することにより、使い勝手のよい記憶装置を実現することができる。
【０１６３】
図３２は、設定転送機能の切替を、リード転送要求時にコマンドコードを変えることによって処理する際のフローチャートである。
【０１６４】
情報処理装置ＰＣが、コマンドコードによってユーザデータ（ｋ−１）の誤データ転送不可リード転送要求を行うと（ステップＳ１１０１）、コントローラ１４は、半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行い（ステップＳ１１０２）、半導体メモリ１５のリードデータがコントローラ１４に転送される（ステップＳ１１０３）。
【０１６５】
転送されたユーザデータ（ｋ−１）は誤データを含んでいるので、コントローラ１４は情報処理装置ＰＣに対してエラー終了通知を行う（ステップＳ１１０４）。
【０１６６】
続いて、情報処理装置ＰＣがコマンドコードによって、ユーザデータ（ｋ−１）の誤データ転送可転送要求を行うと（ステップＳ１１０５）、コントローラ１４が、半導体メモリ１５に対してユーザデータ（ｋ−１）のリード転送要求を行うとともに（ステップＳ１１０６）、情報処理装置ＰＣに対してリードデータ転送通知を転送する（ステップＳ１１０７）。
【０１６７】
その後、半導体メモリ１５のデータがリードされ、コントローラ１４を介して情報処理装置ＰＣにデータが転送される（ステップＳ１１０８）。すべてのリードデータの転送が終了すると、コントローラ１４がリードデータ転送終了を情報処理装置ＰＣに対して通知する（ステップＳ１１０９）。
【０１６８】
図３３は、各々のユーザデータ（０）〜（ｎ−１）に対し、個別に転送機能設定データを設定することのできる半導体メモリ１５の構成例を示した説明図である。
【０１６９】
この場合、半導体メモリ１５は、データ記憶領域、およびデータ検出用データ領域の他に、各々のユーザデータが誤データであっても転送するか否かを設定する転送フラグを格納する領域が設けられている。
【０１７０】
この領域に誤データ転送不可、または誤データ転送可のフラグを設定することにより、転送モード切替参照用メモリを不要にすることができる。また、誤データの転送可／不可をユーザデータ毎に選択して設定することができるので、データストレージとしての信頼性を向上することができる。
【０１７１】
次に、ライト転送時において、半導体メモリ１５に転送フラグを設定する処理について、図３４のフローチャートを用いて説明する。ここでは、ユーザデータ（ｋ−１）を誤データ転送不可に設定し、ユーザデータ（ｋ）を誤データ転送可に設定するものとする。
【０１７２】
情報処理装置ＰＣは、コマンドコードによってユーザデータ（ｋ−１）の誤データ転送不可ライト転送要求を行うと（ステップＳ１２０１）、コントローラ１４は半導体メモリ１５に対してユーザデータ（ｋ−１）のライト転送要求を行い（ステップＳ１２０２）、ライトデータがコントローラ１４を介して半導体メモリ１５に転送される（ステップＳ１２０３）。
【０１７３】
そして、コントローラ１４は、誤データ転送不可の転送フラグを半導体メモリ１５に設定した後（ステップＳ１２０４）、ユーザデータ（ｋ−１）の検出データ（ｋ−１）を半導体メモリ１５のエラー検出用データ領域に格納する（ステップＳ１２０５）。
【０１７４】
続いて、コントローラ１４は、半導体メモリ１５に対してライト転送の正常終了通知を行い（ステップＳ１２０６）、情報処理装置ＰＣにライト転送終了通知を転送する（ステップＳ１２０７）。
【０１７５】
また、情報処理装置ＰＣが、コマンドコードによってユーザデータ（ｋ）の誤データ転送可ライト転送要求を行うと（ステップＳ１２０８）、コントローラ１４が半導体メモリ１５に対してユーザデータ（ｋ）のライト転送要求を行い（ステップＳ１２０９）、ライトデータがコントローラ１４を介して半導体メモリ１５に転送される（ステップＳ１２１０）。
【０１７６】
そして、コントローラ１４は、誤データ転送可の転送フラグを半導体メモリ１５に設定し（ステップＳ１２１１）、ユーザデータ（ｋ）の検出データ（ｋ）を半導体メモリ１５のエラー検出用データ領域に格納する（ステップＳ１２１２）。
【０１７７】
続いて、コントローラ１４は、半導体メモリ１５に対してライト転送の正常終了通知を行い（ステップＳ１２１３）、情報処理装置ＰＣにライト転送終了通知を転送する（ステップＳ１２１４）。
【０１７８】
また、図３５は、図３４において転送モードを設定した後のリード転送処理を示したフローチャートである。
【０１７９】
情報処理装置ＰＣが、ユーザデータ（ｋ−１）のリード転送要求を行うと（ステップＳ１３０１）、コントローラ１４は半導体メモリ１５に対してユーザデータ（ｋ−１）のライト転送要求を行う（ステップＳ１３０２）。これにより、リードデータがコントローラ１４に転送される（ステップＳ１３０３）。
【０１８０】
このユーザデータ（ｋ−１）は誤データを含んでいるので、コントローラ１４は、情報処理装置ＰＣに対してエラー終了通知を転送する（ステップＳ１３０４）。
【０１８１】
再び、情報処理装置ＰＣがユーザデータ（ｋ）のリード転送要求を行うと（ステップＳ１３０５）、コントローラ１４は半導体メモリ１５に対してユーザデータ（ｋ）のリード転送要求を行うとともに（ステップＳ１３０６）、情報処理装置ＰＣに対してリード転送要求を行う（ステップＳ１３０７）。
【０１８２】
ユーザデータｋにも誤データを含んでいるが、半導体メモリ１５から、コントローラ１４を介してリードデータが情報処理装置ＰＣに転送される（ステップＳ１３０８）。すべてのリードデータが転送されると、コントローラ１４は、リード転送終了通知を情報処理装置ＰＣに転送する（ステップＳ１３０９）。
【０１８３】
それにより、本実施の形態２では、誤データが含まれているユーザデータであっても、途切れることなくデータ転送することができるので、不要な待ち時間などをなくすことができる。
【０１８４】
また、データが途切れることなく転送されることにより、情報処理装置ＰＣに大容量のバッファなどが不要となるので、該情報処理装置ＰＣのコストダウンを実現することができる。
【０１８５】
さらに、本実施の形態２においては、誤データ転送機能の設定を情報処理装置ＰＣが行う場合について記載したが、たとえば、図３６に示すように、情報処理装置ＰＣ以外の外部から転送モード切替信号をコントローラ１４のコントローラ制御回路１６に入力する構成としてもよい。
【０１８６】
また、本実施の形態２において、エラー訂正が不可とは、現実にエラー訂正ができないことのみに限定されるのではなく、予め決定された時間内にエラー訂正が完了しないことをも含むことはいうまでもない。
【０１８７】
たとえば、エラー訂正時間を設定可能なレジスタなどを有し、データの種類毎にエラー訂正時間を指定しておくことで、たとえばデータの正確性よりも転送時間が重要なデータと、逆にデータの正確性が重要なデータのそれぞれに適切な時間でデータ転送を行うことができるようになる。
【０１８８】
なお、本実施の形態２において、エラー訂正が不可の場合、メモリアレイから読み出したデータをエラー訂正を行わずにホストへ供給する旨記載しているが、この場合、たとえば全て“０”又は全て“１”のデータをホストへ供給するようにしてもよいことはいうまでもない。
【０１８９】
【発明の効果】
本願によって開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
（１）データ転送処理中にホストや電源電圧などに異常があっても、緊急停止要求処理により誤データの転送や誤データへのデータの書き換えなどを防止することができるので、データ記憶装置の信頼性を向上することができる。
（２）また、誤データが含まれているユーザデータであっても、途切れることなくデータ転送することができるので無駄な待ち時間を低減することでき、記憶装置の信頼性をより向上させることができる。
（３）さらに、上記（１）、（２）により、記憶装置などを用いて構成される電子システムの性能、ならびに信頼性を大幅に向上することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１によるデータ記憶装置のブロック図である。
【図２】図１のデータ記憶装置におけるリードデータ転送中の緊急停止要求処理のフローチャートである。
【図３】図１のデータ記憶装置におけるライトデータ転送中に緊急停止信号が発行された際のフローチャートである。
【図４】図１のデータ記憶装置によるライトデータ転送中に緊急停止信号が発行された際のフローチャートである。
【図５】図１のデータ記憶装置に供給される電源電圧のシーケンス図である。
【図６】本発明の実施の形態１によるデータ記憶装置におけるリセット信号の接続例を示したブロック図である。
【図７】図６のデータ記憶装置におけるリセット信号と緊急停止信号とのシーケンス図である。
【図８】本発明の実施の形態１によるデータ記憶装置におけるリセット信号の他の接続例を示したブロック図である。
【図９】図８のデータ記憶装置を用いた信号処理の説明図である。
【図１０】本発明の他の実施の形態によるデータ記憶装置の一例を示したブロック図である。
【図１１】図１０のデータ記憶装置による電源電圧のシーケンス図である。
【図１２】本発明の他の実施の形態によるデータ記憶装置の他の例を示したブロック図である。
【図１３】図１２のデータ記憶装置による動作例を示したシーケンス図である。
【図１４】本発明の他の実施の形態によるデータ記憶装置の一例を示したブロック図である。
【図１５】図１４のデータ記憶装置による動作例を示したシーケンス図である。
【図１６】本発明の他の実施の形態によるデータ記憶装置の他の例を示したブロック図である。
【図１７】図１６のデータ記憶装置による動作例を示したシーケンス図である。
【図１８】本発明の他の実施の形態によるデータ記憶装置の一例を示したブロック図である。
【図１９】図１８のデータ記憶装置に設けられた情報処理装置がアクセスするレジスタの一例を示す説明図である。
【図２０】本発明の他の実施の形態によるデータ記憶装置の他の例を示したブロック図である。
【図２１】図２０のデータ記憶装置に設けられた情報処理装置がアクセスするレジスタの一例を示す説明図である。
【図２２】本発明の実施の形態２によるデータ記憶装置のブロック図である。
【図２３】図２２のデータ記憶装置において誤データ転送機能が有効設定されている際のリードデータ転送のフローチャートである。
【図２４】図２２のデータ記憶装置において誤データ転送機能が無効設定された際のリードデータ転送のフローチャートである。
【図２５】図２２のデータ記憶装置において訂正データを転送する誤データ訂正転送機能が有効設定されている際のリードデータ転送のフローチャートである。
【図２６】図２２のデータ記憶装置に設けられたコントローラのリード転送要求時におけるフローチャートである。
【図２７】図２２のコントローラのリード転送要求時における他の動作例を示すフローチャートである。
【図２８】本発明の実施の形態２によるデータ記憶装置による転送機能設定データの変更例の一例を示すフローチャートである。
【図２９】本発明の実施の形態２によるデータ記憶装置による転送機能設定データの変更例の他の例を示すフローチャートである。
【図３０】本発明の実施の形態２によるデータ記憶装置に設けられた半導体メモリに転送機能設定データを設定した際のデータ構造の一例を示す説明図である。
【図３１】本発明の実施の形態２によるデータ記憶装置に設けられた半導体メモリに転送機能設定データを設定した際のデータ構造の他の例を示す説明図である。
【図３２】本発明の実施の形態２によるデータ記憶装置による設定転送機能の切替の一例を示すフローチャートである。
【図３３】本発明の実施の形態２による半導体メモリに転送機能設定データを設定したデータ記憶装置のブロック図である。
【図３４】図３３のデータ記憶装置によるライト転送時の転送フラグの設定処理を示すフローチャートである。
【図３５】図３４において転送モードを設定した後のリード転送処理を示したフローチャートである。
【図３６】本発明の他の実施の形態によるデータ記憶装置のブロック図である。
【符号の説明】
１  データ記憶装置（記憶装置）
１ａ〜１ｅ  データ記憶装置（記憶装置）
２  コントローラ（情報処理部）
３  半導体メモリ
４  コントローラ制御回路
５  入出力回路
６  電源安定化ＩＣ（電源電圧部）
７  電圧監視ＩＣ（第１の電圧監視部）
８  電圧監視ＩＣ（第２の電圧監視部）
９  コンデンサ（電源供給部）
１０  電源切替ＩＣ（電源切替部）
１１  ＡＮＤ（論理積）回路
１２  緊急停止要求レジスタ（レジスタ）
１２ａ  処理要求レジスタ（レジスタ）
１３  データ記憶装置（記憶装置）
１４  コントローラ（情報処理部）
１５  半導体メモリ
１６  コントローラ制御回路
１７  入出力回路
１８  転送モード切替参照メモリ（転送モード記憶部）
１９  エラーデータ検出訂正回路（エラーデータ検出訂正部）
ＭＢ，ＭＢ１  半導体メモリバス
ＰＣ  情報処理装置
ＰＣＢ  情報処理装置バス
Ｓ，Ｓ１  信号線
ＮＳ  内部電源線
ＶＣＣ  外部電源電圧
ＶＤＤ  内部電源電圧
【図１】
2004240820.tif 000003
【図２】
2004240820.tif 000004
【図３】
2004240820.tif 000005
【図４】
2004240820.tif 000006
【図５】
2004240820.tif 000007
【図６】
2004240820.tif 000008
【図７】
2004240820.tif 000009
【図８】
2004240820.tif 000010
【図９】
2004240820.tif 000011
【図１０】
2004240820.tif 000012
【図１１】
2004240820.tif 000013
【図１２】
2004240820.tif 000014
【図１３】
2004240820.tif 000015
【図１４】
2004240820.tif 000016
【図１５】
2004240820.tif 000017
【図１６】
2004240820.tif 000018
【図１７】
2004240820.tif 000019
【図１８】
2004240820.tif 000020
【図１９】
2004240820.tif 000021
【図２０】
2004240820.tif 000022
【図２１】
2004240820.tif 000023
【図２２】
2004240820.tif 000024
【図２３】
2004240820.tif 000025
【図２４】
2004240820.tif 000026
【図２５】
2004240820.tif 000027
【図２６】
2004240820.tif 000028
【図２７】
2004240820.tif 000029
【図２８】
2004240820.tif 000030
【図２９】
2004240820.tif 000031
【図３０】
2004240820.tif 000032
【図３１】
2004240820.tif 000033
【図３２】
2004240820.tif 000034
【図３３】
2004240820.tif 000035
【図３４】
2004240820.tif 000036
【図３５】
2004240820.tif 000037
【図３６】
2004240820.tif 000038