JP2000099452A - Dma制御装置 - Google Patents

Dma制御装置

Info

Publication number
JP2000099452A
JP2000099452A JP10267116A JP26711698A JP2000099452A JP 2000099452 A JP2000099452 A JP 2000099452A JP 10267116 A JP10267116 A JP 10267116A JP 26711698 A JP26711698 A JP 26711698A JP 2000099452 A JP2000099452 A JP 2000099452A
Authority
JP
Japan
Prior art keywords
dma
transfer
register
circuit
address
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
JP10267116A
Other languages
English (en)
Inventor
Yoshiyuki Miyayama
芳幸 宮山
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP10267116A priority Critical patent/JP2000099452A/ja
Publication of JP2000099452A publication Critical patent/JP2000099452A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】DMA制御装置の高機能化、高速化を図る。 【解決手段】DMAのコマンド情報を専用のキャッシュ
に入れておき、DMA要求が発生したときのオーバーヘ
ッドを減らすことでDMA転送の高速化を図る。さら
に、アドレスが、データサイズに対して整合が取れてい
ない場合に、小さいデータサイズでまずデータ転送を行
なって、大きなデータサイズのアドレス境界まで、まず
転送し、その後大きなデータサイズで転送することで転
送の高速化を図る。さらに、データ転送時にアドレスの
更新方法は、単純なインクリメント、デクリメント以外
に、あらかじめ設定されたオフセット値を加算・減算す
ることができ、より複雑なDMA転送が実行できる。さ
らに、DMA転送は、リンク機能を持ち、リンク番号を
指定することで任意のチャネル番号を任意に連続起動さ
せることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、直接メモリのデー
タを転送するDMA制御装置、特にそのDMA転送の転
送方式、転送手順、転送制御回路に関する。
【0002】
【従来の技術】図4に、従来例を示す。
【0003】401はCPUとのインターフェースバ
ス、402はコマンドベースレジスタ、403はDMA
カウントレジスタ、404はDMAコマンドレジスタ、
405はDMAアドレスレジスタ、409はラッチ、4
08は加算または減算の出来る計算回路、410はラッ
チ、411はゼロ検出回路、413はDMA制御回路、
424は前記計算回路408を制御する信号線、114
はバスコントローラ(BCUと呼ぶ)へのデータアクセ
ス要求信号、115は前記データアクセス要求信号11
4に対応するアドレスを出力するアドレス信号、117
はBCUからの応答信号、118はBCUとデータのや
り取りを行なうデータバス、122は割り込みコントロ
ーラ(ITCと呼ぶ)からのDMA要求信号、119は
前記DMA要求信号122に対応するDMAチャネル番
号、123はITCに対するDMA転送終了を示す制御
信号である。このDMAの動作には、大きく分けて2通
りの動作がある。一つは、ITCからの割り込み要求が
あったときに、DMAが各レジスタに設定されている値
に従って、即座に動く方式である。この方法は、高速な
DMA転送が実行できる。ただし、DMAのチャネル数
は、ハードウェアで持っているレジスタの数に限られ
る。前記の図4では、1チャネルに限られる。もう一つ
の動作方法は、ITCからの割り込み要求があったとき
に、まず、DMAはメモリからDMAの各コマンド情報
を読み取って、各DMAのレジスタに設定し(セットア
ップ動作)、その後、DMA転送を行ない、実行後は、
各レジスタの更新された値を、もとのメモリアドレスに
書き戻す(リストア動作)である。この方法だと、DM
A転送前後のオーバーヘッドは大きいが、DMAのチャ
ネル数は、メモリに依存するので、非常に多い数のチャ
ネル数をとることができる。
【0004】図4は、以上のいずれの方法でも、動作す
るDMA制御装置である。
【0005】
【発明が解決しようとする課題】しかし、従来のDMA
制御装置では、DMA転送ごとのアドレス更新は、転送
されるデータサイズだけ更新される規則的なものであっ
た。従って、メモリ中におかれたマトリックス状のデー
タ構造を転送するときなどには使えなかった。
【0006】また、従来のDMA装置では、通常は転送
するデータサイズが、8ビット(バイト)、16ビット
(ハーフワード)、32ビット(ワード)などのように固
定されており、例えば32ビットのワードデータを転送す
るときは、ソースおよびディスティネーションのアドレ
スの両方の最下位2ビットは“00”でなくてはならな
かった。従って、例えば、ソースおよびディスティネー
ションのアドレスのいずれかの下位アドレスが2進数で
“01”のような奇数アドレス境界にある場合は、デー
タ転送はバイトで行なう必要があり、従って転送速度が
遅くなっていた。一方、ソースおよびディスティネーシ
ョンのアドレスの両方のアドレスの下位2ビットが2進
数で“00”のケースは、ワードでデータ転送が出来る
ため、高速なデータ転送が可能であった。
【0007】また、従来のメモリにコマンド情報を置く
タイプのDMA制御装置では、ITCからの割り込み要
求信号が発生し、DMAに起動がかかったとき、まず、
メモリからDMA転送の制御のコマンド情報や、転送元
と転送先のアドレス情報を読んでから転送を行ない、ま
た、DMAデータ転送が終了した後、メモリに更新され
たDMA転送の制御のコマンド情報や、転送元と転送先
のアドレス情報を書き直していたため、オーバーへッド
サイクルが多く必要であった。
【0008】また、従来のDMA制御装置では、一回の
DMA要求に対して、一度のDMA転送を行なうだけで
あり、複雑なI/O制御装置の設定などが行なうことが
できなかった。
【0009】
【課題を解決するための手段】本発明のDMA制御装置
は、直接メモリや周辺回路のデータを転送するDMA制
御装置において、DMA転送の転送回数を保持するカウ
ントレジスタと、DMA転送のソースアドレスを保持す
るソースアドレスレジスタと、DMA転送のディスティ
ネーションアドレスを保持するディスティネーションア
ドレスレジスタと、DMA転送の転送方法を決定するD
MAコマンドレジスタと、アドレスの更新や転送回数の
計算を行なう少なくとも一つの計算回路と、DMA転送
の制御を行なうDMA制御回路と、前記計算回路の結果
を入力して転送状況を前記DMA制御回路に伝える判定
回路とから構成されることを特徴とする。
【0010】また、本発明のDMA制御装置は、前記D
MAコマンドレジスタには、一回のDMA転送が終了し
たときにその転送アドレスを更新するプログラム可能な
オフセット値を含むことを特徴とする。
【0011】また、本発明のDMA制御装置は、前記D
MAコマンドレジスタには、DMA転送で転送するデー
タサイズを指定するコマンド情報があって、前記ソース
アドレスレジスタ、または、前記ディスティネーション
アドレスレジスタが、前記データサイズの境界を示して
いない場合には、前記データサイズよりも小さなデータ
サイズで、前記境界までDMA転送を行なうことを特徴
とする。
【0012】また、本発明のDMA制御装置は、前記D
MA制御回路には、以前に動作したDMAのチャネル番
号を記憶する少なくとも一つのチャネル番号レジスタ
と、前記チャネル番号と外部からのDMA要求のチャネ
ル番号を比較する少なくとも一つのチャネル比較回路と
があり、現在のDMA要求が、前に発生したDMA要求
と一致したことを前記チャネル比較回路で判別して、一
致した場合、DMA転送のレジスタデータのセットアッ
プを省略することを特徴とする。
【0013】また、本発明のDMA制御装置は、前記D
MA制御回路には、以前に動作したDMAのチャネル番
号を記憶する少なくとも一つのチャネル番号レジスタ
と、前記チャネル番号と外部からのDMA要求のチャネ
ル番号を比較する少なくとも一つのチャネル比較回路と
があり、現在のDMA要求が、前に発生したDMA要求
と一致したことを前記チャネル比較回路で判別して、一
致した場合、DMA転送のレジスタデータのセットアッ
プ、およびリストアを省略し、一致しなかった場合、ま
ず、リストアを行なってから、セットアップを行なうこ
とを特徴とする。
【0014】また、本発明のDMA制御装置は、前記D
MAコマンドレジスタには、一回のDMA転送が終了し
たときに、続けて起動するDMAチャネル番号を指定で
きるリンクチャネル番号と、前記リンクチャネル番号に
よって指定されるDMAチャネルを起動するか、否かを
制御できるリンクイネーブルフラグを持つことを特徴と
する。
【0015】また、本発明のDMA制御装置は、これら
の制御装置を半導体基板上に構成したことを特徴とす
る。
【0016】
【発明の実施の形態】本発明の実施例として、まず上位
のシステム構成例を図2に示す。図2において、208
は同一基板上に構成された集積回路、201はCPU、
202はDMA制御装置、203は割り込みコントロー
ラ(ITCと呼ぶ)、204は内蔵メモリ、205はバ
スコントローラ(BCU)、206は少なくとも一つの
周辺回路、207は前記集積回路208の外部に接続さ
れた外部メモリ、または周辺回路である。本実施例は、
一つの実現形態を示したもので、本発明がこのシステム
構成に限られたものではない。例えば、内蔵メモリは、
複数存在する可能性があり、またそのメモリタイプもR
OM、RAM、フラッシュメモリ、DRAMなど、さま
ざまな形態がありうる。また、CPUやDMAについて
も、単独ではなく、複数のCPUやDMAが存在するこ
とが可能である。また、集積回路外部とのインターフェ
ースについても、複数のバスが存在する可能性がある。
【0017】図1に本発明のDMA制御装置の一実施例
としてその詳細を示す。101はCPUとのインターフ
ェースバス、102はコマンドベースレジスタ、103
はDMAカウントレジスタ、104はDMAコマンドレ
ジスタ、105はDMAアドレスレジスタ、106はD
MAオフセットレジスタ、107はマルチプレクサ、1
09はラッチ、108は加算・減算回路、110はラッ
チ、111は境界検出回路、113はDMA制御回路、
124は前記計算回路108を制御する信号線、114
はBCUへのデータアクセス要求信号、112は前記デ
ータアクセス要求信号114に対応するアドレスを出力
するアドレス信号、117はBCUからの応答信号、1
18はBCUとデータのやり取りを行なうデータバス、
122はITCからのDMA要求信号、119は前記D
MA要求信号122に対応するDMAチャネル番号、1
20はDMAチャネル番号を保持しておくDMAチャネ
ル番号保持レジスタ、121はITCからの現在のDM
A要求チャネル番号と前記DMAチャネル番号保持レジ
スタ120のチャネル番号とを比較するチャネル比較回
路、123はITCに対するDMA転送終了を示す制御
信号である。
【0018】このDMA制装置は以下のように動作す
る。まず、図2のシステムレベルでは、割り込みコント
ローラ(ITC)に、チップ内部、チップ外部を含めた
すべてのマスク可能な割り込み要因が集められる。IT
Cでは、割り込み要因フラグの保持、割り込み可能か、
否かが判断され、次に割り込み優先順位や、その割り込
みでCPUに割り込みを要求するのか、またはDMAに
起動要求するのかが判断される。CPUに割り込み要求
される場合は、割り込み要求信号214、および対応す
る割り込み番号215を使って、CPUに要求が行われ
る。DMAに転送要求が行く場合は、DMA要求信号1
19とDMAチャネル番号122によって、要求がIT
Cから、DMAに伝えられる。DMA制御装置202
は、あらかじめCPU201によりバス101を使っ
て、初期化されている。DMA202は起動要求を受け
ると、BCUへのデータアクセス要求信号114、前記
データアクセス要求信号114に対応するアドレスを出
力するアドレス信号112を使ってBCUにデータアク
セスを要求する。BCUは、応答信号117を使ってこ
の要求に応える。DMAのコマンド情報や、転送される
データは、必要に応じて、BCUとデータのやり取りを
行なうデータバス118を介して、DMAとBCUの間
でやり取りされる。もちろん、DMAの高速化を図るた
めに、例えば、DMA転送のデータは、BCU内に保持
されており、DMAには戻されないようなケースも、本
実施例の一つのバリエーションとして考えられる。
【0019】BCUは、DMA202と同様な信号をC
PU201からも受けている。CPU201からの要求
は、CPU要求信号209、対応するアドレスバス21
0によって行われ、BCUは応答信号212によって行
われる。データは、データバス213によってCPUと
BCUの間でやり取りされる。BCUはさらに、内蔵メ
モリ204にたいして、制御信号222、アドレス22
3、データ224を介してデータの読み書きをコントロ
ールしている。また、同様に、チップ外部の周辺回路2
07にたいして、制御信号219、アドレス220、デ
ータ221を介してデータの読み書きをコントロールし
ている。また、同様に、チップ上の周辺回路206にた
いして、制御信号217、アドレス218、データ21
6を介してデータの読み書きをコントロールしている。
DMA202からの要求は、通常は、CPU201から
の要求よりも優先順位が高く、BCU205は、両者か
らの要求が同時にあったときは、まず、DMA転送を行
なう。DMA転送は、図2において、内蔵メモリ20
4、チップ外部の周辺回路207、チップ内部の周辺回
路206のうちの任意の2つのデバイス間で実行するこ
とができる。また、データの転送先、または転送元のい
ずれにも指定することができる。また、もちろん、同一
周辺回路、または同一メモリ内でのデータ転送を行なう
こともできる。
【0020】DMA制御装置202は、DMAコマンド
情報をメモリに置くタイプなので、ITC203からD
MA要求を受けると、まず、BCU205にたいして、
DMAのコマンド情報の読み込み要求を行なう(セット
アップ動作)。このDMAコマンド情報の配置されてい
るアドレスは、コマンドベースレジスタ102にあるア
ドレスに、DMA要求122に対応するDMAチャネル
番号119から計算されるオフセット値を加えて計算さ
れる。このDMAコマンド情報の一つの例が、図3に示
される。図3で、301はDMAオフセットデータ、3
02はDMAカウントデータ、303はDMAデータサ
イズ制御、304はDMAソースアドレス制御、305
はDMAソースアドレスデータ、306は割り込み制
御、307はDMA転送制御、308はDMAディステ
ィネーション制御、309はDMAディスティネーショ
ンアドレス、310はリンクイネーブルビット、311
はリンクチャネル番号である。これらのDMAコマンド
情報は、データバス118を介して、DMAオフセット
データ301は、DMAオフセットレジスタ106へ、
DMAカウントデータ302は、DMAカウントレジ
スタ103へ設定される。
【0021】また、DMAデータサイズ制御303、D
MAソースアドレス制御304、割り込み制御306、
DMA転送制御307、DMAディスティネーション制
御308、リンクイネーブルビット310、リンクチャ
ネル番号311は、DMAコマンドレジスタ104に設
定される。また、DMAソースアドレスデータ305、
DMAディスティネーションアドレス309は、DMA
アドレスレジスタ105に設定される。
【0022】コマンドベースレジスタ102は、DMA
の初期化であらかじめCPUによって初期化されてい
る。
【0023】DMAはDMAコマンド情報を読み込んだ
後、このコマンド情報に従って、DMA転送を行なう。
まず、DMA転送制御ビット307によって、DMA転
送方式が選択される。さまざまな、転送方法があるが、
本実施例では、カウンタがゼロになるまで、DMAが連
続してデータを転送する連続転送モード( DMA転送
制御ビット307が“1”のとき)と、一回のDMA要
求に対して、データサイズ303で指定されたデータを
一回だけ転送して、次のDMA要求を待つシングル転送
モード( DMA転送制御ビット307が“0”のと
き)が選択できる。
【0024】DMA転送で転送されるデータサイズはD
MAデータサイズ303によって、指定される。本実施
例は、DMAデータサイズ303の2ビットで、ワー
ド、ハーフワード、バイトのいずれかを選択できる。例
えば、シングル転送モードのときは、一回のDMA要求
で転送されるデータ量は、このDMAデータサイズで指
定された値となる。DMAソースアドレス制御304
と、 DMAディスティネーションアドレス制御308
は、それぞれ、一回のデータ転送のあと、どのようにソ
ースとディスティネーションのアドレス情報を更新する
かを決定する。本実施例では、この2ビットの制御ビッ
トで、アドレス固定、アドレスインクリメント、アドレ
スデクリメント、アドレス+オフセットデータの4種類
が選択できるものである。ここでは、特にこの2ビット
のデコードの詳細までは規定しない。アドレス固定で
は、DMA転送後、アドレスは変化しない。アドレスイ
ンクリメントでは、データ転送後、アドレスはデータサ
イズ分が加算される。アドレスはバイト単位なので、デ
ータサイズがバイトのときは“+1”、ハーフワードの
ときは“+2”、ワードのときは“+4”が加算され
る。アドレスデクリメントでは、データ転送後、アドレ
スはデータサイズ分が減算される。アドレス+オフセッ
トデータでは、データ転送の後、アドレスには、DMA
オフセットレジスタ106の値が加算される。これによ
って、アレイ状に置かれたデータについても、DMAに
よるデータ転送が可能になる。加算・減算回路108の
入力の一方は、マルチプレクサ107の出力になってい
るが、このマルチプレクサ107によって、DMAオフ
セットレジスタ106の値か、または、DMA制御回路
113からの出力かが選択される。 DMA制御回路1
13からの出力が選択される場合は、アドレスは、固
定、インクリメント、またはデクリメントされる場合で
ある。以上のアドレスの更新方法は、ソース、およびデ
ィスティネーションの各アドレスについて、別々に指定
できるので、それだけDMA転送方法のバリエーション
は広くなる。
【0025】DMAカウントレジスタ103は、DMA
の転送回数カウンタ値を保持しており、DMA転送が行
われる度に“1”づつ減算される。以上で述べた加算、
および減算の計算は、全て、加算・減算回路108によ
って計算される。
【0026】DMA転送が終了されると、図1の各レジ
スタの値は、メモリの読み出された位置に逆に書き戻さ
れる(リストア動作)。
【0027】なお、DMA制御回路113の中には、D
MAキャッシュ・ビットがあり、このビットがオンのと
きは、最後に実行されたDMAのチャネル番号がDMA
チャネル番号保持レジスタ120に保持されており、次
に発生したDMA要求のチャネル番号は、チャネル比較
回路121によって、 DMAチャネル番号保持レジス
タ120と比較され、もし、一致した場合は、DMAの
コマンド情報のリードのみ、またはDMAのコマンド情
報のリードとライトの両方を省略し、すでに、図1の各
レジスタに保持されている値を元にDMAが実行される
機能をもつ。これは、DMAコマンド情報のキャッシュ
を持つことに等しい。なお、 DMAのコマンド情報の
リードのみを省略するか、またはDMAのコマンド情報
のリードとライトの両方を省略するかは、DMA制御回
路で選択可能である。これらのDMA制御回路の中の設
定レジスタの値は、CPUとのインターフェースバス1
01を介して、CPUが初期化することができる。
【0028】また、DMA制御装置202は、DMA転
送の際に、DMAソースアドレス、または、DMAディ
スティネーションアドレスが、DMAデータサイズ30
3の設定に対して、その境界を示していない場合には、
前記データサイズよりも小さなデータサイズで、前記境
界までDMA転送を行なう。例えば、連続転送モードで
大きなデータを転送する場合、 DMAソースアドレス
とDMAディスティネーションアドレスの最下位2ビッ
トが2進数で“01”であり、データサイズがワードで
あったとき、最初の3回のDMA転送はバイトで転送
し、アドレスの最下位2ビットが2進数で、“00”に
なった以降は、ワードでデータ転送することで、転送の
高速化を図っている。境界検出回路111は、DMA転
送回数カウント値がゼロになるのを検出するのと共に、
この最下位2ビットがデータサイズの境界にきているの
かも検出する。
【0029】また、本実施例のDMA制御装置は、DM
Aコマンドレジスタ104の中にリンクイネーブルビッ
ト310を持ち、DMAを連続して起動することができ
る。
【0030】次に起動されるのは、リンクチャネル番号
311で指定されるDMAチャネルである。従って、メ
モリ中の一定のサイズのDMAコマンド情報のブロック
の中で、DMAの動作をプログラムすることができる。
最小のメモリ領域で、より複雑なDMA動作を実現する
ことができる。たとえば、DMAの始めの数チャネル
は、それぞれのDMAの起動要因による特別な固有の動
作を行い、その後は、共通の、例えば、特定I/O周辺
回路のリセット動作などを、共通のDMAチャネルをリ
ンクすることで実現が可能である。
【0031】
【発明の効果】本発明のDMA制御装置は、前記DMA
コマンドレジスタには、一回のDMA転送が終了したと
きにその転送アドレスを更新するプログラム可能なオフ
セット値を含み、一回のDMA転送ごとのアドレスの更
新値を単純にデータサイズだけでなく、プログラム可能
な少なくとも一つのオフセットデータ値に出来るので、
より自由度の高いDMA転送機能を実現できる。複数の
オフセットデータ値を使う場合は、DMAの転送順序ご
とにことなるデータオフセット値がアドレスの変化量と
して指定されるので、さらに複雑なDMA転送が実現で
きる。これらは、3次元以上の複雑なデータ構造を持つ
メモリ中のデータから、データを周辺回路にDMAを使
って高速に転送するのに役立つ。
【0032】さらに、本発明のDMA制御装置は、前記
DMAコマンドレジスタには、DMA転送で転送するデ
ータサイズを指定するコマンド情報があって、前記ソー
スアドレスレジスタ、または、前記ディスティネーショ
ンアドレスレジスタが、前記データサイズの境界を示し
ていない場合には、前記データサイズよりも小さなデー
タサイズで、前記境界までDMA転送を行なうことがで
きる。従って、前記ソースアドレスデータ、または、前
記ディスティネーションアドレスデータが、たとえワー
ド境界にない場合にも、まず、小さなデータサイズで転
送を行ない、アドレスがより大きなデータサイズの境界
で一致したときからは、そのより大きなデータサイズで
データ転送を行なうので、より高速なDMA転送が可能
になる。
【0033】さらに、本発明のDMA制御装置は、前記
DMA制御回路には、以前に動作したDMAのチャネル
番号を記憶する少なくとも一つのチャネル番号レジスタ
と、前記チャネル番号と外部からのDMA要求のチャネ
ル番号を比較する少なくとも一つのチャネル比較回路と
があり、現在のDMA要求が、前に発生したDMA要求
と一致したことを前記チャネル比較回路で判別して、一
致した場合、DMA転送のレジスタデータのセットアッ
プを省略することができるので、オーバーヘッドは、D
MAコマンド情報の読み出し時だけとなり、従来の半分
のオーバーヘッドとなって高速化が実現できる。
【0034】さらに、本発明のDMA制御装置は、前記
DMA制御回路には、以前に動作したDMAのチャネル
番号を記憶する少なくとも一つのチャネル番号レジスタ
と、前記チャネル番号と外部からのDMA要求のチャネ
ル番号を比較する少なくとも一つのチャネル比較回路と
があり、現在のDMA要求が、前に発生したDMA要求
と一致したことを前記チャネル比較回路で判別して、一
致した場合、DMA転送のレジスタデータのセットアッ
プ、およびリストアを省略し、一致しなかった場合、ま
ず、リストアを行なってから、セットアップを行なうこ
ともできるので、同じDMA要求が続く場合は、オーバ
ーヘッドを最小にすることができる。
【0035】さらに、本発明のDMA制御装置は、前記
DMAコマンドレジスタには、一回のDMA転送が終了
したときに、続けて起動するDMAチャネル番号を指定
できるリンクチャネル番号と、前記リンクチャネル番号
によって指定されるDMAチャネルを起動するか、否か
を制御できるリンクイネーブルフラグを持つことによっ
て、最小のメモリサイズのなかで、柔軟性の高いDMA
動作を実行させることができる。
【0036】さらに、本発明のDMA制御装置は、これ
らの制御装置を半導体基板上に構成することで、速度向
上、消費電力の最小化を実現することが可能である。
【図面の簡単な説明】
【図1】本発明の一実施例を示す図。
【図2】本発明の上位システムレベルの一実施例を示す
図。
【図3】本発明のDMAコマンド情報の一実施例を示す
図。
【図4】従来の一実施例を示す図。
【符号の説明】
102:コマンドベースレジスタ 103:DMAカウントレジスタ 104:DMAコマンドレジスタ 105:DMAアドレスレジスタ 106:DMAオフセットレジスタ 108:加算・減算回路 113:DMA制御回路 201:CPU 202:DMA制御装置 203:割り込みコントローラ(ITC) 204:内蔵メモリ 205:バスコントローラ(BCU) 206:チップ上の周辺回路 207:チップ外部の周辺回路 208:集積回路

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】直接メモリや周辺回路のデータを転送する
    DMA制御装置において、DMA転送の転送回数を保持
    するカウントレジスタと、DMA転送のソースアドレス
    を保持するソースアドレスレジスタと、DMA転送のデ
    ィスティネーションアドレスを保持するディスティネー
    ションアドレスレジスタと、DMA転送の転送方法を決
    定するDMAコマンドレジスタと、アドレスの更新や転
    送回数の計算を行なう少なくとも一つの計算回路と、D
    MA転送の制御を行なうDMA制御回路と、前記計算回
    路の結果を入力して転送状況を前記DMA制御回路に伝
    える判定回路とから構成されることを特徴とするDMA
    制御装置。
  2. 【請求項2】前記DMAコマンドレジスタには、一回の
    DMA転送が終了したときにその転送アドレスを更新す
    るプログラム可能なオフセット値を含むことを特徴とす
    る請求項1記載のDMA制御装置。
  3. 【請求項3】前記DMAコマンドレジスタには、DMA
    転送で転送するデータサイズを指定するコマンド情報が
    あって、前記ソースアドレスレジスタ、または、前記デ
    ィスティネーションアドレスレジスタが、前記データサ
    イズの境界を示していない場合には、前記データサイズ
    よりも小さなデータサイズで、前記境界までDMA転送
    を行なうことを特徴とする請求項1記載のDMA制御装
    置。
  4. 【請求項4】前記DMA制御回路には、以前に動作した
    DMAのチャネル番号を記憶する少なくとも一つのチャ
    ネル番号レジスタと、前記チャネル番号と外部からのD
    MA要求のチャネル番号を比較する少なくとも一つのチ
    ャネル比較回路とがあり、現在のDMA要求が、前に発
    生したDMA要求と一致したことを前記チャネル比較回
    路で判別して、一致した場合、DMA転送のレジスタデ
    ータのセットアップを省略することを特徴とする請求項
    1記載のDMA制御装置。
  5. 【請求項5】前記DMA制御回路には、以前に動作した
    DMAのチャネル番号を記憶する少なくとも一つのチャ
    ネル番号レジスタと、前記チャネル番号と外部からのD
    MA要求のチャネル番号を比較する少なくとも一つのチ
    ャネル比較回路とがあり、現在のDMA要求が、前に発
    生したDMA要求と一致したことを前記チャネル比較回
    路で判別して、一致した場合、DMA転送のレジスタデ
    ータのセットアップ、およびリストアを省略し、一致し
    なかった場合、まず、リストアを行なってから、セット
    アップを行なうことを特徴とする請求項1記載のDMA
    制御装置。
  6. 【請求項6】前記DMAコマンドレジスタには、一回の
    DMA転送が終了したときに、続けて起動するDMAチ
    ャネル番号を指定できるリンクチャネル番号と、前記リ
    ンクチャネル番号によって指定されるDMAチャネルを
    起動するか、否かを制御できるリンクイネーブルフラグ
    を持つことを特徴とする請求項1記載のDMA制御装
    置。
  7. 【請求項7】請求項1または請求項2または請求項3ま
    たは請求項4または請求項5または請求項6記載のDM
    A制御装置に於いて、これらの制御装置を半導体基板上
    に構成したことを特徴とする請求項1記載のDMA制御
    装置。
JP10267116A 1998-09-21 1998-09-21 Dma制御装置 Pending JP2000099452A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10267116A JP2000099452A (ja) 1998-09-21 1998-09-21 Dma制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10267116A JP2000099452A (ja) 1998-09-21 1998-09-21 Dma制御装置

Publications (1)

Publication Number Publication Date
JP2000099452A true JP2000099452A (ja) 2000-04-07

Family

ID=17440297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10267116A Pending JP2000099452A (ja) 1998-09-21 1998-09-21 Dma制御装置

Country Status (1)

Country Link
JP (1) JP2000099452A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008046771A (ja) * 2006-08-11 2008-02-28 Fujitsu Ltd ダイレクトメモリアクセスコントローラ
JP2009217640A (ja) * 2008-03-11 2009-09-24 Ricoh Co Ltd データ転送制御装置
JP2010061620A (ja) * 2008-09-08 2010-03-18 Nec Electronics Corp Dma装置及びdma転送方法
KR101158780B1 (ko) * 2006-08-24 2012-06-22 마이크로칩 테크놀로지 인코포레이티드 다이렉트 메모리 액세스 컨트롤러 및 마이크로컨트롤러
KR101287285B1 (ko) 2006-06-29 2013-07-17 엘지전자 주식회사 인터럽트 루틴 처리 방법, 그 장치 및 이의 단말장치

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101287285B1 (ko) 2006-06-29 2013-07-17 엘지전자 주식회사 인터럽트 루틴 처리 방법, 그 장치 및 이의 단말장치
JP2008046771A (ja) * 2006-08-11 2008-02-28 Fujitsu Ltd ダイレクトメモリアクセスコントローラ
US8606974B2 (en) 2006-08-11 2013-12-10 Fujitsu Semiconductor Limited Direct memory access controller
KR101158780B1 (ko) * 2006-08-24 2012-06-22 마이크로칩 테크놀로지 인코포레이티드 다이렉트 메모리 액세스 컨트롤러 및 마이크로컨트롤러
JP2009217640A (ja) * 2008-03-11 2009-09-24 Ricoh Co Ltd データ転送制御装置
JP2010061620A (ja) * 2008-09-08 2010-03-18 Nec Electronics Corp Dma装置及びdma転送方法
US8065449B2 (en) 2008-09-08 2011-11-22 Renesas Electronics Corporation DMA device having plural buffers storing transfer request information and DMA transfer method

