JP2003167840A - データ転送システム,マイクロコンピュータ及びデータ転送装置 - Google Patents

データ転送システム,マイクロコンピュータ及びデータ転送装置

Info

Publication number
JP2003167840A
JP2003167840A JP2001366534A JP2001366534A JP2003167840A JP 2003167840 A JP2003167840 A JP 2003167840A JP 2001366534 A JP2001366534 A JP 2001366534A JP 2001366534 A JP2001366534 A JP 2001366534A JP 2003167840 A JP2003167840 A JP 2003167840A
Authority
JP
Japan
Prior art keywords
transfer
data
register
address
destination 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
JP2001366534A
Other languages
English (en)
Inventor
Akimitsu Inoue
昭光 井上
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2001366534A priority Critical patent/JP2003167840A/ja
Publication of JP2003167840A publication Critical patent/JP2003167840A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 データの転送先となる領域の使用効率を向上
させることができるデータ転送システムを提供する。 【解決手段】 DMAコントローラ14は、外部より送
信され、通信ブロック17により受信されたデータに付
加されているSLビットに応じて、データを、メモリ1
3にDMA転送する毎にその転送サイズを変化させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPUによって行
われる転送制御用レジスタの設定に基づいてデータ転送
処理を行うためのデータ転送システム、及びそのシステ
ムに使用されるマイクロコンピュータ並びにデータ転送
装置に関する。
【0002】
【発明が解決しようとする課題】データ転送装置たるD
MA(Direct Memory Access)コントローラは、ソースア
ドレス(転送元アドレス)やデスティネーションアドレ
ス(転送先アドレス),転送データサイズや転送回数及
び転送開始条件などをCPUがDMAコントローラ内部
の転送制御用レジスタに書き込むことで設定を行い、設
定された転送開始条件が成立するとハードウエアにより
データ転送処理を開始(DMA転送)するようになって
いる。
【0003】ところで、転送データサイズについては、
一連の転送処理が行われる間(設定された転送回数レジ
スタの値が“0”になるまで)は常に一定である。その
ため、例えば、図4に示すシステムの場合における通信
データのように、送信側より送信されてくるデータのサ
イズがバイト(8ビット),ワード(16ビット),ロ
ングワード(32ビット)のように変化するものを受信
側の通信用ICにおける受信バッファ1で受信して、そ
の受信データをDMAコントローラ2がメモリ3にDM
A転送する場合は、転送データサイズを最大のロングワ
ードに合わせて行わざるを得ない。
【0004】その結果、転送先のメモリ3上では、ロン
グワード境界のアドレス毎にデータが配置されるが、実
データサイズがバイト,ワードであったアドレスでは有
効なデータが配置されていない部分があり、メモリ3の
使用効率が低下するという問題があった。
【0005】本発明は上記事情に鑑みてなされたもので
あり、その目的は、データの転送先となる領域の使用効
率を向上させることができるデータ転送システム、及び
そのシステムに使用されるマイクロコンピュータ並びに
データ転送装置を提供することにある。
【0006】
【課題を解決するための手段】請求項1記載のデータ転
送システムによれば、送信部は、送信データに当該デー
タのサイズを示すサイズビットを付加して送信する。そ
して、データの受信側に配置されるデータ転送装置は、
前記データに付加されているサイズビットに応じて、デ
ータを転送する毎にその転送サイズを変化させる。
【0007】例えば、転送対象となるデータのサイズが
バイト,ワード,ロングワードのように変化する場合に
は、送信側でデータに2ビットのサイズビットを付加し
て送信する。すると、データ転送装置は、サイズビット
の状態に応じて、例えば転送サイズがバイトであればバ
イト転送を行うと共に転送先アドレスを“1”だけ増加
若しくは減少させ、転送サイズがワードであればワード
転送を行うと共に転送先アドレスを“2”増加若しくは
減少させるようにする。従って、転送先の領域には、無
効データの空きを作ること無く連続的に転送データが書
き込まれるようになるので、転送先の領域を効率的に使
用することができ、前記領域の設定をより小さくするこ
とが可能である。
【0008】請求項2記載のデータ転送システムによれ
ば、CPUは、データ転送装置に対する転送先アドレス
の設定を1回だけ行い、データ転送装置は、CPUによ
って2回目以降に設定されたデータ転送を開始する場
合、前回の最後に行われたデータ転送に応じて転送先ア
ドレスレジスタの設定を行う。尚、ここで言う「2回目
以降」等の回数は、データ転送装置が行う一連のデータ
転送を単位とする回数であり、転送開始前にCPUによ
ってデータ転送装置に設定された転送回数が初期値から
“0”になると一連のデータ転送が「1回」行われたこ
とになる。
【0009】即ち、従来CPUは、新たにDMA転送を
実行させる毎に、プログラムに基づいてデータ転送装置
のレジスタに転送先アドレスをセットし直すようになっ
ており、転送先領域の末尾付近の部分は殆ど使用される
ことがなかった。これに対して、請求項2の構成によれ
ば、データ転送装置が2回目以降に設定されるデータ転
送における転送先アドレスが上記のように設定されるこ
とで、次回に実行されるデータ転送の転送先アドレスは
前回のデータ転送によってデータが書き込まれているア
ドレスの次に自動的に設定される。従って、転送先の領
域をより効率的に使用することができる。また、CPU
は、データ転送を行う毎に転送先アドレスの設定を行う
必要が無くなるので、データ転送装置のレジスタ設定に
要する時間を短縮することができる。
【0010】請求項3記載のデータ転送システムによれ
ば、データ転送装置は、データ転送中において内部の転
送先アドレスレジスタが示す転送先アドレスが最終アド
レスを超える若しくは下回る場合には、転送先アドレス
レジスタの内容を初期アドレス設定レジスタの内容に設
定し直す。即ち、転送先領域は連続的に使用されること
になるので、領域の最終アドレスを超える場合にデータ
転送装置が転送先アドレスを自動的に初期化すれば、C
PUが転送先アドレスを改めて設定し直さなくとも当該
領域をリングバッファ状に使用することができ、使用効
率をより高めることができる。
【0011】請求項5記載のマイクロコンピュータによ
れば、請求項1記載のデータ転送システムのように転送
サイズをダイナミックに設定する構成を有しない場合で
も、2回目の転送先アドレスは、1回目のデータ転送が
行われているアドレスの次に自動的に設定される。従っ
て、転送先の領域を効率的に使用するができ、また、C
PUは、データ転送を行う毎に転送先アドレスの設定を
行う必要が無くなるので、データ転送装置のレジスタ設
定に要する時間を短縮することができる。請求項6記載
のマイクロコンピュータによれば、請求項5記載の構成
において、請求項3と同様の作用効果が得られる。
【0012】
【発明の実施の形態】以下、本発明の一実施例について
図1乃至図3を参照して説明する。図1は、データ転送
システムにおける主に受信側のマイクロコンピュータの
電気的構成を示す機能ブロック図である。マイクロコン
ピュータ(マイコン)11は、CPU12,DRAMな
どのメモリ13,DMAコントローラ(データ転送装
置)14,インプットキャプチャ15,A/D変換器1
6及び通信ブロック(受信部)17などで構成されてい
る。これらは、アドレスバス18及びデータバス19に
よって互いに接続されている。尚、データバス19は3
2ビットであるとする。
【0013】インプットキャプチャ15は、マイコン1
1の図示しないフリーランタイマのカウンタ値を読み出
す場合にカウントデータをラッチするためのレジスタで
ある。A/D変換器16は、図示しないセンサ等が出力
するアナログのセンサ信号をデジタルデータに変換する
ようになっている。通信ブロック17は、例えば、Ethe
rnet(富士通株式会社の登録商標)等の通信プロトコル
に対応した通信用のICであり、図示しない外部装置と
同軸ケーブル或いは無線LAN等によりデータ通信を行
うようになっている。通信ブロック17の内部には、外
部(送信部)より送信されたデータを受信するためのレ
シーブデータレジスタ17Rが配置されている。
【0014】DMAコントローラ14は、CPU12に
よって行われる各レジスタの設定に応じて、A/D変換
器16や通信ブロック17とメモリ13との間のDMA
転送を行うものである。DMAコントローラ14の内部
は、ソースアドレス(ADD)レジスタ20,デスティ
ネーションアドレスレジスタ(転送先アドレスレジス
タ)21,コントロールレジスタ22,カウントレジス
タ23,割込み要求レジスタ24,転送領域先頭アドレ
スレジスタ(初期アドレス設定レジスタ)25,転送領
域最終アドレスレジスタ(最終アドレスレジスタ)26
等の各種転送制御用レジスタを備えると共に、起動制御
部27,回数制御部28,選択優先回路29などの制御
回路部,バスインターフェイス30及び転送ボックス
(転送データバッファ)31を備えている。
【0015】ソース,デスティネーションアドレスレジ
スタ20,21は、DMA転送における夫々転送元アド
レス,転送先アドレスを設定するためのレジスタであ
り、コントロールレジスタ22は、転送制御パラメータ
を設定するためのレジスタである(但し、本実施例で
は、詳細は後述するが、コントロールレジスタ22にお
いて転送データサイズの設定を行わない場合がある)。
カウントレジスタ23は、転送回数を設定するためのレ
ジスタであり、割込み要求レジスタ24は、DMAコン
トローラ14に入力される各種割込み要求の受付を転送
時において制御するためのレジスタである。
【0016】転送領域先頭,転送領域最終アドレスレジ
スタ25,26は、メモリ13において設定されている
DMA転送領域の先頭アドレスと最終アドレスとを夫々
書き込むためのレジスタである。尚、転送領域先頭アド
レスレジスタ25には、CPU12によってデスティネ
ーションアドレスレジスタ21に最初に書き込まれるア
ドレスと同じアドレスが書き込まれるようになってい
る。尚、これらのレジスタ20〜26及び転送ボックス
31は、DMAコントローラ14内部の(モジュール)
アドレスバス32及びデータバス33によって接続され
ており、これらのバス32及び33と外部のバス18及
び19とは、バスインターフェイス30を介して接続さ
れている。
【0017】起動制御部27は、ソース,デスティネー
ションアドレスレジスタ20,21に設定されたアドレ
スを、バスインターフェイス30を介してアドレスバス
18に出力し、DMA転送を開始させるようになってい
る。回数制御部28は、カウントレジスタ23にセット
された転送回数に基づいてDMA転送の回数制御を行う
共に、その制御結果をコントロールレジスタ22のビッ
トに反映させるようになっている。カウントレジスタ2
3にセットされた転送回数は、回数制御部28によりア
ドレス増減値に応じて順次減算され、“0”になった時
点で一連のDMA転送は終了する。
【0018】選択優先回路29には、CPU12や各周
辺回路が発生する割込み要求、例えば、インプットキャ
プチャ15,A/D変換器16や、その他図示しないU
ART0受信/送信,UART1受信/送信(0,1は
UARTのチャネル),シリアル0受信/送信,…など
の割込み要求が入力されている。そして、選択優先回路
29は、コントロールレジスタ22の設定に応じた割込
み要求だけを受付けて起動制御部27に出力するように
なっている。
【0019】図2は、アドレスレジスタ20,21,2
5,26並びに転送ボックス31を中心とする構成の詳
細を示すものである。本実施例において、外部より送信
され通信ブロック17のレシーブデータレジスタ17R
によって受信されるデータには、そのデータサイズを示
す1ビットのSLビット(サイズビット)が先頭に付加
されている。データサイズは、バイト,ワードの何れか
であるものとし、SLビットが“0”である場合のデー
タサイズはバイト,SLビットが“1”である場合のデ
ータサイズはワードを示す。
【0020】レシーブデータレジスタ17Rにて受信さ
れたデータは、DMA転送が開始されるとDMAコント
ローラ14により読み込まれ、転送ボックス31に配置
される。転送ボックス31に配置されたデータのSLビ
ットはアドレス増加バッファ34によって参照され、ア
ドレス増加バッファ(BUFF)34は、SLビットが
“0”であれば、転送ボックス31に読み込まれたデー
タが転送された後に加算器(コントロールレジスタ22
の設定によっては減算器としても作用する)35S,3
5Dに“1”を出力し、SLビットが“1”であれば加
算器35S,35Dに“2”を出力するように構成され
ている。
【0021】また、アドレス増加バッファ34は、カウ
ントレジスタ23の値が“0”となりDMA転送が終了
したことを示す信号を受けた場合にも、最後の転送デー
タが有していたSLビットの値に応じて加算器35S,
35Dに“1”または“2”を出力するようになってい
る。
【0022】加算器35S,35Dは、アドレス増加バ
ッファ34が出力する値をソース,デスティネーション
アドレスレジスタ20,21のアドレス値に加算して、
加算結果を夫々のレジスタ20,21に戻すようになっ
ている。但し、加算器35S,35Dとソース,デステ
ィネーションアドレスレジスタ20,21との間には、
フリップフロップ50S,50Dが配置されている。こ
れらのフリップフロップ50S,50Dは、加算器35
S,35Dからの出力をD入力端子で受けて、図示しな
いクロック信号に同期してQ出力端子より出力するもの
である。
【0023】そして、フリップフロップ50S,50D
のリセット入力端子Rには、図2では図示しないコント
ロールレジスタ22の制御ビット出力が与えられるよう
になっている。例えば、コントロールレジスタ22によ
って、フリップフロップ50Sがリセットされる場合
は、加算器35Sの出力状態にかかわらず、ソースアド
レスレジスタ20のアドレス値は変化しなくなる。尚、
図2では、フリップフロップ50S,50Dを代表して
夫々1個のみ図示しているが、実際にはアドレスのビッ
ト数に応じた数だけ並列に配置されることは言うまでも
ない。
【0024】デスティネーションアドレスレジスタ21
のアドレス値と、転送領域最終アドレスレジスタ26の
アドレス値とはコンパレータ36によって比較されてい
る。そして、前者が後者を上回った場合、若しくは、両
者が一致しており且つSLビットが“1”である場合に
は、コンパレータ36はデスティネーションアドレスレ
ジスタ21及び転送領域先頭アドレスレジスタ25に対
してロード信号を出力し、レジスタ25の内容をレジス
タ21にロードさせるように構成されている。
【0025】次に、本実施例の作用について図3をも参
照して説明する。図3は、DMA転送を行う場合の処理
の流れを示すフローチャートであり、通信ブロック17
が受信したデータをメモリ13にDMA転送する場合を
示す。このフローチャートでは、CPU12がプログラ
ムに従ってDMAコントローラ14に行うレジスタ設定
と、その後のDMAコントローラ14のハードウエアに
よる処理とをまとめて表している。
【0026】ステップS1において、CPU12は、メ
モリ13のワークエリアに用意されたフラグ格納領域を
参照して初期設定フラグがセットされているか否かを判
断し、フラグがセットされていなければ(「NO」)D
MAコントローラ14のデスティネーションアドレスレ
ジスタ21に初期デスティネーションアドレス及び転送
領域最終アドレスの設定を行う(ステップS2)。ここ
での初期デスティネーションアドレスは、メモリ13に
設定されたDMA転送領域の先頭アドレスであり、レジ
スタ21に書き込みを行うと転送領域先頭アドレスレジ
スタ25にも同じ値が同時に書き込まれる。また、転送
領域最終アドレスは、転送領域最終アドレスレジスタ2
6に書き込まれる。
【0027】それから、CPU12は、メモリ13のフ
ラグ格納領域に初期設定フラグをセットすると(ステッ
プS3)、DMAコントローラ14のその他のレジスタ
にも設定を行う(ステップS4)。即ち、コントロール
レジスタ22にDMA転送のモードを設定し、カウント
レジスタ23に転送回数を設定し、割込み要求レジスタ
24に通信ブロック17からの割込みを受け付けるよう
に設定を行い、ソースアドレスレジスタ20にソースア
ドレス、即ち、通信ブロック17のレシーブデータレジ
スタ17Rに割り付けられているアドレスを設定する。
【0028】尚、コントロールレジスタ22における転
送モード設定では、従来と同様に転送データサイズを固
定的に設定するモードでは無く、DMAコントローラ1
4が転送データ毎にダイナミックに設定するモードを設
定する。ここまでが、CPU12がプログラムに基づい
て行う処理である。また、この場合、ソースアドレス
は、常に通信ブロック17のレシーブデータレジスタ1
7Rのアドレスとなるため、ソースアドレスを変化させ
る必要はない。従って、コントロールレジスタ22によ
り、上述したようにフリップフロップ50Sをリセット
させるように設定を行う。
【0029】以降は、DMAコントローラ14のハード
ウエアが実行する。DMAコントローラ14は、ステッ
プS5において、転送領域先頭アドレスレジスタ25に
書き込みが行われたか否かによって処理を分岐する。こ
の時点では、ステップS2において書き込みが行われて
いるので(その情報はフリップフロップ等に記憶させて
おくようにする)「YES」であり、ステップS7に移
行する。ステップS7はコンパレータ36の比較結果で
あり、この時点では「NO」であるから、通信ブロック
17からの割込みが発生するのを待ってデータ転送を開
始する(ステップS8)。
【0030】例えば、DMAコントローラ14は、CP
U12に対してバスリクエスト信号を出力し、CPU1
2がバス18,19の使用を一旦停止してバス権をDM
Aコントローラ14に与えると、DMAコントローラ1
4は、DMA転送中であることを示す信号をアクティブ
にしてDMA転送を開始する。
【0031】それから、起動制御部17は、ソースアド
レスレジスタ20に設定されたアドレスをアドレスバス
18に出力して通信バッファ17のレシーブデータレジ
スタ17Rからデータを読み出して一旦転送ボックス3
1に転送する。そして、SLビットの値に応じて転送デ
ータサイズを設定すると、デスティネーションアドレス
レジスタ21に設定されたアドレスをアドレスバス18
に出力して、転送ボックス31内部のデータをメモリ1
3の転送領域の先頭アドレスに書き込む。この時、SL
ビットは削除され、実データ8ビット,16ビットだけ
がメモリに書き込まれるようになっている。そして、デ
ータ転送が終了する(ステップS9)。
【0032】1データのDMA転送が終了すると、カウ
ントレジスタ23の値はデクリメントされ(ステップS
10)、その値が“0”でなければ(ステップS11,
「NO」)アドレス増加バッファ34がSLビットの値
に応じたデータ値を加算器35S,35Dに出力するこ
とで、次に転送するデータのソース,デスティネーショ
ンアドレスを設定する(ステップS12)。即ち、ソー
ス,デスティネーションアドレスは、SLビットが
“0”であれば“1”加算され、SLビットが“1”で
あれば“2”加算される。但し、本実施例のケースで
は、フリップフロップ50Sによってソースアドレスは
固定される。それから、ステップS7に戻る。
【0033】以上のようにして、通信ブロック17が受
信したデータに付加されているSLビットの値に応じて
転送データサイズがダイナミックに設定されると共に、
その転送データサイズに応じて次の転送におけるデステ
ィネーションアドレスも設定される。その結果、DMA
転送が行われたメモリ13のデータイメージは、図1に
おいて、Data0はバイト,Data1はワード,D
ata2はバイト,Data3及び4はワード,…と示
すように、バイトデータ,ワードデータが隙間無く配置
されるようになる。
【0034】そして、カウントレジスタ23の値が
“0”になると(ステップS11,「YES」)一連の
DMA転送は終了する。尚、この時、ステップS5にお
ける、レジスタ25に書き込みが行われたことを示す情
報はリセットされるようになっている(尚、ステップS
5で「YES」となった時点でリセットしても良
い。)。転送が終了すると、CPU12は、デスティネ
ーションアドレスレジスタ21の値を読みに行くこと
で、今回の転送によって書き込まれたデータはメモリ1
3のどこまでに配置されているのを知ることができるの
で、そのアドレス値に基づいてメモリ13にアクセス
し、転送されたデータを読み込んで必要な処理を行う。
【0035】CPU12が、次回に通信ブロック17の
受信データをDMA転送させる場合は、初期設定フラグ
がセットされているためステップS1で「YES」と判
断し、ステップS4に移行する。また、DMAコントロ
ーラ14では、今回はステップS2においてレジスタ2
5に対する書き込みは行われなかったので、ステップS
5で「NO」となり、アドレス増加バッファ34がデス
ティネーションアドレスを加算させる(ステップS
6)。即ち、前回の最後の転送データサイズがバイトで
あれば“1”を加え、サイズがワードであれば“2”を
加える。従って、今回のDMA転送におけるデスティネ
ーションアドレスは、前回の転送によってデータが書き
込まれているアドレスの次に設定されることになる。そ
れから、ステップS7に移行する。
【0036】そして、メモリ13の転送領域にデータが
順次書き込まれて行くことで、デスティネーションアド
レスレジスタ21の値が転送領域最終アドレスレジスタ
26の値を超えると(ステップS7,「YES」)、コ
ンパレータ36は転送領域先頭アドレスレジスタ25及
びデスティネーションアドレスレジスタ21にロード信
号を出力して、レジスタ21の値をレジスタ25の値に
書き替えてデスティネーションアドレスを初期化する
(ステップS13)。それから、ステップS8に移行す
る。
【0037】即ち、DMA転送が進行することでメモリ
13の転送領域を超えようとする場合は、デスティネー
ションアドレスを転送領域の先頭に戻して、既に使用さ
れている領域に転送データをオーバーライトすること
で、転送領域をリングバッファ状に使用する。
【0038】以上のように本実施例によれば、DMAコ
ントローラ14は、外部より送信され、通信ブロック1
7により受信されたデータに付加されているSLビット
に応じて、データをメモリ13にDMA転送する毎にそ
の転送サイズを変化させるようにした。従って、メモリ
13の転送領域には、無効データの空きを作ること無く
連続的に転送データが書き込まれるようになり、メモリ
13の領域を効率的に使用することができ、その領域の
設定をより小さくすることが可能できる。
【0039】また、CPU12は、DMAコントローラ
14に対する転送先アドレスの設定を1回だけ行い、D
MAコントローラ14は、CPU12によって2回目以
降に設定されたデータ転送を開始する場合、前回の最後
に行われたデータ転送に応じてデスティネーションアド
レスレジスタ21の設定を行うようにした。従って、次
回に実行されるDMA転送のデスティネーションアドレ
スを、前回の転送によってデータが書き込まれているア
ドレスの次に自動的に設定することができ、メモリ13
の転送領域をより効率的に使用することができる。ま
た、CPU12は、DMA転送を行う毎にデスティネー
ションアドレスの設定を行う必要が無くなるので、DM
Aコントローラ14のレジスタ設定に要する時間を短縮
することができる。
【0040】更に、DMAコントローラ14は、DMA
転送中において内部のデスティネーションアドレスレジ
スタ21が示すアドレスが転送領域の終了アドレスを超
える場合には、レジスタ21の内容を転送領域先頭アド
レスレジスタ25の内容に設定し直すようにした。従っ
て、メモリ13の転送領域を連続的に使用することで領
域の終了アドレスを超えようとする場合に、CPU12
が転送先アドレスを改めて設定し直さなくとも転送領域
をリングバッファ状に使用することができ、使用効率を
より高めることができる。
【0041】本発明は上記し且つ図面に記載した実施例
にのみ限定されるものではなく、次のような変形または
拡張が可能である。DMA転送をアドレス降順で行って
も良い。この場合、コンパレータ36は、レジスタ21
のアドレス値がレジスタ26の値を上回る場合に代えて
下回る場合にロード信号を出力すれば良い。SLビット
を2ビットに拡張して3バイト転送を行っても良い。例
えば、通信ブロック17とDMAコントローラ14との
間のデータバスサイズが34ビットである場合には、同
様の方式でロングワード転送を行っても良い。この場合
もSLビットは2ビットとなる。SLビットは転送デー
タに対して外部的に付加するものに限らず、内部的に付
加するようにしても良い。即ち、例えば8ビット,16
ビット,32ビットデータの内の2ビットをSLビット
に割り当てても良い。この場合は、メモリ13にデータ
を転送する際にSLビットを削除しなくても良い。
【0042】転送データのサイズが予め一定であるもの
についてDMA転送を行う場合は、コントロールレジス
タ22の設定に応じて、従来技術と全く同じ方式のDM
A転送を行えば良い。また、その場合、デスティネーシ
ョンアドレスの設定方式については、上記実施例と同様
の方式を採用しても良い。斯様に構成した場合でも、転
送先の領域を効率的に使用することができる。また、C
PUは、データ転送を行う毎に転送先アドレスの設定を
行う必要が無くなるので、データ転送装置のレジスタ設
定に要する時間を短縮できるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施例であり、データ転送システム
における主に受信側のマイクロコンピュータの電気的構
成を示す機能ブロック図
【図2】各種アドレスレジスタ並びに転送ボックスを中
心とする詳細な構成を示す図
【図3】DMA転送を行う場合の処理の流れを示すフロ
ーチャート
【図4】従来のデータ転送システムを説明する図
【符号の説明】
11はマイクロコンピュータ、12はCPU,13はメ
モリ、14はDMAコントローラ(データ転送装置)、
17は通信ブロック(受信部)、21はデスティネーシ
ョンアドレスレジスタ(転送先アドレスレジスタ)、2
5は転送領域先頭アドレスレジスタ(初期アドレス設定
レジスタ)、26は転送領域最終アドレスレジスタ(最
終アドレスレジスタ)を示す。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 送信データに当該データのサイズを示す
    サイズビットを付加して送信する送信部と、 この送信部によって送信されたデータを受信する受信部
    と、 CPUと、 このCPUによって行われる転送制御用レジスタの設定
    に基づき、前記受信部によって受信されたデータを転送
    先アドレスに転送する処理をハードウエアによって実行
    するデータ転送装置とを備え、 前記データ転送装置は、前記データに付加されているサ
    イズビットに応じて、データを転送する毎にその転送サ
    イズを変化させるように構成されていることを特徴とす
    るデータ転送システム。
  2. 【請求項2】 前記CPUは、前記データ転送装置に対
    する転送先アドレスの設定を1回だけ行い、 前記データ転送装置は、CPUによって2回目以降に設
    定されたデータ転送を開始する場合は、前回の最後に行
    われたデータ転送に応じて転送先アドレスレジスタの設
    定を行うことを特徴とする請求項1記載のデータ転送シ
    ステム。
  3. 【請求項3】 前記データ転送装置は、 前記CPUによって設定された転送先アドレスの初期値
    を記憶させる初期アドレス設定レジスタと、 転送領域の最終アドレスが書き込まれる最終アドレスレ
    ジスタとを備え、 データ転送中において内部の転送先アドレスレジスタが
    示す転送先アドレスが前記最終アドレスを超える若しく
    は下回る場合には、前記転送先アドレスレジスタの内容
    を前記初期アドレス設定レジスタの内容に設定し直すこ
    とを特徴とする請求項2記載のデータ転送システム。
  4. 【請求項4】 請求項1乃至3の何れかに記載のデータ
    転送システムに使用されるCPUと、データ転送装置と
    を備えてなることを特徴とするマイクロコンピュータ。
  5. 【請求項5】 CPUと、 このCPUによって行われる転送制御用レジスタの設定
    に基づき、転送元アドレスから転送先アドレスにデータ
    を転送する処理をハードウエアによって実行するデータ
    転送装置とを備え、 前記CPUは、前記データ転送装置に対する転送先アド
    レスの設定を1回だけ行い、 前記データ転送装置は、CPUによって2回目以降に設
    定されたデータ転送を開始する場合は、前回の最後に行
    われたデータ転送に応じて転送先アドレスレジスタの設
    定を行うことを特徴とするマイクロコンピュータ。
  6. 【請求項6】 前記データ転送装置は、 前記CPUによって設定された転送先アドレスの初期値
    を記憶させる初期アドレス設定レジスタと、 転送領域の最終アドレスが書き込まれる最終アドレスレ
    ジスタとを備え、 データ転送中において内部の転送先アドレスレジスタが
    示す転送先アドレスが前記最終アドレスを超える若しく
    は下回る場合には、前記転送先アドレスレジスタの内容
    を前記初期アドレス設定レジスタの内容に設定し直すこ
    とを特徴とする請求項5記載のマイクロコンピュータ。
  7. 【請求項7】 請求項4乃至6の何れかに記載のマイク
    ロコンピュータに使用されるデータ転送装置。
JP2001366534A 2001-11-30 2001-11-30 データ転送システム,マイクロコンピュータ及びデータ転送装置 Pending JP2003167840A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001366534A JP2003167840A (ja) 2001-11-30 2001-11-30 データ転送システム,マイクロコンピュータ及びデータ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001366534A JP2003167840A (ja) 2001-11-30 2001-11-30 データ転送システム,マイクロコンピュータ及びデータ転送装置

Publications (1)

Publication Number Publication Date
JP2003167840A true JP2003167840A (ja) 2003-06-13

Family

ID=19176413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001366534A Pending JP2003167840A (ja) 2001-11-30 2001-11-30 データ転送システム,マイクロコンピュータ及びデータ転送装置

Country Status (1)

Country Link
JP (1) JP2003167840A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009122964A (ja) * 2007-11-15 2009-06-04 Nippon Telegr & Teleph Corp <Ntt> データ処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009122964A (ja) * 2007-11-15 2009-06-04 Nippon Telegr & Teleph Corp <Ntt> データ処理装置

Similar Documents

Publication Publication Date Title
CN102004709B (zh) 处理器局部总线到高级可扩展接口之间的总线桥及映射方法
US7349973B2 (en) Data transfer control device, electronic equipment, and data transfer control method
US7028109B2 (en) Data transfer control device including buffer controller with plurality of pipe regions allocated to plurality of endpoints
US20090259789A1 (en) Multi-processor, direct memory access controller, and serial data transmitting/receiving apparatus
US20040107265A1 (en) Shared memory data transfer apparatus
EP1389760A2 (en) Data transfer control system, program and data transfer control method
WO2022121199A1 (zh) Qspi控制器,图像处理器及闪存访问方法
US7359996B2 (en) Data transfer control device, electronic equipment, and data transfer control method
US7469304B2 (en) Data transfer control device, electronic equipment, and method for a data transfer through a bus, the data transfer control device including a register and a packet buffer that are commonly used during a host operation and a peripheral operation
JP2002342260A (ja) Usb送信制御回路およびその制御方法
US7428600B2 (en) Data transfer control device, electronic equipment, and data transfer control method
JP2003023469A (ja) 通信端末装置およびそのデータ送信方法
JP2003167840A (ja) データ転送システム,マイクロコンピュータ及びデータ転送装置
US20080320178A1 (en) DMA transfer apparatus
EP1422628B1 (en) Host apparatus, electronic device, and transmission system control method
JP2004227580A (ja) 直接メモリ接近媒体のデータ伝送装置及び方法
US7162562B2 (en) Portable electronic system and accessing method thereof
JP4102405B2 (ja) データ処理装置、データ通信方法及びシリアル入出力装置
US20240069763A1 (en) Memory controller and memory access method
JP2004056376A (ja) 半導体装置及びデータ転送制御方法
JP3753622B2 (ja) パケット送受信装置
JP2003150534A (ja) チェインブロック転送方法及び通信制御装置
JP4127071B2 (ja) データ転送制御装置、電子機器及びデータ転送制御方法
JP2002169767A (ja) データ転送方法、データ転送装置、通信インターフェース方法および通信インターフェース装置
CN115729863A (zh) 数据传输方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20040108

Free format text: JAPANESE INTERMEDIATE CODE: A621

A977 Report on retrieval

Effective date: 20060522

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20060530

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061003