JP2014232420A - マイクロコントローラ及び誤り検出方法 - Google Patents

マイクロコントローラ及び誤り検出方法 Download PDF

Info

Publication number
JP2014232420A
JP2014232420A JP2013112789A JP2013112789A JP2014232420A JP 2014232420 A JP2014232420 A JP 2014232420A JP 2013112789 A JP2013112789 A JP 2013112789A JP 2013112789 A JP2013112789 A JP 2013112789A JP 2014232420 A JP2014232420 A JP 2014232420A
Authority
JP
Japan
Prior art keywords
value
storage unit
set value
unit
comparison
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
JP2013112789A
Other languages
English (en)
Other versions
JP6130735B2 (ja
Inventor
博和 神間
Hirokazu Jinma
博和 神間
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.)
Spansion LLC
Original Assignee
Spansion LLC
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 Spansion LLC filed Critical Spansion LLC
Priority to JP2013112789A priority Critical patent/JP6130735B2/ja
Publication of JP2014232420A publication Critical patent/JP2014232420A/ja
Application granted granted Critical
Publication of JP6130735B2 publication Critical patent/JP6130735B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】プロセッサの処理を中断せずに周辺回路の設定値の誤りを容易に検出する。【解決手段】記憶部4は、周辺回路3a〜3cの設定値a〜cを保持し、記憶部5は、設定値a〜cの複製値aa〜ccを保持し、読み出し時に複製値aa〜ccのエラー検出及び訂正を行い、比較検証部6は、複数の設定値a〜cの記憶部4への書き込み時期に基づき、書き込み時期が古い設定値を優先的に記憶部4から読み出し、読み出した設定値に対応する複製値を記憶部5から読み出し、比較検証を行う。【選択図】図1

Description

