JPS62293455A - Dmaコントロ−ラ - Google Patents

Dmaコントロ−ラ

Info

Publication number
JPS62293455A
JPS62293455A JP13697486A JP13697486A JPS62293455A JP S62293455 A JPS62293455 A JP S62293455A JP 13697486 A JP13697486 A JP 13697486A JP 13697486 A JP13697486 A JP 13697486A JP S62293455 A JPS62293455 A JP S62293455A
Authority
JP
Japan
Prior art keywords
address
channel
transfer
register
circuit
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
JP13697486A
Other languages
English (en)
Inventor
Nobuhiro Tomari
伸広 泊
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP13697486A priority Critical patent/JPS62293455A/ja
Publication of JPS62293455A publication Critical patent/JPS62293455A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 3、発明の詳細な説明 (産業上の利用分野) −本発明は、マイクロコンピュータシステム等において
入出力装置等と記憶装置との間で中央処理装置を介する
ことなく、直接にデータの転送を行なわせるDHA D
ントローラ(Direct MemoryAccess
 Control Ier、以下DHACという)に関
するものである。
(従来の技術) 従来、このような分野の技術としては、例えば第2図及
び第3図のようなものがあった。以下、その構成を説明
する。
第2図は従来のDHACを用いたDMA転送システムの
−構成例を示すブロック図でおる。
この種のDHA転送システムは、マイクロコンピュータ
システムにおける中央処理装置(以下、CPUという)
の負担が減少し、かつ高速のデータ転送が可能なために
広く用いられているもので、CPIJ 1 、D)IA
転送の制御を行なうD)IAc 2、入出力装置(以下
、Iloという)3、及び記憶装置(以下、メモリとい
う)4を備え、それらがデータバス5−1、アドレスバ
ス5−2及びI11御バス5−3からなるシステムバス
5により相互に接続されている。
以上の構成において、l103はデータ転送の必要か生
じると、D)IAc 2に対してDI−IA転送要求信
号DI’iQを出力する。D)IAc 2はその要求信
号DRQを認めると、システムバス5の専有権を獲得す
るために、CPU 1に対してバス専有権要求信号11
RQを出力する。CPU 1はその要求信号HRQを認
めると、DHAC2に対してバス専有権許可信@IIA
cKを出力する。これによりシステムバス5の専有権は
CPU ’1からDHAC2に移る。すると、囲AC2
はl103に対してDHA転送訂可信号DACKを出力
してDMA転送に入る。
DI(へ転送においてDRAG 2はメモリ4に対して
転送すべきアドレスをアドレスバス5−2を通して出力
すると共に、制御バス5−3を通して読出し書込信号な
どの制御信号を出力する。同時に、l103に対しても
制御バス5−3を通して制御信号を出力する。これによ
りメモリ4からl103へ、またl103からメモリ4
へ直接に高速なデータ転送を行うことができる。DI−
IA転送が終了すると、DHAC2はCPU 1に対し
てバス専有権要求信号HRQを取下げ、システムバス5
の専有権をCPU1に返す。
第3図は第2図における従来のDMACの一構成例を示
す主要部のブロック図である。
このDHACは4ヂヤネル構成のもので、CPUインタ
フェース回路10、I10インタフェース回路11、タ
イミング制御回路12、内部制御回路13、命令デコー
ダ14、カウントレジスタ15、アドレスレジスタ16
、カウントカウンタ17、及びアドレスカウンタ18を
備えている。チャネルとはD)IA転送の受付は口であ
り、4チヤネルあれば4つのIloと接続可能となる。
CPUインタフェース回路10は、第2図のCPU 1
とのインタフェースをとる回路で、バス専有権獲得のた
めの請求信号H[?Q及び許可信号HACKの入出力に
用いられている。I10インタフェース回路11は、l
103とのインタフェースをとる回路で、D)IA転送
獲得のためのそれぞれ4つの要求信号DRQ O〜3及
び許可信号り八CKO〜3の入出力に用いられる。タイ
ミング制御回路12はメモリ4′つl103に対しての
読出し、書込み等の制御信号を制御バス5−3へ出力す
る回路、内部制御回路13はD)!AC内部の動作を1
1用Uする回路である。命令デコーダ14は、内部デー
タバス19に接続され、CPU 1からデータバス5−
1及び内部データバス19を通して送られてきた命令を
保持しそれを解読して内部制御回路13に与える回路で
ある。
カウントレジスタ15及びアドレスレジスタ16は内部
データバス19に接続されており、そのうちカウントレ
ジスタ15は各チャネル独立なmビット幅のレジスタを
4つもち、同じくアドレスレジスタ16は各チャネル独
立なnビット幅のレジスタを4つもち、それらカウント
レジスタ15側のレジスタとアドレスレジスタ16側の
レジスタとがチャネルを通して対になっている。カウン
トレジスタ15側の各レジスタは、DMA転送を残り何
回行えばよいかというmビット幅の転送回数を保持する
回路、ざらにアドレスレジスタ16側の各レジスタは、
転送すべきメモリ4の[1ビット幅アドレスを保持する
回路でおる。これらカウントレジスタ15には力ラン1
〜カウンタ17が、アドレスレジスタ16にはアドレス
カウンタ18か、それぞれ接続されている。
カラン1〜カウンタ17は、カウントレジスタ15にお
ける選択されたチャネルのレジスタから1回の+7.送
毎に送られてくるmビット幅のカウント値を入力し、そ
れを計暉してその結果を該レジスタに与えると共に、前
記カラン臼直に対して減算等のh(算を行って転送終了
等のある条件に達したら内部制御回路13に知らせる回
路である。アドレスカウンタ181J、アドレスレジス
タ16における選択ざれだチャネルのレジスタから1回
の転送毎に送られてくるnビット幅のアドレス値を入力
し、それを計算してその結果を該レジスタとアドレスバ
ス5−2へ与える回路である。
このD)IAcにおいて、I10インタフェース回路1
1はDMA転送要求信号DRQを受けると、CPUイン
タフェース回路10を通してバス専有権要求信号IRQ
を出力させ、それをCPU 1に与える。CPU 1か
らバス専有権許可信号■^CKが返ってくると、CPU
インタフェース回路10はそれを受け、I10インタフ
ェース回路11を通してDMA転送許可信号DACKを
出力させ、その信@DACKを1103へ与える。これ
によりD)IA転送に入る。
命令デコーダ14はCPU 1から送られてきた命令を
解読し、それを内部制御回路13に与える。内部制御回
路13は前記命令に従ってメモリ4から1103への読
出し転送か、l103からメモリ4への書込み転送か等
の転送形式を決定し、それに必要な制御信号をタイミン
グ制御回路12で発生させてメモリ4及びl103側へ
与える。また、アドレスカウンタ18はメモリ4に対し
て転送アドレスを与える。これによりメモリ4とl10
3との間でデータ転送が行なわれる。データ転送回路が
設定値になると、カウントカウンタ17の出力信号によ
り、内部制御回路13及びタイミング制御回路12を通
して[)HA転送終了の制御信号を出力させ、DH^転
送を終る。
(発明が解決しようとする問題点) しかしながら、上記構成のDHACでは、次のような問
題点があった。
第2図に示すように、CPII 1 、DHAC2、l
103及びメモリ4は、同一のアドレスバス5−2に接
続されているので、CPU 1の処理能力を高める等の
理由によりアドレスバス5−2の幅が拡張されると、当
然D)IAc 2のアドレス幅も拡張しなければならな
い。ところが、第3図に示すように、DHACのアドレ
ス幅はアドレスレジスタ16のアドレス幅、つまりnビ
ットで固定である。それを補うために従来は、複雑な外
部回路を設番ブで足りないアドレスを補充するか、ある
いは新たに拡張されたアドレスに見合うアドレス幅を持
ったDHACを用いるしかなかった。しかし、それらも
さらにアドレス幅が拡張されると使用できなくなってし
まう。このような問題は転送回路を拡張する場合につい
ても生じる。
本発明は前記従来技術が持っていた問題点として、簡単
にアドレス幅及び転送回数の拡張を行えない点について
解決したDHACを提供するもので必る。
(問題点を解決するための手段) 本発明は前記問題点を解決するために、チャネル毎の転
送回数を記憶するレジスタを複数個有するカウントレジ
スタと、転送すべきメモリのアドレスをチャネル毎に記
・敗する機数個のレジスタを有するアドレスレジスタと
、前記カウントレジスタ及びアドレスレジスタの内容を
それぞれ計数するカウントカウンタ及びアドレスカウン
タとを備え、CPUと信号の授受を行ない、前記アドレ
スカウンタの出力で指定されたアドレスと前記カウント
カウンタの出力で指定された転送回路とに従つて、前記
CPuを介することなく直接に、前記メモリと他の装置
との間でデータの転送を行なわぜるD)IAcにおいて
、前記CPUにより内部動作が設定され、前記カウント
カウンタ及びアドレスカウンタの出力に基づき前記カウ
ントレジスタ及びアドレスレジスタのチャネルを切換え
てそれらのチャネルに前記メモリのアドレスを所定ビッ
ト毎に割当てる制御回路を設けたものである。
(作 用) 本発明によれば、以上のようにD)IAcを構成したの
で、制御回路はCPUからの命令に基づいてチャネルを
切換えることにより、アドレスをチャネルで分割させる
と共に、各チャネル間のビット数調整を行うように働く
。これによりD)IAcが持つアドレス幅以上のアドレ
ス幅の拡張と、転送回数の拡張か行える。従って前記問
題点を除去できるのでおる。
(実施例) 第1図は本発明の実施例を示すDHACの要部構成ブロ
ック図であり、従来の第3図中の要素と同一の要素には
同一の符号が付されている。
本実施例の特徴は、アドレスレジスタ16のビット幅、
すなわちアドレス幅を拡張するにつき、このD)IAc
の有している複数個のチャネルのうち、第1のチャネル
はアドレスの最上位から何ビットまで、第2のチャネル
は次のビットから何ビットまで、というように、アドレ
スを各チャネルで分割し、全体的に見てアドレス幅を拡
張するというものである。そのため、本実施例では、従
来の第3図の回路に、アドレスをチャネルで分割させる
ための制御回路、すなわちチャネルスライス回路20が
付加されている。
チャネルスライス回路20は、第2図のCPU 1、カ
ウントカウンタ17、及びアドレスカウンタ18の出力
に基づき、カウントレジスタ15及びアドレスレジスタ
16のチャネルを切換えてそれらのチャネルに第2図の
メモリ4のアドレスを所定ビット毎に割当てる回路であ
り、I10インタフェース回路11、内部制御回路13
、カウントレジスタ15、アドレスレジスタ16、カウ
ントカウンタ17、及びアドレスカウンタ18に接続さ
れている。
更に詳しく云えば、このチャネルスライス回路20は、
第2図のCPU 1から送られてきた情報(命令)を保
持する内部レジスタを有すると共に、次のような機能を
持っている。アドレスカウンタ17からキャリー(桁上
げ)やボロー(桁借り)等の情報をもらい、アドレスレ
ジスタ16におけるチャネルの切換えを行なってそれを
I10インタフェース回路11に知らせ、現在、アドレ
スレジスタ16のどのチャネルの値がアドレスカウンタ
18で計算されているかを示す。ざらに、カウントカウ
ンタ17からボローなどの情報をもらってカウントレジ
スタ15のチャネルの切換えを行い、またチャネルごと
の転送終了情報を蓄えてすべて終了条件に達したらそれ
を内部制御回路13に知らせるという機能のを有してい
る。
次に、チャネルスライス回路20の動作、およびDHA
Cにおける開A転送中の動作を説明する。
(A)チャネルスライス回路20の動作まず、チャネル
スライス回路20には、第2図のCPU1からの情報を
与えなければならない。その情報とは、チャネルスライ
ス回路20を動作させるか否かである。動作させない場
合、つまりアドレス拡張を必要としないときは、従来の
第3図のD)IAcと全く同じ回路となる。
チャネルスライス回路20を動作させる場合は、より詳
しい情報が必要となる。すなわち、どのチャネルとどの
チャネルを使用し、それは転送アドレスの何ビットから
何ビット目までの値を示すかということや、どのチャネ
ルにDHへ転送要求がきたらDMA転送を開始するかな
どである。例えば、従来の第3図のDHACが扱える2
倍のアドレス幅、つまり2×nビット幅のアドレスを扱
いたい場合に、アドレスレジスタ16のチャネルOと1
を使用し、チャネル0が下位、チャネル1が上位を受持
ち(ここで同時にカウントレジスタ15における転送回
数のビット数もチャネルOが下位を、チャネル1が上位
を受持つ)、チャネル0にDNA転送要求がきたら転送
を開始するといった情報でおる。
当然この場合には、第2図のcpu 1がアドレスレジ
スタ16のチャネル0に下位アドレスを、チャネル1に
上位アドレスを設定し、またカウントレジスタ15のチ
ャネルOに転送回数のビット数の下位ビットを、チャネ
ル1に上位ビットを設定しなければならない。
(B)oHA転送中の動作 まず、第2図l103等から有効なりMA転送要求があ
った場合、最初の転送では、アドレス拡張に使用されて
いるチャネルのアドレスレジスタ16の値をアドレスカ
ウンタ18から順番に出力させる。
その値は、各チャネルに対応した例えば図示しない外部
の保持回路に蓄えられる。この外部保持回路のラッチ信
号には、各チャネルに対して持っているD)Iへ転送許
可信@DACにを用いる。そして次の転送からは、最下
位のビットの増減に割当てられたチャネルの値がアドレ
スカウンタ18で計算され、キャリーやボローが生じた
ら、その上位のチャネルに切換えられて上位のチャネル
の値か計算される。その上位のチャネルの値にキャリー
やボローが生じたら、ざらに上位のチャネルに切換える
また、カウントカウンタ17では、1回の転送ごとに最
下位のチャネルの値を計算し、終了条件に達したらチャ
ネルスライス回路20に知らせる。するとチャネルスラ
イス回路20は、次のチャネルを選ぶ。そして使用され
るすべてのチャネルが終了条件に達したら、転送を中止
するように内部制御回路13に知らせる。従って最大4
xnビツトのアドレスと4xmビットの転送回路を扱う
ことが可能となる。
次に、本実施例のD)IAcを用いてアドレス拡張を行
なうときのf)HA転送システム例を第4図に示す。
第4図では、チャネル2個を用いてアドレス幅を2倍に
拡張した例が示されており、従来の第2図中の要素と共
通の要素には同一の符号が付されている。
このDMA転送シスデム例では、第1図の回路構成をも
つD)lAc30が、データバス5−1及び制御バス5
−3を介してCPU 1に接続されている。DHAC3
0はバス専有権要求信号HRQを出力してCPU 1の
ホールドHOLD@子に与えると、CPU I側では許
可の応答信号HLDAを出力してDHAC30側に与え
る構成になっている。D)lAc30はnビットのアド
レス端子を有し、そのアドレス端子にはnビットのアド
レスバス5−2を介してnビットの外部保持回路31.
32が接続され、ざらにその外部保持回路31.32の
出力側が2nビツトのアドレスバス5−2を介して第2
図のl103へ接続されている。外部保持回路31.3
2は入力端子E丁を有し、その入力端子E丁にD)lA
c30のDHA転送許可信@DACKO−1が与えられ
ると、アドレスのラッチ(保持)動作を開始する回路で
ある。
次に、第4図の動作を説明する。
まずCPU 1からD)lAc30に、制御バス5−3
及びデータバス5−1を通して内部動作の設定を行なう
この例では、チャネルOにアドレスの下位、チャネル1
にアドレスの上位の指定をさせ、チャネルOにDMA要
求が来たときに転送を開始するとする。
そして、チャネル0に有効なりH^要求がきたら、CP
U 1に対してバス専有権要求信号tlRQを与え、そ
れが認められて応答信号HLDAを受けるとD)lAc
30は開A動作に移る。
DHAC30における1回目の転送では、まずチャネル
Oのアドレスを出力し、それをD)tA転送許可信号D
ACKQにより一方の外部保持回路31にラッチさせ、
次にチャネル1のアドレスを出力し、それをD)fA転
送許可信号DACに1により使方の外部保持回路32に
ラッチさせる。これで1回目の転送が終了し、2回目の
転送に移る。2回目以降は主にチャネル0が計算され、
キャリーまたはボローが起きたときだけチャネル2が1
回だけ計算され、再びチャネルOの計算に戻る。従って
2×nビツトのアドレスのD)lΔ転送が可能となる。
この際、CPU 1によりチャネルOに転送回数の下位
ビットが、チャネル1に上位ビットがそれぞれ指定され
ると、1回の転送ごとに主にチャネルOの値が計算され
、終了条件に達したらチャネル1の値が1回だけ計算さ
れ、再びチャネルOの値の計算に戻る。そして、チャネ
ルOとチャネル1のカウントレジスタ(第1図の15)
が両方とも終了条件に達したときに、転送が終了する。
従って2xmビット回のD)IA転送が可能となる。
このように、本実施例のD)lAc30を用いれば、複
雑な外部回路も必要とせず、またより大きなアドレス幅
をもった析たなりHACも必要とせずに、アドレス幅と
転送回数を簡易、的確に拡張できる。
なお、本発明は図示の実施例に限定されず、D)IAc
の回路構成を他の構成に変形できる。また、上記実施例
ではメモリと110間のデータ転送について説明したが
、メモリとメモリ間、さらにはIloと110間のデー
タ転送にも本発明を適用できる。
(発明の効果) 以上詳細に説明したように本発明によれば、アドレスを
チャネルで分割するための制御回路を設けたので、CP
Uなどで取扱うアドレスがDHACのアドレスレジスタ
の範囲を超えても、足りないアドレスを補うための複雑
な外部回路ヤj、その拡張されたアドレスに見合うアド
レスレジスタを持った新たなりHACを必要とせずに、
CPUにより開ACの内部動作を設定する、つまりプロ
グラムするだけでアドレス拡張ができる。従ってこのD
HACを使用したシステムで、アドレスを拡張しても、
複雑な手続きを一際必要とせずに、そのままこのDHA
Cを使用することができる。また同時に転送回数も拡張
できるので、DMA転送で取扱うデータ量も拡張できる
【図面の簡単な説明】
第1図は本発明の実施例を示すD)fACの要部構成ブ
ロック図、第2図は従来のDMA転送システムの構成ブ
ロック図、第3図は第2図中のD)IACの要部構成ブ
ロック図、第4図は第1図のD)IAcを用いたDMA
転送システムの要部構成ブロック図である。 1・・・・・・CPU 13・・・・・・Ilo 、4
・・・・・・メモリ、5・・・・・・システムバス、5
−1・・・・・・データバス、5−2・・・・・・アド
レスバス、5−3・・・・・・制御バス、12・・・・
・・タイミング制御回路、13・・・・・・内部制御回
路、14・・・・・・命令デコーダ、15・・・・・・
カウントレジスタ、16・・・・・・アドレスレジスタ
、17・・・・・・カウントカウンタ、18・・・・・
・アドレスカウンタ、20・・・・・・チャネルスライ
ス回路(制御回路)、30・・・・・・D)IAc。

