(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-02
(45)【発行日】2024-05-14
(54)【発明の名称】レジスタ制御装置
(51)【国際特許分類】
G06F 9/34 20180101AFI20240507BHJP
G06F 9/48 20060101ALI20240507BHJP
【FI】
G06F9/34 330
G06F9/48 100N
(21)【出願番号】P 2020181180
(22)【出願日】2020-10-29
【審査請求日】2023-07-04
(73)【特許権者】
【識別番号】591036457
【氏名又は名称】三菱電機エンジニアリング株式会社
(74)【代理人】
【識別番号】110003166
【氏名又は名称】弁理士法人山王内外特許事務所
(72)【発明者】
【氏名】野口 洋二
【審査官】三坂 敏夫
(56)【参考文献】
【文献】特開2019-74573(JP,A)
【文献】特開平1-125644(JP,A)
【文献】特開2016-42268(JP,A)
【文献】特開昭62-78665(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/30-9/355
G06F 9/48
(57)【特許請求の範囲】
【請求項1】
CPU外に設けられるレジスタ制御装置であって、
イベント情報を受けると、イベント情報とレジスタ情報と設定値情報とが対応付けられて記憶された記憶部を参照して、イベント情報が示すイベントに対応するレジスタ情報および設定値情報を取得する読み込み部と、
前記読み込み部により取得されたレジスタ情報が示すレジスタに対し、前記読み込み部により取得された設定値情報を書き込む書き込み部と、
を備えたレジスタ制御装置。
【請求項2】
前記記憶部には、さらに、複数のイベント情報およびそれぞれの処理順を定める連続実行情報がイベント情報に対応付けられて記憶され、
複数のイベントを指示するイベント情報を受けると、前記記憶部に記憶された連続実行情報を参照し、当該連続実行情報に定められた処理順で複数のイベント情報を前記読み込み部に送る連続実行部を備えた、
ことを特徴とする請求項1に記載のレジスタ制御装置。
【請求項3】
前記記憶部を備えた、
ことを特徴とする請求項1または請求項2に記載のレジスタ制御装置。
【請求項4】
前記記憶部は、さらに、イベント情報ごとに外部アドレス情報を予め記憶し、
イベント情報を受けると、前記記憶部を参照し、当該イベント情報に対応する外部アドレス情報を用いて、外部の記憶装置からレジスタ情報および設定値情報を取得するとともに、取得されたレジスタ情報と設定値情報とイベント情報とを対応付けて前記記憶部へ記憶させる取得部を備えた、
ことを特徴とする請求項1から請求項3のうちのいずれか1項に記載のレジスタ制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、レジスタへデータを書き込むレジスタ制御装置に関する。
【背景技術】
【0002】
CPU(Central Processing Unit)には、イベントが発生した際に、いわゆる「割り込み」処理を行うものがある。イベントには、一般的に、様々な種類のものが存在する。割り込み処理としては、イベントに応じた1又は複数のレジスタに対して設定値を書き込む処理がある。
ところで、特許文献1には、複数の画像処理手段と、複数の画像処理手段に対する複数回のレジスタ設定値を記憶する記憶手段とを有し、記憶手段には、CPUから事前に設定値を格納しておき、撮像手段または表示手段の少なくとも一方のブランキング期間に同期して記憶手段に記憶されている1回目のレジスタ設定値を、複数の画像処理手段へ設定し、複数の画像処理手段の完了タイミングに同期して、2回目のレジスタ設定値を前記複数の画像処理手段へ設定する画像処理装置が開示されている。
これにより、画像を取り込んでから次の画像を取り込むまでの間の処理について、CPUがレジスタに書き込み処理を行う回数が減るため、CPUの負荷は軽減される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
CPUが演算処理を実行している途中にイベントが発生した場合、CPUは演算処理を中断して、イベントに応じたレジスタに設定値を書き込む。したがって、従来の技術においては、複数の種類のイベントが発生する度に、CPUが実行している途中の演算処理が遅れる、といった課題があった。
特許文献1に記載の技術を複数の種類のイベントが発生する場合のCPUの処理に適用したとしても、単一のイベントにおいて複数回のレジスタ設定が必要な場合に、CPUによるレジスタ設定処理の回数を軽減できるに過ぎず、依然として、イベントが発生する度にレジスタに設定値を書き込む処理は必要であるため、前記課題を解決できない。
【0005】
本開示は、複数の種類のイベントが発生する場合でも、CPUが実行している途中の演算処理が遅れないようにする、レジスタ制御装置を提供することを目的とする
【課題を解決するための手段】
【0006】
CPU外に設けられるレジスタ制御装置であって、イベント情報を受けると、イベント情報とレジスタ情報と設定値情報とが対応付けられて記憶された記憶部を参照して、イベント情報が示すイベントに対応するレジスタ情報および設定値情報を取得する読み込み部と、レジスタ情報が示すレジスタに対し、設定値情報を書き込む書き込み部と、を備えたレジスタ制御装置。
【発明の効果】
【0007】
本開示によれば、前記のように構成したので、複数の種類のイベントが発生する場合、CPUが実行している途中の演算処理が遅れない、レジスタ制御装置を提供できる効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】本開示のレジスタ制御装置とCPUとROMとレジスタの接続状態を示す図である。
【
図2】実施の形態1および実施の形態2に係るレジスタ制御装置の構成を示すブロック図である。
【
図3】実施の形態1に係るレジスタ制御装置における記憶部の説明図である。
【
図4】実施の形態1に係るレジスタ制御装置におけるアドレス記憶部の説明図である。
【
図5】
図5aは、レジスタ制御装置における制御情報記憶部の説明図であり、
図5bは、制御情報記憶部に記憶されている情報の一例である。
【
図6】実施の形態1に係るレジスタ制御装置における要部の説明図である。
【
図7】実施の形態2に係るレジスタ制御装置における要部の説明図である。
【
図8】実施の形態3に係るレジスタ制御装置の構成を示すブロック図である。
【
図9】実施の形態3に係るレジスタ制御装置における要部の説明図である。
【発明を実施するための形態】
【0009】
実施の形態1.
実施の形態1に係るレジスタ制御装置について、
図1から
図6を用いて説明する。
図1は、レジスタ制御装置とCPUとROMとレジスタの接続状態を示す図である。
レジスタ制御装置1とレジスタ100とCPU1000とROM2000は、相互に接続され、データの伝送が可能である。
レジスタ制御装置1とレジスタ100とCPU1000とROM2000は、例えば、アドレスバスAでそれぞれが接続され、また、データバスBでそれぞれが接続されている。
レジスタ制御装置1は、CPU1000の外部に設けられている。
レジスタ制御装置1は、外部から、CPU1000を介さずに、イベントの発生を示すイベント情報が入力される。例えば、レジスタ制御装置1は、イベント情報を発生させる回路(当該回路は図示されていない)とレジスタ100との間に、相互にデータの伝送ができるように接続されている。または、例えば、レジスタ制御装置1の周辺において、イベント情報を発生させる回路からレジスタ制御装置1へ伝送されるよう構成を追加して設けるようにしてもよい。
レジスタ制御装置1は、入力されたイベント情報に基づいて、イベントに対応するレジスタ100に対し、設定値を書き込む制御を行う。
ROM2000は、本開示のレジスタ制御装置1から見た場合における、外部の記憶装置の一例である。
レジスタ100は、イベントが発生した場合に、レジスタ制御装置1により設定値が書き込まれる記憶回路である。このレジスタ100としては、例えば、CPU1000の周辺機能を制御するためのレジスタがある。周辺機能には、タイマ、SPI(Serial Peripheral Interface)通信、USART(Universal Synchronous Asynchronous Receiver Transmitter)、A/Dコンバータ、D/Aコンバータなどがある。
また、レジスタ100には、クロックソースの設定値が書き込まれるクロックソース設定レジスタ、クロック分周の設定値が書き込まれるクロック分周設定レジスタがある。
また、レジスタ100には、各種モジュールの動作および停止を示す設定値が書き込まれるモジュールごとのモジュール制御レジスタがある。
本開示のレジスタ制御装置1が制御対象とするレジスタ100は、イベントが発生した場合に設定値が書き込まれるレジスタであればよく、前記の例に限定されない。
【0010】
図2は、レジスタ制御装置の構成を示すブロック図である。
図3は、レジスタ制御装置における記憶部の説明図である。
図4は、レジスタ制御装置におけるアドレス記憶部の説明図である。
図5における
図5aは、レジスタ制御装置における制御情報記憶部の説明図である。
図5における
図5bは、制御情報記憶部に記憶されている情報の一例である。
図6は、実施の形態1に係るレジスタ制御装置における要部の説明図である。
レジスタ制御装置1は、
図2に示されるように、記憶部2と、読み込み部30と、書き込み部40と、を備える。
【0011】
記憶部2は、記憶部2を外部から見た場合、イベント情報とレジスタ情報と設定値情報とが対応付けられて記憶された記憶部である。
記憶部2の構成の具体例を示す。
記憶部2は、
図3に示されるように、アドレス記憶部10と制御情報記憶部20とを備える。
【0012】
アドレス記憶部10は、
図4に示されるように、イベント情報11とアドレス情報12とを対応付けて記憶している。
イベント情報11は、複数の種類のイベントをそれぞれ識別する情報である。
アドレス情報12は、制御情報記憶部20の記憶領域における位置を特定する情報である。
【0013】
制御情報記憶部20は、
図5に示されるように、レジスタ情報21と、書き込み制御情報22と、設定値情報23とを対応付けて記憶する。
制御情報記憶部20は、例えば制御情報専用のRAM(Random Access Memory)で構成される。
レジスタ情報21は、複数のレジスタ100(100-1、100-2、100-3、…、100-n(n=任意の整数))をそれぞれ識別する情報である。
レジスタ情報21は、例えば複数のレジスタにそれぞれ個別に付されたレジスタ番号である。
設定値情報23は、レジスタ100へ書き込む設定値を示す情報である。
設定値は、イベントに応じてイベントごとに異なる情報量の値である。
設定値情報23は、例えば、8bit単位のデータを32個(32byte)まで含めることができる構造になっている。
ただし、本開示のレジスタ制御装置における設定値情報23は、上記データ構造例に示す情報量に限定されない。従来のように、CPU1000がレジスタ100に対して設定値情報を書き込む場合、設定値情報は、命令セットアーキテクチャ(64bitまたは32bit)に規定されるビットサイズに制限されてしまう。一方、本開示のレジスタ制御装置における設定値情報23は、命令セットアーキテクチャ(64bitまたは32bit)に規定されるビットサイズに制限されず、任意の情報量に定めることができる。
書き込み制御情報22は、設定値情報23における所定情報量ごとの、レジスタへの書き込みの内容を示す情報である。
書き込み制御情報22は、例えば、設定値情報23が8bit単位のデータを32個含む場合、設定値情報23におけるデータ1からデータ32のそれぞれに対するレジスタ書き込み許可(または不許可)を示す32bitの情報である。
この書き込み制御情報22により、レジスタ制御装置1においては、設定値情報23に対して所定情報量ごとにレジスタ100へ書き込むか否かを設定できる。
従来のようにCPUがレジスタへ書き込む場合、例えば設定値情報が4byteであれば4byte分すべて書き込まれる。これに対し、レジスタ制御装置1は、例えば1byteといった単位情報量ごとに設定値情報を書き込み制御できるので、CPUがレジスタへ書き込む場合に比べて消費電力が少なくなる。
【0014】
読み込み部30は、イベント情報を受けると、記憶部2を参照して、イベント情報が示すイベントに対応するレジスタ情報、書き込み制御情報、および、設定値情報を取得する。
読み込み部30の構成の具体例を示す。
読み込み部30は、
図6に示されるように、アドレス読み込み部31と、制御情報読み込み部33と、を備える。
アドレス読み込み部31は、イベント情報を受けると、アドレス記憶部10を参照し、イベント情報が示すイベントに対応するアドレス情報を読み込む。
制御情報読み込み部33は、アドレス読み込み部31が読み込んだアドレス情報を受け、制御情報記憶部20を参照し、レジスタ情報と書き込み制御情報と設定値情報とを読み込む。
【0015】
書き込み部40は、レジスタ情報が示すレジスタに対し、設定値情報を書き込む。
書き込み部40の構成の具体例を示す。
書き込み部40は、
図6に示されるように、格納部41と、信号生成部42と、を備える。
格納部41は、制御情報読み込み部33から、レジスタ情報と書き込み制御情報と設定値情報とを受けて格納し、レジスタ情報、書き込み制御情報、および、設定値情報をそれぞれ信号生成部42へ送る。
【0016】
信号生成部42は、格納部41から受けたレジスタ情報、書き込み制御情報、および、設定値情報に基づいて、レジスタ100に設定値を書き込むための信号を生成する。
具体的には、信号生成部42は、レジスタ情報を用いて、チップセレクト信号(以下、CS信号、と省略して記載される。)を生成する。
また、信号生成部42は、書き込み制御情報を用いて、書き込み許可信号といった書き込み制御信号を生成する。
また、信号生成部42は、設定値情報を用いて、設定値信号を生成する。
また、信号生成部42は、CS信号、書き込み制御信号、および、設定値信号を生成すると、ライト信号を生成する。
【0017】
次に、レジスタ制御装置1の動作の一例を説明する。
レジスタ制御装置1は、レジスタ制御装置1の外部から、CPU1000を介さずに、イベントの発生を示すイベント情報が入力される。
【0018】
読み込み部30は、イベント情報を受けると、記憶部に対するリード制御を開始する。
読み込み部30におけるリード制御の具体例を説明する。
読み込み部30におけるアドレス読み込み部31は、イベント情報を受けると、アドレス記憶部10を参照し、イベント情報が示すイベントに対応するアドレス情報を読み込む。
アドレス読み込み部31は、読み込んだアドレス情報を制御情報読み込み部33へ送る。
【0019】
制御情報読み込み部33は、アドレス読み込み部31から、アドレス情報を受けると、受けた回数をカウントし、アドレスインクリメント回数を算出する。
【0020】
制御情報読み込み部33は、制御情報記憶部20を参照し、アドレス情報が示す制御情報記憶部20の記憶領域から、レジスタ情報と書き込み制御情報と設定値情報とを読み込む。
具体的には、制御情報読み込み部33は、アドレス情報とリード信号とを制御情報記憶部20に送り、アドレス情報が示す、制御情報記憶部20における記憶領域から、レジスタ情報と書き込み制御情報と設定値情報とを受ける。
制御情報読み込み部33は、レジスタ情報と書き込み制御情報と設定値情報とを書き込み部40へ送る。
【0021】
制御情報読み込み部33は、アドレスインクリメント回数分、アドレスをインクリメントし、その度に、制御情報記憶部20を参照し、アドレス情報が示す制御情報記憶部20の記憶領域から、レジスタ情報と書き込み制御情報と設定値情報とを読み込む処理を繰り返す。
これに伴い、制御情報読み込み部33は、レジスタ情報と書き込み制御情報と設定値情報とを書き込み部40へ送る処理を、アドレスインクリメント回数分繰り返す。
なお、制御情報読み込み部33により算出されたアドレスインクリメント回数が1回の場合は、当該繰り返し処理は、行われない。
【0022】
書き込み部40は、制御情報読み込み部33から、レジスタ情報と書き込み制御情報と設定値情報とを受けると、レジスタ100に対するライト制御を開始する。
書き込み部40におけるライト制御の動作の具体例を説明する。
書き込み部40における格納部41は、レジスタ情報と書き込み制御情報と設定値情報とを格納し、レジスタ情報、書き込み制御情報、および、設定値情報をそれぞれ信号生成部42へ出力する。
【0023】
信号生成部42は、格納部41から、レジスタ情報、書き込み制御情報、および、設定値情報を受け、レジスタ情報、書き込み制御情報、および、設定値情報に基づいて、レジスタ100に設定値を書き込むための信号を生成する。
具体的には、信号生成部42は、レジスタ情報を用いて、CS信号を生成する。
また、信号生成部42は、書き込み制御情報を用いて、書き込み許可信号といった書き込み制御信号を生成する。
また、信号生成部42は、設定値情報を用いて設定値信号を生成する。
また、信号生成部42は、CS信号、書き込み制御信号、および、設定値信号を生成すると、ライト信号を生成する。
信号生成部42は、CS信号、書き込み制御信号、設定値信号、および、ライト信号を、レジスタ100の回路へ送る。
【0024】
レジスタ100の回路では、CS信号により複数のレジスタ100のうちの一つのレジスタが選択され、書き込み制御信号により設定値が選択され、選択されたレジスタがライト信号を受けてレジスタに設定値が書き込まれる。
【0025】
なお、実施の形態1においては、レジスタ制御装置1が記憶部2を備える構成を説明したが記憶部2は、レジスタ制御装置1の外部に配置されるものでもよい。
【0026】
以上のように、実施の形態1に係るレジスタ制御装置は、CPU外に設けられるレジスタ制御装置であって、イベント情報を受けると、イベント情報とレジスタ情報と設定値情報とが対応付けられて記憶された記憶部を参照して、イベント情報が示すイベントに対応するレジスタ情報および設定値情報を取得する読み込み部と、読み込み部により取得されたレジスタ情報が示すレジスタに対し、読み込み部により取得された設定値情報を書き込む書き込み部と、を備えた。
これにより、イベントが発生すると、CPUを介さずに、レジスタ制御装置がレジスタに設定値情報を書き込むので、CPUに割り込みが発生することが少なくなる。その結果、複数の種類のイベントが発生する場合でも、CPUが実行してる途中の演算処理が遅れない、という効果を奏する。
【0027】
実施の形態2
実施の形態2のレジスタ制御装置は、イベントが発生すると、予め記憶したプログラム等を実行することで、プログラムに規定されたイベントの内容に対応する設定値をイベントごとのレジスタに書き込むものである。
【0028】
図7は、レジスタ制御装置における要部の説明図である。
実施の形態2に係るレジスタ制御装置1´は、
図6に示される実施の形態1に係るレジスタ制御装置の要部に対し、プログラム記憶部25と連続実行部5とが追加された点が異なる。
そこで、以下では、実施の形態1に係るレジスタ制御装置1と異なる点についての説明がされ、それ以外の詳細な説明が省略される。
【0029】
実施の形態2に係るレジスタ制御装置1´は、
図7に示されるように、記憶部2´と、連続実行部5と、読み込み部30と、書き込み部40と、を備えている。
記憶部2´は、アドレス記憶部10と制御情報記憶部20に加え、プログラム記憶部25を備えている。
プログラム記憶部25には、イベント情報をレジスタ100へ書き込むための連続実行情報がイベントごとに対応付けられて予め記憶されている。
連続実行情報は、例えば、複数のイベント情報およびそれぞれに対応してレジスタに設定値を書き込む順番を定めるプログラムである。
なお、連続実行情報においては、1つのイベント情報の書き込み制御処理を定めるものであってもよい。
また、連続実行情報としてのプログラムは、イベントごとに対応したレジスタ情報、書き込み制御情報および設定値情報が記載されたものであってもよい。この場合、読み込み部30は、当該プログラムを読み込んで、読み込んだプログラムに規定される順番で、レジスタ情報、書き込み制御情報および設定値情報を書き込み部40へ出力する。書き込み部40は、読み込み部30から受けたレジスタ情報21、書き込み制御情報22および設定値情報23に基づいてレジスタへ設定値情報23を書き込む処理を行う。
【0030】
連続実行部5は、イベント情報を受けると、複数のイベント情報を連続して出力する構成部である。
具体的には、連続実行部5は、イベント情報を受けると、プログラム記憶部25を参照し、イベント情報に対応する連続実行情報に定められた処理順で複数のイベント情報を読み込み部30に送る。
【0031】
実施の形態2に係るレジスタ制御装置1´における連続実行部5の動作の一例を説明する。
レジスタ制御装置1´は、レジスタ制御装置1´の外部から、CPU1000を介さずに、複数のイベントの実行を指示するイベント情報が入力される。
連続実行部5は、イベント情報を受けると、プログラム記憶部25を参照し、イベント情報に対応する連続実行情報を読み込む。
連続実行部5は、連続実行情報に定められたイベント情報ごとの処理順に基づき生成し、生成したイベント情報を読み込み部30に送る。
読み込み部30以降の動作は、実施の形態1と同様である。
【0032】
ここで、実施の形態2に係るレジスタ制御装置1´において、連続実行情報を用いて複数のレジスタに書き込まれる設定値の具体例を説明する。
イベントがタイマの動作モードを切り替える設定を行うことである場合、レジスタ制御装置1´は、例えば、タイマの動作モードを設定することが示されたイベント情報が入力されると、処理を開始する。レジスタ制御装置1´における連続実行部5は、イベント情報に対応する連続実行情報を読み込み、連続実行情報に定められた複数のイベント情報を処理順に基づき生成し、生成したイベント情報を読み込み部30に送る。読み込み部30は、連続実行部5から順にイベント情報を受け取り、イベント情報ごとに対応したレジスタ情報、書き込み制御情報および設定値情報を順に、書き込み部40へ送る。書き込み部40は、読み込み部30から受けたレジスタ情報、書き込み制御情報および設定値情報に基づいて、まず、PWM(Pulse Width Modulation)モードレジスタに対し設定値を書き込み、次に、周期レジスタに対し設定値を書き込み、次に、Dutyレジスタに対し設定値を書き込み、次に、PWMモード開始レジスタに対し設定値を書き込む。このように連続して、異なる複数のレジスタに設定値を書き込める連続実行情報がプログラム記憶部25に記憶されていればよい。これにより、レジスタ制御装置1´は、1回のイベント発生に応じて、イベント発生に関連した複数のイベントに対応するレジスタへ設定値情報を書き込むことができる。
【0033】
イベントが送受信モジュールのモードを切り替える設定を行うことである場合、レジスタ制御装置1´は、例えば、送信モードの設定内容を示すイベント情報が入力されると、処理を開始する。レジスタ制御装置1´における連続実行部5は、イベント情報に対応する連続実行情報を読み込み、連続実行情報に定められた複数のイベント情報を処理順に基づき生成し、生成したイベント情報を読み込み部30に送る。読み込み部30は、連続実行部5から順にイベント情報を受け取り、イベント情報ごとに対応したレジスタ情報、書き込み制御情報および設定値情報を順に、書き込み部40へ送る。書き込み部40は、読み込み部30から受けたレジスタ情報、書き込み制御情報および設定値情報に基づいて、まず、シリアル送信モードレジスタに対し設定値を書き込み、次に、シリアル送信ビットレートレジスタに対し設定値を書き込み、次に、送信データレジスタに対し設定値を書き込む。このように連続して、異なる複数のレジスタに設定値を書き込める連続実行情報がプログラム記憶部25に記憶されていればよい。これにより、レジスタ制御装置1´は、1回のイベント発生に応じて、イベント発生に関連した複数のイベントに対応するレジスタへ設定値情報を書き込むことができる。
【0034】
イベントがコンピュータ内におけるクロックの設定または設定の変更を行うことである場合、レジスタ制御装置1´は、例えば、クロックの設定内容を示すイベント情報が入力されると、処理を開始する。レジスタ制御装置1´における連続実行部5は、
イベント情報に対応する連続実行情報を読み込み、連続実行情報に定められた複数のイベント情報を処理順に基づき生成し、生成したイベント情報を読み込み部30に送る。読み込み部30は、連続実行部5から順にイベント情報を受け取り、イベント情報ごとに対応したレジスタ情報、書き込み制御情報および設定値情報を書き込み部40へ送る。書き込み部40は、読み込み部30から受けたレジスタ情報、書き込み制御情報および設定値情報に基づいて、まず、クロックソース設定レジスタに対し設定値を書き込み、次に、クロック分周設定レジスタに対し設定値を書き込む。これにより、レジスタ制御装置1´は、1回のイベント発生に応じて、イベント発生に関連した複数のイベントに対応するレジスタへ設定値情報を書き込むことができ、例えば、水晶発振器10MHzの設定から水晶発振器32kHzの設定に変更することができる。
【0035】
イベントが各種モジュールに対する動作および停止の設定を行うことである場合、レジスタ制御装置1´は、例えば、各種モジュールに対する動作および停止を示すイベント情報が入力されると、処理を開始する。レジスタ制御装置1´における連続実行部5は、イベント情報に対応する連続実行情報を読み込み、連続実行情報に定められた複数のイベント情報を処理順に基づき生成し、生成したイベント情報を読み込み部30に送る。読み込み部30は、連続実行部5から順にイベント情報を受け取り、イベント情報ごとに対応したレジスタ情報、書き込み制御情報および設定値情報を書き込み部40へ送る。書き込み部40は、読み込み部30から受けたレジスタ情報、書き込み制御情報および設定値情報に基づいて、まず、モジュールAのモジュール制御レジスタに対し停止を示す設定値を書き込み、次に、モジュールBのモジュール制御レジスタに対し動作を示す設定値を書き込む。これにより、レジスタ制御装置1´は、1回のイベント発生に応じて、イベント発生に関連した複数のイベントに対応するレジスタへ設定値情報を書き込むことができ、例えば、モジュールAが停止され、モジュールBが動作するように変更することができる。
【0036】
以上のように、実施の形態2に係るレジスタ制御装置は、レジスタ制御装置において、記憶部には、さらに、複数のイベント情報およびそれぞれの処理順を定める連続実行情報がイベント情報に対応付けられて記憶されている。また、レジスタ制御装置において、複数のイベントを指示するイベント情報を受けると、記憶部に記憶された連続実行情報を参照し、連続実行情報に定められた処理順で複数のイベント情報を読み込み部に送る連続実行部を備えた。
これにより、レジスタ制御装置は、イベント情報を1回受けると、複数のイベントに対応する処理を実行できる。その結果、1回目のイベントの処理において、異なる複数のレジスタに対し、設定値を書き込むことができ、イベントの発生回数を少なくできる、という効果を奏する。
【0037】
ここで、従来のようにCPUがレジスタに対し設定値を書き込む場合は、通常、命令セットアーキテクチャ(64bitまたは32bit)に規定されるビットサイズでn個のレジスタに対しnクロックを要して書き込まれる。これに対し、実施の形態2に係るレジスタ制御装置は、命令セットアーキテクチャの規定に制限されない。また、実施の形態2に係るレジスタ制御装置は、イベント情報が入力されてから複数のレジスタに対する書き込みが完了するまでを1クロックに同期させるようにすることができ、これにより、レジスタに対する書き込み処理の時間を短縮させることができる、という効果を奏する。
【0038】
実施の形態3
実施の形態3に係るレジスタ制御装置について、
図8および
図9を用いて説明する。
図8は、レジスタ制御装置の構成を示すブロック図である。
図9は、レジスタ制御装置における要部の説明図である。
実施の形態3に係るレジスタ制御装置1aは、実施の形態1に係るレジスタ制御装置1に対し、外部アドレス記憶部27およびデータ取得部50を追加した点で異なる。
そこで、以下では、実施の形態1に係るレジスタ制御装置1と異なる点についての説明がされ、それ以外の詳細な説明が省略される。
【0039】
図8に示されるように、実施の形態3に係るレジスタ制御装置1aは、記憶部2aと、データ取得部50と、読み込み部30と、書き込み部40とを備えている。
記憶部2aは、
図9に示されるように、アドレス記憶部10および制御情報記憶部20に加え、外部アドレス記憶部27を備えている。
外部アドレス記憶部27は、イベント情報27aごとに外部アドレス情報27bを記憶している。
イベント情報27aは、実施の形態1で説明されたイベント情報11と同様である。
外部アドレス情報27bは、ROMといった外部の記憶装置の記憶領域における位置を特定する情報である。
【0040】
データ取得部50は、イベント情報に対応するレジスタ情報、書き込み制御情報、および、設定値情報を、外部の記憶装置(例えば、ROM2000)から取得する。
具体的には、データ取得部50は、イベント情報を受けると、外部アドレス記憶部27を参照し、イベント情報27aに対応する外部アドレス情報27bを用いて、外部の記憶装置からレジスタ情報、書き込み制御情報、および、設定値情報を取得するとともに、レジスタ情報、書き込み制御情報、および、設定値情報とイベント情報とを対応付けて制御情報記憶部へ記憶させる。
【0041】
データ取得部50の構成の具体例を示す。
図9に示されるように、データ取得部50は、アドレス取得部52と、制御情報取得部53と、記憶司令部54とを備える。
アドレス取得部52は、イベント情報を受けると、外部アドレス記憶部を参照し、イベント情報27aに対応する外部アドレス情報27bを読み込んで取得する。
制御情報取得部53は、アドレス取得部52により取得された外部アドレス情報を用いて、外部の記憶装置を参照し、レジスタ情報、書き込み制御情報、および、設定値情報を読み込んで取得する。
記憶司令部54は、制御情報取得部53が取得したレジスタ情報、書き込み制御情報、および、設定値情報と、アドレス取得部52が用いたイベント情報とを対応付けて制御情報記憶部20へ記憶させるとともに、記憶させた記憶領域の位置を示すアドレス情報を取得する。
記憶司令部54は、アドレス情報と、イベント情報とを対応付けてアドレス記憶部に記憶させる。
【0042】
レジスタ制御装置1aにおけるデータ取得部50の動作の一例を説明する。
レジスタ制御装置1aは、レジスタ制御装置1aの外部からイベント情報を受ける。
イベント情報を受けると、データ取得部50におけるアドレス取得部52は、外部アドレス記憶部27を参照し、イベント情報27aに対応する外部アドレス情報27bを読み込んで取得する。
アドレス取得部52は、取得した外部アドレス情報をイベント情報とともに制御情報取得部53へ送る。
【0043】
制御情報取得部53は、イベント情報および外部アドレス情報を受けると、外部アドレス情報を用いて、外部の記憶装置であるROM2000を参照し、レジスタ情報、書き込み制御情報、および、設定値情報を読み込んで取得する。
制御情報取得部53は、イベント情報、レジスタ情報、書き込み制御情報、および、設定値情報を、記憶司令部54へ送る。
【0044】
記憶司令部54は、イベント情報、レジスタ情報、書き込み制御情報、および、設定値情報を受けると、イベント情報と、レジスタ情報、書き込み制御情報、および、設定値情報とを対応付けて制御情報記憶部20へ記憶させるとともに、記憶させた記憶領域の位置を示すアドレス情報を取得する。
記憶司令部54は、取得したアドレス情報と、イベント情報とを対応付けてアドレス記憶部10に記憶させる。
記憶司令部54は、イベント情報を読み込み部30へ送る。
読み込み部30以降の動作は、実施の形態1と同様である。
【0045】
以上のように、実施の形態3に係るレジスタ制御装置は、レジスタ制御装置において、記憶部は、さらに、イベント情報ごとに外部アドレス情報を予め記憶し、イベント情報を受けると、記憶部を参照し、イベント情報に対応する外部アドレス情報を用いて、外部の記憶装置からレジスタ情報および設定値情報を取得するとともに、取得されたレジスタ情報と設定値情報とイベント情報とを対応付けて記憶部へ記憶させる取得部を備えた。
これにより、レジスタ制御装置における制御情報記憶部は、イベントに対応するすべての設定値情報を保持しなくてもよいので、記憶部の規模を小さくできる、効果を奏する。
【0046】
なお、本開示では、各実施の形態において、アドレス記憶部とレジスタ制御情報記憶部とを備えた記憶部が説明されているが、アドレス記憶部とレジスタ制御情報記憶部は、一体でもよい。
例えば、記憶部は、イベント情報とレジスタ情報と設定値情報とが対応付けられて記憶するものでもよい。この場合、イベント情報を受けると、読み込み部は、当該記憶部を参照して、イベント情報が示すイベントに対応するレジスタ情報および設定値情報を取得する。
【0047】
本開示は、その開示の範囲内において、各実施の形態の自由な組み合わせ、或いは、各実施の形態における任意の構成要素の変形、若しくは、各実施の形態における任意の構成要素の省略が可能である。
仮に、実施の形態2と実施の形態3とを組み合わせる場合、例えば、実施の形態2における連続実行部5と読み込み部30との間に、実施の形態3のデータ取得部50を設けるようにしてもよい。
【符号の説明】
【0048】
1,1´,1a レジスタ制御装置、2,2´,2a 記憶部、5 連続実行部、10 アドレス記憶部、11 イベント情報、12 アドレス情報、20 制御情報記憶部、21 レジスタ情報、22 書き込み制御情報、23 設定値情報、25 プログラム記憶部、27 外部アドレス記憶部、27a イベント情報、27b 外部アドレス情報、30 読み込み部、31 アドレス読み込み部、32 制御情報読み込み部、40 書き込み部、41 格納部、42 信号生成部、50 データ取得部、52 アドレス取得部、53 制御情報取得部、54 記憶指令部、100(100-1,100-2,100-3,・・・,100-n) レジスタ、1000 CPU、2000 ROM。