本発明は、マイクロコントローラ及び誤り検出方法に関する。
マイクロコントローラ(マイクロコンピュータと呼ばれる場合もある)は、各種周辺回路(タイマ、通信回路など)などの設定値が格納された記憶素子を有している。このような設定値のなかには、マイクロコントローラによる機器(自動車、家電製品、携帯電話など)の制御に直接影響するデータが含まれる場合があるが、記憶素子が中性子線などの影響を受け、そのデータが変わってしまい、信頼性が劣化する可能性がある。
RAM(Random Access Memory)の高信頼化技術としては、ECC(Error Correcting Code)などのパリティをRAMに付加して、データの読み出し時に誤りを検出し訂正する手法がある。また、RAMを多重化したり、RAM内に複数の領域を形成し、同一データを複数のRAMまたは同一RAM内の複数の領域に記憶しておき、読み出しの際に値を比較するミラーリング手法がある。
特開2001−356998号公報 特開2007−148779号公報
しかし、周辺回路の設定値については、プロセッサ側から読み出される命令コードなどとは異なり、一旦書き込まれた後は、通常プロセッサ側からのリードは発生せず、誤り検出及び訂正の機会がない。そのため、単にECC付のRAMを用いた手法では、設定値の信頼性を確保することは難しい。そこで、プロセッサによって、記憶素子に保存された設定値に対する定期的な更新が行われる。また、ミラーリング手法についても、より信頼性を確保したい設定値についてはプロセッサによる設定値の定期的な更新が行われることが考えられる。
このようにプロセッサによる設定値の定期的な更新が行われる場合、プロセッサで行っている処理が、設定値の更新処理のために中断することになり、処理速度の低下など、機器の制御に悪影響を与える懸念がある。
発明の一観点によれば、周辺回路の設定値を保持する第1の記憶部と、前記設定値の複製値を保持し、読み出し時に前記複製値のエラー検出及び訂正を行う第2の記憶部と、複数の前記設定値の前記第1の記憶部への書き込み時期に基づき、前記書き込み時期が古い前記設定値を優先的に前記第1の記憶部から読み出し、読み出した前記設定値に対応する前記複製値を前記第2の記憶部から読み出し、比較検証を行う比較検証部と、を備えたマイクロコントローラが提供される。
また、発明の一観点によれば、周辺回路の設定値を第1の記憶部に書き込み、前記設定値の複製値を、読み出し時に前記複製値のエラー検出及び訂正を行う第2の記憶部に書き込み、比較検証部が、複数の前記設定値の前記第1の記憶部への書き込み時期に基づき、前記書き込み時期が古い前記設定値を優先的に前記第1の記憶部から読み出し、読み出した前記設定値に対応する前記複製値を前記第2の記憶部から読み出し、比較検証を行う、誤り検出方法が提供される。
開示のマイクロコントローラ及び誤り検出方法によれば、プロセッサの処理を中断せずに周辺回路の設定値の誤りを容易に検出できる。
第1の実施の形態のマイクロコントローラの一例を示す図である。 誤り検出方法の一例を示すフローチャートである。 第2の実施の形態のマイクロコントローラの一例を示す図である。 比較検証部の一例を示す図である。 マイクロコントローラの動作開始時の処理の一例を示すフローチャートである。 ECC付RAMに格納されるデータの一例を示す図である。 設定値と複製値との比較検証時の処理の一例を示すフローチャートである。 優先順位の格納例を示す図である。 履歴情報の更新例を示す図である。 優先順位の更新例を示す図である。
以下、発明を実施するための形態を、図面を参照しつつ説明する。
(第1の実施の形態)
図1は、第1の実施の形態のマイクロコントローラの一例を示す図である。
第1の実施の形態のマイクロコントローラ1は、プロセッサ2、周辺回路3a,3b,3c、記憶部4,5、比較検証部6を有する。
プロセッサ2は、マイクロコントローラ1の各部を制御する。プロセッサ2は、たとえば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic Device)である。またプロセッサ2は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
周辺回路3a,3b,3cは、マイクロコントローラ1が制御する外部機器に対する接続用のインタフェース、タイマなどである。なお、周辺回路3a〜3cは、マイクロコントローラ1の外部に設けられていてもよい。
記憶部4は、たとえば、レジスタ(フリップフロップなど)4a,4b,4cを有する。記憶部4は、周辺回路3a,3b,3cを制御するための設定値a,b,cを保持している。
記憶部5は、設定値a〜cの複製値aa,bb,ccを保持する。また、記憶部5には、設定値の書き込み時期(更新時期)に関する情報(履歴情報)も格納される。書き込み時期は、たとえば、図示しないカウンタの値として格納される。記憶部5は、エラー検出、訂正用のパリティを含み、読み出し時に複製値のエラー検出及び訂正を行う。記憶部5は、たとえば、ECC付RAMである。なお、履歴情報は、別の記憶部に記憶されるようにしてもよい。
比較検証部6は、上記履歴情報を参照して、複数の設定値a〜cの記憶部4への書き込み時期に基づき、書き込み時期が古い設定値を優先的に記憶部4から読み出し、それに対応する複製値を記憶部5から読み出し、それらの比較検証を行う。比較検証部6は、たとえば、図1のように優先順位判定部6aと比較部6bを有している。
優先順位判定部6aは、履歴情報に基づき、たとえば、設定値a〜cのうち、どの設定値が最も書き込み時期が古いかを判定し、最も書き込み時期が古い設定値の優先順位を一番高くする。比較部6bは、優先順位の高い設定値から順に、所定の間隔で、対応する複製値との比較を行う。記憶部4から読み出された設定値a〜cが、記憶部5から読み出された複製値aa〜ccと異なる場合には、比較部6bは、たとえば、その旨をプロセッサ2に通知する。
以下、第1の実施の形態のマイクロコントローラ1による誤り検出方法の一例を、フローチャートを用いて説明する。
図2は、誤り検出方法の一例を示すフローチャートである。
たとえば、ユーザによる設定値aの書き込み要求があると、プロセッサ2の制御のもと、設定値aが記憶部4のレジスタ4aに書き込まれるとともに、その複製値aaが記憶部5に書き込まれる(ステップS1)。また、書き込み時期も記憶部5に記憶される(ステップS2)。その他の設定値b,cについても書き込み要求があった場合には、同様にプロセッサ2の制御のもと、設定値b,cが記憶部4のレジスタ4b,4cに書き込まれるとともに、その複製値bb,ccが記憶部5に書き込まれる。また、その書き込み時期が記憶部5に記憶される。
その後、ステップS3の処理が行われる。ステップS3の処理では、優先順位判定部6aは、複数の設定値a〜cの書き込み時期に基づき、優先順位を決定する。優先順位判定部6aは、書き込み時期が古い設定値の優先順位を高くする。たとえば、設定値a〜cの順で書き込みが行われた場合には、設定値aの優先順位が最も高く、その次に、設定値bの優先順位が高く、設定値cの最も優先順位が低くなる。
その後、ステップS4の処理が行われる。ステップS4の処理では、まず比較部6bは、たとえば、所定期間経過した後、優先順位の最も高い設定値、すなわち、書き込み時期が最も古い設定値を記憶部4から読み出し、それに対応する複製値を記憶部5から読み出し、それらの比較検証を行う。
たとえば、設定値aの優先順位が最も高い場合、設定値aと、設定値aに対応する複製値aaとの比較検証が行われる。複製値aaは、記憶部5から読み出される際にエラー検出及び訂正が行われるため、書き込み時の正しい値である可能性が高い。一方、記憶部4から読み出される設定値aは、たとえば、記憶部4が中性子線などの影響を受け、ソフトエラーが発生し、書き込み時の値とは変わっている可能性がある。そのため、設定値aを複製値aaと比較することで、設定値aの誤りを検出することが可能となる。
その後、ステップS5の更新処理が行われる。
設定値aが、複製値aaと異なっている場合には、比較部6bはその旨をプロセッサ2に通知し、プロセッサ2は、設定値aを更新する。そして、履歴情報や優先順位も更新される。設定値aを更新した場合には、設定値aが最も新しいものとなるため、優先順位は最も低くなる。また、比較検証部6は、設定値aと複製値aaが同じである場合(誤りがない場合)は、比較した時間の情報を履歴情報に保存し、比較した時間が新しいものの優先順位を下げるようにしてもよい。
なお、ステップS5の更新処理は、比較検証部6が、記憶部5から読み出した複製値で、対応する設定値を更新するようにしてもよい。
優先順位の最も高い設定値に対して、上記のような比較検証及び更新処理が行われると、比較部6bは、所定期間経過後に、次に優先順位の高い設定値に対して、上記と同様の比較検証を行う。
以上のように、本実施の形態のマイクロコントローラ1及び誤り検出方法によれば、比較検証部6が、書き込み時期が古い、誤りが発生している可能性の高い設定値に対して、優先的に誤り検出を行う。これにより、プロセッサ2の処理を中断せずに、設定値の誤りを容易に検出できる。
そして、誤りがあった場合に、たとえば、プロセッサ2による設定値の更新処理が行われる。これにより、プロセッサ2の処理を設定値の更新のために定期的に中断しなくても、設定値の信頼性を容易に確保できるようになる。
また、誤りがあった場合、比較検証部6が、記憶部5から読み出した複製値で、対応する設定値を更新するようにしてもよい。これにより、プロセッサ2の処理を、設定値の更新処理のときも中断しなくてよくなる。
なお、上記の説明では、3つの周辺回路3a〜3cに対して、それぞれ1つの設定値a〜cがある場合について説明したが、各周辺回路3a〜3cに対して、それぞれ複数の設定値があってもよい。また、周辺回路の数が3つに限定されず、2つまたは4つ以上あってもよい。
(第2の実施の形態)
図3は、第2の実施の形態のマイクロコントローラの一例を示す図である。
マイクロコントローラ10は、CPU11、バスブリッジ12、周辺回路13−1,13−2,…,13−n、レジスタ14−1,14−2,…,14−n、ECC付RAM15、比較検証部16、クロック生成部17、バスB1,B2,B3,B4を有している。
CPU11は、バスB1に接続されており、マイクロコントローラ10の各部を制御する。バスブリッジ12は、バスB1〜B3を相互に接続する。
周辺回路13−1〜13−nは、マイクロコントローラ10が制御する外部機器に対する接続用のインタフェース、タイマなどである。なお、周辺回路13−1〜13−nは、マイクロコントローラ1の外部に設けられていてもよい。
レジスタ14−1〜14−nには、周辺回路13−1〜13−nを制御するための設定値が書き込まれる。レジスタ14−1〜14−nは、バスB2,B4間に接続されている。
ECC付RAM15は、エラー検出及び1ビットのエラー訂正が可能なRAMであり、レジスタ14−1〜14−nに書き込まれる設定値の複製値を保持する。ECC付RAM15は、レジスタ14−1〜14−nと同じアドレス領域を持っている。また、ECC付RAM15は、設定値の更新履歴や比較検証を行った履歴に関する履歴情報を格納する。ECC付RAM15は、バスB3と比較検証部16に接続されている。
比較検証部16は、履歴情報を参照して、複数の設定値の書き込み時期や比較検証を行った時間に基づき、設定値とそれに対応する複製値を、レジスタ14−1〜14−n、ECC付RAM15から読み出し、それらの比較検証を行う。比較検証部16は、バスB4とECC付RAM15とクロック生成部17に接続されている。
クロック生成部17は、比較検証部16内の後述するカウンタを動作させるためのクロックを生成する。このクロックは、CPU11などで用いられるクロックよりも低速のものでよい。
図4は、比較検証部の一例を示す図である。
比較検証部16は、カウンタ20、優先順位判定部21、RAMアクセス部22、レジスタアクセス部23、比較部24を有している。
カウンタ20は、クロック生成部17から供給されるクロックをカウントする。カウンタ20は、たとえば、ECC付RAM15にレジスタ14−1〜14−nの初期値が書き込まれたことを検出すると、クロックのカウントを開始する。
優先順位判定部21は、履歴情報を参照して、各設定値において、最後に書き込みを行ったとき、または複製値との比較検証を行ったときのカウンタ値と、現在のカウンタ値との差を求め、比較検証を行う設定値の優先順位を判定する。その差が大きい設定値ほど、優先順位判定部21は、優先順位を高くする。そして、優先順位判定部21は、最も優先順位の高い設定値における上記の差が所定の値以上になったら、レジスタアクセス部23及びRAMアクセス部22に、最も優先順位の高い設定値及びその複製値の読み出しを指示する。
RAMアクセス部22は、優先順位判定部21で読み出しを指示された複製値のアドレスをECC付RAM15に供給し、ECC付RAM15から読み出された複製値を、比較部24に送る。
レジスタアクセス部23は、優先順位判定部21で読み出しを指示された設定値のアドレスをレジスタ14−1〜14−nの何れかに供給し、レジスタ14−1〜14−nの何れかから読み出された設定値を、比較部24に送る。
比較部24は、読み出された複製値と設定値とを比較し、一致しているか否かを判定する。複製値と設定値とが一致している場合、比較部24は、比較時のカウンタ値で、ECC付RAM15に格納されている履歴情報を更新する。複製値と設定値とが一致していない場合、比較部24は、割り込みなどでその旨をCPU11に通知する。また、比較部24は、不一致が生じた設定値が格納されているアドレスをCPU11に通知する。なお、複製値と設定値とが一致したときも、比較部24は、その比較結果をCPU11に通知するようにしてもよい。
次に、マイクロコントローラ10による誤り検出方法の一例の流れを説明する。
図5は、マイクロコントローラの動作開始時の処理の一例を示すフローチャートである。
ステップS10の処理では、CPU11の制御のもと、レジスタ14−1〜14−nに書き込まれている初期値が、ECC付RAM15に転送され、書き込まれる。ステップS11の処理では、カウンタ20は、クロック生成部17から供給されるクロックのカウントを開始する。
ステップS12の処理では、優先順位判定部21は、CPU11からレジスタ14−1〜14−nの何れかへの設定値の書き込みが発生したか否かを判定する。書き込みが発生していない場合には、書き込みが発生するまで、ステップS12の処理が繰り返される。書き込みが発生した場合には、ステップS13の処理が行われる。
ステップS13の処理では、CPU11によって、ECC付RAM15において、設定値が格納されたレジスタと同じアドレスに、設定値の複製値が格納される。また、優先順位判定部21によって、書き込みが行われたときのカウンタ値が、履歴情報としてECC付RAM15に格納される。その後、ステップS12からの処理が繰り返される。
たとえば、マイクロコントローラ10の電源がオフとなると、上記の処理が終了する。
図6は、ECC付RAMに格納されるデータの一例を示す図である。
ECC付RAM15には、CPU11から見たレジスタ14−1〜14−nのアドレスが割り当てられている。そして、各アドレスに対して、レジスタ14−1〜14−nの番号(No.1,No.2,…,No.n)、レジスタ14−1〜14−nに格納される設定値の複製値(設定値の初期値)が格納されている。さらに、複製値の書き込み時に生成されるエラーコードであるECC(ECC No.1,ECC No.2,…,ECC No.n)と、レジスタ14−1〜14−nにおいて、最後に書き込みが行われたときのカウンタ値(C1〜Cn)が格納されている。
図7は、設定値と複製値との比較検証時の処理の一例を示すフローチャートである。
ステップS20の処理では、優先順位判定部21は、レジスタアクセス部23を介して、レジスタ14−1〜14−nにアクセスして、周辺回路13−1〜13−nを有効または無効にするか指示する有効ビットが、有効を示すものであるか否かを判定する。
たとえば、全ての周辺回路13−1〜13−nの有効ビットが無効を示す場合には、周辺回路13−1〜13−nの有効ビットのうち、何れかが有効を示す値になるまで、ステップS20の処理が繰り返される。
周辺回路13−1〜13−nの有効ビットのうち、少なくとも1つが有効を示す値である場合には、ステップS21の処理が行われる。ステップS21の処理では、優先順位判定部21は、履歴情報(図6に示したようなカウンタ値)を参照する。そして、優先順位判定部21は、各設定値において、最後に書き込みを行ったとき、または最後に複製値との比較検証を行ったときのカウンタ値と、現在のカウンタ値との差を求め、比較検証を行う設定値の優先順位を判定する。
たとえば、図6に示したような履歴情報(カウンタ値)において、C1<C2<…<Cnであるとすると、優先順位は、レジスタ14−1の設定値、レジスタ14−2の設定値、…、レジスタ14−nの設定値の順に優先順位が低くなる。優先順位判定部21は、たとえば、記憶部を有しており、判定した優先順位を保持する。
図8は、優先順位の格納例を示す図である。
優先順位判定部21の記憶部21aは、たとえば、FIFO(First In First Out)で、判定した優先順位を、レジスタ番号No.1〜No.nで格納している。図8の例では、レジスタ番号No.1のレジスタ14−1の設定値が最も優先順位が高く、レジスタ番号No.2のレジスタ14−2の設定値、…、レジスタ番号No.nのレジスタ14−nの設定値の順に優先順位が低くなる。また、優先順位判定部の記憶部21aは、最も優先順位の高い設定値の履歴情報(カウンタ値)を保持するようにしてもよい。たとえば、レジスタ14−1の設定値が最も優先順位が高い場合、図6に示したカウンタ値C1が、記憶部21aに保持される。
優先順位決定後、ステップS22の処理が行われる。ステップS22の処理では、最も優先順位の高い設定値の上記カウンタ値と現在のカウンタ値との差が、所定の値以上のとき、優先順位判定部21は、レジスタアクセス部23及びRAMアクセス部22に、設定値及びその複製値の読み出しを指示する。所定の値とは、たとえば、クロック生成部17で生成されるクロックの周期と、誤り検出を行う周期(時間)をもとに設定される。カウンタ20がクロックの立ち上がりエッジに同期してカウントアップする場合、誤り検出を行う周期をTd、クロックの周期をTcとすると、たとえば、Td/Tcが上記の所定値となる。
次に、ステップS23の処理が行われる。ステップS23の処理では、比較部24は、読み出された設定値とその複製値のうち、比較不要なビットをマスクする。たとえば、周辺回路13−1〜13−nによる動作で書き変わるようなビットについては、比較しても誤りを検出できないためマスクされる(比較対象とされない)。
その後、ステップS24の処理が行われる。ステップS24の処理では、比較部24は、読み出された複製値と設定値(マスクされていない部分)とを比較し、一致しているか否かを判定する。
複製値と設定値とが一致している場合、ステップS25の処理が行われる。ステップS25の処理では、比較部24は、比較時のカウンタ値で、ECC付RAM15に格納されている履歴情報を更新する。
図9は、履歴情報の更新例を示す図である。
最も優先順位が高いレジスタ14−1の設定値に対して、複製値との比較が行われたときのカウンタ値がCxであった場合、ECC付RAMに格納されるデータのうち、履歴情報を示すカウンタ値が、図9に示すように更新される。また、ステップS25の処理後には、ステップS21の処理に戻り、図8に示した優先順位判定部21の記憶部21aに格納されている優先順位が更新される。
図10は、優先順位の更新例を示す図である。
図8の例では、レジスタ番号No.1のレジスタ14−1の設定値が最も優先順位が高かったが、比較検証の結果、複製値と一致している(誤りがない)と判定されたため、図10の例では、最も優先順位が低くなっている。代わりに、図8の例で、2番目に優先順位が高かったレジスタ番号No.2のレジスタ14−2の設定値が、図10の例では最も優先順位が高くなっている。また、優先順位の更新に伴い、記憶部21aは、最も優先順位が高い、レジスタ14−2の設定値に関する履歴情報(図6の例ではカウンタ値C2)を保持するようにしてもよい。
一方、複製値と設定値とが一致していない場合、ステップS26の処理が行われる。ステップS26の処理では、不一致情報が、比較検証部16内の記憶部(たとえば、前述した記憶部21a)に保存される。不一致情報には、設定値と複製値との不一致が発生したレジスタのアドレス、設定値の値、設定値の更新履歴、比較履歴、現在のカウンタ値、上記履歴を示すカウンタ値と現在のカウンタ値との差分、などが含まれる。
設定値の更新履歴は、たとえば、最後にその設定値の書き込み(更新)が行われたときのカウンタ値であり、比較履歴は、たとえば、前回比較検証を行ったときのカウンタ値である。
その後、ステップS27の処理にて、比較部24は、割り込みなどで、CPU11に対して、不一致が生じた旨や上記の不一致情報を通知する。これにより、たとえば、CPU11は、複製値と一致しなかった設定値の更新を行うようにしてもよい。たとえば、レジスタ14−1に格納されている設定値と、その設定値の、ECC付RAM15に格納されている複製値とが一致しなかった場合、CPU11は、設定値と複製値とを更新する。
なお、設定値の更新は、比較検証部16が、ECC付RAMから読み出された複製値を、その複製値に対応する設定値が格納されたレジスタに上書きするようにしてもよい。
ステップS27の後は、ステップS21の処理に戻り、たとえば、図10に示したように、記憶部21aに格納される優先順位が更新される。
たとえば、マイクロコントローラ10の電源がオフとなると、上記の処理が終了する。
以上のように、本実施の形態のマイクロコントローラ10及び誤り検出方法によれば、比較検証部16が、書き込み時期または比較検証した時期が古い、誤りが発生している可能性の高い設定値に対して、優先的に誤り検出が行われる。これにより、CPU11の処理を中断せずに、設定値の誤りを容易に検出できる。
そして、誤りがあった場合に、たとえば、CPU11による設定値の更新処理が行われる。これにより、CPU11の処理を設定値の更新のために定期的に中断しなくても、設定値の信頼性を容易に確保できるようになる。
また、誤りがあった場合、比較検証部16が、ECC付RAM15から読み出した複製値で、対応する設定値を更新するようにしてもよい。これにより、CPU11の処理を、設定値の更新処理のときも中断しなくてよくなる。
また、ある設定値に誤りがあった場合、比較検証部16が、CPU11に対して、更新履歴や比較履歴を含む不一致情報を通知することで、現在の(誤り検出時の)カウンタ値との比較から、どのカウンタ値の範囲のときに誤りが発生したか推測できる。すなわち、誤り発生時期を推測することができる。
以上、実施の形態に基づき、本発明のマイクロコントローラ及び誤り検出方法の一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
1 マイクロコントローラ
2 プロセッサ
3a,3b,3c 周辺回路
4,5 記憶部
4a,4b,4c レジスタ
6 比較検証部
6a 優先順位判定部
6b 比較部