Claims (1)

  1. 【特許請求の範囲】 チャネル毎の転送回数を記憶するレジスタを複数個有す
    るカウントレジスタと、転送すべき記憶装置のアドレス
    をチャネル毎に記憶する複数個のレジスタを有するアド
    レスレジスタと、前記カウントレジスタ及びアドレスレ
    ジスタの内容をそれぞれ計数するカウントカウンタ及び
    アドレスカウンタとを備え、中央処理装置と信号の授受
    を行ない、前記アドレスカウンタの出力で指定されたア
    ドレスと前記カウントカウンタの出力で指定された転送
    回路とに従って、前記中央処理装置を介することなく直
    接に、前記記憶装置と他の装置との間でデータの転送を
    行なわせるDMAコントローラにおいて、 前記中央処理装置により内部動作が設定さ れ、前記カウントカウンタ及びアドレスカウンタの出力
    に基づき、前記カウントレジスタ及びアドレスレジスタ
    のチャネルを切換えてそれらのチャネルに前記記憶装置
    のアドレスを所定ビット毎に割当てる制御回路を設けた
    ことを特徴とするDMAコントローラ。
JP13697486A 1986-06-12 1986-06-12 Dmaコントロ−ラ Pending JPS62293455A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13697486A JPS62293455A (ja) 1986-06-12 1986-06-12 Dmaコントロ−ラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13697486A JPS62293455A (ja) 1986-06-12 1986-06-12 Dmaコントロ−ラ

Publications (1)

Publication Number Publication Date
JPS62293455A true JPS62293455A (ja) 1987-12-21

Family

ID=15187821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13697486A Pending JPS62293455A (ja) 1986-06-12 1986-06-12 Dmaコントロ−ラ

Country Status (1)

Country Link
JP (1) JPS62293455A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0428111A2 (en) * 1989-11-14 1991-05-22 Hitachi, Ltd. Data transfer control method and data processor using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0428111A2 (en) * 1989-11-14 1991-05-22 Hitachi, Ltd. Data transfer control method and data processor using the same
EP0428111A3 (en) * 1989-11-14 1992-12-30 Hitachi, Ltd. Data transfer control method and data processor using the same

Similar Documents

Publication Publication Date Title
JPH03191453A (ja) データ処理システム
US6249833B1 (en) Dual bus processing apparatus wherein second control means request access of first data bus from first control means while occupying second data bus
US20040225760A1 (en) Method and apparatus for transferring data at high speed using direct memory access in multi-processor environments
JPH09185514A (ja) 割込み装置
JPH04363746A (ja) Dma機能を有するマイクロコンピュータシステム
JPS62293455A (ja) Dmaコントロ−ラ
JP2684793B2 (ja) 情報処理装置
JPH02311050A (ja) データ転送制御装置
JP2000099452A (ja) Dma制御装置
JP2001056793A (ja) 情報処理装置
JPH0668022A (ja) ダイレクトメモリアクセス装置
JP2594611B2 (ja) Dma転送制御装置
JPH0311448A (ja) ダイレクトメモリアクセス制御方式
JPH0736806A (ja) Dma方式
JP2001167049A (ja) バス調停装置
JPS6014435B2 (ja) 記憶装置
JPH01185758A (ja) データバス整合装置
JPH0261749A (ja) データ転送装置
JPH0784963A (ja) Cpuを有する半導体集積回路
JPH09114793A (ja) マルチプロセッサシステム及びその割り込み処理方法
JPH04199449A (ja) デバイス制御装置
JPH05158859A (ja) 情報処理装置
JPH04170664A (ja) マイクロプロセッサ装置
JPS62187956A (ja) Dma制御方式
JPH01201759A (ja) Dma制御装置