JP2004118976A - フラッシュメモリ書き込み制御方法 - Google Patents
フラッシュメモリ書き込み制御方法 Download PDFInfo
- Publication number
- JP2004118976A JP2004118976A JP2002283976A JP2002283976A JP2004118976A JP 2004118976 A JP2004118976 A JP 2004118976A JP 2002283976 A JP2002283976 A JP 2002283976A JP 2002283976 A JP2002283976 A JP 2002283976A JP 2004118976 A JP2004118976 A JP 2004118976A
- Authority
- JP
- Japan
- Prior art keywords
- write
- writing
- information
- control unit
- memory
- 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.)
- Pending
Links
Images
Landscapes
- Read Only Memory (AREA)
Abstract
【課題】フラッシュメモリの有効利用等を図ることができるようにする。
【解決手段】フラッシュメモリ22を、複数のプログラムデータ書き込みメモリブロック22a〜22e及びID書き込みメモリエリア23から構成し、マイコン11から書き込み開始指示が出されると、マイコン21が受け取った書き込みプログラムデータをプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23に、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータとからなる初期値以外のIDを書き込むようにする。
【選択図】 図1
【解決手段】フラッシュメモリ22を、複数のプログラムデータ書き込みメモリブロック22a〜22e及びID書き込みメモリエリア23から構成し、マイコン11から書き込み開始指示が出されると、マイコン21が受け取った書き込みプログラムデータをプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23に、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータとからなる初期値以外のIDを書き込むようにする。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、フラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御方法に関する。
【0002】
【従来の技術】
たとえば、プログラムデータを書き込むメモリとして、電気的に消去可能な不揮発性メモリであるフラッシュメモリが用いられている。フラッシュメモリには、均等ブロック消去型、一括消去型、バイト単位消去型等がある。このようなフラッシュメモリにあっては、プログラムデータの書き込み中に停電等が生じ、その書き込みが中断すると、書き込み中のプログラムデータが消失してしまい、プログラムデータが実行できなくなるばかりか、以降のプログラムデータの再書き込みができなくなってしまう。
【0003】
そこで、たとえば特許文献1では、データの書き込み作業が中断しても、データの消失を防止することができるようにした均等ブロック消去型フラッシュメモリの書き込み方法を提案している。すなわち、特許文献1での均等ブロック消去型フラッシュメモリは、たとえば図4に示すように、データ書き込み用メモリブロック1aとチェックデータ格納エリア2aとらかなる書き込み用ブロック1Aと、データ書き込み用メモリブロック1bとチェックデータ格納エリア2bとらかなる書き込み用ブロック1Bと、データ書き込み用メモリブロック1cとチェックデータ格納エリア2cとらかなる書き込み用ブロック1Cと、データ待避用メモリブロック1dとチェックデータ格納エリア2dとらかなる待避用ブロック1Dとで構成されている。
【0004】
そして、たとえば書き込み用ブロック1Aのデータの書き換えを行う場合には、図5に示すような手順が実行される。すなわち、(ステップ501)において、書き込みスタートOKとなると、まず待避用ブロック1Dの既存のデータを消去し、データ書き込み用メモリ1aのデータをデータ待避用メモリブロック1dに、チェックデータ格納エリア2aのデータをチェックデータ格納エリア2dにそれぞれ書き込む(ステップ502)。(ステップ503)において、データの書き込みが終了し書き込み終了OKとなると、書き込み用ブロック1Aのデータを全て消去し、そのデータ書き込み用メモリブロック1aに新たなデータを書き込む(ステップ504)。(ステップ505)において、データの書き込みが終了し書き込み終了OKとなると、チェックデータ格納エリア2aに固有の番号であるチェックデータを書き込む(ステップ506)。このチェックデータは、データ書き込み用メモリブロック1aに書き込まれたデータが有効であることを示すフラグとしての役割をもっている。(ステップ507)において、チェックデータの書き込みが終了し書き込み終了OKとなると、チェックデータ格納エリア2aのチェックデータが照合される(ステップ508)。ここで、チェックデータ照合OKであれば(ステップ509)、データ書き込み用メモリブロック1aに書き込まれたデータが読み出され、その読み出されたデータに従っての実行が行われる(ステップ510)。
【0005】
一方、(ステップ501)においての書き込みスタートOKから、(ステップ502)でのデータ書き込み中において、停電等が生じると、データの書き込みが停止となる(ステップ511)。このとき、(ステップ508)にてチェックデータ格納エリア2aのチェックデータが照合されるが、この時点では、データ書き込み用メモリブロック1aに書き込まれたデータが有効であることを示すフラグとしての役割をもつチェックデータがチェックデータ格納エリア2aに書き込まれていない。そのため、チェックデータ照合NGとなり(ステップ512)、データ待避用メモリブロック1dに書き込まれたデータが読み出され、その読み出されたデータに従っての実行が行われる(ステップ513)。次いで、再度、(ステップ514)において、書き込みスタートOKとなると、上述した(ステップ502)〜(ステップ510)の手順に従う。なお、以上のようなデータ書き込みの手順は、その手順を示すデータ書き込み用のプログラムに従って実行される。
【0006】
【特許文献1】
特開平10−124403号公報(段落0012〜0014、0018〜0022、図2)
【0007】
【発明が解決しようとする課題】
ところが、上述した特許文献1では、たとえば書き込み用ブロック1Aへのデータ書き込み中に、書き込み作業が中断しても、少なくともデータ待避用メモリブロック1dとチェックデータ格納エリア2dとらかなる待避用ブロック1Dに書き込み用ブロック1Aに書き込まれていたデータが存在するので、データの消失が防止されるが、待避用ブロック1Dを必要とするばかりか、各データ書き込み用メモリブロック1a〜1c毎にチェックデータ格納エリア2a〜2cを必要とするため、フラッシュメモリのデータ書き込みのための領域が少なくなり、フラッシュメモリの有効利用ができないという問題がある。
【0008】
また、書き込み用ブロック1A〜1Cに書き込むべきプログラムデータが膨大である場合には、さらに記憶容量の大きなフラッシュメモリを選定しなければならず、コストアップを招いてしまうという問題がある。
【0009】
また、たとえば書き込み用ブロック1Aへのデータ書き込みを行うために、少なくとも書き込み用ブロック1Aへのデータ書き込みを行う手順に加え、一旦、待避用ブロック1Dの既存のデータを消去し、データ書き込み用メモリブロック1aのデータをデータ待避用メモリブロック1dに、チェックデータ格納エリア2aのデータをチェックデータ格納エリア2dにそれぞれ書き込みむ手順が別途必要となるため、その手順を示すデータ書き込み用のプログラムが複雑になってしまうという問題がある。
【0010】
本発明は、このような状況に鑑みてなされたものであり、フラッシュメモリの有効利用ができ、しかも記憶容量を必要最小限とするフラッシュメモリを選定することができ、さらにはデータ書き込み手順を示すデータ書き込み用のプログラムの簡素化を図ることができるフラッシュメモリ書き込み制御方法を提供することができるようにするものである。
【0011】
【課題を解決するための手段】
本発明のフラッシュメモリ書き込み制御方法は、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御方法であって、書き込み制御手段が書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示を出す工程と、書き込み対象制御手段が書き込み開始指示を受け取った後、メモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込む工程とを有することを特徴とする。
また、書き込み対象制御手段が書き込み開始指示を受け取ると、書き込み制御手段に書き込み開始指示に対する応答を出す工程と、書き込み制御手段が応答を受け取ると、書き込み対象制御手段に書き込み情報を送出する工程と、書き込み対象制御手段が受け取った書き込み情報をメモリブロックに書き込む工程と、書き込み情報の書き込みが終了すると、書き込み制御手段が書き込み対象制御手段に書き込みの終了を指示する工程と、書き込み対象制御手段が書き込みの終了の指示を受け取った後、メモリエリアに正常終了情報を書き込む工程と、書き込み対象制御手段が書き込んだ正常終了情報から書き込みの正常終了を確認した後、メモリブロックから書き込み情報を読み出す工程とを有するようにすることができる。
また、書き込み情報の書き込みが途中で停止した場合、書き込み対象制御手段がメモリエリアに正常終了情報が書き込まれているか否かを確認する工程と、正常終了情報が書き込まれていないと確認した場合、書き込み対象制御手段が書き込み制御手段からの次の書き込み開始指示が出されるまで待機する工程とを有するようにすることができる。
本発明のフラッシュメモリ書き込み制御システムは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御システムであって、フラッシュメモリに対しての書き込み開始指示、書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、書き込み装置に対しラインを介して接続され、フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むことを特徴とする。
本発明のフラッシュメモリ書き込み制御システムは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリと、フラッシュメモリに対しての書き込み開始指示、書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、書き込み装置に対しラインを介して接続され、フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むことを特徴とする。
また、書き込み開始指示を受け取った書き込み対象制御手段が書き込み制御手段に書き込み開始指示に対する応答を出すと、書き込み制御手段が書き込み対象制御手段に書き込み情報を送出し、書き込み対象制御手段が受け取った書き込み情報の書き込みを終了し、書き込み制御手段からの書き込みの終了の指示を受け取ると、メモリエリアに正常終了情報を書き込み、この書き込んだ正常終了情報から書き込みの正常終了を確認した後、メモリブロックから書き込み情報を読み出すようにすることができる。
また、書き込み情報の書き込みが途中で停止した場合、書き込み対象制御手段がメモリエリアに正常終了情報が書き込まれているか否かを確認し、正常終了情報が書き込まれていないと確認すると、書き込み対象制御手段が書き込み制御手段からの次の書き込み開始指示が出されるまで待機するようにすることができる。
本発明のフラッシュメモリは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなることを特徴とする。
本発明のフラッシュメモリカードは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリを搭載していることを特徴とする。
本発明に係るフラッシュメモリ書き込み制御方法においては、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込む。
【0012】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
図1は、本発明のフラッシュメモリ書き込み制御システムの一実施の形態を示すブロック図、図2は、図1のフラッシュメモリの構成を示すブロック図、図3は、図1のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法を説明するための手順を示す図である。
【0013】
図1に示すフラッシュメモリ書き込み制御システムは、書き込み装置10及び書き込み対象装置としてのECU(エレクトリカルコントロールユニット)20を備え、これらはデータのやり取りを行うバスライン30を介して接続されている。
書き込み装置10は、CPUを内蔵したマイコン11、フラッシュメモリ12、I/O13を備えている。書き込み制御手段としてのマイコン11は、所定の制御プログラムに従い、フラッシュメモリ12内のデータを読み出すとともに、書き込み開始信号用データ、書き込み情報としての書き込みプログラムデータ、書き込み終了信号用データの送出等を行う。フラッシュメモリ12は、書き込み開始信号用データ、書き込みプログラムデータ、書き込み終了信号用データ等を格納している。I/O13は、マイコン11によって読み出されたデータの送信やECU20側からのデータの受信を行う。なお、符号14は、バスライン30に対するデータの送受を行う入出力回路である。
【0014】
ECU20は、CPUを内蔵したマイコン21、フラッシュメモリ22、I/O23を備えている。書き込み対象制御手段としてのマイコン21は、書き込み等の手順を示すデータ書き込み用のプログラムに従い、フラッシュメモリ22内への書き込みプログラムデータの書き込みや、書き込みが正常に行われたことを示す正常終了情報としてのIDの書き込み等を行うが、その詳細は後述する。フラッシュメモリ22は、たとえば図2に示すような均等ブロック消去型とされ、所定のアドレスで均等に分けられた複数のプログラムデータ書き込みメモリブロック22a〜22e及び最下位アドレスに設けられたID書き込みメモリエリア23fから構成されている。なお、ID書き込みメモリエリア23fは、最下位アドレスに限るものではなく、任意のアドレスに設けられればよい。また、フラッシュメモリ22は、均等ブロック消去型に限らず、一括消去型、バイト単位消去型等であってもよい。
【0015】
プログラムデータ書き込みメモリブロック22a〜22eには、書き込み装置10側からの書き込みプログラムデータが書き込まれる。ID書き込みメモリエリア23fには、IDが書き込まれる。ここで、IDは、書き込みプログラムデータの書き込みが正常に終了したか否かを示すデータであり、何れかのプログラムデータ書き込みメモリブロック22a〜22eへの書き込みプログラムデータの書き込みが行われる前には初期値のデータが書き込まれている。そして、何れかのプログラムデータ書き込みメモリブロック22a〜22eへの書き込みプログラムデータの書き込みが終了すると、ID書き込みメモリエリア23fには初期値のIDに代えて初期値以外のIDが書き込まれる。ここで、初期値以外のIDは、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータである。I/O23は、マイコン21によって読み出されたデータの送信や書き込み装置10側からのデータの受信を行う。なお、符号24は、バスライン30に対するデータの送受を行う入出力回路である。
【0016】
次に、このような構成のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法について説明する。なお、以下の説明におけるマイコン21による書き込み手順を示すデータ書き込み用のプログラムは、ECU20側に予め格納されていてもよいし、書き込み装置10側からECU20側に送信するようにしてもよいが、ここではECU20側に予め格納されているものとする。また、プログラムデータ書き込みメモリブロック22a〜22eへの書き込みは、書き込み装置10側からの書き込み開始指示の内容によって何れかのブロック又は全てブロックのどちらでも可能であるが、以下の説明では全てのブロックに対しての書き込みが行われるものとする。
【0017】
まず、たとえばプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、書き込みプログラムデータが書き込まれる場合には、図3に示すような手順が実行される。すなわち、(ステップ301)において、書き込み開始信号受信OKとなると、プログラムデータ書き込みメモリブロック22aへのプログラムデータの書き込み状態となる(ステップ302)。つまり、図1の書き込み装置10のマイコン11によってフラッシュメモリ12から読み出された書き込み開始信号用データがバスライン30を介してECU20側に送信されると、ECU20側のマイコン21が書き込み開始信号を受信することで書き込み開始を認識する。このとき、ECU20側のマイコン21が予め格納されているデータ書き込み用のプログラムを起動し、その起動が完了すると、書き込み装置10側へ起動完了を通知する。すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込みプログラムデータがバスライン30を介してECU20側に送信される。ECU20側のマイコン21がプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、書き込みプログラムデータの書き込みを実行する。ここで、書き込み装置10側のフラッシュメモリ12から読み出された書き込みプログラムデータをECU20側に送信するとき、たとえばプログラムデータ書き込みメモリブロック22a〜22e毎に順次、送るようにしてもよいし、プログラムデータ書き込みメモリブロック22a〜22eに書き込むべき全ての書き込みプログラムデータを一度に送るようにしてもよい。何れにしても、書き込みプログラムデータの書き込みが正常に完了すると、ECU20側のマイコン21から書き込み装置10側へ書き込みの正常完了が通知される。また、書き込みの正常完了の通知に際しては、たとえばECU20側のマイコン21が書き込んだ書き込みプログラムデータを書き込み装置10側へ返し、書き込み装置10側でその書き込みプログラムデータをフラッシュメモリ12内の書き込みプログラムデータと比較して、一致したとき書き込みの正常完了を把握するステップをとるようにしてもよい。
【0018】
プログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eへの書き込みプログラムデータの書き込みが終了すると、書き込み終了信号受信OKとなる(ステップ303)。つまり、書き込みプログラムデータの書き込みが終了した後、ECU20側のマイコン21からの書き込みの正常完了の通知を受けて書き込み装置10側が書き込みの正常完了を把握すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込み終了信号用データがバスライン30を介してECU20側に送信される。ECU20側のマイコン21が書き込み終了信号を受信することで書き込み終了を認識する。このとき、マイコン21がフラッシュメモリ22のID書き込みメモリエリア23fに書き込まれている初期値のIDに代えて、初期値以外のIDを書き込む(ステップ304)。つまり、初期値以外のIDは、上述したように、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータである。
【0019】
次いで、ID書き込み終了OKとなると(ステップ305)、ECU20側のマイコン21から書き込み装置10側へID書き込みの終了が通知される。これにより、書き込み装置10側では書き込みプログラムデータの書き込みに関わる全ての手順の完了を把握することができる。その後、ECU20側のマイコン21は、ID書き込みメモリエリア23fのID照合状態に移行する(ステップ306)。ここで、ID照合OKであれば(ステップ307)、プログラムデータ書き込みメモリブロック22a〜22eに書き込まれた書き込みプログラムデータが読み出され、その読み出された書き込みプログラムデータに従っての実行が行われる(ステップ308)。なお、ここでの照合は、ID書き込みメモリエリア23fに書き込みプログラムデータの書き込みが正常に終了したことを示すデータであるIDが書き込まれているか否かを確認することである。
【0020】
一方、(ステップ301)においての書き込み開始信号受信OKから、(ステップ302)での書き込みプログラムデータの書き込み中において、停電等が生じると、書き込みプログラムデータの書き込みが途中で停止となる(ステップ309)。つまり、停電等によってECU20側のマイコン21から書き込み装置10側への上述した書き込みの正常完了が所定時間、通知されない場合、書き込み装置10側ではECU20側での書き込みNGを把握することができる。次いで、停電等の障害が復旧し、ECU20側での書き込みが可能な状態となると、書き込み装置10側からECU20側へたとえばリセット信号が送られる。すると、ECU20側のマイコン21は、(ステップ306)のID照合状態に移行する。この時点では、ID書き込みメモリエリア23fにプログラムデータの書き込みが正常に終了したことを示すデータであるIDが書き込まれていないため、ID照合NGとなり(ステップ310)、(ステップ311)の再書き込み待機状態に移行する。ここでは、上述したように、ECU20側のマイコン21が予め格納されているデータ書き込み用のプログラムを再度起動し、その起動が完了すると、書き込み装置10側へ起動完了を通知する。すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込み開始信号用データがバスライン30を介してECU20側に再度送信されることで、書き込み開始信号受信OKとなる(ステップ312)。
【0021】
その後、上述したように、書き込み装置10のマイコン11によってフラッシュメモリ12から読み出された書き込みプログラムデータがバスライン30を介してECU20側に再送信されると、ECU20側のマイコン21がプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて再度、書き込みプログラムデータの書き込みを実行する(ステップ302)。以降、書き込みプログラムデータの書き込みが正常に終了した場合には、上述した(ステップ303)→(ステップ304)→(ステップ305)→(ステップ306)→(ステップ307)→(ステップ308)の手順が実行され、書き込みプログラムデータの書き込みが正常に終了しなかった場合には、上述した(ステップ309)→(ステップ306)→(ステップ310)→(ステップ311)の手順が実行される。
【0022】
このように、本実施の形態では、フラッシュメモリ22を、所定のアドレスで均等に分けられた複数のプログラムデータ書き込みメモリブロック22a〜22e及び最下位アドレスに設けられたID書き込みメモリエリア23fから構成し、書き込み装置10側のマイコン11からECU20側のマイコン21にプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに対する書き込み開始指示が出されると、マイコン21が書き込み装置10側から受け取った書き込みプログラムデータをプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23fに、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータとからなる初期値以外のIDを書き込むようにした。この場合、ID書き込みメモリエリア23fは、フラッシュメモリ22の任意のアドレスにあればよく、たとえば最下位アドレスに設けることで、プログラムデータ書き込みメモリブロック22a〜22eの領域を狭めることがないので、フラッシュメモリ22の有効利用を図ることができる。
【0023】
また、フラッシュメモリ22の有効利用が図れるため、書き込みプログラムデータが膨大であっても、さらに記憶容量の大きなフラッシュメモリ22を選定する必要がなく、コストアップを避けることができる。
【0024】
また、書き込み装置10側のマイコン11からECU20側のマイコン21にプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに対する書き込み開始指示が出されると、マイコン21がプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込みプログラムデータを書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23fに初期値以外のIDを書き込む手順を備えればよいので、その手順を示すデータ書き込み用のプログラムの簡素化を図ることができる。よって、マイコン21が簡素化されたデータ書き込み用のプログラムを実行することができ、マイコン21の負荷をさらに軽減することができる。
【0025】
なお、本実施の形態では、プログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、プログラムデータが書き込まれる場合について説明したが、この例に限らず、書き込み装置10側のマイコン11からの書き込み開始指示の内容により、プログラムデータ書き込みメモリブロック22a〜22eの何れかにのみ書き込みプログラムデータの書き込みを行うことも可能である。また、書き込まれるデータは、プログラムデータに限らず、演算結果データ、テキストデータ、イメージデータ等の他のデータであってもよい。
【0026】
また、本実施の形態では、書き込み対象装置をECU20とした場合について説明したが、この例に限らず、携帯電話、ビデオカメラ、デジタルカメラ、ゲーム機器、パソコン等の電子機器内部に搭載されている制御ユニットであってもよい。また、フラッシュメモリ22は、ECU20内部に搭載されるものに限らず、フラッシュメモリカードに搭載するようにしてもよい。
【0027】
【発明の効果】
以上の如く本発明に係るフラッシュメモリ書き込み制御方法によれば、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むようにしたので、フラッシュメモリの有効利用ができ、しかも記憶容量を必要最小限とするフラッシュメモリを選定することができ、さらにはデータ書き込み手順を示すデータ書き込み用のプログラムの簡素化を図ることができる。
【図面の簡単な説明】
【図1】本発明のフラッシュメモリ書き込み制御システムの一実施の形態を示すブロック図である。
【図2】図1のフラッシュメモリの構成を示すブロック図である。
【図3】図1のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法を説明するための手順を示す図である。
【図4】従来のフラッシュメモリの一例を示すブロック図である。
【図5】図4のフラッシュメモリの書き込み制御方法を説明するための図である。
【符号の説明】
10 書き込み装置
11,21 マイコン
12,22 フラッシュメモリ
20 ECU
22a〜22e プログラムデータ書き込みメモリブロック
23f ID書き込みメモリエリア
30 バスライン
【発明の属する技術分野】
本発明は、フラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御方法に関する。
【0002】
【従来の技術】
たとえば、プログラムデータを書き込むメモリとして、電気的に消去可能な不揮発性メモリであるフラッシュメモリが用いられている。フラッシュメモリには、均等ブロック消去型、一括消去型、バイト単位消去型等がある。このようなフラッシュメモリにあっては、プログラムデータの書き込み中に停電等が生じ、その書き込みが中断すると、書き込み中のプログラムデータが消失してしまい、プログラムデータが実行できなくなるばかりか、以降のプログラムデータの再書き込みができなくなってしまう。
【0003】
そこで、たとえば特許文献1では、データの書き込み作業が中断しても、データの消失を防止することができるようにした均等ブロック消去型フラッシュメモリの書き込み方法を提案している。すなわち、特許文献1での均等ブロック消去型フラッシュメモリは、たとえば図4に示すように、データ書き込み用メモリブロック1aとチェックデータ格納エリア2aとらかなる書き込み用ブロック1Aと、データ書き込み用メモリブロック1bとチェックデータ格納エリア2bとらかなる書き込み用ブロック1Bと、データ書き込み用メモリブロック1cとチェックデータ格納エリア2cとらかなる書き込み用ブロック1Cと、データ待避用メモリブロック1dとチェックデータ格納エリア2dとらかなる待避用ブロック1Dとで構成されている。
【0004】
そして、たとえば書き込み用ブロック1Aのデータの書き換えを行う場合には、図5に示すような手順が実行される。すなわち、(ステップ501)において、書き込みスタートOKとなると、まず待避用ブロック1Dの既存のデータを消去し、データ書き込み用メモリ1aのデータをデータ待避用メモリブロック1dに、チェックデータ格納エリア2aのデータをチェックデータ格納エリア2dにそれぞれ書き込む(ステップ502)。(ステップ503)において、データの書き込みが終了し書き込み終了OKとなると、書き込み用ブロック1Aのデータを全て消去し、そのデータ書き込み用メモリブロック1aに新たなデータを書き込む(ステップ504)。(ステップ505)において、データの書き込みが終了し書き込み終了OKとなると、チェックデータ格納エリア2aに固有の番号であるチェックデータを書き込む(ステップ506)。このチェックデータは、データ書き込み用メモリブロック1aに書き込まれたデータが有効であることを示すフラグとしての役割をもっている。(ステップ507)において、チェックデータの書き込みが終了し書き込み終了OKとなると、チェックデータ格納エリア2aのチェックデータが照合される(ステップ508)。ここで、チェックデータ照合OKであれば(ステップ509)、データ書き込み用メモリブロック1aに書き込まれたデータが読み出され、その読み出されたデータに従っての実行が行われる(ステップ510)。
【0005】
一方、(ステップ501)においての書き込みスタートOKから、(ステップ502)でのデータ書き込み中において、停電等が生じると、データの書き込みが停止となる(ステップ511)。このとき、(ステップ508)にてチェックデータ格納エリア2aのチェックデータが照合されるが、この時点では、データ書き込み用メモリブロック1aに書き込まれたデータが有効であることを示すフラグとしての役割をもつチェックデータがチェックデータ格納エリア2aに書き込まれていない。そのため、チェックデータ照合NGとなり(ステップ512)、データ待避用メモリブロック1dに書き込まれたデータが読み出され、その読み出されたデータに従っての実行が行われる(ステップ513)。次いで、再度、(ステップ514)において、書き込みスタートOKとなると、上述した(ステップ502)〜(ステップ510)の手順に従う。なお、以上のようなデータ書き込みの手順は、その手順を示すデータ書き込み用のプログラムに従って実行される。
【0006】
【特許文献1】
特開平10−124403号公報(段落0012〜0014、0018〜0022、図2)
【0007】
【発明が解決しようとする課題】
ところが、上述した特許文献1では、たとえば書き込み用ブロック1Aへのデータ書き込み中に、書き込み作業が中断しても、少なくともデータ待避用メモリブロック1dとチェックデータ格納エリア2dとらかなる待避用ブロック1Dに書き込み用ブロック1Aに書き込まれていたデータが存在するので、データの消失が防止されるが、待避用ブロック1Dを必要とするばかりか、各データ書き込み用メモリブロック1a〜1c毎にチェックデータ格納エリア2a〜2cを必要とするため、フラッシュメモリのデータ書き込みのための領域が少なくなり、フラッシュメモリの有効利用ができないという問題がある。
【0008】
また、書き込み用ブロック1A〜1Cに書き込むべきプログラムデータが膨大である場合には、さらに記憶容量の大きなフラッシュメモリを選定しなければならず、コストアップを招いてしまうという問題がある。
【0009】
また、たとえば書き込み用ブロック1Aへのデータ書き込みを行うために、少なくとも書き込み用ブロック1Aへのデータ書き込みを行う手順に加え、一旦、待避用ブロック1Dの既存のデータを消去し、データ書き込み用メモリブロック1aのデータをデータ待避用メモリブロック1dに、チェックデータ格納エリア2aのデータをチェックデータ格納エリア2dにそれぞれ書き込みむ手順が別途必要となるため、その手順を示すデータ書き込み用のプログラムが複雑になってしまうという問題がある。
【0010】
本発明は、このような状況に鑑みてなされたものであり、フラッシュメモリの有効利用ができ、しかも記憶容量を必要最小限とするフラッシュメモリを選定することができ、さらにはデータ書き込み手順を示すデータ書き込み用のプログラムの簡素化を図ることができるフラッシュメモリ書き込み制御方法を提供することができるようにするものである。
【0011】
【課題を解決するための手段】
本発明のフラッシュメモリ書き込み制御方法は、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御方法であって、書き込み制御手段が書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示を出す工程と、書き込み対象制御手段が書き込み開始指示を受け取った後、メモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込む工程とを有することを特徴とする。
また、書き込み対象制御手段が書き込み開始指示を受け取ると、書き込み制御手段に書き込み開始指示に対する応答を出す工程と、書き込み制御手段が応答を受け取ると、書き込み対象制御手段に書き込み情報を送出する工程と、書き込み対象制御手段が受け取った書き込み情報をメモリブロックに書き込む工程と、書き込み情報の書き込みが終了すると、書き込み制御手段が書き込み対象制御手段に書き込みの終了を指示する工程と、書き込み対象制御手段が書き込みの終了の指示を受け取った後、メモリエリアに正常終了情報を書き込む工程と、書き込み対象制御手段が書き込んだ正常終了情報から書き込みの正常終了を確認した後、メモリブロックから書き込み情報を読み出す工程とを有するようにすることができる。
また、書き込み情報の書き込みが途中で停止した場合、書き込み対象制御手段がメモリエリアに正常終了情報が書き込まれているか否かを確認する工程と、正常終了情報が書き込まれていないと確認した場合、書き込み対象制御手段が書き込み制御手段からの次の書き込み開始指示が出されるまで待機する工程とを有するようにすることができる。
本発明のフラッシュメモリ書き込み制御システムは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御システムであって、フラッシュメモリに対しての書き込み開始指示、書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、書き込み装置に対しラインを介して接続され、フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むことを特徴とする。
本発明のフラッシュメモリ書き込み制御システムは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリと、フラッシュメモリに対しての書き込み開始指示、書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、書き込み装置に対しラインを介して接続され、フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むことを特徴とする。
また、書き込み開始指示を受け取った書き込み対象制御手段が書き込み制御手段に書き込み開始指示に対する応答を出すと、書き込み制御手段が書き込み対象制御手段に書き込み情報を送出し、書き込み対象制御手段が受け取った書き込み情報の書き込みを終了し、書き込み制御手段からの書き込みの終了の指示を受け取ると、メモリエリアに正常終了情報を書き込み、この書き込んだ正常終了情報から書き込みの正常終了を確認した後、メモリブロックから書き込み情報を読み出すようにすることができる。
また、書き込み情報の書き込みが途中で停止した場合、書き込み対象制御手段がメモリエリアに正常終了情報が書き込まれているか否かを確認し、正常終了情報が書き込まれていないと確認すると、書き込み対象制御手段が書き込み制御手段からの次の書き込み開始指示が出されるまで待機するようにすることができる。
本発明のフラッシュメモリは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなることを特徴とする。
本発明のフラッシュメモリカードは、所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリを搭載していることを特徴とする。
本発明に係るフラッシュメモリ書き込み制御方法においては、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込む。
【0012】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
図1は、本発明のフラッシュメモリ書き込み制御システムの一実施の形態を示すブロック図、図2は、図1のフラッシュメモリの構成を示すブロック図、図3は、図1のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法を説明するための手順を示す図である。
【0013】
図1に示すフラッシュメモリ書き込み制御システムは、書き込み装置10及び書き込み対象装置としてのECU(エレクトリカルコントロールユニット)20を備え、これらはデータのやり取りを行うバスライン30を介して接続されている。
書き込み装置10は、CPUを内蔵したマイコン11、フラッシュメモリ12、I/O13を備えている。書き込み制御手段としてのマイコン11は、所定の制御プログラムに従い、フラッシュメモリ12内のデータを読み出すとともに、書き込み開始信号用データ、書き込み情報としての書き込みプログラムデータ、書き込み終了信号用データの送出等を行う。フラッシュメモリ12は、書き込み開始信号用データ、書き込みプログラムデータ、書き込み終了信号用データ等を格納している。I/O13は、マイコン11によって読み出されたデータの送信やECU20側からのデータの受信を行う。なお、符号14は、バスライン30に対するデータの送受を行う入出力回路である。
【0014】
ECU20は、CPUを内蔵したマイコン21、フラッシュメモリ22、I/O23を備えている。書き込み対象制御手段としてのマイコン21は、書き込み等の手順を示すデータ書き込み用のプログラムに従い、フラッシュメモリ22内への書き込みプログラムデータの書き込みや、書き込みが正常に行われたことを示す正常終了情報としてのIDの書き込み等を行うが、その詳細は後述する。フラッシュメモリ22は、たとえば図2に示すような均等ブロック消去型とされ、所定のアドレスで均等に分けられた複数のプログラムデータ書き込みメモリブロック22a〜22e及び最下位アドレスに設けられたID書き込みメモリエリア23fから構成されている。なお、ID書き込みメモリエリア23fは、最下位アドレスに限るものではなく、任意のアドレスに設けられればよい。また、フラッシュメモリ22は、均等ブロック消去型に限らず、一括消去型、バイト単位消去型等であってもよい。
【0015】
プログラムデータ書き込みメモリブロック22a〜22eには、書き込み装置10側からの書き込みプログラムデータが書き込まれる。ID書き込みメモリエリア23fには、IDが書き込まれる。ここで、IDは、書き込みプログラムデータの書き込みが正常に終了したか否かを示すデータであり、何れかのプログラムデータ書き込みメモリブロック22a〜22eへの書き込みプログラムデータの書き込みが行われる前には初期値のデータが書き込まれている。そして、何れかのプログラムデータ書き込みメモリブロック22a〜22eへの書き込みプログラムデータの書き込みが終了すると、ID書き込みメモリエリア23fには初期値のIDに代えて初期値以外のIDが書き込まれる。ここで、初期値以外のIDは、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータである。I/O23は、マイコン21によって読み出されたデータの送信や書き込み装置10側からのデータの受信を行う。なお、符号24は、バスライン30に対するデータの送受を行う入出力回路である。
【0016】
次に、このような構成のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法について説明する。なお、以下の説明におけるマイコン21による書き込み手順を示すデータ書き込み用のプログラムは、ECU20側に予め格納されていてもよいし、書き込み装置10側からECU20側に送信するようにしてもよいが、ここではECU20側に予め格納されているものとする。また、プログラムデータ書き込みメモリブロック22a〜22eへの書き込みは、書き込み装置10側からの書き込み開始指示の内容によって何れかのブロック又は全てブロックのどちらでも可能であるが、以下の説明では全てのブロックに対しての書き込みが行われるものとする。
【0017】
まず、たとえばプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、書き込みプログラムデータが書き込まれる場合には、図3に示すような手順が実行される。すなわち、(ステップ301)において、書き込み開始信号受信OKとなると、プログラムデータ書き込みメモリブロック22aへのプログラムデータの書き込み状態となる(ステップ302)。つまり、図1の書き込み装置10のマイコン11によってフラッシュメモリ12から読み出された書き込み開始信号用データがバスライン30を介してECU20側に送信されると、ECU20側のマイコン21が書き込み開始信号を受信することで書き込み開始を認識する。このとき、ECU20側のマイコン21が予め格納されているデータ書き込み用のプログラムを起動し、その起動が完了すると、書き込み装置10側へ起動完了を通知する。すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込みプログラムデータがバスライン30を介してECU20側に送信される。ECU20側のマイコン21がプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、書き込みプログラムデータの書き込みを実行する。ここで、書き込み装置10側のフラッシュメモリ12から読み出された書き込みプログラムデータをECU20側に送信するとき、たとえばプログラムデータ書き込みメモリブロック22a〜22e毎に順次、送るようにしてもよいし、プログラムデータ書き込みメモリブロック22a〜22eに書き込むべき全ての書き込みプログラムデータを一度に送るようにしてもよい。何れにしても、書き込みプログラムデータの書き込みが正常に完了すると、ECU20側のマイコン21から書き込み装置10側へ書き込みの正常完了が通知される。また、書き込みの正常完了の通知に際しては、たとえばECU20側のマイコン21が書き込んだ書き込みプログラムデータを書き込み装置10側へ返し、書き込み装置10側でその書き込みプログラムデータをフラッシュメモリ12内の書き込みプログラムデータと比較して、一致したとき書き込みの正常完了を把握するステップをとるようにしてもよい。
【0018】
プログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eへの書き込みプログラムデータの書き込みが終了すると、書き込み終了信号受信OKとなる(ステップ303)。つまり、書き込みプログラムデータの書き込みが終了した後、ECU20側のマイコン21からの書き込みの正常完了の通知を受けて書き込み装置10側が書き込みの正常完了を把握すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込み終了信号用データがバスライン30を介してECU20側に送信される。ECU20側のマイコン21が書き込み終了信号を受信することで書き込み終了を認識する。このとき、マイコン21がフラッシュメモリ22のID書き込みメモリエリア23fに書き込まれている初期値のIDに代えて、初期値以外のIDを書き込む(ステップ304)。つまり、初期値以外のIDは、上述したように、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータである。
【0019】
次いで、ID書き込み終了OKとなると(ステップ305)、ECU20側のマイコン21から書き込み装置10側へID書き込みの終了が通知される。これにより、書き込み装置10側では書き込みプログラムデータの書き込みに関わる全ての手順の完了を把握することができる。その後、ECU20側のマイコン21は、ID書き込みメモリエリア23fのID照合状態に移行する(ステップ306)。ここで、ID照合OKであれば(ステップ307)、プログラムデータ書き込みメモリブロック22a〜22eに書き込まれた書き込みプログラムデータが読み出され、その読み出された書き込みプログラムデータに従っての実行が行われる(ステップ308)。なお、ここでの照合は、ID書き込みメモリエリア23fに書き込みプログラムデータの書き込みが正常に終了したことを示すデータであるIDが書き込まれているか否かを確認することである。
【0020】
一方、(ステップ301)においての書き込み開始信号受信OKから、(ステップ302)での書き込みプログラムデータの書き込み中において、停電等が生じると、書き込みプログラムデータの書き込みが途中で停止となる(ステップ309)。つまり、停電等によってECU20側のマイコン21から書き込み装置10側への上述した書き込みの正常完了が所定時間、通知されない場合、書き込み装置10側ではECU20側での書き込みNGを把握することができる。次いで、停電等の障害が復旧し、ECU20側での書き込みが可能な状態となると、書き込み装置10側からECU20側へたとえばリセット信号が送られる。すると、ECU20側のマイコン21は、(ステップ306)のID照合状態に移行する。この時点では、ID書き込みメモリエリア23fにプログラムデータの書き込みが正常に終了したことを示すデータであるIDが書き込まれていないため、ID照合NGとなり(ステップ310)、(ステップ311)の再書き込み待機状態に移行する。ここでは、上述したように、ECU20側のマイコン21が予め格納されているデータ書き込み用のプログラムを再度起動し、その起動が完了すると、書き込み装置10側へ起動完了を通知する。すると、書き込み装置10のマイコン11により、フラッシュメモリ12から読み出された書き込み開始信号用データがバスライン30を介してECU20側に再度送信されることで、書き込み開始信号受信OKとなる(ステップ312)。
【0021】
その後、上述したように、書き込み装置10のマイコン11によってフラッシュメモリ12から読み出された書き込みプログラムデータがバスライン30を介してECU20側に再送信されると、ECU20側のマイコン21がプログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて再度、書き込みプログラムデータの書き込みを実行する(ステップ302)。以降、書き込みプログラムデータの書き込みが正常に終了した場合には、上述した(ステップ303)→(ステップ304)→(ステップ305)→(ステップ306)→(ステップ307)→(ステップ308)の手順が実行され、書き込みプログラムデータの書き込みが正常に終了しなかった場合には、上述した(ステップ309)→(ステップ306)→(ステップ310)→(ステップ311)の手順が実行される。
【0022】
このように、本実施の形態では、フラッシュメモリ22を、所定のアドレスで均等に分けられた複数のプログラムデータ書き込みメモリブロック22a〜22e及び最下位アドレスに設けられたID書き込みメモリエリア23fから構成し、書き込み装置10側のマイコン11からECU20側のマイコン21にプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに対する書き込み開始指示が出されると、マイコン21が書き込み装置10側から受け取った書き込みプログラムデータをプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23fに、書き込みプログラムデータが書き込まれたプログラムデータ書き込みメモリブロック22a〜22eの何れかを示すアドレスと、書き込みプログラムデータの書き込みが正常に終了したことを示すデータとからなる初期値以外のIDを書き込むようにした。この場合、ID書き込みメモリエリア23fは、フラッシュメモリ22の任意のアドレスにあればよく、たとえば最下位アドレスに設けることで、プログラムデータ書き込みメモリブロック22a〜22eの領域を狭めることがないので、フラッシュメモリ22の有効利用を図ることができる。
【0023】
また、フラッシュメモリ22の有効利用が図れるため、書き込みプログラムデータが膨大であっても、さらに記憶容量の大きなフラッシュメモリ22を選定する必要がなく、コストアップを避けることができる。
【0024】
また、書き込み装置10側のマイコン11からECU20側のマイコン21にプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに対する書き込み開始指示が出されると、マイコン21がプログラムデータ書き込みメモリブロック22a〜22eの何れか又は全てに書き込みプログラムデータを書き込み、書き込みプログラムデータの書き込みが正常に終了した場合には、ID書き込みメモリエリア23fに初期値以外のIDを書き込む手順を備えればよいので、その手順を示すデータ書き込み用のプログラムの簡素化を図ることができる。よって、マイコン21が簡素化されたデータ書き込み用のプログラムを実行することができ、マイコン21の負荷をさらに軽減することができる。
【0025】
なお、本実施の形態では、プログラムデータ書き込みメモリブロック22aからプログラムデータ書き込みメモリブロック22eに向けて順次、プログラムデータが書き込まれる場合について説明したが、この例に限らず、書き込み装置10側のマイコン11からの書き込み開始指示の内容により、プログラムデータ書き込みメモリブロック22a〜22eの何れかにのみ書き込みプログラムデータの書き込みを行うことも可能である。また、書き込まれるデータは、プログラムデータに限らず、演算結果データ、テキストデータ、イメージデータ等の他のデータであってもよい。
【0026】
また、本実施の形態では、書き込み対象装置をECU20とした場合について説明したが、この例に限らず、携帯電話、ビデオカメラ、デジタルカメラ、ゲーム機器、パソコン等の電子機器内部に搭載されている制御ユニットであってもよい。また、フラッシュメモリ22は、ECU20内部に搭載されるものに限らず、フラッシュメモリカードに搭載するようにしてもよい。
【0027】
【発明の効果】
以上の如く本発明に係るフラッシュメモリ書き込み制御方法によれば、書き込み制御手段から書き込み対象制御手段にメモリブロックの何れか又は全てに対する書き込み開始指示が出されると、書き込み対象制御手段がメモリブロックの何れか又は全てに書き込み情報を書き込み、書き込み情報の書き込みが正常に終了した場合には、メモリエリアに正常終了情報を書き込むようにしたので、フラッシュメモリの有効利用ができ、しかも記憶容量を必要最小限とするフラッシュメモリを選定することができ、さらにはデータ書き込み手順を示すデータ書き込み用のプログラムの簡素化を図ることができる。
【図面の簡単な説明】
【図1】本発明のフラッシュメモリ書き込み制御システムの一実施の形態を示すブロック図である。
【図2】図1のフラッシュメモリの構成を示すブロック図である。
【図3】図1のフラッシュメモリ書き込み制御システムによるフラッシュメモリ書き込み制御方法を説明するための手順を示す図である。
【図4】従来のフラッシュメモリの一例を示すブロック図である。
【図5】図4のフラッシュメモリの書き込み制御方法を説明するための図である。
【符号の説明】
10 書き込み装置
11,21 マイコン
12,22 フラッシュメモリ
20 ECU
22a〜22e プログラムデータ書き込みメモリブロック
23f ID書き込みメモリエリア
30 バスライン
Claims (9)
- 所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御方法であって、
書き込み制御手段が書き込み対象制御手段に前記メモリブロックの何れか又は全てに対する書き込み開始指示を出す工程と、
前記書き込み対象制御手段が前記書き込み開始指示を受け取った後、前記メモリブロックの何れか又は全てに前記書き込み情報を書き込み、前記書き込み情報の書き込みが正常に終了した場合には、前記メモリエリアに前記正常終了情報を書き込む工程とを有する
ことを特徴とするフラッシュメモリ書き込み制御方法。 - 前記書き込み対象制御手段が前記書き込み開始指示を受け取ると、前記書き込み制御手段に前記書き込み開始指示に対する応答を出す工程と、
前記書き込み制御手段が前記応答を受け取ると、前記書き込み対象制御手段に前記書き込み情報を送出する工程と、
前記書き込み対象制御手段が受け取った前記書き込み情報を前記メモリブロックに書き込む工程と、
前記書き込み情報の書き込みが終了すると、前記書き込み制御手段が前記書き込み対象制御手段に書き込みの終了を指示する工程と、
前記書き込み対象制御手段が前記書き込みの終了の指示を受け取った後、前記メモリエリアに前記正常終了情報を書き込む工程と、
前記書き込み対象制御手段が書き込んだ前記正常終了情報から書き込みの正常終了を確認した後、前記メモリブロックから前記書き込み情報を読み出す工程とを有する
ことを特徴とする請求項1に記載のフラッシュメモリ書き込み制御方法。 - 前記書き込み情報の書き込みが途中で停止した場合、前記書き込み対象制御手段が前記メモリエリアに前記正常終了情報が書き込まれているか否かを確認する工程と、
前記正常終了情報が書き込まれていないと確認した場合、前記書き込み対象制御手段が前記書き込み制御手段からの次の書き込み開始指示が出されるまで待機する工程とを有する
ことを特徴とする請求項1又は2に記載のフラッシュメモリ書き込み制御方法。 - 所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリへのデータの書き込みを制御するフラッシュメモリ書き込み制御システムであって、
前記フラッシュメモリに対しての書き込み開始指示、前記書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、
前記書き込み装置に対しラインを介して接続され、前記フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、
前記書き込み制御手段から前記書き込み対象制御手段に前記メモリブロックの何れか又は全てに対する書き込み開始指示が出されると、前記書き込み対象制御手段が前記メモリブロックの何れか又は全てに前記書き込み情報を書き込み、前記書き込み情報の書き込みが正常に終了した場合には、前記メモリエリアに前記正常終了情報を書き込むことを特徴とするフラッシュメモリ書き込み制御システム。 - 所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリと、
前記フラッシュメモリに対しての書き込み開始指示、前記書き込み情報の送出、書き込み終了の指示を行う書き込み制御手段を有する書き込み装置と、
前記書き込み装置に対しラインを介して接続され、前記フラッシュメモリに対してのデータの書き込み及び読み出しを行う書き込み対象制御手段を有する書き込み対象装置とを備え、
前記書き込み制御手段から前記書き込み対象制御手段に前記メモリブロックの何れか又は全てに対する書き込み開始指示が出されると、前記書き込み対象制御手段が前記メモリブロックの何れか又は全てに前記書き込み情報を書き込み、前記書き込み情報の書き込みが正常に終了した場合には、前記メモリエリアに前記正常終了情報を書き込むことを特徴とするフラッシュメモリ書き込み制御システム。 - 前記書き込み開始指示を受け取った前記書き込み対象制御手段が前記書き込み制御手段に前記書き込み開始指示に対する応答を出すと、前記書き込み制御手段が前記書き込み対象制御手段に前記書き込み情報を送出し、前記書き込み対象制御手段が受け取った前記書き込み情報の書き込みを終了し、前記書き込み制御手段からの書き込みの終了の指示を受け取ると、前記メモリエリアに前記正常終了情報を書き込み、この書き込んだ前記正常終了情報から書き込みの正常終了を確認した後、前記メモリブロックから前記書き込み情報を読み出すことを特徴とする請求項4又は5に記載のフラッシュメモリ書き込み制御システム。
- 前記書き込み情報の書き込みが途中で停止した場合、前記書き込み対象制御手段が前記メモリエリアに前記正常終了情報が書き込まれているか否かを確認し、前記正常終了情報が書き込まれていないと確認すると、前記書き込み対象制御手段が前記書き込み制御手段からの次の書き込み開始指示が出されるまで待機することを特徴とする請求項4〜6の何れかに記載のフラッシュメモリ書き込み制御システム。
- 所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなることを特徴とするフラッシュメモリ。
- 所定のアドレスで分けられるとともに、書き込み情報が書き込まれる複数のメモリブロックと、任意のアドレスに設けられ書き込みの正常終了を示す正常終了情報が書き込まれるメモリエリアとからなるフラッシュメモリを搭載していることを特徴とするフラッシュメモリカード。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002283976A JP2004118976A (ja) | 2002-09-27 | 2002-09-27 | フラッシュメモリ書き込み制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002283976A JP2004118976A (ja) | 2002-09-27 | 2002-09-27 | フラッシュメモリ書き込み制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004118976A true JP2004118976A (ja) | 2004-04-15 |
Family
ID=32277684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002283976A Pending JP2004118976A (ja) | 2002-09-27 | 2002-09-27 | フラッシュメモリ書き込み制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004118976A (ja) |
-
2002
- 2002-09-27 JP JP2002283976A patent/JP2004118976A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5399626B2 (ja) | ページデータを保存するための方法と装置 | |
JP4817836B2 (ja) | カードおよびホスト機器 | |
US20100122017A1 (en) | Memory controller, non-volatile memory system, and host device | |
KR100634436B1 (ko) | 멀티 칩 시스템 및 그것의 부트코드 페치 방법 | |
JP2019128946A (ja) | ファームウェアの更新方法及びこの方法を用いる電子装置 | |
US7831755B2 (en) | Method and system for interfacing a plurality of memory devices using an MMC/SD protocol | |
WO2003071436A1 (fr) | Dispositif de connexion externe, dispositif hote et systeme de communication de donnees | |
US6954815B2 (en) | Microcomputer with universal serial bus interface circuit and method of controlling the same | |
JP3370978B2 (ja) | エンタテインメント装置および情報処理装置 | |
KR100736902B1 (ko) | 복수의 프로세서에 의한 메모리 공유 방법 및 장치 | |
JP5010065B2 (ja) | マイクロコンピュータ | |
JP2004118976A (ja) | フラッシュメモリ書き込み制御方法 | |
US20090177716A1 (en) | Removable storage device and electronic apparatus that can be connected together and method for saving environmental data | |
JP3376331B2 (ja) | フラッシュメモリを用いる記憶方法及び記憶制御プログラムを記録した記録媒体 | |
US20070279983A1 (en) | Semiconductor memory device and data transmission method thereof | |
WO2010000678A1 (en) | Method for transferring or erasing data in a master-slave environment | |
JP4793798B2 (ja) | マイクロコンピュータ | |
JPH09305395A (ja) | 電子機器 | |
JP4178915B2 (ja) | 電子機器 | |
JP4988982B2 (ja) | マイクロコンピュータの制御方法 | |
JP2008009521A (ja) | 携帯型電子装置 | |
JP4608174B2 (ja) | エンタテインメント装置、情報処理装置及び可搬型記憶装置 | |
JP2004185419A (ja) | 携帯可能電子媒体と、その携帯可能電子媒体の発行システム、処理方法及び発行方法 | |
JP4314460B2 (ja) | データ転送方法、データ転送装置およびデータ転送システム | |
JP3582432B2 (ja) | 通信端末装置および通信端末装置のリセット処理方法 |