JPH1011388A - ダイレクトメモリアクセス制御装置 - Google Patents

ダイレクトメモリアクセス制御装置

Info

Publication number
JPH1011388A
JPH1011388A JP15821496A JP15821496A JPH1011388A JP H1011388 A JPH1011388 A JP H1011388A JP 15821496 A JP15821496 A JP 15821496A JP 15821496 A JP15821496 A JP 15821496A JP H1011388 A JPH1011388 A JP H1011388A
Authority
JP
Japan
Prior art keywords
transfer
data
address
addresses
transfer source
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
JP15821496A
Other languages
English (en)
Inventor
Yukihiko Kanbe
幸彦 神戸
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.)
TEC CORP
Original Assignee
TEC 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 TEC CORP filed Critical TEC CORP
Priority to JP15821496A priority Critical patent/JPH1011388A/ja
Publication of JPH1011388A publication Critical patent/JPH1011388A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 DMA転送処理能力を十分に発揮させること
により、データ転送処理をより高速化する。 【解決手段】 連続するアドレスを更新するための単位
加算データを転送元アドレスに加算することにより、次
に転送する転送データの転送元アドレスとして更新する
転送元アドレスコントローラ21と、予め設定した転送
先加算データ及び連続するアドレスを更新するための単
位加算データを、予め設定した連続アドレス部分の転送
カウント数に基づいて決定される転送データのアドレス
の連続又は不連続に応じて選択し、選択した加算データ
を転送先アドレスに加算することにより、次に転送する
転送データの転送先アドレスとして更新する転送先アド
レスコントローラ22とを設け、連続アドレスの転送デ
ータを断続アドレスへ転送する場合でもDMAのみで転
送処理を可能とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ダイレクトメモリ
アクセス(以下、「DMA」という。)によるデータ転
送処理を制御するDMA制御装置に関する。
【0002】
【従来の技術】DMAは、入出力装置とメモリ又はメモ
リ同士のデータの受渡しを直接的にやり取りする方法
で、CPU(中央処理装置)を介して行う通常の方法に
比して高速にデータの受渡しを行うことができることか
らパ−ソナルコンピュ−タ等でよく使用されるものであ
る。
【0003】このDMAを制御するDMAコントローラ
(DMA制御装置)は、例えばROM(リード・オンリ
・メモリ)等に設けられたキャラクタジェネレータ(C
G)から取出したイメージデータをイメージバッファへ
展開するときなどに起動される。この場合、DMAのハ
ードウエア制御は、転送元アドレスと転送先アドレスは
ともに連続している場合にしか実行できなかった。
【0004】従って、例えば図9及び図11(a)に示
すような文字「A」がキャラクタジェネレータ(CG)
に連続したアドレス0番地〜8番地にイメージデータと
して記憶されている場合、この文字「A」を図10及び
図11(b)に示すようなイメージバッファの一部、す
なわち断続的なアドレスを含む部分へ転送するには、D
MAのハードウエア制御とともに、図12に示すような
ソフトウエア制御が必要だった。
【0005】すなわち、先ずDMAコントローラに転送
元アドレス「0」、転送先アドレス「500」及び連続
するアドレスにあるデータの転送数「2」をセット(例
えば2から0までダウンカウントする場合である)し
て、DMAを起動する。これにより、図11に示すキャ
ラクタジェネレータ(CG)におけるアドレス0番地か
ら2番地までのデータ(xブロック)のDMA転送のハ
ードウエア制御が行われ、このxブロックの転送処理が
終了すると、DMAは停止する。
【0006】そして、転送先の連続したアドレスへの転
送が終了したか否か、すなわちターミナルカウントが発
生したか否かを判断する。このとき、ターミナルカウン
トが発生したと判断した場合、転送元のアドレスの最終
ラインのDMA転送が終了したか否かを判断する。この
例の場合、アドレス0番地から2番地までのデータ(x
ブロック)では、未だ最終ラインの転送ではないため、
次の処理に進む。
【0007】すなわち、DMAコントローラに次の転送
元アドレス「3」、転送先アドレス「600」及び連続
する転送数「2」をセットして、DMAを起動する。こ
れにより、図11に示すキャラクタジェネレータ(C
G)におけるアドレス3番地から5番地までのデータ
(yブロック)のDMA転送のハードウエア制御が行わ
れ、このyブロックの転送処理が終了すると、DMAは
再び停止する。
【0008】そして、ターミナルカウントが発生したか
否かを判断する。このとき、ターミナルカウントが発生
したと判断した場合、転送元のアドレスの最終ラインの
DMA転送が終了したか否かを判断する。この例の場
合、アドレス3番地から5番地までのデータ(yブロッ
ク)では、未だ最終ラインの転送ではないため、次の処
理に進む。
【0009】すなわち、DMAコントローラに次の転送
元アドレス「6」、転送先アドレス「700」及び連続
する転送数「2」をセットして、DMAを起動する。こ
れにより、図11に示すキャラクタジェネレータ(C
G)におけるアドレス6番地から8番地までのデータ
(zブロック)のDMA転送のハードウエア制御が行わ
れ、このzブロックの転送処理が終了すると、DMAは
再び停止する。
【0010】そして、ターミナルカウントが発生したか
否かを判断する。このとき、ターミナルカウントが発生
したと判断した場合、転送元のアドレスの最終ラインの
DMA転送が終了したか否かを判断する。この例の場
合、アドレス6番地から8番地までのデータ(zブロッ
ク)は、最終ラインの転送であるため、このDMA制御
を終了する。
【0011】このように、キャラクタジェネレータ(C
G)における連続アドレスのイメージデータを断続アド
レスへ転送する場合、アドレスが断続的となる度にハー
ドウエア制御を停止し、転送元アドレス等の設定やDM
Aの起動を再度行うソフトウエア制御が必要であった。
【0012】
【発明が解決しようとする課題】しかし、このようなD
MA制御装置においては、転送先アドレスが断続的なデ
ータをDMA転送する場合、アドレスを連続的に転送で
きる部分に分割して複数回DMAコントローラに設定を
行ってDMAをその都度起動していたため、割り込み処
理などのソフトウエア制御を必要とし、複雑な処理をし
なければならないという問題があった。
【0013】しかも、アドレスが不連続になる部分にな
る度にDMAが停止するため、DMAによるイメージデ
ータ等の転送処理全体に時間がかかり、処理速度が速い
というDMA転送制御の効果を十分に達成することがで
きないという問題もあった。特にフォントのデータが大
きいほどDMAが停止する回数が増え、転送処理速度も
低下する。例えば、通常のCGデータで1キャラクタあ
たり24回程度DMAが停止するため、1ぺージ100
キャラクタの場合には2400回もDMAが停止ことと
なる。
【0014】そこで、本発明は、ダイレクトメモリアク
セスによる転送処理能力を十分に発揮させることによ
り、データ転送処理をより高速化することができるダイ
レクトメモリアクセス制御装置を提供しようとするもの
である。
【0015】
【課題を解決するための手段】請求項1の本発明は、バ
スラインのバス使用権を得て、転送するデータの転送元
アドレス及び転送先アドレスの切換えによりデータのや
り取りを直接的に行うダイレクトメモリアクセスによる
データ転送処理を制御するダイレクトメモリアクセス制
御装置において、予め設定した転送元加算データ及び連
続するアドレスを更新するための単位加算データを、予
め設定した連続アドレス部分の転送カウント数に基づい
て決定されるアドレスの連続又は不連続に応じて選択
し、選択した加算データを転送元アドレスに加算するこ
とにより、次に転送する転送データの転送元アドレスと
して更新する転送元アドレス発生部と、予め設定した転
送先加算データ及び連続するアドレスを更新するための
単位加算データを、予め設定した連続アドレス部分の転
送カウント数に基づいて決定される転送データのアドレ
スの連続又は不連続に応じて選択し、選択した加算デー
タを転送先アドレスに加算することにより、次に転送す
る転送データの転送先アドレスとして更新する転送先ア
ドレス発生部とを設けたものである。
【0016】請求項2の本発明は、バスラインのバス使
用権を得て、転送するデータの転送元アドレス及び転送
先アドレスの切換えによりデータのやり取りを直接的に
行うダイレクトメモリアクセスによるデータ転送処理を
制御するダイレクトメモリアクセス制御装置において、
連続するアドレスを更新するための単位加算データを転
送元アドレスに加算することにより、次に転送する転送
データの転送元アドレスとして更新する転送元アドレス
発生部と、予め設定した転送先加算データ及び連続する
アドレスを更新するための単位加算データを、予め設定
した連続アドレス部分の転送カウント数に基づいて決定
される転送データのアドレスの連続又は不連続に応じて
選択し、選択した加算データを転送先アドレスに加算す
ることにより、次に転送する転送データの転送先アドレ
スとして更新する転送先アドレス発生部とを設けたもの
である。
【0017】請求項3の本発明は、バスラインのバス使
用権を得て、転送するデータの転送元アドレス及び転送
先アドレスの切換えによりデータのやり取りを直接的に
行うダイレクトメモリアクセスによるデータ転送処理を
制御するダイレクトメモリアクセス制御装置において、
予め設定した転送元加算データ及び連続するアドレスを
更新するための単位加算データを、予め設定した連続ア
ドレス部分の転送カウント数に基づいて決定されるアド
レスの連続又は不連続に応じて選択し、選択した加算デ
ータを転送元アドレスに加算することにより、次に転送
する転送データの転送元アドレスとして更新する転送元
アドレス発生部と、連続するアドレスを更新するための
単位加算データを転送先アドレスに加算することによ
り、次に転送する転送データの転送先アドレスとして更
新する転送先アドレス発生部とを設けたものである。
【0018】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。
【0019】図1は、本実施の形態における回路の要部
構成を示すブロック図で、11は制御部本体を構成する
CPU(中央処理装置)、12はこのCPU11が各部
を制御するためのプログラムデータやキャラクタジェネ
レータ(CG)データを格納したROM(リード・オン
リ・メモリ)、13はCPU11が行うイメージ展開処
理等のデータ処理のために使用されるイメージバッファ
等のメモリを設けたRAM(ランダム・アクセス・メモ
リ)、14はDMA制御回路である。上記CPU11と
ROM12、RAM13、DMA制御回路14とはアド
レスバス、データバス、制御バス等のバスライン15に
より電気的に接続されている。また、CPU11とDM
A制御回路14とはバス使用権要求信号(HREG)、
バス使用権許可信号(HACK)の制御線で接続されて
いる。
【0020】上記DMA制御回路は、図2に示すように
転送元アドレスコントローラ21、転送先アドレスコン
トローラ22、転送数カウンタ23、DMAコントロー
ルホールドタイミング発生回路24、ラインバイトカウ
ンタ回路25、アドレスセレクタ26から構成される。
上記転送元アドレスコントローラ21は、転送元アドレ
スが連続する場合には、設定された転送元アドレスを1
番地ずつ更新し、転送元アドレスが断続する場合には、
その部分で断続的に更新するものである。
【0021】上記ラインバイトカウンタ回路25は、転
送元又は転送先の連続するアドレス数を設定すると、ダ
ウンカウントするようになっている。例えばアドレス5
00番地から502番地へ連続してイメージデータを転
送する場合、「2」を設定すれば、「2」から「0」ま
でダウンカウントし、「0」になるとTC信号を発生す
る。
【0022】上記転送数カウンタ23は、転送したアド
レス数のすべてをカウントするものである。またアドレ
スセレクタ26は、CPU11からのSEL_S/D信
号に応じて転送元アドレスコントローラ21と転送先ア
ドレスコントローラ22からのアドレスを選択して出力
するものである。上記DMAコントロールホールドタイ
ミング発生回路24は、転送処理中のDMAのバス使用
権を確保するためのものである。
【0023】このDMA制御回路のさらに詳細な回路構
成を図3及び図4に示す。すなわち、上記転送元アドレ
スコントローラ21は、転送元レジスタ31、転送元加
算データレジスタ32、加算器33、セレクタ34,3
5、オアゲート36から構成される。
【0024】上記セレクタ34は、チップセレクト信号
(CS)、書込み信号(W)を入力し、書込み信号
(W)の入力に応じてCPU11からのアドレス及び加
算器33からのアドレスのいずれかを選択して転送元レ
ジスタ31へ供給するようになっている。この加算器3
3は、転送元レジスタ31からのアドレスを転送元加算
データレジスタ32及びセレクタ35からの転送元加算
データ分だけ加算してセレクタ34へ供給する。
【0025】この転送元加算データは、転送元が連続す
るアドレスの場合、単位加算データとしてのデフォルト
値「1」がセレクタ35で選択出力されるため、転送元
レジスタ31は「1」ずつアドレスが更新される。これ
に対して、転送元が不連続のアドレスの場合であってア
ドレスが不連続となるとき(ラインバイトカウンタ回路
25からのTC信号が出力されたとき)、CPU11か
ら転送元加算データレジスタ32に設定した転送元加算
データがセレクタ35で選択出力されるため、転送元レ
ジスタ31は転送元加算データの分だけ増加したアドレ
スが更新される。
【0026】このようにして1つのアドレスのデータを
転送するごとに更新された転送元レジスタ31の出力
は、加算器33及びアドレスセレクタ26へ供給される
ようになっている。
【0027】上記転送先アドレスコントローラ22も、
転送元アドレスコントローラ21と同様に構成される。
すなわち、転送先レジスタ41、転送先加算データレジ
スタ42、加算器43、セレクタ44,45、オアゲー
ト46から構成される。
【0028】上記セレクタ44は、チップセレクト信号
(CS)、書込み信号(W)を入力し、書込み信号
(W)の入力に応じてCPU11からのアドレス及び加
算器43からのアドレスのいずれかを選択して転送先レ
ジスタ41へ供給するようになっている。この加算器4
3は、転送先レジスタ41からのアドレスを転送先加算
データレジスタ42及びセレクタ45からの転送先加算
データ分だけ加算してセレクタ44へ供給する。
【0029】この転送先加算データは、転送先が連続す
るアドレスの場合、単位加算データとしてのデフォルト
値「1」がセレクタ45で選択出力されるため、転送先
レジスタ41は「1」ずつアドレスが更新される。これ
に対して、転送先が不連続のアドレスの場合であってア
ドレスが不連続となるとき(ラインバイトカウンタ回路
25からのセレクト信号(RC)が出力されたとき)、
CPU11から転送先加算データレジスタ42に設定し
た転送先加算データがセレクタ45で選択出力されるた
め、転送先レジスタ41は転送先加算データの分だけ増
加したアドレスが更新される。
【0030】このようにして、1つのアドレスのデータ
を転送するごとに更新された転送先レジスタ41の出力
は、加算器43及びアドレスセレクタ36へ供給される
ようになっている。
【0031】上記ラインバイトカウンタ回路25は、C
PU11から連続するアドレス数を設定するラインカウ
ント用レジスタ51、このラインカウント用レジスタ5
1で設定したアドレス数に基づいてダウンカウントしカ
ウントアップするとセレクト信号(RC)を転送元アド
レスコントローラ21のセレクタ35及び転送先アドレ
スコントローラ22のセレクタ45へ供給するカウンタ
52から構成される。上記DMAコントロールホールド
タイミング発生回路24は、図4に示すように、DMA
コントロールレジスタ61、フラグセット回路62、ア
ンドゲート63、シーケンスカウンタ64、タイミング
デコーダ65、データラッチ66から構成される。
【0032】上記DMAコントロールレジスタ61は、
CPU11のバスライン15が接続しており、データ転
送を行う場合にCPU11からのスタート命令が書込ま
れるようになっている。このDMAコントロールレジス
タ61にスタート命令が書込まれると、書込まれた旨の
信号がフラグセット回路62に供給される。すると、フ
ラグセット回路62はイネーブルフラグをセットしてバ
ス使用権要求信号(HREQ)をCPU11へ供給す
る。
【0033】このフラグセット回路62からのバス使用
権要求信号(HREQ)はアンドゲート63に供給され
る。また、アンドゲート63にはCPU11からのバス
使用権許可信号(HACK)も供給されるようになって
おり、アンドゲート63はバス使用権要求信号(HRE
Q)及びバス使用権許可信号(HACK)の両者が入力
されると、シーケンスカウンタ64にイネーブル信号
(EN)を供給する。
【0034】上記シーケンスカウンタ64は、アンドゲ
ート63からイネーブル信号(EN)を供給すると、カ
ウント動作を開始し、タイミングデコーダ65を介して
RAM13等に対する読取り信号(R)、書込み信号
(W)やDACK、SEL_S/D等の内部信号を発生
し、バスライン15へ供給する。
【0035】このようなRAM13等に対する読取り信
号(R)、書込み信号(W)が発生すると、データラッ
チ66に転送元のアドレスがラッチされる。このアドレ
スもアドレスデータとしてバスライン15へ供給され
る。
【0036】また、上記DMAコントロールレジスタ6
1には、転送数カウンタ23からTC信号が供給される
と、バス使用権要求信号(HREQ)が解除されてDM
A転送処理が終了し、バスラインはCPU11へ解放さ
れる。
【0037】このような構成の本発明の実施の形態にお
いては、例えば、図9に示すような転送元のROM12
に記憶されている文字「A」のCGデータを、図10に
示すようなRAM10のアドレス空間の一部へ転送する
場合、以下のようなDMA転送処理を行う。なお、この
例は、図5に示すようにアドレス0番地〜8番地まで連
続する転送元アドレスに記憶されているCGデータを、
アドレス500番地〜502番地、アドレス600番地
〜602番地、及びアドレス700番地〜702番地の
ように断続している転送先アドレスへ転送する場合であ
る。
【0038】このような例におけるDMA転送処理は、
先ずDMA制御回路14に転送元アドレスや転送先アド
レス等の設定を行う。この設定は最初の1回限りでよ
い。
【0039】すなわち、DMA制御回路14内部の転送
元レジスタ31に転送元の最初のアドレスである「0」
をセットする。続いて転送元加算データレジスタ32に
転送元アドレスの転送元加算データをセットする。この
例では、転送元が連続アドレスであるため、転送元加算
データとして「1」をセットする。
【0040】同様にして転送先レジスタ41に転送先の
最初のアドレスである「500」をセットする。続いて
転送先加算データレジスタ42に転送先において不連続
となる部分のアドレスの差を転送先加算データとしてセ
ットする。この例では、転送先がアドレス502番地と
600番地との間で不連続、アドレス602番地と70
0番地との間で不連続であるため、そのアドレス間の差
である「98」を転送先加算データとしてセットする。
【0041】また、ラインカウント用レジスタ51に転
送先アドレスで連続するアドレス数をセットする。この
例では、転送先が500番地〜502番地、600番地
〜602番地、700番地〜702番地でそれぞれ連続
であるため、ラインカウント用レジスタ51に「2」を
セットする。これによりカウンタ52には、ダウンカウ
ントの初期値として「2」がセットされる。さらに、転
送数カウンタ23に、転送元の最終アドレスである
「8」をセットする。
【0042】次に、DMAコントロールレジスタ61に
スタート命令を書き込むことにより、フラグ設定回路6
2にイネーブルフラグがセットされ、バス使用権要求信
号(HREQ)をCPU11に対して出力する。これに
対して、CPU11がバス使用権許可信号(HACK)
を返してくると、シーケンスカウンタ64が動作を始
め、RAM13に対する読取り信号(R),書込み信号
(W)、DACK、SEL_S/Dの内部信号を発生す
る。
【0043】すると、転送元であるROM12から最初
のアドレス「0」のデータが読取られ、データラッチ6
6に一時的に記憶される。そして、加算器33により次
の転送元アドレスへの更新が行われる。すなわち、この
場合は、転送元アドレスコントローラ21のセレクタ3
5へ供給されるセレクト信号(RC)により「1」が選
択されるため、転送元レジスタ31は加算器33により
+1されたアドレスが転送元レジスタ31へ供給され
る。
【0044】次に、CPU11によりSEL_S/D信
号が変化し、アドレスセレクタ26の出力は転送元レジ
スタ31の出力から転送先レジスタ41の出力に変わ
る。最初の転送先はRAM13の500番地であり、こ
こに図4に示すデータラッチ66に蓄積されたデータを
書込む。このとき、加算器43により次の転送先アドレ
スへの更新が行われる。すなわち、この場合は、転送先
アドレスコントローラ22のセレクタ45へ供給される
セレクト信号(RC)により「1」が選択されるため、
転送先レジスタ41は加算器43により+1されたアド
レスが転送先レジスタ41へ供給される。
【0045】このような連続するアドレスのDMA転送
処理をラインバイトカウンタ25のカウンタ52が
「0」になるまで行う。これにより、3バイトのデータ
が転送される。すなわち、ROM12のアドレス0番
地、1番地、2番地から読出され、RAM13の500
番地、501番地、502番地にそれぞれ書込まれる。
【0046】そして、ラインバイトカウンタ回路25の
カウンタ52が「0」になると、セレクト信号(RC)
が切替わり、転送元アドレスコントローラ21のセレク
タ35は、転送元加算データレジスタ32にセットした
値を選択出力するようになる。この例では、転送元加算
データレジスタ32に「1」をセットしてあり、転送元
のアドレスは現在「2」を示しているため、そのアドレ
スに+1が加算され、転送元レジスタ31には前回と同
様に連続したアドレス「3」が示される。
【0047】これと同様にして、転送先アドレスコント
ローラ22のセレクタ45の出力も、転送先加算データ
レジスタ42に設定した値を選択出力するようになる。
ところが、この例では、転送先加算データレジスタ42
には「98」をセットしてあり、転送先のアドレスは現
在「502」を示しているため、そのアドレスに+98
が加算され、転送先レジスタ41には不連続なアドレス
「600」が示される。
【0048】このセレクタ信号(RC)は、同時にライ
ンバイトカウンタ回路25のカウンタ52に対するロー
ド信号(LD)にもなっているため、このセレクタ信号
(RC)が切替わると、ラインカウント用レジスタ51
にセットしてある「2」を再ロードするようになる。ロ
ード後にセレクタ信号(RC)は元に戻る。
【0049】こうして、上述する処理が繰返し行われて
ROM12のアドレス「0」、「1」、「2」、
「3」、「4」、「5」、「6」、「7」、「8」のデ
ータがRAM13の「500」、「501」、「50
2」、「600」、「601」、「602」、「70
0」、「701」、「702」に自動的に転送される。
【0050】そして、転送数カウンタ23が「0」にな
ると、DMA転送終了を示すTC信号が出力され、DM
AコントロールレジスタがクリアされてDMA転送処理
が終了する。これにより、バス使用権はCPU11に解
放される。
【0051】このように、転送元のデータが連続するア
ドレスであり、転送先が断続アドレスである場合でも、
予め断続アドレスの不連続部分のアドレスの差を転送先
加算データとして転送先レジスタ41に設定しておくこ
とにより、DMA転送処理が転送先のアドレスの不連続
部分においても自動的に転送先のアドレスの値が自動的
に更新されるため、この部分でDMA転送処理の停止、
再度の転送先アドレスの設定やDMA転送処理の再起動
を行う必要がなくなる。これにより、全体のデータ転送
処理をより高速化することができ、DMAによる処理能
力を十分に発揮させることができる。
【0052】なお、本実施の形態においては、図5に示
すように転送元のデータが連続するアドレスであり、転
送先が断続アドレスである場合を例として説明したが、
必ずしもこれに限定されるものではなく、例えば図6に
示すようにRAM13のバッファ間でウインド状のデー
タ「A」を取出し、他のメモリアドレスヘウインド状に
コピーする場合には、図7に示すように転送元及び転送
先の両者とも断続アドレスとなるが、このような場合に
も適用できる。
【0053】この場合には、転送元アドレスコントロー
ラ21の転送元加算データレジスタ32に転送元加算デ
ータとしてアドレスの不連続部分である2番地から10
0番地の差である「98」を設定するとともに、転送先
アドレスコントローラ22の転送先加算データレジスタ
42に転送先加算データとしてアドレスの不連続部分で
ある502番地から600番地の差である「98」を設
定しておけば、転送先及び転送元のアドレスの不連続部
分でも自動的にアドレスが更新される。これによって
も、上記と同様の効果を奏することができる。
【0054】さらに、図8に示すように転送元のデータ
が断続アドレスであり、転送先が連続アドレスである場
合にも適用できる。この場合には、転送元アドレスコン
トローラ21の転送元加算データレジスタ32に転送元
加算データとしてアドレスの不連続部分である2番地か
ら100番地の差である「98」を設定するとともに、
転送先アドレスコントローラ22の転送先加算データレ
ジスタ42に転送先加算データとして「1」を設定して
おけば、転送元のアドレスの不連続部分で自動的にアド
レスが更新される。これによっても、上記と同様の効果
を奏することができる。
【0055】
【発明の効果】以上詳述したように本発明によれば、ダ
イレクトメモリアクセスによる転送処理能力を十分に発
揮させることにより、データ転送処理をより高速化する
ことができるダイレクトメモリアクセス制御装置を提供
できるものである。
【図面の簡単な説明】
【図1】本発明の実施の形態の回路構成を示すブロック
図。
【図2】図1に示すDMA制御回路の内部構成を示すブ
ロック図。
【図3】図2に示すDMA制御回路の詳細な回路構成の
一部を示すブロック図。
【図4】図2に示すDMA制御回路の詳細な回路構成を
一部を示すブロック図。
【図5】本実施の形態における転送元が連続アドレスで
転送先が断続アドレスの場合の転送データの1例を示す
図。
【図6】本実施の形態において転送データをアドレス空
間の一部から他部へ移動する場合を説明する図。
【図7】図6に示す場合の転送データの1例を示す図。
【図8】本実施の形態における転送元が断続アドレスで
転送先が連続アドレスの場合の転送データの1例を示す
図。
【図9】連続アドレスとなる転送データの1例を示す
図。
【図10】図9に示す転送先が断続アドレスの場合の転
送データの1例を示す図。
【図11】従来のダイレクトメモリアクセス制御装置に
おいて、図9に示す転送データを図10に示すアドレス
空間に転送する場合を説明する図。
【図12】従来のダイレクトメモリアクセス制御装置に
おいて、図9に示す転送データを図10に示すアドレス
空間に転送する場合のCPUが行う制御を示す流れ図。
【符号の説明】
14…DMA制御回路 21…転送元アドレスコントローラ(転送元アドレス発
生部) 22…転送先アドレスコントローラ(転送先アドレス発
生部) 24…DMAコントロールホールドタイミング発生回路 25…ラインバイトカウンタ回路 26…アドレスセレクタ 31…転送元レジスタ 32…転送元加算データレジスタ 33…加算器 35…セレクタ 41…転送先レジスタ 42…転送先加算データレジスタ 43…加算器 45…セレクタ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 バスラインのバス使用権を得て、転送す
    るデータの転送元アドレス及び転送先アドレスの切換え
    によりデータのやり取りを直接的に行うダイレクトメモ
    リアクセスによるデータ転送処理を制御するダイレクト
    メモリアクセス制御装置において、予め設定した転送元
    加算データ及び連続するアドレスを更新するための単位
    加算データを、予め設定した連続アドレス部分の転送カ
    ウント数に基づいて決定されるアドレスの連続又は不連
    続に応じて選択し、選択した加算データを転送元アドレ
    スに加算することにより、次に転送する転送データの転
    送元アドレスとして更新する転送元アドレス発生部と、
    予め設定した転送先加算データ及び連続するアドレスを
    更新するための単位加算データを、予め設定した連続ア
    ドレス部分の転送カウント数に基づいて決定される転送
    データのアドレスの連続又は不連続に応じて選択し、選
    択した加算データを転送先アドレスに加算することによ
    り、次に転送する転送データの転送先アドレスとして更
    新する転送先アドレス発生部とを設けたことを特徴とす
    るダイレクトメモリアクセス制御装置。
  2. 【請求項2】 バスラインのバス使用権を得て、転送す
    るデータの転送元アドレス及び転送先アドレスの切換え
    によりデータのやり取りを直接的に行うダイレクトメモ
    リアクセスによるデータ転送処理を制御するダイレクト
    メモリアクセス制御装置において、連続するアドレスを
    更新するための単位加算データを転送元アドレスに加算
    することにより、次に転送する転送データの転送元アド
    レスとして更新する転送元アドレス発生部と、予め設定
    した転送先加算データ及び連続するアドレスを更新する
    ための単位加算データを、予め設定した連続アドレス部
    分の転送カウント数に基づいて決定される転送データの
    アドレスの連続又は不連続に応じて選択し、選択した加
    算データを転送先アドレスに加算することにより、次に
    転送する転送データの転送先アドレスとして更新する転
    送先アドレス発生部とを設けたことを特徴とするダイレ
    クトメモリアクセス制御装置。
  3. 【請求項3】 バスラインのバス使用権を得て、転送す
    るデータの転送元アドレス及び転送先アドレスの切換え
    によりデータのやり取りを直接的に行うダイレクトメモ
    リアクセスによるデータ転送処理を制御するダイレクト
    メモリアクセス制御装置において、予め設定した転送元
    加算データ及び連続するアドレスを更新するための単位
    加算データを、予め設定した連続アドレス部分の転送カ
    ウント数に基づいて決定されるアドレスの連続又は不連
    続に応じて選択し、選択した加算データを転送元アドレ
    スに加算することにより、次に転送する転送データの転
    送元アドレスとして更新する転送元アドレス発生部と、
    連続するアドレスを更新するための単位加算データを転
    送先アドレスに加算することにより、次に転送する転送
    データの転送先アドレスとして更新する転送先アドレス
    発生部とを設けたことを特徴とするダイレクトメモリア
    クセス制御装置。
