JP2015014866A - 電子機器、画像形成装置およびプログラム - Google Patents
電子機器、画像形成装置およびプログラム Download PDFInfo
- Publication number
- JP2015014866A JP2015014866A JP2013140540A JP2013140540A JP2015014866A JP 2015014866 A JP2015014866 A JP 2015014866A JP 2013140540 A JP2013140540 A JP 2013140540A JP 2013140540 A JP2013140540 A JP 2013140540A JP 2015014866 A JP2015014866 A JP 2015014866A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- area
- unit
- information indicating
- processing
- 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.)
- Pending
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
【課題】低レイテンシが要求される処理が有ることを示す情報が取得されてから転送されるまでの時間を短縮する。
【解決手段】取得部21は、他の電子機器から転送されたパケットを取得する。判定部22は、取得部21により取得されたパケットの割り込み領域に書き込まれている情報に基づいて割り込みの有無を判定する。受付部23は、割り込みを開始させるための情報を受け付ける。転送部24は、取得部21により取得されたパケットを他の電子機器に転送する。書き込み部25は、判定部22により割り込みが有ると第1のパケットにおいて判定された場合、第1のパケットよりも先に転送される第2のパケットの割り込み領域に、割り込みが有ることを示す情報を書き込む。書き込み部25は、割り込みが有ることを示す情報を、第2のパケットが転送部24により転送される前に書き込む。
【選択図】図2
【解決手段】取得部21は、他の電子機器から転送されたパケットを取得する。判定部22は、取得部21により取得されたパケットの割り込み領域に書き込まれている情報に基づいて割り込みの有無を判定する。受付部23は、割り込みを開始させるための情報を受け付ける。転送部24は、取得部21により取得されたパケットを他の電子機器に転送する。書き込み部25は、判定部22により割り込みが有ると第1のパケットにおいて判定された場合、第1のパケットよりも先に転送される第2のパケットの割り込み領域に、割り込みが有ることを示す情報を書き込む。書き込み部25は、割り込みが有ることを示す情報を、第2のパケットが転送部24により転送される前に書き込む。
【選択図】図2
Description
本発明は、電子機器、画像形成装置およびプログラムに関する。
コンピュータに割り込み処理を実行させる技術が知られている。特許文献1には、画像形成装置の制御システムに関する技術として、第1ユニットが割り込みの有無を示す割り込み情報を第2ユニットに送信し、第2ユニットに割り込み処理を実行させることが記載されている。
本発明は、低レイテンシが要求される処理が有ることを示す情報が取得されてから転送されるまでの時間を短縮することを目的とする。
請求項1に係る電子機器は、低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得する取得手段と、前記取得手段により取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定する判定手段と、前記取得手段により取得されたパケットを他の電子機器に転送する転送手段と、前記判定手段により前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが前記転送手段により転送される前に書き込む書き込み手段とを有する。
請求項2に係る電子機器は、請求項1に記載の構成において、前記パケットは前記領域を複数含んでおり、前記書き込み手段は、前記第2のパケットの複数の前記領域のうち、前記判定手段により前記処理が有ると前記第1のパケットにおいて判定された後に転送が開始されるのが最も早い領域に、前記処理が有ることを示す情報を書き込むことを特徴とする。
請求項3に係る電子機器は、請求項1または2に記載の構成において、前記パケットの転送先の電子機器が複数あり、かつ当該複数の電子機器が階層化されている場合、前記書き込み手段は、自機よりも階層が上位の電子機器に転送される前記第2のパケットに前記処理が有ることを示す情報を書き込むことを特徴とする。
請求項4に係る電子機器は、請求項1ないし3のいずれか1項に記載の構成において、低レイテンシが要求される処理を開始させるための情報を受け付ける受付手段を有し、前記書き込み手段は、前記受付手段により前記情報が受け付けられた場合、前記取得手段により取得されたパケットの前記領域に、前記処理が有ることを示す情報を書き込むことを特徴とする。
請求項5に係る電子機器は、請求項1ないし3のいずれか1項に記載の構成において、低レイテンシが要求される処理を開始させるための情報を受け付ける受付手段と、前記パケットを生成する生成手段とを有し、前記転送手段は、前記生成手段により生成されたパケットを他の電子機器に転送し、前記書き込み手段は、前記受付手段により前記情報が受け付けられた場合、前記生成手段により生成されたパケットの前記領域に、前記処理があることを示す情報を書き込むことを特徴とする。
請求項6に係る電子機器は、請求項1ないし5のいずれか1項に記載の構成において、前記パケットは、前記領域を決められたデータ長の間隔で複数含むことを特徴とする。
請求項7に係る画像形成装置は、デイジーチェーン接続により接続された複数の電子機器を有し、前記電子機器は、低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得する取得手段と、前記取得手段により取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定する判定手段と、前記取得手段により取得されたパケットを他の電子機器に転送する転送手段と、前記判定手段により前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが前記転送手段により転送される前に書き込む書き込み手段とを有する。
請求項8に係るプログラムは、コンピュータに、低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得するステップと、取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定するステップと、取得されたパケットを他のコンピュータに転送するステップと、前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが転送される前に書き込むステップとを実行させる。
請求項1、7、および8に係る発明によれば、第1のパケットに書き込まれた、低レイテンシが要求される処理が有ることを示す情報が、第2のパケットに書き込まれずに転送される場合に比べて、当該情報が取得されてから転送されるまでの時間が短縮される。
請求項2に係る発明によれば、第1のパケットに書き込まれた、低レイテンシが要求される処理が有ることを示す情報が、第2のパケットの複数の領域のうち転送が開始されるのが最も早い領域に書き込まれない場合に比べて、当該情報が取得されてから転送されるまでの時間が短縮される。
請求項3に係る発明によれば、パケットの転送先の電子機器が複数ある場合に、低レイテンシが要求される処理が有ることを示す情報が、自機よりも階層が下位の電子機器に転送されることが防止される。
請求項4に係る発明によれば、低レイテンシが要求される処理を開始させるための情報が受け付けられた場合に、当該処理が有ることを示す情報が書き込まれたパケットが転送される。
請求項5に係る発明によれば、他の電子機器からパケットが取得されない場合であっても、低レイテンシが要求される処理が有ることを示す情報が書き込まれたパケットが転送される。
請求項6に係る発明によれば、第1のパケットの取得と第2のパケットの転送とが並行して行われる場合であっても、第1のパケットに書き込まれた、低レイテンシが要求される処理が有ることを示す情報が、第2のパケットに書き込まれる。
請求項2に係る発明によれば、第1のパケットに書き込まれた、低レイテンシが要求される処理が有ることを示す情報が、第2のパケットの複数の領域のうち転送が開始されるのが最も早い領域に書き込まれない場合に比べて、当該情報が取得されてから転送されるまでの時間が短縮される。
請求項3に係る発明によれば、パケットの転送先の電子機器が複数ある場合に、低レイテンシが要求される処理が有ることを示す情報が、自機よりも階層が下位の電子機器に転送されることが防止される。
請求項4に係る発明によれば、低レイテンシが要求される処理を開始させるための情報が受け付けられた場合に、当該処理が有ることを示す情報が書き込まれたパケットが転送される。
請求項5に係る発明によれば、他の電子機器からパケットが取得されない場合であっても、低レイテンシが要求される処理が有ることを示す情報が書き込まれたパケットが転送される。
請求項6に係る発明によれば、第1のパケットの取得と第2のパケットの転送とが並行して行われる場合であっても、第1のパケットに書き込まれた、低レイテンシが要求される処理が有ることを示す情報が、第2のパケットに書き込まれる。
図1は、本発明の一実施形態に係る画像形成装置1の概略を説明する図である。画像形成装置1は、複写機、プリンタ、スキャナ、およびファクシミリなどとして機能する装置である。画像形成装置1は、制御ユニット10と、複数の動作ユニット20(20Aから20N)とを有する。制御ユニット10は、画像形成装置1の本体であり、動作ユニット20の動作を制御する。制御ユニット10は、実行される処理を示す情報を含むパケットを生成し、動作ユニット20に転送する。なお、ここでいう「パケット」は、OSI参照モデルの第3層で用いられるPDU(Protocol Data Unit)のみを指すのではなく、単にデータを送る単位の意味として用いられる。制御ユニット10は、動作ユニット20から信号を取得し、低レイテンシが要求される処理を実行する。「低レイテンシが要求される処理」とは、他の処理に先立って実行される処理(いわゆる割り込み)をいう。この例で、割り込みは、動作ユニット20において発生する。
動作ユニット20(電子機器の一例)は、画像形成装置1の機能を拡張するためのいわゆる拡張ボード(例えば、パラレルインタフェースボード、無線LAN(Local Area Network)ボード、イーサネット(登録商標)ボード、メモリボード、画像データ変換ボードなど)であり、制御ユニット10による制御に従って、画像形成装置1の各種機能を実行する。動作ユニット20は、画像形成装置1が製造された時点で原始的に画像形成装置1に備わっているユニットに限らず、画像形成装置1が製造された後にユーザの注文に応じて取り付けられるユニットであってもよい。動作ユニット20は、制御ユニット10により転送されたパケットに含まれる情報に従って、各種機能を実行する。具体的には、動作ユニット20は、自らに宛てられたパケットを取得するとパケットからデータを復元し、このデータに応じた処理を実行する。この場合、動作ユニット20は、このパケットを破棄する(他の動作ユニット20に転送しない)。動作ユニット20は、また、他の動作ユニット20に宛てられたパケットを取得すると、当該パケットを転送する。動作ユニット20は、割り込みの有無を示す割り込み情報を、転送するパケットに書き込む。この例で、割り込み情報は0または1の2値のデータで、0のときは割り込みが無いことを、1のときは割り込みがあることを示す。割り込み情報は、パケットの決められた領域(以下、「割り込み領域」という)に書き込まれる。
図1において、制御ユニット10と複数の動作ユニット20とは、通信ケーブルCを介してデイジーチェーン接続により接続されている。通信ケーブルCは、複数の信号線が束ねられて構成されており、下りの信号線(制御ユニット10から動作ユニット20Nに向かってパケットを送る信号線)と、上りの信号線(動作ユニット20Nから制御ユニット10に向かってパケットを送る信号線)とを有する。画像形成装置1において、制御ユニット10と、複数の動作ユニット20との通信は、制御ユニット10または動作ユニット20において実行される処理が発生していない場合にも行なわれる。以下では、制御ユニット10またはある動作ユニット20からみて、パケットの転送先となる側を「下流側」と表現し、パケットの取得元となる側を「上流側」と表現する。
図2は、動作ユニット20の機能的構成を示すブロック図である。動作ユニット20は、取得部21と、判定部22と、受付部23と、転送部24と、書き込み部25とを有する。取得部21は、制御ユニット10または他の動作ユニット20から転送されたパケットを取得する。判定部22は、取得部21により取得されたパケットの割り込み領域に書き込まれている情報に基づいて割り込みの有無を判定する。受付部23は、割り込みを開始させるための情報を受け付ける。転送部24は、取得部21により取得されたパケットを制御ユニット10または他の動作ユニット20に転送する。書き込み部25は、判定部22により割り込みが有ると第1のパケットにおいて判定された場合、第1のパケットよりも先に転送される第2のパケットの割り込み領域に、割り込みが有ることを示す情報を書き込む。書き込み部25は、割り込みが有ることを示す情報を、第2のパケットが転送部24により転送される前に書き込む。書き込み部25は、また、受付部23により割り込みを開始させるための情報が受け付けられた場合、転送部24により転送されるパケットの割り込み領域に、割り込みがあることを示す情報を書き込む。
図3は、制御ユニット10のハードウェア構成を示すブロック図である。制御ユニット10は、CPU(Central Processing Unit)101と、GPU(Graphics Processing Unit)102と、ROM(Read Only Memory)103と、RAM(Random Access Memory)104と、インタフェース105と、バス106とを有する。CPU101は、プログラムを実行することにより制御ユニット10の各部を制御する制御装置である。GPU102は、プログラムを実行することにより画像データの処理を行う装置である。ROM103は、各種のプログラムおよびデータを記憶した不揮発性の記憶装置である。RAM104は、データを記憶する揮発性の記憶装置である。インタフェース105は、動作ユニット20または他の外部装置と通信を行う。インタフェース105は、制御部1051と、入力部1052と、出力部1053とを有する。制御部1051は、あらかじめ決められた規格(例えばThunderbolt(登録商標))のインタフェースチップであり、インタフェース105の各部を制御する。入力部1052は、この規格の入力端子を含む。出力部1053は、この規格の出力端子を含む。バス106は、CPU101、GPU102、ROM103、RAM104、およびインタフェース105を接続するための伝送路である。バス106には、例えば、PCI Express(登録商標)規格のシリアルインタフェースが用いられる。
図4は、動作ユニット20のハードウェア構成を示すブロック図である。動作ユニット20は、MCU(Micro Control Unit)201と、ROM202と、RAM203と、インタフェース204と、バス205とを有する。MCU201は、プログラムを実行することにより動作ユニット20の各部を制御する制御装置である。ROM202は、各種のプログラムおよびデータを記憶した不揮発性の記憶装置である。RAM203は、データを記憶する揮発性の記憶装置である。インタフェース204は、制御ユニット10または他の動作ユニット20などの電子機器と通信を行う。インタフェース204は、制御部2041と、入力部2042と、出力部2043とを有する。制御部2041は、前述の規格のインタフェースチップであり、インタフェース204の各部を制御する。制御部2041は、割り込みの有無を記憶するフラグレジスタを有する。このフラグレジスタの初期値は「0」であり、「0」は割り込みが無いことを、「1」は割り込みがあることを示す。制御部2041は、パケットの割り込み領域を確認して割り込みが有ると判定した場合、または、自らの動作ユニット20において割り込みが発生した場合に、フラグレジスタの値を「1」に書き換える。入力部2042は、この規格の入力端子を含む。出力部2043は、この規格の出力端子および出力バッファを含む。出力部2043は、フラグレジスタの値が「1」になった後で最初に出力バッファに転送された割り込み領域に、割り込み有りを示す情報を書き込む。バス205は、MCU201、ROM202、RAM203、およびインタフェース204を接続するための伝送路(例えば、PCI Express規格のシリアルインタフェース)である。なお、動作ユニット20は、図4に示したハードウェア構成に加えて、実行される各種機能に応じた構成を備えていてもよい。
動作ユニット20において、プログラムを実行しているMCU201により制御されている制御部2041は、判定部22の一例である。制御部2041により制御されている入力部2042は、取得部21および受付部23の一例である。制御部2041により制御されている出力部2043は、転送部24および書き込み部25の一例である。
図5は、動作ユニット20がパケットを転送する処理を示すフローチャートである。以下の処理は、例えば、画像形成装置1の電源が投入されたことを契機として開始される。ステップS1において、MCU201は、制御ユニット10または他の動作ユニット20により転送されたパケットの読み込みを開始する。以下では、読み込まれるパケットを「対象パケット」と表現する。また、動作ユニット20で複数のパケットが転送される場合において、対象パケットよりも先に下流側の制御ユニット10または動作ユニット20に転送されるパケットを「先行パケット」と表現する。なお、対象パケットの読み込みと先行パケットの転送とは、並行して行なわれる。ステップS1においてパケットの読み込みが開始されると、MCU201は、パケットの読み込みを行いながら順次ステップS2からステップS5の処理を行う。
図6は、本実施形態におけるデータ転送で用いられるパケットPを例示する図である。パケットPは、ヘッダHとペイロードPLとを有する。ヘッダHには、パケットPの宛先を示すアドレスおよび送信元のアドレスなどの管理情報が含まれる。ペイロードPLには、管理情報以外の情報であって、転送の対象となる情報が含まれる。ペイロードPLは、割り込み領域Dinを有する。割り込み領域Dinは、例えば、決められたデータ長の間隔で複数設けられる。図6の例では、ペイロードPLは、ヘッダHの先頭からデータ長dの間隔で3つの割り込み領域Din1、Din2、およびDin3を有する。
再び図5を参照する。ステップS2において、MCU201は、対象パケットの割り込み領域に書き込まれている割り込み情報が割り込み有りを示しているか否かを判断する。割り込み情報が割り込み有りを示していると判断された場合(ステップS2:YES)、MCU201は、フラグレジスタの値を「1」に書き換えた後、処理をステップS4に移行する。割り込み情報が割り込み無しを示していると判断された場合(ステップS2:NO)、MCU201は、処理をステップS3に移行する。
ステップS3において、MCU201は、自らの動作ユニット20において割り込みが発生したか(すなわち割り込みを開始させるための情報が受け付けられたか)否かを判断する。割り込みが発生したと判断された場合(ステップS3:YES)、MCU201は、フラグレジスタの値を「1」に書き換えた後、処理をステップS4に移行する。割り込みが発生していないと判断された場合(ステップS3:NO)、MCU201は、処理をステップS5に移行する。
ステップS4において、MCU201は、インタフェース204から他の装置に転送されるパケットのうち、この時点(フラグレジスタの値が「1」になった時点)において最も早く転送されるパケットの割り込み領域に、割り込み有りを示す情報を書き込む処理を行う。具体的には、MCU201は、ステップS4の時点において、最初に出力バッファに転送された割り込み領域に、割り込み有りを示す情報を書き込む。転送されている先行パケットがある場合には、MCU201は、当該先行パケットの未だ転送が開始されていない割り込み領域のうち最も早く転送が開始される割り込み領域に、割り込み有りを示す情報を書き込む処理を行う。割り込み有りを示す情報を先行パケットに乗せ換えるという意味で、以下この処理を「乗せ換え処理」という。なお、ステップS4の時点において、転送されている先行パケットが無い場合には、MCU201は、対象パケットの割り込み領域のうち最も早く転送が開始される割り込み領域に、割り込み有りを示す情報を書き込む。例えば、割り込み領域Din3に割り込み有りを示す情報が書き込まれていた場合には、MCU201は、対象パケットの割り込み領域Din1に割り込み有りを示す情報を書き込む。ステップS4において、乗せ換え処理が行われる前に、割り込み有りを示す情報が書き込まれていた元の割り込み領域については、割り込み無しを示す情報に書き換えられてもよく(1が0に書き換えられてもよく)、また、書き換えられなくてもよい。乗せ換え処理を行うと、MCU201は、フラグレジスタの値を「0」に書き換える。
図7は、動作ユニット20による乗せ換え処理の例を示す図である。図7は、動作ユニット20Bが乗せ換え処理を行う場合の例を示している。パケットP1は先行パケットを表し、パケットP2は対象パケットを表す。図7において、動作ユニット20Bは、パケットP1を動作ユニット20Aに転送し、パケットP2を図示せぬ動作ユニット20Cから取得している。パケットP1の転送とパケットP2の読み込みとは並行に行なわれている。図7において、動作ユニット20Bは、パケットP2に書き込まれている割り込み有りを示す情報I1を、パケットP1の割り込み領域Din3に書き込む処理を行っている。図7の例で、パケットP1の割り込み領域Din3は、動作ユニット20Bの制御部2041が、パケットP2に割り込み有りを示す情報I1が書き込まれていると判断し、フラグレジスタの値を「1」に書き換えた後に、最初に出力バッファに転送される(最も早く転送が開始される)割り込み領域である。
図8は、動作ユニット20による乗せ換え処理の別の例を示す図である。図8は、動作ユニット20Bが乗せ換え処理を行う場合の別の例を示している。図8において、動作ユニット20Bは、自らの動作ユニットにおいて発生した割り込み(矢印aI)について、割り込み有りを示す情報I2を、パケットP1の割り込み領域Din3に書き込む処理を行っている。図8の例で、パケットP1の割り込み領域Din3は、動作ユニット20Bの制御部2041が、矢印aIで示された割り込みが発生したと判断し、フラグレジスタの値を「1」に書き換えた後に、最初に出力バッファに転送される(最も早く転送が開始される)割り込み領域である。
ステップS5において、MCU201は、対象パケットの読み込みが終了したか否かを判断する。対象パケットの読み込みが終了したと判断された場合(ステップS5:YES)、MCU201は、処理をステップS6に移行する。対象パケットの読み込みが終了していないと判断された場合(ステップS5:NO)、MCU201は、処理をステップS2に移行し、引き続き対象パケットを読み込む。
ステップS6において、MCU201は、下流側の制御ユニット10または動作ユニット20に対して、読み込みが終了したパケットの転送を開始する。なお、読み込んだパケットの宛先が、自らの動作ユニット20である場合には、MCU201は、当該パケットに含まれる情報が示す処理の実行を開始し、当該パケットを破棄する(他の装置に転送しない)。複数の動作ユニット20の各々が図5に示す処理を行うと、複数の動作ユニット20のいずれかで発生した割り込み情報は、制御ユニット10に伝送される。
以上の処理により、各動作ユニット20において、対象パケットに書き込まれた割り込み有りを示す情報は、先行パケットの割り込み領域に書き込まれる。したがって、対象パケットに書き込まれた割り込み有りを示す情報が、先行パケットの割り込み領域に書き込まれることなくそのまま転送された場合に比べて、当該割り込み有りを示す情報が制御ユニット10に到達するまでの時間が短縮される。この時間短縮の効果は、動作ユニット20の数が多くなり、割り込み有りを示す情報が動作ユニット20で転送される回数が増えるほど大きくなる。
本発明は、上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下で説明する変形例のうち、2つ以上のものが組み合わされて用いられてもよい。
(1)変形例1
乗せ換え処理は、複数の動作ユニット20の全てにより実行されなくてもよい。例えば、複数の動作ユニット20のうち一部の動作ユニット20は、乗せ換え処理を行うことなく、パケットを転送してもよい。この場合、当該動作ユニット20においては、ステップS2からステップS4の処理は省略される。また、割り込みが発生する動作ユニット20は、複数の動作ユニット20の全てに限らない。この場合、割り込みが発生しない動作ユニット20においては、ステップS3の処理は省略されてもよい。さらに、動作ユニット20は、ステップS2の判断を行わずに、ステップS3の判断を行ってもよい。
乗せ換え処理は、複数の動作ユニット20の全てにより実行されなくてもよい。例えば、複数の動作ユニット20のうち一部の動作ユニット20は、乗せ換え処理を行うことなく、パケットを転送してもよい。この場合、当該動作ユニット20においては、ステップS2からステップS4の処理は省略される。また、割り込みが発生する動作ユニット20は、複数の動作ユニット20の全てに限らない。この場合、割り込みが発生しない動作ユニット20においては、ステップS3の処理は省略されてもよい。さらに、動作ユニット20は、ステップS2の判断を行わずに、ステップS3の判断を行ってもよい。
乗せ換え処理において、割り込み有りを示す情報が書き込まれる割り込み領域は、必ずしも最も早く転送される割り込み領域に限らない。例えば、MCU201は、ステップS4の時点において、最初に出力バッファに転送された割り込み領域の次の割り込み領域に、割り込み有りを示す情報を書き込んでもよい。
ステップS4の時点において、転送されている先行パケットが無い場合には、乗せ換え処理は行われなくてもよい。例えば、対象パケットの割り込み領域Din3に割り込み有りを示す情報が書き込まれていた場合において、対象パケットの割り込み領域Din1に割り込み有りを示す情報が書き込まれなくてもよい。
(2)変形例2
割り込み領域Dinに書き込まれる割り込み情報は一つに限らない。割り込み領域Dinには複数の割り込み情報が書き込まれてもよい。
割り込み領域Dinに書き込まれる割り込み情報は一つに限らない。割り込み領域Dinには複数の割り込み情報が書き込まれてもよい。
図9は、変形例2に係る乗せ換え処理を示す図である。図9は、動作ユニット20Bが乗せ換え処理を行う場合の変形例を示している。図9において、動作ユニット20Bは、パケットP2に書き込まれている割り込み有りを示す情報I1を、パケットP1の割り込み領域Din3に書き込む処理を行っている。動作ユニット20Bは、また、自らの動作ユニットにおいて発生した割り込み(矢印aI)について、割り込み有りを示す情報I2を、パケットP1の割り込み領域Din3に書き込む処理を行っている。
(3)変形例3
動作ユニット20がパケットを転送する転送先の電子機器は、1つである場合に限らない。例えば、転送先の電子機器は複数であって、これらの電子機器は階層化されていてもよい。この場合、乗せ換え処理において、動作ユニット20は、自らの動作ユニットよりも階層が上位の電子機器に転送される先行パケットを特定し、対象パケットに書き込まれている割り込み有りを示す情報を当該先行パケットの割り込み領域に書き込む。また、動作ユニット20は、自らの動作ユニットで発生した割り込みについて、割り込み有りを示す情報を、自らの動作ユニットよりも階層が上位の電子機器に転送される先行パケットの割り込み領域に書き込む。
動作ユニット20がパケットを転送する転送先の電子機器は、1つである場合に限らない。例えば、転送先の電子機器は複数であって、これらの電子機器は階層化されていてもよい。この場合、乗せ換え処理において、動作ユニット20は、自らの動作ユニットよりも階層が上位の電子機器に転送される先行パケットを特定し、対象パケットに書き込まれている割り込み有りを示す情報を当該先行パケットの割り込み領域に書き込む。また、動作ユニット20は、自らの動作ユニットで発生した割り込みについて、割り込み有りを示す情報を、自らの動作ユニットよりも階層が上位の電子機器に転送される先行パケットの割り込み領域に書き込む。
(4)変形例4
画像形成装置1におけるデータ転送で用いられるパケットは、制御ユニット10により生成される場合に限らない。パケットは、動作ユニット20により生成されてもよい。
画像形成装置1におけるデータ転送で用いられるパケットは、制御ユニット10により生成される場合に限らない。パケットは、動作ユニット20により生成されてもよい。
図10は、変形例に係る動作ユニット20の機能的構成を示すブロック図である。図10に示す動作ユニット20は、図2に示した機能的構成に加えて、パケットを生成する生成部26を有する。取得部21は、生成部26により生成されたパケットを取得する。書き込み部25は、受付部23により割り込みを開始させるための情報が受け付けられた場合、生成部26により生成されたパケット(すなわち転送部24により転送されるパケット)の割り込み領域に、割り込みがあることを示す情報を書き込む。変形例4に係る動作ユニット20において、プログラムを実行しているMCU201は、生成部26の一例である。また、プログラムを実行しているMCU201により制御されている制御部2041は、取得部21の一例である。
(5)変形例5
割り込み領域Dinは、パケットPに複数設けられている場合に限らない。パケットPは、1つの割り込み領域Dinを有していてもよい。別の例で、複数の割り込み領域Dinは、決められたデータ長の間隔で設けられる場合に限らない。この場合、パケットPには、各割り込み領域Dinの位置を示す情報が含まれていてもよい。
割り込み領域Dinは、パケットPに複数設けられている場合に限らない。パケットPは、1つの割り込み領域Dinを有していてもよい。別の例で、複数の割り込み領域Dinは、決められたデータ長の間隔で設けられる場合に限らない。この場合、パケットPには、各割り込み領域Dinの位置を示す情報が含まれていてもよい。
(6)変形例6
制御ユニット10と複数の動作ユニット20とが接続される方法は、図1に示した方法に限らない。例えば、図1において制御ユニット10と動作ユニット20Nとが互いに接続されていてもよい。
制御ユニット10と複数の動作ユニット20とが接続される方法は、図1に示した方法に限らない。例えば、図1において制御ユニット10と動作ユニット20Nとが互いに接続されていてもよい。
(7)その他の変形例
制御ユニット10および動作ユニット20のハードウェア構成は、図3および図4に示した構成に限らない。図5に示した各ステップの処理が実行されれば、制御ユニット10および動作ユニット20はどのようなハードウェア構成であってもよい。
制御ユニット10および動作ユニット20のハードウェア構成は、図3および図4に示した構成に限らない。図5に示した各ステップの処理が実行されれば、制御ユニット10および動作ユニット20はどのようなハードウェア構成であってもよい。
実施形態において、画像形成装置1によって実行されるプログラムは、磁気記録媒体(磁気テープ、磁気ディスク(HDD、FD(Flexible Disk))など)、光記録媒体(光ディスク(CD(Compact Disk)、DVD(Digital Versatile Disk))など)、光磁気記録媒体、半導体メモリ(フラッシュROMなど)などのコンピュータが読み取り可能な記録媒体に記憶した状態で提供されてもよい。また、このプログラムは、インターネットなどのネットワーク経由でダウンロードされてもよい。
1…画像形成装置、10…制御ユニット、20…動作ユニット、21…取得部、22…判定部、23…受付部、24…転送部、25…書き込み部、26…生成部、101…CPU、102…GPU、103…ROM、104…RAM、105…インタフェース、1051…制御部、1052…入力部、1053…出力部、106…バス、201…MCU、202…ROM、203…RAM、204…インタフェース、2041…制御部、2042…入力部、2043…出力部、205…バス
Claims (8)
- 低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得する取得手段と、
前記取得手段により取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定する判定手段と、
前記取得手段により取得されたパケットを他の電子機器に転送する転送手段と、
前記判定手段により前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが前記転送手段により転送される前に書き込む書き込み手段と
を有する電子機器。 - 前記パケットは前記領域を複数含んでおり、
前記書き込み手段は、前記第2のパケットの複数の前記領域のうち、前記判定手段により前記処理が有ると前記第1のパケットにおいて判定された後に転送が開始されるのが最も早い領域に、前記処理が有ることを示す情報を書き込む
ことを特徴とする請求項1に記載の電子機器。 - 前記パケットの転送先の電子機器が複数あり、かつ当該複数の電子機器が階層化されている場合、前記書き込み手段は、自機よりも階層が上位の電子機器に転送される前記第2のパケットに前記処理が有ることを示す情報を書き込む
ことを特徴とする請求項1または2に記載の電子機器。 - 低レイテンシが要求される処理を開始させるための情報を受け付ける受付手段を有し、
前記書き込み手段は、前記受付手段により前記情報が受け付けられた場合、前記取得手段により取得されたパケットの前記領域に、前記処理が有ることを示す情報を書き込む
ことを特徴とする請求項1ないし3のいずれか1項に記載の電子機器。 - 低レイテンシが要求される処理を開始させるための情報を受け付ける受付手段と、
前記パケットを生成する生成手段と
を有し、
前記転送手段は、前記生成手段により生成されたパケットを他の電子機器に転送し、
前記書き込み手段は、前記受付手段により前記情報が受け付けられた場合、前記生成手段により生成されたパケットの前記領域に、前記処理があることを示す情報を書き込む
ことを特徴とする請求項1ないし3のいずれか1項に記載の電子機器。 - 前記パケットは、前記領域を決められたデータ長の間隔で複数含む
ことを特徴とする請求項1ないし5のいずれか1項に記載の電子機器。 - デイジーチェーン接続により接続された複数の電子機器を有し、
前記電子機器は、
低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得する取得手段と、
前記取得手段により取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定する判定手段と、
前記取得手段により取得されたパケットを他の電子機器に転送する転送手段と、
前記判定手段により前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが前記転送手段により転送される前に書き込む書き込み手段と
を有する画像形成装置。 - コンピュータに、
低レイテンシが要求される処理の有無を示す情報が書き込まれる領域を有するパケットを取得するステップと、
取得されたパケットの前記領域に書き込まれている情報に基づいて前記処理の有無を判定するステップと、
取得されたパケットを他のコンピュータに転送するステップと、
前記処理が有ると第1のパケットにおいて判定された場合、当該第1のパケットよりも先に転送される第2のパケットの前記領域に、前記処理が有ることを示す情報を、当該第2のパケットが転送される前に書き込むステップと
を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013140540A JP2015014866A (ja) | 2013-07-04 | 2013-07-04 | 電子機器、画像形成装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013140540A JP2015014866A (ja) | 2013-07-04 | 2013-07-04 | 電子機器、画像形成装置およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015014866A true JP2015014866A (ja) | 2015-01-22 |
Family
ID=52436571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013140540A Pending JP2015014866A (ja) | 2013-07-04 | 2013-07-04 | 電子機器、画像形成装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015014866A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018097522A (ja) * | 2016-12-12 | 2018-06-21 | キヤノン株式会社 | 集積回路、情報処理装置、情報処理装置における割り込み制御方法、およびプログラム |
-
2013
- 2013-07-04 JP JP2013140540A patent/JP2015014866A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018097522A (ja) * | 2016-12-12 | 2018-06-21 | キヤノン株式会社 | 集積回路、情報処理装置、情報処理装置における割り込み制御方法、およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9898230B2 (en) | Information processing apparatus, system, and information processing method | |
JP5429572B2 (ja) | チェーン化デバイスシステムにおいてパラメータを設定し待ち時間を決定する方法 | |
KR102173089B1 (ko) | 인터페이스 회로 및 그것의 패킷 전송 방법 | |
JP4452690B2 (ja) | 電子装置、その制御方法、ホスト装置及びその制御方法 | |
CN108052750B (zh) | 基于fpga的spi flash控制器及其设计方法 | |
WO2013154541A1 (en) | Remote direct memory access with reduced latency | |
CN109417507B (zh) | 一种通过部分直接内存访问dma访问内存的方法和系统 | |
JP6290761B2 (ja) | データ転送制御システム、データ転送制御方法、及び、データ転送制御プログラム | |
US8521943B2 (en) | Data transmission system and method of reading data | |
US11336297B2 (en) | DMA transfer apparatus, method of controlling the same, communication apparatus, method of controlling the same, and non-transitory computer-readable storage medium | |
KR101736460B1 (ko) | 크로스-다이 인터페이스 스누프 또는 글로벌 관측 메시지 오더링 | |
JP2015014866A (ja) | 電子機器、画像形成装置およびプログラム | |
US20160266846A1 (en) | Communication apparatus and memory control method | |
JP2008042690A (ja) | 中継接続ユニット | |
US10452579B2 (en) | Managing input/output core processing via two different bus protocols using remote direct memory access (RDMA) off-loading processing system | |
JP6938399B2 (ja) | 通信装置、通信方法およびプログラム | |
JP6976786B2 (ja) | 通信装置および通信装置の制御方法 | |
JP2004056376A (ja) | 半導体装置及びデータ転送制御方法 | |
JP5334173B2 (ja) | データ転送システム及びリトライ制御方法 | |
JP7027145B2 (ja) | 通信装置、通信装置の制御方法およびプログラム | |
JP5587530B2 (ja) | エンジン・プロセッサ連携システム及び連携方法 | |
JP5282124B2 (ja) | パケット転送装置およびパケット転送方法 | |
JP6567476B2 (ja) | データ処理装置 | |
JP2004147243A (ja) | パケット通信システム | |
JP4624252B2 (ja) | データパケット転送装置、データパケット転送方法、及び、データパケット転送プログラム |