(57)【要約】【課題】ＣＰＵにより実行される優先度の高い処理の遅延防止を図る。【解決手段】コンピュータ装置は、メモリと、所定の処理と、所定の処理よりも優先度が高い優先処理とを実行するためにメモリにバスを通じてアクセスをするＣＰＵと、ＣＰＵを介することなくメモリにバスを通じてアクセスをする少なくとも１つのバスマスタと、ＣＰＵが優先処理を実行するためにメモリにバスを通じてアクセスをするときには、少なくとも１つのバスマスタによるメモリへのアクセスを禁止し、ＣＰＵが所定の処理を実行するためにメモリにバスを通じてアクセスをするときには、少なくとも１つのバスマスタによるメモリへのアクセスを禁止しないアクセス禁止回路と、を備える。【選択図】図６
2008003911.tif 000002
【特許請求の範囲】
【請求項１】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）を備えたことを特徴とするコンピュータ装置。
【請求項２】
前記優先処理は、所定の時間内に完了が要求される処理であることを特徴とする請求項１に記載のコンピュータ装置。
【請求項３】
前記優先処理には、モータを制御するための処理が含まれることを特徴とする請求項１または２に記載のコンピュータ装置。
【請求項４】
前記アクセス禁止回路は、前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをしているか否かを表わすデータが書き込まれるレジスタを備えていることを特徴とする請求項１〜３のいずれか１項に記載のコンピュータ装置。
【請求項５】
前記レジスタが前記ＣＰＵにより書き換えられることを特徴とする請求項４に記載のコンピュータ装置。
【請求項６】
前記レジスタが複数あることを特徴とする請求項４または５に記載のコンピュータ装置。
【請求項７】
前記レジスタは、前記ＣＰＵが実行する前記優先処理の種類毎に個別に用意されていることを特徴とする請求項６に記載のコンピュータ装置。
【請求項８】
前記少なくとも１つのバスマスタには、ＤＭＡコントローラが含まれていることを特徴とする請求項１〜７のいずれか１項に記載のコンピュータ装置。
【請求項９】
前記アクセス禁止回路が前記ＤＭＡコントローラに設けられていることを特徴とする請求項８に記載のコンピュータ装置。
【請求項１０】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）を備え、
（Ｆ）前記優先処理は、所定の時間内に完了が要求される処理であり、
（Ｇ）前記優先処理には、モータを制御するための処理が含まれ、
（Ｈ）前記アクセス禁止回路は、前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをしているか否かを表わすデータが書き込まれるレジスタを備え、
（Ｉ）前記レジスタが前記ＣＰＵにより書き換えられ、
（Ｊ）前記レジスタが複数あり、
（Ｋ）前記レジスタは、前記ＣＰＵが実行する前記優先処理の種類毎に個別に用意され、
（Ｌ）前記少なくとも１つのバスマスタには、ＤＭＡコントローラが含まれ、
（Ｍ）前記アクセス禁止回路が前記ＤＭＡコントローラに設けられていることを特徴とするコンピュータ装置。
【請求項１１】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）前記ＣＰＵからの命令により媒体に対して印刷を施す印刷部と、
（Ｆ）を備えたことを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵおよびバスマスタが同じバスを介してメモリにアクセスをするコンピュータ装置および印刷装置に関する。
【背景技術】
【０００２】
インクジェットプリンタなどをはじめとする各種印刷装置には、装置全体の制御を統括するコンピュータ装置としてＣＰＵやメモリなどが搭載されている。これらＣＰＵとメモリとは、相互にバスを介して接続されている。ＣＰＵは、このバスを介してメモリにアクセスをする。この他に、このバスには、ＤＭＡ(Direct Memory Access)コントローラ等のバスマスタが接続されている。ＤＭＡコントローラ等のバスマスタは、ＣＰＵを介さずにバスを占有してメモリにアクセスをすることができる。これらＣＰＵやＤＭＡコントローラがメモリに対して効率良くアクセスをする方法として各種方法が提案されている（特許文献１参照）。
【特許文献１】特開２００４−３１８４７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、このような印刷装置にあっては、次のような問題が発生していた。すなわち、ＣＰＵが非常に優先度の高い処理（以下、優先処理ともいう）を実行しようとしたときに、ＤＭＡコントローラ等の他のバスマスタがバスを占有してしまっていて、ＣＰＵの優先処理が遅れてしまう虞があるという問題があった。つまり、ＤＭＡコントローラ等の他のバスマスタにも、ＣＰＵを介さずにメモリにアクセスする権限が与えられているため、ＣＰＵがメモリにアクセスをしようとしたときに、ＤＭＡコントローラ等の他のバスマスタがバスを介してメモリにアクセスをしていることがある。このようにＣＰＵがメモリにアクセスをするタイミングと、ＤＭＡコントローラ等の他のバスマスタがメモリにアクセスをするタイミングとが重なった場合に、ＣＰＵの処理と、他のバスマスタの処理とが同時に並行に実行されるため、ＣＰＵが非常に優先度の高い処理を実行しなければならないにもかかわらず、処理が遅れてしまうといった不具合が発生する虞があった。
【０００４】
本発明は、このような事情に鑑みてなされたものであって、その目的は、ＣＰＵが優先度の高い処理を実行するときに処理が遅れないようにすることにある。
【課題を解決するための手段】
【０００５】
前記目的を達成するための主たる発明は、
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）を備えたことを特徴とするコンピュータ装置である。
【０００６】
本発明の他の特徴は、本明細書及び添付図面の記載により明らかにする。
【発明を実施するための最良の形態】
【０００７】
本明細書及び添付図面の記載により、少なくとも以下の事項が明らかとなる。
【０００８】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）を備えたことを特徴とするコンピュータ装置。
【０００９】
このようなコンピュータ装置にあっては、ＣＰＵが所定の処理よりも優先度が高い優先処理を実行するためにメモリにバスを通じてアクセスをするときには、バスマスタによるメモリへのアクセスが禁止され、ＣＰＵが所定の処理を実行するためにメモリにバスを通じてアクセスをするときには、バスマスタによるメモリへのアクセスが禁止されないことで、ＣＰＵの優先処理を優先的に実行させることができる。
【００１０】
かかるコンピュータ装置にあっては、前記優先処理は、所定の時間内に完了が要求される処理であっても良い。このように優先処理は、所定の時間内に完了が要求される処理であれば、この優先処理をＣＰＵにより優先的に実行させることができる。
【００１１】
また、かかるコンピュータ装置にあっては、前記優先処理には、モータを制御するための処理が含まれても良い。このように優先処理には、モータを制御するための処理が含まれていれば、このような処理をＣＰＵにより優先的に実行させることができる。
【００１２】
また、かかるコンピュータ装置にあっては、前記アクセス禁止回路は、前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをしているか否かを表わすデータが書き込まれるレジスタを備えていても良い。このようにアクセス禁止回路が、ＣＰＵが優先処理を実行するためにメモリにバスを通じてアクセスをしているか否かを表わすデータが書き込まれるレジスタを備えていれば、ＣＰＵが優先処理を実行するためにメモリにアクセスをしているか否かを簡単に判別することができる。
【００１３】
また、かかるコンピュータ装置にあっては、前記レジスタが前記ＣＰＵにより書き換えられても良い。このようにレジスタがＣＰＵにより書き換えられることで、ＣＰＵが優先処理を実行するためにメモリにアクセスをしているか否かを簡単に判別することができる。
【００１４】
また、かかるコンピュータ装置にあっては、前記レジスタが複数あっても良い。このようにレジスタが複数あっても、ＣＰＵが優先処理を実行するためにメモリにアクセスをしているか否かを簡単に判別することができる。
【００１５】
また、かかるコンピュータ装置にあっては、前記レジスタは、前記ＣＰＵが実行する前記優先処理の種類毎に個別に用意されていても良い。このようにレジスタが、ＣＰＵが実行する優先処理の種類毎に個別に用意されていることで、ＣＰＵが実行する優先処理が複数種類ある場合でも、ＣＰＵの優先処理をスムーズに優先的に実行させることができる。
【００１６】
また、かかるコンピュータ装置にあっては、前記少なくとも１つのバスマスタには、ＤＭＡコントローラが含まれていても良い。このように少なくとも１つのバスマスタにＤＭＡコントローラが含まれている場合に、ＣＰＵの優先処理を優先的に実行させることができる。
【００１７】
また、かかるコンピュータ装置にあっては、前記アクセス禁止回路が前記ＤＭＡコントローラに設けられていても良い。このようにアクセス禁止回路がＤＭＡコントローラに設けられていれば、ＣＰＵが優先処理を実行するためにメモリにバスを通じてアクセスをするときに、ＤＭＡコントローラによるメモリへのアクセスを簡単に禁止することができる。
【００１８】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）を備え、
（Ｆ）前記優先処理は、所定の時間内に完了が要求される処理であり、
（Ｇ）前記優先処理には、モータを制御するための処理が含まれ、
（Ｈ）前記アクセス禁止回路は、前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをしているか否かを表わすデータが書き込まれるレジスタを備え、
（Ｉ）前記レジスタが前記ＣＰＵにより書き換えられ、
（Ｊ）前記レジスタが複数あり、
（Ｋ）前記レジスタは、前記ＣＰＵが実行する前記優先処理の種類毎に個別に用意され、
（Ｌ）前記少なくとも１つのバスマスタには、ＤＭＡコントローラが含まれ、
（Ｍ）前記アクセス禁止回路が前記ＤＭＡコントローラに設けられていることを特徴とするコンピュータ装置。
【００１９】
（Ａ）メモリと、
（Ｂ）所定の処理と、前記所定の処理よりも優先度が高い優先処理とを実行するために、前記メモリにバスを通じてアクセスをするＣＰＵと、
（Ｃ）前記ＣＰＵを介することなく前記メモリに前記バスを通じてアクセスをする少なくとも１つのバスマスタと、
（Ｄ）前記ＣＰＵが前記優先処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止し、前記ＣＰＵが前記所定の処理を実行するために前記メモリに前記バスを通じてアクセスをするときには、前記少なくとも１つのバスマスタによる前記メモリへのアクセスを禁止しないアクセス禁止回路と、
（Ｅ）前記ＣＰＵからの命令により媒体に対して印刷を施す印刷部と、
（Ｆ）を備えたことを特徴とする印刷装置。
【００２０】
＝＝＝印刷装置の概要＝＝＝
本発明に係る印刷装置の実施の形態について、インクジェットプリンタ１を例にして説明する。図１〜図４は、そのインクジェットプリンタ１を示したものである。図１は、そのインクジェットプリンタ１の外観を示す。図２は、そのインクジェットプリンタ１の内部構成を示す。図３は、そのインクジェットプリンタ１の搬送部の構成を示す。図４は、そのインクジェットプリンタ１のシステム構成を示す。
【００２１】
このインクジェットプリンタ１は、図１に示すように、背面から供給された印刷用紙等の媒体を前面から排出する構造を備えており、その前面部には、操作パネル２および排紙部３が設けられ、その背面部には、給紙部４が設けられている。操作パネル２には、各種操作ボタン５および表示ランプ６が設けられている。また、排紙部３には、不使用時に排紙口を塞ぐ排紙トレイ７が設けられている。給紙部４には、カット紙などの媒体を保持するための給紙トレイ８が設けられている。
【００２２】
このインクジェットプリンタ１の内部には、図２に示すように、キャリッジ４１が設けられている。このキャリッジ４１は、左右方向に沿って相対的に移動可能に設けられている。キャリッジ４１の周辺には、キャリッジモータ４２と、プーリ４４と、タイミングベルト４５と、ガイドレール４６とが設けられている。キャリッジモータ４２は、ＤＣモータなどにより構成され、キャリッジ４１を左右方向（キャリッジ移動方向）に沿って相対的に移動させるための駆動源である。タイミングベルト４５は、プーリ４４を介してキャリッジモータ４２に接続されるとともに、その一部がキャリッジ４１に接続され、キャリッジモータ４２の回転駆動によってキャリッジ４１をキャリッジ移動方向（左右方向）に沿って相対的に移動させる。ガイドレール４６は、キャリッジ４１をキャリッジ移動方向（左右方向）に沿って案内する。
【００２３】
この他に、キャリッジ４１の周辺には、キャリッジ４１の位置を検出するリニア式エンコーダ５１と、媒体Ｓをキャリッジ４１の移動方向と交差する方向（図中、前後方向、いわゆる搬送方向）に沿って搬送するための搬送ローラ１７Ａと、この搬送ローラ１７Ａを回転駆動させる搬送モータ１５とが設けられている。
【００２４】
一方、キャリッジ４１には、各種インクを収容したインクカートリッジ４８と、媒体Ｓに対して印刷を行うヘッド２１とが設けられている。インクカートリッジ４８は、例えば、イエロ（Ｙ）やマゼンダ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）などの各色のインクを収容しており、キャリッジ４１に設けられたカートリッジ装着部４９に着脱可能に装着されている。また、ヘッド２１は、本実施形態では、媒体Ｓに対してインクを吐出して印刷を施す。このために、ヘッド２１には、インクを吐出するための多数のノズルが設けられている。
【００２５】
この他に、このインクジェットプリンタ１の内部には、ヘッド２１のノズルの目詰まりを解消するためにノズルからインクを吸い出すポンプ装置３１や、ヘッド２１のノズルの目詰まりを防止するために、印刷を行わないとき（待機時など）にヘッド２１のノズルを封止するキャッピング装置３５などが設けられている。
【００２６】
次にこのインクジェットプリンタ１の搬送部について説明する。この搬送部には、図３に示すように、給紙ローラ１３と、紙検知センサ５３と、搬送ローラ１７Ａと、排紙ローラ１７Ｂと、プラテン１４と、フリーローラ１８Ａ、１８Ｂとが設けられている。
【００２７】
印刷される媒体Ｓは、給紙トレイ８にセットされる。給紙トレイ８にセットされた媒体Ｓは、断面略Ｄ形状に成形された給紙ローラ１３により、図中矢印Ａ方向に沿って搬送されて、インクジェットプリンタ１の内部へと送られる。インクジェットプリンタ１の内部に送られてきた媒体Ｓは、紙検知センサ５３と接触する。この紙検知センサ５３は、給紙ローラ１３と、搬送ローラ１７Ａとの間に設置されたもので、給紙ローラ１３により給紙された媒体Ｓを検知する。
【００２８】
紙検知センサ５３により検知された媒体Ｓは、搬送ローラ１７Ａによって、印刷が実施されるプラテン１４へと順次搬送される。搬送ローラ１７Ａの対向位置には、フリーローラ１８Ａが設けられている。このフリーローラ１８Ａと搬送ローラ１７Ａとの間に、媒体Ｓを挟み込むことによって、媒体Ｓをスムーズに搬送する。
【００２９】
プラテン１４へと送り込まれた媒体Ｓは、ヘッド２１から吐出されたインクによって順次印刷される。プラテン１４は、ヘッド２１と対向して設けられ、印刷される媒体Ｓを下側から支持する。
【００３０】
印刷が施された媒体Ｓは、排紙ローラ１７Ｂにより順次、プリンタ外部へと排出される。排紙ローラ１７Ｂは、搬送モータ１５と同期して駆動されていて、当該排紙ローラ１７Ｂに対向して設けられたフリーローラ１８Ｂとの間に媒体Ｓを挟み込んで、媒体Ｓをプリンタ外部へと排出する。
【００３１】
＜システム構成＞
次にこのインクジェットプリンタ１のシステム構成について説明する。このインクジェットプリンタ１は、図４に示すように、バッファメモリ１２２と、イメージバッファ１２４と、ＣＰＵ１２６と、メインメモリ１２７と、通信インターフェース１２９と、キャリッジモータ制御部１２８と、搬送制御部１３０と、ヘッド駆動部１３２とを備えている。
【００３２】
通信インターフェース１２９は、インクジェットプリンタ１が、外部のコンピュータ、即ち、例えば、パーソナルコンピュータ１４０等とデータのやりとりを行うためのものである。通信インターフェース１２９は、パーソナルコンピュータ１４０と有線または無線等により通信可能に接続され、パーソナルコンピュータ１４０から送信された印刷データ等の各種データを受信する。
【００３３】
バッファメモリ１２２には、通信インターフェース１２９により受信された印刷データ等の各種データが一時的に記憶される。また、イメージバッファ１２４には、バッファメモリ１２２に記憶された印刷データが順次記憶される。イメージバッファ１２４に記憶された印刷データは、順次、ヘッド駆動部１３２へと送られる。また、メインメモリ１２７は、ＲＯＭやＲＡＭ、ＥＥＰＲＯＭなどにより構成される。メインメモリ１２７には、インクジェットプリンタ１を制御するための各種プログラムや各種設定データなどが記憶される。
【００３４】
ＣＰＵ１２６は、メインメモリ１２７から制御用プログラムや各設定データなどを読み出して、当該制御用プログラムや各種設定データに従ってインクジェットプリンタ１全体の制御を行う。また、ＣＰＵ１２６には、ロータリ式エンコーダ１３４やリニア式エンコーダ５１、紙検知センサ５３などの各種センサからの検出信号が入力される。
【００３５】
ＣＰＵ１２６は、パーソナルコンピュータ１４０から送られてきた印刷データ等の各種データが通信インターフェース１２９により受信されてバッファメモリ１２２に格納されると、その格納されたデータの中から必要な情報をバッファメモリ１２２から読み出す。ＣＰＵ１２６は、その読み出した情報に基づき、リニア式エンコーダ５１やロータリ式エンコーダ１３４からの出力を参照しながら、制御用プログラムに従って、キャリッジモータ制御部１２８や搬送制御部１３０、ヘッド駆動部１３２などを各々制御する。
【００３６】
キャリッジモータ制御部１２８は、ＣＰＵ１２６からの命令に従って、キャリッジモータ４２の回転方向や回転数、トルクなどを駆動制御する。搬送制御部１３０は、ＣＰＵ１２６からの命令に従って、搬送ローラ１７Ａを回転駆動する搬送モータ１５などを制御する。
【００３７】
ヘッド駆動部１３２は、ＣＰＵ１２６からの命令に従って、イメージバッファ１２４に格納された印刷データに基づき、ヘッド２１に設けられた各色のノズルを駆動制御する。
【００３８】
＝＝＝従来の問題点および解決方法＝＝＝
＜従来の問題点＞
従来の印刷装置にあっては、次のような問題が発生していた。すなわち、ＣＰＵ１２６は、バスを介して各種メモリに接続されている。この各種メモリには、通信インターフェース１２９により受信された印刷データ等の各種データが格納されるバッファメモリ１２２やイメージバッファ１２４をはじめ、ＣＰＵ１２６が実行する各種プログラムや各種設定データが格納されるメインメモリ１２７が含まれる。ＣＰＵ１２６は、バスを通じて各種メモリにアクセスをして各種処理を実行する。また、ＣＰＵ１２６が接続されるバスには、ＣＰＵ１２６の他に、１または複数のバスマスタが接続される。このバスマスタとしては、例えば、ＤＭＡコントローラなどがある。ＤＭＡコントローラは、ＣＰＵ１２６を介さずに各種メモリにアクセスをすることができる。これにより、ＣＰＵの処理を大幅に軽減することができる。
【００３９】
しかしながら、このために、ＣＰＵ１２６がバスを通じて各種メモリにアクセスをするタイミングと、ＤＭＡコントローラ等のバスマスタがバスを通じて各種メモリにアクセスをするタイミングとが重なることがあった。このとき、ＣＰＵ１２６が非常に優先度の高い優先処理、具体的には、例えば、モータの制御に関わる処理などを実行するために、各種メモリにアクセスをしようとした場合、ＤＭＡコントローラ等のバスマスタによる各種メモリへのアクセスと重なってしまう場合があった。つまり、ＣＰＵ１２６の処理が優先的に行われなければならないにもかかわらず、ＤＭＡコントローラ等のバスマスタの処理が並行に実行されていた。これによって、ＣＰＵ１２６が優先的に実行しなければならない処理が遅れてしまう虞が発生した。
【００４０】
＜解決方法＞
そこで、本実施形態にあっては、ＣＰＵ１２６が優先度の高い優先処理を実行する場合には、他のバスマスタ、例えばＤＭＡコントローラなどによるメモリへのアクセスを禁止することとする。このために、本実施形態では、ＣＰＵ１２６が優先度の高い優先処理を実行するときにＤＭＡコントローラ等の各バスマスタによるメモリへのアクセスを禁止するためのアクセス禁止回路を備えている。以下にこのアクセス禁止回路について詳しく説明する。
【００４１】
＝＝＝アクセス禁止回路＝＝＝
図５は、アクセス禁止回路の一例について説明したものである。ＣＰＵ１２６は、バス１５０に接続されている。このバス１５０には、ＣＰＵ１２６以外の他のバスマスタとしてＤＭＡコントローラ１５２（以下、単に「ＤＭＡＣ」ともいう）が接続されている。また、このバス１５０には、メモリコントローラ１５４が接続されている。メモリコントローラ１５４には、各種メモリ１５６が接続されている。この各種メモリ１５６には、通信インターフェース１２９により受信された印刷データ等の各種データが格納されるバッファメモリ１２２やイメージバッファ１２４をはじめ、ＣＰＵ１２６が実行する各種プログラムや各種設定データが格納されるメインメモリ１２７が含まれる。この各種メモリ１５６は、例えば、ＳＤＲＡＭ（Synchronous DRAM）をはじめ、ＤＤＲＳＤＲＡＭ（Double Data Rate SDRAM）などの各種メモリにより構成される。ＣＰＵ１２６およびＤＭＡコントローラ１５２は、バス１５０を通じてメモリコントローラ１５４を介し、各種メモリ１５６にアクセスをする。
【００４２】
アクセス禁止回路１５８は、ここでは、同図に示すように、ＤＭＡコントローラ１５２に設けられている。このアクセス禁止回路１５８は、ＣＰＵ１２６が優先度の高い優先処理を実行するために、バス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをするときには、図６に示すように、他のバスマスタ、即ちここでは、ＤＭＡコントローラ１５２がバス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをすることを禁止する。
【００４３】
一方、ＣＰＵ１２６が優先度の高い優先処理を除く他の処理（「所定の処理」に相当）を実行するために、バス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをするときには、アクセス禁止回路１５８は、図７に示すように、他のバスマスタ、即ちここではＤＭＡコントローラ１５２がバス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをすることは禁止しない。
【００４４】
＜バスの占有状況＞
図８は、ＣＰＵ１２６が優先度の高い優先処理を実行するために、バス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをする場合のバスの占有状況について説明したものである。ＣＰＵ１２６が優先度の高い優先処理を実行する前、つまり、ＣＰＵ１２６が優先度の高い優先処理を除く他の処理を実行しているときには、同図に示すように、ＣＰＵ１２６による各種メモリ１５６へのアクセスと、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスとが並行に実行される。このため、バス１５０は、ＣＰＵ１２６とＤＭＡコントローラ１５２（ＤＭＡＣ）とが交互に占有することになる。
【００４５】
そして、ＣＰＵ１２６による優先度の高い優先処理が開始されると、アクセス禁止回路１５８は、ＤＭＡコントローラ１５２（ＤＭＡＣ）がバス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをすることを禁止する。これにより、ＤＭＡコントローラ１５２（ＤＭＡＣ）は、各種メモリ１５６へのアクセスを中断する。この間、ＣＰＵ１２６はバス１５０を占有して、メモリコントローラ１５４を経由して各種メモリ１５６にアクセスをして優先度の高い優先処理を実行することができる。
【００４６】
その後、ＣＰＵ１２６による優先度の高い優先処理が終了すると、アクセス禁止回路１５８は、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスの禁止を解除する。これによって、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスが再開される。ＤＭＡコントローラ１５２（ＤＭＡＣ）は、バス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをして処理を続行する。ここで、ＣＰＵ１２６が優先処理を除く他の処理を実行すべく各種メモリ１５６にアクセスをする場合には、ＣＰＵ１２６による各種メモリ１５６へのアクセスと、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスとが並行に実行される。
【００４７】
図９は、ＣＰＵ１２６が優先度の高い優先処理を除く他の処理を実行するために、バス１５０を通じてメモリコントローラ１５４を経由して各種メモリ１５６にアクセスをする場合のバスの占有状況について説明したものである。ＣＰＵ１２６が優先度の高い優先処理を除く他の処理を実行するために各種メモリ１５６にアクセスをする場合には、アクセス禁止回路１５８によって、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスが禁止されるようなことはない。このため、同図に示すように、ＣＰＵ１２６による各種メモリ１５６へのアクセスと、ＤＭＡコントローラ１５２（ＤＭＡＣ）による各種メモリ１５６へのアクセスとが並行に実行される。これにより、バス１５０は、ＣＰＵ１２６とＤＭＡコントローラ１５２（ＤＭＡＣ）とにより交互に占有される。
【００４８】
＝＝＝優先処理＝＝＝
ここで、ＣＰＵ１２６が実行する優先度の高い優先処理としては、具体的には、次のような処理がある。  
（１）リニア式エンコーダ５１からの割り込み信号に応答する処理
（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理
（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理
（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理
これらの処理は、所定の時間内に処理の完了が要求される処理である。この他に、ＣＰＵ１２６が実行する優先度の高い優先処理としては、他の種類の所定の時間内に処理の完了が要求される処理が含まれていても良い。具体的には、リアルタイム制御に関わる処理などがＣＰＵ１２６の優先処理として含まれていても構わない。
【００４９】
＝＝＝優先処理の検出＝＝＝
ＣＰＵ１２６が優先処理を実行しているか否かの検出方法について説明する。図１０は、ＣＰＵ１２６が優先処理を実行しているか否かの検出方法の一例について説明したものである。本実施形態では、ＣＰＵ１２６が優先処理を実行しているか否かを検出するために、アクセス禁止回路１５８には、同図に示すように、レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄが設けられている。レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄは、ＣＰＵ１２６が優先処理を実行しているか否かを表わすデータが書き込まれる。すなわち、例えば、ＣＰＵ１２６が優先処理を実行している場合には、『１』のデータが書き込まれ、また、ＣＰＵ１２６が優先処理を実行していない場合には、『０』のデータが書き込まれる。本実施形態では、アクセス禁止回路１５８には、４つのレジスタ、第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄが設けられている。これら第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄには、それぞれＣＰＵ１２６が実行する優先度の高い優先処理の種類に対応して設けられている。
【００５０】
図１１は、ＣＰＵ１２６が実行する優先処理の種類と、４つのレジスタ、第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄとの対応関係の一例について説明したものである。ここでは、レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄが、ＣＰＵ１２６が実行する優先処理の種類にそれぞれ対応して設けられている。すなわち、第１レジスタ１６０Ａは、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」に対応して設けられている。また、第２レジスタ１６０Ｂは、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」に対応して設けられている。また、第３レジスタ１６０Ｃは、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」に対応して設けられている。また、第４レジスタ１６０Ｄは、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」に対応して設けられている。
【００５１】
ＣＰＵ１２６が優先処理として、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」を実行しようとした場合には、第１レジスタ１６０Ａが書き換えられる。すなわち、例えば、第１レジスタ１６０Ａのデータが、『０』から『１』へと書き換えられる。また、ＣＰＵ１２６が優先処理として、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」を実行しようとした場合には、第２レジスタ１６０Ｂが書き換えられる。すなわち、例えば、第２レジスタ１６０Ｂのデータが、『０』から『１』へと書き換えられる。また、ＣＰＵ１２６が優先処理として、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」を実行しようとした場合には、第３レジスタ１６０Ｃが書き換えられる。すなわち、例えば、第３レジスタ１６０Ｃのデータが、『０』から『１』へと書き換えられる。また、ＣＰＵ１２６が優先処理として、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」を実行しようとした場合には、第４レジスタ１６０Ｄが書き換えられる。すなわち、例えば、第４レジスタ１６０Ｄのデータが、『０』から『１』へと書き換えられる。なお、これら第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄのデータの書き換えについては、例えば、ＣＰＵ１２６により行うことができる。このようにＣＰＵ１２６により第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄの書き換えを行えば、ＣＰＵ１２６が優先処理を実行しているか否かを簡単に検出することができる。
【００５２】
アクセス禁止回路１５８には、図１０に示すように、これら第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄを監視する監視部１６２が設けられている。監視部１６２は、これら第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄをそれぞれ個別に監視することによって、ＣＰＵ１２６が優先処理を実行しているか否かを検出する。すなわち、監視部１６２は、これら第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄに書き込まれているデータをそれぞれ個別に参照することができ、ＣＰＵ１２６が優先処理を実行しているか否かを判定する。
【００５３】
そして、監視部１６２は、これら４つのレジスタ、第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄのうちのいずれか１つでも、ＣＰＵ１２６が優先処理を実行している状態を示すデータ、即ち、例えば、『１』などのデータが書き込まれていた場合には、ＣＰＵ１２６が優先処理を実行しているとして、これをＤＭＡコントローラ１５２の主制御部等に伝達する。つまり、ここで、監視部１６２は、ＤＭＡコントローラ１５２による各種メモリ１５６へのアクセスを禁止すべき旨を伝達する。ＤＭＡコントローラ１５２の主制御部等は、アクセス禁止回路１５８の監視部１６２からＣＰＵ１２６が優先処理を実行している旨の連絡があったときには、直ちにＤＭＡコントローラ１５２による各種メモリ１５６へのアクセスを中断する。これによって、ＣＰＵ１２６はバス１５０を占有して各種メモリ１５６にアクセスをすることができる。したがって、ＣＰＵ１２６は、優先度の高い優先処理を優先的に実行することができ、優先処理を遅滞することなくスムーズに完了させることができる。
【００５４】
＜優先処理の優先順位＞
なお、ＣＰＵ１２６が実行する優先処理には、優先順位が設けられている。この優先順位は、ＣＰＵ１２６が優先的に処理すべき優先処理の順位を表している。本実施形態では、図１１に示すように、ＣＰＵ１２６が実行する優先処理についてそれぞれ優先順位が設けられている。ここでは、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」と、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」とに対して最も高い優先順位『１』が付されている。なお、ここでは、これら「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」と、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」とが同時に発生した場合には、両処理が並行に実行される。また、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」と、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」とに対しては、次に優先度が高い優先順位『２』が付されている。なお、ここでは、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」と、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」とが同時に発生した場合には、両処理が並行に実行される。
【００５５】
ＣＰＵ１２６は、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」と、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」とが同時に発生した場合には、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」の方を優先させる。また、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」と、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」とが同時に発生した場合には、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」の方を優先させる。
【００５６】
図１２は、ＣＰＵ１２６による処理の状況の一例を説明したものである。ＣＰＵ１２６は、優先順位『２』の優先処理、即ち、例えば、ここでは、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」や「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」を実行しているときに、これよりも優先順位が高い優先順位『１』の優先処理、即ち、例えば、ここでは、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」や「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」を実行しなければならなくなった場合には、同図に示すように、優先順位『２』の優先処理を一時中断して、優先順位『１』の優先処理を優先的に実行する。これにより、ＣＰＵ１２６は、優先順位『１』の優先処理を遅滞させることなく、スムーズに完了させる。そして、優先順位『１』の優先処理を完了したときには、ＣＰＵ１２６は、一時中断していた優先順位『２』の優先処理を再開する。これにより、優先順位『１』の優先処理をスムーズに完了させる。
【００５７】
なお、ＣＰＵ１２６により優先順位『１』の優先処理および優先順位『２』の優先処理が実行されている間は、ＤＭＡコントローラ１５２による各種メモリ１５６へのアクセスは禁止される。つまり、この間、ＣＰＵ１２６は、バス１５０を独占的に占有して優先処理を優先的に実行することができる。これにより、ＣＰＵ１２６は、優先順位『１』の優先処理および優先順位『２』の優先処理を遅滞することなくスムーズに完了させる。
【００５８】
＝＝＝その他応用例＝＝＝
ここでは、アクセス禁止回路１５８がＤＭＡコントローラ１５２に設けられていたが、ここでいう「アクセス禁止回路」にあっては、必ずしもこのようにＤＭＡコントローラ１５２に設けられている必要はない。すなわち、アクセス禁止回路１５８にあっては、ＣＰＵ１２６が優先度の高い優先処理を実行するときにＤＭＡコントローラ１５２等の各バスマスタによるメモリへのアクセスを禁止することができるのであれば、どこに設けられていても良い。例えば、メモリコントローラ１５４などに設けられていても良い。
【００５９】
また、ここでは、ＣＰＵ１２６が実行する優先度が高い優先処理として、「（１）リニア式エンコーダ５１からの割り込み信号に応答する処理」と、「（２）キャリッジモータ制御部１２８のタイマーからの割り込み信号に応答する処理」と、「（３）ロータリ式エンコーダ１３４からの割り込み信号に応答する処理」と、「（４）搬送制御部１３０のタイマーからの割り込み信号に応答する処理」とを例にして挙げて説明したが、ここでいう「優先処理」にあっては必ずしもこのような処理のみとは限らない。すなわち、ＣＰＵ１２６が実行する処理のうち、優先度が高い処理であれば、どのような処理も優先処理になり得る。
【００６０】
また、ここでは、バスマスタとしてＤＭＡコントローラ１５２が設けられた場合を例にして説明したが、ここでいう「バスマスタ」にあっては、必ずしもこのようなＤＭＡコントローラ１５２のみには限られない。すなわち、ＣＰＵ１２６を介することなくメモリにアクセスをすることが可能なバスマスタであれば、どのようなバスマスタであっても構わない。
【００６１】
また、ここでは、バスマスタとしてＤＭＡコントローラ１５２が１つ設けられていたが、バスマスタの数としては、必ずしもこのように１つのみには限らない。すなわち、バスマスタが２つ以上設けられていても構わない。
【００６２】
また、ここでは、アクセス禁止回路１５８として、ＣＰＵ１２６が優先処理を実行しているか否かを検出するためのレジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄを備えた回路を例にして説明したが、ここでいう「アクセス禁止回路」にあっては、必ずしもこのようなレジスタを備えている必要はない。すなわち、ここでいう「アクセス禁止回路」にあっては、ＣＰＵ１２６が優先処理を実行しているか否かを検出することができれば、どのような構成であっても構わない。また、レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄが必ずしもＣＰＵ１２６により書き換えられる必要はない。
【００６３】
＝＝＝まとめ＝＝＝
以上、本実施形態にあっては、ＣＰＵ１２６が優先処理を実行するために各種メモリ１５６にアクセスをするときに、アクセス禁止回路１５８によってＤＭＡコントローラ１５２が各種メモリ１５６にアクセスをするのが禁止されるから、ＣＰＵ１２６はバス１５０を占有することができる。これにより、ＣＰＵ１２６は、優先度の高い優先処理を優先的に実行することができ、優先処理を遅滞することなくスムーズに完了させることができる。
【００６４】
また、本実施形態では、アクセス禁止回路１５８が、ＣＰＵ１２６により優先処理が実行されるときにデータが書き換えられるレジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄを備えたことから、ＣＰＵ１２６が優先処理を実行しているか否かを簡単に検出することができる。
【００６５】
さらに、本実施形態では、これら４つのレジスタ、第１〜第４レジスタ１６０Ａ、１６０Ｂ、１６０Ｃ、１６０Ｄがそれぞれ、ＣＰＵ１２６が実行する優先度の高い優先処理の種類に対応して設けられていることで、優先処理が複数種類ある場合であっても簡単に対応することができる。
【００６６】
＝＝＝その他の実施の形態＝＝＝
以上、一実施形態に基づき、プリンタ等の印刷装置について説明したが、上記の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更または改良され得るとともに、本発明には、その等価物が含まれることは言うまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
【００６７】
＜コンピュータ装置について＞
前述した実施の形態では、「コンピュータ装置」として、印刷装置の場合を例にして説明したが、ここでいう「コンピュータ装置」にあっては、必ずしもこのような印刷装置の場合には限られない。すなわち、ここでいう「コンピュータ装置」にあっては、メモリと、ＣＰＵと、バスマスタとを備えた構成であれば、どのようなタイプの構成であっても構わない。
【００６８】
＜メモリについて＞
前述した実施の形態では、「メモリ」として、例えば、ＳＤＲＡＭ（Synchronous DRAM）をはじめ、ＤＤＲＳＤＲＡＭ（Double Data Rate SDRAM）などにより構成された各種メモリ１５６を例にして説明したが、ここでいう「メモリ」にあっては、必ずしもこのような構成である必要はない。つまり、ここでいう「メモリ」にあっては、バスを介してアクセスをするようなメモリ、即ち、ＣＰＵが設定するアドレス空間（メモリ空間）であれば、どのようなメモリもここでいう「メモリ」に含まれる。
【００６９】
＜所定の処理について＞
前述した実施の形態では、「所定の処理」として、ＣＰＵ１２６が実行する、優先処理を除く他の処理として説明したが、ＣＰＵ１２６がバス１５０を占有して優先的に処理をしなければならない処理（いわゆる優先処理）を除く他の処理であれば、どのような処理であっても構わない。例えば、ユーザ等から操作パネル２を通じて入力された操作入力等に対応する処理なども、ここでいう「所定の処理」に含まれる。
【００７０】
＜優先処理について＞
前述した実施の形態では、コンピュータ装置が印刷装置の場合を例にして説明した関係から、「優先処理」として、前述したような印刷装置の制御に関わる処理を例にして説明したが、ここでいう「優先処理」にあっては、どのような処理であっても構わない。つまり、当該コンピュータ装置が搭載される装置が実行する処理に応じてそれぞれ個々に「優先処理」が設定される。
【００７１】
＜印刷装置について＞
前述した実施の形態では、「印刷装置」として、媒体に向けてインクを吐出して印刷を施す「印刷装置」を例にして説明したが、ここでいう「印刷装置」にあっては必ずしもこのような印刷装置である必要はない。すなわち、媒体に対して印刷を施す印刷部を備えた印刷装置であれば、どのようなタイプの印刷装置であっても構わない。具体的には、レーザービーム方式により印刷を施す印刷装置をはじめとする各種印刷装置であっても良い。
【図面の簡単な説明】
【００７２】
【図１】本発明に係る印刷装置の一実施形態を示す斜視図。
【図２】印刷装置の内部構成を説明する斜視図。
【図３】印刷装置の搬送部を説明する断面図。
【図４】印刷装置のシステム構成を示すブロック構成図。
【図５】アクセス禁止回路の一例の説明図。
【図６】優先処理が実行されている場合のメモリへのアクセス状況の説明図。
【図７】優先処理が実行されていない場合のメモリへのアクセス状況の説明図。
【図８】優先処理実行時のバスの占有状況の説明図。
【図９】優先処理非実行時のバスの占有状況の説明図。
【図１０】アクセス禁止回路の構成の一例の説明図。
【図１１】優先処理とレジスタとの対応関係の一例の説明図。
【図１２】ＣＰＵによる優先処理の処理状況の一例の説明図。
【符号の説明】
【００７３】
１  インクジェットプリンタ、２  操作パネル、３  排紙部、４  給紙部、
５  操作ボタン、６  表示ランプ、７  排紙トレイ、８  給紙トレイ、
１３  給紙ローラ、１４  プラテン、１５  搬送モータ、１７Ａ  搬送ローラ、
１７Ｂ  排紙ローラ、１８Ａ  フリーローラ、１８Ｂ  フリーローラ、２１  ヘッド、
３１  ポンプ装置、３５  キャッピング装置、４１  キャリッジ、
４２  キャリッジモータ、４４  プーリ、４５  タイミングベルト、
４６  ガイドレール、４８  インクカートリッジ、５１  リニア式エンコーダ、
５３  紙検知センサ、１２２  バッファメモリ、１２４  イメージバッファ、
１２６  ＣＰＵ、１２７  メインメモリ、１２８  キャリッジモータ制御部、
１２９  通信インターフェース、１３０  搬送制御部、１３２  ヘッド駆動部、
１３４  ロータリ式エンコーダ、１４０  パーソナルコンピュータ、
１５０  バス、１５２  ＤＭＡコントローラ、１５４  メモリコントローラ、
１５６  各種メモリ、１５８  アクセス禁止回路、１６０Ａ  レジスタ、
１６０Ｂ  レジスタ、１６０Ｃ  レジスタ、１６０Ｄ  レジスタ、１６２  監視部
【図１】
2008003911.tif 000003
【図２】
2008003911.tif 000004
【図３】
2008003911.tif 000005
【図４】
2008003911.tif 000006
【図５】
2008003911.tif 000007
【図６】
2008003911.tif 000008
【図７】
2008003911.tif 000009
【図８】
2008003911.tif 000010
【図９】
2008003911.tif 000011
【図１０】
2008003911.tif 000012
【図１１】
2008003911.tif 000013
【図１２】
2008003911.tif 000014