JP6750396B2 - 画像形成装置 - Google Patents

画像形成装置 Download PDF

Info

Publication number
JP6750396B2
JP6750396B2 JP2016162681A JP2016162681A JP6750396B2 JP 6750396 B2 JP6750396 B2 JP 6750396B2 JP 2016162681 A JP2016162681 A JP 2016162681A JP 2016162681 A JP2016162681 A JP 2016162681A JP 6750396 B2 JP6750396 B2 JP 6750396B2
Authority
JP
Japan
Prior art keywords
image forming
execution
unit
sheet
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016162681A
Other languages
English (en)
Other versions
JP2018030267A (ja
Inventor
優士 小牧
優士 小牧
勇児 利長
勇児 利長
成樹 野澤
成樹 野澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2016162681A priority Critical patent/JP6750396B2/ja
Publication of JP2018030267A publication Critical patent/JP2018030267A/ja
Application granted granted Critical
Publication of JP6750396B2 publication Critical patent/JP6750396B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Control Or Security For Electrophotography (AREA)
  • Facsimiles In General (AREA)
  • Storing Facsimile Image Data (AREA)

Description

本発明は画像形成装置に関し、特にそれが実装するプロセッサーによるキャッシュメモリーの利用に関する。
画像形成装置に要求されるデータ処理は、リアルタイム型とその他とに大別される。「リアルタイム型」とは、リアルタイム性が要求されるデータ処理をいう。「リアルタイム性」とは、タスクの最大実行時間の予測可能性と、実際の実行時間が最大値を超えないことに対する確実性との両方を意味する。画像形成装置では、シート搬送機構、印刷エンジン等、画像形成に利用される機構部の制御(以下、「機構制御」という。)が典型的である。リアルタイム型以外のデータ処理の中ではベストエフォート型が代表的である。画像形成装置では、画像処理、ユーザーインターフェース(UI)、およびネットワーク通信がベストエフォート型データ処理に相当する。これらの処理には、必ずしもリアルタイム性は要求されないが、汎用性と拡張性(スケーラビリティー)とは強く求められる。
リアルタイム型とそれ以外、特にベストエフォート型とのデータ処理間では、要求される条件が異なる。これらの条件のいずれにも的確に対応する目的で従来の画像形成装置ではその電子制御系統(以下、「主制御部」という。)から、機構制御を行うハードウェア(以下、「メカニカルコントローラー部」、略して「メカコン部」という。)が分離されている。特に主制御部とメカコン部とが独自のマイクロプロセッサー(CPU/MPU)を備えている。両者の分離により、たとえば、主制御部には汎用オペレーティングシステム(OS)を実行させ、メカコン部にはリアルタイムOS(RTOS)を実行させるといった工夫が可能である(たとえば特許文献1参照)。主制御部ではその汎用性の高さにより多様なアプリケーションプログラムが実行可能であるので、多機能化が容易である。それとは独立にメカコン部ではリアルタイム性が向上し、搬送ローラー等の可動部材とシートとの動きをμ秒程度の高い応答精度で制御可能である。
近年、組み込みシステムにおけるCPUの高性能化が著しい。特にマルチコアCPUとハイパーバイザーとの組み込みシステムへの応用が進んでいる。これに伴い、メカコン部を主制御部に再統合する技術の開発が試みられている(たとえば特許文献2、3参照)。メカコン部と主制御部との間で、CPU、メインメモリーを始め、機能の共通する電子回路素子を1つに統合することにより電子制御系統の部品点数を削減し、画像形成装置の製造コストを低減させることが狙いである。「マルチコアCPU」は、実際に演算を行う回路部分である「コア」を2個以上含む。CPUがマルチコアであれば、OS別に実行主体のコアを分ける(asymmetric multiprocessing:AMP)ことで、単一のCPUにRTOSと汎用OSとを並列に実行させることが可能である。「ハイパーバイザー」は、1台の物理的なコンピューターを、そのハードウェアが2台以上の仮想的なコンピューター(バーチャルマシーン(VM))に共有されているように動作させるためのソフトウェアである。ハイパーバイザーが異なるVMに異なるOSを実行させることにより、物理的には単一のCPUにRTOSと汎用OSとを並列に実行させることが可能である。
特開2004−265301号公報 特開2016−063407号公報 特開2011−192130号公報 特開2000−250518号公報
主制御部に搭載されているCPUはキャッシュメモリーを利用するので、メカコン部を主制御部に統合するには、このキャッシュメモリーをリアルタイム型タスク処理にも利用可能にしなければならない。CPUがマルチコアであれば1次キャッシュはコアごとに独立しているので、リアルタイム型タスク処理専用のコアと1次キャッシュとを他のタスク処理用のものから分離することは可能である。しかし、この場合でも、2次キャッシュまたは3次キャッシュは一般に複数のコアにより共用されるので、リアルタイム型タスク処理と他のタスク処理とで共用可能にする必要がある。
リアルタイム型タスク処理にキャッシュメモリーを利用することは、CPUによる命令/データの読み書き時間を確率的に変動させるので、タスクの実行時間を予測させにくくする。それでも、キャッシュヒット率が十分に安定していれば、実行時間の予測は可能である。しかし、リアルタイム型タスク処理にベストエフォート型タスク処理が並行する場合、両処理間でのキャッシュメモリーの共用はキャッシュヒット率を著しく不安定化させる。ベストエフォート型タスク処理ではキャッシュメモリーの利用量が状況に応じて大きく変動するからである。その結果、リアルタイム型タスクの実行時間は予測困難に陥り、メカコン部が主制御部から分離されていた場合と同程度に短い最大実行時間を保証することが困難である。すなわち、メカコン部を主制御部に統合する場合、機構制御の応答精度をμ秒程度の高レベルに維持することが難しい。
本発明の目的は上記の課題を解決することであり、特に、機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリーを共用可能にする画像形成装置を提供することにある。
本発明の1つの観点による画像形成装置は、リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に1つのキャッシュメモリーを共用する画像形成装置であって、画像形成プログラムを模擬実行し、その模擬実行の完了後に画像形成プログラムを本実行する実行手段と、画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、模擬実行中、条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを画像形成プログラムから実行手段に読み出させ、その命令に従って実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーからその制御出力に応じて送出されるはずの検出信号を模擬的に、印刷条件に合わせて異なる態様で作成して実行手段へ渡す入出力模擬手段と、画像形成プログラムの模擬実行の完了後、本実行に先立ってキャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン(CLD)手段と、前記キャッシュメモリーに加えてメインメモリーとプロセッサーとを含む制御部と、シートを搬送し、搬送中のシートの上に画像を形成する機構部と、ユーザーまたは外部の電子機器からデータを受け付ける操作部と、を備え、前記メインメモリーは、前記画像形成プログラムと前記他のプログラムとを記憶し、前記画像形成プログラムは、前記機構部を前記制御部に制御させるプログラムを含み、前記他のプログラムは、前記操作部が前記条件取得手段として機能するように、前記操作部を前記制御部に制御させるプログラムを含み、前記プロセッサーは、前記実行手段として機能すると共に、前記画像形成プログラムの模擬実行により前記入出力模擬手段と前記CLD手段としても機能し、前記入出力模擬手段は、前記画像形成プログラムの含む命令のうち前記機構部へのアクセス命令を前記実行手段にスキップさせることにより、当該アクセス命令に従って前記実行手段から前記機構部へ送信されるべき制御出力を遮断する。
入出力模擬手段は、模擬的に作成すべき検出信号の態様を、条件取得手段が取得した印刷条件が示す次の項目の少なくとも1つに合わせて変更してもよい。(1)シートの給紙場所または排紙場所。(2)片面印刷と両面印刷とのいずれを示すか。(3)シートのサイズ、紙種、または姿勢。(4)カラーモードとモノクロモードとのいずれを示すか。(5)後処理装置が外付けされているか否か。
本発明の上記の観点による画像形成装置では、画像形成プログラムの模擬実行中に入出力模擬手段が、印刷条件に合わせて異なる命令とデータとを画像形成プログラムから実行手段に読み出させ、その命令に従って実行手段から送信されるべき制御出力を遮断し、その制御出力に応じてセンサーから送出されるはずの検出信号を模擬的に、印刷条件に合わせて異なる態様で作成して実行手段へ渡す。模擬実行の完了後、画像形成プログラムの本実行に先立ってCLD手段がキャッシュメモリーに、画像形成プログラムの模擬実行中に記憶した命令とデータとをロックダウンさせる。その結果、画像形成プログラムの本実行では、キャッシュメモリーにロックダウンされた命令とデータとに従って機構制御が実行される。この間、機構制御に他のデータ処理が並列に実行されても、キャッシュメモリーにロックダウンされた命令とデータとは他の命令とデータとに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。こうして、この画像形成装置は、機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリーを共用することができる。
(a)は、本発明の実施形態による画像形成装置の外観を示す斜視図である。(b)は、(a)の示す直線b−bに沿った画像形成装置の模式的な断面図である。 図1の示す画像形成装置の搬送機構が構成するシートの搬送経路を示す模式図である。 (a)は、図1の示す画像形成装置の斜め前方からの斜視図であり、(b)はその装置のシャーシの斜め後方からの斜視図である。 図1の示す画像形成装置の電子制御系統の構成を示すブロック図である。 (a)は、図4の示すキャッシュメモリーの構成を示すブロック図である。(b)は、(a)の示すメモリーアレイのデータ構造を示す模式図である。 (a)は、通常の状態でキャッシュミスが生じた場合におけるキャッシュメモリーの動作を示す模式図である。(b)は、コアからキャッシュロックダウンが指示された状態でキャッシュミスが生じた場合におけるキャッシュメモリーの動作を示す模式図である。 (a)は、画像形成プログラムの実行開始直後におけるCPUの動作を示す模式図である。(b)は、画像形成プログラムの模擬実行中におけるCPUの動作を示す模式図である。 (a)は、画像形成プログラムの本実行中におけるCPUの動作を示す模式図である。(b)は、画像形成プログラムの本実行の完了時におけるCPUの動作を示す模式図である。 (a)は、シートの給紙場所と紙種との組み合わせ別に、図2の示す通紙センサーによるシートの検出時間を示す表である。(b)は、シートの排紙場所と紙種との組み合わせ別に、シートが排紙センサーの通過に要する時間を示す表である。(c)は、シートの紙種、サイズ、姿勢の組み合わせ別に、タイミングローラーがシートの後端をタイミングセンサーの検出範囲から引き出すのに要する時間を示す表である。(d)は、片面印刷と両面印刷とのそれぞれにおいて通紙センサーがシートを検出する時間と切換爪の駆動ソレノイドの動作時間とを示す表である。(e)は、プリンターの動作モードがカラーモードとモノクロモードとの別に、印刷エンジンにおける駆動対象のモーターを示す表である。 画像形成プログラムの実行処理のフローチャートである。 図10の示すステップS105における本実行による機構制御のうち、給送ローラー群の制御のフローチャートである。 図10の示すステップS103における模擬実行による機構制御のうち、図11の示す給送ローラー群の制御に相当する部分のフローチャートである。 (a)は、図1の示す画像形成装置に外付けされた中継ユニットと後処理装置との外観を示す斜視図である。(b)は、これらの中継ユニットと後処理装置とに内蔵されたシートの搬送経路を示す模式図である。
以下、本発明の実施形態について、図面を参照しながら説明する。
[画像形成装置の外観]
図1の(a)は、本発明の実施形態による画像形成装置100の外観を示す斜視図である。この画像形成装置は複合機(multi-function peripheral:MFP)100であり、スキャナー、カラーコピー機、およびカラーレーザープリンターの機能を併せ持つ。MFP100の筐体の上面には自動原稿送り装置(auto document feeder:ADF)110が開閉可能に装着されている。ADF110の直下に位置する筐体の上部にはスキャナー120が内蔵され、この筐体の下部にはプリンター130が内蔵されている。プリンター130の底部には給紙カセット133が引き出し可能に取り付けられている。
MFP100は胴内排紙型である。すなわち、スキャナー120とプリンター130との隙間DSPには排紙トレイ46が設置され、その隙間DSPの奥の排紙口42から排紙されたシートを収容する。この隙間DSPには更に反転トレイ47が排紙トレイ46の上に設置されている。両面印刷時、表面が印刷されたシートは反転トレイ47の上でスイッチバックする。すなわち、そのシートは、排紙口42の上に開いた反転口44から反転トレイ47の上へはみ出す位置まで一旦搬送され、その後、搬送方向が反転して反転口44の中に再び引き込まれる。
[画像形成装置の機構部]
図1の(b)は、図1の(a)の示す直線b−bに沿った、MFP100の模式的な断面図である。この図が示すように、MFP100の筐体下部にはプリンター130の機構部が組み込まれている。この機構部は、給送部10、作像部20、定着部30、および排紙部40を含む。
−給送部−
給送部10は給送ローラー群12P、12R、12F、13、14、15を利用して、給紙カセット11a、11b、または手差しトレイ16に収容されたシートの束SHTからシートSH1を1枚ずつ作像部20へ給送する。「シート」とは、紙製もしくは樹脂製の薄膜状もしくは薄板状の材料、物品、または印刷物をいう。給紙カセット11a、11b、および手差しトレイ16に収容可能なシートの種類、すなわち紙種はたとえば、普通紙、上質紙、カラー用紙、または塗工紙であり、サイズはたとえば、A3、A4、A5、B4、またはB5である。さらに、シートの姿勢は縦置きと横置きとのいずれにも設定可能である。
−作像部(印刷エンジン)−
作像部20は、給送部10から送られたシートSH2の上にトナー像を形成する。この形成には印刷エンジンが利用される。印刷エンジンはたとえば、タンデム方式の4つの作像ユニット21Y、21M、21C、21K、中間転写ベルト23、およびレーザー走査方式の露光部26を含む。
作像ユニット21Y、…はまず、感光体ドラム25Y、25M、25C、25Kの表面を一様に帯電させ、その帯電部分を露光部26にレーザー光で、各感光体ドラム25Y、…の軸方向(図1の(b)では紙面の法線方向)に走査させる。レーザー光量は露光部26により、画像データの1ラインが示す、イエロー(Y)、マゼンタ(M)、シアン(C)、およびブラック(K)のうちいずれかの色の階調値で変調されている。これにより、異なる感光体ドラム上の露光領域には、異なる色の階調値分布に対応する帯電量分布、すなわち静電潜像が生じる。各作像ユニット21Y、…は次に、Y、M、C、Kのうちいずれかの色のトナーを帯電させて静電潜像に付着させる。こうして、異なる感光体ドラム上に異なる単色のトナー像が現れる。このような露光と現像とを作像ユニット21Y、…は画像データの異なるラインごとに所定角度ずつ感光体ドラム25Y、…を回転させながら繰り返す。こうして、その画像データの表す画像の全体が4本の感光体ドラム25Y、…のそれぞれに、Y、M、C、Kの各単色のトナー像として再現される。
中間転写ベルト23は駆動ローラー23Rと従動ローラー23Lとの間に張られ、駆動ローラー23Rからのトルクで回転する。この回転により、中間転写ベルト23上のある一定の表面領域が1次転写ローラー22Y、22M、22C、22Kと感光体ドラム25Y、…との間のニップを順番に通過する。各ニップには、中間転写ベルト23のその表面領域の通過タイミングに合わせて、対応する感光体ドラム25Y、…上の単色のトナー像が進入してその表面領域に接触する。このとき、1次転写ローラー22Y、…と感光体ドラム25Y、…との間の電界により、各トナー像は感光体ドラム25Y、…から中間転写ベルト23のその表面領域へ転写される。こうしてその表面領域に4つの単色のトナー像が重ねられて、1つのカラートナー像が構成される。このカラートナー像は中間転写ベルト23の駆動ローラー23Rと2次転写ローラー24との間のニップを、給送部10から送出されたシートSH2と同時に通過してそのシートSH2に接触する。このとき、カラートナー像は両ローラー23、24間の電界により、中間転写ベルト23からそのシートSH2へ転写される。その後、そのシートSH2は中間転写ベルト23の駆動ローラー23Rにより定着部30へ送り出される。
露光部26は光源として4個の半導体レーザー素子を含み、各素子への供給電流量を、画像データが示すY、M、C、Kの階調値で変調することにより、各素子から出射するレーザー光量を変調する。各レーザー光はポリゴンミラー271で反射されてfθレンズ273を透過し、折り返しミラー(28Y、29Y)、(28M、29M)、(28C、29C)、28Kで反射されて目標の感光体ドラム25Y、…へ照射される。このとき、露光部26はポリゴンミラー271をモーター272で、その中心軸(図1の(b)では上下方向に伸びている。)のまわりに一定の角速度で回転させる。これにより、ポリゴンミラー271からfθレンズ273へのレーザー光の入射角が等速度で変化する。fθレンズ273はたとえば2枚の非球面レンズから構成され、ポリゴンミラー271からの入射光を各感光体ドラム25Y、…の表面に結像させる。像高が入射角に比例するという性質をfθレンズ273が持つので、結像点はポリゴンミラー271の等速回転に伴い、感光体ドラム25Y、…の表面上をその軸方向(図1の(b)では紙面の法線方向)に等速度で移動する。
−定着部−
定着部30は、作像部20から送出されたシートSH2にトナー像を熱定着させる。具体的には、定着部30は定着ローラー31と加圧ローラー32とを回転させながら両ローラー間のニップにシートSH2を通紙する。このとき、定着ローラー31はそのシートSH2へ内蔵のヒーターの熱を加え、加圧ローラー32はそのシートSH2の加熱部分に対して圧力を加えて定着ローラー31へ押し付ける。定着ローラー31からの熱と加圧ローラー32からの圧力とによりトナーがシートSH2に溶着するので、トナー像がそのシートSH2に定着する。定着部30は更に定着ローラー31と加圧ローラー32との回転により、そのシートSH2を排紙部40へ送り出す。
定着ローラー31に内蔵のヒーターはたとえばハロゲンヒーターであり、定着ローラー31の芯金に埋め込まれている。定着部30は、定着ローラー31の近傍に設置された温度センサー35で定着ローラー31の外周面温度を監視する。温度センサー35はたとえば、サーモパイルを利用した非接触型温度センサーであり、定着ローラー31の外周面からの放射熱量に基づいて定着ローラー31の外周面温度を計測する。この計測値を定着部30はハロゲンヒーターの発熱量の制御に利用する。
−排紙部−
排紙部40は、定着部30から送出されたシートSH3、SH4を、排紙口42から排紙トレイ46へ排紙し、または反転トレイ47でスイッチバックさせる。具体的には、排紙部40はまず、シートの送り先に応じて切換爪41を上下させる。切換爪41は、その基端が排紙口42と反転口44との間に回転可能に固定された爪状または板状の部材であり、基端のまわりに揺動することによって先端を上下に移動させる。切換爪41に先端を上げさせるとシートは排紙口42へ進み、下げさせると反転口44へ進む。排紙部40は次に排紙ローラー43または反転ローラー45を回転させる。排紙ローラー43は排紙口42の内側に配置され、切換爪41を通過したシートSH3を排紙口42から排紙トレイ46へ送出する。反転ローラー45は反転口44の内側に配置され、正逆両方向に回転可能である。反転ローラー45はまず正転し、切換爪41を越えて移動してきたシートSH4を一旦、反転口44から送出して反転トレイ47に載せる。反転ローラー45は更に、そのシートSH4の後端を通過させる直前に逆転してそのシートSH4を反転トレイ47から反転口44の中へ引き込み、すなわちスイッチバックさせて循環路48へ送る。循環路48では4対の搬送ローラー49A,49B、49C、49Dが、反転ローラー45の送出したシートSH5を裏返して給送部10内の搬送経路へ戻す。その後、給送部10はこのシートSH5を再び作像部20へ送り、作像部20はこのシートSH5の裏面にトナー像を形成する。定着部30はこのシートSH5に再び熱処理を行い、排紙部40はこのシートSH5を今度は排紙トレイ46へ送出する。
−シートの搬送経路−
MFP100では、給送部10と排紙部40とに加え、中間転写ベルト23の駆動ローラー23R、2次転写ローラー24、定着ローラー31、加圧ローラー32等、作像部20と定着部30との一部がシートの搬送機構としても機能する。
図2は、この搬送機構が構成するシートの搬送経路を示す模式図である。給紙カセットの1段目11aと2段目11b、および手差しトレイ16のそれぞれから伸びる3本の給紙経路が第1合流点MP1で1本の経路にまとまる。この経路は作像部20と定着部30とを貫き、切換爪41に面した分岐点BPで2本に分かれる。1本は排紙口42で排紙トレイ46へ繋がり、もう1本は反転口44で反転トレイ47と循環路48とへ繋がる。循環路48は、第1合流点MP1と作像部20との間に位置する第2合流点MP2で元の経路に繋がる。
−通紙センサーを利用した搬送タイミングの制御−
図2が示すように、搬送経路上には、搬送ローラー群12P、…に加えて通紙センサー1FS、2FS、CS、TS、ES、1RS、2RSが設置されている。各通紙センサー1FS、…は、その設置場所を通過中のシートを光学的に検出し、それを示す信号を送出する。具体的には、各通紙センサーは発光部と受光部とを含む。発光部は赤外線等、所定波長の光を出射し、受光部はその波長の光を検知してその出力信号を変化させる。各通紙センサーの設置場所を1枚のシートが通過する間、そのシートは発光部の出射光を受光部の手前で遮断し、または受光部へ向けて反射する。この出射光の遮断または反射に応じて受光部の出力信号が変化することから、各通紙センサーの設置場所を通過中のシートが検出される。この出力信号、すなわち通紙センサー1FS、…の検出信号の状態を、給送部10、作像部20、定着部30、および排紙部40は後述の主制御部60(図4参照。)へ通知する。この通知に応じて主制御部60は、以下に示すとおり、搬送ローラーの回転と停止とのタイミングを制御し、ジャム等に起因してシートの搬送タイミングに異常が生じているか否かを判断する。
給紙カセット11a、11bの近傍には、ピックアップローラー12P、給紙ローラー12F、捌きローラー12R、および給紙センサー1FS、2FSが設置されている。給送ローラー群12P、12F、12Rは、複数枚のシートを連続して給送する場合、間欠的に回転して、連続するシートの間隔(紙間)を所定値に維持する。各給紙センサー1FS、2FSの出力が示すシートの通過タイミングに遅れがないか否かに応じて、給送ローラー群12P、12F、12Rがシートを正常な紙間で給送経路へ送出しているか否かが判断される。
2段目の給紙カセット11bからの給送経路には、縦搬ローラー13と縦搬センサーCSとが設置されている。縦搬センサーCSの出力が示すシートの通過タイミングに遅れがないか否かに応じて、縦搬ローラー13がシートを正常なタイミングで第1合流点MP1へ送出しているか否かが判断される。
第2合流点MP2と2次転写ローラー24との間には、タイミングローラー14とタイミングセンサーTSとが設置されている。タイミングローラー14は、シートが給紙カセット11a、11b、手差しトレイ16、および循環路48のいずれから到達する時点でも停止しており、そのシートを一旦停止させる。そのシートの到着がタイミングセンサーTSの出力から検知されると、その到着時点から所定時間が経過した時点でタイミングローラー14は回転を開始する。これにより、停止していたシートが中間転写ベルト23の駆動ローラー23Rと2次転写ローラー24との間のニップへ、中間転写ベルト23上のトナー像と同時に進入する。この進入のタイミングに遅れがないか否かがタイミングセンサーTSの出力から判断される。
定着部30と分岐点BPとの間には排紙センサーESが設置されている。この出力が示すシートの通過タイミングに遅れがないか否かに応じて、定着ローラー31がそのシートを正常なタイミングで送出しているか否かと、排紙ローラー43または反転ローラー45がそのシートを正常なタイミングで引き込んでいるか否かとが判断される。
循環路48には通紙センサー1RS、2RSが設置されている。これらの出力が示すシートの通過タイミングに遅れがないか否かに応じて、循環路48の搬送ローラー群49A−49Dがそのシートを正常なタイミングで搬送しているか否かが判断される。
−アクチュエーター−
搬送経路の周辺と印刷エンジンとには可動部材の駆動用アクチュエーターが設置されている。これらのアクチュエーターには、搬送ローラーの駆動モーターM1−M6、TM、SM、FM、EM、RM、感光体ドラム25Y、…の駆動モーターYM、MM,CM、KM、および切換爪41の駆動ソレノイドSLが含まれる。各駆動モーターM1、…はたとえば直流ブラシレス(BLDC)モーターであり、一般に正逆両方向に回転可能である。各モーターM1、…は、ギア、ベルト等の伝達系統を通して駆動対象のローラーに回転力を与える。ソレノイドSLは、電磁石を利用して可動鉄芯(プランジャー)を軸方向に前後運動させて切換爪41を押し引きすることにより、それを上下に揺動させる。
給紙カセット11a、11bの近傍では、給送モーターM1、M2が給送ローラー群12P、12F、12Rを回転させる。2段目の給紙カセット11bからの給送経路の近傍では、縦搬モーターM3が縦搬ローラー13を回転させる。手差しトレイ16からの給送経路の近傍では、給送モーターM4が給送ローラー15を回転させる。第2合流点MP2付近ではタイミングモーターTMがタイミングローラー14を回転させる。作像部20では、メインモーターSMが中間転写ベルト23の駆動ローラー23Rを回転させ、4つの駆動モーターYM、MM、CM、KMがそれぞれ感光体ドラム25Y、…を1本ずつ回転させる。定着部30では定着モーターFMが定着ローラー31を回転させる。排紙部40では、排紙モーターEMが排紙ローラー43を回転させ、反転モーターRMが反転ローラー45を正逆両方向に回転させる。ソレノイドSLは切換爪41を上下に揺動させる。循環路48では、2台の駆動モーターのうち、一方M5が上流側の2対の搬送ローラー49A、49Bを回転させ、他方M6が下流側の2対の搬送ローラー49C、49Dを回転させる。
[主制御部の配置]
図3の(a)はMFP100の斜め前方からの斜視図であり、(b)はMFP100のシャーシ101の斜め後方からの斜視図である。いずれの図面にも、MFP100が内蔵する主制御部60と電源部70とが、あたかもMFP100の筐体とシャーシ101とを透かして見えているように描かれている。主制御部60と電源部70とはそれぞれ1枚の印刷回路基板に実装され、それらの基板が、MFP100の筐体の背面とシャーシ101との間に設けられた電装空間ELSの中に、その背面に対して平行に収容されている。図3は示していないが、主制御部60の基板上には外付けの電子機器(オプション)に対する接続部(コネクタ)が設けられている。これらのオプションには、USBメモリー、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)等の可搬性記憶装置PMD、およびネットワーク(LAN)カード、半導体メモリーボード、グラフィックボード等の機能拡張ボードEFBが含まれる。
[画像形成装置の電子制御系統]
図4は、MFP100の電子制御系統の構成を示すブロック図である。この制御系統では、機構部10、20、30、40内の駆動部10D、20D、30D、40Dに加えて操作部50と主制御部60とが、バス90を通して互いに通信可能に接続されている。
−駆動部−
図4は示していないが、各機構部10、…、の駆動部10D、20D、30D、40Dは、制御回路、駆動回路、およびレジスターを含む。これらを利用して各駆動部10Dは図2の示す駆動モーター群M1、…、ソレノイドSL等のアクチュエーターに対してフィードバック制御を行う。
制御回路は、MPU/CPU、特定用途向け集積回路(ASIC)、またはプログラム可能な集積回路(FPGA)等の電子回路である。制御回路は、アクチュエーターの起動と停止とのタイミング、およびそのアクチュエーターの制御量の目標値、たとえば駆動モーターであればその目標の回転速度を決定する。制御回路は更に、決定した制御量の目標値と、アクチュエーターからフィードバックされる実際の制御量との間の誤差に基づき、そのアクチュエーターに対する印加電圧の目標値を駆動回路に指示する。
駆動回路はスイッチングコンバーターであり、電界効果トランジスタ(FET)、絶縁ゲートバイポーラトランジスタ(IGBT)等のパワートランジスタをスイッチング素子として利用して、制御回路から指示された目標値に等しい電圧をアクチュエーターに対して印加する。これにより、アクチュエーターの制御量がその目標値に調節される。
レジスターは、制御回路と同じ基板または同じチップに組み込まれたラッチ回路等の記憶素子である。レジスターは制御回路と主制御部60との両方に監視され、両者間で交換されるべき情報の一時的な保存場所として利用される。制御回路は、主制御部60がレジスターに書き込んだ命令に応じてアクチュエーターを起動または停止させ、その命令が示す、プリンター130の動作モード、シートの搬送速度の目標値等の情報に基づき、アクチュエーターの制御量の目標値を決定する。制御回路はまた、アクチュエーターまたはその駆動対象である可動部材の状態に関する情報、または、通紙センサー1FS、…から送出される検出信号の状態に関する情報をレジスターへ書き込むことにより、これらの情報を主制御部60へ通知する。
−操作部−
操作部50は、MFP100の備えたUIの総体であり、操作パネル51、メモリーインターフェース(I/F)52、およびネットワーク(LAN)I/F53を含む。これらを利用して操作部50は、ユーザー操作または外部の電子機器から各種ジョブの処理要求を受け付け、その要求を主制御部60へ伝える。特にジョブが印刷である場合、操作部50は印刷対象の画像データと共に印刷条件を、ジョブ処理の要求元から取得する。すなわち、操作部50は条件取得手段として機能する。印刷条件の設定項目には、たとえば、印刷対象のシートのサイズ、紙種、姿勢(縦置きと横置きとの別)、部数、カラー/モノクロの別、画質が含まれる。これらの条件を規定するパラメーターの値を操作部50は操作情報に組み込み、印刷対象の画像データと共に主制御部60へ提供する。
操作パネル51は、押しボタン、タッチパネル、およびディスプレイを含む。このディスプレイに操作パネル51は、操作画面、各種パラメーターの入力画面等のグラフィックスユーザーインターフェース(GUI)画面を表示する。操作パネル51はまた、押しボタンの中からユーザーが押下したものを識別し、またはタッチパネルの中からユーザーが触れた位置を検出し、その識別または検出に関する情報を操作情報として主制御部60へ伝える。メモリーI/F52は、図3が示す主制御部60の基板に設けられたコネクタの中にUSBポートまたはメモリーカードスロットを含み、それらを通して、USBメモリー、HDD等の可搬性記憶装置PMDから直に印刷対象の画像データを取り込む。LANI/F53は、図3が示す主制御部60の基板に実装されたLANカードを利用して外部ネットワークと有線または無線で通信し、そのネットワークに接続されたパーソナルコンピューター(PC)等の電子機器から印刷条件と印刷対象の画像データとを受信する。
−主制御部−
主制御部60は、図3の示す1枚の印刷回路基板に実装された集積回路であり、CPU61とメインメモリー62とを含む。CPU61は各種プログラムの実行手段である。メインメモリー62は、それらのプログラムの保存領域と共に、CPU61がプログラムを実行する際の作業領域を含む。
CPU61は1つのMPUで構成され、各種プログラムに従い、バス90を通して他の要素10、20、…から操作情報等の各種情報を取得して処理し、その処理結果に基づいて制御出力を生成して各要素10、…へ送信する。「制御出力」とは、送信先に対する命令、および送信先に提供されるべきデータを意味する。こうして、CPU61はそれら他の要素10、…に対する制御主体として機能する。この機能は、実行対象のプログラムの種類に応じて多様に変化する。たとえば、CPU61は操作部50にGUI画面を表示させ、その画面に対するユーザー操作を受け付けさせる。この操作に応じて操作部50から通知される操作情報に基づき、CPU61は、印刷モード、コピーモード、スキャンモード、待機(低電力)モード、スリープモード等、MFP100の動作モードを決定し、その動作モードへの移行を各要素10、…に指示する。CPU61は更に、動作モードの切り換えに必要な情報を各要素10、…へ提供する。たとえば印刷ジョブの処理要求に応じて印刷モードへの移行を指示する場合、CPU61は、そのジョブにおける印刷条件に従い、給送部10には、給送対象のシートの紙種と枚数、搬送ローラー12P、…の回転のタイミング、シートの搬送速度の目標値を指定し、作像部20には、画像データ、作像のタイミングを提供し、定着部30には、定着ローラー31の目標温度、ヒーターの発熱量を指定し、排紙部40には、図2の示す分岐点BPからのシートの送出先と、分岐点BPにシートが到着するタイミングとを指示する。
メインメモリー62はRAM621とROM622とを含む。RAM621は、DRAM、SRAM等の揮発性半導体メモリー装置であり、CPU61に作業領域を提供すると共に、操作部50が受け付けた印刷対象の画像データを保存する。ROM622は書き込み不可の不揮発性記憶装置と書き換え可能な不揮発性記憶装置との組み合わせで構成されている。前者はファームウェアを格納する。ファームウェアには、MFP100の電源投入時にCPU61が必ず最初に実行するブートプログラムが含まれる。後者は、EEPROM、フラッシュメモリー、SSD等の半導体メモリー装置、またはHDDを含み、各種プログラムを記憶すると共に、CPU61に環境変数等、長期保存の必要なデータの記憶領域を提供する。ROM622に記憶されたプログラムには、ADF110、スキャナー120、およびプリンター130の機構部10、…に対する制御プログラム、すなわちメカニカルコントローラー(略して「メカコン」ともいう。)、RTOS等のOS、ハイパーバイザー等のミドルウェア、およびこれらをプラットフォームとするアプリケーションプログラムが含まれる。
RAM621、ROM622の含む記憶領域の全体は1つのメモリー空間にマップされる。すなわち、いずれの記憶領域にも固有の論理アドレスが割り振られる。このメモリー空間には更に、機構部10、…の駆動部10D、…が含むレジスターもマップされる(メモリマップドI/O)。これにより、CPU61は機構部10、…のレジスターへのアクセス(以下、「I/Oアクセス」という。)をメインメモリー62へのアクセスと区別することなく、同様に実行可能である。すなわち、CPU61は、メモリー空間内の特定のアドレスへ制御出力を書き込むことにより、そのアドレスが割り振られたレジスターを持つ機構部へ指示を送ることができる。CPU61はまた、別のアドレスからデータを読み出すことにより、そのアドレスが割り振られたレジスターを持つ機構部から情報、たとえば通紙センサー1FS、…から送出される検出信号の状態を取得することができる。
メインメモリー62に保存されたアプリケーションプログラムのうち画像形成プログラムは、印刷ジョブの処理要求が操作部50からCPU61へ通知されたことに応じて実行される。この実行によりメカニカルコントローラー62RがRAM621に展開される。メカコン62Rは、プリンター130の機構部10、…をCPU61に制御させるリアルタイム型プログラムであり、そのサイズは一般に数十KB程度である。
アプリケーションプログラムにはその他に、画像処理、UI、LAN通信のそれぞれをCPU61に制御させるベストエフォート型プログラム62Bが含まれる。各プログラム62Bはそのサイズが一般にメカコン62Rの数倍、すなわち百数十KB〜数MB程度である。画像処理プログラムはCPU61に、操作部50が取得した印刷対象の画像データに対し、たとえばRGBからCYMKへの色変換とハーフトーン処理とを実行させる。UIプログラムはCPU61に、たとえば操作部50が条件取得手段として機能するように操作部50を制御させる。
[CPUのアーキテクチャ]
CPU61はコア61Cとキャッシュメモリー61Mとを含む。コア61CはたとえばRISC(reduced instruction set computer)プロセッサーであり、特にプログラムの実行にロードストアアーキテクチャを使用する。すなわち、コア61Cは、内部レジスターへ読み込まれたデータに対してのみ、演算等の処理を行う。これにより、コア61Cによるメインメモリー62へのアクセスとI/Oアクセスとには基本的に、アクセス先からのデータの読み出し(ロード)とアクセス先へのデータの書き込み(ストア)との2種類しかない。キャッシュメモリー61Mは、メインメモリー62の含む記憶素子と比べて小容量ではあるが、読み書きの高速な記憶素子、たとえばSRAMを含む。具体的には、RAM621の容量が数GB程度であり、アクセス時間が数百n秒程度であるのに対し、キャッシュメモリー61Mの容量は数十KB程度であり、アクセス時間は数十n秒程度である。キャッシュメモリー61Mはコア61Cとメインメモリー62との間のデータ伝送路の中間に配置され、コア61Cがメインメモリー62に対して読み書きした命令とデータとのうち最新のものを記憶する。キャッシュメモリー61Mは更に、コア61Cがメインメモリー62に対して読み書きしようとする命令またはデータをすでに記憶している場合にはその命令/データを、メインメモリー62に代わってコア61Cに提供し、またはコア61Cに代わってメインメモリー62へ書き込む。キャッシュメモリー61Mはメインメモリー62よりも読み書きが高速であるので、命令/データの読み書きにおけるコア61Cの待ち時間を短縮することができる。
−キャッシュメモリーの基本構造−
図5の(a)は、キャッシュメモリー61Mの構成を示すブロック図である。キャッシュメモリー61Mはキャッシュコントローラー611とメモリーアレイ612とを含む。キャッシュコントローラー611は、メインメモリー62に対する命令とデータ(以下、「ワード」と総称する。)の読み書きを、コア61Cとは独立して自動的に行う機能を持つハードウェアである。メモリーアレイ612はSRAM素子のマトリクスである。コア61Cからメインメモリー62へ向けてロード/ストア要求が送信されると、キャッシュコントローラー611はまず、その要求がメインメモリー62へ届く前に、その要求を傍受する。キャッシュコントローラー611は次に、その要求の宛先アドレスADRに記憶されたワードがメモリーアレイ612にすでに記憶されているか否かを確認する。そのワードが記憶されている場合、キャッシュコントローラー611はロード/ストア要求をメインメモリー62へ渡すことなく、メモリーアレイ612からそのワードCMD/DATをコア61Cへ送信し、またはメモリーアレイ612内のそのワードを、コア61Cから送出されるワードに書き換える。そのワードが記憶されていない場合、キャッシュコントローラー611はロード/ストア要求をメインメモリー62へ渡す。ロード要求に対してはメインメモリー62からコア61CへワードCMD/DATが転送され、ストア要求に対してはコア61Cからメインメモリー62へワードが転送されるので、キャッシュコントローラー611はそのワードCMD/DATを傍受してメモリーアレイ612にコピーする。
図5の(b)はメモリーアレイ612のデータ構造を示す模式図である。メモリーアレイ612はたとえば256行のメモリー素子列、すなわちキャッシュラインCLN0、CLN1、…、CLN255を含む。各キャッシュラインは、ディレクトリストアDRS、ステータスビットSTT、データセクションDTSを含む。ディレクトリストアDRSにはキャッシュタグCTGが格納され、データセクションDTSにはワードWRD0、WRD1、…、WRD3が複数コピーされる。キャッシュタグCTGは、データセクションDTSにコピーされたワードWRD0、…のオリジナルが記憶されたメインメモリー62内のアドレスの上位ビットを表す。同じアドレスの下位ビットは、そのワードを含むキャッシュラインの通し番号(「セットインデックス」という。)と、データセクションDTS内でのそのワードの順番(「データインデックス」という。)との組み合わせで表現される。1つのワードが32ビットで表され、1行のキャッシュラインには4つのワードがコピー可能である場合、メモリーアレイ612全体では4KBのワードがキャッシュ可能である。ステータスビットSTTは、有効ビットvとダーティービットdとを含む。有効ビットvは、自身を含むキャッシュラインが有効であるか否か、すなわち、そのデータセクションDTS内のワードWRD0、…がコア61Cの利用可能な最新のものであるか否かを示すフラグである。ダーティービットdは、自身を含むキャッシュラインのデータセクションDTSにコピーされたワードWRD0、…がメインメモリー62内のオリジナルとは異なるか否かを示すフラグである。
図5の(b)には、キャッシュコントローラー611によるメモリーアレイ612のアクセス方法も併せて示されている。キャッシュコントローラー611はロード/ストア要求を傍受したとき、まずその宛先アドレスADRを、タグフィールドTGF、セットインデックスフィールドSID、データインデックスフィールドDIDの3つに分ける。宛先アドレスADRが32ビットのデータ列([31:0])で表される場合、タグフィールドTGFはアドレスADRの最上位ビットから20ビット目までの20ビット([31:12])から成り、セットインデックスフィールドSIDは21ビット目から28ビット目までの8ビット([11:4])から成り、データインデックスフィールドDIDは残りの4ビット([3:0])から成る。キャッシュコントローラー611は次に、256行のキャッシュラインCLN0、…の中から、セットインデックスフィールドSIDの示す数値とセットインデックスが等しいキャッシュラインCLN2を選択する。そのディレクトリストアDRSに格納されたキャッシュタグCTGをキャッシュコントローラー611は、宛先アドレスADRのタグフィールドTGFと照合する。キャッシュタグCTGがタグフィールドTGFと一致した場合、キャッシュコントローラー611は更に有効ビットvの状態を確認する。キャッシュラインCLN2が有効であることを有効ビットvが示す場合(この状態を「キャッシュヒット」と呼ぶ。)、このキャッシュラインCLN2のデータセクションDTSには、宛先アドレスADRに記憶されたワードとしてコア61Cが利用可能な最新のワードがコピーされている。したがって、キャッシュコントローラー611はロード/ストア要求をメインメモリー62へ渡さず、そのデータセクションDTSから、データインデックスフィールドDIDの示す数値とデータインデックスが等しいワードWRD1をコア61Cへ送信し、またはそのワードWRD1をコア61Cから送出されるワードCMD/DATに書き換える。キャッシュタグCTGがタグフィールドTGFと一致しなかった場合、またはキャッシュラインCLN2が無効であることを有効ビットvが示す場合(この状態を「キャッシュミス」と呼ぶ。)、このキャッシュラインCLN2のデータセクションDTSには、宛先アドレスADRに記憶されたワードとしてコア61Cが利用可能なワードは存在しない。したがって、キャッシュコントローラー611はロード/ストア要求をメインメモリー62へ渡す。ロード要求に対してはメインメモリー62からコア61CへワードCMD/DATが転送され、ストア要求に対してはコア61Cからメインメモリー62へワードが転送されるので、キャッシュコントローラー611はそのワードCMD/DATを傍受し、宛先アドレスADRに基づいて検索された先のキャッシュラインCLN2のデータセクションDTSにコピーする。
−キャッシュロックダウン−
図6の(a)は、通常の状態でキャッシュミスが生じた場合におけるキャッシュメモリー61Mの動作を示す模式図である。キャッシュミスが生じた場合、宛先アドレスADRに基づいてキャッシュコントローラー611が検索したキャッシュラインCLNNには一般に、宛先アドレスADRと下位ビットが一致するものの、上位ビットが異なるアドレスのワードが記憶されている。キャッシュコントローラー611はそのキャッシュラインCLNNの有効ビットvの状態を確認し、キャッシュラインの有効を示す状態、たとえばv=1であれば、無効を示す状態v=0へ遷移させ、すなわち有効ビットvを無効化する。キャッシュコントローラー611は更にそのキャッシュラインCLNNのダーティービットdの状態を確認する。データセクションDTSにコピーされたワードがメインメモリー62内のオリジナルとは異なることをダーティービットdが示す場合、キャッシュコントローラー611はそのデータセクションDTS内のワードCMD/DATでメインメモリー62内のオリジナルを書き換える。こうして、そのキャッシュラインCLNNが、メインメモリー62またはコア61Cから送出される新たなワードをコピーするための領域として確保される。
図6の(b)は、コア61Cからキャッシュロックダウンが指示された状態でキャッシュミスが生じた場合におけるキャッシュメモリー61Mの動作を示す模式図である。キャッシュメモリー61Mに対してコア61Cはキャッシュロックダウン手段としての機能を持つ。「キャッシュロックダウン(CLD)」とは、キャッシュミスに伴う有効ビットvの無効化とデータセクションDTSへのワードの上書きとの禁止をキャッシュコントローラー611に対して指示すること、またはその禁止後のキャッシュメモリー61Mの状態をいう。したがって、CLDがコア61Cから指示された時点ですでにメモリーアレイ612にコピーされているワードは、その時点以降、キャッシュミスが生じても他のワードに上書きされることなくメモリーアレイ612に保持され、すなわちロックダウンされる(閉じ込められる)。この状態は、CLDの解除がコア61Cからキャッシュコントローラー611に指示されるまで持続する。
[画像形成プログラムの模擬実行と本実行]
CPU61は印刷ジョブの処理要求に応じて画像形成プログラムを実行する。この際、CPU61は画像形成プログラムをまず模擬実行し、その模擬実行の完了後に画像形成プログラムを本実行する。「本実行」とは、プリンター130に通常の印刷処理を行わせるための実行モードをいう。「模擬実行」とは、本実行の含む処理のうち、機構部10、…に対するI/Oアクセスを実際には行わない実行モードをいう。模擬実行中、CPU61は入出力模擬手段としても機能する。すなわち、CPU61は、各機構部10、…へ送信すべき制御出力を遮断すると共に、送信先の機構部のセンサーからその制御出力に応じて送出されるはずの検出信号を模擬的に作成する。これにより、模擬実行中、CPU61はいずれの機構部からの応答も実際には待つ必要がないので、模擬実行は本実行よりも、シート1枚あたりの処理時間等の実行周期が短縮される。模擬実行の完了後、本実行に先立ってCPU61はキャッシュメモリー61Mに、模擬実行中に記憶したメカコン62Rのワードをロックダウンさせる。これにより、本実行では、キャッシュメモリー61Mにロックダウンされたワードに従ってメカコンが実行され、他のプログラムが並列に実行されてもそれらのワードが他のワードに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。
図7の(a)は、画像形成プログラムの実行開始直後におけるCPU61の動作を示す模式図である。まず、コア61Cがキャッシュコントローラー611へ、メモリーアレイ612のフラッシュ命令CFLを送信する。この命令CFLに応じてキャッシュコントローラー611はメモリーアレイ612のフラッシュを行う。「フラッシュ」とは、すべてのキャッシュラインCLN0、…において有効ビットvを無効化する(v=1→0)処理をいう。データセクションにコピーされたワードがメインメモリー62内のオリジナルとは異なることをダーティービットが示すキャッシュラインCLNNに対しては、キャッシュコントローラー611はそのデータセクション内のワードCMD/DATでメインメモリー62内のオリジナルを書き換える。こうして、すべてのキャッシュラインCLN0、…が新たなワードのコピー領域として確保される。
図7の(b)は、画像形成プログラムの模擬実行中におけるCPU61の動作を示す模式図である。キャッシュメモリー61Mのフラッシュ完了後、コア61Cはメインメモリー62に対し、メカコンのロード要求ADRを送信する。キャッシュメモリー61Mはこの要求ADRを傍受してキャッシュヒット/ミスを判別し、ミス時には、その要求ADRに応じてメインメモリー62からコア61Cへ送られるワードCMD/DATをメモリーアレイ612へコピーする。こうして、実行処理の進行に伴ってメモリーアレイ612には、メカコンの含むワードCMD/DATがキャッシュされる。
メカコンの含むワードのうち、プリンター130の駆動部10D、…に対するI/Oアクセス命令をコア61Cはスキップする。これにより、コア61CはI/Oアクセスに関するワードをメインメモリー62から読み出さないので、それらのワードをメモリーアレイ612にキャッシュさせることはできない。しかし、コア61Cは、駆動部10D、…のレジスターへ書き込むべき命令ACSを遮断することができる。コア61Cは更に、その命令ACSに応じて駆動部10D、…が自身のレジスターに書き込むはずの応答情報RSP、たとえば通紙センサー1FS、…の検出信号に関する情報を模擬的に作成する。これらの情報は、シートがジャム等の不具合を起こすことなく正常に搬送される場合に通紙センサー1FS、…がそのシートを検出すべきタイミング等、印刷処理が正常に進行する場合に予想される応答情報を模倣する。これらの模擬的な応答情報RSPをコア61Cは機構制御に利用する。模擬的な応答情報の作成時間は機構部からの実際の応答時間よりも短いので、模擬実行は本実行よりも実行周期が短縮される。
図8の(a)は、画像形成プログラムの本実行中におけるCPU61の動作を示す模式図である。模擬実行により、1枚等、所定枚数分の印刷処理が完了した後、コア61Cはまずキャッシュコントローラー611に対してCLDを指示する。この指示を受けた時点以降、キャッシュコントローラー611は、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとをいずれも行わない。したがって、模擬実行中にメモリーアレイ612にコピーされたメカコンのワードはその時点以降、キャッシュミスが生じても他のワードに上書きされることなく、メモリーアレイ612にロックダウンされる。本実行では、メカコンの含む、印刷条件に適った実行対象の命令のうち、プリンター130の駆動部10D、…に対するI/Oアクセス命令以外はメモリーアレイ612にすでにキャッシュされている。したがって、機構制御におけるキャッシュヒット率が安定に、かつ実質上100%に等しい値に維持される。
図8の(b)は、画像形成プログラムの本実行の完了時におけるCPU61の動作を示す模式図である。本実行によりすべてのシートの印刷処理が完了した後、コア61Cはまず、キャッシュコントローラー611に対してCLDの解除CRLを指示する。この指示を受けた時点以降、キャッシュコントローラー611は、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとを再開する。したがって、メモリーアレイ612には、画像処理、UI、LAN通信等、メカコン以外のプログラムもキャッシュされる。
[印刷条件に応じた模擬的な応答情報の態様変化]
画像形成プログラムの模擬実行中、コア61Cは、プリンター130の駆動部10D、…のレジスターへ書き込むべき命令ACSを遮断し、その命令ACSに対する駆動部10D、…の応答情報RSPを模擬的に作成する。このときに想定されるべきプリンター130の機構部10、…の動作ではタイミング等の詳細が、実際には、印刷条件によって異なる。たとえば、搬送対象のシートの紙種が異なれば、給紙元の給紙カセットの位置、シートの搬送速度の目標値が異なるので、シートの搬送経路と搬送距離、そのシートを検知する通紙センサーの位置、その検知のタイミングが異なる。したがって、模擬実行において印刷条件が標準的なものに一律に設定されると、本実行では、実際の印刷条件と標準的なものとの間の差異に起因するキャッシュミスが実行時間を遅らせ、ヒット率の安定化を阻む危険性がある。この危険性を回避する目的でCPU61は、画像形成プログラムの模擬実行中、模擬的に作成すべき応答情報RSPを印刷条件に合わせて変更する。具体的にはたとえば、印刷条件の次の項目のうち、少なくとも1つに合わせて応答情報RSPが変更される。(1)シートの給紙場所または排紙場所。(2)片面印刷と両面印刷とのいずれを示すか。(3)シートのサイズ、紙種、または姿勢。(4)カラーモードとモノクロモードとのいずれを示すか。
図9の(a)は、シートの給紙場所と紙種との組み合わせ別に、通紙センサー1FS、2FS、CS、TS、ESによるシートの検出時間を示す表である。図2から明らかなとおり、給紙カセットが1段目11aと2段目11bとのいずれであるかにより、まず、シートの搬送経路が異なるので、シートが給紙センサー1FS、2FSと縦搬センサーCSとのそれぞれを通過するか否かが異なる。次に、給紙カセット11a、11bからタイミングローラー14までの搬送経路の長さが異なるので、シートが給紙カセット11a、11bを離脱してから、タイミングセンサーTSと排紙センサーESとのそれぞれに検出されるまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、各センサーCS、TS、ESに検出される時間が異なる。こうして、給紙カセット11a、11bと紙種との組み合わせごとに各センサー1FS、2FS、CS、TS、ESによる検出時間が、TF1〜TF2、TF3〜TF4、TC3〜TC4、TT1〜TT4、TE1〜TE4と異なる。これらの値は、給紙カセット11a、11bから排紙センサーESまでシートが正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報RSPをコア61Cは作成し、給紙カセット11a、11bから排紙センサーESまでのシート搬送に遅れがないことの確認、給紙ローラー12P、12F、12Gの回転/停止による紙間の調節、およびタイミングローラー14の起動タイミングの制御に利用する。
図9の(b)は、シートの排紙場所と紙種との組み合わせ別に、シートが排紙センサーESの通過に要する時間を示す表である。図2から明らかなとおり、排紙場所が排紙トレイ46と反転トレイ47とのいずれであるかにより、まず、シートに搬送力を与える搬送ローラー43、45と排紙センサーESとの間の搬送経路の長さが異なるので、シートの先端が排紙センサーESに検出されてから、その搬送ローラー43、45に到達するまでの時間が異なり、その後、シートの後端が排紙センサーESを通過するまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、1枚のシートが排紙センサーESに検出され続ける時間が異なる。こうして、排紙場所46、47と紙種との組み合わせごとに排紙センサーESの通過時間がPE1〜PE4と異なる。これらの値は、定着部30から排紙場所46、47までシートが正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報RSPをコア61Cは作成し、定着ローラー31からのシートの送出に遅れがないことの確認、排紙ローラー43と反転ローラー45との回転/停止タイミングの制御に利用する。
図9の(c)は、シートの紙種、サイズ、姿勢の組み合わせ別に、タイミングローラー14がシートの後端をタイミングセンサーTSの検出範囲から引き出すのに要する時間を示す表である。シートのサイズはもちろん、その姿勢が縦置きか横置きかにより、搬送経路に沿ったシートの長さが異なるので、タイミングローラー14の回転開始から、シートの後端がタイミングセンサーTSに検出されなくなるまでの時間が異なる。さらに、普通紙と厚紙とでは搬送速度が異なるので、1枚のシートがタイミングセンサーTSに検出され続ける時間が異なる。こうして、シートの紙種、サイズ、姿勢の組み合わせごとにタイミングセンサーTSの通過時間がPT1〜PT8と異なる。これらの値は、タイミングローラー14がシートを中間転写ベルト23の駆動ローラー23Rと2次転写ローラー24との間のニップへ正常に通紙する場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報RSPをコア61Cは作成し、タイミングローラー14からのシートの送出に遅れがないことの確認、タイミングローラー14の停止タイミングの制御に利用する。
図9の(d)は、片面印刷と両面印刷とのそれぞれにおいて通紙センサーTS、ES、1RS、2RSがシートを検出する時間と切換爪41の駆動ソレノイドSLの動作時間とを示す表である。図2が示すように、片面印刷とは異なり両面印刷では、シートが反転口44でスイッチバックし、更に循環路48を通ってタイミングローラー14へ戻る。したがって、片面印刷と両面印刷とでは、まず、シートが通紙センサー1RS、2RSを通過するか否かが異なる。次に、切換爪41の先端を上下させる必要の有無が異なる。こうして、1枚のシートが、片面印刷ではタイミングセンサーTSと排紙センサーESとに1回ずつ検出されるだけであるのに対し、両面印刷ではタイミングセンサーTSと排紙センサーESとに2回ずつ検出され、更に循環路48の通紙センサー1RS、2RSにも1回ずつ検出される。さらに、片面印刷とは異なり両面印刷では、駆動ソレノイドSLがシート1枚あたりに2回ずつ動作して切換爪41の先端を上下させる。図9の(d)の表が示す両面印刷における各センサーTS、ES、1RS、2RSによるシートの検出時間の値DT1、DT2、DE1、DE2、DR1、DR2、および駆動ソレノイドSLの動作時間の値TS1、TS2は、シートが両面印刷時の搬送経路、特に循環路48を正常に搬送される場合のタイミングを表す。画像形成プログラムの模擬実行中、これらの値に合わせて模擬的な応答情報RSPをコア61Cは作成し、両面印刷におけるシート搬送に遅れがないことの確認、反転口44でのシートのスイッチバックにおける反転ローラー45の回転の正逆の切り換えタイミングの制御に利用する。
図9の(e)は、プリンター130の動作モードがカラーモードとモノクロモードとの別に、印刷エンジンにおける駆動対象のモーターを示す表である。図2から明らかなとおり、カラーモードでは4つの作像ユニット21Y、21M、21C、21Kがすべてトナー像を作成するので、4本の感光体ドラム25Y、25M、25C、25Kがすべて回転する。それに対してモノクロモードでは、使用される色が、Y、M、C、Kのうちいずれか1つ、たとえばKだけであるので、対応する作像ユニット21Kでのみ感光体ドラム25Kが回転する。画像形成プログラムの模擬実行では、コア61Cが、感光体ドラム25Y、…の駆動モーターYM、MM、CM、KMのうち、図9の(e)の表が示すものの回転数を模擬的な応答情報RSPに組み込み、これらの駆動モーターYM、…の制御に利用する。
図9の示すような表は、メカコンと共に画像形成プログラムの中に組み込まれている。これらの表はメカコンと同様に、画像形成プログラムの模擬実行時にメインメモリー62に展開される。
模擬実行中に繰り返されるべき印刷処理の回数は一般に、印刷条件に合わせて異なる値に規定される。たとえば、片面印刷では、シート1枚分の印刷処理に必要なメカコンの全体が一通り含まれるので、規定回数が“1”に設定されればよい。それに対し、両面印刷では、ジョブの規定する印刷対象のシートが複数枚である場合、その枚数と、循環路48を含めた搬送経路全体で搬送ローラー群の制御が周期的になるまでに必要な印刷枚数とのいずれか少ない方に、規定回数が設定される。この規定回数も、図9の示す表と同様に、画像形成プログラムの中に組み込まれている。
[画像形成プログラムの実行処理の流れ]
図10は、画像形成プログラムの実行処理のフローチャートである。この処理は、CPU61が操作部50から印刷ジョブの処理要求を通知されたことに応じて開始する。
ステップS101では、メモリーアレイ612のフラッシュ命令CFLを、コア61Cがキャッシュコントローラー611へ送信する。この命令CFLに応じてキャッシュコントローラー611はメモリーアレイ612のフラッシュを行う。これにより、すべてのキャッシュラインCLN0、…において有効ビットが無効化される。その後、処理はステップS102へ進む。
ステップS102では、CPU61が、画像形成プログラムをメインメモリー62に展開すると共に、その模擬実行中に応答情報を模擬的に作成するのに必要なパラメーターの値を印刷条件に合わせて変更し、メインメモリー62に設定する。具体的には、コア61Cが操作部50からの印刷ジョブの処理要求から印刷条件を解読し、図9の表が示すような、印刷条件の項目と機構制御に必要なパラメーターの値との間の対応関係に基づき、それらパラメーターの値を印刷条件に合わせて選択する。その後、処理はステップS103へ進む。
ステップS103では、コア61Cが画像形成プログラムを模擬実行し、1枚等、所定枚数分の印刷処理を行う。特にコア61Cは、メカコンの含むワードのうち、プリンター130の駆動部10D、…に対するI/Oアクセス命令をスキップする。その代わり、その命令に対する駆動部10D、…からの応答情報をコア61Cが、ステップS102で用意したパラメーターの値に基づいて模擬的に作成する。これにより、コア61Cがメインメモリー62に対して読み書きするメカコンの含むワードは、機構部10、…へのI/Oアクセス命令を除き、キャッシュメモリー61Mにキャッシュされる。その後、処理はステップS104へ進む。
ステップS104では、画像形成プログラムの模擬実行の完了後、その本実行に先立ってCPU61はキャッシュメモリー61Mに、模擬実行中に記憶したメカコンのワードをロックダウンさせる。これにより、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとが禁止される。その後、処理はステップS105へ進む。
ステップS105では、コア61Cが画像形成プログラムを本実行し、印刷ジョブの示す部数のシートを印刷する。本実行では、メカコンの含む、印刷条件に適った実行対象の命令のうち、プリンター130の機構部10、…へのI/Oアクセス命令以外はすでにキャッシュメモリー61Mにコピーされている。これらの命令は、キャッシュミスが生じても他のワードに上書きされることなくメモリーアレイ612にロックダウンされているので、実質上すべてキャッシュヒットする。I/Oアクセス命令だけは、最初の実行時、キャッシュミスに応じてメインメモリー62から読み出され、キャッシュメモリー61Mにキャッシュされる。その後、処理はステップS106へ進む。
ステップS106では、画像形成プログラムの本実行により、印刷ジョブが規定する部数のシートすべての印刷処理が完了した後、コア61Cはキャッシュメモリー61MにCLDの解除を指示する。これにより、キャッシュミスに伴う有効ビットの無効化とデータセクションへのワードの上書きとが再開されるので、キャッシュメモリー61Mは、画像処理、UI、LAN通信等、メカコン以外のプログラムにも開放される。その後、処理は終了する。
−本実行におけるメカコン処理の例−
図11は、図10の示すステップS105における本実行による機構制御のうち、給送ローラー群12P、12F、12Rの制御のフローチャートである。この制御は、給送ローラー群12P、…を間欠的に回転させて紙間を所定値に維持させる。また、給紙センサー1FS、2FS、縦送センサーCS、タイミングセンサーTSの各出力から、シートの通過タイミングに遅れがないか否か、紙間が正常な値に維持されているか否かが判断される。
ステップS201では、コア61Cがプリンター130の給送部10に給紙カセット11aまたは11bの給送ローラー群12P、…の回転を開始させる。具体的には、まずコア61Cが、メカコンに従って給送ローラー群12P、…の回転命令を、給送部10の駆動部10Dのレジスターに書き込む。駆動部10Dではそのレジスターを制御回路が監視し、そこに書き込まれた回転命令に従い、給送モーターM1またはM2を起動させる。これにより、給送ローラー群12P、…が回転を開始する。その後、処理はステップS202へ進む。
ステップS202では、コア61Cが給送部10の駆動部10Dのレジスターを監視して、そこに通紙センサー1FS、2FS、CS、TSの出力結果が書き込まれたか否かを確認する。書き込まれていれば、コア61Cは更にそれらの出力結果から、シートが正常にタイミングローラー14まで到達したか否かを確認する。正常であれば処理がステップS203へ進み、異常であれば処理がステップS206へ進む。
ステップS203では、通紙センサー1FS、2FS、CS、TSの出力結果は、シートが正常にタイミングローラー14まで到達したことを示す。したがって、その到達時刻から所定時間が経過した時点でコア61Cは給送部10に、給送ローラー群12P、…の回転を停止させる。具体的には、まずコア61Cが、メカコンに従って給送ローラー群12P、…の停止命令を給送部10の駆動部10Dのレジスターに書き込む。駆動部10Dの制御回路は、そのレジスターに書き込まれた停止命令に従い、給送モーターM1またはM2を停止させる。これにより、給送ローラー群12P、…が回転を停止する。その後、処理はステップS204へ進む。
ステップS204では、印刷対象のシートのうち、給送部10が給紙カセット11aまたは11bからまだ繰り出していないシートが残っているか否かを、コア61Cが確認する。具体的には、まず、給送ローラー群12P、…が繰り出し終えたシートの枚数の出力命令を、コア61Cが給送部10の駆動部10Dのレジスターに書き込む。この命令に応じてそのレジスターに駆動部10Dの制御回路が書き込んだ枚数をコア61Cが取得し、その枚数が印刷ジョブの規定する枚数未満か否かを確認する。残っていれば処理がステップS205へ進み、残っていなければ処理が終了する。
ステップS205では、給紙カセット11aまたは11bからまだ繰り出させていない印刷対象のシートが残っている。したがって、ステップS203における給送ローラー群12P、…の停止時刻から、紙間が開くのに必要な時間が経過したか否かをコア61Cは確認する。具体的には、まず、その停止時刻からの経過時間の出力命令を、コア61Cが給送部10の駆動部10Dのレジスターに書き込む。この命令に応じてそのレジスターに駆動部10Dの制御回路が書き込んだ時間値をコア61Cが取得し、その時間値を、紙間が開くのに必要な時間を表す閾値と比較する。その時間値が閾値以上であれば処理がステップS201から繰り返し、閾値未満であれば処理がステップS205を繰り返す。
ステップS206では、通紙センサー1FS、2FS、CS、TSのいずれかの出力結果は、シートが正常にタイミングローラー14まで到達したことを示していない。したがって、ステップS201において給送ローラー群12P、…がシートを繰り出した時刻から、そのシートが正常にタイミングローラー14まで到達するのに必要な時間が経過したか否かをコア61Cは確認する。すでに経過していれば処理がステップS207へ進み、まだ経過していなければ処理がステップS202から繰り返す。
ステップS207では、給送ローラー群12P、…がシートを繰り出した時刻から、そのシートが正常にタイミングローラー14まで到達するのに必要な時間がすでに経過している。したがって、コア61Cは操作部50に、ジャムを示す通知を操作パネルに表示させると共に、プリンター130の機構部10、…に印刷動作の中断を指示する。その後処理は中止される。
−模擬実行における機構制御の例−
図12は、図10の示すステップS103における模擬実行による機構制御のうち、図11の示す給送ローラー群12P、…の制御に相当する部分のフローチャートである。この制御では、給送部10の駆動部10Dに対するI/Oアクセス命令がスキップされ、その命令に対する応答情報が模擬的に作成される。
ステップS211では、コア61Cが、プリンター130の給送部10に対する給送ローラー群12P、…の回転命令をスキップする。これにより、給送部10の駆動部10Dのレジスターへ書き込まれるべき回転命令が遮断される。その後、処理はステップS212へ進む。
ステップS212では、コア61Cが、給送部10の駆動部10Dからの応答情報を模擬的に作成する。この模擬的な応答情報は、本実行において、駆動部10Dのレジスターへの回転命令の書き込みに応じてそのレジスターから読み出されるべき情報、具体的には通紙センサー1FS、2FS、CS、TSの各出力結果を模倣する。特に、この出力結果には、たとえば図9の(a)の表が示す各センサー1FS、…による検出時間TF1、…に合わせてコア61Cが計算した、シートが正常にタイミングローラー14まで到達したことを示す値が記載されている。その後、処理はステップS213へ進む。
ステップS213では、コア61Cがまず、給送部10の駆動部10Dのレジスターに対する監視をスキップする。コア61Cは次に、その監視で取得するはずの応答情報に代えて、ステップS212で作成した模擬的な応答情報を参照し、そこに書き込まれた給紙センサー1FSまたは2FSとタイミングセンサーTSとの出力結果から、シートが正常にタイミングローラー14まで到達したか否かを確認する。正常であれば処理がステップS214へ進み、異常であれば処理が分岐する。ただし、その模擬的な応答情報は必ず、シートが正常にタイミングローラー14まで到達したことを示すので、実際には処理は必ずステップS214へ進む。
ステップS214では、コア61Cが給送部10に対する給送ローラー群12P、…の停止命令をスキップする。この停止命令は、本実行であれば、シートがタイミングローラー14まで到達した時刻から所定時間が経過した時点で送出されるべきものである。このスキップにより、給送部10の駆動部10Dのレジスターへ書き込まれるべき停止命令が遮断される。その後、処理はステップS215へ進む。
ステップS215では、コア61Cが、本実行であれば給送部10が繰り出したはずのシートの枚数を確認する。具体的には、まず、給送ローラー群12P、…が繰り出し終えたシートの枚数の出力命令をコア61Cがスキップする。次に、この命令に応じて給送部10の駆動部10Dのレジスターにその制御回路が書き込んだであろう枚数を示す模擬的な応答情報をコア61Cが作成し、その枚数が、模擬実行において繰り返すべき印刷処理の規定回数、たとえば1回未満か否かをコア61Cが確認する。その規定回数未満であれば処理がステップS216へ進み、以上であれば処理が終了する。
ステップS216では、これまでに繰り返された印刷処理の回数がまだ規定回数未満であるので、コア61Cが給送部10の駆動部10Dからの応答情報を模擬的に作成する。この模擬的な応答情報は、ステップS203における給送ローラー群12P、…の停止時刻から、紙間が開くのに必要な時間が経過したことを示す。その後、処理はステップS217へ進む。
ステップS217では、ステップS203における給送ローラー群12P、…の停止時刻から、紙間が開くのに必要な時間が経過したか否かをコア61Cは確認する。具体的には、まず、その停止時刻からの経過時間の出力命令をコア61Cがスキップする。コア61Cは次に、その命令に応じて駆動部10Dから取得するはずの応答情報に代えて、ステップS216で作成した模擬的な応答情報を参照し、そこに書き込まれた時間値を閾値と比較する。その時間値が閾値以上であれば処理がステップS211から繰り返し、閾値未満であれば処理がステップS217を繰り返す。ただし、その模擬的な応答情報は必ず、閾値以上の時間値を示すので、実際には処理は必ずステップS211から繰り返す。
[実施形態の利点]
本発明の実施形態によるMFP100では、上記のとおり、印刷ジョブの処理要求に応じてCPU61が、画像形成プログラムの本実行に先立ち、まずそのプログラムを模擬実行する。模擬実行ではコア61Cが、メカコンの含むワードをメインメモリー62から読み出すので、それらのワードがキャッシュメモリー61Mにキャッシュされる。ただし、プリンター130の機構部10、…へのI/Oアクセス命令はコア61Cによりスキップされるので、本実行であればコア61Cから機構部10、…の駆動部10D、…へ送信されるべき制御出力が遮断される。その代わり、コア61Cは、その制御出力に応じて駆動部10D、…から取得されるはずの応答情報を模擬的に作成し、I/Oアクセス後の処理に利用する。模擬実行の完了後、本実行に先立ってコア61Cはキャッシュメモリー61Mに、模擬実行中に記憶したワードをロックダウンさせる。これらのワードが本実行では機構制御に利用される。これらのワードは、メカコンに他のプログラムが並列に実行されても、他のワードに上書きされることがない。したがって、機構制御におけるキャッシュヒット率が安定に維持される。こうして、コア61Cは機構制御の応答精度を高く維持したまま、リアルタイム型とベストエフォート型との両方のタスク処理に同じキャッシュメモリー61Mを共用することができる。
画像形成プログラムの模擬実行においてコア61Cは、メインメモリー62から読み出すメカコンのワードを、印刷条件に合わせて変更する。コア61Cは更に機構部10、…へのI/Oアクセス命令のスキップに伴い、模擬的に作成する駆動部10D、…からの応答情報を、印刷条件に合わせて変更する。このような印刷条件の利用により、キャッシュメモリー61Mには、メカコンの含むワードのうち、印刷条件に適ったワードがロックダウンされるので、キャッシュメモリー61Mにロックダウンさせるべきデータ量が最適化される。さらに、本実行におけるキャッシュヒット率が高いレベルで安定化するので、機構制御において保証されるべき各タスクの最大実行時間を短縮し、機構制御の応答精度をμ秒程度の高レベルに維持することが可能である。
[変形例]
(A)図1の示す画像形成装置100は電子写真方式のMFPである。本発明の実施形態による画像形成装置はその他にインクジェット方式の複合機であってもよく、レーザープリンター、インクジェットプリンター、ファクシミリ、またはコピー機等、いずれの単機能機であってもよい。
(B)図1の(b)、図2の示す構造は一例に過ぎず、他の構造であってもよい。たとえば、印刷エンジンは、タンデム方式の作像ユニット21Y、21M、21C、21Kに代えて、1つの回転部材に4つの作像ユニットが埋め込まれた4サイクル方式であってもよい。また、中間転写ベルト23が省略され、感光体ドラムがトナー像をシートに直接転写してもよい。露光部は、レーザー走査方式のもの26に代えて、発光ダイオード(LD)の2次元配列を利用するLDアレイ方式であってもよい。
(C)図4の示すメカコン62Rは、プリンター130の機構部10、…を対象とするものには限られず、ADF110、スキャナー120の含むメカコンを対象としてもよい。
(D)図4の示すCPU61は単一のコア61Cを含む。それとは別に、CPU61はマルチコアであってもよく、AMPにより特定のコアが機構制御専用に割り当てられてもよい。この場合、1次キャッシュはコア別に独立していてもよい。メカコン等のリアルタイム型プログラムと他の(ベストエフォート型)プログラムとの両方のタスク処理における上記のキャッシュメモリー61Mの共用技術は、2次または3次キャッシュ等、複数のコアに共用されるキャッシュメモリーに適用可能である。
(E)図5の(b)の示すキャッシュメモリー61Mのメモリーアレイ612では、256本のキャッシュラインCLN0、…、CLN255のすべてに異なるセットインデックス0〜255が割り振られている。この場合、メモリーアレイ612には、セットインデックスフィールドSIDが共通するメインメモリー62のアドレス群のうち、タグフィールドTGFが共通するアドレスだけが同時にマップ可能である。すなわち、それらのアドレスのワードだけが同時にキャッシュ可能である。
その他に、メモリーアレイ612の含む256本のキャッシュラインが同数ずつ、たとえば64本ずつのグループ(「ウェイ」または「セグメント」という。)に分割され、異なるウェイのキャッシュラインに同じセットインデックスが割り振られてもよい。セットインデックスが共通するキャッシュライン群を「セット」という。1つのセットのキャッシュラインには、セットインデックスフィールド、たとえば中間6ビットが共通するメインメモリー62のアドレス群のうち、タグフィールドの異なるアドレスが、最大でウェイと同数まで同時にマップ可能である。
図5の(b)が示すようにメモリーアレイ612が単一のウェイしか含まない場合、キャッシュロックダウンはキャッシュコントローラー611に対し、図6の(b)が示すように、すべてのキャッシュラインにおいてキャッシュミスに伴う有効ビットvの無効化とデータセクションDTSへのワードの上書きとの両方を禁止することにより実現する。一方、メモリーアレイ612が複数のウェイに分割されている場合、キャッシュコントローラー611はセットごとに、次のキャッシュミスの際に有効ビットを無効化すべきキャッシュライン(「ビクティム」という。)を選択する。したがって、コア61Cは、ビクティムの選択から除外すべきウェイをキャッシュコントローラー611に指定することにより、キャッシュロックダウンをウェイ単位で実現可能である。指定されたウェイでは、いずれのセットに所属するキャッシュラインもビクティムには選択されないので、いずれのキャッシュラインでもワードが上書きされない。こうして、データセクションへのワードの上書きが禁止されるまでもなく、そのウェイにはワードがロックダウンされる。
(F)MFP100には後処理装置が外付けされてもよい。この場合、印刷ジョブの処理には、後処理装置の含む機構部の制御が追加される。したがって、画像形成プログラムの模擬実行では、後処理装置のメカコンも併せて実行されてもよい。この場合、印刷条件には、後処理の要否とその種類とを規定する項目が付加されているので、これらの項目に合わせて異なる態様で後処理装置からの応答情報が模擬的に作成されてもよい。
図13の(a)は、MFP100に外付けされた中継ユニット140と後処理装置150との外観を示す斜視図である。中継ユニット140は、排紙トレイ46に代わり、それが取り外されたMFP100の筐体部分に組み込まれる。中継ユニット140は、排紙口42からシートを受け取って後処理装置150へ中継する。後処理装置150は、MFP100からの指示に応じて、排紙口42から中継ユニット140を通して受け取ったシートの束に対して後処理を行う。この後処理には、たとえばシートの束を整合する処理と、その束をステープルで綴じる処理とを含む。後処理装置150の上側排紙トレイ151にはシートが排紙口42から送出されたときの状態のままで積載され、下側排紙トレイ152にはシートの束が整合され、またはステープルで閉じられて積載される。
図13の(b)は、中継ユニット140と後処理装置150とに内蔵されたシートの搬送経路を示す模式図である。排紙口42は中継ユニット140内の経路へ繋がる。この経路には搬送ローラー群141、142、143が設置され、排紙口42から送出されたシートを後処理装置150へ中継する。後処理装置150では給紙ローラー161が、中継ユニット140からシートを受け取って筐体の中に引き込む。振分爪162は、その基端基端のまわりに揺動することによって先端を上下に移動させる。これにより、振分爪162は、給紙ローラー161が引き込んだシートを上側排紙ローラー163または縦送ローラー群164へ振り分ける。上側排紙ローラー163は、給紙ローラー161から振分爪162に沿って移動してきたシートを上側排紙トレイ151へ排紙する。搬送ローラー群164は、給紙ローラー161から振分爪162に沿って移動してきたシートを後処理部166へ向けて反転ローラー165まで搬送する。反転ローラー165はまず正転し、搬送ローラー群164が送出したシートを後処理部166へ送り込む。反転ローラー165は次に逆転し、後処理後のシートの束を後処理部166から引き出す。後処理部166は反転ローラー165から受け取ったシートを所定の枚数、蓄積して束にし、その束に対して整合処理、ステープルでの綴じ処理等の後処理を施す。下側排紙ローラー167は、反転ローラー165が後処理部166から引き出したシートの束を下側排紙トレイ152へ排紙する。
図13の(b)は示していないが、中継ユニット140と後処理装置150との搬送経路にも複数の通紙センサーが設置されている。これらのセンサーを利用して後処理装置150は、経路上を搬送中のシートの位置を検知して主制御部60へ通知する。この通知に応じて主制御部60は、図13の(b)が示す可動部材141−143、161−167の駆動用モーターまたはソレノイドを制御する。たとえば、シート搬送のタイミングに遅れが生じているか否かが判断され、それに基づき、中継ユニット140と後処理装置150との搬送経路上におけるジャム等の搬送不良が検出される。
画像形成プログラムの模擬実行では後処理制御プログラム、特に、図13の(b)が示す可動部材141−143、161−167の制御プログラムも実行される。後処理制御プログラムの含むワードもキャッシュメモリー61Mにキャッシュされ、模擬実行後にロックダウンされる。
模擬実行では、後処理制御プログラムの含むワードのうち、後処理装置150の駆動部に対するI/Oアクセス命令をコア61Cはスキップする。一方、コア61Cは、その命令に応じて後処理装置150の駆動部が自身のレジスターに書き込むはずの応答情報、たとえば通紙センサーの検出信号に関する情報を模擬的に作成し、制御に利用する。この情報は、シートがジャム等の不具合を起こすことなく正常に後処理される場合に、中継ユニット140と後処理装置150との内部の通紙センサーがそのシートを検出すべきタイミング等、後処理の正常な進行に伴う応答情報を模倣する。
コア61Cは特に、模擬的な応答情報を印刷条件に合わせて変更する。たとえば、後処理の要否に応じてシートの排紙先151、152が異なるので、駆動すべき搬送ローラーの種類と振分爪162の先端の向きとが異なる。1束あたりのシートの枚数が異なれば、後処理部166からの束の搬送速度の目標値が異なるので、反転ローラー165と下側排紙ローラー167との駆動モーターの回転数が異なる。これらの違いに合わせて、シートを検出すべき通紙センサーの種類、その検出のタイミング等、模擬的な応答情報の内容が変更される。
こうして、画像形成プログラムの模擬実行の完了時、キャッシュメモリー61Mには、後処理制御プログラムの含むワードのうち、印刷条件に適ったワードがロックダウンされる。その結果、キャッシュメモリー61Mにロックダウンさせるべきデータ量が最適化される。さらに、本実行におけるキャッシュヒット率が高いレベルで安定化するので、後処理制御において保証されるべき各タスクの最大実行時間を短縮し、後処理制御の応答精度をμ秒程度の高レベルに維持することが可能である。
本発明は画像形成装置に関し、上記のとおり、主制御部60が画像形成プログラムの本実行に先立ってそのプログラムを模擬実行し、そのプログラムのうち印刷条件に適った部分をキャッシュメモリー61Mにロックダウンする。このように、本発明は明らかに産業上利用可能である。
100 MFP
130 プリンター
10 給送部
11 給紙カセット
12P、12F、12R 給送ローラー群
13 縦送ローラー
14 タイミングローラー
20 作像部
21Y、21M、21C、21K 感光体ユニット
22Y、22M、22C、22K 1次転写ローラー
23 中間転写ベルト
23R 中間転写ベルトの駆動ローラー
23L 中間転写ベルトの従動ローラー
25Y、25M、25C、25K 感光体ドラム
24 2次転写ローラー
26 露光部
30 定着部
31 定着ローラー
32 加圧ローラー
40 排紙部
41 切換爪
42 排紙口
43 排紙ローラー
44 反転口
45 反転ローラー
46 排紙トレイ
47 反転トレイ
50 操作部
51 操作パネル
60 主制御部
61 CPU
61C コア
61M キャッシュメモリー
611 キャッシュコントローラー
612 メモリーアレイ
62 メインメモリー
1FS、2FS 給紙センサー
CS 縦送センサー
TS タイミングセンサー
ES 排紙センサー
1RS、2RS 通紙センサー

