(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-20
(45)【発行日】2022-06-28
(54)【発明の名称】中継システム
(51)【国際特許分類】
G06F 13/14 20060101AFI20220621BHJP
H04N 1/00 20060101ALI20220621BHJP
G06F 13/10 20060101ALI20220621BHJP
G06F 3/06 20060101ALI20220621BHJP
【FI】
G06F13/14 310D
H04N1/00 C
G06F13/10 340A
G06F3/06 301C
G06F3/06 302Z
(21)【出願番号】P 2018152746
(22)【出願日】2018-08-14
【審査請求日】2021-07-21
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】100104880
【氏名又は名称】古部 次郎
(74)【代理人】
【識別番号】100125346
【氏名又は名称】尾形 文雄
(74)【代理人】
【識別番号】100166981
【氏名又は名称】砂田 岳彦
(72)【発明者】
【氏名】志風 秀二郎
(72)【発明者】
【氏名】白坂 龍人
(72)【発明者】
【氏名】酒巻 匡正
(72)【発明者】
【氏名】早瀬 貴文
【審査官】松平 英
(56)【参考文献】
【文献】特開2015-41253(JP,A)
【文献】特開2017-27381(JP,A)
【文献】特開2012-190132(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06-3/08
8/00-8/38
8/60-8/77
9/44-9/445
9/451
13/10-13/14
13/20-13/42
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
第1の起動プログラムを読み込むことで起動し、処理を実行する第1の処理手段と、
第2の起動プログラムを読み込むことで起動し、処理を実行する第2の処理手段と、
前記第1の起動プログラムおよび前記第2の起動プログラムを格納する記憶手段と、
前記記憶手段に格納されているデータの前記第1の処理手段および前記第2の処理手段への受け渡しを中継する中継手段と、
前記第1の処理手段と前記中継手段とを接続し、当該第1の処理手段からのデータの読み出し要求が通る通路を構成する第1の通信路と、
前記第2の処理手段と前記中継手段とを接続し、当該第2の処理手段からのデータの読み出し要求が通る通路を構成する第2の通信路と、
を有し、
前記記憶手段は、格納しているデータを、前記第1の通信路および前記第2の通信路よりもデータが通る際の速度が速い高速通信路を介して前記中継手段へ送信し、
前記中継手段は、前記第1の通信路および前記第2の通信路の何れかを介したデータの読み出し要求を受けると、要求された当該データを、前記記憶手段から前記高速通信路を介して読み出し、当該読み出し要求が通った通信路を介して当該データを送信することを特徴とする、中継システム。
【請求項2】
前記第1の処理手段と前記中継手段とを接続し、前記第1の通信路および前記第2の通信路よりもデータが通る際の速度が速く、当該第1の処理手段の起動後に使用可能になる第3の通信路をさらに有し、
前記第2の処理手段は、前記第1の処理手段および前記第3の通信路を介して、前記記憶手段に格納されているデータを取得することを特徴とする請求項1記載の中継システム。
【請求項3】
前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域、前記第2の起動プログラムを格納する第2の格納領域、および前記第3の通信路を介して前記中継手段が受けるデータの読み出し要求にて指定されるデータを格納する第3の格納領域を有し、
前記第3の通信路を介して前記中継手段が受けるデータの読み出し要求にて指定されたデータの格納先は、前記第3の格納領域における格納先と一致することを特徴とする請求項2記載の中継システム。
【請求項4】
前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域、前記第2の起動プログラムを格納する第2の格納領域、および前記中継手段が起動後の前記第1の処理手段および/または起動後の前記第2の処理手段から受ける読み出し要求にて指定されるデータを格納する第3の格納領域を有し、
前記中継手段は、一の前記高速通信路を介して、前記第1の格納領域、前記第2の格納領域、および前記第3の格納領域の各々からのデータの読み出しが可能であることを特徴とする請求項1記載の中継システム。
【請求項5】
前記第1の処理手段と前記中継手段とを接続し、前記第1の通信路および前記第2の通信路よりもデータが通る際の転送速度が速い第3の通信路をさらに有し、
前記中継手段は、前記第3の通信路を介したデータの読み出し要求を受けると、前記第3の格納領域に格納されているデータを前記高速通信路を介して読み出し、当該第3の通信路を介して当該データを送信し、
前記第3の通信路と前記高速通信路とは、同じ規格の通信路により構成されることを特徴とする請求項4記載の中継システム。
【請求項6】
前記中継手段は、データの読み出し要求が通った通信路に応じた前記記憶手段の格納領域から当該読み出し要求に係るデータを取得することを特徴とする請求項1記載の中継システム。
【請求項7】
前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域および前記第2の起動プログラムを格納する第2の格納領域を有し、
前記中継手段は、データの読み出し要求が通った通信路が前記第1の通信路である場合、前記第1の格納領域から当該読み出し要求に係るデータを取得し、データの読み出し要求が通った通信路が前記第2の通信路である場合、前記第2の格納領域から当該読み出し要求に係るデータを取得することを特徴とする請求項6記載の中継システム。
【請求項8】
前記中継手段には、前記第1の通信路および前記第2の通信路の何れかを介して受けたデータの読み出し要求にて指定されたデータの格納先と前記記憶手段に格納されているデータの格納先とが対応付けられた格納先情報を管理する管理部が設けられ、
前記中継手段は、前記読み出し要求を受けると、当該読み出し要求にて指定された格納先が前記格納先情報にて対応付けられている前記記憶手段の格納先に該当するデータを読み出すことを特徴とする請求項1記載の中継システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、中継システムに関する。
【背景技術】
【0002】
特許文献1には、高速デバイスが高速なデータ転送を可能とする高速インターフェースを介してバッファを有するスイッチと接続され、スイッチが低速なデータ転送を可能とする複数の低速インターフェースを介して複数の低速デバイスと接続される構成が開示されている。
特許文献2には、第1CPUがHDDをアクセスするための経路は、第2CPUの動作状態であるか非動作状態であるかに応じて、自動的に切り替えられることが開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第5057833号公報
【文献】特開2005-135269号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
各々が処理を実行する第1の処理手段および第2の処理手段を用いて機器の動作を制御する技術が存在する。第1の処理手段および第2の処理手段は、それぞれ記憶手段から起動プログラムを読み込むことで起動する。
ここで、第2の処理手段が、第1の処理手段を介して記憶手段の起動プログラムを取得可能に設けられることがあるが、この場合、第1の処理手段が起動するまで第2の処理手段が起動プログラムを読み込めず、第1の処理手段が起動するまで第2の処理手段が起動を待たされていた。
【0005】
本発明の目的は、第1の処理手段および第2の処理手段の各々を、他方の処理手段の起動を待つことなく起動させることにある。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、第1の起動プログラムを読み込むことで起動し、処理を実行する第1の処理手段と、第2の起動プログラムを読み込むことで起動し、処理を実行する第2の処理手段と、前記第1の起動プログラムおよび前記第2の起動プログラムを格納する記憶手段と、前記記憶手段に格納されているデータの前記第1の処理手段および前記第2の処理手段への受け渡しを中継する中継手段と、前記第1の処理手段と前記中継手段とを接続し、当該第1の処理手段からのデータの読み出し要求が通る通路を構成する第1の通信路と、前記第2の処理手段と前記中継手段とを接続し、当該第2の処理手段からのデータの読み出し要求が通る通路を構成する第2の通信路と、を有し、前記記憶手段は、格納しているデータを、前記第1の通信路および前記第2の通信路よりもデータが通る際の速度が速い高速通信路を介して前記中継手段へ送信し、前記中継手段は、前記第1の通信路および前記第2の通信路の何れかを介したデータの読み出し要求を受けると、要求された当該データを、前記記憶手段から前記高速通信路を介して読み出し、当該読み出し要求が通った通信路を介して当該データを送信することを特徴とする、中継システムである。
請求項2に記載の発明は、前記第1の処理手段と前記中継手段とを接続し、前記第1の通信路および前記第2の通信路よりもデータが通る際の速度が速く、当該第1の処理手段の起動後に使用可能になる第3の通信路をさらに有し、前記第2の処理手段は、前記第1の処理手段および前記第3の通信路を介して、前記記憶手段に格納されているデータを取得することを特徴とする請求項1記載の中継システムである。
請求項3に記載の発明は、前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域、前記第2の起動プログラムを格納する第2の格納領域、および前記第3の通信路を介して前記中継手段が受けるデータの読み出し要求にて指定されるデータを格納する第3の格納領域を有し、前記第3の通信路を介して前記中継手段が受けるデータの読み出し要求にて指定されたデータの格納先は、前記第3の格納領域における格納先と一致することを特徴とする請求項2記載の中継システムである。
請求項4に記載の発明は、前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域、前記第2の起動プログラムを格納する第2の格納領域、および前記中継手段が起動後の前記第1の処理手段および/または起動後の前記第2の処理手段から受ける読み出し要求にて指定されるデータを格納する第3の格納領域を有し、前記中継手段は、一の前記高速通信路を介して、前記第1の格納領域、前記第2の格納領域、および前記第3の格納領域の各々からのデータの読み出しが可能であることを特徴とする請求項1記載の中継システムである。
請求項5に記載の発明は、前記第1の処理手段と前記中継手段とを接続し、前記第1の通信路および前記第2の通信路よりもデータが通る際の転送速度が速い第3の通信路をさらに有し、前記中継手段は、前記第3の通信路を介したデータの読み出し要求を受けると、前記第3の格納領域に格納されているデータを前記高速通信路を介して読み出し、当該第3の通信路を介して当該データを送信し、前記第3の通信路と前記高速通信路とは、同じ規格の通信路により構成されることを特徴とする請求項4記載の中継システムである。
請求項6に記載の発明は、前記中継手段は、データの読み出し要求が通った通信路に応じた前記記憶手段の格納領域から当該読み出し要求に係るデータを取得することを特徴とする請求項1記載の中継システムである。
請求項7に記載の発明は、前記記憶手段は、前記第1の起動プログラムを格納する第1の格納領域および前記第2の起動プログラムを格納する第2の格納領域を有し、前記中継手段は、データの読み出し要求が通った通信路が前記第1の通信路である場合、前記第1の格納領域から当該読み出し要求に係るデータを取得し、データの読み出し要求が通った通信路が前記第2の通信路である場合、前記第2の格納領域から当該読み出し要求に係るデータを取得することを特徴とする請求項6記載の中継システムである。
請求項8に記載の発明は、前記中継手段には、前記第1の通信路および前記第2の通信路の何れかを介して受けたデータの読み出し要求にて指定されたデータの格納先と前記記憶手段に格納されているデータの格納先とが対応付けられた格納先情報を管理する管理部が設けられ、前記中継手段は、前記読み出し要求を受けると、当該読み出し要求にて指定された格納先が前記格納先情報にて対応付けられている前記記憶手段の格納先に該当するデータを読み出すことを特徴とする請求項1記載の中継システムである。
【発明の効果】
【0007】
請求項1の発明によれば、第1の処理手段および第2の処理手段の各々を、他方の処理手段の起動を待つことなく起動させることができる。
請求項2の発明によれば、第2の通信路よりもデータが通る際の速度が速い通信路を第2の処理手段に接続することなく、第2の通信路よりもデータが通る際の速度が速い通信路を介して第2の処理手段がデータを取得することができる。
請求項3の発明によれば、中継手段が、第3の通信路を介して受けた読み出し要求にて指定されたデータの格納先を他の格納先に置き換えることなく、記憶手段に対して読み出し要求を行うことができる。
請求項4の発明によれば、記憶手段の第1の格納領域、第2の格納領域、および第3の格納領域に格納されているデータを中継手段に送信するために用いられる通信路として一の高速通信路以外の通信路を設ける必要がなくなる。
請求項5の発明によれば、中継手段が、第3の通信路を介して受けた読み出し要求にて指定されたデータの格納先を他の格納先に置き換えることなく、記憶手段に対して読み出し要求を行うことができる。
請求項6の発明によれば、データの読み出し要求が通る通信路と、記憶手段から取得するデータとを、読み出し要求を行った処理手段の種類に対応付けて設定することができる。
請求項7の発明によれば、データの読み出し要求が通った通信路に応じて、読み出し要求を行った処理手段が起動するための起動プログラムを中継手段が取得することができる。
請求項8の発明によれば、処理手段と中継手段とを接続する通信路と、中継手段と記憶手段とを接続する通信路とが異なる規格であっても、処理手段が読み出し要求を行ったデータを記憶手段から読み出すことができる。
【図面の簡単な説明】
【0008】
【
図1】画像形成システムの構成の一例を示す図である。
【
図2】制御部の内部構造の一例を示すブロック図である。
【
図3】HDDモジュールの内部構成の一例を示した図である。
【
図4】画像形成装置の起動処理の流れを示したフローチャートである。
【
図5】第1の高速バスの通信プロトコルが確立した後における第1CPUによるデータの読み出し処理の流れを示したフローチャートである。
【
図6】HDDモジュールの内部構成の変形例を示した図である。
【
図7】オプション基板が接続された制御部の構成を示した図である。
【発明を実施するための形態】
【0009】
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。
<画像形成システムの構成>
図1は、本実施形態による画像形成システムの構成の一例を示す図である。
本実施形態の画像形成システムは、画像形成装置1と、端末装置3と、ファクシミリ装置4と、サーバ装置5とを備える。画像形成装置1と端末装置3、画像形成装置1とファクシミリ装置4、および画像形成装置1とサーバ装置5とは、ネットワーク2を介して接続されている。
画像形成装置1は、スキャン機能、プリント機能、コピー機能、およびファクシミリ機能を備える。
【0010】
ネットワーク2は、画像形成装置1と端末装置3、画像形成装置1とファクシミリ装置4、および画像形成装置1とサーバ装置5との間の通信を担う情報通信ネットワークである。ネットワーク2は、データの送受信が可能であれば、その種類は特に限定されず、例えばインターネット、LAN(Local Area Network)、WAN(Wide Area Network)等として良い。データ通信に用いられる通信回線は、有線であっても無線であっても良い。画像形成装置1と端末装置3とを接続するネットワーク2と、画像形成装置1とファクシミリ装置4とを接続するネットワーク2と、画像形成装置1とサーバ装置5とを接続するネットワーク2とは、共通のネットワーク2であってもよいし、異なるネットワークであってもよい。特に図示しないが、ネットワーク2にはネットワークや通信回線を接続するためのゲートウェイやハブ等の中継装置が設けられてもよい。
【0011】
端末装置3は、ユーザが文書を印刷する際に操作するコンピュータ装置である。端末装置3は、ネットワーク2を介して、画像形成装置1に印刷等の指示を行う。端末装置3は、例えば、コンピュータ、タブレット型情報端末、その他の情報処理装置により実現される。
ファクシミリ装置4は、ネットワーク2を介して、画像形成装置1との間でファクシミリを送受信する。
サーバ装置5は、ネットワーク2を介して、画像形成装置1との間でデータを送受信するサーバである。サーバ装置5は、例えば、コンピュータにより実現される。サーバ装置5は、単一のコンピュータにより構成しても良いし、複数のコンピュータによる分散処理により実現しても良い。
【0012】
また、画像形成装置1は、紙等の記録媒体に形成された画像を読み取る画像読取部10と、記録媒体に画像を形成する画像形成部20と、ユーザからの指示を受け付けるとともにユーザに対してメッセージを表示するユーザインタフェース(UI)30とを備える。また、画像形成装置1は、ネットワーク2を介して端末装置3、ファクシミリ装置4およびサーバ装置5との間でデータの送受信を行う送受信部40と、画像形成部20、UI30および送受信部40の動作を制御する制御部50とを備える。
【0013】
画像形成装置1では、画像読取部10によってスキャン機能が実現され、画像形成部20によってプリント機能が実現され、画像読取部10および画像形成部20によってコピー機能が実現され、画像読取部10、画像形成部20、および送受信部40によってファクシミリ機能が実現される。
【0014】
<制御部50の内部構造>
図2は、制御部50の内部構造の一例を示すブロック図である。
制御部50は、第1CPU51Aと、第2CPU51Bと、第1DRAM53と、第2DRAM54と、HDD(Hard Disk Drive)モジュール55と、インタフェース(IF)スイッチ56とを有する。また、制御部50には、第1CPU51AとIFスイッチ56とを接続する第1の低速バス57と、第1CPU51AとIFスイッチ56とを接続する第1の高速バス58と、第2CPU51BとIFスイッチ56とを接続する第2の低速バス59と、IFスイッチ56とHDDモジュール55とを接続する第2の高速バス60と、第1CPU51Aと第2CPU51Bとを接続する第3の高速バス52とが設けられている。
【0015】
本実施形態の第1の低速バス57および第2の低速バス59としては、何れも、SPI(Serial Peripheral Interface)の通信規格によるバスが用いられる。
また、本実施形態の第1の高速バス58、第2の高速バス60、および第3の高速バス52としては、何れも、SATA(Serial AT Attachment)の通信規格によるバスが用いられる。
【0016】
第1の高速バス58におけるデータの転送速度は、第1の低速バス57や第2の低速バス59における転送速度よりも速い。
また、高速通信路の一例としての第2の高速バス60におけるデータの転送速度は、第1の低速バス57や第2の低速バス59における転送速度よりも速い。
また、第3の高速バス52におけるデータの転送速度は、第1の低速バス57や第2の低速バス59における転送速度よりも速い。
【0017】
第1の処理手段の一例としての第1CPU51Aは、画像形成装置1全体の動作を制御する。第1CPU51Aは、第1DRAM53との間でデータの授受を行いながら処理を実行する。
第2の処理手段の一例としての第2CPU51Bは、画像読取部10から入力される画像データや画像形成部20に出力する画像データに処理を施す。第2CPU51Bは、第2DRAM54との間でデータの授受を行いながら処理を実行する。なお、以下では、第1CPU51Aと第2CPU51Bとを区別しない場合は、単にCPU51と称する。
第1DRAM53および第2DRAM54は、何れも、揮発性メモリである。
【0018】
記憶手段の一例としてのHDDモジュール55は、第1ブートプログラムを格納する。第1CPU51Aは、第1ブートプログラムを読み込むことで起動する。具体的には、第1CPU51Aは、HDDモジュール55から読み出した第1ブートプログラムを第1DRAM53に展開することで起動する。ここで、第1ブートプログラムは、第1の起動プログラムとして捉えられる。
また、HDDモジュール55は、第2ブートプログラムを格納する。第2CPU51Bは、第2ブートプログラムを読み込むことで起動する。具体的には、第2CPU51Bは、HDDモジュール55から読み出した第2ブートプログラムを第2DRAM54に展開することで起動する。ここで、第2ブートプログラムは、第2の起動プログラムとして捉えられる。
また、HDDモジュール55は、不揮発性メモリである。
【0019】
中継手段の一例としてのIFスイッチ56は、HDDモジュール55に格納されているデータの第1CPU51Aや第2CPU51Bへの受け渡しを中継する。具体的には、IFスイッチ56は、HDDモジュール55に格納されているデータの読み出し要求を第1CPU51Aや第2CPU51Bから受けると、要求されたデータを、HDDモジュール55から読み出し、要求元のCPU51へ送信する。
【0020】
また、IFスイッチ56には、管理部の一例としてのアドレス変換テーブル561が設けられている。アドレス変換テーブル561は、第1の低速バス57上のアドレス情報や第2の低速バス59上のアドレス情報に、第2の高速バス60上のアドレス情報が対応付けられているテーブルである。
【0021】
具体的には、アドレス変換テーブル561では、IFスイッチ56が第1の低速バス57を介して受ける第1ブートプログラムの読み出し要求に含まれるアドレス情報に、HDDモジュール55に格納されている第1ブートプログラムに該当するアドレス情報が対応付けられている。また、IFスイッチ56が第2の低速バス59を介して受ける第2ブートプログラムの読み出し要求に含まれるアドレス情報に、HDDモジュール55に格納されている第2ブートプログラムに該当するアドレス情報が対応付けられている。なお、アドレス変換テーブル561に示されている情報、すなわち、第1の低速バス57および第2の低速バス59の何れかを介して受けたデータの読み出し要求にて指定されたアドレス情報とHDDモジュール55に格納されているデータに該当するアドレス情報とが対応付けられた情報は、格納先情報として捉えられる。
【0022】
IFスイッチ56は、第1ブートプログラムの読み出し要求や第2ブートプログラムの読み出し要求を受けると、アドレス変換テーブル561を参照する。そして、アドレス変換テーブル561にて対応付けられたアドレス情報に置き換えて、HDDモジュール55に対して読み出し要求を行う。
【0023】
なお、本実施形態では、上述した通り、第1の高速バス58と第2の高速バス60とが同じ規格の通信路により構成されている。
そのため、IFスイッチ56が第1の高速バス58を介して受けるデータの読み出し要求に含まれるアドレス情報は、HDDモジュール55に格納されているデータに該当するアドレス情報と一致する。したがって、IFスイッチ56は、第1の高速バス58を介してデータの読み出し要求を受けた場合には、アドレス変換テーブル561を参照することなくHDDモジュール55に対して読み出し要求を行う。言い換えると、IFスイッチ56は、第1の高速バス58を介してデータの読み出し要求を受けた場合には、アドレス変換を行うことなく、HDDモジュール55に対して読み出し要求を行う。
【0024】
また、本実施形態では、第1CPU51A、第2CPU51B、第1DRAM53、第2DRAM54、HDDモジュール55、IFスイッチ56、第1の低速バス57、第1の高速バス58、第2の低速バス59、第2の高速バス60、および第3の高速バス52は、HDDモジュール55に格納されているデータのCPU51への受け渡しを中継する中継システムとして捉えられる。
【0025】
<HDDモジュール55の内部構成>
次に、HDDモジュール55の内部構成について説明する。
図3は、HDDモジュール55の内部構成の一例を示した図である。
HDDモジュール55は、HDD551と、内部コントローラ552とを有する。
【0026】
HDD551には、第1ブートプログラム格納領域A1と、第2ブートプログラム格納領域A2と、プログラム格納領域A3と、作業領域A4とが設けられている。
第1の格納領域の一例としての第1ブートプログラム格納領域A1は、第1ブートプログラムが格納されている領域である。
第2の格納領域の一例としての第2ブートプログラム格納領域A2は、第2ブートプログラムが格納されている領域である。
プログラム格納領域A3は、画像形成装置1の起動処理の完了後に第1CPU51Aや第2CPU51Bが実行するプログラムファイルが格納されている領域である。
第3の格納領域の一例としての作業領域A4は、第1CPU51Aや第2CPU51Bによる処理やプログラムの実行に伴って発生するデータ等が一時的に格納される領域である。
【0027】
内部コントローラ552は、IFスイッチ56との間でデータの授受を行い、HDD551に対するデータの読み書きを制御する。
内部コントローラ552は、IFスイッチ56からデータの読み出し要求を受けると、HDD551の格納領域のうち、読み出し要求に含まれるアドレス情報に該当するデータの格納領域から、要求されたデータを取り出し、IFスイッチ56へ送信する。
【0028】
<画像形成装置1の起動処理>
次に、画像形成装置1の起動処理について説明する。
図4は、画像形成装置1の起動処理の流れを示したフローチャートである。なお、画像形成装置1の起動処理は、例えば、UI30(
図1参照)を介して画像形成装置1の電源が投入されることに伴いCPU51にリセット指示が入力されたときに実行される。
【0029】
CPU51がリセット指示を受けると、CPU51によりリセットが実行される(S101)。具体的には、第1CPU51Aにより、第1DRAM53の記憶内容がクリアされる。また、第2CPU51Bにより、第2DRAM54の記憶内容がクリアされる。
【0030】
本実施形態では、第1DRAM53の記憶内容がクリアされると、第1の高速バス58の通信プロトコルが確立するまで、第1の高速バス58を介したデータの送受信を行えない。一方、第1DRAM53の記憶内容および第2DRAM54の記憶内容がクリアされても、第1の低速バス57および第2の低速バス59の通信プロトコルが確立しており、第1の低速バス57を介したデータの送受信や第2の低速バス59を介したデータの送受信を行える。すなわち、第1の低速バス57は、第1CPU51Aの起動時に用いられるバスである。また、第2の低速バス59は、第2CPU51Bの起動時に用いられるバスである。
なお、本実施形態では、第1の低速バス57は、第1の通信路として捉えられる。また、第2の低速バス59は、第2の通信路として捉えられる。また、第1の高速バス58は、第3の通信路として捉えられる。
【0031】
続いて、IFスイッチ56は、CPU51からデータの読み出し要求を受ける(S102)。具体的には、IFスイッチ56は、CPU51からブートプログラムの読み出し要求を受ける。
【0032】
IFスイッチ56は、HDDモジュール55に対して、ブートプログラムの読み出し要求を行う(S103)。具体的には、IFスイッチ56は、CPU51から受けた読み出し要求に含まれるアドレス情報を、アドレス変換テーブル561にてこのアドレス情報に対応付けられているアドレス情報に置き換えて、第2の高速バス60を介して、HDDモジュール55に対して読み出し要求を行う。
【0033】
続いて、IFスイッチ56は、HDD551に格納されているブートプログラムをHDDモジュール55の内部コントローラ552から取得する(S104)。具体的には、内部コントローラ552は、IFスイッチ56から読み出し要求を受けると、この読み出し要求に含まれるアドレス情報を参照し、HDD551に格納されているブートプログラムのうち、参照したアドレス情報に該当するブートプログラムを取得する。そして、第2の高速バス60を介して、取得したブートプログラムをIFスイッチ56へ送信する。
【0034】
続いて、IFスイッチ56は、ブートプログラムをCPU51へ送信する(S105)。具体的には、IFスイッチ56は、取得したブートプログラムを、読み出し要求を受けたCPU51へ送信する。IFスイッチ56は、第1の低速バス57を介してブートプログラムの読み出し要求を受けていた場合、第1ブートプログラムを取得し、第1の低速バス57を介して第1CPU51Aへ第1ブートプログラムを送信する。また、第2の低速バス59を介してブートプログラムの読み出し要求を受けていた場合、第2ブートプログラムを取得し、第2の低速バス59を介して第2CPU51Bへ第2ブートプログラムを送信する。
【0035】
続いて、CPU51は、ブートプログラムを読み込んで起動する(S106)。ステップ105にて第1CPU51Aが第1ブートプログラムを取得した場合、第1CPU51Aは、第1ブートプログラムを第1DRAM53に展開することで起動する。また、ステップ105にて第2CPU51Bが第2ブートプログラムを取得した場合、第2CPU51Bは、第2ブートプログラムを第2DRAM54に展開することで起動する。
また、第1CPU51Aが、第1の高速バス58の通信プロトコルの確立に必要なプログラムをHDD551から取得し、このプログラムを第1DRAM53に展開することで、第1の高速バス58の通信プロトコルが確立する。
【0036】
このように、本実施形態では、IFスイッチ56は、第1の低速バス57および第2の低速バス59の何れかを介したデータの読み出し要求を受けると、要求されたデータを、HDDモジュール55から第2の高速バス60を介して読み出し、第1の低速バス57および第2の低速バス59のうち読み出し要求が通ったバスを介して、HDDモジュール55から読み出したデータを送信する。
【0037】
ここで、第2CPU51Bが、第1CPU51Aを介してHDDモジュール55から第2ブートプログラムを取得して起動することがある。この場合、第2CPU51Bは、第1CPU51Aが起動するまで第2ブートプログラムを読み込めず、第1CPU51Aが第1ブートプログラムを読み込んで起動するまで、第2CPU51Bの起動が待たされていた。
これに対し、本実施形態のように、第1CPU51Aおよび第2CPU51Bの各々が、他方のCPU51の起動とは関係なくブートプログラムを読み込める構成である場合、第1CPU51Aおよび第2CPU51Bの各々を、他方のCPUの起動を待つことなく起動させられる。
【0038】
特に、本実施形態では、第1CPU51Aおよび第2CPU51BとHDDモジュール55との間にIFスイッチ56を設け、IFスイッチ56は第2の高速バス60を介してHDDモジュール55に対するデータの送受信を行っている。
【0039】
また、本実施形態では、IFスイッチ56には、第1の低速バス57および第2の低速バス59の何れかを介してIFスイッチ56が受けたデータの読み出し要求にて指定されたデータのアドレス情報と、HDDモジュール55に格納されているデータに該当するアドレス情報とが対応付けられた格納先情報を管理するアドレス変換テーブル561が設けられている。そして、IFスイッチ56は、読み出し要求を受けると、読み出し要求にて指定されたアドレス情報がアドレス変換テーブル561にて対応付けられているHDDモジュール55のアドレス情報に該当するデータを読み出す。
【0040】
この場合、CPU51とIFスイッチ56とを接続する通信路と、IFスイッチ56とHDDモジュール55とを接続する通信路とが異なる規格であっても、CPU51が読み出し要求を行ったデータがHDDモジュール55から読み出される。
【0041】
<画像形成装置1の起動後におけるデータの読み出し処理>
次に、第1の高速バス58の通信プロトコルが確立した後における第1CPU51Aによるデータの読み出し処理について説明する。
図5は、第1の高速バス58の通信プロトコルが確立した後における第1CPU51Aによるデータの読み出し処理の流れを示したフローチャートである。
まず、第1CPU51Aは、IFスイッチ56に対してデータの読み出し要求を行う(S201)。具体的には、第1CPU51Aは、IFスイッチ56に対するデータの読み出し要求を、第1の高速バス58を介して行う。
【0042】
次に、IFスイッチ56は、HDDモジュール55に対して、第2の高速バス60を介してデータの読み出し要求を行う(S202)。IFスイッチ56は、データの読み出し要求が通ったバスが第1の高速バス58である場合、アドレス変換テーブル561を参照することなく、第2の高速バス60を介して、HDDモジュール55に対してデータの読み出し要求を行う。
【0043】
続いて、IFスイッチ56は、読み出し要求に係るデータをHDDモジュール55から取得し、取得したデータを第1CPU51Aに送信する(S203)。具体的には、HDDモジュール55の内部コントローラ552が、HDD551に格納されているデータのうち読み出し要求に含まれるアドレス情報に該当するデータを取得し、取得したデータを、第2の高速バス60を介してIFスイッチ56へ送信する。そして、IFスイッチ56は、取得したデータを、第1の高速バス58を介して、第1CPU51Aに送信する。
【0044】
なお、第2CPU51Bが第1CPU51Aを介してデータの読み出し要求を行う場合には、まず、第2CPU51Bが、データの読み出し要求を、第3の高速バス52を介して第1CPU51Aに行う。続いて、
図5に示したステップ201~ステップ203の処理が行われた後、第1CPU51Aが、取得したデータを、第3の高速バス52を介して第2CPU51Bに送信する。
【0045】
このように、本実施形態では、第1CPU51Aの起動後においては、第1CPU51Aによるデータの読み出し要求に第1の高速バス58が用いられる。また、第1CPU51Aおよび第2CPU51Bの起動後においては、第2CPU51Bによるデータの読み出し要求に第1の高速バス58が用いられる。
【0046】
このように、本実施形態では、IFスイッチ56は、第1の低速バス57、第1の高速バス58および第2の低速バス59のうち、データの読み出し要求が通ったバスに応じたHDDモジュール55の格納領域から読み出し要求に係るデータを取得する。
具体的には、IFスイッチ56は、データの読み出し要求が通ったバスが第1の低速バス57である場合、HDD551の第1ブートプログラム格納領域A1から第1ブートプログラムを取得する。また、データの読み出し要求が通ったバスが第2の低速バス59である場合、HDD551の第2ブートプログラム格納領域A2から第2ブートプログラムを取得する。また、データの読み出し要求が通ったバスが第1の高速バス58である場合、HDD551の作業領域A4から読み出し要求に係るデータを取得する。
【0047】
また、本実施形態では、HDDモジュール55は、第1ブートプログラム格納領域A1、第2ブートプログラム格納領域A2、およびIFスイッチ56が起動後の第1CPU51Aおよび/または第2CPU51Bから受ける読み出し要求にて指定されるデータを格納する作業領域A4を有する。そして、IFスイッチ56は、第2の高速バス60を介して、第1ブートプログラム格納領域A1、第2ブートプログラム格納領域A2、および作業領域A4の各々からのデータを読み出す。
【0048】
この場合、HDDモジュール55の第1ブートプログラム格納領域A1、第2ブートプログラム格納領域A2、および作業領域A4に格納されているデータをIFスイッチ56に送信するために用いられるバスとして第2の高速バス60以外のバスを設ける必要がなくなる。
【0049】
<変形例>
続いて、HDDモジュール55の内部構成の変形例について説明する。
図6は、HDDモジュール55の内部構成の変形例を示した図である。
図6に示すように、HDD551には、第1ブートプログラム格納領域A1と、第2ブートプログラム格納領域A2と、プログラム格納領域A3と、作業領域A4とが設けられている。また、HDD551には、追加ブートプログラム格納領域A5が設けられている。
【0050】
追加ブートプログラム格納領域A5は、追加ブートプログラムが格納されている領域である。ここで、追加ブートプログラムとは、CPUを付加するオプション基板が制御部50に設けられている場合においてオプション基板に設けられているCPUが起動するために読み込むブートプログラムである。
【0051】
図7は、オプション基板が接続された制御部50の構成を示した図である。
図7に示すように、制御部50にはオプション基板61が接続されている。具体的には、オプション基板61とIFスイッチ56とが第3の低速バス62により接続されている。また、第2CPU51Bとオプション基板61とが第4の高速バス63により接続されている。
オプション基板61には、追加CPU64と、追加DRAM65とが設けられている。
【0052】
第3の低速バス62としては、SPIの通信規格によるバスが用いられる。また、第4の高速バス63としては、SATAの通信規格によるバスが用いられる。
また、アドレス変換テーブル561には、第3の低速バス62を介して行われる追加ブートプログラムの読み出し要求に含まれるアドレス情報に、HDD551に格納されている追加ブートプログラムに該当するアドレス情報が対応付けられている。
【0053】
画像形成装置1の起動処理において追加CPU64を起動する場合には、追加CPU64は、第3の低速バス62を介して、IFスイッチ56に追加ブートプログラムの読み出し要求を行う。
【0054】
IFスイッチ56は、追加ブートプログラムの読み出し要求が通ったバスが第3の低速バス62である場合、アドレス変換テーブル561を参照する。そして、読み出し要求に含まれるアドレス情報を、アドレス変換テーブル561にてこのアドレス情報に対応付けられているアドレス情報に置き換えて、第2の高速バス60を介して、HDDモジュール55に対して追加ブートプログラムの読み出し要求を行う。
HDDモジュール55の内部コントローラ552は、追加ブートプログラムの読み出し要求を受けると、読み出し要求に含まれるアドレス情報に該当するデータとしてHDD551の追加ブートプログラム格納領域に格納されている追加ブートプログラムを読み出す。そして、第2の高速バス60を介して、追加ブートプログラムをIFスイッチ56に送信する。
IFスイッチ56は、取得した追加ブートプログラムを、第3の低速バス62を介して追加CPU64に送信する。
追加CPU64は、取得した追加ブートプログラムを追加DRAM65に展開することで起動する。
【0055】
また、追加CPU64が、第4の高速バス63の通信プロトコルを確立するためのプログラムをHDD551から読み出して追加DRAM65に展開することで、第4の高速バス63の通信プロトコルが確立する。
第3の通信プロトコルが確立した後、追加CPU64は、第4の高速バス63、第2CPU51B、および第1CPU51Aを介して、HDD551の作業領域A4に格納されているデータを取得する。
【0056】
このように、HDD551に予め追加ブートプログラムを格納させてもよい。
この場合、第1CPU51Aや第2CPU51Bの起動を待つことなく追加CPU64を起動させられる。また、オプション基板61に追加ブートプログラムを格納させる必要がなくなる。
【0057】
なお、本実施形態では、第2CPU51Bとオプション基板61とが接続されている構成としたが、これに限定されない。
例えば、第1CPU51Aとオプション基板61とを接続する構成としてもよい。
【0058】
また、本実施形態では、第1の高速バス58、第2の高速バス60、第3の高速バス52、第4の高速バス63として、SATAの通信規格によるバスが用いられているが、これに限定されない。
例えば、第1の高速バス58、第2の高速バス60、第3の高速バス52、および第4の高速バス63として、PCIe(PCI express)の通信規格によるバスが用いられてもよい。
【0059】
また、本実施形態では、中継システムを実現するために必要な構成(第1CPU51A、第2CPU51B、第1DRAM53、第2DRAM54、HDDモジュール55、IFスイッチ56、第1の低速バス57、第1の高速バス58、第2の低速バス59、第2の高速バス60、および第3の高速バス52)が画像形成装置1に設けられる構成としたが、中継システムが設けられる装置としては、画像形成装置1に限定されない。
【0060】
また、本開示は上記の実施形態に何ら限定されるものではなく、本開示の要旨を逸脱しない範囲で種々の形態で実施することができる。
【符号の説明】
【0061】
1…画像形成装置、50…制御部、51A…第1CPU、51B…第2CPU、55…HDDモジュール、56…IFスイッチ、57…第1の低速バス、58…第1の高速バス、59…第2の低速バス、60…第2の高速バス