JPH06301634A - Dma転送方式 - Google Patents

Dma転送方式

Info

Publication number
JPH06301634A
JPH06301634A JP8331093A JP8331093A JPH06301634A JP H06301634 A JPH06301634 A JP H06301634A JP 8331093 A JP8331093 A JP 8331093A JP 8331093 A JP8331093 A JP 8331093A JP H06301634 A JPH06301634 A JP H06301634A
Authority
JP
Japan
Prior art keywords
cpu
storage means
buffer
register
dma transfer
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.)
Withdrawn
Application number
JP8331093A
Other languages
English (en)
Inventor
Osamu Sato
佐藤  修
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP8331093A priority Critical patent/JPH06301634A/ja
Publication of JPH06301634A publication Critical patent/JPH06301634A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】本発明はDMA転送中であってもCPUと記憶
手段とのアクセスを可能とし、大容量のデータ転送を実
現し、かつ記憶手段のコストを低減させることができる
DMA転送方式を提供することを目的とする。 【構成】保持手段33にDMA転送要求が保持されたこ
とをCPU21が検知すると、CPU21の制御により
第1バッファ23が遮断状態とされ、CPU21とDM
Aコントローラ32とが切り離され、この時、CPU2
1により制御手段45が制御されることにより、第1記
憶手段30がデバイス35とDMA転送中であれば、C
PU21は第2記憶手段31とアクセスすることがで
き、第2記憶手段31がデバイス35とDMA転送中で
あれば、CPU21は第1記憶手段30とアクセスする
ことができるように構成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はCPUを介さずメモリ及
び外部デバイス等にアクセスを行い高速データ転送を実
現するDMA(Direct Memory Access)転送方式に関す
る。
【0002】DMA転送時に、バスの使用権をDMAC
(DMAコントローラ)が持った場合、CPUはホール
ド状態となってしまうため、CPUの処理は停止してし
まう。
【0003】このようなことを無くしてCPUの処理効
率を向上させる場合、DMA転送実行中でもCPUが他
の処理を行えるようにすればよい。この場合、DMA転
送時にCPUとDMAC間のバスを切り離せばよいが、
それにはCPU及びDMACの双方が同時にアクセスで
きるDPRAM(Dual Port RAM) を用いるのが一般的で
ある。
【0004】しかし、DPRAMはコストも高く、デー
タ容量規模もそれほど大きいものがないため、大規模な
データのDMA転送は行えない。そこで、大規模なデー
タのDMA転送を行うことができ、且つその構成を低コ
ストで実現することができるDMA転送方式が要望され
ている。
【0005】
【従来の技術】図3に従来のDMA転送方式を説明する
ためのブロック構成図を示し、その説明を参照する。
【0006】図中、1はCPU、2,3はデータバス、
4はスリーステートバッファ、5はDMAC、6はRA
M、7はI/Oレジスタ、8は外部デバイスである。通
常はCPU1の制御によって、外部デバイス8への送信
データをRAM6に書き込み、RAM6から送信データ
をI/Oレジスタ7を介して外部デバイス8へ転送した
り、また、外部デバイス8からの受信データをRAM6
に記憶し、更にRAM6から受信データを読み出して所
定の演算処理を行ったりする。この場合、バス2,3の
使用権はCPU1が所有している。
【0007】DMA転送を行う場合、DMAC5がCP
U1にバスホールドリクエスト信号HRを出力する。こ
れに対する返答であるCPU1からのバスホールドアク
ノリッジ信号HAをDMAC5が受信すると、バス2,
3の使用権はDMAC5に移り、CPU1の動作はその
間停止するようになっている。
【0008】また、その間は、I/Oレジスタ7からD
MAC5へDMAリクエスト信号DRが出力され、これ
に応じてDMAC5からI/Oレジスタ7へDMAアク
ノリッジ信号DAが出力されることによって、DMAC
5の制御によりRAM6とI/Oポート7を介する外部
デバイス8間のデータ転送が実行される。
【0009】このような方式においては、DMA転送時
にCPU1がホールド状態となるので、CPU1の処理
効率が低下する。そこでそのような欠点を補う構成を図
4に示し、その説明を行う。
【0010】図4において、11はCPU、12,13
はスリーステートバッファ、14はDMAC、15はD
PRAM、16はI/Oレジスタ、17は外部デバイ
ス、18,19,20はデータバスである。
【0011】DMA転送を行う場合、DMAC14から
CPU1へ出力されるリクエスト信号HRをCPU1の
ソフトウエアが監視しており、その信号HRの状態がア
クティブ状態となった際に、CPU1がスリーステート
バッファ13のイネーブル端子ENに、「H」レベルの
バッファ制御信号BSを出力することによってバッファ
13をディセーブル状態にする。但し、イネーブル端子
ENに「L」レベルの信号が供給されるとバッファ13
はイネーブル状態となる。
【0012】ディセーブル状態のバッファ13は信号遮
断状態であるから、CPU11側のバス19とDMAC
14側のバス20とが切り離されることになる。これに
よって、CPU11はDMA転送中でもDPRAM15
にアクセスして所定の処理を行うことが可能となる。
【0013】即ち、DMAC14の制御によってDPR
AM15とI/Oレジスタ16を介する外部デバイス1
7間のデータ転送が実行されると共に、CPU11とD
PRAM15間のアクセスが実行される。
【0014】この際、CPU11とDMAC14とがD
PRAM15の同アドレスを指定した場合の誤動作を防
止するために、BUSY信号をDMAC14へ出力して
DMAC14の制御を一旦停止し、CPU11の制御を
優先することが行われる。
【0015】
【発明が解決しようとする課題】ところで、上述した図
4に示すDMA転送方式においては、DPRAM15の
容量が一般的には2Kバイト、大きな容量でも8Kバイ
ト程度と、一般のRAMに比較すると容量が小さく、大
容量のデータ転送を行うには適さないといった問題があ
る。
【0016】これを補うには図3に示したようにRAM
6を使用すればよいが、この場合はDMA転送中にCP
U1がホールド状態となってしまう問題がある。また、
DPRAM15を使用した場合、それ自体の価格が高い
ので全体のコストが高くなるといった問題があり、更に
は、同アドレスをアクセスした場合、誤動作を防止する
ためのBUSY信号をDMAC14へ出力し、DMA転
送を一旦停止させるので、その間ロスが生じるといった
問題がある。
【0017】本発明は、このような点に鑑みてなされた
ものであり、DMA転送中であってもCPUと記憶手段
とのアクセスを可能とし、大容量のデータ転送を実現
し、かつ記憶手段のコストを低減させることができるD
MA転送方式を提供することを目的としている。
【0018】
【課題を解決するための手段】図1に本発明の原理図を
示す。この図において、32はDMAコントローラ、2
1はCPUであり、この図に示すDMA転送方式は、D
MAコントローラ32の制御によるDMA転送中にCP
U21が他の処理動作を行うことを可能とするものであ
る。
【0019】また、33は保持手段であり、DMAコン
トローラ32からのDMA転送要求を保持し、かつCP
U21が保持手段に保持された要求を監視するものであ
る。23は第1バッファであり、CPU21の制御によ
りデータ通過/遮断状態となり、かつCPU21とDM
Aコントローラ32とを接続するバス37と38間に介
在するものである。
【0020】30,31は第1及び第2記憶手段であ
り、I/Oレジスタ34を介したデバイス35とのデー
タ転送及びCPU21とのアクセスが行われるものであ
る。45は制御手段であり、DMA転送時にCPU21
の制御に応じて、第1記憶手段30とI/Oレジスタ3
4を介したデバイス35間、及び第1記憶手段30とC
PU21間をデータ通過/遮断状態とすると共に、第2
記憶手段31とI/Oレジスタ34を介したデバイス3
5間、及び第2記憶手段31とCPU21間をデータ通
過/遮断状態とするものである。
【0021】
【作用】上述した本発明において、保持手段33にDM
A転送要求が保持されたことをCPU21が検知する
と、CPU21の制御により第1バッファ23が遮断状
態とされ、CPU21とDMAコントローラ32とが切
り離される。
【0022】この時、CPU21により制御手段45が
制御され、第1記憶手段30とI/Oレジスタ34を介
したデバイス35間を通過状態、第2記憶手段31とC
PU21間を遮断状態にされたとすると、第2記憶手段
31とI/Oレジスタ34を介したデバイス35間は遮
断状態、第2記憶手段31とCPU21間は通過状態と
される。
【0023】一方、第1記憶手段30とI/Oレジスタ
34を介したデバイス35間が遮断状態、第2記憶手段
31とCPU21間が通過状態にされた際には、第2記
憶手段31とI/Oレジスタ34を介したデバイス35
間は通過状態、第2記憶手段31とCPU21間は遮断
状態とされる。
【0024】即ち、第1記憶手段30がデバイス35と
DMA転送中であれば、CPU21は第2記憶手段31
とアクセスすることができ、第2記憶手段31がデバイ
ス35とDMA転送中であれば、CPU21は第1記憶
手段30とアクセスすることができる。
【0025】
【実施例】以下、図面を参照して本発明の一実施例につ
いて説明する。図2は本発明の一実施例によるDMA転
送方式を説明するためのブロック構成図である。
【0026】図2において、21はCPU、22,2
3,24,25,26,27はスリーステートバッフ
ァ、28,29はインバータ、30は第1RAM、31
は第2RAM、32はDMAC、33はリードI/Oレ
ジスタ、34はI/Oレジスタ、35は外部デバイス、
36,37,38,39,40はデータバスである。
【0027】但し、スリーステートバッファ23のイネ
ーブル端子ENは「H」アクティブ、スリーステートバ
ッファ24〜27のイネーブル端子ENは「L」アクテ
ィブで、その内バッファ24,26は、CPU21から
のリードライト信号R/Wが供給されるディレクトリ端
子DIRを有する。リード時にはリードライト信号R/
Wが「H」レベル、ライト時には「L」レベルであると
する。
【0028】また、第1RAM30には外部デバイス3
5への送信データが記憶され、第2RAM31には外部
デバイス35からの受信データが記憶されるものとす
る。CPU21がアイドルサイクル時は、第1及び第2
RAM30,31に自由にアクセスできる。
【0029】例えばCPU21から出力される第1バッ
ファ制御信号BS1を「L」レベルにすると、バッファ
24がイネーブル状態となる。ここで、更にCPU21
から出力されるリードライト信号R/Wを「H」レベル
としてバッファ24をリード状態とすると、バッファ2
4が第1RAM30からCPU21へデータを通過させ
る状態となる。
【0030】その逆に、リードライト信号R/Wを
「L」レベルとしてバッファ24をライト状態とする
と、バッファ24がCPU21から第1RAM30へデ
ータを通過させる状態となる。
【0031】このような制御によってCPU21は第1
RAM30に自由にアクセスすることができる。また、
第2RAM31へのアクセスについても、同様に第2バ
ッファ制御信号BS2及びリードライト信号R/Wによ
ってバッファ26を制御すればよい。
【0032】次に、DMA転送を行う場合について説明
する。まず、DMAC32がバスホールドリクエスト信
号HRを出力する。これは、リードI/Oレジスタ33
への出力信号HRを「H」レベルとすることであり、こ
のことによってレジスタ33に「H」レベルが保持され
る。
【0033】CPU21はレジスタ33のレベル状態を
常時監視することによりバスホールドリクエストが行わ
れたかどうかを認識している。このように認識するよう
にしてあるのは、DMAC32からのバスホールドリク
エスト信号HRを直接CPU21のリクエスト信号入力
端に供給するようにした場合、リクエスト信号HRが供
給された時点で、CPU21がホールド状態となり、D
MA転送時にCPU21との並行処理が行えなくなるか
らである。
【0034】つまり、CPU21はレジスタ33が
「H」レベルとなったことを認識すると、スリーステー
トバッファ23へ「L」レベルのバッファ制御信号BS
3を出力するこによって、バッファ23をディセーブル
状態とする。
【0035】これによってバッファ23が信号遮断状態
となり、CPU21とDMAC32間のバス36,37
とバス38とが切り離され、DMA転送可能状態とな
る。ここでDMA転送が、第1RAM30からI/Oレ
ジスタ34を介して外部デバイス35へデータを転送す
るリード転送であるとする。
【0036】この場合、CPU21から出力される第1
バッファ制御信号BS1が「H」レベルとなり、バッフ
ァ25がイネーブル状態、バッファ24がディセーブル
状態となる。
【0037】これによってDMAC32の制御によっ
て、第1RAM30に記憶された送信データをバス3
9、バッファ25、バス38の経路でI/Oレジスタ3
4へ出力し、更に外部デバイス35へ送出することがで
きる。
【0038】バッファ24はデータ遮断状態なので、C
PU21と第1RAM30とのアクセスは不可能であ
る。また、第2バッファ制御信号BS2は「L」レベル
のままなので、バッファ27がディセーブル状態、バッ
ファ26がイネーブル状態である。
【0039】従って、CPU21はDMA転送中でも第
2RAM31にアクセスすることができ、リードライト
信号R/Wを「H」レベル又は「L」レベルとすること
によって第2RAM31にデータを書き込んだり、読み
出して処理したりすることが可能となる。
【0040】次にDMA転送が、外部デバイス35から
I/Oレジスタ34を介して第2RAM31へデータを
転送するライト転送であるとする。この場合、CPU2
1から出力される第2バッファ制御信号BS2が「H」
レベルとなり、バッファ27がイネーブル状態、バッフ
ァ26がディセーブル状態となる。
【0041】これによって外部デバイス35から送られ
てきたデータをI/Oレジスタ34を介して受信し、バ
ス38、バッファ27、バス40の経路で第2RAM3
1に転送して記憶することができる。
【0042】バッファ26はデータ遮断状態なので、C
PU21と第2RAM31とのアクセスは不可能であ
る。また、第1バッファ制御信号BS1は「L」レベル
なので、バッファ25がディセーブル状態、バッファ2
4がイネーブル状態であり、CPU21はDMA転送中
でも第1RAM30にアクセスすることが可能となる。
【0043】以上説明したDMA転送方式によれば、D
MA転送中であってもCPUとRAMとのアクセスを可
能とすることができ、また、一般的なRAMを用いて構
成できるので、大容量のデータを扱うことが可能となり
大容量のデータ転送を可能とすることができる。
【0044】また、一般的なRAMを使用するので、D
PRAMを使用した場合に比較し、全体のコストを低減
することができる。更には、DPRAMを用いた構成の
ように同アドレスをアクセスすることがないので、BU
SY信号をDMACへ出力してDMA転送を一旦停止す
ることがなくなるので、その間のデータ転送ロスを無く
すことができる。
【0045】なお、第1及び第2RAM30,31の代
わりに、2つのRAM30,31を合わせたと同容量以
上のRAMを1つ用い、送信データの記憶領域と受信デ
ータの記憶領域とをアドレス区分することによって、上
述同様にDMA転送を行うことができる。
【0046】また、第1及び第2バッファ制御信号BS
1,BS2による第1及び第2RAM30,31のイネ
ーブル/ディセーブル切り替えは、CPU21のソフト
ウエア、論理回路等によるハードウエアの何れでも可能
である。
【0047】
【発明の効果】以上説明したように、本発明によれば、
DMA転送中であってもCPUと記憶手段とのアクセス
を可能とし、大容量のデータ転送を実現し、かつ記憶手
段のコストを低減させることができる効果がある。
【図面の簡単な説明】
【図1】本発明の原理図である。
【図2】本発明の一実施例によるDMA転送方式を説明
するためのブロック構成図である。
【図3】従来例によるDMA転送方式を説明するための
ブロック構成図である。本発明の第二実例断面図であ
る。
【図4】他の従来例によるDMA転送方式を説明するた
めのブロック構成図である。
【符号の説明】
21 CPU 23 第1バッファ 24 第3バッファ 25 第2バッファ 26 第5バッファ 27 第4バッファ 30 第1記憶手段 31 第2記憶手段 32 DMAコントローラ 33 保持手段 34 I/Oレジスタ 35 デバイス 45 制御手段

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 DMAコントローラ(32)の制御によるD
    MA転送中にCPU(21)が他の処理動作を行うことを可
    能とするDMA転送方式において、 前記DMAコントローラ(32)からのDMA転送要求を保
    持し、かつ前記CPU(21)が、保持された要求を監視す
    る保持手段(33)と、 該CPU(21)の制御によりデータ通過/遮断状態とな
    り、かつ該CPU(21)と該DMAコントローラ(32)とを
    接続するバス(37 と38) 間に介在する第1バッファ(23)
    と、 I/Oレジスタ(34)を介したデバイス(35)とのデータ転
    送及び該CPU(21)とのアクセスが行われる第1及び第
    2記憶手段(30,31) と、 DMA転送時に該CPU(21)の制御に応じて、該第1記
    憶手段(30)と該I/Oレジスタ(34)を介したデバイス(3
    5)間、及び該第1記憶手段(30)と該CPU(21)間をデー
    タ通過/遮断状態とすると共に、該第2記憶手段(31)と
    該I/Oレジスタ(34)を介したデバイス(35)間、及び該
    第2記憶手段(31)と該CPU(21)間をデータ通過/遮断
    状態とする制御手段(45)とを具備し、 前記保持手段(33)に前記DMA転送要求が保持されたこ
    とを前記CPU(21)が検知した際に、該CPU(21)の制
    御により前記第1バッファ(23)を遮断状態として該CP
    U(21)と該DMAコントローラ(32)とを切り離し、 かつ、該CPU(21)により前記制御手段(45)を制御し
    て、前記第1記憶手段(30)と前記I/Oレジスタ(34)を
    介したデバイス(35)間を通過状態、該第2記憶手段(31)
    と該CPU(21)間を遮断状態にした際には、該第2記憶
    手段(31)と該I/Oレジスタ(34)を介したデバイス(35)
    間を遮断状態、該第2記憶手段(31)と該CPU(21)間を
    通過状態とし、また、前記第1記憶手段(30)と前記I/
    Oレジスタ(34)を介したデバイス(35)間を遮断状態、該
    第2記憶手段(31)と該CPU21) 間を通過状態にした際
    には、該第2記憶手段(31)と該I/Oレジスタ(34)を介
    したデバイス(35)間を通過状態、該第2記憶手段(31)と
    該CPU(21)間を遮断状態とすることを特徴とするDM
    A転送方式。
  2. 【請求項2】 前記制御手段(45)を前記CPU(21)の制
    御に応じて、 前記第1記憶手段(30)と前記I/Oレジスタ(34)を介し
    た前記デバイス(35)間を通過/遮断状態とする第2バッ
    ファ(25)と、該第1記憶手段(30)と該CPU(21)間を通
    過/遮断状態とする第3バッファ(24)と、前記第2記憶
    手段(31)と該I/Oレジスタ(34)を介したデバイス(35)
    間を通過/遮断状態とする第3バッファ(27)と、該第2
    記憶手段(31)と該CPU(21)間を通過/遮断状態とする
    第4バッファ(26)とから構成したことを特徴とする請求
    項1記載のDMA転送方式。
  3. 【請求項3】 前記第1及び第2記憶手段(30,31) の代
    わりに、1つの記憶手段を用い、該記憶手段をアドレス
    で分割することによって、該第1及び第2記憶手段(30,
    31) が行っていた記憶動作を実行させるようにしたこと
    を特徴とする請求項1又は2記載のDMA転送方式。
