(57)【要約】【課題】  画像形成装置に接続されるオプション基板の開発を容易にする。【解決手段】  ＭＦＰは、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメインＣＰＵと、メインＣＰＵの起動を制御する起動用ＣＰＵ２１と、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブＣＰＵを搭載するオプション基板を接続可能な接続コネクタと、を備え、起動用ＣＰＵ２１は、接続コネクタに接続されたオプション基板を検出する検出部６１と、オプション基板が検出される場合、メインＣＰＵが起動する前の段階で、オプション基板に関する能力情報を取得する取得部６３と、取得された能力情報に基づいて、メインＣＰＵとサブＣＰＵのいずれか一方を選択する選択部６５と、メインＣＰＵおよびサブＣＰＵのうちから選択された一方をルートコンプレックスとして起動する切換部７３と、を含む。【選択図】        図４
2014228925.tif 000002
【特許請求の範囲】
【請求項１】
ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、
前記メイン演算手段の起動を制御する起動制御手段と、
ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備え、
前記起動制御手段は、前記接続手段に接続された前記オプション基板を検出する検出手段と、
前記オプション基板が検出される場合、前記メイン演算手段が起動する前の段階で、前記オプション基板に関する能力情報を取得する取得手段と、
前記取得された能力情報に基づいて、前記メイン演算手段と前記サブ演算手段のいずれか一方を選択する選択手段と、
前記メイン演算手段および前記サブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換手段と、を含む、画像形成装置。
【請求項２】
前記切換手段は、前記メイン演算手段が選択される場合は、前記サブ演算手段を起動することなくメイン演算手段を起動し、前記サブ演算手段が選択される場合は、前記メイン演算手段を起動することなく前記サブ演算手段をルートコンプレックスに設定した後に起動する選択起動手段と、を含む請求項１に記載の画像形成装置。
【請求項３】
前記起動制御手段は、前記オプション基板が画像を処理する回路を有するサブ画像処理手段を含む場合、前記メイン演算手段および前記サブ演算手段のいずれが選択される場合であっても、前記サブ画像処理手段をエンドポイントに設定して起動するサブ画像処理起動手段を含む、請求項１または２に記載の画像形成装置。
【請求項４】
前記オプション基板が画像を処理する回路を有するサブ画像処理手段を含まない場合、前記メイン演算手段が選択される場合は、前記オプション基板に供給する電力を遮断する遮断手段を含む、請求項３に記載の画像形成装置。
【請求項５】
前記選択手段は、前記能力情報により定められる前記サブ演算手段の処理速度と前記メイン演算手段の処理速度とを比較する速度比較手段と、
前記サブ演算手段および前記メイン演算手段のうち処理速度の速い一方を選択する速度基準選択手段と、を含む、請求項１〜４のいずれかに記載の画像形成装置。
【請求項６】
前記選択手段は、前記速度基準選択手段により前記メイン演算手段が選択される場合、前記能力情報によって前記オプション基板が予め定められたプログラムを実行することによって画像を処理するプログラム処理手段を搭載することが示される場合、前記サブ演算手段を選択する特定状況選択手段を含む、請求項５に記載の画像形成装置。
【請求項７】
前記切換手段は、前記特定状況選択手段により前記サブ演算手段が選択される場合、前記メイン演算手段をエンドポイントに設定した後に起動するとともに、前記サブ演算手段をルートコンプレックスに設定した後に起動する重複起動手段を、含む請求項６に記載の画像形成装置。
【請求項８】
前記オプション基板は、予め定められた処理を前記メイン演算手段に実行させるための起動プログラムを記憶するプログラム記憶手段を搭載しており、
前記重複起動手段は、前記メイン演算手段に前記プログラム記憶手段に記憶された起動プログラムを実行させることによって起動する特定状況起動手段を含む、請求項７に記載の画像形成装置。
【請求項９】
前記メイン演算手段と同一基板に搭載され、画像を処理する回路を有するメイン画像処理手段を、さらに備え、
前記起動制御手段は、前記メイン演算手段および前記サブ演算手段のいずれが選択される場合であっても、前記メイン画像処理手段を起動するメイン画像処理起動手段を含む、請求項１〜８のいずれかに記載の画像形成装置。
【請求項１０】
画像形成装置で実行される起動制御方法であって、
前記画像形成装置は、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、
ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備えており、
前記接続手段に接続された前記オプション基板を検出する検出ステップと、
前記オプション基板が検出される場合、前記メイン演算手段が起動する前の段階で、前記オプション基板に関する能力情報を取得する取得ステップと、
前記取得された能力情報に基づいて、前記メイン演算手段と前記サブ演算手段のいずれか一方を選択する選択ステップと、
前記メイン演算手段および前記サブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換ステップと、を前記画像形成装置に実行させる起動制御方法。
【請求項１１】
画像形成装置の起動を制御するコンピューターで実行される起動制御プログラムであって、
前記画像形成装置は、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、
ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備えており、
前記接続手段に接続された前記オプション基板を検出する検出ステップと、
前記オプション基板が検出される場合、前記メイン演算手段が起動する前の段階で、前記オプション基板に関する能力情報を取得する取得ステップと、
前記取得された能力情報に基づいて、前記メイン演算手段と前記サブ演算手段のいずれか一方を選択する選択ステップと、
前記メイン演算手段および前記サブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換ステップと、を前記コンピューターに実行させる起動制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は画像形成装置に関し、特に、オプション基板を増設可能な画像形成装置、その画像形成装置の起動制御方法およびその起動制御方法を画像形成装置の起動を制御するコンピューターに実行させる起動制御プログラムに関する。
【背景技術】
【０００２】
近年、複合機（ＭＦＰ）で代表される画像形成装置は、プログラムを実行するＣＰＵを備えており、そのＣＰＵによって制御される。さらに、ＭＦＰの機能を拡張等するために、外付けでオプション基板を増設することが可能なＭＦＰが登場してきている。
【０００３】
一方、ＣＰＵを他の回路と接続するためのインターフェースとして、ＰＣＩ−Ｅｘｐｒｅｓｓの規格が知られている。たとえば、特開２００９−２８２７７３号公報には、ＰＣＩ−Ｅｘｐｒｅｓｓの規格を用いて、用途に応じてルートコンプレックスとエンドポイントとの経路を変更する技術が記載されている。このＰＣＩ−Ｅｘｐｒｅｓｓの規格を用いれば、ＭＦＰに元々備えられたＣＰＵで、オプション基板に搭載された回路を制御することができるため、オプション基板の増設が容易である。
【０００４】
しかしながら、オプション基板のうちには、プログラムを実行するＣＰＵを備えているものがあり、ＭＦＰに元々備えられたＣＰＵとの整合性を保つ必要から、オプション基板は、それを装着可能なＭＦＰのために専用に開発されるのが通常である。このため、複数の種類のＭＦＰ間で、オプション基板を共通化することができないといった問題があった。
【特許文献１】特開２００９−２８２７７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の１つは、接続されるオプション基板の開発を容易にした画像形成装置を提供することである。
【０００６】
この発明の他の目的は、画像形成装置に接続されるオプション基板の開発を容易にした起動制御方法を提供することである。
【０００７】
この発明のさらに他の目的は、画像形成装置に接続されるオプション基板の開発を容易にした起動制御プログラムを提供することである。
【課題を解決するための手段】
【０００８】
上述した目的を達成するためにこの発明のある局面によれば、画像形成装置は、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、メイン演算手段の起動を制御する起動制御手段と、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備え、起動制御手段は、接続手段に接続されたオプション基板を検出する検出手段と、オプション基板が検出される場合、メイン演算手段が起動する前の段階で、オプション基板に関する能力情報を取得する取得手段と、取得された能力情報に基づいて、メイン演算手段とサブ演算手段のいずれか一方を選択する選択手段と、メイン演算手段およびサブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換手段と、を含む。
【０００９】
この局面に従えば、オプション基板が接続される場合、メイン演算手段が起動する前の段階で、オプション基板に関する能力情報が取得され、能力情報に基づいて、メイン演算手段とオプション基板に搭載されたサブ演算手段のいずれか一方が選択され、メイン演算手段およびサブ演算手段のうちから選択された一方がルートコンプレックスとして起動される。このため、ルートコンプレックスを１つにして起動するので、サブ演算手段を搭載したオプション基板が接続される場合に確実に起動することができる。また、オプション基板に関する能力情報に基づいて、メイン演算手段とサブ演算手段のいずれか一方を選択するので、サブ演算手段を搭載したオプション基板は画像形成装置に専用である必要はない。このため、接続可能なオプション基板を別の画像形成装置と共有することができる。その結果、接続されるオプション基板の開発を容易にした画像形成装置を提供することができる。
【００１０】
好ましくは、切換手段は、メイン演算手段が選択される場合は、サブ演算手段を起動することなくメイン演算手段を起動し、サブ演算手段が選択される場合は、メイン演算手段を起動することなくサブ演算手段をルートコンプレックスに設定した後に起動する選択起動手段と、を含む。
【００１１】
この局面に従えば、メイン演算手段とサブ演算手段とのいずれか一方を起動しないので、ルートコンプレックスを確実に１つにすることができる。
【００１２】
好ましくは、起動制御手段は、オプション基板が画像を処理する回路を有するサブ画像処理手段を含む場合、メイン演算手段およびサブ演算手段のいずれが選択される場合であっても、サブ画像処理手段をエンドポイントに設定して起動するサブ画像処理起動手段を含む。
【００１３】
この局面に従えば、オプション基板がサブ画像処理手段を含む場合、サブ画像処理手段はエンドポイントに設定されて起動するので、オプション基板の機能を利用することができる。
【００１４】
好ましくは、オプション基板が画像を処理する回路を有するサブ画像処理手段を含まない場合、メイン演算手段が選択される場合は、オプション基板に供給する電力を遮断する遮断手段を含む。
【００１５】
この局面に従えば、オプション基板がサブ画像処理手段を含まず、メイン演算手段が選択される場合は、オプション基板に供給する電力を遮断するので、オプション基板が接続される場合において、画像形成装置の能力を最適にしつつ消費電力を低減することができる。
【００１６】
好ましくは、選択手段は、能力情報により定められるサブ演算手段の処理速度とメイン演算手段の処理速度とを比較する速度比較手段と、サブ演算手段およびメイン演算手段のうち処理速度の速い一方を選択する速度基準選択手段と、を含む。
【００１７】
この局面に従えば、サブ演算手段およびメイン演算手段のうち処理速度の速い一方を選択するので、オプション基板が接続された場合の処理速度を速くすることができる。
【００１８】
好ましくは、選択手段は、速度基準選択手段によりメイン演算手段が選択される場合、能力情報によってオプション基板が予め定められたプログラムを実行することによって画像を処理するプログラム処理手段を搭載することが示される場合、サブ演算手段を選択する特定状況選択手段を含む。
【００１９】
この局面に従えば、メイン演算手段が選択される場合であって、オプション基板が予め定められたプログラムを実行することによって画像を処理するプログラム処理手段を搭載する場合は、サブ演算手段を選択する。オプション基板がプログラム処理手段を搭載する場合は、同じ処理をメイン演算手段が実行する場合よりもサブ演算手段とプログラム処理とが実行する場合の方が処理速度が速い場合がある。このため、オプション基板が接続された場合の処理速度を速くすることができる。
【００２０】
好ましくは、切換手段は、特定状況選択手段によりサブ演算手段が選択される場合、メイン演算手段をエンドポイントに設定した後に起動するとともに、サブ演算手段をルートコンプレックスに設定した後に起動する重複起動手段を、含む。
【００２１】
この局面に従えば、オプション基板がプログラム処理手段を搭載する場合、メイン演算手段はエンドポイントに設定して起動され、サブ演算手段はルートコンプレックスに設定して起動される。このため、サブ演算手段でメイン演算手段を制御することができる。
【００２２】
好ましくは、オプション基板は、予め定められた処理をメイン演算手段に実行させるための起動プログラムを記憶するプログラム記憶手段を搭載しており、重複起動手段は、メイン演算手段にプログラム記憶手段に記憶された起動プログラムを実行させることによって起動する特定状況起動手段を含む。
【００２３】
この局面に従えば、オプション基板に搭載されたプログラム記憶手段に記憶された起動プログラムを、メイン演算手段に実行させるので、オプション基板が接続された画像形成装置においてメイン演算手段をエンドポイントに設定して起動することができる。
【００２４】
好ましくは、メイン演算手段と同一基板に搭載され、画像を処理する回路を有するメイン画像処理手段を、さらに備え、起動制御手段は、メイン演算手段およびサブ演算手段のいずれが選択される場合であっても、メイン画像処理手段を起動するメイン画像処理起動手段を含む。
【００２５】
この局面に従えば、画像形成装置がメイン画像処理手段を含む場合、オプション基板が接続される場合は、メイン画像処理手段はエンドポイントに設定されて起動するので、画像形成装置がオプション基板が接続される以前から有する機能を有効に利用することができる。
【００２６】
この発明の他の局面によれば、起動制御方法は、画像形成装置で実行される起動制御方法であって、画像形成装置は、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備えており、接続手段に接続されたオプション基板を検出する検出ステップと、オプション基板が検出される場合、メイン演算手段が起動する前の段階で、オプション基板に関する能力情報を取得する取得ステップと、取得された能力情報に基づいて、メイン演算手段とサブ演算手段のいずれか一方を選択する選択ステップと、メイン演算手段およびサブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換ステップと、を画像形成装置に実行させる。
【００２７】
この局面に従えば、画像形成装置に接続されるオプション基板の開発を容易にした画像形成装置の起動制御方法を提供することができる。
【００２８】
この発明のさらに他の局面によれば、起動制御プログラムは、画像形成装置の起動を制御するコンピューターで実行される起動制御プログラムであって、画像形成装置は、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたメイン演算手段と、ＰＣＩＥｘｐｒｅｓｓのルートコンプレックスに設定されたサブ演算手段を搭載するオプション基板を接続可能な接続手段と、を備えており、接続手段に接続されたオプション基板を検出する検出ステップと、オプション基板が検出される場合、メイン演算手段が起動する前の段階で、オプション基板に関する能力情報を取得する取得ステップと、取得された能力情報に基づいて、メイン演算手段とサブ演算手段のいずれか一方を選択する選択ステップと、メイン演算手段およびサブ演算手段のうちから選択された一方をルートコンプレックスとして起動する切換ステップと、をコンピューターに実行させる。
【００２９】
この局面に従えば、画像形成装置に接続されるオプション基板の開発を容易にした起動制御プログラムを提供することができる。
【図面の簡単な説明】
【００３０】
【図１】本実施の形態の一つにおけるＭＦＰの外観を示す斜視図である。
【図２】ＭＦＰのハードウェア構成の概要の一例を示すブロック図である。
【図３】メイン基板の詳細な構成の一例を示すブロック図である。
【図４】起動用ＣＰＵが有する機能の一例を示すブロック図である。
【図５】起動制御処理の流れの一例を示す第１のフローチャートである。
【図６】起動制御処理の流れの一例を示す第２のフローチャートである。
【図７】第１のオプション基板の詳細な構成の一例を示すブロック図である。
【図８】第２のオプション基板の詳細な構成の一例を示すブロック図である。
【図９】第３のオプション基板の詳細な構成の一例を示すブロック図である。
【図１０】第４のオプション基板の詳細な構成の一例を示すブロック図である。
【発明を実施するための形態】
【００３１】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００３２】
図１は、本実施の形態の一つにおけるＭＦＰの外観を示す斜視図である。図１を参照して、ＭＦＰ１００は、画像形成装置の一例であり、原稿を読み取るための原稿読取部１３０と、原稿を原稿読取部１３０に搬送するための自動原稿搬送装置１２０と、原稿読取部１３０が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部１４０と、画像形成部１４０に用紙を供給するための給紙部１５０と、ユーザーインターフェースとしての操作パネル１１５とを含む。
【００３３】
自動原稿搬送装置１２０は、原稿給紙トレイ上にセットされた複数枚の原稿を１枚ずつ自動的に原稿読取部１３０のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部１３０により原稿画像が読み取られた原稿を原稿排紙トレイ上に排出する。原稿読取部１３０は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部１４０に出力する。給紙部１５０は、給紙トレイに収納された用紙を画像形成部１４０に搬送する。
【００３４】
画像形成部１４０は、周知の電子写真方式により画像を形成するものであって、原稿読取部１３０から入力される画像データにシェーディング補正などの各種のデータ処理を施した、データ処理後の画像データまたは、外部から受信された画像データに基づいて、給紙部１５０により搬送される用紙に画像を形成する。
【００３５】
操作パネル１１５は、ＭＦＰ１００の上面に設けられ、操作画面等を表示するとともに、ユーザーによる操作を受け付けるユーザーインターフェースとして機能する。
【００３６】
図２は、ＭＦＰのハードウェア構成の概要の一例を示すブロック図である。図２を参照して、ＭＦＰ１００は、上述した、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０および給紙部１５０に加えて、メイン基板１１１と、通信インターフェース（Ｉ／Ｆ）部１６０と、ファクシミリ部１７０と、外部記憶装置１８０と、を含み、それぞれがＰＣＩ−ＥｘＰｒｅｓｓの規格で定められたバス（以下「ＰＣＩ−Ｅバス」という）で接続されている。
【００３７】
メイン基板１１１は、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１３および操作パネル１１５と接続される。また、メイン基板１１１は、オプション基板２０１を接続可能である。ＭＦＰ１００は、デフォルトの状態では、メイン基板１１１にオプション基板２０１は接続されていない。オプション基板２０１の詳細は後述する。
【００３８】
メイン基板１１１は、ＭＦＰ１００の全体を制御するメインＣＰＵ（中央演算装置）１３（図３参照）を備えており、デフォルトの状態では、メインＣＰＵ１３が、ＰＣＩ−Ｅバスにおいてルートコンプレックスに設定され、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、通信Ｉ／Ｆ部１６０、ファクシミリ部１７０、外部記憶装置１８０それぞれが、エンドポイントに設定される。
【００３９】
通信Ｉ／Ｆ部１６０は、ネットワークにＭＦＰ１００を接続するためのインターフェースである。通信Ｉ／Ｆ部１６０は、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の通信プロトコルで、ネットワークに接続された他のコンピューターと通信する。なお、通信のためのプロトコルは、特に限定されることはなく、任意のプロトコルを用いることができる。また、通信Ｉ／Ｆ部１６０が接続されるネットワークは、例えば、ローカルエリアネットワーク（ＬＡＮ）であり、接続形態は有線または無線を問わない。またネットワークは、ＬＡＮに限らず、ワイドエリアネットワーク（ＷＡＮ）、公衆交換電話網（Ｐｕｂｌｉｃ  Ｓｗｉｔｃｈｅｄ  Ｔｅｌｅｐｈｏｎｅ  Ｎｅｔｗｏｒｋｓ）を用いたネットワーク等であってもよい。さらに、ネットワークは、インターネットに接続されている。このため、ＭＦＰ１００は、インターネットに接続されたサーバー等のコンピューターと通信が可能である。
【００４０】
ファクシミリ部１７０は、公衆交換電話網（ＰＳＴＮ）に接続され、ファクシミリデータを送受信する。外部記憶装置１８０は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１８０Ａ、または半導体メモリーが装着される。外部記憶装置１８０は、ＣＤ−ＲＯＭ１１８または半導体メモリーに記憶されたデータを読み出す。外部記憶装置１８０は、半導体メモリーにデータを記憶する。
【００４１】
操作パネル１１５は、表示部１１７と、操作部１１９と、を含む。表示部１１７は、例えば、液晶表示装置（ＬＣＤ）であり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。操作部１１９は、複数のハードキーと、タッチパネルと、を含む。タッチパネルは、表示部１１７の上面または下面に表示部に重畳して設けられたマルチタッチ対応のタッチパネルであり、表示部の表示面中でユーザーにより指示された位置を検出する。
【００４２】
図３は、メイン基板の詳細な構成の一例を示すブロック図である。図３を参照して、メイン基板１１１は、メインＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−Ｃｈｉｐ）１１と、起動用ＣＰＵ２１と、電源回路３１と、メインメモリー回路４１と、接続コネクタ５１と、を含む。
【００４３】
メインＳｏＣ１１は、メインＣＰＵ１３と、メイン画像制御ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１５と、を含む。
【００４４】
メインメモリー回路４１は、メインＣＰＵ１３が実行するためのプログラム等を記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４３と、メインＣＰＵ１３の作業領域として使用されるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４５と、を含む。
【００４５】
メインＣＰＵ１３は、起動用ＣＰＵ２１により制御されて起動し、メインメモリー回路４１に含まれるＲＯＭ４３に記憶されたプログラムをＲＡＭ４５にロードして実行することにより、ＭＦＰ１００の全体を制御する。また、メインＣＰＵ１３は、ＨＤＤ１１３と接続されており、ＨＤＤ１１３を制御するプログラムを実行することにより、ＨＤＤ１１３に記憶されたデータにアクセス可能である。
【００４６】
メイン画像制御ＡＳＩＣ１５は、メインＣＰＵ１３とＰＣＩ−Ｅバスで接続され、メインＣＰＵ１３がルートコンプレックスの場合にメインＣＰＵ１３により制御される。メイン画像制御ＡＳＩＣ１５は、画像を処理する画像処理回路と、データの入出力を制御する入出力制御回路とを含む。メイン画像制御ＡＳＩＣ１５は、操作パネル１１５と接続される。したがって、メインＣＰＵ１３は、メイン画像制御ＡＳＩＣ１５に画像処理を実行させることが可能である。また、メインＣＰＵ１３は、メイン画像制御ＡＳＩＣ１５を介して操作パネル１１５の表示部１１７に画面を表示させるとともに、操作部１１９によって受け付けられたユーザーによる操作を検出することができる。
【００４７】
起動用ＣＰＵ２１は、ＭＦＰ１００に電源が投入される起動時に、起動用プログラムを実行し、メインＳｏＣ１１および電源回路３１を制御する。起動用ＣＰＵ２１が実行する起動用プログラムは、メインメモリー回路４１が備えるＲＯＭ４３に記憶されている。なお、起動用プログラムは、ＲＯＭ４３とは別に設けられたＲＯＭに記憶するようにしてもよいし、外部記憶装置１８０に装着されたＣＤ−ＲＯＭ１８０Ａに記録するようにしてもよい。なお、ＣＰＵ１１１が実行するプログラムは、ＲＯＭ４３、ＨＤＤ１１３、ＣＤ−ＲＯＭ１８０Ａに記録されたプログラムに限られず、ＨＤＤ１１３に記憶されたプログラムをＲＡＭにロードして実行するようにしてもよい。この場合、ネットワークを介して接続された他のコンピューターが、ＭＦＰ１００のＨＤＤ１１３に記憶された起動制御プログラムを書き換える、または、新たな起動制御プログラムを追加して書き込むようにしてもよい。さらに、ＭＦＰ１００が、ネットワークに接続された他のコンピューターから起動制御プログラムをダウンロードして、その起動制御プログラムをＨＤＤ１１３に記憶するようにしてもよい。ここでいうプログラムは、起動用ＣＰＵ２１が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００４８】
接続コネクタ５１は、オプション基板２０１と接続可能であり、電源コネクタ５３と、読取バス用コネクタ５５と、制御バス用コネクタ５７と、ＰＣＩ−Ｅバス用コネクタ５９と、を含む。電源コネクタ５３は、電源回路３１と接続され、オプション基板２０１が接続される場合に、電源回路３１から出力される電力をオプション基板２０１に供給する。読取バス用コネクタ５５は、起動用ＣＰＵ２１の読取バスに接続され、制御バス用コネクタ５７は、起動用ＣＰＵ２１の制御バスに接続される。ＰＣＩ−Ｅバス用コネクタ５９は、メインＣＰＵ１３およびメイン画像処理用ＡＳＩＣ１５それぞれのＰＣＩ−Ｅバスに接続される。なお、ＰＣＩ−Ｅバス用コネクタ５９は、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、通信Ｉ／Ｆ部１６０、ファクシミリ部１７０、外部記憶装置１８０が接続されるＰＣＩ−Ｅバスに接続される。
【００４９】
電源回路３１は、メインＳｏＣ１１、起動用ＣＰＵ２１、メインメモリー回路４１、接続コネクタ５１に電力を供給する。電源回路３１は、起動用ＣＰＵ２１によって制御され、メインＣＰＵ１３、メイン画像制御ＡＳＩＣ１５およびメインメモリー回路４１それぞれに電力を供給する状態と、電力を供給しない状態とを切り換える。また、電源回路３１は、起動用ＣＰＵ２１によって制御され、オプション基板２０１に電力を供給する状態と、電力を供給しない状態とを切り換える。具体的には、電源回路３１は、ＭＦＰ１００に電源が投入された時点で、起動用ＣＰＵ２１のみに電力を供給し、その後は、起動用ＣＰＵ２１からの制御によって、メインＣＰＵ１３、メイン画像制御ＡＳＩＣ１５、メインメモリー回路４１および電源コネクタ５３それぞれに電力を供給する状態と、電力を供給しない状態とを切り換える。
【００５０】
オプション基板２０１は、接続コネクタ５１と接続されるコネクタを有する。オプション基板２０１は、メイン基板１１１と接続される場合、メイン基板１１１から電源コネクタ５３を介して電力が供給される。オプション基板２０１は、ＣＰＵまたはＳｏＣを備えており、その制御バスが制御バス用コネクタ５７に接続される。さらに、オプション基板２０１が備えるＣＰＵまたはＳｏＣのＰＣＩ−Ｅバスは、ＰＣＩ−Ｅバス用コネクタ５９に接続される。以下、オプション基板２０１が備えるＣＰＵまたはＳｏＣに含まれるＣＰＵを、サブＣＰＵという。
【００５１】
オプション基板２０１が備えるサブＣＰＵは、メイン基板１１１の起動用ＣＰＵ２１により制御されて起動し、オプション基板２０１が備えるＲＯＭに記憶されたプログラムを実行し、ルートコンプレックスとして起動する。オプション基板２０１が備えるＲＯＭは、オプション基板２０１が備えるサブＣＰＵをルートコンプレックスに設定するプログラムを記憶する。
【００５２】
さらに、オプション基板２０１は、オプション基板２０１の能力情報を記憶するオプションＲＯＭを備えており、そのオプションＲＯＭの読取バスは、読取バス用コネクタ５５と接続される。以下、能力情報をオプションＩＤという。オプションＩＤは、オプション基板２０１が備えるサブＣＰＵの性能、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）搭載の有無、サブ画像制御ＡＳＩＣ搭載の有無、ブート制御情報、電源制御情報と、ブートプログラムに関する情報と、を含む。オプション基板２０１が備えるサブＣＰＵの性能は、サブＣＰＵが駆動するクロック周波数、クロック精度（ｐｐｍ（ｐａｒｔｓ  ｐｅｒ  ｍｉｌｌｉｏｎ））、コア数を含む。ブート制御情報は、サブＣＰＵのＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に関する情報、サブ画像制御ＡＳＩＣを搭載している場合にはそのサブ画像制御ＡＳＩＣのＧＰＩＯに関する情報、ＧＰＵを搭載している場合にはそのＧＰＵのＧＰＩＯに関する情報、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムに関する情報を含む。電源情報は、電源コネクタ５３が有する複数の接続ピンそれぞれに対応する回路の情報である。具体的には、電源情報は、電源コネクタ５３が有する複数の接続ピンと、オプション基板２０１が備える複数の部品それぞれの電源入力ピンとの対応関係を示す。ブートプログラムに関する情報は、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムの有無、およびそのブートプログラムのメモリーアドレスと、を含む。
【００５３】
メインＣＰＵ１３がルートコンプレックスとして起動する場合、メインＣＰＵ１３は、ＰＣＩ−Ｅバスを用いて、終端抵抗を検出することによりエンドポイントを検出し、検出されたエンドポイントとの間でハードウェア的にリンクを確立するためのトレーニングシーケンスを実行することによってエンドポイントとリンクを確立する。その後、メインＣＰＵ１３は、リンクを確立したエンドポイントとなる装置の情報を読み取り、エンドポイントとなる装置を制御するのに必要な設定をする（マッピング）。オプション基板が接続されていない場合、メインＣＰＵ１３は、メイン画像制御ＡＳＩＣ１５、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、通信Ｉ／Ｆ部１６０、ファクシミリ部１７０、外部記憶装置１８０それぞれを、エンドポイントとして検出し、制御可能に設定する。
【００５４】
図４は、起動用ＣＰＵが有する機能の一例を示すブロック図である。図４に示す機能は、起動用ＣＰＵ２１が、ＲＯＭ４３に記憶された起動制御プログラムを実行することにより、起動用ＣＰＵ２１に形成される機能である。図４を参照して、起動用ＣＰＵ２１は、オプション基板２０１の接続有無を検出する検出部６１と、オプション基板２０１のオプションＩＤを取得する取得部６３と、選択部６５と、メイン画像処理起動部６７と、サブ画像処理起動部６９と、遮断部７１と、切換部７３と、を含む。
【００５５】
検出部６１は、ＭＦＰ１００に電源が投入された時点で、接続コネクタ５１にオプション基板２０１が接続されているか否かを判断する。具体的には、検出部６１は、読取バス用コネクタ５５を介してオプション基板２０１が備えるオプションＲＯＭにアクセス可能な場合に、接続コネクタ５１にオプション基板２０１が接続されていると判断する。検出部６１は、接続コネクタ５１にオプション基板２０１が接続されていると判断する場合、取得部６３に取得指示を出力する。
【００５６】
取得部６３は、取得指示が入力されることに応じて、読取バス用コネクタ５５を介してオプション基板２０１が備えるオプションＲＯＭに記憶されたオプション基板２０１のオプションＩＤを取得する。取得部６３は、取得されたオプションＩＤを選択部６５、サブ画像処理起動部６９、遮断部７１および切換部７３に出力する。
【００５７】
選択部６５は、オプション基板２０１のオプションＩＤに基づいて、メインＣＰＵ１３と、オプション基板２０１が備えるサブＣＰＵのいずれか一方を選択する。選択部６５は、速度比較部８１と、速度基準選択部８３と、特定状況選択部８５と、を含む。速度比較部８１は、メインＣＰＵ１３の演算速度と、オプション基板２０１が備えるサブＣＰＵの演算速度と、を比較する。オプション基板２０１のオプションＩＤに含まれるクロック周波数に基づき、演算速度を比較し、比較結果を速度基準選択部８３に出力する。なお、クロック周波数だけでなく、クロック精度、コア数を比較の基準とするようにしてもよい。
【００５８】
速度基準選択部８３は、速度比較部８１から入力される比較結果に基づいて、メインＣＰＵ１３とオプション基板２０１が備えるサブＣＰＵのうち演算速度の速い一方を選択する。速度基準選択部８３は、メインＣＰＵ１３を選択する場合、特定状況選択部８５にメインＣＰＵ１３を選択することを示す第１選択指示を出力する。速度基準選択部８３は、特定状況選択部８５に第１選択指示を出力した後、特定状況選択部８５から不選択信号が入力されることを条件に、切換部７３、サブ画像処理起動部６９および遮断部７１にメインＣＰＵ１３を選択したことを示す切換指示を出力する。速度基準選択部８３は、特定状況選択部８５に第１選択指示を出力した後、特定状況選択部８５から第１重複選択信号が入力される場合、切換部７３、サブ画像処理起動部６９および遮断部７１にメインＣＰＵ１３を選択したことを示す切換指示を出力しない。
【００５９】
速度基準選択部８３は、オプション基板２０１が備えるサブＣＰＵを選択する場合、特定状況選択部８５にオプション基板２０１が備えるサブＣＰＵを選択することを示す第２選択指示を出力する。速度基準選択部８３は、特定状況選択部８５に第２選択指示を出力した後、特定状況選択部８５から不選択信号が入力されることを条件に、切換部７３、サブ画像処理起動部６９および遮断部７１にオプション基板２０１が備えるＣＰＵを選択したことを示す切換指示を出力する。速度基準選択部８３は、特定状況選択部８５に第２選択指示を出力した後、特定状況選択部８５から第２重複選択信号が入力される場合、切換部７３、サブ画像処理起動部６９および遮断部７１にメインＣＰＵ１３を選択したことを示す切換指示を出力しない。
【００６０】
特定状況選択部８５は、速度基準選択部８３から第１選択指示が入力される場合、オプション基板２０１のオプションＩＤを参照して、オプション基板２０１がＧＰＵを有しており、かつ、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶しているか否かを判断する。特定状況選択部８５は、オプション基板２０１がＧＰＵを有しており、かつ、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶している場合は、サブＣＰＵを選択し、切換部７３および速度基準選択部８３にサブＣＰＵを選択したことを示す第１重複起動信号を出力する。特定状況選択部８５は、オプション基板２０１がＧＰＵを有していない場合、または、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶していない場合は、オプション基板が備えるサブＣＰＵを選択することなく、速度基準選択部８３に不選択信号を出力する。
【００６１】
特定状況選択部８５は、速度基準選択部８３から第２選択指示が入力される場合、オプション基板２０１のオプションＩＤを参照して、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶しているか否かを判断する。また、特定状況選択部８５は、ＨＤＤ１１３を使用するか否かを判断する。ＨＤＤ１１３を使用するか否かは、ＭＦＰ１００に予め設定しておいてもよいし、ＭＦＰ１００の起動時に、ユーザーが操作部１１９に入力するようにしてもよい。特定状況選択部８５は、オプション基板２０１がメインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶している場合であって、ＨＤＤ１１３を使用することが設定されている場合、切換部７３および速度基準選択部８３にＨＤＤ１１３を使用することを示す第２重複起動信号を出力する。特定状況選択部８５は、ＨＤＤ１１３を使用することが設定されていない場合、または、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶していない場合は、速度基準選択部８３に不選択信号を出力する。
【００６２】
メイン画像処理起動部６７は、ＭＦＰ１００に電源が投入された時点で、メイン画像制御ＡＳＩＣ１５を起動する。具体的には、電源回路３１を制御して、メイン画像制御ＡＳＩＣ１５に電力を供給させ、メイン画像制御ＡＳＩＣ１５をリセットする。メイン画像制御ＡＳＩＣ１５は、ＰＣＩ−Ｅバスにおいてエンドポイントに設定されているので、電源回路３１から電力が供給され、リセット信号が入力されるとエンドポイントとして起動し、メインＣＰＵ１３およびオプション基板２０１が備えるサブＣＰＵのうちルートコンプレックスに設定される一方によって制御される。
【００６３】
サブ画像処理起動部６９は、取得部６３からオプション基板２０１のオプションＩＤが入力され、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示またはオプション基板２０１が備えるサブＣＰＵを選択したことを示す切換指示が入力される。サブ画像処理起動部６９は、オプション基板２０１のオプションＩＤのサブ画像制御ＡＳＩＣ搭載の有無を参照し、オプション基板２０１にサブ画像制御ＡＳＩＣが搭載されているか否かを判断する。サブ画像処理起動部６９は、オプション基板２０１がサブ画像制御ＡＳＩＣを搭載していれば、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示またはサブＣＰＵを選択したことを示す切換指示のいずれかが入力されことに応じて、オプション基板２０１が備えるサブ画像制御ＡＳＩＣを起動する。
【００６４】
具体的には、サブ画像処理起動部６９は、オプション基板２０１が備えるサブ画像制御ＡＳＩＣを起動する場合、オプション基板２０１のオプションＩＤに含まれる電源情報を参照して、電源コネクタ５３が有する複数の接続ピンのうちオプション基板２０１が備えるサブ画像制御ＡＳＩＣの電源入力ピンに対応する接続ピンを特定し、電源回路３１に電源コネクタ５３の特定された接続ピンに電力を供給させる。オプション基板２０１が備えるサブ画像制御ＡＳＩＣは、ＰＣＩ−Ｅバスにおいてエンドポイントに設定されているので、電源回路３１から電力が供給されるとエンドポイントとして起動し、メインＣＰＵ１３およびオプション基板２０１が備えるサブＣＰＵのうちルートコンプレックスに設定される一方によって制御される。
【００６５】
遮断部７１は、取得部６３からオプション基板２０１のオプションＩＤが入力され、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示またはオプション基板２０１が備えるサブＣＰＵを選択したことを示す切換指示が入力される。サブ画像処理起動部６９は、オプション基板２０１のオプションＩＤに含まれるサブ画像制御ＡＳＩＣ搭載の有無を参照し、オプション基板２０１にサブ画像制御ＡＳＩＣが搭載されているか否かを判断するとともに、オプション基板２０１のオプションＩＤに含まれるＧＰＵ搭載の有無を参照し、オプション基板２０１にＧＰＵが搭載されているか否かを判断する。
【００６６】
遮断部７１は、オプション基板２０１がサブ画像制御ＡＳＩＣを搭載している場合、または、オプション基板２０１がＧＰＵを搭載している場合、何も出力しない。また、遮断部７１は、オプション基板２０１がサブ画像制御ＡＳＩＣを搭載している場合、または、オプション基板２０１がＧＰＵを搭載している場合であって、速度基準選択部８３からオプション基板２０１が備えるサブＣＰＵを選択したことを示す切換指示を選択したことを示す切換指示が入力される場合、何も出力しない。
【００６７】
一方、遮断部７１は、オプション基板２０１がサブ画像制御ＡＳＩＣおよびＧＰＵのいずれも搭載していない場合であって、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示が入力されことに応じて、電源回路３１を制御して、電源コネクタ５３に供給する電力を遮断させる。これにより、オプション基板２０１に電力が供給されないので、オプション基板２０１により消費される電力を削減することができる。
【００６８】
切換部７３は、メインＣＰＵ１３およびサブＣＰＵのいずれか一方をルートコンプレックスとして起動する。切換部７３は、取得部６３からオプション基板２０１のオプションＩＤが入力され、選択部６５からメインＣＰＵ１３を選択したことを示す切換指示、サブＣＰＵを選択したことを示す切換指示、第１の重複起動指示または第２の重複起動指示のいずれかが入力される。
【００６９】
切換部７３は、選択起動部８９と、重複起動部９１と、を含む。選択起動部８９は、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示が入力される場合、メインＣＰＵ１３をルートコンプレックスとして起動する。具体的には、選択起動部８９は、電源回路３１にメインＣＰＵ１３の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３をリセットする。メインＣＰＵ１３は、リセットされると、ＲＯＭ４３に記憶されているプログラムを実行する。ＲＯＭ４３に記憶されているプログラムは、メインＣＰＵ１３をルートコンプレックスに設定するので、メインＣＰＵ１３は、ＲＯＭ４３に記憶されているプログラムを実行することによってルートコンプレックスとして起動する。
【００７０】
また、選択起動部８９は、速度基準選択部８３からメインＣＰＵ１３を選択したことを示す切換指示が入力される場合、サブＣＰＵを起動しない。具体的には、オプション基板２０１のオプションＩＤに含まれる電源情報を参照して、接続コネクタ５１が備える複数の接続ピンのうちオプション基板２０１が備えるサブＣＰＵの電源入力ピンに対応する接続ピンを特定し、電源回路３１に特定された接続ピンに供給する電力を遮断させる。オプション基板２０１が備えるサブＣＰＵは、電力が供給されないので、起動しない。
【００７１】
選択起動部８９は、速度基準選択部８３からオプション基板２０１が備えるサブＣＰＵを選択したことを示す切換指示が入力される場合、オプション基板２０１が備えるサブＣＰＵをルートコンプレックスとして起動する。具体的には、オプション基板２０１のオプションＩＤに含まれる電源情報を参照して、接続コネクタ５１が備える複数の接続ピンのうちオプション基板２０１が備えるサブＣＰＵの電源入力ピンに対応する接続ピンを特定し、電源回路３１に特定された接続ピンに電力を供給させる。さらに、オプション基板２０１のオプションＩＤに含まれるブート情報を参照して、オプション基板２０１が備えるサブＣＰＵのＧＰＩＯに関する情報を特定し、オプション基板２０１が備えるサブＣＰＵにリセット信号を出力する。起動用ＣＰＵ２１の制御バスは、制御バス用コネクタ５７を介してオプション基板２０１が備えるサブＣＰＵの制御バスと接続されているので、選択起動部８９は、制御バスを用いてオプション基板２０１が備えるサブＣＰＵをリセットする。オプション基板２０１が備えるサブＣＰＵは、リセットされると、オプション基板２０１が備えるＲＯＭに記憶されたプログラムを実行する。オプション基板２０１が備えるＲＯＭに記憶されたプログラムは、オプション基板２０１が備えるサブＣＰＵをルートコンプレックスに設定するので、オプション基板２０１が備えるサブＣＰＵはオプション基板２０１が備えるＲＯＭに記憶されたプログラムを実行することによってルートコンプレックスとして起動する。
【００７２】
また、選択起動部８９は、速度基準選択部８３からサブＣＰＵを選択したことを示す切換指示が入力される場合、メインＣＰＵ１３を起動しない。具体的には、電源回路３１にメインＣＰＵ１３の電源入力ピンに供給する電力を遮断させる。メインＣＰＵ１３は、電力が供給されないので、起動しない。
【００７３】
重複起動部９１は、特定状況選択部８５から第１重複起動信号または第２重複起動信号が入力される場合、メインＣＰＵ１３をエンドポイントとして起動するとともに、オプション基板２０１が備えるサブＣＰＵをルートコンプレックスとして起動する。重複起動部９１は、特定状況起動部９３を含む。特定状況起動部９３は、オプション基板２０１のオプションＩＤを参照して、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムのメモリーアドレスを特定する。そして、特定状況起動部９３は、電源回路３１にメインＣＰＵ１３の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３のブートプログラムをオプション基板２０１に記憶されたブートプログラムに設定し、リセットする。
【００７４】
メインＣＰＵ１３は、ブートプログラムをオプション基板２０１に記憶されたブートプログラムに設定されてリセットされると、オプション基板２０１に記憶されたブートプログラムを実行する。オプション基板２０１に記憶されたブートプログラムは、メインＣＰＵ１３をエンドポイントに設定するので、メインＣＰＵ１３は、オプション基板２０１に記憶されたブートプログラムを実行することによってエンドポイントとして起動する。メインＣＰＵ１３は、エンドポイントとして起動する場合、ＨＤＤ１１３を制御するプログラムを実行し、ＨＤＤ１１３を制御する。
【００７５】
さらに、重複起動部９１は、電源回路３１にオプション基板２０１が備えるサブＣＰＵの電源入力ピンに電力を供給させるとともに、オプション基板２０１が備えるサブＣＰＵにリセット信号を出力する。オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＲＯＭに記憶されたプログラムを実行し、ルートコンプレックスとして起動する。このため、オプション基板２０１が備えるサブＣＰＵは、重複起動部９１によってリセットされると、ルートコンプレックスとして起動する。
【００７６】
図５および図６は、起動制御処理の流れの一例を示すフローチャートである。起動制御処理は、起動用ＣＰＵ２１が、ＭＦＰ１００に電源が投入された時点でＲＯＭに記憶された起動制御プログラムを実行することにより、起動用ＣＰＵ２１により実行される処理である。図５を参照して、起動用ＣＰＵ２１は、オプション基板２０１を検出したか否かを判断する（ステップＳ０１）。オプション基板２０１を検出したならば処理をステップＳ０３に進めるが、そうでなければ処理をステップＳ０２に進める。ステップＳ０２においては、メインＳｏＣ１１を起動し、処理を終了する。具体的には、電源回路３１に、メインＳｏＣ１１およびメインメモリー回路４１に電力を供給させ、メインＣＰＵ１３をリセットする。
【００７７】
ステップＳ０３においては、オプション基板２０１のオプションＩＤを取得する。具体的には、読取バス用コネクタ５５を介してオプション基板２０１が備えるオプションＲＯＭに記憶されたオプション基板２０１のオプションＩＤを取得する。次のステップＳ０４においては、オプション基板２０１が備えるサブＣＰＵの処理速度が、メインＣＰＵ１３の処理速度より大きいか否かを判断する。ステップＳ０３において取得されたオプションＩＤに含まれるサブＣＰＵのクロック周波数とメインＣＰＵ１３のクロック周波数とを比較する。オプション基板２０１が備えるサブＣＰＵの処理速度がメインＣＰＵ１３の処理速度がより大きいならば処理をステップＳ０５に進めるが、そうでなければ処理をステップＳ１６に進める。
【００７８】
ステップＳ０５においては、周辺装置を使用するか否かを判断する。ＨＤＤ１１３を使用することが予め定められているかを判断する。また、ユーザーが操作部１１９に入力する操作によって、ＨＤＤ１１３を使用するか否かを決定してもよい。ＨＤＤ１１３を使用するならば処理をステップＳ０６に進めるが、そうでなければ処理をステップＳ１０に進める。
【００７９】
ステップＳ０７においては、メインＣＰＵ１３のブートプログラムを、オプション基板２０１に記憶されたブートプログラムに変更する。そして、メインＳｏＣを起動する（ステップＳ０８）。具体的には、電源回路３１にメインＣＰＵ１３の電力入力ピンおよびメイン画像制御ＡＳＩＣ１５の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３をリセットする。これにより、メインＣＰＵ１３は、オプション基板２０１に記憶されたメインＣＰＵ１３のブートプログラムを実行し、エンドポイントとして起動する。
【００８０】
次のステップＳ０９においては、サブＳｏＣを起動し、処理を終了する。具体的には、電源回路３１に、オプション基板２０１のサブＳｏＣの電源入力ピンに電力を供給させるとともに、サブＣＰＵをリセットする。これにより、オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＲＯＭに記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、オプション基板２０１が備えるサブＣＰＵがルートコンプレックスであり、メインＣＰＵ１３およびメイン画像制御ＡＳＩＣ１５は、エンドポイントである。このため、オプション基板２０１が備えるサブＣＰＵは、メイン画像制御ＡＳＩＣ１５を制御可能となる。また、メインＣＰＵ１３は、ＨＤＤ１１３にアクセスするプログラムを実行するので、オプション基板２０１が備えるサブＣＰＵは、ＨＤＤ１１３を制御可能となる。
【００８１】
ステップＳ１０においては、メインＣＰＵの電源をＯＦＦに設定する。具体的には、メインＣＰＵ１３の電源入力ピンに電力を供給させないように電源回路３１を制御する。ステップＳ１１においては、メインメモリー回路４１の電源をＯＦＦに設定する。具体的には、メインメモリー回路４１の電源入力ピンに電力を供給させないように電源回路３１を制御する。ステップＳ１２においては、メイン画像制御ＡＳＩＣ１５を起動する。具体的には、メイン画像制御ＡＳＩＣ１５の電源入力ピンに電力を供給させるように電源回路３１を制御する。
【００８２】
ステップＳ１３においては、オプション基板２０１は、ＳｏＣを搭載しているか否かを判断する。ステップＳ０３において取得されたオプションＩＤに含まれるＧＰＵ搭載の有無が「有」に設定されている場合、または画像制御ＡＳＩＣ搭載の有無が「有」に設定されている場合、オプション基板はＳｏＣを搭載していると判断する。オプション基板２０１がＳｏＣを搭載しているならば処理をステップＳ１４に進め、そうでなければ処理をステップＳ１５に進める。
【００８３】
ステップＳ１４においては、サブＳｏＣを起動し、処理を終了する。具体的には、オプション基板２０１が、サブ画像制御ＡＳＩＣまたはＧＰＵを備える場合、電源回路３１にサブ画像制御ＡＳＩＣまたはＧＰＵそれぞれの電力入力ピンに電力を供給させる。さらに、電源回路３１にサブＣＰＵの電力入力ピンに電力を供給させるとともに、サブＣＰＵをリセットする。これにより、オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＲＯＭに記憶されたサブＣＰＵのブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、オプション基板２０１が備えるサブＣＰＵがルートコンプレックスであり、メイン画像制御ＡＳＩＣ１５はエンドポイントであり、オプション基板２０１が備えるサブ画像制御ＡＳＩＣまたはＧＰＵはエンドポイントである。このため、オプション基板２０１が備えるサブＣＰＵは、メイン画像制御ＡＳＩＣ１５、および、オプション基板２０１が備えるサブ画像制御ＡＳＩＣまたはＧＰＵを制御可能となる。
【００８４】
ステップＳ１５においては、サブＣＰＵを起動し、処理を終了する。具体的には、電源回路３１にサブＣＰＵの電力入力ピンに電力を供給させるとともに、サブＣＰＵをリセットする。これにより、オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＲＯＭに記憶されたサブＣＰＵのブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、オプション基板２０１が備えるサブＣＰＵがルートコンプレックスであり、メイン画像制御ＡＳＩＣ１５はエンドポイントである。このため、オプション基板２０１が備えるサブＣＰＵは、メイン画像制御ＡＳＩＣ１５を制御可能となる。
【００８５】
処理がステップＳ１６に進む場合、メインＣＰＵ１３の処理速度が、オプション基板２０１が備えるサブＣＰＵの処理速度以上の場合である。ステップＳ１６においては、オプション基板はＳｏＣを搭載しているか否かを判断する。ステップＳ０３において取得されたオプションＩＤに含まれるＧＰＵ搭載の有無が「有」に設定されている場合、または画像制御ＡＳＩＣ搭載の有無が「有」に設定されている場合、オプション基板はＳｏＣを搭載していると判断する。ステップＳ０３において取得されたオプションＩＤに含まれるＧＰＵ搭載の有無が「無」に設定されており、かつ、画像制御ＡＳＩＣ搭載の有無が「無」に設定されている場合、オプション基板はＳｏＣを搭載していないと判断する。オプション基板はＳｏＣを搭載しているならば処理をステップＳ１７に進めるが、そうでなければ処理をステップＳ２６に進める。
【００８６】
ステップＳ１７においては、オプション基板２０１はＧＰＵを搭載しているか否かを判断する。ステップＳ０３において取得されたオプションＩＤに含まれるＧＰＵ搭載の有無が「有」に設定されているならば処理をステップＳ１８に進めるが、「無」に設定されているならば処理をステップＳ２３に進める。
【００８７】
ステップＳ１８においては、オプション基板２０１はメインＣＰＵ１３のブートプログラムを記憶しているか否かを判断する。ステップＳ０３において取得されたオプションＩＤに含まれるブートプログラムに関する情報を参照して、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムの有無が「有」に設定されていれば処理をステップＳ１９に進めるが、そうでなければ処理をステップＳ２２に進める。
【００８８】
ステップＳ１９においては、メインＣＰＵ１３のブートプログラムを、オプション基板２０１に記憶されたブートプログラムに変更する。そして、メインＳｏＣを起動する（ステップＳ２０）。具体的には、電源回路３１にメインＣＰＵ１３の電力入力ピンおよびメイン画像制御ＡＳＩＣ１５の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３をリセットする。これにより、メインＣＰＵ１３は、オプション基板２０１に記憶されたメインＣＰＵ１３のブートプログラムを実行し、エンドポイントとして起動する。
【００８９】
次のステップＳ２１においては、サブＳｏＣを起動し、処理を終了する。具体的には、電源回路３１に、オプション基板２０１のサブＣＰＵおよびＧＰＵそれぞれの電源入力ピンに電力を供給させるとともに、サブＣＰＵをリセットする。これにより、オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＲＯＭに記憶されたブートプログラムを実行し、ルートコンプレックスとして起動し、オプション基板２０１が備えるＧＰＵは、エンドポイントとして起動する。この場合、オプション基板２０１が備えるサブＣＰＵがルートコンプレックスであり、オプション基板２０１が備えるＧＰＵはエンドポイントであり、メインＣＰＵ１３およびメイン画像制御ＡＳＩＣ１５は、エンドポイントである。このため、オプション基板２０１が備えるサブＣＰＵは、オプション基板２０１が備えるＧＰＵ、およびメイン画像制御ＡＳＩＣ１５を制御可能となる。また、メインＣＰＵ１３はＨＤＤ１１３にアクセスするプログラムを実行するので、オプション基板２０１が備えるサブＣＰＵは、ＨＤＤ１１３を制御可能となる。
【００９０】
一方、ステップＳ２２においては、オプション基板２０１が備えるサブＣＰＵの電源をＯＦＦに設定する。具体的には、オプション基板２０１のサブＣＰＵの電源入力ピンに電力を供給させないように電源回路３１を制御する。
【００９１】
次のステップＳ２３においては、オプション基板２０１が備えるサブメモリー回路の電源をＯＦＦに設定する。具体的には、オプション基板２０１が備えるサブメモリー回路の電源入力ピンに電力を供給させないように電源回路３１を制御する。
【００９２】
次のステップＳ２４においては、オプション基板２０１が備えるサブ画像制御ＡＳＩＣを起動する。具体的には、オプション基板２０１が備えるサブ画像制御ＡＳＩＣの電源入力ピンに電力を供給させるように電源回路３１を制御する。
【００９３】
次のステップＳ２５においては、メインＳｏＣを起動し、処理を終了する。具体的には、電源回路３１にメインＣＰＵ１３の電力入力ピンおよびメイン画像制御ＡＳＩＣ１５の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３をリセットする。これにより、メインＣＰＵ１３は、メインメモリー回路４１のＲＯＭ４３に記憶されたメインＣＰＵ１３のブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、メインＣＰＵ１３がルートコンプレックスであり、メイン画像制御ＡＳＩＣ１５はエンドポイントであり、オプション基板２０１が備えるサブ画像制御ＡＳＩＣはエンドポイントである。このため、メインＣＰＵ１３は、メイン画像制御ＡＳＩＣ１５およびオプション基板２０１が備えるサブ画像制御ＡＳＩＣを制御可能となる。
【００９４】
処理がステップＳ２６に進む場合、メインＣＰＵ１３の処理速度が、オプション基板２０１が備えるサブＣＰＵの処理速度以上で、サブＣＰＵが汎用的な演算装置で、オプション基板２０１がＧＰＵまたはＡＳＩＣを搭載してない場合である。この場合には、ステップＳ２６において、オプション基板２０１へ供給する電力を遮断する。具体的には、電源コネクタ５３に電力を供給させないように電源回路３１を制御する。
【００９５】
次のステップＳ２７においては、メインＳｏＣを起動し、処理を終了する。具体的には、電源回路３１にメインＣＰＵ１３の電力入力ピンおよびメイン画像制御ＡＳＩＣ１５の電力入力ピンに電力を供給させるとともに、メインＣＰＵ１３をリセットする。これにより、メインＣＰＵ１３は、メインメモリー回路４１のＲＯＭ４３に記憶されたメインＣＰＵ１３のブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、メインＣＰＵ１３がルートコンプレックスであり、メイン画像制御ＡＳＩＣ１５はエンドポイントであり、オプション基板２０１に電力は供給されない。
【００９６】
次に、オプション基板２０１の具体例として第１〜第４のオプション基板２０１Ａ〜２０１Ｄを示し、それぞれがメイン基板１１１に接続される場合を説明する。
【００９７】
＜第１のオプション基板＞
図７は、第１のオプション基板の詳細な構成の一例を示すブロック図である。図７においては、第１のオプション基板２０１Ａがメイン基板１１１と接続された状態を示している。図７を参照して、第１のオプション基板２０１Ａは、サブＳｏＣ２１１と、サブメモリー回路２２１と、オプションＲＯＭ２３１と、を含む。
【００９８】
サブＳｏＣ２１１は、サブＣＰＵ２１３と、サブ画像制御ＡＳＩＣ２１５と、を含む。サブメモリー回路２２１は、サブＣＰＵ２１３が実行するためのプログラム等を記憶するＲＯＭ２２３と、サブＣＰＵ２１３の作業領域として使用されるＲＡＭ２２５と、を含む。
【００９９】
サブＣＰＵ２１３の制御バスは、メイン基板１１１の接続コネクタ５１の制御バス用コネクタ５７と接続され、サブＣＰＵ２１３のＰＣＩ−Ｅバスは、メイン基板１１１の接続コネクタ５１のＰＣＩ−Ｅバス用コネクタ５９と接続される。
【０１００】
サブ画像制御ＡＳＩＣ２１５のＰＣＩ−Ｅバスは、メイン基板１１１の接続コネクタ５１のＰＣＩ−Ｅバス用コネクタ５９と接続される。サブ画像制御ＡＳＩＣ２１５は、サブＣＰＵ２１３とＰＣＩ−Ｅバスで接続され、サブＣＰＵ２１３により制御され、画像を処理する画像処理回路を含む。したがって、サブＣＰＵ２１３は、サブ画像制御ＡＳＩＣ２１５に画像処理を実行させること可能である。なお、サブ画像制御ＡＳＩＣ２１５が、ＨＤＤ、通信インターフェースボード等を制御するサブ入出力制御回路を含んでもよい。この場合、サブＣＰＵ２１３は、サブ画像制御ＡＳＩＣ２１５を介してＨＤＤまたは通信インターフェースボードを制御することができる。
【０１０１】
オプションＲＯＭ２３１は、第１のオプション基板２０１ＡのオプションＩＤを記憶する。オプションＲＯＭ２３１の読取バスは、メイン基板１１１が備える接続コネクタ５１の読取バス用コネクタ５５に接続される。第１のオプション基板２０１ＡのオプションＩＤに含まれるＧＰＵ搭載の有無は「無」に設定され、サブ画像制御ＡＳＩＣ搭載の有無は「有」に設定される。ブート制御情報は、サブＣＰＵ２１３のＧＰＩＯに関する情報を含む。電源情報は、電源コネクタ５３が有する第１の接続ピンにサブＣＰＵ２１３の電源入力ピンを対応させた情報、第２の接続ピンにサブ画像制御ＡＳＩＣ２１５の電源入力ピンを対応させた情報、第３の接続ピンにサブメモリー回路２２１の電源入力ピンを対応させた情報を含む。
【０１０２】
次に、メイン基板１１１に第１のオプション基板２０１Ａが接続される場合の、起動用ＣＰＵ２１の動作について説明する。
【０１０３】
（１）メインＣＰＵ１３の処理速度がサブＣＰＵ２１３の処理速度より遅い場合
サブＣＰＵ２１３をルートコンプレックスとし、メインＣＰＵ１３を起動せず、メイン画像制御ＡＳＩＣ１５、サブ画像制御ＡＳＩＣ２１５がエンドポイントとなる。この際、電源回路３１からメインＣＰＵ１３およびメインメモリー回路４１に電力は供給されない。
【０１０４】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してサブＣＰＵ２１３、サブメモリー回路２２１、サブ画像制御ＡＳＩＣ２１５、およびメイン画像制御ＡＳＩＣ１５に電力を供給するとともに、メインＣＰＵ１３およびメインメモリー回路４１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、制御バス用コネクタ５７を介してサブＣＰＵ２１３をリセットする。サブＣＰＵ２１３は、リセットされると、サブメモリー回路２２１が備えるＲＯＭ２２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１０５】
（２）メインＣＰＵ１３の処理速度がサブＣＰＵ２１３の処理速度以上の場合
メインＣＰＵ１３をルートコンプレックスとし、サブＣＰＵ２１３を起動せず、メイン画像制御ＡＳＩＣ１５、サブ画像制御ＡＳＩＣ２１５がエンドポイントとなる。この際、電源回路３１からサブＣＰＵ２１３およびサブメモリー回路２２１に電力は供給されない。
【０１０６】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してメインＣＰＵ１３、メインメモリー回路４１、メイン画像制御ＡＳＩＣ１５、およびサブ画像制御ＡＳＩＣ２１５に電力を供給するとともに、サブＣＰＵ２１３およびサブメモリー回路２２１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３をリセットする。メインＣＰＵ１３は、リセットされると、メインメモリー回路４１が備えるＲＯＭ４３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１０７】
＜第２のオプション基板＞
図８は、第２のオプション基板の詳細な構成の一例を示すブロック図である。図８においては、メイン基板１１１と接続された状態を示している。図８を参照して、第２のオプション基板２０１Ｂは、サブＣＰＵ３１１と、サブメモリー回路３２１と、オプションＲＯＭ３３１、を含む。サブメモリー回路３２１は、サブＣＰＵ３１１が実行するためのプログラム等を記憶するＲＯＭ３２３と、サブＣＰＵ３１１の作業領域として使用されるＲＡＭ３２５と、を含む。
【０１０８】
サブＣＰＵ３１１の制御バスは、メイン基板１１１の接続コネクタ５１の制御バス用コネクタ５７と接続され、サブＣＰＵ３１１のＰＣＩ−Ｅバスは、メイン基板１１１の接続コネクタ５１のＰＣＩ−Ｅバス用コネクタ５９と接続される。
【０１０９】
オプションＲＯＭ３３１は、第２のオプション基板２０１ＢのオプションＩＤを記憶する。オプションＲＯＭ３３１の読取バスは、メイン基板１１１が備える接続コネクタ５１の読取バス用コネクタ５５に接続される。第２のオプション基板２０１ＢのオプションＩＤに含まれるＧＰＵ搭載の有無は「無」に設定され、サブ画像制御ＡＳＩＣ搭載の有無は「無」に設定される。ブート制御情報は、サブＣＰＵ３１１のＧＰＩＯに関する情報を含む。電源情報は、電源コネクタ５３が有する第１の接続ピンにサブＣＰＵ３１１の電源入力ピンを対応させた情報、第２の接続ピンにサブメモリー回路３２１の電源入力ピンを対応させた情報を含む。
【０１１０】
次に、メイン基板１１１に第２のオプション基板２０１Ｂが接続される場合の、起動用ＣＰＵ２１の動作について説明する。
【０１１１】
（１）メインＣＰＵ１３の処理速度がサブＣＰＵ３１１の処理速度より遅い場合
サブＣＰＵ３１１をルートコンプレックスとし、メインＣＰＵ１３を起動せず、メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。この際、電源回路３１からメインＣＰＵ１３およびメインメモリー回路４１に電力は供給されない。
【０１１２】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してサブＣＰＵ３１１およびサブメモリー回路３２１に電力を供給するとともに、メインＣＰＵ１３およびメインメモリー回路４１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、制御バス用コネクタ５７を介してサブＣＰＵ３１１をリセットする。サブＣＰＵ３１１は、リセットされると、サブメモリー回路３２１が備えるＲＯＭ３２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１１３】
（２）メインＣＰＵ１３の処理速度がサブＣＰＵ３１１の処理速度以上の場合
メインＣＰＵ１３をルートコンプレックスとし、第２のオプション基板２０１Ｂに供給する電力を遮断する。メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１１４】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してメインＣＰＵ１３、メインメモリー回路４１、およびメイン画像制御ＡＳＩＣ１５に電力を供給するとともに、電源コネクタ５３に電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３をリセットする。メインＣＰＵ１３は、リセットされると、メインメモリー回路４１が備えるＲＯＭ４３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１１５】
＜第３のオプション基板＞
図９は、第３のオプション基板の詳細な構成の一例を示すブロック図である。図９においては、メイン基板１１１と接続された状態を示している。図９を参照して、第３のオプション基板２０１Ｃは、サブＣＰＵ４１１と、サブメモリー回路４２１と、オプションＲＯＭ４３１と、ブートＲＯＭ４４１と、を含む。サブメモリー回路４２１は、サブＣＰＵ４１１が実行するためのプログラム等を記憶するＲＯＭ４２３と、サブＣＰＵ４１１の作業領域として使用されるＲＡＭ４２５と、を含む。
【０１１６】
サブＣＰＵ４１１の制御バスは、メイン基板１１１の接続コネクタ５１の制御バス用コネクタ５７と接続され、サブＣＰＵ４１１のＰＣＩ−Ｅバスは、メイン基板１１１の接続コネクタ５１のＰＣＩ−Ｅバス用コネクタ５９と接続される。
【０１１７】
ブートＲＯＭ４４１は、メインＣＰＵ１３が実行するためのブートプログラムであって、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムを記憶する。このブートプログラムは、メインＣＰＵ１３がＨＤＤ１１３にデータを入出力する処理を定義するプログラムを含む。ブートＲＯＭ４４１の読取バスは、メイン基板１１１が備える接続コネクタ５１の読取バス用コネクタ５５に接続される。
【０１１８】
オプションＲＯＭ４３１は、第３のオプション基板２０１ＣのオプションＩＤを記憶する。オプションＲＯＭ４３１の読取バスは、メイン基板１１１が備える接続コネクタ５１の読取バス用コネクタ５５に接続される。第３のオプション基板２０１ＣのオプションＩＤに含まれるＧＰＵ搭載の有無は「無」に設定され、サブ画像制御ＡＳＩＣ搭載の有無は「無」に設定される。ブート制御情報は、サブＣＰＵ４１１のＧＰＩＯに関する情報を含む。電源情報は、電源コネクタ５３が有する第１の接続ピンにサブＣＰＵ４１１の電源入力ピンを対応させた情報、第２の接続ピンにサブメモリー回路４２１の電源入力ピンを対応させた情報を含む。また、第３のオプション基板２０１ＣのオプションＩＤは、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムの有無が「有」に設定され、ブートＲＯＭ４４１に記憶されたブートプログラムのメモリーアドレスを含む。
【０１１９】
次に、メイン基板１１１に第３のオプション基板２０１Ｃが接続される場合の、起動用ＣＰＵ２１の動作について説明する。
【０１２０】
（１）メインＣＰＵ１３の処理速度がサブＣＰＵ４１１の処理速度より遅い場合
（ｉ）周辺装置としてのＨＤＤ１１３を使用する設定の場合
サブＣＰＵ４１１をルートコンプレックスとし、メインＣＰＵ１３およびメイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１２１】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御して、メインＣＰＵ１３、メイン画像制御ＡＳＩＣ１５、メインメモリー回路４１、サブＣＰＵ４１１、サブメモリー回路４２１に電力を供給する。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３のブートプログラムをブートＲＯＭ４４１に記憶されたブートプログラムに変更し、メインＣＰＵ１３をリセットした後、制御バス用コネクタ５７を介してサブＣＰＵ４１１をリセットする。メインＣＰＵ１３は、リセットされると、ブートＲＯＭ４４１に記憶されたブートプログラムを実行し、エンドポイントとして起動する。この際、メインＣＰＵ１３は、ブートプログラムに含まれるＨＤＤ１１３にデータを入出力する処理を定義するプログラムを実行するので、ＨＤＤ１１３にデータを入出力する処理を実行する。一方、サブＣＰＵ４１１は、リセットされると、サブメモリー回路４２１が備えるＲＯＭ４２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。このため、サブＣＰＵ４１１は、メインＣＰＵ１３を介してＨＤＤ１１３を制御可能となる。
【０１２２】
（ｉi）周辺装置としてのＨＤＤ１１３を使用しない設定の場合
サブＣＰＵ４１１をルートコンプレックスとし、メインＣＰＵ１３を起動せず、メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。この際、電源回路３１からメインＣＰＵ１３およびメインメモリー回路４１に電力は供給されない。
【０１２３】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してサブＣＰＵ４１１、サブメモリー回路４２１およびメイン画像制御ＡＳＩＣ１５に電力を供給するとともに、メインＣＰＵ１３およびメインメモリー回路４１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、制御バス用コネクタ５７を介してサブＣＰＵ４１１をリセットする。サブＣＰＵ４１１は、リセットされると、サブメモリー回路４２１が備えるＲＯＭ４２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。この場合、サブＣＰＵ４１１がルートコンプレックスとなり、メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１２４】
（２）メインＣＰＵ１３の処理速度がサブＣＰＵ４１１の処理速度以上の場合
メインＣＰＵ１３をルートコンプレックスとし、第３のオプション基板２０１Ｃに供給する電力を遮断する。メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１２５】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してメインＣＰＵ１３、メインメモリー回路４１、およびメイン画像制御ＡＳＩＣ１５に電力を供給するとともに、電源コネクタ５３に電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３をリセットする。メインＣＰＵ１３は、リセットされると、メインメモリー回路４１が備えるＲＯＭ４３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１２６】
＜第４のオプション基板＞
図１０は、第４のオプション基板の詳細な構成の一例を示すブロック図である。図１０においては、メイン基板１１１と接続された状態を示している。図１０を参照して、第４のオプション基板２０１Ｄは、サブＳｏＣ５１１と、サブメモリー回路５２１と、オプションＲＯＭ５３１と、ブートＲＯＭ５４１と、を含む。サブＳｏＣ５１１は、サブＣＰＵ５１３と、ＧＰＵ５１５と、を含む。サブメモリー回路５２１は、サブＣＰＵ５１３およびＧＰＵ５１５が実行するためのプログラム等を記憶するＲＯＭ４２３と、サブＣＰＵ５１３およびＧＰＵ５１５の作業領域として使用されるＲＡＭ５２５と、を含む。
【０１２７】
サブＣＰＵ５１３の制御バスは、メイン基板１１１の接続コネクタ５１の制御バス用コネクタ５７と接続され、サブＣＰＵ５１３のＰＣＩ−Ｅバスは、メイン基板１１１の接続コネクタ５１のＰＣＩ−Ｅバス用コネクタ５９と接続される。ＧＰＵ５１５は、サブＣＰＵ５１３と接続され、サブＣＰＵ５１３によって制御される。ＧＰＵ５１５は、サブメモリー回路５２１のＲＯＭ４２３に記憶されたプログラムを実行することによって、画像処理を実行する。このため、サブＣＰＵ５１３は、画像処理をＧＰＵ５１５に実行させている間、別の処理を実行することが可能である。
【０１２８】
ブートＲＯＭ５４１は、メインＣＰＵ１３が実行するためのブートプログラムであって、エンドポイントに設定して起動するブートプログラムを記憶する。このブートプログラムは、メインＣＰＵ１３がＨＤＤ１１３にデータを入出力する処理を定義するプログラムを含む。
【０１２９】
オプションＲＯＭ５３１は、第４のオプション基板２０１ＤのオプションＩＤを記憶する。オプションＲＯＭ５３１の読取バスは、メイン基板１１１が備える接続コネクタ５１の読取バス用コネクタ５５に接続される。第４のオプション基板２０１ＤのオプションＩＤに含まれるＧＰＵ搭載の有無は「有」に設定され、サブ画像制御ＡＳＩＣ搭載の有無は「無」に設定される。ブート制御情報は、サブＣＰＵ５１３のＧＰＩＯに関する情報を含む。電源情報は、電源コネクタ５３が有する第１の接続ピンにサブＣＰＵ５１３およびＧＰＵ５１５の電源入力ピンを対応させた情報、第２の接続ピンにサブメモリー回路５２１の電源入力ピンを対応させた情報を含む。また、第４のオプション基板２０１ＤのオプションＩＤは、メインＣＰＵ１３をエンドポイントに設定して起動するブートプログラムの有無が「有」に設定され、ブートＲＯＭ５４１に記憶されたブートプログラムのメモリーアドレスを含む。
【０１３０】
次に、メイン基板１１１に第４のオプション基板２０１Ｄが接続される場合の、起動用ＣＰＵ２１の動作について説明する。
【０１３１】
（１）メインＣＰＵ１３の処理速度がサブＣＰＵ５１３の処理速度より遅い場合
（ｉ）周辺装置としてのＨＤＤ１１３を使用する設定の場合
サブＣＰＵ５１３をルートコンプレックスとし、メインＣＰＵ１３およびメイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１３２】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御して、メインＣＰＵ１３、メイン画像制御ＡＳＩＣ１５、メインメモリー回路４１、サブＣＰＵ５１３、ＧＰＵ５１５、サブメモリー回路４２１に電力を供給する。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３のブートプログラムをブートＲＯＭ５４１に記憶されたブートプログラムに変更してメインＣＰＵ１３をリセットした後、制御バス用コネクタ５７を介してサブＣＰＵ５１３をリセットする。メインＣＰＵ１３は、リセットされると、ブートＲＯＭ５４１に記憶されたブートプログラムを実行し、エンドポイントとして起動する。この際、メインＣＰＵ１３は、ブートプログラムに含まれるＨＤＤ１１３にデータを入出力する処理を定義したプログラムを実行するので、ＨＤＤ１１３にデータを入出力する処理を実行する。一方、サブＣＰＵ５１３は、リセットされると、サブメモリー回路５２１が備えるＲＯＭ５２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。
【０１３３】
（ｉｉ）周辺装置としてのＨＤＤ１１３を使用しない設定の場合
サブＣＰＵ５１３をルートコンプレックスとし、メインＣＰＵ１３を起動せず、メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。この際、電源回路３１からメインＣＰＵ１３およびメインメモリー回路４１に電力は供給されない。
【０１３４】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してサブＣＰＵ５１３、ＧＰＵ５１５、サブメモリー回路５２１、メイン画像制御ＡＳＩＣ１５に電力を供給するとともに、メインＣＰＵ１３およびメインメモリー回路４１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、制御バス用コネクタ５７を介してサブＣＰＵ５１３をリセットする。サブＣＰＵ５１３は、リセットされると、サブメモリー回路５２１が備えるＲＯＭ５２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。なお、ＧＰＵ５１５は、サブＣＰＵ５１３によってリセットされる。
【０１３５】
（２）メインＣＰＵ１３の処理速度がサブＣＰＵ５１３の処理速度以上の場合
メインＣＰＵ１３の処理速度がサブＣＰＵ５１３の処理速度以上であっても、サブＳｏＣ５１１は、ＧＰＵ５１５を含むので、サブＳｏＣ５１１全体での処理速度は、メインＣＰＵ１３より速くなる場合が多い。このため、サブＣＰＵ５１３をルートコンプレックスにするのが好ましい。
【０１３６】
（ｉ）周辺装置としてのＨＤＤ１１３を使用する設定の場合
サブＣＰＵ５１３をルートコンプレックスとし、メインＣＰＵ１３およびメイン画像制御ＡＳＩＣ１５がエンドポイントとなる。
【０１３７】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御して、メインＣＰＵ１３、メイン画像制御ＡＳＩＣ１５、メインメモリー回路４１、サブＣＰＵ５１３、ＧＰＵ５１５、サブメモリー回路４２１に電力を供給する。さらに、起動用ＣＰＵ２１は、メインＣＰＵ１３のブートプログラムをブートＲＯＭ５４１に記憶されたブートプログラムに変更してメインＣＰＵ１３をリセットした後、制御バス用コネクタ５７を介してサブＣＰＵ５１３をリセットする。メインＣＰＵ１３は、リセットされると、ブートＲＯＭ５４１に記憶されたブートプログラムを実行し、エンドポイントとして起動する。この際、メインＣＰＵ１３は、ブートプログラムに含まれるＨＤＤ１１３にデータを入出力する処理を定義したプログラムを実行するので、ＨＤＤ１１３にデータを入出力する処理を実行する。一方、サブＣＰＵ５１３は、リセットされると、サブメモリー回路５２１が備えるＲＯＭ５２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。なお、ＧＰＵ５１５は、サブＣＰＵ５１３によってリセットされる。
【０１３８】
（ｉｉ）周辺装置としてのＨＤＤ１１３を使用しない設定の場合
サブＣＰＵ５１３をルートコンプレックスとし、メインＣＰＵ１３を起動せず、メイン画像制御ＡＳＩＣ１５がエンドポイントとなる。この際、電源回路３１からメインＣＰＵ１３およびメインメモリー回路４１に電力は供給されない。
【０１３９】
具体的には、起動用ＣＰＵ２１は、電源回路３１を制御してサブＣＰＵ５１３、ＧＰＵ５１５およびサブメモリー回路５２１、メイン画像制御ＡＳＩＣ１５に電力を供給するとともに、メインＣＰＵ１３およびメインメモリー回路４１へ電力を供給しないようにする。さらに、起動用ＣＰＵ２１は、制御バス用コネクタ５７を介してサブＣＰＵ５１３をリセットする。サブＣＰＵ５１３は、リセットされると、サブメモリー回路５２１が備えるＲＯＭ５２３に記憶されたブートプログラムを実行し、ルートコンプレックスとして起動する。なお、ＧＰＵ５１５は、サブＣＰＵ５１３によってリセットされる。
【０１４０】
以上説明したように、本実施の形態におけるＭＦＰ１００は、オプション基板２０１を増設可能な画像形成装置である。また、ＭＦＰ１００は、ＰＣＩＥｘｐｒｅｓｓの１以上のエンドポイントのルートコンプレックスに設定されたメインＣＰＵ１３と、メインＣＰＵ１３の起動を制御する起動用ＣＰＵ２１と、ＰＣＩＥｘｐｒｅｓｓの１以上のエンドポイントのルートコンプレックスに設定されたサブＣＰＵを搭載するオプション基板２０１を接続可能な接続コネクタ５１と、を備え、起動用ＣＰＵ２１は、接続コネクタ５１に接続されたオプション基板２０１を検出する検出部６１と、オプション基板２０１が検出される場合、メインＣＰＵ１３が起動する前の段階で、オプション基板２０１に関する能力情報を取得する取得部６３と、能力情報に基づいて、メインＣＰＵ１３とサブＣＰＵのいずれか一方を選択する選択部６５と、メインＣＰＵ１３およびサブＣＰＵのうちから選択された一方をルートコンプレックスとして起動する切換部７３と、を含む。このため、ルートコンプレックスを１つにして起動するので、サブＣＰＵを搭載したオプション基板２０１が接続される場合に確実に起動することができる。また、オプション基板２０１に関する能力情報に基づいて、メインＣＰＵ１３とサブＣＰＵのいずれか一方を選択するので、サブＣＰＵを搭載したオプション基板２０１はＭＦＰ１００に専用である必要はない。このため、接続可能なオプション基板２０１を別のＭＦＰと共有することができる。
【０１４１】
また、切換部７３は、メインＣＰＵ１３が選択される場合は、サブＣＰＵを起動することなくメインＣＰＵ１３を起動し、サブＣＰＵが選択される場合は、メインＣＰＵ１３を起動することなくサブＣＰＵをルートコンプレックスに設定した後に起動する選択起動部８９を含む。このため、メインＣＰＵ１３とサブＣＰＵとのいずれか一方を起動しないので、ルートコンプレックスを確実に１つにすることができる。
【０１４２】
また、起動用ＣＰＵ２１は、オプション基板２０１が画像を処理する回路を有するサブ画像制御ＡＳＩＣを含む場合、メインＣＰＵ１３およびサブＣＰＵのいずれが選択される場合であっても、サブ画像制御ＡＳＩＣをエンドポイントに設定して起動するサブ画像処理起動部６９を含む。このため、オプション基板２０１がサブ画像制御ＡＳＩＣを含む場合、サブ画像制御ＡＳＩＣはエンドポイントに設定されて起動するので、オプション基板２０１が有する機能を利用することができる。
【０１４３】
さらに、オプション基板２０１が画像を処理する回路を有するサブ画像制御ＡＳＩＣを含まない場合、メインＣＰＵ１３が選択される場合は、オプション基板２０１に供給する電力を遮断する遮断部７１を含む。このため、オプション基板２０１が接続される場合において、ＭＦＰ１００の能力を最適にしつつ消費電力を低減することができる。
【０１４４】
さらに、選択部６５は、能力情報により定められるサブＣＰＵの処理速度とメインＣＰＵ１３の処理速度とを比較する速度比較部８１と、サブＣＰＵおよびメインＣＰＵ１３のうち処理速度の速い一方を選択する速度基準選択部８３と、を含む。このため、オプション基板２０１が接続された場合の処理速度を速くすることができる。
【０１４５】
また、選択部６５は、速度基準選択部８３によりメインＣＰＵ１３が選択される場合、能力情報によってオプション基板２０１が予め定められたプログラムを実行することによって画像を処理するＧＰＵを搭載することが示される場合、サブＣＰＵを選択する特定状況選択部８５を含む。このため、オプション基板２０１がＧＰＵを搭載する場合は、同じ処理をメインＣＰＵ１３が実行する場合よりもサブＣＰＵとＧＰＵとが実行する場合の方が処理速度が速い場合がある。このため、オプション基板２０１が接続された場合の処理速度を速くすることができる。
【０１４６】
さらに、切換部７３は、特定状況選択部８５によりサブＣＰＵが選択される場合、メインＣＰＵ１３をエンドポイントに設定した後に起動するとともに、サブＣＰＵをルートコンプレックスに設定した後に起動する重複起動部９１を、含む。このため、サブＣＰＵでメインＣＰＵ１３を制御することができる。
【０１４７】
さらに、オプション基板２０１は、予め定められた処理をメインＣＰＵ１３に実行させるためのブートプログラムを記憶するブートＲＯＭを搭載している場合、重複起動部９１は、メインＣＰＵ１３にブートＲＯＭに記憶されたブートプログラムを実行させることによって起動する特定状況起動部９３を含む。このため、ＭＦＰ１００にオプション基板２０１が接続さる場合に、メインＣＰＵ１３をエンドポイントに設定して起動することができる。
【０１４８】
さらに、メインＣＰＵと同一基板に搭載されるメイン画像制御ＡＳＩＣ１５を、さらに備え、起動用ＣＰＵ２１は、メインＣＰＵ１３およびサブＣＰＵのいずれが選択される場合であっても、メイン画像制御ＡＳＩＣ１５を起動するメイン画像処理起動部６７を含む。このため、ＭＦＰ１００がオプション基板２０１が接続される以前から有する機能を有効に利用することができる。
【０１４９】
なお、上述した実施の形態においては、画像形成装置の一例としてＭＦＰ１００について説明したが、画像を形成する機能を有すれば、プリンター、ファクシミリ等であってもよい。また、図５および図６に示した起動処理を、ＭＦＰ１００の起動を制御する起動用ＣＰＵ２１に実行させる起動制御方法、また、その起動制御方法を起動用ＣＰＵ２１に実行させるための起動制御プログラムとして、発明を捉えることができるのは言うまでもない。
【０１５０】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１５１】
１００  ＭＦＰ、  １１１  メイン基板、１３  メインＣＰＵ、２１  起動用ＣＰＵ、３１  電源回路、４１  メインメモリー回路、５１  接続コネクタ、５３  電源コネクタ、５５  読取バス用コネクタ、５７  制御バス用コネクタ、５９  ＰＣＩ−Ｅバス用コネクタ、１１１  メイン基板、１１５  操作パネル、１１７  表示部、１１９  操作部、１２０  自動原稿搬送装置、１３０  原稿読取部、１４０  画像形成部、１５０  給紙部、１６０  通信Ｉ／Ｆ部、１７０  ファクシミリ部、１８０  外部記憶装置、１８０Ａ  ＣＤ−ＲＯＭ、６１  検出部、６３  取得部、６５  選択部、６７  メイン画像処理起動部、６９  サブ画像処理起動部、７１  遮断部、７３  切換部、８１  速度比較部、８３  速度基準選択部、８５  特定状況選択部、８９  選択起動部、９１  重複起動部、９３  特定状況起動部、２０１，２０１Ａ〜２０１Ｄ  オプション基板、２１１，５１１  サブＳｏＣ、２１３，３１１，４１１，５１３  サブＣＰＵ、２３１，３３１，４３１，５３１  オプションＲＯＭ、４４１，５４１  ブートＲＯＭ、２２１，３２１，４２１，５２１  サブメモリー回路。
【図１】
2014228925.tif 000003
【図２】
2014228925.tif 000004
【図３】
2014228925.tif 000005
【図４】
2014228925.tif 000006
【図５】
2014228925.tif 000007
【図６】
2014228925.tif 000008
【図７】
2014228925.tif 000009
【図８】
2014228925.tif 000010
【図９】
2014228925.tif 000011
【図１０】
2014228925.tif 000012