JP15821496A 1996-06-19 1996-06-19 ダイレクトメモリアクセス制御装置 Pending JPH1011388A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15821496A JPH1011388A (ja) 1996-06-19 1996-06-19 ダイレクトメモリアクセス制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15821496A JPH1011388A (ja) 1996-06-19 1996-06-19 ダイレクトメモリアクセス制御装置

Publications (1)

Publication Number Publication Date
JPH1011388A true JPH1011388A (ja) 1998-01-16

Family

ID=15666782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15821496A Pending JPH1011388A (ja) 1996-06-19 1996-06-19 ダイレクトメモリアクセス制御装置

Country Status (1)

Country Link
JP (1) JPH1011388A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011108286A (ja) * 2001-02-28 2011-06-02 Spansion Llc メモリ装置
WO2012039143A1 (ja) * 2010-09-21 2012-03-29 三菱電機株式会社 Dmaコントローラ及びデータ読出装置
US8223368B2 (en) 2007-10-10 2012-07-17 Canon Kabushiki Kaisha Image processing apparatus and method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011108286A (ja) * 2001-02-28 2011-06-02 Spansion Llc メモリ装置
US8223368B2 (en) 2007-10-10 2012-07-17 Canon Kabushiki Kaisha Image processing apparatus and method
US8456684B2 (en) 2007-10-10 2013-06-04 Canon Kabushiki Kaisha Image processing apparatus and method
WO2012039143A1 (ja) * 2010-09-21 2012-03-29 三菱電機株式会社 Dmaコントローラ及びデータ読出装置

Similar Documents

Publication Publication Date Title
JP5518103B2 (ja) 伝送制御装置及び前記伝送制御装置を備えたplc
US20030181994A1 (en) Microprocessor performing efficient external bus access
JP3108080B2 (ja) アクセス制御回路装置
JPH1011388A (ja) ダイレクトメモリアクセス制御装置
JP3281211B2 (ja) 同期式メモリを有する情報処理装置および同期式メモリ
JP3317819B2 (ja) シングルポートramの2ポートアクセスの制御方式
JP3201439B2 (ja) ダイレクト・メモリ・アクセス・制御回路
JP3323751B2 (ja) 印刷装置
JPH08328995A (ja) Dma転送方式およびdma転送方法
JPS585434B2 (ja) ディスプレイ装置
JPH05210381A (ja) 表示制御装置
JPH0736819A (ja) Dmaデータ転送装置
JPS5938827A (ja) マイクロプロセツサipl方式
JP2003150534A (ja) チェインブロック転送方法及び通信制御装置
JP2001084217A (ja) Dma(ダイレクトメモリアクセス)回路
JPS6336021B2 (ja)
JPH06332851A (ja) データ転送方式
JPH06119289A (ja) データ転送装置
JPH0696006A (ja) Dmaコントローラ
JP2004127312A (ja) 半導体集積回路装置および半導体集積回路装置のデータ転送方法
JPH076008A (ja) 高速プリンタ制御装置
JPH09160786A (ja) マイクロプロセッサ
JPS63144496A (ja) 記憶装置の書込み制御方式
JPH03252996A (ja) スキャン・イン方式
JPH07120309B2 (ja) 記憶装置間ページデータ転送制御方式