JP8331093A 1993-04-09 1993-04-09 Dma転送方式 Withdrawn JPH06301634A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8331093A JPH06301634A (ja) 1993-04-09 1993-04-09 Dma転送方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8331093A JPH06301634A (ja) 1993-04-09 1993-04-09 Dma転送方式

Publications (1)

Publication Number Publication Date
JPH06301634A true JPH06301634A (ja) 1994-10-28

Family

ID=13798853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8331093A Withdrawn JPH06301634A (ja) 1993-04-09 1993-04-09 Dma転送方式

Country Status (1)

Country Link
JP (1) JPH06301634A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004030602A (ja) * 2003-04-25 2004-01-29 Sanyo Electric Co Ltd データ処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004030602A (ja) * 2003-04-25 2004-01-29 Sanyo Electric Co Ltd データ処理装置

Similar Documents

Publication Publication Date Title
JP2886856B2 (ja) 二重化バス接続方式
KR970029014A (ko) 데이타 프로세싱 시스템 및 방법
JPH06301634A (ja) Dma転送方式
US6134642A (en) Direct memory access (DMA) data transfer requiring no processor DMA support
JP2904266B2 (ja) バス縮退に対処できるメモリ接続制御装置
JP2001216207A (ja) Dma診断装置及びそれに用いるdma診断方法
JPH07160655A (ja) メモリアクセス方式
JPS6347867A (ja) デユアルcpu間通信方式
JPH056333A (ja) マルチプロセサシステム
KR970004888B1 (ko) 전전자 교환기의 이중화된 에스 시 에스 아이 어뎁터 동시 제어방법
JP2000181880A (ja) データ転送システム
JPH07129524A (ja) 二重化システムの高速切替装置
KR960003650B1 (ko) 컴퓨터 시스템의 성능향상을 위한 입출력 프로세서
JPH04294440A (ja) プロセッサ間データ転送システム
JPS63132368A (ja) マルチプロセサの割込み方式
JPS61251943A (ja) デ−タ処理装置
JPH0628305A (ja) マルチプロセッサシステムのデータ転送制御装置
JPS6252342B2 (ja)
JPH07129519A (ja) デュアルcpuシステム
JPH03296159A (ja) Dma装置のメモリアクセス方式
JPS6140658A (ja) デ−タ処理装置
JPS6010366A (ja) 主記憶装置
JPH0659923A (ja) Cpuを用いた二重化システム
JPS62262170A (ja) デ−タ転送方式
JPH01248261A (ja) デュアルポートメモリにおけるメモリアクセス制御回路

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000704