(57)【特許請求の範囲】
【請求項１】
複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御装置において、
上記複数のプロセッサからの上記共有メモリに対するアクセスを調停する調停手段と、
上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、
上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のアドレスに対するアクセスである場合は、上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段と、
を具備し、
上記調停手段は、上記複数のプロセッサから調停選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記複数のプロセッサから出力されるそれぞれの共有メモリのアクセスアドレスの中から上記調停手段により調停選択されたプロセッサからのアクセスアドレスを選択する選択手段と、上記共有メモリの特定のブレークポイントアドレスを格納するレジスタと、上記選択手段により選択されたアドレスと上記レジスタに格納されたアドレスとを比較し、一致すると、調停されたプロセッサのアクセスが上記共有メモリのブレークポイントアドレスに対するアクセスであると判定して、上記記憶手段に対して読み込み制御信号を出力する比較手段と、を具備し、
上記記憶手段は、上記メモリ制御手段の比較手段から上記読み込み制御信号に応答して、そのタイミングで上記調停手段から出力されたプロセッサ識別情報を格納する
ことを特徴とするメモリ制御装置。
【請求項２】
複数のプロセッサからの共有メモリに対するアクセスを調停する調停手段と、上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のアドレスに対するアクセスである場合は上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段とを具備するメモリ制御装置に用いられるメモリ制御方法であって、
このメモリ制御方法は、複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御方法であり、
上記メモリ制御手段は、上記共有メモリの特定のブレークポイントアドレスを予め記憶し、
上記調停手段は、上記複数のプロセッサからの上記共有メモリに対するアクセス要求が競合した場合に上記複数のプロセッサから１つのプロセッサを選択し、その選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記選択したプロセッサがアクセスする上記共有メモリのアドレスを、上記予め記憶した共有メモリの特定のブレークポイントアドレスと比較し、
選択したプロセッサのアクセスのアドレスが特定されているブレークポイントアドレスと一致した場合に、上記メモリ制御手段は上記記憶手段に対して読み込み制御信号を出力し、
上記記憶手段は、上記メモリ制御手段が出力した読み込み制御信号に応答して、そのタイミングで上記調停手段が出力している選択したプロセッサを識別する識別情報を記憶保持する
ことを特徴とするメモリ制御方法。
【請求項３】
複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御装置を備えたプログラマブルコントローラにおいて、
上記複数のプロセッサからの上記共有メモリに対するアクセスを調停する調停手段と、
上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、
上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のブレイクポイントを示すブレイクポイントアドレスに対するアクセスである場合は、上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段と、
を具備し、
上記調停手段は、上記複数のプロセッサから調停選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記複数のプロセッサから出力されるそれぞれの共有メモリのアクセスアドレスの中から上記調停手段により調停選択されたプロセッサからのアクセスアドレスを選択する選択手段と、上記共有メモリの特定のブレークポイントアドレスを格納するレジスタと、上記選択手段により選択されたアドレスと上記レジスタに格納されたアドレスとを比較し、一致すると、調停されたプロセッサのアクセスが上記共有メモリのブレークポイントアドレスに対するアクセスであると判定して、上記記憶手段に対して読み込み制御信号を出力する比較手段と、を具備し、
上記記憶手段は、上記メモリ制御手段の比較手段から上記読み込み制御信号に応答して、そのタイミングで上記調停手段から出力されたプロセッサ識別情報を格納する
ことを特徴とするプログラマブルコントローラ。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御装置、その制御方法およびプログラマブルコントローラに関し、特に、上記共有メモリの特定のブレイクポイントを示すブレイクポイントアドレスに対してアクセスが発生した場合はアクセス権を獲得したプロセッサを識別する情報を記憶保持し、ブレイクポイントアドレスに対してアクセスしたプロセッサを特定できるようにしたメモリ制御装置、その制御方法およびプログラマブルコントローラに関する。
【０００２】
【従来の技術】
一般に、プログラマブルコントローラ等においては、複数のプロセッサから１つの共有メモリに対してアクセスできるように構成されているが、このような構成において、この共有メモリの特定の番地でブレイクをかけることができるようにすることがシステム構成の上で有効である。
【０００３】
そこで、従来は、この共有メモリの特定の番地をブレイクポイントアドレスとしてレジスタ等に格納しておき、プロセッサからのアクセス時には、プロセッサからのアクセス要求があるアドレスとこのブレイクポイントアドレスとを比較して一致した場合は共有メモリのブレイクポイントとして認識するいわゆるブレイクポイント機能を有するプログラマブルコントローラが知られている。
【０００４】
【発明が解決しようとする課題】
しかし、上述したようなブレイクポイント機能を有するプログラマブルコントローラにおいては、共有メモリのブレイクポイントにアクセスがあってもどのプロセッサがこのブレイクポイントにアクセスしたのかを特定できず、特に、共有メモリに記憶されたデータのデバッグ時においてはこれが障害になっていた。
【０００５】
そこで、この発明は、複数のプロセッサのいずれかから共有メモリにアクセスがあった場合は、どのプロセッサからアクセスがあったかを容易に特定できるメモリ制御装置およびその制御方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、この発明は、
複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御装置において、
上記複数のプロセッサからの上記共有メモリに対するアクセスを調停する調停手段と、
上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、
上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のアドレスに対するアクセスである場合は、上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段と、
を具備し、
上記調停手段は、上記複数のプロセッサから調停選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記複数のプロセッサから出力されるそれぞれの共有メモリのアクセスアドレスの中から上記調停手段により調停選択されたプロセッサからのアクセスアドレスを選択する選択手段と、上記共有メモリの特定のブレークポイントアドレスを格納するレジスタと、上記選択手段により選択されたアドレスと上記レジスタに格納されたアドレスとを比較し、一致すると、調停されたプロセッサのアクセスが上記共有メモリのブレークポイントアドレスに対するアクセスであると判定して、上記記憶手段に対して読み込み制御信号を出力する比較手段と、を具備し、
上記記憶手段は、上記メモリ制御手段の比較手段から上記読み込み制御信号に応答して、そのタイミングで上記調停手段から出力されたプロセッサ識別情報を格納する
ことを特徴とする。
【０００７】
また、この発明は、複数のプロセッサからの共有メモリに対するアクセスを調停する調停手段と、上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のアドレスに対するアクセスである場合は上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段とを具備するメモリ制御装置に用いられるメモリ制御方法であって、
このメモリ制御方法は、複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御方法であり、
上記メモリ制御手段は、上記共有メモリの特定のブレークポイントアドレスを予め記憶し、
上記調停手段は、上記複数のプロセッサからの上記共有メモリに対するアクセス要求が競合した場合に上記複数のプロセッサから１つのプロセッサを選択し、その選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記選択したプロセッサがアクセスする上記共有メモリのアドレスを、上記予め記憶した共有メモリの特定のブレークポイントアドレスと比較し、
選択したプロセッサのアクセスのアドレスが特定されているブレークポイントアドレスと一致した場合に、上記メモリ制御手段は上記記憶手段に対して読み込み制御信号を出力し、
上記記憶手段は、上記メモリ制御手段が出力した読み込み制御信号に応答して、そのタイミングで上記調停手段が出力している選択したプロセッサを識別する識別情報を記憶保持する
ことを特徴とする。
また、この発明は、複数のプロセッサからの共有メモリに対するアクセスを制御するメモリ制御装置を備えたプログラマブルコントローラにおいて、
上記複数のプロセッサからの上記共有メモリに対するアクセスを調停する調停手段と、
上記複数のプロセッサのそれぞれを識別する情報を記憶する記憶手段と、
上記調停手段により調停されたプロセッサの共有メモリへのアクセスが上記共有メモリの特定のブレイクポイントを示すブレイクポイントアドレスに対するアクセスである場合は、上記調停手段により調停選択されたプロセッサを識別する情報を上記記憶手段に書き込むメモリ制御手段と、
を具備し、
上記調停手段は、上記複数のプロセッサから調停選択したプロセッサを識別する識別情報を出力し、
上記メモリ制御手段は、上記複数のプロセッサから出力されるそれぞれの共有メモリのアクセスアドレスの中から上記調停手段により調停選択されたプロセッサからのアクセスアドレスを選択する選択手段と、上記共有メモリの特定のブレークポイントアドレスを格納するレジスタと、上記選択手段により選択されたアドレスと上記レジスタに格納されたアドレスとを比較し、一致すると、調停されたプロセッサのアクセスが上記共有メモリのブレークポイントアドレスに対するアクセスであると判定して、上記記憶手段に対して読み込み制御信号を出力する比較手段と、を具備し、
上記記憶手段は、上記メモリ制御手段の比較手段から上記読み込み制御信号に応答して、そのタイミングで上記調停手段から出力されたプロセッサ識別情報を格納する
ことを特徴とする。
【０００８】
【作用】
この発明のメモリ制御装置では、複数のプロセッサからの共有メモリに対するアクセスを調停手段で調停し、この調停されたプロセッサのアクセスが共有メモリの特定のアドレスに対するアクセスである場合は、調停手段で調停選択されたプロセッサを識別する情報をメモリ制御手段により記憶手段に書込保持する。
【００１０】
また、上記特定のアドレスは、
上記共有メモリの特定のブレイクポイントを示すブレイクポイントアドレスに設定することができる。
【００１１】
また、この発明のメモリ制御方法では、複数のプロセッサから共有メモリに対するアクセスが競合した場合は、上記の複数のプロセッサから１つのプロセッサを選択し、この選択したプロセッサのアクセスが共有メモリの特定のアドレスに対するアクセスである場合は、この選択したプロセッサを識別する情報を記憶保持する。
【００１２】
ここで、上記特定のアドレスは上記共有メモリの特定のブレイクポイントを示すブレイクポイントアドレスに設定することができる。
【００１３】
また、上記メモリ制御装置またはその制御方法をプログラマブルコントローラに適用することができる。
【００１４】
【実施例】
以下、この発明に係わるメモリ制御装置およびその制御方法の実施例を図面に基づいて詳細に説明する。
【００１５】
図１は、この発明に係わるメモリ制御装置およびその制御方法を適用して構成したメモリ制御装置の一実施例の概略構成を示すブロック図である。この図１に示すメモリ制御装置１０は、２つのプロセッサＭＰＵ１およびＭＰＵ２から共有メモリ２０をアクセスすることを可能にするもので、このメモリ制御装置１０は、調停部１１、ステータスレジスタ１２、メモリ制御部１３を具備して構成される。
【００１６】
ここで、調停部１１は、共有メモリ２０に対する２つのプロセッサＭＰＵ１およびＭＰＵ２からのアクセスを調停するもので、このプロセッサＭＰＵ１およびＭＰＵ２からのアクセス要求を受付け、この２つのプロセッサＭＰＵ１およびＭＰＵ２からのアクセス要求が競合した場合は、この２つのプロセッサＭＰＵ１およびＭＰＵ２の内の一方に共有メモリ２０に対するアクセス権を与える処理を行う。
【００１７】
ステータスレジスタ１２は、調停部１１でアクセス権の与えられたプロセッサによりアクセスされた共有メモリ２０のアドレスが予め設定された特定のブレイクポイントを示すブレイクポイントアドレスである場合は、調停部１１でアクセス権の与えられたプロセッサを識別するステータス情報を記憶保持するものである。このステータスレジスタ１２は、調停部１１からアクセス権の与えられたプロセッサを識別するステータス情報を入力し、これをメモリ制御部１３からの読み込み制御信号により読み込み保持する。
【００１８】
メモリ制御部１３は、調停部１１によりアクセス権の与えられたプロセッサによる共有メモリ２０のアクセスを制御するとともに、調停部１１によりアクセス権の与えられたプロセッサによる共有メモリ２０のアクセスアドレスが、予め設定された特定のブレイクポイントを示すブレイクポイントアドレスである場合は、これを判別し、ステータスレジスタ１２に対して調停部１１からのアクセス権の与えられたプロセッサを識別するステータス情報を読み込む読み込み制御信号を出力する。
【００１９】
図２は、図１に示したメモリ制御部１３の要部の構成をブロック図で示したものである。このメモリ制御部１３は、２つのプロセッサＭＰＵ１およびＭＰＵ２から出力されるアドレスおよび調停部１１から出力される２つのプロセッサＭＰＵ１およびＭＰＵ２のいづれに対してアクセス権を与えたかを示す信号を入力し、調停部１１によりアクセス権の与えられたプロセッサによる共有メモリ２０のアクセスアドレスが、予め設定された特定のブレイクポイントを示すブレイクポイントアドレスである場合は、ステータスレジスタ１２に対して調停部１１からのアクセス権の与えられたプロセッサを識別するステータス情報を読み込む読み込み制御信号を出力する。
【００２０】
図２において、このメモリ制御部１３は、マルチプレクサ１３１、レジスタ１３２、比較部１３３を具備して構成される。
【００２１】
ここで、マルチプレクサ１３１は、２つのプロセッサＭＰＵ１およびＭＰＵ２からそれぞれ出力されるアドレスを入力するとともに、調停部１１からいづれのプロセッサに対してアクセス権を与えたかを示す信号を制御信号として入力し、２つのプロセッサＭＰＵ１およびＭＰＵ２からそれぞれ出力されるアドレスのうちで調停部１１でアクセス権を与えたプロセッサに対応するアドレスを選択して比較部１３３の一方の入力に加える。
【００２２】
また、レジスタ１３２は、共有メモリ２０の特定のブレイクポイントを示すブレイクポイントアドレスが予め格納されるもので、このレジスタ１３２に格納された共有メモリ２０の特定のブレイクポイントを示すブレイクポイントアドレスは、比較部１３３の他方の入力に加えられる。
【００２３】
比較部１３３は、マルチプレクサ１３１から出力されたアクセス権を与えられたプロセッサからのアドレスとレジスタ１３２に格納された共有メモリ２０の特定のブレイクポイントを示すブレイクポイントアドレスとを比較する。そして、この比較において両者が一致すると、共有メモリ２０のブレイクポイントに対するアクセスであると判定して、ステータスレジスタ１２に対して読み込み制御信号を出力する。
【００２４】
ステータスレジスタ１２は、このメモリ制御部１３からの読み込み制御信号に応答して、調停部１１からのアクセス権の与えられたプロセッサを識別するステータス情報を読み込み、これを記憶保持する。
【００２５】
このような構成によると、このステータスレジスタ１２の記憶内容を調べれば、どのプロセッサから共有メモリ２０に対してアクセスがあったかを容易に特定することができる。
【００２６】
なお、上記実施例においては、２つのプロセッサＭＰＵ１およびＭＰＵ２が共有メモリ２０に対してアクセス可能なように構成したが、この共有メモリ２０に対してアクセス可能なプロセッサが３つ以上の場合も同様に構成できるのは勿論である。
【００２７】
【発明の効果】
以上説明したようにこの発明によれば、複数のプロセッサからの共有メモリに対するアクセスを調停手段で調停し、この調停されたプロセッサのアクセスが共有メモリの特定のアドレスに対するアクセスである場合は、調停手段で調停選択されたプロセッサを識別する情報をメモリ制御手段により記憶手段に書込保持するように構成したので、ブレクポイント等に対してアクセスしたプロセッサを特定することができるとともに、プロセッサの処理の低減を図ることができ、例えば、デバッグ等に際してはどのプロセッサがこの共有メモリのデータの変更、参照等を行ったかを特定でき、デバッグ効率を向上させることができるという効果を奏する。
【００２８】
また、この機能を利用することにより特定のマスタプロセッサからのアクセスに対してのみ反応するシステムを構築することもできる。
【図面の簡単な説明】
【図１】この発明に係わるメモリ制御装置およびその制御方法を適用して構成したメモリ制御装置の一実施例の概略構成を示すブロック図。
【図２】図１に示したメモリ制御部の要部の構成を示すブロック図。
【符号の説明】
１０    メモリ制御装置
１１    調停部
１２    ステータスレジスタ
１３    メモリ制御部
２０    共有メモリ
１３１    マルチプレクサ
１３２    レジスタ
１３３    比較部
【図１】
0003767921.tif 000002
【図２】
0003767921.tif 000003