(57)【要約】【課題】通信用バッファからデータを読み出す際のＣＰＵのアクセス時間を短縮し、ＣＰＵの処理効率を改善する。【解決手段】アクセラレータ装置３が、ＣＰＵ２の読み出しタイミングに先立って通信用バッファ４１からデータを読み出し、ＣＰＵ２の読み出しタイミングが到来すると予め読み出しているデータをＣＰＵ２に出力するため、ＣＰＵ２はデータ読み出し速度が遅い通信用バッファ４１からデータを読み出す必要がなく、ＣＰＵ２のアクセス時間を短縮し、ＣＰＵ２の処理効率を改善することができる。【選択図】図１
2012134896.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ装置と、受信した受信データを蓄積する通信用バッファとに接続され、
所定の時間間隔で繰り返し到来する前記プロセッサ装置の読み出しタイミングに先立ち、前記通信用バッファから規定データサイズのデータを読み出すのに要するバッファ読み出し時間に基づく開始タイミングであって、前記プロセッサ装置の読み出しタイミングまでに前記規定データサイズ分の受信データの読み出しが完了する開始タイミングにて、前記通信用バッファからの前記規定データサイズ分の受信データの読み出しを開始する受信データ読み出し部と、
前記プロセッサ装置の読み出しタイミングが到来した時点で、前記受信データ読み出し部により読み出されている受信データを前記プロセッサ装置に出力する受信データ出力部とを有することを特徴とするアクセラレータ装置。
【請求項２】
前記受信データ読み出し部は、
前記プロセッサ装置の読み出しタイミングから前記バッファ読み出し時間と所定のガード時間とを合算した時間を遡ったタイミングを前記開始タイミングとすることを特徴とする請求項１に記載のアクセラレータ装置。
【請求項３】
前記受信データ読み出し部は、
前記ガード時間を、前記バッファ読み出し時間の１／１０以下とすることを特徴とする請求項２に記載のアクセラレータ装置。
【請求項４】
前記アクセラレータ装置は、
前記受信データ出力部が前記プロセッサ装置に前記規定データサイズ分の受信データを出力するのに要する時間が、前記受信データ読み出し部の前記バッファ読み出し時間以下であることを特徴とする請求項１〜３のいずれかに記載のアクセラレータ装置。
【請求項５】
前記アクセラレータ装置は、更に、
前記プロセッサ装置から出力された送信データを入力する送信データ入力部と、
前記送信データ入力部により入力された前記送信データを前記通信用バッファに書き込む送信データ書き込み部とを有することを特徴とする請求項１〜４のいずれかに記載のアクセラレータ装置。
【請求項６】
前記アクセラレータ装置は、
前記送信データ入力部が前記プロセッサ装置から送信データを入力するのに要する時間が、前記送信データ書き込み部が前記通信用バッファに前記送信データを書き込むのに要する時間以下であることを特徴とする請求項５に記載のアクセラレータ装置。
【請求項７】
請求項１〜６のいずれかに記載のアクセラレータ装置を有することを特徴とするサーボアンプ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセッサ装置が周辺のデバイスにアクセスする際の効率化を図る技術に関する。
本発明は、例えば、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システムにおいて、プロセッサ装置が周辺のデバイスにアクセスする際の効率化を図る技術に関する。
【背景技術】
【０００２】
一般的なＦＡシステムでは、マスタ装置はスレーブ装置に指令を与え、スレーブ装置は各種ステータス情報をマスタ装置に応答する。
指令や応答のやり取りは、一定の時間間隔で行われるが、特にモーションコントロールシステムの分野においては、マスタ装置に相当するモーションコントローラ装置（以下、コントローラと記述する）から送るデータが、スレーブ装置に相当するサーボアンプ装置（以下、サーボアンプと記述する）に届いて、サーボモータを駆動するまでの時間が短い程、また、サーボアンプからコントローラにデータが送付される時間が短い程、高精度なモータ制御が可能となる。
【０００３】
ここで、コントローラからサーボアンプへ送付する、モータを駆動するための制御データを指令データとする。
また、サーボアンプからコントローラへ送付する、モータの位置や速度などのステータス情報を応答データとする。
【０００４】
本明細書では、一例として、サーボアンプを始めとするＦＡ機器内部のデータ転送を高速化する方法を説明する。
また、データ転送が行われる機器の一例として、以下ではサーボアンプを説明する。
【０００５】
サーボアンプ内部の一般的な構成を図５に示す。
１はサーボアンプ、２はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、４は通信用ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、５はモータ制御用ＩＣ、６はモータ、７はネットワークである。
通信用ＩＣ４は、指令データ又は応答データを蓄積するための通信用バッファ４１を備えている。
ネットワーク７の先にはコントローラがあり、サーボアンプ１はネットワーク７を経由してコントローラから指令データを受信する。
サーボアンプ１の内部において、指令データはネットワーク７から通信用ＩＣ３が受信する。
この指令データは、ＣＰＵ２がリードする。
ＣＰＵ２は、必要に応じて指令データの演算を行ってモータ制御用ＩＣ５へ指令データを渡す。
モータ制御用ＩＣ５はＣＰＵ２から受け取った指令データによってモータ６を駆動する。
【０００６】
また、サーボアンプ１は、ネットワーク７を経由して応答データをコントローラに送信する。
サーボアンプ１の内部において、モータ制御用ＩＣ５は、モータ６の位置や速度等のステータス情報をＣＰＵ２へ通知し、ＣＰＵ２は、必要に応じて演算を行って応答データを作成する。
ＣＰＵ２は、通信用ＩＣ４へ応答データをライトする。
【０００７】
続いて、ＣＰＵ２と通信用ＩＣ４のデータを送受するタイミングについて説明する。
【０００８】
通信用ＩＣ４は、一定の時間間隔でネットワーク７から指令データを受信し、通信用バッファ４１に指令データを蓄積する。
そして、ＣＰＵ１は一定の時間間隔で指令データを通信用ＩＣ４（通信用バッファ４１）からリードする。
同様に、ＣＰＵ１は、一定の時間間隔で応答データを通信用ＩＣ４（通信用バッファ４１）にライトし、通信用ＩＣ４は一定の時間間隔でネットワークへ指令を送出する。
ここで、ＣＰＵ１と通信用ＩＣ４がデータを送受する時間の間隔と、通信用ＩＣ４がネットワーク７とデータを送受する時間の間隔（概ね数十マイクロ秒〜数ミリ秒）は必ずしも一致する必要は無い。
【０００９】
ＣＰＵ１によるアクセス性能に比べて、一般的に通信用ＩＣ４のアクセス応答性能は低い。
特にＣＰＵ１から通信用ＩＣ４に対してリードアクセスを行う際は、通信用ＩＣ４がデータを準備するまでＣＰＵ１が待たされ、その間ＣＰＵ１は他の処理を行うことができずに無駄な時間となってしまう。
【００１０】
特許文献１では、ＣＰＵによるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）アクセスを高速化する方法が開示されており、特許文献１でＲＯＭとされている部分を通信用ＩＣに置き換えると、特許文献１の技術を図５の構成に適用できるとも考えられる。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−１１７４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１では、ＣＰＵとＲＯＭの間にメモリインターフェイス回路装置を配置し、ＣＰＵよりも広いデータバス幅を構成する１つ以上のＲＯＭへアクセスするときに効果が期待できる。
しかし、本明細書で想定している通信用ＩＣは、一般的にＣＰＵと同じデータバス幅、もしくはＣＰＵより狭いデータバス幅であり、特許文献１の技術を適用しても効果が期待できない。
【００１３】
本発明は、このような事情に鑑みたものであり、所定の時間間隔で通信用バッファに蓄積されたデータを読み出すプロセッサ装置のアクセス時間を短縮し、プロセッサ装置の処理効率を改善することを主な目的とする。
【課題を解決するための手段】
【００１４】
本発明に係るアクセラレータ装置は、
プロセッサ装置と、受信した受信データを蓄積する通信用バッファとに接続され、
所定の時間間隔で繰り返し到来する前記プロセッサ装置の読み出しタイミングに先立ち、前記通信用バッファから規定データサイズのデータを読み出すのに要するバッファ読み出し時間に基づく開始タイミングであって、前記プロセッサ装置の読み出しタイミングまでに前記規定データサイズ分の受信データの読み出しが完了する開始タイミングにて、前記通信用バッファからの前記規定データサイズ分の受信データの読み出しを開始する受信データ読み出し部と、
前記プロセッサ装置の読み出しタイミングが到来した時点で、前記受信データ読み出し部により読み出されている受信データを前記プロセッサ装置に出力する受信データ出力部とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、アクセラレータ装置が、プロセッサ装置の読み出しタイミングに先立って通信用バッファから受信データを読み出し、読み出しタイミングが到来した際に、読み出されている受信データをプロセッサ装置に出力するため、プロセッサ装置はデータ読み出し速度が遅い通信用バッファから受信データを読み出す必要がなく、プロセッサ装置のアクセス時間を短縮し、プロセッサ装置の処理効率を改善することができる。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１に係るサーボアンプ装置の構成例を示す図。
【図２】実施の形態１に係るサーボアンプ装置における指令データ転送タイミングを説明する図。
【図３】実施の形態１に係るサーボアンプ装置における応答データ転送タイミングを説明する図。
【図４】実施の形態１に係るアクセラレータ装置３の構成例を示す図。
【図５】一般的なサーボアンプ装置の構成例を示す図。
【発明を実施するための形態】
【００１７】
実施の形態１．
本実施の形態では、一定の時間間隔で通信用ＩＣとデータの送受を行うＣＰＵのアクセス時間を短縮し、ＣＰＵの処理効率を改善する例を説明する。
【００１８】
図１は、本実施の形態に係るサーボアンプ装置１の構成例を示す。
【００１９】
１は、サーボアンプ装置（以下、サーボアンプと記述する）である。
２は、プロセッサ装置たるＣＰＵ（もしくはマイコン）である。
３は、メモリアクセラレータ（以下、アクセラレータ装置又はアクセラレータと記述する）である。
４は、通信用ＩＣであり、指令データ又は応答データを蓄積するための通信用バッファ４１を備えている。
５は、モータ制御用ＩＣである。
６は、モータである。
７は、ネットワークである。
【００２０】
次に、本実施の形態に係るアクセラレータ装置３の構成例を図４を参照して説明する。
【００２１】
図４において、受信データ読み出し部３１は、通信用バッファ４１から指令データ（受信データの例）を読み出す。
後述するように、ＣＰＵ２は、所定の時間間隔の読み出しタイミングで繰り返しリードアクセスを行う。
受信データ読み出し部３１には、通信用バッファ４１から規定データサイズ分のデータを読み出すのに要する時間（バッファ読み出し時間）が設定されている。
そして、受信データ読み出し部３１は、ＣＰＵ２の読み出しタイミングに先立ち、バッファ読み出し時間に基づき、ＣＰＵ２の読み出しタイミングまでに規定データサイズ分の指令データの読み出しが完了する開始タイミングにて、通信用バッファ４１から規定データサイズ分の指令データの読み出しを開始する。
より具体的には、受信データ読み出し部３１は、ＣＰＵ２の読み出しタイミングからバッファ読み出し時間と所定のガード時間とを合算した時間を遡ったタイミングを、開始タイミングとする。
ガード時間は、例えば、バッファ読み出し時間の１／１０以下である。
そして、受信データ読み出し部３１は、ＣＰＵ２の読み出しタイミングが到来する時点では、指令データの読み出しを完了している。
このように、本実施の形態に係る受信データ読み出し部３１は、ＣＰＵ２の読み出しタイミングに間に合う範囲内で可能な限り通信用バッファ４１からの読み出しを遅らせて、ＣＰＵ２に最新の指令データを出力できるようにしている。
【００２２】
受信データバッファ３２は、受信データ読み出し部３１が通信用バッファ４１から読み出した指令データを一時的に蓄積する。
【００２３】
受信データ出力部３３は、ＣＰＵ２の読み出しタイミングにて、受信データ読み出し部３１により予め読み出され、受信データバッファ３２に蓄積されている指令データをＣＰＵ２に出力する。
【００２４】
タイマ３４は、受信データ読み出し部３１に対して通信用バッファ４１からの指令データの読み出し開始タイミングを通知する。
なお、図５は、タイマ３４のタイマ通知により受信データ読み出し部３１が指令データを通信用バッファ４１から読み出す場合の構成例であり、通信用ＩＣ４からの割込みを契機に受信データ読み出し部３１が指令データを読み出す場合は、タイマ３４は設けなくてもよい。
また、通信用ＩＣ４からの割込みを契機に受信データ読み出し部３１が指令データを読み出す場合は、通信用ＩＣ４による指令データの受信前に、受信データ読み出し部３１がバッファ読み出し時間を通信用ＩＣ４に通知しておき、通信用ＩＣ４側でバッファ読み出し時間に基づき読み出し開始タイミングを計時する。
【００２５】
送信データ入力部３５は、ＣＰＵ２から応答データ（送信データの例）を入力する。
【００２６】
送信データバッファ３６は、送信データ入力部３５が入力した応答データを一時的に蓄積する。
【００２７】
送信データ書き込み部３７は、所定の時間間隔ごとに、送信データバッファ３６に蓄積されている応答データを通信用バッファ４１に書き込む。
【００２８】
次に、本実施の形態に係るサーボアンプ１の動作例として、まず指令データの受信時の動作例を説明する。
【００２９】
ネットワーク７の先にはコントローラがあり、サーボアンプ１はネットワーク７を経由してコントローラから指令データを受信する。
サーボアンプ１の内部において、指令データはネットワーク７から通信用ＩＣ４が受信し、通信用ＩＣ内部の通信用バッファ４１に保持される。
この指令データは所定の時刻（タイマ通知の場合）で、もしくは通信用ＩＣ４からアクセラレータ３への割込み通知によってアクセラレータ３の受信データ読み出し部３１が通信用ＩＣ４の通信用バッファ４１からリードし、アクセラレータ３内部の受信データバッファ３２に保持される。
次に、所定の時刻でＣＰＵ２がアクセラレータ３を経由して通信用ＩＣ４にリードアクセスを行うが、実際にはアクセラレータ３の受信データ出力部３３が指令データをＣＰＵ２のデータバスに出力する。
そしてＣＰＵ２は、必要に応じて、受け取った指令データに対して演算等を行い、モータ制御用ＩＣ５へ指令データを渡す。
モータ制御用ＩＣ５はＣＰＵ２から受け取った指令データによってモータ６を駆動する。
なお、アクセラレータ３は、ＣＰＵ２からのリードアクセスやライトアクセス、アクセラレータ３自身による通信用ＩＣ４へのリードアクセスやライトアクセスを同時に行うことが考えられるため、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等のハードウェアで実装することが望ましい。
【００３０】
続いて、応答データの送信時の動作例を説明する。
サーボアンプ１は、ネットワーク７を経由して応答データをコントローラに送信する。
サーボアンプ１の内部において、モータ制御用ＩＣ５は、モータ６の位置や速度等のステータス情報をＣＰＵ２へ通知し、ＣＰＵ２は、必要に応じて演算を行って応答データを作成する。
ＣＰＵ２は、所定の時刻でアクセラレータ３を経由して通信用ＩＣ４へのライトアクセスを行うが、実際にはアクセラレータ３の送信データ入力部３５がＣＰＵ２からの応答データを入力し、送信データバッファ３６に一時的に保持する。
その後、アクセラレータ３の送信データ書き込み部３７は、一時的に保持した応答データを通信用ＩＣ４にライトする。
【００３１】
以上が、指令データと応答データを転送するときの動作の説明であるが、以降ではＣＰＵ２とアクセラレータ３と通信用ＩＣ４が指令データをやり取りするに必要な時間やアクセスタイミングについて図２を用いて説明し、その次に応答データをやり取りするのに必要な時間やアクセスタイミングについて図３を用いて説明する。
【００３２】
まずは、指令データの転送について図２を用いて説明する。
【００３３】
指令データは、ＣＰＵ２やアクセラレータ３から通信用ＩＣ４に対してリードアクセスを行うことでデータ転送が行われる。
図２において、Ｔｒ１は、ＣＰＵ２がアクセラレータ３から指令データを読み出す際のリードアクセス時間である。
つまり、Ｔｒ１は、アクセラレータ３の受信データ出力部３３が指令データをＣＰＵ２に出力するのに要する時間である、
Ｔｒ２は、アクセラレータ３が通信用ＩＣ４から指令データを読み出す際のリードアクセス時間である。
つまり、Ｔｒ２は、アクセラレータ３の受信データ読み出し部３１が通信用バッファ４１から指令データを読み出すのに要する時間（バッファ読み出し時間）である。
Ｔｒ１とＴｒ２は、それぞれ複数回のリードアクセスの合計時間である。
また、Ｔｇは、ガード時間である。
ガード時間Ｔｇは、アクセラレータ３の受信データ読み出し部３１が最後の指令データを受信データバッファ３２に格納するのに要する時間、受信データ出力部３３が受信データバッファ３２から最初の指令データを読み出すのに要する時間をもとに決定すればよい。
つまり、ガード時間Ｔｇの間に受信データ読み出し部３１による最後の指令データの受信データバッファ３２への格納、受信データ出力部３３による受信データバッファ３２からの最初の指令データの読み出し、ＣＰＵ２への出力が行われるようにする。
アクセラレータ３が指令データをリードするためにアクセスする通信用ＩＣ４のアドレス（通信用バッファ４１のアドレス）とデータサイズは事前に決めておき、ＣＰＵ２からアクセラレータ３に設定しておく。
図２に示すように、アクセラレータ３の受信データ読み出し部３１は、ＣＰＵ１の読み出しタイミングからリードアクセス時間Ｔｒ２とガード時間Ｔｇとを合算した時間（Ｔｒ２＋Ｔｇ）を遡ったタイミングにおいて指令データの読み出しを開始する。
このように、通信用ＩＣ４のアクセス応答性能が低く、ＣＰＵ２が通信用ＩＣ４にリードアクセスを行う場合はＴｒ２の時間を要するが、事前にアクセラレータ３が通信用ＩＣ４からリードおくことにより、ＣＰＵ２のリードアクセス時間はＴｒ１で済む。
【００３４】
次に、リードアクセスのタイミングとして、ＣＰＵ２はタイマ等によってＴｒ＿ｃｙｃｌｅの時間間隔でアクセラレータ３を経由して通信用ＩＣ４に対してリードアクセスを行う。
アクセラレータ３が通信用ＩＣ４にリードアクセスするタイミングは、幾つか方法が考えられる。
１つはＣＰＵ２と同様、タイマ等によって通信用ＩＣ４へのリードタイミングを決める方法である。
もう１つは、通信用ＩＣ４がネットワーク７からの指令データ受信完了をアクセラレータ３に対して割込み通知し、これをトリガとしてアクセラレータ３が通信用ＩＣ４からリードアクセスする方法が考えられる。
なお、通信用ＩＣ４がネットワーク７から指令データを受信した直後にアクセラレータ３が通信用ＩＣ４から指令データをリードし、その直後にＣＰＵ２からのリードアクセスを行えば、通信用ＩＣが指令データを受信してからＣＰＵ２がリードするまでの時間が短く、コントローラが指令データを送出してからサーボアンプがモータを駆動するまでの時間を短くできる。
後者の割り込みによる方法であれば、この様な要件にも容易に対応できると考えられる。
【００３５】
ここで、データの更新と泣き別れについて説明する。
ＣＰＵ２がアクセラレータ３から指令データをリードするタイミング、同じくアクセラレータ３が通信用ＩＣ４から指令データをリードするタイミングでは、それぞれ前回リードした指令データから更新されていない可能性がある。
その際は、前回の指令データをそのまま出力するのが、サーボ制御システムのデータ転送では一般的な考え方である。
ただし、リードしている最中に、あるアドレスのワードから新規のデータに更新されてしまうこと（データの泣き別れ）は望ましくなく、アクセラレータ３や通信用ＩＣ４は３面バッファ等でデータの完全性を保証しなければならない。
【００３６】
以上は、指令データの転送についてであるが、続いて応答データの転送について図３を用いて説明する。
【００３７】
応答データは、ＣＰＵ２からアクセラレータ３への書き込み、更には、アクセラレータ３から通信用ＩＣ４への書き込みによりデータ転送が行われる。
図３において、Ｔｗ１は、ＣＰＵ２がアクセラレータ３に応答データを書き込む際のライトアクセス時間である。
Ｔｗ２は、アクセラレータ３が通信用ＩＣ４に応答データを書き込む際のライトアクセス時間である。
それぞれ、Ｔｗ１とＴｗ２は、複数回のライトアクセスの合計時間である。
このように、通信用ＩＣ４のアクセス応答性能が低く、ＣＰＵ２が通信用ＩＣ４にライトアクセスを行う場合はＴｗ２の時間を要するが、一時的にアクセラレータ３が応答データを保持することにより、ＣＰＵ２のライトアクセス時間はＴｗ１で済む。
【００３８】
次にライトアクセスのタイミングとして、ＣＰＵ２はタイマ等によってＴｗ＿ｃｙｃｌｅの時間間隔でアクセラレータ３を経由して通信用ＩＣ４に対してライトアクセスを行う。
なお、一般的にＴｗ＿ｃｙｃｌｅと図２のＴｒ＿ｃｙｃｌｅの時間間隔は同一である。
【００３９】
アクセラレータ３は、ＣＰＵ２からライトアクセスがあった際にデータと同時にアドレスも保持しておくことで、後でライトアクセスすべき通信用ＩＣ４のアドレスを把握できる。
もしくは、指令データのリード時と同じく、アクセラレータ３が応答データをライトするためにアクセスする通信用ＩＣ４のアドレス（通信用バッファ４１のアドレス）とデータサイズは事前に決めておき、ＣＰＵ２からアクセラレータ３に設定しておく方法も考えられる。
【００４０】
アクセラレータ３が通信用ＩＣ４にライトアクセスするタイミングを決める方法は、リード時と同じく、アクセラレータ３内部にタイマを持ち、Ｔｗ＿ｃｙｃｌｅと同じ時間間隔で、アクセラレータ３が自動的に通信用ＩＣ４にアクセスする方法がある。
もしくは、Ｔｗ＿ｃｙｃｌｅごとのＣＰＵ２からのライトアクセスをトリガとして、順次ＣＰＵ２からライトされる応答データを、アクセラレータ３が通信用ＩＣ４にライトする方法が考えられる。
【００４１】
以上のように、ＣＰＵ２が指令データのリードアクセスを行う際には、アクセラレータ３が事前に通信用ＩＣ４からリードしておいた指令データをＣＰＵ２のデータバスに出力することで、ＣＰＵ２のリードアクセス時間を短縮できる。
同様に、ＣＰＵ２が応答データのライトアクセスを行う際には、アクセラレータ３が一時的に応答データを受け取り、後でアクセラレータ３が通信用ＩＣ４に応答データをライトすることで、ＣＰＵ２のライトアクセス時間を短縮できる。
【００４２】
なお、本発明は、開示された形態に限定されるものではなく、例えば、実施の形態１ではアクセラレータ３内部にバッファを有することを前提として説明したが、指令データや応用データを一時的に保持するためのメモリをアクセラレータ３の外部に持つ形態も考えられる。
また、以上の説明では、ＦＡシステムにおけるサーボアンプ装置において、ＣＰＵが通信用ＩＣ４にアクセスする際のアクセス時間の短縮を図る方式を説明したが、本方式の適用対象の装置はサーボアンプ装置に限らない。
【００４３】
以上、本実施の形態では、
所定の時間間隔で通信用ＩＣにリードアクセスを行うＣＰＵを有する機器において、ＣＰＵと通信用ＩＣの中間に位置するアクセラレータが、通信用ＩＣから事前にデータをリードしておき、ＣＰＵから通信用ＩＣにリードアクセスがあった際に、アクセラレータが持つデータをリードデータとしてＣＰＵに返すことで、ＣＰＵの外部ＩＯアクセス時間を短縮する方法を説明した。
【００４４】
また、本実施の形態では、
所定の時間間隔で通信用ＩＣにライトアクセスを行うＣＰＵを有する機器において、ＣＰＵと通信用ＩＣの中間に位置するアクセラレータが、ＣＰＵからのライトデータを一時的に保持し、アクセラレータが通信用ＩＣにデータをライトすることにより、ＣＰＵ側のバストランザクションを素早く終えることで、ＣＰＵの外部ＩＯアクセス時間を短縮する方法を説明した。
【符号の説明】
【００４５】
１  サーボアンプ装置、２  ＣＰＵ、３  アクセラレータ装置、４  通信用ＩＣ、５  モータ制御用ＩＣ、６  モータ、７  ネットワーク、３１  受信データ読み出し部、３２  受信データバッファ、３３  受信データ出力部、３４  タイマ、３５  送信データ入力部、３６  送信データバッファ、３７  送信データ書き込み部、４１  通信用バッファ。
【図１】
2012134896.tif 000003
【図２】
2012134896.tif 000004
【図３】
2012134896.tif 000005
【図４】
2012134896.tif 000006
【図５】
2012134896.tif 000007