(57)【要約】【課題】複数のＨＤＤに対して簡易な構成で画像データを高速で転送することができ、かつ複数のＨＤＤを１台のＨＤＤとして効率的に管理する。【解決手段】画像入力部１９２から入力されるデータを少なくとも１ページ分格納するメモリ１０５と、メモリ１０５に対するデータのリード／ライトを制御するＤＭＡ制御ＩＣ１０４と、データを格納する複数のＨＤＤ１０７ａ〜１０７ｄと、ＤＭＡ制御ＩＣ１０４とデータの送受信を行い、ＨＤＤ１０７ａ〜１０７ｄに対するデータのリード／ライトを制御するＨＤＤアレイ制御ＩＣ１０６とを備え、ＨＤＤアレイ制御ＩＣ１０６は、ＨＤＤ１０７ａ〜１０７ｄに対して、パラメータ設定、コマンド発行、およびステータスリードの少なくとも２つを並行して実行するとともに、この動作と並行して前記データを分割し、ＨＤＤ１０７ａ〜１０７ｄにへＤＭＡ転送を行う【選択図】        図１
2004343205.tif 000002
【特許請求の範囲】
【請求項１】
データを入力するための入力手段と、
前記入力手段から入力されるデータを少なくとも１ページ分格納する記憶手段と、
前記記憶手段に対する前記データのリード／ライトを制御するＤＭＡ制御手段と、
前記データを格納する複数の大容量記憶手段と、
前記ＤＭＡ制御手段とデータの送受信を行い、前記複数の大容量記憶手段に対するデータのリード／ライトを制御する大容量記憶制御手段と、
を備え、
前記大容量記憶制御手段は、前記複数の大容量記憶手段に対して、パラメータ設定、コマンド発行、およびステータスリードの少なくとも２つを並行して実行するとともに、この動作と並行して前記データを分割し、大容量記憶手段へＤＭＡ転送を行うことを特徴とするコントローラ装置。
【請求項２】
前記大容量記憶制御手段は、前記複数の大容量記憶手段に対して個別にアドレスの開始位置を設定する機能を備えていることを特徴とする請求項１記載のコントローラ装置。
【請求項３】
装置全体の制御を司るＣＰＵをさらに備えるとともに、
前記大容量記憶制御装置は、前記ＣＰＵおよびＤＭＡ制御手段とのインターフェースを行う第１のインターフェース部と、前記複数の大容量記憶手段に対して各々独立してデータのリード／ライトを行うための複数の第２のインターフェース部とを備え、
前記第１のインターフェース部は、前記ＣＰＵでリード／ライト可能なレジスタを含み、前記ＣＰＵにより前記レジスタに設定されるコマンドをデコードして、前記複数の大容量記憶手段へのリード／ライトの指示を行うための信号の生成およびＤＭＡ起動を指示する第３のインターフェース部と、前記第２のインターフェース部が全て転送可能な場合に、前記第２のインターフェース部にデータを分割してＤＭＡ転送する第４のインターフェース部とを備え、
前記第２のインターフェース部は各々内部にデータを格納するバッファを含み、前記第４のインターフェース部から転送されるデータを前記バッファに格納した後、ステートマシーンに転送するＤＭＡデータ制御部を備え、
前記ステートマシーンは、前記第３のインターフェース部からリード／ライトの指示を受けた場合は、前記大容量記憶手段に対してコマンドライト、ステータスリードのいずれかを含むアクセス信号を発生する一方、前記第３のインターフェース部からＤＭＡ起動の指示を受けた場合は、前記ＨＤＤに対してＤＭＡ用のインターフェース信号を発生し、データのＤＭＡ転送を行うことを特徴とする請求項１または２記載のコントローラ装置。
【請求項４】
前記レジスタは、前記複数の大容量記憶手段に共通の前記ＣＰＵのライト専用の第１のレジスタと、前記複数の大容量記憶手段毎に個別に設けられた前記ＣＰＵのリード専用の第２のレジスタと、前記ＣＰＵのリードライト可能な大容量記憶制御手段自体の設定をする第３のレジスタからなり、
前記第１のレジスタには、前記複数の大容量記憶手段のコマンドの発行および／またはパラメータライト時に、前記ＣＰＵにより１つの値が書き込まれ、
前記第２のレジスタには、前記複数の大容量記憶手段のステータスおよび／またはパラメータリード時に、複数の大容量記憶手段から並行してリードした値が前記第３のインターフェース部により各々書き込まれ、前記第３のレジスタにより設定された値で前記第１のレジスタにライトされたパラメータを複数の大容量記憶手段個別に変換し、前記第３のインターフェース部は、この変換された値を複数の大容量記憶手段に対してそれぞれ並行して発行することを特徴とする請求項３記載のコントローラ装置。
【請求項５】
前記大容量記憶手段がハードディスク装置からなることを特徴とする請求項１ないし４のいずれか１項に記載にコントローラ装置。
【請求項６】
請求項１ないし５のいずれか１項に記載のコントローラ装置と、
前記入力手段から入力される画像データに基づいて記録媒体に画像を形成する画像形成手段と、
を備えてなる画像形成装置。
【請求項７】
入力されるデータを少なくとも１ページ分格納する記憶手段、前記データを記憶する複数の大容量記憶手段とを備え、前記記憶手段と前記大容量記憶手段間のデータのリード／ライトを制御するメモリ制御方法において、
前記記憶手段から読み出されたデータを前記大容量記憶手段に格納する際、前記複数の大容量記憶手段に対して、パラメータ設定、コマンド発行、およびステータスリードの少なくとも２つを並行して実行するとともに、この実行動作と並行して前記データを分割し、前記大容量記憶手段へのＤＭＡ転送を並行して行うことを特徴とするメモリ制御方法。
【請求項８】
前記複数の大容量記憶手段に対して個別にアドレスの開始位置を設定することを特徴とする請求項７記載のメモリ制御方法。
【請求項９】
前記データが原稿を読み取って得られる画像データであることを特徴とする請求項７または８記載のメモリ制御方法。
【請求項１０】
請求項７ないし９のいずれか１項に記載のメモリ制御方法をコンピュータによって実行するためのコンピュータプログラム。
【請求項１１】
請求項１０記載のコンピュータプログラムが、コンピュータによって読み取られ、実行可能に記録されている記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のＨＤＤを並列に動作させることにより、例えば、電子ファイリングシステムで処理される画像データなどの膨大なデータを高速にリード／ライト可能なコントローラ装置、画像形成装置、メモリ制御方法、コンピュータプログラム及び記録媒体に関する。
【０００２】
【従来の技術】
従来、ハードディスクドライブ（ＨＤＤ）などの記憶装置を複数台並列に動作させることにより、データのリード／ライトの要求に高速に対応可能な記憶装置アレイが知られている。このような記憶装置アレイの制御部となるアレイコントローラとしては、パーソナルコンピュータのバス上に接続される拡張ボード形態のものがある。拡張ボード形態のアレイコントローラは、パソコンの拡張スロットに挿入され、アレイコントローラ自身は制御対象の記憶装置群と接続することにより、パソコン等からの指示に基づき、記憶装置群に対する制御を行うものである。アレイコントローラは、データのリード／ライトをデータのブロック単位で記憶装置群のドライブを変えて行う。
【０００３】
図１３は、従来のアレイコントローラ（ハードディスクコントローラ）が複数のＨＤＤにデータを書き込む際の書込方式の一例を示す説明図である。同図は、４台のＨＤＤに対して、９６ＫＢのデータを１６ＫＢ単位のブロックサイズで書き込む例を示している。
【０００４】
図１３に示すように、データを先頭から１６ＫＢ単位にディスク０から順番にデータを振り分けて書き込み、全てのディスクを一巡すると再びディスク０に戻り、順に書き込んでいく。一般的にＨＤＤは１６ＫＢ以上の容量のデータバッファを備えており、転送データをまずデータバッファに一旦格納した後、ディスクにデータを書き込む。上述した方式でＨＤＤに順番に書き込んでいくことにより、１台のＨＤＤが内部のデータバッファからディスクへデータを転送している間に他のＨＤＤへ書き込みが行えるので高速にデータ転送を行うことができる。
【０００５】
しかしながら、この方式では、アレイコントローラ側で専用のＣＰＵを設け、バス上のコマンドを解析してハードディスクの制御を行うようにソフトウェアで特別な制御をする必要があるため、アレイコントローラの装置構成が複雑になるという問題がある。そこで、複数のＨＤＤに高速に画像データの転送が可能でかつ複数のＨＤＤを効率的に管理することが可能なハードディスクコントローラが求められ、このようなハードディスクコントローラとしては、例えば特許文献１に開示された発明が公知である。
【０００６】
【特許文献１】
特開２００２−３５４２１７号公報
【０００７】
【発明が解決しようとする課題】
ところで、複数台ＨＤＤを使用している画像形成装置において、１台が故障した場合、その故障したＨＤＤを新しいＨＤＤに交換して使用する必要がある。ＨＤＤ製品は常に容量の増加や転送速度の向上があり、画像形成装置購入後、故障したＨＤＤを交換するときには新しいＨＤＤは性能が向上している可能性が高い。従来技術では４台のＨＤＤにデータを振り分けることで速度の向上を図っているがこのように１台だけＨＤＤが転送速度が速いものに交換された場合、常に転送速度が速いＨＤＤが他のＨＤＤの転送を終わるのを待ちながら、データ転送を行うことになる。この速度差が大きい場合は転送速度が遅いＨＤＤは常にディスクからヘッドでデータをアクセスするのに対して転送速度が速いＨＤＤでは内部のバッファがフル状態になってディスクからヘッドでデータをアクセスしない状態が生じる。この状態から他のＨＤＤのアクセスが追いついて転送速度が速いＨＤＤがディスクからヘッドでデータをアクセスしようとするとヘッドの位置を目的のセクタに合わせる必要があるので最大でディスク１回転の待ち時間が生じる。この待ち時間は５４００回転／分のＨＤＤではディスク１回転に要する時間、約１１ｍｓとなる。一方、５４００回転／分のＨＤＤのデータ転送速度が約３０ＭＢｙｔｅ／秒程度で１ページ分の画像データが約１０ＭＢｙｔｅであるとすると、転送に３３３ｍｓかかる。ゆえに１１ｍｓの回転待ちは、約３．３％に当たり、このような待ち時間が頻発すると１ページ分の画像データの転送時間に対して余分な時間が多くなり、複数台のＨＤＤを使用しているのにも関わらず速度低下をひきおこすことになる。
【０００８】
本発明は、このような従来技術の実情に鑑みてなされたもので、その目的は、複数の大容量記憶手段に対して簡易な構成でデータを高速で転送することができ、かつ複数の大容量記憶手段を１台の大容量記憶手段として効率的に管理することが可能なコントローラ装置、このコントローラ装置を備えた画像形成装置、複数の大容量記憶手段に対して簡易な構成でデータを高速で転送することができ、かつ複数の大容量記憶手段を１台の大容量記憶手段として効率的に管理することが可能なメモリ制御方法、このメモリ制御方法を実現するためのコンピュータプログラム及びこのコンピュータプログラムがコンピュータによって読み出し可能に記録された記録媒体を提供することにある。
【０００９】
【課題を解決するための手段】
前記目的を達成するため、第１の手段は、データを入力するための入力手段と、前記入力手段から入力されるデータを少なくとも１ページ分格納するメモリと、前記メモリに対する前記データのリード／ライトを制御するＤＭＡコントローラと、前記データを格納する複数の大容量記憶手段と、前記ＤＭＡコントローラとデータの送受信を行い、前記複数の大容量記憶手段に対するデータのリード／ライトを制御する大容量記憶制御手段とを備え、前記大容量記憶制御手段は、前記複数の大容量記憶手段に対して、パラメータ設定、コマンド発行、およびステータスリードの少なくとも２つを並行して（略同時に）実行するとともに、前記データを分割し、ＤＭＡ転送を並行して行うことを特徴とする。
【００１０】
第２の手段は、第１の手段において、前記大容量記憶制御手段は、前記複数の大容量記憶手段に対して個別にアドレスの開始位置を設定する機能を備えていることを特徴とする。
【００１１】
第３の手段は、第１または第２の手段において、装置全体の制御を司るＣＰＵをさらに備えるとともに、前記大容量記憶制御装置は、前記ＣＰＵおよびＤＭＡコントローラとのインターフェースを行う第１のインターフェース部と、前記複数の大容量記憶手段に対して各々独立してデータのリード／ライトを行うための複数の第２のインターフェス部とを備え、前記第１のインターフェース部は、前記ＣＰＵでリード／ライト可能なレジスタを含み、前記ＣＰＵにより前記レジスタに設定されるコマンドをデコードして、前記複数の大容量記憶手段へのリード／ライトの指示を行うための信号の生成およびＤＭＡ起動を指示する第３のインターフェース部と、前記第２のインターフェース部が全て転送可能な場合に、前記第２のインターフェース部にデータを分割してＤＭＡ転送する第４のインターフェース部とを備え、前記第２のインターフェース部は各々内部にデータを格納するバッファを含み、前記第４のインターフェース部から転送されるデータを前記バッファに格納した後、ステートマシーンに転送するＤＭＡデータ制御部を備え、前記ステートマシーンは、前記第３のインターフェース部からリード／ライトの指示を受けた場合は、前記大容量記憶手段に対してコマンドライト、ステータスリードのいずれかを含むアクセス信号を発生する一方、前記第３のインターフェース部からＤＭＡ起動の指示を受けた場合は、前記ＨＤＤに対してＤＭＡ用のインターフェース信号を発生し、データのＤＭＡ転送を行うことを特徴とする。
【００１２】
第４の手段は、第３の手段において、前記レジスタは、前記複数の大容量記憶手段に共通の前記ＣＰＵのライト専用の第１のレジスタと、前記複数の大容量記憶手段毎に個別に設けられた前記ＣＰＵのリード専用の第２のレジスタと、前記ＣＰＵのリードライト可能な大容量記憶制御手段自体の設定をする第３のレジスタからなり、前記第１のレジスタには、前記複数の大容量記憶手段のコマンドの発行および／またはパラメータライト時に、前記ＣＰＵにより１つの値が書き込まれ、前記第２のレジスタには、前記複数の大容量記憶手段のステータスおよび／またはパラメータリード時に、複数の大容量記憶手段から並行してリードした値が前記第３のインターフェース部により各々書き込まれ、前記第３のレジスタにより設定された値で前記第１のレジスタにライトされたパラメータを複数の大容量記憶手段個別に変換し、前記第３のインターフェース部は、この変換された値を複数の大容量記憶手段に対してそれぞれ並行して発行することを特徴とする。
【００１３】
第５の手段は、第１ないし第４の手段において、前記大容量記憶手段がハードディスク装置からなることを特徴とする。
【００１４】
第６の手段は、第１ないし第５の手段に係るコントローラ装置と、前記入力手段から入力される画像データに基づいて記録媒体に画像を形成する画像形成手段とから画像形成装置を構成したことを特徴とする。
【００１５】
第７の手段は、入力されるデータを少なくとも１ページ分格納するメモリと、前記データを記憶する複数の大容量記憶手段とを備え、前記メモリと前記大容量記憶手段間のデータのリード／ライトを制御するメモリ制御方法において、前記メモリから読み出されたデータを前記大容量記憶手段に格納する際、前記複数の大容量記憶手段に対して、パラメータ設定、コマンド発行、およびステータスリードの少なくとも２つを並行して（略同時に）実行するとともに、この実行動作と並行して前記データを分割し、前記大容量記憶手段へのＤＭＡ転送を並行して行うことを特徴とする。
【００１６】
第８の手段は、第７の手段において、前記複数の大容量記憶手段に対して個別にアドレスの開始位置を設定することを特徴とする。
【００１７】
第９の手段は、第７または第８の手段において、前記データが原稿を読み取って得られる画像データであることを特徴とする。
【００１８】
第１０の手段は、第７ないし第９の手段に係るメモリ制御方法をコンピュータプログラムによって構築し、コンピュータで実行させるようにしたことを特徴とする。
【００１９】
第１１の手段は、第１０の手段に係るコンピュータプログラムが、コンピュータによって読み取られ、実行可能に記録媒体に記録されていることを特徴とする。
【００２０】
なお、以下の実施形態において、前記入力手段は、画像入力部１０２に、記憶手段はメモリ１０５に、ＤＭＡ制御手段はＤＭＡ制御ＩＣ１０４に、大容量記憶手段はＨＤＤ  Ａ〜ＨＤＤ  Ｄ（１０７ａ〜１０７ｄ）に、大容量記憶制御手段は、ＨＤＤアレイ制御ＩＣに、装置全体の制御を司るＣＰＵはＣＰＵ１０１に、第１のインターフェイス部はＣＰＵ・ＤＭＡＩ／Ｆ部２０１に、第２のインターフェイス部はＨＤＤＩ／Ｆ部２０２ａ，２０２ｂ，２０２ｃ，２０２ｄに、第３のインターフェイス部はＣＰＵＩ／Ｆ２０１ａに、第４のインターフェイス部はＤＭＡＩ／Ｆ２０１ｂに、バッファはＦＩＦＯメモリ４０３に、レジスタはレジスタ２０１ｃに、ライト専用の第１のレジスタはＳＥＣＣＯＵＮＴＷレジスタ３０２、ＳＥＣＮＵＭＷレジスタ、ＣＹＬＬＯＷレジスタ、ＣＹＬＨＩＷレジスタ、ＤＥＶＨＷレジスタ、ＣＯＭＭＡＮＤレジスタに、リード専用の第２のレジスタはＳＥＣＣＯＵＮＴレジスタ３０３ａ〜３０３ｄ、ＳＥＣＮＵＭＲレジスタ、ＣＹＬＬＯＲレジスタ、ＣＹＬＨＩＲレジスタ、ＤＥＶＨＲレジスタ、ＳＴＡＴＵＳレジスタに、大容量記憶制御手段自体の設定を行うための第３のレジスタはＨＤＣＯＮレジスタ３０１に、画像形成手段は画像出力部１０３にそれぞれ対応する。
【００２１】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して説明する。
【００２２】
図１は本発明の実施形態に係る画像形成装置の構成を示すブロック図である。図１に示す画像形成装置は、画像形成装置の全体の動作を制御するＣＰＵ１０１と、ＡＤＦやスキャナ等からなり、原稿の画像データを読み取るための画像入力部１０２と、画像データを電子写真方式で紙に印字する画像出力部１０３と、メモリ１０５に対する画像データのリード／ライトを制御するＤＭＡ制御ＩＣ（ＤＭＡコントローラ）１０４と、例えば、ＤＲＡＭからなり、少なくとも１ページ分の画像データを格納するメモリ１０５と、４つのハードディスク装置（以下、ＨＤＤと称す）ＨＤＤ  Ａ，Ｂ，Ｃ，Ｄ１０７ａ，１０７ｂ，１０７ｃ，１０７ｄに対する画像データのリード／ライトを制御するＨＤＤアレイ制御ＩＣ（ハードディスクコントローラ）１０６と、画像データを格納するためのＡＴＡ規格に準拠した４つのＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄとを備えている。上記ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄは同一の構成となっている。
【００２３】
前記画像形成装置の通常のコピー動作は、以下のようにして行われる。
ＣＰＵ１０１により、通常のコピー動作の開始が指示されると、まず、画像入力部１０２で１ページ分の原稿の画像データが読み取られ、読み取られた原稿の画像データはＤＭＡ制御ＩＣ１０４に転送される。ＤＭＡ制御ＩＣ１０４は転送される画像データをメモリ１０５に一旦格納した後、画像出力部１０３に転送する。画像出力部１０３では画像データを転写紙に印字して出力する。
【００２４】
図２は、前記画像形成装置の電子ソートを使用したコピー動作を説明するためのフローチャートである。電子ソートを使用したコピー動作では、図２のフローチャートに示すように、ＣＰＵ１０１により、電子ソートを使用したコピー動作の開始が指示されると、まず、画像入力部１０２で１ページ分の原稿の画像データが読み取られ、読み取られた画像データはＤＭＡ制御ＩＣ１０４に転送される。ＤＭＡ制御ＩＣ１０４は、転送される画像データを一旦、メモリ１０５に格納する（ステップＳ１）。ＤＭＡ制御ＩＣ１０４は、メモリ１０５に格納した画像データを読み出して、ＨＤＤアレイ制御ＩＣ１０６に転送する。ＨＤＤアレイ制御ＩＣ１０６は、ＤＭＡ制御ＩＣ１０４から転送される画像データを、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに格納する（ステップＳ２）。この場合、メモリ１０５内の画像データは、ＤＭＡ制御ＩＣ１０４からＨＤＤアレイ制御ＩＣ１０６を通して、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに分割されて同時にＤＭＡ転送される（図９参照）。
【００２５】
ＣＰＵ１０１は、全ページの原稿の読み込みが終了したか否かを判断し（ステップＳ３）、全ページの原稿の読み込みが終了した場合には、ステップＳ４に移行する。一方、全ページの原稿の読み込みが終了していない場合には、全ページの原稿の読み込みが終了するまでステップＳ１〜ステップＳ３の動作を繰り返し実行する。
【００２６】
続いて、ＨＤＤアレイ制御ＩＣ１０６は、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに格納した画像データを読み出して、ＤＭＡ制御ＩＣ１０４に転送する。ＤＭＡ制御ＩＣ１０４はＨＤＤアレイ制御ＩＣ１０６から転送される画像データをメモリ１０５に格納した後（ステップＳ４）、画像出力部１０３に出力し、画像出力部１０３は、画像データを転写紙に印字して出力する（ステップＳ５）。そして、ＣＰＵ１０１は、全ページの画像出力が終了したか否かを判断し（ステップＳ６）、全ページの画像出力が終了した場合には、ステップＳ７に移行する。一方、全ページの画像出力が終了していない場合には、全ページの画像出力が終了するまでステップＳ４〜Ｓ６の処理を繰り返し実行する。
【００２７】
ステップＳ７では、ＣＰＵ１０１は、全ページの画像出力が終了した場合には、設定部数の出力が終了したか否かを判断し（ステップＳ７）、設定部数の画像出力が終了した場合には、当該フローを終了する。一方、設定部数の画像出力が終了していない場合には、設定部数の画像出力が終了するまで、ステップＳ４〜ステップＳ７の処理を繰り返し実行する。
【００２８】
本発明の特徴的な部分である前記ＨＤＤアレイ制御ＩＣ（ハードディスクコントローラ）１０６の構成および動作を図３〜図１２を参照して詳細に説明する。
【００２９】
ＨＤＤアレイ制御ＩＣ１０６は、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、同時にコマンド設定や画像データの転送を行う。図３は、図１のＨＤＤアレイ制御ＩＣ１０６の構成を示すブロック図である。ＨＤＤアレイ制御ＩＣ１０６は、同図に示す如く、ＣＰＵ１０１およびＤＭＡ制御ＩＣ１０４とのインターフェースとなるＣＰＵ・ＤＭＡＩ／Ｆ部２０１と、ＣＰＵ・ＤＭＡＩ／Ｆ部２０１からコマンドや画像データが転送され、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄにコマンドや画像データの転送を独立に行うＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄとから構成されている。ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは同一の構成となっている。
【００３０】
ＣＰＵ・ＤＭＡＩ／Ｆ部２０１は、ＣＰＵＩ／Ｆ部２０１ａと、ＤＭＡＩ／Ｆ部２０１ｂとを備えている。ＣＰＵＩ／Ｆ部２０１ａは、ＣＰＵ１０１とのインターフェースを行い、ＣＰＵ１０１でリード／ライト可能なレジスタ２０１ｃを有しており、レジスタ２０１ｃにＣＰＵ１０１により設定されたコマンドやパラメータをデコードし、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへのリードライトコマンド指示を行う信号の生成や内部のＤＭＡの起動を指示する。
【００３１】
ＤＭＡＩ／Ｆ部２０１ｂは、ＤＭＡ制御ＩＣ１０４とのインターフェースを行い、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのワード数蓄積後、ＤＭＡデータ制御部４０２ａ〜４０２ｄが全て転送可能な場合に、ＤＭＡデータ制御部４０２ａ〜４０２ｄに画像データの転送を行う。
【００３２】
ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは、各々、ステートマシン４０１ａ〜４０１ｄとＤＭＡデータ制御部４０２ａ〜４０２ｄとを備えている。ステートマシン４０１ａ〜４０１ｄは、ＣＰＵＩ／Ｆ部２０１ａからリードライトコマンド指示を受けた場合は、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対してコマンドライトやステータスリード等のＤＭＡ転送以外のアクセス信号を発生し、ＤＭＡ起動の指示を受けた場合は、ＤＭＡデータ制御部４０２ａ〜４０２ｄとのインターフェースをして画像データの転送を行い、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対してＤＭＡ用のインターフェース信号を発生し、画像データのＤＭＡ転送を行う。また、ステートマシン４０１ａ〜ｄは、ＤＭＡＩ／Ｆ部２０１ｂからデータ転送開始のトリガ信号ＲＴＲＧが転送されると、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに各々画像データの転送を行う。
【００３３】
ＤＭＡデータ制御部４０２ａ〜４０２ｄは、ＤＭＡＩ／Ｆ部２０１ｂとインターフェースを行い、内部に、図５に示すようにＤＭＡＩ／Ｆ部２０１ｂから転送される画像データを格納するためのトグルのＦＩＦＯメモリ（バッファ）４０３を有しており、ＦＩＦＯメモリ（バッファ）４０３にＨＤＤ１０７ａ〜１０７ｄに書き込む画像データを格納して、ＨＤＤ１０７ａ〜１０７ｄに画像データの転送を行う。
【００３４】
図４は、図３のＣＰＵＩ／Ｆ部２０１のレジスタ２０１ｃの構成例を示す図である。レジスタ２０１ｃは、ＣＰＵ１０１がＨＤＤアレイ制御ＩＣ１０６自体の設定のリードライトを行うためのＨＤＣＯＮレジスタ３０１、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに共通のＣＰＵ１０１のライト専用のレジスタ（ＳＥＣＣＯＵＮＴＷレジスタ３０２、ＳＥＣＮＵＭＷレジスタ、ＣＹＬＬＯＷレジスタ、ＣＹＬＨＩＷレジスタ、ＤＥＶＨＷレジスタ、ＣＯＭＭＡＮＤレジスタ）と、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄ毎に個別に設けられたＣＰＵ１０１のリード専用のレジスタ（ＳＥＣＣＯＵＮＴレジスタ３０３ａ〜３０３ｄ、ＳＥＣＮＵＭＲレジスタ、ＣＹＬＬＯＲレジスタ、ＣＹＬＨＩＲレジスタ、ＤＥＶＨＲレジスタ、ＳＴＡＴＵＳレジスタ）と各ＨＤＤに対して個別にアドレスの開始位置を設定するために用いるＬＢＡＢＡＳＥ＿Ａ〜Ｄレジスタを有する。
【００３５】
ライト専用のレジスタには、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへのコマンドの発行やパラメータライト時に、ＣＰＵ１０１により１つの値が書き込まれ、これに応じて、ＣＰＵＩ／Ｆ部２０１ａは、書込用のレジスタに書き込まれた内容をＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに同時に発行する。リード専用のレジスタには、ステータスやパラメータリード時に、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄから同時にリードした値がＣＰＵＩ／Ｆ部２０１ａにより各々書き込まれ、その内容がＣＰＵ１０１により参照される。このように、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに同時にコマンドやパラメータの設定を行なうため、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへの書込用のレジスタは１つの値が書き込めるようにしており、読出用のレジスタは各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄで別々の値が読み出される可能性があるため、４つの値を同時に読み出し可能な構成になっている。
【００３６】
各レジスタは４バイト構成になっている。同図において、６０００Ｈ番地はＨＤＤアレイ制御ＩＣ１０６自体の設定を行うためのＨＤＣＯＮレジスタ３０１、６００８Ｈ番地はＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのセクターカウントレジスタに書き込むセクターカウントを設定するためのＳＥＣＣＯＵＮＴＷレジスタ３０２を示す。６０１０Ｈ番地は、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのセクターカウントレジスタから各々リードしたデータ転送時に転送されるセクタ数が書き込まれるＳＥＣＣＯＵＮＴＲ＿Ａ〜Ｄレジスタ３０３ａ〜３０３ｄを示しており、ＳＥＣＣＯＵＮＴＲ＿Ａ〜Ｄレジスタ３０３ａ〜３０３ｄに書き込まれた値は、ＣＰＵ１０１で読み出すことができる。
【００３７】
６０１８〜６０５０Ｈまでのレジスタは、ＨＤＤ内部のアドレス設定に関するレジスタである。６０１８ＨはセクタナンバーをライトするためのＳＥＣＮＵＭＷレジスタ、６０２０ＨはセクタナンバーをリードするためのＳＥＣＮＵＭＲ＿Ａ〜Ｄレジスタを示す。６０２８ＨはシリンダーナンバーＬＯＷをライトするためのＣＹＬＬＯＷレジスタ、６０３０Ｈは、シリンダーナンバーＬＯＷをリードするためのＣＹＬＬＯＲ＿Ａ〜Ｄレジスタを示す。６０３８ＨはシリンダーナンバーＨＩＧＨをライトするためのＣＹＬＨＩＷレジスタ、６０４０ＨはシリンダーナンバーＨＩＧＨをリードするためのＣＹＬＨＩＲ＿Ａ〜Ｄレジスタを示す。６０４８ＨはデバイスヘッドをライトするためのＤＥＶＨＷレジスタ、６０５０ＨはデバイスヘッドをリードするためのＤＥＶＨＲ＿Ａ〜Ｄレジスタを示す。
【００３８】
ＨＤＤ内部のアドレスは前記セクタナンバー、シリンダーナンバーＬＯＷ、シリンダーナンバーＨＩＧＨ、デバイスヘッドの値を用いて指定される。ＨＤＤの内部アドレスはＬＢＡ（Ｌｏｇｉｃａｌ  Ｂｌｏｃｋ  Ａｄｄｒｅｓｓ）と呼ばれ、２８ビットのアドレスであり、アドレスの単位が１セクター（５１２バイト）である。このアドレスＬＢＡ［２７：０］の上位４ビットＬＢＡ［２７：２４］をデバイスヘッドの下位４ビット、次の８ビットＬＢＡ［２３：１６］をシリンダーナンバーＨＩＧＨで次の８ビットＬＢＡ［１５：８］をシリンダーナンバーＬＯＷで次の８ビットＬＢＡ［７：０］をセクタナンバーで指定することになっている。
【００３９】
６０５８Ｈは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへデータ転送等のコマンドを発行するためのＣＯＭＭＡＮＤレジスタを示しており、コマンドはＨＤＤへの書き込みのみであるため、読出用のレジスタはない。６０６０ＨはＨＤＤＡ１０７ａ〜ＨＤＤ  Ｄ１０７ｄからステータスをリードした値が書き込まれるＳＴＡＴＵＳ＿Ａ〜Ｄレジスタである。ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのステータスに関しては、読出用のレジスタのみであり、書込用のレジスタはない。６０６８Ｈは各ＨＤＤに対してＬＢＡを変換して与える用途に用いるレジスタでＬＢＡＢＡＳＥ＿Ａ〜Ｄレジスタである。各ＨＤＤに与えられるＬＢＡ［２７：０］はＤＥＶＨＷ、ＣＹＬＨＩＷ、ＣＹＬＬＯＷ、ＳＥＣＮＵＭＷで指定された値にＬＢＡＢＡＳＥを加えた値に変換されて与えられる。ＬＢＡＢＡＳＥは１単位がＬＢＡのアドレスで２０００００Ｈであり、設定値Ｎ×２０００００ＨがＤＥＶＨＷ、ＣＹＬＨＩＷ、ＣＹＬＬＯＷ、ＳＥＣＮＵＭＷで指定された値に足された値がＨＤＤに指定されるＬＢＡになる。２０００００Ｈはデータ量で１ＧＢｙｔｅである。例えば、ＤＥＶＨＷ［３：０］＝１Ｈ、ＣＹＬＨＩＷ＝２３Ｈ、ＣＹＬＬＯＷ＝４６Ｈ、ＳＥＣＮＵＭＷ＝７８Ｈで指定されたＬＢＡはＬＢＡＢＡＳＥの値が０ならＬＢＡ＝１２３４５６７ＨになるがＬＢＡＢＡＳＥ＿Ａ＝０ＡＨに設定されているとＬＢＡ’＝１２３４５６７Ｈ＋２０００００Ｈ×０ＡＨ＝１３７４５６７ＨがＨＤＤ  ＡのＬＢＡとして与えられる。つまり、ＬＢＡＢＡＳＥ＿Ａ＝０ＡＨに設定したことでＤＥＶＨＷ、ＣＹＬＨＩＷ、ＣＹＬＬＯＷ、ＳＥＣＮＵＭＷで指定された値はＨＤＤへは変換された値で書かれることになる。（前記例の場合はレジスタＣＹＬＨＩＷ＝２３Ｈと設定するとＨＤＤＡに書かれるシリンダーナンバーＨＩＧＨレジスタの値が３７Ｈになる。）
ＬＢＡＢＡＳＥ＿Ａ〜Ｄレジスタで各ＨＤＤＡ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して個別にＬＢＡの開始位置を変更することができる。ＬＢＡは値が大きいほどディスクの内周側になるので内周側ほどアクセス速度が遅くなり、転送速度の速いＨＤＤはＬＢＡの開始位置をより内周側から始めるようにＬＢＡＢＡＳＥレジスタで設定すれば、他のＨＤＤと転送速度を合わせることができる。
【００４０】
図５は、図３のＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄの信号の入出力を説明するための図である。ＣＰＵＩ／Ｆ部２０１ａは、ＣＰＵ１０１によりレジスタ２０１ｃの設定が行われると、レジスタ２０１ｃのアドレスをデコードして、ＩＤＥ（Ｉｎｔｅｇｒａｔｅｄ  Ｄｅｖｉｃｅ  Ｅｌｅｃｔｒｏｎｉｃｓ）のＩ／Ｆ信号であるＣＳ［１：０］（チップセレクト）、ＡＤ［２：０］（アドレス）と、Ｒ／Ｗの設定を行う信号と、レジスタ設定値（ＣＰＵｄａｔａ）と、データ転送開始のトリガ信号ＲＴＲＧをＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄの各ステートマシーン４０１ａ〜４０１ｄに発行する。
【００４１】
図６は、ステートマシン４０１ａ〜４０１ｄによるＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへの書き込み時の信号発生を示す説明図である。ＣＰＵＩ／Ｆ部２０１ａでは、例えば、ＣＰＵ１０１によりレジスタ２０１ｃの６００８ＨのＳＥＣＣＯＵＮＴＷレジスタに「０７Ｈ」が書き込まれると、ＣＰＵＩ／Ｆ部２０１ａは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して同時に同じＩＤＥの信号を出力する。これに応じて、ステートマシーン４０１ａ〜４０１ｄは、図６に示すように、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、ＣＳ［１：０］＝０１ｂ、ＡＤ［２：０］＝０１１ｂを指定するとともに、ＤＩＯＷ信号をアサートして、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのセクタカウントレジスタへ「０７Ｈ」の書き込みを行う。
【００４２】
ステートマシン４０１ａ〜４０１ｄは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへの書き込みが終了すると、ＣＰＵＩ／Ｆ部２０１ａへＲＳＴＢ（リターンストローブ）信号を発行する。ＣＰＵＩ／Ｆ部２０１ａは、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄの全てからＲＳＴＢが発行されると、ＣＰＵ１０１に対して次のレジスタ設定を許可する。
【００４３】
図７は、ステートマシン４０１ａ〜４０１ｄによるＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄからの読み出し時の信号発生を示す説明図である。レジスタ２０１ｃの６０５０Ｈのステータスレジスタからの読み出しが行われると、ステートマシン４０１ａ〜４０１ｄは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、ＣＳ［１：０］＝０１ｂ、ＡＤ［２：０］＝１１１ｂを指定し、ＤＩＯＷ信号をアサートすることでステータスレジスタからの読み出しを行う。この場合も、ＣＰＵＩ／Ｆ部２０１ａからの信号が同時にＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄに発行され、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して同時に同じＩＤＥの信号が出力される。
【００４４】
ステートマシン４０１ａ〜４０１ｄは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄからの読み出しが終了するとＣＰＵＩ／Ｆ部２０１へＲＳＴＢ（リターンストローブ）信号を発行する。ＣＰＵＩ／Ｆ部２０１ａはＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄの全てからＲＳＴＢ信号が発行されると、ＣＰＵ１０１に対して読み出しデータが有効であることを知らせる。
【００４５】
図８は、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄの動作を示す説明図である。メモリ１０５からＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに画像データをＤＭＡ転送する場合には、ＣＰＵ１０１が、ＨＤＤアレイ制御ＩＣ１０６のＣＰＵＩ／Ｆ部２０１ａのレジスタ２０１ｃにＤＭＡ転送に必要なパラメータをライトすると、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは、各々ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄにＤＭＡ転送に必要な記憶領域内のアドレス、転送セクタ数等のパラメータをセットする。
【００４６】
ＣＰＵ１０１は、レジスタ２０１ｃに必要なパラメータをセットした後にコマンド発行用の６０５８ＨのＣＯＭＭＡＮＤレジスタに、ＤＭＡライトのコマンドＣＡＨを書き込むと、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに同時にコマンドＣＡＨを発行する。このコマンドＣＡＨが発行されると、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄはデータ転送待ち状態になる。ＣＰＵ１０１は、レジスタ２０１ｃの６０００ＨのＨＤＣＯＮレジスタ内のデータ転送用のレジスタのＲＷビットを「１」に設定することで、メモリ１０５からＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄへのＤＭＡ転送を行うように転送方向を指定する。
【００４７】
次に、ＣＰＵ１０１がレジスタ２０１ｃのＨＤＣＯＮレジスタのＭＳＢ、データ転送開始ビットＤＥＸＥをセットすると、ＣＰＵＩ／Ｆ部２０１は、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄのステートマシン４０１ａ〜４０１ｄに対してＤＭＡ転送開始トリガＤＴＲＧ信号を発行し、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄのステートマシン４０１ａ〜４０１ｄはＤＭＡ転送用のタイミングでＨＤＤインターフェース信号を生成する。そして、ＤＭＡ制御ＩＣ１０４がメモリ１０５から読み出した画像データが、ＤＭＡＩ／Ｆ部２０１ｂを介してＤＭＡデータ制御部４０２ａ〜４０２ｄのＦＩＦＯメモリ４０３に格納された後、ステートマシーン４０１ａ〜４０１ｄによりＨＤＤ１０７ａ〜１０７ｄに書き込みが行われる。
【００４８】
ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄは、ＤＭＡ転送が設定セクタ数行われるとデータ転送終了を知らせるために割り込みを発行する。この時、各ＨＤＤ１０７ａ〜１０７ｄは、独立したインターフェースで動作しているのでデータ転送速度に多少差が生じる。そこで、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄの割り込み信号は、ＣＰＵＩ／Ｆ部２０１ａに出力され（不図示）、ＣＰＵＩ／Ｆ部２０１ａは、全ての割り込み信号が揃った時点で、ＣＰＵ１０１に対して割り込みを発生する。ＣＰＵ１０１は、割り込みを受けると、レジスタ２０１ｃの６０６０Ｈのステータスレジスタをリードし、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄのＤＭＡ転送後のステータスを確認する。
【００４９】
図９は、画像データのＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄの蓄積方法を示す説明図である。図９を参照して、画像データのＨＤＤ  Ａ１０７ａ〜ＨＤＤ
Ｄ１０７ｄの蓄積方法について説明する。
【００５０】
同図において、ｄは画像データの画素データを示している。同図の画像データは６４ビット（１画素６４ビット）となっている。ＨＤＤアレイ制御ＩＣ１０６では、ＤＭＡ／ＩＦ２０１ｂがＤＭＡ制御ＩＣ１０４から転送されてくる１画素６４ビットの画像データｄａｔａ（図５）を、図９に示すような割り当てで１６ビットずつに分割する。ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄを通して、分割された画像データはＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに略同時（並行して）に蓄積される。
【００５１】
前述のように、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄの速度差を吸収するため、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは、ＤＭＡデータ制御部４０２ａ〜４０２ｄ内にＦＩＦＯメモリ４０３をトグルで有している。図１０ないし図１２を参照し、前記ＦＩＦＯメモリ４０３を使用して行われる画像データの転送について説明する。
【００５２】
図１０および図１１に示すように、ＦＩＦＯメモリ４０３に空きがある場合は、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄ（ＤＭＡデータ制御部４０２ａ〜４０２ｄ）は、ＲＥＱ信号をアサートして画像データの転送を許可する。ＣＰＵ・ＤＭＡＩ／Ｆ部２０１は、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、同時に画像データを転送するため、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄが全てＲＥＱ信号をアサートしている場合に画像データの転送を行う。図１０および図１１に示すように、ＣＰＵ・ＤＭＡＩ／Ｆ部２０１からの画像データの書き込みにより、ＦＩＦＯメモリ４０３がフル状態になった後、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄはＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して画像データｄａｔａの転送を開始する。
【００５３】
また、図１１に示すように、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄは、ＦＩＦＯメモリ４０３をトグルで有しているため、ＣＰＵ・ＤＭＡＩ／Ｆ部２０１からの画像データの受信とＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対しての画像データの転送を同時に行うことができる。また、図１２に示すように、一方のＦＩＦＯメモリ４０３がフル状態で他方のＦＩＦＯメモリ４０３がＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに画像データの転送中である場合には、ＦＩＦＯメモリ４０３へ画像データが転送できないため、ＨＤＤＩ／Ｆ  Ａ２０２ａ〜ＨＤＤＩ／Ｆ  Ｄ２０２ｄ（ＤＭＡデータ制御部４０２ａ〜４０２ｄ）はＲＥＱ信号をネゲートする。この場合、ＣＰＵ・ＤＭＡＩ／Ｆ部２０１からの画像データの転送は行われない。
【００５４】
以上説明したように、本実施形態では、ＨＤＤアレイ制御ＩＣ（ハードディスクコントローラ）１０６で、ＣＰＵ１０１によってリード／ライト可能なレジスタ２０１ｃを通して、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、同時にパラメータの設定、コマンドの発行を行い、画像データのＤＭＡ転送時には各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄ毎に画像データを分割して同時にＤＭＡ転送を行っているので、簡易な制御で複数のＨＤＤを１台のＨＤＤと同様に制御を行うことができ、また、複数のＨＤＤを並列に動作させて高速な画像データの転送が可能となる。また、転送速度が異なるＨＤＤを混載して使用した場合でも個別に開始アドレスを設定することで速度の調節を行うことが可能でパフォーマンス低下を防ぐことができる。
【００５５】
なお、本実施形態では、ＨＤＤアレイ制御ＩＣ（ハードディスクコントローラ）１０６で、ＣＰＵ１０１によってリード／ライト可能なレジスタ２０１ｃを通して、ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して、同時にパラメータの設定、コマンドの発行を行っているが、各ＨＤＤ  Ａ１０７ａ〜ＨＤＤ  Ｄ１０７ｄに対して並行にパラメータ設定、コマンド発行が行われれば良く、さらには、ステータスリードも同時もしくは並行して行われればよい。
【００５６】
また、大容量記憶手段としてこの実施形態ではＨＤＤを例示しているが、その他公知の記憶手段に適用できることはいうまでもない。但し、コスト、容量、アクセス速度を勘案すると、現時点ではＨＤＤが最も好適である。
【００５７】
【発明の効果】
以上のように本発明によれば、複数のＨＤＤに対して、簡易な構成で高速な画像データの転送ができ、かつ複数のＨＤＤを１台のＨＤＤとして効率的に管理することが可能となり、性能が異なるＨＤＤを混載して使用した場合でも速度低下を防ぐことができるとともに、複数のＨＤＤを１台のＨＤＤとして効率的に管理することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る画像形成装置の構成を示すブロック図である。
【図２】図１に示した画像形成装置の電子ソートを使用したコピー動作の動作手順を示すフローチャートである。
【図３】図１のＨＤＤアレイ制御ＩＣの構成を示すブロック図である。
【図４】図３のＣＰＵＩ／Ｆ部のレジスタの構成の一例を示す図である。
【図５】図３のＨＤＤＩ／Ｆ  Ａ〜ＨＤＤＩ／Ｆ  Ｄの信号の入出力の状態を示す説明図である。
【図６】ステートマシンによるＨＤＤ  Ａ〜ＨＤＤ  Ｄへの書き込み時の信号発生を示す説明図である。
【図７】ステートマシンによるＨＤＤ  Ａ〜ＨＤＤ  Ｄからの読み出し時の信号発生を示す説明図である。
【図８】ＨＤＤＩ／Ｆ  Ａ〜ＨＤＤＩ／Ｆの動作を示す説明図である。
【図９】画像データのＨＤＤ  Ａ〜ＨＤＤ  Ｄの蓄積方法を示す説明図である。
【図１０】ＦＩＦＯメモリを使用して行われる画像データの転送時の状態を示す説明図である。
【図１１】ＦＩＦＯメモリを使用して行われる画像データの転送時の他の状態を示す説明図である。
【図１２】ＦＩＦＯメモリを使用して行われる画像データの転送時のさらに他の状態を示す説明図である。
【図１３】従来のアレイコントローラ（ハードディスクコントローラ）が複数のＨＤＤにデータを書き込む際の書込方式の一例を示す説明図である。
【符号の説明】
１０１  ＣＰＵ
１０２  画像入力部
１０３  画像出力部
１０４  ＤＭＡ制御ＩＣ
１０５  メモリ
１０６  ＨＤＤアレイ制御ＩＣ
１０７ａ〜１０７ｄ  ＨＤＤ
２０１  ＣＰＵ・ＤＭＡＩ／Ｆ部
２０１ａ  ＣＰＵＩ／Ｆ
２０１ｂ  ＤＭＡＩ／Ｆ
２０１ｃ  レジスタ
２０２ａ，２０２ｂ，２０２ｃ，２０２ｄ  ＨＤＤＩ／Ｆ部
４０３  ＦＩＦＯメモリ
【図１】
2004343205.tif 000003
【図２】
2004343205.tif 000004
【図３】
2004343205.tif 000005
【図４】
2004343205.tif 000006
【図５】
2004343205.tif 000007
【図６】
2004343205.tif 000008
【図７】
2004343205.tif 000009
【図８】
2004343205.tif 000010
【図９】
2004343205.tif 000011
【図１０】
2004343205.tif 000012
【図１１】
2004343205.tif 000013
【図１２】
2004343205.tif 000014
【図１３】
2004343205.tif 000015