JPH06195297A - Dma回路 - Google Patents

Dma回路

Info

Publication number
JPH06195297A
JPH06195297A JP34395792A JP34395792A JPH06195297A JP H06195297 A JPH06195297 A JP H06195297A JP 34395792 A JP34395792 A JP 34395792A JP 34395792 A JP34395792 A JP 34395792A JP H06195297 A JPH06195297 A JP H06195297A
Authority
JP
Japan
Prior art keywords
data
address
transfer
register
bus
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
JP34395792A
Other languages
English (en)
Inventor
Tatsuya Nakai
達也 中井
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP34395792A priority Critical patent/JPH06195297A/ja
Publication of JPH06195297A publication Critical patent/JPH06195297A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】データの転送と同時に演算処理も完了するDM
A回路を提供する。 【構成】データバス上に送出された転送データを読み込
むデータレジスタ6と、前記データレジスタ6で読み込
んだデータに演算処理を行うとともに、この演算処理を
行ったデータをデータバス上に送出する演算回路7を備
えている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ワンチップマイクロ
コンピュータに内蔵されている、または、マイクロコン
ピュータに接続されている等のDMA(ダイレクト・メ
モリ・アクセス)回路の改良に関する。
【0002】
【従来の技術】図3は、従来のDMA回路を備えたワン
チップマイクロコンピュータの構成を示す図である。図
3を参照しながら、従来のDMA回路を備えたワンチッ
プマイクロコンピュータの構成を説明する。ワンチップ
マイクロコンピュータは、データの処理,制御等を行う
CPU21と、前記CPU21で実行する制御プログラ
ムや制御定数等を書き込んでおくROM22と、処理デ
ータ等を書き込むRAM23と、タイマやデータの直列
伝送を行うSIO等を備えた機能ブロック24と、外部
とデータの入出力を行う入出力ポート25と、CPUを
介さずに直接データの転送を行うDMA回路11とを備
えている。
【0003】DMA回路11は、DMAによるデータの
転送動作を制御するDMA制御部12と、転送するデー
タの語数をカウントする転送語数カウンタ13と、転送
するデータの格納されているアドレス(RAM等)を指
定する転送元アドレスレジスタ14と、この転送される
データの転送先アドレス(RAM等)を指定する転送先
アドレスレジスタ15と、転送データを一時保管するデ
ータレジスタ16とを備えている。
【0004】次に、DMA転送の動作について説明す
る。DMA制御部12は、CPU21に対してアドレス
バスとデータバスの解放を要求する。CPU21は、こ
の要求信号を受信し、アドレスバスとデータバスを解放
できる場合、DMA制御部12に許可信号を送出すると
ともに、アドレスバスとデータバスを解放する。転送語
数カウンタ13は、転送するデータの語数がDMA制御
部12によりセットされる。同様に転送元アドレスレジ
スタ14に転送されるデータの格納されているアドレス
と、転送先アドレスレジスタ15にデータの転送先のア
ドレスが、DMA制御部12によりセットされる。転送
元アドレスレジスタ14は、セットされている転送元ア
ドレスを指定したデータをアドレスバス上に送出する。
この転送元アドレスレジスタ14から送出されたデータ
で指定されているアドレスを有するメモリ等が指定され
たアドレスに格納されているデータをデータバス上に送
出する。データレジスタ16は、このメモリ等からデー
タバス上に送出されたデータを読み込み、記憶する。そ
して、転送先アドレスレジスタ15は、セットされてい
る転送先アドレスを指定したデータをアドレスバス上に
送出する。この指定されたアドレスを有するメモリ等
が、データの受信(write enable)状態になる。データレ
ジスタ16に書き込まれたデータは、データバス上に送
出される。このデータバス上に送出されたデータは、前
記指定されたアドレスを有するメモリ等の指定されたア
ドレスに書き込まれる。この動作により1語数のデータ
転送が完了する。転送語数カウンタ13に設定されてい
るデータから1を引き、この転送語数カウンタの値を更
新する。この更新された転送語数カウンタの値が、0と
なった時DMAによるデータ転送が終了する。一方、0
でない場合、DMA制御回路12は、転送先アドレスレ
ジスタと転送元アドレスレジスタに次の転送情報をセッ
トする。その後、上記と同じ転送動作を繰り返し、1語
数の転送が終了するごとに転送語数カウンタより1を減
算する。転送語数カウンタの値が0になるまでこの動作
を繰り返す。データ転送終了後、DMA制御部12は、
CPU21にDMA転送の完了信号を送出する。この完
了信号を受信したCPU21は、アドレスバスとデータ
バスの解放を終了し、再びアドレスバスとデータバスを
使用して制御動作を行う。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
DMA回路は、転送元のデータを転送先にそのまま送っ
ていた。このため、例えば1バイトのデータの転送にお
いて、上位4ビットと下位4ビットを交換してデータ転
送を行いたい場合、データ転送終了後、CPUにて上位
4ビットと下位4ビットの交換を行う処理をする必要が
あった。これにより、データの転送は、DMA回路によ
り高速に行われるが、データの演算処理で時間がかかる
ため、全体的には、時間のかかるデータ転送になってい
た。
【0006】この発明の目的は、演算処理をともなった
データの転送を高速に行えるDMA回路を提供すること
にある。
【0007】
【課題を解決するための手段】この発明のDMA回路
は、データの転送動作を制御するDMA制御部と、転送
を行うデータの数をカウントする転送語数カウンタと、
転送するデータの格納されているアドレスを指定する転
送元アドレスレジスタと、データの転送先を指定する転
送先アドレスレジスタと、転送データを読み込むデータ
レジスタと、前記データレジスタで読み込んだ該転送デ
ータを演算して転送先に送出する演算回路とを備えてい
る。
【0008】
【作用】この発明のDMA回路においては、転送語数カ
ウンタと、転送元アドレスレジスタと、転送先アドレス
レジスタに転送すべき情報がセットされる。転送元アド
レスレジスタからアドレスバス上に転送元データの格納
されているアドレスを指定したデータが送出される。こ
の指定されたアドレスを有するメモリ等からデータバス
上にデータが送出される。このデータをデータレジスタ
が読み込む。データレジスタは、読み込んだデータを演
算回路に転送する。演算回路は、このデータに演算処理
を行う。転送先アドレスレジスタからアドレスバス上に
転送先アドレスを指定したデータが送出される。さらに
演算回路から演算処理されたデータがデータバス上に送
出される。転送先アドレスとして指定されたアドレスを
有するメモリ等は、データバス上に演算回路から送出さ
れたデータを指定されたアドレスに書き込む。これによ
り、DMAによるデータ転送と同時に演算処理が行われ
る。
【0009】
【実施例】図1は、この発明の実施例であるDMA回路
の構成を示す図である。図2は、同実施例のDMA回路
を備えたワンチップマイクロコンピュータの構成を示す
図である。図1を参照しながら、同実施例のDMA回路
の構成を説明する。
【0010】DMA回路1は、DMAによるデータの転
送動作を制御するDMA制御部2と、転送するデータの
語数をカウントする転送語数カウンタ3と、転送するデ
ータの格納されているアドレスを指定する転送元アドレ
スレジスタ4と、この転送されるデータの転送先アドレ
スを指定する転送先アドレスレジスタ5と、データバス
上に送出された転送データを読み込むデータレジスタ6
と、前記データレジスタ6で読み込んだデータに演算処
理を行いデータバス上にその演算処理されたデータを送
出する演算回路7とを備えている。
【0011】次に、図2を参照しながら、演算処理をと
もなったDMA転送(データの上位4ビットと下位4ビ
ットを交換して転送する)の動作について説明する。
【0012】演算回路7は、受信した1バイトデータの
上位4ビットと下位4ビットを交換して出力する回路構
成となっている。DMA転送モードに入ろうとすると
き、まず、DMA制御部2は、CPU21に対してアド
レスバスとデータバスの解放を要求する。CPU21
は、この要求信号を受信し、アドレスバスとデータバス
を解放できる場合、DMA制御部2に許可信号を送出す
るとともに、アドレスバスとデータバスを解放する。転
送語数カウンタ3は、転送するデータの語数がDMA制
御部2によりセットされる。同様に転送元アドレスレジ
スタ4に転送されるデータの格納されているアドレス
と、転送先アドレスレジスタ5にデータの転送先のアド
レスが、DMA制御部2によりセットされる。転送元ア
ドレスレジスタ4は、セットされている転送元アドレス
を指定したデータをアドレスバス上に送出する。この転
送元アドレスレジスタ4から送出されたデータで指定さ
れているアドレスを有するメモリ等が、指定されたアド
レスに格納しているデータをデータバス上に送出する。
データレジスタ6は、このメモリ等からデータバス上に
送出されたデータを読み込み、記憶する。そして、演算
回路7は、前記データレジスタ6に記憶されたデータを
読み込む。さらに、このデータに対して上位4ビットと
下位4ビットを交換する演算処理を行う。そしてつぎの
サイクルになると、転送先アドレスレジスタ5は、セッ
トされている転送先アドレスを指定したデータをアドレ
スバス上に送出する。このときは、この指定されたアド
レスを有するメモリ等が、データの受信(write enable)
状態になっている。同様にこのサイクルにて演算回路7
は、演算処理を行ったデータをデータバス上に送出す
る。このデータバス上に送出されたデータは、前記メモ
リ等の指定されたアドレスに書き込む。この動作を1語
の転送とし、転送語数カウンタ3に設定されているデー
タから1を引く。この動作を繰り返して転送語数カウン
タのデータが0となった時DMAよるデータ転送が終了
する。データ転送終了後、DMA制御部2は、CPU2
1にDMA転送の完了信号を送出する。この完了信号を
受信したCPU21は、アドレスバスとデータバスの解
放を終了し、再びアドレスバスとデータバスを使用して
制御動作を行う。このようにDMA回路1は、DMA転
送を行うデータに対して演算処理を施してから転送サイ
クルに入る。したがって、CPU21は、転送後のデー
タに対して、上位ビットと下位ビットの交換等の簡単な
操作を行う様な場合には、その操作を演算回路7に行わ
せることでCPU21での処理を省略できる。
【0013】尚、本実施例では、演算処理を上位4ビッ
トと下位4ビットの交換としたが、演算回路7に演算を
行わない回路モードを付加することにより、従来のDM
A回路と同じDMA転送も可能である。
【0014】さらに、あるアドレスに記憶されているデ
ータの更新を行うこともできる。
【0015】転送元アドレスと転送先アドレスを同じア
ドレスに設定する。これにより、該アドレスに書き込ま
れているデータは、DMA転送を行うことにより、演算
処理されたデータが同じアドレスに書き込まれる。その
結果、該アドレスに記憶されていたデータの更新を行う
事ができる。これにより、多量のデータに同じ演算処理
を行いデータの更新を行うような場合、CPU21を介
して演算処理を行うよりも短時間で処理する事ができ
る。
【0016】
【発明の効果】以上のように、この発明によれば、DM
A回路に演算回路を備えたことにより、演算処理をとも
なったデータの転送を高速で行う事ができる。
【0017】また、多量のデータに同じ演算処理を行う
場合、CPUで演算処理を行うよりも短時間で処理する
事ができる。
【図面の簡単な説明】
【図1】この発明の実施例であるDMA回路の構成を示
す図である。
【図2】同実施例のDMA回路を備えたワンチップマイ
クロコンピュータの構成を示す図である。
【図3】従来のDMA回路を備えたワンチップマイクロ
コンピュータの構成を示す図である。
【符号の説明】 1・11−DMA回路 2・12−DMA制御部 3・13−転送語数カウンタ 4・14−転送元アドレスレジスタ 5・15−転送先アドレスレジスタ 6・16−データレジスタ 7−演算回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 任意のアドレスに書き込まれているデー
    タを入力し、CPUを介さずに任意のアドレスに直接転
    送するDMA回路において、 前記入力したデータを転送する前に演算処理する演算手
    段を備えたことを特徴とするDMA回路。
