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

データ転送装置

Info

Publication number
JP2608286B2
JP2608286B2 JP12714487A JP12714487A JP2608286B2 JP 2608286 B2 JP2608286 B2 JP 2608286B2 JP 12714487 A JP12714487 A JP 12714487A JP 12714487 A JP12714487 A JP 12714487A JP 2608286 B2 JP2608286 B2 JP 2608286B2
Authority
JP
Japan
Prior art keywords
data
dma
transfer
reception
register
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.)
Expired - Fee Related
Application number
JP12714487A
Other languages
English (en)
Other versions
JPS63292354A (ja
Inventor
忠 荒川
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP12714487A priority Critical patent/JP2608286B2/ja
Publication of JPS63292354A publication Critical patent/JPS63292354A/ja
Priority to US08/029,068 priority patent/US5430853A/en
Application granted granted Critical
Publication of JP2608286B2 publication Critical patent/JP2608286B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は例えば通信装置等のデータ転送装置に係り、
特に送受信データを送受信メモリと送受信部との間でDM
A転送するデータ転送装置に関する。
[従来の技術] 従来、例えば通信装置においてDMA転送を行う場合、
マイクロプロセツサ等のCPUによつてDMAコントローラ
(DMAC)に各種パラメータをセツトし、DMAの開始が指
示されると、DMACの制御のもとに送受信バツフアとメモ
リとの間でDMAによりデータ転送を行つている。具体的
には、例えば1ワードの通信データを受信すると、受信
部よりDMACに受信バツフアよりメモリへのDMAデータ転
送の要求が出される。これによりDMACはCPUにシステム
バスの使用を要求し、例えばサイクルスチール方式等に
より受信データをメモリにDMA転送する。このようなDMA
転送動作を繰り返すことにより、複数ワードの通信デー
タをメモリに転送し、更に1フレーム長の通信データの
転送が終了するとCPUに1フレームの受信終了を通知す
る。CPUはこの1フレームの受信終了により、次の受信
に備えてDMACの各パラメータの再設定を行つて次のフレ
ームの受信に備える。
「発明が解決しようとする問題点] 従つて、CPUは1フレーム送受信終了後から次のフレ
ーム送受信開始までの間に、少なくとも次のステツプを
実行する必要がある。
ステツプ1 割込み応答時のタスク切換 ステツプ2 次フレーム受信用の記憶領域の確保 ステツプ3 DMACの内部レジスタの再設定 しかしながら、これらのステツプに要する時間はプロ
グラム制御故に遅くなり、特にステツプ2では記憶領域
自体を管理する別タスクの介入が必要になる。これは通
信システムの設計を行う時、上記全ステツプの所要時間
に多くのマージン時間を見込んだ設計を行わねばならぬ
ことを意味しており、通信システムの送受信能力の制
約、即ち連続する高速フレームを確実に送受信処理でき
る能力を制約するという問題があつた。
本発明は上記従来例に鑑みてなされたもので、DMA転
送の各種パラメータの再設定を高速に行うことができる
とともに、高速で確実なDMAデータ転送を行うことがで
きるデータ転送装置を提供することを目的とする。
[問題点を解決するための手段] 上記目的を達成するために本発明のデータ転送装置は
以下のような構成を備える。即ち、 通信回線を介してデータの送受信を行うとともに1フ
レームのデータ送受信ごとに終了信号を発生する送受信
手段と、 送受信データを格納する格納手段と、 該格納手段と前記送受信手段との間で前記送受信デー
タのDMA転送を行うDMA制御手段と、 前記終了信号の発生に応動してDMA制御情報を更新す
る制御部と、 該制御部よりのDMA制御情報を記憶する記憶手段と、 前記制御部を介することなく前記記憶手段と前記DMA
制御手段間で前記DMA制御情報の転送を行う転送手段と
を備える。
[作用] かかる構成において、通信回線を介してデータの送受
信を行うとともに1フレームのデータを送受信ごとに終
了信号を発生する送受信手段と、送受信データを格納す
る格納手段との間で、DMA制御手段により送受信データ
のDMA転送を行う。この際、制御部は終了信号の発生に
応動して記憶手段のDMA制御情報を更新し、その制御部
を介することなく、記憶手段とDMA制御手段間でDMA制御
情報の転送を行うように動作する。
[実施例] 以下、添付図面を参照して本発明の好適な実施例を詳
細に説明する。
[通信装置の説明(第2図)] 第2図は本実施例の通信装置の主要部の構成図であ
る。
図中、1はプログラムメモリ2に格納された制御プロ
グラムやデータ等に従つて各種論理演算や制御信号の入
出力を行い、装置全体の動作制御を行うCPUで、例えば
8ビツトのマイクロプロセツサである。3は送受信デー
タを格納するメモリである。4は設定されたパラメータ
に従つてメモリ3と通信制御部(CCU)5との間でDMA転
送を行うDMAコントローラ(DMAC)である。5は通信回
線10に接続され、例えばCCITT勧告のX.25レベル2の下
位機能をサポートする通信制御部(CCU)で、この下位
機能とは具体的にHDLC(ハイ・レベル・データ・リンク
・コントロール)フレームにおけるフラグ同期、タイム
フイル、ゼロ挿入/削除等の機能をいう。
6は第1図にその詳細を示す受信フレーム制御部で、
後述するようにDMAC4への各種パラメータのセツトを行
う。これら1〜6の各部はアドレスバス7、データバス
8(8ビツト)、制御線9(以下、これらをまとめてシ
ステムバスと呼ぶ)を介して相互に接続されており、制
御線9は各装置間の動作を制御するリード/ライト線や
クロツク信号線あるいはバス要求信号線等の全ての制御
信号線の集合体である。
以上の構成において、DMAC4の制御によりシステムバ
スを介してCCU5とメモリ3との間でDMA転送を行うとと
もに、CCU5は通信回線10との間で例えばX.21インタフエ
ース等にて、HDLCフレームデータの送受信を行う。CCU5
が通信回線10から受信したデータをメモリ3へDMA転送
するとき、このDMAチヤネルを受信DMAチヤネルという。
受信DMAチヤネルはDMAC4の内部レジスタで制御される
が、少なくとも2つのレジスタが必要である。1つは受
信データの転送先のメモリアドレスを記憶している16ビ
ツトの受信アドレスレジスタ(RxADR)、もう1つは受
信フレームの最大長を記憶する16ビツトの受信バイトカ
ウントレジスタ(RxBCR)である。
[受信フレーム制御部の説明(第1図)] 第1図は本実施例の受信フレーム制御部6の構成を示
すブロツク図である。
100は受信フレーム制御部6の制御を行うコントロー
ル回路で、制御線9を介してCCU5からの受信終了信号を
検知すると、制御線9にバス要求信号(DUSRQ)を出力
してバス要求を行つたり、またCPU1よりの制御信号やデ
コーダ102よりのアドレスデコード信号110を入力して、
CPU1の動きを検知し、例えばパラメータの書込み時はCP
U1よりの書込み信号に同期してレジスタ104、105への書
き込み信号111、112を出力する。またレジスタ106への
書込み時には、DMAC4よりの読出しに同期して書込み信
号113を出力する。これによりCPU1よりの各種パラメー
タが、アドレスデコード信号110に対応するレジスタに
セツトされる。尚、102はアドレスデコード信号110を出
力するデコーダである。
アドレスシーケンサ103の出力は3ステート出力バツ
フアを介してアドレスバス7に接続されており、CPU1の
基本クロツク114をシーケンスクロツクとして入力し、
特定のアドレスデータ(DMAC4のデバイスアドレス)を
シーケンシャルにアドレスバス7に出力する。
104〜106はいずれも16ビツトのレジスタで、それぞれ
のレジスタは2個の8ビツトレジスタで構成され、各レ
ジスタは3ステート入出力バツフアを介してデータバス
8に接続されている。これら6個の8ビツトレジスタは
デコーダ102よりのアドレスデコード信号110によつて選
択される。タイミングシーケンサ101は基本クロツク114
とコントロール回路100よりの信号119を入力してタイミ
ング信号115〜118を出力し、上記6個の8ビツトレジス
タ(レジスタ104〜106)の出力及びアドレスシーケンサ
103よりのアドレスデータの出力タイミングの制御を行
つている。
以上の構成により、CPU1よりの各パラメータがレジス
タ104、105のそれぞれの8ビツトレジスタに書き込ま
れ、各レジスタの8ビツトデータが、基本クロツク114
の1クロツクサイクルでDMAC4のそれぞれ対応する内部
レジスタへ書き込まれ、あるいはDMAC4の内部レジスタ
よりレジスタ106への読み出しが行われることになる。
エネーブル判定部107はデコーダ102よりのアドレスデ
コード信号110と制御線9の制御信号及びタイミングシ
ーケンサ101よりのデスエネーブル信号109を入力し、エ
ネーブル信号108を制御線9に出力している。CPU1より
レジスタ104への書き込みが行われると、エネーブル判
定部107はレジスタ104のアドレス信号と制御線9上の書
き込み信号とをチエツクし、上位バイト(下位バイト)
の書き込みが行われるとエネーブル信号108をオフに
し、次に下位バイト(上位バイト)の書き込みが行われ
るとエネーブル信号108をオンにする。
またタイミングシーケンサ101はDMAC4への書き込みが
終了するとデスエネーブル信号109を出力して、エネー
ブル判定部107のエネーブル信号108をオフにする。エネ
ーブル信号は受信フレーム制御部のステイタス信号でも
あり、この信号がオフの時、受信フレーム制御部の動作
は禁止されていることを示している。
[動作説明(第3図〜第6図)] 第3図はプログラムメモリ2に格納されているCPU1の
データ受信処理の制御プログラムのフローチヤートであ
る。
本プログラムは装置の電源オンによつて開始され、ま
ずステツプS1で第4図のフローチヤートに示す初期化処
理を行う。ステツプS2でCCU5からの1フレームデータ終
了通知を待つ。この通知は通常、割込信号により行われ
る。
一方、DMAが開始されるとシステムバスのバスマスタ
はCPU1よりDMAC4に移る(ステツプS4)。ステツプS4で
はCCU5より受信データを入力してメモリ3に1バイトず
つのDMAデータ転送を行い、1フレーム分の受信データ
のデータ転送が終了するまで、CCU5よりメモリ3へのDM
Aデータ転送を繰り返し、1フレーム分のデータ転送が
終了するとそのDMA転送を終了する。
ステツプS5は1フレームのデータ受信終了時における
受信フレーム制御部6の動作ステツプで、詳細を第5図
のフローチヤートに示す。この処理フローによつてDMAC
4のレジスタ再設定が終了し、かつステツプS5の再動作
が禁止される。
一方、CPU1はDMA転送が終了するとステツプS3で再び
バスマスタとなりエネーブル信号108を調べる。オフの
時、その次のフレーム受信のためにレジスタ104の更新
を開始する。
まずステツプS6にて、メモリ3に次フレームの受信エ
リアを確保する。ステツプS7ではメモリ3に確保した受
信エリアの先頭アドレスの上位8ビツトをレジスタ104
の上位バイトに書き込み、ステツプS8で先頭アドレスの
下位8ビツトをレジスタ104の下位バイトに書き込む。
これによりエネーブル判定部107はエネーブル信号108を
オンにするため、次のフレーム受信終了に伴なうステツ
プS5の実行がエネーブルとなる。この後、再びステツプ
S2に戻り、CCU5による次のフレームのデータ受信が終了
すると、前述の動作を繰り返し実行する。尚、これらス
テツプS6〜ステツプS8は、次のフレーム受信終了までに
行えば良いため、次のフレーム受信DMA動作中にサイク
ルスチール等によりCPU1が実行してもよいことはもちろ
んである。
また、本フローチヤートでは1フレームの最大データ
数は固定として、ステツプS2以降でレジスタ105の受信
フレームの最大転送バイト数の書き換えを行つていない
が、1フレームの最大データ数が変動するときは、レジ
スタ105のデータを変更するステツプをステツプS8以降
に追加してもよいことはもちろんである。
以上説明したように実施例によれば、レジスタ104の
パラメータの更新以後にステツプS5が行われるため、DM
AC4へのパラメータが更新されないで次のDMA動作に入る
という問題がなくなる。
第4図はCPU1による初期化処理のフローチヤートであ
る。
ステツプS20では1フレームデータの受信エリアをメ
モリ3に確保し、ステツプS21でDMAC4の受信アドレスレ
ジスタRxADRに、ステツプS20で確保したメモリエリアの
先頭番地を書き込む。ステツプS22ではDMAC4の受信バイ
トカウントレジスタRxBCRに、受信フレームの最大転送
バイト数を書き込む。ステツプS23では次の受信フレー
ム用のメモリエリアをメモリ3に確保し、ステツプS24
でレジスタ104にステツプS23で確保したメモリエリアの
先頭番地を書き込む。次にステツプS25ではレジスタ105
に受信フレームの最大転送バイト数を書き込む。ステツ
プS26でCCU5及びDMAC4の受信をエネーブルにして、初期
化処理を終了する。
[受信フレーム制御部の動作説明(第5図、第6図)] 第5図は受信フレーム制御部6のコントロール回路10
0とタイミングシーケンサ101及びアドレスシーケンサ10
3の連係によるDMAC4へのパラメータセツト処理のフロー
チヤートである。
ステツプS30でCCU5から1フレーム長のDAMの転送終了
が検知されるとステツプS31に進み、システムバスのバ
スマスタになるべくバス要求信号を制御線9に出力す
る。バス要求が受けつけられてバスマスタになるとステ
ツプS33に進み、タイミングシーケンサ101及びアドレス
シーケンサ103を起動する。ステツプS34ではレジスタ10
4の上位バイトをDMAC4の受信アドレスレジスタRxADRの
上位バイトに書き込み、ステツプS35でレジスタ104の下
位バイトをDMAC4のRxADRの下位バイトに書き込む。
次にステツプS36でDMAC4のRxBCRレジスタの値をレジ
スタ106の上位バイトに書き込み、ステツプS37でRxBCR
の下位バイトをレジスタ106の下位バイトに書き込む。
これによりCPU1は実際の受信バイト数(語数)を計算す
ることができる。例えば、第3図に示したフローチヤー
トのステツプS6の受信用メモリエリアの確保処理等に利
用して、次のメモリエリアの先頭アドレスを、前の(メ
モリの先頭アドレス)+(語数)より求めてもよい。
次にステツプS38、39でレジスタ105の上位バイト及び
下位バイトをDMAC4の受信バイトカウントレジスタRxBCR
に書き込む。
尚、これらのRMAC4への書き込み及びDMAC4からの読み
出し処理は基本クロツク114の1クロツクサイクルでシ
ーケンシャルに実施される。
ステツプS40ではタイミングシーケンサ101よりデスエ
ネーブル信号109をエネーブル判定部107に出力して、エ
ネーブル判定部107のエネーブル信号108をオフにし、ス
テツプS41ではタインミングシーケサ101及びアドレスシ
ーケンサ103の動作を停止し、ステツプS42でシステムバ
スの使用を放棄して処理を終了する。
尚、本実施例では転送語数をレジスタ106に読出して
格納するようにしたが、RxADRより転送アドレスデータ
を読出すようにしても、転送語数が得られることはもち
ろんである。
第6図は実施例のCPU1の動作タイミングと受信フレー
ム制御部6の動作タイミングを比較した図である。
60はアドレスバスとデータバスの基本タイミングを示
す波形で、61はCPU1より制御線9に出力される書き込み
信号(WR)である。このように通常のマイクロプロセツ
サでは、アキユームレータに既に書き込みデータがセツ
トされていても、DMAC4の各レジスタへの1バイトデー
タの書き込み(I/Oライト命令)には、少なくとも基本
クロツク114の4サイクル分の時間が必要である。
それに比べて本実施例では、DMAC4への4バイトのデ
ータ書き込みは基本クロツク114の4クロツクサイクル
で行えるため、DMAC4の各パラメータのセツトが高速に
実施できる。DMAC4への書き込み信号及びDMAC4よりの読
み出し信号は、第6図のタイミングでコントロール回路
100より制御線9に出力され、レジスタ106への書込み信
号113はDMAC4よりの読出信号に同期してコントロール回
路100よりレジスタ106に出力される。
尚、本実施例ではDMAC4の内部レジスタRxADR、RxBCR
のデータセツトについて説明したがこれに限定されるも
のでなく、DMAC4の書き込み可能な内部レジスタの全て
に対して受信フレーム制御部6に仮想レジスタを設けて
書き込みを行うようにしてもよい。
以上説明したように本実施例によれば、DMACの転送準
備を高速に行うことができるため、高速で連続する通信
フレームを確実に受信できるという効果がある。またDM
A転送処理の度にパラメータのセツトを行う制御部の処
理を軽減できるという効果がある。
[発明の効果] 以上説明したように本発明によれば、DMA転送の各種
パラメータの再設定を高速に行うことができるととも
に、高速で確実なDMAデータ転送を行うことができると
いう効果がある。
【図面の簡単な説明】
第1図は本実施例の受信フレーム制御部の概略構成を示
す図、 第2図は本実施例の通信装置の主要部の構成を示す図、 第3図はCPUによるフレームデータのDMA転送処理のフロ
ーチヤート、 第4図はCPUによる初期化処理を示すフローチヤート、 第5図は受信フレーム制御部によるDMACへのパラメータ
セツト動作のフローチヤート、 第6図はDMACへの書き込み及びDMACよりの読出しタイミ
ングとCPUの動作との比較を示すタイミングチヤートで
ある。 図中、1……CPU、2……プログラムメモリ、3……メ
モリ、4……DMAC、5……CCU、6……受信フレーム制
御部、7……アドレスバス、8……データバス、9……
制御線、10……通信回線、100……コントロール部、101
……タイミングシーケンサ、102……デコーダ、103……
アドレスシーケンサ、104〜106……レジスタ、107……
エネーブル判定部、108……エネーブル信号、109……デ
スエネーブル信号、110……アドレスデコード信号、111
〜113……書込信号、114……基本クロツクである。

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】通信回線を介してデータの送受信を行うと
    ともに1フレームのデータの送受信ごとに終了信号を発
    生する送受信手段と、 送受信データを格納する格納手段と、 該格納手段と前記送受信手段との間で前記送受信データ
    のDMA転送を行うDMA制御手段と、 前記終了信号の発生に応動してDMA制御情報を更新する
    制御部と、 該制御部よりのDMA制御情報を記憶する記憶手段と、 前記制御部を介することなく前記記憶手段と前記DMA制
    御手段間で前記DMA制御情報の転送を行う転送手段と、 を備えることを特徴とするデータ転送装置。
  2. 【請求項2】前記記憶手段の前記DMA制御情報が更新さ
    れていないとき前記転送手段による転送を抑止する抑止
    手段を備えることを特徴とする特許請求の範囲第1項に
    記載のデータ転送装置。
  3. 【請求項3】前記DMA制御情報にはDMA転送アドレス情報
    と転送後数の少なくとも両者を含むことを特徴とする特
    許請求の範囲第1項又は2項に記載のデータ転送装置。
  4. 【請求項4】前記転送手段は前記記憶手段より前記DMA
    制御手段に前記DMA制御情報を転送するとともに、前記D
    MA制御手段よりDMA転送の結果情報を読出して前記記憶
    手段に記憶するようにしたことを特徴とする特許請求の
    範囲第1項に記載のデータ転送装置。
  5. 【請求項5】前記制御部の基本動作クロックの少なくと
    も1クロックサイクルを前記DMA制御手段あるいは前記
    記憶手段のサイクル時間としたことを特徴とする特許請
    求の範囲第5項に記載のデータ転送装置。
JP12714487A 1987-02-26 1987-05-26 データ転送装置 Expired - Fee Related JP2608286B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP12714487A JP2608286B2 (ja) 1987-05-26 1987-05-26 データ転送装置
US08/029,068 US5430853A (en) 1987-02-26 1993-03-10 Update of control parameters of a direct memory access system without use of associated processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12714487A JP2608286B2 (ja) 1987-05-26 1987-05-26 データ転送装置

Publications (2)

Publication Number Publication Date
JPS63292354A JPS63292354A (ja) 1988-11-29
JP2608286B2 true JP2608286B2 (ja) 1997-05-07

Family

ID=14952706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12714487A Expired - Fee Related JP2608286B2 (ja) 1987-02-26 1987-05-26 データ転送装置

Country Status (1)

Country Link
JP (1) JP2608286B2 (ja)

Also Published As

Publication number Publication date
JPS63292354A (ja) 1988-11-29

Similar Documents

Publication Publication Date Title
US4799199A (en) Bus master having burst transfer mode
US5696989A (en) Microcomputer equipped with DMA controller allowed to continue to perform data transfer operations even after completion of a current data transfer operation
JPH0420497B2 (ja)
JP2004171209A (ja) 共有メモリデータ転送装置
JP6602579B2 (ja) 半導体装置およびシステム
US4344130A (en) Apparatus to execute DMA transfer between computing devices using a block move instruction
CN113760792A (zh) 基于fpga的图像存取的axi4总线控制电路及其数据传输方法
US5430853A (en) Update of control parameters of a direct memory access system without use of associated processor
JPH01120660A (ja) マイクロコンピュータ装置
KR100348545B1 (ko) 통신 dma 장치
JP2608286B2 (ja) データ転送装置
JP3824122B2 (ja) Dma装置
JPH03668B2 (ja)
JPS63292355A (ja) Dma転送制御方式
JP2741514B2 (ja) マルチcpuシステム
JP2689523B2 (ja) Dma転送装置
JP3130114B2 (ja) 転送データ処理装置
JPS63208966A (ja) Dma転送制御方式
JPH06131294A (ja) データ転送装置
JP2568443B2 (ja) データサイジング回路
JPH04195563A (ja) メモリシステムの制御装置
JPH09305530A (ja) Dmaコントローラ
JPS581455B2 (ja) 入出力制御方式
JP2826780B2 (ja) データ転送方法
JPH1153304A (ja) インターフェース

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees