(57)【要約】【課題】少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができるデータ転送制御装置を提供する。【解決手段】バスマスタ５１にマスタバス５１ａを介して接続されたＢＩＵ＿Ｒ１０を介して接続された複数のバススレーブ１１、６１ａ及び６１ｂと、この複数のバススレーブ１１、６１ａ及び６１ｂの中の第１バススレーブ１１と複数の第２バススレーブ６１ａ及び６１ｂとの間を接続する転送用バス６０とを備え、転送指示信号によって転送用バス６０を用いたデータ転送を行うことが指示されている時に、複数の第２バススレーブ６１ａ及び６１ｂの中から選択された１つの第２バススレーブ６１ａ又は６１ｂと第１バススレーブ１１との間における転送用バス６０を用いたデータ転送を、ＲＡＭ用スレーブバス１０ａ上の制御信号バス１５に含まれる制御信号に従って実行する。【選択図】        図３
2004318340.tif 000002
【特許請求の範囲】
【請求項１】
バスマスタと、
前記バスマスタにマスタバスを介して接続されたバスインタフェースと、
前記バスインタフェースにスレーブバスを介して接続された複数のバススレーブと、
前記複数のバススレーブの中の第１バススレーブと複数の第２バススレーブとの間を接続する転送用バスと、
前記複数の第２バススレーブの中から１つを選択するための選択信号を出力する選択部と、
前記転送用バスを用いたデータ転送を行うかどうかを指示するための転送指示信号を出力する転送指示部と、
前記転送指示信号による指示がなされている時に、前記選択信号によって選択された第２バススレーブと前記第１バススレーブとの間における前記転送用バスを用いたデータ転送を前記スレーブバスに出力されている制御信号に従って制御する転送制御部
とを備えたデータ転送制御装置。
【請求項２】
第１バススレーブはメモリから成り、転送指示部は、スレーブバスに出力されているアドレス信号によって指定される前記メモリのアドレス空間に応じて転送用バスを用いたデータ転送を行うかどうかを決定し、該決定に応じた転送指示信号を転送制御部に送ることを特徴とする請求項１記載のデータ転送制御装置。
【請求項３】
転送指示部はバスマスタに含まれ、前記バスマスタは転送用バスを用いたデータ転送を行うかどうかを指示するため転送指示信号を出力することを特徴とする請求項１記載のデータ転送制御装置。
【請求項４】
選択部はバスマスタに含まれ、前記バスマスタは複数の第２バススレーブの中から１つを選択するための選択信号を出力することを特徴とする請求項３記載のデータ転送制御装置。
【請求項５】
第１バススレーブは、外部に接続される外部デバイスを制御するための外部デバイス制御部から成り、転送制御部は、転送指示信号によって転送用バスを用いたデータ転送を行うことが指示されている時に、選択信号によって選択された第２バススレーブと前記外部デバイス制御部を介した前記外部デバイスとの間の前記転送用バスを用いたデータ転送をスレーブバスに出力されている制御信号及び前記外部デバイス制御部から出力される前記外部デバイスを定義する情報に基づいて制御することを特徴とする請求項４記載のデータ転送制御装置。
【請求項６】
複数の第２バススレーブは、各々が異なるアドレス空間に割り当てられた複数のモジュールから成り、選択部は、スレーブバスに出力されているアドレス信号によって指定されるアドレス空間に応じて前記複数のモジュールの中から１つを選択するための選択信号を出力することを特徴とする請求項１記載のデータ転送制御装置。
【請求項７】
バスマスタは、複数のモジュールを特定するためのアドレス信号を選択部に送り、前記選択部は、前記バスマスタからのアドレス信号に従って、前記複数のモジュールの中から１つを選択するための選択信号を出力することを特徴とする請求項６記載のデータ転送制御装置。
【請求項８】
第２バスマスタと、前記第２バスマスタに第２マスタバスを介して接続された第２バスインタフェースとを更に備え、転送制御部の制御によって選択信号によって選択された第２バススレーブと外部デバイス制御部を介して外部デバイスとの間で行われている転送用バスを用いたデータ転送に並行して、第２バスマスタは、前記第２バスインタフェースを介して前記複数の第２バススレーブの中の１つとの間でデータ転送を行うことを特徴とする請求項５記載のデータ転送制御装置。
【請求項９】
転送制御部は、バスマスタから転送指示信号を受け取った時に、第１バススレーブに接続されたバスインタフェースに対してデータ転送中であることを示すビジー信号を送って該バスインタフェースへのアクセスを禁止し、前記バスマスタは、前記転送指示信号に応答して前記転送制御部から前記転送指示信号を受け付けたことを表す転送指示受付信号を受け取った後に、外部デバイス制御部を介して外部デバイスとの間で行われている転送用バスを用いたデータ転送の終了を待たないで、第２バスインタフェースを介して複数の第２バススレーブの中の１つとの間でデータ転送を行うことを特徴とする請求項８記載のデータ転送制御装置。
【請求項１０】
バスマスタは、バス権を確保するためのスレーブバス権確保信号をバスインタフェースに供給し、前記スレーブバス権確保信号を受け取った前記バスインタフェースは、前記バスマスタ又は第２バスマスタからのアクセス要求を受け付けないで第１バススレーブと複数の第２バススレーブの中の１つとの間でデータ転送を行うことを特徴とする請求項８記載のデータ転送制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えばシステムＬＳＩの内部に形成された複数のモジュール間で行われるデータ転送を制御するデータ転送制御装置に関する。
【０００２】
【従来の技術】
従来、システムＬＳＩの内部に構築されるデータ転送制御装置が知られている。このデータ転送制御装置は、バスマスタにマスタバスを介して接続された複数のバスインタフェースユニットと、この複数のバスインタフェースユニットにスレーブバスを介してそれぞれ接続された複数のバススレーブとを備えている。バスマスタは、例えばＤＭＡ転送コントローラから構成される。複数のバススレーブは、例えばＲＡＭ、入出力モジュール等から構成される。
【０００３】
このデータ転送制御装置において、１つのバススレーブである入出力モジュールから他のバススレーブであるＲＡＭへのデータ転送は、次のようにして行われる。先ず、バスマスタであるＤＭＡ転送コントローラは、バスアービタにリクエストを出して、入出力モジュールにアクセスするためのバス権を獲得し、その後、入出力モジュールからスレーブバス、バスインタフェースユニット及びマスタバスを経由してデータを取り込む。次に、ＤＭＡ転送コントローラは、バスアービタにリクエストを出して、ＲＡＭにアクセスするためのバス権を獲得し、その後、先に入出力モジュールから取り込んだデータをＲＡＭに転送して書き込む。
【０００４】
関連する技術として、特許文献１は、共通のバスとマイクロプロセッサ及び付加機能回路ユニットとの間に介在して該バス上のデータ又はコマンドの転送を制御するバス制御手段を備え、マイクロプロセッサの命令フェッチ時に該マイクロプロセッサに対しノー・オペレーション命令を発行し、フェッチされたデータ又はコマンドを該マイクロプロセッサを介さずに付加機能回路ユニットへ転送するバス制御方式を開示している。このバス制御方式によれば、付加機能回路ユニットへのデータ又はコマンドの転送を効率良く行うことができ、ひいてはシステムの性能の向上に寄与する。
【０００５】
また、特許文献２は、命令を記憶するＲＯＭ、データを記憶するＲＡＭ、ＣＰＵ及び入出力装置とを備え、ＣＰＵが命令を読み出すタイミング、即ち、インストラクション・フェッチの期間に、ＲＡＭを周辺回路に開放し、周辺回路は、ＲＡＭ用のバスを介してＣＰＵの命令実行を妨げることなくＲＡＭにアクセスできるように構成したコンピュータ装置を開示している。このコンピュータ装置によれば、ＲＡＭと周辺回路との間で、ＤＭＡ方式によりデータを転送するとき、インストラクション・フェッチのタイミングでＤＭＡ動作を行なうことができるので、命令実行が妨げられず、また、ＣＰＵと周辺回路とによるＲＡＭへのアクセスの競合も防止される。
【０００６】
更に、特許文献３は、データ処理装置を開示している。このデータ処理装置において、マスタは、第１及び第２の外部バス上のモジュールと自己の間でのデータの送受信を実行し、また、第１及び第２の外部バス上の各モジュール同士のデータの送受信を実行させる。また、マスタは、送信側及び受信側のアドレス情報を外部バス上に送出して、同一或いは異なる外部バス上にあるモジュール間での直接的なデータの送受信を可能にしている。この構成により、バスの配線を必要最小限に抑えて各モジュール間での通信を可能にし、且つ省電力での動作が可能になっている。
【０００７】
【特許文献１】
特開平５−４６５３８号公報
【特許文献２】
特開平５−２１０６１６号公報
【特許文献３】
特開２００２−７３１３号公報
【０００８】
【発明が解決しようとする課題】
しかしながら、上述した従来のデータ転送制御装置でデータ転送を行う場合は、バス権の獲得、データリード、バス権の獲得及びデータライトという一連の動作をシリアルに行う必要があるので、これらの動作を行うために多数のクロックサイクルが必要である。その結果、データ転送に時間がかかり効率的でないという問題がある。
【０００９】
この発明は、上述した問題を解消するためになされたものであり、少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができるデータ転送制御装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
この発明に係るデータ転送制御装置は、上記目的を達成するために、バスマスタにマスタバスを介して接続されたバスインタフェースを介して接続された複数のバススレーブと、この複数のバススレーブの中の第１バススレーブと複数の第２バススレーブとの間を接続する転送用バスとを備え、転送指示信号によって転送用バスを用いたデータ転送を行うことが指示されている時に、複数の第２バススレーブの中から選択された１つの第２バススレーブと第１バススレーブとの間における転送用バスを用いたデータ転送をスレーブバスに出力されている制御信号に従って実行するものである。
【００１１】
【発明の実施の形態】
以下、この発明の実施の形態を図面を参照しながら詳細に説明する。なお、以下で説明する複数の実施の形態において、同一又は相当する構成要素には同一の符号を付して説明する。
【００１２】
先ず、この発明の理解を容易にし、且つこの発明との比較を容易にするために、現在一般的に使用されているデータ転送制御装置について説明する。
【００１３】
図１は、システムＬＳＩの内部に形成される一般的なデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、バススレーブとして機能する３個の内部モジュール１１、２１ａ及び２１ｂを備えている。内部モジュール１１は、ランダムアクセスメモリ（ＲＡＭ）から構成されており、以下では、ＲＡＭ１１と称する。また、内部モジュール２１ａは入出力モジュール（ＩＯａ）から構成されており、以下では第１内部モジュール２１ａと呼ぶ。内部モジュール２１ｂは入出力モジュール（ＩＯｂ）から構成されており、以下では第２内部モジュール２１ｂと呼ぶ。
【００１４】
このデータ転送制御装置は、大きく分けると、バスマスタ１、マスタバス１ａ、ＲＡＭ用バスインタフェースユニット（以下、「ＢＩＵ＿Ｒ」と略する）１０、ＲＡＭ用スレーブバス１０ａ、ＲＡＭ１１、ＩＯ用バスインタフェースユニット（以下、「ＢＩＵ＿Ｉ」と略する）２０、ＩＯ用スレーブバス２０ａ、第１内部モジュール２１ａ及び第２内部モジュール２１ｂから構成されている。
【００１５】
バスマスタ１は、ＢＩＵ＿Ｒ１０を介してＲＡＭ１１との間でデータ転送を行うと共にＢＩＵ＿Ｉ２０を介して第１内部モジュール２１ａ又は第２内部モジュール２１ｂとの間でデータ転送を行う。このバスマスタ１は、マスタバス１ａに接続されている。
【００１６】
マスタバス１ａは、マスタアドレスバス２、マスタ制御信号バス３、マスタライトデータバス４、ＲＡＭ用リードデータバス５及びＩＯ用リードデータバス６から構成されている。
【００１７】
マスタアドレスバス２は、バスマスタ１から出力されるマスタアドレス信号ＭＡＤＤＲをＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０に送るために使用される。マスタ制御信号バス３は、バスマスタ１から出力されるマスタ制御信号ＭＣＳをＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０に送るために使用される。このマスタ制御信号ＭＣＳには、アクセス要求信号ＲＥＱ、アクセス許可信号ＡＣＫ、アクセス終了信号ＥＮＤ及びマスタリード／ライト信号ＲＷが含まれる。アクセス要求信号ＲＥＱは、バスマスタ１がＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０に対してアクセスを要求する信号である。アクセス許可信号ＡＣＫは、ＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０からのアクセス可能である旨を表す信号の論理和をとった信号である。アクセス終了信号ＥＮＤは、ＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０から出力されるアクセスが終了した旨を表す信号の論理和をとった信号である。マスタリード／ライト信号ＲＷは、バスマスタ１がリードアクセスを行うかライトアクセスを行うかを指示する信号である。
【００１８】
マスタライトデータバス４は、バスマスタ１から出力されるマスタライトデータＭＤＷをＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０に送るために使用される。ＲＡＭ用リードデータバス５は、ＲＡＭ１１からＢＩＵ＿Ｒ１０を介して送られてくるマスタリードデータＭＤＲ＿Ｒをセレクタ７に送るために使用される。ＩＯ用リードデータバス６は、第１内部モジュール２１ａ又は第２内部モジュール２１ｂからＢＩＵ＿Ｉ２０を介して送られてくるマスタリードデータＭＤＲ＿Ｉをセレクタ７に送るために使用される。
【００１９】
ＲＡＭ用リードデータバス５及びＩＯ用リードデータバス６はセレクタ７の入力端子に接続されており、セレクタ７の出力端子はマスタリードデータバス８によってバスマスタ１に接続されている。このセレクタ７は、ＢＩＵ＿Ｒ１０及びＢＩＵ＿Ｉ２０の何れが動作中であるかに応じて、ＲＡＭ用リードデータバス５によって送られてくるマスタリードデータＭＤＲ＿Ｒ及びＩＯ用リードデータバス６によって送られてくるマスタリードデータＭＤＲ＿Ｉの何れかを選択し、マスタリードデータとしてマスタリードデータバス８に出力する。
【００２０】
ＢＩＵ＿Ｒ１０は、ＲＡＭ１１にアクセスするために、マスタバス１ａのプロトコルとＲＡＭ用スレーブバス１０ａのプロトコルとを相互に変換する。このＢＩＵ＿Ｒ１０は、ＲＡＭ用スレーブバス１０ａを介してＲＡＭ１１に接続されている。
【００２１】
ＲＡＭ用スレーブバス１０ａは、ＲＡＭアドレスバス１２、ＲＡＭリードデータバス１３、ＲＡＭライトデータバス１４及びＲＡＭ制御信号バス１５から構成されている。
【００２２】
ＲＡＭアドレスバス１２は、ＢＩＵ＿Ｒ１０から出力されるＲＡＭアドレス信号ＲＡＤＤＲをＲＡＭ１１に送るために使用される。ＲＡＭリードデータバス１３は、ＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲをＢＩＵ＿Ｒ１０に送るために使用される。ＲＡＭライトデータバス１４は、ＢＩＵ＿Ｒ１０から出力されるＲＡＭライトデータＲＤＷをＲＡＭ１１に送るために使用される。
【００２３】
ＲＡＭ制御信号バス１５は、ＢＩＵ＿Ｒ１０からＲＡＭ制御信号ＲＣＳとして出力されるＲＡＭチップセレクト信号ＲＣＳ及びＲＡＭリード／ライト信号ＲＲＷをＲＡＭ１１に送るために使用される。ＲＡＭチップセレクト信号ＲＣＳは、ＲＡＭ１１を選択するために使用される。ＲＡＭリード／ライト信号ＲＲＷは、ＲＡＭ１１に対してリードアクセスを行うかライトアクセスを行うかを指示する信号である。
【００２４】
ＢＩＵ＿Ｉ２０は、第１内部モジュール２１ａ及び第２内部モジュール２１ｂにアクセスするために、マスタバス１ａのプロトコルとＩＯ用スレーブバス２０ａのプロトコルとを相互に変換する。このＢＩＵ＿Ｉ２０は、ＩＯ用スレーブバス２０ａを介して第１内部モジュール２１ａ及び第２内部モジュール２１ｂに接続されている。
【００２５】
ＩＯ用スレーブバス２０ａは、ＩＯアドレスバス２２、第１ＩＯリードデータバス２３ａ、第２ＩＯリードデータバス２３ｂ、ＩＯライトデータバス２６及びＩＯ制御信号バス２７から構成されている。
【００２６】
ＩＯアドレスバス２２は、ＢＩＵ＿Ｉ２０からのＩＯアドレス信号ＩＡＤＤＲを第１内部モジュール２１ａ及び第２内部モジュール２１ｂに送るために使用される。第１ＩＯリードデータバス２３ａは、第１内部モジュール２１ａから読み出された第１ＩＯリードデータをセレクタ２４に送るために使用される。第２ＩＯリードデータバス２３ｂは、第２内部モジュール２１ｂから読み出された第２ＩＯリードデータをセレクタ２４に送るために使用される。ＩＯライトデータバス２６は、ＢＩＵ＿ＩからのＩＯライトデータＩＤＷを第１内部モジュール２１ａ及び第２内部モジュール２１ｂに送るために使用される。ＩＯ制御信号バス２７は、ＢＩＵ＿Ｉ２０から出力されるＩＯリード／ライト信号ＩＲＷを第１内部モジュール２１ａ及び第２内部モジュール２１ｂに送るために使用される。
【００２７】
セレクタ２４の出力端子はＩＯリードデータバス２５によってＢＩＵ＿Ｉ２０に接続されている。このセレクタ２４は、第１ＩＯチップセレクト信号ＩＣＳａ及び第２ＩＯチップセレクト信号ＩＣＳｂの何れがアクティブであるかに応じて、第１ＩＯリードデータバス２３ａによって送られてくる第１ＩＯリードデータ及び第２ＩＯリードデータバス２３ｂによって送られてくる第２ＩＯリードデータの何れか選択し、ＩＯリードデータＩＤＲとして、ＩＯリードデータバス２５に出力する。
【００２８】
また、ＢＩＵ＿Ｉ２０から第１内部モジュール２１ａ及び第２内部モジュール２１ｂに対し、第１ＩＯ選択信号線２８ａ及び第２ＩＯ選択信号線２８ｂがそれぞれ接続されている。第１ＩＯ選択信号線２８ａは、ＢＩＵ＿Ｉ２０が第１内部モジュール２１ａを選択するための第１ＩＯチップセレクト信号ＩＣＳａを送るために使用される。第２ＩＯ選択信号線２８ｂは、ＢＩＵ＿Ｉ２０が第２内部モジュール２１ｂを選択するための第２ＩＯチップセレクト信号ＩＣＳｂを送るために使用される。
【００２９】
次に、上記のように構成される一般的なデータ転送制御装置の動作を説明する。先ず、データ転送制御装置の概略の動作を説明する。
【００３０】
ここでは、データ転送制御装置の動作の一例として、ＲＡＭ１１に記憶されているデータを第１内部モジュール２１ａに転送する場合を説明する。データ転送制御装置の動作は、バスマスタ１がＲＡＭ１１からデータを読み出すリード動作と、バスマスタ１が第１内部モジュール２１ａにデータを書き込むライト動作とから構成されている。
【００３１】
先ず、バスマスタ１がＲＡＭ１１からデータを読み出すリード動作を説明する。バスマスタ１は、データをリードするために必要なマスタ制御信号ＭＣＳをマスタ制御信号バス３に出力する。同時に、ＲＡＭ１１のリード開始位置を指示するマスタアドレス信号ＭＡＤＤＲをマスタアドレスバス２に出力する。ＢＩＵ＿Ｒ１０は、マスタ制御信号ＭＣＳがマスタ制御信号バス３に出力されると、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲがＲＡＭ１１を指定するものであるかどうかを調べる。そして、ＲＡＭ１１を指定するマスタアドレス信号ＭＡＤＤＲであることを判断すると、ＢＩＵ＿Ｒ１０は、ＲＡＭ用スレーブバス１０ａに対してデータリードのプロトコルを実行する。
【００３２】
即ち、ＢＩＵ＿Ｒ１０は、ＲＡＭ制御信号バス１５に、ＲＡＭ１１からデータをリードするために必要なＲＡＭ制御信号ＲＣＳを出力する。同時に、ＲＡＭアドレスバス１２に、ＲＡＭ１１のリード開始位置を指示するアドレスをＲＡＭアドレス信号ＲＡＤＤＲとして出力する。これにより、ＲＡＭ１１からデータが読み出され、ＲＡＭリードデータＲＤＲとしてＲＡＭリードデータバス１３に出力される。ＢＩＵ＿Ｒ１０は、ＲＡＭリードデータバス１３を用いて送られているＲＡＭリードデータＲＤＲを、マスタリードデータＭＤＲ＿Ｒとしてマスタバス１ａの中のＲＡＭ用リードデータバス５に出力する。
【００３３】
バスマスタ１がＲＡＭ１１にアクセスする時は、セレクタ７は、図示しない制御部により、ＲＡＭリードデータバス１３を選択するように制御される。従って、セレクタ７は、ＲＡＭ用リードデータバス５に出力されたマスタリードデータＭＤＲ＿Ｒを選択し、マスタリードデータとしてマスタリードデータバス８に出力する。バスマスタ１は、このマスタリードデータバス８からのマスタリードデータを取り込む。以上により、バスマスタ１がＲＡＭ１１からデータを読み込むリード動作が完了する。
【００３４】
次に、バスマスタ１が第１内部モジュール２１ａにデータを書き込むライト動作を説明する。バスマスタ１は、データをライトするために必要なマスタ制御信号ＭＣＳをマスタ制御信号バス３に出力する。同時に、第１内部モジュール２１ａに割り当てられているアドレスをマスタアドレス信号ＭＡＤＤＲとしてマスタアドレスバス２に出力する。更に、先にＲＡＭ１１からリードしたデータを、マスタライトデータＭＤＷとしてマスタライトデータバス４に出力する。
【００３５】
ＢＩＵ＿Ｉ２０は、マスタ制御信号ＭＣＳがマスタ制御信号バス３に出力されると、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲが第１内部モジュール２１ａを指定するものであるかどうかを調べる。そして、第１内部モジュール２１ａを指定するマスタアドレス信号ＭＡＤＤＲであることを判断すると、ＢＩＵ＿Ｉ２０は、ＩＯ用スレーブバス２０ａに対してデータライトのプロトコルを実行する。
【００３６】
即ち、ＢＩＵ＿Ｉ２０は、第１ＩＯ選択信号線２８ａに出力する第１ＩＯ選択信号ＩＣＳａをアクティブにする。これにより、第１内部モジュール２１ａが選択されて動作可能になる。同時に、データをライトするために必要なＩＯリード／ライト信号ＩＲＷをＩＯ制御信号バス２７に出力する。また、ＩＯアドレスバス１２に、データの書き込み位置を指示するＩＯアドレス信号ＩＡＤＤＲを出力する。更に、マスタライトデータバス４から送られてきたマスタライトデータＭＤＷを、ＩＯライトデータＩＤＷとしてＩＯライトデータバス２６に出力する。これにより、バスマスタ１から送られてきたデータが第１内部モジュール２１ａに書き込まれる。以上により、バスマスタ１が第１内部モジュール２１ａにデータを書き込むライト動作が完了する。以上のリード動作及びライト動作により、ＲＡＭ１１に記憶されている１つのデータを第１内部モジュール２１ａに転送する動作が完了する。
【００３７】
次に、図２に示したタイミングチャートを参照しながら、データ転送制御装置の動作を更に詳細に説明する。
【００３８】
図２は４つのデータをＲＡＭ１１から第１内部モジュール２１ａに転送する場合のタイミングを示している。なお、図２中において、Ｒ０〜Ｒ３は、データ転送時に実行される４つのデータのリード動作に関連する信号であることを表し、Ｗ０〜Ｗ３は、データ転送時に実行される４つのデータのライト動作に関連する信号であることを表している。これらの記号Ｒ０〜Ｒ３、Ｗ０〜Ｗ３及びＲは、後に出現する他のタイミングチャートでも上記と同様の意味で使用される。
【００３９】
クロックサイクル（以下、「ＣＬＫ」と略する）“１”において、バスマスタ１はアクセス要求信号ＲＥＱ、マスタリード／ライト信号ＲＷ及びマスタアドレス信号ＭＡＤＤＲをアサートする。マスタリード／ライト信号ＲＷは、高レベル（以下、「Ｈレベル」という）でリードを、低レベル（以下、「Ｌレベル」という）でライトを表す。ＢＩＵ＿Ｒ１０は、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲを調べることによりＲＡＭ１１に対するアドレスが出力されており、且つ応答可能状態にあることを判断すると、ＣＬＫ１でアクセス許可信号ＡＣＫをアサートする。また、ＢＩＵ＿Ｒ１０は、ＣＬＫ１で、ＲＡＭチップセレクト信号ＲＣＳ、ＲＡＭアドレス信号ＲＡＤＤＲ及びＲＡＭリード／ライト信号ＲＲＷをアサートすることにより、ＲＡＭ１１に対してリード要求を出す。ＲＡＭリード／ライト信号ＲＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。
【００４０】
上記リード要求に応答してＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲは、リード要求の次のＣＬＫ“２”でＲＡＭリードデータバス１３に出力される。このＲＡＭリードデータバス１３に出力されたＲＡＭリードデータＲＤＲは、ＣＬＫ“２”において、ＢＩＵ＿Ｒを介してマスタバス１ａのＲＡＭ用リードデータバス５に、マスタリードデータＭＤＲ＿Ｒとして出力される。同時に、ＢＩＵ＿Ｒ１０は、アクセス終了信号ＥＮＤをアサートする。
【００４１】
ＲＡＭ用リードデータバス５に出力されたマスタリードデータＭＤＲ＿Ｒは、ＣＬＫ２において、セレクタ７で選択され、マスタリードデータバス８に出力される。このマスタリードデータバス８に出力されたリードデータは、ＣＬＫ“２”において、バスマスタ１に取り込まれる。以上により、バスマスタ１がＲＡＭ１１からデータを読み出すリード動作が完了する。
【００４２】
次に、バスマスタ１は、取り込んだリードデータを、次のＣＬＫ“３”において、マスタライトデータＭＤＷとしてマスタライトデータバス４に出力する。これと同時に、バスマスタ１はアクセス要求信号ＲＥＱ、マスタアドレス信号ＭＡＤＤＲ及びマスタリード／ライト信号ＲＷをアサートする。
【００４３】
ＢＩＵ＿Ｉ２０は、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲを調べることにより第１内部モジュール２１ａに対するアドレスが出力されており、且つ動作可能状態にあることを判断すると、ＣＬＫ“３”でアクセス許可信号ＡＣＫをアサートする。また、ＢＩＵ＿Ｉ２０は、ＣＬＫ“３”で、ＩＯチップセレクト信号ＩＣＳａ及びＩＯリード／ライト信号ＩＲＷをアサートする。更に、ＩＯアドレス信号ＩＡＤＤＲをＩＯアドレスバス２２に出力し、更に、ＩＯライトデータＩＤＷをＩＯライトデータバス２６に出力することにより第１内部モジュール２１ａに対してライト要求を出す。ＩＯリード／ライト信号ＩＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。これにより、ＩＯライトデータＩＤＷがＩＯアドレス信号ＩＡＤＤＲで指定された位置に書き込まれる。以上により、バスマスタ１が第１内部モジュール２１ａにデータを書き込むライト動作が完了し、以て、ＲＡＭ１１に記憶されている１つのデータを第１内部モジュール２１ａに転送する動作が完了する。以下、同様にして、２〜４番目のデータの転送が行われる。
【００４４】
なお、第１内部モジュール２１ａからＲＡＭ１１へのデータ転送は、バスマスタ１が第１内部モジュール２１ａからデータをリードする動作とバスマスタ１がＲＡＭ１１にデータを書き込む動作とにより構成される。これらの動作は、上述したＲＡＭ１１から第１内部モジュール２１ａへデータ転送する動作と同様であるので説明を省略する。
【００４５】
このデータ転送制御装置では、４つのデータをＲＡＭ１１から第１内部モジュール２１ａに転送するために１２個のクロックサイクルを要する。
【００４６】
実施の形態１．
次に、この発明の実施の形態１に係るデータ転送制御装置を説明する。このデータ転送制御装置は、バススレーブとして機能するようにＬＳＩ内に設けられた複数の内部モジュール間の転送を、転送用バスを用いて行うようにしたものである。なお、以下では、図１に示したデータ転送制御装置の構成要素と同一又は相当部分には、それらと同一の符号を付して説明を省略する。
【００４７】
図３は、この発明の実施の形態１に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図１に示した構成要素から、バスマスタ１、ＩＯ用リードデータバス６、セレクタ７、ＢＩＵ＿Ｉ２０、第１内部モジュール２１ａ、第２内部モジュール２１ｂ、セレクタ２４及びこれらに付属する配線を除去し、新たにバスマスタ５１、第１内部モジュール６１ａ、第２内部モジュール６１ｂ、転送制御部６２、セレクタ６６、セレクタ６８、ＩＯ選択レジスタ７０及び転送指示レジスタ７２を追加して構成されている。
【００４８】
バスマスタ５１は、ＢＩＵ＿Ｒ１０を介してＲＡＭ１１、第１内部モジュール６１ａ及び第２内部モジュール６１ｂにアクセスし、これらとの間でデータ転送を実行すると共に、ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間でデータ転送を行わせる。このバスマスタ５１は、マスタバス５１ａに接続されている。
【００４９】
マスタバス５１ａは、上述したように、ＩＯ用リードデータバス６が除去されている点を除けば、図１に示したマスタバス１ａと同じである。また、ＲＡＭ用リードデータバス５は、ＢＩＵ＿Ｒ１０から送られてくるマスタリードデータＭＤＲ＿Ｒをそのまま（図１に示すセレクタ７を経由することなく）マスタリードデータとしてバスマスタ５１に送る。
【００５０】
第１内部モジュール６１ａは、ＩＯ選択レジスタ７０から送られてくる第１選択信号ＳＥＬａによって選択される点を除けば、図１に示した第１内部モジュール２１ａと同じである。同様に、第２内部モジュール６１ｂは、ＩＯ選択レジスタ７０から送られてくる第２選択信号ＳＥＬｂによって選択される点を除けば、図１に示した第２内部モジュール２１ｂと同じである。
【００５１】
転送制御部６２は、ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間のデータ転送を制御するための転送制御信号ＴＣＳを、ＲＡＭ制御信号バス１５からのＲＡＭ制御信号ＲＣＳと転送指示レジスタ７２からの転送指示信号とに基づいて生成する。この生成された転送制御信号ＴＣＳは、転送制御信号バス６３によって第１内部モジュール６１ａ及び第２内部モジュール６１ｂに送られる。上記転送制御信号ＴＣＳには、第１内部モジュール６１ａ及び第２内部モジュール６１ｂにリードタイミングを指示するためのＩＯリードストローブ信号ＲＳ及び第１内部モジュール６１ａ及び第２内部モジュール６１ｂにライトタイミングを指示するためのＩＯライトストローブ信号ＷＳが含まれる。
【００５２】
転送用バス６０は、上述した転送制御信号バス６３と、ＩＯライトデータバス６４、第１ＩＯリードデータバス６５ａ及び第２ＩＯリードデータバス６５ｂとから構成される。
【００５３】
ＩＯライトデータバス６４は、ＲＡＭリードデータバス１３と第１内部モジュール２１ａ及び第２内部モジュール２１ｂとを接続する。このＩＯライトデータバス６４は、ＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲを、転送ライトデータＴＤＷとして、第１内部モジュール２１ａ及び第２内部モジュール２１ｂに送るために使用される。第１ＩＯリードデータバス６５ａは、第１内部モジュール６１ａから読み出された第１ＩＯリードデータをセレクタ６６に送るために使用される。第２ＩＯリードデータバス６５ｂは、第２内部モジュール６１ｂから読み出された第２ＩＯリードデータをセレクタ６６に送るために使用される。
【００５４】
セレクタ６６の出力端子はＩＯリードデータバス６７によってセレクタ６８の一方の入力端子に接続されている。このセレクタ６６は、第１選択信号ＳＥＬａ及び第２選択信号ＳＥＬｂの何れがアクティブであるかに応じて、第１ＩＯリードデータバス６５ａによって送られてくる第１ＩＯリードデータ及び第２ＩＯリードデータバス６５ｂによって送られてくる第２ＩＯリードデータの何れか選択し、転送リードデータＴＤＲとして出力する。
【００５５】
セレクタ６６の出力端子は、ＩＯリードデータバス６７によってセレクタ６８の一方の入力端子に接続されている。ＩＯリードデータバス６７は、セレクタ６６から出力される転送リードデータＴＤＲをセレクタ６８に送るために使用される。セレクタ６８の他方の入力端子は、ＲＡＭライトデータバス１４によってＢＩＵ＿Ｒ１０に接続されている。ＲＡＭライトデータバス１４は、ＢＩＵ＿Ｒ１０からのＲＡＭライトデータＲＤＷをセレクタ６８に送るために使用される。このセレクタ６８の出力端子はＲＡＭライトデータバス６９によってＲＡＭ１１に接続されている。セレクタ６８は、転送用バス６０を使用したデータ転送であるかバスマスタ５１によるデータ転送であるかに応じて、ＩＯリードデータバス６７によって送られてくる転送リードデータＴＤＲ及びＲＡＭライトデータバス１４によって送られてくるＲＡＭライトデータＲＤＷの何れか選択し、ＲＡＭライトデータバス６９を用いて、ＲＡＭライトデータとしてＲＡＭ１１に送る。
【００５６】
ＩＯ選択レジスタ７０は、第１内部モジュール６１ａ及び第２内部モジュール６１ｂの何れを選択してデータ転送を行わせるかを決定する値を保持する。このＩＯ選択レジスタ７０は、第１選択信号線７１ａによって第１内部モジュール６１ａに接続されると共に、第２選択信号線７１ｂによって第２内部モジュール６１ｂに接続されている。ＩＯ選択レジスタ７０は、第１選択信号線７１ａを用いて第１選択信号ＳＥＬａを第１内部モジュール６１ａに送ることにより、該第１内部モジュール６１ａをデータ転送の対象として選択する。同様に、ＩＯ選択レジスタ７０は、第２選択信号線７１ｂを用いて第２選択信号ＳＥＬｂを第２内部モジュール６１ｂに送ることにより、該第２内部モジュール６１ｂをデータ転送の対象として選択する。
【００５７】
転送指示レジスタ７２は、転送制御部６２に転送指示を与えるかどうかを決める値を保持する。この転送指示レジスタ７２は、転送指示線７３によって転送制御部６２に接続されており、この転送指示線７３を用いて転送制御部６２に転送指示信号を送る。
【００５８】
次に、上記のように構成される、この発明の実施の形態１に係るデータ転送制御装置の動作を説明する。先ず、データ転送制御装置の概略の動作を説明する。
【００５９】
ここでは、データ転送制御装置の動作の一例として、ＲＡＭ１１に記憶されているデータを第１内部モジュール６１ａに転送する場合を説明する。データ転送制御装置の動作は、ＲＡＭ１１からデータを読み出すリード動作と、読み出されたデータを第１内部モジュール６１ａに書き込むライト動作とから構成されている。リード動作は、バスマスタ５１の制御によって実行され、ライト動作は転送制御部６２の制御によって実行される。
【００６０】
リード動作及びライト動作が開始されるに先立って、先ず、図示しない制御部により、転送指示レジスタ７２に転送を実行すべき旨を指示する値がセットされる。これにより、転送指示信号がアクティブになり、転送指示線７３を介してデータ転送を実行すべき旨が転送制御部６２に伝えられる。また、図示しない制御部により、ＩＯ選択レジスタ７０に第１内部モジュール６１ａを選択すべき旨の値がセットされる。これにより、第１選択信号ＳＥＬａがアクティブになり、第１選択信号線７１ａを介して、データ転送の対象として選択された旨が第１内部モジュール６１ａに伝えられる。以上の準備が完了すると、転送動作が開始される。
【００６１】
先ず、ＲＡＭ１１からデータを読み出すリード動作を説明する。このリード動作はバスマスタ５１によって行われる。即ち、バスマスタ５１は、データをリードするために必要なマスタ制御信号ＭＣＳをマスタ制御信号バス３に出力する。同時に、ＲＡＭ１１のリード開始位置を指示するマスタアドレス信号ＭＡＤＤＲをマスタアドレスバス２に出力する。ＢＩＵ＿Ｒ１０は、マスタ制御信号ＭＣＳがマスタ制御信号バス３に出力されると、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲがＲＡＭ１１を指定するものであるかどうかを調べる。そして、ＲＡＭ１１を指定するマスタアドレス信号ＭＡＤＤＲであることを判断すると、ＢＩＵ＿Ｒ１０は、ＲＡＭ用スレーブバス１０ａに対してデータリードのプロトコルを実行する。
【００６２】
即ち、ＢＩＵ＿Ｒ１０は、ＲＡＭ制御信号バス１５に、ＲＡＭ１１からデータをリードするために必要なＲＡＭ制御信号ＲＣＳを出力する。同時に、ＲＡＭアドレスバス１２に、ＲＡＭ１１のリード開始位置を指示するアドレスをＲＡＭアドレス信号ＲＡＤＤＲとして出力する。これにより、ＲＡＭ１１からデータが読み出され、ＲＡＭリードデータＲＤＲとしてＲＡＭリードデータバス１３に出力される。
【００６３】
この際、上述した一般的なデータ転送制御装置と異なり、ＢＩＵ＿Ｒ１０は、ＲＡＭリードデータバス１３を用いて送られているＲＡＭリードデータＲＤＲを、マスタバス５１ａの中のＲＡＭ用リードデータバス５に出力しない。その代わりに、ＲＡＭリードデータＲＤＲを、ＩＯライトデータバス６４を介して、転送ライトデータＴＤＷとして第１内部モジュール６１ａに送る。以上により、ＲＡＭ１１からデータを読み込むリード動作が完了する。
【００６４】
次に、ＲＡＭ１１から読み出されたデータを第１内部モジュール６１ａに書き込むライト動作を説明する。転送制御部６２は、ＲＡＭ制御信号バス１５に流れるＲＡＭ制御信号ＲＣＳを監視している。従って、転送制御部６２は、ＲＡＭ１１からＲＡＭリードデータバス１３にＲＡＭリードデータＲＤＲが出力されるタイミングを把握している。転送制御部６２は、そのタイミングにおいて、転送制御信号ＴＣＳに含まれるＩＯライトストローブ信号ＷＳをアクティブにする。これにより、ＲＡＭ１１からＲＡＭリードデータバス１３及びＩＯライトデータバス６４を介して送られてきているＲＡＭリードデータＲＤＲ、換言すれば転送ライトデータＴＤＷが第１内部モジュール６１ａに書き込まれる。以上により、ＲＡＭ１１から読み出されたデータを第１内部モジュール６１ａに書き込むライト動作が完了する。以上のリード動作及びライト動作により、ＲＡＭ１１に記憶されている１つのデータを第１内部モジュール６１ａに転送する動作が完了する。
【００６５】
データ転送制御装置の動作の他の一例として、ＲＡＭ１１に記憶されているデータをバスマスタ５１に転送する場合を説明する。この場合、データ転送制御装置の動作は、ＲＡＭ１１からデータを読み出すリード動作のみから構成される。このリード動作が開始されるに先立って、先ず、図示しない制御部により、転送指示レジスタ７２に転送を実行しない旨を指示する値がセットされる。これにより、転送指示信号がインアクティブになり、転送指示線７３を介してデータ転送を実行しない旨が転送制御部６２に伝えられる。以後の動作は、既に説明した一般的なデータ転送制御装置におけるリード動作と同じである。
【００６６】
次に、図４に示したタイミングチャートを参照しながら、実施の形態１に係るデータ転送制御装置の動作を更に詳細に説明する。なお、図中におけるＲは、ＲＡＭ１１から単独にデータを読み出すときに実行される１つのリード動作に関連していることを表している。後段で説明する図７および図９においても同様である。
【００６７】
図４は４つのデータをＲＡＭ１１から第１内部モジュール６１ａに転送する場合のタイミングを示している。先ず、データ転送に先立って、上述したように、転送指示レジスタ７２及びＩＯ選択レジスタ７０に所定の値が設定され、転送指示信号及び第１選択信号ＳＥＬａがアクティブにされる。
【００６８】
次いで、ＣＬＫ“１”において、バスマスタ５１はアクセス要求信号ＲＥＱ、マスタリード／ライト信号ＲＷ及びマスタアドレス信号ＭＡＤＤＲをアサートする。マスタリード／ライト信号ＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。ＢＩＵ＿Ｒ１０は、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲを調べることによりＲＡＭ１１に対するアドレスが出力されており、且つ応答可能状態にあることを判断すると、ＣＬＫ“１”でアクセス許可信号ＡＣＫをアサートする。また、ＢＩＵ＿Ｒ１０は、ＣＬＫ“１”で、ＲＡＭチップセレクト信号ＲＣＳ、ＲＡＭアドレス信号ＲＡＤＤＲ及びＲＡＭリード／ライト信号ＲＲＷをアサートすることにより、ＲＡＭ１１に対してリード要求を出す。ＲＡＭリード／ライト信号ＲＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。
【００６９】
上記リード要求に応答してＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲは、リード要求の次のＣＬＫ“２”でＲＡＭリードデータバス１３に出力される。このＲＡＭリードデータバス１３に出力されたＲＡＭリードデータＲＤＲは、ＩＯライトデータバス６４を介して、転送ライトデータＴＤＷとして第１内部モジュール６１ａに供給される。同時に、ＢＩＵ＿Ｒ１０は、アクセス終了信号ＥＮＤをアサートする。
【００７０】
転送制御部６２は、ＣＬＫ“２”でＩＯライトストローブ信号ＷＳをアサートする。これにより、ＩＯライトデータバス６４に出力された転送ライトデータＴＤＷは、ＣＬＫ２において、第１選択信号ＳＥＬａによって選択されている第１内部モジュール６１ａに書き込まれる。以上により、ＲＡＭ１１に記憶されている１つのデータを第１内部モジュール６１ａに転送する動作が完了する。以下、同様にして、２〜４番目のデータの転送が行われる。
【００７１】
なお、第１内部モジュール６１ａからＲＡＭ１１へのデータ転送は、バスマスタ５１が第１内部モジュール６１ａからデータを読み出すリード動作により構成され、第１内部モジュール６１ａから読み出されたデータは、バスマスタ５１に送られることなく直接にＲＡＭ１１に書き込まれる。これらの動作は、上述したＲＡＭ１１から第１内部モジュール６１ａへデータ転送する動作と同様であるので説明を省略する。
【００７２】
この実施の形態１に係るデータ転送制御装置では、上述した一般的なデータ転送制御装置のように、バスマスタ５１は、ＲＡＭ１１から読み出したデータをマスタバス５１ａを介して取り込み、その後、マスタバス５１ａを介して第１内部モジュール６１ａ又は第２内部モジュール６１ｂに書き込む必要がなく、ＲＡＭから読み出されたデータはマスタバス５１ａを経由することなく直接に第１内部モジュール６１ａ又は第２内部モジュール６１ｂに書き込まれる。従って、図４に示すように、ＣＬＫ“１”〜ＣＬＫ“４”の間で連続してアクセス要求信号ＲＥＱを出力することが可能になり、連続したリード動作が可能である。
【００７３】
なお、図４に示した例では、ＣＬＫ“６”〜ＣＬＫ“８”で、転送指示レジスタ７２の設定が行われてＣＬＫ８で転送指示信号がインアクティブになり、その後、ＣＬＫ“９”及びＣＬＫ“１０”で、バスマスタ５１がＲＡＭ１１からデータを読み出す動作を示している。
【００７４】
以上説明したように、この実施の形態１に係るデータ転送制御装置によれば、４つのデータをＲＡＭ１１から第１内部モジュール６１ａに転送するために５個のクロックサイクルを必要とする。これに対し、上述した一般的なデータ転送制御装置では、４つのデータをＲＡＭ１１から第１内部モジュール２１ａに転送するために１２個のクロックサイクルを必要とする。
【００７５】
このように、バスマスタはデータ転送の際、データのリード動作とライト動作とを交互に行う必要がなく、リードのみ又はライトのみを連続して行えばよいので、データ転送に要するクロックサイクルの数を低減することができる。また、クロックサイクル数を低減することにより、このデータ転送制御装置が適用されたシステムＬＳＩの消費電力を減少させることができるという効果も期待できる。
【００７６】
実施の形態２．
次に、この発明の実施の形態２に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態１に係るデータ転送制御装置において、転送制御部６２に与える転送指示信号を、ＲＡＭ１１に供給されるＲＡＭアドレス信号ＲＡＤＤＲに基づいて生成するようにしたものである。
【００７７】
図５は、この発明の実施の形態２に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図３に示した実施の形態１に係るデータ転送制御装置の構成要素のうち、転送指示レジスタ７２を転送指示制御部８０で置き換えることにより構成されている。
【００７８】
転送指示制御部８０は、ＲＡＭアドレスバス１２に出力されているＲＡＭアドレス信号ＲＡＤＤＲに基づいて、転送制御部６２に転送指示を与えるかどうかを決める転送指示信号を生成する。この転送指示制御部８０は、転送指示線８１によって転送制御部６２に接続されており、この転送指示線８１を用いて転送制御部６２に転送指示信号を送る。
【００７９】
今、ＲＡＭ１１のアドレス空間が、図６に示すように、領域ａ、領域ｂ及び領域ｃといった３つの領域に分けられており、領域ａ及び領域ｃはデータ転送用領域、領域ｂは通常の記憶領域として定義されるものとする。転送指示制御部８０は、ＲＡＭアドレス信号ＲＡＤＤＲによって領域ａ又は領域ｂが指定される場合は転送指示信号をアクティブにし、領域ｃが指定される場合は転送指示信号をインアクティブにする。なお、ＲＡＭ１１の領域の定義は、図示しないレジスタに所定の値を設定することにより行われるようになっている。従って、レジスタの内容を変更することにより、ＲＡＭ１１の領域の定義を任意に変更できるようになっている。
【００８０】
次に、上記のように構成される、この発明の実施の形態２に係るデータ転送制御装置の動作を説明する。
【００８１】
このデータ転送制御装置では、実施の形態１におけるデータ転送と同様に、転送指示制御部８０から出力される転送制御信号がアクティブのときは、バススレーブ間（ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間）でデータ転送が行われ、転送制御信号がインアクティブのときは、バスマスタ５１とバススレーブ（ＲＡＭ１１、第１内部モジュール６１ａ又は第２内部モジュール６１ｂ）との間でデータ転送が行われる。
【００８２】
次に、図７に示したタイミングチャートを参照しながら、実施の形態２に係るデータ転送制御装置の動作を更に詳細に説明する。
【００８３】
この実施の形態２に係るデータ転送制御装置は、データ転送の形態が切り替わる時の動作に特徴がある。この動作の一例として、ＲＡＭ１１から第１内部モジュール６１ａへ４つのデータ転送が行われた後に、ＲＡＭ１１からバスマスタ５１にデータが転送される動作に切り替わる場合について説明する。
【００８４】
ＣＬＫ“１”〜ＣＬＫ“４”においては、転送指示制御部８０は、ＲＡＭアドレスバス１２上のＲＡＭアドレス信号ＲＡＤＤＲが領域ａ又は領域ｃを指示していれば、バススレーブ間でデータを転送すべき旨を判断し、転送指示信号をアクティブにする。これにより、ＲＡＭ１１から読み出されたデータが第１内部モジュール６１ａに転送される。
【００８５】
次に、ＣＬＫ６において、転送指示制御部８０は、ＲＡＭアドレスバス１２上のＲＡＭアドレス信号ＲＡＤＤＲが領域ｂを指示していれば、バススレーブとバスマスタ５１との間でデータを転送すべき旨を判断し、転送指示信号をインアクティブにする。これにより、ＲＡＭ１１から読み出されたデータはバスマスタ５１に転送される。
【００８６】
以上説明したように、この実施の形態２に係るデータ転送制御装置によれば、ＲＡＭ１１のアクセスされる領域に応じてバススレーブ間でデータ転送を行うか、バススレーブとバスマスタとの間で通常の転送を行うかが切り換えられる。従って、実施の形態１に係るデータ転送制御装置においては３クロックサイクルを要していた転送指示レジスタへの値の設定（図４参照）を省くことができるので、転送指示に要するオーバーヘッドを削減でき、少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができる。
【００８７】
実施の形態３．
次に、この発明の実施の形態３に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態１に係るデータ転送制御装置においては転送制御部６２で生成されている転送指示信号をバスマスタで生成するようにしたものである。
【００８８】
図８は、この発明の実施の形態３に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図３に示した実施の形態１に係るデータ転送制御装置の構成要素のうち、転送指示レジスタ７２を除去し、バスマスタ５１を新たなバスマスタ５２で置き換えることにより構成されている。
【００８９】
バスマスタ５２は、ＢＩＵ＿Ｒ１０を介してＲＡＭ１１、第１内部モジュール６１ａ及び第２内部モジュール６１ｂにアクセスし、これらとの間でデータ転送を実行すると共に、ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間でデータ転送を行わせる。また、このバスマスタ５２は、転送指示信号を生成し、転送指示線５３を用いて転送制御部６２に送る。
【００９０】
次に、上記のように構成される、この発明の実施の形態３に係るデータ転送制御装置の動作を説明する。
【００９１】
このデータ転送制御装置では、実施の形態１におけるデータ転送と同様に、バスマスタ５２から出力される転送制御信号がアクティブのときは、複数のバススレーブ間（ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間）でデータ転送が行われ、転送制御信号がインアクティブのときは、バスマスタ５２とバススレーブ（ＲＡＭ１１、第１内部モジュール６１ａ又は第２内部モジュール６１ｂ）との間でデータ転送が行われる。
【００９２】
今、バスマスタ５２がＤＭＡ転送コントローラ（以下、「ＤＭＡＣ」と略する）であり、このＤＭＡＣは、チャンネル０及びチャンネル１といった２つの転送チャンネルを備えているものとする。そして、チャンネル０は、ＲＡＭ１１から第１内部モジュール６１ａへデータ転送を行い、チャンネル１は、ＲＡＭ１１からマスタバス５１ａに接続されている他のモジュール（図示しない）へデータ転送を行うように割り当てられているものとする。
【００９３】
ＤＭＡＣがチャンネル０を用いてデータ転送を行う場合、図示しない制御部からの指示に応答して、バスマスタ５２は、転送指示線５３に出力する転送指示信号をアクティブにする。引き続いてＤＭＡＣがチャンネル１を用いてデータ転送を行う場合、図示しない制御部からの指示に応答して、バスマスタ５２は、転送指示線５３に出力する転送指示信号をインアクティブにする。
【００９４】
この場合のデータ転送制御装置の動作を図９に示すタイミングチャートを参照しながら説明する。ＣＬＫ“１”〜ＣＬＫ“５”においては、ＤＭＡＣのチャンネル０を用いたデータ転送が行われる。即ち、ＤＭＡＣは転送制御信号をアクティブにするため、転送用バス６０を用いてＲＡＭ１１から第１内部モジュール６１ａへデータが転送される。ＣＬＫ“６”では、ＤＭＡＣのチャンネル１を用いたデータ転送が行われる。即ち、ＤＭＡＣは転送制御信号をインアクティブにするため、ＲＡＭ１１から読み出されたデータがＲＡＭ用スレーブバス１０ａ、ＢＩＵ＿Ｒ１０及びマスタバス５１ａを介してＤＭＡＣに取り込まれる。そして、ＤＭＡＣに取り込まれたデータがマスタバス５１ａを介して図示しないモジュールに送られる。
【００９５】
次に、ＤＭＡＣのチャンネル０は、ＲＡＭ１１から第１内部モジュール６１ａへデータ転送を行い、チャンネル１は、ＲＡＭ１１から第２内部モジュール６１ｂへデータ転送を行うように割り当てられている場合の動作を説明する。
【００９６】
ＤＭＡＣがチャンネル０を用いてデータ転送を行う場合、図示しない制御部からの指示に応答して、バスマスタ５２は、転送指示線５３に出力する転送指示信号をアクティブにする。引き続いてＤＭＡＣがチャンネル１を用いてデータ転送を行う場合、ＩＯ選択レジスタ７０によって第２内部モジュール６１ｂが選択された後に、図示しない制御部からの指示に応答して、バスマスタ５２は、転送指示線５３に出力する転送指示信号をアクティブにする。
【００９７】
この場合のデータ転送制御装置の動作を図１０に示すタイミングチャートを参照しながら説明する。なお、図１０において、Ｒａ及びＷａは、チャンネル０のデータ転送時に関連する信号であることを表し、Ｒｂ及びＷｂは、チャンネル１のデータ転送時に関連する信号であることを表す。これらの記号Ｒａ、Ｗａ、Ｒｂ及びＷｂは、後に出現する他のタイミングチャートでも上記と同様の意味で使用される。
【００９８】
ＣＬＫ“１”〜ＣＬＫ“５”においては、ＤＭＡＣのチャンネル０を用いたデータ転送が行われる。即ち、ＤＭＡＣは転送制御信号をアクティブにするため、転送用バス６０を用いてＲＡＭ”１１”から第１内部モジュール６１ａへデータが転送される。ＣＬＫ“６”〜ＣＬＫ“８”では、ＩＯ選択レジスタ７０の設定が行われ、ＣＬＫ“８”でＩＯ選択レジスタ７０から出力される第１選択信号ＳＥＬａがインアクティブになり、第２選択信号ＳＥＬｂがアクティブになる。これにより、第２内部モジュール６１ｂが選択される。その後のＣＬＫ“９”〜ＣＬＫ“１３”においては、ＤＭＡＣのチャンネル１を用いたデータ転送が行われる。即ち、ＤＭＡＣは転送制御信号をアクティブにするため、転送用バス６０を用いてＲＡＭ１１から第２内部モジュール６１ｂへデータが転送される。
【００９９】
以上説明したように、この実施の形態３に係るデータ転送制御装置によれば、転送指示信号をバスマスタ５２で生成するようにしたので、実施の形態１に係るデータ転送制御装置における転送指示レジスタ７２は不要になる。その結果、データ転送制御装置の構成を簡単にすることができる。また、アドレス比較を行わないので、動作周波数を高くすることができる。
【０１００】
実施の形態４．
次に、この発明の実施の形態４に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態３に係るデータ転送制御装置においてはＩＯ選択レジスタ７０で生成されている第１選択信号ＳＥＬａ及び第２選択信号ＳＥＬｂをバスマスタで生成するようにしたものである。
【０１０１】
図１１は、この発明の実施の形態４に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図８に示した実施の形態３に係るデータ転送制御装置の構成要素のうち、ＩＯ選択レジスタ７０を除去し、バスマスタ５２を新たなバスマスタ５４で置き換えることにより構成されている。
【０１０２】
バスマスタ５４は、ＢＩＵ＿Ｒ１０を介してＲＡＭ１１、第１内部モジュール６１ａ及び第２内部モジュール６１ｂにアクセスし、これらとの間でデータ転送を実行すると共に、ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間でデータ転送を行わせる。また、このバスマスタ５４は、転送指示信号を生成し、転送指示線５５を用いて転送制御部６２に送る。更に、このバスマスタ５４は、第１選択信号ＳＥＬａを生成し、第１選択信号線５６ａを介して第１内部モジュール６１ａに送ると共に、第２選択信号ＳＥＬｂを生成し、第２選択信号線５６ｂを介して第２内部モジュール６１ｂに送る。
【０１０３】
次に、上記のように構成される、この発明の実施の形態４に係るデータ転送制御装置の動作を説明する。
【０１０４】
このデータ転送制御装置では、バスマスタ５４から出力される転送制御信号がアクティブのときは、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択する方法を除けば、実施の形態１におけるデータ転送と同様に、複数のバススレーブ間（ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間）でデータ転送が行われる。また、転送制御信号がインアクティブのときは、実施の形態１におけるデータ転送と同様に、バスマスタ５４とバススレーブ（ＲＡＭ１１、第１内部モジュール６１ａ又は第２内部モジュール６１ｂ）との間でデータ転送が行われる。
【０１０５】
今、バスマスタ５４がＤＭＡＣであり、このＤＭＡＣは、チャンネル０及びチャンネル１といった２つの転送チャンネルを備えているものとする。そして、チャンネル０は、ＲＡＭ１１から第１内部モジュール６１ａへデータ転送を行い、チャンネル１は、ＲＡＭ１１から第２内部モジュール６１ｂへデータ転送を行うように割り当てられているものとする。
【０１０６】
ＤＭＡＣがチャンネル０を用いてデータ転送を行う場合、バスマスタ５４は、転送指示線５３に出力する転送指示信号をアクティブにすると共に、第１選択信号線５６ａに出力する第１選択信号ＳＥＬａをアクティブにする。引き続いてＤＭＡＣがチャンネル１を用いてデータ転送を行う場合、バスマスタ５４は、転送指示線５３に出力する転送指示信号をアクティブにすると共に、第２選択信号線５６ｂに出力する第２選択信号ＳＥＬｂをアクティブにする。
【０１０７】
この場合のデータ転送制御装置の動作を図１２に示すタイミングチャートを参照しながら説明する。
【０１０８】
ＣＬＫ“１”〜ＣＬＫ“５”においては、ＤＭＡＣのチャンネル０を用いたデータ転送が行われる。即ち、ＤＭＡＣはＣＬＫ“１”において転送制御信号及び第１選択信号ＳＥＬａをアクティブにするため、ＣＬＫ“１”〜ＣＬＫ“４”においてＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲは、ＲＡＭリードデータバス１３に出力される。このＲＡＭリードデータバス１３に出力されたＲＡＭリードデータＲＤＲは、ＣＬＫ“２”〜ＣＬＫ“５”において、ＩＯライトデータバス６４を介して、転送ライトデータＴＤＷとして第１内部モジュール６１ａに送られ、書き込まれる。ＤＭＡＣは、データ転送が開始されてから終了するまで、つまりＣＬＫ“１”〜ＣＬＫ“５”の間は、第１選択信号ＳＥＬａをアクティブに維持する。
【０１０９】
ＣＬＫ“６”〜ＣＬＫ“１０”においては、ＤＭＡＣのチャンネル１を用いたデータ転送が行われる。即ち、ＤＭＡＣはＣＬＫ“６”において転送制御信号及び第２選択信号ＳＥＬｂをアクティブにするため、ＣＬＫ“６”〜ＣＬＫ“９”においてＲＡＭ１１から読み出されたＲＡＭリードデータＲＤＲは、ＲＡＭリードデータバス１３に出力される。このＲＡＭリードデータバス１３に出力されたＲＡＭリードデータＲＤＲは、ＣＬＫ“７”〜ＣＬＫ“１０”において、ＩＯライトデータバス６４を介して、転送ライトデータＴＤＷとして第２内部モジュール６１ｂに送られ、書き込まれる。ＤＭＡＣは、データ転送が開始されてから終了するまで、つまりＣＬＫ“６”〜ＣＬＫ“９”の間は、第２選択信号ＳＥＬｂをアクティブに維持する。
【０１１０】
以上説明したように、この実施の形態４に係るデータ転送制御装置によれば、バスマスタ５４がデータ転送の対象となるバススレーブを選択する信号を出力するので、データ転送が切り換えられる毎にＩＯ選択レジスタ７０に所定値を設定する必要がない。その結果、実施の形態３に係るデータ転送制御装置においては３クロックサイクルを要していたＩＯ選択レジスタ７０への値の設定（図１０参照）を省くことができ、バススレーブの選択に要するオーバーヘッドを削減できる。
【０１１１】
なお、上述した実施の形態１〜実施の形態３に係るデータ転送制御装置においても、この実施の形態３のように、第１選択信号ＳＥＬａ及び第２選択信号ＳＥＬｂをバスマスタで生成するように構成することができる。
【０１１２】
実施の形態５．
次に、この発明の実施の形態５に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態４に係るデータ転送制御装置において、外部デバイスを制御するための情報に応じて転送指示信号を生成するようにしたものである。
【０１１３】
図１３は、この発明の実施の形態５に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図１１に示した実施の形態４に係るデータ転送制御装置の構成要素のうち、ＢＩＵ＿Ｒ１０、転送制御部６２及びＲＡＭ１１を外部用バスインタフェースユニット（以下、「ＢＩＵ＿Ｅ」と略する）９０、転送制御部１１０及び外部デバイス制御部９１でそれぞれ置き換えることにより構成されている。また、外部デバイス制御部９１には外部デバイス１０１が接続されている。
【０１１４】
ＢＩＵ＿Ｅ９０は、外部デバイス制御部９１を介して外部デバイス１０１にアクセスするために、マスタバス５１ａのプロトコルと外部デバイス用スレーブバス９０ａのプロトコルとを相互に変換する。このＢＩＵ＿Ｅ９０は、外部デバイス用スレーブバス９０ａを介して外部デバイス制御部９１に接続されている。
【０１１５】
外部デバイス用スレーブバス９０ａは、外部アドレスバス９２、外部リードデータバス９３、外部ライドデータバス９４及び外部制御信号バス９５から構成されている。
【０１１６】
外部アドレスバス９２は、ＢＩＵ＿Ｅ９０から出力される外部アドレス信号ＥＡＤＤＲを外部デバイス制御部９１に送るために使用される。外部リードデータバス９３は、外部デバイス制御部９１から読み出された外部リードデータＥＤＲをＢＩＵ＿Ｅ９０に送るために使用される。外部ライトデータバス９４は、ＢＩＵ＿Ｅ９０から出力される外部ライトデータＥＤＷをセレクタ９６を介して外部デバイス制御部９１に送るために使用される。外部制御信号バス９５は、ＢＩＵ＿Ｅ９０から出力される外部制御信号ＥＣＳを外部デバイス制御部９１及び転送制御部１１０に送るために使用される。
【０１１７】
外部制御信号ＥＣＳには、外部デバイス１０１にアクセスを要求するための外部デバイスアクセス要求信号ＥＲＥＱ、外部デバイス１０１にリードアクセスを行うかライトアクセスを行うかを指示するための外部デバイスリード／ライト信号ＥＲＷ、及び外部デバイス１０１に対するアクセスが終了したことを示す外部デバイスアクセス終了信号ＥＥＮＤが含まれる。
【０１１８】
セレクタ９６は、ＢＩＵ＿Ｅ９０から外部ライトデータバス９４を介して送られてくる外部ライトデータＥＤＷ及びセレクタ６６からＩＯリードデータバス６７によって送られてくる転送リードデータＴＤＲの何れか選択し、ライトデータバス９７を用いて、外部デバイス制御部９１に送る。
【０１１９】
外部デバイス制御部９１は、バススレーブとして機能する内部モジュールである。この外部デバイス制御部９１は、外部デバイスアクセス情報信号線９８により転送制御部１１０に接続されている。外部デバイス制御部９１は、この外部デバイスアクセス情報信号線９８を用いて、接続されている外部デバイス１０１のアクセスに関する情報を外部デバイスアクセス情報信号として転送制御部１１０に送る。また、この外部デバイス制御部９１は、外部バス９１ａを介して、システムＬＳＩの外部に接続される外部デバイス１０１に接続されている。
【０１２０】
外部バス９１ａは、外部デバイスアドレスバス１０２、外部デバイスデータバス１０３及び外部デバイス制御信号バス１０４から構成されている。
【０１２１】
外部デバイスアドレスバス１０２は、外部デバイス制御部９１から出力される外部デバイスアドレス信号を外部デバイス１０１に送るために使用される。外部デバイスデータバス１０３は、外部デバイス制御部９１と外部デバイス１０１との間でデータを送受するために使用される。外部デバイス制御信号バス１０４は、外部デバイス制御部９１から出力される外部デバイス制御信号を外部デバイス１０１に送るために使用される。この外部デバイス制御信号は、外部デバイス１０１に対するコマンドから構成される。
【０１２２】
転送制御部１１０は、外部デバイス制御部９１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間のデータ転送を制御するための転送制御信号ＴＣＳを、外部制御信号バス９５からの外部制御信号ＥＣＳ、バスマスタ５４からの転送指示信号及び外部デバイス制御部９１からの外部デバイスアクセス情報信号とに基づいて生成する。この生成された転送制御信号ＴＣＳは、転送制御信号バス６３によって第１内部モジュール６１ａ及び第２内部モジュール６１ｂに送られる。転送制御信号ＴＣＳには、ＩＯリードストローブ信号ＲＳ及びＩＯライトストローブ信号ＷＳが含まれる。
【０１２３】
次に、上記のように構成される、この発明の実施の形態５に係るデータ転送制御装置の動作を説明する。先ず、データ転送制御装置の概略の動作を説明する。
【０１２４】
ここでは、データ転送制御装置の動作の一例として、第１内部モジュール６１ａから外部デバイス１０１にデータを転送する場合を説明する。データ転送制御装置の動作は、第１内部モジュール６１ａからデータを読み出すリード動作と、読み出されたデータを外部デバイス制御部９１を介して外部デバイス１０１に書き込むライト動作とから構成されている。リード動作は転送制御部６２の制御によって実行され、ライト動作はバスマスタ５４の制御によって実行される。
【０１２５】
データ転送動作が開始されるに先立って、バスマスタ５４は、転送指示信号をアクティブにし、転送指示線５５を介してデータ転送を実行すべき旨を転送制御部１１０に伝える。また、第１内部モジュール６１ａを選択すべき旨の第１選択信号ＳＥＬａをアクティブにし、第１選択信号線５６ａを介して、データ転送の対象として選択された旨を第１内部モジュール６１ａに伝える。以上の準備が完了すると、データ転送動作が開始される。
【０１２６】
データ転送動作は、先ず、バスマスタ５４による外部デバイス１０１へのライト動作から開始される。即ち、バスマスタ５４は、データをライトするために必要なマスタ制御信号ＭＣＳをマスタ制御信号バス３に出力する。同時に、ライトの対象となる外部デバイス１０１を指定するマスタアドレス信号ＭＡＤＤＲをマスタアドレスバス２に出力する。ＢＩＵ＿Ｅ９０は、マスタ制御信号ＭＣＳがマスタ制御信号バス３に出力されると、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲが外部デバイス１０１を指定するものであるかどうかを調べる。そして、外部デバイス１０１を指定するマスタアドレス信号ＭＡＤＤＲであることを判断すると、ＢＩＵ＿Ｅ９０は、外部デバイス用スレーブバス９０ａに対してデータライトのプロトコルを実行する。
【０１２７】
即ち、ＢＩＵ＿Ｅ９０は、外部制御信号バス９５に、外部デバイス１０１にデータをライトするために必要な外部デバイス制御信号ＥＣＳを出力する。同時に、外部アドレスバス９２に、外部デバイス１０１に必要なアドレスを外部デバイスアドレス信号ＥＡＤＤＲとして出力する。外部デバイス制御部９１は、これら外部デバイス制御信号ＥＣＳ及び外部デバイスアドレス信号ＥＡＤＤＲを受け取ることにより、外部バス９１ａを介して外部デバイス１０１にライト動作を行う。
【０１２８】
即ち、外部デバイス制御部９１は、外部バス９１ａを構成する外部デバイス制御信号バス１０４に、外部デバイス１０１にデータを書き込むために必要な制御信号を出力する。また、外部デバイスアドレスバス１０２に、外部デバイス１０１にデータを書き込むために必要なアドレスを出力する。更に、外部デバイスデータバス１０３に、外部デバイス１０１に書き込むデータを出力する。これにより、外部デバイス１０１にデータが書き込まれる。この外部デバイス１０１に書き込まれるデータは、書き込みのタイミングにおいて、第１内部モジュール６１ａから読み出され、セレクタ６６、ＩＯリードデータバス６７、セレクタ９６及びライトデータバス９７を経由して外部デバイス制御部９１に存在しなければならない。
【０１２９】
ここで、第１内部モジュール６１ａからデータを読み出す動作を説明する。転送制御部１１０は、外部デバイス用スレーブバス９０ａを構成する外部デバイス制御信号バス９５に流れる外部デバイス制御信号ＥＣＳを監視している。また、外部デバイス制御部９１から外部デバイスアクセス情報信号線９８により送られてくる外部デバイスアクセス情報信号によって、外部デバイス１０１にアクセスするタイミングを認識する。転送制御部１１０は、これら外部デバイス制御信号ＥＣＳ及び外部デバイスアクセス情報信号に基づいて外部デバイス制御部９１が外部デバイス１０１にデータを書き込むタイミングを決定し、この決定されたタイミングに合わせて転送制御信号バス６３に転送制御信号ＴＣＳを出力する。
【０１３０】
第１選択信号ＳＥＬａによって選択されている第１内部モジュール６１ａは、この転送制御信号ＴＣＳに含まれるＩＯリードストローブ信号ＲＳに応じてデータを読み出して第１ＩＯリードデータバス６５ａに出力する。この第１ＩＯリードデータバス６５ａに読み出されたデータは、セレクタ６６を経由してＩＯリードデータバス６７に出力され、転送リードデータＴＤＲとしてセレクタ９６に送られる。セレクタ９６は、ＩＯリードデータバス６７からの転送リードデータＴＤＲを通過させてライトデータバス９７に出力し、外部デバイス制御部９１に送る。以上により、第１内部モジュール６１ａから外部デバイス１０１へのデータ転送動作が完了する。
【０１３１】
次に、図１４に示したタイミングチャートを参照しながら、実施の形態５に係るデータ転送制御装置の動作を更に詳細に説明する。ここでは、外部デバイス１０１としてＳＤＲＡＭが使用される場合を説明する。
【０１３２】
先ず、ＣＬＫ“１”において、バスマスタ５４はアクセス要求信号ＲＥＱ、マスタリード／ライト信号ＲＷ及びマスタアドレス信号ＭＡＤＤＲをアサートする。マスタリード／ライト信号ＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。ＢＩＵ＿Ｅ９０は、マスタアドレスバス２に出力されているマスタアドレス信号ＭＡＤＤＲを調べることにより外部デバイス１０１に対するアドレスが出力されていることを判断すると、ＣＬＫ“１”でアクセス許可信号ＡＣＫをアサートする。また、ＢＩＵ＿Ｅ９０は、ＣＬＫ“１”で、外部デバイスアクセス要求信号ＥＲＥＱ、外部デバイスアドレス信号ＥＡＤＤＲ及び外部デバイスリード／ライト信号ＥＲＷをアサートすることにより、外部デバイス制御部９１に対してリードライトアクセスを行う。外部デバイスリード／ライト信号ＥＲＷは、Ｈレベルでリードを、Ｌレベルでライトを表す。
【０１３３】
外部デバイス制御部９１は、ＣＬＫ“１”において、外部デバイス制御信号バス１０４に行活性化コマンド“ａｃ”を出力すると共に、外部デバイスアドレスバス１０２に行アドレス“ｒ０”を出力する。引き続くＣＬＫ“２”及びＣＬＫ“３”において、外部デバイス制御部９１は、外部デバイス制御信号バス１０４にノーオペレーションコマンド“ｎｐ”を出力する。ノーオペレーションコマンド“ｎｐ”を出力する理由は、ＳＤＲＡＭのＡＣタイミング条件（行から列への遅延時間）として、行活性化コマンド“ａｃ”とライトコマンド“ｗ０”との間に３クロックサイクル以上存在することが要求されているからである。
【０１３４】
その後のＣＬＫ“４”において、外部デバイス制御部９１は、外部デバイス制御信号バス１０４にライトコマンド“ｗ０”を、外部デバイスアドレスバス１０２に列アドレス“ｃ０”を、外部デバイスデータバス１０３にライトデータ“ｄ０”をそれぞれ出力する。同時に、外部デバイス制御部９１は、外部制御信号バス９５に外部デバイスアクセス終了信号ＥＥＮＤを出力する。この外部デバイスアクセス終了信号ＥＥＮＤを受け取ったＢＩＵ＿Ｅ９０は、マスタバス５１ａのマスタ制御信号バス３に、マスタ制御信号ＭＣＳの中のアクセス終了信号ＥＮＤを出力する。これにより１回目の外部デバイス１０１へのライト動作が終了する。引き続いて、ＣＬＫ“４”〜ＣＬＫ“７”において、２〜４回目の外部デバイス１０１へのライト動作が行われる。２回目以降のライト動作が行われる場合は、既に行活性化状態にされているため、ライトコマンド“ｗ１”〜“ｗ３”は連続して発行される。
【０１３５】
一方、第１内部モジュール６１ａからのデータのリード動作は、ＣＬＫ“４”〜ＣＬＫ“７”において行われる。即ち、転送制御部１１０は、外部デバイス制御部９１から送られてくる外部デバイスアクセス情報信号に含まれるＳＤＲＡＭのＡＣタイミング条件（行から列への遅延時間）に従って３クロックサイクルの遅延が必要であることを判断し、ＣＬＫ“４”〜ＣＬＫ“７”において、転送制御信号バス６３にＩＯリードストローブ信号ＲＳを出力する。これにより、ＣＬＫ“４”〜ＣＬＫ“７”において、第１内部モジュール６１ａからデータが読み出され、第１ＩＯリードデータバス６５ａ、セレクタ６６、ＩＯリードデータバス６７、セレクタ９６及び外部デバイス制御部９１を経由して、外部デバイスデータバス１０３に出力される。以上により、第１内部モジュール６１ａから外部デバイス１０１へのデータ転送動作が完了する。
【０１３６】
なお、ＳＤＲＡＭのＡＣタイミング条件（行から列への遅延時間）を満たすためのクロックサイクルの数は、ＳＤＲＡＭの種類及びクロック周波数に依存する。しかし、転送制御部１１０は、外部デバイス制御部９１から送られてくる外部デバイスアクセス情報信号に含まれるＳＤＲＡＭのＡＣタイミング条件（行から列への遅延時間）に従って遅延させるクロックサイクルの数を決定するので、ＳＤＲＡＭの種類及びクロック周波数が変更されても、正確且つ確実なデータ転送動作を行わせることができる。
【０１３７】
以上説明したように、この実施の形態５に係るデータ転送制御装置によれば、例えばＳＤＲＡＭのような、ＡＣタイミング条件を満たすクロックサイクルの数がクロック周波数等によって異なる外部デバイスに対して、正確且つ確実なデータ転送を行うことができる。
【０１３８】
なお、この実施の形態５では、外部デバイス１０１としてＳＤＲＡＭが用いられる場合について説明したが、ＳＤＲＡＭに限らず、ＡＣタイミング条件を満たすようにクロックサイクルの数を制御する必要のある他のデバイスにも適用できる。また、外部デバイス１０１は、システムＬＳＩの外部に接続されるデバイスに限らず、システムＬＳＩの内部に設けられるバススレーブであってもよい。
【０１３９】
また、この実施の形態５に係るデータ転送制御装置は、実施の形態４に係るデータ転送制御装置の構成要素の一部を変更して構成したが、実施の形態１〜実施の形態３の何れかに係るデータ転送制御装置の構成要素の一部を変更して構成することもでき、この場合も、上述した作用及び効果を奏する。
【０１４０】
実施の形態６．
次に、この発明の実施の形態６に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態４に係るデータ転送制御装置において、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択するための第１選択信号ＳＥＬａ及び第２選択信号ＳＥＬｂを、ＲＡＭ１１に供給されるＲＡＭアドレス信号ＲＡＤＤＲに基づいて生成するようにしたものである。
【０１４１】
図１５は、この発明の実施の形態６に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図１３に示した実施の形態４に係るデータ転送制御装置のバスマスタ５４から出力される第１選択信号線５６ａ及び第２選択信号線５６ｂが除去され、ＩＯ選択制御部７４が新たに追加されて構成されている。
【０１４２】
ＩＯ選択制御部７４は、ＲＡＭアドレスバス１２からのＲＡＭアドレス信号ＲＡＤＤＲに基づいて、第１内部モジュール６１ａを選択するための第１選択信号ＳＥＬａ又は第２内部モジュール６１ｂを選択するための第２選択信号ＳＥＬｂを生成する。このＩＯ選択制御部７４で生成された第１選択信号ＳＥＬａは、第１選択信号線７５ａを用いて第１内部モジュール６１ａに送られる。同様に、第２選択信号ＳＥＬｂは、第２選択信号線７５ｂを用いて第２内部モジュール６１ｂに送られる。
【０１４３】
今、ＲＡＭ１１のアドレス空間が、図１６に示すように、領域ａ及び領域ｂといった２つの領域に分けられており、領域ａは第１内部モジュール６１ａがアクセスする領域、領域ｂは第２内部モジュール６１ｂがアクセスする領域として定義されるものとする。ＩＯ選択制御部７４は、ＲＡＭアドレス信号ＲＡＤＤＲによって領域ａが指定される場合は第１選択信号ＳＥＬａをアクティブにし、領域ｂが指定される場合は第２選択信号ＳＥＬｂをアクティブにする。なお、ＲＡＭ１１の領域の定義は、図示しないレジスタに所定の値を設定することにより行われるようになっている。従って、レジスタの内容を変更することにより、ＲＡＭ１１の領域の定義を任意に変更できるようになっている。
【０１４４】
次に、上記のように構成される、この発明の実施の形態６に係るデータ転送制御装置の動作を説明する。
【０１４５】
このデータ転送制御装置では、バスマスタ５４から出力される転送制御信号がアクティブのときは、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択する方法を除けば、実施の形態１におけるデータ転送と同様に、複数のバススレーブ間（ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間）でデータ転送が行われる。また、転送制御信号がインアクティブのときは、実施の形態１におけるデータ転送と同様に、バスマスタ５４とバススレーブ（ＲＡＭ１１、第１内部モジュール６１ａ又は第２内部モジュール６１ｂ）との間でデータ転送が行われる。従って、以下では、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択する動作のみを説明する。
【０１４６】
今、バスマスタ５４からマスタバス５１ａ及びＢＩＵ＿Ｒ１０を経由してＲＡＭ用スレーブバス１０ａのＲＡＭアドレスバス１２に出力されたＲＡＭアドレス信号ＲＡＤＤＲがＲＡＭ１１の領域ａを指示していれば、ＩＯ選択制御部７４は、第１選択信号ＳＥＬａをアクティブにする。これにより、第１内部モジュール６１ａに対するリード動作及びライト動作が可能になる。
【０１４７】
同様に、バスマスタ５４からマスタバス５１ａ及びＢＩＵ＿Ｒ１０を経由してＲＡＭ用スレーブバス１０ａのＲＡＭアドレスバス１２に出力されたＲＡＭアドレス信号ＲＡＤＤＲがＲＡＭ１１の領域ｂを指示していれば、ＩＯ選択制御部７４は、第２選択信号ＳＥＬｂをアクティブにする。これにより、第２内部モジュール６１ｂに対するリード動作及びライト動作が可能になる。
【０１４８】
以上説明したように、この実施の形態６に係るデータ転送制御装置によれば、ＲＡＭ１１のアクセスされる領域に応じて第１内部モジュール６１ａを選択するか、第２内部モジュール６１ｂを選択するかが切り換えられる。従って、実施の形態３に係るデータ転送制御装置のようなＩＯ選択レジスタを有する構成では３クロックサイクルを要していたＩＯ選択レジスタへの値の設定（図１０参照）を省くことができるので、第１内部モジュール６１ａ又は第２内部モジュール６１ｂの選択に要するオーバーヘッドを削減でき、少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができる。
【０１４９】
実施の形態７．
次に、この発明の実施の形態７に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態４に係るデータ転送制御装置において、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択するための第１選択信号ＳＥＬａ及び第２選択信号ＳＥＬｂを、バスマスタ５４が予め記憶している第１内部モジュール６１ａ又は第２内部モジュール６１ｂに付与されているＩＯアドレスに基づいて生成するようにしたものである。
【０１５０】
図１７は、この発明の実施の形態７に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図１３に示した実施の形態４に係るデータ転送制御装置のバスマスタ５４から出力される第１選択信号線５６ａ及び第２選択信号線５６ｂが除去され、ＩＯ選択制御部７６が新たに追加されると共に、バスマスタ５４からＩＯ選択制御部７４にＩＯアドレス信号ＩＯＡＤＤＲを送るためのＩＯアドレス線５７が追加されて構成されている。
【０１５１】
ＩＯ選択制御部７６は、バスマスタ５４からのＩＯアドレス信号ＩＯＡＤＤＲに基づいて、第１内部モジュール６１ａを選択するための第１選択信号ＳＥＬａ又は第２内部モジュール６１ｂを選択するための第２選択信号ＳＥＬｂを生成する。このＩＯ選択制御部７６で生成された第１選択信号ＳＥＬａは、第１選択信号線７７ａを用いて第１内部モジュール６１ａに送られる。同様に、第２選択信号ＳＥＬｂは、第２選択信号線７７ｂを用いて第２内部モジュール６１ｂに送られる。
【０１５２】
今、ＩＯアドレス空間が、図１８に示すように、領域ａ及び領域ｂといった２つの領域に分けられており、領域ａは第１内部モジュール６１ａに付与された領域、領域ｂは第２内部モジュール６１ｂに付与された領域として定義されるものとする。ＩＯ選択制御部７６は、ＩＯアドレス信号ＩＯＡＤＤＲによって領域ａが指定される場合は第１選択信号ＳＥＬａをアクティブにし、領域ｂが指定される場合は第２選択信号ＳＥＬｂをアクティブにする。なお、ＩＯアドレス空間の領域の定義は、図示しないレジスタに所定の値を設定することにより行われるようになっている。従って、レジスタの内容を変更することにより、ＩＯアドレス空間の領域の定義を任意に変更できるようになっている。
【０１５３】
次に、上記のように構成される、この発明の実施の形態７に係るデータ転送制御装置の動作を説明する。
【０１５４】
このデータ転送制御装置では、バスマスタ５４から出力される転送制御信号がアクティブのときは、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択する方法を除けば、実施の形態１におけるデータ転送と同様に、複数のバススレーブ間（ＲＡＭ１１と第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間）でデータ転送が行われる。また、転送制御信号がインアクティブのときは、実施の形態１におけるデータ転送と同様に、バスマスタ５４とバススレーブ（ＲＡＭ１１、第１内部モジュール６１ａ又は第２内部モジュール６１ｂ）との間でデータ転送が行われる。従って、以下では、第１内部モジュール６１ａ及び第２内部モジュール６１ｂを選択する動作のみを説明する。
【０１５５】
データ転送の対象として第１内部モジュール６１ａ及び第２内部モジュール６１ｂの何れかを選択する場合、バスマスタ５４は、内部に記憶しているＩＯアドレスを表すＩＯアドレス信号ＩＯＡＤＤＲを、ＩＯアドレス線５７を用いてＩＯ選択制御部７６に送る。ＩＯ選択制御部７６は、受け取ったＩＯアドレス信号ＩＯＡＤＤＲがＩＯアドレス空間の領域ａを指示していれば、第１選択信号ＳＥＬａをアクティブにする。これにより、第１内部モジュール６１ａに対するリード動作及びライト動作が可能になる。
【０１５６】
同様に、ＩＯ選択制御部７６は、受け取ったＩＯアドレス信号ＩＯＡＤＤＲがＩＯアドレス空間の領域ｂを指示していれば、第２選択信号ＳＥＬｂをアクティブにする。これにより、第２内部モジュール６１ｂに対するリード動作及びライト動作が可能になる。
【０１５７】
以上説明したように、この実施の形態７に係るデータ転送制御装置によれば、アクセスされるＩＯアドレス空間の領域に応じて第１内部モジュール６１ａを選択するか、第２内部モジュール６１ｂを選択するかが切り換えられる。従って、実施の形態３に係るデータ転送制御装置のようなＩＯ選択レジスタを有する構成では３クロックサイクルを要していたＩＯ選択レジスタへの値の設定（図１０参照）を省くことができるので、第１内部モジュール６１ａ又は第２内部モジュール６１ｂの選択に要するオーバーヘッドを削減でき、少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができる。
【０１５８】
なお、この実施の形態７に係るデータ転送制御装置は、図１９に示すように変形することができる。この変形に係るデータ転送制御装置は、図１７に示したデータ転送制御装置のＩＯ選択制御部７６の機能を、第１内部モジュール６１ａ及び第２内部モジュール６１ｂの内部にそれぞれ取り込んでＩＯ選択制御部７６ａ及びＩＯ選択制御部７６ｂとすることにより構成されている。
【０１５９】
この変形例に係るデータ転送制御装置によっても、上述した実施の形態７に係るデータ転送制御装置と同様の作用及び効果を奏する。
【０１６０】
実施の形態８．
次に、この発明の実施の形態８に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態５に係るデータ転送制御装置において、２個のバスマスタと２個のマスタバスを備え、各バスマスタが並行して第１内部モジュール６１ａ及び第２内部モジュール６１ｂにアクセスできるようにしたものである。
【０１６１】
図２０は、この発明の実施の形態８に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、主に、図１３に示した実施の形態５に係るデータ転送制御装置に、第２バスマスタ２００、第２マスタバス２００ａ、バスインタフェースユニット（以下、「ＢＩＵ＿Ｃ」という）１２０、セレクタ７ａ、セレクタ２０７、セレクタ１２６、第１アドレスデコーダ２１０、第２アドレスデコーダ２２０が追加されることにより構成されている。
【０１６２】
第１バスマスタ１５４は、実施の形態５におけるバスマスタ５４に対応する。この第１バスマスタ１５４は、第１マスタバス５４ａ、ＢＩＵ＿Ｅ１９０及び外部デバイス制御部９１を介して外部デバイス１０１との間でデータ転送を行うと共に、第２マスタバス２００ａ、ＢＩＵ＿Ｃ１２０を介して第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間でデータ転送を行う。
【０１６３】
第１マスタバス５４ａは、実施の形態５におけるマスタバス５１ａに、ＢＩＵ＿Ｃ１２０からの第２リードデータ信号ＭａＤＲ＿Ｃを取り込むためのリードデータバス９Ｃが追加されて構成されている。具体的には、第１マスタアドレス信号ＭａＡＤＤＲを流すためのマスタアドレスバス２、第１マスタ制御信号ＭａＣＳを流すためのマスタ制御信号バス３、第１マスタライトデータ信号ＭａＤＷを流すためのマスタライトデータバス４、ＢＩＵ＿Ｅ１９０からの第１リードデータ信号ＭｂＤＲ＿Ｅを取り込むためのリードデータバス９及び上述したリードデータバス９Ｃから構成されている。
【０１６４】
また、セレクタ７ａは、リードデータバス９から送られてくる第１リードデータ信号ＭａＤＲ＿Ｅ又はリードデータバス９Ｃから送られてくる第２リードデータ信号ＭａＤＲ＿Ｃの何れかを選択して第１バスマスタ１５４に送る。
【０１６５】
第２バスマスタ２００は、第１マスタバス５４ａ、ＢＩＵ＿Ｅ１９０及び外部デバイス制御部９１を介して外部デバイス１０１との間でデータ転送を行うと共に、第２マスタバス２００ａ、ＢＩＵ＿Ｃ１２０を介して第１内部モジュール６１ａ又は第２内部モジュール６１ｂとの間でデータ転送を行う。
【０１６６】
第２マスタバス２００ａは、第１マスタバス５４ａに対応する複数のバスから構成されている。即ち、第２マスタアドレス信号ＭｂＡＤＤＲを流すためのマスタアドレスバス２０２、第２マスタ制御信号ＭｂＣＳを流すためのマスタ制御信号バス２０３、第２マスタライトデータ信号ＭｂＤＷを流すためのマスタライトデータバス２０４、ＢＩＵ＿Ｅ１９０からの第１リードデータ信号ＭｂＤＲ＿Ｅを取り込むためのリードデータバス２０９及びＢＩＵ＿Ｃ１２０からの第２リードデータ信号ＭｂＤＲ＿Ｃを取り込むためのリードデータバス２０９Ｃから構成されている。
【０１６７】
また、セレクタ２０７は、リードデータバス２０９から送られてくる第１リードデータ信号ＭａＤＲ＿Ｅ又はリードデータバス２０９Ｃから送られてくる第２リードデータ信号ＭａＤＲ＿Ｃの何れかを選択して第２バスマスタ２００に送る。
【０１６８】
ＢＩＵ＿Ｅ１９０は、実施の形態５に係るデータ転送制御装置のＢＩＵ＿Ｅ９０に、第１バスマスタ１５４からのアクセスと第２バスマスタ２００からのアクセスを調停する機能が加えられて構成されている。
【０１６９】
ＢＩＵ＿Ｃ１２０は、第１バスマスタ１５４からのアクセスと第２バスマスタ２００からのアクセスを調停し、第１マスタバス５４ａのプロトコル又は第２マスタバス２００ａのプロトコルを、内蔵モジュール用スレーブバス１２０ａのプロトコルに変換する。
【０１７０】
第１アドレスデコーダ２１０は、第１バスマスタ１５４から出力される第１マスタアドレス信号ＭａＡＤＤＲが、ＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０のどちらのアドレス空間を指定しているかを判定する。この第１アドレスデコーダ２１０によりＢＩＵ＿Ｅ１９０のアドレス空間を指定していることが判定された場合は、信号線２１１を介して、その旨を表すＭａＢＩＵ＿Ｅ選択信号がＢＩＵ＿Ｅ１９０に送られる。一方、ＢＩＵ＿Ｃ１２０のアドレス空間を指定していることが判定された場合は、信号線２１２を介して、その旨を表すＭａＢＩＵ＿Ｃ選択信号がＢＩＵ＿Ｃ１２０に送られる。
【０１７１】
第２アドレスデコーダ２２０は、第２バスマスタ２００から出力される第２マスタアドレス信号ＭｂＡＤＤＲが、ＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０のどちらのアドレス空間を指定しているかを判定する。この第２アドレスデコーダ２２０によりＢＩＵ＿Ｅ１９０のアドレス空間を指定していることが判定された場合は、信号線２２１を介して、その旨を表すＭａＢＩＵ＿Ｅ選択信号がＢＩＵ＿Ｅ１９０に送られる。一方、ＢＩＵ＿Ｃ１２０のアドレス空間を指定していることが判定された場合は、信号線２２２を介して、その旨を表すＭａＢＩＵ＿Ｃ選択信号がＢＩＵ＿Ｃ１２０に送られる。
【０１７２】
ＢＩＵ＿Ｃ１２０は、内蔵モジュール用スレーブバス１２０ａによって第１内部モジュール６１ａ及び第２内部モジュール６１ｂに接続されている。内蔵モジュール用スレーブバス１２０ａは、内部アドレスバス１２２、内部リードデータバス１２３、内部ライドデータバス１２４及び内部制御信号バス１２５から構成されている。
【０１７３】
内部アドレスバス１２２は、ＢＩＵ＿Ｃ１２０から出力される内部アドレス信号ＣＡＤＤＲを第１内部モジュール６１ａ及び第２内部モジュール６１ｂに送るために使用される。内部リードデータバス１２３は、第１内部モジュール６１ａ及び第２内部モジュール６１ｂから読み出されてセレクタ１２６で選択された内部リードデータ信号ＣＤＲをＢＩＵ＿Ｃ１２０に送るために使用される。内部ライトデータバス１２４は、ＢＩＵ＿Ｃ１２０から出力される内部ライトデータＣＤＷを第１内部モジュール６１ａ及び第２内部モジュール６１ｂに送るために使用される。内部制御信号バス１２５は、ＢＩＵ＿Ｃ１２０から出力される内部制御信号ＣＣＳを第１内部モジュール６１ａ及び第２内部モジュール６１ｂに送るために使用される。
【０１７４】
セレクタ１２６は、第１内部モジュール６１ａから信号線１２３ａを介して送られてくるリードデータ及び第２内部モジュール６１ｂから信号線１２３ｂを介して送られてくるリードデータの何れか選択し、内部リードデータ信号ＣＤＲとして内部リードデータバス１２３に出力する。
【０１７５】
次に、上記のように構成される、この発明の実施の形態８に係るデータ転送制御装置の動作を説明する。先ず、第１バスマスタ１５４から第１内部モジュール６１ａに対するアクセス（リード動作及びライト動作）について説明する。
【０１７６】
第１バスマスタ１５４は、先ず、第１選択信号ＳＥＬａを第１選択信号線５６ａに出力し、第１内部モジュール６１ａを選択する。次いで、アクセスに必要な第１マスタ制御信号ＭａＣＳをマスタ制御信号バス３に出力する。同時に、アクセスに必要な第１マスタアドレス信号ＭａＡＤＤＲをマスタアドレスバス２に出力する。ライト動作時には、更に、第１マスタライトデータ信号ＭａＤＷをマスタライトデータバス４に出力する。
【０１７７】
また、第１アドレスデコーダ２１０は、第１マスタアドレス信号ＭａＡＤＤＲをデコードし、ＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０のどちらのアドレス空間を指定しているかを判断する。この判断の結果、ＢＩＵ＿Ｃ１２０のアドレス空間を指定していることが判断されるので、信号線２１２を介して、ＭａＢＩＵ＿Ｃ選択信号がＢＩＵ＿Ｃ１２０に送られる。これにより、ＢＩＵ＿Ｃ１２０が選択される。
【０１７８】
このようにして選択されたＢＩＵ＿Ｃ１２０は、第１バスマスタ１５４のアクセス要求を受け付けると、第１マスタバス５４ａのプロトコルを、内蔵モジュール用スレーブバス１２０ａのプロトコルに変換する。これにより、ＢＩＵ＿Ｃ１２０から内部アドレス信号ＣＡＤＤＲが内部アドレスバス１２２に出力されると共に、内部制御信号ＣＣＳが内部制御信号バス１２５に出力される。ライト動作の場合は、更に、内部ライトデータＣＤＷが内部ライトデータバス１２４に出力される。この内蔵モジュール用スレーブバス１２０ａに出力された各信号は、第１内部モジュール６１ａに送られる。
【０１７９】
第１内部モジュール６１ａでは、内部制御信号ＣＣＳによりリードアクセスが指定されていれば、内部アドレス信号ＣＡＤＤＲで指定された位置からデータを読み出し、信号線１２３ａに出力する。この信号線１２３ａに出力されたデータは、セレクタ１２６を介して内部リードデータバス１２３に出力され、内部リードデータ信号ＣＤＲとしてＢＩＵ＿Ｃ１２０に送られる。ＢＩＵ＿Ｃ１２０は、この内部リードデータ信号ＣＤＲを、第１リードデータ信号ＭｂＤＲ＿Ｃとして第１マスタバス５４ａのリードデータバス２０９Ｃに出力する。この第１リードデータ信号ＭｂＤＲ＿Ｃは、セレクタ７ａを介して第１バスマスタ１５４に取り込まれる。これにより、リード動作は終了する。
【０１８０】
一方、内部制御信号ＣＣＳによりリードアクセスが指定されていれば、第１内部モジュール６１ａは、内部ライトデータバス１２４に出力されている内部ライトデータＣＤＷを、内部アドレス信号ＣＡＤＤＲで指定された位置に書き込む。これにより、ライト動作は終了する。
【０１８１】
第２バスマスタ２００による第１内部モジュール６１ａへのアクセス（リード動作及びライト動作）は、第２マスタバス２００ａを利用して、上記と同様の手順で行われる。
【０１８２】
ここで、第１バスマスタ１５４と第２バスマスタ２００とが同時にＢＩＵ＿Ｃ１２０のアドレス空間にアクセスした場合を考える。この場合、第１アドレスデコーダ２１０から信号線２１２を介して送られてくるＭａＢＩＵ＿Ｃ選択信号によりＢＩＵ＿Ｃ１２０が選択されると共に、第２アドレスデコーダ２２０から信号線２２２を介して送られてくるＭｂＢＩＵ＿Ｃ選択信号によりＢＩＵ＿Ｃ１２０が選択される。そこで、ＢＩＵ＿Ｃ１２０は、第１バスマスタ１５４と第２バスマスタ２００との何れのアクセスを受け付けるかを決定するためのアービトレーションを行う。アービトレーションの方法としては、第１バスマスタ１５４からのアクセスを優先して受け付けるようにハードウェアで固定する方法、第２バスマスタ２００からのアクセスを優先して受け付けるようにハードウェアで固定する方法、ＢＩＵ＿Ｃ１２０の内部にレジスタを設け、このレジスタの設定によって優先順位を切り換える方法等を用いることができる。例えば、第１バスマスタ１５４からのアクセスを優先して受け付けるようにハードウェアで固定する方法が採用される場合、先に第１バスマスタ１５４からのアクセスが受け付けられ、第２バスマスタ２００のアクセスは、第１バスマスタ１５４の動作が終了するまで待たされる。そして、第１バスマスタ１５４からのアクセスが終了した後に、引き続いて第２バスマスタ２００のアクセスが受け付けられ動作が行われる。
【０１８３】
この実施の形態８に係るデータ転送制御装置の構成によれば、上述した実施の形態５に係るデータ転送制御装置における動作と同様にして第１バスマスタ１５４からの要求に応じて第１内部モジュール６１ａから外部デバイス１０１へのデータ転送が行われている時に、第２バスマスタ２００は、ＢＩＵ＿Ｃ１２０を介して上述した動作により、第１内部モジュール６１ａにアクセスできる。
【０１８４】
以上説明したように、この実施の形態８に係るデータ転送制御装置によれば、第１バスマスタ１５４からの要求に応じて第１内部モジュール６１ａから外部デバイス１０１へのデータ転送が行われている時に、このデータ転送と並行して、第２バスマスタ２００は、第１内部モジュール６１ａにアクセスできるので、トータル的にデータ転送に要するクロックサイクルを減らすことができる。
【０１８５】
実施の形態９．
次に、この発明の実施の形態９に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態８に係るデータ転送制御装置において、複数のバススレーブの間で行われる転送用バスを用いたデータ転送が終了するのを待たないで、バスマスタと他のバススレーブとの間のデータ転送を可能にしたものである。
【０１８６】
図２１は、この発明の実施の形態９に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、主に、図２０に示した実施の形態５に係るデータ転送制御装置に、バスインタフェースユニット（以下、「ＢＩＵ＿Ｍ」という）１３０及び内蔵メモリブロック１３１が追加され、セレクタ７ａ及びセレクタ２０７がセレクタ７ｂ及びセレクタ２０７ａにそれぞれ変更されることにより構成されている。
【０１８７】
以下、実施の形態８に係るデータ転送制御装置と異なる部分を説明する。第１バスマスタ１５４は、ＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０を介するデータ転送の他に、ＢＩＵ＿Ｍ１３０を介して内蔵メモリブロック１３１との間でデータ転送を行う。第１マスタバス５４ａは、実施の形態８における第１マスタバス５４ａに、ＢＩＵ＿Ｍ１３０からの第３リードデータ信号ＭａＤＲ＿Ｍを取り込むためのリードデータバス９Ｍが追加されて構成されている。
【０１８８】
また、セレクタ７ｂは、リードデータバス９から送られてくる第１リードデータ信号ＭａＤＲ＿Ｅ、リードデータバス９Ｃから送られてくる第２リードデータ信号ＭａＤＲ＿Ｃ及びリードデータバス９Ｍから送られてくる第３リードデータ信号ＭａＤＲ＿Ｍの何れかを選択して第１バスマスタ１５４に送る。
【０１８９】
第２バスマスタ２００は、ＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０を介するデータ転送の他に、ＢＩＵ＿Ｍ１３０を介して内蔵メモリブロック１３１との間でデータ転送を行う。第２マスタバス２００ａは、実施の形態８における第２マスタバス２００ａに、ＢＩＵ＿Ｍ１３０からの第３リードデータ信号ＭｂＤＲ＿Ｍを取り込むためのリードデータバス２０９＿Ｍが追加されて構成されている。
【０１９０】
また、セレクタ２０７ａは、リードデータバス２０９から送られてくる第１リードデータ信号ＭａＤＲ＿Ｅ、リードデータバス２０９Ｃから送られてくる第２リードデータ信号ＭａＤＲ＿Ｃ及びリードデータバス２０９＿Ｍから送られてくる第３リードデータ信号ＭａＤＲ＿Ｍの何れかを選択して第２バスマスタ２００に送る。
【０１９１】
ＢＩＵ＿Ｍ１３０は、第１バスマスタ１５４からのアクセスと第２バスマスタ２００からのアクセスを調停し、第１マスタバス５４ａのプロトコル又は第２マスタバス２００ａのプロトコルを、内蔵メモリ用スレーブバス１３０ａのプロトコルに変換する。ＢＩＵ＿Ｃ１２０は、内蔵メモリ用スレーブバス１３０ａによって内蔵メモリブロック１３１に接続されている。内蔵メモリ用スレーブバス１３０ａは、内蔵メモリアドレスバス１３２、内蔵メモリリードデータバス１３３、内蔵メモリライドデータバス１３４及び内蔵メモリ制御信号バス１３５から構成されている。
【０１９２】
内蔵メモリアドレスバス１３２は、ＢＩＵ＿Ｍ１３０から出力される内蔵メモリアドレス信号ＭＡＤＤＲを内蔵メモリブロック１３１に送るために使用される。内蔵メモリリードデータバス１３３は、内蔵メモリブロック１３１から読み出された内蔵メモリリードデータＭＤＲをＢＩＵ＿Ｍ１３０に送るために使用される。内蔵メモリライトデータバス１３４は、ＢＩＵ＿Ｍ１３０から出力される内蔵メモリライトデータＭＤＷを内蔵メモリブロック１３１に送るために使用される。内蔵メモリ制御信号バス１３５は、ＢＩＵ＿Ｍ１３０から出力される内蔵メモリ制御信号を内蔵メモリブロック１３１に送るために使用される。
【０１９３】
転送制御部１１０は、実施の形態８における転送制御部１１０の機能に加えて、転送指示を受けたことを表す転送指示受付信号を、信号線１１１を介して第１バスマスタ１５４に送り、また、データ転送中であることを表すビジー信号を信号線１１２を介してＢＩＵ＿Ｅ１９０に送る機能を備えている。
【０１９４】
次に、上記のように構成される、この発明の実施の形態９に係るデータ転送制御装置の動作を説明する。
【０１９５】
第１バスマスタ１５４からのアクセス要求に応答して行われる、第１内部モジュール６１ａから外部デバイス１０１へのデータ転送は、実施の形態５及び実施の形態８と同様にして行われる。なお、第１バスマスタ１５４が転送指示線５５を介して転送指示信号を転送制御部１１０に送ると、転送制御部１１０は、この転送指示信号に応答して、第１内部モジュール６１ａ及び外部デバイス１０１に対して必要な制御信号を出力する。これと同時に、転送制御部１１０は、転送指示を受けたことを表す転送指示受付信号を、信号線１１１を介して第１バスマスタ１５４に送ると共に、データ転送中であることを表すビジー信号を、信号線１１２を介してＢＩＵ＿Ｅ１９０に送る。ＢＩＵ＿Ｅ１９０は、ビジー信号を受け取ると、そのビジー信号が解除されるまで、第１バスマスタ１５４及び第２バスマスタ２００からのアクセス要求を受け付けない。この状態で、上述した第１内部モジュール６１ａから外部デバイス１０１へのデータ転送が行われる。
【０１９６】
第１バスマスタ１５４は、転送制御部１１０からの転送指示受付信号により、転送制御部１１０に出した転送指示が受け付けられたものと判断し、次のアクセスに移る。このとき、例えば第２内部モジュール６１ｂから内蔵メモリブロック１３１へのデータ転送が可能である。このデータ転送動作は、第１バスマスタ１５４が、先ず、第２内部モジュール６１ｂに対してリード動作を実行し、その後、内蔵メモリブロック１３１に対してライト動作を実行することにより実現できる。
【０１９７】
以上説明したように、この実施の形態９に係るデータ転送制御装置によれば、第１バスマスタ１５４は、転送制御部１１０に対して要求した転送指示が受け付けられると、その転送が完了するのを待たないで、次のアクセスを開始できるため、トータル的にデータ転送に要するクロックサイクルを減らすことができる。
【０１９８】
実施の形態１０．
次に、この発明の実施の形態１０に係るデータ転送制御装置を説明する。このデータ転送制御装置は、実施の形態８に係るデータ転送制御装置において、複数のバススレーブの間で行われる転送用バスを用いたデータ転送が終了するのを待たないで、バスマスタと他のバススレーブとの間のデータ転送を可能にしたものである。
【０１９９】
図２２は、この発明の実施の形態１０に係るデータ転送制御装置の構成を示すブロック図である。このデータ転送制御装置は、図２０に示した実施の形態５に係るデータ転送制御装置において、第１バスマスタ１５４からＢＩＵ＿Ｅ１９０及びＢＩＵ＿Ｃ１２０に接続されるスレーブバス権確保信号線１５５が設けられて構成されている。第１バスマスタ１５４は、スレーブバス権確保信号線１５５にスレーブバス権確保信号を出力する。
【０２００】
次に、上記のように構成される、この発明の実施の形態１０に係るデータ転送制御装置の動作を説明する。ここでは、第１バスマスタ１５４からの要求に応答して行われる、第１内部モジュール６１ａから外部デバイス１０１へのデータ転送の動作について説明する。この動作は、実施の形態５、実施の形態８及び実施の形態９と同様にして行われる。ここで、第１バスマスタ１５４は、ＢＩＵ＿Ｅ１９０に対してアクセスを行う際に、スレーブバス権確保信号線１５５にスレーブバス権確保信号を出力する。ＢＩＵ＿Ｅ１９０は、一旦、第１バスマスタ１５４からのアクセス要求を受け付けると、そのアクセス要求に応じた動作が終了するまで、第１バスマスタ１５４以外のバスマスタからのアクセス要求を受け付けないように制御される。ＢＩＵ＿Ｃ１２０についても同様である。
【０２０１】
この実施の形態１０に係るデータ転送制御装置によれば、第１バスマスタ１５４は、スレーブバス権確保信号を用いてＢＩＵ＿Ｅ１９０又はＢＩＵ＿Ｃ１２０に対するバス権を確保した状態でデータのリード動作又はライト動作を行うことができるので、他のバスマスタからのアクセス要求に基づいてデータ転送に起因してクロックサイクル数が増加するのを防止できる。その結果、トータル的にデータ転送に要するクロックサイクルを減らすことができる。
【０２０２】
この実施の形態１０に係るデータ転送制御装置は、図２３に示すように変形することができる。この変形例に係るデータ転送制御装置は、図２２に示したデータ転送制御装置の構成と、図２１に示した実施の形態９に係るデータ転送制御装置の構成とを組み合わせ、更に、実施の形態９及び実施の形態１０における第１マスタバス５４ａが、デスティネーションアクセス（ライト動作）のための第１デスティネーション用マスタバス５４ｂとソースアクセス（リード動作）のための第１ソース用マスタバス５４ｃとに分けられて構成されている。
【０２０３】
第１バスマスタ１５４は、第１デスティネーション用マスタバス５４ｂ及び第１ソース用マスタバス５４ｃに対するインタフェースを備えている。
【０２０４】
第１ソース用マスタバス５４ｃは、ソースアクセス用アドレスバス２＿ｓ、ソースアクセス用制御信号バス３＿ｓ及びソースアクセス用スレーブバス権確保信号線１５５＿ｓを含んでいる。ソースアクセス用スレーブバス権確保信号線１５５＿ｓは、第１バスマスタ１５４からＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０に接続されており、これらにソースアクセス用スレーブバス権確保信号を送るために使用される。
【０２０５】
第１ソースアドレスデコーダ２１０＿ｓは、第１バスマスタ１５４からソースアクセス用アドレスバス２＿ｓに出力されるソースアドレス信号ＭａＡＤＤＲ＿ｓを受けて、第１バスマスタ１５４からＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０の何れのアドレス空間が指定されているかを判断する。この第１ソースアドレスデコーダ２１０＿ｓによりＢＩＵ＿Ｅ１９０のアドレス空間が指定されていることが判定された場合は、信号線２１１＿ｓを介して、その旨を表すソースＭａＢＩＵ＿Ｅ選択信号がＢＩＵ＿Ｅ１９０に送られる。また、ＢＩＵ＿Ｃ１２０のアドレス空間が指定されていることが判定された場合は、信号線２１２＿ｓを介して、その旨を表すソースＭａＢＩＵ＿Ｃ選択信号がＢＩＵ＿Ｃ１２０に送られる。更に、ＢＩＵ＿Ｍ１３０のアドレス空間が指定されていることが判定された場合は、信号線２１３＿ｓを介して、その旨を表すソースＭａＢＩＵ＿Ｍ選択信号がＢＩＵ＿Ｍ１３０に送られる。
【０２０６】
第１デスティネーション用マスタバス５４ｂは、デスティネーションアクセス用アドレスバス２＿ｄ、デスティネーションアクセス用制御信号バス３＿ｄ及びデスティネーションアクセス用スレーブバス権確保信号線１５５＿ｄを含んでいる。デスティネーションアクセス用スレーブバス権確保信号線１５５＿ｄは、第１バスマスタ１５４からＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０に接続されており、これらにデスティネーションアクセス用スレーブバス権確保信号を送るために使用される。
【０２０７】
第１デスティネーションアドレスデコーダ２１０＿ｄは、第１バスマスタ１５４からデスティネーションアクセス用アドレスバス２＿ｄに出力されるデスティネーションアドレス信号ＭａＡＤＤＲ＿ｄを受けて、第１バスマスタ１５４からＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０の何れのアドレス空間が指定されているかを判断する。この第１デスティネーションアドレスデコーダ２１０＿ｄによりＢＩＵ＿Ｅ１９０のアドレス空間が指定されていることが判定された場合は、信号線２１１＿ｄを介して、その旨を表すデスティネーションＭａＢＩＵ＿Ｅ選択信号がＢＩＵ＿Ｅ１９０に送られる。また、ＢＩＵ＿Ｃ１２０のアドレス空間が指定されていることが判定された場合は、信号線２１２＿ｄを介して、その旨を表すデスティネーションＭａＢＩＵ＿Ｃ選択信号がＢＩＵ＿Ｃ１２０に送られる。更に、ＢＩＵ＿Ｍ１３０のアドレス空間が指定されていることが判定された場合は、信号線２１３＿ｄを介して、その旨を表すデスティネーションＭａＢＩＵ＿Ｍ選択信号がＢＩＵ＿Ｍ１３０に送られる。
【０２０８】
次に、この変形例に係るデータ転送制御装置の動作を説明する。ここでは、第１バスマスタ１５４の制御により第１内部モジュール６１ａから内蔵メモリブロック１３１にデータが転送される場合の例を説明する。
【０２０９】
先ず、第１バスマスタ１５４は、第１ソース用マスタバス５４ｃを使用して第１内部モジュール６１ａからデータを読み出し、このリードされたデータを、第１デスティネーション用マスタバス５４ｂを利用して内蔵メモリブロック１３１に書き込む。この動作を繰り返すことにより、所望の数のデータが転送される。第１内部モジュール６１ａからのデータの読み出し及び内蔵メモリブロック１３１へのデータの書き込みの各動作は、ソースアクセス用スレーブバス権確保信号及びデスティネーションアクセス用スレーブバス権確保信号が使用される点を除けば、実施の形態８で説明した第１バスマスタ１５４によるデータ転送動作と同じである。
【０２１０】
第１バスマスタ１５４から第１内部モジュール６１ａに対するソースアクセス（リード動作）時には、ソースアクセス用スレーブバス権確保信号線１５５＿ｓにソースアクセス用スレーブバス権確保信号が出力され、ＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０に送られる。第１ソースアドレスデコーダ２１０＿ｓは、第１バスマスタ１５４から出力されたソースアドレス信号ＭａＡＤＤＲ＿ｓをデコードし、信号線２１２＿ｓを介して、ソースＭａＢＩＵ＿Ｃ選択信号をＢＩＵ＿Ｃ１２０に送る。
【０２１１】
ＢＩＵ＿Ｃ１２０は、第１バスマスタ１５４からのソースアクセス要求、第１バスマスタ１５４からのデスティネーションアクセス要求及び第２バスマスタ２００からのアクセス要求を調停し、受け付ける１つのアクセス要求を決定する。ここでは、第１バスマスタ１５４からのデスティネーションアクセス要求及び第２バスマスタ２００からのアクセス要求は存在しないものと仮定する。
【０２１２】
ＢＩＵ＿Ｃ１２０は、唯一のアクセス要求である第１バスマスタ１５４からのソースアクセス要求を受け付ける。この際、第１バスマスタ１５４からソースアクセス用スレーブバス権確保信号線１５５＿ｓにソースアクセス用スレーブバス権確保信号が出力されているので、現在行われている１データ分のリードアクセス動作が終了しても、第１バスマスタ１５４に与えられた内蔵モジュール用スレーブバス１２０ａのバス権は開放されない。ＢＩＵ＿Ｃ１２０は、第１バスマスタ１５４から引き続いて出される第１内部モジュール６１ａへのソースアクセス要求を受け付ける。この時、第２バスマスタ２００からのアクセス要求があっても、そのアクセス要求を受け付けない。
【０２１３】
このような動作により、第１バスマスタ１５４からソースアクセス用スレーブバス権確保信号線１５５＿ｓにソースアクセス用スレーブバス権確保信号を出力し続けることにより、所望の回数のリードアクセス動作が繰り返される。このリードアクセス動作が繰り返されている間は、ＢＩＵ＿Ｃ１２０は、他のバスマスタからのアクセス要求は受け付けない。
【０２１４】
第１バスマスタ１５４から内蔵メモリブロック１３１に対するデスティネーションアクセス（ライト動作）時には、デスティネーションアクセス用スレーブバス権確保信号線１５５＿ｄにデスティネーションアクセス用スレーブバス権確保信号が出力され、ＢＩＵ＿Ｅ１９０、ＢＩＵ＿Ｃ１２０及びＢＩＵ＿Ｍ１３０に送られる。第１デスティネーションアドレスデコーダ２１０＿ｄは、第１バスマスタ１５４から出力されたデスティネーションアドレス信号ＭａＡＤＤＲ＿ｄをデコードし、信号線２１３＿ｄを介して、デスティネーションＭａＢＩＵ＿Ｍ選択信号をＢＩＵ＿Ｍ１３０に送る。
【０２１５】
ＢＩＵ＿Ｍ１３０は、第１バスマスタ１５４からのソースアクセス要求、第１バスマスタ１５４からのデスティネーションアクセス要求及び第２バスマスタ２００からのアクセス要求を調停し、受け付ける１つのアクセス要求を決定する。ここでは、第１バスマスタ１５４からのソースアクセス要求及び第２バスマスタ２００からのアクセス要求は存在しないものと仮定する。
【０２１６】
ＢＩＵ＿Ｍ１３０は、唯一のアクセス要求である第１バスマスタ１５４からのデスティネーションアクセス要求を受け付ける。この際、第１バスマスタ１５４からデスティネーションアクセス用スレーブバス権確保信号線１５５＿ｄにデスティネーション用スレーブバス権確保信号が出力されているので、現在行われている１データ分のライトアクセス動作が終了しても、第１バスマスタ１５４に与えられた内蔵メモリ用スレーブバス１３０ａのバス権は開放されない。ＢＩＵ＿Ｍ１３０は、第１バスマスタ１５４から引き続いて出される内蔵メモリブロック１３１へのデスティネーションアクセス要求を受け付ける。この時、第２バスマスタ２００からのアクセス要求があっても、そのアクセス要求を受け付けない。
【０２１７】
このような動作により、第１バスマスタ１５４からデスティネーションアクセス用スレーブバス権確保信号線１５５＿ｄにデスティネーションアクセス用スレーブバス権確保信号を出力し続けることにより、所望の回数のライトアクセス動作が繰り返される。このライトアクセス動作が繰り返されている間は、ＢＩＵ＿Ｍ１３０は、他のバスマスタからのアクセス要求は受け付けない。
【０２１８】
以上のようにして、第１バスマスタ１５４の制御による、第１内部モジュール６１ａから内蔵メモリブロック１３１へのデータ転送が実行される。なお、上述した動作により、第１内部モジュール６１ａから内蔵メモリブロック１３１へのデータ転送が行われている間は、このデータ転送と並行して、第２バスマスタ２００は、外部デバイス１０１に対するアクセスを行うことができる。
【０２１９】
以上説明したように、この実施の形態１０に係るデータ転送制御装置によれば、スレーブバス権確保信号を用いて、各ＢＩＵでスレーブバスのバス権を確保した状態でデータのリード動作及びライト動作を行うことができるので、他のバスマスタからのアクセスに起因してクロックサイクル数が増加するのを防止できる。その結果、最小のクロックサイクル数でデータ転送を実現できる。
【０２２０】
【発明の効果】
以上のように、この発明によれば、バスマスタからの指示に応じて、第１バススレーブと複数の第２バススレーブの中から選択された１つの第２バススレーブとの間で専用の転送用バスを用いたデータ転送が行われるので、転送されるデータはバスマスタを経由しない。その結果、バスマスタを経由するために要するクロックサイクルを削減できるので、少ない数のクロックサイクルで効率よく、且つ迅速にデータ転送を行うことができる効果がある。
【図面の簡単な説明】
【図１】一般的なデータ転送制御装置の構成を示すブロック図である。
【図２】図１に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図３】この発明の実施の形態１に係るデータ転送制御装置の構成を示すブロック図である。
【図４】図３に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図５】この発明の実施の形態２に係るデータ転送制御装置の構成を示すブロック図である。
【図６】図５に示されるデータ転送制御装置で使用されるＲＡＭのアドレス領域を説明するための図である。
【図７】図５に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図８】この発明の実施の形態３に係るデータ転送制御装置の構成を示すブロック図である。
【図９】図８に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図１０】図８に示されるデータ転送制御装置の他の動作を説明するためのタイミングチャートである。
【図１１】この発明の実施の形態４に係るデータ転送制御装置の構成を示すブロック図である。
【図１２】図１１に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図１３】この発明の実施の形態５に係るデータ転送制御装置の構成を示すブロック図である。
【図１４】図１３に示されるデータ転送制御装置の動作を説明するためのタイミングチャートである。
【図１５】この発明の実施の形態６に係るデータ転送制御装置の構成を示すブロック図である。
【図１６】図１５に示されるデータ転送制御装置で使用されるＲＡＭのアドレス領域を説明するための図である。
【図１７】この発明の実施の形態７に係るデータ転送制御装置の構成を示すブロック図である。
【図１８】図１７に示されるデータ転送制御装置で使用されるＩＯのアドレス領域を説明するための図である。
【図１９】この発明の実施の形態７に係るデータ転送制御装置の変形例の構成を示すブロック図である。
【図２０】この発明の実施の形態８に係るデータ転送制御装置の構成を示すブロック図である。
【図２１】この発明の実施の形態９に係るデータ転送制御装置の構成を示すブロック図である。
【図２２】この発明の実施の形態１０に係るデータ転送制御装置の構成を示すブロック図である。
【図２３】この発明の実施の形態１０に係るデータ転送制御装置の変形例の構成を示すブロック図である。
【符号の説明】
１０  ＢＩＵ＿Ｒ（バスインタフェース）、１０ａ  ＲＡＭ用スレーブバス（スレーブバス）、１１  内部モジュール（バススレーブ）、５１，５２，５４  バスマスタ、５１ａ  マスタバス、５４ａ  第１マスタバス（マスタバス）、５４ｂ  第１デスティネーション用マスタバス（マスタバス）、５４ｃ  第１ソース用マスタバス（マスタバス）、６０  転送用バス、６１ａ  第１内部モジュール（バススレーブ）、６１ｂ  第２内部モジュール（バススレーブ）、６２，１１０  転送制御部、７０  ＩＯ選択レジスタ（選択部）、７２  転送指示レジスタ（転送指示部）、７４，７６  ＩＯ選択制御部（選択部）、８０  転送指示制御部（転送指示部）、９０，１９０  ＢＩＵ＿Ｅ（バスインタフェース）、９０ａ，１９０ａ  外部デバイス用スレーブバス（スレーブバス）、９１  外部デバイス制御部（バススレーブ）、１０１  外部デバイス、１２０  ＢＩＵ＿Ｃ（バスインタフェース）、１２０ａ  内蔵モジュール用スレーブバス（スレーブバス）、１３０  ＢＩＵ＿Ｍ（バスインタフェース）、１３０ａ  内蔵メモリ用スレーブバス（スレーブバス）、１３１  内蔵メモリブロック（バススレーブ）、１５４  第１バスマスタ（バスマスタ）、２００  第２バスマスタ、２００ａ  第２マスタバス。
【図１】
2004318340.tif 000003
【図２】
2004318340.tif 000004
【図３】
2004318340.tif 000005
【図４】
2004318340.tif 000006
【図５】
2004318340.tif 000007
【図６】
2004318340.tif 000008
【図７】
2004318340.tif 000009
【図８】
2004318340.tif 000010
【図９】
2004318340.tif 000011
【図１０】
2004318340.tif 000012
【図１１】
2004318340.tif 000013
【図１２】
2004318340.tif 000014
【図１３】
2004318340.tif 000015
【図１４】
2004318340.tif 000016
【図１５】
2004318340.tif 000017
【図１６】
2004318340.tif 000018
【図１７】
2004318340.tif 000019
【図１８】
2004318340.tif 000020
【図１９】
2004318340.tif 000021
【図２０】
2004318340.tif 000022
【図２１】
2004318340.tif 000023
【図２２】
2004318340.tif 000024
【図２３】
2004318340.tif 000025