(57)【要約】【課題】マルチプロセッサシステムにおいて、プロセッサ間のメッセージのやりとりをより確実に行う。【解決手段】プリンタ２０は、メッセージボックス３８を有するマルチプロセッサシステム３０を搭載している。このマルチプロセッサシステム３０では、２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられており、このアドレスに送信側のプロセッサから受信側のプロセッサへのメッセージを格納可能であるメッセージボックス３８を備えており、このメッセージボックス３８にメッセージが書き込まれると受信側のプロセッサへ割込信号生成回路３９が割込信号を出力する。このように、送信側と受信側とが行列状のアドレスに対応付けられているため、送信者・受信者の関係を把握しやすく、メッセージが書き込まれたら受信側へ知らせるため、受信側でメッセージの有無を把握しやすい。【選択図】図１
2010015296.tif 000002
【特許請求の範囲】
【請求項１】
２以上のプロセッサと、
前記２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられ該アドレスに送信側のプロセッサから受信側のプロセッサへのメッセージを格納可能であるメッセージボックスと、
前記メッセージボックスにメッセージが書き込まれると受信側のプロセッサへ割込信号を出力する割込信号出力部と、
を備えたマルチプロセッサシステム。
【請求項２】
前記メッセージボックスは、前記送信側のプロセッサと、該送信側のプロセッサと同一の前記受信側のプロセッサと、をも行列状のアドレスに対応付けられている、請求項１に記載のマルチプロセッサシステム。
【請求項３】
前記メッセージボックスは、送信側のプロセッサと受信側のプロセッサとの組み合わせに応じて格納可能であるメッセージ量が定められている、請求項１又は２に記載のマルチプロセッサシステム。
【請求項４】
前記メッセージボックスには、受信側のアドレスにメッセージが格納されているときにオン状態となるビジーフラグが格納されており、
前記送信側のプロセッサは、前記格納されているビジーフラグがオフ状態であるときに前記受信側へのメッセージを前記対応するメッセージボックスのアドレスへ書き込む、請求項１〜３のいずれか１項に記載のマルチプロセッサシステム。
【請求項５】
前記割込信号出力部は、前記アドレスへメッセージが書き込まれると前記受信側のプロセッサへの割込信号を生成する信号生成回路である、請求項１〜４のいずれか１項に記載のマルチプロセッサシステム。
【請求項６】
請求項１〜５のいずれか１項に記載のマルチプロセッサシステムと、
流体を吐出してターゲット上に画像を形成する流体吐出機構と、を備え、
前記２以上のプロセッサには、前記ターゲットへ前記流体を吐出して形成する画像データを生成するプロセッサと、前記流体吐出機構を駆動制御するプロセッサとを少なくとも含んでいる、
流体吐出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチプロセッサシステム及びそれを搭載した流体吐出装置に関する。
【背景技術】
【０００２】
従来、マルチプロセッサシステムとしては、複数のプロセッサとメモリコントローラとの間をそれぞれ個別に接続することにより形成される第１の通信経路と複数のプロセッサ及びメモリコントローラとをそれぞれ順に接続することにより形成されるループ状の第２の通信経路とを備え、マルチプロセッサを構成するデバイス間の接続を効果的に実現するものが提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００７−１２２３２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、この特許文献１に記載されたマルチプロセッサシステムでは、各プロセッサ間での通信では、メインメモリ上にプロセッサごとの専用領域を用意し、そこからメッセージを読み出すことがあるが、複数のメッセージを送信できないことや、送信元がどのプロセッサであるかわかりにくいなどの不都合があった。
【０００４】
本発明は、このような課題に鑑みなされたものであり、プロセッサ間のメッセージのやりとりをより確実に行うことができるマルチプロセッサシステム及びそれを搭載した流体吐出装置を提供することを主目的とする。
【課題を解決するための手段】
【０００５】
本発明は、上述の目的を達成するために以下の手段を採った。
【０００６】
本発明のマルチプロセッサシステムは、
２以上のプロセッサと、
前記２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられ該アドレスに送信側のプロセッサから受信側のプロセッサへのメッセージを格納可能であるメッセージボックスと、
前記メッセージボックスにメッセージが書き込まれると受信側のプロセッサへ割込信号を出力する割込信号出力部と、
を備えたものである。
【０００７】
このマルチプロセッサシステムでは、２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられており、このアドレスに送信側のプロセッサから受信側のプロセッサへのメッセージを格納可能であるメッセージボックスを備えており、このメッセージボックスにメッセージが書き込まれると受信側のプロセッサへ割込信号を出力する。このように、送信側と受信側とが行列状のアドレスに対応付けられているため、送信者・受信者の関係を把握しやすく、メッセージが書き込まれたら受信側へ知らせるため、受信側でメッセージの有無を把握しやすい。したがって、プロセッサ間のメッセージのやりとりをより確実に行うことができる。
【０００８】
本発明のマルチプロセッサシステムにおいて、前記メッセージボックスは、前記送信側のプロセッサと、該送信側のプロセッサと同一の前記受信側のプロセッサと、をも行列状のアドレスに対応付けられているものとしてもよい。こうすれば、自己へのメッセージの送受信をもより確実に行うことができる。
【０００９】
本発明のマルチプロセッサシステムにおいて、前記メッセージボックスは、送信側のプロセッサと受信側のプロセッサとの組み合わせに応じて格納可能であるメッセージ量が定められているものとしてもよい。こうすれば、複数のメッセージのやり取りをより確実に行うことができる。
【００１０】
本発明のマルチプロセッサシステムにおいて、前記メッセージボックスには、受信側のアドレスにメッセージが格納されているときにオン状態となるビジーフラグが格納されており、前記送信側のプロセッサは、前記格納されているビジーフラグがオフ状態であるときに前記受信側へのメッセージを前記対応するメッセージボックスのアドレスへ書き込むものとしてもよい。こうすれば、フラグを用いてメッセージが書込可能であるか否かを比較的容易に判定することができる。
【００１１】
本発明のマルチプロセッサシステムにおいて、前記割込信号出力部は、前記アドレスへメッセージが書き込まれると前記受信側のプロセッサへの割込信号を生成する信号生成回路であるものとしてもよい。こうすれば、ソフトで割込信号を発生させるものに比して迅速に割込信号を出力することができる。
【００１２】
本発明の流体吐出装置は上述したいずれか１つに記載のマルチプロセッサシステムと、流体を吐出してターゲット上に画像を形成する流体吐出機構と、を備え、前記２以上のプロセッサには、前記ターゲットへ前記流体を吐出して形成する画像データを生成するプロセッサと、前記流体吐出機構を駆動制御するプロセッサとを少なくとも含んでいるものである。本発明のマルチプロセッサシステムはプロセッサ間のメッセージのやりとりをより確実に行うことができるものであるから、これを搭載した流体吐出装置も同様の効果を奏する。
【発明を実施するための最良の形態】
【００１３】
次に、本発明を実施するための最良の形態を図面を用いて説明する。図１は、本発明の一実施形態である流体吐出装置としてのプリンタ２０の構成の概略を示す構成図である。本実施形態のプリンタ２０は、装置全体の制御を司るマルチプロセッサシステム３０と、パソコンなどの外部機器との間で情報の入出力が可能なインタフェース（Ｉ／Ｆ）４６と、記録紙Ｓへ画像を印刷処理する印刷機構４８と、を備えている。
【００１４】
マルチプロセッサシステム３０は、主制御を司るメインプロセッサ３１と、個別の処理を実行する第１〜第５サブプロフェッサ３２〜３６と、各プロセッサ間のメッセージを記憶するメッセージボックス３８と、割込信号を生成する回路である割込信号生成回路３９、各種プログラムを記憶したＲＯＭ４２と、一時的にデータを記憶するＲＡＭ４４と、を備えている。メインプロセッサ３１及びサブプロフェッサは、図示しないＣＰＵやキャッシュメモリ、バスコントローラなどの周辺回路を含むユニットとして構成されている。第１サブプロフェッサ３２は、ネットワークに関するデータの制御を実行するものであり、メッセージボックス３８やＩ／Ｆ４６などと電気的に接続されておりこれらにアクセス可能となっている。なお、メインプロセッサ３１及び各サブプロフェッサは、ＲＯＭ４２やＲＡＭ４４とも個別に電気的に接続されている。第２サブプロフェッサ３３は、圧縮された画像ファイル（例えばＪＰＥＧファイル）の展開を実行するものであり、メッセージボックス３８などと電気的に接続されており、これにアクセス可能となっている。第３サブプロフェッサ３４は、展開された画像データの画質の調整を実行するものであり、メッセージボックス３８などと電気的に接続されており、これにアクセス可能となっている。第４サブプロフェッサ３５は、画像データの回転や移動、拡大縮小などの画像処理を実行するものであり、メッセージボックス３８などと電気的に接続されており、これにアクセス可能となっている。第５サブプロフェッサ３６は、画像データに基づいて印刷機構４８を駆動制御して印刷処理を実行するものであり、メッセージボックス３８や印刷機構４８などと電気的に接続されており、これらにアクセス可能となっている。
【００１５】
メッセージボックス３８は、メインプロセッサ３１を含む２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられており、このアドレスに送信側のプロセッサから送られた受信側のプロセッサへのメッセージを格納する記憶回路として構成されている。このメッセージボックス３８では、送信側のプロセッサと、この送信側のプロセッサと同一の受信側のプロセッサと、をも行列状のアドレスに対応付けられている。即ち、送信側と受信側とが異なるプロセッサの組み合わせに加え、送信側と受信側とが同じプロフェッサの組み合わせについてもアドレスに対応付けられている。このメッセージボックス３８は、送信側のプロセッサと受信側のプロセッサとの組み合わせに応じて格納可能であるメッセージ量が適宜定められている。例えば、メッセージボックス３８は、リクエストするメッセージ量が比較的多いメインプロセッサ３１とネットワーク用の第１サブプロフェッサ３２とについては３つのメッセージを、あるいは、複数の処理を行うメインプロセッサ３１と印刷機構４８用の第５サブプロフェッサ３６との間のメッセージ交換には６つのメッセージを、また、その他の組み合わせのプロセッサには一つのメッセージを格納可能なように設定されている。また、メッセージボックス３８には、受信側のアドレスにメッセージが格納されているときにオン状態となるビジーフラグが各受信側のプロセッサに対応付けられて格納されている。
【００１６】
割込信号生成回路３９は、メッセージボックス３８にメッセージが格納されたときに、メッセージが格納されたアドレスに対応する受信側のプロセッサへ割込信号を生成して出力する回路である。受信側のプロセッサは、この割込信号を受けるとメッセージボックス３８のレジスタを読み出しメッセージが格納されているアドレスにより送信側のプロセッサがいずれであるかを把握可能となっている。
【００１７】
印刷機構４８は、図示しないが、各色のインクに圧力をかけ、この加圧されたインクを記録紙Ｓに吐出して印刷処理を実行するインクジェット方式の機構である。なお、インクへ圧力をかける機構は、圧電素子の変形によるものとしてもよいしヒータの熱による気泡の発生によるものとしてもよい。
【００１８】
次に、こうして構成された本実施形態のプリンタ２０の動作について説明する。ここでは、メインプロセッサ３１から第５サブプロフェッサ３６へメッセージを送信したあと、第５サブプロフェッサ３６からメインプロセッサ３１へ応答する処理について説明する。図２は、メインプロセッサ３１、第５サブプロフェッサ３６及びメッセージボックス３８による各処理及び通信の様子をシーケンシャルに示す説明図である。まず、メインプロセッサ３１は、メッセージボックス３８に格納されたメッセージの送信先の第５サブプロフェッサ３６のビジーフラグＦ５を読み出し、第５サブプロフェッサ３６へのメッセージをメッセージボックス３８へ格納可能であるか否かを確認する（ステップＳ１００）。なお、メインプロセッサ３１が受信側ではビジーフラグＦ０、第５サブプロフェッサ３６が受信側ではビジーフラグＦ５が用いられるものとして説明する。ビジーフラグが値１のときは、現在受信側がビジー状態であると把握可能となっている。ビジーフラグＦ５が値０であるときには、メインプロセッサ３１は、送信側がメインプロセッサ３１であり受信側が第５サブプロフェッサ３６に対応するメッセージボックス３８のアドレスへ応答であるメッセージを書き込む処理を行う（ステップＳ１１０）。なお、図２では、横軸がＰＭ（メインプロセッサ３１）、縦軸がＰ５（第５サブプロフェッサ３６）であるアドレスにメッセージを書き込むイメージを示した（網掛け参照）。
【００１９】
メッセージの書き込み処理を受けたメッセージボックス３８は、ビジーフラグＦ５に値１をセットし（ステップＳ２００）、割込信号生成回路３９が書き込まれたアドレスに対応する第５サブプロフェッサ３６へ割込信号を出力する（ステップＳ２１０）。これを受けた第５サブプロフェッサ３６は、メッセージボックス３８に自分宛にメッセージが書き込まれたものとしてメッセージボックス３８のステータスを読み出す（ステップＳ３００）。メッセージボックス３８がステータスを第５サブプロフェッサ３６へ出力し（ステップＳ２２０）、これを受けた第５サブプロフェッサ３６が、メインプロセッサ３１からのメッセージであることを把握し、格納されているメッセージを読み出す（ステップＳ３１０）。メッセージボックス３８からメッセージデータが出力され（ステップＳ２３０）、これを受けた第５サブプロフェッサ３６は、メッセージ内容に対する処理、例えば画像データの印刷処理などを実行する（ステップＳ３２０）。
【００２０】
次に、第５サブプロフェッサ３６は、メッセージボックス３８のステータスをクリアし（ステップＳ３３０）、これを受けたメッセージボックス３８が第５サブプロフェッサ３６のビジーフラグＦ５に値０をセットする（ステップＳ２４０）。続いて、メインプロセッサ３１のビジーフラグＦ０を読み出す（ステップＳ３４０）。ビジーフラグＦ０に値０がセットされていると、第５サブプロフェッサ３６は、送信側が第５サブプロフェッサ３６であり受信側がメインプロセッサ３１に対応するメッセージボックス３８のアドレスへ応答であるメッセージを書き込む処理を行う（ステップＳ３５０）。なお、図２では、横軸がＰ５、縦軸がＰＭであるアドレスにメッセージを書き込むイメージを示した（網掛け参照）。
【００２１】
メッセージの書き込み処理を受けたメッセージボックス３８は、ビジーフラグＦ０に値１をセットし（ステップＳ２５０）、割込信号生成回路３９が書き込まれたアドレスに対応するメインプロセッサ３１へ割込信号を出力する（ステップＳ２６０）。これを受けたメインプロセッサ３１は、メッセージボックス３８に自分宛にメッセージが書き込まれたものとしてメッセージボックス３８のステータスを読み出す（ステップＳ１２０）。メッセージボックス３８がステータスをメインプロセッサ３１へ出力し（ステップＳ２７０）、これを受けたメインプロセッサ３１が、第５サブプロフェッサ３６からのメッセージであることを把握し、格納されているメッセージを読み出す（ステップＳ１３０）。メッセージボックス３８からメッセージデータが出力され（ステップＳ２８０）、これを受けたメインプロセッサ３１は、メッセージ内容に対する処理を実行する。このように、マルチプロセッサシステム３０では、行列状に送信側と受信側とが対応付けられたメッセージボックス３８を介して各プロセッサ間の各処理の伝達を行うのである。
【００２２】
以上詳述した本実施形態のプリンタ２０によれば、２以上のプロセッサのうち送信側のプロセッサと受信側のプロセッサとが行列状のアドレスに対応付けられており、このアドレスに送信側のプロセッサから受信側のプロセッサへのメッセージを格納可能であるメッセージボックス３８を備えており、このメッセージボックス３８にメッセージが書き込まれると受信側のプロセッサへ割込信号生成回路３９が割込信号を出力する。このように、送信側と受信側とが行列状のアドレスに対応付けられているため、送信者・受信者の関係を把握しやすく、メッセージが書き込まれたら受信側へ知らせるため、受信側でメッセージの有無を把握しやすい。したがって、プロセッサ間のメッセージのやりとりをより確実に行うことができる。また、メッセージボックス３８では、送信側と、送信側のプロセッサと同一の受信側と、をも行列状のアドレスに対応付けられているため、例えばタスクが異なれば自分へのメッセージ送信もあり得るから、自己へのメッセージの送受信をもより確実に行うことができる。更に、メッセージボックス３８が送信側と受信側との組み合わせに応じて格納可能であるメッセージ量が定められているため、複数のメッセージのやり取りをより確実に行うことができる。更にまた、送信側のプロセッサは、ビジーフラグがオフ状態であるときに受信側へのメッセージをメッセージボックス３８の対応アドレスへ書き込むため、フラグを用いてメッセージが書込可能であるか否かを比較的容易に判定することができる。そしてまた、割込信号生成回路３９によりメッセージボックス３８のアドレスへメッセージが書き込まれると受信側のプロセッサへの割込信号を生成するため、ソフトで割込信号を発生させるものに比して迅速に割込信号を出力することができる。そして更に、プリンタ２０は、複数のプロセッサにより画像展開や画像調整、印刷処理を行うことが多く、マルチプロセッサシステム３０を搭載する意義が高い。
【００２３】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００２４】
例えば、上述した実施形態では、メッセージボックス３８が、送信側と、送信側のプロセッサと同一の受信側と、をも行列状のアドレスに対応付けられているものとしたが、送信側と受信側とが異なるもののみを対応付けたメッセージボックス３８としてもよい。
【００２５】
上述した実施形態では、ビジーフラグを用いるものとしたが、これを省略してもよい。
【００２６】
上述した実施形態では、送信側と受信側との組み合わせに応じて格納可能であるメッセージ量が定められているものとしたが、特にこれに限定されず、例えばすべて同じメッセージ量としてもよい。なお、メモリ量の有効活用からみて前者を採用する方が好ましい。
【００２７】
上述した実施形態では、割込信号生成回路３９により割込信号を出力するものとしたが、ソフトウエアなどにより割込信号を出力するものとしてもかまわない。
【００２８】
上述した実施形態では、プリンタ２０がマルチプロセッサシステム３０を備えるものとしたが、複数のプロフェッサにより処理を行う機器であれば特にこれに限られず、例えば、パソコン、テレビ、ビデオ、ゲーム機器などにマルチプロセッサシステム３０を搭載してもよい。
【００２９】
上述した実施形態では、流体吐出装置をプリンタ２０に具体化した例を示したが、インク以外の他の液体や機能材料の粒子が分散されている液状体（分散液）、ジェルのような流状体などを吐出する印刷装置に具体化してもよいし、流体として吐出可能な固体を吐出する印刷装置に具体化してもよい。例えば、液晶ディスプレイ、ＥＬ（エレクトロルミネッセンス）ディスプレイ、面発光ディスプレイ及びカラーフィルタの製造などに用いられる電極材や色材などの材料を溶解した液体を吐出する液体吐出装置、同材料を分散した液状体を吐出する液状体吐出装置、精密ピペットとして用いられ試料となる液体を吐出する液体吐出装置としてもよい。また、光通信素子等に用いられる微小半球レンズ（光学レンズ）などを形成するために紫外線硬化樹脂等の透明樹脂液を基板上に吐出する液体吐出装置、ジェルを吐出する流状体吐出装置、トナーなどの粉体を吐出する粉体吐出式記録装置としてもよい。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態であるプリンタ２０の構成の概略を示す構成図である。
【図２】各処理及び通信の様子をシーケンシャルに示す説明図である。
【符号の説明】
【００３１】
２０  プリンタ、３０  マルチプロセッサシステム、３１  メインプロセッサ、３２  第１サブプロフェッサ、３３  第２サブプロフェッサ、３４  第３サブプロフェッサ、３５  第４サブプロフェッサ、３６  第５サブプロフェッサ、３８  メッセージボックス、３９  割込信号生成回路、４２  ＲＯＭ、４４  ＲＡＭ、４６  インタフェース（Ｉ／Ｆ）、４８  印刷機構、Ｓ  記録紙。
【図１】
2010015296.tif 000003
【図２】
2010015296.tif 000004