JPH01228050A - Dma転送制御装置 - Google Patents
Dma転送制御装置Info
- Publication number
- JPH01228050A JPH01228050A JP63054366A JP5436688A JPH01228050A JP H01228050 A JPH01228050 A JP H01228050A JP 63054366 A JP63054366 A JP 63054366A JP 5436688 A JP5436688 A JP 5436688A JP H01228050 A JPH01228050 A JP H01228050A
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- data
- dma transfer
- information
- memory
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims abstract description 40
- 238000010586 diagram Methods 0.000 description 5
- 230000009977 dual effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 2
- 101100330723 Arabidopsis thaliana DAR2 gene Proteins 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
Landscapes
- Bus Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔目 次〕
概要
産業上の利用分野
従来の技術 (第2.3図)発明が解決しよ
うとする問題点 問題点を解決するための手段 作用 実施例 本発明の一実施例 (第1図) 発明の効果 〔概 要〕 DMA転送に必要な転送情報を定義するディスクリプタ
フォーマットを複数備えたDMA転送制御装置に関し、 DMA転送の初期設定を有効に行ってメモリ効率の向上
を図、ることのできるDMA転送制御装置を提供するこ
とを目的とし、 メモリと入出力装置あるいはメモリ同志のデータ転送を
行うDMA転送制御装置において、転送に必要な情報を
定義する複数のディスクリプタフォーマットを設け、8
亥ディスクリプタフォーマットを登録する登録手段と、
登録されたディスクリプタフォーマットに基づき、今回
のデータ転送に必要な転送情報を制jIl記憶からの情
報に基づき判断して、外部記憶より取り出し、前記制御
記憶に該転送情報を設定する転送情報設定手段と、を設
けることにより構成する。
うとする問題点 問題点を解決するための手段 作用 実施例 本発明の一実施例 (第1図) 発明の効果 〔概 要〕 DMA転送に必要な転送情報を定義するディスクリプタ
フォーマットを複数備えたDMA転送制御装置に関し、 DMA転送の初期設定を有効に行ってメモリ効率の向上
を図、ることのできるDMA転送制御装置を提供するこ
とを目的とし、 メモリと入出力装置あるいはメモリ同志のデータ転送を
行うDMA転送制御装置において、転送に必要な情報を
定義する複数のディスクリプタフォーマットを設け、8
亥ディスクリプタフォーマットを登録する登録手段と、
登録されたディスクリプタフォーマットに基づき、今回
のデータ転送に必要な転送情報を制jIl記憶からの情
報に基づき判断して、外部記憶より取り出し、前記制御
記憶に該転送情報を設定する転送情報設定手段と、を設
けることにより構成する。
本発明は、DMA転送制御装置に関し、詳細にはDMA
転送に必要な転送情報を定義するディスクリプタフォー
マットを複数備えたDMA転送制御装置に関する。
転送に必要な転送情報を定義するディスクリプタフォー
マットを複数備えたDMA転送制御装置に関する。
近時、パーソナルコンピュータやワークステーションで
は扱うことのできるデータ量の増加に伴って非常に高速
なデータ、例えばディスク装置等補助的記憶装置、ある
いは画像データや非常に多量のデータを外部機器との間
で扱う必要があり、これに対応してCPtJを介さずに
データ転送を行ういわゆるDMA転送が行われている。
は扱うことのできるデータ量の増加に伴って非常に高速
なデータ、例えばディスク装置等補助的記憶装置、ある
いは画像データや非常に多量のデータを外部機器との間
で扱う必要があり、これに対応してCPtJを介さずに
データ転送を行ういわゆるDMA転送が行われている。
通常のデータ転送はCPIJを介して行われていること
から、データ転送の速度はCPUの処理速度が支配的で
あるが、C’PtJの処理速度が追いつかないような高
速データを扱う場合にはCPUを介してデータ転送を行
うことは不可能である。また、さほど高速ではないデー
タであってもその量が多い場合には処理に時間がかかる
。そこで、処理速度の遅いcpuを介さずに外部の入出
力機器と内部のメモリあるいはメモリ同志でデータ転送
を直接行うDMA転送制御装置を用いてデータ転送速度
の高速化を図ることにより、高速データや大量のデータ
を効率よく処理することを意図している。
から、データ転送の速度はCPUの処理速度が支配的で
あるが、C’PtJの処理速度が追いつかないような高
速データを扱う場合にはCPUを介してデータ転送を行
うことは不可能である。また、さほど高速ではないデー
タであってもその量が多い場合には処理に時間がかかる
。そこで、処理速度の遅いcpuを介さずに外部の入出
力機器と内部のメモリあるいはメモリ同志でデータ転送
を直接行うDMA転送制御装置を用いてデータ転送速度
の高速化を図ることにより、高速データや大量のデータ
を効率よく処理することを意図している。
DMA転送制御装置(以下、DMAコントローラ: D
MACという)は前述のようなマイクロコンピュータや
ワークステーションの一部であり、まずDMA転送の概
念を第2図を参照して説明する。なお、DMA転送によ
るデータの転送は機器内部のメモリ同志で行う場合と外
部機器と機器内のメモリ間で行う場合があるが、ここで
は後者を例にあげて説明する。
MACという)は前述のようなマイクロコンピュータや
ワークステーションの一部であり、まずDMA転送の概
念を第2図を参照して説明する。なお、DMA転送によ
るデータの転送は機器内部のメモリ同志で行う場合と外
部機器と機器内のメモリ間で行う場合があるが、ここで
は後者を例にあげて説明する。
同図において、CPU4は制御バス、アドレスバスおよ
びデータバスを専有して処理を行っており、DMA転送
の要求が発生すると、I10ボート1からのリクエスト
信号REQがDMAC5に入力される。この場合、リク
エスト信号REQは外部機器からDMAC5に送出され
る。リクエスト信号REQが発生すると、CPU4によ
りあらかじめ登録されている転送元のアドレス(ソース
アドレス)、あるいは転送先のアドレス(ディストネー
ションアドレス)と転送データの量(バイトカウント)
に基づいてDMA転送を行うために、DMAC5からC
PU4に対してホールド要求信号HALDが送出され、
CPU4に対して各バスの解放を要求する。ホールド要
求信号HALDが発生すると、CPU4からホールド許
可信号HALDACKが返送され、各データバスがCP
U4から解放されてDMAC5に明は渡される。これに
より、DMAC5はCPtJ4に替わって各バスを専有
し、DMA転送を行い、I10ボート1に対してDMA
C5からリクエスト応答信号REQACKが送出される
。
びデータバスを専有して処理を行っており、DMA転送
の要求が発生すると、I10ボート1からのリクエスト
信号REQがDMAC5に入力される。この場合、リク
エスト信号REQは外部機器からDMAC5に送出され
る。リクエスト信号REQが発生すると、CPU4によ
りあらかじめ登録されている転送元のアドレス(ソース
アドレス)、あるいは転送先のアドレス(ディストネー
ションアドレス)と転送データの量(バイトカウント)
に基づいてDMA転送を行うために、DMAC5からC
PU4に対してホールド要求信号HALDが送出され、
CPU4に対して各バスの解放を要求する。ホールド要
求信号HALDが発生すると、CPU4からホールド許
可信号HALDACKが返送され、各データバスがCP
U4から解放されてDMAC5に明は渡される。これに
より、DMAC5はCPtJ4に替わって各バスを専有
し、DMA転送を行い、I10ボート1に対してDMA
C5からリクエスト応答信号REQACKが送出される
。
DMAC5は第3図に示すように、データハンドラ(以
下、Dユニットという)6、リクエストハンドラ(以下
、Rユニットという)7およびマイクロユニット(以下
、Mユニットという)8からなり、Rユニット7にリク
エスト信号REQが入力されると、Rユニット7はリク
エスト応答信号REQACKを返送し、Dユニット6お
よびMユニット8に対して転送リクエスト信号TREQ
を出力する。Mユニット8は転送リクエスト信号TRE
Qを受けて所定のDMA転送を行うために必要な制御情
報CDAをDユニット6に出力するとともに、応答信号
ACKをRユニット7に出力する。また、転送リクエス
ト信号TREQを受けたDユニット6はホールド信号H
ALDをCPU4に出力し、ホールド許可信号HALD
ACKがDユニット6に入力されるとDユニット6
およびデータバス、アドレスバス等を介して所定のDM
A転送が行われる。
下、Dユニットという)6、リクエストハンドラ(以下
、Rユニットという)7およびマイクロユニット(以下
、Mユニットという)8からなり、Rユニット7にリク
エスト信号REQが入力されると、Rユニット7はリク
エスト応答信号REQACKを返送し、Dユニット6お
よびMユニット8に対して転送リクエスト信号TREQ
を出力する。Mユニット8は転送リクエスト信号TRE
Qを受けて所定のDMA転送を行うために必要な制御情
報CDAをDユニット6に出力するとともに、応答信号
ACKをRユニット7に出力する。また、転送リクエス
ト信号TREQを受けたDユニット6はホールド信号H
ALDをCPU4に出力し、ホールド許可信号HALD
ACKがDユニット6に入力されるとDユニット6
およびデータバス、アドレスバス等を介して所定のDM
A転送が行われる。
DMA転送の概要は以上の通りであるが、DMA転送の
方法には大別するとレジスタダイレクト(REGDir
)およびディスクリブタチエインの二つがある。
方法には大別するとレジスタダイレクト(REGDir
)およびディスクリブタチエインの二つがある。
前者はソースおよびディストネーションの各アドレスと
バイトカウントをCPU4がDMAC5のレジスタに直
接書き込んでDMA転送を行うものであり、後者はDM
AC5が内部に格納されたマイクロプログラムに従って
メモリ2あるいはメモリ3にテーブル化されているソー
スおよびディストネーションの各アドレスとバイトカウ
ントの情報をDMAC5内のレジスタに書き込んでDM
A転送を行うものである。この場合、ソースおよびディ
ストネーションの各アドレスとバイトカウントの情報の
テーブルをディスクリプタフォーマット(D F)とい
い、DFは三つの情報からなり、固定されている。
バイトカウントをCPU4がDMAC5のレジスタに直
接書き込んでDMA転送を行うものであり、後者はDM
AC5が内部に格納されたマイクロプログラムに従って
メモリ2あるいはメモリ3にテーブル化されているソー
スおよびディストネーションの各アドレスとバイトカウ
ントの情報をDMAC5内のレジスタに書き込んでDM
A転送を行うものである。この場合、ソースおよびディ
ストネーションの各アドレスとバイトカウントの情報の
テーブルをディスクリプタフォーマット(D F)とい
い、DFは三つの情報からなり、固定されている。
しかしながら、このような従来のDMA転送制御装置に
あっては、ディスクリプタフォーマットが固定されたも
のであったために、ディスクリブタチエインによるDM
A転送時の初期設定、すなわち、ソースアドレス、ディ
ストネーションアドレスおよびバイトカウントの情報設
定に無駄が生じる場合があった。
あっては、ディスクリプタフォーマットが固定されたも
のであったために、ディスクリブタチエインによるDM
A転送時の初期設定、すなわち、ソースアドレス、ディ
ストネーションアドレスおよびバイトカウントの情報設
定に無駄が生じる場合があった。
例えば、メモリ2とメモリ3の間のDMA転送であれば
、ソースおよびディストネーションの各アドレスを設定
するとともに、バイトカウントを設定する必要がある。
、ソースおよびディストネーションの各アドレスを設定
するとともに、バイトカウントを設定する必要がある。
この場合、アドレスバスにソースとディストネーション
の各アドレスを乗せるために2度のバスサイクルが必要
であり、これをデュアル転送という、ところが、メモリ
2.3とI10ボートlの間のDMA転送ではI10ボ
ート1がアドレスではなくリクエスト応答信号REQA
CKにより管理されるため、ソースあるいはディストネ
ーションのどちらか一方のアドレスは必要がない、具体
的には、メモリ2.3からI10ポート1へのDMA転
送ではソースアドレスおよびバイトカウントを設定する
ことによりデータバス上のデータがI10ボート1に取
り込まれ、逆に、I10ポート1からメモリ2.3への
DMA転送ではディストネーションアドレスおよびバイ
トカウントを設定することによりデータバス上のデータ
がメモリ2.3に書き込まれる。このような−度のバス
サイクルで転送が行われるものを前述のデュアル転送に
対してシングル転送というが、シングル転送の場合、D
Fが固定された1種類のものであったために設定する必
要のない情報を設定することになる。したがって、ディ
ストネーションあるいはソースのアドレス値をテーブル
化するためにメモリ2.3内に確保しである領域は無駄
となりメモリ効率が低下するという問題点があった。
の各アドレスを乗せるために2度のバスサイクルが必要
であり、これをデュアル転送という、ところが、メモリ
2.3とI10ボートlの間のDMA転送ではI10ボ
ート1がアドレスではなくリクエスト応答信号REQA
CKにより管理されるため、ソースあるいはディストネ
ーションのどちらか一方のアドレスは必要がない、具体
的には、メモリ2.3からI10ポート1へのDMA転
送ではソースアドレスおよびバイトカウントを設定する
ことによりデータバス上のデータがI10ボート1に取
り込まれ、逆に、I10ポート1からメモリ2.3への
DMA転送ではディストネーションアドレスおよびバイ
トカウントを設定することによりデータバス上のデータ
がメモリ2.3に書き込まれる。このような−度のバス
サイクルで転送が行われるものを前述のデュアル転送に
対してシングル転送というが、シングル転送の場合、D
Fが固定された1種類のものであったために設定する必
要のない情報を設定することになる。したがって、ディ
ストネーションあるいはソースのアドレス値をテーブル
化するためにメモリ2.3内に確保しである領域は無駄
となりメモリ効率が低下するという問題点があった。
そこで本発明は、複数のディスクリプタフォーマットを
設けることによりDMA転送の初期設定を有効に行って
メモリ効率の向上を図ることのできるDMA転送制御装
置を提供することを目的としている。
設けることによりDMA転送の初期設定を有効に行って
メモリ効率の向上を図ることのできるDMA転送制御装
置を提供することを目的としている。
本発明によるDMA転送制御装置は上記目的達成のため
、メモリと入出力装置あるいはメモリ同志のデータ転送
を行うDMA転送制御装置において、転送に必要な情報
を定義する複数のディスクリプタフォーマットを設け、
該ディスクリプタフォーマットを登録する登録手段と、
登録されたディスクリプタフォーマットに基づき、今回
のデータ転送に必要な転送情報を制御記憶からの情報に
基づき判断して、前記制御記憶に該転送情報を設定する
転送情報設定手段と、を備えている。
、メモリと入出力装置あるいはメモリ同志のデータ転送
を行うDMA転送制御装置において、転送に必要な情報
を定義する複数のディスクリプタフォーマットを設け、
該ディスクリプタフォーマットを登録する登録手段と、
登録されたディスクリプタフォーマットに基づき、今回
のデータ転送に必要な転送情報を制御記憶からの情報に
基づき判断して、前記制御記憶に該転送情報を設定する
転送情報設定手段と、を備えている。
本発明では、ディスクリブタチエインによるDMA転送
時の初期設定を定義するディスクリプタフォーマットが
複数段けられ、DMA転送の型式、例えばデュアル転送
やシングル転送等に応して最適なディスクリプタフォー
マットがマイクロプログラムに従って選択される。
時の初期設定を定義するディスクリプタフォーマットが
複数段けられ、DMA転送の型式、例えばデュアル転送
やシングル転送等に応して最適なディスクリプタフォー
マットがマイクロプログラムに従って選択される。
したがって、DMA転送時の初期設定に無駄が発生する
ことがなく、外部メモリの領域が有効に利用されてメモ
リ効率が向上する。
ことがなく、外部メモリの領域が有効に利用されてメモ
リ効率が向上する。
以下、本発明の実施例を図面に基づいて説明する。
第1図は本発明に係るDMA転送制御装置の一実施例を
示す要部構成図であり、第3図に示した従来例と同一構
成部材には同一符号を付しその説明を省略する。なお、
本実施例ではDMA転送時の初期設定にその特徴があり
、初期設定に直接関係する要部のみを説明してDユニッ
ト6、Rユニット7の細部については省略する。
示す要部構成図であり、第3図に示した従来例と同一構
成部材には同一符号を付しその説明を省略する。なお、
本実施例ではDMA転送時の初期設定にその特徴があり
、初期設定に直接関係する要部のみを説明してDユニッ
ト6、Rユニット7の細部については省略する。
同図において、10はMユニットであり、Mユニット1
0にはディスクリプタフォーマットレジスタ(DFR:
登録手段)11が設けられる。DFRIIは図示は略さ
れ′Cいるが、転送モードレジスタの一部を形成する。
0にはディスクリプタフォーマットレジスタ(DFR:
登録手段)11が設けられる。DFRIIは図示は略さ
れ′Cいるが、転送モードレジスタの一部を形成する。
転送モードレジスタにはシングル転送、デュアル転送の
区別やREC; Dir、ディスクリブタチエインの
区別等をセットするものであり、DFRIIとともに使
用者が予め設定する。DFRIIには前述のディスクリ
ブタフォーマ7ト(DF)を設定するが、本実施例では
ディスクリプタフォーマットを3種類用意してあり、2
ビツトのコードで表わす。次表1はDFのコードとその
内容を対比させたものである。
区別やREC; Dir、ディスクリブタチエインの
区別等をセットするものであり、DFRIIとともに使
用者が予め設定する。DFRIIには前述のディスクリ
ブタフォーマ7ト(DF)を設定するが、本実施例では
ディスクリプタフォーマットを3種類用意してあり、2
ビツトのコードで表わす。次表1はDFのコードとその
内容を対比させたものである。
表 1
DFRIIのデータはセレクタPLA (SELPLA
)12に入力されており、SEL PLA12はマト
リックステーブルを形成する。SEL PLA12に
はジャンプコード(JtJMP C)が入力されてお
り、SEL PLA12はジャンプコードが入力され
るとDFRIIのデータ、すなわちDFに基づいて条件
判定を行う、SEL PLA12の条件判定結果はセ
レクタ(SEL)13に入力され、5EL13の入力に
はインクリメント素子(INC)14およびマツピング
PLA15からの出力とジャンプアドレス(JumpA
)が入力される。
)12に入力されており、SEL PLA12はマト
リックステーブルを形成する。SEL PLA12に
はジャンプコード(JtJMP C)が入力されてお
り、SEL PLA12はジャンプコードが入力され
るとDFRIIのデータ、すなわちDFに基づいて条件
判定を行う、SEL PLA12の条件判定結果はセ
レクタ(SEL)13に入力され、5EL13の入力に
はインクリメント素子(INC)14およびマツピング
PLA15からの出力とジャンプアドレス(JumpA
)が入力される。
5EL13はSEL PLA12の条件判定結果に基
づき入力を選択し、マイクロROM (μROM)16
のアドレス情報として出力する。ジャンプアドレスは制
御情報CDAの一つであるが、このジャンプアドレスに
ついては後述する。lNC14は例えば、カウンタから
なり、5EL13の出力を+1だけインクリメントして
出力する。したがって、5EL13の出力が選択された
ときはμROM16に対応するアドレス情報は順次+1
だけインクリメントしたものとなる。μROM16には
DMA転送に必要な初期設定を行うプログラム(以下、
マイクロプログラムという)が格納されており、5EL
13の出力に応じてマイクロプログラムの進行が制御さ
れる。μROM16はマイクロプログラムの進行に従っ
て制御情報を出力し、データランチ(DLACH)17
を経て制御情報CDAが出力される。MAP PLA
15にはマイクロプログラムのスタートアドレスが設定
されており、Rユニット7からの転送リクエスト信号R
EQが入力されるとMAP PLA15はこのスター
トアドレスを5EL13に出力する。μROM16はマ
イクロプログラムの進行に従って制御情報ODAを出力
し、データラッチ(DLACH)17を経て制御情報C
DAが出力される。
づき入力を選択し、マイクロROM (μROM)16
のアドレス情報として出力する。ジャンプアドレスは制
御情報CDAの一つであるが、このジャンプアドレスに
ついては後述する。lNC14は例えば、カウンタから
なり、5EL13の出力を+1だけインクリメントして
出力する。したがって、5EL13の出力が選択された
ときはμROM16に対応するアドレス情報は順次+1
だけインクリメントしたものとなる。μROM16には
DMA転送に必要な初期設定を行うプログラム(以下、
マイクロプログラムという)が格納されており、5EL
13の出力に応じてマイクロプログラムの進行が制御さ
れる。μROM16はマイクロプログラムの進行に従っ
て制御情報を出力し、データランチ(DLACH)17
を経て制御情報CDAが出力される。MAP PLA
15にはマイクロプログラムのスタートアドレスが設定
されており、Rユニット7からの転送リクエスト信号R
EQが入力されるとMAP PLA15はこのスター
トアドレスを5EL13に出力する。μROM16はマ
イクロプログラムの進行に従って制御情報ODAを出力
し、データラッチ(DLACH)17を経て制御情報C
DAが出力される。
上記SEL PLA12.5EL13、lNC14お
よびMAP PLA15は転送情報設定手段18を構
成する。制j1情l1ICD AはDユニット6に接続
されるとともに、ソースアドレスレジスタ(SAL)1
9、ディストネーションアドレスレジスタ(DAR)2
0およびバイトカウントレジスタ(BCR)21にそれ
ぞれ接続される。5AR19はソースアドレス、DAR
20はディストネーションアドレス、BCR21はバイ
トカウントをそれぞれ設定するレジスタであり、制御情
報ODAに従ってデータバス22上のデータを対応する
レジスタ内に格納する。
よびMAP PLA15は転送情報設定手段18を構
成する。制j1情l1ICD AはDユニット6に接続
されるとともに、ソースアドレスレジスタ(SAL)1
9、ディストネーションアドレスレジスタ(DAR)2
0およびバイトカウントレジスタ(BCR)21にそれ
ぞれ接続される。5AR19はソースアドレス、DAR
20はディストネーションアドレス、BCR21はバイ
トカウントをそれぞれ設定するレジスタであり、制御情
報ODAに従ってデータバス22上のデータを対応する
レジスタ内に格納する。
次に、作用を説明する。
転送リクエスト信号TREQがMAP PLA15に
入力されるとマイクロプログラムの起動アドレスが5E
L13を経てμROM16に入力され、μROM16に
格納されているマイクロプログラムが起動される。
入力されるとマイクロプログラムの起動アドレスが5E
L13を経てμROM16に入力され、μROM16に
格納されているマイクロプログラムが起動される。
いま、DFRIIにDFとして〔0,0〕のコードが設
定されているとすると、SEL PLA12により条
件判定を行い、5EL13がlNC14の出力を選択す
る。この場合、μROM16のアドレスは順次インクリ
メントされるのでマイクロプログラムの実行は次のよう
に行われる。
定されているとすると、SEL PLA12により条
件判定を行い、5EL13がlNC14の出力を選択す
る。この場合、μROM16のアドレスは順次インクリ
メントされるのでマイクロプログラムの実行は次のよう
に行われる。
まず、Dユニット6に制御情報ODAを出力し、ソース
アドレス情報をDユニット6内に取り込み、データバス
22を介して転送情報設定手段18にその情報を書き込
む0次いで、Dユニット6にディストネーションアドレ
ス情報を取り込み、データバス22を介して5AR19
に書き込む、最後に、Dユニット6にバイトカウント情
報を取り込んでDAR20に書き込む、すなわち、ソー
ス、ディストネーション、バイトの順にそれぞれを該当
するレジスタに書き込む、これは従来と同様であり、シ
ングル転送時には無駄が発生することは前述の通りであ
る。これに対して本実施例ではDFを複数備・えており
、以下、DF (1,0〕および〔1,1〕の場合を説
明する。
アドレス情報をDユニット6内に取り込み、データバス
22を介して転送情報設定手段18にその情報を書き込
む0次いで、Dユニット6にディストネーションアドレ
ス情報を取り込み、データバス22を介して5AR19
に書き込む、最後に、Dユニット6にバイトカウント情
報を取り込んでDAR20に書き込む、すなわち、ソー
ス、ディストネーション、バイトの順にそれぞれを該当
するレジスタに書き込む、これは従来と同様であり、シ
ングル転送時には無駄が発生することは前述の通りであ
る。これに対して本実施例ではDFを複数備・えており
、以下、DF (1,0〕および〔1,1〕の場合を説
明する。
DF (L O)
このとき外部記憶から取り込まれるデータはソースアド
レスおよびバイトカウントであり、これはシングル転送
モード、すなわち、メモリからI10ポートを介して外
部へデータ転送を行う場合に好適なりFである。
レスおよびバイトカウントであり、これはシングル転送
モード、すなわち、メモリからI10ポートを介して外
部へデータ転送を行う場合に好適なりFである。
転送リクエスト信号TREQによりμROM16内のマ
イクロプログラムが起動すると、まず、ジャンプコード
JUMP Cが発生し、SEL PLA12により
DFRIIの条件判定が行われる。いま、DFは〔1,
0〕が設定されているので、ソースアドレスの書き込み
が必要であると判断して5EL13によりlNC14の
出力を選択し、マイクロプログラムに従って外部記憶か
らソースアドレスを取り込み、5AR19に書き込む、
5AR19の書き込みが完了すると再びジャンプコード
JUMpcがSEL PLA12に入力され、5EL
PLA12はDFRIIを参照してDAR20の書き込
みは不要であると判断し、5EL13はジャンプアドレ
スJUMP Aを選択する。ジャンプアドレスJUM
P Aは5AR19の書き込みが完了するとマイクロ
プログラムに従ってμROM16により出力されており
、この場合、バイトカウントを書き込むマイクロプログ
ラムが格納されているアドレスデータが出力される。し
たがって、5AR19の書き込みが完了するとDAR2
0の書き込みはジャンプしてBCR21の書込みが行わ
れる。
イクロプログラムが起動すると、まず、ジャンプコード
JUMP Cが発生し、SEL PLA12により
DFRIIの条件判定が行われる。いま、DFは〔1,
0〕が設定されているので、ソースアドレスの書き込み
が必要であると判断して5EL13によりlNC14の
出力を選択し、マイクロプログラムに従って外部記憶か
らソースアドレスを取り込み、5AR19に書き込む、
5AR19の書き込みが完了すると再びジャンプコード
JUMpcがSEL PLA12に入力され、5EL
PLA12はDFRIIを参照してDAR20の書き込
みは不要であると判断し、5EL13はジャンプアドレ
スJUMP Aを選択する。ジャンプアドレスJUM
P Aは5AR19の書き込みが完了するとマイクロ
プログラムに従ってμROM16により出力されており
、この場合、バイトカウントを書き込むマイクロプログ
ラムが格納されているアドレスデータが出力される。し
たがって、5AR19の書き込みが完了するとDAR2
0の書き込みはジャンプしてBCR21の書込みが行わ
れる。
DF (1、l〕
このとき、外部記憶から取り込まれるデータはディスト
ネーションアドレスおよびバイトカウントであり、これ
はシングル転送モード、すなわち、外部機器がI10ボ
ートを介してメモリにデータ転送を行う場合に好適なり
Fである。
ネーションアドレスおよびバイトカウントであり、これ
はシングル転送モード、すなわち、外部機器がI10ボ
ートを介してメモリにデータ転送を行う場合に好適なり
Fである。
マイクロプログラムが起動するとジャンプコードJUM
P Cが発生し、SEL PLA12はDFRII
の条件判定を行う、この場合、DFが〔1、l〕である
のでソースアドレスの書き込みは不要であると判断して
5EL13はジャンプアドレスJUMP Aを選択す
る。このとき、ジャンプアドレスJUMP Aにはデ
ィストネーションアドレスの書き込みを行うマイクロプ
ログラムが格納されているアドレスデータが出力されて
おり、このアドレスデータがμROM16に入力されて
DAR20の書き込みが行われる。DAR20の書込み
が完了すると、再びジャンプコードが発生し、5ELP
LA12はDFRIIを参照して条件判定を行うが、こ
の場合、DFが〔l、1〕であるのでバイトカウントの
書き込みを行うために5EL13は!NC14の出力を
選択し、バイトカウントの書き込みを行うマイクロプロ
グラムが起動される。これにより、BCR21の書き込
みが行われる。
P Cが発生し、SEL PLA12はDFRII
の条件判定を行う、この場合、DFが〔1、l〕である
のでソースアドレスの書き込みは不要であると判断して
5EL13はジャンプアドレスJUMP Aを選択す
る。このとき、ジャンプアドレスJUMP Aにはデ
ィストネーションアドレスの書き込みを行うマイクロプ
ログラムが格納されているアドレスデータが出力されて
おり、このアドレスデータがμROM16に入力されて
DAR20の書き込みが行われる。DAR20の書込み
が完了すると、再びジャンプコードが発生し、5ELP
LA12はDFRIIを参照して条件判定を行うが、こ
の場合、DFが〔l、1〕であるのでバイトカウントの
書き込みを行うために5EL13は!NC14の出力を
選択し、バイトカウントの書き込みを行うマイクロプロ
グラムが起動される。これにより、BCR21の書き込
みが行われる。
このように、本実施例ではDFとして(0,0〕の他に
〔1,0]および(1,1)という三つのDFを設ける
ことにより、シングル転送時に必要のないアドレスデー
タ、すなわち、ソースあるいはディストネーションのア
ドレスデータをメモリに登録しておく必要がなくなって
メモリ領域を有効に利用することができ、メモリ効率を
向上させることができる。
〔1,0]および(1,1)という三つのDFを設ける
ことにより、シングル転送時に必要のないアドレスデー
タ、すなわち、ソースあるいはディストネーションのア
ドレスデータをメモリに登録しておく必要がなくなって
メモリ領域を有効に利用することができ、メモリ効率を
向上させることができる。
なお、本実施例ではディスクリブタチエインを想定した
DMA転送の初期設定について示したが、ディスクリブ
タチエインとREG Dirを組合わせることも可能
である。例えば、ソースアドレスとバイトカウントはデ
ィスクリブタチエイン(DFが〔1,0〕の態様)によ
り設定し、ディストネーションアドレスはREG D
irによることも可能である。このようにするとディス
トネーションアドレスが一定であるような場合、初期設
定値として利用することができ、ソースアドレスとバイ
トカウントを書き替えることで初期設定が完了する。
DMA転送の初期設定について示したが、ディスクリブ
タチエインとREG Dirを組合わせることも可能
である。例えば、ソースアドレスとバイトカウントはデ
ィスクリブタチエイン(DFが〔1,0〕の態様)によ
り設定し、ディストネーションアドレスはREG D
irによることも可能である。このようにするとディス
トネーションアドレスが一定であるような場合、初期設
定値として利用することができ、ソースアドレスとバイ
トカウントを書き替えることで初期設定が完了する。
また、本実施例ではDFを3種類用意したが、これに限
らず他のDFを定義して増設することも可能である。
らず他のDFを定義して増設することも可能である。
本発明によれば、複数のディスクリブタフォーマ、トを
設け、DMA転送の型式、例えばデュアル転送やシング
ル転送等に応じた最適なディスクリプタフォーマットを
マイクロプログラムに従って選択しているので、DMA
転送時の初期設定に無駄が発生することがなく、外部メ
モリの領域を有効に利用でき、メモリ効率の向上を図っ
たDMA転送制御装置を得ることができる。
設け、DMA転送の型式、例えばデュアル転送やシング
ル転送等に応じた最適なディスクリプタフォーマットを
マイクロプログラムに従って選択しているので、DMA
転送時の初期設定に無駄が発生することがなく、外部メ
モリの領域を有効に利用でき、メモリ効率の向上を図っ
たDMA転送制御装置を得ることができる。
第1図は本発明に係るDMA転送制御装置の一実施例を
示すその要部構成図、 第2.3図は従来のDMA転送転送制御室装置例を示す
図であり、 第2図はそのDMA転送の概念を説明する図、第3図は
そのDMAコントローラの内部構成を示す概略図、であ
る。 10・・・・・・マイクロユニット(制御手段)、11
・・・・・・ディスクリプタフォーマットレジスタ(登
録手段)、 12・・・・・・セレクタPLA。 13・・・・・・セレクタ、 14・・・・・・インクリメント素子、15・・・・・
・マツプPLA。 18・・・・・・転送情報設定手段。
示すその要部構成図、 第2.3図は従来のDMA転送転送制御室装置例を示す
図であり、 第2図はそのDMA転送の概念を説明する図、第3図は
そのDMAコントローラの内部構成を示す概略図、であ
る。 10・・・・・・マイクロユニット(制御手段)、11
・・・・・・ディスクリプタフォーマットレジスタ(登
録手段)、 12・・・・・・セレクタPLA。 13・・・・・・セレクタ、 14・・・・・・インクリメント素子、15・・・・・
・マツプPLA。 18・・・・・・転送情報設定手段。
Claims (2)
- (1)メモリと入出力装置あるいはメモリ同志のデータ
転送を行うDMA転送制御装置において、転送に必要な
情報を定義する複数のディスクリプタフォーマットを設
け、 前記ディスクリプタフォーマットを登録する登録手段を
備えたことを特徴とするDMA転送制御装置。 - (2)前記登録されたディスクリプタフォーマットに基
づき、データ転送に必要な転送情報を制御記憶からの情
報に基づき判断して、外部記憶より取り出し、前記制御
記憶に該転送情報を設定する転送情報設定手段と、 を備えたことを特徴とする請求項1記載のDMA転送制
御装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63054366A JP2515367B2 (ja) | 1988-03-08 | 1988-03-08 | Dma転送制御装置 |
US07/318,283 US5077664A (en) | 1988-03-08 | 1989-03-03 | Direct memory access controller |
KR1019890002811A KR920007950B1 (ko) | 1988-03-08 | 1989-03-07 | 다이렉트 메모리 액세스 제어장치 |
DE68925048T DE68925048D1 (de) | 1988-03-08 | 1989-03-07 | Direktspeicherzugriffssteuerung |
EP89104032A EP0332151B1 (en) | 1988-03-08 | 1989-03-07 | Direct memory access controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63054366A JP2515367B2 (ja) | 1988-03-08 | 1988-03-08 | Dma転送制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01228050A true JPH01228050A (ja) | 1989-09-12 |
JP2515367B2 JP2515367B2 (ja) | 1996-07-10 |
Family
ID=12968656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63054366A Expired - Lifetime JP2515367B2 (ja) | 1988-03-08 | 1988-03-08 | Dma転送制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2515367B2 (ja) |
-
1988
- 1988-03-08 JP JP63054366A patent/JP2515367B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2515367B2 (ja) | 1996-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02267634A (ja) | 割込み処理装置 | |
JPH03129448A (ja) | データ転送制御装置 | |
JP2822782B2 (ja) | シングルチップマイクロコンピュータ | |
JPH05108548A (ja) | Dmaコントローラ | |
JPS63129449A (ja) | 制御インターフエース装置 | |
JPH01228050A (ja) | Dma転送制御装置 | |
JP2568017B2 (ja) | マイクロプロセッサ及びそれを使用したデータ処理システム | |
US20080209085A1 (en) | Semiconductor device and dma transfer method | |
JP2001188745A (ja) | 制御装置及び制御方法 | |
US5201052A (en) | System for transferring first and second ring information from program status word register and store buffer | |
KR100195953B1 (ko) | 입출력프로세서의 고성능 디엠에이 구동방법 | |
EP0382529B1 (en) | Microprocessor having store buffer | |
JPS59218569A (ja) | マイクロ・コンピユ−タ | |
JP2594611B2 (ja) | Dma転送制御装置 | |
JPS603049A (ja) | バスインタ−フエ−ス装置 | |
JPH0736806A (ja) | Dma方式 | |
JPH05242009A (ja) | 直接メモリアクセス装置 | |
JPS60123954A (ja) | スタック処理方式 | |
JP2847863B2 (ja) | マイクロプロセッサ割込み制御方式 | |
JPS59177631A (ja) | Dma制御方式 | |
JPS60142450A (ja) | 記憶システム | |
Sebbel | Input/output microprogramming for the 7.755 central processing unit of siemens system 7.000 | |
JPH0355642A (ja) | メモリー制御方式 | |
JP2003186666A (ja) | マイクロコンピュータおよびdma制御回路 | |
JPH0322071A (ja) | データ転送処理回路 |