JP3895610B2 - 画像形成装置および画像形成方法 - Google Patents
画像形成装置および画像形成方法 Download PDFInfo
- Publication number
- JP3895610B2 JP3895610B2 JP2002024413A JP2002024413A JP3895610B2 JP 3895610 B2 JP3895610 B2 JP 3895610B2 JP 2002024413 A JP2002024413 A JP 2002024413A JP 2002024413 A JP2002024413 A JP 2002024413A JP 3895610 B2 JP3895610 B2 JP 3895610B2
- Authority
- JP
- Japan
- Prior art keywords
- dma
- cpu
- hdd
- image data
- unit
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Storing Facsimile Image Data (AREA)
- Record Information Processing For Printing (AREA)
- Facsimiles In General (AREA)
Description
【発明の属する技術分野】
本発明は、画像形成装置および画像形成方法に関し、詳細には、複数のHDDを並列に動作させることで、例えば、電子ファイリングシステムで処理される画像データなどの膨大なデータを高速にリード/ライト可能なハードディスクコントローラを備えた画像形成装置および画像形成方法に関する。
【0002】
【従来の技術】
従来、ハードディスクドライブ(HDD)などの記憶装置を複数台並列に動作させることにより、データのリード/ライトの要求に高速に対応可能な記憶装置アレイが知られている。かかる記憶装置アレイの制御部となるアレイコントローラとしては、パーソナルコンピュータのバス上に接続される拡張ボード形態のものがある。
【0003】
拡張ボード形態のアレイコントローラは、パソコンの拡張スロットに挿入され、アレイコントローラ自身は制御対象の記憶装置群と接続することで、パソコン等からの指示に基づき、記憶装置群に対する制御を行うものである。アレイコントローラは、データのリード/ライトをデータのブロック単位で記憶装置群のドライブを変えて行う。
【0004】
図19は、従来のアレイコントローラ(ハードディスクコントローラ)が複数のHDDにデータを書き込む際の書込方式の一例を説明するための図である。同図は、4台のHDDに対して、96KBのデータを16KB単位のブロックサイズで書き込む例を示している。
【0005】
図19に示すように、データを先頭から16KB単位にディスク0から順番にデータを振り分けて書き込み、全てのディスクを一巡すると再びディスク0に戻り、順に書き込んでいく。一般的にHDDは16KB以上の容量のデータバッファを備えており、転送データをまずデータバッファに一旦格納した後、ディスクにデータを書き込む。上述した方式でHDDに順番に書き込んでいくことにより、1台のHDDが内部のデータバッファからディスクへデータを転送している間に他のHDDへ書き込みが行えるので高速にデータ転送を行うことができる。
【0006】
このようにデータを順次、各HDDに振り分ける方式としては、例えば、特開平10−326154号公報の「アレイコントローラ及びデータサーバ」に記載されている技術が知られている。
【0007】
しかしながら、この従来技術は、アレイコントローラ側で専用のCPUを設け、バス上のコマンドを解析してハードディスクの制御を行うようにソフトウェアで特別な制御をする必要があるため、アレイコントローラの装置構成が複雑になるという問題がある。
【0008】
ところで、近時、デジタル複写機等の画像形成装置においては、複数のHDDを備えたものがある。かかる複数のHDDを備えた画像形成装置においては、複数のHDDに高速に画像データの転送が可能でかつ複数のHDDを効率的に管理することが可能なハードディスクコントローラの開発が期待されている。
【0009】
【発明が解決しようとする課題】
本発明は、上記に鑑みてなされたものであり、複数のHDDに対して、簡易な構成で高速な画像データの転送ができ、かつ複数のHDDを1台のHDDとして効率的に管理することが可能なハードディスクコントローラを備えた画像形成装置および画像形成方法を提供することを目的とする。
【0010】
また、本発明は、複数のHDDのうち不具合が生じたHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置およびその方法を提供することを目的とする。
【0011】
また、本発明は、複数のHDDのうち速度低下を起こしているHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置およびその方法を提供することを目的とする。
【0012】
さらに、本発明は、複数のHDDのうち、振動等の突発的な外乱以外の要因で速度低下を起こしているHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置およびその方法を提供することを目的とする。
【0013】
【課題を解決するための手段】
上記課題を解決するために、請求項1にかかる発明は、画像データを入力するための入力手段と、画像形成装置の全体の動作を制御するCPUと、前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、画像データを格納するための複数のHDDと、前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、画像データの画像形成を行う画像形成手段とを備え、前記ハードディスクコントローラは、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備え、前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、前記CPU・DMAI/F部は、前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部とを有し、前記複数のHDDI/Fは各々、内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンとを有し、前記CPUI/F部は、複数のDMAデータ制御部毎に内部のバッファが転送可能な場合にアサートされるREQ信号を検出する検出手段と、前記検出手段の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別手段とを含み、前記CPUにより、前記レジスタをリードして故障したHDDを判断することを特徴とする。
【0014】
上記発明によれば、入力手段は、1ページ分の原稿の画像データを入力し、CPUは画像形成装置の全体の動作を制御し、メモリには入力手段から入力される画像データを少なくとも1ページ分格納され、DMAコントローラはメモリに対する画像データのリード/ライトを制御し、複数のHDDは画像データを格納し、ハードディスクコントローラは、DMAコントローラと画像データの送受信を行い、複数のHDDに対する画像データのリード/ライトを制御し、当該複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0015】
また、CPUI/F部は、CPUでリード/ライト可能なレジスタを含み、CPUによりレジスタに設定されるコマンドをデコードして、複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示し、DMAI/F部は、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データのDMA転送を行い、DMAデータ制御部は、DMAI/F部から転送される画像データを格納するバッファを含み、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、ステートマシーンは、CPUI/F部からリード/ライトの指示を受けた場合は、HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、CPUI/F部からDMA起動の指示を受けた場合は、HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0016】
また、CPUI/F部では、検出手段は複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出し、故障HDD識別手段は検出手段の検出結果に基づき、データ転送が不可能なHDDを示すビットをレジスタにライトし、CPUがレジスタをリードして故障したHDDを判断する。
【0017】
また、請求項2にかかる発明は、画像データを入力するための入力手段と、画像形成装置の全体の動作を制御するCPUと、前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、画像データを格納するための複数のHDDと、前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、画像データの画像形成を行う画像形成手段とを備え、前記ハードディスクコントローラは、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備え、前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、前記CPU・DMAI/F部は、前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部とを有し、前記複数のHDDI/Fは各々、内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンとを有し、前記CPUI/F部は、前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出手段と、前記時間差検出手段で検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別手段とを含み、前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することを特徴とする。
【0018】
上記発明によれば、入力手段は、1ページ分の原稿の画像データを入力し、CPUは画像形成装置の全体の動作を制御し、メモリには入力手段から入力される画像データを少なくとも1ページ分格納され、DMAコントローラはメモリに対する画像データのリード/ライトを制御し、複数のHDDは画像データを格納し、ハードディスクコントローラは、DMAコントローラと画像データの送受信を行い、複数のHDDに対する画像データのリード/ライトを制御し、当該複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0019】
また、CPUI/F部は、CPUでリード/ライト可能なレジスタを含み、CPUによりレジスタに設定されるコマンドをデコードして、複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示し、DMAI/F部は、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データのDMA転送を行い、DMAデータ制御部は、DMAI/F部から転送される画像データを格納するバッファを含み、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、ステートマシーンは、CPUI/F部からリード/ライトの指示を受けた場合は、HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、CPUI/F部からDMA起動の指示を受けた場合は、HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0020】
また、CPUI/F部では、検出手段は、複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出し、速度低下DMAデータ制御部識別手段は、検出された時間差が閾値以上の場合にレジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットし、CPUは、レジスタをリードして、速度低下したDMAデータ制御部を判断する。
【0021】
また、請求項3にかかる発明は、画像データを入力するための入力手段と、画像形成装置の全体の動作を制御するCPUと、前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、画像データを格納するための複数のHDDと、前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、画像データの画像形成を行う画像形成手段とを備え、前記ハードディスクコントローラは、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備え、前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、前記CPU・DMAI/F部は、前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部とを有し、前記複数のHDDI/Fは各々、内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンとを有し、前記CPUI/F部は、前記複数のDMAデータ制御部毎に内部のバッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出手段と、前記時間差検出手段で検出された時間差が閾値以上の場合に、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別手段と、前記第1の速度低下DMAデータ制御部識別手段により前記レジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント手段と、前記速度低下識別回数カウント手段のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別手段とを含み、前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することを特徴とする。
【0022】
上記発明によれば、入力手段は、1ページ分の原稿の画像データを入力し、CPUは画像形成装置の全体の動作を制御し、メモリには入力手段から入力される画像データを少なくとも1ページ分格納され、DMAコントローラはメモリに対する画像データのリード/ライトを制御し、複数のHDDは画像データを格納し、ハードディスクコントローラは、DMAコントローラと画像データの送受信を行い、複数のHDDに対する画像データのリード/ライトを制御し、当該複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0023】
また、CPUI/F部は、CPUでリード/ライト可能なレジスタを含み、CPUによりレジスタに設定されるコマンドをデコードして、複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示し、DMAI/F部は、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データのDMA転送を行い、DMAデータ制御部は、DMAI/F部から転送される画像データを格納するバッファを含み、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、ステートマシーンは、CPUI/F部からリード/ライトの指示を受けた場合は、HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、CPUI/F部からDMA起動の指示を受けた場合は、HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0024】
また、CPUI/F部では、検出手段は、複数のDMAデータ制御部毎に内部のデータバッファが使用可能な場合にアサートされるREQ信号の時間差を検出し、第1の速度低下DMAデータ制御部識別手段は、閾値以上の時間差が検出された場合、レジスタに速度低下したDMAデータ制御部を示すビットをセットし、速度低下識別回数カウント手段は第1の速度低下DMAデータ制御部識別手段によりレジスタにビットがセットされる回数をDMAデータ制御部毎にカウントし、第2の速度低下DMAデータ制御部は、速度低下識別回数カウント手段のカウント値が閾値以上になった場合に、レジスタに当該カウント値に対応するDMAデータ制御部のビットをセットし、CPUは、レジスタをリードして、速度低下したDMAデータ制御部を判断する。
【0025】
また、請求項4にかかる発明は、請求項1〜請求項3のいずれか1つにかかる発明において、前記レジスタは、前記複数のHDDに共通の前記CPUのライト専用のレジスタと、前記複数のHDD毎に個別に設けられた前記CPUのリード専用のレジスタからなり、前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記ライト専用のレジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることを特徴とする。
【0026】
上記発明によれば、ライト専用のレジスタには、複数のHDDのコマンドの発行やパラメータライト時に、CPUにより1つの値が書き込まれ、これに応じて、CPUI/F部は、ライト専用のレジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、リード専用のレジスタには、複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値がCPUI/F部により各々書き込まれる。
【0027】
また、請求項5にかかる発明は、請求項1〜請求項4のいずれか1つにかかる発明において、前記複数のHDDはATA規格に準拠したHDDであることを特徴とする。上記発明によれば、ATA規格に準拠したHDDを使用する。
【0028】
また、請求項5にかかる発明は、請求項1〜請求項4のいずれか1つにかかる発明において、前記CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することを特徴とする。
【0029】
上記発明によれば、CPUI/F部は、複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、CPUに対して割り込みを発生する。
【0030】
また、請求項6にかかる発明は、請求項1〜請求項5のいずれか1つにかかる発明において、前記複数のHDDはATA規格に準拠したHDDであることを特徴とする。上記発明によれば、ATA規格に準拠したHDDをしようする。
【0031】
また、請求項7にかかる発明は、請求項1〜6のいずれか1つにかかる発明において、前記ハードディスクコントローラは、前記複数のHDDに対して、画像データの画素データを所定ビット単位で分割してDMA転送を行うことを特徴とする。上記発明によれば、ハードディスクコントローラは、前記複数のHDDに対して、画像データの画素データを所定のビット単位で分割してDMA転送を行う。
【0032】
また、請求項8にかかる発明は、画像データを入力する入力工程と、DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、故障したHDDを検出するHDD故障判定工程とを含み、前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、前記HDD記憶工程は、前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程とを含み、前記HDD故障判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出する検出工程と、前記CPUI/F部が、前記検出工程の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別工程と、前記CPUが、前記レジスタをリードして故障したHDDを判定する判定工程とを含むことを特徴とする。
【0033】
上記発明によれば、画像データを入力し、DMAコントローラが入力される画像データをメモリにライトし、DMAコントローラがメモリから画像データをリードしてハードディスクコントローラに転送し、ハードディスクコントローラがDMAコントローラから転送されてくる画像データを複数のHDDにライトし、その際、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0034】
また、CPU・DMAI/F部のCPUI/F部が、内部のレジスタにCPUにより設定されるDMA転送コマンドをデコードして、DMA起動を指示し、CPU・DMAI/F部のDMAI/F部が、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データを分割してDMA転送を行い、複数のHDDI/Fの各DMAデータ制御部が、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、複数のHDDI/Fの各ステートマシーンが、CPUI/F部からDMA起動の指示を受けた場合は、複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0035】
また、CPUI/F部が、複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出し、CPUI/F部が、この検出結果に基づきデータ転送が不可能なHDDを示すビットをレジスタにライトし、CPUがレジスタをリードして故障したHDDを判定する。
【0036】
また、請求項9にかかる発明は、画像データを入力する入力工程と、DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程とを含み、前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、前記HDD記憶工程は、前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程とを含み、前記速度低下DMAデータ制御部判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出工程と、前記CPUI/F部が、前記時間差検出工程で検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別工程と、前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程とを含む。
【0037】
上記発明によれば、画像データを入力し、DMAコントローラが入力される画像データをメモリにライトし、DMAコントローラがメモリから画像データをリードしてハードディスクコントローラに転送し、ハードディスクコントローラがDMAコントローラから転送されてくる画像データを複数のHDDにライトし、その際、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0038】
また、CPU・DMAI/F部のCPUI/F部が、内部のレジスタにCPUにより設定されるDMA転送コマンドをデコードして、DMA起動を指示し、CPU・DMAI/F部のDMAI/F部が、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データを分割してDMA転送を行い、複数のHDDI/Fの各DMAデータ制御部が、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、複数のHDDI/Fの各ステートマシーンが、CPUI/F部からDMA起動の指示を受けた場合は、複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0039】
また、CPUI/F部が、複数のDMAデータ制御部毎にバッファが転送可能な場合にアサートされるREQ信号の時間差を検出し、検出された時間差が閾値以上の場合にレジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットし、CPUがレジスタをリードして、速度低下したDMAデータ制御部を判定する。
【0040】
また、請求項10にかかる発明は、画像データを入力する入力工程と、DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程とを含み、前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、前記HDD記憶工程は、前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程とを含み、前記速度低下DMAデータ制御部判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のデータバッファが使用可能な場合にアサートされるREQ信号の時間差を検出する時間差検出工程と、前記CPUI/F部が、前記時間差検出工程で検出された時間差が閾値以上の場合に、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別工程と、前記CPUI/F部が、前記第1の速度低下DMAデータ制御部識別工程で前記レジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント工程と、前記CPUI/F部が、前記速度低下識別回数カウント工程のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別工程と、前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程とを含むことを特徴とする。
【0041】
上記発明によれば、画像データを入力し、DMAコントローラが入力される画像データをメモリにライトし、DMAコントローラがメモリから画像データをリードしてハードディスクコントローラに転送し、ハードディスクコントローラがDMAコントローラから転送されてくる画像データを複数のHDDにライトし、その際、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行う。
【0042】
また、CPU・DMAI/F部のCPUI/F部が、内部のレジスタにCPUにより設定されるDMA転送コマンドをデコードして、DMA起動を指示し、CPU・DMAI/F部のDMAI/F部が、複数のHDDI/Fが全て転送可能な場合に、複数のHDDI/Fに画像データを分割してDMA転送を行い、複数のHDDI/Fの各DMAデータ制御部が、DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送し、複数のHDDI/Fの各ステートマシーンが、CPUI/F部からDMA起動の指示を受けた場合は、複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う。
【0043】
また、CPUI/F部は、複数のDMAデータ制御部毎に内部のバッファが転送可能な場合にアサートされるREQ信号の時間差を検出し、検出された時間差が閾値以上の場合にレジスタに速度低下したDMAデータ制御部を示すビットをセットし、レジスタにビットがセットされる回数をDMAデータ制御部毎にカウントし、このカウント値が閾値以上になった場合にレジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットし、CPUがレジスタをリードして、速度低下したDMAデータ制御部を判定する。
【0044】
また、請求項11にかかる発明は、請求項8〜請求項10のいずれか1つにかかる発明において、前記レジスタは、前記複数のHDDに共通の前記CPUのライト専用のレジスタと、前記複数のHDD毎に個別に設けられた前記CPUのリード専用のレジスタからなり、前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記ライト専用のレジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることを特徴とする。
【0045】
上記発明によれば、ライト専用のレジスタには、複数のHDDのコマンドの発行やパラメータライト時に、CPUにより1つの値が書き込まれ、これに応じて、CPUI/F部は、共通レジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、リード専用のレジスタには、複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値がCPUI/F部により各々書き込まれる。
【0046】
また、請求項12にかかる発明は、請求項8〜請求項11のいずれか1つにかかる発明において、前記CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することを特徴とする。
【0047】
上記発明によれば、CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生する。
【0048】
また、請求項13にかかる発明は、請求項8〜請求項12のいずれか1つにかかる発明において、前記複数のHDDはATA規格に準拠したHDDであることを特徴とする。上記発明によれば、ATA規格に準拠したHDDを使用する。
【0049】
また、請求項14にかかる発明は、請求項8〜請求項13のいずれか1つにかかる発明において、前記ハードディスクコントローラは、前記複数のHDDに対して、前記画像データの画素データを所定ビット単位で分割してDMA転送を行うことを特徴とする。上記発明によれば、ハードディスクコントローラは、複数のHDDに対して、画像データの画素データを所定ビット単位で分割してDMA転送を行う。
【0050】
【発明の実施の形態】
以下に添付図面を参照して、本発明にかかる画像形成装置および画像形成方法の好適な実施の形態を、(実施の形態1)、(実施の形態2)、(実施の形態3)の順に詳細に説明する。
【0051】
(実施の形態1)
実施の形態1の画像形成装置を図1〜図12を参照して説明する。図1は、実施の形態1にかかる画像形成装置の構成を示すブロック図である。図1に示す画像形成装置は、画像形成装置の全体の動作を制御するCPU101と、ADFやスキャナ等からなり、原稿の画像データを読み取るための画像入力部102と、画像データを電子写真方式で紙に印字する画像出力部103と、メモリ105に対する画像データのリード/ライトを制御するDMA制御IC(DMAコントローラ)104と、例えば、DRAMからなり、少なくとも1ページ分の画像データを格納するメモリ105と、4つのHDD A107a〜HDD D107dに対する画像データのリード/ライトを制御するHDDアレイ制御IC(ハードディスクコントローラ)106と、画像データを格納するためのATA規格に準拠した4つのHDD A107a〜HDD D107dとを備えている。上記HDD A107a〜HDD D107dは同一の構成となっている。
【0052】
上記画像形成装置の通常のコピー動作を説明する。CPU101により、通常のコピー動作の開始が指示されると、まず、画像入力部102で1ページ分の原稿の画像データが読み取られ、読み取られた原稿の画像データはDMA制御IC104に転送される。DMA制御IC104は転送される画像データをメモリ105に一旦格納した後、画像出力部103に転送する。画像出力部103では画像データを転写紙に印字して出力する。
【0053】
つぎに、上記画像形成装置の電子ソートを使用したコピー動作を図2のフローチャートを参照して説明する。図2は、上記画像形成装置の電子ソートを使用したコピー動作を説明するためのフローチャートである。
【0054】
図2において、CPU101により、電子ソートを使用したコピー動作の開始が指示されると、まず、画像入力部102で1ページ分の原稿の画像データが読み取られ、読み取られた画像データはDMA制御IC104に転送される。DMA制御IC104は、転送される画像データを一旦、メモリ105に格納する(ステップS1)。DMA制御IC104は、メモリ105に格納した画像データを読み出して、HDDアレイ制御IC106に転送する。HDDアレイ制御IC106は、DMA制御IC104から転送される画像データを、HDD A107a〜HDD D107dに格納する(ステップS2)。この場合、メモリ105内の画像データは、DMA制御IC104からHDDアレイ制御IC106を通して、HDD A107a〜HDD D107dに分割されて同時にDMA転送される(図9参照)。
【0055】
CPU101は、全ページの原稿の読み込みが終了したか否かを判断し(ステップS3)、全ページの原稿の読み込みが終了した場合には、ステップS4に移行する一方、全ページの原稿の読み込みが終了していない場合には、全ページの原稿の読み込みが終了するまでステップS1〜ステップS3の動作を繰り返し実行する。
【0056】
つづいて、HDDアレイ制御IC106は、HDD A107a〜HDD D107dに格納した画像データを読み出して、DMA制御IC104に転送する。DMA制御IC104はHDDアレイ制御IC106から転送される画像データをメモリ105に格納した後(ステップS4)、画像出力部103に出力し、画像出力部103は、画像データを転写紙に印字して出力する(ステップS5)。そして、CPU101は、全ページの画像出力が終了したか否かを判断し(ステップS6)、全ページの画像出力が終了した場合には、ステップS7に移行する一方、全ページの画像出力が終了していない場合には、全ページの画像出力が終了するまでステップS4〜S6の処理を繰り返し実行する。
【0057】
ステップS7では、CPU101は、全ページの画像出力が終了した場合には、設定部数の出力が終了したか否かを判断し(ステップS7)、設定部数の画像出力が終了した場合には、当該フローを終了する一方、設定部数の画像出力が終了していない場合には、設定部数の画像出力が終了するまで、ステップS4〜ステップS7の処理を繰り返し実行する。
【0058】
つぎに、本発明の特徴的な部分である上記HDDアレイ制御IC(ハードディスクコントローラ)106の構成および動作を図3〜図12を参照して詳細に説明する。上記HDDアレイ制御IC106は、HDD A107a〜HDD D107dに対して、同時にコマンド設定や画像データの転送を行う。
【0059】
図3は、図1のHDDアレイ制御IC106の構成を示すブロック図である。HDDアレイ制御IC106は、同図に示す如く、CPU101およびDMA制御IC104とのインターフェースとなるCPU・DMAI/F部201と、CPU・DMAI/F部201からコマンドや画像データが転送され、各HDD A107a〜HDD D107dにコマンドや画像データの転送を独立に行うHDDI/F A202a〜HDDI/F D202dとから構成されている。HDDI/F A202a〜HDDI/F D202dは同一の構成となっている。
【0060】
CPU・DMAI/F部201は、CPUI/F部201aと、DMAI/F部201bとを備えている。CPUI/F部201aは、CPU101とのインターフェースを行い、CPU101でリード/ライト可能なレジスタ201cを有しており、レジスタ201cにCPU101により設定されたコマンドやパラメータをデコードし、HDD A107a〜HDD D107dへのリードライトコマンド指示を行う信号の生成や内部のDMAの起動を指示する。DMAI/F部201bは、DMA制御IC104とのインターフェースを行い、HDD A107a〜HDD D107dのワード数蓄積後、DMAデータ制御部402a〜402dが全て転送可能な場合に、DMAデータ制御部402a〜402dに画像データの転送を行う。
【0061】
HDDI/F A202a〜HDDI/F D202dは、各々、ステートマシン401a〜401dとDMAデータ制御部402a〜402dとを備えている。ステートマシン401a〜401dは、CPUI/F部201aからリードライトコマンド指示を受けた場合は、HDD A107a〜HDD D107dに対してコマンドライトやステータスリード等のDMA転送以外のアクセス信号を発生し、DMA起動の指示を受けた場合は、DMAデータ制御部402a〜402dとのインターフェースをして画像データの転送を行い、HDD A107a〜HDD D107dに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う。また、ステートマシン401は、DMAI/F部201bからデータ転送開始のトリガ信号RTRGが転送されると、HDD A107a〜HDD D107dに各々画像データの転送を行う。
【0062】
DMAデータ制御部402a〜402dは、DMAI/F部201bとインターフェースを行い、内部に、DMAI/F部201bから転送される画像データを格納するためのトグルのFIFOメモリ(バッファ)403を有しており、FIFOメモリ(バッファ)403にHDD107a〜107bに書き込む画像データを格納して、HDD107a〜107bに画像データの転送を行う。
【0063】
図4は、図3のCPUI/F部201のレジスタ201cの構成例を示す図である。レジスタ201cは、CPU101がHDDアレイ制御IC106自体の設定のリードライトを行うためのHDCONレジスタ301、各HDD A107a〜HDD D107dに共通のCPU101のライト専用のレジスタ(SECCOUNTWレジスタ302、SECNUMWレジスタ、CYLLOWレジスタ、CYLHIWレジスタ、COMMANDレジスタ)と、HDD A107a〜HDD D107d毎に個別に設けられたCPU101のリード専用のレジスタ(SECCOUNTレジスタ303a〜303d、SECNUMRレジスタ、CYLLORレジスタ、CYLHIRレジスタ、STATUSレジスタ)からなる。
【0064】
ライト専用のレジスタには、HDD A107a〜HDD D107dへのコマンドの発行やパラメータライト時に、CPU101により1つの値が書き込まれ、これに応じて、CPUI/F部201aは、書込用のレジスタに書き込まれた内容をHDD A107a〜HDD D107dに同時に発行する。リード専用のレジスタには、ステータスやパラメータリード時に、HDD A107a〜HDD D107dから同時にリードした値がCPUI/F部201aにより各々書き込まれ、その内容がCPU101により参照される。このように、各HDD A107a〜HDD D107dに同時にコマンドやパラメータの設定を行なうため、HDD A107a〜HDD D107dへの書込用のレジスタは1つの値が書き込めるようにしており、他方、読出用のレジスタは各HDD A107a〜HDD D107dで別々の値が読み出される可能性があるため、4つの値を同時に読み出し可能な構成になっている。
【0065】
各レジスタは4バイト構成になっている。同図において、6000H番地はHDDアレイ制御IC106自体の設定を行うためのHDCONレジスタ301、6008H番地はHDD A107a〜HDD D107dのSECCOUNTレジスタに書き込むSECCOUNTを設定するためのSECCOUNTWレジスタ302を示す。6010H番地は、HDD A107a〜HDD D107dのSECTORCOUNTレジスタから各々リードしたデータ転送時に転送されるセクタ数が書き込まれるSECCOUNTR_A〜Dレジスタ303a〜303dを示しており、SECCOUNTR_A〜Dレジスタ303a〜303dに書き込まれた値は、CPU101で読み出すことができる。
【0066】
6018〜6040Hまでのレジスタは、HDD内部のアドレス設定に関するレジスタである。6018HはセクタナンバーをライトするためのSECNUMWレジスタ、6020HはセクタナンバーをリードするためのSECNUMR_A〜Dレジスタを示す。6028HはシリンダーナンバーLOWをライトするためのCYLLOWレジスタ、6030Hは、シリンダーナンバーLOWをリードするためのCYLLOR_A〜Dレジスタを示す。6038HはシリンダーナンバーHIGHをライトするためのCYLHIWレジスタ、6040HはシリンダーナンバーHIGHをリードするためのCYLHIR_A〜Dレジスタを示す。
【0067】
6048Hは、HDD A107a〜HDD D107dへデータ転送等のコマンドを発行するためのCOMMANDレジスタを示しており、コマンドはHDDへの書き込みのみであるため、読出用のレジスタはない。6050HはHDD
A107a〜HDD D107dからステータスをリードした値が書き込まれるSTATUS_A〜Dレジスタである。HDD A107a〜HDD D107dのステータスに関しては、読出用のレジスタのみであり、書込用のレジスタはない。
【0068】
図5は、図3のHDDI/F A202a〜HDDI/F D202dの信号の入出力を説明するための図である。CPUI/F部201aは、CPU101によりレジスタ201cの設定が行われると、レジスタ201cのアドレスをデコードして、IDE(Integrated Device Electronics)のI/F信号であるCS[1:0](チップセレクト)、AD[2:0](アドレス)と、R/Wの設定を行う信号と、レジスタ設定値(CPUdata)と、およびデータ転送開始のトリガ信号RTRGをHDDI/F A202a〜HDDI/F D202dの各ステートマシーン401a〜401bに発行する。
【0069】
図6は、ステートマシン401a〜401dによるHDD A107a〜HDD D107dへの書き込み時の信号発生を説明するための図である。CPUI/F部201aでは、例えば、CPU101によりレジスタ201cの6008HのSECCOUNTWレジスタに「07H」が書き込まれると、CPUI/F部201aは、HDD A107a〜HDD D107dに対して同時に同じIDEの信号を出力する。これに応じて、ステートマシーン401a〜401dは、図6に示すように、HDD A107a〜HDD D107dに対して、CS[1:0]=01b、AD[2:0]=011bを指定するとともに、DIOW信号をアサートして、HDD A107a〜HDD D107dのセクタカウントレジスタへ「07H」の書き込みを行う。
【0070】
ステートマシン401a〜401dは、HDD A107a〜HDD D107dへの書き込みが終了すると、CPUI/F部201aへRSTB(リターンストローブ)信号を発行する。CPUI/F部201aは、HDDI/F A202a〜HDDI/F D202dの全てからRSTBが発行されると、CPU101に対して次のレジスタ設定を許可する。
【0071】
図7は、ステートマシン401a〜401dによるHDD A107a〜HDD D107dからの読み出し時の信号発生を説明するための図である。レジスタ201cの6050Hのステータスレジスタからの読み出しが行われると、ステートマシン401a〜401dは、HDD A107a〜HDD D107dに対して、CS[1:0]=01b、AD[2:0]=111bを指定し、DIOW信号をアサートすることでステータスレジスタからの読み出しを行う。この場合も、CPUI/F部201aからの信号が同時にHDDI/F A202a〜HDDI/F D202dに発行され、HDD A107a〜HDD D107dに対して同時に同じIDEの信号が出力される。
【0072】
ステートマシン401a〜401dは、HDD A107a〜HDD D107dからの読み出しが終了するとCPUI/F部201へRSTB(リターンストローブ)信号を発行する。CPUI/F部201aはHDDI/F A202a〜HDDI/F D202dの全てからRSTB信号が発行されると、CPU101に対して読み出しデータが有効であることを知らせる。
【0073】
次に、メモリ101からHDD A107a〜HDD D107dに画像データをDMA転送する場合について説明する。図8は、HDDI/F A202a〜HDDI/F D202dの動作を説明するための図である。CPU101が、HDDアレイ制御IC106のCPUI/F部201aのレジスタ201cにDMA転送に必要なパラメータをライトすると、HDDI/F A202a〜HDDI/F D202dは、各々HDD A107a〜HDD D107dにDMA転送に必要な記憶領域内のアドレス、転送セクタ数等のパラメータをセットする。
【0074】
CPU101は、レジスタ201cに必要なパラメータをセットした後にコマンド発行用の6048HのCOMMANDレジスタに、DMAライトのコマンドCAHを書き込むと、HDDI/F A202a〜HDDI/F D202dは、HDD A107a〜HDD D107dに同時にコマンドCAHを発行する。このコマンドCAHを発行されると、HDD A107a〜HDD D107dはデータ転送待ち状態になる。CPU101は、レジスタ201cの6000HのHDCONレジスタ内のデータ転送用のレジスタのRWビットを「1」に設定することで、メモリ105からHDD A107a〜HDD D107dへのDMA転送を行うように転送方向を指定する。
【0075】
次に、CPU101が、レジスタ201cのHDCONレジスタのMSB、データ転送開始ビットDEXEをセットすると、CPUI/F部201は、HDDI/F A202a〜HDDI/F D202dのステートマシン401a〜401dに対してDMA転送開始トリガDTRG信号を発行し、HDDI/F A202a〜HDDI/F D202dのステートマシン401a〜401dはDMA転送用のタイミングでHDDインターフェース信号を生成する。そして、DMA制御IC104がメモリ105から読み出した画像データが、DMAI/F部201bを介してDMAデータ制御部402a〜402dのFIFOメモリ403に格納された後、ステートマシーン401a〜401dによりHDD107a〜107dに書き込みが行われる。
【0076】
HDD A107a〜HDD D107dは、DMA転送が設定セクタ数行われるとデータ転送終了を知らせるために割り込みを発行する。この時、各HDD107a〜107dは、独立したインターフェースで動作しているのでデータ転送速度に多少差が生じるため、各HDD A107a〜HDD D107dの割り込み信号は、CPUI/F部201aに出力され(不図示)、CPUI/F部201aは、全ての割り込み信号が揃った時点で、CPU101に対して割り込みを発生する。
【0077】
CPU101は、割り込みを受けると、レジスタ201cの6050Hのステータスレジスタをリードし、各HDD A107a〜HDD D107dのDMA転送後のステータスを確認する。
【0078】
次に、図9を参照して、画像データのHDD A107a〜HDD D107dの蓄積方法を説明する。図9は、画像データのHDD A107a〜HDD D107dの蓄積方法を説明するための図である。同図において、dは画像データの画素データを示している。同図の画像データは64ビット(1画素64ビット)となっている。HDDアレイ制御IC106では、DMA/IF201bがDMA制御IC104から転送されてくる64ビットの画像データdataを、図9に示すような割り当てで各画素データ(d)を16ビットづつに分割し、HDDI/F A202a〜HDDI/F D202dを通して、分割された画像データはHDD A107a〜HDD D107dに略同時に蓄積される。
【0079】
上述したように、HDD A107a〜HDD D107dの速度差を吸収するため、HDDI/F A202a〜HDDI/F D202dは、DMAデータ制御部402a〜402d内にFIFOメモリ403をトグルで有している。このFIFOメモリ403を使用した画像データの転送を図10〜12を参照して説明する。
【0080】
図10および図11に示すように、FIFOメモリ403に空きがある場合は、HDDI/F A202a〜HDDI/F D202d(DMAデータ制御部402a〜402d)は、REQ信号をアサートして画像データの転送を許可する。
【0081】
CPU・DMAI/F部201は、HDD A107a〜HDD D107dに対して、同時に画像データを転送するため、HDDI/F A202a〜HDDI/F D202dが全てREQ信号をアサートしている場合に画像データの転送を行う。図10および図11に示すように、CPU・DMAI/F部201からの画像データの書き込みにより、FIFOメモリ403がフル状態になった後、HDDI/F A202a〜HDDI/F D202dはHDD A107a〜HDD D107dに対して画像データdataの転送を開始する。
【0082】
また、図11に示すように、HDDI/F A202a〜HDDI/F D202dは、FIFOメモリ403をトグルで有しているため、CPU・DMAI/F部201からの画像データの受信とHDD A107a〜HDD D107dに対しての画像データの転送を同時に行うことができる。また、図12に示すように、一方のFIFOメモリ403がフル状態で他方のFIFOメモリ403がHDD A107a〜HDD D107dに画像データの転送中である場合には、FIFOメモリ403へ画像データが転送できないため、HDDI/F A202a〜HDDI/F D202d(DMAデータ制御部402a〜402d)はREQ信号をネゲートする。この場合、CPU・DMAI/F部201からの画像データの転送は行われない。
【0083】
以上説明したように、本実施の形態では、HDDアレイ制御IC(ハードディスクコントローラ)106では、CPU101にてリード/ライト可能なレジスタ201cを通して、HDD A107a〜HDD D107dに対して、同時にパラメータの設定、コマンドの発行を行い、画像データのDMA転送時には各HDD A107a〜HDD D107d毎に画像データを分割して同時にDMA転送を行っているので、簡易な制御で複数のHDDを1台のHDDと同様に制御を行うことができ、また、複数のHDDを並列に動作させて高速な画像データの転送が可能となる。
【0084】
(実施の形態2)
実施の形態2の画像形成装置を、図13および図14を参照して説明する。実施の形態2の画像形成装置は、上記実施の形態1の画像形成装置とほぼ同様な構成で同様な動作を行うものであるが、さらに、HDD A107a〜HDD D107dの故障を検出を行う。
【0085】
図13および図14を参照して、HDD A107a〜HDD D107dが故障した場合の故障検出方法を説明する。図13は、HDDの故障した状態を説明するための図である。同図は、HDD B107bが故障した場合を示している。
【0086】
ところで、複数台のHDDのうち、1台のHDDが故障した場合、途中で画像データの転送が止まり、REQ信号がアサートされないことになる。これにより、上述のCPU・DMAI/F部201は、全てのREQ信号がアサートしている場合に画像データの転送を行うため、DMA制御IC104とHDDアレイ制御IC106との画像データの転送が停止してしまうことになる。
【0087】
この結果、CPU101では、HDDアレイ制御IC106(CPUI/F部201a)からの画像データの転送終了の割り込みがないためタイムアウトエラーになる。HDD A107a〜HDD D107dのいずれかに不具合が発生したことは明白であるが、全てのHDD A107a〜HDD D107dがデータ転送コマンドが終了していない状態で止まっているため、HDD A107a〜HDD D107dのステータスをリードできず、どのHDDで不具合が生じているか判定できない。どのHDDを交換すれば良いのか判断することができないという問題がある。そこで、実施の形態2では、故障したHDDを識別する方法を説明する。
【0088】
図13に示すように、HDDの1台が故障して画像データの転送が終了しても他のHDDは独立して動作しているため、DMAデータ制御部402a〜402dは、一方のFIFOメモリ403の画像データを全て読み出した後に、CPU・DMAI/F部201にREQ信号をアサートする。すなわち、DMAデータ制御部402a〜402dは、FIFOメモリ403がデータ転送可能な場合にCPU・DMAI/F部201にREQ信号をアサートする。CPUI/F部201aは、DMAデータ制御部402a〜402dのREQ信号のアサートを検出して、レジスタ201cのHDCONレジスタにDMAデータ制御部402a〜402dのREQ信号のアサート状態またはネゲート状態を書き込む。
【0089】
図14は、HDCONレジスタのフォーマットの一例を示す図である。同図において、REQA〜DはHDDI/F A202a〜HDDI/F D202dに各々対応しており、REQがアサート状態で「1」、ネゲート状態で「0」となる。HDCONレジスタのREQA〜Dは、CPU101でモニタリングすることができる。
【0090】
CPU101は、HDD A107a〜HDD D107dのいずれかの不具合により、データ転送のタイムアウトエラーが生じた時、このHDCONレジスタをリードし、REQ信号がネゲートしているHDDを不具合が発生したHDDと判断することができる。
【0091】
本実施の形態によれば、CPUI/F部201aは、DMAデータ制御部402a〜402d毎にFIFOメモリ403がデータ転送可能な場合にアサートされるREQ信号を検出し、データ転送が不可能なHDDを示すビットをHDCONレジスタにライトし、CPU101は、HDCONレジスタをリードして故障したHDDを判断することとしたので、1台のHDDで不具合が生じ、タイムアウトエラーになった場合、容易に不具合が発生したHDDを特定することが可能となる。
【0092】
(実施の形態3)
実施の形態3の画像形成装置を、図15〜図18を参照して説明する。実施の形態3の画像形成装置は、実施の形態1の画像形成装置とほぼ同様な構成で同様な動作を行うものであるが、さらに、HDD A107a〜HDD D107dの転送速度の低下を検出する。
【0093】
ところで、CPU101でタイムアウトエラーが検知されないが、1台のHDDが何等かの不具合で転送速度が遅くなり、全体のHDDの転送速度が遅くなるという状態が発生する場合がある。この場合、どのHDDに不具合があるか、CPU101が判断することは難しい。実施の形態3では、このことを鑑みて不具合が生じて転送速度が遅くなったHDDを識別する方法を、図15〜図18を参照して説明する。
【0094】
図15は、HDDの転送速度が遅くなった状態を説明するための図である。図15に示すように、HDD C107cが何等かの不具合で転送速度が遅くなった場合、HDD C107cに対応するHDDI/F C202cのDMAデータ転送制御部402cのREQ信号のアサートタイミングが遅くなる。そこで、CPU・DMAI/F部201のCPUI/F部201aでは、各HDDI/F
A202a〜HDDI/F D202dのREQ信号のアサートのタイミングを比較して、速度低下が生じたHDD A107a〜HDD D107dのいずれかを検出する。
【0095】
図16は、CPU・DMAI/F部201のCPUI/F部201aのカウント動作を説明するための図である。図16に示すように、CPU・DMAI/F部201のCPUI/F部201aでは、FIFOメモリ403の切り替わり時の最初のHDDI/F A202a〜HDDI/F D202dのDMAデータ制御部402a〜402dからのREQ信号のアサートからカウンターを起動し(図16では、DMAデータ制御部402aからのREQ信号のアサート)、図示しないレジスタの設定値のCLK数後(図では512CLK後)に各HDDI/F A202a〜HDDI/F D202dのDMAデータ制御部402a〜402dからのREQ信号をサンプリングする。
【0096】
CPUI/F部201aでは、REQ信号のネゲートの状態を検出すると(図16ではHDDI/F C202cのREQ)、タイムアウトレジスタにREQ信号のネゲートの状態を検出したHDDを書き込む。図17は、タイムアウトレジスタのフォーマットの一例を示す図である。各ビットTOA1601、TOB1602、TOC1603、TOD1604はHDD A107a〜HDD D107d(DMAデータ制御部402a〜402d)に各々対応している。CPUI/F部201aは、TOA1601、TOB1602、TOC1603、TOD1604を画像データの転送開始時に「0」クリアし、HDD A107a〜HDD D107d(DMAデータ制御部402a〜402d)のうちの前記ネゲートが検出されたHDD(DMAデータ制御部)に対応するビットを「1」に設定する。図16に示す例では、タイムアウトレジスタのTOC1603が「1」に設定される。CPUI/F部201aは、1度この状態が発生すると、新たに、上記図16に示した信号検出の動作は行わずに、このビットを次回の転送開始まで保持する。
【0097】
CPU101は、画像データの転送終了後にタイムアウトレジスタのTOA1601、TOB1602、TOC1603、およびTOD1604をモニタリングすることにより、何らかの不具合により転送速度が遅くなっているHDDを検出する。図15に示す例では、転送速度が遅くなっているHDDとしてHDD107cが検出される。
【0098】
以上説明したように、CPUI/F部201aは、DMAデータ制御部402a〜402d毎に内部のFIFOメモリ(バッファ)403のデータ蓄積状態によってアサートされるREQ信号(データ転送可能状態)のHDD(DMAデータ制御部)毎の差を検出し、閾値以上の時間差が検出された場合に、レジスタ201cのタイムアウトレジスタに最も遅いDMAデータ制御部402a〜402dを示すビットをセットすることとしたので、DMAデータ制御部402a〜402dのFIFOメモリ403の転送可能状態を監視することで、接続された複数のHDDのうち、不具合が生じたHDDを特定することができる。
【0099】
ところで、上記検出方法によると1度、1番最初のREQ信号のアサートからカウンターの値が所定値を越えただけでタイムアウトレジスタに結果が保持されるため、振動等の突発的な外乱で、上記図15に示すような状態になり、タイムアウトレジスタに結果が保持される可能性がある。このため、本来は正常な動作をしているHDDが振動等の突発的な外乱により、不具合が生じたと判断される可能性がある。
【0100】
このことを鑑みて、振動等の突発的な外乱以外の要因で不具合が生じて転送速度が遅くなったHDDを識別する方法を以下に説明する。図18は、CPU・DMAI/F部201のCPUI/F部201aのカウント動作を説明するための図である。
【0101】
図18に示すように、CPU・DMAI/F部201のCPUI/F部201aでは、トグルFIFOメモリ403の切り替わり時の最初のHDDI/F A202a〜HDDI/F D202dからのREQ信号のアサートからカウンターを起動し、図示しないレジスタの設定値のCLK数後(図では512CLK後)に各HDDI/F A202a〜HDDI/F D202dのREQ信号をサンプリングする。
【0102】
CPUI/F部201aでは、REQ信号のネゲートの状態を検出すると、不図示のレジスタTOX(X=A〜D)_Sに1パルスアサート(ビットをセット)する。TOA_S、TOB_S、TOC_S、およびTOD_Sは、各々HDD A107a(DMAデータ制御部402a)、HDD B107b(DMAデータ制御部402b)、HDD C107c(DMAデータ制御部402c)、およびHDD D107d(データ制御部402d)に対応している。同図に示す例では、HDDI/F C202c(DMAデータ制御部402c)のREQ信号がネゲート状態であるので、TOC_Sが1パルスアサート(ビットがセット)されている。
【0103】
CPUI/F201aでは、レジスタTOX(X=A〜D)_Sのアサート回数(ビットのセット回数)のカウントを行って得られるカウント値が、図示しないレジスタの設定値(同図に示す例では16回)以上となった場合に、図17に示すタイムアウトレジスタの対応するビットTOA、TOB、TOC、およびTODに、「1」を設定する。タイムアウトレジスタの各ビットTOA、TOB、TOC、およびTODは、転送開始時に0クリアされる。図18に示す例では、TOC_Sのアサート回数(ビットのセット回数)のカウント値が「16」となるので、タイムアウトレジスタのTOCが「1」に設定される。
【0104】
CPU101は、画像データの転送終了後にタイムアウトレジスタのTOA1601、TOB1602、TOC1603、およびTOD1604をモニタリングすることにより、振動等の突発的な外乱を除いた何らかの不具合により転送速度が遅くなっているHDD(DMAデータ制御部)を検出することが可能となる。
【0105】
以上説明したように、CPUI/F部201aは、DMAデータ制御部402a〜402dのFIFOメモリ403が転送可能な場合にアサートされるREQ信号の時間差を検出し、閾値以上の時間差が検出された場合にレジスタに速度低下したDMAデータ制御部を示すビットをセットし、レジスタにビットがセットされる回数をDMAデータ制御部402a〜402d毎にカウントしてカウント値が閾値以上になった場合に、タイムアウトレジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットし、CPU101は、タイムアウトレジスタをリードして、速度低下したDMAデータ制御部を判断することとしたので、DMAデータ制御部に接続されているHDDを振動等の突発的な外乱で一時的に速度低下しているHDDを故障と判断することなく、正確に、速度低下を起こしているHDDを特定することができる。
【0106】
なお、本発明は、上記した実施の形態に限定されるものではなく、発明の要旨を変更しない範囲で適宜変形して実行可能である。
【0107】
【発明の効果】
以上説明したように、請求項1にかかる画像形成装置によれば、1ページ分の原稿の画像データを入力するための入力手段と、画像形成装置の全体の動作を制御するCPUと、前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、画像データを格納するための複数のHDDと、前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、前記DMAコントローラから転送される画像データの画像形成を行う画像形成手段と、を備え、前記ハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行うこととしたので、ハードディスクコントローラは、複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御や画像データを略同時にDMA転送を行うことができ、複数のHDDに対して、簡易な構成で高速な画像データの転送ができ、かつ複数のHDDを1台のHDDとして効率的に管理することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0108】
また、請求項1にかかる画像形成装置によれば、前記ハードディスクコントローラは、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備え、前記CPU・DMAI/F部は、前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データのDMA転送を行うDMAI/F部と、を有し、前記複数のHDDI/Fは各々、前記DMAI/F部から転送される画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行うステートマシーンと、を有することとしたので、CPUがハードディスクコントローラのCPUI/F部のレジスタにコマンドをライトすることで、CPUI/F部は、複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示することでき、また、複数のHDDI/Fは、複数のHDDに対して各々独立して画像データのリード/ライトを行うことができ、より簡易な構成で複数のHDDを1台のHDDとしてより効率的に管理することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0109】
また、請求項1にかかる画像形成装置によれば、前記CPUI/F部は、複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出する検出手段と、前記検出手段の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別手段と、を含み、前記CPUにより、前記レジスタをリードして故障したHDDを判断することとしたので、ハードディスクコントローラ内部のDMAデータ制御部のバッファの転送可能状態を監視することにより、不具合が生じたHDDを特定でき、複数のHDDのうち不具合が生じたHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0110】
また、請求項2にかかる画像形成装置によれば、前記CPUI/F部は、前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出手段と、前記検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別手段と、を含み、前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することとしたので、複数のDMAデータ制御部毎に内部のバッファのデータ蓄積状態によってアサートされるREQ信号の差を検出し、その差が閾値以上に遅いDMAデータ制御部に接続されているHDDを速度低下を起こしているHDDと特定でき、複数のHDDのうち速度低下を起こしているHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0111】
また、請求項3にかかる画像形成装置によれば、前記CPUI/F部は、前記複数のDMAデータ制御部毎に内部のデータバッファが使用可能な場合にアサートされるREQ信号の時間差を検出する転送可能時間差検出手段と、閾値以上の時間差が検出された場合、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別手段と、前記第1の速度低下DMAデータ制御部識別手段によりレジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント手段と、前記速度低下識別回数カウント手段のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別手段と、を含み、前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することとしたので、複数のDMAデータ制御部毎に内部のデータバッファのデータ蓄積状態によってアサートされるデータ転送可能状態の差を検出し、その差が閾値以上に遅いDMAデータ制御部の回数をカウントし、あるDMAデータ制御部が閾値以上の回数に前記カウント値が達した場合、このDMAデータ制御部に接続されているHDDを振動等の突発的な外乱がある場合は除いて速度低下を起こしているHDDと特定することができ、複数のHDDのうち、振動等の突発的な外乱以外の要因で速度低下を起こしているHDDを特定することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0112】
また、請求項4にかかる画像形成装置によれば、請求項1〜請求項3のいずれか1つにかかる発明において、レジスタは、前記複数のハードディスクに共通の前記CPUのライト専用のレジスタと、前記複数のハードディスク毎に個別に設けられた前記CPUのリード専用のレジスタからなり、前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記共通レジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることとしたので、HDDへのコマンドやパラメータライト時にはレジスタへCPUが1つの値をライトすること複数のHDDへ同時にコマンドやパラメータを発行でき、ステータスやパラメータリード時には複数のHDDから同時に別々の値をリードでき、複数のHDDに対するコマンドやパラメータの発行およびステータスやパラメータのリードをより効率的に行うことが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0113】
また、請求項5にかかる画像形成装置によれば、請求項1〜請求項4のいずれか1つにかかる発明において、前記CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することとしたので、CPUI/F部は、複数のHDDへの画像データのDMA転送が確実に終了した後にCPUに対して割り込みを発生させることができ、画像データの転送エラーを防止することが可能なハードディスクコントローラを備えた画像形成装置を提供することが可能となるという効果を奏する。
【0114】
また、請求項6にかかる画像形成装置によれば、請求項1〜請求項5のいずれか1つにかかる画像形成装置において、前記複数のHDDはATA規格に準拠したHDDであることとしたので、ATA規格に準拠したシステムを構築することが可能な画像形成装置を提供することが可能となるという効果を奏する。
【0115】
また、請求項7にかかる画像形成装置によれば、請求項1〜請求項6のいずれか1つにかかる発明において、前記ハードディスクコントローラは、前記複数のHDDに対して、画像データの画素データを所定ビット単位で分割してDMA転送を行うこととしたので、画像データの分割が容易となると共に、複数のHDDに略同時に分割した画像データをDMA転送することが可能な画像形成装置を提供することが可能となるという効果を奏する。
【0116】
また、請求項8にかかる画像形成方法によれば、ページ分の原稿の画像データを入力する入力工程と、DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、を含み、前記HDD記憶工程では、前記ハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行うこととしたので、ハードディスクコントローラは、複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御や画像データを略同時にDMA転送を行うことができ、複数のHDDに対して、簡易な構成で高速な画像データの転送ができ、かつ複数のHDDを1台のHDDとして効率的に管理することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0117】
また、請求項8にかかる画像形成方法によれば、前記ハードディスクコントローラは、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備え、前記HDD記憶工程は、前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送コマンドをデコードして、DMA起動を指示する工程と、前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データのDMA転送を行う工程と、前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、ステートマシーンに転送する工程と、前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程と、を含むこととしたので、CPUがハードディスクコントローラのCPUI/F部のレジスタにコマンドをライトすることで、CPUI/F部は、複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示することでき、また、複数のHDDI/Fは、複数のHDDに対して各々独立して画像データのリード/ライトを行うことができ、より簡易な構成で複数のHDDを1台のHDDとしてより効率的に管理することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0118】
また、請求項8にかかる画像形成方法によれば、さらに、故障したHDDを検出するHDD故障判定工程を含み、前記HDD故障判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出する検出工程と、前記CPUI/F部が、前記検出工程の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別工程と、前記CPUが、前記レジスタをリードして故障したHDDを判定する判定工程と、を含むこととしたので、ハードディスクコントローラ内部のDMAデータ制御部のバッファの転送可能状態を監視することにより、不具合が生じたHDDを特定でき、複数のHDDのうち不具合が生じたHDDを特定することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0119】
また、請求項9にかかる画像形成方法によれば、速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程を含み、前記速度低下DMAデータ制御部判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出工程と、前記CPUI/F部が、前記検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別工程と、前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程と、を含むこととしたので、複数のDMAデータ制御部毎に内部のバッファのデータ蓄積状態によってアサートされるREQ信号の差を検出し、その差が閾値以上に遅いDMAデータ制御部に接続されているHDDを速度低下を起こしているHDDと特定でき、複数のHDDのうち速度低下を起こしているHDDを特定することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0120】
また、請求項10にかかる画像形成方法によれば、速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程を含み、前記速度低下DMAデータ制御部判定工程は、前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のデータバッファが使用可能な場合にアサートされるREQ信号の時間差を検出する検出工程と、前記CPUI/F部が、前記検出工程で検出された時間差が閾値以上の場合に、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別工程と、前記CPUI/F部が、前記速度低下DMAデータ制御部識別工程で前記レジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント工程と、前記CPUI/F部が、前記速度低下識別回数カウント工程のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別工程と、前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程と、を含むことしたので、複数のDMAデータ制御部毎に内部のデータバッファのデータ蓄積状態によってアサートされるデータ転送可能状態の差を検出し、その差が閾値以上に遅いDMAデータ制御部の回数をカウントし、あるDMAデータ制御部が閾値以上の回数に前記カウント値が達した場合、このDMAデータ制御部に接続されているHDDを振動等の突発的な外乱がある場合は除いて速度低下を起こしているHDDと特定することができ、複数のHDDのうち、振動等の突発的な外乱以外の要因で速度低下を起こしているHDDを特定することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0121】
また、請求項11にかかる画像形成方法によれば、請求項8〜請求項10のいずれか1つにかかる発明において、前記レジスタは、前記複数のハードディスクに共通の前記CPUのライト専用のレジスタと、前記複数のハードディスク毎に個別に設けられた前記CPUのリード専用のレジスタからなり、前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記共通レジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることとしたので、HDDへのコマンドやパラメータライト時にはレジスタへCPUが1つの値をライトすることで、複数のHDDへ同時にコマンドやパラメータを発行でき、ステータスやパラメータリード時には複数のHDDから同時に別々の値をリードでき、複数のHDDに対するコマンドやパラメータの発行およびステータスやパラメータのリードをより効率的に行うことが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0122】
また、請求項12にかかる画像形成方法によれば、請求項8〜請求項11のいずれか1つにかかる発明において、CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することとしたので、CPUI/F部は、複数のHDDへの画像データのDMA転送が確実に終了した後にCPUに対して割り込みを発生させることができ、画像データの転送エラーを防止することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0123】
また、請求項13にかかる画像形成方法によれば、請求項8〜請求項12のいずれか1つにかかる発明において、前記複数のHDDはATA規格に準拠したHDDであることとしたので、ATA規格に準拠したシステムを構築することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【0124】
また、請求項14にかかる画像形成方法によれば、請求項8〜請求項13のいずれか1つにかかる発明において、前記ハードディスクコントローラは、前記複数のHDDに対して、前記画像データの画素データを所定ビット単位で分割してDMA転送を行うこととしたので、画像データの分割が容易となると共に、複数のHDDに略同時に分割した画像データをDMA転送することが可能な画像形成方法を提供することが可能となるという効果を奏する。
【図面の簡単な説明】
【図1】 本発明の画像形成装置の構成を示すブロック図である。
【図2】 図1の画像形成装置の電子ソート機能を使用したコピー動作を説明するためのフローチャートである。
【図3】 図1のHDDアレイ制御ICの内部ブロック図である。
【図4】 図3のレジスタの構成を示す図である。
【図5】 図3のHDDI/Fの信号の入出力を説明するための図である。
【図6】 ステートマシンによるHDDへの書き込み時の信号発生を説明するための図である。
【図7】 ステートマシンによるHDDからの読み出し時の信号発生の例を説明する図である。
【図8】 HDDI/Fの動作を説明するための図である。
【図9】 画像データのHDDの蓄積方法を説明するための図である。
【図10】 FIFOメモリを使用した画像データの転送を説明するための図である。
【図11】 FIFOメモリを使用した画像データの転送を説明するための図である。
【図12】 FIFOメモリを使用した画像データの転送を説明するための図である。
【図13】 1台のHDDが故障した状態を説明するための図である。
【図14】 HDCONレジスタのフォーマットの一例を示す図である。
【図15】 HDDの転送速度が遅くなった状態を説明するための図である。
【図16】 CPU・DMAI/F部のCPUI/F部のカウント動作を説明するための図である。
【図17】 タイムアウトレジスタのフォーマットの一例を示す図である。
【図18】 CPU・DMAI/F部のCPUI/F部のカウント動作を説明するための図である。
【図19】 従来の技術を説明するための図である。
【符号の説明】
101 CPU
102 画像入力部
103 画像出力部
104 DMA制御IC
105 メモリ
106 HDDアレイ制御IC
107a、107b、107c、107d HDD A、B、C、D
201 CPU・DMAI/F部
202a、202b、202c、202d HDDI/F A、B、C、D
303a、303b、303c、303d レジスタ
401a、401b、401c 401d ステートマシン
402a 402b 402c 402d DMAデータ制御部
403 FIFOメモリ
Claims (14)
- 画像データを入力するための入力手段と、
画像形成装置の全体の動作を制御するCPUと、
前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、
前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、
画像データを格納するための複数のHDDと、
前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、
画像データの画像形成を行う画像形成手段と
を備え、
前記ハードディスクコントローラは、
前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、
前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fと
を備え、
前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、
前記CPU・DMAI/F部は、
前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、
前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部と
を有し、
前記複数のHDDI/Fは各々、
内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、
前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンと
を有し、
前記CPUI/F部は、
複数のDMAデータ制御部毎に内部のバッファが転送可能な場合にアサートされるREQ信号を検出する検出手段と、
前記検出手段の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別手段と
を含み、
前記CPUにより、前記レジスタをリードして故障したHDDを判断することを特徴とする画像形成装置。 - 画像データを入力するための入力手段と、
画像形成装置の全体の動作を制御するCPUと、
前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、
前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、
画像データを格納するための複数のHDDと、
前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、
画像データの画像形成を行う画像形成手段と、
を備え、
前記ハードディスクコントローラは、
前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、
前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fと
を備え、
前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、
前記CPU・DMAI/F部は、
前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、
前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部と
を有し、
前記複数のHDDI/Fは各々、
内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、
前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンと
を有し、
前記CPUI/F部は、
前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出手段と、
前記時間差検出手段で検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別手段と
を含み、
前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することを特徴とする画像形成装置。 - 画像データを入力するための入力手段と、
画像形成装置の全体の動作を制御するCPUと、
前記入力手段から入力される画像データを少なくとも1ページ分格納するためのメモリと、
前記メモリに対する画像データのリード/ライトを制御するDMAコントローラと、
画像データを格納するための複数のHDDと、
前記DMAコントローラと画像データの送受信を行い、前記複数のHDDに対する画像データのリード/ライトを制御するハードディスクコントローラと、
画像データの画像形成を行う画像形成手段と
を備え、
前記ハードディスクコントローラは、
前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、
前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fと
を備え、
前記複数のHDDに対して、略同時に、パラメータ設定、コマンド発行、およびステータスリード等の制御を行うとともに、前記画像データを分割して略同時にDMA転送を行い、
前記CPU・DMAI/F部は、
前記CPUでリード/ライト可能なレジスタを含み、前記CPUにより前記レジスタに設定されるコマンドをデコードして、前記複数のHDDへのリード/ライトの指示を行うための信号の生成およびDMA起動を指示するCPUI/F部と、
前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送するDMAI/F部と
を有し、
前記複数のHDDI/Fは各々、
内部に画像データを格納するバッファを含み、前記DMAI/F部から転送される画像データを前記バッファに格納した後、ステートマシーンに転送するDMAデータ制御部と、
前記CPUI/F部からリード/ライトの指示を受けた場合は、前記HDDに対してコマンドライト、ステータスリード等のアクセス信号を発生する一方、前記CPUI/F部からDMA起動の指示を受けた場合は、前記HDDに対してDMA用のインターフェース信号を発生し、画像データのDMA転送を行う前記ステートマシーンと
を有し、
前記CPUI/F部は、
前記複数のDMAデータ制御部毎に内部のバッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出手段と、
前記時間差検出手段で検出された時間差が閾値以上の場合に、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別手段と、
前記第1の速度低下DMAデータ制御部識別手段により前記レジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント手段と、
前記速度低下識別回数カウント手段のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別手段と
を含み、
前記CPUは、前記レジスタをリードして、速度低下したDMAデータ制御部を判断することを特徴とする画像形成装置。 - 前記レジスタは、前記複数のHDDに共通の前記CPUのライト専用のレジスタと、前記複数のHDD毎に個別に設けられた前記CPUのリード専用のレジスタからなり、
前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記ライト専用のレジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、
前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることを特徴とする請求項1〜請求項3のいずれか1つに記載の画像形成装置。 - 前記CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することを特徴とする請求項1〜請求項4のいずれか1つに記載の画像形成装置。
- 前記複数のHDDはATA規格に準拠したHDDであることを特徴とする請求項1〜請求項5のいずれか1つに記載の画像形成装置。
- 前記ハードディスクコントローラは、前記複数のHDDに対して、画像データの画素データを所定ビット単位で分割してDMA転送を行うことを特徴とする請求項1〜請求項6のいずれか1つに記載の画像形成装置。
- 画像データを入力する入力工程と、
DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、
前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、
前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、
故障したHDDを検出するHDD故障判定工程と
を含み、
前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、
前記HDD記憶工程は、
前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、
前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、
前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、
前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程と
を含み、
前記HDD故障判定工程は、
前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のバッファが使用可能な場合にアサートされるREQ信号を検出する検出工程と、
前記CPUI/F部が、前記検出工程の検出結果に基づき、データ転送が不可能なHDDを示すビットを前記レジスタにライトする故障HDD識別工程と、
前記CPUが、前記レジスタをリードして故障したHDDを判定する判定工程と
を含むことを特徴とする画像形成方法。 - 画像データを入力する入力工程と、
DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、
前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、
前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、
速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程と
を含み、
前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、
前記HDD記憶工程は、
前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、
前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、
前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、
前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程と
を含み、
前記速度低下DMAデータ制御部判定工程は、
前記CPUI/F部が、前記複数のDMAデータ制御部毎に前記バッファが転送可能な場合にアサートされるREQ信号の時間差を検出する時間差検出工程と、
前記CPUI/F部が、前記時間差検出工程で検出された時間差が閾値以上の場合に、前記レジスタにREQ信号のアサートが最も遅いDMAデータ制御部を示すビットをセットする速度低下DMAデータ制御部識別工程と、
前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程と
を含むことを特徴とする画像形成方法。 - 画像データを入力する入力工程と、
DMAコントローラが、入力される画像データをメモリにライトするメモリ記憶工程と、
前記DMAコントローラが、前記メモリから画像データをリードしてハードディスクコントローラに転送する転送工程と、
前記ハードディスクコントローラが、前記DMAコントローラから転送されてくる画像データを複数のHDDにライトするHDD記憶工程と、
速度低下したDMAデータ制御部を検出する速度低下DMAデータ制御部判定工程と
を含み、
前記HDD記憶工程では、前記CPUおよびDMAコントローラとのインターフェースを行うCPU・DMAI/F部と、前記複数のHDDに対して各々独立して画像データのリード/ライトを行うための複数のHDDI/Fとを備えたハードディスクコントローラは、前記複数のHDDに対して、略同時に、パラメータ設定、およびコマンド発行等の制御を行うとともに、画像データを分割して略同時にDMA転送を行い、
前記HDD記憶工程は、
前記CPU・DMAI/F部のCPUI/F部が、内部のレジスタに前記CPUにより設定されるDMA転送用のコマンドをデコードして、DMA起動を指示する工程と、
前記CPU・DMAI/F部のDMAI/F部が、前記複数のHDDI/Fが全て転送可能な場合に、前記複数のHDDI/Fに画像データを分割してDMA転送を行う工程と、
前記複数のHDDI/Fの各DMAデータ制御部が、前記DMAI/F部から転送される画像データをバッファに格納した後、HDDI/F内のステートマシーンに転送する工程と、
前記複数のHDDI/Fの各ステートマシーンが、前記CPUI/F部からDMA起動の指示を受けた場合は、前記複数のHDDに対して、DMA用のインターフェース信号を発生し、画像データのDMA転送を行う工程と
を含み、
前記速度低下DMAデータ制御部判定工程は、
前記CPUI/F部が、前記複数のDMAデータ制御部毎に内部のデータバッファが使用可能な場合にアサートされるREQ信号の時間差を検出する時間差検出工程と、
前記CPUI/F部が、前記時間差検出工程で検出された時間差が閾値以上の場合に、前記レジスタに速度低下したDMAデータ制御部を示すビットをセットする第1の速度低下DMAデータ制御部識別工程と、
前記CPUI/F部が、前記第1の速度低下DMAデータ制御部識別工程で前記レジスタにビットがセットされる回数を前記DMAデータ制御部毎にカウントする速度低下識別回数カウント工程と、
前記CPUI/F部が、前記速度低下識別回数カウント工程のカウント値が閾値以上になった場合に、前記レジスタに、当該カウント値に対応するDMAデータ制御部のビットをセットする第2の速度低下DMAデータ制御部識別工程と、
前記CPUが、前記レジスタをリードして、速度低下したDMAデータ制御部を判定する判定工程と
を含むことを特徴とする画像形成方法。 - 前記レジスタは、前記複数のHDDに共通の前記CPUのライト専用のレジスタと、前記複数のHDD毎に個別に設けられた前記CPUのリード専用のレジスタからなり、
前記ライト専用のレジスタには、前記複数のHDDのコマンドの発行やパラメータライト時に、前記CPUにより1つの値が書き込まれ、これに応じて、前記CPUI/F部は、前記ライト専用のレジスタに書き込まれた内容を複数のHDDに対して略同時に発行し、
前記リード専用のレジスタには、前記複数のHDDのステータスやパラメータリード時に、複数のHDDから同時にリードした値が前記CPUI/F部により各々書き込まれることを特徴とする請求項8〜請求項10のいずれか1つに記載の画像形成方法。 - 前記CPUI/F部は、前記複数のHDDから画像データのDMA転送終了時にアサートされる割り込み信号を全て受信した後、前記CPUに対して割り込みを発生することを特徴とする請求項8〜請求項11のいずれか1つに記載の画像形成方法。
- 前記複数のHDDはATA規格に準拠したHDDであることを特徴とする請求項8〜請求項12のいずれか1つに記載の画像形成方法。
- 前記ハードディスクコントローラは、前記複数のHDDに対して、前記画像データの画素データを所定ビット単位で分割してDMA転送を行うことを特徴とする請求項8〜請求項13のいずれか1つに記載の画像形成方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002024413A JP3895610B2 (ja) | 2001-03-21 | 2002-01-31 | 画像形成装置および画像形成方法 |
US10/100,916 US6806882B2 (en) | 2001-03-21 | 2002-03-20 | Method of and apparatus for forming image |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001-81630 | 2001-03-21 | ||
JP2001081630 | 2001-03-21 | ||
JP2002024413A JP3895610B2 (ja) | 2001-03-21 | 2002-01-31 | 画像形成装置および画像形成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002354217A JP2002354217A (ja) | 2002-12-06 |
JP3895610B2 true JP3895610B2 (ja) | 2007-03-22 |
Family
ID=26611736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002024413A Expired - Fee Related JP3895610B2 (ja) | 2001-03-21 | 2002-01-31 | 画像形成装置および画像形成方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6806882B2 (ja) |
JP (1) | JP3895610B2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003101740A (ja) * | 2001-09-20 | 2003-04-04 | Ricoh Co Ltd | 画像データ記憶装置 |
JP4144240B2 (ja) * | 2002-04-12 | 2008-09-03 | セイコーエプソン株式会社 | 制御装置および制御方法 |
US6772272B2 (en) * | 2002-04-25 | 2004-08-03 | International Business Machines Corporation | Apparatus and method for writing information to a designated information storage medium with an allocated data storage device using a specified information recording format |
US7124214B2 (en) * | 2003-03-28 | 2006-10-17 | Via Technologies Inc. | Method and related apparatus for controlling a peripheral device to transfer data to a bus |
US7114014B2 (en) * | 2003-06-27 | 2006-09-26 | Sun Microsystems, Inc. | Method and system for data movement in data storage systems employing parcel-based data mapping |
US20040268082A1 (en) * | 2003-06-27 | 2004-12-30 | Michael Yatziv | Method and system for parcel-based data mapping |
GB2405025B (en) | 2003-08-12 | 2006-05-17 | Hitachi Ltd | Recording/reproducing apparatus for video/audio signals |
JP2005202767A (ja) * | 2004-01-16 | 2005-07-28 | Toshiba Corp | プロセッサシステム、dma制御回路、dma制御方法、dmaコントローラの制御方法、画像処理方法および画像処理回路 |
US20050182863A1 (en) * | 2004-02-18 | 2005-08-18 | Arm Limited, | Direct memory access control |
US20050248584A1 (en) * | 2004-05-10 | 2005-11-10 | Koji Takeo | Imaging system and image processing apparatus |
US7224508B2 (en) * | 2004-09-13 | 2007-05-29 | Space Photonics, Inc. | MEMS-based optical communications beam steering apparatus |
JP4428208B2 (ja) * | 2004-11-16 | 2010-03-10 | 株式会社デンソー | 車両用物体認識装置 |
JP4966500B2 (ja) | 2005-02-08 | 2012-07-04 | 日本電気株式会社 | ディスクアレイ制御装置、ハードディスクドライブ及びディスクアレイ装置 |
US8325633B2 (en) * | 2007-04-26 | 2012-12-04 | International Business Machines Corporation | Remote direct memory access |
US8160452B1 (en) | 2008-01-07 | 2012-04-17 | Space Photonics, Inc. | Rapid acquisition, pointing and tracking optical system for free space optical communications |
US8456478B2 (en) * | 2008-10-30 | 2013-06-04 | Microchip Technology Incorporated | Microcontroller with integrated graphical processing unit |
CN103189911B (zh) * | 2010-11-01 | 2016-07-06 | 三菱电机株式会社 | 描绘装置以及描绘方法 |
JP6611496B2 (ja) * | 2014-08-28 | 2019-11-27 | キヤノン株式会社 | 印刷装置、印刷装置の制御方法、プログラム、及び記憶媒体 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1266524A (en) * | 1983-08-30 | 1990-03-06 | Shinobu Arimoto | Image processing system |
JPS6278623A (ja) * | 1985-10-02 | 1987-04-10 | Toshiba Corp | 磁気デイスク装置 |
JPS62192867A (ja) * | 1986-02-20 | 1987-08-24 | Mitsubishi Electric Corp | イメ−ジデ−タを扱うワ−クステ−シヨン |
US5321816A (en) * | 1989-10-10 | 1994-06-14 | Unisys Corporation | Local-remote apparatus with specialized image storage modules |
US5519849A (en) * | 1992-12-07 | 1996-05-21 | Digital Equipment Corporation | Method of reducing the complexity of an I/O request to a RAID-4 or RAID-5 array |
US6098121A (en) * | 1996-12-03 | 2000-08-01 | Matsushita Electric Industrial Co., Ltd. | Data transfer apparatus with improved throughput due to reduced processing overhead in interrupt process |
JPH10326154A (ja) | 1997-05-23 | 1998-12-08 | Brother Ind Ltd | アレイコントローラ及びデータサーバ |
-
2002
- 2002-01-31 JP JP2002024413A patent/JP3895610B2/ja not_active Expired - Fee Related
- 2002-03-20 US US10/100,916 patent/US6806882B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2002354217A (ja) | 2002-12-06 |
US20020138697A1 (en) | 2002-09-26 |
US6806882B2 (en) | 2004-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3895610B2 (ja) | 画像形成装置および画像形成方法 | |
US6191712B1 (en) | Circuit for aligning logical sectors with physical sectors in a disk storage system | |
US9128633B2 (en) | Semiconductor memory device and method of operating the semiconductor memory device | |
KR19990067732A (ko) | 복합 유니버설 시리얼 버스 제어기에 인터페이스를 제공하기 위한 장치 및 방법 | |
US20080301381A1 (en) | Device and method for controlling commands used for flash memory | |
US7774513B2 (en) | DMA circuit and computer system | |
JP4097883B2 (ja) | データ転送装置および方法 | |
US6973520B2 (en) | System and method for providing improved bus utilization via target directed completion | |
JPH11232214A (ja) | 情報処理装置用プロセッサおよびその制御方法 | |
US11095778B2 (en) | Storing and outputting log for failure analysis in image forming apparatus equipped with SATA system, control method therefor, and storage medium | |
JP2003101740A (ja) | 画像データ記憶装置 | |
JP4081843B2 (ja) | メモリ制御装置 | |
JPH1097489A (ja) | 磁気ディスク装置のブロック長変換方法及びブロック長変換装置 | |
JP2023135315A (ja) | コントローラ、画像形成装置、及びアクセス調停方法 | |
CN100371916C (zh) | Scsi磁盘记录装置与方法 | |
JP2004343205A (ja) | コントローラ装置、画像形成装置、メモリ制御方法、コンピュータプログラム及び記録媒体 | |
JP2000099391A (ja) | プリンタ装置およびプリンタ制御方法、並びに記録媒体 | |
JP2005174119A (ja) | 画像データ制御装置、画像形成装置及び画像データ制御方法 | |
JP3703958B2 (ja) | 情報処理装置 | |
JP2005092489A (ja) | データ転送回路及び電子機器 | |
JP2007334835A (ja) | メモリ制御装置及びその制御方法 | |
JPH0644193A (ja) | I/oレジスタアクセス方式 | |
JPH10177764A (ja) | 光ディスク記録装置 | |
JP4538054B2 (ja) | データ転送装置および方法 | |
JP2007165954A (ja) | 画像記録装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040921 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041122 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20041221 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20050527 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061214 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3895610 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121222 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131222 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |