JP2009087507A - 制御装置、および制御装置のメモリ初期化方法 - Google Patents

制御装置、および制御装置のメモリ初期化方法 Download PDF

Info

Publication number
JP2009087507A
JP2009087507A JP2007259786A JP2007259786A JP2009087507A JP 2009087507 A JP2009087507 A JP 2009087507A JP 2007259786 A JP2007259786 A JP 2007259786A JP 2007259786 A JP2007259786 A JP 2007259786A JP 2009087507 A JP2009087507 A JP 2009087507A
Authority
JP
Japan
Prior art keywords
error
memory
initialization
ecc
control device
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.)
Granted
Application number
JP2007259786A
Other languages
English (en)
Other versions
JP5042766B2 (ja
Inventor
Wataru Nagaura
永浦  渉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007259786A priority Critical patent/JP5042766B2/ja
Publication of JP2009087507A publication Critical patent/JP2009087507A/ja
Application granted granted Critical
Publication of JP5042766B2 publication Critical patent/JP5042766B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】ECC機能付きメモリ初期化処理にて、ECC初期化実行の有無を判定することなく、ECC初期化する。
【解決手段】ECCエラー発生時にECCエラー情報などを格納したりするECCエラー時割り込み処理と、ECCエラー発生しても、ECCエラーを無視するECCエラー無効時割り込み処理と、メモリを読み出して書き戻す、読み出し書き戻しメモリ初期化処理とを備え、ECC初期化時は、ECCエラー無効時割り込み処理が起動されるようにし、メモリ保存領域のECC初期化には、読み出し書き戻しメモリ初期化処理を実施し、ECC初期化処理後は、ECCエラー時割り込み処理が起動されるようにする。
【選択図】図1

Description

本発明は、センサや、ネットワークを介した外界の状態からアクチュエータを制御する制御装置に係わり、特に、制御装置に内蔵されたマイコンのエラー訂正機能付きRAMを有した制御装置に関する。
自動車エンジン制御装置においては、クランク角センサ信号などの入力をもとに、燃料量や噴射タイミングを制御する。エンジン制御は、高機能化にともない、多くの情報を元に高度な制御が要求され、入出力数は増加している。
近年、エンジンを制御する制御装置は、マイコンが内蔵されているが、マイコンに内蔵されたRAMにエラー訂正機能がついたものが搭載され、メモリに対する信頼性向上を実現している。
エラー訂正機能(ECC: Error Correction Code)のRAMは、エラー訂正用の情報が必要であり、電源投入後は、ECCのための初期化が必要となる。
したがって、電源投入直後などの、メモリがECC初期化されていない状態でメモリを使用すると、ECCエラーと判定してしまうために、この誤判定を避ける手段として、ハードウェアの面からエラー判定しない機構を設けているものがある(特許文献1、2参照)。これらの手段は、ECC初期化の実施の有無を示すフラグの機構を備えている。
特開2005−63547号公報 特開平11−328045号公報
特許文献1、2ではECC初期化機構が備わっているが、ECC初期化機構を備えないメモリの場合、ソフトウェアにて、ECC初期化を実施する必要がある。
また、ECCのエラーチェックは、書込みで初期化、読み出しでチェックを実施する。自動車制御装置におけるエンジン制御装置の場合、イグニッションスイッチのONでマイコン動作開始し、そのときにメモリを初期化するが、前回のイグニッションスイッチがONのときの状態をメモリに保存しているため、毎回のイグニッションスイッチON時で、ECC初期化のために、適当なデータを書き込んでの初期化を実施すると、保存されていた値が上書きされてしまう。
また、バッテリ接続後の初回のイグニッションスイッチON時では、メモリは初期化されていないため、読み出してしまうと、ECCエラーが発生する。ECC初期化の実施済み情報を利用して、ECC初期化済みの判定を入れた場合、ECC未初期化時に本判定を実施するとECCエラーが発生してしまう。
本発明では、上記のような課題を解決するために、次のように構成される。
ECCエラー発生時にECCエラー情報などを格納したりするECCエラー時割り込み処理と、ECCエラー発生しても、ECCエラーを無視するECCエラー無効時割り込み処理と、メモリを読み出して書き戻す、読み出し書き戻しメモリ初期化処理とを備え、ECC初期化時は、ECCエラー無効時割り込み処理が起動されるようにし、メモリ保存領域のECC初期化には、読み出し書き戻しメモリ初期化処理を実施し、ECC初期化処理後は、ECCエラー時割り込み処理が起動されるようにする。
本発明によれば、ECC初期化実施の有無の判定をすることなく、ECC初期化できる。
本発明の実施例について、図を引用して以下に説明する。
図10は、ECC機能を具備したメモリ搭載のマイクロコントローラ9の構成を示す。
マイクロコントローラ9は、CPU91と、プログラムやデータを格納したフラッシュROM92と、ランダムアクセスメモリ(RAM)93と、ダイレクトメモリアクセス機能(DMA)94やアナログデジタル変換器(AD変換器)95などの周辺機器を搭載する。ここではRAM93にECC機能が搭載されたものとする。
図11は、RAM93の構成図を示す。
RAM93は値を記憶する値記憶部931とエラー訂正のための情報を格納するエラー情報格納部932と値記憶部の値とエラー情報格納部からの情報とからエラー有無をチェックするエラー検出部933とからなる。
エラー情報は、値を書き込むと同時に更新され、値を読み出すときにチェックする。エラー訂正できる場合は、自動で訂正された値を出力し、エラー訂正できない場合はCPUに対して割り込みを発生する。初回電源投入時は値記憶部およびエラー方法格納部は未初期化のため、初期化する前に値を読み出すとエラー訂正できずに割り込みが発生する可能性がある。
図1は、ECC初期化のフロー図である。
ECC初期化処理スタート111に続く、処理111で、ECCエラーを無効化する。処理112でECC初期化を実施する。処理113で、ECCエラーを有効化し、END114になる。
この処理フローにより、ECC初期化時のECCエラーは無視し、ECCエラー発生の履歴を残さない。
図2は、ECC初期化処理のフロー図である。
スタート1121に続く、処理1122では、メモリ保存領域外で、メモリ書込みによるECC初期化を実施する。処理1123では、メモリ保存領域に対して、読み出し書き戻し処理を実施し、END1124になる。
この処理フローにより、保存された値がそのまま保持されるとともに、書込み処理を実施しているのでECC初期化される。
なお、ECC未初期化時に本処理を実施すると、ECCエラー発生するが、処理112によりECCエラー無効にしているため、この時点でのECCエラーは無視される。さらに、読み出された値は、不定値となっているが、初期化は実施されていないため、その値(不定値)を使って書き戻しても問題ない。
図3は、書込み初期化処理1122のフロー図である。
START11221に続く、処理11222では、ROMに初期値を持った領域からの初期値コピーによる初期化を実施する。初期値が格納されているROMの先頭番地であるSTART_ROM_ADDRから、コピーする先のメモリの先頭番地である、START_RAM_ADDRへ、RAM_INIT_SIZEのサイズ長分、コピーする。この際には、読み出しはROMの方なので、ECCの初期化の実施/未実施に関係なく、ECCエラーは発生しない。
さらに、ECC機能のない、通常のRAMの初期化処理もあわせて実施しており効率的である。処理11223では、ゼロクリアする領域の初期化を実施し、END11224になる。
この場合も、メモリの読み出しは不要であり、ECCの初期化の実施/未実施に関係なく、ECCエラーは発生しない。さらに、ECC機能のない、通常のRAMの初期化処理もあわせて実施しており効率的である。
図4は、読み出し書き戻し処理1123のフロー図である。
START11231に続く、処理11232では、コピー元のデータのアドレスとコピー先のアドレスを同じにして、メモリ保存領域のサイズ、RAM_NCLR_SIZE分コピーを繰り返し、END11233になる。
この処理フローにより、ECC実施後では、メモリ値は保持される。ECC初期化未実施時は読み出し時にエラー発生するが、処理111により無視される。
図5は、ECCエラー割り込み処理とECCエラー無効時の割り込み処理のフロー図である。
START211に続く、ECCエラー割り込み処理では、処理212にて、割り込みの前処理を実施する。たとえば、レジスタなどのスタック退避である。処理213では、ECCエラー情報を保存し、ECCエラー発生を履歴として残す。また、必要に応じて、メモリのリカバ処理を実施する。
処理214では、割り込みの後処理を実施する。たとえば、レジスタなどの戻しである。なお、処理214を経てEND215になる。
一方、START221に続く、ECCエラー無効時割り込み処理では、処理222にて、割り込みの前処理を実施する。たとえば、レジスタなどのスタック退避である。処理223では、割り込みの後処理を実施する。たとえば、レジスタなどの戻しである。なお、処理223を経てEND224になる。
図6は、ECCエラー無効化とECCエラー有効化のフロー図である。
START1111に続く、ECCエラー無効化では、処理1112では、ECCエラー割り込みベクターテーブルをECCエラー無効時割り込み処理の先頭にセットする。これにより、ECCエラー発生時では、ECCの処理は実施されず、無視される。なお、処理1112を経てEND11113になる。
一方、START1131に続く、ECCエラー有効化では、処理1132では、ECCエラー割り込みベクターテーブルをECCエラー割り込み処理の先頭にセットする。これにより、ECCエラー発生時では、ECCエラー情報が保存され、ECCエラー発生の履歴が残る。なお、処理1132を経てEND1133になる。
図7は、ROMとECC機能付きRAMのメモリマップを示す。
ROM41のメモリマップには、初期値が格納されている先頭番地START_ROM_ADDRとそのデータサイズRAM_INIT_SIZEを示している。
RAM42のメモリマップには、メモリ保存領域の先頭番地であるSTART_NCLR_RAM_ADDRとそのサイズRAM_NCLR_SIZEを示している。
また、初期値のコピー先の先頭アドレスであるSTART_RAM_ADDRとそのデータサイズRAM_INIT_SIZEを示している。さらに、ゼロクリアする領域の先頭番地であるSTART_CLR_RAMとそのデータサイズRAM_CLR_SIZEを示している。
実施例1では、ECC初期化をECC初期化実施有無の判定無しとしたが、バックアップ領域を含む部分は、判定を入れてもよい。その場合は、ECCエラー無効化処理およびECCエラー無効時割り込みは不要とできる。また、実施結果をRAM読み出ししない手段として、ECC機能を有しない別のメモリを使用すればよい。
図8にECC初期化済み判定処理をつけたECC初期化処理を示す。
ECC初期化処理32では、スタート処理31に続きECC初期化処理32を実施し、END33になる。
スタート321に続き、書込み初期化322を行い、判定処理323で、ECC初期化済みの判定をし、ECC初期化していなければ、処理324にて書込みによる初期化を実施し、初期化済みであれば処理324をスキップする。処理325では、実施済みフラグ値として、0x55555555を判定用RAMにセットし、END326になる。
なお、フラグセット用RAMは、バッテリバックアップされているRAMである。
実施例2では、ECC初期化の実施の有無をECC機能を有しないメモリに記憶していたが、たとえば、特開2005−114555号公報に記載のイグニッションオフタイマーの機能を備えた制御装置であれば、イグニッションオフタイマーの機能を使っても良い。
この場合、イグニッションオフタイマーの値が0であれば、バッテリ接続後の初回のRAM初期化であるため、ECC未初期化と判断できる。
ECC初期化後は、イグニッションオフタイマーをスタートさせると、それ以降は1以上の値が返るので、イグニッションオン時のECC初期化処理時には、イグニッションオフタイマー値が0でないので、ECC実施済みと判断できる。
イグニッションオフタイマー値によるECC初期化済判定のECC初期化のフローを図9に示す。
スタート341に続き、書込み初期化342を行い、処理判定343でイグニッションオフタイマー値が0か否かを判定する。0であれば、処理344で書込み初期化処理にてECC初期化する。イグニッションオフタイマーをスタートは、イグニッションスイッチをオフしたタイミングでスタートさせ、これにより、イグニッションオフタイマー値が1以上になるようにする。なお、処理344を経てEND346になる。
本発明は、自動車制御をはじめとして、通信機能を内蔵した制御装置に適用可能である。
本発明の実施例に係わるECC初期化のフロー図。 本発明の実施例に係わるECC初期化処理のフロー図。 本発明の実施例に係わる書込み初期化処理のフロー図。 本発明の実施例に係わる読み出し書き戻し処理のフロー図。 本発明の実施例に係わるECCエラー割り込み処理とECCエラー無効時の割り込み処理のフロー図。 本発明の実施例に係わるECCエラー無効化とECCエラー有効化のフロー図。 本発明の実施例に係わるメモリマップ。 本発明の実施例に係わるECC初期化済み判定ありECC初期化のフロー図。 本発明の実施例に係わるイグニッションオフタイマー値によるECC初期化済判定のECC初期化のフロー図。 本発明の実施例に係わるもので、ECC機能を具備したメモリ搭載のマイクロコントローラの構成を示す図。 本発明の実施例に係わるもので、RAMの構成図を示す図。
符号の説明
111…ECCエラー無効化処理、112…ECC初期化処理、113…ECCエラー有効化処理、1122…書込み初期化処理、1123…読み出し書き戻し処理、21…ECCエラー割り込み処理、22…ECCエラー無効時割り込み処理、41…ROMメモリマップ、42…RAMメモリマップ、9…マイクロコントローラ、91…CPU、92…フラッシュROM、93…RAM、94…DMA、95…AD変換器、931…値記憶部、932…エラー情報格納部、933…エラー検出部。

Claims (6)

  1. エラー訂正機能付きメモリを有する制御装置のメモリ初期化方法において、
    前記エラー訂正機能付きメモリを初期化する前にメモリエラー発生時に前記エラー発生を無効にし、前記エラー訂正機能付きメモリを初期化した後には、前記エラー発生時に前記エラー処理を実施するためにエラーを有効にすることを特徴とする制御装置のメモリ初期化方法。
  2. 請求項1記載の制御装置のメモリ初期化方法において、
    初期化前と初期化後とで値を保持する前記メモリの領域に対する初期化は、値を読み出してからその読み出した値をそのまま書き戻すことを特徴とする制御装置のメモリ初期化方法。
  3. エラー訂正機能付きメモリを有する制御装置において、
    エラー発生時の割り込み処理では、エラー発生に関しては無視をする処理機能がもたされたエラー無視割り込み処理手段と、エラー発生時にはエラー情報を保持するなどの処理機能がもたされたエラー割り込み処理手段を有し、
    前記エラー無視割り込み処理手段、前記エラー割り込み処理手段が収まるベクターテーブルより、エラー発生無効時にはエラー無視割り込み処理手段を選択し、エラー有効時にはエラー割り込み処理手段を選択する選択手段を有することを特徴とする制御装置。
  4. エラー訂正機能付きメモリを有する制御装置において、
    初期化前と初期化後とで値を保持する前記メモリの領域に対する初期化では、初期化済みか否かを判定する初期化済み判定手段を有し、
    前記初期化済み判定手段で初期化済みではない場合にのみ、前記領域を所定の値での書込みにより初期化する機能を有することを特徴とする制御装置。
  5. 請求項4記載の制御装置において、
    前記初期化済み判定手段は、初期化済み判定用メモリを有し、
    前記判定用メモリは、初期化後に所定の値を保持し、前記所定の値が読み出せた場合に初期化済みと判定する機能を有し、
    前記判定用メモリは、エラー訂正機能付きメモリではないメモリを使用することを特徴とする制御装置。
  6. 請求項4記載の制御装置において、
    前記初期化済み判定手段は、前記制御装置がエラー訂正機能付きメモリに供給する電源が切れたことを判定できる機能を有し、
    前記初期化済み判定手段は、前記判定機能にて、電源が切れたことを示した場合は未初期化と判定し、初期化後には前記判定状態を電源が切れた状態にセットする機能を有することを特徴とする制御装置。
JP2007259786A 2007-10-03 2007-10-03 制御装置、および制御装置のメモリ初期化方法 Active JP5042766B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007259786A JP5042766B2 (ja) 2007-10-03 2007-10-03 制御装置、および制御装置のメモリ初期化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007259786A JP5042766B2 (ja) 2007-10-03 2007-10-03 制御装置、および制御装置のメモリ初期化方法

Publications (2)

Publication Number Publication Date
JP2009087507A true JP2009087507A (ja) 2009-04-23
JP5042766B2 JP5042766B2 (ja) 2012-10-03

Family

ID=40660720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007259786A Active JP5042766B2 (ja) 2007-10-03 2007-10-03 制御装置、および制御装置のメモリ初期化方法

Country Status (1)

Country Link
JP (1) JP5042766B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028296A1 (en) * 2015-08-20 2017-02-23 Micron Technology, Inc. Solid state storage device with quick boot from nand media
JP7485877B2 (ja) 2022-08-10 2024-05-17 Necプラットフォームズ株式会社 情報処理システム、処理方法、およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61134988A (ja) * 1984-12-04 1986-06-23 Toshiba Corp 半導体メモリにおける誤り検出訂正機能制御系
JPS63167500A (ja) * 1986-12-27 1988-07-11 Mitsubishi Electric Corp 半導体記憶装置
JP2005063547A (ja) * 2003-08-11 2005-03-10 Toshiba Corp 半導体記憶装置
JP2007066423A (ja) * 2005-08-31 2007-03-15 Toshiba Corp 半導体集積回路装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61134988A (ja) * 1984-12-04 1986-06-23 Toshiba Corp 半導体メモリにおける誤り検出訂正機能制御系
JPS63167500A (ja) * 1986-12-27 1988-07-11 Mitsubishi Electric Corp 半導体記憶装置
JP2005063547A (ja) * 2003-08-11 2005-03-10 Toshiba Corp 半導体記憶装置
JP2007066423A (ja) * 2005-08-31 2007-03-15 Toshiba Corp 半導体集積回路装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028296A1 (en) * 2015-08-20 2017-02-23 Micron Technology, Inc. Solid state storage device with quick boot from nand media
US10394479B2 (en) 2015-08-20 2019-08-27 Micron Technology, Inc. Solid state storage device with quick boot from NAND media
US10956065B2 (en) 2015-08-20 2021-03-23 Micron Technology, Inc. Solid state storage device with quick boot from NAND media
US11287990B2 (en) 2015-08-20 2022-03-29 Micron Technology, Inc. Solid state storage device with quick boot from NAND media
JP7485877B2 (ja) 2022-08-10 2024-05-17 Necプラットフォームズ株式会社 情報処理システム、処理方法、およびプログラム

Also Published As

Publication number Publication date
JP5042766B2 (ja) 2012-10-03

Similar Documents

Publication Publication Date Title
JP5232018B2 (ja) エラー処理方法およびエラー処理装置
US7398425B2 (en) Information processing apparatus including NAND flash memory, and information processing method for the same
EP1538525A1 (en) ECC computation simultaneously performed while reading or programming a flash memory
JP2010165251A (ja) 情報処理装置及びプロセッサ並びに情報処理方法
CN101777024B (zh) 数据移动方法及系统
JP2007287022A (ja) 電子制御装置の情報記憶方法
US20120017071A1 (en) Apparatus and Method Thereof for Reliable Booting from NAND Flash Memory
US20090327838A1 (en) Memory system and operating method for it
JP4491034B1 (ja) 不揮発性記憶デバイスを有する記憶装置
JP5042766B2 (ja) 制御装置、および制御装置のメモリ初期化方法
US9778981B2 (en) Microcontroller
US7475212B2 (en) Method for reallocation of a memory of a subsystem, and subsystem
JP7210238B2 (ja) 情報処理装置、情報処理装置の制御方法、及び、プログラム
US20090210758A1 (en) Method for reducing data error when flash memory storage device using copy back command
JP7091853B2 (ja) 電子制御装置
JP2008102761A (ja) 組み込みファームウェアの更新方法
JP2008225922A (ja) 不揮発性記憶装置
JP2008140124A (ja) データ処理装置
KR101658828B1 (ko) 씨피유 코어의 기능복구를 위한 장치 및 방법
JP2009083777A (ja) 車両制御装置およびプログラム
JP2009075992A (ja) 情報処理装置のメモリダンプ採取方法
JP2004062309A (ja) 不当命令処理方法及びプロセッサ
JP2011150383A (ja) ファームウェア書き込み方法
JP6699591B2 (ja) エンジン制御装置
JP2007241757A (ja) 情報処理装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120612

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120711

R150 Certificate of patent or registration of utility model

Ref document number: 5042766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150720

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350