JPH05120201A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH05120201A
JPH05120201A JP3277888A JP27788891A JPH05120201A JP H05120201 A JPH05120201 A JP H05120201A JP 3277888 A JP3277888 A JP 3277888A JP 27788891 A JP27788891 A JP 27788891A JP H05120201 A JPH05120201 A JP H05120201A
Authority
JP
Japan
Prior art keywords
data
transfer
memory
output
buffer
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
JP3277888A
Other languages
English (en)
Inventor
Tsunehiro Makino
恒浩 牧野
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 JP3277888A priority Critical patent/JPH05120201A/ja
Publication of JPH05120201A publication Critical patent/JPH05120201A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 データの転送方向を規定する双方向バッファ
を有するデータ処理装置において、ダイレクト・メモリ
・アクセスによりデータの転送を行う場合に、双方向バ
ッファの出力とメモリの出力との衝突を避けることを目
的とする。 【構成】 CPUの制御により、双方向バッファのデー
タ転送方向を設定した後、ダイレクト・メモリ・アクセ
スを開始させるため、CPUの命令により双方向バッフ
ァのデータ転送方向を設定し、ダイレクト・メモリー・
アクセス動作中は設定されているデータ転送方向を固定
する転送方向設定レジスタ4を設ける。これにより、ダ
イレクト・メモリ・アクセス・コントローラによって双
方向バッファのデータ転送方向を制御する場合に起こり
得る、双方向バッファの出力とメモリの出力との衝突を
避け、ダイレクト・メモリー・アクセス動作の開始以前
に双方向バッファのデータ転送方向を設定することが可
能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はDMAを用いるデータ処
理装置に関するものである。
【0002】
【従来の技術】従来、コンピュータ装置を初めとした多
くのデータ処理装置にDMAが用いられてきた。メモリ
とI/O部との間でDMAの動作が行われる場合を簡単
に図3を用いて説明する。
【0003】1はDMAコントローラ(以下、DMAC
と呼ぶ)、2はアドレス・バス、3はデータ・バス、5
はアドレスデコーダ、6はメモリ、7はI/O部、8、
9は双方向の第1バッファおよび第2バッファ、14は
DMA要求信号、15はDMA許可信号、17はメモリ
・ライト・コマンド信号、18はメモリ・リード・コマ
ンド信号、19はI/O・ライト・コマンド信号、20
はI/O・リードコマンド信号、10はメモリ6が接続
するバス、11はI/O部7が接続するバス、29はC
PUである。
【0004】メモリ6からI/O部7へデータを送信す
る場合を考える。まずCPUからI/O部へDMA準備
命令27が出されるとそれ以降のDMA動作はI/O部
の要求に従いDMACにより制御される。外部からデー
タがI/O部に入りI/O部7がDMA要求信号14に
よりDMAC1にDMA要求を出すと、DMAC1は信
号28によりCPUをホールドさせ、アドレスバス2に
アドレスを出力し、DMA許可信号15によりI/O部
7にDMA許可を伝え、DMAサイクルを開始する。D
MA許可信号15によりI/O部7と第2のバッファ9
はイネーブル状態となり、アドレスバス2に出力された
アドレスがメモリ6のエリアである時はアドレスデコー
ダ5によりメモリ6のイネーブル信号16が出力され、
メモリ6と第1バッファ8がイネーブル状態となる。こ
こで、DMA許可信号15およびイネーブル信号16が
出力される以前はデータバス3とバス10間およびバス
3とバス11間は電気的に接続されていない状態つまり
切断された状態にある。メモリ・リード・コマンド信号
18とI/O・ライト・コマンド信号19が出力され、
メモリ6より読み出されるデータが、バス10、データ
バス3、バス11を通ってI/O部7に書き込まれる。
【0005】第1のバッファ8の方向はメモリ・リード
・コマンド信号18によりメモリ・リード時にはバス1
0からデータバス3の方向に、それ以外の時はデータバ
ス3からバス10の方向に設定され、第2のバッファ9
の方向はI/O・リード・コマンド信号20によりI/
O・リード時にはバス11からデータバス3の方向に、
それ以外の時はデータバス3からバス11の方向に設定
される。
【0006】
【発明が解決しようとしている課題】前記のように第1
のバッファ8または第2のバッファ9の方向をメモリ・
リード・コマンド信号18またはI/O・リード・コマ
ンド信号20で設定する場合、以下のような欠点があっ
た。
【0007】図4は、メモリ6からデータが読み出され
る時のタイミングを示した波形であり、第1のバッファ
8の出力方向はバス10の側であるとする。41はアド
レスバス2に出力されたアドレスの波形、42はメモリ
6のイネーブル信号16の波形(アクティブ・ロウ)、
43はメモリ・リード・コマンド信号18の波形(アク
ティブ・ロウ)、44はメモリ6がバス10へ出力する
データの波形、45は第1のバッファ8がバス10へ出
力するデータの波形であり、破線部はハイ・インピーダ
ンス、斜線部はデータが未確定であることを示してい
る。図5は、図4に示した出力波形と異なった波形を出
力するメモリとバッファを用いた例である。図6は、メ
モリ6およびバッファ8の出力端子の図である。図7
は、メモリ6とバッファ8の出力端子の結合図であり、
Tr1、Tr2はメモリ6側の出力端子であり、Tr
3、Tr4はバッファ8側の出力端子である。
【0008】今、100番地のデータを読み出すとす
る。100番地のアドレスがメモリ6のエリアに該当す
る時、アドレスデコーダ5によってイネーブル信号16
はロウとなり、第1のバッファ8がイネーブルとなる。
しかし、この時はメモリ・リード・コマンド信号18が
ハイなので、第1のバッファ8の出力方向はバス10側
に設定されており、バス10へ出力する方向に出力端子
が開く。その様子を図8に示す。図8の(a)、(b)
の様に、メモリ6側のTr1、Tr2は共にオフであ
る。その後メモリ・リード・コマンド信号がアクティブ
(波形43がロウ)になるので、第1のバッファ8は出
力する方向が変わり、バス10の側はハイ・インピーダ
ンスとなる。このとき、メモリ6側およびバッファ8側
の出力端子は共に閉じるため、Tr1、Tr2、Tr
3、Tr4全てがオフになる。さらにその後、メモリ6
側の出力端子が開き、メモリ6はバス10にデータの出
力を始める。このときの出力端子の状態を図9の
(a)、(b)に表す。ところが、設計変更等でメモリ
ー6あるいはバッファ8のタイミングが変更されたと
き、メモリ6およびバッファ8の素子の特性によって
は、図5のt13に示す期間だけ両者の出力が競合しぶ
つかり合う可能性がある。通常はこの様な出力の競合を
避ける様に設計するが、素子の選び方を変えるたびにタ
イミングを調べなければならず、また、数人で設計、変
更を行う場合にも見落とし等により出力の競合が起こり
得る。この競合が発生すると、図10に例示する様に、
メモリ6または第1のバッファ8の出力端子に過電流I
が生じ、その結果メモリ6あるいはバッファ8の端子出
力の素子が破壊されるという危険性がある。
【0009】この問題は、メモリ・リード・コマンド信
号18がアクティブになる前に第1のバッファ8の出力
方向が決定していれば回避できるのであるが、DMA動
作中はCPUは動作状態にないためバッファ8およびバ
ッファ9の送信方向を制御できない。また、一般に、C
PUがアクセスする場合と異なり、DMACはバッファ
の送信方向を決定できるような信号を出力しないことが
多いため、上記の欠点を解消することは困難であった。
【0010】
【課題を解決するための手段】本発明によれば、DMA
転送時に第1のバッファと第2のバッファの転送方向を
あらかじめ決定する転送方向設定手段を持つことによ
り、第1のバッファおよび第2のバッファの出力方向を
あらかじめ決定するようにしたものである。
【0011】
【実施例】実施例として、ファクシミリ装置における画
像データ等の記憶メモリのDMA動作を説明する。
【0012】図1は本発明の実施例を示したブロック図
であり、4は転送方向設定レジスタ、12は第1のバッ
ファ8の出力方向を決める信号、13は第2のバッファ
9の出力方向を決める信号である。また、図2はメモリ
6からデータが読み出される時のタイミングを示した波
形であり、21はアドレスバス2に出力されたアドレス
の波形、22はメモリ6のイネーブル信号16の波形
(アクティブ・ロウ)、23はメモリ・リード・コマン
ド信号18の波形(アクティブ・ロウ)、24はメモリ
6がバス10へ出力するデータの波形、25は第1バッ
ファ8の出力方向を決める信号12の波形、26は第1
のバッファ8がバス10へ出力するデータの波形であ
り、破線部はハイ・インピーダンス、斜線部はデータが
未確定定であることを示している。従来の技術の説明と
同様に、DMAによりメモリ6からI/O部7へデータ
を転送する場合について説明する。
【0013】DMAを実行する前に、DMA転送の方向
(メモリ6からI/O部7へ、またはI/O部7からメ
モリ6へ)を予め定め、CPU29よりデータバス3を
介して転送方向設定レジスタ4にデータを書き込む。転
送方向のデータが書き込まれた転送方向設定レジスタ4
は、25に示したような第1のバッファ8の出力方向を
決める信号12を出力し、これを反転した信号が13と
なり、第2のバッファ9の出力方向を決める。ここで2
5がロウの時、第1のバッファ8の出力方向はデータバ
ス3側であるとする。
【0014】そして、I/O部7がDMA要求信号14
によりDMAC1にDMA要求を出すと、DMAC1は
信号28によりCPUをホールドさせ、アドレスバス2
ヘ21に示すアドレスを出力し、DMA許可信号15に
よりI/O部7にDMA許可を伝え、DMAサイクルを
開始する。DMA許可信号15によりI/O部7と第2
のバッファ9はイネーブル状態となり、アドレスバス2
に出力されたアドレスがメモリ6のエリアである時は、
アドレスデコーダ5により22に示すメモリ6のイネー
ブル信号16が出力され、メモリ6と第1のバッファ8
がイネーブル状態となる。しかし、この時より十分以前
に第1のバッファ8の出力方向は信号12により決めら
れているため、26に示すように、メモリ6のイネーブ
ル信号16がアクティブ(22がロウ)になっても第1
のバッファ8はバス10側にデータを出力することはな
い。同様に第2のバッファ9の出力方向も、13により
すでにバス11側に決定している。
【0015】この後DMAC1により23に示すメモリ
・リード・コマンド信号18とI/O・ライト・コマン
ド信号19が出力される。メモリー・リード・コマンド
信号18がアクティブに(23がロウに)なると、24
に示すようにメモリ6はデータの出力を始めるが、この
時第1のバッファ8はバス10の方向にデータを出力す
ることはないため、バス10上でデータの競合は起こっ
ていない。そして、メモリ6より読み出されるデータ
が、バス10、第1のバッファ8、データバス3、第2
のバッファ9、バス11を通ってI/O部7に書き込ま
れることによってDMAが行われる。
【0016】また、I/O部7からメモリー6へのデー
タ転送についても同様に、予め第1のバッファ8および
第2のバッファ9の出力方向を決定した上で行われる。
【0017】ここでは、ファクシミリ装置におけるDM
A動作について説明したが、この方法はコンピュータな
どのようにDMAを使用する他のデータ処理装置にも有
効であるので特にファクシミリ装置に限定されるもので
はない。
【0018】[他の実施例]前記実施例では、転送方向
設定手段としてレジスタを用いたが、DMA転送の方向
が固定的である場合は、図11に示すようにスイッチ3
0とプルアップ抵抗31を用いて、オペレータがマニュ
アルで設定しても良い。
【0019】また、図12に示したように、第1のメモ
リ32と第2のメモリ33との間でDMA転送を行う場
合は、63は第1のメモリ32のイネーブル信号、64
は第2のメモリ33のイネーブル信号であるが、前記実
施例の場合と同様に、転送方向設定レジスタ4により、
第1及び第2のバッファ8、9の出力方向をあらかじめ
設定することができる。
【0020】
【発明の効果】以上説明したように、第1のバッファお
よび第2のバッファの出力方向をあらかじめ決定するよ
うにしたことにより、メモリやバッファなどの素子が破
壊されるという危険を防ぐ、という効果がある。また、
設計上においてもメモリやバッファの素子の特性による
タイミングの違いを気にすることなく設計・変更ができ
るという利点がある。
【図面の簡単な説明】
【図1】本発明を実施した装置のブロック図である。
【図2】実施例での主要な信号の波形である。
【図3】バッファの出力方向をDMACで決定する装置
のブロック図である。
【図4】バッファの出力方向をDMACで決定する装置
の主要な信号の波形である。
【図5】メモリおよびバッファの出力端子である。
【図6】メモリとバッファの出力端子の結合図である。
【図7】メモリとバッファの出力端子のスイッチング動
作を示す図である。
【図8】メモリとバッファの出力端子のスイッチング動
作を示す図である。
【図9】メモリとバッファの出力端子のスイッチング動
作を示す図である。
【図10】メモリとバッファの出力端子の短絡の様子を
示す図である。
【図11】他の実施例のブロック図である。
【図12】他の実施例のブロック図である。
【符号の説明】
1 ダイレクト・メモリ・アクセス・コントローラ 2 アドレスバス 3 データバス 4 転送方向設定レジスタ 5 アドレス・デコーダ 6 メモリ 7 I/O部 8 第1のバッファ 9 第2のバッファ 10 データバス 11 データバス 12 第1バッファ8の出力方向を決める信号 13 第2バッファ9の出力方向を決める信号 14 DMA要求信号 15 DMA許可信号 16 メモリ6のイネーブル信号 17 メモリ・ライト・コマンド信号 18 メモリ・リード・コマンド信号 19 I/O・ライト・コマンド信号 20 I/O・リード・コマンド信号 21 アドレス・バス2上のアドレス信号波形 22 メモリ6のイネーブル信号16の波形 23 メモリ・リード・コマンド信号18の波形 24 メモリ6の出力データ 25 第1バッファ8の出力方向を決める信号12の波
形 26 第1バッファ8のバス10側への出力データ 27 DMA準備命令 28 CPUをホールドする信号 29 CPU 30 データ転送方向をマニュアルで設定するスイッチ 31 プルアップ抵抗 32 第1のメモリ 33 第2のメモリ 41 アドレス・バス2上のアドレス信号波形 42 メモリ6のイネーブル信号16の波形 43 メモリ・リード・コマンド信号18の波形 44 メモリ6の出力データ 45 第1バッファ8のバス10側への出力データ 51 アドレス・バス2上のアドレス信号波形 52 メモリ6のイネーブル信号16の波形 53 メモリ・リード・コマンド信号18の波形 54 メモリ6の出力データ 55 第1バッファ8のバス10側への出力データ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 装置全体の制御を行う制御手段と、デー
    タの転送を制御する転送制御手段と、データを記憶する
    記憶手段と、外部装置とのデータの入出力を行う入出力
    手段と、データの入出力の方向を規定する方向規定手段
    と、 制御手段により制御され、方向規定手段の転送方向を設
    定し、転送制御手段によるデータ転送中は方向規定手段
    の転送方向を固定する転送方向設定手段を有し、 制御手段の命令により、方向規定手段の転送方向を設定
    した後、転送制御手段によるデータ転送を開始すること
    を特徴とするデータ処理装置。
  2. 【請求項2】 請求項1において、記憶手段および入出
    力手段間でデータの転送を行う際に、制御手段の命令に
    より、方向規定手段の転送方向を予め設定した後、転送
    制御手段によるデータ転送を開始することを特徴とする
    データ処理装置。
  3. 【請求項3】 装置全体の制御を行う制御手段と、デー
    タの転送を制御する転送制御手段と、データを記憶する
    複数の記憶手段と、外部装置とのデータの入出力を行う
    入出力手段と、データの入出力の方向を規定する方向規
    定手段と、 制御手段により制御され、方向規定手段の転送方向を設
    定し、転送制御手段によるデータ転送中は方向規定手段
    の転送方向を固定する転送方向設定手段を有し、 2つの制御手段間でデータの転送を行う際に、制御手段
    の命令により、方向規定手段の転送方向を設定した後、
    転送制御手段によるデータ転送を開始することを特徴と
    するデータ処理装置。
  4. 【請求項4】 請求項1において、転送制御手段はダイ
    レクト・アクセス・メモリ・コントローラであることを
    特徴とするデータ処理装置。
  5. 【請求項5】 請求項1において、方向規定手段は双方
    向バッファであることを特徴とするデータ処理装置。
  6. 【請求項6】 請求項3において、転送制御手段はダイ
    レクト・アクセス・メモリ・コントローラであることを
    特徴とするデータ処理装置。
  7. 【請求項7】 請求項3において、方向規定手段は双方
    向バッファであることを特徴とするデータ処理装置。
