JPH04369065A - ダイレクトメモリアクセスコントローラ - Google Patents

ダイレクトメモリアクセスコントローラ

Info

Publication number
JPH04369065A
JPH04369065A JP14515391A JP14515391A JPH04369065A JP H04369065 A JPH04369065 A JP H04369065A JP 14515391 A JP14515391 A JP 14515391A JP 14515391 A JP14515391 A JP 14515391A JP H04369065 A JPH04369065 A JP H04369065A
Authority
JP
Japan
Prior art keywords
data
bus
memory
destination
acquired
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.)
Pending
Application number
JP14515391A
Other languages
English (en)
Inventor
Takashi Harada
尚 原田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP14515391A priority Critical patent/JPH04369065A/ja
Publication of JPH04369065A publication Critical patent/JPH04369065A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロコンピュータ等
のデータ処理装置内において、複数のバス間でデータ転
送を行うためのダイレクトメモリアクセスコントローラ
、所謂 DMAコントローラに関し、更に詳述すれば、
データ転送効率を向上したダイレクトメモリアクセスコ
ントローラに関する。
【0002】
【従来の技術】図4は従来のダイレクトメモリアクセス
コントローラ( 以下、DMACという) の入出力信
号を示す模式図であり、また図5はそのDMAC1を組
込んだシステムの構成例を示すブロック図である。
【0003】DMAC1には、第1のバス権要求用出力
端子 (以下、第1HREQという) 2,第1のバス
のバス権を獲得したことを通知する入力端子(以下、第
1HACKという)3,第2のバス権要求用出力端子 
(以下、第2HREQという) 4及び第2のバスのバ
ス権を獲得したことを通知する入力端子(以下、第2H
ACKという)5が備えられている。また、DMAC1
からアドレスを出力するためのアドレス端子6及びデー
タを入出力するためのデータ端子7も備えられている。
【0004】このような信号端子2, 3, 4, 5
及びアドレス端子6, データ端子7を有するDMAC
1を2系統のバスを有するシステムに組込んだ構成が図
5に示されている。
【0005】図5において、参照符号8は第1のシステ
ムバスであり、同9は第2のシステムバスである。
【0006】第1のシステムバス8には、第1のマイク
ロプロセッシングユニット(以下、第1MPU という
)10,  第1メモリ11, 第1インタフェイスユ
ニット (以下、第1I/O という)12がそれぞれ
接続されている。
【0007】また、第2のシステムバス9には、第2の
マイクロプロセッシングユニット(以下、第2MPU 
という)13,  第2メモリ14, 第2インタフェ
イスユニット (以下、第2I/O という)15がそ
れぞれ接続されている。
【0008】DMAC1のアドレス端子6は第1バッフ
ァ回路16に、データ端子7は第2バッファ回路17に
それぞれ接続されている。第1バッファ回路16はアド
レス端子6を第1のシステムバス8または第2のシステ
ムバス9のいずれかに選択的に接続する切換え手段であ
り、また第2バッファ回路17はデータ端子7を第1の
システムバス8または第2のシステムバス9のいずれか
に選択的に接続する切換え手段である。
【0009】また、DMAC1の第1HREQ2及び第
1HACK3は第1MPU 10に、第2HREQ4及
び第2HACK5は第2MPU 13にそれぞれ接続さ
れている。
【0010】このような従来のDMAC1を組込んだシ
ステムの動作は以下の如くである。一例として、第1の
システムバス8に接続されている第1メモリ11をソー
スとし、第2のシステムバス9に接続されている第2メ
モリ14をデスティネーションとしてデータ転送する場
合について説明する。
【0011】いま、第1メモリ11から第2メモリ14
へのデータ転送要求が発生した場合、DMAC1は第1
及び第2のシステムバス8,9のバス権を開放させるた
めに第1MPU10及び第2MPU 13に対して第1
HREQ2,第2HREQ4をそれぞれアサートする。
【0012】両MPU 10, 13はその時点で実行
中のバスサイクルが完了し次第、DMAC1に対して第
1HACK3, 第2HACK5をそれぞれアサートす
る。
【0013】DMAC1は、両HACK3, HACK
5が共にアサートされたことにより両システムバス8,
 9が共にホールド状態 (開放状態) になったこと
