(57)【要約】      （修正有）【課題】機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリーを共用可能にする画像形成装置を提供する。【解決手段】ＭＦＰの主制御部６０は、リアルタイム性が要求される画像形成プログラム６２Ｒと他のプログラム６２Ｂとの実行に１つのキャッシュメモリー６１Ｍを共用する。コア６１Ｃは画像形成プログラム６２Ｒを模擬実行し、その完了後に本実行する。コア６１Ｃは模擬実行中、印刷条件に合わせて異なる命令を実行し、各機構部１０、…、４０の駆動部１０Ｄ、…、４０Ｄへ送信すべき制御出力を遮断し、それに対する駆動部１０Ｄ、…、４０Ｄからの応答情報を模擬的に、印刷条件に合わせて異なる態様で作成する。模擬実行の完了後、本実行に先立ってキャッシュメモリー６１Ｍに、模擬実行中に記憶した情報をロックダウンさせる。【選択図】図４
2018030267.tif 000002
【特許請求の範囲】
【請求項１】
リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に１つのキャッシュメモリーを共用する画像形成装置であって、
前記画像形成プログラムを模擬実行し、当該模擬実行の完了後に前記画像形成プログラムを本実行する実行手段と、
前記画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、
前記画像形成プログラムの模擬実行中、前記条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを前記画像形成プログラムから前記実行手段に読み出させ、当該命令に従って前記実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーから当該制御出力に応じて送出されるはずの検出信号を模擬的に、当該印刷条件に合わせて異なる態様で作成して前記実行手段へ渡す入出力模擬手段と、
前記画像形成プログラムの模擬実行の完了後、本実行に先立って前記キャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン（ＣＬＤ）手段と、
を備えた画像形成装置。
【請求項２】
前記キャッシュメモリーに加えてメインメモリーとプロセッサーとを含む制御部と、
シートを搬送し、搬送中のシートの上に画像を形成する機構部と、
ユーザーまたは外部の電子機器からデータを受け付ける操作部と、
を更に備え、
前記メインメモリーは、前記画像形成プログラムと前記他のプログラムとを記憶し、
前記画像形成プログラムは、前記機構部を前記制御部に制御させるプログラムを含み、
前記他のプログラムは、前記操作部が前記条件取得手段として機能するように、前記操作部を前記制御部に制御させるプログラムを含み、
前記プロセッサーは、前記実行手段として機能すると共に、前記画像形成プログラムの模擬実行により前記入出力模擬手段と前記ＣＬＤ手段としても機能する
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記入出力模擬手段は、前記画像形成プログラムの含む命令のうち前記機構部へのアクセス命令を前記実行手段にスキップさせることにより、当該アクセス命令に従って前記実行手段から前記機構部へ送信されるべき制御出力を遮断することを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記実行手段は、前記機構部のウォームアップ中、またはリカバリー中に、前記画像形成プログラムを模擬実行することを特徴とする請求項２または請求項３に記載の画像形成装置。
【請求項５】
前記条件取得手段が印刷条件を更新する度に、前記実行手段は前記画像形成プログラムを模擬実行することを特徴とする請求項２から請求項４までのいずれかに記載の画像形成装置。
【請求項６】
前記条件取得手段が取得した印刷条件が示すシートの給紙場所または排紙場所に合わせて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項１から請求項５までのいずれかに記載の画像形成装置。
【請求項７】
前記条件取得手段が取得した印刷条件が片面印刷と両面印刷とのいずれを示すかに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項１から請求項６までのいずれかに記載の画像形成装置。
【請求項８】
前記条件取得手段が取得した印刷条件が示すシートのサイズ、紙種、または姿勢に合わせて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項１から請求項７までのいずれかに記載の画像形成装置。
【請求項９】
前記条件取得手段が取得した印刷条件がカラーモードとモノクロモードとのいずれを示すかに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項１から請求項８までのいずれかに記載の画像形成装置。
【請求項１０】
後処理装置が外付けされているか否かに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項１から請求項９までのいずれかに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像形成装置に関し、特にそれが実装するプロセッサーによるキャッシュメモリーの利用に関する。
【背景技術】
【０００２】
画像形成装置に要求されるデータ処理は、リアルタイム型とその他とに大別される。「リアルタイム型」とは、リアルタイム性が要求されるデータ処理をいう。「リアルタイム性」とは、タスクの最大実行時間の予測可能性と、実際の実行時間が最大値を超えないことに対する確実性との両方を意味する。画像形成装置では、シート搬送機構、印刷エンジン等、画像形成に利用される機構部の制御（以下、「機構制御」という。）が典型的である。リアルタイム型以外のデータ処理の中ではベストエフォート型が代表的である。画像形成装置では、画像処理、ユーザーインターフェース（ＵＩ）、およびネットワーク通信がベストエフォート型データ処理に相当する。これらの処理には、必ずしもリアルタイム性は要求されないが、汎用性と拡張性（スケーラビリティー）とは強く求められる。
【０００３】
リアルタイム型とそれ以外、特にベストエフォート型とのデータ処理間では、要求される条件が異なる。これらの条件のいずれにも的確に対応する目的で従来の画像形成装置ではその電子制御系統（以下、「主制御部」という。）から、機構制御を行うハードウェア（以下、「メカニカルコントローラー部」、略して「メカコン部」という。）が分離されている。特に主制御部とメカコン部とが独自のマイクロプロセッサー（ＣＰＵ／ＭＰＵ）を備えている。両者の分離により、たとえば、主制御部には汎用オペレーティングシステム（ＯＳ）を実行させ、メカコン部にはリアルタイムＯＳ（ＲＴＯＳ）を実行させるといった工夫が可能である（たとえば特許文献１参照）。主制御部ではその汎用性の高さにより多様なアプリケーションプログラムが実行可能であるので、多機能化が容易である。それとは独立にメカコン部ではリアルタイム性が向上し、搬送ローラー等の可動部材とシートとの動きをμ秒程度の高い応答精度で制御可能である。
【０００４】
近年、組み込みシステムにおけるＣＰＵの高性能化が著しい。特にマルチコアＣＰＵとハイパーバイザーとの組み込みシステムへの応用が進んでいる。これに伴い、メカコン部を主制御部に再統合する技術の開発が試みられている（たとえば特許文献２、３参照）。メカコン部と主制御部との間で、ＣＰＵ、メインメモリーを始め、機能の共通する電子回路素子を１つに統合することにより電子制御系統の部品点数を削減し、画像形成装置の製造コストを低減させることが狙いである。「マルチコアＣＰＵ」は、実際に演算を行う回路部分である「コア」を２個以上含む。ＣＰＵがマルチコアであれば、ＯＳ別に実行主体のコアを分ける（asymmetric multiprocessing：ＡＭＰ）ことで、単一のＣＰＵにＲＴＯＳと汎用ＯＳとを並列に実行させることが可能である。「ハイパーバイザー」は、１台の物理的なコンピューターを、そのハードウェアが２台以上の仮想的なコンピューター（バーチャルマシーン（ＶＭ））に共有されているように動作させるためのソフトウェアである。ハイパーバイザーが異なるＶＭに異なるＯＳを実行させることにより、物理的には単一のＣＰＵにＲＴＯＳと汎用ＯＳとを並列に実行させることが可能である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２６５３０１号公報
【特許文献２】特開２０１６−０６３４０７号公報
【特許文献３】特開２０１１−１９２１３０号公報
【特許文献４】特開２０００−２５０５１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
主制御部に搭載されているＣＰＵはキャッシュメモリーを利用するので、メカコン部を主制御部に統合するには、このキャッシュメモリーをリアルタイム型タスク処理にも利用可能にしなければならない。ＣＰＵがマルチコアであれば１次キャッシュはコアごとに独立しているので、リアルタイム型タスク処理専用のコアと１次キャッシュとを他のタスク処理用のものから分離することは可能である。しかし、この場合でも、２次キャッシュまたは３次キャッシュは一般に複数のコアにより共用されるので、リアルタイム型タスク処理と他のタスク処理とで共用可能にする必要がある。
【０００７】
リアルタイム型タスク処理にキャッシュメモリーを利用することは、ＣＰＵによる命令／データの読み書き時間を確率的に変動させるので、タスクの実行時間を予測させにくくする。それでも、キャッシュヒット率が十分に安定していれば、実行時間の予測は可能である。しかし、リアルタイム型タスク処理にベストエフォート型タスク処理が並行する場合、両処理間でのキャッシュメモリーの共用はキャッシュヒット率を著しく不安定化させる。ベストエフォート型タスク処理ではキャッシュメモリーの利用量が状況に応じて大きく変動するからである。その結果、リアルタイム型タスクの実行時間は予測困難に陥り、メカコン部が主制御部から分離されていた場合と同程度に短い最大実行時間を保証することが困難である。すなわち、メカコン部を主制御部に統合する場合、機構制御の応答精度をμ秒程度の高レベルに維持することが難しい。
【０００８】
本発明の目的は上記の課題を解決することであり、特に、機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリーを共用可能にする画像形成装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の１つの観点による画像形成装置は、リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に１つのキャッシュメモリーを共用する画像形成装置であって、画像形成プログラムを模擬実行し、その模擬実行の完了後に画像形成プログラムを本実行する実行手段と、画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、模擬実行中、条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを画像形成プログラムから実行手段に読み出させ、その命令に従って実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーからその制御出力に応じて送出されるはずの検出信号を模擬的に、印刷条件に合わせて異なる態様で作成して実行手段へ渡す入出力模擬手段と、画像形成プログラムの模擬実行の完了後、本実行に先立ってキャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン（ＣＬＤ）手段とを備えている。
【００１０】
この画像形成装置は、キャッシュメモリーに加えてメインメモリーとプロセッサーとを含む制御部と、シートを搬送し、搬送中のシートの上に画像を形成する機構部と、ユーザーまたは外部の電子機器からデータを受け付ける操作部とを更に備えていてもよい。メインメモリーは、画像形成プログラムと他のプログラムとを記憶してもよい。画像形成プログラムは、機構部を制御部に制御させるプログラムを含んでもよい。上記他のプログラムは、操作部が条件取得手段として機能するように、操作部を制御部に制御させるプログラムを含んでもよい。プロセッサーは、実行手段として機能すると共に、画像形成プログラムの模擬実行により入出力模擬手段とＣＬＤ手段としても機能してもよい。
【００１１】
入出力模擬手段は、画像形成プログラムの含む命令のうち機構部へのアクセス命令を実行手段にスキップさせることにより、そのアクセス命令に従って実行手段から機構部へ送信されるべき制御出力を遮断してもよい。実行手段は、機構部のウォームアップ中、またはリカバリー中に、画像形成プログラムを模擬実行してもよい。条件取得手段が印刷条件を更新する度に、実行手段は画像形成プログラムを模擬実行してもよい。
【００１２】
入出力模擬手段は、模擬的に作成すべき検出信号の態様を、条件取得手段が取得した印刷条件が示す次の項目の少なくとも１つに合わせて変更してもよい。（１）シートの給紙場所または排紙場所。（２）片面印刷と両面印刷とのいずれを示すか。（３）シートのサイズ、紙種、または姿勢。（４）カラーモードとモノクロモードとのいずれを示すか。（５）後処理装置が外付けされているか否か。
【発明の効果】
【００１３】
本発明の上記の観点による画像形成装置では、画像形成プログラムの模擬実行中に入出力模擬手段が、印刷条件に合わせて異なる命令とデータとを画像形成プログラムから実行手段に読み出させ、その命令に従って実行手段から送信されるべき制御出力を遮断し、その制御出力に応じてセンサーから送出されるはずの検出信号を模擬的に、印刷条件に合わせて異なる態様で作成して実行手段へ渡す。模擬実行の完了後、画像形成プログラムの本実行に先立ってＣＬＤ手段がキャッシュメモリーに、画像形成プログラムの模擬実行中に記憶した命令とデータとをロックダウンさせる。その結果、画像形成プログラムの本実行では、キャッシュメモリーにロックダウンされた命令とデータとに従って機構制御が実行される。この間、機構制御に他のデータ処理が並列に実行されても、キャッシュメモリーにロックダウンされた命令とデータとは他の命令とデータとに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。こうして、この画像形成装置は、機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリーを共用することができる。
【図面の簡単な説明】
【００１４】
【図１】（ａ）は、本発明の実施形態による画像形成装置の外観を示す斜視図である。（ｂ）は、（ａ）の示す直線ｂ−ｂに沿った画像形成装置の模式的な断面図である。
【図２】図１の示す画像形成装置の搬送機構が構成するシートの搬送経路を示す模式図である。
【図３】（ａ）は、図１の示す画像形成装置の斜め前方からの斜視図であり、（ｂ）はその装置のシャーシの斜め後方からの斜視図である。
【図４】図１の示す画像形成装置の電子制御系統の構成を示すブロック図である。
【図５】（ａ）は、図４の示すキャッシュメモリーの構成を示すブロック図である。（ｂ）は、（ａ）の示すメモリーアレイのデータ構造を示す模式図である。
【図６】（ａ）は、通常の状態でキャッシュミスが生じた場合におけるキャッシュメモリーの動作を示す模式図である。（ｂ）は、コアからキャッシュロックダウンが指示された状態でキャッシュミスが生じた場合におけるキャッシュメモリーの動作を示す模式図である。
【図７】（ａ）は、画像形成プログラムの実行開始直後におけるＣＰＵの動作を示す模式図である。（ｂ）は、画像形成プログラムの模擬実行中におけるＣＰＵの動作を示す模式図である。
【図８】（ａ）は、画像形成プログラムの本実行中におけるＣＰＵの動作を示す模式図である。（ｂ）は、画像形成プログラムの本実行の完了時におけるＣＰＵの動作を示す模式図である。
【図９】（ａ）は、シートの給紙場所と紙種との組み合わせ別に、図２の示す通紙センサーによるシートの検出時間を示す表である。（ｂ）は、シートの排紙場所と紙種との組み合わせ別に、シートが排紙センサーの通過に要する時間を示す表である。（ｃ）は、シートの紙種、サイズ、姿勢の組み合わせ別に、タイミングローラーがシートの後端をタイミングセンサーの検出範囲から引き出すのに要する時間を示す表である。（ｄ）は、片面印刷と両面印刷とのそれぞれにおいて通紙センサーがシートを検出する時間と切換爪の駆動ソレノイドの動作時間とを示す表である。（ｅ）は、プリンターの動作モードがカラーモードとモノクロモードとの別に、印刷エンジンにおける駆動対象のモーターを示す表である。
【図１０】画像形成プログラムの実行処理のフローチャートである。
【図１１】図１０の示すステップＳ１０５における本実行による機構制御のうち、給送ローラー群の制御のフローチャートである。
【図１２】図１０の示すステップＳ１０３における模擬実行による機構制御のうち、図１１の示す給送ローラー群の制御に相当する部分のフローチャートである。
【図１３】（ａ）は、図１の示す画像形成装置に外付けされた中継ユニットと後処理装置との外観を示す斜視図である。（ｂ）は、これらの中継ユニットと後処理装置とに内蔵されたシートの搬送経路を示す模式図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について、図面を参照しながら説明する。
［画像形成装置の外観］
図１の（ａ）は、本発明の実施形態による画像形成装置１００の外観を示す斜視図である。この画像形成装置は複合機（multi-function peripheral：ＭＦＰ）１００であり、スキャナー、カラーコピー機、およびカラーレーザープリンターの機能を併せ持つ。ＭＦＰ１００の筐体の上面には自動原稿送り装置（auto document feeder：ＡＤＦ）１１０が開閉可能に装着されている。ＡＤＦ１１０の直下に位置する筐体の上部にはスキャナー１２０が内蔵され、この筐体の下部にはプリンター１３０が内蔵されている。プリンター１３０の底部には給紙カセット１３３が引き出し可能に取り付けられている。
【００１６】
ＭＦＰ１００は胴内排紙型である。すなわち、スキャナー１２０とプリンター１３０との隙間ＤＳＰには排紙トレイ４６が設置され、その隙間ＤＳＰの奥の排紙口４２から排紙されたシートを収容する。この隙間ＤＳＰには更に反転トレイ４７が排紙トレイ４６の上に設置されている。両面印刷時、表面が印刷されたシートは反転トレイ４７の上でスイッチバックする。すなわち、そのシートは、排紙口４２の上に開いた反転口４４から反転トレイ４７の上へはみ出す位置まで一旦搬送され、その後、搬送方向が反転して反転口４４の中に再び引き込まれる。
【００１７】
［画像形成装置の機構部］
図１の（ｂ）は、図１の（ａ）の示す直線ｂ−ｂに沿った、ＭＦＰ１００の模式的な断面図である。この図が示すように、ＭＦＰ１００の筐体下部にはプリンター１３０の機構部が組み込まれている。この機構部は、給送部１０、作像部２０、定着部３０、および排紙部４０を含む。
【００１８】
−給送部−
給送部１０は給送ローラー群１２Ｐ、１２Ｒ、１２Ｆ、１３、１４、１５を利用して、給紙カセット１１ａ、１１ｂ、または手差しトレイ１６に収容されたシートの束ＳＨＴからシートＳＨ１を１枚ずつ作像部２０へ給送する。「シート」とは、紙製もしくは樹脂製の薄膜状もしくは薄板状の材料、物品、または印刷物をいう。給紙カセット１１ａ、１１ｂ、および手差しトレイ１６に収容可能なシートの種類、すなわち紙種はたとえば、普通紙、上質紙、カラー用紙、または塗工紙であり、サイズはたとえば、Ａ３、Ａ４、Ａ５、Ｂ４、またはＢ５である。さらに、シートの姿勢は縦置きと横置きとのいずれにも設定可能である。
【００１９】
−作像部（印刷エンジン）−
作像部２０は、給送部１０から送られたシートＳＨ２の上にトナー像を形成する。この形成には印刷エンジンが利用される。印刷エンジンはたとえば、タンデム方式の４つの作像ユニット２１Ｙ、２１Ｍ、２１Ｃ、２１Ｋ、中間転写ベルト２３、およびレーザー走査方式の露光部２６を含む。
【００２０】
作像ユニット２１Ｙ、…はまず、感光体ドラム２５Ｙ、２５Ｍ、２５Ｃ、２５Ｋの表面を一様に帯電させ、その帯電部分を露光部２６にレーザー光で、各感光体ドラム２５Ｙ、…の軸方向（図１の（ｂ）では紙面の法線方向）に走査させる。レーザー光量は露光部２６により、画像データの１ラインが示す、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、およびブラック（Ｋ）のうちいずれかの色の階調値で変調されている。これにより、異なる感光体ドラム上の露光領域には、異なる色の階調値分布に対応する帯電量分布、すなわち静電潜像が生じる。各作像ユニット２１Ｙ、…は次に、Ｙ、Ｍ、Ｃ、Ｋのうちいずれかの色のトナーを帯電させて静電潜像に付着させる。こうして、異なる感光体ドラム上に異なる単色のトナー像が現れる。このような露光と現像とを作像ユニット２１Ｙ、…は画像データの異なるラインごとに所定角度ずつ感光体ドラム２５Ｙ、…を回転させながら繰り返す。こうして、その画像データの表す画像の全体が４本の感光体ドラム２５Ｙ、…のそれぞれに、Ｙ、Ｍ、Ｃ、Ｋの各単色のトナー像として再現される。
【００２１】
中間転写ベルト２３は駆動ローラー２３Ｒと従動ローラー２３Ｌとの間に張られ、駆動ローラー２３Ｒからのトルクで回転する。この回転により、中間転写ベルト２３上のある一定の表面領域が１次転写ローラー２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋと感光体ドラム２５Ｙ、…との間のニップを順番に通過する。各ニップには、中間転写ベルト２３のその表面領域の通過タイミングに合わせて、対応する感光体ドラム２５Ｙ、…上の単色のトナー像が進入してその表面領域に接触する。このとき、１次転写ローラー２２Ｙ、…と感光体ドラム２５Ｙ、…との間の電界により、各トナー像は感光体ドラム２５Ｙ、…から中間転写ベルト２３のその表面領域へ転写される。こうしてその表面領域に４つの単色のトナー像が重ねられて、１つのカラートナー像が構成される。このカラートナー像は中間転写ベルト２３の駆動ローラー２３Ｒと２次転写ローラー２４との間のニップを、給送部１０から送出されたシートＳＨ２と同時に通過してそのシートＳＨ２に接触する。このとき、カラートナー像は両ローラー２３、２４間の電界により、中間転写ベルト２３からそのシートＳＨ２へ転写される。その後、そのシートＳＨ２は中間転写ベルト２３の駆動ローラー２３Ｒにより定着部３０へ送り出される。
【００２２】
露光部２６は光源として４個の半導体レーザー素子を含み、各素子への供給電流量を、画像データが示すＹ、Ｍ、Ｃ、Ｋの階調値で変調することにより、各素子から出射するレーザー光量を変調する。各レーザー光はポリゴンミラー２７１で反射されてｆθレンズ２７３を透過し、折り返しミラー（２８Ｙ、２９Ｙ）、（２８Ｍ、２９Ｍ）、（２８Ｃ、２９Ｃ）、２８Ｋで反射されて目標の感光体ドラム２５Ｙ、…へ照射される。このとき、露光部２６はポリゴンミラー２７１をモーター２７２で、その中心軸（図１の（ｂ）では上下方向に伸びている。）のまわりに一定の角速度で回転させる。これにより、ポリゴンミラー２７１からｆθレンズ２７３へのレーザー光の入射角が等速度で変化する。ｆθレンズ２７３はたとえば２枚の非球面レンズから構成され、ポリゴンミラー２７１からの入射光を各感光体ドラム２５Ｙ、…の表面に結像させる。像高が入射角に比例するという性質をｆθレンズ２７３が持つので、結像点はポリゴンミラー２７１の等速回転に伴い、感光体ドラム２５Ｙ、…の表面上をその軸方向（図１の（ｂ）では紙面の法線方向）に等速度で移動する。
【００２３】
−定着部−
定着部３０は、作像部２０から送出されたシートＳＨ２にトナー像を熱定着させる。具体的には、定着部３０は定着ローラー３１と加圧ローラー３２とを回転させながら両ローラー間のニップにシートＳＨ２を通紙する。このとき、定着ローラー３１はそのシートＳＨ２へ内蔵のヒーターの熱を加え、加圧ローラー３２はそのシートＳＨ２の加熱部分に対して圧力を加えて定着ローラー３１へ押し付ける。定着ローラー３１からの熱と加圧ローラー３２からの圧力とによりトナーがシートＳＨ２に溶着するので、トナー像がそのシートＳＨ２に定着する。定着部３０は更に定着ローラー３１と加圧ローラー３２との回転により、そのシートＳＨ２を排紙部４０へ送り出す。
【００２４】
定着ローラー３１に内蔵のヒーターはたとえばハロゲンヒーターであり、定着ローラー３１の芯金に埋め込まれている。定着部３０は、定着ローラー３１の近傍に設置された温度センサー３５で定着ローラー３１の外周面温度を監視する。温度センサー３５はたとえば、サーモパイルを利用した非接触型温度センサーであり、定着ローラー３１の外周面からの放射熱量に基づいて定着ローラー３１の外周面温度を計測する。この計測値を定着部３０はハロゲンヒーターの発熱量の制御に利用する。
【００２５】
−排紙部−
排紙部４０は、定着部３０から送出されたシートＳＨ３、ＳＨ４を、排紙口４２から排紙トレイ４６へ排紙し、または反転トレイ４７でスイッチバックさせる。具体的には、排紙部４０はまず、シートの送り先に応じて切換爪４１を上下させる。切換爪４１は、その基端が排紙口４２と反転口４４との間に回転可能に固定された爪状または板状の部材であり、基端のまわりに揺動することによって先端を上下に移動させる。切換爪４１に先端を上げさせるとシートは排紙口４２へ進み、下げさせると反転口４４へ進む。排紙部４０は次に排紙ローラー４３または反転ローラー４５を回転させる。排紙ローラー４３は排紙口４２の内側に配置され、切換爪４１を通過したシートＳＨ３を排紙口４２から排紙トレイ４６へ送出する。反転ローラー４５は反転口４４の内側に配置され、正逆両方向に回転可能である。反転ローラー４５はまず正転し、切換爪４１を越えて移動してきたシートＳＨ４を一旦、反転口４４から送出して反転トレイ４７に載せる。反転ローラー４５は更に、そのシートＳＨ４の後端を通過させる直前に逆転してそのシートＳＨ４を反転トレイ４７から反転口４４の中へ引き込み、すなわちスイッチバックさせて循環路４８へ送る。循環路４８では４対の搬送ローラー４９Ａ，４９Ｂ、４９Ｃ、４９Ｄが、反転ローラー４５の送出したシートＳＨ５を裏返して給送部１０内の搬送経路へ戻す。その後、給送部１０はこのシートＳＨ５を再び作像部２０へ送り、作像部２０はこのシートＳＨ５の裏面にトナー像を形成する。定着部３０はこのシートＳＨ５に再び熱処理を行い、排紙部４０はこのシートＳＨ５を今度は排紙トレイ４６へ送出する。
【００２６】
−シートの搬送経路−
ＭＦＰ１００では、給送部１０と排紙部４０とに加え、中間転写ベルト２３の駆動ローラー２３Ｒ、２次転写ローラー２４、定着ローラー３１、加圧ローラー３２等、作像部２０と定着部３０との一部がシートの搬送機構としても機能する。
図２は、この搬送機構が構成するシートの搬送経路を示す模式図である。給紙カセットの１段目１１ａと２段目１１ｂ、および手差しトレイ１６のそれぞれから伸びる３本の給紙経路が第１合流点ＭＰ１で１本の経路にまとまる。この経路は作像部２０と定着部３０とを貫き、切換爪４１に面した分岐点ＢＰで２本に分かれる。１本は排紙口４２で排紙トレイ４６へ繋がり、もう１本は反転口４４で反転トレイ４７と循環路４８とへ繋がる。循環路４８は、第１合流点ＭＰ１と作像部２０との間に位置する第２合流点ＭＰ２で元の経路に繋がる。
【００２７】
−通紙センサーを利用した搬送タイミングの制御−
図２が示すように、搬送経路上には、搬送ローラー群１２Ｐ、…に加えて通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳ、ＥＳ、１ＲＳ、２ＲＳが設置されている。各通紙センサー１ＦＳ、…は、その設置場所を通過中のシートを光学的に検出し、それを示す信号を送出する。具体的には、各通紙センサーは発光部と受光部とを含む。発光部は赤外線等、所定波長の光を出射し、受光部はその波長の光を検知してその出力信号を変化させる。各通紙センサーの設置場所を１枚のシートが通過する間、そのシートは発光部の出射光を受光部の手前で遮断し、または受光部へ向けて反射する。この出射光の遮断または反射に応じて受光部の出力信号が変化することから、各通紙センサーの設置場所を通過中のシートが検出される。この出力信号、すなわち通紙センサー１ＦＳ、…の検出信号の状態を、給送部１０、作像部２０、定着部３０、および排紙部４０は後述の主制御部６０（図４参照。）へ通知する。この通知に応じて主制御部６０は、以下に示すとおり、搬送ローラーの回転と停止とのタイミングを制御し、ジャム等に起因してシートの搬送タイミングに異常が生じているか否かを判断する。
【００２８】
給紙カセット１１ａ、１１ｂの近傍には、ピックアップローラー１２Ｐ、給紙ローラー１２Ｆ、捌きローラー１２Ｒ、および給紙センサー１ＦＳ、２ＦＳが設置されている。給送ローラー群１２Ｐ、１２Ｆ、１２Ｒは、複数枚のシートを連続して給送する場合、間欠的に回転して、連続するシートの間隔（紙間）を所定値に維持する。各給紙センサー１ＦＳ、２ＦＳの出力が示すシートの通過タイミングに遅れがないか否かに応じて、給送ローラー群１２Ｐ、１２Ｆ、１２Ｒがシートを正常な紙間で給送経路へ送出しているか否かが判断される。
【００２９】
２段目の給紙カセット１１ｂからの給送経路には、縦搬ローラー１３と縦搬センサーＣＳとが設置されている。縦搬センサーＣＳの出力が示すシートの通過タイミングに遅れがないか否かに応じて、縦搬ローラー１３がシートを正常なタイミングで第１合流点ＭＰ１へ送出しているか否かが判断される。
第２合流点ＭＰ２と２次転写ローラー２４との間には、タイミングローラー１４とタイミングセンサーＴＳとが設置されている。タイミングローラー１４は、シートが給紙カセット１１ａ、１１ｂ、手差しトレイ１６、および循環路４８のいずれから到達する時点でも停止しており、そのシートを一旦停止させる。そのシートの到着がタイミングセンサーＴＳの出力から検知されると、その到着時点から所定時間が経過した時点でタイミングローラー１４は回転を開始する。これにより、停止していたシートが中間転写ベルト２３の駆動ローラー２３Ｒと２次転写ローラー２４との間のニップへ、中間転写ベルト２３上のトナー像と同時に進入する。この進入のタイミングに遅れがないか否かがタイミングセンサーＴＳの出力から判断される。
【００３０】
定着部３０と分岐点ＢＰとの間には排紙センサーＥＳが設置されている。この出力が示すシートの通過タイミングに遅れがないか否かに応じて、定着ローラー３１がそのシートを正常なタイミングで送出しているか否かと、排紙ローラー４３または反転ローラー４５がそのシートを正常なタイミングで引き込んでいるか否かとが判断される。
循環路４８には通紙センサー１ＲＳ、２ＲＳが設置されている。これらの出力が示すシートの通過タイミングに遅れがないか否かに応じて、循環路４８の搬送ローラー群４９Ａ−４９Ｄがそのシートを正常なタイミングで搬送しているか否かが判断される。
【００３１】
−アクチュエーター−
搬送経路の周辺と印刷エンジンとには可動部材の駆動用アクチュエーターが設置されている。これらのアクチュエーターには、搬送ローラーの駆動モーターＭ１−Ｍ６、ＴＭ、ＳＭ、ＦＭ、ＥＭ、ＲＭ、感光体ドラム２５Ｙ、…の駆動モーターＹＭ、ＭＭ，ＣＭ、ＫＭ、および切換爪４１の駆動ソレノイドＳＬが含まれる。各駆動モーターＭ１、…はたとえば直流ブラシレス（ＢＬＤＣ）モーターであり、一般に正逆両方向に回転可能である。各モーターＭ１、…は、ギア、ベルト等の伝達系統を通して駆動対象のローラーに回転力を与える。ソレノイドＳＬは、電磁石を利用して可動鉄芯（プランジャー）を軸方向に前後運動させて切換爪４１を押し引きすることにより、それを上下に揺動させる。
【００３２】
給紙カセット１１ａ、１１ｂの近傍では、給送モーターＭ１、Ｍ２が給送ローラー群１２Ｐ、１２Ｆ、１２Ｒを回転させる。２段目の給紙カセット１１ｂからの給送経路の近傍では、縦搬モーターＭ３が縦搬ローラー１３を回転させる。手差しトレイ１６からの給送経路の近傍では、給送モーターＭ４が給送ローラー１５を回転させる。第２合流点ＭＰ２付近ではタイミングモーターＴＭがタイミングローラー１４を回転させる。作像部２０では、メインモーターＳＭが中間転写ベルト２３の駆動ローラー２３Ｒを回転させ、４つの駆動モーターＹＭ、ＭＭ、ＣＭ、ＫＭがそれぞれ感光体ドラム２５Ｙ、…を１本ずつ回転させる。定着部３０では定着モーターＦＭが定着ローラー３１を回転させる。排紙部４０では、排紙モーターＥＭが排紙ローラー４３を回転させ、反転モーターＲＭが反転ローラー４５を正逆両方向に回転させる。ソレノイドＳＬは切換爪４１を上下に揺動させる。循環路４８では、２台の駆動モーターのうち、一方Ｍ５が上流側の２対の搬送ローラー４９Ａ、４９Ｂを回転させ、他方Ｍ６が下流側の２対の搬送ローラー４９Ｃ、４９Ｄを回転させる。
【００３３】
［主制御部の配置］
図３の（ａ）はＭＦＰ１００の斜め前方からの斜視図であり、（ｂ）はＭＦＰ１００のシャーシ１０１の斜め後方からの斜視図である。いずれの図面にも、ＭＦＰ１００が内蔵する主制御部６０と電源部７０とが、あたかもＭＦＰ１００の筐体とシャーシ１０１とを透かして見えているように描かれている。主制御部６０と電源部７０とはそれぞれ１枚の印刷回路基板に実装され、それらの基板が、ＭＦＰ１００の筐体の背面とシャーシ１０１との間に設けられた電装空間ＥＬＳの中に、その背面に対して平行に収容されている。図３は示していないが、主制御部６０の基板上には外付けの電子機器（オプション）に対する接続部（コネクタ）が設けられている。これらのオプションには、ＵＳＢメモリー、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等の可搬性記憶装置ＰＭＤ、およびネットワーク（ＬＡＮ）カード、半導体メモリーボード、グラフィックボード等の機能拡張ボードＥＦＢが含まれる。
【００３４】
［画像形成装置の電子制御系統］
図４は、ＭＦＰ１００の電子制御系統の構成を示すブロック図である。この制御系統では、機構部１０、２０、３０、４０内の駆動部１０Ｄ、２０Ｄ、３０Ｄ、４０Ｄに加えて操作部５０と主制御部６０とが、バス９０を通して互いに通信可能に接続されている。
−駆動部−
図４は示していないが、各機構部１０、…、の駆動部１０Ｄ、２０Ｄ、３０Ｄ、４０Ｄは、制御回路、駆動回路、およびレジスターを含む。これらを利用して各駆動部１０Ｄは図２の示す駆動モーター群Ｍ１、…、ソレノイドＳＬ等のアクチュエーターに対してフィードバック制御を行う。
【００３５】
制御回路は、ＭＰＵ／ＣＰＵ、特定用途向け集積回路（ＡＳＩＣ）、またはプログラム可能な集積回路（ＦＰＧＡ）等の電子回路である。制御回路は、アクチュエーターの起動と停止とのタイミング、およびそのアクチュエーターの制御量の目標値、たとえば駆動モーターであればその目標の回転速度を決定する。制御回路は更に、決定した制御量の目標値と、アクチュエーターからフィードバックされる実際の制御量との間の誤差に基づき、そのアクチュエーターに対する印加電圧の目標値を駆動回路に指示する。
【００３６】
駆動回路はスイッチングコンバーターであり、電界効果トランジスタ（ＦＥＴ）、絶縁ゲートバイポーラトランジスタ（ＩＧＢＴ）等のパワートランジスタをスイッチング素子として利用して、制御回路から指示された目標値に等しい電圧をアクチュエーターに対して印加する。これにより、アクチュエーターの制御量がその目標値に調節される。
レジスターは、制御回路と同じ基板または同じチップに組み込まれたラッチ回路等の記憶素子である。レジスターは制御回路と主制御部６０との両方に監視され、両者間で交換されるべき情報の一時的な保存場所として利用される。制御回路は、主制御部６０がレジスターに書き込んだ命令に応じてアクチュエーターを起動または停止させ、その命令が示す、プリンター１３０の動作モード、シートの搬送速度の目標値等の情報に基づき、アクチュエーターの制御量の目標値を決定する。制御回路はまた、アクチュエーターまたはその駆動対象である可動部材の状態に関する情報、または、通紙センサー１ＦＳ、…から送出される検出信号の状態に関する情報をレジスターへ書き込むことにより、これらの情報を主制御部６０へ通知する。
【００３７】
−操作部−
操作部５０は、ＭＦＰ１００の備えたＵＩの総体であり、操作パネル５１、メモリーインターフェース（Ｉ／Ｆ）５２、およびネットワーク（ＬＡＮ）Ｉ／Ｆ５３を含む。これらを利用して操作部５０は、ユーザー操作または外部の電子機器から各種ジョブの処理要求を受け付け、その要求を主制御部６０へ伝える。特にジョブが印刷である場合、操作部５０は印刷対象の画像データと共に印刷条件を、ジョブ処理の要求元から取得する。すなわち、操作部５０は条件取得手段として機能する。印刷条件の設定項目には、たとえば、印刷対象のシートのサイズ、紙種、姿勢（縦置きと横置きとの別)、部数、カラー／モノクロの別、画質が含まれる。これらの条件を規定するパラメーターの値を操作部５０は操作情報に組み込み、印刷対象の画像データと共に主制御部６０へ提供する。
【００３８】
操作パネル５１は、押しボタン、タッチパネル、およびディスプレイを含む。このディスプレイに操作パネル５１は、操作画面、各種パラメーターの入力画面等のグラフィックスユーザーインターフェース（ＧＵＩ）画面を表示する。操作パネル５１はまた、押しボタンの中からユーザーが押下したものを識別し、またはタッチパネルの中からユーザーが触れた位置を検出し、その識別または検出に関する情報を操作情報として主制御部６０へ伝える。メモリーＩ／Ｆ５２は、図３が示す主制御部６０の基板に設けられたコネクタの中にＵＳＢポートまたはメモリーカードスロットを含み、それらを通して、ＵＳＢメモリー、ＨＤＤ等の可搬性記憶装置ＰＭＤから直に印刷対象の画像データを取り込む。ＬＡＮＩ／Ｆ５３は、図３が示す主制御部６０の基板に実装されたＬＡＮカードを利用して外部ネットワークと有線または無線で通信し、そのネットワークに接続されたパーソナルコンピューター（ＰＣ）等の電子機器から印刷条件と印刷対象の画像データとを受信する。
【００３９】
−主制御部−
主制御部６０は、図３の示す１枚の印刷回路基板に実装された集積回路であり、ＣＰＵ６１とメインメモリー６２とを含む。ＣＰＵ６１は各種プログラムの実行手段である。メインメモリー６２は、それらのプログラムの保存領域と共に、ＣＰＵ６１がプログラムを実行する際の作業領域を含む。
【００４０】
ＣＰＵ６１は１つのＭＰＵで構成され、各種プログラムに従い、バス９０を通して他の要素１０、２０、…から操作情報等の各種情報を取得して処理し、その処理結果に基づいて制御出力を生成して各要素１０、…へ送信する。「制御出力」とは、送信先に対する命令、および送信先に提供されるべきデータを意味する。こうして、ＣＰＵ６１はそれら他の要素１０、…に対する制御主体として機能する。この機能は、実行対象のプログラムの種類に応じて多様に変化する。たとえば、ＣＰＵ６１は操作部５０にＧＵＩ画面を表示させ、その画面に対するユーザー操作を受け付けさせる。この操作に応じて操作部５０から通知される操作情報に基づき、ＣＰＵ６１は、印刷モード、コピーモード、スキャンモード、待機（低電力）モード、スリープモード等、ＭＦＰ１００の動作モードを決定し、その動作モードへの移行を各要素１０、…に指示する。ＣＰＵ６１は更に、動作モードの切り換えに必要な情報を各要素１０、…へ提供する。たとえば印刷ジョブの処理要求に応じて印刷モードへの移行を指示する場合、ＣＰＵ６１は、そのジョブにおける印刷条件に従い、給送部１０には、給送対象のシートの紙種と枚数、搬送ローラー１２Ｐ、…の回転のタイミング、シートの搬送速度の目標値を指定し、作像部２０には、画像データ、作像のタイミングを提供し、定着部３０には、定着ローラー３１の目標温度、ヒーターの発熱量を指定し、排紙部４０には、図２の示す分岐点ＢＰからのシートの送出先と、分岐点ＢＰにシートが到着するタイミングとを指示する。
【００４１】
メインメモリー６２はＲＡＭ６２１とＲＯＭ６２２とを含む。ＲＡＭ６２１は、ＤＲＡＭ、ＳＲＡＭ等の揮発性半導体メモリー装置であり、ＣＰＵ６１に作業領域を提供すると共に、操作部５０が受け付けた印刷対象の画像データを保存する。ＲＯＭ６２２は書き込み不可の不揮発性記憶装置と書き換え可能な不揮発性記憶装置との組み合わせで構成されている。前者はファームウェアを格納する。ファームウェアには、ＭＦＰ１００の電源投入時にＣＰＵ６１が必ず最初に実行するブートプログラムが含まれる。後者は、ＥＥＰＲＯＭ、フラッシュメモリー、ＳＳＤ等の半導体メモリー装置、またはＨＤＤを含み、各種プログラムを記憶すると共に、ＣＰＵ６１に環境変数等、長期保存の必要なデータの記憶領域を提供する。ＲＯＭ６２２に記憶されたプログラムには、ＡＤＦ１１０、スキャナー１２０、およびプリンター１３０の機構部１０、…に対する制御プログラム、すなわちメカニカルコントローラー（略して「メカコン」ともいう。）、ＲＴＯＳ等のＯＳ、ハイパーバイザー等のミドルウェア、およびこれらをプラットフォームとするアプリケーションプログラムが含まれる。
【００４２】
ＲＡＭ６２１、ＲＯＭ６２２の含む記憶領域の全体は１つのメモリー空間にマップされる。すなわち、いずれの記憶領域にも固有の論理アドレスが割り振られる。このメモリー空間には更に、機構部１０、…の駆動部１０Ｄ、…が含むレジスターもマップされる（メモリマップドＩ／Ｏ）。これにより、ＣＰＵ６１は機構部１０、…のレジスターへのアクセス（以下、「Ｉ／Ｏアクセス」という。）をメインメモリー６２へのアクセスと区別することなく、同様に実行可能である。すなわち、ＣＰＵ６１は、メモリー空間内の特定のアドレスへ制御出力を書き込むことにより、そのアドレスが割り振られたレジスターを持つ機構部へ指示を送ることができる。ＣＰＵ６１はまた、別のアドレスからデータを読み出すことにより、そのアドレスが割り振られたレジスターを持つ機構部から情報、たとえば通紙センサー１ＦＳ、…から送出される検出信号の状態を取得することができる。
【００４３】
メインメモリー６２に保存されたアプリケーションプログラムのうち画像形成プログラムは、印刷ジョブの処理要求が操作部５０からＣＰＵ６１へ通知されたことに応じて実行される。この実行によりメカニカルコントローラー６２ＲがＲＡＭ６２１に展開される。メカコン６２Ｒは、プリンター１３０の機構部１０、…をＣＰＵ６１に制御させるリアルタイム型プログラムであり、そのサイズは一般に数十ＫＢ程度である。
【００４４】
アプリケーションプログラムにはその他に、画像処理、ＵＩ、ＬＡＮ通信のそれぞれをＣＰＵ６１に制御させるベストエフォート型プログラム６２Ｂが含まれる。各プログラム６２Ｂはそのサイズが一般にメカコン６２Ｒの数倍、すなわち百数十ＫＢ〜数ＭＢ程度である。画像処理プログラムはＣＰＵ６１に、操作部５０が取得した印刷対象の画像データに対し、たとえばＲＧＢからＣＹＭＫへの色変換とハーフトーン処理とを実行させる。ＵＩプログラムはＣＰＵ６１に、たとえば操作部５０が条件取得手段として機能するように操作部５０を制御させる。
【００４５】
［ＣＰＵのアーキテクチャ］
ＣＰＵ６１はコア６１Ｃとキャッシュメモリー６１Ｍとを含む。コア６１ＣはたとえばＲＩＳＣ（reduced instruction set computer）プロセッサーであり、特にプログラムの実行にロードストアアーキテクチャを使用する。すなわち、コア６１Ｃは、内部レジスターへ読み込まれたデータに対してのみ、演算等の処理を行う。これにより、コア６１Ｃによるメインメモリー６２へのアクセスとＩ／Ｏアクセスとには基本的に、アクセス先からのデータの読み出し（ロード）とアクセス先へのデータの書き込み（ストア）との２種類しかない。キャッシュメモリー６１Ｍは、メインメモリー６２の含む記憶素子と比べて小容量ではあるが、読み書きの高速な記憶素子、たとえばＳＲＡＭを含む。具体的には、ＲＡＭ６２１の容量が数ＧＢ程度であり、アクセス時間が数百ｎ秒程度であるのに対し、キャッシュメモリー６１Ｍの容量は数十ＫＢ程度であり、アクセス時間は数十ｎ秒程度である。キャッシュメモリー６１Ｍはコア６１Ｃとメインメモリー６２との間のデータ伝送路の中間に配置され、コア６１Ｃがメインメモリー６２に対して読み書きした命令とデータとのうち最新のものを記憶する。キャッシュメモリー６１Ｍは更に、コア６１Ｃがメインメモリー６２に対して読み書きしようとする命令またはデータをすでに記憶している場合にはその命令／データを、メインメモリー６２に代わってコア６１Ｃに提供し、またはコア６１Ｃに代わってメインメモリー６２へ書き込む。キャッシュメモリー６１Ｍはメインメモリー６２よりも読み書きが高速であるので、命令／データの読み書きにおけるコア６１Ｃの待ち時間を短縮することができる。
【００４６】
−キャッシュメモリーの基本構造−
図５の（ａ）は、キャッシュメモリー６１Ｍの構成を示すブロック図である。キャッシュメモリー６１Ｍはキャッシュコントローラー６１１とメモリーアレイ６１２とを含む。キャッシュコントローラー６１１は、メインメモリー６２に対する命令とデータ（以下、「ワード」と総称する。）の読み書きを、コア６１Ｃとは独立して自動的に行う機能を持つハードウェアである。メモリーアレイ６１２はＳＲＡＭ素子のマトリクスである。コア６１Ｃからメインメモリー６２へ向けてロード／ストア要求が送信されると、キャッシュコントローラー６１１はまず、その要求がメインメモリー６２へ届く前に、その要求を傍受する。キャッシュコントローラー６１１は次に、その要求の宛先アドレスＡＤＲに記憶されたワードがメモリーアレイ６１２にすでに記憶されているか否かを確認する。そのワードが記憶されている場合、キャッシュコントローラー６１１はロード／ストア要求をメインメモリー６２へ渡すことなく、メモリーアレイ６１２からそのワードＣＭＤ／ＤＡＴをコア６１Ｃへ送信し、またはメモリーアレイ６１２内のそのワードを、コア６１Ｃから送出されるワードに書き換える。そのワードが記憶されていない場合、キャッシュコントローラー６１１はロード／ストア要求をメインメモリー６２へ渡す。ロード要求に対してはメインメモリー６２からコア６１ＣへワードＣＭＤ／ＤＡＴが転送され、ストア要求に対してはコア６１Ｃからメインメモリー６２へワードが転送されるので、キャッシュコントローラー６１１はそのワードＣＭＤ／ＤＡＴを傍受してメモリーアレイ６１２にコピーする。
【００４７】
図５の（ｂ）はメモリーアレイ６１２のデータ構造を示す模式図である。メモリーアレイ６１２はたとえば２５６行のメモリー素子列、すなわちキャッシュラインＣＬＮ０、ＣＬＮ１、…、ＣＬＮ２５５を含む。各キャッシュラインは、ディレクトリストアＤＲＳ、ステータスビットＳＴＴ、データセクションＤＴＳを含む。ディレクトリストアＤＲＳにはキャッシュタグＣＴＧが格納され、データセクションＤＴＳにはワードＷＲＤ０、ＷＲＤ１、…、ＷＲＤ３が複数コピーされる。キャッシュタグＣＴＧは、データセクションＤＴＳにコピーされたワードＷＲＤ０、…のオリジナルが記憶されたメインメモリー６２内のアドレスの上位ビットを表す。同じアドレスの下位ビットは、そのワードを含むキャッシュラインの通し番号（「セットインデックス」という。）と、データセクションＤＴＳ内でのそのワードの順番（「データインデックス」という。）との組み合わせで表現される。１つのワードが３２ビットで表され、１行のキャッシュラインには４つのワードがコピー可能である場合、メモリーアレイ６１２全体では４ＫＢのワードがキャッシュ可能である。ステータスビットＳＴＴは、有効ビットｖとダーティービットｄとを含む。有効ビットｖは、自身を含むキャッシュラインが有効であるか否か、すなわち、そのデータセクションＤＴＳ内のワードＷＲＤ０、…がコア６１Ｃの利用可能な最新のものであるか否かを示すフラグである。ダーティービットｄは、自身を含むキャッシュラインのデータセクションＤＴＳにコピーされたワードＷＲＤ０、…がメインメモリー６２内のオリジナルとは異なるか否かを示すフラグである。
【００４８】
図５の（ｂ）には、キャッシュコントローラー６１１によるメモリーアレイ６１２のアクセス方法も併せて示されている。キャッシュコントローラー６１１はロード／ストア要求を傍受したとき、まずその宛先アドレスＡＤＲを、タグフィールドＴＧＦ、セットインデックスフィールドＳＩＤ、データインデックスフィールドＤＩＤの３つに分ける。宛先アドレスＡＤＲが３２ビットのデータ列（［３１：０］）で表される場合、タグフィールドＴＧＦはアドレスＡＤＲの最上位ビットから２０ビット目までの２０ビット（［３１：１２］）から成り、セットインデックスフィールドＳＩＤは２１ビット目から２８ビット目までの８ビット（［１１：４］）から成り、データインデックスフィールドＤＩＤは残りの４ビット（［３：０］）から成る。キャッシュコントローラー６１１は次に、２５６行のキャッシュラインＣＬＮ０、…の中から、セットインデックスフィールドＳＩＤの示す数値とセットインデックスが等しいキャッシュラインＣＬＮ２を選択する。そのディレクトリストアＤＲＳに格納されたキャッシュタグＣＴＧをキャッシュコントローラー６１１は、宛先アドレスＡＤＲのタグフィールドＴＧＦと照合する。キャッシュタグＣＴＧがタグフィールドＴＧＦと一致した場合、キャッシュコントローラー６１１は更に有効ビットｖの状態を確認する。キャッシュラインＣＬＮ２が有効であることを有効ビットｖが示す場合（この状態を「キャッシュヒット」と呼ぶ。）、このキャッシュラインＣＬＮ２のデータセクションＤＴＳには、宛先アドレスＡＤＲに記憶されたワードとしてコア６１Ｃが利用可能な最新のワードがコピーされている。したがって、キャッシュコントローラー６１１はロード／ストア要求をメインメモリー６２へ渡さず、そのデータセクションＤＴＳから、データインデックスフィールドＤＩＤの示す数値とデータインデックスが等しいワードＷＲＤ１をコア６１Ｃへ送信し、またはそのワードＷＲＤ１をコア６１Ｃから送出されるワードＣＭＤ／ＤＡＴに書き換える。キャッシュタグＣＴＧがタグフィールドＴＧＦと一致しなかった場合、またはキャッシュラインＣＬＮ２が無効であることを有効ビットｖが示す場合（この状態を「キャッシュミス」と呼ぶ。）、このキャッシュラインＣＬＮ２のデータセクションＤＴＳには、宛先アドレスＡＤＲに記憶されたワードとしてコア６１Ｃが利用可能なワードは存在しない。したがって、キャッシュコントローラー６１１はロード／ストア要求をメインメモリー６２へ渡す。ロード要求に対してはメインメモリー６２からコア６１ＣへワードＣＭＤ／ＤＡＴが転送され、ストア要求に対してはコア６１Ｃからメインメモリー６２へワードが転送されるので、キャッシュコントローラー６１１はそのワードＣＭＤ／ＤＡＴを傍受し、宛先アドレスＡＤＲに基づいて検索された先のキャッシュラインＣＬＮ２のデータセクションＤＴＳにコピーする。
【００４９】
−キャッシュロックダウン−
図６の（ａ）は、通常の状態でキャッシュミスが生じた場合におけるキャッシュメモリー６１Ｍの動作を示す模式図である。キャッシュミスが生じた場合、宛先アドレスＡＤＲに基づいてキャッシュコントローラー６１１が検索したキャッシュラインＣＬＮＮには一般に、宛先アドレスＡＤＲと下位ビットが一致するものの、上位ビットが異なるアドレスのワードが記憶されている。キャッシュコントローラー６１１はそのキャッシュラインＣＬＮＮの有効ビットｖの状態を確認し、キャッシュラインの有効を示す状態、たとえばｖ＝１であれば、無効を示す状態ｖ＝０へ遷移させ、すなわち有効ビットｖを無効化する。キャッシュコントローラー６１１は更にそのキャッシュラインＣＬＮＮのダーティービットｄの状態を確認する。データセクションＤＴＳにコピーされたワードがメインメモリー６２内のオリジナルとは異なることをダーティービットｄが示す場合、キャッシュコントローラー６１１はそのデータセクションＤＴＳ内のワードＣＭＤ／ＤＡＴでメインメモリー６２内のオリジナルを書き換える。こうして、そのキャッシュラインＣＬＮＮが、メインメモリー６２またはコア６１Ｃから送出される新たなワードをコピーするための領域として確保される。
【００５０】
図６の（ｂ）は、コア６１Ｃからキャッシュロックダウンが指示された状態でキャッシュミスが生じた場合におけるキャッシュメモリー６１Ｍの動作を示す模式図である。キャッシュメモリー６１Ｍに対してコア６１Ｃはキャッシュロックダウン手段としての機能を持つ。「キャッシュロックダウン（ＣＬＤ）」とは、キャッシュミスに伴う有効ビットｖの無効化とデータセクションＤＴＳへのワードの上書きとの禁止をキャッシュコントローラー６１１に対して指示すること、またはその禁止後のキャッシュメモリー６１Ｍの状態をいう。したがって、ＣＬＤがコア６１Ｃから指示された時点ですでにメモリーアレイ６１２にコピーされているワードは、その時点以降、キャッシュミスが生じても他のワードに上書きされることなくメモリーアレイ６１２に保持され、すなわちロックダウンされる（閉じ込められる）。この状態は、ＣＬＤの解除がコア６１Ｃからキャッシュコントローラー６１１に指示されるまで持続する。
【００５１】
［画像形成プログラムの模擬実行と本実行］
ＣＰＵ６１は印刷ジョブの処理要求に応じて画像形成プログラムを実行する。この際、ＣＰＵ６１は画像形成プログラムをまず模擬実行し、その模擬実行の完了後に画像形成プログラムを本実行する。「本実行」とは、プリンター１３０に通常の印刷処理を行わせるための実行モードをいう。「模擬実行」とは、本実行の含む処理のうち、機構部１０、…に対するＩ／Ｏアクセスを実際には行わない実行モードをいう。模擬実行中、ＣＰＵ６１は入出力模擬手段としても機能する。すなわち、ＣＰＵ６１は、各機構部１０、…へ送信すべき制御出力を遮断すると共に、送信先の機構部のセンサーからその制御出力に応じて送出されるはずの検出信号を模擬的に作成する。これにより、模擬実行中、ＣＰＵ６１はいずれの機構部からの応答も実際には待つ必要がないので、模擬実行は本実行よりも、シート１枚あたりの処理時間等の実行周期が短縮される。模擬実行の完了後、本実行に先立ってＣＰＵ６１はキャッシュメモリー６１Ｍに、模擬実行中に記憶したメカコン６２Ｒのワードをロックダウンさせる。これにより、本実行では、キャッシュメモリー６１Ｍにロックダウンされたワードに従ってメカコンが実行され、他のプログラムが並列に実行されてもそれらのワードが他のワードに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。
【００５２】
図７の（ａ）は、画像形成プログラムの実行開始直後におけるＣＰＵ６１の動作を示す模式図である。まず、コア６１Ｃがキャッシュコントローラー６１１へ、メモリーアレイ６１２のフラッシュ命令ＣＦＬを送信する。この命令ＣＦＬに応じてキャッシュコントローラー６１１はメモリーアレイ６１２のフラッシュを行う。「フラッシュ」とは、すべてのキャッシュラインＣＬＮ０、…において有効ビットｖを無効化する（ｖ＝１→０）処理をいう。データセクションにコピーされたワードがメインメモリー６２内のオリジナルとは異なることをダーティービットが示すキャッシュラインＣＬＮＮに対しては、キャッシュコントローラー６１１はそのデータセクション内のワードＣＭＤ／ＤＡＴでメインメモリー６２内のオリジナルを書き換える。こうして、すべてのキャッシュラインＣＬＮ０、…が新たなワードのコピー領域として確保される。
【００５３】
図７の（ｂ）は、画像形成プログラムの模擬実行中におけるＣＰＵ６１の動作を示す模式図である。キャッシュメモリー６１Ｍのフラッシュ完了後、コア６１Ｃはメインメモリー６２に対し、メカコンのロード要求ＡＤＲを送信する。キャッシュメモリー６１Ｍはこの要求ＡＤＲを傍受してキャッシュヒット／ミスを判別し、ミス時には、その要求ＡＤＲに応じてメインメモリー６２からコア６１Ｃへ送られるワードＣＭＤ／ＤＡＴをメモリーアレイ６１２へコピーする。こうして、実行処理の進行に伴ってメモリーアレイ６１２には、メカコンの含むワードＣＭＤ／ＤＡＴがキャッシュされる。
【００５４】
メカコンの含むワードのうち、プリンター１３０の駆動部１０Ｄ、…に対するＩ／Ｏアクセス命令をコア６１Ｃはスキップする。これにより、コア６１ＣはＩ／Ｏアクセスに関するワードをメインメモリー６２から読み出さないので、それらのワードをメモリーアレイ６１２にキャッシュさせることはできない。しかし、コア６１Ｃは、駆動部１０Ｄ、…のレジスターへ書き込むべき命令ＡＣＳを遮断することができる。コア６１Ｃは更に、その命令ＡＣＳに応じて駆動部１０Ｄ、…が自身のレジスターに書き込むはずの応答情報ＲＳＰ、たとえば通紙センサー１ＦＳ、…の検出信号に関する情報を模擬的に作成する。これらの情報は、シートがジャム等の不具合を起こすことなく正常に搬送される場合に通紙センサー１ＦＳ、…がそのシートを検出すべきタイミング等、印刷処理が正常に進行する場合に予想される応答情報を模倣する。これらの模擬的な応答情報ＲＳＰをコア６１Ｃは機構制御に利用する。模擬的な応答情報の作成時間は機構部からの実際の応答時間よりも短いので、模擬実行は本実行よりも実行周期が短縮される。
【００５５】
図８の（ａ）は、画像形成プログラムの本実行中におけるＣＰＵ６１の動作を示す模式図である。模擬実行により、１枚等、所定枚数分の印刷処理が完了した後、コア６１Ｃはまずキャッシュコントローラー６１１に対してＣＬＤを指示する。この指示を受けた時点以降、キャッシュコントローラー６１１は、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとをいずれも行わない。したがって、模擬実行中にメモリーアレイ６１２にコピーされたメカコンのワードはその時点以降、キャッシュミスが生じても他のワードに上書きされることなく、メモリーアレイ６１２にロックダウンされる。本実行では、メカコンの含む、印刷条件に適った実行対象の命令のうち、プリンター１３０の駆動部１０Ｄ、…に対するＩ／Ｏアクセス命令以外はメモリーアレイ６１２にすでにキャッシュされている。したがって、機構制御におけるキャッシュヒット率が安定に、かつ実質上１００％に等しい値に維持される。
【００５６】
図８の（ｂ）は、画像形成プログラムの本実行の完了時におけるＣＰＵ６１の動作を示す模式図である。本実行によりすべてのシートの印刷処理が完了した後、コア６１Ｃはまず、キャッシュコントローラー６１１に対してＣＬＤの解除ＣＲＬを指示する。この指示を受けた時点以降、キャッシュコントローラー６１１は、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとを再開する。したがって、メモリーアレイ６１２には、画像処理、ＵＩ、ＬＡＮ通信等、メカコン以外のプログラムもキャッシュされる。
【００５７】
［印刷条件に応じた模擬的な応答情報の態様変化］
画像形成プログラムの模擬実行中、コア６１Ｃは、プリンター１３０の駆動部１０Ｄ、…のレジスターへ書き込むべき命令ＡＣＳを遮断し、その命令ＡＣＳに対する駆動部１０Ｄ、…の応答情報ＲＳＰを模擬的に作成する。このときに想定されるべきプリンター１３０の機構部１０、…の動作ではタイミング等の詳細が、実際には、印刷条件によって異なる。たとえば、搬送対象のシートの紙種が異なれば、給紙元の給紙カセットの位置、シートの搬送速度の目標値が異なるので、シートの搬送経路と搬送距離、そのシートを検知する通紙センサーの位置、その検知のタイミングが異なる。したがって、模擬実行において印刷条件が標準的なものに一律に設定されると、本実行では、実際の印刷条件と標準的なものとの間の差異に起因するキャッシュミスが実行時間を遅らせ、ヒット率の安定化を阻む危険性がある。この危険性を回避する目的でＣＰＵ６１は、画像形成プログラムの模擬実行中、模擬的に作成すべき応答情報ＲＳＰを印刷条件に合わせて変更する。具体的にはたとえば、印刷条件の次の項目のうち、少なくとも１つに合わせて応答情報ＲＳＰが変更される。（１）シートの給紙場所または排紙場所。（２）片面印刷と両面印刷とのいずれを示すか。（３）シートのサイズ、紙種、または姿勢。（４）カラーモードとモノクロモードとのいずれを示すか。
【００５８】
図９の（ａ）は、シートの給紙場所と紙種との組み合わせ別に、通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳ、ＥＳによるシートの検出時間を示す表である。図２から明らかなとおり、給紙カセットが１段目１１ａと２段目１１ｂとのいずれであるかにより、まず、シートの搬送経路が異なるので、シートが給紙センサー１ＦＳ、２ＦＳと縦搬センサーＣＳとのそれぞれを通過するか否かが異なる。次に、給紙カセット１１ａ、１１ｂからタイミングローラー１４までの搬送経路の長さが異なるので、シートが給紙カセット１１ａ、１１ｂを離脱してから、タイミングセンサーＴＳと排紙センサーＥＳとのそれぞれに検出されるまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、各センサーＣＳ、ＴＳ、ＥＳに検出される時間が異なる。こうして、給紙カセット１１ａ、１１ｂと紙種との組み合わせごとに各センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳ、ＥＳによる検出時間が、ＴＦ１〜ＴＦ２、ＴＦ３〜ＴＦ４、ＴＣ３〜ＴＣ４、ＴＴ１〜ＴＴ４、ＴＥ１〜ＴＥ４と異なる。これらの値は、給紙カセット１１ａ、１１ｂから排紙センサーＥＳまでシートが正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報ＲＳＰをコア６１Ｃは作成し、給紙カセット１１ａ、１１ｂから排紙センサーＥＳまでのシート搬送に遅れがないことの確認、給紙ローラー１２Ｐ、１２Ｆ、１２Ｇの回転／停止による紙間の調節、およびタイミングローラー１４の起動タイミングの制御に利用する。
【００５９】
図９の（ｂ）は、シートの排紙場所と紙種との組み合わせ別に、シートが排紙センサーＥＳの通過に要する時間を示す表である。図２から明らかなとおり、排紙場所が排紙トレイ４６と反転トレイ４７とのいずれであるかにより、まず、シートに搬送力を与える搬送ローラー４３、４５と排紙センサーＥＳとの間の搬送経路の長さが異なるので、シートの先端が排紙センサーＥＳに検出されてから、その搬送ローラー４３、４５に到達するまでの時間が異なり、その後、シートの後端が排紙センサーＥＳを通過するまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、１枚のシートが排紙センサーＥＳに検出され続ける時間が異なる。こうして、排紙場所４６、４７と紙種との組み合わせごとに排紙センサーＥＳの通過時間がＰＥ１〜ＰＥ４と異なる。これらの値は、定着部３０から排紙場所４６、４７までシートが正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報ＲＳＰをコア６１Ｃは作成し、定着ローラー３１からのシートの送出に遅れがないことの確認、排紙ローラー４３と反転ローラー４５との回転／停止タイミングの制御に利用する。
【００６０】
図９の（ｃ）は、シートの紙種、サイズ、姿勢の組み合わせ別に、タイミングローラー１４がシートの後端をタイミングセンサーＴＳの検出範囲から引き出すのに要する時間を示す表である。シートのサイズはもちろん、その姿勢が縦置きか横置きかにより、搬送経路に沿ったシートの長さが異なるので、タイミングローラー１４の回転開始から、シートの後端がタイミングセンサーＴＳに検出されなくなるまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、１枚のシートがタイミングセンサーＴＳに検出され続ける時間が異なる。こうして、シートの紙種、サイズ、姿勢の組み合わせごとにタイミングセンサーＴＳの通過時間がＰＴ１〜ＰＴ８と異なる。これらの値は、タイミングローラー１４がシートを中間転写ベルト２３の駆動ローラー２３Ｒと２次転写ローラー２４との間のニップへ正常に通紙する場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報ＲＳＰをコア６１Ｃは作成し、タイミングローラー１４からのシートの送出に遅れがないことの確認、タイミングローラー１４の停止タイミングの制御に利用する。
【００６１】
図９の（ｄ）は、片面印刷と両面印刷とのそれぞれにおいて通紙センサーＴＳ、ＥＳ、１ＲＳ、２ＲＳがシートを検出する時間と切換爪４１の駆動ソレノイドＳＬの動作時間とを示す表である。図２が示すように、片面印刷とは異なり両面印刷では、シートが反転口４４でスイッチバックし、更に循環路４８を通ってタイミングローラー１４へ戻る。したがって、片面印刷と両面印刷とでは、まず、シートが通紙センサー１ＲＳ、２ＲＳを通過するか否かが異なる。次に、切換爪４１の先端を上下させる必要の有無が異なる。こうして、１枚のシートが、片面印刷ではタイミングセンサーＴＳと排紙センサーＥＳとに１回ずつ検出されるだけであるのに対し、両面印刷ではタイミングセンサーＴＳと排紙センサーＥＳとに２回ずつ検出され、更に循環路４８の通紙センサー１ＲＳ、２ＲＳにも１回ずつ検出される。さらに、片面印刷とは異なり両面印刷では、駆動ソレノイドＳＬがシート１枚あたりに２回ずつ動作して切換爪４１の先端を上下させる。図９の（ｄ）の表が示す両面印刷における各センサーＴＳ、ＥＳ、１ＲＳ、２ＲＳによるシートの検出時間の値ＤＴ１、ＤＴ２、ＤＥ１、ＤＥ２、ＤＲ１、ＤＲ２、および駆動ソレノイドＳＬの動作時間の値ＴＳ１、ＴＳ２は、シートが両面印刷時の搬送経路、特に循環路４８を正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報ＲＳＰをコア６１Ｃは作成し、両面印刷におけるシート搬送に遅れがないことの確認、反転口４４でのシートのスイッチバックにおける反転ローラー４５の回転の正逆の切り換えタイミングの制御に利用する。
【００６２】
図９の（ｅ）は、プリンター１３０の動作モードがカラーモードとモノクロモードとの別に、印刷エンジンにおける駆動対象のモーターを示す表である。図２から明らかなとおり、カラーモードでは４つの作像ユニット２１Ｙ、２１Ｍ、２１Ｃ、２１Ｋがすべてトナー像を作成するので、４本の感光体ドラム２５Ｙ、２５Ｍ、２５Ｃ、２５Ｋがすべて回転する。それに対してモノクロモードでは、使用される色が、Ｙ、Ｍ、Ｃ、Ｋのうちいずれか１つ、たとえばＫだけであるので、対応する作像ユニット２１Ｋでのみ感光体ドラム２５Ｋが回転する。画像形成プログラムの模擬実行では、コア６１Ｃが、感光体ドラム２５Ｙ、…の駆動モーターＹＭ、ＭＭ、ＣＭ、ＫＭのうち、図９の（ｅ）の表が示すものの回転数を模擬的な応答情報ＲＳＰに組み込み、これらの駆動モーターＹＭ、…の制御に利用する。
【００６３】
図９の示すような表は、メカコンと共に画像形成プログラムの中に組み込まれている。これらの表はメカコンと同様に、画像形成プログラムの模擬実行時にメインメモリー６２に展開される。
模擬実行中に繰り返されるべき印刷処理の回数は一般に、印刷条件に合わせて異なる値に規定される。たとえば、片面印刷では、シート１枚分の印刷処理に必要なメカコンの全体が一通り含まれるので、規定回数が“１”に設定されればよい。それに対し、両面印刷では、ジョブの規定する印刷対象のシートが複数枚である場合、その枚数と、循環路４８を含めた搬送経路全体で搬送ローラー群の制御が周期的になるまでに必要な印刷枚数とのいずれか少ない方に、規定回数が設定される。この規定回数も、図９の示す表と同様に、画像形成プログラムの中に組み込まれている。
【００６４】
［画像形成プログラムの実行処理の流れ］
図１０は、画像形成プログラムの実行処理のフローチャートである。この処理は、ＣＰＵ６１が操作部５０から印刷ジョブの処理要求を通知されたことに応じて開始する。
ステップＳ１０１では、メモリーアレイ６１２のフラッシュ命令ＣＦＬを、コア６１Ｃがキャッシュコントローラー６１１へ送信する。この命令ＣＦＬに応じてキャッシュコントローラー６１１はメモリーアレイ６１２のフラッシュを行う。これにより、すべてのキャッシュラインＣＬＮ０、…において有効ビットが無効化される。その後、処理はステップＳ１０２へ進む。
【００６５】
ステップＳ１０２では、ＣＰＵ６１が、画像形成プログラムをメインメモリー６２に展開すると共に、その模擬実行中に応答情報を模擬的に作成するのに必要なパラメーターの値を印刷条件に合わせて変更し、メインメモリー６２に設定する。具体的には、コア６１Ｃが操作部５０からの印刷ジョブの処理要求から印刷条件を解読し、図９の表が示すような、印刷条件の項目と機構制御に必要なパラメーターの値との間の対応関係に基づき、それらパラメーターの値を印刷条件に合わせて選択する。その後、処理はステップＳ１０３へ進む。
【００６６】
ステップＳ１０３では、コア６１Ｃが画像形成プログラムを模擬実行し、１枚等、所定枚数分の印刷処理を行う。特にコア６１Ｃは、メカコンの含むワードのうち、プリンター１３０の駆動部１０Ｄ、…に対するＩ／Ｏアクセス命令をスキップする。その代わり、その命令に対する駆動部１０Ｄ、…からの応答情報をコア６１Ｃが、ステップＳ１０２で用意したパラメーターの値に基づいて模擬的に作成する。これにより、コア６１Ｃがメインメモリー６２に対して読み書きするメカコンの含むワードは、機構部１０、…へのＩ／Ｏアクセス命令を除き、キャッシュメモリー６１Ｍにキャッシュされる。その後、処理はステップＳ１０４へ進む。
【００６７】
ステップＳ１０４では、画像形成プログラムの模擬実行の完了後、その本実行に先立ってＣＰＵ６１はキャッシュメモリー６１Ｍに、模擬実行中に記憶したメカコンのワードをロックダウンさせる。これにより、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとが禁止される。その後、処理はステップＳ１０５へ進む。
ステップＳ１０５では、コア６１Ｃが画像形成プログラムを本実行し、印刷ジョブの示す部数のシートを印刷する。本実行では、メカコンの含む、印刷条件に適った実行対象の命令のうち、プリンター１３０の機構部１０、…へのＩ／Ｏアクセス命令以外はすでにキャッシュメモリー６１Ｍにコピーされている。これらの命令は、キャッシュミスが生じても他のワードに上書きされることなくメモリーアレイ６１２にロックダウンされているので、実質上すべてキャッシュヒットする。Ｉ／Ｏアクセス命令だけは、最初の実行時、キャッシュミスに応じてメインメモリー６２から読み出され、キャッシュメモリー６１Ｍにキャッシュされる。その後、処理はステップＳ１０６へ進む。
【００６８】
ステップＳ１０６では、画像形成プログラムの本実行により、印刷ジョブが規定する部数のシートすべての印刷処理が完了した後、コア６１Ｃはキャッシュメモリー６１ＭにＣＬＤの解除を指示する。これにより、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとが再開されるので、キャッシュメモリー６１Ｍは、画像処理、ＵＩ、ＬＡＮ通信等、メカコン以外のプログラムにも開放される。その後、処理は終了する。
【００６９】
−本実行におけるメカコン処理の例−
図１１は、図１０の示すステップＳ１０５における本実行による機構制御のうち、給送ローラー群１２Ｐ、１２Ｆ、１２Ｒの制御のフローチャートである。この制御は、給送ローラー群１２Ｐ、…を間欠的に回転させて紙間を所定値に維持させる。また、給紙センサー１ＦＳ、２ＦＳ、縦送センサーＣＳ、タイミングセンサーＴＳの各出力から、シートの通過タイミングに遅れがないか否か、紙間が正常な値に維持されているか否かが判断される。
【００７０】
ステップＳ２０１では、コア６１Ｃがプリンター１３０の給送部１０に給紙カセット１１ａまたは１１ｂの給送ローラー群１２Ｐ、…の回転を開始させる。具体的には、まずコア６１Ｃが、メカコンに従って給送ローラー群１２Ｐ、…の回転命令を、給送部１０の駆動部１０Ｄのレジスターに書き込む。駆動部１０Ｄではそのレジスターを制御回路が監視し、そこに書き込まれた回転命令に従い、給送モーターＭ１またはＭ２を起動させる。これにより、給送ローラー群１２Ｐ、…が回転を開始する。その後、処理はステップＳ２０２へ進む。
【００７１】
ステップＳ２０２では、コア６１Ｃが給送部１０の駆動部１０Ｄのレジスターを監視して、そこに通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳの出力結果が書き込まれたか否かを確認する。書き込まれていれば、コア６１Ｃは更にそれらの出力結果から、シートが正常にタイミングローラー１４まで到達したか否かを確認する。正常であれば処理がステップＳ２０３へ進み、異常であれば処理がステップＳ２０６へ進む。
【００７２】
ステップＳ２０３では、通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳの出力結果は、シートが正常にタイミングローラー１４まで到達したことを示す。したがって、その到達時刻から所定時間が経過した時点でコア６１Ｃは給送部１０に、給送ローラー群１２Ｐ、…の回転を停止させる。具体的には、まずコア６１Ｃが、メカコンに従って給送ローラー群１２Ｐ、…の停止命令を給送部１０の駆動部１０Ｄのレジスターに書き込む。駆動部１０Ｄの制御回路は、そのレジスターに書き込まれた停止命令に従い、給送モーターＭ１またはＭ２を停止させる。これにより、給送ローラー群１２Ｐ、…が回転を停止する。その後、処理はステップＳ２０４へ進む。
【００７３】
ステップＳ２０４では、印刷対象のシートのうち、給送部１０が給紙カセット１１ａまたは１１ｂからまだ繰り出していないシートが残っているか否かを、コア６１Ｃが確認する。具体的には、まず、給送ローラー群１２Ｐ、…が繰り出し終えたシートの枚数の出力命令を、コア６１Ｃが給送部１０の駆動部１０Ｄのレジスターに書き込む。この命令に応じてそのレジスターに駆動部１０Ｄの制御回路が書き込んだ枚数をコア６１Ｃが取得し、その枚数が印刷ジョブの規定する枚数未満か否かを確認する。残っていれば処理がステップＳ２０５へ進み、残っていなければ処理が終了する。
【００７４】
ステップＳ２０５では、給紙カセット１１ａまたは１１ｂからまだ繰り出させていない印刷対象のシートが残っている。したがって、ステップＳ２０３における給送ローラー群１２Ｐ、…の停止時刻から、紙間が開くのに必要な時間が経過したか否かをコア６１Ｃは確認する。具体的には、まず、その停止時刻からの経過時間の出力命令を、コア６１Ｃが給送部１０の駆動部１０Ｄのレジスターに書き込む。この命令に応じてそのレジスターに駆動部１０Ｄの制御回路が書き込んだ時間値をコア６１Ｃが取得し、その時間値を、紙間が開くのに必要な時間を表す閾値と比較する。その時間値が閾値以上であれば処理がステップＳ２０１から繰り返し、閾値未満であれば処理がステップＳ２０５を繰り返す。
【００７５】
ステップＳ２０６では、通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳのいずれかの出力結果は、シートが正常にタイミングローラー１４まで到達したことを示していない。したがって、ステップＳ２０１において給送ローラー群１２Ｐ、…がシートを繰り出した時刻から、そのシートが正常にタイミングローラー１４まで到達するのに必要な時間が経過したか否かをコア６１Ｃは確認する。すでに経過していれば処理がステップＳ２０７へ進み、まだ経過していなければ処理がステップＳ２０２から繰り返す。
【００７６】
ステップＳ２０７では、給送ローラー群１２Ｐ、…がシートを繰り出した時刻から、そのシートが正常にタイミングローラー１４まで到達するのに必要な時間がすでに経過している。したがって、コア６１Ｃは操作部５０に、ジャムを示す通知を操作パネルに表示させると共に、プリンター１３０の機構部１０、…に印刷動作の中断を指示する。その後処理は中止される。
【００７７】
−模擬実行における機構制御の例−
図１２は、図１０の示すステップＳ１０３における模擬実行による機構制御のうち、図１１の示す給送ローラー群１２Ｐ、…の制御に相当する部分のフローチャートである。この制御では、給送部１０の駆動部１０Ｄに対するＩ／Ｏアクセス命令がスキップされ、その命令に対する応答情報が模擬的に作成される。
【００７８】
ステップＳ２１１では、コア６１Ｃが、プリンター１３０の給送部１０に対する給送ローラー群１２Ｐ、…の回転命令をスキップする。これにより、給送部１０の駆動部１０Ｄのレジスターへ書き込まれるべき回転命令が遮断される。その後、処理はステップＳ２１２へ進む。
ステップＳ２１２では、コア６１Ｃが、給送部１０の駆動部１０Ｄからの応答情報を模擬的に作成する。この模擬的な応答情報は、本実行において、駆動部１０Ｄのレジスターへの回転命令の書き込みに応じてそのレジスターから読み出されるべき情報、具体的には通紙センサー１ＦＳ、２ＦＳ、ＣＳ、ＴＳの各出力結果を模倣する。特に、この出力結果には、たとえば図９の（ａ）の表が示す各センサー１ＦＳ、…による検出時間ＴＦ１、…に合わせてコア６１Ｃが計算した、シートが正常にタイミングローラー１４まで到達したことを示す値が記載されている。その後、処理はステップＳ２１３へ進む。
【００７９】
ステップＳ２１３では、コア６１Ｃがまず、給送部１０の駆動部１０Ｄのレジスターに対する監視をスキップする。コア６１Ｃは次に、その監視で取得するはずの応答情報に代えて、ステップＳ２１２で作成した模擬的な応答情報を参照し、そこに書き込まれた給紙センサー１ＦＳまたは２ＦＳとタイミングセンサーＴＳとの出力結果から、シートが正常にタイミングローラー１４まで到達したか否かを確認する。正常であれば処理がステップＳ２１４へ進み、異常であれば処理が分岐する。ただし、その模擬的な応答情報は必ず、シートが正常にタイミングローラー１４まで到達したことを示すので、実際には処理は必ずステップＳ２１４へ進む。
【００８０】
ステップＳ２１４では、コア６１Ｃが給送部１０に対する給送ローラー群１２Ｐ、…の停止命令をスキップする。この停止命令は、本実行であれば、シートがタイミングローラー１４まで到達した時刻から所定時間が経過した時点で送出されるべきものである。このスキップにより、給送部１０の駆動部１０Ｄのレジスターへ書き込まれるべき停止命令が遮断される。その後、処理はステップＳ２１５へ進む。
【００８１】
ステップＳ２１５では、コア６１Ｃが、本実行であれば給送部１０が繰り出したはずのシートの枚数を確認する。具体的には、まず、給送ローラー群１２Ｐ、…が繰り出し終えたシートの枚数の出力命令をコア６１Ｃがスキップする。次に、この命令に応じて給送部１０の駆動部１０Ｄのレジスターにその制御回路が書き込んだであろう枚数を示す模擬的な応答情報をコア６１Ｃが作成し、その枚数が、模擬実行において繰り返すべき印刷処理の規定回数、たとえば１回未満か否かをコア６１Ｃが確認する。その規定回数未満であれば処理がステップＳ２１６へ進み、以上であれば処理が終了する。
【００８２】
ステップＳ２１６では、これまでに繰り返された印刷処理の回数がまだ規定回数未満であるので、コア６１Ｃが給送部１０の駆動部１０Ｄからの応答情報を模擬的に作成する。この模擬的な応答情報は、ステップＳ２０３における給送ローラー群１２Ｐ、…の停止時刻から、紙間が開くのに必要な時間が経過したことを示す。その後、処理はステップＳ２１７へ進む。
【００８３】
ステップＳ２１７では、ステップＳ２０３における給送ローラー群１２Ｐ、…の停止時刻から、紙間が開くのに必要な時間が経過したか否かをコア６１Ｃは確認する。具体的には、まず、その停止時刻からの経過時間の出力命令をコア６１Ｃがスキップする。コア６１Ｃは次に、その命令に応じて駆動部１０Ｄから取得するはずの応答情報に代えて、ステップＳ２１６で作成した模擬的な応答情報を参照し、そこに書き込まれた時間値を閾値と比較する。その時間値が閾値以上であれば処理がステップＳ２１１から繰り返し、閾値未満であれば処理がステップＳ２１７を繰り返す。ただし、その模擬的な応答情報は必ず、閾値以上の時間値を示すので、実際には処理は必ずステップＳ２１１から繰り返す。
【００８４】
［実施形態の利点］
本発明の実施形態によるＭＦＰ１００では、上記のとおり、印刷ジョブの処理要求に応じてＣＰＵ６１が、画像形成プログラムの本実行に先立ち、まずそのプログラムを模擬実行する。模擬実行ではコア６１Ｃが、メカコンの含むワードをメインメモリー６２から読み出すので、それらのワードがキャッシュメモリー６１Ｍにキャッシュされる。ただし、プリンター１３０の機構部１０、…へのＩ／Ｏアクセス命令はコア６１Ｃによりスキップされるので、本実行であればコア６１Ｃから機構部１０、…の駆動部１０Ｄ、…へ送信されるべき制御出力が遮断される。その代わり、コア６１Ｃは、その制御出力に応じて駆動部１０Ｄ、…から取得されるはずの応答情報を模擬的に作成し、Ｉ／Ｏアクセス後の処理に利用する。模擬実行の完了後、本実行に先立ってコア６１Ｃはキャッシュメモリー６１Ｍに、模擬実行中に記憶したワードをロックダウンさせる。これらのワードが本実行では機構制御に利用される。これらのワードは、メカコンに他のプログラムが並列に実行されても、他のワードに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。こうして、コア６１Ｃは機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリー６１Ｍを共用することができる。
【００８５】
画像形成プログラムの模擬実行においてコア６１Ｃは、メインメモリー６２から読み出すメカコンのワードを、印刷条件に合わせて変更する。コア６１Ｃは更に機構部１０、…へのＩ／Ｏアクセス命令のスキップに伴い、模擬的に作成する駆動部１０Ｄ、…からの応答情報を、印刷条件に合わせて変更する。このような印刷条件の利用により、キャッシュメモリー６１Ｍには、メカコンの含むワードのうち、印刷条件に適ったワードがロックダウンされるので、キャッシュメモリー６１Ｍにロックダウンさせるべきデータ量が最適化される。さらに、本実行におけるキャッシュヒット率が高いレベルで安定化するので、機構制御において保証されるべき各タスクの最大実行時間を短縮し、機構制御の応答精度をμ秒程度の高レベルに維持することが可能である。
【００８６】
［変形例］
（A）図１の示す画像形成装置１００は電子写真方式のＭＦＰである。本発明の実施形態による画像形成装置はその他にインクジェット方式の複合機であってもよく、レーザープリンター、インクジェットプリンター、ファクシミリ、またはコピー機等、いずれの単機能機であってもよい。
【００８７】
（B）図１の（ｂ）、図２の示す構造は一例に過ぎず、他の構造であってもよい。たとえば、印刷エンジンは、タンデム方式の作像ユニット２１Ｙ、２１Ｍ、２１Ｃ、２１Ｋに代えて、１つの回転部材に４つの作像ユニットが埋め込まれた４サイクル方式であってもよい。また、中間転写ベルト２３が省略され、感光体ドラムがトナー像をシートに直接転写してもよい。露光部は、レーザー走査方式のもの２６に代えて、発光ダイオード（ＬＤ）の２次元配列を利用するＬＤアレイ方式であってもよい。
【００８８】
（C）図４の示すメカコン６２Ｒは、プリンター１３０の機構部１０、…を対象とするものには限られず、ＡＤＦ１１０、スキャナー１２０の含むメカコンを対象としてもよい。
（D）図４の示すＣＰＵ６１は単一のコア６１Ｃを含む。それとは別に、ＣＰＵ６１はマルチコアであってもよく、ＡＭＰにより特定のコアが機構制御専用に割り当てられてもよい。この場合、１次キャッシュはコア別に独立していてもよい。メカコン等のリアルタイム型プログラムと他の（ベストエフォート型）プログラムとの両方のタスク処理における上記のキャッシュメモリー６１Ｍの共用技術は、２次または３次キャッシュ等、複数のコアに共用されるキャッシュメモリーに適用可能である。
【００８９】
（E）図５の（ｂ）の示すキャッシュメモリー６１Ｍのメモリーアレイ６１２では、２５６本のキャッシュラインＣＬＮ０、…、ＣＬＮ２５５のすべてに異なるセットインデックス０〜２５５が割り振られている。この場合、メモリーアレイ６１２には、セットインデックスフィールドＳＩＤが共通するメインメモリー６２のアドレス群のうち、タグフィールドＴＧＦが共通するアドレスだけが同時にマップ可能である。すなわち、それらのアドレスのワードだけが同時にキャッシュ可能である。
【００９０】
その他に、メモリーアレイ６１２の含む２５６本のキャッシュラインが同数ずつ、たとえば６４本ずつのグループ（「ウェイ」または「セグメント」という。）に分割され、異なるウェイのキャッシュラインに同じセットインデックスが割り振られてもよい。セットインデックスが共通するキャッシュライン群を「セット」という。１つのセットのキャッシュラインには、セットインデックスフィールド、たとえば中間６ビットが共通するメインメモリー６２のアドレス群のうち、タグフィールドの異なるアドレスが、最大でウェイと同数まで同時にマップ可能である。
【００９１】
図５の（ｂ）が示すようにメモリーアレイ６１２が単一のウェイしか含まない場合、キャッシュロックダウンはキャッシュコントローラー６１１に対し、図６の（ｂ）が示すように、すべてのキャッシュラインにおいてキャッシュミスに伴う有効ビットｖの無効化とデータセクションＤＴＳへのワードの上書きとの両方を禁止することにより実現する。一方、メモリーアレイ６１２が複数のウェイに分割されている場合、キャッシュコントローラー６１１はセットごとに、次のキャッシュミスの際に有効ビットを無効化すべきキャッシュライン（「ビクティム」という。）を選択する。したがって、コア６１Ｃは、ビクティムの選択から除外すべきウェイをキャッシュコントローラー６１１に指定することにより、キャッシュロックダウンをウェイ単位で実現可能である。指定されたウェイでは、いずれのセットに所属するキャッシュラインもビクティムには選択されないので、いずれのキャッシュラインでもワードが上書きされない。こうして、データセクションへのワードの上書きが禁止されるまでもなく、そのウェイにはワードがロックダウンされる。
【００９２】
（F）ＭＦＰ１００には後処理装置が外付けされてもよい。この場合、印刷ジョブの処理には、後処理装置の含む機構部の制御が追加される。したがって、画像形成プログラムの模擬実行では、後処理装置のメカコンも併せて実行されてもよい。この場合、印刷条件には、後処理の要否とその種類とを規定する項目が付加されているので、これらの項目に合わせて異なる態様で後処理装置からの応答情報が模擬的に作成されてもよい。
【００９３】
図１３の（ａ）は、ＭＦＰ１００に外付けされた中継ユニット１４０と後処理装置１５０との外観を示す斜視図である。中継ユニット１４０は、排紙トレイ４６に代わり、それが取り外されたＭＦＰ１００の筐体部分に組み込まれる。中継ユニット１４０は、排紙口４２からシートを受け取って後処理装置１５０へ中継する。後処理装置１５０は、ＭＦＰ１００からの指示に応じて、排紙口４２から中継ユニット１４０を通して受け取ったシートの束に対して後処理を行う。この後処理には、たとえばシートの束を整合する処理と、その束をステープルで綴じる処理とを含む。後処理装置１５０の上側排紙トレイ１５１にはシートが排紙口４２から送出されたときの状態のままで積載され、下側排紙トレイ１５２にはシートの束が整合され、またはステープルで閉じられて積載される。
【００９４】
図１３の（ｂ）は、中継ユニット１４０と後処理装置１５０とに内蔵されたシートの搬送経路を示す模式図である。排紙口４２は中継ユニット１４０内の経路へ繋がる。この経路には搬送ローラー群１４１、１４２、１４３が設置され、排紙口４２から送出されたシートを後処理装置１５０へ中継する。後処理装置１５０では給紙ローラー１６１が、中継ユニット１４０からシートを受け取って筐体の中に引き込む。振分爪１６２は、その基端基端のまわりに揺動することによって先端を上下に移動させる。これにより、振分爪１６２は、給紙ローラー１６１が引き込んだシートを上側排紙ローラー１６３または縦送ローラー群１６４へ振り分ける。上側排紙ローラー１６３は、給紙ローラー１６１から振分爪１６２に沿って移動してきたシートを上側排紙トレイ１５１へ排紙する。搬送ローラー群１６４は、給紙ローラー１６１から振分爪１６２に沿って移動してきたシートを後処理部１６６へ向けて反転ローラー１６５まで搬送する。反転ローラー１６５はまず正転し、搬送ローラー群１６４が送出したシートを後処理部１６６へ送り込む。反転ローラー１６５は次に逆転し、後処理後のシートの束を後処理部１６６から引き出す。後処理部１６６は反転ローラー１６５から受け取ったシートを所定の枚数、蓄積して束にし、その束に対して整合処理、ステープルでの綴じ処理等の後処理を施す。下側排紙ローラー１６７は、反転ローラー１６５が後処理部１６６から引き出したシートの束を下側排紙トレイ１５２へ排紙する。
【００９５】
図１３の（ｂ）は示していないが、中継ユニット１４０と後処理装置１５０との搬送経路にも複数の通紙センサーが設置されている。これらのセンサーを利用して後処理装置１５０は、経路上を搬送中のシートの位置を検知して主制御部６０へ通知する。この通知に応じて主制御部６０は、図１３の（ｂ）が示す可動部材１４１−１４３、１６１−１６７の駆動用モーターまたはソレノイドを制御する。たとえば、シート搬送のタイミングに遅れが生じているか否かが判断され、それに基づき、中継ユニット１４０と後処理装置１５０との搬送経路上におけるジャム等の搬送不良が検出される。
【００９６】
画像形成プログラムの模擬実行では後処理制御プログラム、特に、図１３の（ｂ）が示す可動部材１４１−１４３、１６１−１６７の制御プログラムも実行される。後処理制御プログラムの含むワードもキャッシュメモリー６１Ｍにキャッシュされ、模擬実行後にロックダウンされる。
模擬実行では、後処理制御プログラムの含むワードのうち、後処理装置１５０の駆動部に対するＩ／Ｏアクセス命令をコア６１Ｃはスキップする。一方、コア６１Ｃは、その命令に応じて後処理装置１５０の駆動部が自身のレジスターに書き込むはずの応答情報、たとえば通紙センサーの検出信号に関する情報を模擬的に作成し、制御に利用する。この情報は、シートがジャム等の不具合を起こすことなく正常に後処理される場合に、中継ユニット１４０と後処理装置１５０との内部の通紙センサーがそのシートを検出すべきタイミング等、後処理の正常な進行に伴う応答情報を模倣する。
【００９７】
コア６１Ｃは特に、模擬的な応答情報を印刷条件に合わせて変更する。たとえば、後処理の要否に応じてシートの排紙先１５１、１５２が異なるので、駆動すべき搬送ローラーの種類と振分爪１６２の先端の向きとが異なる。１束あたりのシートの枚数が異なれば、後処理部１６６からの束の搬送速度の目標値が異なるので、反転ローラー１６５と下側排紙ローラー１６７との駆動モーターの回転数が異なる。これらの違いに合わせて、シートを検出すべき通紙センサーの種類、その検出のタイミング等、模擬的な応答情報の内容が変更される。
【００９８】
こうして、画像形成プログラムの模擬実行の完了時、キャッシュメモリー６１Ｍには、後処理制御プログラムの含むワードのうち、印刷条件に適ったワードがロックダウンされる。その結果、キャッシュメモリー６１Ｍにロックダウンさせるべきデータ量が最適化される。さらに、本実行におけるキャッシュヒット率が高いレベルで安定化するので、後処理制御において保証されるべき各タスクの最大実行時間を短縮し、後処理制御の応答精度をμ秒程度の高レベルに維持することが可能である。
【産業上の利用可能性】
【００９９】
本発明は画像形成装置に関し、上記のとおり、主制御部６０が画像形成プログラムの本実行に先立ってそのプログラムを模擬実行し、そのプログラムのうち印刷条件に適った部分をキャッシュメモリー６１Ｍにロックダウンする。このように、本発明は明らかに産業上利用可能である。
【符号の説明】
【０１００】
１００  ＭＦＰ
１３０  プリンター
１０    給送部
１１    給紙カセット
１２Ｐ、１２Ｆ、１２Ｒ  給送ローラー群
１３    縦送ローラー
１４    タイミングローラー
２０    作像部
２１Ｙ、２１Ｍ、２１Ｃ、２１Ｋ  感光体ユニット
２２Ｙ、２２Ｍ、２２Ｃ、２２Ｋ  １次転写ローラー
２３    中間転写ベルト
２３Ｒ  中間転写ベルトの駆動ローラー
２３Ｌ  中間転写ベルトの従動ローラー
２５Ｙ、２５Ｍ、２５Ｃ、２５Ｋ  感光体ドラム
２４    ２次転写ローラー
２６    露光部
３０    定着部
３１    定着ローラー
３２    加圧ローラー
４０    排紙部
４１    切換爪
４２    排紙口
４３    排紙ローラー
４４    反転口
４５    反転ローラー
４６    排紙トレイ
４７    反転トレイ
５０    操作部
５１    操作パネル
６０    主制御部
６１    ＣＰＵ
６１Ｃ  コア
６１Ｍ  キャッシュメモリー
６１１  キャッシュコントローラー
６１２  メモリーアレイ
６２    メインメモリー
１ＦＳ、２ＦＳ  給紙センサー
ＣＳ    縦送センサー
ＴＳ    タイミングセンサー
ＥＳ    排紙センサー
１ＲＳ、２ＲＳ  通紙センサー
【図１】
2018030267.tif 000003
【図２】
2018030267.tif 000004
【図３】
2018030267.tif 000005
【図４】
2018030267.tif 000006
【図５】
2018030267.tif 000007
【図６】
2018030267.tif 000008
【図７】
2018030267.tif 000009
【図８】
2018030267.tif 000010
【図９】
2018030267.tif 000011
【図１０】
2018030267.tif 000012
【図１１】
2018030267.tif 000013
【図１２】
2018030267.tif 000014
【図１３】
2018030267.tif 000015