JP34395792A 1992-12-24 1992-12-24 Dma回路 Pending JPH06195297A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34395792A JPH06195297A (ja) 1992-12-24 1992-12-24 Dma回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34395792A JPH06195297A (ja) 1992-12-24 1992-12-24 Dma回路

Publications (1)

Publication Number Publication Date
JPH06195297A true JPH06195297A (ja) 1994-07-15

Family

ID=18365548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34395792A Pending JPH06195297A (ja) 1992-12-24 1992-12-24 Dma回路

Country Status (1)

Country Link
JP (1) JPH06195297A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8433829B2 (en) 2009-12-03 2013-04-30 Samsung Electronics Co., Ltd. Direct memory access controller and method of operating the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8433829B2 (en) 2009-12-03 2013-04-30 Samsung Electronics Co., Ltd. Direct memory access controller and method of operating the same

Similar Documents

Publication Publication Date Title
JPH07225727A (ja) 計算機システム
JPH06195297A (ja) Dma回路
JP3096382B2 (ja) Dma回路
JP3057754B2 (ja) メモリ回路および分散処理システム
JP3016788B2 (ja) 装置間通信・キャッシュ一致処理方式
JP2594611B2 (ja) Dma転送制御装置
JP2699482B2 (ja) データ転送制御装置
JPS6298444A (ja) デ−タ通信方式
JP2581144B2 (ja) バス制御装置
JPS6130300B2 (ja)
JPH06348645A (ja) Dma回路
JPH0322071A (ja) データ転送処理回路
JPS5856891B2 (ja) 情報処理システム
JPH01191964A (ja) メモリバスデータ転送方法
JPS5818032B2 (ja) 通信制御装置
JPH11110284A (ja) データ転送装置
JPS61210464A (ja) デ−タ緩衝装置
JPS63182764A (ja) 記憶装置制御方式
JPH04186458A (ja) Dma制御方式
JPS6127790B2 (ja)
JPH0586572B2 (ja)
JPS61120262A (ja) メモリ間インテリジエントdma制御装置
JPS63251846A (ja) 記憶装置制御システム
JPH01195563A (ja) バス制御装置
JPH02219105A (ja) プログラマブルコントローラ