JP3277888A 1991-10-24 1991-10-24 データ処理装置 Pending JPH05120201A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3277888A JPH05120201A (ja) 1991-10-24 1991-10-24 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3277888A JPH05120201A (ja) 1991-10-24 1991-10-24 データ処理装置

Publications (1)

Publication Number Publication Date
JPH05120201A true JPH05120201A (ja) 1993-05-18

Family

ID=17589688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3277888A Pending JPH05120201A (ja) 1991-10-24 1991-10-24 データ処理装置

Country Status (1)

Country Link
JP (1) JPH05120201A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030022493A (ko) * 2001-09-10 2003-03-17 주식회사 텔루션 통신 시스템의 메모리 억세스 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030022493A (ko) * 2001-09-10 2003-03-17 주식회사 텔루션 통신 시스템의 메모리 억세스 장치

Similar Documents

Publication Publication Date Title
JPH01277928A (ja) 印刷装置
US5463740A (en) Data control device generating different types of bus requests and transmitting requests directly to one of a number of arbiters for obtaining access to a respective bus
JP2000047974A (ja) バス制御コントローラのバス調停方法、バス制御コントローラ及び電子機器のシステム
JPH07104826B2 (ja) 転送制御装置
JPH05120201A (ja) データ処理装置
JP2000155738A (ja) データ処理装置
JPH01108665A (ja) Dma転送制御方式
JPH023217B2 (ja)
JPH05334234A (ja) 高速dma転送装置
JP2671743B2 (ja) マイクロコンピュータ
JPH11110334A (ja) データ処理回路およびそれを備えた画像形成装置
JPS59123030A (ja) デ−タ処理装置
JPH05298239A (ja) ダイレクト・メモリー・アクセス制御回路
JPH0520253A (ja) データ処理装置
JPS6227846A (ja) 入出力チヤネル
JPH08161253A (ja) Dma制御方法およびdma制御装置
JPH06223032A (ja) 転送制御装置
JPH11134288A (ja) バスコントローラ
JPS63300346A (ja) Dma制御方式
JPH05324535A (ja) データ転送装置
JPS593615A (ja) Dma制御方式
JPH03189755A (ja) メモリ間転送装置
JPS62190544A (ja) プログラマブル・コントロ−ラの上位リンクユニツト
JPS59170933A (ja) プリンタにおける入力デ−タ制御装置
JPH036762A (ja) イメージメモリのダイレクトアクセス方法

Legal Events

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