JP2010198327A - マイクロコントローラおよび電子制御装置 - Google Patents

マイクロコントローラおよび電子制御装置 Download PDF

Info

Publication number
JP2010198327A
JP2010198327A JP2009042510A JP2009042510A JP2010198327A JP 2010198327 A JP2010198327 A JP 2010198327A JP 2009042510 A JP2009042510 A JP 2009042510A JP 2009042510 A JP2009042510 A JP 2009042510A JP 2010198327 A JP2010198327 A JP 2010198327A
Authority
JP
Japan
Prior art keywords
peripheral
write data
microcontroller
register
write
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
JP2009042510A
Other languages
English (en)
Other versions
JP5564187B2 (ja
JP2010198327A5 (ja
Inventor
Hiromichi Yamada
弘道 山田
Yuichi Ishiguro
雄一 石黒
Nobuyasu Kanekawa
信康 金川
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009042510A priority Critical patent/JP5564187B2/ja
Priority to DE102010008023A priority patent/DE102010008023A1/de
Priority to US12/706,938 priority patent/US8291188B2/en
Publication of JP2010198327A publication Critical patent/JP2010198327A/ja
Publication of JP2010198327A5 publication Critical patent/JP2010198327A5/ja
Priority to US13/614,313 priority patent/US8639905B2/en
Application granted granted Critical
Publication of JP5564187B2 publication Critical patent/JP5564187B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1683Temporal synchronisation or re-synchronisation of redundant processing components at instruction level

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Microcomputers (AREA)

Abstract

【課題】各CPUが異なるアプリケーションを実行して処理性能を向上すると共に、安全性が必要なアプリケーションを各CPUで実行して結果を比較することによって、ライトデータの信頼性を高めることが可能なマイクロコントローラを提供する。
【解決手段】マイクロコントローラにおいて、CPUA1、CPUB5とメモリA2、メモリB6からなる処理系を複数有し、予め設定された特定処理に関する命令処理については、多重化されていない周辺モジュールA14〜周辺モジュールZ16への書き込みを2回実行し、1回目と2回目の書き込みデータを照合する。
【選択図】図1

Description

本発明は、複数のCPU(Central Processing Unit)を備えたマイクロコントローラに関し、特に、その処理性能の向上と、故障の検出に関するものである。
マイクロコントローラ(以下単に「マイコン」とも称する)は、家電製品、AV機器、携帯電話、自動車、産業機械等の機器に組み込まれ、メモリに記憶されているプログラムにしたがって処理を行うことで、それぞれの機器の制御を行う半導体集積回路である。
自動車では、制御装置の故障が事故につながる可能性があるため、マイコンを含む部品に高い信頼性が求められると共に、故障が発生した場合にはこれを検出して自動車が危険な状態にならないように安全機能を働かせるように設計されている。
マイコンはセンサやアクチュエータの診断を行ってこれらの故障を検出するだけでなく、マイコン自身の故障も検出する必要がある。
マイコンの故障検出には様々な方法があるが、CPUを2重化して同一の処理を行わせ、バスの値を常時比較する方法がしばしば用いられている。これは、マスターCPUと比較用CPUが同一の処理を同時に実行し、それぞれの結果を比較回路で比較する方法である。
また、特開平10−261762号公報(特許文献1)には、2つのメモリと2つのCPUを有し、CPUの入出力信号を比較する方法が示されている。
特開平10−261762号公報
しかしながら、従来の技術では、2つのCPUが同一の処理を完全に同じタイミングで実行しており、処理性能はCPUが1つの場合と変わらない。自動車制御のうちエンジン制御やトランスミッション制御などのパワートレイン制御では、燃費性能および排気性能を向上させるために多数のセンサを用いた演算処理と多数のアクチュエータ制御を行う必要があるため、高い処理性能が要求される。
そのため、2つのCPUを有するデュアルコアマイコンや、3つ以上のCPUを有するマルチコアマイコンを使用したいという要求が高まっている。
そこで、本発明の目的は、各CPUが異なるアプリケーションを実行して処理性能を向上すると共に、安全性が必要なアプリケーションを各CPUで実行して結果を比較することによって、ライトデータの信頼性を高めることが可能なマイクロコントローラを提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
すなわち、代表的なものの概要は、メモリマップレジスタは、ライトデータの書き込みの回数に関する情報を格納するレジスタを有し、CPUからの命令処理は、予め設定された特定処理に関する命令処理については、メモリマップレジスタに2回実行され、メモリマップレジスタに書き込まれる2回のライトデータを照合するライトデータ比較回路を備えたものである。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
すなわち、代表的なものによって得られる効果は、複数のCPUを有するマイクロコントローラを使用して、それぞれのCPUに異なるアプリケーションを実行させて高性能な処理を行わせることができると同時に、安全性が要求されるアプリケーションをそれぞれのCPUで実行して結果を照合させることによって、ライトデータの信頼性を高めることができ、さらに故障を検出することもできるので、安全性を高めることが可能になる。
本発明の実施の形態1に係るマイクロコントローラの構成を示す構成図である。 本発明の実施の形態1に係るマイクロコントローラのブリッジDの構成を示す構成図である。 本発明の実施の形態1に係るマイクロコントローラの周辺ライトデータ比較回路の構成を示す構成図である。 本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへのリードアクセスのタイミングチャートである。 本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへの比較を伴わないライトアクセスのタイミングチャートである。 本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへの比較を伴う1回目のライトアクセスのタイミングチャートである。 本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が一致する場合のタイミングチャートである。 本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が不一致となる場合のタイミングチャートである。 本発明の実施の形態1に係るマイクロコントローラで使用されるレジスタの構成を示す図である。 本発明の実施の形態1に係るマイクロコントローラで使用されるレジスタの構成を示す図である。 本発明の実施の形態1に係るマイクロコントローラで使用されるレジスタの構成を示す図である。 本発明の実施の形態2に係るマイクロコントローラ内の周辺モジュールの構成を示す構成図である。 本発明の実施の形態3に係るマイクロコントローラ内の周辺モジュールの構成を示す構成図である。 本発明の実施の形態に係るマイクロコントローラを使用した自動車電子制御装置について説明するための説明図である。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
(実施の形態1)
図1〜図3により、本発明の実施の形態1に係るマイクロコントローラの構成について説明する。図1は本発明の実施の形態1に係るマイクロコントローラの構成を示す構成図であり、2つのCPUを有するデュアルコアマイコンを示している。図2は本発明の実施の形態1に係るマイクロコントローラのブリッジDの構成を示す構成図、図3は本発明の実施の形態1に係るマイクロコントローラの周辺ライトデータ比較回路の構成を示す構成図である。
図1において、マイクロコントローラ(MCU)20は、CPUA1、メモリA2、CPUAバス3、ブリッジA4、CPUB5、メモリB6、CPUBバス7、ブリッジB8、システムバス9、ブリッジC10、外部バス11、ブリッジD12、周辺バス13、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16、割り込みコントローラ17、周辺ライトデータ比較回路19から構成されている。
CPUA1は命令を実行して演算やデータ転送などの処理を行うプロセッサである。メモリA2はCPUA1が実行する命令および処理するデータを記憶する。CPUAバス3はCPUA1がメモリA2などのモジュールをアクセスするためのバスである。
ブリッジA4はCPUA1がシステムバス9の外部に接続されるモジュールをアクセスする場合に、CPUAバス3とシステムバス9を接続制御するコントローラである。
CPUB5は命令を実行して演算やデータ転送などの処理を行うプロセッサである。メモリB6はCPUB5が実行する命令および処理するデータを記憶する。CPUBバス7はCPUB5がメモリB6などのモジュールをアクセスするためのバスである。
ブリッジB8はCPUB5がシステムバス9の外部に接続されるモジュールをアクセスする場合に、CPUBバス7とシステムバス9を接続制御するコントローラである。
ブリッジC10はCPUA1またはCPUB5が外部バス11をアクセスする場合に、システムバス9と外部バス11を接続制御するコントローラである。
ブリッジD12は、CPUA1またはCPUB5が周辺バス13に接続される周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16、割り込みコントローラ17などの周辺モジュールをアクセスする場合に、システムバス9と周辺バス13を接続制御するコントローラである。
周辺バス13は、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16、割り込みコントローラ17が接続されるバスである。
周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16は、マイクロコントローラ20の外部との通信線などに接続されており、メモリマップレジスタへのライトデータにより、マイクロコントローラの外部とのデータのやり取りや、マイクロコントローラの外部の制御回路などの制御を行っている。
割り込みコントローラ17は、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16からのデータや外部割り込み要求18により、CPUA1やCPUB5に割り込みの信号を出力する。
周辺ライトデータ比較回路19は、CPUA1およびCPUB5の周辺モジュールのメモリマップレジスタへのライトデータの比較を行う。
図2において、ブリッジD12は、システムバスインタフェース1211、コマンド・アドレスバッファ1212、リードデータバッファ1213、ライトデータバッファ1214、周辺バスインタフェース1215、周辺ライトデータ比較要求回路1216から構成されている。
システムバスインタフェース1211は、システムバス9に接続され、データのやり取りを行う。
コマンド・アドレスバッファ1212は、システムバス9からのコマンド・アドレスをバッファする。
リードデータバッファ1213は、周辺バス13からのリードデータをバッファし、ライトデータバッファ1214は、周辺バス13へのライトデータをバッファする。
周辺バスインタフェース1215は、周辺バス13に接続され、データのやり取りを行う。
システムバス9はコマンド901、アドレス902、リードデータ903、ライトデータ904、ウエイト905を含んでいる。システムバスインタフェース1211はシステムバス9の各種信号の入力および出力を行う。信号1251、1252、1253、1254はブリッジD12内におけるシステムバス9のコマンド、アドレス、リードデータ、ライトデータである。
コマンド・アドレスバッファ1212はシステムバスコマンド1251およびアドレス1252を保持する。コマンドバッファ出力1261とアドレスバッファ出力1262は周辺ライトデータ比較要求回路1216に入力される。
リードアクセスの場合は、周辺ライトデータ比較要求回路1216は要求信号1201を出力せず、周辺バスインタフェース1215は周辺バスコマンド1301および周辺バスアドレス1302を出力してリードアクセスを開始する。
周辺バスリードデータ1303が読み出されるとリードデータバッファ1213に保持し、バッファ出力1253をシステムバスリードデータ903に出力してリードアクセスを完了させる。
ライトアクセスの場合は、周辺ライトデータ比較要求回路1216は要求信号1201とアドレス1202を出力する。
比較の対象でない場合、応答信号1901はシングルライトであることを示し、周辺バス制御1265にライト実行を出力して周辺バスインタフェース1215にライトアクセスを実行させる。
比較の対象で1回目のアクセスの場合、応答信号1901はデュアルライトの1回目であることを示し、周辺バス制御1265に無効化を出力して周辺バスインタフェース1215にライトアクセスを実行させずに処理を完了させる。
比較の対象で2回目のアクセスの場合、応答信号1901はデュアルライトの2回目であることを示し、続いて結果が一致か不一致であるかが通知される。一致した場合は、周辺バス制御1265にライト実行を出力して周辺バスインタフェース1215にライトアクセスを実行させる。不一致の場合は、周辺バス制御1265に無効化を出力して周辺バスインタフェース1215にライトアクセスを実行させずに処理を完了させる。
図3において、周辺ライトデータ比較回路19は、周辺バスインタフェース1911、アドレスレジスタ1912、制御レジスタ1913、アドレス比較回路1914、応答出力回路1915、データレジスタ1916、データ比較回路1917から構成されている。
周辺バスインタフェース1911は、周辺バス13に接続され、データのやり取りを行う。
アドレスレジスタ1912、制御レジスタ1913、データレジスタ1916は、それぞれのデータが格納される。
データ比較回路1917、アドレス比較回路1914は、データやアドレスの比較を行い、応答出力回路1915は、データ比較回路1917、アドレス比較回路1914からの比較結果に基づいた応答を出力する。
ブリッジD12はシステムバス9のアクセスが周辺モジュールへのライトの場合に、周辺ライトデータ比較回路19に比較要求の要求信号1201、アドレス1202を出力する。周辺ライトデータ比較回路19はアドレス1202が比較の対象であるかを判定して応答信号1901を返す。比較の対象でない場合、ブリッジD12はシステムバス9と周辺バス13を接続制御してライトアクセスを実行する。
比較の対象である場合、応答信号1901は1回目のアクセスか2回目のアクセスかを示す。1回目の場合はブリッジD12が出力するライトデータ1203を周辺ライトデータ比較回路19の内部に記憶し、ブリッジD12は周辺モジュールへのライトアクセスは実行しない。
2回目の場合はブリッジD12が出力するライトデータ1203を周辺ライトデータ比較回路19が内部に記憶している1回目のデータと比較を行い、一致か不一致かの結果を応答信号1901として返す。
ブリッジD12は応答信号1901が一致の場合に周辺モジュールへのライトアクセスを実行する。不一致の場合ライトアクセスは実行せずに、周辺ライトデータ比較回路19は割り込みコントローラ17に割り込み要求1902を出力する。
周辺バス13は、コマンド1301、アドレス1302、リードデータ1303、ライトデータ1304のデータからなる。周辺バスインタフェース1911は、周辺バス13からアドレスレジスタ1912へのデータの書き込みと読み出しを行う。
アドレスレジスタ1912は比較を伴うライトアクセスの対象となる周辺モジュールレジスタアドレスを登録する。制御レジスタ1913はアドレスレジスタ1912に登録されたアドレスへのライト回数を保持する。
アドレス比較回路1914は、ブリッジDが出力する周辺ライトデータ比較要求の要求信号1201をデコードし、ACHKの場合にアドレス入力1202がアドレスレジスタ1912に登録されているかチェックする。登録されていない場合、比較を伴わないシングルライトと判断し、応答出力回路1915は応答1901にSWを出力する。
登録されている場合、制御レジスタ1913からライト回数を読み出す。1回目の場合、応答出力回路1915は応答1901にDW1(デュアルライトの1回目)を出力し、次のサイクルでライトデータ入力1203をデータレジスタ1916に書き込む。
2回目の場合、応答出力回路1915は応答1901にDW2(デュアルライトの2回目)を出力し、次のサイクルで、データ比較回路1917で、ライトデータ入力1203とデータレジスタ1916から読み出した1回目のライトデータを比較する。信号1991は比較結果が一致か不一致かを示す。また不一致の場合は割り込みコントローラへの割り込み要求1902が出力される。
次に、図4〜図11により、本発明の実施の形態1に係るマイクロコントローラの動作について説明する。図4〜図8は本発明の実施の形態1に係るマイクロコントローラの周辺モジュールへのアクセスのタイミングチャートを示す図であり、図4は周辺モジュールへのリードアクセスのタイミングチャート、図5は周辺モジュールへの比較を伴わないライトアクセスのタイミングチャート、図6は周辺モジュールへの比較を伴う1回目のライトアクセスのタイミングチャート、図7は周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が一致する場合のタイミングチャート、図8は周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が不一致となる場合のタイミングチャートを示している。
図9〜図11は本発明の実施の形態1に係るマイクロコントローラで使用されるメモリマップレジスタであるレジスタの構成を示す図であり、それぞれ別の構成の例を示している。
まず、周辺モジュールへのリードアクセスのタイミングチャートは図4に示すように、クロックがT1のサイクルで、システムバス9のコマンド901にはR(リード)、アドレス902には値A1が出力される。
次のT2サイクルでリードデータ903に読み出しができないため、ウエイト905をHighにしてリードアクセスにウエイトをかける。周辺ライトデータ比較要求回路1216は要求信号1201をNRQ(NO REQUEST:要求なし)とし、T2サイクルで周辺バスコマンド1301とアドレス1302を出力し、T3サイクルで読み出されたリードデータ1303の値RD1を次のT4サイクルでシステムバスリードデータ903に出力してリードアクセスが完了する。
また、周辺モジュールへの比較を伴わないライトアクセスのタイミングチャートは図5に示すように、クロックがT1のサイクルで、システムバス9のコマンド901にはW(ライト)、アドレス902には値A2が出力される。
次のT2サイクルでライトデータ904に値WD2が出力される。周辺モジュールへのライトを完了していないため、ウエイト905をHighにしてライトアクセスにウエイトをかける。周辺ライトデータ比較要求回路1216はT2サイクルで要求信号1201をACHK(Address Check:アドレスチェック)とし、アドレス1202に値A2を出力する。
また、周辺バスインタフェース1215に対して周辺バス制御1265をWAITにし、周辺バスアクセスを待たせる。周辺ライトデータ比較回路19からの応答信号1901がSW(シングルライト)を示すと、次のT3サイクルで周辺バス制御1265をW(ライト)とし、周辺バスコマンド1301とアドレス1302を出力し、T4サイクルでライトデータ1304を出力してライトアクセスが完了する。
また、周辺モジュールへの比較を伴う1回目のライトアクセスのタイミングチャートは図6に示すように、クロックがT1のサイクルで、システムバス9のコマンド901にはW、アドレス902には値A3が出力される。
次のT2サイクルでライトデータ904に値WD3が出力される。周辺モジュールへのライトを完了していないため、ウエイト905をHighにしてライトアクセスにウエイトをかける。
周辺ライトデータ比較要求回路1216はT2サイクルで要求信号1201をACHKとし、アドレス1202に値A3を出力する。
また、周辺バスインタフェース1215に対して周辺バス制御1265をWAITにし、周辺バスアクセスを待たせる。
周辺ライトデータ比較回路19からの応答信号1901がDW1(デュアルライトの1回目)を示すと、次のT3サイクルで要求信号1201をDWR(Data Write:データライト)とし、ライトデータ1203にWD3を出力する。
また、周辺バス制御1265をNUL(Nullify:無効化)とし、周辺バスコマンド1301をNOP(No Operation:何も実行しない)のままとし、アクセスを実行しない。
一方、システムバス9はウエイト905をLowにしてライトアクセスのウエイトを解除しライトアクセスが完了する。
また、周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が一致する場合のタイミングチャートは図7に示すように、クロックがT1のサイクルで、システムバス9のコマンド901にはW、アドレス902には値A4が出力される。
次のT2サイクルでライトデータ904に値WD4が出力される。周辺モジュールへのライトを完了していないため、ウエイト905をHighにしてライトアクセスにウエイトをかける。
周辺ライトデータ比較要求回路1216はT2サイクルで要求信号1201をACHKとし、アドレス1202に値A4を出力する。
また、周辺バスインタフェースに対して周辺バス制御1265をWAITにし、周辺バスアクセスを待たせる。周辺ライトデータ比較回路からの応答信号1901がDW2(デュアルライトの2回目)を示すと、次のT3サイクルで要求信号1201をDCHK(Data Check:データチェック)とし、ライトデータ1203に値WD4を出力する。
また、周辺バス制御1265はWAITのままにし、周辺バスアクセスを待たせる。応答信号1901がMAT(Match:一致)を示すと、次のT4サイクルで周辺バス制御1265をWとし、周辺バスコマンド1301とアドレス1302を出力し、T5サイクルでライトデータ1304を出力してライトアクセスが完了する。
また、周辺モジュールへの比較を伴う2回目のライトアクセスで比較結果が不一致となる場合のタイミングチャートは図8に示すように、クロックがT1のサイクルで、システムバス9のコマンド901にはW、アドレス902には値A5が出力される。
次のT2サイクルでライトデータ904に値WD5が出力される。周辺モジュールへのライトを完了していないため、ウエイト905をHighにしてライトアクセスにウエイトをかける。
周辺ライトデータ比較要求回路1216はT2サイクルで要求信号1201をACHKとし、アドレス1202に値A5を出力する。
また、周辺バスインタフェースに対して周辺バス制御1265をWAITにし、周辺バスアクセスを待たせる。周辺ライトデータ比較回路からの応答信号1901がDW2を示すと、次のT3サイクルで要求信号1201をDCHKとし、ライトデータ1203に値WD5を出力する。
また、周辺バス制御1265はWAITのままにし、周辺バスアクセスを待たせる。応答信号1901がMIS(Mismatch:不一致)を示すと、次のT4サイクルで周辺バス制御1265をNULとし、周辺バスコマンド1301をNOPのままとし、アクセスを実行しない。
一方、システムバス9はウエイト905をLowにしてライトアクセスのウエイトを解除しライトアクセスが完了する。
以上の処理により、周辺モジュールへのライトアクセスの場合に、比較の対象である場合には、2回のデータを比較することにより、ライトデータの信頼性を高めることが可能である。
また、ライトデータの2回の比較により、不一致だった場合、CPUA1、CPUB5や、その他の回路などの故障の疑いがあるということで、その旨のデータを出力することにより、故障を検出することも可能である。
図3に示すアドレスレジスタ1912、制御レジスタ1913、データレジスタ1916の構成例としては、まず、図9に示すように、比較を伴うライトアクセスの対象となる周辺モジュールレジスタアドレスを登録番号0から7までの8通りを登録できる場合の一例である。
図9では、アドレスレジスタAR0〜AR7はバイトを単位とするアドレスを保持し、簡単のため8ビットサイズとしている。制御レジスタCR0〜CR7はそれぞれアドレスレジスタAR0〜AR7に対応し、ライト回数を保持する。0は書き込みなし、1は1回書き込みを意味する。データレジスタは1回目のライトデータを保持する。
また、アドレスレジスタ1912、制御レジスタ1913、データレジスタ1916の構成として、図10に示す構成とすることもできる。
図10では、アドレスレジスタはAR0とAR1の2つで、4ビットのロングワードアドレス部と4ビットのデータ有効部に分けている。
比較を伴うライトアクセスの対象となる周辺モジュールレジスタアドレスは、ロングワードを境界とするアドレスから連続する4つのバイトとなる。アドレスレジスタのデータ有効部はバイトごとに比較を伴うかどうかを設定する。
図9に示す構成と比較すると、アドレスの指定に制限があるがアドレスレジスタのサイズを小さくすることができる。
また、アドレスレジスタ1912、制御レジスタ1913、データレジスタ1916の構成として、図11に示す構成とすることもできる。
図11では、図9の構成に対して、属性レジスタCR0〜CR7が1ビットから2ビットになり、ライト回数とCPU番号を保持するようにしている。
CPU番号を持つことにより1回目と2回目のCPU番号が異なっているかをチェックできるようになる。
(実施の形態2)
実施の形態2は、実施の形態1において、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16のそれぞれで、ライトデータの比較を行う機能を持つようにしたものである。
図12により、本発明の実施の形態2に係るマイクロコントローラ内の周辺モジュールの構成について説明する。図12は本発明の実施の形態2に係るマイクロコントローラ内の周辺モジュールの構成を示す構成図である。
図12において、周辺モジュールは、周辺バスインタフェース1410、バッファ1411、周辺レジスタPR0〜PR3(1412〜1415)、属性レジスタWCR0〜WCR3(1416〜1419)、書き込み制御回路1420、読み出し制御回路1421、バッファ1422、比較器1423から構成されている。
周辺レジスタPR0〜PR3(1412〜1415)は、周辺バス13からのアクセスに対してデータの書き込みおよび読み出しが行われる。
属性レジスタWCR0〜WCR3(1416〜1419)は、それぞれ周辺レジスタPR0〜PR3(1412〜1415)について比較有効ビットとライト回数ビットを持つ。
例えば、周辺レジスタPR0(1412)が比較有効で1回目のライトが行われていない場合、属性レジスタWCR0(1416)の比較有効ビットは1(有効)、ライト回数は0となっている。周辺レジスタPR0(1412)への書き込みが行われると、書き込み制御回路1420は、属性レジスタWCR0(1416)のデータ1471を読み出してライト回数を1にして属性レジスタWCR0(1416)に書き戻す。
周辺レジスタPR0(1412)への2回目の書き込みが行われると、書き込み制御回路1420は属性レジスタWCR0(1416)のデータ1471を読み出してライト回数を0にして属性レジスタWCR0(1416)に書き戻す。
一方、読み出し制御回路1421は周辺レジスタPR0(1412)から1回目に書き込まれたデータを読み出す。
比較器1423は読み出し制御回路1421が読み出した1回目のライトデータ1485と2回目のライトデータ1454を比較する。
周辺レジスタPR0(1412)は状態レジスタであるとし、比較結果フラグを持つものとする。比較器1423の出力1491は周辺レジスタPR0(1412)の比較結果レジスタに書き込まれる。この周辺レジスタPR0(1412)の比較結果レジスタに書き込まれた比較結果に基づいて、周辺モジュール自身の制御や、その他の回路などの制御を行うようになっている。
その他の周辺レジスタPR1〜PR3(1413〜1415)、属性レジスタWCR1〜WCR3(1417〜1419)についても同様の処理が行われる。
本実施の形態では、周辺モジュールにおいても、ライトデータの比較を行うことが可能である。
(実施の形態3)
実施の形態3は、実施の形態2において、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16のそれぞれで、ライトデータの比較を行う機能を別の構成で持つようにしたものである。
図13により、本発明の実施の形態3に係るマイクロコントローラ内の周辺モジュールの構成について説明する。図13は本発明の実施の形態3に係るマイクロコントローラ内の周辺モジュールの構成を示す構成図である。
図13において、実施の形態2の図12と比べて、周辺レジスタ(PR0、PR1、PR0B、PR1B)(1412〜1415)は同じ4本であるが、実質は2本であり周辺レジスタPR0B1414は周辺レジスタPR0(1412)のバックアップ、周辺レジスタPR1B1415は周辺レジスタPR1(1413)のバックアップである。
周辺レジスタPR0B1414と周辺レジスタPR1B1415はそれぞれ1回目のライトデータを保持する。
2回目のライトにおいて1回目のライトデータ1486と2回目のライトデータ1454が比較器1423で比較され、結果1491が周辺レジスタPR0(1412)の比較結果フラグに書き込まれる。比較結果1491は書き込み制御回路1420にも入力し、不一致の場合には実レジスタである周辺レジスタPR0(1412)と周辺レジスタPR1(1413)への書き込みが抑止される。
本実施の形態では、周辺モジュールにおいても、ライトデータの比較を行うことが可能である。また、周辺レジスタのバックアップを用いて、ライトデータの比較を行うため、実レジスタである周辺レジスタPR0(1412)と周辺レジスタPR1(1413)に影響なくライトデータの比較を行うことが可能である。
(実施の形態4)
実施の形態4は、実施の形態1〜3の周辺モジュールへのライトデータを照合する機能を有するマイクロコントローラを使用した自動車電子制御装置である。
図14により、本発明の実施の形態に係るマイクロコントローラを使用した自動車電子制御装置について説明する。図14は本発明の実施の形態に係るマイクロコントローラを使用した自動車電子制御装置について説明するための説明図である。
図14において、自動車電子制御装置21は、自動車23において、エンジン22を電子制御する装置として配置されている。この自動車電子制御装置21内に実施の形態1〜3の周辺モジュールへのライトデータを照合する機能を有するマイクロコントローラが搭載され、自動車電子制御装置21全体の制御を行っている。
図14に示すように、自動車23のエンジン22を電子制御する自動車電子制御装置21に、周辺モジュールへのライトデータを照合する機能を有するマイクロコントローラを使用することにより、自動車23のエンジン22の電子制御を高速に処理できると共に、安全性も高めることが可能となる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
例えば、実施の形態1では、CPUが2つの例で説明したが、CPUが1つの場合でも、本発明は適用可能である。CPUが1つの場合では、通常は、ライトデータは1回の書き込み処理で実行し、特定の処理のみライトデータを2回の書き込み処理で実行することにより、CPUの処理を低減させることができ、2回の書き込み処理を実行したものについては、信頼性を高めることが可能である。
また、実施の形態1では、周辺ライトデータ比較回路19でライトデータの比較を実行しているが、この周辺ライトデータ比較回路19の機能をブリッジD12に持たせて、ブリッジD12内でライトデータの比較の処理を実行するようにしてもよい。
また、実施の形態1では、メモリマップレジスタとなるレジスタは、周辺モジュールA14、周辺モジュールB15、…、周辺モジュールZ16内に配置しているが、マイクロコントローラ20内に配置され、そのメモリマップレジスタへのライトデータにより、制御が行われれば、どこに配置されていてもよい。
本発明は、複数のCPUを備えたマイクロコントローラに関し、より処理能力が必要で、かつ安全性が求められる装置などに使用されるマイクロコントローラに広く適用可能である。
1…第1のCPU(CPUA)、2…第1のメモリ(メモリA)、3…CPUA用のバス、4…CPUAのシステムバスアクセス制御を行うブリッジA、5…第2のCPU(CPUB)、6…第2のメモリ(メモリB)、7…CPUB用のバス、8…CPUBのシステムバスアクセス制御を行うブリッジB、9…システムバス、10…外部バスアクセス制御を行うブリッジC、11…外部バス、12…周辺バスアクセスを行うブリッジD、13…周辺バス、14、15、16…周辺モジュール、17…割り込みコントローラ、19…周辺ライトデータ比較回路、1211…システムバスインタフェース、1212…コマンド・アドレスバッファ、1213…リードデータバッファ、1214…ライトデータバッファ、1215…周辺バスインタフェース、1216…周辺ライトデータ比較要求回路、1911…周辺バスインタフェース、1912…アドレスレジスタ、1913…制御レジスタ、1914…アドレス比較回路、1915…応答出力回路、1916…データレジスタ、1917…データ比較回路、1410…周辺バスインタフェース、1411…バッファ、1412〜1415…周辺レジスタ、1416〜1419…属性レジスタ、1420…書き込み制御回路、1421…読み出し制御回路、1422…バッファ、1423…比較器。

Claims (8)

  1. CPUおよびメモリマップレジスタを有し、前記CPUからの命令処理に基づいて、前記メモリマップレジスタに書き込まれたデータにより、外部装置の制御を行うマイクロコントローラであって、
    前記メモリマップレジスタは、ライトデータの書き込みの回数に関する情報を格納するレジスタを有し、
    前記CPUからの命令処理は、予め設定された特定処理に関する命令処理については、前記メモリマップレジスタに2回実行され、
    前記メモリマップレジスタに書き込まれる2回の前記ライトデータを照合するライトデータ比較回路を備えたことを特徴とするマイクロコントローラ。
  2. 請求項1記載のマイクロコントローラにおいて、
    前記CPUからの命令処理に基づいた、前記メモリマップレジスタへの前記ライトデータの書き込みは、前記ライトデータ比較回路での照合結果が一致した場合のみ書き込み処理が実行されることを特徴とするマイクロコントローラ。
  3. 請求項1または2記載のマイクロコントローラにおいて、
    前記メモリマップレジスタは、前記外部装置の制御を行うためのデータのやり取りを行う周辺モジュール内に配置されたことを特徴とするマイクロコントローラ。
  4. 請求項1〜3のいずれか1項記載のマイクロコントローラにおいて、
    前記CPUを2つ以上備え、
    前記メモリマップレジスタへの、2回の前記ライトデータの書き込みは、異なるCPUからの命令処理により実行されることを特徴とするマイクロコントローラ。
  5. 請求項4記載のマイクロコントローラにおいて、
    前記メモリマップレジスタは、前記ライトデータの書き込みを実行した前記CPUに関する情報を格納するレジスタを有することを特徴とするマイクロコントローラ。
  6. 請求項3記載のマイクロコントローラにおいて、
    前記メモリマップレジスタに書き込まれる2回のライトデータを照合する処理を前記周辺モジュール内で行うことを特徴とするマイクロコントローラ。
  7. 請求項1記載のマイクロコントローラにおいて、
    前記メモリマップレジスタに書き込まれる2回の前記ライトデータを照合する処理を、前記メモリマップレジスタのアクセス制御を行うブリッジ内で行うことを特徴とするマイクロコントローラ。
  8. 請求項1〜7のいずれか1項に記載のマイクロコントローラを搭載し、
    前記マイクロコントローラに接続された入出力インタフェースを介して、外部装置の制御を行うことを特徴とする電子制御装置。
JP2009042510A 2009-02-25 2009-02-25 マイクロコントローラおよび自動車電子制御装置 Active JP5564187B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2009042510A JP5564187B2 (ja) 2009-02-25 2009-02-25 マイクロコントローラおよび自動車電子制御装置
DE102010008023A DE102010008023A1 (de) 2009-02-25 2010-02-15 Mikrocontroller und elektronische Steuereinheit
US12/706,938 US8291188B2 (en) 2009-02-25 2010-02-17 Microcontroller and electronic control unit
US13/614,313 US8639905B2 (en) 2009-02-25 2012-09-13 Microcontroller and electronic control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009042510A JP5564187B2 (ja) 2009-02-25 2009-02-25 マイクロコントローラおよび自動車電子制御装置

Publications (3)

Publication Number Publication Date
JP2010198327A true JP2010198327A (ja) 2010-09-09
JP2010198327A5 JP2010198327A5 (ja) 2012-03-22
JP5564187B2 JP5564187B2 (ja) 2014-07-30

Family

ID=42371890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009042510A Active JP5564187B2 (ja) 2009-02-25 2009-02-25 マイクロコントローラおよび自動車電子制御装置

Country Status (3)

Country Link
US (2) US8291188B2 (ja)
JP (1) JP5564187B2 (ja)
DE (1) DE102010008023A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175641A (ja) * 2010-02-23 2011-09-08 Infineon Technologies Ag 時間的に分離した冗長プロセッサの実行を使用しての周辺機器への読み書き

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101720134B1 (ko) * 2011-12-21 2017-03-28 한국전자통신연구원 버스 브리지 장치
US9912751B2 (en) 2015-01-22 2018-03-06 International Business Machines Corporation Requesting storage performance models for a configuration pattern of storage resources to deploy at a client computing environment
US9917897B2 (en) 2015-01-22 2018-03-13 International Business Machines Corporation Publishing configuration patterns for storage resources and storage performance models from client systems to share with client systems in a network computing environment
US10506041B2 (en) 2015-01-22 2019-12-10 International Business Machines Corporation Providing information on published configuration patterns of storage resources to client systems in a network computing environment
US10341194B2 (en) * 2015-10-05 2019-07-02 Fugue, Inc. System and method for building, optimizing, and enforcing infrastructure on a cloud based computing environment
CN105446223B (zh) * 2015-12-22 2018-11-02 镇江恒驰科技有限公司 一种基于互联网优化新能源汽车整车控制参数的系统及其方法
US10108374B2 (en) * 2016-07-12 2018-10-23 Nxp Usa, Inc. Memory controller for performing write transaction with stall when write buffer is full and abort when transaction spans page boundary

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328888A (ja) * 1995-05-29 1996-12-13 Nec Corp ソフトウェア二重化処理装置
JPH10261762A (ja) * 1997-03-19 1998-09-29 Hitachi Ltd メモリを内蔵した多重化マイクロコントローラ

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274795A (en) * 1989-08-18 1993-12-28 Schlumberger Technology Corporation Peripheral I/O bus and programmable bus interface for computer data acquisition
JP3247043B2 (ja) * 1996-01-12 2002-01-15 株式会社日立製作所 内部信号で障害検出を行う情報処理システムおよび論理lsi
JP2007148779A (ja) * 2005-11-28 2007-06-14 Renesas Technology Corp マイクロコントローラおよびram

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328888A (ja) * 1995-05-29 1996-12-13 Nec Corp ソフトウェア二重化処理装置
JPH10261762A (ja) * 1997-03-19 1998-09-29 Hitachi Ltd メモリを内蔵した多重化マイクロコントローラ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175641A (ja) * 2010-02-23 2011-09-08 Infineon Technologies Ag 時間的に分離した冗長プロセッサの実行を使用しての周辺機器への読み書き

Also Published As

Publication number Publication date
US20130013881A1 (en) 2013-01-10
DE102010008023A1 (de) 2010-09-02
JP5564187B2 (ja) 2014-07-30
US8291188B2 (en) 2012-10-16
US20100217943A1 (en) 2010-08-26
US8639905B2 (en) 2014-01-28

Similar Documents

Publication Publication Date Title
JP5564187B2 (ja) マイクロコントローラおよび自動車電子制御装置
JP5507830B2 (ja) マイクロコントローラ及び自動車制御装置
JP5693712B2 (ja) 半導体集積回路
JP5512383B2 (ja) 計算機システム
JP5850774B2 (ja) 半導体集積回路装置及びそれを用いたシステム
JP6005392B2 (ja) ルーティングのための方法及び装置
JP2008518311A (ja) マルチプロセッサシステムにおいてクロックを切り替えるクロック切り替え方法、クロックを切り替えるユニットおよびクロックを切り替えるユニットを有するシステム
KR20130101927A (ko) 디버깅 기능을 가지는 멀티코어 SoC
US9229830B2 (en) Semiconductor integrated circuit device and microcontroller
JP2010262432A (ja) 安全制御装置
US9128838B2 (en) System and method of high integrity DMA operation
US10558379B2 (en) Semiconductor device
JP4422076B2 (ja) データ処理装置、電子制御ユニット、ならびに自動車
JP6921219B2 (ja) 分散制御システム
US20240201997A1 (en) Enhanced offload to hardware accelerators
JP2002006910A (ja) 更新機能付きプログラマブルコントローラおよびプログラマブルコントローラの機能拡張ユニットの機能更新方法
JP3909080B2 (ja) データプロセッサ
US20140215200A1 (en) Data processing device with serial bus that needs initialization before use
WO2019188172A1 (ja) 情報処理装置
JP2023009818A (ja) 車両用電子制御装置及び車両用電子制御装置による制御方法
US20150082083A1 (en) Information processing system and information processing method
JP2006172331A (ja) マイクロコントローラ
JP2008305232A (ja) Pcカード装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120202

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140428

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140616

R150 Certificate of patent or registration of utility model

Ref document number: 5564187

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350