Similar Documents

Publication Publication Date Title
JP2007073052A (ja) 集積回路から外部メモリへのアクセス
JP2008009817A (ja) 半導体装置及びデータ転送方法
JPH04363746A (ja) Dma機能を有するマイクロコンピュータシステム
JPH0146946B2 (ja)
JP2000099452A (ja) Dma制御装置
JP4723334B2 (ja) Dma転送システム
JP4431492B2 (ja) 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット
JP2001125786A (ja) データ処理装置及びデータ処理システム
JP3201439B2 (ja) ダイレクト・メモリ・アクセス・制御回路
JP2847729B2 (ja) 情報処理装置
JPS6014435B2 (ja) 記憶装置
JP2001306493A (ja) データ転送制御装置及びマイクロコンピュータ
EP1193606B1 (en) Apparatus and method for a host port interface unit in a digital signal processing unit
JPH0784963A (ja) Cpuを有する半導体集積回路
JPH0261749A (ja) データ転送装置
JPH08137784A (ja) 情報処理装置
JPH03214275A (ja) 半導体集積回路
JPH04215149A (ja) プログラマブルコントローラおよびその入出力信号交換回路
JPH0991272A (ja) ベクトルデータ処理装置
JPH05225147A (ja) マルチプロセッサ型データ処理システム
JPH0962562A (ja) メモリの処理回路
JPH05120210A (ja) マイクロコンピユータ
JPH02307149A (ja) 直接メモリアクセス制御方式
JPH03263253A (ja) マルチプロセッサ数値制御装置
JPS62191958A (ja) ダイレクトメモリアクセス用コントロ−ラ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060428

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060606