JP2504512B2 - Dmaコントロ―ラ - Google Patents
Dmaコントロ―ラInfo
- Publication number
- JP2504512B2 JP2504512B2 JP63055899A JP5589988A JP2504512B2 JP 2504512 B2 JP2504512 B2 JP 2504512B2 JP 63055899 A JP63055899 A JP 63055899A JP 5589988 A JP5589988 A JP 5589988A JP 2504512 B2 JP2504512 B2 JP 2504512B2
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- channel
- vector
- supplied
- channels
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/30—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 〔概要〕 直接データ転送の制御を行なうDMAコントローラに関
し、 システム障害の要因を早期に中央処理装置に通知して
二次障害を防止できることを目的とし、 直接データ転送を別々に行なう複数のチャネルを持つ
DMAコントローラにおいて、該複数のチャネルが同時に
データ転送を終了したとき、システム障害による異常終
了のチャネルをデータ転送の完了した正常終了のチャネ
ルに優先させ、その後予め決められた該複数のチャネル
の優先順位に従って割込みを行なう単一のチャネルを選
択決定する割込みチャネル決定回路と、該複数のチャネ
ル夫々毎に該正常終了に対応する正常割込み及び該異常
終了に対応する異常割込み夫々の割込みベクタを格納し
たベクタレジスタと、該割込みチャネル決定回路で決定
されたチャネル及びその正常終了又は異常終了に応じて
該ベクタレジスタから割込みベクタを読み出す読出制御
回路とを有し、該ベクタレジスタから読み出した割込み
ベクタを中央処理装置に供給するよう構成する。
し、 システム障害の要因を早期に中央処理装置に通知して
二次障害を防止できることを目的とし、 直接データ転送を別々に行なう複数のチャネルを持つ
DMAコントローラにおいて、該複数のチャネルが同時に
データ転送を終了したとき、システム障害による異常終
了のチャネルをデータ転送の完了した正常終了のチャネ
ルに優先させ、その後予め決められた該複数のチャネル
の優先順位に従って割込みを行なう単一のチャネルを選
択決定する割込みチャネル決定回路と、該複数のチャネ
ル夫々毎に該正常終了に対応する正常割込み及び該異常
終了に対応する異常割込み夫々の割込みベクタを格納し
たベクタレジスタと、該割込みチャネル決定回路で決定
されたチャネル及びその正常終了又は異常終了に応じて
該ベクタレジスタから割込みベクタを読み出す読出制御
回路とを有し、該ベクタレジスタから読み出した割込み
ベクタを中央処理装置に供給するよう構成する。
本発明はDMA(ダイレクト・メモリ・アクセス)コン
トローラに関し、直接データ転送の制御を行なうDMAコ
ントローラに関する。
トローラに関し、直接データ転送の制御を行なうDMAコ
ントローラに関する。
従来より、コンピュータシステムにおいてメモリ,入
力/出力(I/O)インターフェース等の間でのデータ転
送時間を短縮するために、DMAコントローラの制御によ
って周辺装置としての中央処理装置(CPU)を介さず直
接データを転送するDMA転送が行なわれている。
力/出力(I/O)インターフェース等の間でのデータ転
送時間を短縮するために、DMAコントローラの制御によ
って周辺装置としての中央処理装置(CPU)を介さず直
接データを転送するDMA転送が行なわれている。
このようなDMAコントローラには複数のチャネルを有
し、各チャネルで別々のデータ転送を行なうものがあ
る。この場合、一般に各チャネルはデータ転送が終了す
ると割込みによりデータ転送終了をCPUに通知する。こ
れによりCPUは割込みアクノリッジサイクルを実行し、D
MAコントローラから返される割込みベクタに従って、デ
ータ転送終了に対する処理ルーチンを実行する。
し、各チャネルで別々のデータ転送を行なうものがあ
る。この場合、一般に各チャネルはデータ転送が終了す
ると割込みによりデータ転送終了をCPUに通知する。こ
れによりCPUは割込みアクノリッジサイクルを実行し、D
MAコントローラから返される割込みベクタに従って、デ
ータ転送終了に対する処理ルーチンを実行する。
従って、複数のチャネルに割込み要求がある場合には
いずれか1つを選び、その割込み要求の割込みベクタを
CPUに供給する必要がある。
いずれか1つを選び、その割込み要求の割込みベクタを
CPUに供給する必要がある。
従来のDMAコントローラは、複数のチャネルに優先順
位(プライオリティ)を予め割付けている。複数のチャ
ネルに割込み要求がある場合、プライオリティの最も高
いチャネルを選び、このチャネルの割込みベクタをCPU
に供給している。
位(プライオリティ)を予め割付けている。複数のチャ
ネルに割込み要求がある場合、プライオリティの最も高
いチャネルを選び、このチャネルの割込みベクタをCPU
に供給している。
ここで、プライオリティの低いチャネルがバスエラー
等の例外要因によりデータ転送を終了し、これと略同時
にプライオリティの高いチャネルがデータ転送を正常終
了した場合、従来のDMAコントローラはプライオリティ
に従って正常終了したプライオリティの高いチャネルの
割込みベクタをCPUに供給している。
等の例外要因によりデータ転送を終了し、これと略同時
にプライオリティの高いチャネルがデータ転送を正常終
了した場合、従来のDMAコントローラはプライオリティ
に従って正常終了したプライオリティの高いチャネルの
割込みベクタをCPUに供給している。
このため、バスエラー等のシステム障害に係る要因を
CPUに通知することが遅れてしまい二次障害を起こすお
それがあるという問題があった。
CPUに通知することが遅れてしまい二次障害を起こすお
それがあるという問題があった。
本発明は上記の点に鑑みなされたもので、システム障
害の要因を早期にCPUに通知して二次障害を防止できるD
MAコントローラを提供することを目的とする。
害の要因を早期にCPUに通知して二次障害を防止できるD
MAコントローラを提供することを目的とする。
本発明のDMAコントローラは、 直接データ転送を別々に行なう複数のチャネルを持つ
DMAコントローラにおいて、 複数のチャネルが同時にデータ転送を終了したとき、
システム障害による異常終了のチャネルをデータ転送の
完了した正常終了のチャネルに優先させ、その後予め決
められた複数のチャネルの優先順位に従って割込みを行
なう単一のチャネルを選択決定する割込みチャネル決定
回路(111)と、 複数のチャネル夫々毎に該正常終了に対応する正常割
込み及び異常終了に対応する異常割込み夫々の割込みベ
クタを格納したベクタレジスタ(115)と、 割込みチャネル決定回路(111)で決定されたチャネ
ル及びその正常終了又は異常終了に応じてベクタレジス
タ(115)から割込みベクタを読み出す読出制御回路(1
12)とを有する。
DMAコントローラにおいて、 複数のチャネルが同時にデータ転送を終了したとき、
システム障害による異常終了のチャネルをデータ転送の
完了した正常終了のチャネルに優先させ、その後予め決
められた複数のチャネルの優先順位に従って割込みを行
なう単一のチャネルを選択決定する割込みチャネル決定
回路(111)と、 複数のチャネル夫々毎に該正常終了に対応する正常割
込み及び異常終了に対応する異常割込み夫々の割込みベ
クタを格納したベクタレジスタ(115)と、 割込みチャネル決定回路(111)で決定されたチャネ
ル及びその正常終了又は異常終了に応じてベクタレジス
タ(115)から割込みベクタを読み出す読出制御回路(1
12)とを有する。
本発明においては、割込みチャンネル決定回路(11
1)で異常終了のチャネルを正常終了のチャネルに優先
させ、その後複数のチャネルの優先順位に従って割込み
チャネルを決定し、この決定により読出制御回路(11
2)でベクタレジスタ(115)から割込みベクタを読み出
してCPUに供給する。
1)で異常終了のチャネルを正常終了のチャネルに優先
させ、その後複数のチャネルの優先順位に従って割込み
チャネルを決定し、この決定により読出制御回路(11
2)でベクタレジスタ(115)から割込みベクタを読み出
してCPUに供給する。
このため、異常割込みベクタが優先してCPUに供給さ
れ、システム障害の要因が優先的かつ早期にCPUに通知
される。
れ、システム障害の要因が優先的かつ早期にCPUに通知
される。
第2図は本発明のDMAコントローラを適用した2バス
システムの一実施例のシステム構成図を示す。
システムの一実施例のシステム構成図を示す。
同図中、バス30はアドレスバス30a、データバス30b、
コントローラバス30cより構成されており、バス30にはC
PU31、I/Oインターフェース32、メモリ33夫々が接続さ
れている。同様にバス40はアドレスバス40a、データバ
ス40b、コントローラバス40cより構成されており、バス
40にはCPU41、I/Oインターフェース42、メモリ43夫々が
接続されている。
コントローラバス30cより構成されており、バス30にはC
PU31、I/Oインターフェース32、メモリ33夫々が接続さ
れている。同様にバス40はアドレスバス40a、データバ
ス40b、コントローラバス40cより構成されており、バス
40にはCPU41、I/Oインターフェース42、メモリ43夫々が
接続されている。
DMAコントローラ50は直接コントローラバス30c、40c
と接続され、また双方向バッファ51a、51b夫々を介して
アドレスバス30a,40a夫々と接続され、同様に双方向バ
ッファ52a,52b夫々を介してデータバス30b,40b夫々と接
続されている。
と接続され、また双方向バッファ51a、51b夫々を介して
アドレスバス30a,40a夫々と接続され、同様に双方向バ
ッファ52a,52b夫々を介してデータバス30b,40b夫々と接
続されている。
バッファ52a,52bは、端子ENにDMAコントローラ50より
バッファのオン/オフを切換えるコントロール信号DBEN
1,DBEN2夫々を供給され、端子T/Rに信号の方向を切換え
るコントロール信号DIN1,DIN2を供給されている。これ
によってデータバス30bとDMAコントローラ50のデータ入
出力端子との間、又はデータバス40bとDMAコントローラ
50の入出力端子との間、又はデータバス30b,40b間を接
続することができる。
バッファのオン/オフを切換えるコントロール信号DBEN
1,DBEN2夫々を供給され、端子T/Rに信号の方向を切換え
るコントロール信号DIN1,DIN2を供給されている。これ
によってデータバス30bとDMAコントローラ50のデータ入
出力端子との間、又はデータバス40bとDMAコントローラ
50の入出力端子との間、又はデータバス30b,40b間を接
続することができる。
バッファ51a,51b夫々も上記のバッファ52a,52bとまっ
たく同一の構成で、端子ENにDMAコントローラ50よりオ
ン/オフを切換えるコントロール信号ABEN1,ABEN2を供
給され、端子T/Rに信号の方向を切換えるコントロール
信号AIN1,AIN2を供給されている。
たく同一の構成で、端子ENにDMAコントローラ50よりオ
ン/オフを切換えるコントロール信号ABEN1,ABEN2を供
給され、端子T/Rに信号の方向を切換えるコントロール
信号AIN1,AIN2を供給されている。
第1図はDMAコントローラ50の一実施例のブロック図
を示す。
を示す。
同図中、転送要求制御部70はI/Oインターフェース32,
42、夫々からコントロールバス30c,40cを経て端子71に
入来する4チャネル分の転送要求信号REQO〜REQ3が供給
される。転送要求制御部70は同時に複数の転送要求があ
っても予め決定されプライオリティレジスタ70aに設定
された優先順位(プライオリティ)に従って単一の転送
要求信号を選択して中央処理部72及び動作決定部73に報
告する。動作決定部73はこの報告に対して応答を行な
う。なお、プライオリティレジスタ70aの内容は後述す
る割込制御部92にも供給される。
42、夫々からコントロールバス30c,40cを経て端子71に
入来する4チャネル分の転送要求信号REQO〜REQ3が供給
される。転送要求制御部70は同時に複数の転送要求があ
っても予め決定されプライオリティレジスタ70aに設定
された優先順位(プライオリティ)に従って単一の転送
要求信号を選択して中央処理部72及び動作決定部73に報
告する。動作決定部73はこの報告に対して応答を行な
う。なお、プライオリティレジスタ70aの内容は後述す
る割込制御部92にも供給される。
スレーブ制御部74はCPU31,41夫々よりコントロールバ
ス30c,40cを経て端子75,76に入来するチップセレクト信
号CS1,CS2及び割込み要求応答信号IACK1,IACK2夫々を供
給される。チップセレクト信号はCPU31,41夫々がDMAコ
ントローラ50内のレジスタをアクセスするための信号で
あり、割込み要求応答信号はDMAコントローラ50がCPU3
1,41夫々に対する割込み要求を行なったときCPU31,41夫
々が応答する信号である。スレーブ制御部74は同時にこ
れらの信号があっても予め決定されたプライオリティに
従って単一の信号を選択して動作決定部73に報告し、ま
た割込み要求応答信号が供給されるとベクタ要求信号を
発生して割込み制御部92に供給する。
ス30c,40cを経て端子75,76に入来するチップセレクト信
号CS1,CS2及び割込み要求応答信号IACK1,IACK2夫々を供
給される。チップセレクト信号はCPU31,41夫々がDMAコ
ントローラ50内のレジスタをアクセスするための信号で
あり、割込み要求応答信号はDMAコントローラ50がCPU3
1,41夫々に対する割込み要求を行なったときCPU31,41夫
々が応答する信号である。スレーブ制御部74は同時にこ
れらの信号があっても予め決定されたプライオリティに
従って単一の信号を選択して動作決定部73に報告し、ま
た割込み要求応答信号が供給されるとベクタ要求信号を
発生して割込み制御部92に供給する。
動作決定部73はこの報告に対してと応答を行なうとと
もに、スレーブ制御部74からの報告を中央処理部72に伝
える。
もに、スレーブ制御部74からの報告を中央処理部72に伝
える。
中央処理部72はDMAコントローラ50全体の動作状態及
び4つのチャネル夫々が行なうデータ転送動作管理して
おり、この動作状態及び動作要求は動作決定部73に報告
される。中央処理部72に内蔵されたレジスタ77には転送
のソースアドレス,ディスティネイションアドレス,転
送データのバイト数等が格納される。
び4つのチャネル夫々が行なうデータ転送動作管理して
おり、この動作状態及び動作要求は動作決定部73に報告
される。中央処理部72に内蔵されたレジスタ77には転送
のソースアドレス,ディスティネイションアドレス,転
送データのバイト数等が格納される。
動作決定部73は中央処理部72よりバス権の要求がある
とバス権制御部80に指示を出す。これによってバス制御
部80は端子81よりCPU31,41夫々にバス権要求信号HREQ1,
HREQ2を供給する。これに対してCPU31,41夫々が出力す
るバス権要求応答信号HACK1,HACK2夫々が端子82より入
来し、バス権制御部80は信号HACK1,HACK2夫々の入来を
動作決定部73に報告し、この報告は中央処理部72まで伝
えられる。
とバス権制御部80に指示を出す。これによってバス制御
部80は端子81よりCPU31,41夫々にバス権要求信号HREQ1,
HREQ2を供給する。これに対してCPU31,41夫々が出力す
るバス権要求応答信号HACK1,HACK2夫々が端子82より入
来し、バス権制御部80は信号HACK1,HACK2夫々の入来を
動作決定部73に報告し、この報告は中央処理部72まで伝
えられる。
また、動作決定部73はコントローラバス30c,40cより
端子78を介してバスエラー信号BERR1,BERR2を供給され
ると、データ転送を実行しているチャネルのクローズ要
求を中央処理部72に対して行なう。
端子78を介してバスエラー信号BERR1,BERR2を供給され
ると、データ転送を実行しているチャネルのクローズ要
求を中央処理部72に対して行なう。
中央処理部72は各チャネル夫々の転送データの残りバ
イト数であるバイトカウントが零となった正常終了時、
又はバスエラー信号BERR1,2の入来によるクローズ要求
を供給された異常終了時に、対応するチャネルのデータ
転送を終了して割込み要求信号を生成し割込制御部92に
供給し、これと同時にデータ転送の終了状態を示す割込
みステータスを内部データバスに送出する。端子制御部
83は端子84にコントロールバス30c,40c夫々より入来す
るデータの書き込み/読み出しの完了を示すデータコン
プリート信号DC1,2を供給され、これを動作決定部73に
報告すると共に、動作決定部73よりの指示で端子84から
データコンプリート信号DCを出力する。また、同様にし
て端子85より供給されるリード/ライト信号R/W1,R/W2
夫々を動作決定部73に報告すると共に、動作決定部73の
指示により信号アドレスストローブ信号AS1,AS2、デー
タストローブ信号DS1,DS2及びリード/ライト信号R/W1,
R/W2夫々を端子85より出力する。更に、動作決定部73の
指示により端子86からバッファ51a〜52b夫々にコントロ
ール信号AIN1,AIN2,ABEN1,ABEN2、DIN1,DIN2,DBEN1,DBE
N2を供給し、かつ端子94からデータ転送アクノリッジ信
号ACK0〜3を出力する。
イト数であるバイトカウントが零となった正常終了時、
又はバスエラー信号BERR1,2の入来によるクローズ要求
を供給された異常終了時に、対応するチャネルのデータ
転送を終了して割込み要求信号を生成し割込制御部92に
供給し、これと同時にデータ転送の終了状態を示す割込
みステータスを内部データバスに送出する。端子制御部
83は端子84にコントロールバス30c,40c夫々より入来す
るデータの書き込み/読み出しの完了を示すデータコン
プリート信号DC1,2を供給され、これを動作決定部73に
報告すると共に、動作決定部73よりの指示で端子84から
データコンプリート信号DCを出力する。また、同様にし
て端子85より供給されるリード/ライト信号R/W1,R/W2
夫々を動作決定部73に報告すると共に、動作決定部73の
指示により信号アドレスストローブ信号AS1,AS2、デー
タストローブ信号DS1,DS2及びリード/ライト信号R/W1,
R/W2夫々を端子85より出力する。更に、動作決定部73の
指示により端子86からバッファ51a〜52b夫々にコントロ
ール信号AIN1,AIN2,ABEN1,ABEN2、DIN1,DIN2,DBEN1,DBE
N2を供給し、かつ端子94からデータ転送アクノリッジ信
号ACK0〜3を出力する。
入出力制御部87は動作決定部73の指示によってバッフ
ァ51a,51bから端子88に入来するアドレスを内部アドレ
スバスを介して中央処理部72のレジスタ77及びコミュニ
ケーションレジスタ91に供給すると共に、中央処理部72
からのアドレスを端子88からバッファ51a,51b夫々に供
給する。また、バッファ52a,52bから端子89に入来する
データを内部データバスを介してレジスタ77及びコミュ
ニケーションレジスタ91に供給し、レジスタ77又はコミ
ュニケーションレジスタ91からのデータを端子89からバ
ッファ52a,52bに供給する。また、入出力制御部87に内
蔵されたデータホールディングレジスタ90にはデュアル
転送時の転送データが格納される。
ァ51a,51bから端子88に入来するアドレスを内部アドレ
スバスを介して中央処理部72のレジスタ77及びコミュニ
ケーションレジスタ91に供給すると共に、中央処理部72
からのアドレスを端子88からバッファ51a,51b夫々に供
給する。また、バッファ52a,52bから端子89に入来する
データを内部データバスを介してレジスタ77及びコミュ
ニケーションレジスタ91に供給し、レジスタ77又はコミ
ュニケーションレジスタ91からのデータを端子89からバ
ッファ52a,52bに供給する。また、入出力制御部87に内
蔵されたデータホールディングレジスタ90にはデュアル
転送時の転送データが格納される。
コミュニケーションレジスタ91はCPU31,41間の通信メ
ッセージを格納する。
ッセージを格納する。
割込み制御部92は第3図に示す構成である。
第3図において、終了ステータスレジスタ100は4つ
のチャネル(CHO〜CH3)に対応して分けられており、端
子101を介して中央処理部72からチャネル毎の割込み要
求信号が供給されたとき、割込み要求信号が指定するチ
ャネルの領域に内部データバス102を介して中央部処理
部72から供給される終了ステータスを格納する。
のチャネル(CHO〜CH3)に対応して分けられており、端
子101を介して中央処理部72からチャネル毎の割込み要
求信号が供給されたとき、割込み要求信号が指定するチ
ャネルの領域に内部データバス102を介して中央部処理
部72から供給される終了ステータスを格納する。
また、終了ステータスレジスタ100はCPU31又は41から
デコーダ103に内部アドレスバス104を介して所定のアド
レスが供給されると、このデコーダ103の出力信号によ
りチャネル単位でクリアされる。
デコーダ103に内部アドレスバス104を介して所定のアド
レスが供給されると、このデコーダ103の出力信号によ
りチャネル単位でクリアされる。
割込みマクスレジスタ105はチャネル(CHO〜CH3)に
対応して分けられており、アドレスをデコードするデコ
ーダ106の出力信号に指示されたとき、CPU31又は41より
供給されるチャネル毎の割込みマスクの値を格納する。
対応して分けられており、アドレスをデコードするデコ
ーダ106の出力信号に指示されたとき、CPU31又は41より
供給されるチャネル毎の割込みマスクの値を格納する。
上記終了ステータスレジスタ100及び割込みマスクレ
ジスタ105夫々の出力する終了ステータス及び割込みマ
スクはチャネル毎に割込みマスク及び割込み判定回路11
0に供給され、ここでチャネル毎に終了ステータスと割
込みマスクとの比較により割込み可否を判定し、割込み
が可であるときは終了ステータスからバスエラー等によ
る異常終了がデータ転送の終了による正常終了かを判定
し、この判定結果をチャネル毎に割込みチャネル決定回
路111に供給する。
ジスタ105夫々の出力する終了ステータス及び割込みマ
スクはチャネル毎に割込みマスク及び割込み判定回路11
0に供給され、ここでチャネル毎に終了ステータスと割
込みマスクとの比較により割込み可否を判定し、割込み
が可であるときは終了ステータスからバスエラー等によ
る異常終了がデータ転送の終了による正常終了かを判定
し、この判定結果をチャネル毎に割込みチャネル決定回
路111に供給する。
割込みチャネル決定回路111には端子109を介してプラ
イオリティレジスタ70aより各チャネルのプライオリテ
ィが供給されており、まず異常終了のチャネルがあれば
そのうちの最もプライオリティの高いチャネルを選択
し、異常終了がなく正常終了のチャネルがあれば正常終
了のチャネルのなかで最もプライオリティの高いチャネ
ルを選択する。各チャネルのプライオリティが例えばチ
ャネルCHOが一番高く、チャネルCH1,チャネルCH2,チャ
ネルCH3の順に小さい場合、チャネルCHOが異常割込みが
最優先され、以下チャネルCH1の異常割込み、チャネルC
H2の異常割込み、チャネルCH3の異常割込み、チャネルC
H0の正常割込み、チャネルCH1の正常割込み、チャネルC
H2の正常割込み、チャネルCH3の正常割込みの順に優先
される。
イオリティレジスタ70aより各チャネルのプライオリテ
ィが供給されており、まず異常終了のチャネルがあれば
そのうちの最もプライオリティの高いチャネルを選択
し、異常終了がなく正常終了のチャネルがあれば正常終
了のチャネルのなかで最もプライオリティの高いチャネ
ルを選択する。各チャネルのプライオリティが例えばチ
ャネルCHOが一番高く、チャネルCH1,チャネルCH2,チャ
ネルCH3の順に小さい場合、チャネルCHOが異常割込みが
最優先され、以下チャネルCH1の異常割込み、チャネルC
H2の異常割込み、チャネルCH3の異常割込み、チャネルC
H0の正常割込み、チャネルCH1の正常割込み、チャネルC
H2の正常割込み、チャネルCH3の正常割込みの順に優先
される。
そして選択したチャネルの番号及びそのチャネルが正
常終了か異常終了かを指示する信号を読出制御回路112
に供給すると共に、端子113(第3図では端子93)から
割込みを発生するチャンネルが制御を受けているCPU31,
41のいずれか一方に割込み要求信号IRQ1,IRQ2を出力す
る。
常終了か異常終了かを指示する信号を読出制御回路112
に供給すると共に、端子113(第3図では端子93)から
割込みを発生するチャンネルが制御を受けているCPU31,
41のいずれか一方に割込み要求信号IRQ1,IRQ2を出力す
る。
読出制御回路112は端子114を介してスレーブ制御部74
からベクタ要求信号が供給されたとき割込みチャネル決
定回路111からの信号をデコードしてベクタレジスタ115
のアドレスを生成してベクタレジスタ115及びデータセ
レクタ116に供給する。
からベクタ要求信号が供給されたとき割込みチャネル決
定回路111からの信号をデコードしてベクタレジスタ115
のアドレスを生成してベクタレジスタ115及びデータセ
レクタ116に供給する。
ベクタレジスタ115は4つのチャネル(CHO〜CH3)夫
々毎に正常割込み及び異常割込みの割込みベクタを格納
するもので、これらの割込みベクタはCPU31,41からの所
定のアドレスをデコーダ117がデコードしたときCPU31,4
1から内部データバス102を介して供給され格納される。
内部データバス102を例えば16ビットとすると各割込み
ベクタは8ビットであり、ベクタレジスタ115より内部
データバスの例えば下位8ビットに割込みベクタを送出
するためにデータセレクタ116が設けられている。
々毎に正常割込み及び異常割込みの割込みベクタを格納
するもので、これらの割込みベクタはCPU31,41からの所
定のアドレスをデコーダ117がデコードしたときCPU31,4
1から内部データバス102を介して供給され格納される。
内部データバス102を例えば16ビットとすると各割込み
ベクタは8ビットであり、ベクタレジスタ115より内部
データバスの例えば下位8ビットに割込みベクタを送出
するためにデータセレクタ116が設けられている。
ベクタレジスタ115は読出制御回路112の出力するアド
レスから正常割込み又は異常割込みの割込みベクタを読
み出して内部データバス102に送出する。この割込みベ
クタは入出力制御部87を通ってCPU31又は41に供給され
る。
レスから正常割込み又は異常割込みの割込みベクタを読
み出して内部データバス102に送出する。この割込みベ
クタは入出力制御部87を通ってCPU31又は41に供給され
る。
ここで、端子113から割込み要求信号IRQ1が出力され
た場合、CPU31は割込み要求応答信号IACK1を第4図
(I)に示す如くアサートL(Lレベル)、割込みアク
ノリッジサイクルを実行する。
た場合、CPU31は割込み要求応答信号IACK1を第4図
(I)に示す如くアサートL(Lレベル)、割込みアク
ノリッジサイクルを実行する。
DMAコントローラ50には第4図(A)に示すクロックC
LKが供給されている。割込みアクノリッジサイクルで、
CPU31から同図(I)に示すLレベルの割込み要求応答
信号のIACK1を供給されるとサイクルTs1で同図(B),
(C)に示すコントロール信号ABEN1,AIN1をLレベルと
する。
LKが供給されている。割込みアクノリッジサイクルで、
CPU31から同図(I)に示すLレベルの割込み要求応答
信号のIACK1を供給されるとサイクルTs1で同図(B),
(C)に示すコントロール信号ABEN1,AIN1をLレベルと
する。
また同図(F)に示すHレベルのリード/ライト信号
R/W1によってサイクルTs4で同図(D)に示すコントロ
ール信号DBEN1をLレベルとする(信号DIN1は同図
(E)の如くHレベル)。これによってベクタレジスタ
115から読み出された同図(G)に示す割込みベクタが
出力され、CPU31に送出される。更に同図(H)に示す
データコンプリート信号DC1が出力される。
R/W1によってサイクルTs4で同図(D)に示すコントロ
ール信号DBEN1をLレベルとする(信号DIN1は同図
(E)の如くHレベル)。これによってベクタレジスタ
115から読み出された同図(G)に示す割込みベクタが
出力され、CPU31に送出される。更に同図(H)に示す
データコンプリート信号DC1が出力される。
このように異常割込みベクタを正常割込みベクタに優
先してCPU31,41に供給することにより、CPU31,41ではシ
ステム障害の要因を優先的かつ早期に知ることができ、
システム障害に対処できる。これによって二次障害を防
止できる。
先してCPU31,41に供給することにより、CPU31,41ではシ
ステム障害の要因を優先的かつ早期に知ることができ、
システム障害に対処できる。これによって二次障害を防
止できる。
上述の如く、本発明のDMAコントローラによれば、シ
ステム障害の要因を早期にCPUに通知でき、これによっ
て二次障害を防止でき、実用上きわめて有用である。
ステム障害の要因を早期にCPUに通知でき、これによっ
て二次障害を防止でき、実用上きわめて有用である。
第1図は本発明のDMAコントローラの一実施例のブロッ
ク図、 第2図は本発明のDMAコントローラを用いたシステムの
構成図、 第3図は割込制御部のブロック図、 第4図は割込みアクノリッジサイクルの波形図である。 図において、 30,40はバス、31,41はCPU、32,42はI/Oンターフェー
ス、33,43はメモリ、50はDMAコントローラ、51a,51b,52
a,52bはバッファ、70は転送要求制御部、72は中央処理
部、73は動作決定部、74はスレーブ制御部、77はレジス
タ、80はバス権制御部、83は端子制御部、87は入出力制
御部、91はコミュニケーションレジスタ、92は割込み制
御部、111は割込みチャネル決定回路、112は読出制御回
路、115はベクタレジスタ を示す。
ク図、 第2図は本発明のDMAコントローラを用いたシステムの
構成図、 第3図は割込制御部のブロック図、 第4図は割込みアクノリッジサイクルの波形図である。 図において、 30,40はバス、31,41はCPU、32,42はI/Oンターフェー
ス、33,43はメモリ、50はDMAコントローラ、51a,51b,52
a,52bはバッファ、70は転送要求制御部、72は中央処理
部、73は動作決定部、74はスレーブ制御部、77はレジス
タ、80はバス権制御部、83は端子制御部、87は入出力制
御部、91はコミュニケーションレジスタ、92は割込み制
御部、111は割込みチャネル決定回路、112は読出制御回
路、115はベクタレジスタ を示す。
Claims (1)
- 【請求項1】直接データ転送を別々に行なう複数のチャ
ネルを持つDMAコントローラにおいて、 該複数のチャネルが同時にデータ転送を終了したとき、
システム障害による異常終了のチャネルをデータ転送の
完了した正常終了のチャネルに優先させ、その後予め決
められた該複数のチャネルの優先順位に従って割込みを
行なう単一のチャネルを選択決定する割込みチャネル決
定回路(111)と、 該複数のチャネル夫々毎に該正常終了に対応する正常割
込み及び該異常終了に対応する異常割込み夫々の割込み
ベクタを格納したベクタレジスタ(115)と、 該割込みチャネル決定回路(111)で決定されたチャネ
ル及びその正常終了又は異常終了に応じて該ベクタレジ
スタ(115)から割込みベクタを読み出す読出制御回路
(112)とを有し、 該ベクタレジスタ(115)から読み出した割込みベクタ
を中央処理装置に供給することを特徴とするDMAコント
ローラ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63055899A JP2504512B2 (ja) | 1988-03-09 | 1988-03-09 | Dmaコントロ―ラ |
EP89302139A EP0332351B1 (en) | 1988-03-09 | 1989-03-03 | Direct memory access controller |
US07/320,446 US5056011A (en) | 1988-03-09 | 1989-03-08 | Direct memory access controller with expedited error control |
KR1019890002887A KR920001814B1 (ko) | 1988-03-09 | 1989-03-09 | 다이렉트 메모리 액세스 제어장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63055899A JP2504512B2 (ja) | 1988-03-09 | 1988-03-09 | Dmaコントロ―ラ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01229354A JPH01229354A (ja) | 1989-09-13 |
JP2504512B2 true JP2504512B2 (ja) | 1996-06-05 |
Family
ID=13011964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63055899A Expired - Lifetime JP2504512B2 (ja) | 1988-03-09 | 1988-03-09 | Dmaコントロ―ラ |
Country Status (4)
Country | Link |
---|---|
US (1) | US5056011A (ja) |
EP (1) | EP0332351B1 (ja) |
JP (1) | JP2504512B2 (ja) |
KR (1) | KR920001814B1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01258163A (ja) * | 1988-04-08 | 1989-10-16 | Fujitsu Ltd | ダイレクトメモリアクセス制御装置 |
DE69128565T2 (de) * | 1990-06-25 | 1998-06-04 | Nippon Electric Co | Mikrorechner ausgestattet mit einer DMA-Steuerung |
GB9019022D0 (en) * | 1990-08-31 | 1990-10-17 | Ncr Co | Work station or similar data processing system including interfacing means to microchannel means |
US5664142A (en) * | 1990-10-01 | 1997-09-02 | International Business Machines Corporation | Chained DMA devices for crossing common buses |
US5655147A (en) * | 1991-02-28 | 1997-08-05 | Adaptec, Inc. | SCSI host adapter integrated circuit utilizing a sequencer circuit to control at least one non-data SCSI phase without use of any processor |
JP2561398B2 (ja) * | 1991-06-14 | 1996-12-04 | 日本電気株式会社 | 二重化ディスク制御装置 |
EP0543652B1 (en) * | 1991-11-19 | 1998-10-28 | Fujitsu Limited | Memory accessing device |
US5293495A (en) * | 1992-06-29 | 1994-03-08 | Xerox Corporation | Method of addressing devices and transferring data on a bus |
JP3507524B2 (ja) * | 1993-06-21 | 2004-03-15 | 富士通株式会社 | 事象報告ワード処理機能を持つデータ処理システム |
US5377338A (en) * | 1993-10-12 | 1994-12-27 | Wang Laboratories, Inc. | Apparatus and methods for reducing numbers of read-modify-write cycles to a memory, and for improving DMA efficiency |
US5805927A (en) * | 1994-01-28 | 1998-09-08 | Apple Computer, Inc. | Direct memory access channel architecture and method for reception of network information |
US5828856A (en) * | 1994-01-28 | 1998-10-27 | Apple Computer, Inc. | Dual bus concurrent multi-channel direct memory access controller and method |
US5655151A (en) * | 1994-01-28 | 1997-08-05 | Apple Computer, Inc. | DMA controller having a plurality of DMA channels each having multiple register sets storing different information controlling respective data transfer |
US6055584A (en) * | 1997-11-20 | 2000-04-25 | International Business Machines Corporation | Processor local bus posted DMA FlyBy burst transfers |
US6707824B1 (en) * | 1998-05-20 | 2004-03-16 | Nortel Networks Limited | Method and apparatus for flexible egress traffic queuing |
US6622193B1 (en) * | 2000-11-16 | 2003-09-16 | Sun Microsystems, Inc. | Method and apparatus for synchronizing interrupts in a message passing queue oriented bus system |
JP2003050774A (ja) * | 2001-08-08 | 2003-02-21 | Matsushita Electric Ind Co Ltd | データ処理装置およびデータ転送方法 |
KR101287285B1 (ko) * | 2006-06-29 | 2013-07-17 | 엘지전자 주식회사 | 인터럽트 루틴 처리 방법, 그 장치 및 이의 단말장치 |
CN110909055A (zh) * | 2019-11-18 | 2020-03-24 | 中移(杭州)信息技术有限公司 | 数据处理方法、装置、电子设备以及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3999163A (en) * | 1974-01-10 | 1976-12-21 | Digital Equipment Corporation | Secondary storage facility for data processing systems |
US4293908A (en) * | 1979-01-31 | 1981-10-06 | Honeywell Information Systems Inc. | Data processing system having direct memory access bus cycle |
US4649470A (en) * | 1980-02-11 | 1987-03-10 | Data General Corporation | Data processing system |
US4507732A (en) * | 1981-10-05 | 1985-03-26 | Burroughs Corporation | I/O subsystem using slow devices |
JPS59195736A (ja) * | 1983-04-22 | 1984-11-06 | Nippon Telegr & Teleph Corp <Ntt> | 通信制御装置 |
JPS6073767A (ja) * | 1983-09-29 | 1985-04-25 | Fujitsu Ltd | 障害装置検出方式 |
US4688166A (en) * | 1984-08-03 | 1987-08-18 | Motorola Computer Systems, Inc. | Direct memory access controller supporting multiple input/output controllers and memory units |
DE3584489D1 (de) * | 1984-08-16 | 1991-11-28 | Sharp Kk | Informationsprozessor. |
US4751634A (en) * | 1985-06-14 | 1988-06-14 | International Business Machines Corporation | Multiple port communications adapter apparatus |
US4760515A (en) * | 1985-10-28 | 1988-07-26 | International Business Machines Corporation | Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis |
US4827409A (en) * | 1986-07-24 | 1989-05-02 | Digital Equipment Corporation | High speed interconnect unit for digital data processing system |
US4831523A (en) * | 1986-10-31 | 1989-05-16 | Bull Hn Information Systems Inc. | Multiple DMA controller chip sequencer |
JP2530829B2 (ja) * | 1987-01-16 | 1996-09-04 | 株式会社日立製作所 | 直接メモリアクセス制御装置とマルチマイクロコンピュ―タシステム内におけるデ―タ転送方法 |
US4803622A (en) * | 1987-05-07 | 1989-02-07 | Intel Corporation | Programmable I/O sequencer for use in an I/O processor |
-
1988
- 1988-03-09 JP JP63055899A patent/JP2504512B2/ja not_active Expired - Lifetime
-
1989
- 1989-03-03 EP EP89302139A patent/EP0332351B1/en not_active Expired - Lifetime
- 1989-03-08 US US07/320,446 patent/US5056011A/en not_active Expired - Lifetime
- 1989-03-09 KR KR1019890002887A patent/KR920001814B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP0332351A2 (en) | 1989-09-13 |
EP0332351B1 (en) | 1997-01-15 |
KR890015142A (ko) | 1989-10-28 |
US5056011A (en) | 1991-10-08 |
KR920001814B1 (ko) | 1992-03-03 |
EP0332351A3 (en) | 1991-03-27 |
JPH01229354A (ja) | 1989-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2504512B2 (ja) | Dmaコントロ―ラ | |
JP3335172B2 (ja) | データ処理システム及びそれに使用するための入出力プロセッサ | |
US6192442B1 (en) | Interrupt controller | |
KR920010916B1 (ko) | 멀티프로세서의 레벨 변경 동기장치 | |
US4271466A (en) | Direct memory access control system with byte/word control of data bus | |
US6952749B2 (en) | Multiprocessor interrupt handling system and method | |
US20060259662A1 (en) | Data trnasfer apparatus, data transfer method, and program | |
KR920008448B1 (ko) | 데이터 프로세서 | |
US20080005387A1 (en) | Semiconductor device and data transfer method | |
JP2591181B2 (ja) | マイクロコンピュータ | |
JPH02230455A (ja) | 外部記憶装置の割込み制御方式 | |
EP0338564B1 (en) | Microprogram branching method and microsequencer employing the method | |
EP0331487B1 (en) | Data transfer control system | |
US10540305B2 (en) | Semiconductor device | |
JPH04302035A (ja) | 割り込み制御装置 | |
EP0330110B1 (en) | Direct memory access controller | |
US5125079A (en) | Method for controlling the data transmission of a central unit interfacing control circuit and circuit arrangement for the implementation of the method | |
US20060026310A1 (en) | Computer system having an I/O module directly connected to a main storage for DMA transfer | |
EP1193606B1 (en) | Apparatus and method for a host port interface unit in a digital signal processing unit | |
KR20070061240A (ko) | 절대 우위의 dma 요청을 처리하는 dma 장치 및 그처리 방법 | |
JPH03139751A (ja) | 優先度判定機能を有する通信用dmaコントローラ | |
JPH06250965A (ja) | 入出力制御装置 | |
JP2002278922A (ja) | コンピュータバスシステム | |
JPH0736806A (ja) | Dma方式 | |
JP2000132527A (ja) | プロセッサ間通信制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |