JP2001306488A - データ転送装置 - Google Patents

データ転送装置

Info

Publication number
JP2001306488A
JP2001306488A JP2000126842A JP2000126842A JP2001306488A JP 2001306488 A JP2001306488 A JP 2001306488A JP 2000126842 A JP2000126842 A JP 2000126842A JP 2000126842 A JP2000126842 A JP 2000126842A JP 2001306488 A JP2001306488 A JP 2001306488A
Authority
JP
Japan
Prior art keywords
transfer
register
parameter
data transfer
cpu
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
JP2000126842A
Other languages
English (en)
Inventor
Kazuhiko Kikuchi
和彦 菊地
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2000126842A priority Critical patent/JP2001306488A/ja
Publication of JP2001306488A publication Critical patent/JP2001306488A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】各データ転送の転送効率を落とすことなく、C
PUの負担も増加させずに複数のデータ転送を同時に実
行しうるデータ転送装置を提供する。 【解決手段】データ転送を制御するDMAC2と、DM
AC2がデータ転送に使用する転送パラメータを保持す
るレジスタ3と、CPU1からの転送パラメータを保持
するレジスタ4と、レジスタ3の転送パラメータとレジ
スタ4の転送パラメータのどちらかを選択する選択手段
7とを備え、DMAC2はレジスタ4に転送パラメータ
を保持しているか否かにより選択手段7を切り替え、レ
ジスタ4からの転送パラメータによりデータ転送を実行
するか、レジスタ3からの転送パラメータによりデータ
転送を実行するかを選択するようにして、DMAC2が
転送実行中でもCPU1からレジスタ4をアクセスでき
るようにした。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、各種の処理装置に
おいてデータ転送を行うデータ転送装置に関し、特に例
えば、データ転送における複数の入力及び出力を1つの
CPUで制御するようにしたデータ転送装置に関する。
【0002】
【従来の技術】一般にDMA(直接メモリアクセス)転
送が行われる場合、転送元アドレス、転送先アドレスお
よび転送バイト数等の転送パラメータが与えられる。そ
して、一般にこれらの転送パラメータを元にデータ転送
は行われるが、一旦DMA転送を起動するとそれが終了
するまで新しい転送パラメータをセットすることができ
ない。または、現在実行中のDMA転送や、または新た
にセットしたDMA転送が保証されない。
【0003】それに対し、共通の資源に対して複数のD
MA転送が要求される場合、1つのDMA転送が資源を
占有し、他のDMA転送が長時間停止することを防ぐた
めに、所定量のデータ転送を行った後一旦資源を解放
し、他のDMA転送がその資源を使用可能とするような
方法もある。
【0004】ここで、図5を参照して、従来のデータ転
送装置の例について説明する。図5において、CPU1
はデータ転送装置を制御する処理装置、DMAC2はC
PU1からの転送パラメータに従ってデータ転送を制御
する転送制御手段、レジスタ5はCPU1から入力した
DMAC2がデータ転送を行うための転送パラメータを
保持し、レジスタ3はDMAC2が行うデータ転送の起
動/停止を制御することを可能にする。
【0005】
【発明が解決しようとする課題】しかしながら、上記図
5に示す従来のデータ転送装置においては、DMAC2
がデータ転送を行うために使用するレジスタ5をCPU
1がアクセスしてしまうため、DMA転送を一旦起動し
た後に新しくDMA転送をセットするには、それが終了
するまで待つか、現在実行中のDMA転送を中止して転
送パラメータをセットする必要があった。
【0006】また、データ転送に関して、予め転送する
データの量が不明な場合、転送するデータの種類により
1回に転送する量を決めて、その転送が終了する度に次
の転送をセットするような方法をとることも考えられて
いた。また、該当するデータ転送以外の要因で転送する
データ量を変更したい場合やアドレスを変更したい場
合、上記のようにDMA転送を中断させる必要があっ
た。しかし、CPUがこれらの制御を行うには、CPU
にとって負担が大きくなるという問題があった。
【0007】また、データ転送の効率という側面からみ
ると、データ転送を要求する側が要求を出してからDM
A転送が起動するまでの時間が重要となる。しかし、上
記従来のデータ転送装置においては、DMACへ指示し
たとき、つまり転送パラメータの設定を行う時に、たま
たまCPUの負荷が重くこれが遅くなってしまう場合
や、複数の転送パラメータを設定するときに、その都度
データ転送を起動/停止させなければならない等、デー
タ転送の効率という点から見て非常に効率が悪いという
問題があった。
【0008】従って、従来のデータ転送装置において
は、データ転送の制御を簡略化し、複数のDMA転送を
制御する場合でもCPUの負荷を増加させないこと。及
び、データ転送の実行を停止させることなく転送パラメ
ータを変更可能にし、データ転送の高効率化を図ること
が課題であった。
【0009】本発明は、上記従来の問題を解決するため
になされたもので、複数のデータ転送を同時に実行する
場合でも、各データ転送の転送効率を落とすことなく、
CPUの負担も増加させないデータ転送装置を提供する
ものである。
【0010】
【課題を解決するための手段】本発明におけるデータ転
送装置は、データ転送を制御する転送制御手段と、前記
転送制御手段がデータ転送に使用する転送パラメータを
保持する第1のレジスタと、CPUからの転送パラメー
タを保持する第2のレジスタと、前記CPUから前記第
2のレジスタに書き込みがあったことを記録する第3の
レジスタと、前記第1のレジスタに保持された転送パラ
メータと前記第2のレジスタに保持された転送パラメー
タのどちらかを選択する選択手段とを備え、前記転送制
御手段は前記第2のレジスタに転送パラメータを記録し
ているか否かにより前記選択手段を切り替え、前記第2
のレジスタからの転送パラメータによりデータ転送を実
行するか、前記第1のレジスタからの転送パラメータに
よりデータ転送を実行するかを選択するという構成を有
している。この構成により、DMACがデータ転送を実
行中であっても新たな転送パラメータの設定を可能とす
ることにより、CPU側が転送パラメータを書き込むタ
イミングの制約が緩和される。また、DMACを停止さ
せる必要がないため、CPUが転送パラメータを設定す
る際のDMACへの制御が不要となることから、制御の
簡略化及び時間の短縮を図ることができる。さらに、D
MACを停止させる必要がないため、データ転送の高効
率化を図ることができる。
【0011】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからの転送パラメータを保持する第2
のレジスタと、前記CPUから前記第2のレジスタに書
き込みがあったことを記録する第3のレジスタと、前記
第1のレジスタからの転送パラメータと前記第2のレジ
スタからの転送パラメータとから新たな転送パラメータ
を演算する演算手段と、前記第1のレジスタからの転送
パラメータと前記演算手段からの新たな転送パラメータ
のどちらかを選択する選択手段とを備え、前記転送制御
手段は前記第2のレジスタに転送パラメータを記録して
いるか否かにより前記選択手段を切り替え、前記演算手
段からの新たな転送パラメータによりデータ転送を実行
するか、前記第1のレジスタからの転送パラメータによ
りデータ転送を実行するかを選択するという構成を有し
ている。この構成により、CPU側が転送パラメータを
書き込むタイミングの制約が緩和され、制御の簡略化及
び時間の短縮を図ることができ、データ転送の高効率化
を図ることができる上、実行中の転送パラメータに対す
る演算を付加すること、例えば、現在転送中のDMA転
送命令に対してアドレス空間をシフトすること、などの
命令を実現することが可能となる。
【0012】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからアクセスしてセットする第2のレ
ジスタと、前記第1のレジスタからの転送パラメータに
対して所定の演算を行い新たな転送パラメータを生成す
る演算手段と、前記第1のレジスタからの転送パラメー
タと前記演算手段からの新たな転送パラメータのどちら
かを選択する選択手段とを備え、前記転送制御手段は前
記第2のレジスタがセット状態にあるか否かにより前記
選択手段を切り替え、前記演算手段からの新たな転送パ
ラメータによりデータ転送を実行するか、前記第1のレ
ジスタからの転送パラメータによりデータ転送を実行す
るかを選択するという構成を有している。この構成によ
り、CPU側が転送パラメータを書き込むタイミングの
制約が緩和され、制御の簡略化及び時間の短縮を図るこ
とができ、データ転送の高効率化を図ることができる
上、予め決められた演算であれば、より簡単な回路構成
で、実行中の転送パラメータに対する演算を付加するこ
と、例えば、現在転送中のDMA転送命令に対してアド
レス空間をシフトすること、などの命令を実現すること
が可能となる。
【0013】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからアクセスしてセットする第2のレ
ジスタと、前記第1のレジスタからの転送パラメータと
予め決められた定数のどちらかを選択する選択手段とを
備え、前記転送制御手段は前記第2のレジスタがセット
状態にあるか否かにより前記選択手段を切り替え、前記
定数によりデータ転送を実行するか、前記第1のレジス
タからの転送パラメータによりデータ転送を実行するか
を選択するという構成を有している。この構成により、
CPU側が転送パラメータを書き込むタイミングの制約
が緩和され、制御の簡略化及び時間の短縮を図ることが
でき、データ転送の高効率化を図ることができる上、例
えば、所定のデータ転送を継続させるといった命令を実
現することが可能となる。
【0014】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからの転送パラメータを保持する第2
のレジスタと、前記CPUから前記第2のレジスタに書
き込みがあったことを記録する第3のレジスタと、前記
第1のレジスタに保持された転送パラメータと前記第2
のレジスタに保持された転送パラメータのどちらかを選
択する選択手段とを備え、前記転送制御手段は前記選択
手段の切り替えにより、前記第3のレジスタが前記第2
のレジスタによる転送パラメータの保持を記録している
場合、前記第2のレジスタからの転送パラメータにより
データ転送を実行するとともに前記第3のレジスタをク
リアし、前記第3のレジスタが前記第2のレジスタによ
る転送パラメータの保持を記録していない場合、前記第
1のレジスタからの転送パラメータによりデータ転送を
実行するという構成を有している。この構成により、D
MACがデータ転送を実行中であっても新たな転送パラ
メータの設定を可能とすることにより、CPU側が転送
パラメータを書き込むタイミングの制約が緩和される。
また、DMACを停止させる必要がないため、CPUが
転送パラメータを設定する際のDMACへの制御が不要
となることから、制御の簡略化及び時間の短縮を図るこ
とができる。さらに、DMACを停止させる必要がない
ため、データ転送の高効率化を図ることができる。
【0015】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからの転送パラメータを保持する第2
のレジスタと、前記CPUから前記第2のレジスタに書
き込みがあったことを記録する第3のレジスタと、前記
第1のレジスタからの転送パラメータと前記第2のレジ
スタからの転送パラメータとから新たな転送パラメータ
を演算する演算手段と、前記第1のレジスタからの転送
パラメータと前記演算手段からの新たな転送パラメータ
のどちらかを選択する選択手段とを備え、前記転送制御
手段は前記選択手段の切り替えにより、前記第3のレジ
スタが前記第2のレジスタによる転送パラメータの保持
を記録している場合、前記演算手段からの新たな転送パ
ラメータによりデータ転送を実行するとともに前記第3
のレジスタをクリアし、前記第3のレジスタが前記第2
のレジスタによる転送パラメータの保持を記録していな
い場合、前記第1のレジスタからの転送パラメータによ
りデータ転送を実行するという構成を有している。この
構成により、CPU側が転送パラメータを書き込むタイ
ミングの制約が緩和され、制御の簡略化及び時間の短縮
を図ることができ、データ転送の高効率化を図ることが
できる上、実行中の転送パラメータに対する演算を付加
すること、例えば、現在実行中のDMA命令に対してさ
らに何バイト転送するという命令を実現すること、など
が可能となり、さらなるCPUへの負担軽減、制御の簡
略化、制御時間短縮、データ転送の効率化を図ることが
できる。
【0016】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからアクセスしてセットする第2のレ
ジスタと、前記第1のレジスタからの転送パラメータに
対して所定の演算を行い新たな転送パラメータを生成す
る演算手段と、前記第1のレジスタからの転送パラメー
タと前記演算手段からの新たな転送パラメータのどちら
かを選択する選択手段とを備え、前記転送制御手段は前
記選択手段の切り替えにより、前記第2のレジスタがセ
ット状態の場合、前記演算手段からの新たな転送パラメ
ータによりデータ転送を実行するとともに前記第2のレ
ジスタをクリアし、前記第2のレジスタがセット状態で
ない場合、前記第1のレジスタからの転送パラメータに
よりデータ転送を実行するという構成を有している。こ
の構成により、CPU側が転送パラメータを書き込むタ
イミングの制約が緩和され、制御の簡略化及び時間の短
縮を図ることができ、データ転送の高効率化を図ること
ができる上、予め決められた演算であれば、より簡単な
回路構成で、さらなるCPUへの負担軽減、制御の簡略
化、制御時間短縮、データ転送の効率化を図ることがで
きる。
【0017】本発明におけるデータ転送装置は、データ
転送を制御する転送制御手段と、前記転送制御手段がデ
ータ転送に使用する転送パラメータを保持する第1のレ
ジスタと、CPUからアクセスしてセットする第2のレ
ジスタと、前記第1のレジスタからの転送パラメータと
予め決められた定数のどちらかを選択する選択手段とを
備え、前記転送制御手段は前記選択手段の切り替えによ
り、前記第2のレジスタがセット状態の場合、前記定数
によりデータ転送を実行するとともに前記第2のレジス
タをクリアし、前記第2のレジスタがセット状態でない
場合、前記第1のレジスタからの転送パラメータにより
データ転送を実行するという構成を有している。この構
成により、CPU側が転送パラメータを書き込むタイミ
ングの制約が緩和され、制御の簡略化及び時間の短縮を
図ることができ、データ転送の高効率化を図ることがで
きる上、転送パラメータを所定の値にすることを可能に
することにより、例えば、何らかの要因が発生したとき
に、予め決められたデータ転送を行うような命令を実現
することが可能となり、さらなるCPUへの負担軽減、
制御の簡略化、制御時間短縮、データ転送の効率化を図
ることができる。
【0018】本発明におけるデータ転送装置は、前記デ
ータ転送装置は半導体集積回路上に構成するという構成
を有している。この構成により、CPU側が転送パラメ
ータを書き込むタイミングの制約が緩和され、制御の簡
略化及び時間の短縮を図ることができ、データ転送の高
効率化を図ることができる上、実行中の転送パラメータ
に対する演算を付加することにより、CPUへの負担軽
減、制御の簡略化、制御時間短縮、データ転送の効率化
を図ることができることに加え、ディスクリート部品で
構成する場合と比較して、省電力化、装置の小型化、高
速化、不要輻射の低減、などを図ることができる。
【0019】
【発明の実施の形態】以下、図1乃至図4に基づき、本
発明の第1乃至第4の実施の形態を詳細に説明する。 (第1の実施の形態)まず、図1を参照して、本発明の
第1の実施の形態におけるデータ転送装置について説明
する。図1において、DMAC2はデータ転送を制御す
る転送制御手段、レジスタ3はDMAC2がデータ転送
を実行するための転送パラメータを保持する第1のレジ
スタ、レジスタ4はCPU1がアクセスしてCPU1か
らDMAC2がデータ転送を実行するための転送パラメ
ータを保持する第2のレジスタであり、レジスタ5はC
PU1からレジスタ4に転送パラメータの書き込みがあ
ったことを保持する第3のレジスタ、レジスタ6はDM
AC2のデータ転送の許可/禁止を指示するレジスタで
ある。また、SW7はレジスタ3に保持された転送パラ
メータとレジスタ4に保持された転送パラメータのいず
れかを選択するセレクタ(選択手段)であり、SW8は
CPU1からレジスタ4に対するアクセスを可能にする
セレクタである。
【0020】ここで、レジスタ4はDMAC2に転送パ
ラメータを供給することができるが、CPU1からのア
クセスを最優先する。また、レジスタ3は、本実施の形
態では、DMAC2からアクセスするようにしている
が、CPU1からもアクセスできるようにしてある場合
に、DMAC2が最優先のアクセス権を持つことにすれ
ば、レジスタ3を双方からアクセスできるように構成し
てもよい。
【0021】次に、図1を参照して、本発明の第1の実
施の形態におけるデータ転送装置の動作を説明する。ま
ず、CPU1がレジスタ4に対してデータ転送の転送パ
ラメータを書き込み、レジスタ6によってデータ転送を
許可する。このとき、レジスタ5はレジスタ4にCPU
1からの書き込みがあったことを保持する。最初のデー
タ転送要求があったときに、レジスタ5には、レジスタ
4に対して書き込みがあったことが保持されているの
で、DMAC2はそれを認識し、レジスタ4から転送パ
ラメータを読み出し、これに基づいてデータ転送を行
う。同時に、レジスタ5をクリアして、次のデータ転送
時にはレジスタ4の転送パラメータを選択しないように
する。
【0022】データ転送により更新された転送パラメー
タは、レジスタ3およびレジスタ4に書き戻される。次
に転送要求があった場合、DMAC2はレジスタ3から
転送パラメータを読み出し、該当するデータ転送を行
う。更新された転送パラメータは、レジスタ3およびレ
ジスタ4に書き戻される。CPU1は、更新された転送
パラメータをレジスタ4からいつでも読み出すことがで
きる。この場合でもDMAC2はレジスタ3の転送パラ
メータによりデータ転送を行うことができる。また、レ
ジスタ3はDMAC2からのアクセスが最優先されるの
で、DMAC2は、データ転送要求があったときに、こ
こに保持されている転送パラメータを使用して、直ちに
データ転送を実行することができる。
【0023】CPU1は、DMAC2がデータ転送を実
行中であっても、レジスタ4に対しCPU1から新しい
転送パラメータの書き込みを実行することができる。こ
のときでも、DMAC2が実行しているデータ転送には
影響を与えない。レジスタ4への書き込みの後にDMA
C2に対してデータ転送の要求があったときは、レジス
タ5がCPU1からレジスタ4への書き込みがあったこ
とを保持しているので、DMAC2はレジスタ5の情報
に基づきレジスタ4から読み出した転送パラメータによ
りデータ転送を実行することができる。
【0024】上記のように、DMAC2がデータ転送を
実行中であっても新たな転送パラメータの設定を可能に
することにより、CPU1が転送パラメータを書き込む
タイミングの制約が緩和される。また、DMAC2を停
止させる必要がないため、CPU1が転送パラメータを
設定する際のDMAC2への制御が不要となることか
ら、制御の簡略化および時間短縮を図ることができる。
さらに、データ転送の高効率化を図ることができる。
【0025】(第2の実施の形態)次に、図2を参照し
て、本発明の第2の実施の形態におけるデータ転送装置
について説明する。図2において、DMAC2はデータ
転送を制御する転送制御手段、レジスタ3はDMAC2
がデータ転送を実行するための転送パラメータを保持す
る第1のレジスタ、レジスタ4はCPU1がアクセスし
てCPU1からDMAC2がデータ転送を実行するため
の転送パラメータを保持する第2のレジスタであり、レ
ジスタ5はCPU1からレジスタ4に転送パラメータの
書き込みがあったことを保持する第3のレジスタ、レジ
スタ6はDMAC2のデータ転送の許可/禁止を指示
し、SW7はレジスタ3に保持された転送パラメータと
演算器9が出力する転送パラメータとを選択するセレク
タ(選択手段)であり、SW8はCPU1からレジスタ
4に対するアクセスを可能にするセレクタである。
【0026】演算器9はレジスタ3に保持された転送パ
ラメータとレジスタ4に保持された転送パラメータとか
ら新たに転送パラメータを生成する演算器である。ま
た、レジスタ3は、この実施の形態では、DMAC2か
らアクセスするようにしているが、CPU1からもアク
セスできるようにしてある場合に、DMAC2が最優先
のアクセス権を持つことにすれば、レジスタ3を双方か
らアクセスできる構成になっていてもよい。
【0027】次に、図2を参照して、本発明の第2の実
施の形態におけるデータ転送装置の動作を説明する。ま
ず前提条件として、レジスタ3に転送パラメータが設定
されているものとする。これは、CPU1から書き込ん
だものとしてもよく、またはDMAC2が書き戻したも
のでもよい。CPU1がレジスタ4に対して転送パラメ
ータを書き込み、レジスタ6によりデータ転送を許可す
る。このときレジスタ5はレジスタ4にCPU1からの
書き込みがあったことを保持する。最初のデータ転送要
求があったときに、レジスタ5には、レジスタ4に対し
て書き込みがあったことが保持されているので、DMA
C2はそれを認識し、演算器9から出力した転送パラメ
ータに基づいてデータ転送を行う。同時に、レジスタ5
をクリアして、次のデータ転送時には演算器9からの転
送パラメータを選択しないようにする。
【0028】データ転送により更新された転送パラメー
タは、レジスタ3およびレジスタ4に書き戻される。次
に転送要求があった場合、DMAC2はレジスタ3から
転送パラメータを読み出し、該当するデータ転送を行
う。更新された転送パラメータは、レジスタ3およびレ
ジスタ4に書き戻される。CPU1は、更新された転送
パラメータをレジスタ4からいつでも読み出すことがで
きる。この場合でもDMAC2はレジスタ3の転送パラ
メータによりデータ転送を行うことができる。また、レ
ジスタ3はDMAC2からのアクセスが最優先されるの
で、DMAC2は、データ転送要求があったときに、こ
こに保持されている転送パラメータを使用して、直ちに
データ転送を実行することができる。
【0029】CPU1は、DMAC2がデータ転送を実
行中であっても、レジスタ4に対しCPU1から新しい
転送パラメータの書き込みを実行することができる。こ
のときでも、DMAC2が実行しているデータ転送には
影響を与えない。レジスタ4への書き込みの後にDMA
C2に対してデータ転送の要求があったときは、レジス
タ5がCPU1からレジスタ4への書き込みがあったこ
とを保持しているので、DMAC2はレジスタ5の情報
に基づき演算器9から出力した転送パラメータによりデ
ータ転送を実行することができる。
【0030】このように、DMAC2がデータ転送を実
行中であっても新たな転送パラメータの設定を可能に
し、また実行中の転送パラメータに対する演算を付加す
ることにより、例えば、現在転送中のデータ転送命令に
対してさらに何バイト転送を付加するという命令を実現
することが可能となり、更に、CPU1に対する負担軽
減、制御の簡略化、制御時間短縮及びデータ転送の高効
率化を図ることができる。また、演算器9を使用するこ
とにより、例えば、現在実行中のデータ転送に対して、
例えば、アドレス空間をシフトして転送する、といった
命令を実現することが可能となる。
【0031】(第3の実施の形態)次に、図3を参照し
て、本発明の第3の実施の形態におけるデータ転送装置
について説明する。図3において、DMAC2はデータ
転送を制御する転送制御手段、レジスタ3はDMAC2
がデータ転送を実行するための転送パラメータを保持す
る第1のレジスタ、レジスタ4はCPU1がアクセスし
てセットする第2のレジスタであり、レジスタ6はDM
AC2のデータ転送の許可/禁止を指示するレジスタで
ある。また、SW7はレジスタ3に保持された転送パラ
メータと演算器9が出力する転送パラメータのどちらか
を選択するセレクタ(選択手段)である。
【0032】演算器9はレジスタ3に保持された転送パ
ラメータを演算して新たな転送パラメータを生成する演
算器である。また、レジスタ4はCPU1からのアクセ
スを最優先し、またレジスタ3は、この実施の形態で
は、DMAC2からアクセスするようにしているが、C
PU1からもアクセスできるようにしてある場合に、D
MAC2が最優先のアクセス権を持つことにすれば、レ
ジスタ3を双方からアクセスできる構成になっていても
よい。
【0033】次に、図3を参照して、本発明の第3の実
施の形態におけるデータ転送装置の動作を説明する。ま
ず前提条件として、レジスタ3に転送パラメータが設定
されているものとする。レジスタ3の転送パラメータ
は、CPU1から書き込み読み出しできるようにしてあ
る場合、CPU1から書き込んだものとしてもよく、ま
たはDMAC2が書き戻したものでもよい。また、レジ
スタ4は初期状態として「ロー」とし、この状態ではD
MAC2がレジスタ3を選択するものとする。そして、
CPU1はレジスタ6によりデータ転送を許可する。D
MAC2はデータ転送の要求があればレジスタ3が保持
している転送パラメータを読み込みデータ転送を行う。
CPU1がレジスタ4に対して「ハイ」をセットした場
合、DMAC2は演算器9の出力を転送パラメータとし
てデータ転送を行い、同時にレジスタ4をクリアして、
次のデータ転送時には、DMAC2は自動的にレジスタ
3の転送パラメータを使用するようにする。
【0034】データ転送により更新された転送パラメー
タは、レジスタ3に書き戻される。次に転送要求があっ
た場合、DMAC2はレジスタ3から転送パラメータを
読み出し、該当するデータ転送を行う。更新された転送
パラメータは、レジスタ3に書き戻される。また、レジ
スタ3は、CPU1からもアクセスできるようにしてあ
る場合でも、DMAC2からのアクセスが最優先である
ため、データ転送の要求があったときは、レジスタ3に
保持されている転送パラメータを使用して直ちにデータ
転送を実行することができる。レジスタ3はDMAC2
のアクセスが最優先であるので、CPU1からの転送パ
ラメータの読み出しは、可能な場合でも制限される。ま
た、CPU1は、DMAC2がデータ転送を実行中であ
っても、レジスタ4に対しアクセスを実行することがで
きる。このときでも、DMAC2が実行しているデータ
転送には影響を与えない。
【0035】このように、DMAC2がデータ転送を実
行中であっても、実行中の転送パラメータに対する演算
を付加することにより、例えば、現在転送中のデータ転
送命令に対してさらに何バイト転送を追加する、という
ような命令を実現することが可能となり、CPU1に対
する負担軽減、制御の簡略化、制御時間短縮及びデータ
転送の高効率化を図ることができる。また、演算器9を
使用することにより、例えば、現在実行中のデータ転送
に対して、例えば、アドレス空間をシフトして転送す
る、といったような命令を実現することが可能となる。
【0036】(第4の実施の形態)次に、図4を参照し
て、本発明の第4の実施の形態におけるデータ転送装置
について説明する。図4において、DMAC2はデータ
転送を制御する転送制御手段、レジスタ3はDMAC2
がデータ転送を実行するための転送パラメータを保持す
る第1のレジスタ、レジスタ4はCPU1がアクセスし
てセットする第2のレジスタであり、レジスタ6はDM
AC2のデータ転送の許可/禁止を指示するレジスタで
ある。また、SW7はレジスタ3に保持された転送パラ
メータと定数10のどちらかを選択するセレクタ(選択
手段)である。定数10は、例えば、アドレスやバイト
数など一定のパラメータを格納したレジスタにより構成
してもよい。また、レジスタ4はCPU1からのアクセ
スを最優先し、レジスタ3は、この実施の形態では、D
MAC2からアクセスするようにしているが、CPU1
からもアクセスできるようにしてある場合に、DMAC
2が最優先のアクセス権を持つことにすれば、レジスタ
3を双方からアクセスできる構成になっていてもよい。
【0037】次に、図4を参照して、本発明の第4の実
施の形態におけるデータ転送装置の動作を説明する。ま
ず前提条件として、レジスタ3に転送パラメータが設定
されているものとする。レジスタ3の転送パラメータ
は、CPU1から書き込み読み出しできるようにしてあ
る場合、CPU1から書き込んだものとしてもよく、ま
たはDMAC2が書き戻したものでもよい。また、レジ
スタ4は初期状態として「ロー」にし、この状態ではD
MAC2がレジスタ3を選択するものとする。そして、
CPU1はレジスタ6によりデータ転送を許可する。
【0038】DMAC2はデータ転送の要求があればレ
ジスタ3が保持している転送パラメータを読み込みデー
タ転送を行う。CPU1がレジスタ4に対して「ハイ」
を書き込んだ場合、DMAC2は予め決められている定
数10を転送パラメータとしてデータ転送を行い、同時
にレジスタ4をクリアして、次のデータ転送時には定数
10を選択しないようにする。なお、この定数10は、
レジスタ等書換え可能なものに格納しておけば、いつで
も容易に書換えることができ、また複数の定数を選択使
用しうるようにすることもできる。
【0039】データ転送により更新された転送パラメー
タは、レジスタ3に書き戻される。次に転送要求があっ
た場合、DMAC2はレジスタ3から転送パラメータを
読み出し、該当するデータ転送を行う。更新された転送
パラメータは、レジスタ3に書き戻される。また、レジ
スタ3は、CPU1からもアクセスできるようにしてあ
る場合でも、DMAC2からのアクセスが最優先である
ので、データ転送の要求があったときは、レジスタ3に
保持されている転送パラメータを使用して直ちにデータ
転送を実行することができる。レジスタ3はDMAC2
からのアクセスが最優先であるから、CPU1からの転
送パラメータの読み出しは、可能な場合でも、制限され
る。また、CPU1は、DMAC2がデータ転送を実行
中であっても、レジスタ4に対しCPU1からアクセス
を実行することができる。このときでも、DMAC2が
実行しているデータ転送には影響を与えない。
【0040】第4の実施の形態においては、定数10を
使用することにより、例えば、DMAC2がデータ転送
の実行中であっても、実行したい転送パラメータを自動
的に所定の値に設定することができるので、予め決めら
れたデータ転送を簡単に実行できることにより、CPU
1への負担軽減、制御の簡略化、制御時間短縮、データ
転送の高効率化を図ることができる。
【0041】
【発明の効果】本発明におけるデータ転送装置は、上記
のように構成され、特にパラメータを格納するレジスタ
を設け、DMACがデータ転送を実行中であってもCP
Uが新たなパラメータをレジスタに格納できるようにし
たことにより、CPUがパラメータを書き込むタイミン
グの制約が緩和され、その際にDMACを停止させる必
要がないため、CPUがパラメータを設定する際のDM
ACへの制御が不要となることから、制御の簡略化及び
時間の短縮を図ることができる。さらに、DMACを停
止させる必要がないため、データ転送の高効率化を図る
ことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるデータ転送
装置の構成例を示すブロック図、
【図2】本発明の第2の実施の形態におけるデータ転送
装置の構成例を示すブロック図、
【図3】本発明の第3の実施の形態におけるデータ転送
装置の構成例を示すブロック図、
【図4】本発明の第4の実施の形態におけるデータ転送
装置の構成例を示すブロック図、
【図5】従来のDMACを用いたデータ転送装置の構成
例を示すブロック図。
【符号の説明】
1 CPU 2 転送制御手段(DMAC) 3、4、5、6 レジスタ 7、8 スイッチ(SW) 9 演算部 10 定数

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからの転送パラメ
    ータを保持する第2のレジスタと、前記CPUから前記
    第2のレジスタに書き込みがあったことを記録する第3
    のレジスタと、前記第1のレジスタに保持された転送パ
    ラメータと前記第2のレジスタに保持された転送パラメ
    ータのどちらかを選択する選択手段とを備え、前記転送
    制御手段は前記第2のレジスタに転送パラメータを記録
    しているか否かにより前記選択手段を切り替え、前記第
    2のレジスタからの転送パラメータによりデータ転送を
    実行するか、前記第1のレジスタからの転送パラメータ
    によりデータ転送を実行するかを選択することを特徴と
    するデータ転送装置。
  2. 【請求項2】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからの転送パラメ
    ータを保持する第2のレジスタと、前記CPUから前記
    第2のレジスタに書き込みがあったことを記録する第3
    のレジスタと、前記第1のレジスタからの転送パラメー
    タと前記第2のレジスタからの転送パラメータとから新
    たな転送パラメータを演算する演算手段と、前記第1の
    レジスタからの転送パラメータと前記演算手段からの新
    たな転送パラメータのどちらかを選択する選択手段とを
    備え、前記転送制御手段は前記第2のレジスタに転送パ
    ラメータを記録しているか否かにより前記選択手段を切
    り替え、前記演算手段からの新たな転送パラメータによ
    りデータ転送を実行するか、前記第1のレジスタからの
    転送パラメータによりデータ転送を実行するかを選択す
    ることを特徴とするデータ転送装置。
  3. 【請求項3】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからアクセスして
    セットする第2のレジスタと、前記第1のレジスタから
    の転送パラメータに対して所定の演算を行い新たな転送
    パラメータを生成する演算手段と、前記第1のレジスタ
    からの転送パラメータと前記演算手段からの新たな転送
    パラメータのどちらかを選択する選択手段とを備え、前
    記転送制御手段は前記第2のレジスタがセット状態にあ
    るか否かにより前記選択手段を切り替え、前記演算手段
    からの新たな転送パラメータによりデータ転送を実行す
    るか、前記第1のレジスタからの転送パラメータにより
    データ転送を実行するかを選択することを特徴とするデ
    ータ転送装置。
  4. 【請求項4】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからアクセスして
    セットする第2のレジスタと、前記第1のレジスタから
    の転送パラメータと予め決められた定数のどちらかを選
    択する選択手段とを備え、前記転送制御手段は前記第2
    のレジスタがセット状態にあるか否かにより前記選択手
    段を切り替え、前記定数によりデータ転送を実行する
    か、前記第1のレジスタからの転送パラメータによりデ
    ータ転送を実行するかを選択することを特徴とするデー
    タ転送装置。
  5. 【請求項5】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからの転送パラメ
    ータを保持する第2のレジスタと、前記CPUから前記
    第2のレジスタに書き込みがあったことを記録する第3
    のレジスタと、前記第1のレジスタに保持された転送パ
    ラメータと前記第2のレジスタに保持された転送パラメ
    ータのどちらかを選択する選択手段とを備え、前記転送
    制御手段は前記選択手段の切り替えにより、前記第3の
    レジスタが前記第2のレジスタによる転送パラメータの
    保持を記録している場合、前記第2のレジスタからの転
    送パラメータによりデータ転送を実行するとともに前記
    第3のレジスタをクリアし、前記第3のレジスタが前記
    第2のレジスタによる転送パラメータの保持を記録して
    いない場合、前記第1のレジスタからの転送パラメータ
    によりデータ転送を実行することを特徴とするデータ転
    送装置。
  6. 【請求項6】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからの転送パラメ
    ータを保持する第2のレジスタと、前記CPUから前記
    第2のレジスタに書き込みがあったことを記録する第3
    のレジスタと、前記第1のレジスタからの転送パラメー
    タと前記第2のレジスタからの転送パラメータとから新
    たな転送パラメータを演算する演算手段と、前記第1の
    レジスタからの転送パラメータと前記演算手段からの新
    たな転送パラメータのどちらかを選択する選択手段とを
    備え、前記転送制御手段は前記選択手段の切り替えによ
    り、前記第3のレジスタが前記第2のレジスタによる転
    送パラメータの保持を記録している場合、前記演算手段
    からの新たな転送パラメータによりデータ転送を実行す
    るとともに前記第3のレジスタをクリアし、前記第3の
    レジスタが前記第2のレジスタによる転送パラメータの
    保持を記録していない場合、前記第1のレジスタからの
    転送パラメータによりデータ転送を実行することを特徴
    とするデータ転送装置。
  7. 【請求項7】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからアクセスして
    セットする第2のレジスタと、前記第1のレジスタから
    の転送パラメータに対して所定の演算を行い新たな転送
    パラメータを生成する演算手段と、前記第1のレジスタ
    からの転送パラメータと前記演算手段からの新たな転送
    パラメータのどちらかを選択する選択手段とを備え、前
    記転送制御手段は前記選択手段の切り替えにより、前記
    第2のレジスタがセット状態の場合、前記演算手段から
    の新たな転送パラメータによりデータ転送を実行すると
    ともに前記第2のレジスタをクリアし、前記第2のレジ
    スタがセット状態でない場合、前記第1のレジスタから
    の転送パラメータによりデータ転送を実行することを特
    徴とするデータ転送装置。
  8. 【請求項8】データ転送を制御する転送制御手段と、前
    記転送制御手段がデータ転送に使用する転送パラメータ
    を保持する第1のレジスタと、CPUからアクセスして
    セットする第2のレジスタと、前記第1のレジスタから
    の転送パラメータと予め決められた定数のどちらかを選
    択する選択手段とを備え、前記転送制御手段は前記選択
    手段の切り替えにより、前記第2のレジスタがセット状
    態の場合、前記定数によりデータ転送を実行するととも
    に前記第2のレジスタをクリアし、前記第2のレジスタ
    がセット状態でない場合、前記第1のレジスタからの転
    送パラメータによりデータ転送を実行することを特徴と
    するデータ転送装置。
  9. 【請求項9】前記データ転送装置は半導体集積回路上に
    構成したことを特徴とする請求項1乃至8のいずれかに
    記載のデータ転送装置。
JP2000126842A 2000-04-27 2000-04-27 データ転送装置 Pending JP2001306488A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000126842A JP2001306488A (ja) 2000-04-27 2000-04-27 データ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000126842A JP2001306488A (ja) 2000-04-27 2000-04-27 データ転送装置

Publications (1)

Publication Number Publication Date
JP2001306488A true JP2001306488A (ja) 2001-11-02

Family

ID=18636536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000126842A Pending JP2001306488A (ja) 2000-04-27 2000-04-27 データ転送装置

Country Status (1)

Country Link
JP (1) JP2001306488A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007099659A1 (ja) * 2006-03-01 2007-09-07 Matsushita Electric Industrial Co., Ltd. データ転送装置及びデータ転送方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007099659A1 (ja) * 2006-03-01 2007-09-07 Matsushita Electric Industrial Co., Ltd. データ転送装置及びデータ転送方法
JPWO2007099659A1 (ja) * 2006-03-01 2009-07-16 パナソニック株式会社 データ転送装置及びデータ転送方法
CN101361050B (zh) * 2006-03-01 2010-09-22 松下电器产业株式会社 数据传输装置和数据传输方法
US7861012B2 (en) 2006-03-01 2010-12-28 Panasonic Corporation Data transmitting device and data transmitting method

Similar Documents

Publication Publication Date Title
JP2004502224A (ja) フラッシュブリッジとオートロードとを有する集積回路
JPH0719426B2 (ja) デイスク制御装置
JP2006287675A (ja) 半導体集積回路
JP2001216194A (ja) 演算処理装置
US7822952B2 (en) Context switching device
JPH01120660A (ja) マイクロコンピュータ装置
JP2003233509A (ja) デジタル信号処理装置
JP2005182538A (ja) データ転送装置
JP2001306488A (ja) データ転送装置
WO2018138975A1 (ja) 演算処理装置および情報処理システム
JP2000227897A (ja) Dma転送装置及びdma転送システム
JP2004118300A (ja) Dmaコントローラ
JP2000227895A (ja) 画像データ転送装置および画像データ転送方法
JPH0736806A (ja) Dma方式
JPH05242009A (ja) 直接メモリアクセス装置
JP3208789B2 (ja) 情報処理装置
JP2000029508A (ja) プログラマブルコントローラ
JP2581298B2 (ja) メモリアクセス権情報供給機構
JPH04358227A (ja) マイクロプロセッサ
JP2003228546A (ja) ダイレクト・メモリ・アクセス制御装置
JPH0784963A (ja) Cpuを有する半導体集積回路
JP2000056969A (ja) レジスタファイル
JP2002132699A (ja) 半導体装置
JPH05158859A (ja) 情報処理装置
JPS62221062A (ja) シングルチツプマイクロコンピユ−タ