を認識すると、最初のバスサイクルにおいてソース側の
先頭アドレスをアドレス端子6, 第1バッファ回路1
6を介して第1のシステムバス8へ出力することにより
第1メモリ11から第2バッファ回路17, データ端
子7を介してデータを取込み、次のバスサイクルにおい
てデスティネーション側の先頭アドレスをアドレス端子
6, 第1バッファ回路16を介して出力して第2のシ
ステムバス9へ出力することにより第2メモリ14へデ
ータを書込む動作を行う。
【0014】
【発明が解決しようとする課題】このように、二つのシ
ステムバス間でデータ転送を行う場合、双方のバス権が
共にホールド状態になるまで、即ちDMAC1から両M
PU 10, 13に対して両HREQ2,4をアサー
トし、両MPU 10, 13からDMAC1に対して
両HACK3,5のアサートが完了するまでは、データ
転送を行うことは出来ない。このため、ソース側からは
HACKがアサートされても、デスティネーション側で
長時間を要する処理を実行中である場合にはデスティネ
ーション側からはHACKがアサートされず、従ってソ
ース側はデスティネーション側でHACKをアサートす
るまで待機させられることになる。
【0015】本発明はこのような事情に鑑みてなされた
ものであり、デスティネーション側からのバス権獲得通
知信号がアサートされない場合にも、ソース側での待機
状態無しでデータ転送を可能にしたダイレクトメモリア
クセスコントローラの提供を目的とする。
【0016】
【課題を解決するための手段】本発明のダイレクトメモ
リアクセスコントローラの第1の発明は、ソース側のバ
ス権がデスティネーション側のバス権より先に獲得され
たことを検出する回路と、デスティネーション側のバス
権が獲得される前にソース側のデータを退避させるデー
タ退避用メモリとを備えている。
【0017】また、本発明のダイレクトメモリアクセス
コントローラの第2の発明は、データ退避用メモリに退
避されているデータ数を計数するカウンタと、デスティ
ネーション側の先頭アドレスを保持するレジスタと、カ
ウンタのカウント値とレジスタの保持値とを加算する加
算回路とを備えている。
【0018】
【作用】本発明のダイレクトメモリアクセスコントロー
ラの第1の発明では、デスティネーション側のバス権が
獲得されない場合にも、ソース側のバスからデータがメ
モリに転送されて退避されてソース側は他の処理に移る
ことが出来、その後にデスティネーション側のバス権が
獲得された時点でメモリに退避されていたデータがデス
ティネーション側へ転送される。
【0019】また第2の発明では、複数のデータを転送
する場合に、デスティネーション側のバス権が獲得され
ない場合にも、ソース側のバスからデータがメモリに転
送されて退避され、その後にデスティネーション側のバ
ス権が獲得された時点ではソース側からデスティネーシ
ョン側へ直接データが転送され、これらのデータ転送が
終了した後にメモリに退避されているデータがデスティ
ネーション側へ転送される。
【0020】
【実施例】以下、本発明をその実施例を示す図面に基づ
いて詳述する。
【0021】図1は本発明のダイレクトメモリアクセス
コントローラ( 以下、DMACという)の第1の発明
の一実施例の構成及び入出力信号を示す模式図である。
【0022】DMAC1には、第1のバス権要求用出力
端子 (以下、第1HREQという) 2,第1のバス
のバス権を獲得したことを通知する入力端子(以下、第
1HACKという)3,第2のバス権要求用出力端子 
(以下、第2HREQという) 4及び第2のバスのバ
ス権を獲得したことを通知する入力端子(以下、第2H
ACKという)5が備えられている。また、DMAC1
からアドレスを出力するためのアドレス端子6及びデー
タを入出力するためのデータ端子7も備えられている。
【0023】DMAC1内部には、退避用メモリ18,
 優先制御回路19, スイッチ回路20が内蔵されて
