(57)【要約】【課題】複数のバスマスタのデータ転送を、できるだけ先送りせずに確約するバス調停装置を提供する。【解決手段】バス１０７を優先的に使用する順位を表す優先度が各々付されるＣＰＵ４１０、シリアルＩ／Ｆ４１３等の複数のバスマスタが接続されたバス１０７に設けられるバスアービタ１０１である。バスアービタ１０１は、複数のバスマスタの優先度を予め定められた周期で変化させる。バスアービタ１０１は、１以上のバスマスタからバス１０７の使用を要求する要求信号を受信する。バスアービタ１０１は、該要求信号を受信した時点の各バスマスタの優先度に基づき、該要求信号を送信した１以上のバスマスタのうち最も高い優先度が付された１つのバスマスタを特定する。バスアービタ１０１は、特定した１つのバスマスタにバス１０７の使用を許可する許可信号を送信する。【選択図】図４
2014016730.tif 000002
【特許請求の範囲】
【請求項１】
バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるバス調停装置であって、
前記複数のバスマスタの優先度を予め定められた周期で変化させる優先度管理手段と、
１以上のバスマスタから前記バスの使用を要求する要求信号を受信すると、該要求信号を受信した時点の各バスマスタの優先度に基づいて、該要求信号を送信した前記１以上のバスマスタのうち最も高い優先度が付された１つのバスマスタを特定し、特定した前記１つのバスマスタに前記バスの使用を許可する許可信号を送信する調停手段と、を備えることを特徴とする、
バス調停装置。
【請求項２】
前記優先度管理手段は、いずれか１つのバスマスタの優先度を最も高い優先度に固定しすることを特徴とする、
請求項１記載のバス調停装置。
【請求項３】
前記優先度管理手段は、優先度が固定されていないバスマスタを、各々２以上のバスマスタを含む複数のグループに分けて、グループ毎に前記周期で変化する優先度を付し、
各グループ内では、該グループに属するバスマスタのグループ内の優先度を前記周期で変化させることを特徴とする、
請求項２記載のバス調停装置。
【請求項４】
バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるバス調停装置により実行される方法であって、
前記複数のバスマスタの優先度を予め定められた周期で変化させる段階と、
前記周期毎に、その時点の最も高い優先度が付されたバスマスタから、優先度の高い順に、前記バスの使用を要求する要求信号を送信したか否かを確認する段階と、
前記要求信号を送信したバスマスタがあれば、該バスマスタに、前記バスの使用を許可する許可信号を送信する段階と、を含むことを特徴とする、
バス調停方法。
【請求項５】
バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるコンピュータを、
前記複数のバスマスタの優先度を予め定められた周期で変化させる優先度管理手段、
１以上のバスマスタから前記バスの使用を要求する要求信号を受信すると、該要求信号を受信した時点の各バスマスタの優先度に基づいて、該要求信号を送信した前記１以上のバスマスタのうち最も高い優先度が付された１つのバスマスタを特定し、特定した前記１つのバスマスタに前記バスの使用を許可する許可信号を送信する調停手段、
として機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば画像形成装置において、画像データの転送、モータやセンサ等の複数のアクチュエータ制御を行うためのデータの転送等に用いられるバス（bus）の、使用権（バス権）の調停を行うバス調停装置（バスアービタ）に関する。
【背景技術】
【０００２】
バスアービタは、同一のバスに接続されたＣＰＵ（Central Processing Unit）等の複数のバスマスタからのバス権要求に応じて、バス権を付与するバスマスタを決定する。本明細書では、このようなバスアービタをデジタル複写機等の画像形成装置に用いる例について説明する。なお、バスマスタとは、システム制御を行うＣＰＵ、ＩＥＥＥ１３９４等の通信系インタフェースやダイレクトメモリアクセス（ＤＭＡ：Direct Memory Access）等であり、バス上の転送制御を行うデバイスである。
【０００３】
自動原稿搬送モジュールを装備した画像形成装置には、ＣＰＵを含むシステム制御部が原稿に光を照射する光走査部を原稿読取位置に停止させ、原稿を１枚ずつ読み取る流し読みモードを備えるものがある。システム制御部は、原稿を読取位置まで搬送するための原稿搬送制御部と同一のバスに接続される。また、原稿の読み取りデータである原稿データを記憶するメモリも、システム制御部と同一のバスに接続される。そのために、当該バスには、原稿の読み取り時に大量のデータが転送されることになる。画像形成装置の動作が高速になるほど、バス上のデータの転送量が増大する。バスアービタは、このように転送量が増大した場合のバス権の調停に有効である。
【０００４】
特許文献１は、このようなバスアービタの一例である。特許文献１では、スキャナ（光走査部）、システム制御部、メモリ等を同一の汎用バスに接続し、バスアービタにより、最も優先度の高いバスマスタからのバス権要求があれば、他のバスマスタのバス使用頻度を一時的に低下させる。これにより、最も優先度の高いバスマスタのデータ転送効率を確約する。
【０００５】
バスには、リアルタイム性を損なわずにシステム制御部の負荷を低減するために、データ転送を行うＤＭＡ等のデータ転送機能部を、バスマスタとして接続することが一般的である。バス上にシステム制御部、データ転送機能部といった複数のバスマスタが存在する構成では、画像形成装置の動作を制御する上で、バスを使用するためのバス権の調停が重要である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−９５０８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に開示される発明では、最も優先度の高いバスマスタの転送が確約されるが、優先度の低いバスマスタからのバス権要求が重なった場合、相対的に優先度の低いバスマスタのデータ転送が確約されることは無い。また優先度の高いバスマスタからのバス権要求が連続する場合、優先度の低いバスマスタによるデータ転送が先送りになる。そのために、例えば、紙を搬送させるためのドラムモータを一定速度で回転させることが困難になり、紙詰まり等が発生する。そこで、すべてのバスマスタのデータ転送を効率よく確約する必要がある。
【０００８】
本発明は、以上のような従来の問題に鑑み、複数のバスマスタのデータ転送を、できるだけ先送りせずに確約するバス調停装置を提供することを主たる課題とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決する本発明のバス調停装置は、バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるバス調停装置である。バス調停装置は、優先度管理手段及び調停手段を備える。優先度管理手段は、前記複数のバスマスタの優先度を予め定められた周期で変化させる。調停手段は、１以上のバスマスタから前記バスの使用を要求する要求信号を受信する。調停手段は要求信号を受信すると、該要求信号を受信した時点の各バスマスタの優先度に基づいて、該要求信号を送信した前記１以上のバスマスタのうち最も高い優先度が付された１つのバスマスタを特定する。調停手段は、特定した前記１つのバスマスタに前記バスの使用を許可する許可信号を送信する。
【００１０】
本発明のバス調停方法は、バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるバス調停装置により実行される方法である。バス調停装置が、前記複数のバスマスタの優先度を予め定められた周期で変化させる。また、バス調停装置が、前記周期毎に、その時点の最も高い優先度が付されたバスマスタから、優先度の高い順に、前記バスの使用を要求する要求信号を送信したか否かを確認する。また、バス調停装置が、前記要求信号を送信したバスマスタがあれば、該バスマスタに、前記バスの使用を許可する許可信号を送信する。
【００１１】
本発明のコンピュータプログラムは、バスを優先的に使用する順位を表す優先度が各々付される複数のバスマスタが接続された前記バスに設けられるコンピュータを、優先度管理手段及び調停手段として機能させる。優先度管理手段は、前記複数のバスマスタの優先度を予め定められた周期で変化させる。調停手段は、１以上のバスマスタから前記バスの使用を要求する要求信号を受信する。調停手段は要求信号を受信すると、該要求信号を受信した時点の各バスマスタの優先度に基づいて、該要求信号を送信した前記１以上のバスマスタのうち最も高い優先度が付された１つのバスマスタを特定する。また、調停手段は、特定した前記１つのバスマスタに前記バスの使用を許可する許可信号を送信する。
【発明の効果】
【００１２】
本発明は、バスに接続されたバスマスタの優先度を、予め定められた周期で変化させる。そのために各バスマスタには、バスの優先度が高いときと低いときとが周期的に訪れる。各バスマスタは、優先度が高いときにバスを使用することが可能となるために、すべてのバスマスタによるバスの使用が、滞りなく確約される。
【図面の簡単な説明】
【００１３】
【図１】本実施形態の画像形成装置の概観図。
【図２】画像形成部の詳細な構成図。
【図３】制御モジュールの構成例示図。
【図４】作像モジュールの一部の構成図。
【図５】バスマスタ間のバス権の遷移状態の説明図。
【図６】バス調停の優先度についての説明図。
【図７】バス調停のタイミングチャート。
【図８】バス調停処理を表すフローチャート。
【図９】バス調停の優先度についての他の例示図。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図面を参照しつつ詳細に説明する。
【００１５】
図１は、本実施形態のシリアル通信装置を適用した画像形成装置１０００の概観図である。
画像形成装置１０００は、自動原稿搬送部（ＤＦ：Document Feeder）１００、画像読取部２００、画像形成部３００、及び操作部１０を備える。画像読取部２００は、画像形成部３００上に設けられる。画像読取部２００上には、自動原稿搬送部１００が取り付けられている。画像形成装置１０００を構成するこれらの構成要素は、複数の制御部により分散制御される。各制御部には、ＣＰＵや専用の半導体装置等を用いることができる。
【００１６】
自動原稿搬送部１００は、原稿を自動的に原稿台ガラス上に搬送する。画像読取部２００は、自動原稿搬送部１００から搬送された原稿を読み取って画像データを出力する。画像形成部３００は、画像読取部２００から出力された画像データやネットワークを介して外部装置から入力された画像データに基づく画像を、紙等の記録材に形成する。操作部１０は、ユーザが各種操作を行うためのＧＵＩ（Graphical User Interface）を有する。操作部１０は、例えばタッチパネル等を備えたディスプレイにより構成されており、ユーザに対して情報を提示可能である。
【００１７】
［画像形成部］
図２は、画像形成部３００の詳細な構成図である。画像形成部３００は、電子写真方式を採用している。図２において、符号末尾のアルファベットＹ、Ｍ、Ｃ、Ｋは、それぞれイエロー、マゼンダ、シアン、ブラックの各色を表す。なお、以下の説明で全色を表す場合には、符号末尾のアルファベットＹ、Ｍ、Ｃ、Ｋを省略して説明する。
【００１８】
フルカラー静電画像を形成するための像形成体である感光ドラム（以下、「感光体」と称する。）２２５は、モータからの駆動力によって図中矢印Ａの方向に回転する。感光体２２５の周囲には、一次帯電部２２１、露光部２１８、現像部２２３、転写部２２０、クリーナ部２２２、及び除電部２７１が設けられている。
【００１９】
現像部２２３Ｋはモノクロ現像のための現像モジュールであり、感光体２２５Ｋ上に形成された潜像をブラックのトナーで現像する。現像部２２３Ｙ、Ｍ、Ｃはカラー現像のための現像モジュールであり、現像部２２３Ｙ、Ｍ、Ｃは、感光体２２５Ｙ、Ｍ、Ｃ上に形成された潜像を、それぞれイエロー、マゼンダ、シアンの各トナーで現像する。感光体２２５上で現像された各色のトナー像は、転写部２２０によって中間転写体である転写ベルト２２６に多重転写され、４色のトナー像が重ね合わされる。
【００２０】
転写ベルト２２６は、ローラ２２７、２２８、２２９に張架される。ローラ２２７は、駆動源からの駆動力により転写ベルト２２６を駆動する駆動ローラである。ローラ２２８は、転写ベルト２２６の張力を調節するテンションローラである。ローラ２２９は、二次転写部２３１としての転写ローラのバックアップローラである。転写ローラ脱着ユニット２５０は、二次転写部２３１を転写ベルト２２６に当接、離間するための駆動ユニットである。二次転写部２３１を通過後の転写ベルト２２６の下部には、クリーナーブレード２３２が設けられており、転写ベルト２２６上の残留トナーが掻き落とされる。
【００２１】
カセット２４０、２４１及び手差し給紙部２５３に収納される記録材は、給紙ローラ対２３５及びレジストローラ２５５により二次転写部２３１と転写ベルト２２６との当接部（ニップ部）に給送される。その際、二次転写部２３１は、転写ローラ脱着ユニット２５０によって転写ベルト２２６に当接される。転写ベルト２２６上に形成されたトナー像は、ニップ部で記録材上に転写される。記録材に転写されたトナー像は、定着部２３４によって、記録材に熱定着される。そして、トナー像が定着された記録材は外部に排紙される。
【００２２】
カセット２４０、２４１及び手差し給紙部２５３は、それぞれ記録材の有無を検知するための検知センサ２４３、２４４、２４５を備える。また、カセット２４０、２４１及び手差し給紙部２５３は、それぞれ記録材のピックアップ不良を検知するための給紙センサ２４７、２４８、２４９を備える。カセット２４０、２４１に収納された記録材は、ピックアップローラ２３８、２３９により１枚ずつ縦パスローラ対２３６、２３７を介して給紙ローラ対２３５に搬送される。手差し給紙部２５３に収納された記録材は、ピックアップローラ２５４により１枚ずつ給紙ローラ対２３５に搬送される。
【００２３】
画像形成部３００の画像形成動作について説明する。画像形成の開始指示に応じて、カセット２４０、２４１及び手差し給紙部２５３に収納された記録材は、ピックアップローラ２３８、２３９、２５４により１枚ずつに給紙ローラ対２３５に搬送される。記録材は、給紙ローラ対２３５によりレジストローラ２５５へ搬送される。レジストセンサ２５６はレジストローラ２５５の上流に配置されており、記録材の通過を検知する。
【００２４】
レジストセンサ２５６による記録材の通過の検知に応じて、給紙ローラを停止させる。これにより、記録材は、停止しているレジストローラ２５５に当接して停止する。このとき記録材の先端が、搬送経路に対して垂直になるように記録材の姿勢が調整される。以下、この処理を位置補正と称する。位置補正は、以降の処理において、記録材に形成される画像の傾きを低減するために行われる。位置補正後、レジストローラ２５５を起動させて搬送動作を再開し、記録材を二次転写部２３１へ搬送する。なお、レジストローラ２５５は、クラッチを介して駆動源に結合されている。
【００２５】
一方、感光体２２５の表面は、電圧が印加された一次帯電部２２１によって所定の電位で一様にマイナス帯電される。そして、露光部２１８が帯電された感光体２２５の表面を露光し、潜像を形成する。露光部２１８はプリンタ制御Ｉ／Ｆ（インタフェース）２１５を介してコントローラ４６０から送られてくる画像データに基づいてレーザー光をオン、オフする。
【００２６】
現像部２２３の現像ローラには色毎に予め設定された現像バイアスが印加される。現像ローラは、トナーを用いて潜像を現像し、トナー像を形成する。トナー像は、転写部２２０により転写ベルト２２６に転写され、さらに二次転写部２３１で、搬送されてきた記録材に転写される。トナー像が転写された記録材は、搬送パス２６８を通過し、定着搬送ベルト２３０によって定着部２３４へ搬送される。
【００２７】
定着部２３４における定着前帯電器２５１、２５２は、トナーの吸着力を補って画像乱れを防止するために、記録材に転写されたトナー像を帯電する。そして、定着ローラ２３３は、トナー像を記録材に熱定着する。トナー像が定着された記録材は排紙ローラ２７０により搬送され、排紙フラッパ２５７により排紙パス２５８側に切り替えられた搬送パスを介して排紙トレー２４２に排紙される。
【００２８】
感光体２２５上に残留するトナーは、クリーナ部２２２によって除去され、回収される。感光体２２５は、除電部２７１により一様にゼロボルト付近まで除電される。
【００２９】
両面印刷を行う場合には、記録材の表面に画像が形成された後に、記録材を排紙トレー２４２に排紙せず、引き続き記録材の裏面に画像を形成する。記録材の裏面に画像を形成する場合の動作について詳細に説明する。裏面に画像形成を行なう場合、センサ２６９の記録材検知に応じて、排紙フラッパ２５７が搬送パスを裏面パス２５９側に切り替える。反転ローラ２６０が裏面パス２５９を通過した記録材を両面反転パス２６１に搬送する。記録材は、送り方向幅の分だけ両面反転パス２６１に搬送された後に、反転ローラ２６０の逆回転駆動により進行方向が切り替えられる。そして、両面パス搬送ローラ２６２が、表面が下向きになっている記録材を両面パス２６３に搬送する。
【００３０】
記録材は、両面パス２６３を再給紙ローラ２６４に向かって搬送される。再給紙センサ２６５による記録材の通過検知に応じて（本実施形態では所定の時間経過後）、搬送動作を中断する。記録材は、停止している再給紙ローラ２６４に当接して停止する。このとき記録材の先端が、搬送経路に対して垂直になるように記録材の姿勢が調整される。以下、この処理を再位置補正と称する。
【００３１】
再位置補正は、記録材の裏面に形成される画像の傾きを低減するために行われる。再位置補正後、再給紙ローラ２６４を起動する。再給紙ローラ２６４は、表裏が逆転した状態の記録材を、再度、給紙パス２６６上に搬送する。その後の画像形成動作については、上述した画像形成動作と同じであるため省略する。両面に画像形成された記録材は、排紙トレー２４２に排紙される。
【００３２】
なお、画像形成部３００は、両面印刷時においても、記録材の連続給送が可能である。しかしながら、画像形成部３００は、記録材への画像形成や形成されたトナー像の定着などを行うための機構は１系統しか有していないため、表面への印刷と裏面への印刷を同時に行うことはできない。したがって、両面印刷時には、画像形成部３００に対し、カセット２４０、２４１及び手差し給紙部２５３からの記録材と、裏面印刷のために反転させて再度給送された記録材とが、交互に画像形成される。
【００３３】
画像形成部３００は、図２を用いて説明した各構成要素を、搬送モジュールＡ、搬送モジュールＢ、作像モジュール、定着モジュールの４つのモジュールに仕分けている。そして、４つの制御モジュールが各々自律して、対応するモジュールに属する構成要素を制御する。また、マスタモジュール３０６が、これらの４つの制御モジュールを連携させて機能させるために、これら４つの制御モジュールを統括して制御する。図３は、これらの制御モジュールの構成例示図である。
【００３４】
マスタ制御部３０１は、プリンタ制御Ｉ／Ｆ２１５を介してコントローラ４６０から送られる指示及び画像データに基づいて画像形成部３００全体の動作制御を行う。画像形成を実行するための搬送モジュールＡ３０２、搬送モジュールＢ３０３、作像モジュール３０４、及び定着モジュール３０５は、各モジュールの動作を制御するサブマスタ制御部３１０、３２０、３３０、３４０を備える。サブマスタ制御部３１０、３２０、３３０、３４０はマスタ制御部３０１により制御される。これらの制御モジュールの各々は、機能実現のための構成要素の制御を行うスレーブ制御部３１１〜３１４、３２１、３２２、３３１〜３３５、３４１、３４２を備える。スレーブ制御部３１１〜３１４はサブマスタ制御部３１０により制御される。スレーブ制御部３２１、３２２はサブマスタ制御部３２０により制御される。スレーブ制御部３３１〜３３５はサブマスタ制御部３３０により制御される。スレーブ制御部３４１、３４２はサブマスタ制御部３４０により制御される。
【００３５】
マスタ制御部３０１と複数のサブマスタ制御部３１０、３２０、３３０、３４０とは、１対１接続（ピアツーピア接続）型のシリアル通信バス３５０〜３５３を介して接続される。サブマスタ制御部３１０は、シリアル通信バス３６０〜３６３を介して複数のスレーブ制御部３１１〜３１４の各々に１対１接続される。同様にサブマスタ制御部３２０は、シリアル通信バス３７０、３７１を介して、スレーブ制御部３２１、３２２の各々に接続される。サブマスタ制御部３３０は、シリアル通信バス３８０〜３８４を介して、スレーブ制御部３３１〜３３５の各々に１対１接続される。サブマスタ制御部３４０は、シリアル通信バス３９０、３９１を介して、スレーブ制御部３４１、３４２の各々に接続される。
【００３６】
図４は作像モジュール３０４の一部の構成図である。サブマスタ制御部３３０は、ＣＰＵ４０１により、画像形成装置１０００の機能の一つである作像機能に関わる動作及びシーケンス制御を行う。ＲＡＭ（Random Access Memory）４０２は、ＣＰＵ４０１の一時記憶領域として用いられる。ＲＯＭ（Read Only Memory）４０３は、作像に関わる動作及びシーケンス制御を行うためのプログラムを格納する。シリアルＩ／Ｆ４０４は、シリアル通信バス３８０を介して、スレーブ制御部３３１と１対１のシリアル通信を行う。
【００３７】
スレーブ制御部３３１は、複数のバスマスタが共通のバス１０７上に接続されて構成される。図４では、ＣＰＵ４１０、シリアルＩ／Ｆ４１３、第１〜第４ＤＭＡ４４０〜４４３、ＲＯＭ４１２、ＲＡＭ４１１、ＡＣＣ／ＤＥＣ制御部４１４、ドラムモータ制御部４２４、ローラ駆動制御部４３４、及び高圧生成制御部４４４がバスマスタとなる。各バスマスタは、バス１０７を介してバスアービタ１０１にバス１０７の使用を要求するバス権要求信号を送信する。バスアービタ１０１は、バス権要求信号及び各バスマスタに設定されるバス調停の優先度に応じて、バス１０７の使用を許可するバス権許可信号を、１つのバスマスタにバス１０７を介して返信する。バスアービタ１０１は１度に１つのバスマスタに対してのみバス権許可信号を出力することで、バス１０７の調停を行う。バスアービタ１０１は、このような処理を行うための調停部を備える。バスアービタ１０１の機能は、ハードウェアにより実現してもよいが、例えばコンピュータプログラムをバスマスタ１０７に接続されたコンピュータが読み出して実行することで実現してもよい。
【００３８】
ＣＰＵ４１０は、クロックに同期してリアルタイムに以下の処理を行う。ＣＰＵ４１０は、露光部２１８Ｙに内蔵されるポリゴンミラーの駆動用モータを予め定められた回転速度で駆動する。作像終了後は、ポリゴンミラーの駆動用モータの停止制御を行う。ＣＰＵ４１０は、感光体２２５Ｙを回転駆動するドラムモータの制御を行う。ＣＰＵ４１０は、ローラ２２７、２２８、２２９の回転を制御して、転写ベルト２２６を、感光体２２５Ｙ、２２５Ｍ、２２５Ｃ、２２５Ｋの回転に同期するように、予め定められた回転速度で駆動する。ＣＰＵ４１０は、一次帯電装置２２１Ｙに供給する高電圧信号の制御を行う。
【００３９】
ＲＡＭ４１１はＣＰＵ４１０の一時記憶領域として用いられる。ＲＯＭ４１２はポリゴンミラー制御、ドラム駆動制御、ローラ回転駆動制御、高電圧信号制御に関わるプログラムと、サブマスタ制御部３３０と通信するためのプログラムを格納する。データ転送機能部である第１〜第４ＤＭＡ４４０〜４４３は、ＲＯＭ４１２からポリゴンミラー制御、ドラム駆動制御、ローラ回転駆動制御、高電圧信号制御に関わる各プログラム読み出す。第１〜第４ＤＭＡ４４０〜４４３は、読み出したこれらのプログラムを、それぞれＡＣＣ／ＤＥＣ制御部４１４、ドラムモータ制御部４２４、ローラ駆動制御部４３４、高圧生成制御部４４４に、クロックに同期して転送する。
【００４０】
図５は、バスマスタ間のバス権の遷移状態の説明図である。バス権は、すべてのバスマスタ間で遷移することが可能である。クロックに同期して変化するバスの優先度に応じてバス権の遷移が可能である。ＣＰＵ４１０は、スレーブ制御部３３１全体の動作を制御するために、最も優先度が高い。そのために、ＣＰＵ４１０からバス権要求信号が発行されると、他のバスマスタからＣＰＵ４１０にバス権が遷移する。ＣＰＵ４１０からバス権要求信号が発行されていない場合、優先度の低いバスマスタへバス権が遷移する。バス権が遷移した先において、バスマスタがバス権要求信号を発行している場合は、バス権許可信号が出力されるが、バスマスタがバス権要求信号を発行していない場合は、更に優先度の低い次のバスマスタへバス権が遷移する。
【００４１】
図６は、バス調停の優先度についての説明図である。
図６ではＣＰＵ４１０をバスマスタＭ０、シリアルＩ／Ｆ４１３をバスマスタＭ１、第１ＤＭＡ４４０をバスマスタＭ２、第２ＤＭＡ４４１をバスマスタＭ３、第３ＤＭＡ４４２をバスマスタＭ４、第４ＤＭＡ４４３をバスマスタＭ５と表している。バスマスタＭ０の優先度は、最も高く（優先度「１」）常に一定である。他のバスマスタＭ１〜Ｍ５の優先度は、クロックＣＬＫに同期して変化する。この例では、最も優先度が高いバスマスタＭ０以外のバスマスタが５つ（バスマスタＭ１〜Ｍ５）であるため、５サイクルのクロックＣＬＫで初期の優先度の状態に戻る。優先度は、バス権要求信号に関係なく、クロックＣＬＫに同期して変化するカウント値に応じて決められる。なお、図６では、バスマスタＭ１〜Ｍ５の優先度がクロックＣＬＫに同期して変化していることをわかりやすくするため、バスマスタＭ１の表現を他のバスマスタＭ２〜Ｍ５とは変えている。
バスアービタ１０１は、このような各バスマスタＭ０〜Ｍ５のバス調停の優先度を管理する優先度管理部を備える。
【００４２】
図７は，バス調停のタイミングチャートである。
クロックサイクルＣ０では、すべてのバスマスタＭ０〜Ｍ５は、バス権要求信号を発行していない。そのために、バスアービタ１０１はバス権許可信号を出力しない。
クロックサイクルＣ１では、バスマスタＭ０のみがバス権要求信号を出力する。そのために、バスアービタ１０１はバスマスタＭ０へバス権許可信号を出力する。バスマスタＭ０は、バス権許可信号を受け取ることでバス１０７の使用が可能となる。バスマスタＭ０は、バス１０７の使用を終了すると、バス権要求信号の出力を停止する。
【００４３】
クロックサイクルＣ２〜Ｃ６では、バス権要求信号がバスマスタＭ１〜Ｍ５のいずれか１つから出力される。そのためにバスアービタ１０１は、バス権要求信号を出力するバスマスタに、バス権許可信号を出力する。バスマスタＭ１〜Ｍ５のうちバス権要求信号を出力するものが、バス権許可信号を受け取ることでバス１０７の使用が可能となる。バスマスタＭ１〜Ｍ５は、バス１０７の使用を終了すると、バス権要求信号の出力を停止する。
【００４４】
クロックサイクルＣ７では、クロックサイクルＣ０同様、すべてのバスマスタＭ０〜Ｍ５は、バス権要求信号を出力しない。そのために、バスアービタ１０１はバス権許可信号を出力しない。
クロックサイクルＣ８では、最も優先度が高い優先度「１」のバスマスタＭ０がバス権要求信号を出力していないため、バス権は優先度「２」のバスマスタＭ４へ遷移する。しかし、バスマスタＭ４がバス権要求信号を出力していないため、バス権が優先度の高い順にバスマスタＭ５（優先度「３」）→バスマスタＭ１（優先度「４」）→バスマスタＭ２（優先度「５」）と遷移する。バスマスタＭ２はバス権要求信号を出力しているため、バスアービタ１０１は、バス権許可信号をバスマスタＭ２へ出力する。バスマスタＭ２はバス権許可信号を受け取ることでバス１０７の使用が可能となる。バスマスタＭ２は、バス１０７の使用を終了すると、バス使用要求の出力を停止する。
【００４５】
クロックサイクルＣ９、Ｃ１０では、最も優先度が高い優先度「１」のバスマスタＭ０及びバスマスタＭ０より優先度が低いバスマスタＭ５が、バス権要求信号を出力する。バスアービタ１０１は、最も優先度が高いバスマスタＭ０へバス権許可信号を出力する。バスマスタＭ０は、バス権許可信号を受け取ることでバス１０７を使用し、使用を終了すると、バス権要求信号の出力を停止する。
クロックサイクルＣ９でバス１０７を使用できなかったバスマスタＭ５は、バス権要求信号の出力を継続する。クロックサイクルＣ１０では、バスアービタ１０１がバス権要求信号を出力しているバスマスタＭ５にバス権許可信号を出力する。バスマスタＭ５は、バス権許可信号を受け取ることでバス１０７を使用し、使用を終了すると、バス権要求信号の出力を停止する。なお、バスマスタＭ５は、クロックサイクルＣ１０では、優先度が最も低い優先度「６」であるが、他のバスマスタＭ０〜Ｍ４がバス権要求信号を出力していないために、バス権許可信号を受け取ることができる。
【００４６】
クロックサイクルＣ１１では、クロックサイクルＣ０同様、すべてのバスマスタＭ０〜Ｍ５は、バス権要求信号を出力しない。そのために、バスアービタ１０１はバス権許可信号を出力しない。
クロックサイクルＣ１２では、最も優先度の高いバスマスタＭ０以外のバスマスタＭ１〜Ｍ５が、バス権要求信号を出力する。最も優先度の高いバスマスタＭ０はバス権要求信号を出力していないため、バスアービタ１０１は、次に優先度の高い優先度「２」のバスマスタＭ３にバス権許可信号を出力する。バスマスタＭ３は、バス権許可信号を受け取ることでバス１０７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
【００４７】
クロックサイクルＣ１３では、最も優先度の高いバスマスタＭ０がバス権要求信号を出力する。バスマスタＭ１、Ｍ２、Ｍ４、Ｍ５は、クロックサイクルＣ１２からバス権要求信号を出力し続けている。しかしバスアービタ１０１は、バスマスタＭ０の優先権が最も高いために、バスマスタＭ０へバス権許可信号を出力する。バスマスタＭ０は、バス権許可信号を受け取ることでバス１０７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
【００４８】
クロックサイクルＣ１４では、最も優先度の高いバスマスタＭ０はバス権要求信号を出力しない。バスマスタＭ１、Ｍ２、Ｍ４、Ｍ５は、クロックサイクルＣ１２からバス権要求信号を出力し続けている。そのためにバスアービタ１０１は、バスマスタＭ１、Ｍ２、Ｍ４、Ｍ５のうち最も優先度の高い優先度「２」のバスマスタＭ５へバス権許可信号を出力する。バスマスタＭ５は、バス権許可信号を受け取ることでバス１０７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
クロックサイクルＣ１５では、最も優先度の高いバスマスタＭ０はバス権要求信号を出力しない。バスマスタＭ１、Ｍ２、Ｍ４は、クロックサイクルＣ１２からバス権要求信号を出力し続けている。そのためにバスアービタ１０１は、バスマスタＭ１、Ｍ２、Ｍ４のうち最も優先度の高い優先度「２」のバスマスタＭ１へバス権許可信号を出力する。バスマスタＭ１は、バス権許可信号を受け取ることでバス１０７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
クロックサイクルＣ１６では、最も優先度の高いバスマスタＭ０はバス権要求信号を出力しない。バスマスタＭ２、Ｍ４は、クロックサイクルＣ１２からバス権要求信号を出力し続けている。そのためにバスアービタ１０１は、バスマスタＭ２、Ｍ４のうち優先度の高い優先度「２」のバスマスタＭ２へバス権使用許可信号を出力する。バスマスタＭ２はバス権許可信号を受け取ることでバス１０７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
クロックサイクルＣ１７では、最も優先度の高いバスマスタＭ０はバス権要求信号を出力しない。そのためにバスアービタ１０１は、次に優先度の高いバスマスタＭ３へバス権を遷移させる。しかし、バスマスタＭ３はバス権要求信号を出力していないため、バスアービタ１０１は、バス権許可信号をバスマスタＭ３には出力せず、次に優先度の高いバスマスタＭ４へバス権を遷移させる。バスマスタＭ４は、クロックサイクルＣ１２からバス権要求信号を出力し続けている。バスアービタ１０１は、バスマスタＭ４に対して、バス権許可信号を出力する。バスマスタＭ４は、バス権許可信号を受け取ることでバス１７を使用し、使用が終了すると、バス権要求信号の出力を停止する。
【００４９】
クロックサイクルＣ１８、Ｃ１９では、ロックサイクルＣ０同様全てのバスマスタＭ０〜Ｍ５はバス権要求信号を出力しない。そのためにバスアービタ１０１は、バス権許可信号を出力しない。
このように、優先度及びバス権要求信号により、適宜、バスマスタＭ０〜Ｍ５のいずれか１つに、バス権が割り当てられる。
【００５０】
図８は、スレーブ制御部３２１によるバス調停処理を表すフローチャートである。
【００５１】
スレーブ制御部３２１のバスアービタ１０１はカウンタを有している。バスアービタ１０１は、バス調停のために、カウンタの動作を開始して、クロックサイクル毎にカウント値ｎ（ｎは自然数）をカウントアップする（Ｓ１）。図６に示すように、本実施形態においてカウンタは、カウント値ｎを「０〜４」までカウントする。
【００５２】
カウンタの動作開始後に、バスアービタ１０１は、優先度が最も高いバスマスタＭ０がバス権要求信号を出力しているか否かを確認する（Ｓ２）。バスマスタＭ０からバス権要求信号が出力されている場合にバスアービタ１０１は、バスマスタＭ０にバス権許可信号を出力する（Ｓ２：Y、Ｓ３）。バスアービタ１０１は、バス権許可信号を、バスマスタＭ０からバス権要求信号が出力されている間だけに出力する。バスマスタＭ０がバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５３】
バスマスタＭ０からバス権要求信号が出力されていない場合にバスアービタ１０１は、カウント値ｎが「０〜４」の範囲内にあるか否かを確認する（Ｓ４）。
バスアービタ１０１は、カウント値ｎが「０〜４」の範囲内にあるならば、優先度が２番目に高い優先度「２」のバスマスタがバス権要求信号を出力しているか否かを確認する（Ｓ４：Y、Ｓ５）。バスアービタ１０１は、例えば図６に示すような各バスマスタＭ０〜Ｍ５の優先度を記憶しており、カウント値ｎにより、各バスマスタＭ０〜Ｍ５の優先度を確認することができる。
【００５４】
優先度「２」のバスマスタからバス権要求信号が出力されている場合にバスアービタ１０１は、優先度「２」のバスマスタにバス権許可信号を出力する（Ｓ５：Y、Ｓ６）。バスアービタ１０１は、バス権許可信号を、優先度「２」のバスマスタからバス権要求信号が出力されている間だけ出力する。優先度「２」のバスマスタがバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５５】
優先度「２」のバスマスタからバス権要求信号が出力されていない場合にバスアービタ１０１は、次に優先度の高い優先度「３」のバスマスタがバス権要求信号を出力しているか否かを確認する（Ｓ５：N、Ｓ７）。優先度「３」のバスマスタからバス権要求信号が出力されている場合にバスアービタ１０１は、優先度「３」のバスマスタにバス権許可信号を出力する（Ｓ７：Y、Ｓ８）。バスアービタ１０１は、バス権許可信号を、優先度「３」のバスマスタからバス権要求信号が出力されている間だけ出力する。優先度「３」のバスマスタがバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５６】
優先度「３」のバスマスタからバス権要求信号が出力されていない場合にバスアービタ１０１は、次に優先度の高い優先度「４」のバスマスタがバス権要求信号を出力しているか否かを確認する（Ｓ７：N、Ｓ９）。優先度「４」のバスマスタからバス権要求信号が出力されている場合にバスアービタ１０１は、優先度「４」のバスマスタにバス権許可信号を出力する（Ｓ９：Y、Ｓ１０）。バスアービタ１０１は、バス権許可信号を、優先度「４」のバスマスタからバス権要求信号が出力されている間だけ出力する。優先度「４」のバスマスタがバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５７】
優先度「４」のバスマスタからバス権要求信号が出力されていない場合にバスアービタ１０１は、次に優先度の高い優先度「５」のバスマスタがバス権要求信号を出力しているか否かを確認する（Ｓ９：N、Ｓ１１）。優先度「５」のバスマスタからバス権要求信号が出力されている場合にバスアービタ１０１は、優先度「５」のバスマスタにバス権許可信号を出力する（Ｓ１１：Y、Ｓ１２）。バスアービタ１０１は、バス権許可信号を、優先度「５」のバスマスタからバス権要求信号が出力されている間だけ出力する。優先度「５」のバスマスタがバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５８】
優先度「５」のバスマスタからバス権要求信号が出力されていない場合にバスアービタ１０１は、最も優先度の低い優先度「６」のバスマスタがバス権要求信号を出力しているか否かを確認する（Ｓ１１：N、Ｓ１３）。優先度「６」のバスマスタからバス権要求信号が出力されている場合にバスアービタ１０１は、優先度「６」のバスマスタにバス権許可信号を出力する（Ｓ１３：Y、Ｓ１４）。バスアービタ１０１は、バス権許可信号を、優先度「６」のバスマスタからバス権要求信号が出力されている間だけ出力する。優先度「５」のバスマスタがバス権要求信号の出力を停止することで、バスアービタ１０１がバス権許可信号の出力を終了する。
【００５９】
バスアービタ１０１は、バス権許可信号の出力（Ｓ３、Ｓ６、Ｓ８、Ｓ１０、Ｓ１２、Ｓ１４）の終了後、或いは優先度「６」のバスマスタからバス権要求信号が出力されていない場合に（Ｓ１３：N）、バス調停処理を終了するか否かを確認する（Ｓ１５）。バスアービタ１０１は、バス調停処理を終了する場合に、カウンタの動作を停止し、カウント値ｎを「０」にリセットしてバス調停処理を終了する（Ｓ１５：Y）。
【００６０】
バスアービタ１０１は、バス調停処理を終了しない場合に、カウント値ｎが「５」以上であれば「０」にリセットし、「５」未満であればカウント値ｎに「１」を加算してカウント値ｎを更新する（Ｓ１５：N、Ｓ１６）。バスアービタ１０１は、カウント値ｎの更新後に、ステップＳ２の処理に戻り、ステップＳ２〜ステップＳ５２の処理をバス調停処理の終了まで繰り返す。
【００６１】
以上のようなバスアービタ１０１の処理により、最も優先度の高いバスマスタＭ０のデータ転送は最優先で確約される。他のバスマスタＭ１〜Ｍ５のデータ転送についても、優先度が順次変化するために、無視されることなく確約される。そのために、確実にデータ転送が実行される。よって、例えば記録材を搬送するためのモータを一定速度で動作させることが可能となり、モータの動作が不安定なことに起因するジャム等の発生を抑制することができる。
【００６２】
図９は、バス調停の優先度についての他の例示図である。
図９の例では、バスマスタを優先度に応じてグループ化する。バスマスタＭ０の優先度は、最も高く常に一定である。バスマスタＭ１、Ｍ２、Ｍ３は、２番目に優先度の高いグループである。バスマスタＭ４、Ｍ５は、３番目に優先度の高いグループである。
【００６３】
各グループ内では、クロックサイクルに応じて、グループ内のバスマスタの優先度が変化する。例えば、２番目に優先度の高いグループに属するバスマスタＭ１、Ｍ２、Ｍ３は、クロックサイクルに応じて変化するカウント値が「０」のとき、優先度がバスマスタＭ１、Ｍ２、Ｍ３の順になる。次のクロックサイクルでは（カウント値「１」）、バスマスタＭ２がこのグループでは最も優先度が高くなり、次いで、バスマスタＭ３、Ｍ１の順になる。３クロックサイクルで元の優先度順になる。
３番目に優先度の高いグループに属するバスマスタＭ４、Ｍ５は、カウント値が「０」のとき、優先度がバスマスタＭ４、Ｍ５の順になる。次のクロックサイクルでは（カウント値「１」）、バスマスタＭ５、Ｍ４の順になる。２クロックサイクルで元の優先度順になる。
【００６４】
このように各バスマスタの優先度は、グループ毎に決められ、グループ内でクロックサイクルに応じて変化するようにしてもよい。バスアービタ１０１は、最も優先度の高いバスマスタＭ０のバス権要求信号に応じて、最優先でバス権をバスマスタＭ０に割り当てる。他のバスマスタＭ１〜Ｍ５については、相対的に優先度の高いグループに属するバスマスタＭ１、Ｍ２、Ｍ３からのバス権要求信号が優先される。また、同グループ内の優先度に応じて、優先度の高いバスマスタＭ１、Ｍ２、Ｍ３からのバス権要求信号が優先される。
【００６５】
以上のように、バスアービタ１０１により、最も優先度の高いバスマスタに対しては最優先でバス権を与え、優先度の低いバスマスタについても周期的に優先度を変化させることで、確実にバス権を与えるようにバス１０７の調停が可能となる。優先度が変化するために、各バスマスタから出力されるバス権要求信号は、バスアービタ１０１に無視されることはない。そのために、例えば紙を搬送するためのドラムモータを一定速度で動作させることが可能となりジャム等の発生を抑制することができる。
また、上記の説明では最も優先度の高いバスマスタの優先度を固定しているが、最も優先度の低いバスマスタを固定するようにしてもよい。例えば優先的にバス１０７を使用する必要は無いが、処理のログデータのように記録として残す必要があるデータをメモリに転送する場合に用いることができる。
【符号の説明】
【００６６】
１０００…画像形成装置、１００…自動原稿搬送部、２００…画像読取部、３００…画像形成部、１０…操作部、４６０…コントローラ。２１５…プリンタ制御Ｉ／Ｆ、３０１…マスタ制御部、３０６…マスタモジュール、３１０，３２０，３３０，３４０…サブマスタ制御部、３０２…搬送モジュールＡ、３０３…搬送モジュールＢ、３０４…作像モジュール、３０５…定着モジュール。３１１，３１２，３１３，３１４，３２１，３２２，３３１，３３２，３３３，３３４，３３５，３４１，３４２…スレーブ制御部。４０１，４１０…ＣＰＵ、４０２，４１１…ＲＡＭ、４０３，４１２…ＲＯＭ、４０４，４１３…シリアルＩ／Ｆ。１０１…バスアービタ、１０７…バス、４１４…ＡＣＣ／ＤＥＣ制御部、４２４…ドラムモータ制御部、４３４…ローラ駆動制御部、４４４…高圧生成制御部。４４０…第１ＤＭＡ、４４１…第２ＤＭＡ、４４２…第３ＤＭＡ、４４３…第４ＤＭＡ、Ｍ０〜Ｍ５…バスマスタ。
【図１】
2014016730.tif 000003
【図２】
2014016730.tif 000004
【図３】
2014016730.tif 000005
【図４】
2014016730.tif 000006
【図５】
2014016730.tif 000007
【図８】
2014016730.tif 000008
【図６】
2014016730.tif 000009
【図７】
2014016730.tif 000010
【図９】
2014016730.tif 000011