Claims (6)

  1. リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に1つのキャッシュメモリーを共用する画像形成装置であって、
    前記画像形成プログラムを模擬実行し、当該模擬実行の完了後に前記画像形成プログラムを本実行する実行手段と、
    前記画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、
    前記画像形成プログラムの模擬実行中、前記条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを前記画像形成プログラムから前記実行手段に読み出させ、当該命令に従って前記実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーから当該制御出力に応じて送出されるはずの検出信号を模擬的に、当該印刷条件に合わせて異なる態様で作成して前記実行手段へ渡す入出力模擬手段と、
    前記画像形成プログラムの模擬実行の完了後、本実行に先立って前記キャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン(CLD)手段と、
    前記キャッシュメモリーに加えてメインメモリーとプロセッサーとを含む制御部と、
    シートを搬送し、搬送中のシートの上に画像を形成する機構部と、
    ユーザーまたは外部の電子機器からデータを受け付ける操作部と、
    を備え、
    前記メインメモリーは、前記画像形成プログラムと前記他のプログラムとを記憶し、
    前記画像形成プログラムは、前記機構部を前記制御部に制御させるプログラムを含み、
    前記他のプログラムは、前記操作部が前記条件取得手段として機能するように、前記操作部を前記制御部に制御させるプログラムを含み、
    前記プロセッサーは、前記実行手段として機能すると共に、前記画像形成プログラムの模擬実行により前記入出力模擬手段と前記CLD手段としても機能し、
    前記入出力模擬手段は、前記画像形成プログラムの含む命令のうち前記機構部へのアクセス命令を前記実行手段にスキップさせることにより、当該アクセス命令に従って前記実行手段から前記機構部へ送信されるべき制御出力を遮断することを特徴とする画像形成装置。
  2. 前記条件取得手段が取得した印刷条件が示すシートの給紙場所または排紙場所に合わせて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項1に記載の画像形成装置。
  3. 前記条件取得手段が取得した印刷条件が片面印刷と両面印刷とのいずれを示すかに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項1または2に記載の画像形成装置。
  4. リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に1つのキャッシュメモリーを共用する画像形成装置であって、
    前記画像形成プログラムを模擬実行し、当該模擬実行の完了後に前記画像形成プログラムを本実行する実行手段と、
    前記画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、
    前記画像形成プログラムの模擬実行中、前記条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを前記画像形成プログラムから前記実行手段に読み出させ、当該命令に従って前記実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーから当該制御出力に応じて送出されるはずの検出信号を模擬的に、当該印刷条件に合わせて異なる態様で作成して前記実行手段へ渡す入出力模擬手段と、
    前記画像形成プログラムの模擬実行の完了後、本実行に先立って前記キャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン(CLD)手段と、を備え、
    前記条件取得手段が取得した印刷条件が示すシートのサイズ、紙種、または姿勢に合わせて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする画像形成装置。
  5. 前記条件取得手段が取得した印刷条件がカラーモードとモノクロモードとのいずれを示すかに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする請求項1から請求項4までのいずれかに記載の画像形成装置。
  6. リアルタイム性が要求される画像形成プログラムと、必ずしもリアルタイム性が要求されない他のプログラムとの実行に1つのキャッシュメモリーを共用する画像形成装置であって、
    前記画像形成プログラムを模擬実行し、当該模擬実行の完了後に前記画像形成プログラムを本実行する実行手段と、
    前記画像形成プログラムの模擬実行に先立ち、本実行の際に従うべき印刷条件を取得する条件取得手段と、
    前記画像形成プログラムの模擬実行中、前記条件取得手段が取得した印刷条件に合わせて異なる命令とデータとを前記画像形成プログラムから前記実行手段に読み出させ、当該命令に従って前記実行手段から装置各部へ送信されるべき制御出力を遮断し、装置各部に設けられたセンサーから当該制御出力に応じて送出されるはずの検出信号を模擬的に、当該印刷条件に合わせて異なる態様で作成して前記実行手段へ渡す入出力模擬手段と、
    前記画像形成プログラムの模擬実行の完了後、本実行に先立って前記キャッシュメモリーに、模擬実行中に記憶した命令とデータとをロックダウンさせるキャッシュロックダウン(CLD)手段と、を備え、
    後処理装置が外付けされているか否かに応じて、前記入出力模擬手段は、模擬的に作成すべき検出信号の態様を変更することを特徴とする画像形成装置。
JP2016162681A 2016-08-23 2016-08-23 画像形成装置 Active JP6750396B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016162681A JP6750396B2 (ja) 2016-08-23 2016-08-23 画像形成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016162681A JP6750396B2 (ja) 2016-08-23 2016-08-23 画像形成装置

Publications (2)

Publication Number Publication Date
JP2018030267A JP2018030267A (ja) 2018-03-01
JP6750396B2 true JP6750396B2 (ja) 2020-09-02

Family

ID=61304222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016162681A Active JP6750396B2 (ja) 2016-08-23 2016-08-23 画像形成装置

Country Status (1)

Country Link
JP (1) JP6750396B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111275675A (zh) * 2020-01-17 2020-06-12 佛山高明龙悦包装有限公司 一种包装膜质检机及其控制方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5031813A (en) * 1990-06-01 1991-07-16 Dow Brands, Inc. Dispensing container having a tear strip with end tabs
US6044478A (en) * 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
JP2010226283A (ja) * 2009-03-23 2010-10-07 Konica Minolta Business Technologies Inc 情報処理装置
JP6668966B2 (ja) * 2016-06-16 2020-03-18 コニカミノルタ株式会社 画像形成装置
JP6756177B2 (ja) * 2016-07-20 2020-09-16 コニカミノルタ株式会社 画像形成装置

Also Published As

Publication number Publication date
JP2018030267A (ja) 2018-03-01

Similar Documents

Publication Publication Date Title
US8230420B2 (en) Apparatus for transferring a virtual machine using stored correspondence information
JP2009241475A (ja) 画像形成装置、画像形成処理方法及びプログラム
JP5310613B2 (ja) 画像処理装置および画像処理装置の制御方法
JP2010160609A (ja) 情報処理装置、情報処理装置の制御方法、記憶媒体及びプログラム
JP6750396B2 (ja) 画像形成装置
JP2006021527A (ja) 画像形成装置及びその制御方法
JP2007207194A (ja) 印刷装置、外部装置、印刷システム及び印刷装置の制御方法
JP2015003477A (ja) 印刷装置及びその制御方法、並びにプログラム
US20180024491A1 (en) Image forming apparatus
US8630555B2 (en) Printing apparatus and control method for printing apparatus
JP2008125247A (ja) 複数モータの駆動制御装置および画像形成装置
KR20080062359A (ko) 화상형성장치 및 그 방법
JP6668966B2 (ja) 画像形成装置
JP7102166B2 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2005017395A (ja) 画像形成装置
JP4590292B2 (ja) 画像形成装置
JP2006011498A (ja) 電気機器
JP6061531B2 (ja) 印刷制御装置、印刷制御方法、及びプログラム
JP5459473B2 (ja) 給紙装置および画像形成装置
JP2010198443A (ja) 画像形成装置
JP2009096047A (ja) 複合機
JP2006259625A (ja) 画像形成装置、画像形成装置の制御方法および製造方法
JP5899736B2 (ja) 電源遮断装置、画像形成装置、電源遮断方法、及び電源遮断装置用プログラム
JP2018022091A (ja) 画像形成装置、画像形成装置の制御方法
JP2009025990A (ja) 記憶装置の管理方法、消耗品供給装置の制御方法、消耗品供給装置、およびコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20200317

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200703

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200714

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200727

R150 Certificate of patent or registration of utility model

Ref document number: 6750396

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150