JPH0535653A - Dma制御方式 - Google Patents
Dma制御方式Info
- Publication number
- JPH0535653A JPH0535653A JP19021691A JP19021691A JPH0535653A JP H0535653 A JPH0535653 A JP H0535653A JP 19021691 A JP19021691 A JP 19021691A JP 19021691 A JP19021691 A JP 19021691A JP H0535653 A JPH0535653 A JP H0535653A
- Authority
- JP
- Japan
- Prior art keywords
- service
- channel
- priority
- asynchronous
- synchronous
- 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
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/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
-
- 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/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access 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)
Abstract
(57)【要約】
【目的】この発明は、非同期デバイスの優先度を上げて
同期デバイスについてはサービスされる割合いを少なく
することによりシステムのタイムアウトを防ぐことを目
的とする。 【構成】この発明は、非同期デバイスへのサービスを優
先し、同期デバイスへのサービス割合いを少なくするよ
うにしたものである。
同期デバイスについてはサービスされる割合いを少なく
することによりシステムのタイムアウトを防ぐことを目
的とする。 【構成】この発明は、非同期デバイスへのサービスを優
先し、同期デバイスへのサービス割合いを少なくするよ
うにしたものである。
Description
【0001】
【産業上の利用分野】この発明は、同期デバイスと非同
期デバイスのリクエスト要求があるシステムにおいての
DMA制御方式に関する。
期デバイスのリクエスト要求があるシステムにおいての
DMA制御方式に関する。
【0002】
【従来の技術】同期デバイスと非同期デバイスのリクエ
スト要求があるシステムにおいて、リクエストチャネル
の優先順位は固定優先度割付けか、ラウンドロビン方式
によることが従来のDMA制御方式には多かった。
スト要求があるシステムにおいて、リクエストチャネル
の優先順位は固定優先度割付けか、ラウンドロビン方式
によることが従来のDMA制御方式には多かった。
【0003】
【発明が解決しようとする課題】従来、固定優先度割付
けの場合は、1つのチャネルが常にシステムを独占して
しまう可能性があり、またラウンドロビン方式の場合
は、チャネルの数の多さなどにより非同期デバイスへの
サービスサイクルが長すぎて、非同期デバイスが動作で
きなくなってしまうという問題があった。
けの場合は、1つのチャネルが常にシステムを独占して
しまう可能性があり、またラウンドロビン方式の場合
は、チャネルの数の多さなどにより非同期デバイスへの
サービスサイクルが長すぎて、非同期デバイスが動作で
きなくなってしまうという問題があった。
【0004】そこで、この発明は、非同期デバイスの優
先度を上げて同期デバイスについてはサービスされる割
合いを少なくすることによりシステムのタイムアウトを
防ぐDMA制御方式を提供することを目的とする。
先度を上げて同期デバイスについてはサービスされる割
合いを少なくすることによりシステムのタイムアウトを
防ぐDMA制御方式を提供することを目的とする。
【0005】
【課題が解決するための手段】この発明は、同期デバイ
スと非同期デバイスのリクエスト要求があるシステムに
おいて、複数のDMAリクエストを要求された場合、処
理の待たせられない非同期デバイスへのサービスを優先
し、同期デバイスへのサービス優先度を低くするもので
ある。
スと非同期デバイスのリクエスト要求があるシステムに
おいて、複数のDMAリクエストを要求された場合、処
理の待たせられない非同期デバイスへのサービスを優先
し、同期デバイスへのサービス優先度を低くするもので
ある。
【0006】
【作用】この発明は、非同期デバイスへのサービスを優
先し、同期デバイスへのサービス割合いを少なくするよ
うにしたものである。
先し、同期デバイスへのサービス割合いを少なくするよ
うにしたものである。
【0007】
【実施例】以下、この発明の一実施例について図面を参
照して説明する。
照して説明する。
【0008】図1はこの発明のDMA制御方式が適用さ
れるシステムの構成を示す図である。 このシステム
は、システム全体を制御するCPU1、DMAC(ダイ
レクトメモリアクセスコントローラ)2、タイマ3、メ
モリ4、5、デバイス6、…、および上記各部を接続す
るバス7によって構成されている。
れるシステムの構成を示す図である。 このシステム
は、システム全体を制御するCPU1、DMAC(ダイ
レクトメモリアクセスコントローラ)2、タイマ3、メ
モリ4、5、デバイス6、…、および上記各部を接続す
るバス7によって構成されている。
【0009】上記DMAC2は、メモリ4、5間、メモ
リ4とデバイス6間、デバイス6とデバイス6間の直接
の(CPU1を介さない)データ転送を制御するもので
ある。上記メモリ4、5は、同期デバイスであり、デバ
イス6、…は、スキャナやプリンタなどの非同期デバイ
スである。上記CPU1の内部メモリには、優先順位テ
ーブル1aが設けられている。
リ4とデバイス6間、デバイス6とデバイス6間の直接
の(CPU1を介さない)データ転送を制御するもので
ある。上記メモリ4、5は、同期デバイスであり、デバ
イス6、…は、スキャナやプリンタなどの非同期デバイ
スである。上記CPU1の内部メモリには、優先順位テ
ーブル1aが設けられている。
【0010】優先順位テーブル1aは、固定優先モード
と回転優先モードとからなり、固定優先モードに対して
はチャネルCH0、チャネルCH1の順で優先順位が設
定され、回転優先モード(ラウンドロビン方式)に対し
ては、サービス終了チャネルがチャネルCH0の場合、
チャネルCH1、チャネルCH0の順で優先順位が切換
わり(回転する)、サービス終了チャネルがチャネルC
H1の場合、チャネルCH0、チャネルCH1の順で優
先順位が切換わる(回転する)ように設定されている。
と回転優先モードとからなり、固定優先モードに対して
はチャネルCH0、チャネルCH1の順で優先順位が設
定され、回転優先モード(ラウンドロビン方式)に対し
ては、サービス終了チャネルがチャネルCH0の場合、
チャネルCH1、チャネルCH0の順で優先順位が切換
わり(回転する)、サービス終了チャネルがチャネルC
H1の場合、チャネルCH0、チャネルCH1の順で優
先順位が切換わる(回転する)ように設定されている。
【0011】この場合、リクエスト受付けチャネルを2
チャネルchとし(チャネルCH0、CH1とする)チ
ャネルCH0を非同期デバイス、チャネルCH1を同期
デバイスと仮定し、チャネルCH0がデバイス6に対す
るサービスを示し、チャネルCH1がメモリ4(5)に
対するサービスを示している。
チャネルchとし(チャネルCH0、CH1とする)チ
ャネルCH0を非同期デバイス、チャネルCH1を同期
デバイスと仮定し、チャネルCH0がデバイス6に対す
るサービスを示し、チャネルCH1がメモリ4(5)に
対するサービスを示している。
【0012】上記タイマ3には、最優先のチャネルに対
するサービスを行う時間が設定されているものである。
この時間は、他のリクエストを受つけない時間であり、
バス占有率、アクセス時間などを考慮して決定されてい
る。
するサービスを行う時間が設定されているものである。
この時間は、他のリクエストを受つけない時間であり、
バス占有率、アクセス時間などを考慮して決定されてい
る。
【0013】上記CPU1は、上記優先順位テーブル1
aの優先内容と上記タイマ3による時間管理により、サ
ービスを行うチャネルを決定し、このチャネルでのサー
ビスをDMAC2を用いて行うものである。
aの優先内容と上記タイマ3による時間管理により、サ
ービスを行うチャネルを決定し、このチャネルでのサー
ビスをDMAC2を用いて行うものである。
【0014】たとえば、固定優先モードでのサービスを
開始した場合、CPU1は優先順位テーブル1aの固定
優先モードの最高位のチャネルがチャネルCH0のた
め、このチャネルCH0に対するサービスを開始する。
これにより、チャネルCH0のデバイス6に対するサー
ビスを行うことが可能となる。このサービスの開始時
に、CPU1はタイマ3をスタートさせる。このタイマ
3によるタイマ期間にチャネルCH1からリクエストが
あってもサービスを行わない。
開始した場合、CPU1は優先順位テーブル1aの固定
優先モードの最高位のチャネルがチャネルCH0のた
め、このチャネルCH0に対するサービスを開始する。
これにより、チャネルCH0のデバイス6に対するサー
ビスを行うことが可能となる。このサービスの開始時
に、CPU1はタイマ3をスタートさせる。このタイマ
3によるタイマ期間にチャネルCH1からリクエストが
あってもサービスを行わない。
【0015】そして、タイマ3がタイムアウトとなりタ
イマ期間が終了した際、CPU1は優先順位テーブル1
aの回転優先モードのサービス終了チャネルがチャネル
CH0の内容に応じて、チャネルCH0、チャネルCH
1に対するサービスを順次行う。
イマ期間が終了した際、CPU1は優先順位テーブル1
aの回転優先モードのサービス終了チャネルがチャネル
CH0の内容に応じて、チャネルCH0、チャネルCH
1に対するサービスを順次行う。
【0016】チャネルCH1に対するサービスが終了し
た際、CPU1は再び優先順位テーブル1aの固定優先
モードでのサービスを行うとともに、タイマ3をスター
トさせる。なお、上記状態を説明するためのブロックチ
ャート例を図3に示し、フローチャートを図4に示す。
た際、CPU1は再び優先順位テーブル1aの固定優先
モードでのサービスを行うとともに、タイマ3をスター
トさせる。なお、上記状態を説明するためのブロックチ
ャート例を図3に示し、フローチャートを図4に示す。
【0017】上記の場合、優先されなければならないチ
ャネルはチャネルCH0である。ここで固定優先モード
だとチャネルCH0のみにサービスされ、他のチャネル
CHにはサービスされない可能性がでてくる。
ャネルはチャネルCH0である。ここで固定優先モード
だとチャネルCH0のみにサービスされ、他のチャネル
CHにはサービスされない可能性がでてくる。
【0018】また、回転優先モードの場合、チャネルC
H0以外のチャネルのサービスが(保留時間)長びくと
プリンタやスキャナなどのシステムと非同期デバイスは
データ転送が非常に行われないことになり、タイミング
エラー等の異常終了になってしまう(図2に各優先モー
ドを示す)。
H0以外のチャネルのサービスが(保留時間)長びくと
プリンタやスキャナなどのシステムと非同期デバイスは
データ転送が非常に行われないことになり、タイミング
エラー等の異常終了になってしまう(図2に各優先モー
ドを示す)。
【0019】この実施例ではチャネルCH0が最優先で
あるので、その他のリクエストをたとえば、ある単位時
間受つけないように制御する。具体的には、それぞれの
バス占有率、アクセス時間などを考慮して、その時間を
きめる。そして、その制御はCPU1により命令された
専用の制御回路都市手のDMAC2が行う。すなわちチ
ャネルCH0の同期デバイスが、DMAC2に対してサ
ービスを要求しても、そこに設定された単位時間にな
り、リクエスト許可にならないかぎり、チャネルCH0
以外のデバイスにはサービスされない。
あるので、その他のリクエストをたとえば、ある単位時
間受つけないように制御する。具体的には、それぞれの
バス占有率、アクセス時間などを考慮して、その時間を
きめる。そして、その制御はCPU1により命令された
専用の制御回路都市手のDMAC2が行う。すなわちチ
ャネルCH0の同期デバイスが、DMAC2に対してサ
ービスを要求しても、そこに設定された単位時間にな
り、リクエスト許可にならないかぎり、チャネルCH0
以外のデバイスにはサービスされない。
【0020】したがって、ある単位時間ではチャネルC
H0がすべてバス7を占有することができる。このよう
な制御を行えば非同期デバイス(スキャナやプリンタな
ど)はエラーを起こすことなく、バス7の使用率を最高
の効率で動かすことができる。
H0がすべてバス7を占有することができる。このよう
な制御を行えば非同期デバイス(スキャナやプリンタな
ど)はエラーを起こすことなく、バス7の使用率を最高
の効率で動かすことができる。
【0021】この実施例では非同期デバイスが1チャネ
ルch分のみだったが、これが多数になった場合はそれ
ぞれの転送レート等を考えて、タイマ3の設定値を変え
ても良いし、非同期デバイス同士は回転優先方式でも良
い。
ルch分のみだったが、これが多数になった場合はそれ
ぞれの転送レート等を考えて、タイマ3の設定値を変え
ても良いし、非同期デバイス同士は回転優先方式でも良
い。
【0022】また、同期デバイスのサービス優先度を低
くする方法も、ここではタイマ3を用いて制御したが、
その他の方法、たとえば、チャネルCH0がn回サービ
スされた後は、その他のチャネルにサービスされるなど
の方法でも良い。
くする方法も、ここではタイマ3を用いて制御したが、
その他の方法、たとえば、チャネルCH0がn回サービ
スされた後は、その他のチャネルにサービスされるなど
の方法でも良い。
【0023】上記したように、非同期デバイスへのサー
ビスを優先し同期デバイスへのサービス割合いを少なく
するようにしたので、このシステムを使えばバスの効率
を最大限にいかすことができ、非同期デバイスの同期エ
ラー(タイミングエラー)も起こさないようなシステム
を構築することができる。
ビスを優先し同期デバイスへのサービス割合いを少なく
するようにしたので、このシステムを使えばバスの効率
を最大限にいかすことができ、非同期デバイスの同期エ
ラー(タイミングエラー)も起こさないようなシステム
を構築することができる。
【0024】なお、上記実施例では、リクエスト受付け
チャネルを2チャネルchとし(チャネルCH0、CH
1とする)チャネルCH0が非同期デバイス、チャネル
CH1を同期デバイスとしたが、これに限らず、2チャ
ネルch以外の複数チャネルすべてに適用される。
チャネルを2チャネルchとし(チャネルCH0、CH
1とする)チャネルCH0が非同期デバイス、チャネル
CH1を同期デバイスとしたが、これに限らず、2チャ
ネルch以外の複数チャネルすべてに適用される。
【0025】たとえば、4チャネルchとし(チャネル
CH0、〜CH3とする)チャネルCH0が非同期デバ
イス、チャネルCH1〜3を同期デバイスとした場合、
優先順位テーブルの記憶内容は図5に示すようなものと
なる。
CH0、〜CH3とする)チャネルCH0が非同期デバ
イス、チャネルCH1〜3を同期デバイスとした場合、
優先順位テーブルの記憶内容は図5に示すようなものと
なる。
【0026】
【発明の効果】以上詳述したようにこの発明によれば、
非同期デバイスの優先度を上げて同期デバイスについて
はサービスされる割合いを少なくすることによりシステ
ムのタイムアウトを防ぐDMA制御方式を提供できる。
非同期デバイスの優先度を上げて同期デバイスについて
はサービスされる割合いを少なくすることによりシステ
ムのタイムアウトを防ぐDMA制御方式を提供できる。
【図1】この発明の一実施例におけるシステムの構成ブ
ロック図。
ロック図。
【図2】図1の優先順位テーブルの記憶例を示す図。
【図3】サービス状態を説明するためのブロックチャー
ト。
ト。
【図4】動作を説明するためのフローチャート。
【図5】他の実施例の優先順位テーブルの記憶例を示す
図。
図。
1…CPU、1a…優先順位テーブル、2…DMAC、
3…タイマ、4、5…メモリ、6、〜…デバイス。
3…タイマ、4、5…メモリ、6、〜…デバイス。
Claims (1)
- 【特許請求の範囲】 【請求項1】 同期デバイスと非同期デバイスのリクエ
スト要求があるシステムにおいて、 複数のDMAリクエストを要求された場合、処理の待た
せられない非同期デバイスへのサービスを優先し、同期
デバイスへのサービス優先度を低くすることを特徴とす
るDMA制御方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19021691A JPH0535653A (ja) | 1991-07-30 | 1991-07-30 | Dma制御方式 |
DE19924209889 DE4209889A1 (de) | 1991-07-30 | 1992-03-26 | Steuervorrichtung fuer den betriebsmittel-direktzugriff |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19021691A JPH0535653A (ja) | 1991-07-30 | 1991-07-30 | Dma制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0535653A true JPH0535653A (ja) | 1993-02-12 |
Family
ID=16254405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19021691A Pending JPH0535653A (ja) | 1991-07-30 | 1991-07-30 | Dma制御方式 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPH0535653A (ja) |
DE (1) | DE4209889A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5893452A (en) * | 1996-02-15 | 1999-04-13 | L'oreal | Monopiece body for the separate packaging and mixing of at least two products |
US6615291B1 (en) | 1999-03-08 | 2003-09-02 | Minolta Co., Ltd. | DMA controller with dynamically variable access priority |
JP2004229287A (ja) * | 2003-01-18 | 2004-08-12 | Samsung Electronics Co Ltd | 多重ソースの多重チャンネルへの割当て方法及びシステム |
CN100369023C (zh) * | 2004-02-25 | 2008-02-13 | 中国科学院计算技术研究所 | 直接存储器访问传输装置及其方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19744230B4 (de) | 1997-10-07 | 2007-10-25 | Robert Bosch Gmbh | Steuergeräte für ein System und Verfahren zum Betrieb eines Steuergeräts |
-
1991
- 1991-07-30 JP JP19021691A patent/JPH0535653A/ja active Pending
-
1992
- 1992-03-26 DE DE19924209889 patent/DE4209889A1/de not_active Ceased
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5893452A (en) * | 1996-02-15 | 1999-04-13 | L'oreal | Monopiece body for the separate packaging and mixing of at least two products |
US6615291B1 (en) | 1999-03-08 | 2003-09-02 | Minolta Co., Ltd. | DMA controller with dynamically variable access priority |
JP2004229287A (ja) * | 2003-01-18 | 2004-08-12 | Samsung Electronics Co Ltd | 多重ソースの多重チャンネルへの割当て方法及びシステム |
US7760768B2 (en) | 2003-01-18 | 2010-07-20 | Samsung Electronics Co., Ltd. | System and method for allocating a plurality of sources to a plurality of channels |
JP4662723B2 (ja) * | 2003-01-18 | 2011-03-30 | 三星電子株式会社 | 多重ソースの多重チャンネルへの割当て方法及びシステム |
CN100369023C (zh) * | 2004-02-25 | 2008-02-13 | 中国科学院计算技术研究所 | 直接存储器访问传输装置及其方法 |
Also Published As
Publication number | Publication date |
---|---|
DE4209889A1 (de) | 1993-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4987571A (en) | Data communication system with prioritized periodic and aperiodic messages | |
JPH0123805B2 (ja) | ||
EP0421614B1 (en) | Computersystem having apparatus for improving the communication efficiency between a host processor and pheripheral devices connected by an SCSI bus | |
US5160923A (en) | Priority encoder for resolving priority contention | |
KR860000981B1 (ko) | 가변 우선 순위장치를 가진 통신 멀티플렉서 | |
US6240475B1 (en) | Timer based arbitrations scheme for a PCI multi-function device | |
JPH0535653A (ja) | Dma制御方式 | |
CA2194026C (en) | Method and apparatus for moving data packets between networks while minimizing cpu interventions using a multi-bus architecture | |
KR20180014689A (ko) | 분할 버스트 대역폭 중재를 위한 방법 및 장치 | |
US20060047866A1 (en) | Computer system having direct memory access controller | |
JP2003231332A (ja) | プリンタ | |
JPH07121474A (ja) | 情報処理装置 | |
JP3261715B2 (ja) | 入出力データ転送処理装置 | |
JP2004213666A (ja) | Dmaモジュールとその操作方法 | |
JP2000132505A (ja) | バスアクセス方法および装置とその利用装置およびシステム | |
JP2658972B2 (ja) | バス調停装置 | |
JP2004118546A (ja) | バス調停方式及びデータ転送装置 | |
JP2000244585A (ja) | バスインタフェース回路 | |
JP2001156825A (ja) | ノード | |
JP3214557B2 (ja) | 入出力制御装置及びdma転送制御方法 | |
JPH0773136A (ja) | コンピュータシステムの動作方法 | |
JPH0637775A (ja) | トークン制御装置 | |
JPS60118963A (ja) | 直接メモリアクセス制御装置において、より高い優先順位転送に適合するようにバスサイクルを選択的に先取りする方法及び装置 | |
JPH04343125A (ja) | プリンタ装置 | |
JPH06110825A (ja) | 共通バス制御方式 |