JP3193155B2 - Dma制御方式 - Google Patents

Dma制御方式

Info

Publication number
JP3193155B2
JP3193155B2 JP27139192A JP27139192A JP3193155B2 JP 3193155 B2 JP3193155 B2 JP 3193155B2 JP 27139192 A JP27139192 A JP 27139192A JP 27139192 A JP27139192 A JP 27139192A JP 3193155 B2 JP3193155 B2 JP 3193155B2
Authority
JP
Japan
Prior art keywords
data
dma
data buffer
speed bus
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.)
Expired - Fee Related
Application number
JP27139192A
Other languages
English (en)
Other versions
JPH06119288A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP27139192A priority Critical patent/JP3193155B2/ja
Publication of JPH06119288A publication Critical patent/JPH06119288A/ja
Application granted granted Critical
Publication of JP3193155B2 publication Critical patent/JP3193155B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、DMA制御方式のう
ち、特に、一定時間を経過してもDMA転送要求が無い
とき、第1のデータバッファに記憶されているデータが
フル状態に満たない場合でも第2のデータバッファに転
送されることにより、DMA転送の遅延を防止するDM
A制御方式に関する。
【0002】
【従来の技術】一般に、計算機の外部記憶装置、例え
ば、磁気ディスク装置は、内部メモリに比べて動作速度
がかなり遅いため、当該磁気ディスク装置と内部メモリ
とのデータ転送を高速に制御する方式としてDMA(ダ
イレクト・メモリ・アクセス)制御方式がある。
【0003】上記DMA制御方式を図3の概略図を用い
て説明する。同図において、ビット幅の狭い、例えば、
8ビット幅の低速バス31には、DMA機器を構成する
磁気ディスク装置33およびフロッピーディスク装置3
5が接続されている。一方、ビット幅の広い、例えば、
64ビット幅の高速バス37には、主メモリ39、バス
コントローラ41およびCPU43が接続されている。
また、低速バス31と高速バス37との間には、磁気デ
ィスク装置33やフロッピーディスク装置35等のDM
A機器と主メモリ39との間でデータを高速に転送する
ために、DMAコントローラ45が設けられている。
【0004】上記従来のDMAコントローラ45による
データ転送の第1の方式では、低速バス31に接続され
ている磁気ディスク装置33からのデータ転送要求が発
生した場合、データ転送要求が発生する毎に高速バス3
7の取得と開放を行っている。このため、データ転送の
途中で、高速バス37を使用する他のDMA機器が当該
高速バス37を取得するおそれがあった。このような他
のDMA機器が高速バス37を長時間占有した場合は、
低速バス31側のデータバッファがフル状態になり、磁
気ディスク装置33のデータ転送を一時中断するか、ま
たはエラー発生として扱わなければならないという不具
合があった。
【0005】また、上記第1の方式によるデータ転送の
一時中断等を防止することを目的として、DMAコント
ローラ45内部に単純なデータバッファを設け、このデ
ータバッファ内にデータを蓄積しておくことでDMAコ
ントローラ45による高速バス37の使用の待ち状態を
防止するようにした第2の方式もある。しかし、この方
式は、DMA機器が要求するメモリアドレスが連続的に
変化する場合には問題を生じないが、ランダムなメモリ
アドレスに対してデータ転送を要求する磁気ディスク装
置33等のDMA機器においては、上述した単純なデー
タバッファでは正常なデータ転送を実行するのは難し
い。
【0006】
【発明が解決しようとする課題】そこで、本発明者は、
上記第2の方式の不具合を解消するために、前回のデー
タ転送要求アドレスの示すデータを記憶するデータバッ
ファと、今回のデータ転送要求アドレスの示すデータを
記憶するデータバッファとを備えると共に、前回アドレ
スと今回アドレスとを比較する比較器を備え、両アドレ
スが一致するとき当該データバッファに記憶されている
データを転送することによって正常なデータ転送を確保
する第3の方式を提案した。
【0007】しかし、この第3の方式では、DMA転送
のワード数(8バイト)に満たない状態でデータ転送が
終了した場合にデータバッファにデータが残ったままと
なり、主メモリにデータが転送されないので、データ転
送の遅延を招来するという問題があった。
【0008】また、磁気ディスク装置33等のDMA機
器からのデータ転送間隔が長くなった場合は、当該磁気
ディスク装置33等からのデータ転送の待ち状態にな
り、上記比較器によるアドレス比較が不可能になるため
データバッファの有効利用が図れなかった。
【0009】本発明はこのような従来の課題に鑑みてな
されたものであり、その目的は、一定時間を経過しても
DMA転送要求が無いとき、第1のデータバッファに記
憶されているデータがフル状態に満たない場合でも第2
のデータバッファに転送されることにより、DMA転送
の遅延を防止して高速なDMA転送を可能にするDMA
制御方式を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、転送ビット幅の狭い低速バスに接続され
ているDMA機器のデータ転送要求に応答して転送され
るデータを一時的に記憶する第1のデータバッファと、
この第1データバッファから転送されるデータを転送ビ
ット幅の広い高速バスに接続されているメモリに転送す
るのに一時的に記憶する第2のデータバッファと、前記
低速バスに接続されているDMA機器からのデータ転送
要求の時間間隔を計測するタイマと、このタイマの計測
により一定時間を経過しても前記低速バスに接続されて
いるDMA機器からDMA転送要求が無のとき前記第1
のデータバッファに記憶されているデータを前記第2の
データバッファに転送する制御手段と、を備えたことを
要旨とする。
【0011】
【作用】上記の構成では、タイマにより転送ビット幅の
狭い低速バスに接続されているDMA機器からDMA転
送要求の時間を計測する。このタイマの計測により一定
時間を経過しても前記低速バスに接続されているDMA
機器からデータ転送要求が無のとき、当該DMA機器の
データ転送要求に応答して転送されるデータを一時的に
記憶する第1のデータバッファに記憶されているデータ
を高速バスに接続されている第2のデータバッファに転
送するので、高速なDMA転送を可能にできる。
【0012】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図1は本発明のDMA制御方式に係る一実施例
の制御を示すブロック図である。なお、この実施例で
は、DMA機器から主メモリにデータをDMA転送する
場合を例としている。
【0013】同図において、転送ビット幅が狭い、例え
ば8ビットの低速バス1には、DMA機器を構成する磁
気ディスク装置3およびフロッピーディスク装置5が接
続されている。
【0014】一方、転送ビット幅が広い、例えば64ビ
ットの高速バス7には、主メモリ9と、バスコントロー
ラ11と、CPU13が接続されている。
【0015】上記低速バス1と高速バス7との間には、
低速バス1に接続されている磁気ディスク装置3やフロ
ッピーディスク装置5の所定アドレスに記憶されている
データを高速バス7に接続されている主メモリ9の所定
アドレスに高速に転送するためにDMAコントローラ1
5が設けられている。
【0016】上記DMAコントローラ15は、第1のデ
ータバッファ17、第2のデータバッファ19、レジス
タ21およびレジスタ23を備えて、低速バス1に接続
されている磁気ディスク装置3等のDMA機器からのデ
ータ転送要求に応答して高速バス7にデータを転送す
る。上記第1のデータバッファ17は、低速バス1から
伝送されるデータ101を一時的に記憶する。第2のデ
ータバッファ19は、高速バス7に接続され、第1のデ
ータバッファ17から転送されたデータを一時的に記憶
する。また、第2のデータバッファ19は、後述するコ
ントローラ27からのラッチ信号103により制御され
る。レジスタ21は、磁気ディスク装置3等から低速バ
ス1を介して伝送されるアドレス信号105をラッチし
て当該ラッチしたアドレスをレジスタ23および比較器
25に出力する。レジスタ23はレジスタ21から出力
されるアドレスを保持するもので、後述するラッチ信号
103により制御される。
【0017】また、DMAコントローラ15は、比較器
25およびコントローラ27を備えている。比較器25
は、レジスタ21とレジスタ23とにラッチされている
アドレスを比較して両アドレスが一致すると結果信号1
07を、例えばアクティブにし、両アドレスが不一致の
とき結果信号107を、例えばネガティブにする。コン
トローラ27は、DMAコントローラ15の制御中枢と
なるものであり、低速バス1を介してレジスタ21等に
伝送されるアドレスをラッチするためのパルスであるア
ドレスストローブ信号109,データ101をラッチす
るためのパルスであるデータストローブ信号111、D
MA転送要求を示すDMA転送要求信号115が入力さ
れる。また、DMAコントローラ15は低速バス1を介
して、磁気ディスク装置3等とのハンドシェイク信号と
して使用されるレディ信号113およびDMA転送を許
可するDMA許可信号117を出力する。更に、コント
ローラ27は高速バス7を介して、高速バス7へのデー
タ転送の要求を示す転送要求信号119を出力し、高速
バス7へのデータ転送が終了すると転送終了信号121
を入力する。
【0018】上記DMAコントローラ15に接続された
タイマ29は、低速バス1からのデータ転送要求の時間
を監視するものであり、データ転送要求が発生してアド
レスストローブ信号109が入力されると時間の計測を
開始する。計測値がタイムアウト検出時間(システムの
仕様により異なる)を超えるとタイマ29は、タイムア
ウト検出信号123をコントローラ27に出力する。こ
こで、タイムアウト検出時間(図2(b)のb時間)は、
低速バス1に接続されているDMA機器のディスク装置
3等から一定時間の間隔で発生するデータ転送要求時間
115の周期(図2(a)に示すa時間)よりも多少長い
時間に設定する。このタイムアウト検出時間は、固定で
あってもよいが、ソフトウェアにより設定するほうが良
い。上記タイムアウト検出時間に達する場合は、磁気デ
ィスク装置3に故障が発生した状態またはデータ転送が
終了した状態である。上記タイムアウト信号123が出
力されるとコントローラ27は、ラッチ信号103を出
力して第1のデータバッファ17にラッチされているデ
ータを第2のデータバッファ19に出力する。
【0019】次に本実施例の作用を図2(a),(b) のタイ
ムチャートを用いて説明する。
【0020】まず、システムが立ち上がり、磁気ディス
ク装置3から低速バス1を介してDMA転送要求信号1
15が供給されると、コントローラ27は磁気ディスク
装置3にDMA許可信号117を出力する。このDMA
許可信号117を受けた磁気ディスク装置3は、アドレ
スストローブ信号109とアドレス信号105を低速バ
ス1を介して出力するとともに、データストローブ信号
111と、データ101を低速バス1を介して出力す
る。これにより、レジスタ21にアドレス信号がラッチ
され、第1のバッファ17にデータが記憶されるととも
に、アドレスストローブ信号109の伝送によりタイマ
29が起動され、時間のカウントを開始する(図2
(b))。最初のデータ転送要求のa時間経過後、磁気ディ
スク装置3は、データ転送要求信号115を再び伝送す
る。これによってタイマ29が再起動される。このよう
に、データ転送要求信号115は、a時間周期で伝送さ
れ、これに応答して、タイマ29もa時間周期で起動さ
れる。レジスタ21にアドレス信号105がラッチさ
れ、第1のデータバッファ17にデータ101がラッチ
されると、コントローラ27は磁気ディスク装置3に対
してレディ信号115を出力する。
【0021】DMA許可信号117の出力後、コントロ
ーラ27の状態により第1のデータバッファ17および
第2のデータバッファ19は以下に示す動作状態にな
る。
【0022】データ転送の初期状態では第2のデータバ
ッファ19は空である。また、第2のデータバッファ1
9がフル状態の場合に、DMAコントローラ15が第2
のデータバッファ19にラッチされているデータを高速
バス7を介して主メモリ9に転送すると、第2のデータ
バッファ19は空の状態になる。この場合は、レジスタ
21とレジスタ23にラッチされている各アドレスを比
較する必要がないため、第1のデータバッファ17にラ
ッチされているデータを第2のデータバッファ19に、
レジスタ21にラッチされているアドレスをレジスタ2
3に転送し、第1のデータバッファ17とレジスタ21
とをそれぞれ空の状態にしてデータ転送要求の待ち状態
になる。
【0023】次のケースは、レジスタ21にラッチされ
たデータ転送要求アドレスとレジスタ23にラッチされ
たデータ転送要求アドレスとが比較器25により比較さ
れた結果、両アドレスが一致した場合である。このと
き、第2のデータバッファ19にデータが存在している
ため、DMAコントローラ15は第1のデータバッファ
17にラッチされているデータを第2のデータバッファ
19の該当ブロックに転送して、磁気ディスク装置3等
からのデータ転送要求の待ち状態になる。この場合、高
速バス7のバス幅が64ビットであり、磁気ディスク装
置3からのアクセスが8ビット単位であることから、第
2のデータバッファ19は8ビットを1ブロックとして
8ブロック分のデータ領域(データ幅)を持つこととな
る。したがって、上記該当ブロックは、レジスタ21に
ラッチされているアドレスデータの下位3ビットをデコ
ードして得られるもので、これで第1のデータバッファ
17のデータを第2のデータバッフを構成する8ブロッ
クのどの位置に転送するかがわかる。
【0024】更に、第3のケースは、上記比較器25に
よりレジスタ21とレジスタ23とにラッチされている
データ転送要求アドレスが一致しないときに、第2のデ
ータバッファ19にデータが転送されているものの、フ
ル状態である8バイト(64ビット)に達していない場
合である。この場合、DMAコントローラ15は、第2
のデータバッファ19にラッチされているデータを主メ
モリ9に転送して当該第2のデータバッファ19を空の
状態にする。主メモリ9に転送後にDMAコントローラ
15は、第1のデータバッファ17にラッチされている
データを第2のデータバッファ19に、レジスタ21に
ラッチされているデータ転送要求アドレスをレジスタ2
3に転送して当該第1のデータバッファ17およびレジ
スタ21をそれぞれ空の状態にして磁気ディスク装置3
からのデータ転送要求の待ち状態になる。
【0025】上記第3のケースの場合に希に発生するケ
ースであるが、第1のデータバッファ17および第2の
データバッファ19が共にフル状態において、磁気ディ
スク装置3等からのデータ転送要求があった場合であ
る。この場合、DMAコントローラ15は、第2のデー
タバッファ19にラッチされているデータを主メモリ9
に転送して、第1のデータバッファ17にラッチされて
いるデータを第2のデータバッファ19に転送されるま
で磁気ディスク装置3等にはレディ信号113を返さず
に待ち状態にさせる。
【0026】上述のように主メモリ9への転送アドレス
が連続的に変化する場合にはバス幅の広い第2のデータ
バッファ19を活用して高速転送を可能にし、ランダム
なアクセスに対してはアドレスレジスタを利用してデー
タ転送を実現している。
【0027】次に、磁気ディスク装置3からのデータ転
送要求後、例えば、磁気ディスク装置3の故障発生等に
より、一定時間aが経過して更にタイムアウト検出時間
cに達すると、タイマ29はタイムアウト信号123を
コントローラ27に出力する。タイムアウト信号123
が出力されるとコントローラ27は、ラッチ信号103
を第2のデータバッファ19およびレジスタ23に出力
して第2のデータバッファ19がフル状態に達していな
い場合でもラッチされているデータを高速バス7を介し
て主メモリ9に転送する。タイムアウト信号123が出
力された後、データ転送要求があってから時間bの経過
後、磁気ディスク装置3等からデータ転送要求がある
と、タイマ29は再び起動する。
【0028】これにより、第1のデータバッファ17が
8バイトに満たない状態で転送が終了した場合にあって
も、第1のデータバッファ17のデータを確実にDMA
転送することができる。また、磁気ディスク装置3等の
DMA機器側に故障が発生した場合や、データ転送が遅
れるような事情が発生した場合にあっても、高速バス7
側の第2のデータバッファ,DMA機器側の第1のデー
タバッファ17をエンプティ状態にでき、次回からのD
MA転送を確実に行うことが可能となる。
【0029】
【発明の効果】以上説明したように、本発明では、一定
時間を経過してもDMA転送要求が無いとき第1のデー
タバッファに記憶されているデータを第2のデータバッ
ファに転送することにより、第1のデータバッファに記
憶されているデータがフル状態に満たない場合でも第2
のデータバッファに転送することにより、DMA転送の
遅延を防止してDMA転送の高速化を実現できる。
【図面の簡単な説明】
【図1】本発明のDMA制御方式に係る一実施例の制御
を示すブロック図である。
【図2】本発明の動作を示すタイムチャートである。
【図3】DMA制御方式を示す概略図である。
【符号の説明】
1 低速バス 3 磁気ディスク装置 7 高速バス 9 主メモリ 15 DMAコントローラ 17 第1のデータバッファ 19 第2のデータバッファ 21,23 レジスタ 27 コントローラ 29 タイマ 101 データ 103 ラッチ信号 105 アドレス信号 113 レディ信号 115 DMA転送要求信号 123 タイムアウト信号

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 転送ビット幅の狭い低速バスに接続され
    ているDMA機器のデータ転送要求に応答して転送され
    るデータを一時的に記憶する第1のデータバッファと、 この第1のデータバッファから転送されるデータを転送
    ビット幅の広い高速バスに接続されているメモリに転送
    するのに一時的に記憶する第2のデータバッファと、 前記低速バスに接続されているDMA機器からのデータ
    転送要求の時間間隔を計測するタイマと、 このタイマの計測により一定時間を経過しても前記低速
    バスに接続されているDMA機器からDMA転送要求が
    無のとき前記第1のデータバッファに記憶されているデ
    ータを前記第2のデータバッファに転送する制御手段
    と、 を備えたことを特徴とするDMA制御方式。
JP27139192A 1992-10-09 1992-10-09 Dma制御方式 Expired - Fee Related JP3193155B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27139192A JP3193155B2 (ja) 1992-10-09 1992-10-09 Dma制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27139192A JP3193155B2 (ja) 1992-10-09 1992-10-09 Dma制御方式

Publications (2)

Publication Number Publication Date
JPH06119288A JPH06119288A (ja) 1994-04-28
JP3193155B2 true JP3193155B2 (ja) 2001-07-30

Family

ID=17499419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27139192A Expired - Fee Related JP3193155B2 (ja) 1992-10-09 1992-10-09 Dma制御方式

Country Status (1)

Country Link
JP (1) JP3193155B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098121A (en) * 1996-12-03 2000-08-01 Matsushita Electric Industrial Co., Ltd. Data transfer apparatus with improved throughput due to reduced processing overhead in interrupt process

Also Published As

Publication number Publication date
JPH06119288A (ja) 1994-04-28

Similar Documents

Publication Publication Date Title
EP0009678B1 (en) Computer input/output apparatus
US5630145A (en) Method and apparatus for reducing power consumption according to bus activity as determined by bus access times
US5287486A (en) DMA controller using a programmable timer, a transfer counter and an or logic gate to control data transfer interrupts
JP3193155B2 (ja) Dma制御方式
JPH11232214A (ja) 情報処理装置用プロセッサおよびその制御方法
US5418744A (en) Data transfer apparatus
JPH02135562A (ja) キュー・バッファの制御方式
JP2865131B2 (ja) データ転送方式
JP3476499B2 (ja) データ転送方式
JPH05165761A (ja) Dmaコントローラ
JP3266184B2 (ja) 入出力制御方法とその装置
JPH10116245A (ja) Dma制御装置
JP2002278918A (ja) Dma装置
JPH04323755A (ja) Dma装置
JP2002049580A (ja) バス管理装置、バス使用要求送信装置、バス管理方法、及びバス使用要求送信方法
JP3300016B2 (ja) 通信インターフェイス及び記録装置及び通信制御方法
JP2000293480A (ja) Dma転送装置
JPH05113947A (ja) Dma制御方式
JP2581041B2 (ja) デ−タ処理装置
JP3288159B2 (ja) バス接続方式
JPH10105488A (ja) 通信用コントローラ
JP2933039B2 (ja) 通信用コントローラ
JPH07281991A (ja) データ転送装置
JPH10133999A (ja) データ転送制御方式およびデータ転送制御方法
JP2000029822A (ja) ブリッジ装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090525

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090525

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100525

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100525

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110525

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees