WO2018179753A1 - マイクロコンピュータ - Google Patents

マイクロコンピュータ Download PDF

Info

Publication number
WO2018179753A1
WO2018179753A1 PCT/JP2018/002284 JP2018002284W WO2018179753A1 WO 2018179753 A1 WO2018179753 A1 WO 2018179753A1 JP 2018002284 W JP2018002284 W JP 2018002284W WO 2018179753 A1 WO2018179753 A1 WO 2018179753A1
Authority
WO
WIPO (PCT)
Prior art keywords
write
unit
cpus
cpu
control unit
Prior art date
Application number
PCT/JP2018/002284
Other languages
English (en)
French (fr)
Inventor
達也 山下
山田 健二
Original Assignee
株式会社デンソー
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 株式会社デンソー filed Critical 株式会社デンソー
Priority to CN201880021379.0A priority Critical patent/CN110462603B/zh
Publication of WO2018179753A1 publication Critical patent/WO2018179753A1/ja
Priority to US16/549,480 priority patent/US10733125B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • 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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/40Bus coupling

Definitions

  • the present disclosure relates to a lockstep microcomputer that monitors an abnormality by duplicating processing by two CPUs.
  • Patent Document 1 As an example of an electronic control device adopting a lockstep method, in Patent Document 1, two processor cores 10 and 12 each access the switching device 30 via a dedicated path. Then, the switching device 30 instructs the processor core 10 or 12 to switch processing.
  • the first and second CPUs execute the same control program in parallel.
  • the write control unit controls write access by the first or second CPU, and the determination unit compares the outputs of the first and second CPUs. Data is written into the write target unit by the write control unit.
  • the write control unit outputs a write response signal to the first and second CPUs when the data write destinations of the first and second CPUs are write target units, and the determination unit is output by the first and second CPUs. If the received data does not match, an abnormality determination signal is output to the write control unit.
  • the write control unit writes data to the write target unit on the condition that the write destination of the data output by the first and second CPUs is the write target unit and no abnormality determination signal is input.
  • the writing of data to the writing target unit is performed by a lock step method using two CPUs and via the writing control unit. Then, only one of the CPUs needs to be connected to the write control unit via the system bus, and at least the data write path needs to be directly connected to the determination unit. Therefore, there is no contention between the two CPUs on the system bus. In addition, since the write control unit immediately outputs a write response signal to both CPUs when the data write destination is a write target unit, the CPU does not enter an execution waiting state. Therefore, the lock step method can be realized without reducing the processing efficiency of the CPU.
  • FIG. 1 is a functional block diagram showing the configuration of the microcomputer in the first embodiment
  • FIG. 2 is a functional block diagram showing the configuration of the write control unit.
  • FIG. 3 is a timing chart during normal operation.
  • FIG. 4 is a timing chart during abnormal operation.
  • FIG. 5 is a functional block diagram showing the configuration of the microcomputer in the second embodiment with respect to the main part.
  • FIG. 6 is a timing chart during normal operation.
  • FIG. 7 is a timing chart during abnormal operation.
  • FIG. 8 is a functional block diagram illustrating the configuration of the microcomputer according to the third embodiment.
  • FIG. 1 is a functional block diagram showing the configuration of the microcomputer in the first embodiment
  • FIG. 2 is a functional block diagram showing the configuration of the write control unit.
  • FIG. 3 is a timing chart during normal operation.
  • FIG. 4 is a timing chart during abnormal operation.
  • FIG. 5 is a functional block diagram showing the configuration of the microcomputer in the second embodiment with respect to the main part.
  • FIG. 6
  • FIG. 9 is a functional block diagram showing the main part of the configuration of the microcomputer in the fourth embodiment.
  • FIG. 10 is a functional block diagram showing the configuration of the main part of the microcomputer according to the fifth embodiment.
  • FIG. 11 is a functional block diagram showing the configuration of the microcomputer of the sixth embodiment.
  • FIG. 12 is a functional block diagram showing the configuration of the main part of the seventh embodiment microcomputer.
  • FIG. 13 is a functional block diagram showing the configuration of the main part of the microcomputer according to the eighth embodiment.
  • FIG. 14 is a timing chart during abnormal operation.
  • the microcomputer 1 of this embodiment includes a first CPU 2 and a second CPU 3.
  • the CPU 2 is connected to peripheral circuits such as the ROM 5 and the write control unit 7 via the system bus 4.
  • the CPUs 2 and 3 execute the same control program in parallel. Only the CPU 2 executes access to the ROM 5, and the CPU 3 reads the data read by the CPU 2 through the system bus 4.
  • the CPU 2 is directly connected to the determination unit 6 without going through the system bus 4.
  • the writing of data to each peripheral circuit is substantially performed only by the CPU 2, but the determination unit 6 collates the data output by the CPU 3 with the data output by the CPU 2. Then, the determination unit 6 outputs a determination signal that is a collation result to the write control unit 7.
  • the determination signal is maintained at a high level as long as the data of the CPUs 2 and 3 match each other, and changes to a low level when the data does not match. The state changed to the determination signal low level corresponds to the abnormality determination signal.
  • the write control unit 7 controls data writing to the setting unit 8 that is a write target unit.
  • the write control unit 7 controls the CPUs 2 and 3.
  • the bus response signal is output as an acknowledge. Then, when the CPU 2 accesses the setting unit 8, if the determination signal indicates a high level, the data output by the CPU 2 is written in the setting unit 8.
  • a specific configuration example of the setting unit 8 will be described in a later embodiment.
  • the write control unit 7 includes an address identification unit 11, a data holding unit 12, and a write execution unit 13.
  • the address identification unit 11 identifies the access address of the CPU 2 and outputs a bus response signal if the access destination is the setting unit 8 as described above.
  • the data holding unit 12 is a buffer that holds write data output by the CPU 2. If the access destination is the setting unit 8 and the determination signal is high level, the write execution unit 13 outputs the data held in the data holding unit 12 to the setting unit 8 for writing.
  • the determination unit 6 changes the determination signal to a low level due to a mismatch between the access state and data. Therefore, the write control unit 7 returns the bus response signal but does not execute the write to the setting unit 8, and the status of the setting unit 8 remains M0.
  • the first CPU 2 and the second CPU 3 execute the same control program in parallel
  • the write control unit 7 controls the write access by the CPUs 2 and 3, and the determination unit 6 3 outputs are compared.
  • Data is written into the setting unit 8 by the write control unit 7.
  • the write control unit 7 outputs a write response signal to the CPUs 2 and 3 if the data write destinations of the CPUs 2 and 3 are the setting unit 8, and the determination unit 6 does not match the data output by the CPUs 2 and 3. If so, the write determination signal is changed to a low level.
  • the write control unit 7 writes the data to the setting unit 8 on the condition that the write destination of the data output by the CPUs 2 and 3 is the setting unit 8 and the determination signal is at a high level.
  • the data writing to the setting unit 8 is performed by the CPU 2 and the lock step system 3 and via the write control unit 7.
  • the CPU 3 only needs to be connected to the write control unit 7 via the system bus 4, and the CPU 3 only needs to have at least a data write path connected directly to the determination unit 6. Therefore, contention by the CPUs 2 and 3 does not occur on the system bus 4.
  • the write control unit 7 since the write control unit 7 immediately outputs a bus response signal to the CPUs 2 and 3 if the data write destination is the setting unit 8, the CPUs 2 and 3 do not enter an execution waiting state. Therefore, the lockstep method can be realized without reducing the processing efficiency of the CPUs 2 and 3.
  • the microcomputer 21 includes a delay unit 22.
  • the delay unit 22 is interposed between a path in which the second CPU 3 fetches an instruction via the bus 4 and a path in which data output from the first CPU 2 is input to the determination unit 6, and each cycle has two cycles. Give a minute delay.
  • the delay unit 22 corresponds to first and second delay units.
  • the access performed by the CPU 3 is delayed by two cycles with respect to the access performed by the CPU 2, but the data to be compared by the determination unit 6 is input at the same timing.
  • the timing at which the determination unit 6 changes the determination signal to the low level is delayed by two cycles with respect to the timing at which the write control unit 7 returns the bus response signal.
  • the CPU 2 accesses the write control unit 24 via the delay unit 22 without passing through the system bus 4, and the data is sent to the determination unit 6. This is done using the input path.
  • the data input timing to the write control unit 24 is the same as that of the determination unit 6. Therefore, the data holding unit 12 can be deleted for the write control unit 24.
  • a path for accessing the write control unit 24 is a path for the CPU 3 to output data to the determination unit 6.
  • the write controller 24 can be used as in the third embodiment.
  • the microcomputer 31 of the fifth embodiment is obtained by connecting the write control unit 7 and the setting unit 8 via a local bus 32 in the configuration of the first embodiment.
  • the local bus 32 corresponds to a dedicated bus. With this configuration, it is possible to provide extensibility for adding a peripheral circuit having a high safety requirement like the setting unit 8.
  • the microcomputer 33 of the sixth embodiment is configured by connecting a plurality of setting units 8 (1) to 8 (n) to the local bus 32 in the configuration of the fifth embodiment. It becomes possible to expand as follows.
  • the microcomputer 34 of the seventh embodiment is connected to the read path between the local bus 32 and the system bus 4 in the configuration of the fifth embodiment.
  • the CPUs 2 and 3 need to read the data stored in the setting unit 8
  • the data is read directly via the local bus 32. Thereby, data reading from the setting unit 8 can be performed quickly.
  • the eighth embodiment is a specific configuration example of the setting unit 8 in the microcomputer 21 of the second embodiment.
  • the setting unit 8 includes a determination control unit 41, an abnormality treatment setting unit 42, and a monitoring mechanism setting unit 43.
  • the determination control unit 41 notifies the abnormality treatment setting unit 42 and the monitoring mechanism setting unit 43 of the abnormality treatment signal.
  • the abnormality treatment setting unit 42 includes a reset request setting unit 42a, an interrupt request setting unit 42b, and an external output request setting unit 42c.
  • the reset request setting unit 42a it is possible to select and set whether to make a reset request to the entire microcomputer 21 or the CPUs 2 and 3, or not to make a reset request.
  • the reset target may include a peripheral circuit. Then, when the abnormality treatment signal is input from the determination control unit 41, the reset request setting unit 42a outputs a reset request signal corresponding to the set reset request type. However, in the case of “Do not request reset”, no reset request signal is output.
  • the interrupt request setting unit 42b it is possible to select and set whether to make a maskable interrupt or non-maskable interrupt request to the CPUs 2 and 3, or not to make an interrupt request.
  • the setting of the priority order thereof may be included. Then, when the abnormality treatment signal is input, the interrupt request setting unit 42b outputs an interrupt request signal corresponding to the set interrupt request type. However, no interrupt request signal is output when “Do not request interrupt” is set.
  • the external output request setting unit 42c it is possible to select and set whether to make a signal output request to any or all of one or more external terminals of the microcomputer 21 or not to make a signal output request. Then, when the abnormality treatment signal is input, the external output request setting unit 42c outputs a signal output request signal corresponding to the set signal output request type. However, if the setting is “Do not request signal output”, no signal output request signal is output.
  • the monitoring mechanism setting unit 43 includes a delay cycle number setting unit 43a, a self test setting unit 43b, and a CPU operation mode setting unit 43c.
  • the delay cycle number setting unit 43a sets the delay cycle number.
  • the self-test setting unit 43b sets the operation content of the self-test performed for the CPUs 2 and 3, the determination unit 6, the write control unit 24, or the setting unit 8.
  • the CPU operation mode setting unit 43c switches the operation modes of the CPUs 2 and 3 to, for example, a lock step mode in which both execute the same control program as described above and a non-lock step mode in which different control programs are executed.
  • the reset request setting unit 42 a of the abnormality treatment setting unit 42 sets a reset request when “set a reset request” is set.
  • the signal is changed from low level to high level to make it active.
  • the interrupt request setting unit 42b may output an interrupt request or the external output request setting unit 42c may output an external signal output request at the same or different timing.
  • each function of the monitoring mechanism setting unit 43 may be executed.
  • the reset request setting unit 42a when a write access to the setting unit 8 is performed, if the determination signal input from the determination unit 6 changes to a low level, the reset request setting unit 42a is processed as an abnormality handling process. Thus, a reset request signal can be output.
  • the interrupt request setting unit 42b sets a maskable interrupt or a non-maskable interrupt request for the CPUs 2 and 3.
  • the external output request setting unit 42 c sets a signal output request to the outside via one or more external terminals of the microcomputer 21.
  • the setting unit 8 is not limited to the one in which the access result is reflected after three cycles from the start of access by the CPU 2.
  • the number of delay cycles in the delay unit 22 is not limited to “2”.
  • Each function of the setting unit 8 in the eighth embodiment may be any one or more.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Microcomputers (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

第1及び第2CPUは、同一の制御プログラムを並行して実行する。書き込み制御部は、第1又は第2CPUによる書き込みアクセスを制御し、判定部は第1及び第2CPUの出力を比較する。書き込み対象部には、書き込み制御部によってデータの書き込みが行われる。書き込み制御部は、第1及び第2CPUによるデータの書き込み先が書き込み対象部であれば、第1及び第2CPUに対して書き込み応答信号を出力し、判定部は、第1及び第2CPUにより出力されたデータが不一致であれば書き込み制御部に異常判定信号を出力する。書き込み制御部は、第1及び第2CPUにより出力されたデータの書き込み先が書き込み対象部であり、且つ異常判定信号が入力されていないことを条件として書き込み対象部にデータを書き込む。

Description

マイクロコンピュータ 関連出願の相互参照
 本出願は、2017年3月28日に出願された日本出願番号2017-62849号に基づくもので、ここにその記載内容を援用する。
 本開示は、2つのCPUにより処理を2重化することで異常監視を行うロックステップ方式のマイクロコンピュータに関する。
 ロックステップ方式を採用した電子制御装置の一例として、特許文献1では、2つのプロセッサコア10,12が、それぞれ専用のパスを介して切替装置30にアクセスを行う。そして、切替装置30は、プロセッサコア10又は12に対して処理の切替を指示する。
特許第5978873号公報
 しかしながら、特許文献1のように専用パスを用いる場合はCPUをそれに対応した構成にする必要があるため、汎用のCPUを使用することができない。一方、切替装置を汎用バスに接続すると、2つのCPUが同じアドレスにアクセスすれば、各CPUが書き込むデータが個別に保持できなくなる。また、2つのCPUを異なるアドレスにアクセスさせれば前記データを個別に保持できるが、複数回のアクセスが必要になるという問題が残る。
 本開示は、汎用のCPUを用いてロックステップ方式を効率的に実現できるマイクロコンピュータを提供することを目的とする。
 本開示の一態様によれば、第1及び第2CPUは、同一の制御プログラムを並行して実行する。書き込み制御部は、第1又は第2CPUによる書き込みアクセスを制御し、判定部は第1及び第2CPUの出力を比較する。書き込み対象部には、書き込み制御部によってデータの書き込みが行われる。
 書き込み制御部は、第1及び第2CPUによるデータの書き込み先が書き込み対象部であれば、第1及び第2CPUに対して書き込み応答信号を出力し、判定部は、第1及び第2CPUにより出力されたデータが不一致であれば書き込み制御部に異常判定信号を出力する。そして、書き込み制御部は、第1及び第2CPUにより出力されたデータの書き込み先が書き込み対象部であり、且つ異常判定信号が入力されていないことを条件として書き込み対象部にデータを書き込む。
 すなわち、書き込み対象部に対するデータの書き込みは、2つのCPUによるロックステップ方式で、且つ書き込み制御部を介して行われる。そして、書き込み制御部には、何れか一方のCPUのみがシステムバスを介して接続されていれば良く、他方のCPUは、少なくともデータ書き込み用のパスが判定部に直接接続されていれば良い。したがって、システムバス上では2つのCPUによる競合が発生しない。加えて、書き込み制御部は、データの書き込み先が書き込み対象部であれば両CPUに対して直ちに書き込み応答信号を出力するので、CPUは実行待ち状態になることが無い。したがって、CPUの処理効率を低下させることなくロックステップ方式を実現できる。
 本開示についての上記目的およびその他の目的、特徴や利点は、添付の図面を参照しながら下記の詳細な記述により、より明確になる。その図面は、
図1は、第1実施形態において、マイクロコンピュータの構成を要部に付いて示す機能ブロック図であり、 図2は、書き込み制御部の構成を示す機能ブロック図図であり、 図3は、正常動作時のタイミングチャートであり、 図4は、異常動作時のタイミングチャートであり、 図5は、第2実施形態において、マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図6は、正常動作時のタイミングチャートであり、 図7は、異常動作時のタイミングチャートであり、 図8は、第3実施形態マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図9は、第4実施形態において、マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図10は、第5実施形態マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図11は、第6実施形態マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図12は、第7実施形態マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図13は、第8実施形態マイクロコンピュータの構成を要部について示す機能ブロック図であり、 図14は、異常動作時のタイミングチャートである。
  (第1実施形態)
 図1に示すように、本実施形態のマイクロコンピュータ1は、第1CPU2及び第2CPU3を備えている。CPU2は、システムバス4を介してROM5及び書き込み制御部7等の周辺回路に接続されている。CPU2及び3は、同一の制御プログラムを並行的に実行する。ROM5に対するアクセスはCPU2のみが実行し、CPU3は、CPU2により読み出されたデータを、システムバス4を介して読み込む。また、CPU2は、判定部6に対してはシステムバス4を介すことなく直接接続されている。
 各周辺回路に対するデータの書き込みは、実質CPU2のみによって行われるが、判定部6は、CPU3が出力したデータを、CPU2が出力したデータと照合する。そして、判定部6は、照合結果である判定信号を書き込み制御部7に対して出力する。判定信号は、CPU2及び3の各データが一致している限りハイレベルに維持され、データ不一致になるとローレベルに変化する。判定信号ローレベルに変化した状態が異常判定信号に相当する。
 書き込み制御部7は、書き込み対象部である設定部8に対するデータの書き込みを制御するもので、CPU2がバス4に出力したアドレスが設定部8をアクセス先として示した際に、CPU2及び3に対し、アクノリッジとしてバス応答信号を出力する。そして、CPU2が設定部8にアクセスした際に、前記判定信号がハイレベルを示していればCPU2が出力したデータを設定部8に書き込む。設定部8の具体構成例については、後の実施形態において示す。
 図2に示すように、書き込み制御部7は、アドレス識別部11,データ保持部12及び書き込み実行部13を備えている。アドレス識別部11は、CPU2のアクセスアドレスを識別し、上述のようにアクセス先が設定部8であればバス応答信号を出力する。データ保持部12は、CPU2が出力した書き込みデータを保持するバッファである。書き込み実行部13は、アクセス先が設定部8であり、且つ判定信号がハイレベルであればデータ保持部12に保持されているデータを設定部8に出力して書き込む。
 次に、本実施形態の作用について説明する。図3に示すように、CPU2及び3の動作が正常であれば、それらのアクセス対象及び書き込みデータは同一である。尚、図中に示すP0~P2は、書き込み制御部7及び設定部8以外の図示しない他の周辺回路へのアクセス命令又は書き込みデータを意味する。また、M0,M1は、設定部8へのアクセス命令又は書き込みデータを意味する。「-」は命令が無い状態を意味する。設定部8は、その動作に対する安全性の要求が高く、その他の周辺回路は、動作に対する安全性の要求が相対的に低いものである。
 CPU2及び3が共にP1,P2でアクセスした際には、対応する周辺回路からの応答信号が返る。尚、前記周辺回路に対しては、CPU2のアクセス開始からシステムクロック周期の1サイクル後にアクセス結果が反映される。また、CPU2及び3が共にM1でアクセスした際には、書き込み制御部7がバス応答信号を返す。判定信号は常時ハイレベルを維持し、設定部8に対しては、CPU2のアクセス開始から3サイクル後にアクセス結果が反映される。
 一方、図4に示すように、CPU2がM1でアクセスした際に、CPU3がP2でアクセスを行ったとする。この時、判定部6は、アクセス状態,データの不一致により判定信号をローレベルに変化させる。したがって、書き込み制御部7は、バス応答信号を返しはするが設定部8への書き込みは実行せず、設定部8のステータスはM0のままとなる。
 以上のように本実施形態によれば、第1CPU2及び第2CPU3は同一の制御プログラムを並行して実行し、書き込み制御部7は、CPU2及び3による書き込みアクセスを制御し、判定部6はCPU2及び3の出力を比較する。設定部8には、書き込み制御部7によってデータの書き込みが行われる。書き込み制御部7は、CPU2及び3によるデータの書き込み先が設定部8であれば、CPU2及び3に対して書き込み応答信号を出力し、判定部6は、CPU2及び3により出力されたデータが不一致であれば書き込み判定信号をローレベルに変化させる。そして、書き込み制御部7は、CPU2及び3により出力されたデータの書き込み先が設定部8であり、且つ判定信号がハイレベルであることを条件として設定部8にデータを書き込む。
 すなわち、設定部8に対するデータの書き込みは、CPU2及び3によるロックステップ方式で、且つ書き込み制御部7を介して行われる。そして、書き込み制御部7には、CPU2のみがシステムバス4を介して接続されていれば良く、CPU3は、少なくともデータ書き込み用のパスが判定部6に直接接続されていれば良い。したがって、システムバス4上ではCPU2及び3による競合が発生しない。加えて、書き込み制御部7は、データの書き込み先が設定部8であればCPU2及び3に対して直ちにバス応答信号を出力するので、CPU2及び3は実行待ち状態になることが無い。したがって、CPU2及び3の処理効率を低下させることなくロックステップ方式を実現できる。
  (第2実施形態)
 以下、第1実施形態と同一部分には同一符号を付して説明を省略し、異なる部分について説明する。図5に示すように、第2実施形態のマイクロコンピュータ21は、遅延部22を備えている。遅延部22は、第2CPU3がバス4を介して命令フェッチを行うパスと、第1CPU2が出力したデータが判定部6に入力されるパスとの間に介在しており、それぞれのパスに2サイクル分の遅延時間を付与する。遅延部22は、第1及び第2遅延部に相当する。
 次に、第2実施形態の作用について説明する。図6に示すように、CPU2が行うアクセスに対して、CPU3が行うアクセスは2サイクル分遅延するが、判定部6が比較対象とするデータは同じタイミングで入力される。図7に示す異常発生時の動作では、書き込み制御部7がバス応答信号を返すタイミングに対して、判定部6が判定信号をローレベルに変化させるタイミングが2サイクル遅れることになる。
 第1実施形態のように、CPU2及び3の実行タイミングが同じである場合、例えばノイズの影響を受けたデータ値が同じように変化するため、照合結果は一致することになる。これに対して第2実施形態のように、CPU3側の実行タイミングをCPU2とずらすことで、両者がノイズの影響を同じように受ける可能性をより低くすることができる。
  (第3実施形態)
 図8に示すように、第3実施形態のマイクロコンピュータ23は、CPU2が書き込み制御部24にアクセスを行うパスを、システムバス4を介すことなく、遅延部22を経てデータが判定部6に入力されるパスを用いて行うようにしている。この場合、書き込み制御部24に対するデータの入力タイミングが判定部6と同じになる。したがって、書き込み制御部24については、データ保持部12を削除できる。
  (第4実施形態)
 図9に示すように、第4実施形態のマイクロコンピュータ25は、書き込み制御部24にアクセスを行うパスを、CPU3が判定部6にデータを出力するパスとしている。この場合も第3実施形態と同様に、書き込み制御部24を用いることができる。
  (第5実施形態)
 図10に示すように、第5実施形態のマイクロコンピュータ31は、第1実施形態の構成において、書き込み制御部7と設定部8とを、ローカルバス32を介して接続したものである。ローカルバス32は専用バスに相当する。このように構成すれば、設定部8と同様に安全性の要求が高い周辺回路を追加するための拡張性を持たせることができる。
  (第6実施形態)
 そして、図11に示すように第6実施形態のマイクロコンピュータ33は、第5実施形態の構成において、ローカルバス32に複数の設定部8(1)~8(n)を接続したもので、このように拡張することが可能になる。
  (第7実施形態)
 図12に示すように、第7実施形態のマイクロコンピュータ34は、第5実施形態の構成において、ローカルバス32とシステムバス4との読出しパスを接続している。そして、CPU2及び3が設定部8に格納されているデータを読み出す必要がある場合には、ローカルバス32を介して直接読出しを行うようにする。これにより、設定部8からのデータ読み出しを迅速に行うことができる。
  (第8実施形態)
 図13に示すように、第8実施形態は、第2実施形態のマイクロコンピュータ21における設定部8の具体構成例である。設定部8は、判定制御部41,異常処置設定部42及び監視機構設定部43を備えている。判定制御部41は、判定部6より入力される判定信号がローレベルを示した際に、異常処置設定部42及び監視機構設定部43に異常処置信号を通知する。
 異常処置設定部42は、リセット要求設定部42a,割り込み要求設定部42b及び外部出力要求設定部42cを備えている。リセット要求設定部42aには、マイクロコンピュータ21全体若しくはCPU2及び3へのリセット要求をするか、又はリセット要求をしないかが選択設定可能である。リセットの対象は、周辺回路を含んでいても良い。そして、リセット要求設定部42aは、判定制御部41から異常処置信号が入力されると、設定されているリセット要求種別に該当するリセット要求信号を出力する。但し、「リセット要求をしない」設定の場合は、リセット要求信号を出力しない。
 割り込み要求設定部42bには、CPU2及び3に対するマスカブル割り込み若しくはノンマスカブル割り込み要求をするか、又は割り込み要求をしないかが選択設定可能である。割り込み要因が複数ある場合は、それらの優先順位の設定を含んでいても良い。そして、割り込み要求設定部42bは、異常処置信号が入力されると、設定されている割り込み要求種別に該当する割り込み要求信号を出力する。但し、「割り込み要求をしない」設定の場合は、割り込み要求信号を出力しない。
 外部出力要求設定部42cには、マイクロコンピュータ21の1つ以上の外部端子の何れか又は全てへの信号出力要求をするか、又は信号出力要求をしないかが選択設定可能である。そして、外部出力要求設定部42cは、異常処置信号が入力されると、設定されている信号出力要求種別に該当する信号出力要求信号を出力する。但し、「信号出力要求をしない」設定の場合は、信号出力要求信号を出力しない。
 監視機構設定部43は、遅延サイクル数設定部43a,セルフテスト設定部43b及びCPU動作モード設定部43cを備えている。遅延サイクル数設定部43aは、遅延部22が遅延サイクル数の設定変更が可能に構成されている場合に、その遅延サイクル数の設定を行う。
 セルフテスト設定部43bは、CPU2及び3又は判定部6又は書き込み制御部24又は設定部8について行うセルフテストの動作内容を設定する。CPU動作モード設定部43cは、CPU2及び3の動作モードを、例えば上述したように両者が同一の制御プログラムを実行するロックステップモードと、それぞれ異なる制御プログラムを実行する非ロックステップモードとに切り換える。
 次に、第8実施形態の作用について説明する。図14に示すように、第2実施形態の図7に示すケースと同様の異常が発生すると、異常処置設定部42のリセット要求設定部42aは、「リセット要求をする」設定の場合、リセット要求信号をローレベルからハイレベルに変化させてアクティブにする。尚、同じ又は異なるタイミングで、割り込み要求設定部42bにより割り込み要求を出力させたり、外部出力要求設定部42cにより外部への信号出力要求を出力させても良い。または、監視機構設定部43の各機能を実行させても良い。
 以上のように第8実施形態によれば、設定部8に対する書き込みアクセスが行われた際に、判定部6より入力される判定信号がローレベルに変化すると、異常対応処理としてリセット要求設定部42aによりリセット要求信号を出力させることができる。また、割り込み要求設定部42bは、CPU2及び3に対するマスカブル割り込み又はノンマスカブル割り込み要求を設定する。外部出力要求設定部42cは、マイクロコンピュータ21の1つ以上の外部端子を介した、外部への信号出力要求を設定する。
  (その他の実施形態)
 設定部8は、CPU2のアクセス開始から3サイクル後にアクセス結果が反映されるものに限らない。
 遅延部22における遅延サイクル数は「2」に限らない。
 第8実施形態における設定部8の各機能は、何れか1つ以上を備えていれば良い。
 本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。

Claims (12)

  1.  同一の制御プログラムを並行して実行する第1及び第2CPU(2,3)と、
     前記第1又は第2CPUによる書き込みアクセスを制御する書き込み制御部(7,24)と、
     前記第1及び第2CPUの出力を比較する判定部(6)と、
     前記書き込み制御部によってデータの書き込みが行われる書き込み対象部(8)とを備え、
     前記書き込み制御部は、前記第1及び第2CPUによるデータの書き込み先が前記書き込み対象部であれば、前記第1及び第2CPUに対して書き込み応答信号を出力し、
     前記判定部は、前記第1及び第2CPUにより出力されたデータが不一致であれば、前記書き込み制御部に異常判定信号を出力し、
     前記書き込み制御部は、前記第1及び第2CPUにより出力されたデータの書き込み先が前記書き込み対象部であり、且つ前記異常判定信号が入力されていないことを条件として、前記書き込み対象部に前記データを書き込むマイクロコンピュータ。
  2.  前記第1CPUと前記判定部との間のパスに配置され、遅延時間を付与する第1遅延部(22)と、
     前記第2CPUに接続されるパス中に、前記判定部に対するデータの入力タイミングが前記第1CPU側と等しくなるように遅延時間を付与する第2遅延部(22)とを備える請求項1記載のマイクロコンピュータ。
  3.  前記遅延時間は、システムクロックの2周期分である請求項2記載のマイクロコンピュータ。
  4.  前記書き込み制御部(24)には、前記第1CPUにより、前記第1遅延部を介して書き込みアクセスが行われる請求項2又は3記載のマイクロコンピュータ。
  5.  前記書き込み制御部(24)には、前記第2CPUにより書き込みアクセスが行われる請求項2又は3記載のマイクロコンピュータ。
  6.  前記書き込み制御部と前記書き込み対象部との間を接続する専用バス(32)を備える請求項1から5の何れか一項に記載のマイクロコンピュータ。
  7.  前記書き込み対象部を複数備え、
     前記書き込み制御部は、前記専用バスを介して前記複数の書き込み対象部に選択的に書き込みを行う請求項6記載のマイクロコンピュータ。
  8.  前記第1CPUが、前記専用バスを介して前記書き込み対象部に対する読出しアクセスを行うように構成される請求項6又は7記載のマイクロコンピュータ。
  9.  前記異常判定信号は、前記書き込み対象部にも入力され、
     前記書き込み対象部は、前記異常判定信号が入力された際に、異常対応処理を行う機能(41~43)を備える請求項1から8の何れか一項に記載のマイクロコンピュータ。
  10.  前記異常対応処理は、システムリセット要求信号の出力である請求項9記載のマイクロコンピュータ。
  11.  前記異常対応処理は、前記第1及び第2CPUに対する割り込み要求の出力である請求項9又は10記載のマイクロコンピュータ。
  12.  前記異常対応処理は、外部に対する異常発生信号の出力である請求項9から11の何れか一項に記載のマイクロコンピュータ。
PCT/JP2018/002284 2017-03-28 2018-01-25 マイクロコンピュータ WO2018179753A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201880021379.0A CN110462603B (zh) 2017-03-28 2018-01-25 微型计算机
US16/549,480 US10733125B2 (en) 2017-03-28 2019-08-23 Microcomputer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017062849A JP6645467B2 (ja) 2017-03-28 2017-03-28 マイクロコンピュータ
JP2017-062849 2017-03-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/549,480 Continuation US10733125B2 (en) 2017-03-28 2019-08-23 Microcomputer

Publications (1)

Publication Number Publication Date
WO2018179753A1 true WO2018179753A1 (ja) 2018-10-04

Family

ID=63674580

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/002284 WO2018179753A1 (ja) 2017-03-28 2018-01-25 マイクロコンピュータ

Country Status (4)

Country Link
US (1) US10733125B2 (ja)
JP (1) JP6645467B2 (ja)
CN (1) CN110462603B (ja)
WO (1) WO2018179753A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015138529A (ja) * 2014-01-24 2015-07-30 トヨタ自動車株式会社 Cpu故障検出装置
JP2016035626A (ja) * 2014-08-01 2016-03-17 ルネサスエレクトロニクス株式会社 半導体装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3396946B2 (ja) * 1994-03-18 2003-04-14 富士通株式会社 2重化システムにおける切り替え装置
JP4604696B2 (ja) * 2004-12-10 2011-01-05 凸版印刷株式会社 フィルム導光板とその製造方法
JP4168403B2 (ja) * 2004-12-21 2008-10-22 日本電気株式会社 フォールトトレラントシステム、これで用いる制御装置、アクセス制御方法、及び制御プログラム
JP2006178618A (ja) * 2004-12-21 2006-07-06 Nec Corp フォールトトレラントコンピュータ及びデータ送信制御方法
JP2009199414A (ja) * 2008-02-22 2009-09-03 Renesas Technology Corp マイクロコンピュータ
JP5350677B2 (ja) * 2008-05-19 2013-11-27 株式会社東芝 バス信号制御回路、及び、バス信号制御回路を備えた信号処理回路
JP2010003141A (ja) * 2008-06-20 2010-01-07 Mitsubishi Electric Corp 二重化システム
JP2010122752A (ja) * 2008-11-17 2010-06-03 Fujitsu Ten Ltd 制御装置
EP2642399A1 (en) * 2010-11-15 2013-09-25 Fujitsu Limited Access method, and multi-core processor system
JP5978873B2 (ja) 2012-09-12 2016-08-24 株式会社デンソー 電子制御装置
JP6266239B2 (ja) * 2013-07-11 2018-01-24 ルネサスエレクトロニクス株式会社 マイクロコンピュータ
JP6090094B2 (ja) * 2013-10-02 2017-03-08 トヨタ自動車株式会社 情報処理装置
JP2015114847A (ja) * 2013-12-11 2015-06-22 トヨタ自動車株式会社 情報処理装置
JP6280359B2 (ja) * 2013-12-17 2018-02-14 株式会社東芝 プログラマブルコントローラ
JP6341795B2 (ja) * 2014-08-05 2018-06-13 ルネサスエレクトロニクス株式会社 マイクロコンピュータ及びマイクロコンピュータシステム
US9823983B2 (en) * 2014-09-25 2017-11-21 Nxp Usa, Inc. Electronic fault detection unit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015138529A (ja) * 2014-01-24 2015-07-30 トヨタ自動車株式会社 Cpu故障検出装置
JP2016035626A (ja) * 2014-08-01 2016-03-17 ルネサスエレクトロニクス株式会社 半導体装置

Also Published As

Publication number Publication date
CN110462603A (zh) 2019-11-15
JP6645467B2 (ja) 2020-02-14
JP2018165892A (ja) 2018-10-25
US10733125B2 (en) 2020-08-04
CN110462603B (zh) 2023-09-22
US20190377697A1 (en) 2019-12-12

Similar Documents

Publication Publication Date Title
US9063907B2 (en) Comparison for redundant threads
JPH05128080A (ja) 情報処理装置
JP4965638B2 (ja) タスクの切り換えを制御するシステムおよび方法
JP2006344087A (ja) 制御装置のタスク管理装置、及び、制御装置のタスク管理方法
WO2018179753A1 (ja) マイクロコンピュータ
US11327853B2 (en) Multicore system for determining processor state abnormality based on a comparison with a separate checker processor
US20050022073A1 (en) Microcomputer system
US10540222B2 (en) Data access device and access error notification method
US7877533B2 (en) Bus system, bus slave and bus control method
US7689864B2 (en) Processor comprising an integrated debugging interface controlled by the processing unit of the processor
JP2008262557A (ja) 制御装置のタスク管理装置、及び、制御装置のタスク管理方法
JP2008152665A (ja) 半導体集積回路の動作解析方法
JP5756413B2 (ja) 制御装置
JPH05289987A (ja) バス権調停回路
JP2006277133A (ja) 半導体集積回路及びメモリデータチェック方法
JP2720580B2 (ja) フォールト・トレラント・コンピュータ
JP2005122337A (ja) バスシステム、ホストブリッジ、バスシステムのオンライン再立ち上げ方法及びプログラム
JP2004185060A (ja) マイクロコンピュータ
JPH02183342A (ja) 割込み制御装置
JPH0612292A (ja) マイクロコンピュータ
JPH0721767B2 (ja) エミュレーション方式
JP2017004337A (ja) マルチ・プログラマブルデバイス・システムとその制御方法
JP2008242592A (ja) メモリ監視回路、情報処理装置、及びメモリ監視方法
JPH10143462A (ja) マイクロコンピュータ
JPS6227423B2 (ja)

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18777362

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18777362

Country of ref document: EP

Kind code of ref document: A1