JPH05108548A - Dmaコントローラ - Google Patents

Dmaコントローラ

Info

Publication number
JPH05108548A
JPH05108548A JP3266551A JP26655191A JPH05108548A JP H05108548 A JPH05108548 A JP H05108548A JP 3266551 A JP3266551 A JP 3266551A JP 26655191 A JP26655191 A JP 26655191A JP H05108548 A JPH05108548 A JP H05108548A
Authority
JP
Japan
Prior art keywords
transfer
dma
stop
register
auto
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
JP3266551A
Other languages
English (en)
Inventor
Naotaka Sugano
尚孝 菅野
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.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP3266551A priority Critical patent/JPH05108548A/ja
Priority to US07/961,185 priority patent/US5481756A/en
Publication of JPH05108548A publication Critical patent/JPH05108548A/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

Abstract

(57)【要約】 【目的】 DMA転送での転送データ数および転送先ア
ドレスを保証してCPUによるDMAコントローラの制
御を容易にすることを目的とする。 【構成】 オートイニシャライズ動作設定に際して、D
MA転送実行中の次回の転送時の先頭アドレス、転送サ
イズのどちらかまたは両方の再設定が実行されなかった
場合にオートイニシャライズ動作を停止させることを特
徴とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、転送サイズおよびまた
は転送先アドレスの両方またはどちらか一方の自動設定
により連続してDMA(Direct Memory
Access)転送が行えるDMAコントローラに関す
る。
【0002】
【従来の技術】図2に従来のDMAコントローラの一例
のブロック図を示す。従来のDMAコントローラでは、
転送サイズレジスタ9および転送先アドレスレジスタ1
4に対してCPUから設定値が書き込まれ、DMA転送
開始時に転送サイズカウンタ11へ転送サイズレジスタ
9の設定値をロードし、転送先アドレスカウンタ16へ
転送先アドレスレジスタ14の設定値をロードし、転送
サイズカウンタ11と転送先アドレスカウンタ16との
値を用いてDMA転送を実行していた。このときに、最
初のDMA転送終了から次のDMA転送開始までの期間
にCPUがDMAコントローラに対して次のDMA転送
実行時の転送サイズを転送サイズレジスタ9に、また転
送先先頭アドレスを転送先アドレスレジスタ14に設定
することによって発生するオーバヘッドを最小限に抑え
る目的で、DMA転送実行中にCPUが転送サイズレジ
スタ9と転送先アドレスレジスタ14とに次回のDMA
転送実行時の転送サイズと転送先先頭アドレスとを書き
込んでおき、DMA転送終了時に自動的に転送サイズレ
ジスタ9の設定値を転送サイズカウンタ11に、また転
送先アドレスレジスタ14の設定値を転送先アドレスカ
ウンタ16にロードし、DMA転送を継続する動作(以
下、オートイニシャライズ動作という)が用意されてい
た。図5に示す動作タイミイグ図は、この従来例の動作
を示す。
【0003】
【発明が解決しようとする課題】このような従来のDM
Aコントローラのオートイニシャライズ動作では、1回
のDMA転送開始から終了までの期間に次回のDMA転
送用の転送サイズレジスタおよび転送先アドレスレジス
タをCPUが再設定する必要があり、CPUの割り込み
処理やDMAコントローラとCPU間の優先順位等の要
因によってDMA転送終了までにレジスタの再設定が実
施されなかった場合に、新たなDMA転送要求の発生に
より各レジスタ内容の再設定の有無と関係なしに転送サ
イズレジスタの内容を転送サイズカウンタに、また転送
先アドレスレジスタの内容を転送先アドレスカウンタに
ロードしてDMA転送を開始するので、転送サイズカウ
ンタおよび転送先アドレスカウンタの値が誤ったものに
なり、次回のDMA転送での転送データ数および転送先
アドレスが保証されない欠点があった。
【0004】本発明は、このような欠点を除去するもの
で、DMA転送での転送データ数および転送先アドレス
を保証する手段をもつDMAコントローラ装置を提供す
ることを目的とする。
【0005】
【課題を解決するための手段】本発明は、DMA転送動
作が一巡する以前にこの一巡につづく一巡中に行われる
DMA転送動作の回数を示す設定値が書き込まれる転送
サイズレジスタと、DMA転送動作が一巡する以前にこ
の一巡につづく一巡中に行われるDMA転送動作にかか
わる転送先先頭アドレスが書き込まれる転送先アドレス
レジスタと、上記転送サイズレジスタの設定値で示され
た回数のDMA転送動作が終了すると、上記転送サイズ
レジスタおよび転送先アドレスレジスタのそれぞれの設
定値を用いてDMA転送動作を再開する手段およびDM
A転送動作が一巡したことを示す転送終了ステータス信
号を生成する手段とを有するDMAコントローラ制御部
とを備えたDMAコントローラにおいて、上記DMAコ
ントローラ制御部は、オートイニシャライズ動作を停止
するモードが設定されていることを示すオートイニシャ
ライズ停止動作設定信号およびDMA転送動作中に転送
サイズレジスタまたは転送先アドレスレジスタのいずれ
か一方またはこの二つのレジスタの両方に新しい設定値
が書き込まれたことを示すレジスタ書き込み確認ステー
タス信号を生成する手段を有し、上記DMAコントロー
ラ制御部で生成された転送終了ステータス信号、オート
イニシャライズ停止動作設定信号およびレジスタ書き込
み確認ステータス信号のそれぞれがアクティブであると
きに停止要求信号を生成するオートイニシャライズ動作
終了判定部と、このオートイニシャライズ動作終了判定
部からの停止要求信号に応じてオートイニシャライズ動
作を停止させる手段およびオートイニシャライズ動作を
停止させたことを示す停止ステータス信号を生成する手
段を有するオートイニシャライズ動作停止部とを備えた
ことを特徴とする。
【0006】
【作用】オートイニシャライズ動作終了判定部が転送終
了ステータス信号とオートイニシャライズ停止動作設定
信号とレジスタ書き込み確認ステータス信号とを用いて
停止ステータス信号をオートイニシャライズ動作停止部
へ入力し、この入力信号によってオートイニシャライズ
動作停止部がDMAコントローラ制御部を停止させて停
止ステータス信号を出力する。
【0007】
【実施例】以下、本発明の一実施例について図面を参照
して説明する。図1は本発明の一実施例のDMAコント
ローラを示すブロック図である。図3は図1の実施例の
DMAコントローラを応用した一つの例についての説明
用詳細ブロック図である。図4は図3の実施例の動作タ
イミイグ図である。各図において、同一の番号または記
号を付してあるものは同等の機能を持つことを示し、ま
た、以下の説明文において( )内で示す記号は図4の
タイミイグ図の参照記号に対応している。
【0008】この実施例は、図1に示すように、オート
イニシャライズ動作終了判定部1と、このオートイニシ
ャライズ動作終了判定部1からの停止要求信号5によっ
てオートイニシャライズ動作を停止させ、オートイニシ
ャライズ動作を停止させたことを示す停止ステータス信
号7を生成するオートイニシャライズ動作停止部6と、
転送サイズレジスタ9と、転送サイズカウンタ11と、
転送先アドレスレジスタ14と、転送先アドレスカウン
タ16とを含み、一回のDMA転送動作が終了したこと
を示す転送終了ステータス信号2、オートイニシャライ
ズを停止するモードが設定されていることを示すオート
イニシャライズ停止動作設定信号3およびDMA転送動
作中に転送サイズレジスタ9または転送先アドレスレジ
スタ14のいずれか一方または両方に新しい設定値が書
き込まれたことを示すレジスタ書き込み確認ステータス
信号4を生成するDMAコントローラ制御部25とを備
える。すなわち、この実施例は、DMA転送動作が一巡
する以前にこの一巡につづく一巡中に行われるDMA転
送動作の回数を示す設定値が書き込まれる転送サイズレ
ジスタ9と、DMA転送動作が一巡するする以前にこの
一巡につづく一巡中に行われるDMA転送動作にかかわ
る転送先先頭アドレスが書き込まれる転送先アドレスレ
ジスタ14と、転送サイズレジスタ9の設定値で示され
た回数のDMA転送動作が終了すると、転送サイズレジ
スタ9および転送先アドレスレジスタ14のそれぞれの
設定値を用いてDMA転送動作を再開する手段およびD
MA転送動作が一巡したことを示す転送終了ステータス
信号2を生成する手段とを有するDMAコントローラ制
御部25とを備え、さらに、本発明の特徴とする手段と
して、DMAコントローラ制御部25は、オートイニシ
ャライズ動作を停止するモードが設定されていることを
示すオートイニシャライズ停止動作設定信号3およびD
MA転送動作中に転送サイズレジスタ9または転送先ア
ドレスレジスタ14のいずれか一方またはこの二つのレ
ジスタの両方に新しい設定値が書き込まれたことを示す
レジスタ書き込み確認ステータス信号4を生成する手段
を有し、DMAコントローラ制御部25で生成された転
送終了ステータス信号2、オートイニシャライズ停止動
作設定信号3およびレジスタ書き込み確認ステータス信
号4のそれぞれがアクティブであるときに停止要求信号
5を生成するオートイニシャライズ動作終了判定部1
と、このオートイニシャライズ動作終了判定部1からの
停止要求信号5に応じてオートイニシャライズ動作を停
止させる手段およびオートイニシャライズ動作を停止さ
せたことを示す停止ステータス信号7を生成する手段を
有するオートイニシャライズ動作停止部6とを備える。
【0009】次に、この実施例の動作を説明する。DM
Aコントローラ26はDMA転送要求信号18がアクテ
ィブになると、バス解放要求信号19をアクティブにし
てCPUに外部アドレス・データバス22の解放を要求
する。バス解放要求信号19が出力されると、CPUは
バス解放承認記号20をアクティブにして外部アドレス
・データバス22を解放し、DMAコントローラ26は
DMA転送要求承認信号21をアクティブにしてDMA
転送を開始することをDMA転送要求デバイスに知らせ
る(A、B)。このときに、DMAコントローラ制御部
25は転送サイズレジスタ9の内容を転送サイズカウン
タロード信号10によって転送サイズカウンタ11にロ
ードし(I、K)、転送先アドレスレジスタ14の内容
を転送先アドレスカウンタロード信号15によって転送
先アドレスカウンタ16にロードし(J、L)、レジス
タ書き込み確認ステータス信号4をアクティブにする
(F)。DMAコントローラ制御部25は転送サイズカ
ウンタ11と転送先アドレスカウンタ16との値によっ
てDMA転送動作を実行し、転送サイズレジスタ9によ
って設定された分のデータ転送が終了すると、転送終了
ステータス信号2をアクティブにし(D)、転送終了を
オートイニシャライズ動作終了判定部1に通知する。D
MA転送実行中に転送サイズレジスタ9に対する書き込
み動作があった場合に、DMAコントローラ制御部25
は書き込みが検出された時点でレジスタ書き込み確認ス
テータス信号4をインアクティブにする(F)。オート
イニシャライズ動作終了判定部1は、転送終了ステータ
ス信号2がアクティブになった時点でオートイニシャラ
イズ停止動作設定信号3およびレジスタ書き込み確認ス
テータス信号4が共にアクティブであれば、停止要求信
号5をアクティブにしてオートイニシャライズによる連
続DMA転送動作の停止をオートイニシャライズ動作停
止部6に要求する(G)。レジスタ書き込み確認ステー
タス信号4のみがインアクティブで、オートイニシャラ
イズ停止動作設定信号3がアクティブであれば、次のD
MA転送実行時に転送サイズレジスタ9の内容を転送サ
イズカウンタ11にロードし、転送先アドレスカウンタ
16の値は前回の転送終了時の値を継続して使用し、D
MA転送を実行する(I、J、K、L)。オートイニシ
ャライズ動作停止部6は停止要求信号5がアクティブに
なると(G)、停止ステータス信号7をアクティブにし
てCPUに対してオートイニシャライズ動作の停止を通
知し(H)、新たなDMA転送要求が発生してもDMA
転送動作を開始しない(A、B)。オートイニシャライ
ズ停止動作設定信号3がアクティブでない場合は、レジ
スタ書き込み確認ステータス信号4に関係無しに従来の
DMAコントローラと同様のオートイニシャライズ動作
によるDMA転送を実行する。なお、転送先先頭アドレ
スのみ、または、転送先先頭アドレスと転送サイズとの
両方についてオートイニシャライズ停止動作を設定した
場合の本発明のDMAコントローラの動作は、上記説明
により自明である。
【0010】
【発明の効果】本発明は、以上説明したように、オート
イニシャライズ動作実行中に次回のDMA転送でのCP
Uによる転送サイズ、または転送先先頭アドレス、およ
びその両方に対する設定値の書き込みが実行されなかっ
た場合にオートイニシャライズ動作によるDMA転送動
作を自動停止させることを可能とし、DMA転送中に転
送サイズ、転送先アドレスが書き込まれなかった場合に
システムを安定な状態に保つことができ、転送サイズレ
ジスタおよび転送先先頭アドレスレジスタへの書き込み
期間の制限がなくなるので、CPUがDMAコントロー
ラ以外の処理を余裕をもって実行でき、DMAコントロ
ーラ制御を含んだCPUのプログラミングを容易にする
効果がある。
【図面の簡単な説明】
【図1】本発明実施例の構成を示すブロック構成図。
【図2】従来例の構成を示すブロック構成図。
【図3】DMAコントローラを含むシステムの構成を示
すブロック構成図。
【図4】本発明実施例の動作を示す動作タイミング図。
【図5】従来例の動作を示す動作タイミング図。
【符号の説明】
1 オートイニシャライズ動作終了判定部 2 転送終了ステータス信号 3 オートイニシャライズ停止動作設定信号 4 レジスタ書き込み確認ステータス信号 5 停止要求信号 6 オートイニシャライズ動作停止部 7 停止ステータス信号 8 書き込み信号 9 転送サイズレジスタ 10 転送サイズカウンタロード信号 11 転送サイズカウンタ 12 入力信号 13 書き込み信号 14 転送先アドレスレジスタ 15 転送先アドレスカウンタロード信号 16 転送先アドレスカウンタ 17 入力信号 18 DMA転送要求信号 19 バス解放要求信号 20 バス解放承認信号 21 DMA転送要求承認信号 22 外部アドレス・データバス 23 I/O制御信号 24 メモリ制御信号 25 DAMコントローラ制御部 26 DMAコントローラ 27 DMAコントローラ制御部 28 DMAコントローラ 29 CPU 30 I/O 31 メモリ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 DMA転送動作が一巡する以前にこの一
    巡につづく一巡中に行われるDMA転送動作の回数を示
    す設定値が書き込まれる転送サイズレジスタと、 DMA転送動作が一巡する以前にこの一巡につづく一巡
    中に行われるDMA転送動作にかかわる転送先先頭アド
    レスが書き込まれる転送先アドレスレジスタと、 上記転送サイズレジスタの設定値で示された回数のDM
    A転送動作が終了すると、上記転送サイズレジスタおよ
    び転送先アドレスレジスタのそれぞれの設定値を用いて
    DMA転送動作を再開する手段およびDMA転送動作が
    一巡したことを示す転送終了ステータス信号を生成する
    手段とを有するDMAコントローラ制御部とを備えたD
    MAコントローラにおいて、 上記DMAコントローラ制御部は、オートイニシャライ
    ズ動作を停止するモードが設定されていることを示すオ
    ートイニシャライズ停止動作設定信号およびDMA転送
    動作中に転送サイズレジスタまたは転送先アドレスレジ
    スタのいずれか一方またはこの二つのレジスタの両方に
    新しい設定値が書き込まれたことを示すレジスタ書き込
    み確認ステータス信号を生成する手段を有し、 上記DMAコントローラ制御部で生成された転送終了ス
    テータス信号、オートイニシャライズ停止動作設定信号
    およびレジスタ書き込み確認ステータス信号のそれぞれ
    がアクティブであるときに停止要求信号を生成するオー
    トイニシャライズ動作終了判定部と、 このオートイニシャライズ動作終了判定部からの停止要
    求信号に応じてオートイニシャライズ動作を停止させる
    手段およびオートイニシャライズ動作を停止させたこと
    を示す停止ステータス信号を生成する手段を有するオー
    トイニシャライズ動作停止部とを備えたことを特徴とす
    るDMAコントローラ。
JP3266551A 1991-10-15 1991-10-15 Dmaコントローラ Pending JPH05108548A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3266551A JPH05108548A (ja) 1991-10-15 1991-10-15 Dmaコントローラ
US07/961,185 US5481756A (en) 1991-10-15 1992-10-15 DMA controller mailing auto-initialize halting unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3266551A JPH05108548A (ja) 1991-10-15 1991-10-15 Dmaコントローラ

Publications (1)

Publication Number Publication Date
JPH05108548A true JPH05108548A (ja) 1993-04-30

Family

ID=17432422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3266551A Pending JPH05108548A (ja) 1991-10-15 1991-10-15 Dmaコントローラ

Country Status (2)

Country Link
US (1) US5481756A (ja)
JP (1) JPH05108548A (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5628026A (en) * 1994-12-05 1997-05-06 Motorola, Inc. Multi-dimensional data transfer in a data processing system and method therefor
US5603050A (en) * 1995-03-03 1997-02-11 Compaq Computer Corporation Direct memory access controller having programmable timing
JPH08307617A (ja) * 1995-05-10 1996-11-22 Canon Inc 通信装置
US5761532A (en) * 1995-12-29 1998-06-02 Intel Corporation Direct memory access controller with interface configured to generate wait states
US6145027A (en) * 1997-07-09 2000-11-07 Texas Instruments Incorporated DMA controller with split channel transfer capability and FIFO buffering allowing transmit channel to get ahead of corresponding receive channel by preselected number of elements
US6785743B1 (en) * 2000-03-22 2004-08-31 University Of Washington Template data transfer coprocessor
JP2001350713A (ja) * 2000-06-07 2001-12-21 Hitachi Ltd 転送制御装置
US7139848B1 (en) * 2000-12-08 2006-11-21 Xilinx, Inc. DMA protocol extension for packet-based transfer
US20050038946A1 (en) * 2003-08-12 2005-02-17 Tadpole Computer, Inc. System and method using a high speed interface in a system having co-processors
WO2010017263A1 (en) * 2008-08-06 2010-02-11 Sandbridge Technologies, Inc. Haltable and restartable dma engine

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5077664A (en) * 1988-03-08 1991-12-31 Fujitsu Limited Direct memory access controller
JPH0520263A (ja) * 1991-07-15 1993-01-29 Nec Corp データ転送制御装置

Also Published As

Publication number Publication date
US5481756A (en) 1996-01-02

Similar Documents

Publication Publication Date Title
JPH0496163A (ja) Dmaコントローラ
JPH05108548A (ja) Dmaコントローラ
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
JPS6329868A (ja) Dmaコントロ−ラ
JP2765267B2 (ja) ダイレクトメモリアクセス転送制御装置
JPS62130427A (ja) メモリリ−ド/ライト方式
JPS60263395A (ja) マイクロ・プロセツサ
JPS6354642A (ja) メモリ−制御回路
JPH0782447B2 (ja) Dmaデータ転送制御装置
JP2000207297A (ja) デ―タ転送試験システム及びそのデ―タ転送試験方法
JPH04306754A (ja) Dmaコントローラ
JP2591211B2 (ja) 高速割込み処理装置
JPS63155254A (ja) 情報処理装置
EP0503390A1 (en) Microcomputer having direct memory access mode
JPH02264339A (ja) 情報処理装置
JPH06242964A (ja) 割込み処理方式、割込み処理システム、及びマイクロコンピュータ
JPS58205258A (ja) デ−タ処理装置
JPS63155330A (ja) マイクロプログラム制御装置
JPH0481939A (ja) マイクロコンピュータの制御方式
JPH0355642A (ja) メモリー制御方式
JPH0452973B2 (ja)
JPH04330549A (ja) 制御装置
JPH0322071A (ja) データ転送処理回路
JPS61286956A (ja) デ−タ処理装置
JPS63304334A (ja) プログラム評価用マイクロ・プロセッサ