JPH1091571A - Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ - Google Patents

Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ

Info

Publication number
JPH1091571A
JPH1091571A JP8246755A JP24675596A JPH1091571A JP H1091571 A JPH1091571 A JP H1091571A JP 8246755 A JP8246755 A JP 8246755A JP 24675596 A JP24675596 A JP 24675596A JP H1091571 A JPH1091571 A JP H1091571A
Authority
JP
Japan
Prior art keywords
control information
dma
address
information number
data
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.)
Withdrawn
Application number
JP8246755A
Other languages
English (en)
Inventor
Goji Mikami
剛司 三上
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP8246755A priority Critical patent/JPH1091571A/ja
Publication of JPH1091571A publication Critical patent/JPH1091571A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】チェーン方式のDMAコントローラのチェーン
外れ検出方法に関し、CPUの負担及びDMAコントロ
ーラの回路量の増大を最小限に抑えて、チェーン外れに
よるシステムの暴走の防止を図ることができるようにす
る。 【解決手段】メモリ内のDMA制御情報ブロックDD
1、DD2、DD3・・・の内容に固有の制御情報番号
“1”、“2”、“3”・・・を付加し、DMAコント
ローラの内部で制御情報番号“1”、“2”、“3”・
・・をチェックし、DMAコントローラのチェーン外れ
を検出する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPU(Central
Processing Unit)の処理を介さずに、メモリと周辺
回路との間のデータ転送を行うDMA(Direct Memor
y Access)コントローラのうち、チェーン方式のDM
Aコントローラのチェーン外れ検出方法及びチェーン方
式のDMAコントローラに関する。
【0002】近年、コンピュータ・システムの高機能化
に伴い、システム全体の処理能力のネックとなるバスの
使用効率の向上が図られており、その一貫として、CP
Uの処理を介さずに、直接にメモリと周辺回路との間の
データ転送を行うDMAコントローラの機能向上が要請
されている。
【0003】一般に、DMAコントローラは、2種類に
分類することができる。第1の種類のDMAコントロー
ラは、DMAデータ転送に必要なデータブロックのアド
レス及びサイズをCPUにより書き込まれるものであ
り、第2の種類のDMAコントローラは、メモリ内のD
MA制御情報ブロックからデータブロックのアドレス及
びサイズをそれ自身が読み込むように構成されているも
のである。
【0004】第2の種類のDMAコントローラは、CP
Uの処理を介さずに、複数のデータブロックについてD
MAデータ転送が可能であるという利点を有しており、
通信の分野でよく使用されている。
【0005】なお、第2の種類のDMAコントローラに
は、各データブロックに対応する各DAM制御情報ブロ
ックをメモリ上に連続させて配置しているメモリをアク
セス対象とするものや、DMA制御情報ブロックの中に
次のDMA制御情報ブロックのアドレスを記憶させ、D
MA制御情報ブロックがチェーンを形成しているメモリ
をアクセス対象とするもの、いわゆるチェーン方式のも
の等がある。
【0006】
【従来の技術】図4はチェーン方式の従来のDMAコン
トローラの一例の要部を示すブロック図である。
【0007】図4中、1は外部アドレスバス、2は外部
データバス、3は外部アドレスバス1に対応して設けら
れているバッファ、4は外部データバス2に対応して設
けられているバッファである。
【0008】また、5はDMAコントローラ内部におい
てアドレスの転送を行うためのアドレス転送バス、6は
DMAコントローラ内部においてデータの転送を行うた
めのデータ転送バスである。
【0009】また、7はDMA制御情報ブロックのアド
レスを格納するためのDMA制御情報ブロックアドレス
レジスタ、8はデータブロックのアドレスを格納するた
めのデータブロックアドレスレジスタである。
【0010】また、9はDMA制御情報ブロックアドレ
スレジスタ7の内容あるいはデータブロックアドレスレ
ジスタ8の内容をインクリメントするためのインクリメ
ンタである。
【0011】また、10はデータブロックのサイズ情報
を格納するためのデータブロックサイズレジスタ、11
はデータブロックサイズレジスタ10の内容をデクリメ
ントするためのデクリメンタ、12はDMAコントロー
ラの起動を制御するための情報などを格納するDMAコ
ントローラ制御レジスタである。
【0012】図5は、図4に示す従来のDMAコントロ
ーラによりアクセスされるメモリの構成例を示す図であ
る。
【0013】図5中、DB1、DB2、DB3はDMA
データ転送の対象とされるデータブロック、DD1、D
D2、DD3はデータブロックDB1、DB2、DB3
に対応して設けられているDMA制御情報ブロックであ
る。
【0014】DMA制御情報ブロックDD1において、
x1、x1+1、x1+2はアドレスであり、アドレス
x1にはデータブロックDB1のアドレスa1が記憶さ
れ、アドレスx1+1にはデータブロックDB1のブロ
ックサイズb1が記憶され、アドレスx1+2にはチェ
ーン先のアドレス、いわゆるチェーンアドレスx2が記
憶されている。
【0015】また、DMA制御情報ブロックDD2にお
いて、x2、x2+1、x2+2はアドレスであり、ア
ドレスx2にはデータブロックDB2のアドレスa2が
記憶され、アドレスx2+1にはデータブロックDB2
のブロックサイズb2が記憶され、アドレスx2+2に
はチェーンアドレスx3が記憶されている。
【0016】また、DMA制御情報ブロックDD3にお
いて、x3、x3+1、x3+2はアドレスであり、ア
ドレスx3にはデータブロックDB3のアドレスa3が
記憶され、アドレスx3+1にはデータブロックDB3
のブロックサイズb3が記憶され、アドレスx3+2に
はチェーンアドレスx4が記憶されている。
【0017】図4に示す従来のDMAコントローラは、
外部データバス2、バッファ4及びデータ転送バス6を
経由して、DMAコントローラ制御情報ブロックアドレ
スレジスタ7にDMA制御情報ブロックDD1のアドレ
スx1を書込み、DMAコントローラ制御レジスタ12
にDMAコントローラ起動指示データを書き込むと、起
動して、次のような動作が行われる。
【0018】(動作1−1)DMA制御情報ブロックア
ドレスレジスタ7に書き込まれたDMA制御情報ブロッ
クDD1のアドレスx1は、アドレス転送バス5を経由
して、バッファ3及びインクリメンタ9に転送され、バ
ッファ3に転送されたアドレスx1は、外部アドレスバ
ス1に出力される。
【0019】(動作1−2)外部アドレスバス1が示す
アドレスx1に記憶されているブロックアドレスa1
が、外部データバス2、バッファ4及びデータ転送バス
6を経由して、データブロックアドレスレジスタ8に格
納される。
【0020】同時に、インクリメンタ9に転送されたD
MA制御情報ブロックアドレスレジスタ7の内容である
アドレスx1は、x1+1にインクリメントされ、アド
レス転送バス5を経由して、DMA制御情報ブロックア
ドレスレジスタ7に格納される。
【0021】(動作2−1)DMA制御情報ブロックア
ドレスレジスタ7に格納されているアドレスx1+1
は、アドレス転送バス5を経由してバッファ3及びイン
クリメンタ9に転送され、バッファ3に転送されたアド
レスx1+1は、外部アドレスバス1に出力される。
【0022】(動作2−2)外部アドレスバス1が示す
アドレスx1+1に記憶されているブロックサイズb1
が、外部データバス2、バッファ4及びデータ転送バス
6を経由して、データブロックサイズレジスタ10に格
納される。
【0023】同時に、インクリメンタ9に転送されたD
MA制御情報ブロックアドレスレジスタ7の内容である
アドレスx1+1は、x1+2にインクリメントされ、
アドレス転送バス5を経由して、DMA制御情報ブロッ
クアドレスレジスタ7に格納される。
【0024】(動作3−1)DMA制御情報ブロックア
ドレスレジスタ7に格納されているアドレスx1+2
は、アドレス転送バス5を経由して、バッファ3に転送
され、バッファ3に転送されたアドレスx1+2は、外
部アドレスバス1に出力される。
【0025】(動作3−2)外部アドレスバス1が示す
アドレスx1+2に記憶されているチェーンアドレスx
2が、外部データバス2、バッファ4及びデータ転送バ
ス6を経由して、DMA制御情報ブロックアドレスレジ
スタ7に格納される。
【0026】(動作4−1)DMA転送要求が発生する
と、データブロックアドレスレジスタ8が格納している
ブロックアドレスa1が、アドレス転送バス5を経由し
て、バッファ3及びインクリメンタ9に転送され、バッ
ファ3に転送されたブロックアドレスa1は、外部アド
レスバス1に出力される。
【0027】同時に、データブロックサイズレジスタ1
0に格納されているデータブロックDB1のブロックサ
イズb1がデクリメンタ11に転送される。
【0028】(動作4−2)外部アドレスバス1が示す
ブロックアドレスa1とDMA転送要求を発生した外部
周辺回路との間のDMAデータ転送が実施される。
【0029】同時に、インクリメンタ9に転送されたデ
ータブロックアドレスレジスタ8の内容であるブロック
アドレスa1は、a1+1にインクリメントされ、アド
レス転送バス5を経由して、データブロックアドレスレ
ジスタ8に格納される。
【0030】また、デクリメンタ11に転送されたデー
タブロックサイズレジスタ10の内容であるb1は、b
1−1にデクリメントされ、データブロックサイズレジ
スタ10に格納される。
【0031】ここに、データブロックサイズレジスタ1
0の内容がゼロでない限り、動作4−1に戻り、DMA
データ転送が続行され、データブロックサイズレジスタ
10の内容がゼロになると、動作1−1に戻り、DMA
制御情報ブロックDD2の内容が読み込まれ、同様の動
作が繰り返される。
【0032】
【発明が解決しようとする課題】このように、図4に示
す従来のDMAコントローラにおいては、或るDMA制
御情報ブロックから次のDMA制御情報ブロックに移行
する際に、チェーンアドレスのみを参照しているため、
ボード内のノイズ等、何らかの要因でチェーンアドレス
の読込み、出力を誤った場合、いわゆるチェーン外れが
生じた場合に、これを検出することができず、予期せぬ
アドレスの内容を破壊し、システム全体の暴走を誘発し
てしまう恐れがある。
【0033】本発明は、CPUの負担及びDMAコント
ローラの回路量の増大を最小限に抑えて、チェーン外れ
によるシステムの暴走の防止を図ることができるように
したDMAコントローラのチェーン外れ検出方法及びD
MAコントローラを提供することを目的とする。
【0034】
【課題を解決するための手段】本発明中、第1の発明
(請求項1記載のDMAコントローラのチェーン外れ検
出方法)は、DMAデータ転送の対象となる複数のデー
タブロックと、各データブロックに対応して設けられ、
DMAデータ転送及びチェーン動作に必要なDMA制御
情報を記憶する複数のDMA制御情報ブロックとを有し
てなるメモリと、各データブロックについてDMAデー
タ転送を行う前に、対応するDMA制御情報ブロックの
内容を読込むことにより、DMAデータ転送及びチェー
ン動作を行うDMAコントローラとを備えるシステムに
おけるDMAコントローラのチェーン外れを検出するD
MAコントローラのチェーン外れ検出方法であって、各
DMA制御情報ブロックの内容に固有の制御情報番号を
付加し、DMAコントローラの内部で制御情報番号をチ
ェックすることにより、DMAコントローラのチェーン
外れを検出するというものである。
【0035】この第1の発明によれば、各DMA制御情
報ブロックの内容に固有の制御情報番号を付加し、DM
Aコントローラの内部で制御情報番号をチェックするこ
とにより、DMAコントローラのチェーン外れを検出す
るとしているので、CPUの負担及びDMAコントロー
ラの回路量の増大を最小限に抑えて、チェーン外れによ
るシステムの暴走の防止を図ることができる。
【0036】本発明中、第2の発明(請求項2記載のD
MAコントローラ)は、DMAデータ転送の対象となる
複数のデータブロックと、各データブロックに対応して
設けられ、DMAデータ転送及びチェーン動作に必要な
DMA制御情報を記憶する複数のDMA制御情報ブロッ
クとを有し、各DMA制御情報ブロックの内容に固有の
制御情報番号が付加されたメモリをアクセス対象とする
DMAコントローラであって、読み込んだ制御情報番号
をチェックする制御情報番号チェック回路を備えている
というものである。
【0037】この第2の発明によれば、読み込んだ制御
情報番号をチェックする制御情報番号チェック回路を備
えているので、CPUの負担及びDMAコントローラの
回路量の増大を最小限に抑えて、チェーン外れによるシ
ステムの暴走の防止を図ることができる。
【0038】本発明中、第3の発明(請求項3記載のD
MAコントローラ)は、第2の発明において、制御情報
番号チェック回路は、制御情報番号期待値発生回路と、
この制御情報番号期待値発生回路から出力される制御情
報番号期待値とメモリから読み込んだ制御情報番号とを
比較する比較回路とを備えているというものである。
【0039】本発明中、第4の発明(請求項4記載のD
MAコントローラ)は、第3の発明において、比較回路
は、制御情報番号期待値発生回路から出力される制御情
報番号期待値とメモリから読み込んだ制御情報番号とが
一致しない場合には、DMAコントローラ起動指示を取
り消すように構成されているというものである。
【0040】本発明中、第5の発明(請求項5記載のD
MAコントローラ)は、第3又は第4の発明において、
制御情報番号期待値発生回路は、制御情報番号期待値を
保持する制御情報番号期待値保持レジスタと、この制御
情報番号期待値保持レジスタに保持された制御情報番号
を更新する更新回路とを備えて構成されているというも
のである。
【0041】本発明中、第6の発明(請求項6記載のD
MAコントローラ)は、第5の発明において、更新回路
は、DMA制御情報ブロックのアドレス及びDMA制御
情報ブロックの内容であるデータブロックのアドレスを
更新する場合に使用されるものであるというものであ
る。
【0042】
【発明の実施の形態】図1は本発明によるDMAコント
ローラの実施の一形態の要部を示すブロック図であり、
本発明によるDMAコントローラのチェーン外れ検出方
法の実施の一形態が実施されるものである。
【0043】図1中、21は外部アドレスバス、22は
外部データバス、23は外部アドレスバス21に対応し
て設けられているマルチプレクサ(MUX)及びバッフ
ァ(以下、単にバッファという)、24は外部データバ
ス22に対応して設けられているバッファである。
【0044】また、25はDMAコントローラ内部にお
いてアドレスの転送を行うためのアドレス転送バス、2
6はDMAコントローラ内部においてデータの転送を行
うためのデータ転送バスである。
【0045】また、27はDMA制御情報ブロックのア
ドレスを格納するためのDMA制御情報ブロックアドレ
スレジスタ、28はデータブロックのアドレスを格納す
るためのデータブロックアドレスレジスタである。
【0046】また、29はDMA制御情報ブロックアド
レスレジスタ27、データブロックアドレスレジスタ2
8又は後述する制御情報番号期待値保持レジスタに対応
して設けられているインクリメンタ/デクリメンタであ
る。
【0047】また、30はデータブロックのサイズ情報
を格納するためのデータブロックサイズレジスタ、31
はデータブロックサイズレジスタ30の内容をデクリメ
ントするためのデクリメンタ、32はDMAコントロー
ラの起動を制御するための情報などを格納するDMAコ
ントローラ制御レジスタである。
【0048】また、33は外部データバス22及びバッ
ファ24を経由してデータ転送バス26に出力される後
述する制御情報番号と比較すべき制御情報番号期待値を
保持する制御情報番号期待値保持レジスタである。
【0049】また、34は制御情報番号期待値保持レジ
スタ33に保持されている制御情報番号期待値と、外部
データバス22及びバッファ24を経由してデータ転送
バス26に出力された制御情報番号とを比較し、これら
が一致しない場合には、DMAコントローラ起動指示を
取り消すDMAコントローラ起動指示取消し信号をDM
Aコントローラ制御レジスタ32に転送する比較回路で
ある。
【0050】また、35はリード/ライト制御及びDM
A転送制御を行うリード/ライト制御・DMA転送制御
部である。
【0051】なお、インクリメンタ/デクリメンタ29
と、制御情報番号期待値保持レジスタ33とで、制御情
報番号期待値発生回路が構成されており、インクリメン
タ/デクリメンタ29と、制御情報番号期待値保持レジ
スタ33と、比較回路34とで、制御情報番号チェック
回路が構成されている。
【0052】図2は本発明によるDMAコントローラの
実施の一形態によりアクセスされるメモリ、即ち、本発
明によるDMAコントローラのチェーン外れ検出方法の
実施の一形態の実施に使用されるメモリの構成例を示す
図である。
【0053】図2中、DB1、DB2、DB3はDMA
データ転送の対象とされるデータブロック、DD1、D
D2、DD3はデータブロックDB1、DB2、DB3
に対応して設けられているDMA制御情報ブロックであ
る。
【0054】DMA制御情報ブロックDD1において、
x1、x1+1、x1+2、x1+3はアドレスであ
り、アドレスx1にはDMA制御情報ブロックDD1に
固有の制御情報番号“1”が記憶され、アドレスx1+
1にはデータブロックDB1のアドレスa1が記憶さ
れ、アドレスx1+2にはデータブロックDB1のブロ
ックサイズb1が記憶され、アドレスx1+3にはチェ
ーンアドレスx2が記憶されている。
【0055】また、DMA制御情報ブロックDD2にお
いて、x2、x2+1、x2+2、x2+3はアドレス
であり、アドレスx2にはDMA制御情報ブロックDD
2に固有の制御情報番号“2”が記憶され、アドレスx
2+1にはデータブロックDB2のアドレスa2が記憶
され、アドレスx2+2にはデータブロックDB2のブ
ロックサイズb2が記憶され、アドレスx2+3には、
チェーンアドレスx3が記憶されている。
【0056】また、DMA制御情報ブロックDD3にお
いて、x3、x3+1、x3+2、x3+3はアドレス
であり、アドレスx3にはDMA制御情報ブロックDD
3に固有の制御情報番号“3”が記憶され、アドレスx
3+1にはデータブロックDB3のアドレスa3が記憶
され、アドレスx3+2にはデータブロックDB3のブ
ロックサイズb3が記憶され、アドレスx3+3には、
チェーンアドレスx4が記憶されている。
【0057】即ち、本発明によるDMAコントローラの
チェーン外れ検出方法の実施の一形態の実施に使用され
るメモリは、DMA制御情報ブロックDD1、DD2、
DD3・・・の内容として、ブロックアドレスa1、a
2、a3・・・、ブロックサイズb1、b2、b3・・
・及びチェーンアドレスx2、x3、x4・・・の他
に、DMA制御情報ブロックDD1、DD2、DD3・
・・に固有の制御情報番号“1”、“2”、“3”・・
・を付加するというものである。
【0058】図3は、本発明によるDMAコントローラ
の実施の一形態の動作例を示すタイミングチャートであ
る。
【0059】本発明によるDMAコントローラの実施の
一形態は、外部データバス22、バッファ24及びデー
タ転送バス26を経由して、制御情報番号期待値保持レ
ジスタ33に“1”を書込み、DMA制御情報ブロック
アドレスレジスタ27にDMA制御情報ブロックDD1
のアドレスx1を書込み、DMAコントローラ制御レジ
スタ32にDMAコントローラ起動指示データを書き込
むと、起動して、次のような動作が行われる。
【0060】(動作1−1)DMA制御情報ブロックア
ドレスレジスタ27に書き込まれたDMA制御情報ブロ
ックDD1のアドレスx1は、アドレス転送バス25を
経由して、バッファ23及びインクリメンタ/デクリメ
ンタ29に転送され、バッファ23に転送されたアドレ
スx1は、外部アドレスバス21に出力される。
【0061】(動作1−2)外部アドレスバス21が示
すアドレスx1に記憶されている制御情報番号“1”
が、外部データバス22、バッファ24及びデータ転送
バス26を経由して、比較回路34に転送され、比較回
路34において、制御情報番号“1”と、制御情報番号
期待値保持レジスタ33が保持している制御情報番号期
待値“1”とが比較される。
【0062】インクリメンタ/デクリメンタ29に転送
されたDMA制御情報ブロックアドレスレジスタ27の
内容であるアドレスx1は、x1+1にインクリメント
され、アドレス転送バス25を経由して、DMA制御情
報ブロックアドレスレジスタ27に格納される。
【0063】(動作1−3)比較回路34による制御情
報番号と制御情報番号期待値保持レジスタ33が保持し
ている制御情報番号期待値との比較の結果、これら制御
情報番号と制御情報番号期待値保持レジスタ33が保持
している制御情報番号期待値とが一致しない場合には、
比較回路34は、DMAコントローラ制御レジスタ32
に書き込まれているDMAコントローラ起動指示を取消
し、DMAコントローラ制御レジスタ32に割込み要求
ビットをセットする。
【0064】これに対して、比較回路34に転送された
制御情報番号と、制御情報番号期待値保持レジスタ33
が保持している制御情報番号期待値とが一致した場合に
は、動作2−1に移行する。
【0065】この例では、比較回路34に転送された制
御情報番号は“1”、制御情報番号期待値保持レジスタ
33が保持している制御情報番号期待値も“1”であ
り、比較回路34に転送された制御情報番号と制御情報
番号期待値保持レジスタ33が保持している制御情報番
号期待値は一致するので、動作2−1に移行することに
なる。
【0066】(動作2−1)DMA制御情報ブロックア
ドレスレジスタ27に格納されたアドレスx1+1は、
アドレス転送バス25を経由して、バッファ23及びイ
ンクリメンタ/デクリメンタ29に転送され、バッファ
23に転送されたアドレスx1+1は、外部アドレスバ
ス21に出力される。
【0067】(動作2−2)外部アドレスバス21が示
すアドレスx1+1に記憶されているブロックアドレス
a1が、外部データバス22、バッファ24及びデータ
転送バス26を経由して、データブロックアドレスレジ
スタ28に格納される。
【0068】同時に、インクリメンタ/デクリメンタ2
9に転送されたDMA制御情報ブロックアドレスレジス
タ27の内容であるアドレスx1+1は、x1+2にイ
ンクリメントされ、アドレス転送バス25を経由して、
DMA制御情報ブロックアドレスレジスタ27に格納さ
れる。
【0069】(動作3−1)DMA制御情報ブロックア
ドレスレジスタ27に格納されたアドレスx1+2は、
アドレス転送バス25を経由して、バッファ23及びイ
ンクリメンタ/デクリメンタ29に転送され、バッファ
23に転送されたアドレスx1+2は、外部アドレスバ
ス21に出力される。
【0070】(動作3−2)外部アドレスバス21が示
すアドレスx1+2に記憶されているブロックサイズb
2が、外部データバス22、バッファ24及びデータ転
送バス26を経由して、データブロックサイズレジスタ
30に格納される。
【0071】同時に、インクリメンタ/デクリメンタ2
9に転送されたDMA制御情報ブロックアドレスレジス
タ27の内容であるアドレスx1+2は、x1+3にイ
ンクリメントされ、アドレス転送バス5を経由して、D
MA制御情報ブロックアドレスレジスタ27に格納され
る。
【0072】(動作4−1)DMA制御情報ブロックア
ドレスレジスタ27に格納されたアドレスx1+3は、
アドレス転送バス25を経由してバッファ23に転送さ
れ、バッファ23に転送されたアドレスx1+3は、外
部アドレスバス21に出力される。
【0073】同時に、制御情報番号期待値保持レジスタ
33に格納されている制御情報番号期待値“1”は、イ
ンクリメンタ/デクリメンタ29に転送される。
【0074】(動作4−2)外部アドレスバス21が示
すアドレスx1+3に記憶されているチェーンアドレス
x2が、外部データバス22、バッファ24及びデータ
転送バス26を経由して、DMA制御情報ブロックアド
レスレジスタ27に格納される。
【0075】同時に、インクリメンタ/デクリメンタ2
9に転送された制御情報番号期待値“1”は、“2”に
インクリメントされ、制御情報番号期待値保持レジスタ
33に格納される。
【0076】(動作5−1)DMA転送要求が発生する
と、データブロックアドレスレジスタ28に格納されて
いるブロックアドレスa1が、アドレス転送バス25を
経由して、バッファ23及びインクリメンタ/デクリメ
ンタ29に転送され、バッファ23に転送されたブロッ
クアドレスa1は、外部アドレスバス21に出力され
る。
【0077】同時に、データブロックサイズレジスタ3
0に格納されているデータブロックDB1のブロックサ
イズb1がデクリメンタ31に転送される。
【0078】(動作5−2)外部アドレスバス21が示
すブロックアドレスa1とDMA転送要求を発生した外
部周辺回路との間のDMAデータ転送が実施される。
【0079】同時に、インクリメンタ/デクリメンタ2
9に転送されたデータブロックアドレスレジスタ28の
内容であるブロックアドレスa1は、a1+1にインク
リメントされ、データブロックアドレスレジスタ28に
格納される。
【0080】また、同時に、デクリメンタ31に転送さ
れたデータブロックサイズレジスタ30の内容であるb
1は、b1−1にデクリメントされ、データブロックサ
イズレジスタ30に格納される。
【0081】ここに、データブロックサイズレジスタ3
0の内容がゼロでない限り、動作5−1に戻り、データ
ブロックDB1と外部周辺回路との間のDMAデータ転
送が続行される。
【0082】そして、データブロックサイズレジスタ3
0の内容がゼロになると、動作1−1に戻り、DMA制
御情報ブロックDD2の内容が読み込まれ、チェーン外
れが発生しない限り、同様の動作が繰り返される。
【0083】なお、図3においては、DMA制御情報ブ
ロックDD1の読み込みには成功したが、何らかの原因
で、チェーンが外れ、DMA制御情報ブロックDD2の
読み込みを行うことができなかった場合を示している。
【0084】このように、本発明によるDMAコントロ
ーラの実施の一形態によれば、制御情報番号期待値保持
レジスタ33と、比較回路34とを設け、DMA制御情
報ブロックDD1、DD2、DD3・・・の内容に付加
されている制御情報番号“1”、“2”、“3”・・・
をチェックするとしているので、CPUの負担を最小限
に抑えて、チェーン外れによるシステムの暴走の防止を
図ることができる。
【0085】また、制御情報番号期待値のインクリメン
トにはDMA制御情報ブロックアドレスレジスタ27及
びデータブロックアドレスレジスタ28の内容の更新に
使用するインクリメンタ/デクリメンタ29を使用する
としているので、DMAコントローラの回路量の増大を
最小限に抑えることができる。
【0086】即ち、本発明によるDMAコントローラの
チェーン外れ検出方法の実施の一形態によれば、DMA
制御情報ブロックDD1、DD2、DD3・・・の内容
に固有の制御情報番号“1”、“2”、“3”・・・を
付加し、DMAコントローラの内部で制御情報番号
“1”、“2”、“3”・・・をチェックすることによ
り、DMAコントローラのチェーン外れを検出するとし
ているので、CPUの負担及びDMAコントローラの回
路量の増大を最小限に抑えて、チェーン外れによるシス
テムの暴走の防止を図ることができる。
【0087】なお、本発明のDMAコントローラのチェ
ーン外れ検出方法の実施の一形態においては、制御情報
番号として、1以上の整数“1”、“2”、“3”・・
・を使用したが、この代わりに、2の累乗数“20”、
“21”、“23”・・・を使用するようにしても良い。
【0088】
【発明の効果】以上のように、本発明中、第1の発明
(請求項1記載のDMAコントローラのチェーン外れ検
出方法)によれば、各DMA制御情報ブロックの内容に
固有の制御情報番号を付加し、DMAコントローラの内
部で制御情報番号をチェックすることにより、DMAコ
ントローラのチェーン外れを検出するとしているので、
CPUの負担及びDMAコントローラの回路量の増大を
最小限に抑えて、チェーン外れによるシステムの暴走の
防止を図ることができ、システムの信頼性の向上を図る
ことができる。
【0089】本発明中、第2、第3、第4、第5及び第
6の発明(請求項2、3、4、5及び6記載のDMAコ
ントローラ)によれば、読み込んだ制御情報番号をチェ
ックする制御情報番号チェック回路を備えているので、
CPUの負担及びDMAコントローラの回路量の増大を
最小限に抑えて、チェーン外れによるシステムの暴走の
防止を図ることができ、システムの信頼性の向上を図る
ことができる。
【図面の簡単な説明】
【図1】本発明によるDMAコントローラの実施の一形
態の要部を示すブロック図である。
【図2】本発明によるDMAコントローラの実施の一形
態によりアクセスされるメモリの構成例を示す図であ
る。
【図3】本発明によるDMAコントローラの実施の一形
態の動作例を示すタイミングチャートである。
【図4】チェーン方式の従来のDMAコントローラの一
例の要部を示すブロック図である。
【図5】図4に示す従来のDMAコントローラによりア
クセスされるメモリの構成例を示す図である。
【符号の説明】
21 外部アドレスバス 22 外部データバス 23、24 バッファ 25 アドレス転送バス 26 データ転送バス 27 DMA制御情報ブロックアドレスレジスタ 28 データブロックアドレスレジスタ 29 インクリメンタ/デクリメンタ 30 データブロックサイズレジスタ 31 デクリメンタ 32 DMAコントローラ制御レジスタ 33 制御情報番号期待値保持レジスタ 34 比較回路 35 リード/ライト制御・DMA転送制御部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】DMAデータ転送の対象となる複数のデー
    タブロックと、各データブロックに対応して設けられ、
    DMAデータ転送及びチェーン動作に必要なDMA制御
    情報を記憶する複数のDMA制御情報ブロックとを有し
    てなるメモリと、各データブロックについてDMAデー
    タ転送を行う前に、対応するDMA制御情報ブロックの
    内容を読込むことにより、DMAデータ転送及びチェー
    ン動作を行うDMAコントローラとを備えるシステムに
    おける前記DMAコントローラのチェーン外れを検出す
    るDMAコントローラのチェーン外れ検出方法であっ
    て、 各DMA制御情報ブロックの内容に固有の制御情報番号
    を付加し、前記DMAコントローラの内部で前記制御情
    報番号をチェックすることにより、前記DMAコントロ
    ーラのチェーン外れを検出することを特徴とするDMA
    コントローラのチェーン外れ検出方法。
  2. 【請求項2】DMAデータ転送の対象となる複数のデー
    タブロックと、各データブロックに対応して設けられ、
    DMAデータ転送及びチェーン動作に必要なDMA制御
    情報を記憶する複数のDMA制御情報ブロックとを有
    し、各DMA制御情報ブロックの内容に固有の制御情報
    番号が付加されたメモリをアクセス対象とするDMAコ
    ントローラであって、 読み込んだ制御情報番号をチェックする制御情報番号チ
    ェック回路を備えていることを特徴とするDMAコント
    ローラ。
  3. 【請求項3】前記制御情報番号チェック回路は、制御情
    報番号期待値発生回路と、この制御情報番号期待値発生
    回路から出力される制御情報番号期待値と前記メモリか
    ら読み込んだ制御情報番号とを比較する比較回路とを備
    えて構成されていることを特徴とする請求項2記載のD
    MAコントローラ。
  4. 【請求項4】前記比較回路は、前記制御情報番号期待値
    発生回路から出力される制御情報番号期待値と前記メモ
    リから読み込んだ制御情報番号とが一致しない場合に
    は、DMAコントローラ起動指示を取り消すように構成
    されていることを特徴とする請求項3記載のDMAコン
    トローラ。
  5. 【請求項5】前記制御情報番号期待値発生回路は、制御
    情報番号期待値を保持する制御情報番号期待値保持レジ
    スタと、この制御情報番号期待値保持レジスタに保持さ
    れた制御情報番号を更新する更新回路とを備えて構成さ
    れていることを特徴とする請求項3又は4記載のDMA
    コントローラ。
  6. 【請求項6】前記更新回路は、前記DMA制御情報ブロ
    ックのアドレス及び前記DMA制御情報ブロックの内容
    であるデータブロックのアドレスを更新する場合に使用
    されるものであることを特徴とする請求項5記載のDM
    Aコントローラ。
