JP2008047033A - 制御装置及び制御方法 - Google Patents
制御装置及び制御方法 Download PDFInfo
- Publication number
- JP2008047033A JP2008047033A JP2006224250A JP2006224250A JP2008047033A JP 2008047033 A JP2008047033 A JP 2008047033A JP 2006224250 A JP2006224250 A JP 2006224250A JP 2006224250 A JP2006224250 A JP 2006224250A JP 2008047033 A JP2008047033 A JP 2008047033A
- Authority
- JP
- Japan
- Prior art keywords
- data transfer
- internal bus
- bus master
- signal
- slave
- 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.)
- Withdrawn
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
【課題】同一の信号線を介して、内部バスマスタと内部バススレーブに対して転送状態を示す信号を送信する処理回路において、内部バスマスタと外部バススレーブ間のデータ転送と、外部バスマスタと内部バススレーブ間のデータ転送とを適切に実行する制御装置及び制御方法を提供する。
【解決手段】本発明に係る制御装置は、内部バスマスタと外部バススレーブとの間の第1のデータ転送と、内部バススレーブと外部バスマスタとの間の第2のデータ転送とにおける状態信号を、内部バスマスタ及び内部バススレーブに接続される信号線を介して、内部バスマスタ及び内部バススレーブに送信する送信部と、第1のデータ転送又は第2のデータ転送の実行の要求を検出する要求検出部と、第1のデータ転送又は第2のデータ転送の一方の実行の要求が検出された場合、他方の第1のデータ転送又は第2のデータ転送の実行を禁止する通信管理部とを具備する。
【選択図】図2
【解決手段】本発明に係る制御装置は、内部バスマスタと外部バススレーブとの間の第1のデータ転送と、内部バススレーブと外部バスマスタとの間の第2のデータ転送とにおける状態信号を、内部バスマスタ及び内部バススレーブに接続される信号線を介して、内部バスマスタ及び内部バススレーブに送信する送信部と、第1のデータ転送又は第2のデータ転送の実行の要求を検出する要求検出部と、第1のデータ転送又は第2のデータ転送の一方の実行の要求が検出された場合、他方の第1のデータ転送又は第2のデータ転送の実行を禁止する通信管理部とを具備する。
【選択図】図2
Description
本発明は、内部バスマスタと内部バススレーブと内部バスマスタ及び内部バススレーブに接続される信号線とを備える処理回路に接続すると共に、処理回路の外部に設けられた外部バスマスタと、処理回路の外部に設けられた外部バススレーブとに接続する制御装置及び制御方法に関する。
従来、マイクロプロセッサ、チップセット、ビデオチップ、メモリ等のIP(Intellectual Property)コア間において、データ転送を実行する様々なバスシステムが提案されている(例えば、特許文献1参照)。
一般的に、IPコア間のデータ転送は、各IPコアに備えられているバスマスタとバススレーブとの間で実行される。バスマスタは、データの伝送路であるバスに接続し、データの書き込み・読み取り等、データ転送の実行を要求する装置であり、バススレーブは、バスマスタの要求に従ってデータ転送を実行する装置である。
図7には、AMBAプロトコルを使用し、バスマスタとバススレーブとの間で実行されるデータ転送のイメージが示されている。図7に示すように、データ転送時のバススレーブは、HREADY信号と呼ばれる自装置の転送状態を示す信号を、転送相手のバスマスタへ送信して、データ転送の完了及び継続を通知する。具体的に、バススレーブは、現在のタイムサイクルでデータ転送が完了する場合、HREADY信号を“High”の状態で送信し、逆に継続する場合、“Low”の状態で送信する。
また、データ転送時のバスマスタも、HREADYin信号と呼ばれる自装置の転送状態を示す信号を、転送相手のバススレーブへ送信して、データ転送の完了及び継続を通知する。具体的に、バスマスタは、現在のタイムサイクルでデータ転送が完了する場合、HREADYin信号を“High”の状態で送信し、逆に継続する場合、“Low”の状態で送信する。
このようにして、バスマスタとバススレーブとは、HREADY信号やHREADYin信号を受信することで、互いの転送状態を認識しながらデータ転送を実行する。
また、バスマスタとバススレーブとは、データ転送を実行する際、上述した転送状態を示す信号(HREADY信号及びHREADYin信号)を、同一の“High”及び“Low”の状態で互いに送受信する。
そこで、近年では、図8に示すように、転送状態を示す信号(HREADY信号及びHREADYin信号)をバスマスタ及びバススレーブへ送信する信号線が、同一の信号線(共有信号線L)で構成されている処理回路が提案されている。このような処理回路では、処理回路内の信号線を低減することが可能になり、回路規模の縮小、管理の簡略化を図ることができる。
特開2006−155488号公報
また、図9に示すように、上述した処理回路のバスマスタ(以下、内部バスマスタM1)は、調停回路Abを介して、転送状態を示す信号(HREADY信号及びHREADYin信号)を送受信することで、処理回路のバススレーブ(以下、内部バススレーブS1)だけでなく、外部に設けられているバススレーブ(以下、外部バススレーブS2)との間で、データ転送Aを実行することも可能である。
さらに、図10に示すように、処理回路の内部バススレーブS1は、外部に設けられているバスマスタ(以下、外部バスマスタM2)との間でデータ転送Bを実行することも可能である。
ここで、上述したデータ転送Aやデータ転送Bが実行される場合、処理回路では、共有信号線Lを介して、外部バススレーブS2の転送状態を示す信号(HREADY信号)や、外部バスマスタM2の転送状態を示す信号(HREADYin信号)を、内部バスマスタM1及び内部バススレーブS1へ送信するが、上述したデータ転送Aやデータ転送Bがそれぞれ別々の時間帯に実行されていれば、いずれのデータ転送も正常に実行される。
しかしながら、上述したデータ転送Aとデータ転送Bとを、同一の時間帯に実行する場合がある。かかる場合、処理回路では、外部バスマスタM2からの転送状態を示す信号と、外部バススレーブS2からの転送状態を示す信号とを、上述した共有信号線Lを介して、内部バススレーブS1と内部バスマスタM1とへ別々に送信できない。このため、内部バスマスタM1及び内部バススレーブS1では、各々のデータ転送の転送状態を誤って認識し、データ転送A及びデータ転送Bのいずれのデータ転送も適切に実行できないという問題があった。
そこで、本発明は以上の点に鑑みてなされたもので、同一の信号線を介して、内部バスマスタと内部バススレーブに対して転送状態を示す信号を送信する処理回路において、内部バスマスタと外部バススレーブ間のデータ転送と、外部バスマスタと内部バススレーブ間のデータ転送とを適切に実行する制御装置及び制御方法を提供することを目的とする。
本発明の第1の特徴は、内部バスマスタと内部バススレーブと前記内部バスマスタ及び前記内部バススレーブに接続される信号線(共有信号線L)とを備える処理回路に接続すると共に、前記処理回路の外部に設けられた外部バスマスタと、前記処理回路の外部に設けられた外部バススレーブとに接続する制御装置(制御装置100)であって、前記内部バスマスタと前記外部バススレーブとの間で実行される第1のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信する第1の送信部(制御信号通信部110)と、前記内部バススレーブと前記外部バスマスタとの間で実行される第2のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信する第2の送信部(制御信号通信部110)と、前記内部バスマスタ又は前記外部バスマスタから、前記第1のデータ転送の実行の要求又は前記第2のデータ転送の実行の要求の一方を検出する要求検出部(データ転送要求検出部120)と、前記要求検出部によって前記第1のデータ転送及び前記第2のデータ転送の内いずれか一方の実行の要求が検出された場合、他方の前記第1のデータ転送又は前記第2のデータ転送の実行を禁止する通信管理部(通信管理部130)とを具備することを要旨とするものである。かかる特徴によれば、制御装置では、第1のデータ転送の実行の要求又は第2のデータ転送の実行の要求のいずれか一方を検出した際、検出されていない他方の第1のデータ転送又は第2のデータ転送の実行を禁止する。よって、上述した信号線を介して、内部バスマスタ及び内部バススレーブに同一の状態信号を送信する構成の処理回路において、内部バスマスタにおける第1のデータ転送と、内部バススレーブにおける第2のデータ転送とを同一の時間帯で実行することを防止し、いずれのデータ転送も適切に実行する。したがって、かかる制御装置によれば、同一の信号線を介して、内部バスマスタと内部バススレーブに対して転送状態を示す信号(状態信号)を送信する処理回路において、内部バスマスタと外部バススレーブ間の第1のデータ転送と、外部バスマスタと内部バススレーブ間の第2のデータ転送とを適切に実行することができる。
本発明の第2の特徴は、第1の特徴に係り、前記要求検出部が、前記第1のデータ転送と前記第2のデータ転送の実行の要求を同じタイミングで検出した場合、前記通信管理部は、前記第2のデータ転送の実行を禁止してもよい。かかる特徴によれば、制御装置では、第1のデータ転送又は第2のデータ転送の実行の要求を同じタイミングで検出した場合、第2のデータ転送の実行を禁止し、第1のデータ転送のみを実行させる。したがって、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行することを防止する。
本発明の第3の特徴は、第2の特徴に係り、前記通信管理部によって前記第2のデータ転送を禁止する前に、前記第2のデータ転送で転送されたデータを保持する記憶部(記憶部150)と、前記第1のデータ転送の完了を検出する完了検出部(データ転送完了検出部140)と、前記完了検出部によって完了を検出した際、前記記憶部に記憶されている前記データから前記第2のデータ転送を実行するデータ送信部(データ通信部160)とを更に具備してもよい。かかる特徴によれば、制御装置では、第2のデータ転送を禁止する前に転送されたデータを保持し、第1のデータ転送が完了した際に、保持するデータから第2のデータ転送を実行できる。したがって、外部バスマスタが、第2のデータ転送におけるデータの転送を、初めから再度実行することなく効率よく実行できる。
また、本発明第4の特徴は、第1の特徴に係り、前記通信管理部は、前記第1のデータ転送の実行の要求を禁止する場合、データの伝送路であるバスの占有権を与えないことを前記内部バスマスタに通知してもよい。
また、本発明第5の特徴は、第1の特徴に係り、前記通信管理部は、前記第2のデータ転送の実行の要求を禁止する場合、前記内部バススレーブがデータを受付けられないことを示す信号を前記状態信号として前記外部バスマスタに送信してもよい。
また、本発明第6の特徴は、内部バスマスタと内部バススレーブと前記内部バスマスタ及び前記内部バススレーブに接続される信号線とを備える処理回路に接続すると共に、前記処理回路の外部に設けられた外部バスマスタと、前記処理回路の外部に設けられた外部バススレーブとに接続する制御装置における制御方法であって、前記内部バスマスタと前記外部バススレーブとの間で実行される第1のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信するステップと、前記内部バススレーブと前記外部バスマスタとの間で実行される第2のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信するステップと、前記内部バスマスタ又は前記外部バスマスタから、前記第1のデータ転送の実行の要求又は前記第2のデータ転送の実行の要求の一方を検出するステップと、前記第1のデータ転送又は前記第2のデータ転送の内いずれか一方の実行の要求が検出された場合、他方の前記第1のデータ転送又は前記第2のデータ転送の実行を禁止するステップとを具備することを要旨とするものである。
本発明の特徴によれば、同一の信号線を介して、内部バスマスタと内部バススレーブに対して転送状態を示す信号を送信する処理回路において、内部バスマスタと外部バススレーブ間のデータ転送と、外部バスマスタと内部バススレーブ間のデータ転送とを適切に実行する制御装置及び制御方法を提供することができる。
次に、本発明の実施形態について説明する。なお、以下の図面の記載において、同一または類似の部分には、同一または類似の符号を付している。
(本発明の実施形態に係るバスシステムの全体概略構成)
本発明の実施形態に係るバスシステムの構成について、図1を参照して説明する。図1には、本実施形態に係るバスシステムの概略構成が示されている。本実施形態に係るバスシステム1は、データの伝送路であるバス2と、処理回路10と、SRAM20と、DMAC30と、調停回路Abと、制御装置100とを具備する。また、上述した処理回路10とSRAM20とDMAC30とは、IPコアとして機能する。なお、バスシステム1に備えられているIPコアの数は、上述した数に限定されるものではない。
本発明の実施形態に係るバスシステムの構成について、図1を参照して説明する。図1には、本実施形態に係るバスシステムの概略構成が示されている。本実施形態に係るバスシステム1は、データの伝送路であるバス2と、処理回路10と、SRAM20と、DMAC30と、調停回路Abと、制御装置100とを具備する。また、上述した処理回路10とSRAM20とDMAC30とは、IPコアとして機能する。なお、バスシステム1に備えられているIPコアの数は、上述した数に限定されるものではない。
また、本実施形態に係るバスシステム1では、SoC(System on Chip)の分野で幅広く用いられているARM社のAMBA(Advanced Microcontroller Bus Architecture)(登録商標)プロトコルに準拠し、各IPコアに備えられているバスマスタ及びバススレーブとの間でデータ転送を実行する。
また、本実施形態では、上述したAMBAプロトコルにおいて、主に、バスマスタ及びバススレーブ間のデータ転送で送受信される「HREADY信号」、「HREADYin信号」、「HGRANT信号」、「HTRANS信号」等の各種制御信号に着目して説明する。
ここで、上述した制御信号について簡潔に説明する。
「HREADY信号」は、各バススレーブにおいて、データ転送の実行を受付けられるか否かの状態を示す1bitの信号である。具体的に、バススレーブは、現在、データ転送の実行を受付できる場合、「HREADY信号」を“High”の状態で送信し、逆に受付けていない場合、“Low”の状態で送信する。また、データ転送時のバススレーブは、データ転送の完了及び継続等の転送状態を、転送相手のバスマスタに通知するための信号として、かかる「HREADY信号」を送信する。
「HREADYin信号」は、データ転送時のバスマスタにおいて、データ転送の完了及び継続等の自装置の転送状態を、転送相手である他のバススレーブに通知するための1bitの信号である。具体的に、バスマスタは、現在のタイムサイクルでデータ転送が完了する場合、「HREADYin信号」を“High”の状態で送信し、逆に継続する場合、“Low”の状態で送信する。
本実施形態において、上述した「HREADY信号」及び「HREADYin信号」は、データ転送時の転送状態を示す状態信号である。
「HGRANT信号」は、対象のバスマスタに対して、データの伝送路であるバスの占有権を与える又は与えないことを通知する1bitの信号である。具体的に、「HGRANT信号」は、“High”の状態の場合、対象のバスマスタにバスの占有権を与えることを示し、反対に“Low”の状態の場合、バスの占有権を与えないことを示す。
「HTRANS信号」は、データの転送相手であるバススレーブに向けて、データ転送の実行の要求タイプを示す2bitの信号である。具体的に、「HTRANS信号」は、データ転送を要求しないIDLE状態を“00”で示し、すぐに次の転送を実行しないBUSY状態を“01”で示し、データ転送を開始するNONSEQ転送状態を“10” で示し、データ転送を継続するSEQ転送状態を“11”で示す。また、バスマスタは、対象のバススレーブにデータ転送の実行を要求する場合、“10”又は“11”の「HTRANS信号」を送信する。なお、本実施形態において、“10”及び“11”の「HTRANS信号」を「HTRANS[1]信号」として説明する。また、バスマスタは、上述した「HGRANT信号」が、“HIGH”の状態で受信している場合のみ、「HTRANS[1]信号」を送信できる。
次に、バスシステム1の構成について具体的に説明する。
処理回路10は、ディジタル信号処理を行うDSP(Digital Signal Processor)として機能する。また、本実施形態に係る処理回路10は、制御装置100と、データの伝送路であるバス2と接続する。また、本実施形態に係る処理回路10は、共有信号線Lと、内部バスマスタM1と、内部バススレーブS1とを具備する。
共有信号線Lは、内部バスマスタM1と内部バススレーブS1とに接続する信号線である。
内部バスマスタM1は、「HGRANT信号」と、「HREADY信号」とを制御装置100から受信する。なお、内部バスマスタM1は、かかる「HREADY信号」を、共有信号線Lを介して受信する。
また、内部バスマスタM1は、データ転送の実行を要求する際、「HTRANS[1]信号」を、制御装置100を介して、他のバススレーブへ送信すると共に、当該「HTRANS[1]信号」の送信先の他のバススレーブとの間で、バス2を介して、データ転送を実行する。
また、内部バスマスタM1は、データ転送時において、自装置の転送状態を示す「HREADYin信号」を制御装置100へ送信する。
内部バススレーブS1は、「HREADY信号」を制御装置100へ送信する。また、内部バススレーブS1は、制御装置100から送信された「HTRANS[1]信号」を受信し、当該「HTRANS[1]信号」の送信元のバスマスタとの間で、バス2と制御装置100とを介して、データ転送を実行する。また、内部バススレーブS1は、データ転送時において、データ転送相手であるバスマスタの転送状態を示す「HREADYin信号」を制御装置100から受信する。なお、内部バススレーブS1は、かかる「HREADYin信号」を、共有信号線Lを介して受信する。
ここで、当該共有信号線Lを介して送信される信号は、内部バススレーブS1において、「HREADYin信号」として受信されると共に、内部バスマスタM1では、「HREADY信号」として受信される。つまり、内部バススレーブS1で受信される「HREADYin信号」と、内部バスマスタM1で受信される「HREADY信号」とは、同一の状態の信号である。
SRAM(Static Random Access Memory)20は、記憶装置として機能する。また、SRAM20は、データの伝送路であるバス2と、調停回路Abと接続する。また、SRAM20は、外部バススレーブS2を備える。
外部バススレーブS2は、調停回路Abへ「HREADY信号」を送信する。また、外部バススレーブS2は、調停回路Abを介して、他のバスマスタから送信された「HTRANS[1]信号」を受信すると、当該「HTRANS[1]信号」の送信元のバスマスタとの間で、バス2を介して、データ転送を実行する。また、外部バススレーブS2は、データ転送時において、データ転送相手であるバスマスタの転送状態を示す「HREADYin信号」を調停回路Abから受信する。
DMAC(Direct Memory Access Controller)30は、DMA転送等の処理を実行する装置として機能する。また、DMAC30は、データの伝送路であるバス2と、調停回路Abと、制御装置100と接続する。また、DMAC30は、外部バスマスタM2と、外部バススレーブS3とを備える。
外部バスマスタM2は、「HREADY信号」を、調停回路Abから受信する。また、外部バスマスタM2は、他のバススレーブとのデータ転送の実行を要求する際、「HTRANS[1]信号」を、調停回路Abを介して、バススレーブへ送信する。また、外部バスマスタM2は、当該「HTRANS[1]信号」の送信先のバススレーブとの間で、制御装置100とバス2とを介して、データ転送を実行する。なお、外部バスマスタM2は、データ転送時のデータ(例えば、「HWDATA信号」)を制御装置100との間で送受信する。また、外部バスマスタM2は、データ転送時に「HREADYin信号」を、調停回路Abへ送信する。
外部バススレーブS3は、調停回路Abへ「HREADY信号」を送信する。また、外部バススレーブS3は、調停回路Abを介して、バスマスタからの「HTRANS[1]信号」を受信すると、当該「HTRANS[1]信号」の送信元のバスマスタとの間で、バス2を介して、データ転送を実行する。
調停回路Abは、SRAM20と、DMAC30と、制御装置100と接続する。また、調停回路Abは、SRAM20と、DMAC30と、制御装置100とから送信される各種制御信号を受信するとともに、送信先のアドレスをデコードし、当該制御信号をアドレス先に送信する。
制御装置100は、処理回路10と接続すると共に、調停回路Abを介して、SRAM20と、DMAC30と接続する。また、制御装置100は、処理回路10の内部バスマスタM1及び内部バススレーブS1との間で制御信号を送受信する。また、制御装置100は、調停回路Abを介して、外部バススレーブS2と、外部バスマスタM2と、外部バススレーブS3との間で制御信号を送受信する。また、外部バスマスタM2がデータ転送を実行する際、制御装置100は、外部バスマスタM2との間でデータを送受信する。
また、制御装置100は、内部バスマスタM1と外部バススレーブS2乃至S3との間で実行されるデータ転送(以下、第1のデータ転送)と、内部バススレーブS1と外部バスマスタM2との間で実行されるデータ転送(以下、第2のデータ転送)とにおいて、送受信される制御信号を制御するように構成されている。
(本発明の実施形態に係る制御装置の構成)
次に、図2を参照し、制御装置100の構成について具体的に説明する。また、以下、本発明との関連がある部分について主に説明する。したがって、制御装置100は、バスシステム1の各種信号を制御する制御装置100としての機能を実現する上で必須な、図示しない或いは説明を省略した機能ブロック(電源部など)を備える場合があることに留意されたい。
次に、図2を参照し、制御装置100の構成について具体的に説明する。また、以下、本発明との関連がある部分について主に説明する。したがって、制御装置100は、バスシステム1の各種信号を制御する制御装置100としての機能を実現する上で必須な、図示しない或いは説明を省略した機能ブロック(電源部など)を備える場合があることに留意されたい。
制御装置100は、制御信号通信部110と、データ転送要求検出部120と、通信管理部130と、データ転送完了検出部140と、記憶部150と、データ通信部160とを具備する。
制御信号通信部110は、内部バスマスタM1、又は内部バススレーブS1から制御信号を受信すると共に、調停回路Abを介して、外部バスマスタM2、外部バススレーブS2、又は外部バススレーブS3へ当該制御信号を送信する。
また、制御信号通信部110は、調停回路Abを介して、外部バスマスタM2、外部バススレーブS2、又は外部バススレーブS3から送信された制御信号を受信すると共に、当該制御信号を、内部バスマスタM1、又は内部バススレーブS1へ送信する。
また、本実施形態に係る制御信号通信部110は、内部バスマスタM1と外部バススレーブS2乃至S3との間で実行される第1のデータ転送の転送状態を示す「HREADY信号」(状態信号)を、共有信号線Lを介して、内部バスマスタM1及び内部バススレーブS1に送信する第1の送信部を構成する。また、本実施形態に係る制御信号通信部110は、内部バススレーブS1と外部バスマスタM2との間で実行される第2のデータ転送の転送状態を示す「HREADYin信号」(状態信号)を、共有信号線Lを介して、内部バスマスタM1及び内部バススレーブS1に送信する第2の送信部を構成する。
データ転送要求検出部120は、第1のデータ転送の実行の要求、又は第2のデータ転送の実行の要求の一方を検出する。具体的に、データ転送要求検出部120は、内部クロックを備えており、タイムサイクル毎に、制御信号通信部110で「HTRANS[1]信号」を受信したか否かを検出する。また、データ転送要求検出部120は、制御信号通信部110において、内部バスマスタM1から送信された「HTRANS[1]信号」を受信した場合、第1のデータ転送の実行の要求として検出する。また、データ転送要求検出部120は、制御信号通信部110において、外部バスマスタM2から送信された「HTRANS[1]信号」を受信した場合、第2のデータ転送の実行の要求として検出する。
また、データ転送要求検出部120は、制御信号通信部110において、第1のデータ転送と第2のデータ転送との実行を要求する「HTRANS[1]信号」の両方を、同じタイムサイクルで受信した場合、第1のデータ転送と第2のデータ転送とを同じタイミングで受信したとして検出する。なお、データ転送要求検出部120は、検出結果を通信管理部130と、データ転送完了検出部140と、データ通信部160とへ通知する。
通信管理部130は、データ転送要求検出部120によって第1のデータ転送又は第2のデータ転送の内いずれか一方の実行の要求が検出された場合、他方の第1のデータ転送又は第2のデータ転送の実行を禁止する。
具体的に、通信管理部130は、第1のデータ転送の実行の要求を禁止する場合、データの伝送路であるバスの占有権を与えないことを内部バスマスタM1に通知する。この時、通信管理部130は、「HGRANT信号」を“Low”の状態で内部バスマスタM1へ送信する。
また、通信管理部130は、第2のデータ転送の実行の要求を禁止する場合、内部バススレーブS1においてデータを受付けていないことを示す“Low”の状態の「HREADY信号」を外部バスマスタM2に送信し、第2のデータ転送の実行の要求である「HTRANS[1]信号」を送信させないようにする。また、通信管理部130は、データ転送要求検出部120が、第1のデータ転送と第2のデータ転送の実行の要求を同じタイミングで検出した場合、第2のデータ転送の実行を禁止する。
データ転送完了検出部140は、第1のデータ転送の完了や第2のデータ転送の完了を検出する。具体的に、データ転送完了検出部140は、制御信号通信部110で受信されている内部バスマスタM1又は外部バスマスタM2からの「HTRANS[1]信号」が、“00”のIDLE状態に切り替わるか否かを検出する。なお、データ転送完了検出部140は、上述した「HTRANS信号」以外にも、制御信号通信部110で受信されている内部バスマスタM1又は外部バスマスタM2からの「HREADYin信号」が、“Low”から“High”へ状態が切り替わることを、あわせて検出するように構成されていてもよい。
データ通信部160は、第2のデータ転送で送信されるデータ(例えば、外部バスマスタM2からのデータ)を受信すると共に、当該データをデータ転送相手(例えば、内部バススレーブS1)に送信する。また、データ通信部160は、データ転送要求検出部120から、第1のデータ転送と第2のデータ転送の要求が同じタイミングである旨の通知を受けると、第2のデータ転送で送信されたデータを記憶部150へ記憶する。また、データ通信部160は、データ転送完了検出部140によって第1のデータ転送の完了を検出した際、記憶部150に記憶されているデータから第2のデータ転送を実行する。
記憶部150は、データ転送要求検出部120が、第1のデータ転送と第2のデータ転送の実行の要求を同じタイミングで検出した場合、通信管理部130によって第2のデータ転送を禁止する前に、第2のデータ転送で転送されたデータを保持する。
(バスシステムの動作)
次に、図3を参照し、上述したバスシステム1の動作について説明する。具体的に、本実施形態に係るバスシステム1において、制御装置100が、「HTRANS[1]信号」を受信した際の、第1のデータ転送及び第2のデータ転送の制御動作について説明する。
次に、図3を参照し、上述したバスシステム1の動作について説明する。具体的に、本実施形態に係るバスシステム1において、制御装置100が、「HTRANS[1]信号」を受信した際の、第1のデータ転送及び第2のデータ転送の制御動作について説明する。
ステップS10において、制御装置100では、制御信号通信部110が、内部バスマスタM1、又は外部バスマスタM2から送信された「HTRANS[1]信号」を受信する。また、制御信号通信部110は、受信した「HTRANS[1]信号」を送信すべき先へ送信する。
ステップS20において、制御装置100では、データ転送要求検出部120が、内部バスマスタM1からの「HTRANS[1]信号」であるか、又は外部バスマスタM2からの「HTRANS[1]信号」であるか、又は同タイムサイクル内で内部バスマスタM1及び外部バスマスタM2からの「HTRANS[1]信号」を受信したかを判定する。
ステップS30において、データ転送要求検出部120が、内部バスマスタM1からの「HTRANS[1]信号」を受信したと判定した場合、通信管理部130へ、内部バスマスタM1から「HTRANS[1]信号」を受信した旨を通知する。この通知を受けた通信管理部130は、外部バスマスタM2に対して、「HREADY信号」を“Low”の状態で送信し、第2のデータ転送の実行の要求である「HTRANS[1]信号」を送信させないようにする。
ステップS31において、内部バスマスタM1は、外部バススレーブS2との間で第1のデータ転送を実行する。
ステップS40において、データ転送要求検出部120が、外部バスマスタM2からの「HTRANS[1]信号」を受信したと判定した場合、通信管理部130へ、外部バスマスタM2から「HTRANS[1]信号」を受信した旨を通知する。この通知を受けた通信管理部130は、内部バスマスタM1に対して、「HGRANT信号」を“Low”の状態で送信し、第1のデータ転送の実行の要求である「HTRANS[1]信号」を送信させないようにする。
ステップS41において、外部バスマスタM2は、内部バススレーブS1との間で第2のデータ転送を実行する。
ステップS50において、データ転送要求検出部120が、同じタイムサイクルに、内部バスマスタM1及び外部バスマスタM2からの「HTRANS[1]信号」を受信したと判定した場合、通信管理部130と、データ転送完了検出部140と、データ通信部160とへ、同じタイムサイクルに「HTRANS[1]信号」を受信した旨を通知する。
この通知を受けた通信管理部130は、外部バスマスタM2に対して、「HREADY信号」を“Low”の状態で送信し、外部バスマスタM2から送信されているデータの送信を停止させる。
また、この通知を受けたデータ通信部160は、外部バスマスタM2において“Low”の状態の「HREADY信号」を受信してデータの送信を停止する前に、外部バスマスタM2から送信されたデータを記憶部150に記憶する。
ステップS51において、内部バスマスタM1は、外部バススレーブS2との間で第1のデータ転送を実行する。
ステップS52において、制御装置100では、データ転送完了検出部140が、第1のデータ転送を完了したか否かを検出する。この時、データ転送完了検出部140は、制御信号通信部110で受信されている内部バスマスタM1からの「HTRANS[1]信号」が“00”のIDLE状態に切り替わるか否かを検出する。
ステップS53において、データ転送完了検出部140が、第1のデータ転送を完了したことを検出した場合、完了した旨を、通信管理部130及びデータ通信部160へ通知する。
この通知を受けた通信管理部130は、内部バスマスタM1に対して、「HGRANT信号」を“Low”の状態で送信すると共に、外部バスマスタM2に対して、「HREADY信号」を“High”の状態で送信する。
ステップS54において、第1のデータ転送が完了した旨の通知を受けたデータ通信部160は、外部バスマスタM2から送信されるデータを記憶部150に記憶しつつ、第1のデータ転送中に記憶部150へ記憶したデータから、内部バススレーブS1に送信し、第2のデータ転送におけるデータの送信を実行する。
次に、図4乃至6を参照し、上述したステップS30乃至S31と、ステップS40乃至S41と、ステップS50乃至S54とにおいて、制御装置100が制御する制御信号と、第1のデータ転送及び第2のデータ転送との時間軸上の関係について説明する。
ここで、図4乃至6の図中に示す各信号について簡潔に説明する。
図中の「CLK」は、制御装置100の内部クロックのタイムサイクルT0乃至T4を示している。図中の「HGRANT」は、制御装置100から内部バスマスタM1へ送信される「HGRANT信号」を示している。図中の「第1のデータ転送」は、内部バスマスタM1から外部バススレーブS2へ送信されるデータ(例えば、「HWDATA信号」や「HRDATA信号」)を示している。図中の「HREADY_M2」は、制御装置100から外部バスマスタM2へ送信される「HREADY信号」を示している。図中の「第2のデータ転送」は、外部バスマスタM2から内部バススレーブS1へ送信されるデータ信号を示している。
なお、図4乃至6では、制御装置100が、タイムサイクルT0のタイミングで「HTRANS[1]信号」を受信する場合を例に示している。
図4は、第1のデータ転送を実施するステップS30乃至S31の動作において、制御装置100が制御する制御信号と、第1のデータ転送との関係を示すタイムチャートである。
図4に示すタイムサイクルT0において、制御装置100が、内部バスマスタM1から外部バススレーブS2へ送信された「HTRANS[1]信号」を受信した場合、タイムサイクルT1において、制御装置100は、外部バスマスタM2へ送信する「HREADY信号」を“Low”の状態で送信する(ステップS30)。この時、内部バスマスタM1と外部バススレーブS2との間において、第1のデータ転送が実行される(ステップS31)。
また、タイムサイクルT3において、第1のデータ転送が完了する場合、制御装置100は、第1のデータ転送の完了を検出し、外部バスマスタM2へ送信する「HREADY信号」を“High”の状態で送信する。
このようにして、制御装置100は、第1のデータ転送が実行されると共に、外部バスマスタM2へ送信する「HREADY信号」を制御し、第2のデータ転送の実行を禁止することで、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行されることを防止する。
図5は、第2のデータ転送を実施するステップS40乃至S41の動作において、制御装置100が制御する制御信号と、第2のデータ転送との関係を示すタイムチャートである。
図5に示すタイムサイクルT0において、制御装置100が、外部バスマスタM2から内部バススレーブS1へ送信された「HTRANS[1]信号」を受信した場合、タイムサイクルT1において、制御装置100は、内部バスマスタM1へ送信する「HGRANT信号」を“Low”の状態で送信する(ステップS40)。この時、外部バスマスタM2と内部バススレーブS1との間において、第2のデータ転送が実行される(ステップS41)。
また、タイムサイクルT3において、第2のデータ転送が完了する場合、制御装置100は、第2のデータ転送の完了を検出し、内部バスマスタM1へ送信する「HGRANT信号」を“High”の状態で送信する。
このようにして、制御装置100は、第2のデータ転送が実行されると共に、内部バスマスタM1へ送信する「HGRANT信号」を制御し、第1のデータ転送の実行を禁止することで、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行されることを防止する。
図6は、第1のデータ転送及び第1のデータ転送を実施するステップS50乃至S54の動作において、制御装置100が制御する制御信号と、第1のデータ転送及び第2のデータ転送との関係を示すタイムチャートである。
図6に示すタイムサイクルT0において、制御装置100が、内部バスマスタM1から外部バススレーブS2へ送信された「HTRANS[1]信号」と、外部バスマスタM2から内部バススレーブS1へ送信された「HTRANS[1]信号」とを受信した場合、タイムサイクルT1において、制御装置100は、外部バスマスタM2へ送信する「HREADY信号」を“Low”の状態で送信すると共に、外部バスマスタM2から送信されたデータを記憶(Latch)する(ステップS50)。この時、内部バスマスタM1と外部バススレーブS2との間において、第1のデータ転送が実行される(ステップS51)。
また、タイムサイクルT2において、第1のデータ転送が完了する場合、制御装置100は、第1のデータ転送の完了を検出し(ステップS52)、「HREADY信号」を“High”の状態に切り替えて外部バスマスタM2へ送信すると共に、「HGRANT信号」を“Low”の状態に切り替えて内部バスマスタM1へ送信する(ステップS53)。この時、外部バスマスタM2と内部バススレーブS1との間において、第2のデータ転送が実行される(ステップS54)。なお、制御装置100は、第2のデータ転送を実行する際、記憶したデータから内部バススレーブS1へ送信する。
このようにして、制御装置100は、第1のデータ転送と第2のデータ転送とが実行される際、外部バスマスタM2へ送信する「HREADY信号」と、内部バスマスタM1へ送信する「HGRANT信号」を制御し、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行されることを防止する。
(作用・効果)
以上説明した本実施形態に係る制御装置によれば、第1のデータ転送の実行を要求する「HTRANS[1]信号」又は第2のデータ転送の実行を要求する「HTRANS[1]信号」のいずれか一方を検出した際、検出されていない他方の第1のデータ転送又は第2のデータ転送の実行を禁止し、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行することを防止する。したがって、かかる制御装置100によれば、共有信号線Lを介して、内部バスマスタM1と内部バススレーブS1に対して第1のデータ転送及び第2のデータ転送の転送状態を示す信号を送信する処理回路において、内部バスマスタM1と外部バススレーブS2乃至3間の第1のデータ転送と、外部バスマスタM2と内部バススレーブS1間の第2のデータ転送とを適切に実行することができる。
以上説明した本実施形態に係る制御装置によれば、第1のデータ転送の実行を要求する「HTRANS[1]信号」又は第2のデータ転送の実行を要求する「HTRANS[1]信号」のいずれか一方を検出した際、検出されていない他方の第1のデータ転送又は第2のデータ転送の実行を禁止し、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行することを防止する。したがって、かかる制御装置100によれば、共有信号線Lを介して、内部バスマスタM1と内部バススレーブS1に対して第1のデータ転送及び第2のデータ転送の転送状態を示す信号を送信する処理回路において、内部バスマスタM1と外部バススレーブS2乃至3間の第1のデータ転送と、外部バスマスタM2と内部バススレーブS1間の第2のデータ転送とを適切に実行することができる。
また、かかる制御装置100よれば、第1のデータ転送又は第2のデータ転送の実行を要求する「HTRANS[1]信号」を同じタイムサイクル(タイミング)で検出した場合、第2のデータ転送の実行を禁止し、第1のデータ転送のみを実行させる。したがって、第1のデータ転送と第2のデータ転送とを同一の時間帯で実行することを防止する。
また、かかる制御装置100よれば、第1のデータ転送又は第2のデータ転送の実行を要求する「HTRANS[1]信号」を同じタイムサイクル(タイミング)で検出した場合、第2のデータ転送を禁止する前に転送されたデータを保持し、第1のデータ転送が完了した際に、保持するデータから第2のデータ転送を実行できる。したがって、外部バスマスタM2が、第2のデータ転送におけるデータの転送を、初めから再度実行することなく効率よく実行できる。
(その他の実施形態)
上述したように、本発明の一実施形態を通じて本発明の内容を開示したが、この開示の一部をなす論述及び図面は、本発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態が明らかとなろう。
上述したように、本発明の一実施形態を通じて本発明の内容を開示したが、この開示の一部をなす論述及び図面は、本発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態が明らかとなろう。
例えば、上述した実施形態に係る制御装置100の制御信号通信部110において、調停回路Abの機能を含むように構成されていても良い。
また、上述した実施形態に係る制御装置100のデータ転送要求検出部120は、制御信号通信部110で「HTRANS[1]信号」を受信したか否かに基づいて、第1のデータ転送又は第2のデータ転送の実行の要求を検出するように構成されていたが、「HTRANS[1]信号」以外に、AMBAプロトコルにおいて、例えば「HBUSREQx信号」等のバスへの接続を要求する信号を、第1のデータ転送又は第2のデータ転送の実行の要求として検出しても良い。
また、例えば、上述した実施形態に係るバスシステムでは、AMBAプロトコルにおける各種制御信号を一例に挙げて説明したが、AMBAプロトコル以外のプロトコルを用いたバスシステムであっても良い。つまり、本発明に係る制御装置100は、同一の信号線(共有信号線L)を介して、内部バスマスタM1と内部バススレーブS1とに同一の信号を送信する処理回路に対して、データ転送等の通信を実行する様々なバスシステムに適用することが可能である。
このように、本発明は、ここでは記載していない様々な実施の形態などを含むことは勿論である。したがって、本発明の技術的範囲は、上述の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
1…バスシステム、2…バス、10…処理回路、20…SRAM、30…DMAC、100…制御装置、110…制御信号通信部、120…データ転送要求検出部、130…通信管理部、140…データ転送完了検出部、150…記憶部、160…データ通信部、A乃至B…データ転送、Ab…調停回路、L…共有信号線、S10乃至S54…ステップ、M1…内部バスマスタ、M2…外部バスマスタ、S1…内部バススレーブ、S2乃至S3…外部バススレーブ、T0乃至T4…タイムサイクル
Claims (6)
- 内部バスマスタと内部バススレーブと前記内部バスマスタ及び前記内部バススレーブに接続される信号線とを備える処理回路に接続すると共に、前記処理回路の外部に設けられた外部バスマスタと、前記処理回路の外部に設けられた外部バススレーブとに接続する制御装置であって、
前記内部バスマスタと前記外部バススレーブとの間で実行される第1のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信する第1の送信部と、
前記内部バススレーブと前記外部バスマスタとの間で実行される第2のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信する第2の送信部と、
前記内部バスマスタ又は前記外部バスマスタから、前記第1のデータ転送の実行の要求又は前記第2のデータ転送の実行の要求の一方を検出する要求検出部と、
前記要求検出部によって前記第1のデータ転送又は前記第2のデータ転送の内いずれか一方の実行の要求が検出された場合、他方の前記第1のデータ転送又は前記第2のデータ転送の実行を禁止する通信管理部と
を具備することを特徴とする制御装置。 - 前記要求検出部が、前記第1のデータ転送と前記第2のデータ転送の実行の要求を同じタイミングで検出した場合、
前記通信管理部は、前記第2のデータ転送の実行を禁止する
ことを特徴とする請求項1に記載の制御装置。 - 前記通信管理部によって前記第2のデータ転送を禁止する前に、前記第2のデータ転送で転送されたデータを保持する記憶部と、
前記第1のデータ転送の完了を検出する完了検出部と、
前記完了検出部によって完了を検出した際、前記記憶部に記憶されている前記データから前記第2のデータ転送を実行するデータ送信部と
を更に具備することを特徴とする請求項2に記載の制御装置。 - 前記通信管理部は、前記第1のデータ転送の実行の要求を禁止する場合、データの伝送路であるバスの占有権を与えないことを前記内部バスマスタに通知することを特徴とする請求項1に記載の制御装置。
- 前記通信管理部は、前記第2のデータ転送の実行の要求を禁止する場合、前記内部バススレーブがデータを受付けられないことを示す信号を前記状態信号として前記外部バスマスタに送信することを特徴とする請求項1に記載の制御装置。
- 内部バスマスタと内部バススレーブと前記内部バスマスタ及び前記内部バススレーブに接続される信号線とを備える処理回路に接続すると共に、前記処理回路の外部に設けられた外部バスマスタと、前記処理回路の外部に設けられた外部バススレーブとに接続する制御装置における制御方法であって、
前記内部バスマスタと前記外部バススレーブとの間で実行される第1のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信するステップと、
前記内部バススレーブと前記外部バスマスタとの間で実行される第2のデータ転送の転送状態を示す状態信号を、前記信号線を介して、前記内部バスマスタ及び前記内部バススレーブに送信するステップと、
前記内部バスマスタ又は前記外部バスマスタから、前記第1のデータ転送の実行の要求又は前記第2のデータ転送の実行の要求の一方を検出するステップと、
前記第1のデータ転送又は前記第2のデータ転送の内いずれか一方の実行の要求が検出された場合、他方の前記第1のデータ転送又は前記第2のデータ転送の実行を禁止するステップと
を具備することを特徴とする制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006224250A JP2008047033A (ja) | 2006-08-21 | 2006-08-21 | 制御装置及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006224250A JP2008047033A (ja) | 2006-08-21 | 2006-08-21 | 制御装置及び制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008047033A true JP2008047033A (ja) | 2008-02-28 |
Family
ID=39180682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006224250A Withdrawn JP2008047033A (ja) | 2006-08-21 | 2006-08-21 | 制御装置及び制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008047033A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020195783A1 (ja) | 2019-03-26 | 2020-10-01 | 株式会社日立ハイテク | データ解析方法、データ解析システム、および計算機 |
-
2006
- 2006-08-21 JP JP2006224250A patent/JP2008047033A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020195783A1 (ja) | 2019-03-26 | 2020-10-01 | 株式会社日立ハイテク | データ解析方法、データ解析システム、および計算機 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5361567B2 (ja) | データ処理装置、データ処理方法およびプログラム | |
KR101951072B1 (ko) | 코어 간 통신 장치 및 방법 | |
JP3807250B2 (ja) | クラスタシステム、コンピュータ及びプログラム | |
JP5050009B2 (ja) | ルートテーブルの動的更新 | |
US9170963B2 (en) | Apparatus and method for generating interrupt signal that supports multi-processor | |
KR20020009823A (ko) | 버스 시스템 및 그 버스 중재방법 | |
JP4711410B2 (ja) | 半導体集積回路 | |
JP2006040276A (ja) | 選択的なクロック制御に基づいて消費電力を節減させるバス仲裁システム及びその方法 | |
KR20080074545A (ko) | 버스 시스템 및 그 제어 방법 | |
JP5981004B2 (ja) | 半導体装置 | |
JP2000020462A (ja) | コンピュータシステムに適用するバスシステム | |
JP2008047033A (ja) | 制御装置及び制御方法 | |
JP2006268390A (ja) | 直列インタフェース回路 | |
US9411758B2 (en) | Semiconductor device | |
US20070186026A1 (en) | System having bus architecture for improving CPU performance and method thereof | |
JP2010118020A (ja) | リクエスト順序制御システム、リクエスト順序制御方法およびリクエスト順序制御プログラム | |
JP2007052685A (ja) | マイクロコントローラ | |
JP2004334840A (ja) | システムバスの制御方法及び関連装置 | |
JP2014241124A (ja) | 排他制御システム | |
JP2015014962A (ja) | 演算装置、演算方法、及びプログラム | |
JPH08202677A (ja) | マイクロコントローラ | |
JPH04106651A (ja) | システムバスの制御装置 | |
JP2011107922A (ja) | 情報処理システム | |
JP2006092077A (ja) | バスシステム | |
JP2011180766A (ja) | 半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20080118 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20080201 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20091110 |