いる。
【0024】優先制御回路19には両HACK3,HA
CK5が入力されている。この優先制御回路19は、第
1HACK3と第2HACK5とのいずれが先にアサー
トされたかを検出し、その時点でソース側になっている
HACKが先にアサートされた場合に制御信号190 
をスイッチ回路20に与える。
【0025】スイッチ回路20はデータ端子7と退避用
メモリ18との間に介装されており、優先制御回路19
から制御信号190 が与えられた場合にデータ端子7
と退避用メモリ18とを接続する。
【0026】このような信号端子2, 3, 4, 5
及びアドレス端子6, データ端子7を有し、退避用メ
モリ18, 優先制御回路19及びスイッチ回路20を
内蔵した本発明のDMAC1を2系統のバスを有するシ
ステムに組込んだ構成は図2に示されている。
【0027】図2において、参照符号8は第1のシステ
ムバスであり、同9は第2のシステムバスである。
【0028】第1のシステムバス8には、第1のマイク
ロプロセッシングユニット(以下、第1MPU という
)10,  第1メモリ11, 第1インタフェイスユ
ニット (以下、第1I/O という)12がそれぞれ
接続されている。
【0029】また、第2のシステムバス9には、第2の
マイクロプロセッシングユニット(以下、第2MPU 
という)13,  第2メモリ14, 第2インタフェ
イスユニット (以下、第2I/O という)15がそ
れぞれ接続されている。
【0030】DMAC1のアドレス端子6は第1バッフ
ァ回路16に、データ端子7は第2バッファ回路17に
それぞれ接続されている。第1バッファ回路16はアド
レス端子6を第1のシステムバス8または第2のシステ
ムバス9のいずれかに選択的に接続する切換え手段であ
り、また第2バッファ回路17はデータ端子7を第1の
システムバス8または第2のシステムバス9のいずれか
に選択的に接続する切換え手段である。
【0031】また、DMAC1の第1HREQ2及び第
1HACK3は第1MPU 10に、第2HREQ4及
び第2HACK5は第2MPU 13にそれぞれ接続さ
れている。
【0032】このような本発明のDMAC1を組込んだ
システムの動作は以下の如くである。
【0033】一例として、第1のシステムバス8に接続
されている第1メモリ11をソースとし、第2のシステ
ムバス9に接続されている第2メモリ14をデスティネ
ーションとしてデータ転送する場合について説明する。
【0034】いま、第1メモリ11から第2メモリ14
へのデータ転送要求が発生した場合、DMAC1は第1
及び第2のシステムバス8,9のバス権を開放させるた
めに第1MPU10及び第2MPU 13に対して第1
HREQ2,第2HREQ4をそれぞれアサートする。
【0035】両MPU 10, 13はその時点で実行
中のバスサイクルが完了し次第、DMAC1に対して第
1HACK3, 第2HACK5をそれぞれアサートす
る。
【0036】この際、優先制御回路19はいずれのMP
U 10, 13からのHACKが先にアサートされた
か、具体的には第1HACK3または第2HACK5の
いずれが先にアサートされたかを検出し、現在デスティ
ネーションになっている第2のシステムバス9側の第2
MPU 13からの第2HACK5が先にアサートされ
た場合及び両HACK3, HACK5が同時にアサー
トされた場合は前述の従来例と同様の動作を行う。
【0037】即ち、DMAC1は、両HACK3, H
ACK5が同時にアサートされたことにより、またはデ
スティネーション側の第2HACK5がアサートされた
後にソース側の第1HACK3がアサートされたことに
より両システムバス8, 9が共にホールド状態 (開
放状態) になったことを認識すると、最初のバスサイ
クルにおいてソース側の先頭アドレスをアドレス端子6
, 第1バッファ回路16を介して第1のシステムバス
8へ出力することにより第1メモリ11から第2バッフ
ァ回路17, データ端子7を介してデータを取込み、
次のバスサイクルにおいてデスティネーション側の先頭
アドレスをアドレス端子6, 第1バッファ回路16を
介して出力して第2のシステムバス9へ出力することに
より第2メモリ14へデータを書込む動作を行う。
【0038】一方、ソースになっている第1のシステム
バス8側の第1MPU10からの第1HACK3が先に
アサートされた場合は、優先制御回路19は制御信号1
90 をスイッチ回路20へ出力する。これにより、ス
イッチ回路20はデータ端子7と退避用メモリ18とを
接続する。
【0039】そして、DMAC1はソース側の先頭アド
レスをアドレス端子6, 第1バッファ回路16を介し
て第1のシステムバス8へ出力することにより第1メモ
リ11から第2バッファ回路17, データ端子7及び
スイッチ回路20を介してデータを退避用メモリ18に
取込んで退避させる。このようにしてソース側の第1メ
モリ11から退避用メモリ18へのデータ転送が完了す
ると、DMAC1はソース側の、即ち第1のシステムバ
ス8のバス権を解除するので、第1MPU 10は次の
処理を行うことが可能な状態になる。
【0040】デスティネーション側の第2MPU 13
では、データ転送要求が発生した時点で行っていた処理
が完了すると第2HACK5をアサートするが、これに
よりDMAC1は退避用メモリ18に格納されて一時退
避されているデータのデスティネーション側への転送を
行う。即ち、DMAC1からデスティネーション側の先
頭アドレスがアドレス端子6, 第1バッファ回路16
を介して出力されて第2のシステムバス9へ出力され、
退避用メモリ18からデータがスイッチ回路20, デ
ータ端子7及び第2バッファ回路17を介して第2のシ
ステムバス9へ出力されて第2メモリ14へ書き込まれ
る。
【0041】このようにして退避用メモリ18からデス
ティネーション側の第2メモリ14へのデータ転送が完
了すると、DMAC1はデスティネーション側の、即ち
第2のシステムバス9のバス権を解除するので、第2M
PU 13は次の処理を行うことが可能な状態になる。
【0042】以上により、ソース側の第1メモリ11か
らデスティネーション側の第2メモリ14への一連のデ
ータ転送処理が完了する。
【0043】図3は本発明のダイレクトメモリアクセス
コントローラの第2の発明の一実施例の構成例を示す模
式図である。
【0044】本第2の発明では、上述の第1の発明の構
成に加えて、アドレス端子6に接続された加算回路22
及びこの加算回路22に接続されたカウンタ21とデス
ティネーションアドレスレジスタ23とが備えられてい
る。
【0045】カウンタ21は、ソース側の第1メモリ1
1または第2メモリ14から退避用メモリ18へデータ
を転送して退避させた場合にそのデータ数をカウントす
る。また、デスティネーションアドレスレジスタ23は
データ転送開始時のデスティネーションアドレスを保持
する。更に、加算回路22はカウンタ21のカウント値
とデスティネーションアドレスレジスタ23が保持して
いるデスティネーションアドレスとを加算してアドレス
端子6へ出力する。
【0046】本第2の発明では、転送対象のデータが複
数である場合に効果を奏するように構成されている。
【0047】たとえば、上述の第1の発明の場合と同様
に、ソース側の第1メモリ11から退避用メモリ18へ
複数のデータを順次退避している間にデスティネーショ
ン側の第2HACK5がアサートされたとすると、その
時点で加算回路22はカウンタ21のカウント値とデス
ティネーションアドレスレジスタ23が保持しているデ
スティネーションアドレスとを加算してアドレス端子6
へ出力する。そして、ソース側の第1メモリ11からD
MAC1へ転送されたデータは退避用メモリ18には退
避されること無しにデスティネーション側の第2メモリ
14へ転送される。これ以降は、DMAC1は転送処理
の対象となっているソース側の第1メモリ11の複数の
データの全てを同様にして転送し、その後に退避用メモ
リ18に退避されているデータをソース側の第2メモリ
14へ転送する。
【0048】
【発明の効果】以上に詳述した如く本発明によれば、2
系統のシステムバス間でデータ転送を行う際に、第1の
発明では、デスティネーション側のバス権を使用出来な
い場合にもデスティネーション側のバス権が獲得出来る
までデータをソース側からメモリに転送して退避させて
おくことが出来るので、ソース側を待機状態にすること
なくデータ転送が行えるようになる。
【0049】また第2の発明では、2系統のシステムバ
ス間で複数のデータ転送を行う際に、デスティネーショ
ン側のバス権を使用出来ない場合にもデスティネーショ
ン側のバス権が獲得出来るまでデータをソース側からメ
モリに転送して退避させておくことが出来、またデステ
ィネーション側のバス権が獲得された時点以降はその時
点のデータのデスティネーション側のアドレスが加算回
路により求められるのでソース側からデスティネーショ
ン側へ直接データの転送が行え、その後はメモリに退避
されているデータがデスティネーション側へ転送される
ので、ソース側を待機状態にすることなくデータ転送が
行えるようになる。
【図面の簡単な説明】
【図1】本発明のダイレクトメモリアクセスコントロー
ラの第1の発明の一実施例の構成及び入出力信号を示す
模式図である。
【図2】本発明のダイレクトメモリアクセスコントロー
ラを組込んだシステムの構成例を示すブロック図である
【図3】本発明のダイレクトメモリアクセスコントロー
ラの第2の発明の一実施例の構成例を示す模式図である
【図4】従来のダイレクトメモリアクセスコントローラ
の入出力信号を示す模式図である。
【図5】従来のダイレクトメモリアクセスコントローラ
を組込んだシステムの構成例を示すブロック図である。
【符号の説明】
1    DMAC(ダイレクトメモリアクセスコント
ローラ)2    第1HREQ 3    第1HACK 4    第2HREQ 5    第2HACK 8    第1のシステムバス 9    第2のシステムバス 10    第1MPU 11    第1メモリ 13    第2MPU 14    第2メモリ 18    退避用メモリ 19    優先制御回路 20    スイッチ回路

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  ソース側のバスからデスティネーショ
    ン側のバスへデータを転送するダイレクトメモリアクセ
    スコントローラにおいて、前記ソース側のバスの使用権
    が獲得され、前記デスティネーション側のバスの使用権
    が獲得されないことを検出して所定の信号を出力する回
    路と、該回路が前記所定の信号を出力している場合に前
    記ソース側のバスから転送されたデータを一時退避させ
    るためのメモリとを備え、前記回路が前記所定の信号を
    出力している場合に、前記ソース側のバスから転送され
    たデータを前記メモリに一時退避させておき、前記デス
    ティネーション側のバスの使用権が獲得された時点で、
    前記メモリに退避されているデータを前記デスティネー
    ション側のバスへ転送すべくなしてあることを特徴とす
    るダイレクトメモリアクセスコントローラ。
  2. 【請求項2】  ソース側のバスからデスティネーショ
    ン側のバスへ複数のデータを転送するダイレクトメモリ
    アクセスコントローラにおいて、前記ソース側のバスの
    使用権が獲得され、前記デスティネーション側のバスの
    使用権が獲得されないことを検出して所定の信号を出力
    する回路と、該回路が前記所定の信号を出力している場
    合に前記ソース側のバスから転送されたデータを一時退
    避させるためのメモリと、前記メモリに退避されたデー
    タ数をカウントするカウンタと、転送対象のデータの先
    頭のデータのデスティネーション側におけるアドレスを
    保持するレジスタと、前記カウンタのカウント値と前記
    レジスタが保持しているアドレスとを加算する加算回路
    とを備え、前記回路が前記所定の信号を出力している場
    合に、前記ソース側のバスから転送されたデータを前記
    メモリに一時退避させておき、前記デスティネーション
    側のバスの使用権が獲得された時点で、前記加算回路の
    加算値をデスティネーション側のアドレスとして前記ソ
    ース側のバスから前記デスティネーション側のバスへデ
    ータ転送を行った後、前記メモリに退避されているデー
    タを前記デスティネーション側のバスへ転送すべくなし
    てあることを特徴とするダイレクトメモリアクセスコン
    トローラ。
JP14515391A 1991-06-18 1991-06-18 ダイレクトメモリアクセスコントローラ Pending JPH04369065A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14515391A JPH04369065A (ja) 1991-06-18 1991-06-18 ダイレクトメモリアクセスコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14515391A JPH04369065A (ja) 1991-06-18 1991-06-18 ダイレクトメモリアクセスコントローラ

Publications (1)

Publication Number Publication Date
JPH04369065A true JPH04369065A (ja) 1992-12-21

Family

ID=15378652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14515391A Pending JPH04369065A (ja) 1991-06-18 1991-06-18 ダイレクトメモリアクセスコントローラ

Country Status (1)

Country Link
JP (1) JPH04369065A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134288A (ja) * 1997-10-28 1999-05-21 Nec Corp バスコントローラ
JP4630462B2 (ja) * 1999-02-23 2011-02-09 ルネサスエレクトロニクス株式会社 集積回路及びそれを用いた情報処理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6146550A (ja) * 1984-08-11 1986-03-06 Fujitsu Ltd バス間結合装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6146550A (ja) * 1984-08-11 1986-03-06 Fujitsu Ltd バス間結合装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134288A (ja) * 1997-10-28 1999-05-21 Nec Corp バスコントローラ
JP4630462B2 (ja) * 1999-02-23 2011-02-09 ルネサスエレクトロニクス株式会社 集積回路及びそれを用いた情報処理装置

Similar Documents

Publication Publication Date Title
JPH0354375B2 (ja)
JP2002073527A (ja) Dmaコントローラ
JPH04369065A (ja) ダイレクトメモリアクセスコントローラ
US6105082A (en) Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle
JPH09223102A (ja) ダイレクトメモリアクセスコントローラ
EP1193605B1 (en) Apparatus and method for the transfer of signal groups between digital signal processors in a digital signal processing unit
JP3096382B2 (ja) Dma回路
JPS6240565A (ja) メモリ制御方式
JP3266184B2 (ja) 入出力制御方法とその装置
JP2856709B2 (ja) バス間結合システム
JPH05204831A (ja) マイクロプロセッサ及びそれを使用したダイレクトメモリアクセス機能を有するマイクロコンピュータシステム
JP2990960B2 (ja) 直接メモリアクセス制御装置
JPH10224410A (ja) データ転送方式
JP2006119982A (ja) コンピュータシステム
JPH0713881A (ja) 通信処理装置
JPH04369753A (ja) ダイレクトメモリアクセスコントローラ
JPH06348644A (ja) Dma回路
JPH05282243A (ja) バスマスター装置及び該装置を用いた電子機器
JPH02278362A (ja) データ転送制御方式
JPH01108665A (ja) Dma転送制御方式
KR19980044600A (ko) 순차식 pci 버스용 다중 인터럽트 제어장치 및 방법
JPS6140658A (ja) デ−タ処理装置
JPS62282353A (ja) デ−タ転送装置
JPH04102955A (ja) 割込み制御装置
JPH07182272A (ja) Dmaコントローラ回路