特許請求の範囲【請求項1】 処理で使用する情報を保持するフリップフロップと、前記フリップフロップが保持する前記情報がストアされる不揮発性素子とを各々有する1以上の不揮発性フリップフロップをそれぞれ含む一対のバンクと、 前記一対のバンクを交互に有効に設定し、有効でない前記バンクの前記フリップフロップに保持された前記情報を対応する前記不揮発性素子にストアするストア動作と、遮断された電源の復帰時に有効な前記バンクの前記不揮発性素子に保持された前記情報を対応する前記フリップフロップにリストアするリストア動作とを実行する情報格納制御部と、 交互に切り替えられる有効な前記バンクのフリップフロップに保持された前記情報を使用して処理を実行し、電源の復帰時に有効な前記バンクの前記フリップフロップにリストアされた前記情報を使用して前記電源の遮断により中断した処理を再開する処理実行部と、を有すること を特徴とする処理制御装置。 続きを表示(約 2,100 文字)【請求項2】 有効な前記バンクを示す有効情報を不揮発に保持する有効情報保持部を有し、 前記情報格納制御部は、有効でない前記バンクの前記ストア動作の完了に基づいて、有効情報保持部が保持する前記有効情報を書き換えて有効でない前記バンクを有効に切り替えること を特徴とする請求項1に記載の処理制御装置。 【請求項3】 処理で使用する情報を交互に保持する複数の不揮発性フリップフロップをそれぞれ含む一対のバンクを有する複数の不揮発性フリップフロップモジュールを有するコアと、 前記複数の不揮発性フリップフロップモジュールに保持される前記情報をそれぞれ制御する情報格納制御部と、を有し、 前記複数の不揮発性フリップフロップの各々は、前記情報を保持するフリップフロップと、前記フリップフロップが保持する前記情報がストアされる不揮発性素子とを有し、 前記情報格納制御部は、前記複数の不揮発性フリップフロップモジュールの前記一対のバンクを交互に有効に設定し、有効でない前記バンクの前記フリップフロップに保持された前記情報を対応する前記不揮発性素子にストアするストア動作と、遮断された電源の復帰時に有効な前記バンクの前記不揮発性素子に保持された前記情報を対応する前記フリップフロップにリストアするリストア動作とを実行し、 前記コアは、交互に切り替えられる有効な前記バンクのフリップフロップに保持された前記情報を使用して処理を実行し、電源の復帰時に有効な前記バンクの前記フリップフロップにリストアされた前記情報を使用して前記電源の遮断により中断した処理を再開すること を特徴とするプロセッサ。 【請求項4】 前記複数の不揮発性フリップフロップモジュールの各々は、有効な前記バンクを示す有効情報を不揮発に保持する有効情報保持部を有し、 前記情報格納制御部は、有効でない前記バンクの前記ストア動作の完了に基づいて、有効情報保持部が保持する前記有効情報を書き換えて有効でない前記バンクを有効に切り替えること を特徴とする請求項3に記載のプロセッサ。 【請求項5】 前記情報格納制御部は、前記複数の不揮発性フリップフロップモジュールのうちの1つであるマスタ不揮発性フリップフロップモジュールの前記有効情報保持部にグローバル有効情報を保持し、保持したグローバル有効情報により示される、前記複数の不揮発性フリップフロップモジュールの前記バンクの前記リストア動作を実施し、保持したグローバル有効情報により示されない、前記複数の不揮発性フリップフロップモジュールの前記バンクの前記ストア動作を実施すること を特徴とする請求項4に記載のプロセッサ。 【請求項6】 前記不揮発性フリップフロップモジュールは、前記ストア動作を開始するタイミングを所定数の不揮発性フリップフロップ毎にずらすインタリーブ機能を有し、 前記タイミングのずれ量は、変更可能であること を特徴とする請求項3ないし請求項5のいずれか1項に記載のプロセッサ。 【請求項7】 前記コアで使用するデータを保持する不揮発性メインメモリと、 前記コアに設けられ、前記不揮発性メインメモリに保持されるデータの一部を前記不揮発性フリップフロップモジュールに保持する不揮発性データキャッシュと、を有し、 前記不揮発性データキャッシュは、前記不揮発性データキャッシュにおいて前記ストア動作が完了したデータを前記不揮発性メインメモリにライトバックすること を特徴とする請求項3ないし請求項5のいずれか1項に記載のプロセッサ。 【請求項8】 前記不揮発性データキャッシュは、前記不揮発性メインメモリにライトバックするライトバックデータを保持するライトバッファを有し、前記ライトバッファに保持している前記ライトバックデータのうち、前記ストア動作が完了したライトバックデータを前記不揮発性メインメモリにライトバックすること を特徴とする請求項7に記載のプロセッサ。 【請求項9】 前記不揮発性データキャッシュは、前記ストア動作が完了していない前記ライトバックデータを前記ライトバッファに保持し、前記ライトバッファに所定量の前記ライトバックデータが保持されたとき、前記情報格納制御部に所定量の前記ライトバックデータの前記ストア動作を依頼し、前記ストア動作が完了した前記ライトバックデータを前記不揮発性メインメモリにライトバックすること を特徴とする請求項8に記載のプロセッサ。 【請求項10】 前記コアは、各々が前記処理で使用する情報を保持する前記不揮発性フリップフロップモジュールを含むパイプライン、レジスタファイル、命令キャッシュ、データキャッシュ及びアドレス変換バッファのうちの1つ又は複数を有すること を特徴とする請求項3ないし請求項5のいずれか1項に記載のプロセッサ。 (【請求項11】以降は省略されています) 発明の詳細な説明【技術分野】 【0001】 本発明は、処理制御装置及びプロセッサに関する。 続きを表示(約 1,900 文字)【背景技術】 【0002】 自動車、ロボット、宇宙船、ウェアラブルデバイス、センサネットワークなどに使用される組込みシステムは、時間制約を守りつつ処理を実行するリアルタイム性と、電源障害などに対する耐障害性とが要求される。電源障害が発生した場合、揮発性メモリ及びフリップフロップに保持された情報は失われるため、システムの再起動が必要となる。 【0003】 プロセッサシステムの耐障害性を向上するために、プロセスの再実行に必要な情報をチェックポイント毎に定期的にメインメモリに保存しておき、障害の発生によりプログラムの実行が中断されたときに、プロセスの状態をチェックポイントまで戻して再実行する手法が知られている(例えば、特許文献1参照)。 【0004】 マイクロコンピュータにおいて、停電の発生時にプログラムカウンタの値とメモリの内容とを不揮発性メモリにそれぞれ待避し、停電からの復旧時に待避したプログラムカウンタの値とメモリの内容とを復元する手法が知られている(例えば、特許文献2参照)。 【0005】 フリップフロップに不揮発性フリップフロップを使用した不揮発性プロセッサが知られている(例えば、非特許文献1参照)。 【先行技術文献】 【特許文献】 【0006】 特開平9-69082号公報 特開2000-39928号公報 【非特許文献】 【0007】 Y. Wang, Y. Liu, S. Li, D. Zhang, B. Zhao, M. Chiang, Y. Yan, B. Sai, and H. Yang, "A 3us wake-up time nonvolatile processor based on ferroelectric flip-flops," 2012 Proceedings of the ESSCIRC (ESSCIRC), pp.149-152, 2012. K. Usami, J. Akaike, S. Akiba, M. Kudo, H. Amano, T. Ikezoe, K. Hiraga, Y. Shuto, and K. Yagami, "Energy efficient write verify and retry scheme for mtj based flip-flop and application," 2018 IEEE 7th Non-Volatile Memory Systems and Applications Symposium (NVMSA), pp.91-98, 2018. A. Kamei, T. Kojima, H. Amano, D. Yokoyama, H. Miyauchi, K. Usami, K. Hiraga, K. Suzuki, and K. Bessho, "Energy saving in a multi-context coarse grained reconfigurable array with non-volatile flip-flops," 2021 IEEE 14th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC), pp.273-280, 2021. 【発明の概要】 【発明が解決しようとする課題】 【0008】 チェックポイント毎に情報を保存する手法では、システムの処理は、チェックポイントでの情報をメモリ等に書き込んでいる間に停止される。このため、チェックポイントの周期が短いほど、停電からの復旧時に停電の発生時点に近いところから処理を再開することができるが、チェックポイントの周期が短いほど、システムの処理性能は低下する。 【0009】 また、チェックポイントでの情報を不揮発性フリップフロップの不揮発性要素に書き込み中に停電等が発生した場合、不揮発性要素に正しい情報が保持されないおそれがある。これにより、停電が発生する前のチェックポイントでの状態を復元できない場合、その後の処理を正しく実施できない。この結果、システムの再起動が必要になり、リアルタイム性と耐障害性とが満たされなくなる。 【0010】 上記の課題に鑑み、本発明は、リアルタイム性と耐障害性の両方を満たす処理制御装置及びプロセッサを提供することを目的とする。 【課題を解決するための手段】 (【0011】以降は省略されています) この特許をJ-PlatPatで参照する