JP8246755A 1996-09-19 1996-09-19 Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ Withdrawn JPH1091571A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8246755A JPH1091571A (ja) 1996-09-19 1996-09-19 Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8246755A JPH1091571A (ja) 1996-09-19 1996-09-19 Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ

Publications (1)

Publication Number Publication Date
JPH1091571A true JPH1091571A (ja) 1998-04-10

Family

ID=17153182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8246755A Withdrawn JPH1091571A (ja) 1996-09-19 1996-09-19 Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ

Country Status (1)

Country Link
JP (1) JPH1091571A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615292B1 (en) 1999-03-26 2003-09-02 Nec Corporation Data transfer apparatus performing DMA data transfer from non-consecutive addresses
US7698473B2 (en) 2005-01-05 2010-04-13 Sony Computer Entertainment Inc. Methods and apparatus for list transfers using DMA transfers in a multi-processor system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615292B1 (en) 1999-03-26 2003-09-02 Nec Corporation Data transfer apparatus performing DMA data transfer from non-consecutive addresses
US7698473B2 (en) 2005-01-05 2010-04-13 Sony Computer Entertainment Inc. Methods and apparatus for list transfers using DMA transfers in a multi-processor system

Similar Documents

Publication Publication Date Title
JP3180362B2 (ja) 情報処理装置
US7631244B2 (en) Soft error correction method, memory control apparatus and memory system
US6496878B1 (en) Transfer progress alert module
JP4434534B2 (ja) プロセッサ・システム
WO1997034228A1 (fr) Unite de traitement d'informations comportant une fonction permettant de supprimer les effractions, unite de commande de memoire et procede de traitement d'acces direct en memoire
US5895496A (en) System for an method of efficiently controlling memory accesses in a multiprocessor computer system
US6622210B2 (en) Microcontroller with improved access efficiency of instructions
JPH1091571A (ja) Dmaコントローラのチェーン外れ検出方法及びdmaコントローラ
JPS6126702B2 (ja)
USRE38514E1 (en) System for and method of efficiently controlling memory accesses in a multiprocessor computer system
JP3962853B2 (ja) メモリデータ誤り訂正方法
US20060129714A1 (en) Method and apparatus for transferring data
JP3162459B2 (ja) データ処理装置
JP3168489B2 (ja) Tlb制御方法及び装置
JPH01235100A (ja) 半導体記憶装置
JPH11161545A (ja) 密結合マルチプロセッサシステムの制御方法、密結合マルチプロセッサシステム及びその記録媒体
JP3500561B2 (ja) 共有データバッファ
JP2500485B2 (ja) 情報処理装置
JP2847729B2 (ja) 情報処理装置
JP3299147B2 (ja) キャッシュ制御回路
JPH06231032A (ja) アクセス制御装置
JP2003345515A (ja) ディスク制御装置、ストレージシステム、及びその制御方法
JPH0212358A (ja) データ転送方式
JP3206013B2 (ja) ダイレクト・メモリ・アクセス転送制御装置
JPH08286977A (ja) ストアインキャッシュの障害処理システム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20031202