(57)【要約】【課題】データ処理装置とメモリとの間でのデータの転送を、１つの処理機能に対して複数のDMACを使用して制御する場合にも、各DMACの起動、中断を高速に制御する。【解決手段】DMA起動制御回路１８は、本発明により設けられたハードウェアによる回路であり、データ処理モードがモード設定レジスタ１９に設定されると、複数の＃１DMA１２〜＃３DMA１４の各DMACのどのDMACを使用し、どのような順序で起動するか、どのような順序で終了させていけばよいかを、一意に決定し自動的にDMACの起動を管理する。また、DMA起動制御回路１８は、各＃１DMA１２〜＃３DMA１４がデータ処理回路１１との間で画像データの転送を行っている状態か否かを示す状態信号Ａ１〜Ａ３をモニターしており、この状態信号に基づいて、データ処理モード毎に＃１DMA１２〜＃３DMA１４の各DMACの起動を管理する。【選択図】図１
2007310731.tif 000002
【特許請求の範囲】
【請求項１】
データ処理装置とメモリとの間で、データ処理のためのデータの転送を制御するデータ転送装置において、ＤＭＡ起動制御回路と複数のＤＭＡＣとを備え、
前記ＤＭＡ起動制御回路は、前記複数のＤＭＡＣの起動を、１つの処理の開始指示により、所定の順序で実行することを特徴とするデータ転送装置。
【請求項２】
前記ＤＭＡ起動制御回路は、データ処理モードが設定され、このモードに応じて動作するＤＭＡＣを切り替え制御することを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記ＤＭＡ起動制御回路は、ハードウェアにより構成され、ソフトウェアによる個別の制御手順処理を持たないことを特徴とする請求項１または２記載のデータ転送装置。
【請求項４】
前記ＤＭＡ起動制御回路は、該ＤＭＡ起動制御回路で可能な最短時間で前記複数のＤＭＡＣの起動を制御することを特徴とする請求項３記載のデータ転送装置。
【請求項５】
データ処理装置とメモリとの間で、データ処理のためのデータの転送を制御するデータ転送装置において、ＤＭＡ起動制御回路と複数のＤＭＡＣとを備え、
前記ＤＭＡ起動制御回路は、前記複数のＤＭＡＣの中断を、１つの中断設定により、所定の順序で実行することを特徴とするデータ転送装置。
【請求項６】
前記ＤＭＡ起動制御回路は、データ処理モードが設定され、このモードに応じて中断するＤＭＡＣを切り替え制御することを特徴とする請求項５記載のデータ転送装置。
【請求項７】
前記ＤＭＡ起動制御回路は、ハードウェアにより構成され、ソフトウェアによる個別の制御手順処理を持たないことを特徴とする請求項５または６記載のデータ転送装置。
【請求項８】
前記ＤＭＡ起動制御回路は、該ＤＭＡ起動制御回路で可能な最短時間で前記複数のＤＭＡＣの中断を制御することを特徴とする請求項７記載のデータ転送装置。
【請求項９】
画像データの処理を行う機能を有する画像形成装置において、画像データの処理のために、請求項１ないし８のうち何れか１記載のデータ転送装置を備えることを特徴とする画像形成装置。
【請求項１０】
前記データ転送装置が、画像処理の種類毎に、複数備えられることを特徴とする請求項９記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送装置及び画像形成装置に係り、特に、ＭＦＰ等の画像形成装置内で画像データの処理を行う場合等に利用して好適なデータ転送装置及びこれを利用した画像形成装置に関する。
【背景技術】
【０００２】
近年、ＬＳＩ（大規模集積回路）は、動作速度は高速化し、微細加工技術の向上により多くの機能が、１つのＬＳＩに集積することが可能になっている。それに伴い、画像形成装置内での画像データの処理は、画像処理を行うデータ処理装置とメモリとの間でのデータの転送を、画像データ処理の１つの機能に複数のＤＭＡＣ（ＬＳＩにより構成され、ＣＰＵの力を利用せずに自身で直接メモリにアクセスする機能を有する）を割り当てて、複雑な画像処理の機能を並列処理により実現することができるようになっている。
【０００３】
この場合、個々のＤＭＡＣの動作タイミングの制御等も複雑になっており、通常、個々のＤＭＡＣの動作タイミングの制御は、ソフトウェアによる制御により個々のＤＭＡＣを制御することにより行われている。この制御は、１つの機能に利用する複数のＤＭＡＣの起動タイミング等の組み合わせが膨大になり、データ処理のモードにより各ＤＭＡＣの起動順に制約がある場合にも、制御手順書からソフトウェアにより各ＤＭＡＣの起動タイミングを調整して実現されている。
【０００４】
なお、画像処理を行うデータ処理装置とメモリとの間でのデータの転送を、複数のＤＭＡＣを使用して制御する従来技術として、例えば、特許文献１等に記載された技術が知られている。
【特許文献１】特開２００２−２７８９１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述したソフトウェアにより各ＤＭＡＣの起動タイミングを調整する従来技術は、ソフトウェアを複雑化するだけでなく、ハードウェアによる回路を動作制御する時間単位とソフトウェアで制御できる時間単位とに差があるため、システム動作としてタイムロスを発生させてしまうという問題点を有している。
【０００６】
また、前述の従来技術は、予期しないタイミング等でＤＭＡＣを動作制御してしまうことがあり、多くの問題を発生させると共に、ハードウェアによる回路で可能な最短時間での制御動作に比べ、必要以上に多くの時間を要する制御しかできないため、システム全体としてのパフォーマンスが劣化させてしまうという問題点も生じさせている。
【０００７】
本発明の目的は、前述した従来技術の問題点を解決し、データ処理装置とメモリとの間でのデータの転送を、１つの処理機能に対して複数のＤＭＡＣを使用して制御する場合にも、各ＤＭＡＣの起動を一括制御して高速に制御することを可能としたデータ転送装置及びこれを利用した画像形成装置を提供することにある。
【課題を解決するための手段】
【０００８】
前記目的を解決するための本発明の第１の手段は、データ処理装置とメモリとの間で、データ処理のためのデータの転送を制御するデータ転送装置において、ＤＭＡ起動制御回路と複数のＤＭＡＣとを備え、前記ＤＭＡ起動制御回路は、前記複数のＤＭＡＣの起動を、１つの処理の開始指示により、所定の順序で実行することを特徴とする。
【０００９】
また、本発明の第２の手段は、第１の手段において、前記ＤＭＡ起動制御回路は、データ処理モードが設定され、このモードに応じて動作するＤＭＡＣを切り替え制御することを特徴とする。
【００１０】
また、本発明の第３の手段は、第１または第２の手段において、前記ＤＭＡ起動制御回路は、ハードウェアにより構成され、ソフトウェアによる個別の制御手順処理を持たないことを特徴とする。
【００１１】
また、本発明の第４の手段は、第３の手段において、前記ＤＭＡ起動制御回路は、該ＤＭＡ起動制御回路で可能な最短時間で前記複数のＤＭＡＣの起動を制御することを特徴とする。
【００１２】
また、本発明の第５の手段は、データ処理装置とメモリとの間で、データ処理のためのデータの転送を制御するデータ転送装置において、ＤＭＡ起動制御回路と複数のＤＭＡＣとを備え、前記ＤＭＡ起動制御回路は、前記複数のＤＭＡＣの中断を、１つの中断設定により、所定の順序で実行することを特徴とする。
【００１３】
また、本発明の第６の手段は、第５の手段において、前記ＤＭＡ起動制御回路は、データ処理モードが設定され、このモードに応じて中断するＤＭＡＣを切り替え制御することを特徴とする。
【００１４】
また、本発明の第７の手段は、第５または第６の手段において、前記ＤＭＡ起動制御回路は、ハードウェアにより構成され、ソフトウェアによる個別の制御手順処理を持たないことを特徴とする。
【００１５】
また、本発明の第８の手段は、第７の手段において、前記ＤＭＡ起動制御回路は、該ＤＭＡ起動制御回路で可能な最短時間で前記複数のＤＭＡＣの中断を制御することを特徴とする。
【００１６】
また、本発明の第９の手段は、画像データの処理を行う機能を有する画像形成装置において、画像データの処理のために、第１ないし第８の手段のうち何れか１に記載のデータ転送装置を備えることを特徴とする。
【００１７】
さらに、本発明の第１０の手段は、第９の手段において、前記データ転送装置が、画像処理の種類毎に、複数備えられることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、複数のＤＭＡＣのそれぞれを、自動的に、かつ、最適のタイミングで起動し、また、自動的に、かつ、最適のタイミングで各ＤＭＡＣを順次中断していくことができるので、ソフトウェア制御による場合のような制御制約がなく、高速に各ＤＭＡＣを制御することができる。
【発明を実施するための最良の形態】
【００１９】
図１は本発明の一実施形態によるデータ転送装置の構成を示すブロック図である。以下に説明する本発明の実施形態は、ＭＦＰ等の画像形成装置内で画像データの処理を行う場合等に利用するものとして説明するが、１つの機能を複数のＤＭＡＣを使用して実行するものであれば、一般的な情報処理装置内に設けられ、各種のデータ処理に利用されるデータ転送装置にも適用することができる。
【００２０】
図１に示す本発明の実施形態によるデータ転送装置は、データ処理回路１１と、ＤＭＡＣとしての複数の＃１ＤＭＡ１２〜＃３ＤＭＡ１４と、メモリアービタ回路１５と、メモリＩ／Ｆ回路１６と、外部メモリ１７と、ＤＭＡ起動制御回路１８と、モード設定レジスタ１９とにより構成される。なお、図１では、ＤＭＡＣを３つ備えるとして示しているが、ＤＭＡＣの数は、限定されるものてはなく幾つあってもよい。
【００２１】
このように構成されるデータ転送装置は、ＭＦＰ等の画像形成装置内で画像データの処理を行う場合等に利用される場合、例えば、外部メモリ１７内の画像データが、＃１ＤＭＡ１２〜＃３ＤＭＡ１４の１つにより読み出されてデータ処理回路１１に与えられ、データ処理回路１１が処理した画像データを、＃１ＤＭＡ１２〜＃３ＤＭＡ１４の１つを介して外部メモリ１７に格納するというように利用される。そして、＃１ＤＭＡ１２〜＃３ＤＭＡ１４は、外部メモリ１７に対するデータの書き込み読み出しのためのメモリアクセスを、メモリアービタ回路１５、メモリＩ／Ｆ回路１６を介して行い、データ処理回路１１に対するデータの書き込み読み出しのためのアクセスを直接行う。
【００２２】
なお、外部メモリ１７は、そのメモリ形態を問わずどのようなものであってもよく、例えば、ＤＲＡＭによるメモリ、ハードディスク等の記憶装置、ネットワークを介して接続される他の装置内のメモリ、記憶装置であってよい。
【００２３】
前述において、データ処理回路１１での画像データの処理としては、例えば、画像の回転、縮小、拡大、合成等を代表的なものとして挙げることができ、これらの画像処理の種類（以下、機能という）毎に、複数の＃１ＤＭＡ１２〜＃３ＤＭＡ１４と、ＤＭＡ起動制御回路１８と、モード設定レジスタ１９とのセットが、機能の数だけ設けられる。これは、異なる機能の実行が同時並行的に行われることが多いためである。
【００２４】
１つの機能の実行のために１または複数のＤＭＡＣが同時に使用される。そして、同時に使用される複数のＤＭＡＣは、１つの機能（画像処理）の実行のため必要なモード情報に従って、それぞれの起動タイミングが予め定められており、ＤＭＡ起動制御回路１８は、データ処理モード情報が設定されるモード設定レジスタ１９の内容に従って、＃１ＤＭＡ１２〜＃３ＤＭＡ１４の各ＤＭＡＣの起動をハードウェア的に制御している。各機能毎のデータ処理モードの情報は、各機能により異なるものが用意されるが、１ピクセルのビット数を示す画像の種類、１枚の画像の大きさ（縦横のピクセル数）等を代表的なものとして挙げることができる。
【００２５】
ＤＭＡ起動制御回路１８は、本発明により設けられたハードウェアによる回路であり、データ処理モードがモード設定レジスタ１９に設定されると、複数の＃１ＤＭＡ１２〜＃３ＤＭＡ１４の各ＤＭＡＣのどのＤＭＡＣを使用し、どのような順序で起動するか、どのような順序で終了させていけばよいかを、一意に決定し自動的にＤＭＡＣの起動を管理する。また、ＤＭＡ起動制御回路１８は、各＃１ＤＭＡ１２〜＃３ＤＭＡ１４がデータ処理回路１１との間で画像データの転送を行っている状態か否かを示す状態信号Ａ１〜Ａ３をモニターしており、この状態信号に基づいて、データ処理モード毎に＃１ＤＭＡ１２〜＃３ＤＭＡ１４の各ＤＭＡＣの起動を管理する。
【００２６】
前述したデータ処理モードの設定は、図示しない画像形成装置全体の制御を行う制御装置からソフトウェアにより行われる。そして、このソフトウェアは、データ処理モードの設定後、処理の開始をＤＭＡ起動制御回路１８に指示するだけでよいことになり、このソフトウェアの構成をよりシンプルなものとすることができる。また、ハードウェアによるＤＭＡ起動制御回路１８の動作速度により最短時間での制御が可能になり、システムの動作速度がソフトウェアに依存しなくなり、タイムロスをなくすことができる。
【００２７】
図２は図１に示すデータ転送装置における＃１ＤＭＡ１２〜＃３ＤＭＡ１４の各ＤＭＡＣの起動について説明するタイミングチャートである。ここに示す図は、ある１つの機能の実行のためのデータ転送装置におけるＤＭＡ起動制御回路１８でのある１つのデータ処理モードにおける起動制御の例を示すものであるが、モードの数だけタイミング制約が存在することになる。また、図２に示す例は、１つの機能を実行するために、＃１ＤＭＡ１２〜＃３ＤＭＡ１４の３つのＤＭＡＣを必要し、また、与えられたデータ処理モードでの起動条件が、最初に、＃１ＤＭＡ１２を起動し、＃１ＤＭＡ１２が起動状態にある（状態信号が立ち上がっている）ことを条件に＃２ＤＭＡ１３を起動し、＃１ＤＭＡ１２、＃２ＤＭＡ１３が起動状態にある（状態信号が立ち上がっている）ことを条件に＃３ＤＭＡ１１４を起動するというものであるとしている。
【００２８】
図２において、ＤＭＡ起動制御回路１８は、モード設定レジスタ１９にデータ処理モード情報が設定され、時刻ｔ０で、処理の開始が指示されたものとする。これにより、ＤＭＡ起動制御回路１８は、前述した起動条件から最初に＃１ＤＭＡ１２を時刻ｔ１で起動する。この＃１ＤＭＡ１２の起動は、処理の開始が指示された後直ちに、クロックＣＬＫに同期して行われる。これにより、＃１ＤＭＡ１２が起動状態になり、データ処理回路１１と＃１ＤＭＡ１２との間の状態信号Ａ１が立ち上がる。
【００２９】
次に、ＤＭＡ起動制御回路１８は、＃１ＤＭＡ１２が起動状態にあることを条件に＃２ＤＭＡ１３を起動するという前述した起動条件に従って、状態信号Ａ１が立ち上がったことを確認できた後、直ちに、時刻ｔ２で＃２ＤＭＡ１３を起動する。図２に示す例では、＃１ＤＭＡ１２が起動された後、１クロック後に＃２ＤＭＡ１３を起動することができるが、これは、ＤＭＡ起動制御回路１８がハードウェア的に制御を行っているためであり、ソフトウェア制御の場合、数十〜数百ＣＬＫかかる。
【００３０】
次に、ＤＭＡ起動制御回路１８は、＃１ＤＭＡ１２、＃２ＤＭＡ１３が起動状態にあることを条件に＃３ＤＭＡ１１４を起動するという前述した起動条件に従って、状態信号Ａ１が立ち上がっており、かつ、状態信号Ａ２が立ち上がったことを確認できた後、直ちに、時刻ｔ３で＃３ＤＭＡ１４を起動する。この場合も、＃２ＤＭＡ１３が起動された後、１クロック後に＃３ＤＭＡ１４を起動することができるが、これは、ＤＭＡ起動制御回路１８がハードウェア的に制御を行っているためであり、ソフトウェアによる制御の場合、数十〜数百ＣＬＫかかる。
【００３１】
前述の＃１ＤＭＡ１２の起動から＃１ＤＭＡ１２〜＃３ＤＭＡ１４の全てのＤＭＡＣが起動されている状態で、図１に示すデータ転送装置は、与えられた機能の処理のために、データ処理回路１１と外部メモリ１７との間でのデータ転送の制御を行うことになる。そして、処理の終了後、＃１ＤＭＡ１２〜＃３ＤＭＡ１４を中断させることになるが、この場合にも、中断条件がデータ処理モードによって定められており、図２に示す例では、この中断条件が、＃２ＤＭＡ１３、＃３ＤＭＡ１４が起動されている状態で、＃１ＤＭＡ１２を中断させ、＃１ＤＭＡ１２が中断されていて、かつ、＃３ＤＭＡ１４がまだ起動中である場合に、＃２ＤＭＡ１３を中断させ、さらに、＃１ＤＭＡ１２、＃２ＤＭＡ１３がすでに中断状態にある場合に、＃３ＤＭＡ１４を中断させるというものであるとする。
【００３２】
各ＤＭＡＣの中断処理を行う場合、ＤＭＡ起動制御回路１８は、まず、＃２ＤＭＡ１３、＃３ＤＭＡ１４が起動されている状態で、＃１ＤＭＡ１２を中断するという前述した中断条件に従って、状態信号Ａ２、Ａ３が立ち上がっていることを確認して、時刻ｔ４で＃１ＤＭＡ１２を中断する。
【００３３】
次に、ＤＭＡ起動制御回路１８は、＃１ＤＭＡ１２が中断されていて、かつ、＃３ＤＭＡ１４がまだ起動中である場合に、＃２ＤＭＡ１３を中断するという前述した中断条件に従って、状態信号Ａ１が立ち下がった状態にあり、状態信号Ａ３が立ち上がっていることを確認して、時刻ｔ５で＃２ＤＭＡ１３を中断する。
【００３４】
その後、ＤＭＡ起動制御回路１８は、＃１ＤＭＡ１２、＃２ＤＭＡ１３がすでに中断状態にある場合に、＃３ＤＭＡ１４を中断するという前述の中断条件に従って、状態信号Ａ１、Ａ２がすでに立ち下がった状態となっていることを確認して、時刻ｔ６で＃３ＤＭＡ１４を中断する。
【００３５】
前述した各＃１ＤＭＡ１２〜＃３ＤＭＡ１４の中断は、図２に示している例から判るように、１ＣＬＫの時間間隔で行うことができる。起動時の処理で説明したと同様に、この場合にも、ソフトウェアによる制御の場合、多くの時間がかかってしますことになる。
【００３６】
前述した本発明の実施形態によれば、データ処理モードがモード設定レジスタ１９に設定された後、ＤＭＡ起動制御回路１８が、複数の＃１ＤＭＡ１２〜＃３ＤＭＡ１４の各ＤＭＡＣを、自動的に、かつ、最適のタイミングで起動し、また、自動的に、かつ、最適のタイミングで各ＤＭＡＣを順次中断していくことができるので、ソフトウェア制御による場合のような制御制約がなく、高速に各ＤＭＡＣを制御することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の一実施形態によるデータ転送装置の構成を示すブロック図である。
【図２】図１に示すデータ転送装置における複数のＤＭＡＣのそれぞれの起動について説明するタイミングチャートである。
【符号の説明】
【００３８】
１１  データ処理回路
１２  ＃１ＤＭＡ
１３  ＃２ＤＭＡ
１４  ＃３ＤＭＡ
１５  メモリアービタ回路
１６  メモリＩ／Ｆ回路
１７  外部メモリ
１８  ＤＭＡ起動制御回路
１９  モード設定レジスタ
【図１】
2007310731.tif 000003
【図２】
2007310731.tif 000004