Claims (5)

  1. 周辺回路の設定値を保持する第1の記憶部と、
    前記設定値の複製値を保持し、読み出し時に前記複製値のエラー検出及び訂正を行う第2の記憶部と、
    複数の前記設定値の前記第1の記憶部への書き込み時期に基づき、前記書き込み時期が古い前記設定値を優先的に前記第1の記憶部から読み出し、読み出した前記設定値に対応する前記複製値を前記第2の記憶部から読み出し、比較検証を行う比較検証部と、
    を有することを特徴とするマイクロコントローラ。
  2. プロセッサを有し、
    前記設定値と前記設定値に対応する前記複製値とが異なっている場合、前記比較検証部は、前記プロセッサに前記比較検証の結果を通知し、
    前記プロセッサは、対応する前記複製値と異なっている前記設定値の更新を行うことを特徴とする請求項1に記載のマイクロコントローラ。
  3. 前記比較検証部は、前記設定値と前記設定値に対応する前記複製値とが異なっている場合、前記プロセッサに、前記設定値の更新履歴または前記比較検証を行った履歴を通知することを特徴とする請求項2に記載のマイクロコントローラ。
  4. 前記設定値と前記設定値に対応する前記複製値とが異なっている場合、前記比較検証部は、前記複製値を用いて、前記設定値を更新することを特徴とする請求項1に記載のマイクロコントローラ。
  5. 周辺回路の設定値を第1の記憶部に書き込み、
    前記設定値の複製値を、読み出し時に前記複製値のエラー検出及び訂正を行う第2の記憶部に書き込み、
    比較検証部が、複数の前記設定値の前記第1の記憶部への書き込み時期に基づき、前記書き込み時期が古い前記設定値を優先的に前記第1の記憶部から読み出し、読み出した前記設定値に対応する前記複製値を前記第2の記憶部から読み出し、比較検証を行う、
    ことを特徴とする誤り検出方法。
JP2013112789A 2013-05-29 2013-05-29 マイクロコントローラ及び誤り検出方法 Expired - Fee Related JP6130735B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013112789A JP6130735B2 (ja) 2013-05-29 2013-05-29 マイクロコントローラ及び誤り検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013112789A JP6130735B2 (ja) 2013-05-29 2013-05-29 マイクロコントローラ及び誤り検出方法

Publications (2)

Publication Number Publication Date
JP2014232420A true JP2014232420A (ja) 2014-12-11
JP6130735B2 JP6130735B2 (ja) 2017-05-17

Family

ID=52125765

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013112789A Expired - Fee Related JP6130735B2 (ja) 2013-05-29 2013-05-29 マイクロコントローラ及び誤り検出方法

Country Status (1)

Country Link
JP (1) JP6130735B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022056987A (ja) * 2020-09-30 2022-04-11 株式会社明電舎 メモリエラー検出・訂正システム、メモリエラー検出・訂正方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03250347A (ja) * 1990-02-28 1991-11-08 Sony Corp メモリ装置
JP2004302792A (ja) * 2003-03-31 2004-10-28 Nec Corp 情報処理装置およびメモリチェック方法
JP2007148779A (ja) * 2005-11-28 2007-06-14 Renesas Technology Corp マイクロコントローラおよびram
JP2008015618A (ja) * 2006-07-03 2008-01-24 Nikon Corp 記憶装置および電子機器
JP2008015965A (ja) * 2006-07-10 2008-01-24 Fuji Xerox Co Ltd 情報処理装置、情報処理装置の動作方法およびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03250347A (ja) * 1990-02-28 1991-11-08 Sony Corp メモリ装置
JP2004302792A (ja) * 2003-03-31 2004-10-28 Nec Corp 情報処理装置およびメモリチェック方法
JP2007148779A (ja) * 2005-11-28 2007-06-14 Renesas Technology Corp マイクロコントローラおよびram
JP2008015618A (ja) * 2006-07-03 2008-01-24 Nikon Corp 記憶装置および電子機器
JP2008015965A (ja) * 2006-07-10 2008-01-24 Fuji Xerox Co Ltd 情報処理装置、情報処理装置の動作方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022056987A (ja) * 2020-09-30 2022-04-11 株式会社明電舎 メモリエラー検出・訂正システム、メモリエラー検出・訂正方法
JP7447755B2 (ja) 2020-09-30 2024-03-12 株式会社明電舎 メモリエラー検出・訂正システム、メモリエラー検出・訂正方法

Also Published As

Publication number Publication date
JP6130735B2 (ja) 2017-05-17

Similar Documents

Publication Publication Date Title
JP4734003B2 (ja) ソフトエラー訂正方法、メモリ制御装置及びメモリシステム
WO2016062084A1 (zh) 掉电处理方法、装置及电子设备
JP4834721B2 (ja) メモリ制御装置およびメモリ制御方法
JP2005242797A (ja) エラー訂正回路
JP2008046979A (ja) メモリコントローラおよびメモリ制御方法
JP2008009721A (ja) 評価システム及びその評価方法
WO2012172645A1 (ja) メモリ制御装置および制御方法
JP6130735B2 (ja) マイクロコントローラ及び誤り検出方法
JP4941954B2 (ja) データエラー検出装置およびデータエラー検出方法
JP2010181990A (ja) データプロセッサ
JP5579257B2 (ja) 主記憶装置における情報を復元するための装置及び方法
JP2014016925A (ja) 情報処理システム、データ切替方法およびプログラム
JP5843804B2 (ja) 演算装置およびエラー処理方法
JP2013156821A (ja) データ処理装置、制御ユニット、メモリ制御方法
JPWO2013132806A1 (ja) 不揮発性論理集積回路と不揮発性レジスタの誤りビットの訂正方法
JP3638729B2 (ja) データ記憶制御方法及び装置
JP6575194B2 (ja) 演算処理装置および演算処理装置の制御方法
JP2015001774A (ja) 半導体集積回路及びその処理方法
WO2013018202A1 (ja) データ通信装置および制御方法
WO2002001363A1 (fr) Dispositif et procede de commande de memoire
JP4842036B2 (ja) 半導体装置と、タイミング制御回路の異常検出方法
JP6137944B2 (ja) 半導体装置、試験回路及び試験方法
JP5570252B2 (ja) エラーチェック装置、エラーチェック方法およびエラーチェックプログラム
JP2013143733A (ja) プログラマブルデバイス装置
JP5564854B2 (ja) 制御装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20160118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160408

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170308

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: 20170321

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170414

R150 Certificate of patent or registration of utility model

Ref document number: 6130735

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees