JPH0736819A - Dmaデータ転送装置 - Google Patents

Dmaデータ転送装置

Info

Publication number
JPH0736819A
JPH0736819A JP18029293A JP18029293A JPH0736819A JP H0736819 A JPH0736819 A JP H0736819A JP 18029293 A JP18029293 A JP 18029293A JP 18029293 A JP18029293 A JP 18029293A JP H0736819 A JPH0736819 A JP H0736819A
Authority
JP
Japan
Prior art keywords
data
data transfer
dma
address
block
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
JP18029293A
Other languages
English (en)
Inventor
Masayuki Sano
雅之 佐野
Yoichiro Arimatsu
洋一郎 有松
Hideya Ohashi
秀也 大橋
Atsushi Matsubara
敦 松原
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP18029293A priority Critical patent/JPH0736819A/ja
Publication of JPH0736819A publication Critical patent/JPH0736819A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 1つのブロックのDMAデータ転送終了の後
に直ちに次のブロックのDMAデータ転送を開始できる
ようにする。 【構成】 データのブロックの開始アドレスを複数個記
憶するレジスタとそれに対応するデータ数を記憶するレ
ジスタを複数個備えて、1つのブロックの開始アドレス
からデータ数分のデータのDMAデータ転送を終了した
後、次のブロックの開始アドレスと、データ数を選択し
てデータ数分のデータのDMAデータ転送を順次行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、高速のデータ転送が要
求される画像処理その他におけるダイレクトメモリアク
セスデータ転送(以下、DMAデータ転送と呼ぶ。)に
関するものである。特に、複数のブロックのデータの転
送に関するものである。
【0002】
【従来の技術】従来、データのブロックが複数存在し、
そのブロックを順次DMAを用いて転送する場合におい
ては、1つのブロックの転送が終了する度に、毎回、中
央処理装置がDMAデータ転送を行うデータのブロック
のメモリ空間内における先頭アドレスと、データの長さ
を設定し、次のブロックのDMAデータ転送を行ってい
た。
【0003】ところがこの方法においては、1つのブロ
ックのデータのDMAデータ転送が終了した後に中央処
理装置が次にDMAデータ転送を行うデータのブロック
の先頭アドレスと、データの数を設定しているので、中
央処理装置による先頭アドレスと、データの数の設定の
間はDMAデータ転送が中断するという問題が起こる。
この問題を解決するために、DMAデータ転送に要する
時間よりも短い時間を計測するタイマを備え、タイマの
タイムアウトに同期してベースアドレスレジスタとベー
スカウントレジスタに中央処理装置が予めDMAデータ
転送を行うブロックの先頭アドレスとデータの数を書き
込み、その値を1つのブロックのデータのDMAデータ
転送終了直後にカレントアドレスレジスタとカレントカ
ウントレジスタに設定することにより、1つのブロック
のDMAデータ転送後に連続して次のブロックのDMA
データ転送を開始できるようにする方法が提案されてい
る(例えば特開平3ー88057公報参照)。
【0004】
【発明が解決しようとする課題】しかしながら、この方
法においても中央処理装置によってDMAデータ転送を
行うブロックの先頭アドレスとデータの数の書き込みを
行っているため、中央処理装置が優先度が高い処理を行
っている場合にはタイマがタイムアウトをして、実際に
1ブロックのDMAデータ転送が終了しているにもかか
わらず次にDMAデータ転送を行うブロックの先頭アド
レスとデータの数を書き込みが行われない場合が生じ
る。また、最もデータ数が少ないブロックの転送に要す
る時間より短いタイマを設定しなければならず、DMA
データ転送途中でデータの数が可変する場合にはタイマ
の設定が非常に困難になる場合がある。
【0005】本発明は、このような問題に対してなされ
たものであり、煩わしいタイマの設定をすることなく、
1つのブロックのDMAデータ転送終了の後に直ちに次
のブロックのDMAデータ転送を開始できるようにする
装置を提供するものである。
【0006】
【課題を解決するための手段】本発明は、DMAデータ
転送を行うデータのブロックのメモリ空間内における開
始アドレスおよび転送データ数を設定することにより、
DMAデータ転送を行うDMAデータ転送装置におい
て、前記開始アドレスを前記ブロックの数だけ設定する
とともに、該開始アドレスに対応する転送データ数を前
記ブロックの数だけ設定し、1つの開始アドレスからデ
ータの転送を開始し、該開始アドレスに対応した転送デ
ータ数のデータ転送が終了した後に、次の開始アドレス
からデータの転送を開始して、該開始アドレスに対応し
た転送データ数のデータの転送をすることにより、順
次、複数のブロックのデータを転送するものである。
【0007】
【作用】複数のブロックの開始アドレスとデータの数を
設定しておき、1つのブロックのデータの転送が終了し
た後に、次のブロックの開始アドレスからデータの数だ
け転送する、という動作を繰り返すことにより、複数の
ブロックのデータを順次途切れることなくDMAデータ
転送する。
【0008】
【実施例】本発明のDMAデータ転送装置の第1の実施
例について図1を参照にして説明する。なお、本実施例
においてはメモリ空間内の4つの領域を順次DMAデー
タ転送するためのDMAデータ転送装置について説明す
る。図1は、本発明の第1の実施例に係るDMAデータ
転送装置11の構成図である。同図には、DMAデータ
転送装置をコントロールする中央処理装置19と、DM
Aデータ転送に用いるメモリ21と入出力制御装置20
も記載されている。
【0009】図1において、11は本発明のDMAデー
タ転送装置である。12は中央処理装置19の制御に基
づきDMAデータ転送装置11を制御する制御手段とし
ての制御回路である。13はDMAデータ転送を行うデ
ータのブロックの開始アドレスを保持する第1の保持手
段としてのレジスタ群であり、4つのレジスタ13a、
13b、13c、13dから構成されており、中央処理
装置19によってDMAデータ転送するデータのブロッ
クのメモリ空間における開始アドレスが設定される。
【0010】14はDMAデータ転送するデータの数を
保持する第2の保持手段としてのレジスタ群であり、4
つのレジスタ14a、14b、14c、14dから構成
されており、中央処理装置19によってDMAデータ転
送するデータの数が設定される。なお、レジスタ13a
に設定された開始アドレスに対応するデータ数はレジス
タ14aに、レジスタ13bに設定された開始アドレス
に対応するデータ数はレジスタ14bに、レジスタ13
cに設定された開始アドレスに対応するデータ数はレジ
スタ14cに、レジスタ13dに設定された開始アドレ
スに対応するデータ数はレジスタ14dに設定されるも
のとする。
【0011】15はセレクタであり、レジスタ群13に
設定されている4つ開始アドレスのうち次にDMAデー
タ転送を行うブロックの開始アドレスを選択するもので
ある。16はDMAデータ転送するデータのアドレスを
発生するアドレス発生手段としてのカウンタであり、セ
レクタ15で選択した開始アドレスを基準にして順に、
カウントアップを繰り返してアクセスするメモリのアド
レスを発生するものである。
【0012】17はセレクタであり、レジスタ群14に
設定されている4つのデータ数のうち次にDMAデータ
転送を行うブロックのデータ数(セレクタ15で開始ア
ドレスが選択されたブロックに対応するデータ数)を選
択するものである。18はDMAデータ転送したデータ
の数が今転送中のブロックのデータの数に達したかどう
か判定する判定手段としてのカウンタであり、セレクタ
17で選択されたデータ数を基準にカウントダウンを繰
返し、1になった時点でブロック終了信号(BES)1
16を制御回路12に出すものである。
【0013】斯様な構成をもつDMAデータ転送装置に
おいてメモリ21から入出力制御装置20に対して4つ
のブロック(ブロック1:0番地から511番地でデー
タ数512個、ブロック2:512番地から1023番
地でデータ数512個、ブロック3:1024番地から
1535番地でデータ数512個、ブロック4:153
6番地から2047番地でデータ数512個)をブロッ
ク1、ブロック3、ブロック2、ブロック4の順で、繰
返しDMAデータ転送する場合を例に各部の動作を詳細
に説明する。
【0014】中央処理装置19はあらかじめレジスタ群
13のレジスタ13aにデータバス101に0を出力
し、選択信号102のうちレジスタ13aを指定する選
択信号出力することにより0番地を書き込む。同様にレ
ジスタ13bに512番地を、レジスタ13cに102
4番地を、レジスタ13dに1536番地を書き込んで
おく。
【0015】また、レジスタ群14のレジスタ14a、
レジスタ14b、レジスタ14c、レジスタ14dに対
しても同様な手順でそれぞれに512個というデータ数
を書き込んでおく。この状態において、入出力制御装置
20とメモリ21の間でデータのDMAデータ転送の必
要が生じた場合に中央処理装置19はDMAデータ転送
装置11の制御回路12に対してDMA起動信号(EN
A)103を出力する。
【0016】このDMA起動信号(ENA)103を受
けると制御回路12はセレクタ15に対してレジスタ群
13から出力されている4つのブロックの開始アドレス
106のうちレジスタ13aに保持されて、出力されて
いる値(0番地)が選択されるように選択信号(SL
1)107を出力する。この選択信号(SL1)107
によって選択された値がセレクタ15から出力された頃
を見計らって制御回路12はカウンタ16に対しラッチ
信号(LAT1)109を出力する。
【0017】このラッチ信号(LAT1)109を受け
るとカウンタ16はセレクタ15から出力されているブ
ロック1の開始アドレス(0番地)108をカウント基
準値として取込む。制御回路12はカウンタ16に対し
てラッチ信号(LAT1)109を出力した後すぐに、
セレクタ15に対してレジスタ群13から出力されてい
る4つのブロックの開始アドレス106のうちレジスタ
13cに保持されて、出力されている値(1024番
地)すなわち、ブロック3の開始アドレスが選択される
ように選択信号(SL1)107を出力する。
【0018】また、制御回路12は同時にセレクタ17
に対してレジスタ群14から出力されている4つのブロ
ックのデータ数113のうちレジスタ14aに保持され
て、出力されている値(512個)が選択されるように
選択信号(SL2)114を出力する。この選択信号
(SL2)114によって選択された値がセレクタ17
から出力された頃を見計らって制御回路はカウンタ18
に対しラッチ信号(LAT2)118を出力する。
【0019】このラッチ信号(LAT2)118を受け
るとカウンタ18はセレクタ17から出力されているブ
ロック1のデータ数(512個)115をカウント基準
値として取込む。制御回路12はカウンタ18に対して
ラッチ信号(LAT2)118を出力した後すぐに、セ
レクタ17に対してレジスタ群14から出力されている
4つのブロックのデータ数113のうちレジスタ14c
に保持されて、出力されている値(512個)すなわ
ち、ブロック3のデータ数が選択されるように選択信号
(SL2)114を出力する。
【0020】以上のようにして、カウンタ16とカウン
タ18に初期値がセットされると制御回路12はDMA
データ転送を開始する。すなわち、制御回路12は入出
力制御装置20からデータ転送要求信号(REQ)11
9を受けると、メモリ21と入出力制御装置20に対し
てデータ転送制御信号112を出力する。このとき、カ
ウンタ16からはDMAデータ転送するデータのブロッ
クの開始アドレス(0番地)がメモリ21のアドレス1
11としてメモリ21に対して出力されている。
【0021】なお、制御回路12はカウンタ16およ
び、カウンタ18の更新中又は初期値設定中に入出力制
御装置20からデータ転送要求信号(REQ)119を
受けた場合には、カウンタ16及び、カウンタ18の更
新又は初期値設定の動作の終了を待ってデータ転送制御
信号112を出力する。このとき既に、次にDMAデー
タ転送されるブロック3の開始アドレスとデータ数がセ
レクタ15とセレクタ17によって選択されて、カウン
タ16およびカウンタ18に対して出力されている。
【0022】メモリ21と入出力制御装置20の間で0
番地のデータ120の転送が完了すると入出力制御装置
20は制御回路12に対してデータ転送要求信号(RE
Q)119を出力する。制御回路12は入出力制御装置
20からデータ転送要求信号(REQ)119を受ける
と、クロック信号(CLK1)110を出力してカウン
タ16の値を1加算させる。また、同時にクロック信号
(CLK2)117を出力してカウンタ18の値を1減
算させる。その後、制御回路12はメモリ21と入出力
制御装置20に対してデータ転送制御信号112を出力
する。このとき、カウンタ16からはDMAデータ転送
するデータのアドレス(1番地)がメモリ21のアドレ
ス111としてメモリ21に対して出力されている。
【0023】メモリ21と入出力制御装置20の間で1
番地のデータ120の転送が完了すると入出力制御装置
20は制御回路12に対してデータ転送要求信号(RE
Q)119を出力する。以後これらの動作を繰返し、入
出力制御装置20からのデータ転送要求信号(REQ)
119を受けて制御回路12が出力した、クロック信号
(CLK2)117によってカウンタ18の値が1にな
った場合には、カウンタ18は制御回路12に対してブ
ロック終了信号(BES)116を出力する。そのと
き、メモリ21と入出力制御装置20の間ではブロック
最後のアドレス(511番地)のデータの転送が行われ
ている。これをもって、ブロック1のDMAデータ転送
が終了する。
【0024】制御回路12はブロック終了信号(BE
S)116を受け、その後に、入出力制御装置20から
データ転送要求信号(REQ)119を受けると、ラッ
チ信号(LAT1)109とラッチ信号(LAT2)1
18を出力する。カウンタ16はこのラッチ信号(LA
T1)109を受けるとセレクタ15から出力されてい
るブロック3の開始アドレス(1024番地)108を
カウント基準値として取込む。
【0025】制御回路12はカウンタ16に対してラッ
チ信号(LAT1)109を出力した後すぐに、セレク
タ15に対してレジスタ群13から出力されている4つ
のブロックの開始アドレス106のうちレジスタ13b
に保持されて、出力されている値(512番地)すなわ
ち、ブロック2の開始アドレスが選択されるように選択
信号(SL1)107を出力する。
【0026】また、カウンタ18はこのラッチ信号(L
AT2)118を受けるとセレクタ17から出力されて
いるデータ数115をカウント基準値として取込む。制
御回路12はカウンタ18に対してラッチ信号(LAT
2)118を出力した後すぐに、セレクタ17に対して
レジスタ群14から出力されている4つのブロックのデ
ータ数113のうちレジスタ14bに保持されて、出力
されている値(512個)すなわちブロック2のデータ
数が選択されるように選択信号(SL2)114を出力
する。
【0027】制御回路12はカウンタ16にラッチ信号
109を、カウンタ18にラッチ信号118を出力した
後、メモリ21と入出力制御装置20に対してデータ転
送制御信号112を出力する。このような動作により、
0番地から511番地のブロック1についで1024番
地からのブロック3のデータのDMAデータ転送が行わ
れる。同時に、次にDMAデータ転送が行われるブロッ
ク2の開始アドレスとデータ数がそれぞれセレクタ15
とセレクタ18から出力される。
【0028】順次これらの動作を繰り返すことにより、
ブロック1、ブロック3、ブロック2、ブロック4の順
で4つのブロックのデータのDMAデータ転送が終了す
ると、制御回路12は中央処理回路19に対してデータ
転送終結信号(CTC)105を出力する。一方、DM
Aデータ転送装置11においては、続けてブロック1の
DMAデータ転送動作ができるように、既に4つめのブ
ロックすなわちブロック4のDMAデータ転送中に制御
回路12からの選択信号(SL1、SL2)によって、
セレクタ15、セレクタ17で選択してそれぞれカウン
タ16、カウンタ18に出力するという一連の動作によ
って準備されている。
【0029】ここで、中央処理装置19からデータ転送
終結信号(CTC)105に対してデータ転送終了信号
(EOP)104が制御回路12に入力されると、DM
Aデータ転送動作を終了する。もし、データ転送終了信
号(EOP)104が入力されなければ、制御回路12
はカウンタ16とカウンタ18にそれぞれラッチ信号
(LAT1)109とラッチ信号(LAT2)118を
出力してブロック1の開始アドレスとデータ数を取り込
ませて、ブロック1から4つのブロックのDMAデータ
転送を繰り返し行う。
【0030】なお、中央処理装置19はデータ転送終了
信号(EOP)104を制御回路12に対して出力する
ことにより、任意のタイミングでDMAデータ転送を中
止させることが出来る。本発明のDMAデータ転送装置
の第2の実施例について図2を参照にして説明する。な
お、本実施例においてはメモリ空間内の同じデータ数の
4つの領域を順次DMAデータ転送するためのDMAデ
ータ転送装置について説明する。
【0031】図2は、本発明の第2の実施例に係るDM
Aデータ転送装置11の構成図である。同図において、
図1と同じ部分には同一の符号を付す。同図には、図1
と同様にDMAデータ転送装置11をコントロールする
中央処理装置19と、DMAデータ転送に用いるメモリ
21と入出力制御装置20も記載されている。図2にお
いて、11は本発明のDMAデータ転送装置であり、図
1のDMAデータ転送装置との違いは、DMAデータ転
送するデータの数を保持する第2の保持手段としてのレ
ジスタ群にはレジスタが1つしかないところである。し
たがって、DMA転送するブロックのデータ数を選択す
るセレクタも備えていない。
【0032】12は中央処理装置19の制御に基づきD
MAデータ転送装置を制御する制御手段としての制御回
路である。13はDMAデータ転送を行うデータのブロ
ックの開始アドレスを保持する第1の保持手段としての
レジスタ群であり、4つのレジスタ13a、13b、1
3c、13dから構成されており、中央処理装置19に
よってDMAデータ転送するデータのブロックのメモリ
空間における開始アドレスが設定される。
【0033】14はDMAデータ転送するデータの数を
保持する第2の保持手段としてのレジスタ群であり、本
実施例においては1つのレジスタ14で構成されてお
り、中央処理装置19によってDMAデータ転送するデ
ータの数が設定される。なお、本実施例におけるDMA
データ転送される4つのブロックは同一のデータ数であ
る。また、本レジスタに設定されるデータ数は、DMA
データ転送するデータ数から1を引いたものとする。す
なわち、実際のデータ数より1少ない数を設定するもの
とする。
【0034】15はセレクタであり、レジスタ群13に
設定されている4つ開始アドレスのうち次にDMAデー
タ転送を行うブロックの開始アドレスを選択するもので
ある。16はDMAデータ転送するデータのアドレスを
発生するアドレス発生手段としてのカウンタであり、セ
レクタ15で選択した開始アドレスを基準にして順に、
カウントアップを繰り返してアクセスするメモリのアド
レスを発生するものである。
【0035】18はDMAデータ転送したデータの数が
今転送中のブロックのデータの数に達したかどうか判定
する判定手段としてのカウンタであり、レジスタ14に
設定されたデータ数を基準にカウントダウンを繰返し、
0になった後にカウントダウンを行うとブロック終了信
号(BES)116を制御回路12に出すものである。
【0036】斯様な構成をもつDMAデータ転送装置に
おいてメモリ21から入出力制御装置20に対してデー
タ数が512個である4つのブロック(ブロック1:0
番地から511番地、ブロック2:512番地から10
23番地、ブロック3:1024番地から1535番
地、ブロック4:1536番地から2047番地)をブ
ロック1、ブロック3、ブロック2、ブロック4の順
で、繰返しDMAデータ転送する場合を例に各部の動作
を詳細に説明する。
【0037】中央処理装置19はあらかじめレジスタ群
13のレジスタ13aにデータバス101に0を出力
し、選択信号102のうちレジスタ13aを指定する選
択信号出力することにより0番地を書き込む。同様にレ
ジスタ13bに512番地を、レジスタ13cに102
4番地を、レジスタ13dに1536番地を書き込んで
おく。
【0038】また、レジスタ群14のレジスタ14に対
しても同様な手順でデータ数512から1を引いた51
1という値を書き込んでおく。この状態において、入出
力制御装置20とメモリ21の間でデータのDMAデー
タ転送の必要が生じた場合に中央処理装置19はDMA
データ転送装置11の制御回路12に対してDMA起動
信号(ENA)103を出力する。
【0039】このDMA起動信号(ENA)103を受
けると制御回路12はセレクタ15に対してレジスタ群
13から出力されている4つのブロックの開始アドレス
106のうちレジスタ13aに保持されて、出力されて
いる値(0番地)が選択されるように選択信号(SL
1)107を出力する。この選択信号(SL1)107
によって選択された値がセレクタ15から出力された頃
を見計らって制御回路12はカウンタ16に対しラッチ
信号(LAT1)109を出力する。
【0040】このラッチ信号(LAT1)109を受け
るとカウンタ16はセレクタ15から出力されているブ
ロック1の開始アドレス(0番地)108をカウント基
準値として取込む。制御回路12はカウンタ16に対し
てラッチ信号(LAT1)109を出力した後すぐに、
セレクタ15に対してレジスタ群13から出力されてい
る4つのブロックの開始アドレス106のうちレジスタ
13cに保持されて、出力されている値(1024番
地)すなわち、ブロック3の開始アドレスが選択される
ように選択信号(SL1)107を出力する。
【0041】また、制御回路12は同時にカウンタ18
に対してラッチ信号(LAT2)118を出力する。こ
のラッチ信号(LAT2)118を受けるとカウンタ1
8はレジスタ14から出力されている1つのブロックの
データ数(512個)から1を引いた値115をカウン
ト基準値として取込む。
【0042】以上のようにして、カウンタ16とカウン
タ18に初期値がセットされると制御回路12はDMA
データ転送を開始する。すなわち、入出力制御装置20
からデータ転送要求信号(REQ)119を受けると制
御回路12はメモリ21と入出力制御装置20に対して
データ転送制御信号112を出力する。このデータ転送
制御信号112を受けてメモリ21はアドレス0番地の
データ120を出力し、入出力制御装置20はメモリ2
1から出力されたデータ120を読み込む。このとき、
カウンタ16からはDMAデータ転送するデータのブロ
ックの開始アドレス(0番地)がメモリ21のアドレス
111としてメモリ21に対して出力されている。
【0043】このとき既に、次にDMAデータ転送され
るブロック3の開始アドレスがセレクタ15によって選
択されて、カウンタ16に対して出力されている。ま
た、1つのブロックのデータ数から1を引いた値がレジ
スタ14からカウンタ18に対して出力されている。な
お、制御回路12はカウンタ16および、カウンタ18
の更新中又は初期値設定中に入出力制御装置20からデ
ータ転送要求信号(REQ)119を受けた場合には、
カウンタ16及び、カウンタ18の更新又は初期値設定
の動作の終了を待ってデータ転送制御信号112を出力
する。
【0044】制御回路12はデータ転送制御信号112
を出力した後、クロック信号(CLK1)110を出力
してカウンタ16の値を1加算させる。また、同時にク
ロック信号(CLK2)117を出力してカウンタ18
の値を1減算させる。メモリ21と入出力制御装置20
の間で0番地のデータ120の転送が完了すると入出力
制御装置20は制御回路12に対してデータ転送要求信
号(REQ)119を出力する。
【0045】制御回路12は入出力制御装置20からデ
ータ転送要求信号(REQ)119を受けると、制御回
路12はメモリ21と入出力制御装置20に対してデー
タ転送制御信号112を出力する。このとき、カウンタ
16からはDMAデータ転送するデータのアドレス(1
番地)がメモリ21のアドレス111としてメモリ21
に対して出力されている。
【0046】制御回路12はデータ転送制御信号112
を出力した後、クロック信号(CLK1)110を出力
してカウンタ16の値を1加算させる。また、同時にク
ロック信号(CLK2)117を出力してカウンタ18
の値を1減算させる。メモリ21と入出力制御装置20
の間で1番地のデータ120の転送が完了すると入出力
制御装置20は制御回路12に対してデータ転送要求信
号(REQ)119を出力する。
【0047】以後これらの動作を繰返し、制御回路12
が出力したクロック信号(CLK2)117によってカ
ウンタ18の値が0になった場合には、カウンタ16か
ら出力される次にDMAデータ転送するデータのアドレ
スは511番地である。ここで、入出力制御装置20が
出力したデータ要求信号(REQ)119を制御回路1
2が受けると、制御回路12はメモリ21と入出力制御
装置20に対してデータ転送制御信号112を出力す
る。
【0048】この後、制御回路12はクロック信号(C
LK1)110を出力してカウンタ16の値を1加算さ
せる。また、同時にクロック信号(CLK2)117を
出力してカウンタ18の値を1減算させる。このとき、
カウンタ18は制御回路12に対してブロック終了信号
(BES)116を出力する。これをもって、ブロック
1のDMAデータ転送が終了する。
【0049】制御回路12はブロック終了信号(BE
S)116を受けると、ラッチ信号(LAT1)109
とラッチ信号(LAT2)118を出力する。カウンタ
16はこのラッチ信号(LAT1)109を受けるとセ
レクタ15から出力されているブロック3の開始アドレ
ス(1024番地)108をカウント基準値として取込
む。
【0050】制御回路12はカウンタ16に対してラッ
チ信号(LAT1)109を出力した後すぐに、セレク
タ15に対してレジスタ群13から出力されている4つ
のブロックの開始アドレス106のうちレジスタ13b
に保持されて、出力されている値(512番地)すなわ
ち、ブロック2の開始アドレスが選択されるように選択
信号(SL1)107を出力する。
【0051】また、カウンタ18はこのラッチ信号(L
AT2)118を受けると、レジスタ14から出力され
ている1つのブロックのデータ数(512個)から1を
引いた値115をカウント基準値として取込む。その後
に、入出力制御装置20からデータ転送要求信号(RE
Q)119を受けると、制御回路12はメモリ21と入
出力制御装置20に対してデータ転送制御信号112を
出力する。
【0052】この際、カウンタ16およびカウンタ18
の更新中に入出力制御装置20からデータ転送要求信号
(REQ)119を受けた場合には、制御回路12はカ
ウンタ16およびカウンタ18の更新の終了を待ってデ
ータ転送制御信号112を出力する。このような動作に
より、0番地から511番地のブロック1についで10
24番地からのブロック3のデータのDMAデータ転送
が行われる。同時に、次にDMAデータ転送が行われる
ブロック2の開始アドレスがセレクタ15から出力され
る。また、レジスタ14からは1つのブロックのデータ
数から1を引いた値がカウンタ18に対して出力されて
いる。
【0053】順次これらの動作を繰り返すことにより、
ブロック1、ブロック3、ブロック2、ブロック4の順
で4つのブロックのデータのDMAデータ転送が終了す
ると、制御回路12は中央処理回路19に対してデータ
転送終結信号(CTC)105を出力する。一方、DM
Aデータ転送装置11においては、続けてブロック1の
DMAデータ転送動作ができるように、既に4つめのブ
ロックすなわちブロック4のDMAデータ転送中に制御
回路12からの選択信号(SL1)107によって、ブ
ロック1の開始アドレスをセレクタ15で選択してカウ
ンタ16に出力し、また、1つのブロックのデータ数か
ら1を引いた値がレジスタ14からカウンタ18に対し
て出力するという一連の動作によって準備されている。
【0054】ここで、中央処理装置19からデータ転送
終結信号(CTC)105に対してデータ転送終了信号
(EOP)104が制御回路12に入力されると、DM
Aデータ転送動作を終了する。もし、データ転送終了信
号(EOP)104が入力されなければ、入出力制御装
置20からデータ転送要求信号(REQ)119に応じ
て、制御回路12はカウンタ16とカウンタ18にそれ
ぞれラッチ信号(LAT1)109とラッチ信号(LA
T2)118を出力してブロック1の開始アドレスとデ
ータ数を取り込ませて、ブロック1から4つのブロック
のDMAデータ転送を繰り返し行う。
【0055】なお、中央処理装置19はデータ転送終了
信号(EOP)104を制御回路12に対して出力する
ことにより、任意のタイミングでDMAデータ転送を中
止させることが出来る。以上の実施例においては、メモ
リから入出力制御装置へのDMAデータ転送を説明した
がこれに限られるものでなく、メモリからメモリへ、入
出力制御装置からメモリへのように、アドレスとデータ
数を指定してDMAデータ転送を行うものであれば何に
でも用いることができ、また、メモリのアドレスをアッ
プカウンタで発生したがダウンカウンタで発生してもよ
い。
【0056】また、以上の実施例においては、メモリに
4つのブロックがあることを想定したが、これに限られ
るものでなく、1つ以上のブロックであればいくつでも
良い。また、以上の実施例においては、メモリ21と入
出力制御装置20の間は独自のデータバス120を設け
たが、これに限られるものでなく、バスの権利の所在を
明かにする信号線を追加することにより中央処理装置1
9からのデータバス101を兼用してもよい。
【0057】また、以上の実施例においてはDMAデー
タ転送するブロックのセレクト信号を制御回路で作成す
る構成としたが、これに限られるものでなく外部信号を
用いてもよく、セレクト信号を制御回路で作成する構成
の場合においても、制御回路固有の順で作成してもよい
し、あらかじめ中央処理装置等により設定された順で作
成してもよい。
【0058】さらに、以上の実施例においては、DMA
データ転送をするブロックの開始アドレスに対してそれ
ぞれ1つのデータ数を設定する構成と、ブロックの開始
アドレスを複数種類持ち、データ数を1種類にする構成
としたが、これに限られるものでなく、ブロックの開始
アドレスを1つにし、データ数を複数種類持つ構成にし
てもよい。
【0059】
【発明の効果】1つのブロックのDMAデータ転送が終
了した後に、直ちに次のブロックのDMAデータ転送を
行うことができ、データが途中で途切れてしまうことを
防ぐことができる。また、中央処理装置が介在しないの
で、中央処理装置の動作状況による制約を受けることが
ない。
【0060】さらに、中央処理装置にとっても、処理中
の処理を中断する必要がないので、処理が遅れることも
なく、負担が軽減されることになる。
【図面の簡単な説明】
【図1】本発明の第1の実施例に係るDMAデータ転送
装置の構成図である。
【図2】本発明の第2の実施例に係るDMAデータ転送
装置の構成図である。
【符号の説明】
11 DMAデータ転送装置 12 制御回路 13 レジスタ群 14 レジスタ群 15 セレクタ 16 カウンタ 17 セレクタ 18 カウンタ 19 中央処理装置 20 入出力制御装置 21 メモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松原 敦 大阪府守口市京阪本通2丁目18番地 三洋 電機株式会社内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 DMAデータ転送を行うデータのブロッ
    クの開始アドレスを保持する第1の保持手段と、DMA
    データ転送の開始時に第1の保持手段に保持された開始
    アドレスを設定し、DMAデータ転送するデータのアド
    レスを発生するアドレス発生手段と、DMAデータ転送
    するデータ数を保持する第2の保持手段と、転送したデ
    ータ数を計数し、前記第2の保持手段に保持されたデー
    タ数に達したかどうか判定する判定手段と、判定手段に
    よりに転送したデータ数が前記第2の保持手段に保持さ
    れたデータ数に達したと判定した場合に、前記第1の保
    持手段に保持された開始アドレスを前記アドレス発生手
    段に設定し、判定手段の計数値を初期値に設定するとと
    もに、DMAデータ転送を制御する制御手段を有するD
    MAデータ転送装置において、前記第1の保持手段に複
    数の開始アドレスを保持し、該複数の開始アドレスに対
    応づけて前記第2の保持手段に複数のDMAデータ転送
    するデータの数を保持し、制御手段が前記アドレス発生
    手段にDMAデータ転送するデータの開始アドレスを設
    定する場合に前記第1の保持手段に保持された複数の開
    始アドレスを順次切り換えて設定するとともに、判定手
    段は転送されたデータ数が前記第2の保持手段に保持さ
    れた、設定された開始アドレスに対応するデータの数に
    達したかどうかを判定することを特徴とするDMAデー
    タ転送装置。
  2. 【請求項2】 DMAデータ転送を行うデータのブロッ
    クの開始アドレスを保持する第1の保持手段と、DMA
    データ転送の開始時に第1の保持手段に保持された開始
    アドレスを設定し、DMAデータ転送するデータのアド
    レスを発生するアドレス発生手段と、DMAデータ転送
    するデータ数を保持する第2の保持手段と、転送したデ
    ータ数を計数し、前記第2の保持手段に保持されたデー
    タ数に達したかどうか判定する判定手段と、判定手段に
    よりに転送したデータ数が前記第2の保持手段に保持さ
    れたデータ数に達したと判定した場合に、前記第1の保
    持手段に保持された開始アドレスを前記アドレス発生手
    段に設定し、判定手段の計数値を初期値に設定するとと
    もに、DMAデータ転送を制御する制御手段を有するD
    MAデータ転送装置において、前記第1の保持手段に複
    数の開始アドレスを保持し、制御手段が前記アドレス発
    生手段にDMAデータ転送するデータの開始アドレスを
    設定する場合に前記第1の保持手段に保持された複数の
    開始アドレスを順次切り換えて設定するとともに、判定
    手段は転送されたデータ数が前記第2の保持手段に保持
    されたデータの数に達したかどうかを判定することを特
    徴とするDMAデータ転送装置。
JP18029293A 1993-07-21 1993-07-21 Dmaデータ転送装置 Pending JPH0736819A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18029293A JPH0736819A (ja) 1993-07-21 1993-07-21 Dmaデータ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18029293A JPH0736819A (ja) 1993-07-21 1993-07-21 Dmaデータ転送装置

Publications (1)

Publication Number Publication Date
JPH0736819A true JPH0736819A (ja) 1995-02-07

Family

ID=16080663

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18029293A Pending JPH0736819A (ja) 1993-07-21 1993-07-21 Dmaデータ転送装置

Country Status (1)

Country Link
JP (1) JPH0736819A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002183080A (ja) * 2000-12-15 2002-06-28 Mega Chips Corp データ転送制御装置およびデータ転送方法
JP2011103129A (ja) * 2010-11-29 2011-05-26 Mega Chips Corp データ転送制御装置およびデータ転送方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002183080A (ja) * 2000-12-15 2002-06-28 Mega Chips Corp データ転送制御装置およびデータ転送方法
JP2011103129A (ja) * 2010-11-29 2011-05-26 Mega Chips Corp データ転送制御装置およびデータ転送方法

Similar Documents

Publication Publication Date Title
JPS6131502B2 (ja)
US6806872B2 (en) Video signal processing system
JPS5987569A (ja) デ−タ自動連続処理回路
JP2882426B2 (ja) アドレス発生装置
JPH05265943A (ja) シリアルデータ転送装置
JPH0736819A (ja) Dmaデータ転送装置
EP1211603A1 (en) Interface for multi-processor
JPH0877143A (ja) ベクトルデータ処理装置
JPH0520165A (ja) システムバス制御装置
US20050060475A1 (en) Data transfer apparatus and data transfer method
JPH08249273A (ja) 転送速度切り替え機能付き非同期転送回路
JP2557043B2 (ja) ビツトパタ−ン検出装置
JP3117214B2 (ja) シーケンサのマイクロプログラム制御方式
JPH0850567A (ja) データ転送装置
JPH1011388A (ja) ダイレクトメモリアクセス制御装置
JPH01112449A (ja) 速度変換メモリ装置
JP2550964B2 (ja) 記憶アクセス制御方式
JP3055903B2 (ja) データ読出し装置
JPS5922278A (ja) メモリ書込方式
JPH0580876A (ja) タイマ装置
JPS62219153A (ja) Dmaコントロ−ラ
JPH04251331A (ja) 情報処理装置
JPH05224642A (ja) 画像表示装置
JPH05128279A (ja) ワンチツプマイクロコンピユータ
JPH05143527A (ja) 優先制御回路