(57)【要約】【課題】  回路規模の増大を抑制しつつＤＭＡ転送が開始から終了まで正常に実行されたか否かを確認することが容易なＤＭＡ転送制御回路を提供する。【解決手段】  複数のデバイス間で、ＣＰＵ３からのＤＭＡ転送を指示する指示命令に応じて複数のデータをＤＭＡ転送するＤＭＡ転送制御回路１において、指示命令に応じてＤＭＡ転送された複数のデータのうち、最初にＤＭＡ転送されたデータを記憶する第１シフトレジスタ１１と最後にＤＭＡ転送されたデータを記憶する第２シフトレジスタ１２とを備えた。また、第１シフトレジスタ１１及び第２シフトレジスタ１２は、記憶したデータをＣＰＵ３から読み出し可能に構成した。【選択図】      図１
2006277594.tif 000002
【特許請求の範囲】
【請求項１】
複数のデバイス間で、外部からのＤＭＡ転送を指示する指示命令に応じて複数のデータをＤＭＡ転送するＤＭＡ転送制御回路において、
前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最初にＤＭＡ転送されたデータを記憶する第１の記憶部と最後にＤＭＡ転送されたデータを記憶する第２の記憶部とを備え、
前記第１及び第２の記憶部は、記憶したデータを外部から読み出し可能に構成されていること
を特徴とするＤＭＡ転送制御回路。
【請求項２】
前記第１の記憶部は、前記最初にＤＭＡ転送されたデータから順に複数のデータを記憶し、
前記第２の記憶部は、前記最後にＤＭＡ転送されたデータから順に遡る複数のデータを記憶すること
を特徴とする請求項１記載のＤＭＡ転送制御回路。
【請求項３】
前記第１の記憶部は、複数のレジスタを有するシフトレジスタにより構成され、前記ＤＭＡ転送の開始から、前記複数のレジスタの数に達するまで前記ＤＭＡ転送されたデータを当該複数のレジスタに順次シフトさせつつ記憶し、
前記第２の記憶部は、複数のレジスタを有するシフトレジスタにより構成され、前記ＤＭＡ転送の開始から終了まで、前記ＤＭＡ転送されたデータを当該複数のレジスタに順次シフトさせつつ記憶すること
を特徴とする請求項２記載のＤＭＡ転送制御回路。
【請求項４】
前記第１及び第２の記憶部は、外部からの書込が禁止されていること
を特徴とする請求項１〜３のいずれかに記載のＤＭＡ転送制御回路。
【請求項５】
前記ＤＭＡ転送を行ったデータの数を計数する計数部をさらに備え、
前記計数部の計数値は、外部から読み出し可能に構成されていること
を特徴とする請求項１〜４のいずれかに記載のＤＭＡ転送制御回路。
【請求項６】
前記ＤＭＡ転送における転送元のデバイスから読み出されたデータに所定の変換処理を施して、前記ＤＭＡ転送における転送先のデバイスへ書込みを行うことにより前記ＤＭＡ転送を行う変換処理部を備え、
前記第１の記憶部の代わりに、前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最初に前記転送元のデバイスから読み出されたデータを記憶する第３の記憶部と最初に前記転送先のデバイスへ書込まれたデータを記憶する第４の記憶部とを備え、
前記第２の記憶部の代わりに、前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最後に前記転送元のデバイスから読み出されたデータを記憶する第５の記憶部と最後に前記転送先のデバイスへ書込まれたデータを記憶する第６の記憶部とを備え、
前記第３、第４、第５、及び第６の記憶部は、記憶したデータを外部から読み出し可能に構成されていること
を特徴とする請求項１記載のＤＭＡ転送制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部からのＤＭＡ転送を指示する指示命令に応じて複数のデータをＤＭＡ転送するＤＭＡ転送制御回路に関する。
【背景技術】
【０００２】
従来より、メモリや通信インターフェース等の複数のデバイス間で、ＣＰＵ（Central Processing Unit）からの指示命令に応じて複数のデータをＣＰＵを介さずにＤＭＡ（Direct Memory Access）転送するＤＭＡ転送制御回路が知られている。このようなＤＭＡ転送制御回路は、例えばパーソナルコンピュータや、複写機、ネットワークプリンタ等、種々の情報処理装置において、ＣＰＵを介さずにデータを転送し、ＣＰＵの処理負担を軽減する目的で広く用いられている。
【０００３】
ところで、このようなＤＭＡ転送制御回路を備えた情報処理装置を開発する場合において、例えば開発中の装置における誤動作の原因を解析するためやＤＭＡ転送制御回路の動作確認を行うためなどに、ＤＭＡ転送制御回路によるＤＭＡ転送が正常に行われたかどうかを確認したいというニーズがある。また、このような情報処理装置を運用する場合においても、誤動作等の障害が発生した際に、障害の原因を調査する手がかりとして、ＤＭＡ転送制御回路によるＤＭＡ転送が正常に行われたかどうかを確認したいというニーズもある。
【０００４】
そこで、ＤＭＡ転送を行ったデータを記憶するシフトレジスタを備え、ＤＭＡ転送後にシフトレジスタに記憶されているデータを参照することで、ＤＭＡ転送が正常に行われたかどうかを確認することができるようにしたＤＭＡ転送制御回路が知られている（例えば、特許文献１参照。）。
【特許文献１】特開昭６４−６８８４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上述のように、ＤＭＡ転送を行ったデータを記憶するシフトレジスタを備えるＤＭＡ転送制御回路では、ＤＭＡ転送を行ったデータ量がシフトレジスタの記憶容量を超えると、ＤＭＡ転送を行ったデータの一部しかシフトレジスタに記憶できないためにＤＭＡ転送が開始されてから終了するまでＤＭＡ転送が正常に実行されたか否かを確認することが困難であるという不都合があった。また、ＤＭＡ転送を行ったデータをすべてシフトレジスタに記憶しようとすると、シフトレジスタの回路規模が増大し、コストの増大を招くという不都合があった。
【０００６】
本発明は、このような問題に鑑みて為された発明であり、回路規模の増大を抑制しつつＤＭＡ転送が開始から終了まで正常に実行されたか否かを確認することが容易なＤＭＡ転送制御回路を提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、ＤＭＡ転送制御回路であって、複数のデバイス間で、外部からのＤＭＡ転送を指示する指示命令に応じて複数のデータをＤＭＡ転送するＤＭＡ転送制御回路において、前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最初にＤＭＡ転送されたデータを記憶する第１の記憶部と最後にＤＭＡ転送されたデータを記憶する第２の記憶部とを備え、前記第１及び第２の記憶部は、記憶したデータを外部から読み出し可能に構成されていることを特徴としている。
【０００８】
請求項２に記載の発明は、請求項１記載のＤＭＡ転送制御回路であって、前記第１の記憶部は、前記最初にＤＭＡ転送されたデータから順に複数のデータを記憶し、前記第２の記憶部は、前記最後にＤＭＡ転送されたデータから順に遡る複数のデータを記憶することを特徴としている。
【０００９】
請求項３に記載の発明は、請求項２記載のＤＭＡ転送制御回路であって、前記第１の記憶部は、複数のレジスタを有するシフトレジスタにより構成され、前記ＤＭＡ転送の開始から、前記複数のレジスタの数に達するまで前記ＤＭＡ転送されたデータを当該複数のレジスタに順次シフトさせつつ記憶し、前記第２の記憶部は、複数のレジスタを有するシフトレジスタにより構成され、前記ＤＭＡ転送の開始から終了まで、前記ＤＭＡ転送されたデータを当該複数のレジスタに順次シフトさせつつ記憶することを特徴としている。
【００１０】
請求項４に記載の発明は、請求項１〜３のいずれかに記載のＤＭＡ転送制御回路であって、前記第１及び第２の記憶部は、外部からの書込が禁止されていることを特徴としている。
【００１１】
請求項５に記載の発明は、請求項１〜４のいずれかに記載のＤＭＡ転送制御回路であって、前記ＤＭＡ転送を行ったデータの数を計数する計数部をさらに備え、前記計数部の計数値は、外部から読み出し可能に構成されていることを特徴としている。
【００１２】
請求項６に記載の発明は、請求項１記載のＤＭＡ転送制御回路であって、前記ＤＭＡ転送における転送元のデバイスから読み出されたデータに所定の変換処理を施して、前記ＤＭＡ転送における転送先のデバイスへ書込みを行うことにより前記ＤＭＡ転送を行う変換処理部を備え、前記第１の記憶部の代わりに、前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最初に前記転送元のデバイスから読み出されたデータを記憶する第３の記憶部と最初に前記転送先のデバイスへ書込まれたデータを記憶する第４の記憶部とを備え、前記第２の記憶部の代わりに、前記指示命令に応じてＤＭＡ転送された複数のデータのうち、最後に前記転送元のデバイスから読み出されたデータを記憶する第５の記憶部と最後に前記転送先のデバイスへ書込まれたデータを記憶する第６の記憶部とを備え、前記第３、第４、第５、及び第６の記憶部は、記憶したデータを外部から読み出し可能に構成されていることを特徴としている。
【発明の効果】
【００１３】
請求項１に記載の発明によれば、外部からの指示命令に応じてＤＭＡ転送された複数のデータのうち、最初にＤＭＡ転送されたデータが第１の記憶部により記憶され、最後にＤＭＡ転送されたデータが第２の記憶部により記憶され、第１及び第２の記憶部は、記憶したデータを外部から読み出し可能にされているので、ＤＭＡ転送が行われた後に第１及び第２の記憶部に記憶されたデータを外部から読み出して、ＤＭＡ転送の開始と終了とにおける転送データを確認することにより、最初から最後までＤＭＡ転送が正常に行われたか否かを容易に確認することができる。この場合、ＤＭＡ転送の対象となるデータ数が増大しても、第１及び第２の記憶部に記憶するデータ量を増大させる必要がないので、回路規模の増大を抑制しつつＤＭＡ転送が開始から終了まで正常に実行されたか否かを容易に確認することができる。
【００１４】
請求項２に記載の発明によれば、第１の記憶部によって、最初にＤＭＡ転送されたデータから順に複数のデータが記憶され、第２の記憶部によって、最後にＤＭＡ転送されたデータから順に遡る複数のデータが記憶されるので、ＤＭＡ転送が行われた後に第１及び第２の記憶部に記憶されたデータを外部から読み出して、ＤＭＡ転送の開始と終了とにおける転送データを複数確認することにより、最初から最後までＤＭＡ転送が正常に行われたか否かの判断における確実性を向上させることができる。
【００１５】
請求項３に記載の発明によれば、第１の記憶部によって、ＤＭＡ転送の開始から第１の記憶部を構成する複数のレジスタの数に達するまでＤＭＡ転送されたデータが順次シフトされつつ記憶され、第２の記憶部によって、ＤＭＡ転送の開始から終了まで、ＤＭＡ転送されたデータが順次シフトされつつ第２の記憶部を構成する複数のレジスタに記憶されるので、第１の記憶部に、最初にＤＭＡ転送されたデータから順に複数のデータを記憶させ、第２の記憶部に、最後にＤＭＡ転送されたデータから順に遡る複数のデータを記憶させることができる。
【００１６】
請求項４に記載の発明によれば、第１及び第２の記憶部は、外部からの書込が禁止されているので、外部回路が誤動作して誤って第１及び第２の記憶部に記憶されているデータを書き換えてしまい、ＤＭＡ転送が正常に行われたかどうかを確認するための手がかりが失われてしまうことを防止することができる。
【００１７】
請求項５に記載の発明によれば、計数部によって、ＤＭＡ転送を行ったデータの数が計数され、当該計数部の計数値は、外部から読み出し可能に構成されているので、ＤＭＡ転送が行われた後に計数部の計数値を外部から読み出して、ＤＭＡ転送が全ての転送対象データに対して実行されたか否かを確認することが容易となる。
【００１８】
請求項６に記載の発明によれば、外部からの指示命令に応じてＤＭＡ転送された複数のデータのうち、最初に転送元のデバイスから読み出された変換前のデータが第３の記憶部により記憶され、最初に転送先のデバイスへ書込まれた変換後のデータが第４の記憶部により記憶され、最後に転送元のデバイスから読み出された変換前のデータが第５の記憶部により記憶され、最後に転送先のデバイスへ書込まれた変換後のデータが第６の記憶部により記憶されるので、ＤＭＡ転送が行われた後に第３、第４、第５、及び第６の記憶部に記憶されたデータを外部から読み出して、転送元からのデータ読出し時に異常が発生したのか、転送先への書込時に異常が発生したのかを判別することが容易となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明に係る実施形態を図面に基づいて説明する。図１は、本発明の一実施形態に係るＤＭＡ転送制御回路１を備えた情報処理装置２の構成の一例を示すブロック図である。図１に示す情報処理装置２は、ＤＭＡ転送制御回路１と、ＣＰＵ（Central Processing Unit）３と、メモリインターフェイス部４と、メモリ５と、ＨＤＤ（Hard Disk Drive）６と、通信インターフェース部７とを備え、これらの各部がバス８によって互いに接続されて構成されている。
【００２０】
情報処理装置２は、例えばパーソナルコンピュータや、複写機、プリンタ、ファクシミリ、あるいはこれらの複合機等における機器の動作を制御する制御回路として用いられる情報処理装置である。そして、例えばＨＤＤ６に記憶されているプログラムをＤＭＡ転送制御回路１によってメモリ５へＤＭＡ転送することにより、メモリ５に記憶させたプログラムをＣＰＵ３が実行したり、通信インターフェース部７を介して外部から受信したデータを、ＤＭＡ転送制御回路１によってメモリ５へＤＭＡ転送することにより、メモリ５に記憶させたデータをＣＰＵ３がプログラムに従って処理したりするようになっている。
【００２１】
メモリ５は、例えば揮発性の記憶素子であるＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）、あるいは不揮発性の記憶素子であるＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）等の記憶素子により構成されており、ＣＰＵ３のプログラムや処理対象となるデータを記憶したり、一時的な作業領域として用いられたりする。
【００２２】
メモリインターフェイス部４は、ＣＰＵ３やＤＭＡ転送制御回路１からバス８を介してメモリ５をアクセス可能にするためのインターフェイス回路である。ＨＤＤ６には、例えば、ＣＰＵ３のプログラムや処理対象となるデータが予め記憶されている。
【００２３】
通信インターフェース部７は、例えばＵＳＢ（Universal Serial Bus）やイーサネット（登録商標）等の通信インターフェース回路で、ＣＰＵ３やＤＭＡ転送制御回路１から出力されたデータをＵＳＢ等の通信プロトコルに従った通信信号に変換し、その通信信号を、外部に接続されたＵＳＢ等の通信路９を介して他のパーソナルコンピュータ等の情報処理機器へ送信する。また、他の情報処理機器から通信路９を介して受信した通信信号をＣＰＵ３やＤＭＡ転送制御回路１の処理可能な形式のデータに変換する。これにより、情報処理装置２は、通信インターフェース部７に接続されたＵＳＢやインターネット等の通信ネットワークを介して外部に接続された他の通信機器、例えばパーソナルコンピュータ等の情報処理機器との間でデータを送受信可能に構成されている。
【００２４】
ＤＭＡ転送制御回路１は、ＣＰＵ３からの指示命令に応じて複数のデータをメモリ５、ＨＤＤ６、及び通信インターフェース部７等の複数のデバイス間でＤＭＡ転送するＤＭＡ転送制御回路で、第１シフトレジスタ１１（第１の記憶部）と第２シフトレジスタ１２（第２の記憶部）とデータカウンタ１３（計数部）とを備えている。
【００２５】
第１シフトレジスタ１１は、複数のレジスタ、例えば１０個のレジスタが直列に接続されたシフトレジスタにより構成され、ＤＭＡ転送制御回路１におけるＤＭＡ転送の開始から、第１シフトレジスタ１１における全てのレジスタ、例えば１０個のレジスタにデータが記憶されるまでＤＭＡ転送されたデータを順次シフトさせつつ記憶する。そして、第１シフトレジスタ１１における全てのレジスタにデータが記憶された後は、すでに記憶されたデータを保持し、新たなデータがＤＭＡ転送されても新たな記憶動作を行わない。
【００２６】
これにより、第１シフトレジスタ１１は、ＣＰＵ３からの指示命令に応じてＤＭＡ転送された複数のデータのうち、最初にＤＭＡ転送されたデータから順に１０個のデータを記憶するようになっている。
【００２７】
第２シフトレジスタ１２は、複数のレジスタ、例えば１０個のレジスタが直列に接続されたシフトレジスタにより構成され、ＤＭＡ転送制御回路１におけるＤＭＡ転送の開始から、ＤＭＡ転送が終了するまでＤＭＡ転送されたデータを順次シフトさせ、更新しつつ記憶する。これにより、第２シフトレジスタ１２は、ＣＰＵ３からの指示命令に応じてＤＭＡ転送された複数のデータのうち、最後にＤＭＡ転送されたデータから順に遡る１０のデータを記憶するようになっている。
【００２８】
データカウンタ１３は、ＤＭＡ転送制御回路１によりＤＭＡ転送されたデータ数を計数するカウンタで、例えばバス８が８ビット幅で、ＤＭＡ転送制御回路１により１バイト単位でデータ転送が行われる場合はデータカウンタ１３のカウント値は、ＤＭＡ転送制御回路１によりＤＭＡ転送されたバイト数を示し、例えばバス８が１６ビット幅で、ＤＭＡ転送制御回路１により１６ビットのワード単位でデータ転送が行われる場合はデータカウンタ１３のカウント値は、ＤＭＡ転送制御回路１によりＤＭＡ転送されたワード数を示している。
【００２９】
また、第１シフトレジスタ１１、第２シフトレジスタ１２、及びデータカウンタ１３は、記憶したデータ、及びカウンタ値がＣＰＵ３からバス８を介して読み出し可能に構成され、書込は禁止されている。
【００３０】
次に、上述のように構成されたＤＭＡ転送制御回路１の動作について説明する。例えば、情報処理装置２がプリンタの制御回路として用いられる場合、まず、ＣＰＵ３によって、ＤＭＡ転送制御回路１へ、通信インターフェース部７で受信されたデータ、例えば通信路９に接続されたパーソナルコンピュータから送信された印刷データをＨＤＤ６へＤＭＡ転送する旨の指示命令が出力される。そうすると、ＤＭＡ転送制御回路１は、通信インターフェース部７による受信待ち状態となる。
【００３１】
次に、通信インターフェース部７によって、例えば外部のパーソナルコンピュータから通信路９を介して印刷データが受信されると、通信インターフェース部７からデータを受信した旨の通知信号がＤＭＡ転送制御回路１へ出力される。そうすると、ＤＭＡ転送制御回路１によって、ＤＭＡ転送が開始され、通信インターフェース部７で印刷データの受信が終了するまで、受信データのＤＭＡ転送が繰り返される。
【００３２】
図２は、ＤＭＡ転送制御回路１の動作を説明するための説明図である。例えば、通信インターフェース部７でデータ１からデータｎまでのｎ個のデータを含む印刷データ７１が受信されると、ＤＭＡ転送制御回路１において、まずデータ１が、通信インターフェース部７から読み出されて第１シフトレジスタ１１と第２シフトレジスタ１２とで記憶されると共にＨＤＤ６へＤＭＡ転送され、データカウンタ１３のカウント値が一つ加算される。次に、データ２が、通信インターフェース部７から読み出されて第１シフトレジスタ１１と第２シフトレジスタ１２とで記憶されているデータをシフトさせつつ追加記憶されると共にＨＤＤ６へＤＭＡ転送され、データカウンタ１３のカウント値が一つ加算される。
【００３３】
そして、ＤＭＡ転送制御回路１において、同様の動作が繰り返されることにより、まず、データ１からデータ１０までのデータが第１シフトレジスタ１１と第２シフトレジスタ１２とに記憶されると共にＨＤＤ６へＤＭＡ転送され、データカウンタ１３のカウント値が１０となる。次に、ＤＭＡ転送制御回路１において、通信インターフェース部７からデータ１１が読み出される。
【００３４】
そうすると、第１シフトレジスタ１１におけるシフトレジスタを構成する１０個のレジスタには、既にデータ１〜データ１０が記憶されているので、第１シフトレジスタ１１においてはデータ１〜データ１０がそのまま保持される。一方、第２シフトレジスタ１２においては、データ１１が記憶されているデータをシフトさせつつ追加記憶されると共にＨＤＤ６へＤＭＡ転送され、データカウンタ１３のカウント値が一つ加算される。この際、データ１１は１１個目のデータであって、第２シフトレジスタ１２のレジスタ数である１０個を超えるので、第２シフトレジスタ１２に最先に記憶されたデータ１が破棄される。
【００３５】
これにより、第１シフトレジスタ１１には、最初にＤＭＡ転送されたデータ１から順に１０個のデータが記憶され、第２シフトレジスタ１２には、最後にＤＭＡ転送されたデータから順に遡る１０個のデータが記憶される。
【００３６】
同様の動作がデータｎまで繰り返されると、第１シフトレジスタ１１には、最初にＤＭＡ転送されたデータ１から順に１０個のデータ、すなわちデータ１〜データ１０が記憶され、第２シフトレジスタ１２には、最後にＤＭＡ転送されたデータから順に遡る１０個のデータ、すなわちデータｎ−９〜データｎが記憶され、ＨＤＤ６にはデータ１〜データｎ、すなわち印刷データ７１が記憶される。そして、データカウンタ１３のカウント値は、ＤＭＡ転送されたデータ数「ｎ」となる。
【００３７】
次に、ＣＰＵ３によって、第１シフトレジスタ１１に記憶されている１０個のデータと、ＨＤＤ６にＤＭＡ転送されて記憶されたデータの先頭から１０個のデータとが比較され、１０個のデータが一致すればＤＭＡ転送が正常に開始されたと判断される一方、一致しなければＤＭＡ転送の開始時に転送動作に異常があったと判断される。また、第２シフトレジスタ１２に記憶されている１０個のデータと、ＨＤＤ６にＤＭＡ転送されて記憶されたデータの最後から遡って１０個のデータとが比較され、１０個のデータが一致すればＤＭＡ転送が正常に終了したと判断される一方、一致しなければＤＭＡ転送が正常に終了しなかったと判断される。
【００３８】
この場合、ＤＭＡ転送の開始と終了とにおける動作が正常であれば、印刷データ７１の最初から最後までＤＭＡ転送が正常に行われたと推定することができることから、ＤＭＡ転送制御回路１は、印刷データ７１を全て記憶するｎ個のレジスタを備える必要がなく、ＤＭＡ転送の対象となるデータ数が増大しても、第１シフトレジスタ１１及び第２シフトレジスタ１２を構成するレジスタ数を増大させる必要がないので、回路規模の増大を抑制しつつＤＭＡ転送が開始から終了まで正常に実行されたか否かを容易に確認することができる。
【００３９】
また、印刷データ７１には、例えば印刷データ７１のデータ数が含まれており、ＣＰＵ３によって、ＨＤＤ６に記憶されている印刷データ７１のデータ数と、データカウンタ１３のカウント値とが比較され、一致すれば印刷データ７１のＤＭＡ転送が正常に行われたと判断され、一致しなければ印刷データ７１のＤＭＡ転送に異常が生じたと判断される。これにより、例えば印刷データ７１における最初の１０個と最後の１０個以外のデータが転送されなかったり、余分に転送されたりすることにより、印刷データ７１が正常にＤＭＡ転送されない異常を検出することができ、ＤＭＡ転送が全ての転送対象データに対して実行されたか否かを確認することが容易となる。
【００４０】
また、第１シフトレジスタ１１、第２シフトレジスタ１２、及びデータカウンタ１３は、記憶したデータ、及びカウンタ値の書込が禁止されているので、例えばＣＰＵ３等ＤＭＡ転送制御回路１の外部回路が誤動作して誤って第１シフトレジスタ１１、第２シフトレジスタ１２、及びデータカウンタ１３のデータやカウント値を書き換えてしまい、ＤＭＡ転送が正常に行われたかどうかを確認するための手がかりが失われてしまうことを防止することができる。
【００４１】
次に、例えば、ＨＤＤ６に記憶された印刷データ７１をメモリ５へ転送する場合、ＣＰＵ３によって、ＤＭＡ転送制御回路１へ、ＨＤＤ６に記憶された印刷データ７１の先頭位置と、データ数ｎと、転送先のメモリ５の先頭アドレスとを示す情報が、印刷データ７１をメモリ５へＤＭＡ転送する旨の指示命令として出力される。そうすると、ＤＭＡ転送制御回路１によって、ＤＭＡ転送が開始され、ＨＤＤ６からメモリ５へデータ１〜データｎ、すなわち印刷データ７１が転送される。この場合における第１シフトレジスタ１１、第２シフトレジスタ１２、及びデータカウンタ１３の動作、及びＣＰＵ３によるＤＭＡ転送が正常に行われたか否かの判定動作は上述の通信インターフェース部７からＨＤＤ６へＤＭＡ転送を行う際の動作と同様であるので、その説明を省略する。
【００４２】
なお、第１シフトレジスタ１１及び第２シフトレジスタ１２は、それぞれ１０個ずつのレジスタが直列に接続されて構成された例を示したが、例えば第１シフトレジスタ１１の代わりに最初にＤＭＡ転送されたデータを記憶し、保持するレジスタを一つ備え、第２シフトレジスタ１２の代わりにＤＭＡ転送されたデータを順次更新しつつ記憶することにより最後にＤＭＡ転送されたデータを記憶するレジスタを一つ備えてもよい。
【００４３】
また、ＤＭＡ転送制御回路１において、例えばメモリ５から読み出したデータを圧縮、又は伸張処理してＨＤＤ６へ書き込む変換処理部を備える場合のように、ＤＭＡ転送時にデータを加工する場合には、転送元から読み出したデータと転送先へ書き込むデータとが異なるので、例えば、読み出し用の第１シフトレジスタ１１（第３の記憶部）と、書込み用の第１シフトレジスタ１１（第４の記憶部）と、読み出し用の第２シフトレジスタ１２（第５の記憶部）と、書込み用の第２シフトレジスタ１２（第６の記憶部）とを備えてもよい。
【００４４】
これにより、ＤＭＡ転送時に異常が発生した場合、転送元からのデータ読出し時に異常が発生したのか、転送先への書込時に異常が発生したのかを判別することが容易となる。
【図面の簡単な説明】
【００４５】
【図１】本発明の一実施形態に係るＤＭＡ転送制御回路を備えた情報処理装置の構成の一例を示すブロック図である。
【図２】図１に示すＤＭＡ転送制御回路の動作を説明するための説明図である。
【符号の説明】
【００４６】
１    ＤＭＡ転送制御回路
２    情報処理装置
３    ＣＰＵ
４    メモリインターフェイス部
５    メモリ
６    ＨＤＤ
７    通信インターフェース部
８    バス
９    通信路
１１  第１シフトレジスタ
１２  第２シフトレジスタ
１３  データカウンタ
【図１】
2006277594.tif 000003
【図２】
2006277594.tif 000004