JPH01231159A - データを転送するための方法およびそのための直接メモリアクセス手段 - Google Patents
データを転送するための方法およびそのための直接メモリアクセス手段Info
- Publication number
- JPH01231159A JPH01231159A JP63316047A JP31604788A JPH01231159A JP H01231159 A JPH01231159 A JP H01231159A JP 63316047 A JP63316047 A JP 63316047A JP 31604788 A JP31604788 A JP 31604788A JP H01231159 A JPH01231159 A JP H01231159A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- data
- remote
- transfer
- dtc
- 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 OR CALCULATING; 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
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
【発明の詳細な説明】
[発明の背景]
1、発明の分野
この発明は一般に中央処理装置(rCPUJ)を含む第
1の組の高性能デバイスが取付けられる第1のバスと、
そのCPUの性能を制限しないように比較的低性能の第
2の組のデバイスが取付けられる第2のバスとの間でデ
ータを転送するための方法およびそれに用いられる装置
に関するものである。この発明の好ましい実施例は特に
、低減命令セットコンピュータ(RI S C)システ
ムの一部を構成するCPUが取付けられる高性能チャネ
ル(これより以降「ローカルバス」という)と1個以上
の典型的には低性能の周辺バス(これより以降「遠隔バ
ス」という)との間の、上で述べられたデータ転送機能
を果たすのに適した新規のちょくめつメモリアクセス(
rDMAJ )装置および方法に関するものである。
1の組の高性能デバイスが取付けられる第1のバスと、
そのCPUの性能を制限しないように比較的低性能の第
2の組のデバイスが取付けられる第2のバスとの間でデ
ータを転送するための方法およびそれに用いられる装置
に関するものである。この発明の好ましい実施例は特に
、低減命令セットコンピュータ(RI S C)システ
ムの一部を構成するCPUが取付けられる高性能チャネ
ル(これより以降「ローカルバス」という)と1個以上
の典型的には低性能の周辺バス(これより以降「遠隔バ
ス」という)との間の、上で述べられたデータ転送機能
を果たすのに適した新規のちょくめつメモリアクセス(
rDMAJ )装置および方法に関するものである。
新規のDMAは入出力ボートのような他の構成要素を有
するデータ転送制御器(rDTCJ )の一部として用
いられてもよいし、また、例えばコンピュータシステム
やデータ転送システムなどにおれる不一致のバス間でデ
ータを転送するために独立して用いられてもよい。
するデータ転送制御器(rDTCJ )の一部として用
いられてもよいし、また、例えばコンピュータシステム
やデータ転送システムなどにおれる不一致のバス間でデ
ータを転送するために独立して用いられてもよい。
(以下余白)
2、関連技術の説明
RI SCプロセッサと、RISCシステムの内部にあ
るメモリ手段を含む1組のデバイスとの間の高性能シス
テムインターフェイスを達成するための方法および装置
が、アドバンスト・マイクロ・ディバイシズ・インコー
ホレーテッドに譲渡され、1987年2月19日に出さ
れた同時係属出願連続番号節012.226号に記載さ
れている。
るメモリ手段を含む1組のデバイスとの間の高性能シス
テムインターフェイスを達成するための方法および装置
が、アドバンスト・マイクロ・ディバイシズ・インコー
ホレーテッドに譲渡され、1987年2月19日に出さ
れた同時係属出願連続番号節012.226号に記載さ
れている。
この同時係属中の出願はここに引用により援用される。
同時係属出願において教示されている新規のシステムイ
ンターフェイスはその好ましい実施例によれば「アドレ
スバス」と「データバス」と呼ばれる2個の32ビット
幅のバスを含む。この出願の目的ではこれらの2個のバ
スは共にローカルバスに対応する。
ンターフェイスはその好ましい実施例によれば「アドレ
スバス」と「データバス」と呼ばれる2個の32ビット
幅のバスを含む。この出願の目的ではこれらの2個のバ
スは共にローカルバスに対応する。
RISCシステムが市場で入手可能なIR5Cプロセッ
サより遅い速度で典型的には動作する周辺デバイスの広
いアレイを利用しかつアクセスすることができるように
、ローカルバスは1個以上の前記周辺デバイスが接続さ
れる遠隔バスに何らかの態様で結合される必要がある。
サより遅い速度で典型的には動作する周辺デバイスの広
いアレイを利用しかつアクセスすることができるように
、ローカルバスは1個以上の前記周辺デバイスが接続さ
れる遠隔バスに何らかの態様で結合される必要がある。
遠隔バスはそれ自身プロセッサで完全な入出力サブシス
テムでもあり得る。
テムでもあり得る。
現在、異なる性能特性を有しく以前に述べられたローカ
ルバスと遠隔バスのように)、また一方で同時にバスに
取付けられるデバイスの性能にそれほど影響を及ぼさな
いバスの間の相互接続およびデータ転送を可能にするい
かなるデバイスも方法も知られていない。この問題を処
理する際に、たとえばローカルバスに取付けられている
RISCプロセッサのような高速プロセッサの性能を遠
隔バスに接続されている周辺装置および/または入出力
サブシステムの比較的低い性能と接触させないようにす
ることが特に望ましい特徴であろう。
ルバスと遠隔バスのように)、また一方で同時にバスに
取付けられるデバイスの性能にそれほど影響を及ぼさな
いバスの間の相互接続およびデータ転送を可能にするい
かなるデバイスも方法も知られていない。この問題を処
理する際に、たとえばローカルバスに取付けられている
RISCプロセッサのような高速プロセッサの性能を遠
隔バスに接続されている周辺装置および/または入出力
サブシステムの比較的低い性能と接触させないようにす
ることが特に望ましい特徴であろう。
理想的には、ローカルバス上のアクセスの帯域幅および
待ち時間は遠隔バス上のアクセスの帯域幅および待ち時
間から両方のバス上のアクセス間で同時に結合を解除さ
れることが必要とされる。
待ち時間は遠隔バス上のアクセスの帯域幅および待ち時
間から両方のバス上のアクセス間で同時に結合を解除さ
れることが必要とされる。
解決されるべき別の問題は、入出力ボートおよび直接メ
モリアクセス(rDMAJ )動作がローカルバスに取
付けられたデバイスとオーバラップする(すなわち並列
に動作する)ことを可能にする方法および装置を提供す
べきである。そのような並列特性は、DTCがその一部
を形成する全体システムの性能をさらに高めかつ特にR
ISCシステムにおいてはRISCプロセッサが入出力
の終了を待機しなくてもよいようにするであろう。
モリアクセス(rDMAJ )動作がローカルバスに取
付けられたデバイスとオーバラップする(すなわち並列
に動作する)ことを可能にする方法および装置を提供す
べきである。そのような並列特性は、DTCがその一部
を形成する全体システムの性能をさらに高めかつ特にR
ISCシステムにおいてはRISCプロセッサが入出力
の終了を待機しなくてもよいようにするであろう。
人出力制御器およびDMA自体の機能は先行技術で周知
である。しかしながら、これらの機能の組合わせはいか
なる方法または装置によっても行なわれておらず、その
方法および装置とは(1)以上述べられた型の高性能R
ISCシステムのローカルバスと遠隔バスを相互接続し
かつバッファに入れ、(2)異なる性能特性を有するバ
スを相互接続させる際の以前に述べられた問題を解決し
、(3)以前に述べられた並列を提供するものである。
である。しかしながら、これらの機能の組合わせはいか
なる方法または装置によっても行なわれておらず、その
方法および装置とは(1)以上述べられた型の高性能R
ISCシステムのローカルバスと遠隔バスを相互接続し
かつバッファに入れ、(2)異なる性能特性を有するバ
スを相互接続させる際の以前に述べられた問題を解決し
、(3)以前に述べられた並列を提供するものである。
さらに、上で述べられた型のバスとバスのインターフェ
イスを支持するDMAチャネル、すなわち異なるバス特
性と、連続したアドレスシーケンスのみを行なうDMA
チャネルに対する並列を説明するいかなるDMAチャネ
ルもそれ自身知られていない。
イスを支持するDMAチャネル、すなわち異なるバス特
性と、連続したアドレスシーケンスのみを行なうDMA
チャネルに対する並列を説明するいかなるDMAチャネ
ルもそれ自身知られていない。
最後に、18M370(大型の本体コンピュータ)のよ
うなシステムは直接メモリアクセス特性を有するチャネ
ル制御器回路網を含むことが知られているが、マイクロ
プロセッサレベルで特に単一チップ上でのDMAおよび
入出力制御器機能の両方を提供する、RISC処理シス
テムとの組合わせにおける先行技術は知られていない。
うなシステムは直接メモリアクセス特性を有するチャネ
ル制御器回路網を含むことが知られているが、マイクロ
プロセッサレベルで特に単一チップ上でのDMAおよび
入出力制御器機能の両方を提供する、RISC処理シス
テムとの組合わせにおける先行技術は知られていない。
そのような特性は現在チップレベルで製作されているR
ISC処理システムにとって所望な属性であろう。
ISC処理システムにとって所望な属性であろう。
[発明の要約コ
この発明に従えば、少なくとも19の中央処理装置(r
cPUJ)を含む第1の組の高性能デバイスが取付けら
れる第1のバスと、比較的低性能の第2の組のデバイス
が取付けられる第2のバスとの間のデータを転送する方
法および装置が開示される。特に、この発明は特に、第
1と第2の組のデバイスの間の通信を容易にし、一方で
第1の組のデバイスの性能と第2の組の性能の比較的低
い性能とを離す態様で以上述べられた転送機能を達成す
る。
cPUJ)を含む第1の組の高性能デバイスが取付けら
れる第1のバスと、比較的低性能の第2の組のデバイス
が取付けられる第2のバスとの間のデータを転送する方
法および装置が開示される。特に、この発明は特に、第
1と第2の組のデバイスの間の通信を容易にし、一方で
第1の組のデバイスの性能と第2の組の性能の比較的低
い性能とを離す態様で以上述べられた転送機能を達成す
る。
この発明の好ましい実施例によれば、1組の直接メモリ
アクセスチャネルを含むデータメモリアクセス(rDM
AJ )装置および方法が開示される。DMAチャネル
は低減命令セットコンピュータ(RI S C)システ
ムにおけるCPUに結合される高性能チャネル(これよ
り以降「ローカルバス」という)と典型的には低性能の
周辺バス(これより以降「遠隔バス」と呼ぶ)との間の
データを転送するために用いられてもよい。ローカルバ
スと遠隔バスとの間の結果として生じるDMAインター
フェイスは標準の周辺デバイスの広い性能範囲がシステ
ムの性能を制限しないようにRISCシステムに取付け
られることを可能にする。
アクセスチャネルを含むデータメモリアクセス(rDM
AJ )装置および方法が開示される。DMAチャネル
は低減命令セットコンピュータ(RI S C)システ
ムにおけるCPUに結合される高性能チャネル(これよ
り以降「ローカルバス」という)と典型的には低性能の
周辺バス(これより以降「遠隔バス」と呼ぶ)との間の
データを転送するために用いられてもよい。ローカルバ
スと遠隔バスとの間の結果として生じるDMAインター
フェイスは標準の周辺デバイスの広い性能範囲がシステ
ムの性能を制限しないようにRISCシステムに取付け
られることを可能にする。
この発明の目的は異なる性能特性を有しく上述のローカ
ルバスと遠隔バスのように)、一方で同時にそのバスに
取付けられるデバイスの性能にそれほど影響も及ぼさな
いバスの相互接続およびデータ転送を可能にする方法お
よび装置を提供することである。
ルバスと遠隔バスのように)、一方で同時にそのバスに
取付けられるデバイスの性能にそれほど影響も及ぼさな
いバスの相互接続およびデータ転送を可能にする方法お
よび装置を提供することである。
この発明の他の目的はRISCシステムが典型的にはR
ISCプロセッサより低速で動作する市場で入手可能な
周辺デバイスの広いアレイを利用しかつアクセスするこ
とを可能にする方法および装置を提供することである。
ISCプロセッサより低速で動作する市場で入手可能な
周辺デバイスの広いアレイを利用しかつアクセスするこ
とを可能にする方法および装置を提供することである。
この発明のさらに他の目的はローカルバス上のアクセス
の帯域幅および待ち時間が遠隔バス上のアクセスの帯域
幅および待ち時間とから両方のバス上のアクセス間で同
時に結合を解除される態様で、たとえばローカルバスに
取付けられるRISCプロセッサのような高速プロセッ
サの性能を遠隔バスに接続される周辺装置および/また
は入出力サブシステムの比較的低性能から離すことであ
る。
の帯域幅および待ち時間が遠隔バス上のアクセスの帯域
幅および待ち時間とから両方のバス上のアクセス間で同
時に結合を解除される態様で、たとえばローカルバスに
取付けられるRISCプロセッサのような高速プロセッ
サの性能を遠隔バスに接続される周辺装置および/また
は入出力サブシステムの比較的低性能から離すことであ
る。
さらに、この発明の目的はDMA動作が全体のシステム
性能を高めるためにローカルバスに取付けられたデバイ
スとオーバラップする(すなわち並列に動作する)がで
きる方法および装置を提供することである。
性能を高めるためにローカルバスに取付けられたデバイ
スとオーバラップする(すなわち並列に動作する)がで
きる方法および装置を提供することである。
この発明の好ましい実施例はRISCプロセッサとDT
Cの両方をチップレベルで組立てて、RISC処理環境
の中で前述の目的を満たす。
Cの両方をチップレベルで組立てて、RISC処理環境
の中で前述の目的を満たす。
この発明は遠隔バス上の周辺装置をローカルバスに接続
するのに必要なハードウェアの量を減じることを特徴と
する。この発明の付加の特徴はバスの大きさ決めや、デ
ータのパッキングおよびパッキング解除そしてバイトと
ワードにバックされたハーフワードデータとの間の変換
を行なうための柔軟性を含む。
するのに必要なハードウェアの量を減じることを特徴と
する。この発明の付加の特徴はバスの大きさ決めや、デ
ータのパッキングおよびパッキング解除そしてバイトと
ワードにバックされたハーフワードデータとの間の変換
を行なうための柔軟性を含む。
この発明のこれらおよび他の目的および特徴は以下の詳
細な説明および同様の参照符号がすべての図面にわたっ
て同じ特徴を表わす添付の図面を考慮すると当業者には
明らかとなるであろう。
細な説明および同様の参照符号がすべての図面にわたっ
て同じ特徴を表わす添付の図面を考慮すると当業者には
明らかとなるであろう。
[詳細な説明]
この発明の好ましい実施例に従えば、DTCはローカル
バス上の4個のアドレスマツピングされた入力/出力ポ
ートを実現する。これらのポートはローカルバスから遠
隔バスへのゲートウェイを゛提供し、その結果ローカル
バスに取付けられたプロセッサは直接遠隔バス上のデバ
イスおよびメモリをアクセスできる。
バス上の4個のアドレスマツピングされた入力/出力ポ
ートを実現する。これらのポートはローカルバスから遠
隔バスへのゲートウェイを゛提供し、その結果ローカル
バスに取付けられたプロセッサは直接遠隔バス上のデバ
イスおよびメモリをアクセスできる。
この発明の好ましい実施例に従えば、各入出力ポートは
大きさが2のべきの数のバイトであってかつローカルバ
ス上の対応するどの2のべきのアドレス境界でも始まる
ことができる。ポートはデータメモリアPレス空間かま
たは入出力アドレス空間のいずれかにおけるローカルバ
ス上で現われることができる。これらのアドレス空間は
引用された同時係属出願において規定される。そのポー
トはアドレスマツプされ、そのためローカルバス上のア
ドレス指定は遠隔バス上のアドレス指定と独立している
。これらのポートのオプショナルの先読みおよび後書き
によって遠隔バスアクセスはローカルバスアクセスとオ
ーバラップすることが可能となる。これらの特徴は後に
より詳細に説明される。
大きさが2のべきの数のバイトであってかつローカルバ
ス上の対応するどの2のべきのアドレス境界でも始まる
ことができる。ポートはデータメモリアPレス空間かま
たは入出力アドレス空間のいずれかにおけるローカルバ
ス上で現われることができる。これらのアドレス空間は
引用された同時係属出願において規定される。そのポー
トはアドレスマツプされ、そのためローカルバス上のア
ドレス指定は遠隔バス上のアドレス指定と独立している
。これらのポートのオプショナルの先読みおよび後書き
によって遠隔バスアクセスはローカルバスアクセスとオ
ーバラップすることが可能となる。これらの特徴は後に
より詳細に説明される。
DTCはまた遠隔バスからローカルバスへのそしてロー
カルバスから遠隔バスへのDMA転送を支持する、4個
のバッファに入れられたDMAチャネルを実現する。こ
の発明の好ましい実施例に従えば、DMAアクセスに関
してデータは4個の64ワードのキューの19において
バッファされる。DMAチャネル1個あたり19のキュ
ーがある。
カルバスから遠隔バスへのDMA転送を支持する、4個
のバッファに入れられたDMAチャネルを実現する。こ
の発明の好ましい実施例に従えば、DMAアクセスに関
してデータは4個の64ワードのキューの19において
バッファされる。DMAチャネル1個あたり19のキュ
ーがある。
DMAキューは各ローカルバス獲得のために大量のデー
タの転送を許容することによってローカルバス上のDM
A転送のオーバヘッドを減する。
タの転送を許容することによってローカルバス上のDM
A転送のオーバヘッドを減する。
これは特に引用された同時係属出願において述べられて
いるようにローカルバスのバーストモード能力が用いら
れるなら有効である。キューはたとえばRISCプロセ
ッサ上でのソフトウェア実行によって直接操作されても
よい。
いるようにローカルバスのバーストモード能力が用いら
れるなら有効である。キューはたとえばRISCプロセ
ッサ上でのソフトウェア実行によって直接操作されても
よい。
以上に述べられたように、第1図はRISCシステムの
ローカルバスと遠隔バスを相互接続させるDTCを示す
。
ローカルバスと遠隔バスを相互接続させるDTCを示す
。
すなわち、DTC,すなわちユニット104はそれぞれ
リンク111aおよび112aを介して32ビツトのア
ドレスバス111と32ビツトのデータバス112とに
相互接続されて示される。
リンク111aおよび112aを介して32ビツトのア
ドレスバス111と32ビツトのデータバス112とに
相互接続されて示される。
第1図においてローカルバス110て示されるローカル
バスはアドレスバス111とデータバス112とからな
ることに注目されたい。
バスはアドレスバス111とデータバス112とからな
ることに注目されたい。
RISCプロセッサ101と、プログラムストア102
と、データメモリ103と、これらのデバイスすなわち
1llb、1llc、1lldおよび112bの間の相
互接続と、アドレスバス111と、データバス112は
すべて同時係属出願に詳細に説明される。新規のDTC
は例示の目的のみで同時係属出願において述べられたR
ISCシステムの中でここに説明されるであろう。当業
者はDTCがここで述べられる発明の精神および範囲か
ら逸脱することなく異なる性能特性を有するデバイスに
インターフェイスを提供するようにどのようにされるか
を容易に理解するであろう。
と、データメモリ103と、これらのデバイスすなわち
1llb、1llc、1lldおよび112bの間の相
互接続と、アドレスバス111と、データバス112は
すべて同時係属出願に詳細に説明される。新規のDTC
は例示の目的のみで同時係属出願において述べられたR
ISCシステムの中でここに説明されるであろう。当業
者はDTCがここで述べられる発明の精神および範囲か
ら逸脱することなく異なる性能特性を有するデバイスに
インターフェイスを提供するようにどのようにされるか
を容易に理解するであろう。
DTC104とインターフェイスユニット105は同時
係属出願連続番号節012,226号には示されていな
い。インターフェイスユニット105は必要ではないが
DTC104を遠隔バス120に相互接続させるために
用いられてもよい。
係属出願連続番号節012,226号には示されていな
い。インターフェイスユニット105は必要ではないが
DTC104を遠隔バス120に相互接続させるために
用いられてもよい。
ユニット104および105の双方は後に詳細に説明さ
れる。
れる。
この発明の好ましい実施例に従えば、DTC104は1
.2ミクロンCMO5技術において実現されかつ148
個の信号ピンと、20個の電力および接地ピンと、1個
のアライメントピンを用いて169のターミナルのピン
グリッドアレイ(PGA)パッケージにおいて実装され
る。
.2ミクロンCMO5技術において実現されかつ148
個の信号ピンと、20個の電力および接地ピンと、1個
のアライメントピンを用いて169のターミナルのピン
グリッドアレイ(PGA)パッケージにおいて実装され
る。
第2図はDTCl 04のためのピンアウト図である。
第2図の集積回路パッケージ204は新規のDTCを収
容しかつこの発明の好ましい実施例に従った、ローカル
バス110を介した第1図に示されるRISCシステム
と遠隔バス120を介した1組の周辺装置の両方への相
互接続を容易にする。DTCへのそしてDTCからのロ
ーカルバス接続は第2図の点線A−Aの左側に示されか
つDTCへのそしてDTCからの遠隔バス接続は第2図
の点線A−Aの右側に示される。
容しかつこの発明の好ましい実施例に従った、ローカル
バス110を介した第1図に示されるRISCシステム
と遠隔バス120を介した1組の周辺装置の両方への相
互接続を容易にする。DTCへのそしてDTCからのロ
ーカルバス接続は第2図の点線A−Aの左側に示されか
つDTCへのそしてDTCからの遠隔バス接続は第2図
の点線A−Aの右側に示される。
インターフェイスがどのように利用されるかの説明を続
ける前に、この発明の好ましい実施例に従って1組のD
TC人力および出力信号はDTC104とバス110お
よび120によってそれに接続されるデバイスとの間の
本質的かつ制御情報の通信を容易にするために規定され
ている。これらの信号は第2図に示されるピンアウトブ
ロックに示されるピンとの1対1対応である。
ける前に、この発明の好ましい実施例に従って1組のD
TC人力および出力信号はDTC104とバス110お
よび120によってそれに接続されるデバイスとの間の
本質的かつ制御情報の通信を容易にするために規定され
ている。これらの信号は第2図に示されるピンアウトブ
ロックに示されるピンとの1対1対応である。
第2図に示される集積回路を介してDTC104に入力
されかつDTC104から出力される信号の説明はDT
Cがどのようにローカルバス110と遠隔バス120の
間の交信を支持するのに利用されるか(後により詳細に
説明される)の説明とともにDTCの動作性および有用
性を例示する。
されかつDTC104から出力される信号の説明はDT
Cがどのようにローカルバス110と遠隔バス120の
間の交信を支持するのに利用されるか(後により詳細に
説明される)の説明とともにDTCの動作性および有用
性を例示する。
バス110に取付けられるRISCプロセッサとバス1
20に取付けられるデバイスとのインターフェイスと同
じDTCの利用かつ制御方法の教示が、異なる性能特性
を有しDTCを介して相互接続されるバスに取付けられ
るデバイスの組の間の交信を容品にするためにどのよう
にDTCを利用しかつ制御するかの教示まで延長されて
もよいことを当業者は容易に認めるであろう。
20に取付けられるデバイスとのインターフェイスと同
じDTCの利用かつ制御方法の教示が、異なる性能特性
を有しDTCを介して相互接続されるバスに取付けられ
るデバイスの組の間の交信を容品にするためにどのよう
にDTCを利用しかつ制御するかの教示まで延長されて
もよいことを当業者は容易に認めるであろう。
例示および引用された同時係属出願との一致のために、
RISCシステムのための32ビツト命令およびデータ
ワードアーキテクチャが仮定される。当業者は例示的な
実施例が異なるワードの長さを有するコンピュータシス
テムに関して発明の実現化例または範囲を制限しないこ
とを認めるであろう。
RISCシステムのための32ビツト命令およびデータ
ワードアーキテクチャが仮定される。当業者は例示的な
実施例が異なるワードの長さを有するコンピュータシス
テムに関して発明の実現化例または範囲を制限しないこ
とを認めるであろう。
ピンアウトブロック形式でこの発明の好ましい実施例の
DTC104への入力およびDTC104からの出力の
各々を示す第2図を参照する。
DTC104への入力およびDTC104からの出力の
各々を示す第2図を参照する。
まずローカルバス入力および出力に焦点を当てると、(
第2図の左側)第1図のアドレスバス111とデータバ
ス112は32個のピンが各々ある2個の組からなる6
4のピンバス相互接続を介して第2図のブロック104
に相互接続されて示される。第1の組の32個のピンは
第1図のバスをDTC104に相互接続するように働き
かつ第2図においてはrAo−A31Jと示される。第
2の組の321’I]のピンは第1図の別々の独立した
データバスすなわちバス112に向けられ、第2図にお
いてrDO−DD31Jで示される。
第2図の左側)第1図のアドレスバス111とデータバ
ス112は32個のピンが各々ある2個の組からなる6
4のピンバス相互接続を介して第2図のブロック104
に相互接続されて示される。第1の組の32個のピンは
第1図のバスをDTC104に相互接続するように働き
かつ第2図においてはrAo−A31Jと示される。第
2の組の321’I]のピンは第1図の別々の独立した
データバスすなわちバス112に向けられ、第2図にお
いてrDO−DD31Jで示される。
第2図のピンの説明を進める前に、「3状態」という言
葉はこれより以降通常の動作の間、高インピーダンス状
態に置かれてもよい信号を表わすために用いられること
に注目すべきである。すべての出力(MSERRを除く
)が寧TEST入力によって高インピーダンス状態に置
かれてもよい。
葉はこれより以降通常の動作の間、高インピーダンス状
態に置かれてもよい信号を表わすために用いられること
に注目すべきである。すべての出力(MSERRを除く
)が寧TEST入力によって高インピーダンス状態に置
かれてもよい。
MSERRおよび*TESTの両方は第2図のピンの説
明を参照して後に説明される。
明を参照して後に説明される。
ローカルバス信号の説明に戻るが、すべてのローカルバ
ス信号は5YSCLKに対して同期式であることに注目
すべきである。5YSCLKは引用された同時係属出願
において説明される。
ス信号は5YSCLKに対して同期式であることに注目
すべきである。5YSCLKは引用された同時係属出願
において説明される。
AO−A31 (アドレスバス)ピンは双方向であり、
同期式でかつ3状態である。アドレスバスはバーストモ
ードアクセスを除いてすべてのローカルバスアクセスに
対してバイトアドレスを転送する。バーストモードアク
セスでは、シーケンスにおける第1のアクセスに対して
アドレスを転送する。
同期式でかつ3状態である。アドレスバスはバーストモ
ードアクセスを除いてすべてのローカルバスアクセスに
対してバイトアドレスを転送する。バーストモードアク
セスでは、シーケンスにおける第1のアクセスに対して
アドレスを転送する。
DO−D31 (データバス)ピンは双方向であって、
同期式でかつ3状態である。データバスはDTCのロー
カルバス側でDTC104へかつDTCl 04からデ
ータを転送する。
同期式でかつ3状態である。データバスはDTCのロー
カルバス側でDTC104へかつDTCl 04からデ
ータを転送する。
第2図のIIA−Aのローカルバス側のすべての他のビ
ンおよび信号は”CS E LとDTO−DT3および
”lNTRを除いて引用された同時係属出願において説
明される。しかしながら、明確かつ完全にするために、
DTC104の状況におけるピンおよび信号の各々の目
的の復習が他に説明されていないピンおよび信号の説明
に加えて再び述べられる。以下に続くビンおよび信号の
説明すべてはこの発明の好ましい実施例に従うものであ
る。
ンおよび信号は”CS E LとDTO−DT3および
”lNTRを除いて引用された同時係属出願において説
明される。しかしながら、明確かつ完全にするために、
DTC104の状況におけるピンおよび信号の各々の目
的の復習が他に説明されていないピンおよび信号の説明
に加えて再び述べられる。以下に続くビンおよび信号の
説明すべてはこの発明の好ましい実施例に従うものであ
る。
5YSCLK (システムクロック)はDTCI040
入力である。入力はローカルバスの周波数で動作するク
ロック信号である。DTC104はこの信号を用いてす
べてのローカルバスアクセスを同期化する。
入力である。入力はローカルバスの周波数で動作するク
ロック信号である。DTC104はこの信号を用いてす
べてのローカルバスアクセスを同期化する。
*BREQ (バス要求)は同期式であり、アクティブ
ローであってローカルバスのための仲裁をするために用
いられるDTC104の出力である。
ローであってローカルバスのための仲裁をするために用
いられるDTC104の出力である。
”BGRT (バス許可)は同期式であって、アクティ
ブローで、DTC104にそれがローカルバスを制御し
ていることを知らせるDTC104の入力である。たと
え*BREQが不活性状態であってもそれは断定されて
もよい。もしDTCI04が許可されたローカルバスを
用いることができないなら、それは*BINV(後に説
明される)が遊び状態のローカルバスサイクルを作るこ
とを断定する。
ブローで、DTC104にそれがローカルバスを制御し
ていることを知らせるDTC104の入力である。たと
え*BREQが不活性状態であってもそれは断定されて
もよい。もしDTCI04が許可されたローカルバスを
用いることができないなら、それは*BINV(後に説
明される)が遊び状態のローカルバスサイクルを作るこ
とを断定する。
*C5EL(チップ選択)は同期式であって、アクティ
ブローで、DTC104の入力である。
ブローで、DTC104の入力である。
この発明の好ましい実施例に従えば、DTC104はア
ドレスデコードの結果かまたはICS E L上の活性
状態レベルの結果のいずれかとしてのローカルバス要求
を認識するように構成されてもよい。この入力はこの発
明を教示するのに要求される程度だが後に説明される内
部のDTC104レジスタへのアクセスのみに関して関
連がある。
ドレスデコードの結果かまたはICS E L上の活性
状態レベルの結果のいずれかとしてのローカルバス要求
を認識するように構成されてもよい。この入力はこの発
明を教示するのに要求される程度だが後に説明される内
部のDTC104レジスタへのアクセスのみに関して関
連がある。
”BINV(バス無効)は同期式であって、アクティブ
ローで、アドレスバス111と関連の制御が無効である
ことを示す、DTC104の出力である。それはローカ
ルバスのための遊び状態のサイクルを指定する。ピン自
身は双方向である。
ローで、アドレスバス111と関連の制御が無効である
ことを示す、DTC104の出力である。それはローカ
ルバスのための遊び状態のサイクルを指定する。ピン自
身は双方向である。
*DREQ(データ要求)は双方向のビンである。この
ピンの信号は同期式であって、3状態でかつアクティブ
ローである。この信号はローカルバス上の活性状態のデ
ータアクセスを示す。断定されると、アドレスバス11
1上でそのアクセスのためのアドレスが現われる。
ピンの信号は同期式であって、3状態でかつアクティブ
ローである。この信号はローカルバス上の活性状態のデ
ータアクセスを示す。断定されると、アドレスバス11
1上でそのアクセスのためのアドレスが現われる。
DREQTO−DREQT1(データ要求型)信号は同
期式であり3状態である。これらの信号は以下つとおり
ローカルバス上のデータアクセスのためのアドレス空間
を指定する。(値(X)は気にしないということである
) DREQTI DREQTO意味 OO命令/データメモリアクセス Ol 人力/出力アクセス 1 x コプロセッサ転送(DTCIO4によっ
て無視される) R/”W(読出/書込)は双方向であって、同期式であ
り、3状態信号である。DTC104がローカルバスス
レーブであるとき、この信号はデータがローカルバスプ
ロセッサからDTC104に(R/*Wロー)またはD
TC104からプロセッサに(R/*Wハイ)に転送さ
れているかどうかを示す。DTC104がローカルバス
マスタであるとき、この信号はデータがDTC104か
らローカルバスメモリに(R/*Wロー)かまたはロー
カルバスメモリからDTC104に(R/*Wハイ)に
転送されているかどうかを示す。
期式であり3状態である。これらの信号は以下つとおり
ローカルバス上のデータアクセスのためのアドレス空間
を指定する。(値(X)は気にしないということである
) DREQTI DREQTO意味 OO命令/データメモリアクセス Ol 人力/出力アクセス 1 x コプロセッサ転送(DTCIO4によっ
て無視される) R/”W(読出/書込)は双方向であって、同期式であ
り、3状態信号である。DTC104がローカルバスス
レーブであるとき、この信号はデータがローカルバスプ
ロセッサからDTC104に(R/*Wロー)またはD
TC104からプロセッサに(R/*Wハイ)に転送さ
れているかどうかを示す。DTC104がローカルバス
マスタであるとき、この信号はデータがDTC104か
らローカルバスメモリに(R/*Wロー)かまたはロー
カルバスメモリからDTC104に(R/*Wハイ)に
転送されているかどうかを示す。
SUP/寧US(スーパバイザ/ユーザモード)は双方
向ビンである。このビン上の信号の出力は同期式であり
、3状態信号である。この出力はアクセスの間口−カル
バスプロセッサのプログラムモード(スーパバイザモー
ドかまたはユーザモード)を示す。これらのモードは引
用された同時係属出願において規定される。DTC10
4の内部レジスタはユーザモードアクセス(読出または
書込のいずれか)から守られる。DTC104人出力ポ
ートはオプションとしてユーザモードアクセスから守ら
れてもよい。
向ビンである。このビン上の信号の出力は同期式であり
、3状態信号である。この出力はアクセスの間口−カル
バスプロセッサのプログラムモード(スーパバイザモー
ドかまたはユーザモード)を示す。これらのモードは引
用された同時係属出願において規定される。DTC10
4の内部レジスタはユーザモードアクセス(読出または
書込のいずれか)から守られる。DTC104人出力ポ
ートはオプションとしてユーザモードアクセスから守ら
れてもよい。
0PTO−OPTI (オプション制御)信号は同期式
であり、3状態信号である。これらの信号はローカルバ
スアクセスのためのデータの長さを指定する。バイトお
よびハーフワードアクセスは人出力ポートを介した遠隔
バス120上で反映されたアクセスに対してのみ有効で
ある。例示の目的で用いられているこの発明の実施例に
従えば、DTC104は遠隔バス120上の32ビツト
転送のみを支持する。これらの信号のコード化は以下の
とおりである。
であり、3状態信号である。これらの信号はローカルバ
スアクセスのためのデータの長さを指定する。バイトお
よびハーフワードアクセスは人出力ポートを介した遠隔
バス120上で反映されたアクセスに対してのみ有効で
ある。例示の目的で用いられているこの発明の実施例に
従えば、DTC104は遠隔バス120上の32ビツト
転送のみを支持する。これらの信号のコード化は以下の
とおりである。
0PTI 0PTOデータ幅
0 0 32ビツト
0 1 8ビツト
1 0 16ビツト
1 1 無効
*LOCK (ロック)は双方向であって、同期式であ
り、原始読出−修正−書込サイクルが遠隔バス120上
で行なわれるべきことを示すために用いられるアクティ
ブロー信号である。それは入出力ポートアクセスでのみ
意義がある。DTCI04はそれがローカルバスマスタ
であるときこの信号をハイに駆動する。
り、原始読出−修正−書込サイクルが遠隔バス120上
で行なわれるべきことを示すために用いられるアクティ
ブロー信号である。それは入出力ポートアクセスでのみ
意義がある。DTCI04はそれがローカルバスマスタ
であるときこの信号をハイに駆動する。
DPO−DP3 (データパリティ)は同期式であり、
3状態信号でありローカルバスメモリにストアされたデ
ータのための奇数のバイトパリティ信号である。DPO
信号はDO−D7のためのバイトパリティであって、D
PI信号はD8−D 15のためのバイトパリティであ
って以下同様である。DMA転送の間、DTC104は
パリティが遠隔バス120からローカルバス110にま
たその逆に転送されることを可能にする。DTC104
は入出力ポートを介するDMA転送かまたは遠隔からロ
ーカルへの転送の間、有効パリティのチェックを行なう
ことができる。
3状態信号でありローカルバスメモリにストアされたデ
ータのための奇数のバイトパリティ信号である。DPO
信号はDO−D7のためのバイトパリティであって、D
PI信号はD8−D 15のためのバイトパリティであ
って以下同様である。DMA転送の間、DTC104は
パリティが遠隔バス120からローカルバス110にま
たその逆に転送されることを可能にする。DTC104
は入出力ポートを介するDMA転送かまたは遠隔からロ
ーカルへの転送の間、有効パリティのチェックを行なう
ことができる。
*DRDY (データ作動可能)は双方向信号であって
、同期式でかつアクティブローである。ローカルバスの
読出では、この入力は有効データがデータバス111上
にあることを示す。書込では、それはアクセスが終了し
かつデータがもはやデータバス112上で駆動される必
要がないことを示す。DTC104がローカルバスアク
セスでスレーブであるとき、(*DERRもまた断定さ
れない限り)アクセスを首尾よく終了したことを示すた
めに”DRDYを断定する。DTC104はローカルバ
スアクセスでマスクであるとき、*DRDYはローカル
バスメモリが(寧DERRもまた断定されない限り)ア
クセスを首尾よく終了したことを示す。
、同期式でかつアクティブローである。ローカルバスの
読出では、この入力は有効データがデータバス111上
にあることを示す。書込では、それはアクセスが終了し
かつデータがもはやデータバス112上で駆動される必
要がないことを示す。DTC104がローカルバスアク
セスでスレーブであるとき、(*DERRもまた断定さ
れない限り)アクセスを首尾よく終了したことを示すた
めに”DRDYを断定する。DTC104はローカルバ
スアクセスでマスクであるとき、*DRDYはローカル
バスメモリが(寧DERRもまた断定されない限り)ア
クセスを首尾よく終了したことを示す。
*DERR(データエラー)入力は同期式でありかつア
クティブローであって、現在のローカルバスアクセスの
間エラーが発生したことを示す。
クティブローであって、現在のローカルバスアクセスの
間エラーが発生したことを示す。
*DBREQ (データバースト要求)は双方向であっ
て、同期式であり3状態であって、ローカルバス上のバ
ーストモードデータアクセスを確立しかつバーストモー
ドデータアクセスの間データ転送を要求するために用い
られるアクティブロー信号である。
て、同期式であり3状態であって、ローカルバス上のバ
ーストモードデータアクセスを確立しかつバーストモー
ドデータアクセスの間データ転送を要求するために用い
られるアクティブロー信号である。
”DBACK (データバースト肯定応答)は双方向で
あって、同期式でありかつバーストモードデータアクセ
スがローカルバス上で(DTCIO4をアクセスのため
のマスクまたはスレーブのいずれかとして)確立したと
きはいつでもアクティブ状態であるアクティブロー信号
である。
あって、同期式でありかつバーストモードデータアクセ
スがローカルバス上で(DTCIO4をアクセスのため
のマスクまたはスレーブのいずれかとして)確立したと
きはいつでもアクティブ状態であるアクティブロー信号
である。
寧lNTR(割込要求)出力は同期式でありかアクティ
ブローであって、DTC104によって割込またはトラ
ップ要求の信号を送るために用いられてもよい。
ブローであって、DTC104によって割込またはトラ
ップ要求の信号を送るために用いられてもよい。
”TEST(テストモード)入力は同期式であって、ア
クティブローでかつ活性状態のときDTC104をテス
トモードにする。MSERRを除くすべての出力および
双方向ラインはこのモードで強制的に高インピーダンス
状態にされる。
クティブローでかつ活性状態のときDTC104をテス
トモードにする。MSERRを除くすべての出力および
双方向ラインはこのモードで強制的に高インピーダンス
状態にされる。
MSERR(マスタ/スレーブエラー)出力は同期式で
あり、アクティブノ\イであって、DTC104の出力
とオフチップドライバの内部より与えられた信号との比
較結果を示す。もしいずれかの可能化されたドライバで
相違が存在するなら、この信号は断定される。
あり、アクティブノ\イであって、DTC104の出力
とオフチップドライバの内部より与えられた信号との比
較結果を示す。もしいずれかの可能化されたドライバで
相違が存在するなら、この信号は断定される。
最後に、DTC104へのローカルバス接続では、*R
ESET(リセット)入力は同期式であって、DTCl
04をリセットするアクティブロー信号である。
ESET(リセット)入力は同期式であって、DTCl
04をリセットするアクティブロー信号である。
第2図に示される線A−Aの遠隔バス側でのビンおよび
信号は以下の目的のためである。
信号は以下の目的のためである。
この発明の好ましい実施例に従えば、すべての遠隔バス
信号はDTC104の遠隔バスインターフェイスの動作
周波数でのクロックである、RCLKと同期しているこ
とに注目すべきである。RCLKはRO3C入力(後に
説明される)の周波数の半分で発生される出力か、また
は外部のクロック発生器からの入力のいずれかである。
信号はDTC104の遠隔バスインターフェイスの動作
周波数でのクロックである、RCLKと同期しているこ
とに注目すべきである。RCLKはRO3C入力(後に
説明される)の周波数の半分で発生される出力か、また
は外部のクロック発生器からの入力のいずれかである。
遠隔バス信号はこのクロックに対して同期しているかま
たは同期していないかのいずれであってもよい。
たは同期していないかのいずれであってもよい。
RO5C(遠隔発振器)入力は、DTC104が遠隔バ
スのためにRCLKを発生するときRCLKの周波数の
2倍の発振器入力である。RCLKが外部のクロック発
生器によって発生されると、RO3Cはハイかまたはロ
ーにつながれるべきである。
スのためにRCLKを発生するときRCLKの周波数の
2倍の発振器入力である。RCLKが外部のクロック発
生器によって発生されると、RO3Cはハイかまたはロ
ーにつながれるべきである。
亨RBREQ (遠隔バス要求)出力は同期式であって
、アクティブローでかつ遠隔バス120のための仲裁に
用いられる。
、アクティブローでかつ遠隔バス120のための仲裁に
用いられる。
*RBGRT (遠隔バス許可)入力は非同期式かまた
は同期式のいずれかであっもてよく、アクティブローで
、DTC104が遠隔バス120の制御をしているとい
う信号を出す。それは*RBREQがたとえ非活性状態
であってもアクティブであるかもしれない。もしDTC
104が遠隔バスを制御するが、行なうべきアクセスを
有していないなら、それは*ASTB(後に説明される
)を不活性状態に保持する。
は同期式のいずれかであっもてよく、アクティブローで
、DTC104が遠隔バス120の制御をしているとい
う信号を出す。それは*RBREQがたとえ非活性状態
であってもアクティブであるかもしれない。もしDTC
104が遠隔バスを制御するが、行なうべきアクセスを
有していないなら、それは*ASTB(後に説明される
)を不活性状態に保持する。
RADO−RAD31 (遠隔アドレス/データバス)
は双方向であって、入力/出力であり、非同期式/同期
式であり、3状態バスである。このバス上の信号は遠隔
バス120のための多重化されたアドレス/データ信号
である。”A S T Bが断定されると、このバスは
遠隔バスアクセスのバイトアドレスを保持する。”D
S T Bが断定されると、このバスはDTC104ト
遠隔)<ス120におよびそれらからデータを転送する
ために用いられる。
は双方向であって、入力/出力であり、非同期式/同期
式であり、3状態バスである。このバス上の信号は遠隔
バス120のための多重化されたアドレス/データ信号
である。”A S T Bが断定されると、このバスは
遠隔バスアクセスのバイトアドレスを保持する。”D
S T Bが断定されると、このバスはDTC104ト
遠隔)<ス120におよびそれらからデータを転送する
ために用いられる。
RADPO−RADP3 (遠隔アドレス/データパリ
ティ)は1組の双方向の3状態であって、RADO−R
AD31のための非同期/同期式奇数バイトパリティ信
号である。RDPO信号はRADO−RAD7のための
バイトパリティであって、DB1信号はRAD8−RA
D15のためのバイトパリティであり以下同様である。
ティ)は1組の双方向の3状態であって、RADO−R
AD31のための非同期/同期式奇数バイトパリティ信
号である。RDPO信号はRADO−RAD7のための
バイトパリティであって、DB1信号はRAD8−RA
D15のためのバイトパリティであり以下同様である。
DMA転送の間、DTC104はパリティが遠隔バス1
20からローカルバス110へとおよびその逆に転送さ
れることを可能にする。DTC104は入出力ポートを
介するDMA転送かまたは遠隔からローカルへの転送の
いずれかの間、有効パリティをチェックすることができ
る。
20からローカルバス110へとおよびその逆に転送さ
れることを可能にする。DTC104は入出力ポートを
介するDMA転送かまたは遠隔からローカルへの転送の
いずれかの間、有効パリティをチェックすることができ
る。
*ASTB(アドレスストローブ)信号は3状態であっ
て、同期式であり、DTC104がRADO−RAD3
1ライン上のアクセスのためにバイトアドレスを供給し
ていることを示すために断定されるアクティブローの出
力信号である。
て、同期式であり、DTC104がRADO−RAD3
1ライン上のアクセスのためにバイトアドレスを供給し
ていることを示すために断定されるアクティブローの出
力信号である。
M/”10(メモリ/入出力)出力は3状態であって、
同期式であり、現行の転送が遠隔バスのメモリアドレス
空間かまたは入力/出力(入出力)アドレス空間で起こ
っているかどうかを示す。
同期式であり、現行の転送が遠隔バスのメモリアドレス
空間かまたは入力/出力(入出力)アドレス空間で起こ
っているかどうかを示す。
’RMW (読出−修正−書込)出力は3状態であって
、同期式であり、現行の遠隔バスアクセスが原子(at
omic)の読出−修正−書込信号であることを示す。
、同期式であり、現行の遠隔バスアクセスが原子(at
omic)の読出−修正−書込信号であることを示す。
それはそこで*LOCK信号が活性状態である、ローカ
ルバス上の人出力ポートアクセスに応答して活性状態に
される。’RMWは読出−修正−書込シーケンスの持続
期間断定される。この信号は同期化および排他演算のた
めに利用されてもよいので、遠隔バスは原子性(ato
micity)を保証しなくてはならない。
ルバス上の人出力ポートアクセスに応答して活性状態に
される。’RMWは読出−修正−書込シーケンスの持続
期間断定される。この信号は同期化および排他演算のた
めに利用されてもよいので、遠隔バスは原子性(ato
micity)を保証しなくてはならない。
RR/ *RW (遠隔読出/遠隔書込)出力は3状態
であり、同期式であってデータ転送の方向を決定する。
であり、同期式であってデータ転送の方向を決定する。
ハイレベルは遠隔バス120からDTClO4への転送
(読出)を示し、ローレベルはDTC104から遠隔シ
ステムへの転送(書込)を示す。
(読出)を示し、ローレベルはDTC104から遠隔シ
ステムへの転送(書込)を示す。
DSIZEO−DSIZEI (データサイズ要求)信
号は3状態であり、同期式であって要求された転送のデ
ータ幅を反映する出力である。この発明の好ましい実施
例に従えば、これらの信号のコード化は以下のとおりで
ある。
号は3状態であり、同期式であって要求された転送のデ
ータ幅を反映する出力である。この発明の好ましい実施
例に従えば、これらの信号のコード化は以下のとおりで
ある。
DSIZEI DSIZEOデータ幅0 0
32ビツト 0 1 8ビツト 1 0 16ビツト 1 1 無効 *DSTB(データストローブ)は3状態であり、同期
式であってRADO−RAD31ラインがデータ転送(
読出)で利用可能であることかまたはRADO−RAD
31ラインが書込のための有効なデータを含むことを示
しているアクティブロー出力である。
32ビツト 0 1 8ビツト 1 0 16ビツト 1 1 無効 *DSTB(データストローブ)は3状態であり、同期
式であってRADO−RAD31ラインがデータ転送(
読出)で利用可能であることかまたはRADO−RAD
31ラインが書込のための有効なデータを含むことを示
しているアクティブロー出力である。
DSACKO−DSACKI (データサイズ肯定応答
)信号は非同期式/同期式人力信号であって、これは要
求されたアクセスが終了することを示しかつアクセスさ
れたデバイスによって支持されるデータ幅(8,16ま
たは32ビツト)を示す。もし示されたデータ幅がDS
I ZEO−DSIZEIによって要求される転送に
十分でないなら、データ幅例外が発生する。これらの信
号のコード化は以下のとおりである。
)信号は非同期式/同期式人力信号であって、これは要
求されたアクセスが終了することを示しかつアクセスさ
れたデバイスによって支持されるデータ幅(8,16ま
たは32ビツト)を示す。もし示されたデータ幅がDS
I ZEO−DSIZEIによって要求される転送に
十分でないなら、データ幅例外が発生する。これらの信
号のコード化は以下のとおりである。
DSACKI DSACKOデータ幅
0 0 32ビツト0 1
8ビツト 1 0 16とット 1 1 無効または 応答なし *RBERRおよび亭EOP (後に説明される)はも
しいかなるDSACKO−DSACKI応答も存在しな
いならアクセスを終了させるための交互の手段を提供す
ることに注目すべきである。
8ビツト 1 0 16とット 1 1 無効または 応答なし *RBERRおよび亭EOP (後に説明される)はも
しいかなるDSACKO−DSACKI応答も存在しな
いならアクセスを終了させるための交互の手段を提供す
ることに注目すべきである。
車RBERR(遠隔バスエラー)は非同期式/同期式で
あって、アクティブロー人力であり、これは遠隔バス転
送のデータサイクルの間、活性状態であるとき現行の転
送の間遠隔バスでのエラー状態を示す。
あって、アクティブロー人力であり、これは遠隔バス転
送のデータサイクルの間、活性状態であるとき現行の転
送の間遠隔バスでのエラー状態を示す。
”EOP(プロセスの終わり)は非同期式/同期式のD
TC入力のアクティブローで、あって、遠隔バスデバイ
スはこれを最後のDMA転送の間DTCにおける終了状
態に関係なくDMA転送の終わりの信号を送るために用
いてもよい。寧EOPはDSACKO−DSACK3に
関係なくDMA転送のデータサイクルを終了する。
TC入力のアクティブローで、あって、遠隔バスデバイ
スはこれを最後のDMA転送の間DTCにおける終了状
態に関係なくDMA転送の終わりの信号を送るために用
いてもよい。寧EOPはDSACKO−DSACK3に
関係なくDMA転送のデータサイクルを終了する。
*DRQO−DRQ3 (DMA要求)入力は非同期式
/同期式であって、アクティブローでかつDMA転送を
要求するために遠隔バスデバイスによって用いられる。
/同期式であって、アクティブローでかつDMA転送を
要求するために遠隔バスデバイスによって用いられる。
入力”DRQO−”DRQ3はそれぞれDMAチャネル
0ないし3のためのDMA転送を要求する。この発明の
好ましい実施例に従えば、要求の相対的優先順位は固定
されるかまたは回転されるかのいずれかにプログラム可
能である。DTC104はDMA転送が発生するとき対
応するDAM肯定応答を断定する。これらの人力は対応
するDMA肯定応答出力が断定されるまで活性状態のま
まで保持されなくてはならない。
0ないし3のためのDMA転送を要求する。この発明の
好ましい実施例に従えば、要求の相対的優先順位は固定
されるかまたは回転されるかのいずれかにプログラム可
能である。DTC104はDMA転送が発生するとき対
応するDAM肯定応答を断定する。これらの人力は対応
するDMA肯定応答出力が断定されるまで活性状態のま
まで保持されなくてはならない。
最後に、出力*DAKO−*DAK3 (DMA肯定応
答)は同期式であって、アクティブローでDTC104
が遠隔バス120上でDMA転送を行なうことを肯定応
答するために用いられる。出力車DACKO−”DAC
K3はそれぞれDMAチャネル0ないし3のためのDM
A転送を肯定応答する。
答)は同期式であって、アクティブローでDTC104
が遠隔バス120上でDMA転送を行なうことを肯定応
答するために用いられる。出力車DACKO−”DAC
K3はそれぞれDMAチャネル0ないし3のためのDM
A転送を肯定応答する。
ローカルバス110と遠隔バス120の間のインターフ
ェイスを制御するのに有益である1組のDTC入力と出
力信号について詳細に説明してきたが、DTC自身の詳
細な機能説明およびそれがどのように様々なデータおよ
びアドレス転送を支持するかを次に述べる。この説明に
よりこの発明の動作および有用性の両方の論証を終える
。
ェイスを制御するのに有益である1組のDTC入力と出
力信号について詳細に説明してきたが、DTC自身の詳
細な機能説明およびそれがどのように様々なデータおよ
びアドレス転送を支持するかを次に述べる。この説明に
よりこの発明の動作および有用性の両方の論証を終える
。
第3図を参照すると、この図はこの発明の教示に従って
作られた4個の入出力ポートと4個のDMAチャネルを
有するDTCの機能ブロック図である。第3図の説明に
よってDTC動作の概要が述べられる。
作られた4個の入出力ポートと4個のDMAチャネルを
有するDTCの機能ブロック図である。第3図の説明に
よってDTC動作の概要が述べられる。
DTCは第1図のブロック104に対応して点線で示さ
れ、参照番号310となっている。
れ、参照番号310となっている。
矢印によって示される可能な信号方法が示されている、
以前に述べられたDTC入力および出力信号のサブセッ
トのみが第3図に示される。特に、AO−A31と、I
CS E Lと、Do−D31と、DPI−DP3と、
RADO−RAD31およびRADPO−RADP3信
号がDTC310に結合されて示されている。どのよう
にデータおよびアドレス情報がDTC310を通ってチ
ャネル動作されるかの概要を説明するためにはこれらの
信号だけで十分である。
以前に述べられたDTC入力および出力信号のサブセッ
トのみが第3図に示される。特に、AO−A31と、I
CS E Lと、Do−D31と、DPI−DP3と、
RADO−RAD31およびRADPO−RADP3信
号がDTC310に結合されて示されている。どのよう
にデータおよびアドレス情報がDTC310を通ってチ
ャネル動作されるかの概要を説明するためにはこれらの
信号だけで十分である。
DTC310がDTC310へ入ったり、そこから出た
りまたはそれを通る種々の信号、カウンタ、入力、出力
等を保持しかつ制御するために用いられる、内部レジス
タ(第3図には示されていない)を有することが当業者
には理解されるであろう。DTC310を実現するため
に用いられる特定のレジスタ構造は入出力制御器を動作
し、かつ制御するための唯一の構造ではないにしても有
益である。したがって、これらのレジスタの各々の機能
の簡単な説明とともに、この発明の好ましい実施例にお
いて用いられる内部DTCレジスタの一般的な概要は簡
潔さのために述べられる。また、特定の意味深い内部レ
ジスタがDTC310の動作を説明する際に有用である
ときは常にそれは詳細に参照される。
りまたはそれを通る種々の信号、カウンタ、入力、出力
等を保持しかつ制御するために用いられる、内部レジス
タ(第3図には示されていない)を有することが当業者
には理解されるであろう。DTC310を実現するため
に用いられる特定のレジスタ構造は入出力制御器を動作
し、かつ制御するための唯一の構造ではないにしても有
益である。したがって、これらのレジスタの各々の機能
の簡単な説明とともに、この発明の好ましい実施例にお
いて用いられる内部DTCレジスタの一般的な概要は簡
潔さのために述べられる。また、特定の意味深い内部レ
ジスタがDTC310の動作を説明する際に有用である
ときは常にそれは詳細に参照される。
内部DTCレジスタはこの発明の好ましい実施例に従え
ば、アドレスバス111を介してアドレス指定され得る
。たとえば、入出力ポートを利用する前に、アドレスの
範囲が内部のDTCレジスタにロードされてデータがそ
こに(またはそこから)書込まれるアクセス窓を準備し
、そしてポートから検索されてもよい。この初期設定機
能はこの発明の好ましい実施例に従って第3図のアドレ
ス比較および制御デコーダ手段301によって行なわれ
てもよく、これはこの発明の一部を構成していないレジ
スタをロードするための周知のハードウェアおよび/ま
たはソフトウェア技術によって実現されてもよい。ポー
ト窓を準備するのに加えて、ブロック301へのICS
E L入力とA−A31人力およびブロック301か
らの(DTC310の内部レジスタへの)制御出力は好
ましい実施例に従ってDTC310を構成するために用
いられ、アドレスデコードの結果またはアクティブ(ロ
ー)である”C3ELの結果のいずれかとしてのローカ
ルバス要求を認識する。
ば、アドレスバス111を介してアドレス指定され得る
。たとえば、入出力ポートを利用する前に、アドレスの
範囲が内部のDTCレジスタにロードされてデータがそ
こに(またはそこから)書込まれるアクセス窓を準備し
、そしてポートから検索されてもよい。この初期設定機
能はこの発明の好ましい実施例に従って第3図のアドレ
ス比較および制御デコーダ手段301によって行なわれ
てもよく、これはこの発明の一部を構成していないレジ
スタをロードするための周知のハードウェアおよび/ま
たはソフトウェア技術によって実現されてもよい。ポー
ト窓を準備するのに加えて、ブロック301へのICS
E L入力とA−A31人力およびブロック301か
らの(DTC310の内部レジスタへの)制御出力は好
ましい実施例に従ってDTC310を構成するために用
いられ、アドレスデコードの結果またはアクティブ(ロ
ー)である”C3ELの結果のいずれかとしてのローカ
ルバス要求を認識する。
手段301の他に第3図は入出力ポート0−3(手段3
02)と、DMAチャネル0−3(手段03)と、パッ
キングおよび送り込みネットワーク(手段304)と、
多重化およびトランシーバデバイス(転送手段305)
と種々のパリティチェック手段を示す。また第3図には
AO−A31(アドレスバス111)と、Do−D31
(データバス112)と、IC5EL入力とがすべて
DTC310のローカルバス側にあることが示されてい
る。DTC310の遠隔バス側には、RADO−RAD
31およびRADPO−RADP3インターフェイスが
示されている。
02)と、DMAチャネル0−3(手段03)と、パッ
キングおよび送り込みネットワーク(手段304)と、
多重化およびトランシーバデバイス(転送手段305)
と種々のパリティチェック手段を示す。また第3図には
AO−A31(アドレスバス111)と、Do−D31
(データバス112)と、IC5EL入力とがすべて
DTC310のローカルバス側にあることが示されてい
る。DTC310の遠隔バス側には、RADO−RAD
31およびRADPO−RADP3インターフェイスが
示されている。
上に述べられたように、手段301によって上述の窓が
作られ、すなわち、入出力ボート等を開放するために用
いられてもよい。この発明の好ましい実施例に従えば、
これらの窓はローカルパスワード境界で始まる2のべき
のアドレス範囲を有する。
作られ、すなわち、入出力ボート等を開放するために用
いられてもよい。この発明の好ましい実施例に従えば、
これらの窓はローカルパスワード境界で始まる2のべき
のアドレス範囲を有する。
手段302における4個の入出力ポートは例示の実施例
のRI SCプロセッサによって実行されるロードおよ
びストア命令を通ってアドレス指定される。手段303
の4個のDMAチャネルはデータ転送のための開始アド
レスを決定するためにDMAチャネルを利用するのに周
知の態様で予めプログラムされる。典型的には、この発
明はベースアドレスレジスタを増分する内部のDTCカ
ウンタの使用に基づいた、たとえば2や4などによる制
限された非シーケンシャル転送を特徴としているが、シ
ーケンシャルなアドレス指定がDMA転送では利用され
る。再び、手段301は手段302および303におけ
るレジスタおよびカウンタを初期設定するために用いら
れてもよい。
のRI SCプロセッサによって実行されるロードおよ
びストア命令を通ってアドレス指定される。手段303
の4個のDMAチャネルはデータ転送のための開始アド
レスを決定するためにDMAチャネルを利用するのに周
知の態様で予めプログラムされる。典型的には、この発
明はベースアドレスレジスタを増分する内部のDTCカ
ウンタの使用に基づいた、たとえば2や4などによる制
限された非シーケンシャル転送を特徴としているが、シ
ーケンシャルなアドレス指定がDMA転送では利用され
る。再び、手段301は手段302および303におけ
るレジスタおよびカウンタを初期設定するために用いら
れてもよい。
もしDTCの動作の間AO−A31に定義されたアドレ
スが入出力制御器によって入出力ポート窓内にあると認
識されるなら、アドレスは手段302内で遠隔バスアド
レス空間へと翻訳される。
スが入出力制御器によって入出力ポート窓内にあると認
識されるなら、アドレスは手段302内で遠隔バスアド
レス空間へと翻訳される。
もしアドレスが認識されないなら、いかなる翻訳も起こ
らない。
らない。
入出力ボートのためのアドレス翻訳はこの発明の好まし
い実施例に従ってDTCのアドレス入力を初期設定の間
、入出力ボートレジスタにロードされる遠隔バスアドレ
スの範囲内の対応する遠隔バスアドレスと取替えること
によって行なわれる。
い実施例に従ってDTCのアドレス入力を初期設定の間
、入出力ボートレジスタにロードされる遠隔バスアドレ
スの範囲内の対応する遠隔バスアドレスと取替えること
によって行なわれる。
これらの遠隔バスアドレスは所与のボートに準備された
ローカルバスアドレス窓と1対1対応し、また遠隔バス
につながれたデバイスのためのディスクリートなデバイ
スアドレスと対応する。
ローカルバスアドレス窓と1対1対応し、また遠隔バス
につながれたデバイスのためのディスクリートなデバイ
スアドレスと対応する。
DTC310は次に翻訳されたアドレスを用いて遠隔バ
スアクセスを行ない、すなわちそれぞれRISCプロセ
ッサのロードおよびストア命令の実行と一致して適当な
読出または書込を行なう。
スアクセスを行ない、すなわちそれぞれRISCプロセ
ッサのロードおよびストア命令の実行と一致して適当な
読出または書込を行なう。
DMAチャネル手段303に関して、各チャネルはそこ
から(またはそこに)データが転送されるべきアドレス
を決定する。手段303はこの決定を行なうために予め
プログラムされそして初期設定されていることを除いて
RISCプロセッサに関係なく動作する。以前に述べら
れたように、この発明の好ましい実施例に従えばDMA
チャネルは制限された非シーケンシャルの転送を行なう
ための柔軟性を有している。
から(またはそこに)データが転送されるべきアドレス
を決定する。手段303はこの決定を行なうために予め
プログラムされそして初期設定されていることを除いて
RISCプロセッサに関係なく動作する。以前に述べら
れたように、この発明の好ましい実施例に従えばDMA
チャネルは制限された非シーケンシャルの転送を行なう
ための柔軟性を有している。
第3図はまた、アドレスおよびデータがトランシーバと
RADO−RAD31 (および4パリテイビツト)の
インターフェイスを介して遠隔バスに出力されるかまた
は遠隔バスから受取られるときインターリーブされるこ
とを示すための手段305の多重化およびトランシーバ
回路を示す。
RADO−RAD31 (および4パリテイビツト)の
インターフェイスを介して遠隔バスに出力されるかまた
は遠隔バスから受取られるときインターリーブされるこ
とを示すための手段305の多重化およびトランシーバ
回路を示す。
第3図を参照して、手段305へのおよび手段305か
らのすべてのデータおよび入出力ボートまたはDMAチ
ャネルのいずれかはバック/送り込み回路網手段304
を通過しなくてはならないことに注目すべきである。た
とえば、もしビットD8−D15がローカルバスのデー
タバス部分からとられるべきでかつ遠隔バスに転送され
る(書込)べきなら、これより後により詳細に説明され
るこの発明の好ましい実施例に従えばバック/送り込み
回路網手段304は1ワード内に並置された8ビツトの
4個のコピーを遠隔バスに「送り込む」。ローカルバス
から遠隔バスへのハーフワード転送では、手段304が
DTCによる遠隔バスへの出力のために並置された2組
の適当な16ビツトで32ビツトワードを作る。
らのすべてのデータおよび入出力ボートまたはDMAチ
ャネルのいずれかはバック/送り込み回路網手段304
を通過しなくてはならないことに注目すべきである。た
とえば、もしビットD8−D15がローカルバスのデー
タバス部分からとられるべきでかつ遠隔バスに転送され
る(書込)べきなら、これより後により詳細に説明され
るこの発明の好ましい実施例に従えばバック/送り込み
回路網手段304は1ワード内に並置された8ビツトの
4個のコピーを遠隔バスに「送り込む」。ローカルバス
から遠隔バスへのハーフワード転送では、手段304が
DTCによる遠隔バスへの出力のために並置された2組
の適当な16ビツトで32ビツトワードを作る。
読出では、データは通常読出が行なわれるときと同じメ
モリサイクルにおいて遅れて遠隔バスから戻る。通常、
データ(8,16または32ビツト)は右に調整されて
手段304によって32ビツトワードに「パック」され
るが、これはローカルバスへのすべての転送が32ビツ
ト幅であるからである。再び、手段304の動作の詳細
は後に述べられる。
モリサイクルにおいて遅れて遠隔バスから戻る。通常、
データ(8,16または32ビツト)は右に調整されて
手段304によって32ビツトワードに「パック」され
るが、これはローカルバスへのすべての転送が32ビツ
ト幅であるからである。再び、手段304の動作の詳細
は後に述べられる。
DTC310の概要の説明を終えたが、−級化した内部
のレジスタ説明が新規のDTCによって支持されるデー
タフォーマットの説明とともに次に述べられる。これに
よって当業者はこの発明を作りかつ利用する方法を理解
するであろう。また、入出力ボートおよび実現されてい
るDMA機能の特定の説明はRISCシステムを支持す
るためにこの発明を用いる中で述べるであろう。
のレジスタ説明が新規のDTCによって支持されるデー
タフォーマットの説明とともに次に述べられる。これに
よって当業者はこの発明を作りかつ利用する方法を理解
するであろう。また、入出力ボートおよび実現されてい
るDMA機能の特定の説明はRISCシステムを支持す
るためにこの発明を用いる中で述べるであろう。
大部分のDTC310とのソフトウェアの対話は内部D
TCレジスタへのアクセスを介して発生する。これらの
レジスタはローカルバス上の語長(すなわち32ビツト
)アクセスによって読出されかつ書込まれる。いかなる
ものも遠隔バスを通って直接にアクセス可能ではない。
TCレジスタへのアクセスを介して発生する。これらの
レジスタはローカルバス上の語長(すなわち32ビツト
)アクセスによって読出されかつ書込まれる。いかなる
ものも遠隔バスを通って直接にアクセス可能ではない。
そのレジスタは以下の4つのグループに分けられる。
1、グローバル制御レジスタ
2、DMAチャネルレジスタ
3、入出力ポートレジスタ
4、キューレジスタ
ローカルバス上のRISCプロセッサはロードおよびス
トア命令を用いてDTCレジスタをアクセスする。各レ
ジスタはRISCシステムのデータメモリまたは入出力
アドレス空間のいずれかにおいて独自のアドレスに割当
てられる。このアドレスはこの発明の好ましい実施例に
従って、ベースアドレスからのワードオフセットで指定
される。
トア命令を用いてDTCレジスタをアクセスする。各レ
ジスタはRISCシステムのデータメモリまたは入出力
アドレス空間のいずれかにおいて独自のアドレスに割当
てられる。このアドレスはこの発明の好ましい実施例に
従って、ベースアドレスからのワードオフセットで指定
される。
ベースアドレスはすべてのDTCレジスタに共通である
。DTCにおけるチップ選択マツピングレジスタはDT
Cレジスタのためのベースアドレスを指定しかつこのア
ドレスがDTC動作を例示するために用いられている具
体例に従ってそこにDTCが取付けられるRISCシス
テムのデータメモリかまたは人出力アドレス空間にある
かどうかを指定する。
。DTCにおけるチップ選択マツピングレジスタはDT
Cレジスタのためのベースアドレスを指定しかつこのア
ドレスがDTC動作を例示するために用いられている具
体例に従ってそこにDTCが取付けられるRISCシス
テムのデータメモリかまたは人出力アドレス空間にある
かどうかを指定する。
代わりに、以前に示されたように、DTCは第3図の手
段301を介してローカルバスを無視するように構成さ
れかつその間*C3EL入力が活性状態であるいずれの
レジスタアクセスにも応答することができる。この場合
、特定のレジスタはアドレスのオフセット部分によって
のみ選択される。
段301を介してローカルバスを無視するように構成さ
れかつその間*C3EL入力が活性状態であるいずれの
レジスタアクセスにも応答することができる。この場合
、特定のレジスタはアドレスのオフセット部分によって
のみ選択される。
そのうちの5個がこの発明の好ましい実施例において規
定されているグローバル制御レジスタは全体としてDT
Cのための制御および状態情報を含む。その5個の規定
されたレジスタはグローバルモードと、グローバル状態
と、ローカルバースト/ドウエルと、遠隔バースト/ド
ウエルと、チップ選択マツプレジスタとである。
定されているグローバル制御レジスタは全体としてDT
Cのための制御および状態情報を含む。その5個の規定
されたレジスタはグローバルモードと、グローバル状態
と、ローカルバースト/ドウエルと、遠隔バースト/ド
ウエルと、チップ選択マツプレジスタとである。
グローバルモードレジスタはポートまたはチャネル特有
ではないDTCオプションを形成するために用いられて
もよい。
ではないDTCオプションを形成するために用いられて
もよい。
この発明の好ましい実施例に従えば、ビットはDMAチ
ャネルおよび入出力ポートを可能化または不能化するた
めにグローバル制御レジスタに確保されており、遠隔バ
ス動作がRCLKと同期しているかまたは非同期してい
るかを決定し、DTCの内部レジスタのためのアドレス
空間(ローカルバス上のデータメモリまたは入出力アド
レス空間)を指定し、DTCが内部レジスタへのアクセ
スを検出するために*CS E L入力またはチップ選
択マツピングレジスタを用いるかどうかを決定し、DM
Aチャネル要求のための相対的優先順位(これらは固定
されていてもよいしまたは循環しテモヨい)を決定し、
すべてのローカルバス転送のためのバイト順序(これよ
り以降rLBOJかまたはローカルバスバイト順序と呼
ぶ)を(すなわちワードおよびハーフワード内のバイト
が左から右またはその逆にアドレス指定されるべきかど
うか)を指定し、パリティチェックを可能化または不能
化しそしてDTC割込を可能化または不能化する。
ャネルおよび入出力ポートを可能化または不能化するた
めにグローバル制御レジスタに確保されており、遠隔バ
ス動作がRCLKと同期しているかまたは非同期してい
るかを決定し、DTCの内部レジスタのためのアドレス
空間(ローカルバス上のデータメモリまたは入出力アド
レス空間)を指定し、DTCが内部レジスタへのアクセ
スを検出するために*CS E L入力またはチップ選
択マツピングレジスタを用いるかどうかを決定し、DM
Aチャネル要求のための相対的優先順位(これらは固定
されていてもよいしまたは循環しテモヨい)を決定し、
すべてのローカルバス転送のためのバイト順序(これよ
り以降rLBOJかまたはローカルバスバイト順序と呼
ぶ)を(すなわちワードおよびハーフワード内のバイト
が左から右またはその逆にアドレス指定されるべきかど
うか)を指定し、パリティチェックを可能化または不能
化しそしてDTC割込を可能化または不能化する。
LBO情報がこの発明の好ましい実施例に従えばパッキ
ングおよび送り込み動作のための順序づけを決定するた
めに用いられバイトスワツピングがローカルから遠隔へ
のまたは遠隔からローカルへの転送で行なわれるかどう
かを決定するために、これより以降に説明されるチャネ
ルモードおよびポートモードレジスタの遠隔バイト順序
(「RBO」)ビットと関連して用いられることに気付
くべきである。
ングおよび送り込み動作のための順序づけを決定するた
めに用いられバイトスワツピングがローカルから遠隔へ
のまたは遠隔からローカルへの転送で行なわれるかどう
かを決定するために、これより以降に説明されるチャネ
ルモードおよびポートモードレジスタの遠隔バイト順序
(「RBO」)ビットと関連して用いられることに気付
くべきである。
この発明の好ましい実施例に従ってグローバル状態レジ
スタにストアされている情報は以下のとおりである。
スタにストアされている情報は以下のとおりである。
保護違反ビットは内部のレジスタアクセスで保護違反が
発生したかどうかを示す。もしユーザモードアクセス(
SUP/率USIこよって示されるように)が内部DT
Cレジスタに対して試みられるなら、DTCは*DER
Rと応答する。このビットは”DERR応答のための理
由を示すようにセットされる。
発生したかどうかを示す。もしユーザモードアクセス(
SUP/率USIこよって示されるように)が内部DT
Cレジスタに対して試みられるなら、DTCは*DER
Rと応答する。このビットは”DERR応答のための理
由を示すようにセットされる。
データ幅例外ビットは内部のレジスタアクセスでのデー
タ幅例外を示す。DTCは*DERRで内部のレジスタ
への試みられたバイトまたはハーフワードアクセスに応
答する。このビットは*DERR応答の理由を示すよう
にセットされる。
タ幅例外を示す。DTCは*DERRで内部のレジスタ
への試みられたバイトまたはハーフワードアクセスに応
答する。このビットは*DERR応答の理由を示すよう
にセットされる。
アドレス指定エラーは実現されていないDTCレジスタ
をアクセスするための試みを示す。そのようなアクセス
が試みられるとき、DTCは*DERRで応答する。こ
のビットは車DERR応答の理由を示すようにセットさ
れる。
をアクセスするための試みを示す。そのようなアクセス
が試みられるとき、DTCは*DERRで応答する。こ
のビットは車DERR応答の理由を示すようにセットさ
れる。
ポートトラップビットは入出力ポートのどちらが”DE
RR応答を発生したかを示すために用いられる。もしポ
ートトラップビットがセットされるなら、後に説明され
る示されたボートのポート状態レジスタが”DERR応
答の理由を与える。
RR応答を発生したかを示すために用いられる。もしポ
ートトラップビットがセットされるなら、後に説明され
る示されたボートのポート状態レジスタが”DERR応
答の理由を与える。
チャネル割込ベンディングビットはDMAチャネルの割
込状態を反映するために用いられる。これらのビットの
19がセットされると、割込状態がビットに関連したチ
ャネル上でベンディングしている。その状態の理由は適
当なチャネル状態レジスタ(後に説明される各チャネル
に19)を調べることによって決定され得る。
込状態を反映するために用いられる。これらのビットの
19がセットされると、割込状態がビットに関連したチ
ャネル上でベンディングしている。その状態の理由は適
当なチャネル状態レジスタ(後に説明される各チャネル
に19)を調べることによって決定され得る。
この発明の好ましい実施例に従えば、ビットはまたDT
Cのためのデバイスリリースレベルを示すためにグロー
バル状態レジスタに確保される。
Cのためのデバイスリリースレベルを示すためにグロー
バル状態レジスタに確保される。
ローカルバースト/ドウエルレジスタはローカルバス利
用のグローバル制御を行なう。この発明の好ましい実施
例に従えば、このレジスタは引用された同時係属出願に
おいて説明されているバーストモード動作を支持するた
めにDTCがデータ転送で利用することができる連続し
たローカルバスブロックサイクルの最大数を指定する、
ローカルバーストカウントフィールドを含む。もしその
制限を転送上で越えるなら、DTCはローカルバスを放
棄する前にいかなる進行中のアクセスも終える。ローカ
ルドウニルカウントフィールドは首尾よくローカルバス
が転送した後、DTCはローカルバス上で遊び状態でな
くてはならないローカルバスクロックサイクルの数を指
定する。
用のグローバル制御を行なう。この発明の好ましい実施
例に従えば、このレジスタは引用された同時係属出願に
おいて説明されているバーストモード動作を支持するた
めにDTCがデータ転送で利用することができる連続し
たローカルバスブロックサイクルの最大数を指定する、
ローカルバーストカウントフィールドを含む。もしその
制限を転送上で越えるなら、DTCはローカルバスを放
棄する前にいかなる進行中のアクセスも終える。ローカ
ルドウニルカウントフィールドは首尾よくローカルバス
が転送した後、DTCはローカルバス上で遊び状態でな
くてはならないローカルバスクロックサイクルの数を指
定する。
遠隔バースト/ドウエルレジスタはDTC遠隔バス利用
のグローバル制御を行なう。遠隔バーストカウントフィ
ールドはDTCがデータ転送のために利用することがで
きる連続した遠隔バスクロックサイクルの最大数を指定
する。もしその制限を転送上で越えるなら、DTCは遠
隔バスを放棄する前にいかなる進行中のアクセスも終了
させる。
のグローバル制御を行なう。遠隔バーストカウントフィ
ールドはDTCがデータ転送のために利用することがで
きる連続した遠隔バスクロックサイクルの最大数を指定
する。もしその制限を転送上で越えるなら、DTCは遠
隔バスを放棄する前にいかなる進行中のアクセスも終了
させる。
遠隔ドウニルカウンタフィールドは連続した遠隔バス転
送の後、遠隔バス上での間DTCが遊び状態でなくては
ならない遠隔バスクロックサイクルの数を指定する。
送の後、遠隔バス上での間DTCが遊び状態でなくては
ならない遠隔バスクロックサイクルの数を指定する。
現在規定されている最後のグローバル制御レジスタはチ
ップ選択マツピングレジスタであって、これはグローバ
ルモードレジスタに関連して以前に示されたように成る
場合におけるDTCの内部レジスタのアドレス指定を制
御する。グローバル制御レジスタはまたチップ選択アド
レスフィールドを有し、これはDTCの内部レジスタの
ためのベースアドレスを指定する。
ップ選択マツピングレジスタであって、これはグローバ
ルモードレジスタに関連して以前に示されたように成る
場合におけるDTCの内部レジスタのアドレス指定を制
御する。グローバル制御レジスタはまたチップ選択アド
レスフィールドを有し、これはDTCの内部レジスタの
ためのベースアドレスを指定する。
DMAチャネルレジスタはDTCの好ましい実施例にお
いて要求される4個のDMAチャネルのための制御およ
び状態情報を含む。DMAチャネルにつき1組である4
組の同一のレジスタが存在する。11個のレジスタが各
チャネルのために規定されている。各々はすぐ後に説明
される。
いて要求される4個のDMAチャネルのための制御およ
び状態情報を含む。DMAチャネルにつき1組である4
組の同一のレジスタが存在する。11個のレジスタが各
チャネルのために規定されている。各々はすぐ後に説明
される。
チャネルモードレジスタはDMAチャネル転送を制御す
る。それはDMA転送が行なわれ得る前に利用されなく
てはならない。
る。それはDMA転送が行なわれ得る前に利用されなく
てはならない。
この発明の好ましい実施例に従えばこのレジスタは遠隔
バス転送の間、車D S T Bが活性状態のままでな
くてはならないサイクルの数(1以上)を指定する遠隔
待機カウントフィールドと、遠隔バス転送が終了した後
チャネルが遊び状態でなくてはならないサイクルの数を
指定する遠隔回復カウントフィールドとを含む。このフ
ィールドの値はDMAチャネルのためのデータサイクル
の最後と次のデータサイクルの始まりの間に要求される
サイクルの最小の数を示す。レジスタはさらに、以下の
表に従って遠隔バス上のバイトおよびハーフワードデー
タの位置を指定するデータ位置フィールドと、 フィールド値 位置 00 アドレスによって 01 固定されたハイ 10 固定されたロー 11 アドレスにより固定されたロー/バイト 割込可能化ビットと、DMAチャネルがセットされると
きおよびローカルバイトカウントレジスタ(後に説明さ
れる)がローカルアラームカウントレジスタ(これもま
た後に説明される)における値を越えるときアラーム割
込を発生することを引き起こす、ローカルアラーム可能
化ビットと、DMAチャネルがそれがセットされかつ遠
隔バイトカウントレジスタの値が遠隔アラームカウント
レジスタの値(遠隔バイトカウントおよび遠隔アラーム
レジスタは共に後に説明される)を越えるときアラーム
を発生することを引き起こす、遠隔アラーム可能化ビッ
トと、ローカル転送不能化ビットとを含む。このビット
はローカルバスメモリへのまたはローカルバスメモリか
らの転送が行なわれるとき0である。このビットが1の
とき、ローカルバスメモリへのまたはそこからの転送は
不能化されかつDMAキューはローカルバスプロセッサ
によって直接読出および書込がなされ、またそのレジス
タは以下の対応する寧DRQO−亭DRQ3の入力の断
定のためにDMAチャネルの行ないをビットが指定する
、DMA要求応答モードフィールドを含み、 フィールド値 応答モード 00 DMA要求無視 01 単一転送 10 要求転送 11 確保される さらにレジスタはブロックモード転送が遠隔バス上で行
なわれるかどうかを決定するブロックモードビットと、
遠隔アドレスレジスタが遠隔バス上でのDMA転送の後
増分されるかまたは減分されるかのいずれかを指定する
遠隔アドレス方向ビットと、0のとき遠隔アドレスレジ
スタが遠隔アドレス方向ビットに従って増分されるかま
たは減分されることを可能にしかつセットされると遠隔
アドレスレジスタを一定に保つ遠隔アドレス保持ビット
と、チャネルに関連したDMAキューがデータバッファ
としてかまたはパターンソースとして用いられるを選択
するキューパターンビットと、DMAチャネル転送の方
向を制御する転送方向ビットとを含み、このビットが0
のときローカルから遠隔への転送が行なわれる。このビ
ットが1のとき遠隔からローカルへの転送が行なわれる
。さらに、レジスタは遠隔転送のアドレス空間を指定す
る遠隔アドレス空間を含み、もしビットが0なら転送は
メモリアドレス空間(10/寧MEMロー)に向けられ
る。もし1なら、転送は入出力アドレス空間(I O/
”MEM ハイ)に向けられる。さらにレジスタは
DSACKO−DSACK1人力に対するDMAチャネ
ル応答を可能化または不能化するデータサイズ肯定応答
不能化ビットと、DMAチャネルのための遠隔バスバイ
トオーダを指定する遠隔バイトオーダビットを含み、R
BOビットが0のとき、バイトおよびハーフワードはハ
ーフワードおよびワード内で左から右にシーケンシャル
にアドレス指定される。それが1のとき、それらは右か
ら左にシーケンシャルにアドレス指定される。そして最
後にレジスタは以下のようにDMAチャネルのための遠
隔バスデータ幅をビットが指定するデータ幅フィールド
を含む。
バス転送の間、車D S T Bが活性状態のままでな
くてはならないサイクルの数(1以上)を指定する遠隔
待機カウントフィールドと、遠隔バス転送が終了した後
チャネルが遊び状態でなくてはならないサイクルの数を
指定する遠隔回復カウントフィールドとを含む。このフ
ィールドの値はDMAチャネルのためのデータサイクル
の最後と次のデータサイクルの始まりの間に要求される
サイクルの最小の数を示す。レジスタはさらに、以下の
表に従って遠隔バス上のバイトおよびハーフワードデー
タの位置を指定するデータ位置フィールドと、 フィールド値 位置 00 アドレスによって 01 固定されたハイ 10 固定されたロー 11 アドレスにより固定されたロー/バイト 割込可能化ビットと、DMAチャネルがセットされると
きおよびローカルバイトカウントレジスタ(後に説明さ
れる)がローカルアラームカウントレジスタ(これもま
た後に説明される)における値を越えるときアラーム割
込を発生することを引き起こす、ローカルアラーム可能
化ビットと、DMAチャネルがそれがセットされかつ遠
隔バイトカウントレジスタの値が遠隔アラームカウント
レジスタの値(遠隔バイトカウントおよび遠隔アラーム
レジスタは共に後に説明される)を越えるときアラーム
を発生することを引き起こす、遠隔アラーム可能化ビッ
トと、ローカル転送不能化ビットとを含む。このビット
はローカルバスメモリへのまたはローカルバスメモリか
らの転送が行なわれるとき0である。このビットが1の
とき、ローカルバスメモリへのまたはそこからの転送は
不能化されかつDMAキューはローカルバスプロセッサ
によって直接読出および書込がなされ、またそのレジス
タは以下の対応する寧DRQO−亭DRQ3の入力の断
定のためにDMAチャネルの行ないをビットが指定する
、DMA要求応答モードフィールドを含み、 フィールド値 応答モード 00 DMA要求無視 01 単一転送 10 要求転送 11 確保される さらにレジスタはブロックモード転送が遠隔バス上で行
なわれるかどうかを決定するブロックモードビットと、
遠隔アドレスレジスタが遠隔バス上でのDMA転送の後
増分されるかまたは減分されるかのいずれかを指定する
遠隔アドレス方向ビットと、0のとき遠隔アドレスレジ
スタが遠隔アドレス方向ビットに従って増分されるかま
たは減分されることを可能にしかつセットされると遠隔
アドレスレジスタを一定に保つ遠隔アドレス保持ビット
と、チャネルに関連したDMAキューがデータバッファ
としてかまたはパターンソースとして用いられるを選択
するキューパターンビットと、DMAチャネル転送の方
向を制御する転送方向ビットとを含み、このビットが0
のときローカルから遠隔への転送が行なわれる。このビ
ットが1のとき遠隔からローカルへの転送が行なわれる
。さらに、レジスタは遠隔転送のアドレス空間を指定す
る遠隔アドレス空間を含み、もしビットが0なら転送は
メモリアドレス空間(10/寧MEMロー)に向けられ
る。もし1なら、転送は入出力アドレス空間(I O/
”MEM ハイ)に向けられる。さらにレジスタは
DSACKO−DSACK1人力に対するDMAチャネ
ル応答を可能化または不能化するデータサイズ肯定応答
不能化ビットと、DMAチャネルのための遠隔バスバイ
トオーダを指定する遠隔バイトオーダビットを含み、R
BOビットが0のとき、バイトおよびハーフワードはハ
ーフワードおよびワード内で左から右にシーケンシャル
にアドレス指定される。それが1のとき、それらは右か
ら左にシーケンシャルにアドレス指定される。そして最
後にレジスタは以下のようにDMAチャネルのための遠
隔バスデータ幅をビットが指定するデータ幅フィールド
を含む。
フィールド値 データ幅
00 32ビツト
01 8ビツト
10 16ビツト
11 無効
チャネル状態レジスタはチャネルの現行の状態を保持す
る。それはD M A転送が終了するかまたは例外が発
生するとDTCによって更新される。
る。それはD M A転送が終了するかまたは例外が発
生するとDTCによって更新される。
このレジスタはこの発明の好ましい実施例に従えば以下
を含む。すなわち、もしチェツキングがグローバルモー
ドレジスタのパリティチェック可能化ビットによって可
能化されるなら、パリティエラーがDMA転送の量検出
されるときはいつでもセットされる、パリティエラービ
ットと、もし*RBERRが遠隔バスDMA転送の間断
室されるならセットされる、遠隔バスエラービットと、
もしDSACKO−DSACKIの遠隔バスDMA転送
に対する応答が遠隔バスデバイスまたはメモリが要求さ
れた幅の転送を取扱うことができないことを示すならセ
ットされるデータ幅例外ビットと、もしアドレス矛盾が
DMA転送の(すなわちDTCの内部のレジスタまたは
入出力ボートへの転送)の量検出されるならセットされ
るアドレス矛盾ビットと、もし*DERRがローカルバ
スDMA転送の間断室されるならセットされる、ローカ
ルバスエラービットと、もし車EOP入力が遠隔バスD
MA転送の間断室されるならセットされる、プロセスの
終わりビットと、DMA転送の終了を指定する、チャネ
ル終了ビットと、チャネルモードレジスタのローカルア
ラーム可能化ビットによって可能化されるならローカル
バイトカウントレジスタにおける値がローカルアラーム
カウントレジスタにおける値を越えるとセットされる、
ローカルアラームカウント到達ビットと、チャネルモー
ドレジスタの遠隔アラーム可能化ビットによって可能化
されるなら遠隔バイトカウントレジスタにおける値が遠
隔アラームカウントレジスタにおける値を越えるとセッ
トされる、遠隔アラームカウント到達ビットと、DMA
チャネルのための最も最近のDSACKO−DSACK
I応答の値を保持する、データサイズ肯定応答フィール
ドとを含む。もしデータ幅例外が発生するなら、このフ
ィールドは例外を引き起こした遠隔バス応答を示し、さ
らにレジスタはチャネルが不活性状態のときおよびいか
なるDMA転送も行なわれないとき0である、チャネル
アクティブビットを含み、もしそのビットが1なら、そ
のチャネルは活性状態である。このビットは終了カウン
トが達成されるかまたは例外が発生するとDTCによっ
て0にセットされる。それはDMAチャネルの上の転送
を一時的に中断するためにローカルバスプロセッサによ
って0にセットされてもよい。さらに最後にこのレジス
タはチャネルリセットビットを含む。
を含む。すなわち、もしチェツキングがグローバルモー
ドレジスタのパリティチェック可能化ビットによって可
能化されるなら、パリティエラーがDMA転送の量検出
されるときはいつでもセットされる、パリティエラービ
ットと、もし*RBERRが遠隔バスDMA転送の間断
室されるならセットされる、遠隔バスエラービットと、
もしDSACKO−DSACKIの遠隔バスDMA転送
に対する応答が遠隔バスデバイスまたはメモリが要求さ
れた幅の転送を取扱うことができないことを示すならセ
ットされるデータ幅例外ビットと、もしアドレス矛盾が
DMA転送の(すなわちDTCの内部のレジスタまたは
入出力ボートへの転送)の量検出されるならセットされ
るアドレス矛盾ビットと、もし*DERRがローカルバ
スDMA転送の間断室されるならセットされる、ローカ
ルバスエラービットと、もし車EOP入力が遠隔バスD
MA転送の間断室されるならセットされる、プロセスの
終わりビットと、DMA転送の終了を指定する、チャネ
ル終了ビットと、チャネルモードレジスタのローカルア
ラーム可能化ビットによって可能化されるならローカル
バイトカウントレジスタにおける値がローカルアラーム
カウントレジスタにおける値を越えるとセットされる、
ローカルアラームカウント到達ビットと、チャネルモー
ドレジスタの遠隔アラーム可能化ビットによって可能化
されるなら遠隔バイトカウントレジスタにおける値が遠
隔アラームカウントレジスタにおける値を越えるとセッ
トされる、遠隔アラームカウント到達ビットと、DMA
チャネルのための最も最近のDSACKO−DSACK
I応答の値を保持する、データサイズ肯定応答フィール
ドとを含む。もしデータ幅例外が発生するなら、このフ
ィールドは例外を引き起こした遠隔バス応答を示し、さ
らにレジスタはチャネルが不活性状態のときおよびいか
なるDMA転送も行なわれないとき0である、チャネル
アクティブビットを含み、もしそのビットが1なら、そ
のチャネルは活性状態である。このビットは終了カウン
トが達成されるかまたは例外が発生するとDTCによっ
て0にセットされる。それはDMAチャネルの上の転送
を一時的に中断するためにローカルバスプロセッサによ
って0にセットされてもよい。さらに最後にこのレジス
タはチャネルリセットビットを含む。
このビットは読出されるとき値0を有する「書込オンリ
ー」ビットである。1がこのビットにローカルバスプロ
セッサによってストアされると、DMAチャネルはリセ
ットされ、ローカルバイトカウントレジスタと、遠隔バ
イトカウントレジスタと、キュー状態レジスタのキュー
ヘッドとキューテイルフィールド(後に説明される)が
0にセットされる。
ー」ビットである。1がこのビットにローカルバスプロ
セッサによってストアされると、DMAチャネルはリセ
ットされ、ローカルバイトカウントレジスタと、遠隔バ
イトカウントレジスタと、キュー状態レジスタのキュー
ヘッドとキューテイルフィールド(後に説明される)が
0にセットされる。
ローカルアドレスレジスタは現行またはベンディングし
ているローカルバス転送のアドレスを保持する。それは
各連続したローカルバス転送の後4(バイト)だけ増分
される。
ているローカルバス転送のアドレスを保持する。それは
各連続したローカルバス転送の後4(バイト)だけ増分
される。
遠隔アドレスレジスタは現行またはベンディングしてい
る遠隔バス転送のいずれかのアドレスを保持する。もし
チャネルモードレジスタの遠隔アドレス保持フィールド
が0であるなら、チャネルモードレジスタにおける遠隔
アドレス方向ビットに従って、各連続した遠隔バス転送
の後に増分されるかまたは減分される。増分または減分
量はチャネルモードレジスタにおけるるデータ幅フィー
ルドによって指定される。
る遠隔バス転送のいずれかのアドレスを保持する。もし
チャネルモードレジスタの遠隔アドレス保持フィールド
が0であるなら、チャネルモードレジスタにおける遠隔
アドレス方向ビットに従って、各連続した遠隔バス転送
の後に増分されるかまたは減分される。増分または減分
量はチャネルモードレジスタにおけるるデータ幅フィー
ルドによって指定される。
フィールド値 増分/減分量
11 規定されていない
ローカルバイトカウントレジスタはローカルバス上で連
続して転送されたバイトの数を保持する。
続して転送されたバイトの数を保持する。
このカウントが終了カウントレジスタ(後に説明される
)における値と一致するかまたはそれを越えると、DM
Aチャネルローカルバス転送が終了する。各連続した転
送の後、ローカルバイトカウントレジスタにおける値は
4(バイト)だけ増分する。
)における値と一致するかまたはそれを越えると、DM
Aチャネルローカルバス転送が終了する。各連続した転
送の後、ローカルバイトカウントレジスタにおける値は
4(バイト)だけ増分する。
ローカルアラームカウントレジスタはアラーム割込が発
生する前に(可能化されているなら)ローカルバス上で
転送されるべきバイトの数を指定する。
生する前に(可能化されているなら)ローカルバス上で
転送されるべきバイトの数を指定する。
遠隔バイトカウントレジスタは遠隔バス上で連続して転
送されたバイトの数を保持する。このカウントが終了カ
ウントレジスタにおける値と一致するかまたはそれを越
えると、DMAチャネル遠隔バス転送が終わる。各連続
した転送Φ後、遠隔バイトカウントレジスタにおける値
はチャネルモードレジスタにおけるデータ幅フィールド
によって決定された量だけ増分される。
送されたバイトの数を保持する。このカウントが終了カ
ウントレジスタにおける値と一致するかまたはそれを越
えると、DMAチャネル遠隔バス転送が終わる。各連続
した転送Φ後、遠隔バイトカウントレジスタにおける値
はチャネルモードレジスタにおけるデータ幅フィールド
によって決定された量だけ増分される。
フィールド値 増分/減分量
11 規定されていない
遠隔アラームカウントレジスタはアラーム割込が発生さ
れる前に(もし可能化されるなら)、遠隔バス上で転送
されるべきバイトの数を指定する。
れる前に(もし可能化されるなら)、遠隔バス上で転送
されるべきバイトの数を指定する。
終了カウントレジスタはDMAチャネルによって転送さ
れるべきバイトの数を指定する。
れるべきバイトの数を指定する。
パック/送り込みレジスタは遠隔バスにまたは遠隔バス
から転送されているデータ冬バッファする。それはDM
Aチャネル上でのパッキングおよび送り込み動作の間、
目的地またはデータの源として働く。
から転送されているデータ冬バッファする。それはDM
Aチャネル上でのパッキングおよび送り込み動作の間、
目的地またはデータの源として働く。
規定される最後のDMAチャネルレジスタはDMAキュ
ーの現行のヘッドおよびテイルのためのワードアドレス
ポインタを保持するキュー状態レジスタである。
ーの現行のヘッドおよびテイルのためのワードアドレス
ポインタを保持するキュー状態レジスタである。
この発明の好ましい実施例に従えば、このレジスタはキ
ューから離すために利用可能な次のキューレジスタのア
ドレスを含む、キューヘッドフィールドを含み、そのフ
ィールドの値は各ワードがキューから外されると1だけ
増分しかつそのレジスタはキューに入れるのに利用可能
な次のキューレジスタのアドレスを含むキューテイルフ
ィールドを含む。そのフィールドの値は各ワードがキュ
ーに入れられると1だけ増分する。
ューから離すために利用可能な次のキューレジスタのア
ドレスを含む、キューヘッドフィールドを含み、そのフ
ィールドの値は各ワードがキューから外されると1だけ
増分しかつそのレジスタはキューに入れるのに利用可能
な次のキューレジスタのアドレスを含むキューテイルフ
ィールドを含む。そのフィールドの値は各ワードがキュ
ーに入れられると1だけ増分する。
説明される内部レジスタの次の組は人出力ポートレジス
タである。これらのレジスタはDTCにおける4個の人
出力ポートのための制御および状態情報を含む。人出力
ポート1個あたり1組である、4組の同一のレジスタが
ある。その組は6個のレジスタと、ボートモードレジス
タと、ボート状態レジスタと、ローカルベースアドレス
レジスタと、遠隔ベースアドレスレジスタと、ローカル
ボートアドレスレジスタと、ポートバック/送り込みレ
ジスタとを含む。
タである。これらのレジスタはDTCにおける4個の人
出力ポートのための制御および状態情報を含む。人出力
ポート1個あたり1組である、4組の同一のレジスタが
ある。その組は6個のレジスタと、ボートモードレジス
タと、ボート状態レジスタと、ローカルベースアドレス
レジスタと、遠隔ベースアドレスレジスタと、ローカル
ボートアドレスレジスタと、ポートバック/送り込みレ
ジスタとを含む。
ボートモードレジスタは遠隔のプログラムされた入出力
転送(後に説明される)を制御する。それは遠隔プログ
ラムされた入出力転送が行なわれる前に初期設定されな
くてはならない。この発明の好ましい実施例に従えば、
ボートモードレジスタは遠隔待機カウントフィールドを
含み、DTCが入出力ボート転送のための遠隔バスタイ
ミングを発生すると、そのフィールドは遠隔バス転送の
間*D S T Bが活性状態のままでなくてはならな
いサイクルの数(1以上)を指定し、かつそのレジスタ
は遠隔回復カウントフィールドを含み、DTCが人出力
ポート転送のための遠隔バスタイミングを発生すると、
このフィールドは遠隔バス転送が終わった後入出力ポー
トが遊び状態でなくてはならないサイクルの数を指定す
る。このフィールドの値は入出力ボートのためのデータ
のサイクルの終わりと次のデータサイクルの始まりの値
で必要とされるサイクルの最小の数を示し、かつそのレ
ジスタは以下の表 フィールド値 位置 00 アドレスによって 01 固定されたハイ 10 固定されたロー 11 アドレスにより固定されたロー/バイト に従って、遠隔バス上のバイトおよびハーフワードデー
タの位置を指定する、データ位置フィールドと、バイト
のボートの大きさの対数(ベース2)を指定することに
よって人出カポ−ドアドレス空間のサイズをコード化す
る、窓サイズフィールドとを含み、たとえばもし窓サイ
ズフィールドの値が8なら、そのボートのサイズは25
6バイトである。同様に、もし窓サイズフィールドが1
7であるなら、ボートサイズは128キロバイトである
。さらにそのレジスタはセットされると入出力ボートを
介するスーパバイザモードアクセス(SUP/車US信
号によって示される)のみを許容する、スーパバイザモ
ードアクセスオンリービットを含み、このビットが0の
ときユーザモードかまたはスーパバイザモードアクセス
のいずれかが許容される。さらにレジスタはオーバラッ
プされた入出力ビットを含み、これはボートアクセスが
直接かまたは結合から外されるかどうかを決定する。も
しそのビットが0であるなら、ボートトランザクション
は直接である。遠隔バスアクセスはローカルバスアクセ
スが終わる前に終わらなくてはならない。もしそのビッ
トが1なら、ボートアクセスは結合から外されかつロー
カルバスアクセスは遠隔バスアクセスが行なわれる前に
終了できる。このビットは先読みまたは後書き動作を人
出カボートが行なえかつ上で述べられたポートトランザ
クションに関する並列を提供するようにセットされる。
転送(後に説明される)を制御する。それは遠隔プログ
ラムされた入出力転送が行なわれる前に初期設定されな
くてはならない。この発明の好ましい実施例に従えば、
ボートモードレジスタは遠隔待機カウントフィールドを
含み、DTCが入出力ボート転送のための遠隔バスタイ
ミングを発生すると、そのフィールドは遠隔バス転送の
間*D S T Bが活性状態のままでなくてはならな
いサイクルの数(1以上)を指定し、かつそのレジスタ
は遠隔回復カウントフィールドを含み、DTCが人出力
ポート転送のための遠隔バスタイミングを発生すると、
このフィールドは遠隔バス転送が終わった後入出力ポー
トが遊び状態でなくてはならないサイクルの数を指定す
る。このフィールドの値は入出力ボートのためのデータ
のサイクルの終わりと次のデータサイクルの始まりの値
で必要とされるサイクルの最小の数を示し、かつそのレ
ジスタは以下の表 フィールド値 位置 00 アドレスによって 01 固定されたハイ 10 固定されたロー 11 アドレスにより固定されたロー/バイト に従って、遠隔バス上のバイトおよびハーフワードデー
タの位置を指定する、データ位置フィールドと、バイト
のボートの大きさの対数(ベース2)を指定することに
よって人出カポ−ドアドレス空間のサイズをコード化す
る、窓サイズフィールドとを含み、たとえばもし窓サイ
ズフィールドの値が8なら、そのボートのサイズは25
6バイトである。同様に、もし窓サイズフィールドが1
7であるなら、ボートサイズは128キロバイトである
。さらにそのレジスタはセットされると入出力ボートを
介するスーパバイザモードアクセス(SUP/車US信
号によって示される)のみを許容する、スーパバイザモ
ードアクセスオンリービットを含み、このビットが0の
ときユーザモードかまたはスーパバイザモードアクセス
のいずれかが許容される。さらにレジスタはオーバラッ
プされた入出力ビットを含み、これはボートアクセスが
直接かまたは結合から外されるかどうかを決定する。も
しそのビットが0であるなら、ボートトランザクション
は直接である。遠隔バスアクセスはローカルバスアクセ
スが終わる前に終わらなくてはならない。もしそのビッ
トが1なら、ボートアクセスは結合から外されかつロー
カルバスアクセスは遠隔バスアクセスが行なわれる前に
終了できる。このビットは先読みまたは後書き動作を人
出カボートが行なえかつ上で述べられたポートトランザ
クションに関する並列を提供するようにセットされる。
さらにレジスタはローカルバス上の入出力ポートのアド
レス空間を指定するローカルアドレス空間ビットを含む
。そのビットが0なら、入出力ポートはローカルバスの
データメモリアドレス空間にある。もしそのビットが1
なら、その入出力ポートはローカルバスの入出力アドレ
ス空間にある。さらにレジスタは遠隔転送のアドレス空
間を指定する遠隔アドレス空間ビットを含み、もしその
ビットが0なら、転送はメモリアドレス空間に向けられ
る(10/”MEMロー)。もしそれが1なら、転送は
人出力アドレス空間に向けられる(10/”MEMハイ
)。さらにレジスタはDSACKO−DSACK1人力
に対する入出力ポート応答を可能化または不能化するデ
ータサイズ肯定応答不能化ビットと、入出力ポートのた
めの遠隔バスバイトオーダを指定する遠隔バイトオーダ
ビットを含み、そのビットが0のときバイトおよびハー
フワードはハーフワードおよびワード内で左から右にシ
ーケンシャルにアドレス指定される。1のとき、それら
は右から左シーケンシャルにアドレス指定される。最後
に、そのレジスタは以下の通゛りに、 フィールド値 データ幅 00 32ビツト 01 8ビツト 10 16ビツト 11 無効 入出力ポートのための遠隔バスデータ幅を指定するデー
タ幅フィールドを含む。
レス空間を指定するローカルアドレス空間ビットを含む
。そのビットが0なら、入出力ポートはローカルバスの
データメモリアドレス空間にある。もしそのビットが1
なら、その入出力ポートはローカルバスの入出力アドレ
ス空間にある。さらにレジスタは遠隔転送のアドレス空
間を指定する遠隔アドレス空間ビットを含み、もしその
ビットが0なら、転送はメモリアドレス空間に向けられ
る(10/”MEMロー)。もしそれが1なら、転送は
人出力アドレス空間に向けられる(10/”MEMハイ
)。さらにレジスタはDSACKO−DSACK1人力
に対する入出力ポート応答を可能化または不能化するデ
ータサイズ肯定応答不能化ビットと、入出力ポートのた
めの遠隔バスバイトオーダを指定する遠隔バイトオーダ
ビットを含み、そのビットが0のときバイトおよびハー
フワードはハーフワードおよびワード内で左から右にシ
ーケンシャルにアドレス指定される。1のとき、それら
は右から左シーケンシャルにアドレス指定される。最後
に、そのレジスタは以下の通゛りに、 フィールド値 データ幅 00 32ビツト 01 8ビツト 10 16ビツト 11 無効 入出力ポートのための遠隔バスデータ幅を指定するデー
タ幅フィールドを含む。
ポート状態レジスタは入出力ポートの現行の状態を保持
する。それは入出力ポート転送が例外に遭遇しかつ”D
ERRで応答するときDTCによって更新される。この
発明の好ましい実施例に従えば、このレジスタは保護違
反が入出力ポートで発生したかどうかを示す保護違反ビ
ットを含む。
する。それは入出力ポート転送が例外に遭遇しかつ”D
ERRで応答するときDTCによって更新される。この
発明の好ましい実施例に従えば、このレジスタは保護違
反が入出力ポートで発生したかどうかを示す保護違反ビ
ットを含む。
もしユーザモードアクセス(USP/*USによって示
される)が入出力ポートに対して試みられ、それに対し
てのポートモードレジスタにおけるスーパバイザモード
アクセスオンリービットは1であるなら、DTCは車D
ERRで応答する。そのビットは*DERR応答の理由
を示すようにセットされる。さらにレジスタはパリティ
エラービットを含み、もしパリティチェックがグローバ
ルモードレジスタのパリティチェック可能化によって可
能化されるなら、パリティエラービットはパリティエラ
ーが入出力ポート転送の量検出されるときはいつでもセ
ットされる。(バイトまたはハーフワードデータ幅のた
めに)「気にしない」である信号のためのパリティ人力
は無視される。パリティは遠隔バス上での読出のための
みにチェックされる。入出力ポートを介する書込に関し
てはデータ上のパリティチェックは存在しない。さらに
レジスタは入出力ポート転送の間もし*RBERRが断
定されるならセットされる遠隔バスエラーと、もし遠隔
バス入出力ポート転送に対するDSACKO−DSAC
KIが遠隔バスデバイスまたはメモリが要求された幅の
転送を取扱うことができないことを示すならセットされ
る、データ幅例外ビットと、最後に入出力ポートのため
に最も最近のDSACKO−DSACKI応答の値を保
持する、データサイズ肯定応答フィールドとを含む。
される)が入出力ポートに対して試みられ、それに対し
てのポートモードレジスタにおけるスーパバイザモード
アクセスオンリービットは1であるなら、DTCは車D
ERRで応答する。そのビットは*DERR応答の理由
を示すようにセットされる。さらにレジスタはパリティ
エラービットを含み、もしパリティチェックがグローバ
ルモードレジスタのパリティチェック可能化によって可
能化されるなら、パリティエラービットはパリティエラ
ーが入出力ポート転送の量検出されるときはいつでもセ
ットされる。(バイトまたはハーフワードデータ幅のた
めに)「気にしない」である信号のためのパリティ人力
は無視される。パリティは遠隔バス上での読出のための
みにチェックされる。入出力ポートを介する書込に関し
てはデータ上のパリティチェックは存在しない。さらに
レジスタは入出力ポート転送の間もし*RBERRが断
定されるならセットされる遠隔バスエラーと、もし遠隔
バス入出力ポート転送に対するDSACKO−DSAC
KIが遠隔バスデバイスまたはメモリが要求された幅の
転送を取扱うことができないことを示すならセットされ
る、データ幅例外ビットと、最後に入出力ポートのため
に最も最近のDSACKO−DSACKI応答の値を保
持する、データサイズ肯定応答フィールドとを含む。
もしデータ幅例外が発生すると、このフィールドは例外
を引き起こした遠隔バス応答を示す。 ローカルベース
アドレスレジスタは人出力ポートのローカルバスベース
アドレスを指定する。このポートのためのアドレス空間
はポートモードレジスタのローカルアドレス空間ビット
によって指定される。
を引き起こした遠隔バス応答を示す。 ローカルベース
アドレスレジスタは人出力ポートのローカルバスベース
アドレスを指定する。このポートのためのアドレス空間
はポートモードレジスタのローカルアドレス空間ビット
によって指定される。
遠隔ベースアドレスレジスタは入出力ポートの遠隔バス
ベースアドレスを指定する。このポートのためのアドレ
ス空間はポートモードレジスタの遠隔アドレススペース
ビットによって指定される。
ベースアドレスを指定する。このポートのためのアドレ
ス空間はポートモードレジスタの遠隔アドレススペース
ビットによって指定される。
ローカルポートアドレスレジスタは現行の入出力ポート
アクセス(先読みかまたは後書きであってよい)のため
のローカルバスを保持する。このアドレスは例外に遭遇
するアクセスを再スタートするためにソフトウェアによ
って利用されてもよい。
アクセス(先読みかまたは後書きであってよい)のため
のローカルバスを保持する。このアドレスは例外に遭遇
するアクセスを再スタートするためにソフトウェアによ
って利用されてもよい。
パック/送り込みレジスタは遠隔バスへまたは遠隔バス
から転送されているデータをバッファする。それは人出
力ポート上のパッキングおよび送り込動作の間、データ
の目的地または源として働く。先読みおよび後書きでは
、そのバック/送り込みレジスタはデータバッファとし
て働く。例外に遭遇する入出力ポートを介する書込では
、パック/送り込みレジスタは書込を再スタートするた
めにソフトウェアによって用いられるかもしれないデー
タを保持する。
から転送されているデータをバッファする。それは人出
力ポート上のパッキングおよび送り込動作の間、データ
の目的地または源として働く。先読みおよび後書きでは
、そのバック/送り込みレジスタはデータバッファとし
て働く。例外に遭遇する入出力ポートを介する書込では
、パック/送り込みレジスタは書込を再スタートするた
めにソフトウェアによって用いられるかもしれないデー
タを保持する。
内部レジスタの最後の組はキューレジスタである。キュ
ーレジスタはDMA転送のためのデータをバッファする
。これらのレジスタはキューの内容を直接読出すかまた
は書込むためにローカルバスプロセッサによってアクセ
スされてもよい。各チャネルでのキューの動作は後に詳
細に説明される。
ーレジスタはDMA転送のためのデータをバッファする
。これらのレジスタはキューの内容を直接読出すかまた
は書込むためにローカルバスプロセッサによってアクセ
スされてもよい。各チャネルでのキューの動作は後に詳
細に説明される。
これによって内部のDTCレジスタの機能の説明を終え
る。
る。
レジスタの初期設定に関する限り、DTCがリセットさ
れた後そのレジスタはグローバルモードレジスタが0に
セットされることを除いて不定の値を有する。これはす
べての入出力ポートとDMAチャネルを不能化し、割込
を不能化しかつ*C3EL入力を可能化する。
れた後そのレジスタはグローバルモードレジスタが0に
セットされることを除いて不定の値を有する。これはす
べての入出力ポートとDMAチャネルを不能化し、割込
を不能化しかつ*C3EL入力を可能化する。
この発明の好ましい実施例に従えば、RISCシステム
の状況の中で動作しながら、RISCプロセッサにおい
て実行されている初期設定ルーチンはシステムによって
要求されるようにDTCレジスタを初期設定するための
責任を有している。
の状況の中で動作しながら、RISCプロセッサにおい
て実行されている初期設定ルーチンはシステムによって
要求されるようにDTCレジスタを初期設定するための
責任を有している。
初期設定ルーチンで駆動されるプロセッサのデザインは
当業者のよく知るところであって、したがって初期設定
ルーチンはこの発明の一部を形成しない。
当業者のよく知るところであって、したがって初期設定
ルーチンはこの発明の一部を形成しない。
チップ選択マツピングレジスタが適切に初期設定される
まで、内部のDTCレジスタは*C5EL入力を断定す
ることによってのみアクセスされ得ることに注目すべき
である。
まで、内部のDTCレジスタは*C5EL入力を断定す
ることによってのみアクセスされ得ることに注目すべき
である。
この目的で、寧C3ELはA31−Al1信号の19を
直接率C5ELに接続する(これによってDTCレジス
タを初期設定する目的のためのビット有効アドレスデコ
ードが効果的に実現されることに注目されたい)といっ
たシステム依存の態様で断定されてもよい。−旦チツブ
選択マツピングレジスタが適切に初期設定されると、D
TCは車C3ELに対して無間隔にされ得、レジスタは
次にシステムによって規定される通常のアドレスを用い
てアクセスされる。
直接率C5ELに接続する(これによってDTCレジス
タを初期設定する目的のためのビット有効アドレスデコ
ードが効果的に実現されることに注目されたい)といっ
たシステム依存の態様で断定されてもよい。−旦チツブ
選択マツピングレジスタが適切に初期設定されると、D
TCは車C3ELに対して無間隔にされ得、レジスタは
次にシステムによって規定される通常のアドレスを用い
てアクセスされる。
次に、新規のDTCによって支持されるデータフォーマ
ットおよびどのようにそれらが取扱われるかが詳細に述
べられる。
ットおよびどのようにそれらが取扱われるかが詳細に述
べられる。
上で述べられたように、DTCの好ましい実施例は遠隔
バス上でのワード(32ビツト)と、ハーフワード(1
6ビツト)と、バイト(8ビツト)転送を支持する。入
出力ポートに向けられたローカルバスアクセスがバイト
アクセスのハーフワードであるかもしれないが、ローカ
ルバス上のデータ転送はワードに向けられる。
バス上でのワード(32ビツト)と、ハーフワード(1
6ビツト)と、バイト(8ビツト)転送を支持する。入
出力ポートに向けられたローカルバスアクセスがバイト
アクセスのハーフワードであるかもしれないが、ローカ
ルバス上のデータ転送はワードに向けられる。
ハーフワードおよびワード内のバイトおよびハーフワー
ドをアドレス指定するための事実上の標準が2個存在す
る。DTCは後に説明される形態のオプションを用いて
、いずれかの標準の周辺デバイスを支持する。
ドをアドレス指定するための事実上の標準が2個存在す
る。DTCは後に説明される形態のオプションを用いて
、いずれかの標準の周辺デバイスを支持する。
さらにDTCは遠隔バス上の所与のデータ幅の転送をロ
ーカルバス上のより大きなデータ幅の転送へおよびそれ
から変換するための規定を組込む。
ーカルバス上のより大きなデータ幅の転送へおよびそれ
から変換するための規定を組込む。
遠隔バスとローカルバスの間の転送では、ローカルバス
上のデータの幅は遠隔バス上のデータの幅より大きいか
またはそれと等しくなくてはならない。データ幅の変換
は第3図の304で示されるように以前述べられたパッ
キングおよび送り込み手段によって行なわれる。
上のデータの幅は遠隔バス上のデータの幅より大きいか
またはそれと等しくなくてはならない。データ幅の変換
は第3図の304で示されるように以前述べられたパッ
キングおよび送り込み手段によって行なわれる。
データ幅に焦点を当てると、DTCのDMAキューは常
に語長データをストアしそしてローカルバスとDMAキ
ューの間のすべての転送は32ビツト転送である。もう
一方で、遠隔バスとDMAキューの間の転送はバイトか
、ハーフワードかまたはワード転送であってもよく、バ
イトおよびハーフワード転送はこれより後に詳細に説明
されるパッキングおよび送り込み動作を含む。
に語長データをストアしそしてローカルバスとDMAキ
ューの間のすべての転送は32ビツト転送である。もう
一方で、遠隔バスとDMAキューの間の転送はバイトか
、ハーフワードかまたはワード転送であってもよく、バ
イトおよびハーフワード転送はこれより後に詳細に説明
されるパッキングおよび送り込み動作を含む。
内部のDTCレジスタへのおよびそこからの転送は常に
語長転送である。DTCレジスタへのバイトおよびハー
フワードアクセスは支持されずかつDTCは”DERR
支持で内部のレジスタの試みられたバイトまたはハーフ
ワードアクセスに対して応答する。上で述べられたよう
に、グローバル状態レジスタにおけるデータ幅例外ビッ
トは例外の原因を示すために、DTCによってセットさ
れる。
語長転送である。DTCレジスタへのバイトおよびハー
フワードアクセスは支持されずかつDTCは”DERR
支持で内部のレジスタの試みられたバイトまたはハーフ
ワードアクセスに対して応答する。上で述べられたよう
に、グローバル状態レジスタにおけるデータ幅例外ビッ
トは例外の原因を示すために、DTCによってセットさ
れる。
DTCは入出力ボートを介するバイトや、ワードや、ハ
ーフワードアクセスを許容する。もし要求されたデータ
幅が適切なボートモードレジスタによって示されるデー
タ幅より大きいなら、DTCは後に説明されるパッキン
グおよび送り込み動作を用いてサイズの不一致を取扱う
。
ーフワードアクセスを許容する。もし要求されたデータ
幅が適切なボートモードレジスタによって示されるデー
タ幅より大きいなら、DTCは後に説明されるパッキン
グおよび送り込み動作を用いてサイズの不一致を取扱う
。
まずDTCとのローカルバスインターフェイスに焦点を
当てると、DTCがローカルバススレーブのとき、関連
したデータ転送のデータ幅は0PTO−OPTI信号に
よって示される。これらの信号は引用された同時係属出
願によって規定される、転送を行なうRISCプロセッ
サロードまたはストア命令のOPTフィールドを反映す
る。0PTO−OPTI信号のコード化は以前に述べら
れている。もしDTCが所与の幅のアクセスを支持でき
ないなら(おそらく遠隔バスがアクセスを支持できない
からである)、それは”DERR支持でアクセスに対し
て応答する。グローバル状態レジスタかまたはボート状
態レジスタのデータ幅例外ビットが適切に例外の原因を
示すようにセットされる。
当てると、DTCがローカルバススレーブのとき、関連
したデータ転送のデータ幅は0PTO−OPTI信号に
よって示される。これらの信号は引用された同時係属出
願によって規定される、転送を行なうRISCプロセッ
サロードまたはストア命令のOPTフィールドを反映す
る。0PTO−OPTI信号のコード化は以前に述べら
れている。もしDTCが所与の幅のアクセスを支持でき
ないなら(おそらく遠隔バスがアクセスを支持できない
からである)、それは”DERR支持でアクセスに対し
て応答する。グローバル状態レジスタかまたはボート状
態レジスタのデータ幅例外ビットが適切に例外の原因を
示すようにセットされる。
遠隔バス上でのDMA転送のための遠隔バスデータ幅に
関して、転送のデータ幅は関連したチャネルモードレジ
スタ(以前に説明されている)のデータ幅フィールドに
よって指定される。
関して、転送のデータ幅は関連したチャネルモードレジ
スタ(以前に説明されている)のデータ幅フィールドに
よって指定される。
入力出力ボート転送では、この発明の好ましい実施例に
従って、転送のデータ幅は関連したボートモードレジス
タのデータ幅フィールドとローカルバス上の0PTO−
OPTI入力の組合わせによって指定される。
従って、転送のデータ幅は関連したボートモードレジス
タのデータ幅フィールドとローカルバス上の0PTO−
OPTI入力の組合わせによって指定される。
遠隔バス転送のためのデータ幅は転送が発生するときD
S IZEO−DS IZEI出力で反映される。もし
要求された転送が遠隔バスによって支持されないなら(
なぜなら遠隔バス上のデバイスまたはメモリが十分に幅
がないため)、遠隔バスは実際の支持されたデータ幅を
示すDSA(、KO−DSACKI応答に応答する。こ
れによってデータ幅例外が引き起こされる。*RBER
R信号がまた例外を作るために利用されてもよいがその
理由を孤立させることはない。
S IZEO−DS IZEI出力で反映される。もし
要求された転送が遠隔バスによって支持されないなら(
なぜなら遠隔バス上のデバイスまたはメモリが十分に幅
がないため)、遠隔バスは実際の支持されたデータ幅を
示すDSA(、KO−DSACKI応答に応答する。こ
れによってデータ幅例外が引き起こされる。*RBER
R信号がまた例外を作るために利用されてもよいがその
理由を孤立させることはない。
もしDMA転送がデータ幅の例外に遭遇するなら、転送
はキャンセルされ寧lNTRはもし割込が可能化される
なら断定される。
はキャンセルされ寧lNTRはもし割込が可能化される
なら断定される。
もし入出力アクセスがデータ幅例外に遭遇するなら、D
TCは*DERR支持でローカルバス上で応答する。先
読みまたは後書きの場合、*DERRは例外が対応する
入出力ボートを介して最も最近のアクセスで発生したと
いう信号を出す。
TCは*DERR支持でローカルバス上で応答する。先
読みまたは後書きの場合、*DERRは例外が対応する
入出力ボートを介して最も最近のアクセスで発生したと
いう信号を出す。
例外がDSACKO−DSACKI応答によって引き起
こされると、例外と関連したDSACKO−DSACK
1入力の状態が転送に関連したチャネル状態またはボー
ト状態レジスタのデータサイズ肯定応答フィールドにお
いてストアされる。
こされると、例外と関連したDSACKO−DSACK
1入力の状態が転送に関連したチャネル状態またはボー
ト状態レジスタのデータサイズ肯定応答フィールドにお
いてストアされる。
(DSACKO−DSACKI応答はどの例外のために
もストアされる)これによって割込またはトラップハン
ドラが適切なデータ幅でのアクセスを再度試みることが
できる。
もストアされる)これによって割込またはトラップハン
ドラが適切なデータ幅でのアクセスを再度試みることが
できる。
遠隔バスデバイスまたはメモリがそれが要求されるより
広いデータ幅を支持することを示す、DSACKO−D
SACKI応答を与えることが可能である。この場合、
DTCはさらに要求された幅を有するものとしてアクセ
スを取扱う。
広いデータ幅を支持することを示す、DSACKO−D
SACKI応答を与えることが可能である。この場合、
DTCはさらに要求された幅を有するものとしてアクセ
スを取扱う。
データ割当を考慮すると、ローカルおよび遠隔バス双方
上のアドレスはそれらがいずれかのバスにつけられたデ
バイスまたはメモリにおけるバイトを選択するのに十分
であるといった点で、バイトアドレスである。ハーフワ
ードまたはワードがアクセスされると、対応するアドレ
スはそれがハーフワードまたはワードにおける第1のバ
イトを指す点で普通に位置合わせが行なわれる。位置合
わせされたハーフワードアドレスは最下位ビットにおい
て0を有し、そして位置合わせされたワードアドレスは
2Hの最下位ビットにおいて00を有する。
上のアドレスはそれらがいずれかのバスにつけられたデ
バイスまたはメモリにおけるバイトを選択するのに十分
であるといった点で、バイトアドレスである。ハーフワ
ードまたはワードがアクセスされると、対応するアドレ
スはそれがハーフワードまたはワードにおける第1のバ
イトを指す点で普通に位置合わせが行なわれる。位置合
わせされたハーフワードアドレスは最下位ビットにおい
て0を有し、そして位置合わせされたワードアドレスは
2Hの最下位ビットにおいて00を有する。
DTCはその実際の値には関係なくアドレスの1個また
は2個の最下位ビットを(適切に)0として解釈するこ
とによって、すべてのハーフワードおよびワードアクセ
スのための位置合わせを強制する。これはシフティング
や、位置合わせおよび連結で多数のデータアクセスを要
求する位置合わせされないアクセスとしてそのようなア
クセスを解釈するいくつかのシステムとは対照的である
。
は2個の最下位ビットを(適切に)0として解釈するこ
とによって、すべてのハーフワードおよびワードアクセ
スのための位置合わせを強制する。これはシフティング
や、位置合わせおよび連結で多数のデータアクセスを要
求する位置合わせされないアクセスとしてそのようなア
クセスを解釈するいくつかのシステムとは対照的である
。
もしそのようなアクセスが支持されなくてはならないな
ら、それらはここで述べられるDTCがつけられるRI
SCシステムにおける位置合わせされていないアクセス
トラップによってインターセプトされなくてはならない
。
ら、それらはここで述べられるDTCがつけられるRI
SCシステムにおける位置合わせされていないアクセス
トラップによってインターセプトされなくてはならない
。
バイトがハーフワードまたはワードの部分としてアクセ
スされるかまたはハーフワードがワードの一部としてア
クセスされる場合、ハーフワードまたはワード内のバイ
トまたはハーフワードの位置は2個の確立された規定の
うちの19によって決定される。これらの規定はバイト
またはハーフワードの位置をその対応するアドレスに関
連させかつ第4図に示される。
スされるかまたはハーフワードがワードの一部としてア
クセスされる場合、ハーフワードまたはワード内のバイ
トまたはハーフワードの位置は2個の確立された規定の
うちの19によって決定される。これらの規定はバイト
またはハーフワードの位置をその対応するアドレスに関
連させかつ第4図に示される。
第4図において、以下の数字を付けた規定が用いられる
。
。
1、 ハーフワード内のバイトは対応するアドレスの最
下位ビットに従って番号が付けられる。
下位ビットに従って番号が付けられる。
2、 ワード内のバイトは対応するアドレスの2個の
最下位ビットに対応して番号が付けられる。
最下位ビットに対応して番号が付けられる。
3、 ハーフワードは対応するアドレスの最下位の次
のビットに対応して番号が付けられる。
のビットに対応して番号が付けられる。
RISCシステムでは、第4図に示される規定のうちの
いずれかがローカルバスに当てられかつそのいずれかま
たは両方が遠隔バスに当てられてもよい。このため、D
TCはそれらの間で変換して両方の規定を支持する。
いずれかがローカルバスに当てられかつそのいずれかま
たは両方が遠隔バスに当てられてもよい。このため、D
TCはそれらの間で変換して両方の規定を支持する。
グローバルモードレジスタのローカルバイト順序(rL
BOJ )ビットは第4図に示されるように順序づけら
れた規定のいずれがローカルバスにあてはまるのかを指
定する。もしLBOビットが0なら、バイトおよびハー
フワードはハーフワードおよびワード内で左から右にシ
ーケンシャルにアドレス指定される。もしLBOビット
が1なら、それらは右から左にシーケンシャルにアドレ
ス指定される。19の規定のみがローカルバス上のすべ
ての転送に対して可能であることに注目されたい。
BOJ )ビットは第4図に示されるように順序づけら
れた規定のいずれがローカルバスにあてはまるのかを指
定する。もしLBOビットが0なら、バイトおよびハー
フワードはハーフワードおよびワード内で左から右にシ
ーケンシャルにアドレス指定される。もしLBOビット
が1なら、それらは右から左にシーケンシャルにアドレ
ス指定される。19の規定のみがローカルバス上のすべ
ての転送に対して可能であることに注目されたい。
チャネルモードまたはボートモードレジスタの遠隔バイ
ト順序(rRBOJ )ビットはチャネルごとまたはボ
ートごとに順序づけられている規定のいずれが遠隔バス
にあてはまるかを指定する。
ト順序(rRBOJ )ビットはチャネルごとまたはボ
ートごとに順序づけられている規定のいずれが遠隔バス
にあてはまるかを指定する。
もしRBOビットがOなら、バイトおよびハーフワード
はハーフワードおよびワード内で左から右にシーケンシ
ャルにアドレス指定される。もしRBOビットが1なら
、それらは右から左にシーケンシャルにアドレス指定さ
れる。
はハーフワードおよびワード内で左から右にシーケンシ
ャルにアドレス指定される。もしRBOビットが1なら
、それらは右から左にシーケンシャルにアドレス指定さ
れる。
一般に、LBOビットはパッキングおよび送り込み動作
の間バイトおよびハーフワード選択を制御する。もしL
BOビットが0なら、パッキングおよび送り込みはシー
ケンシャルにアドレスを増加させるために左から右に進
む。もしLBOビットが1なら、パッキングおよび送り
込みは、シーケンシャルにアドレスを増加させるために
右から左に進む。その順序はシーケンシャルにアドレス
を減少させるためには逆にされることに注目されたい。
の間バイトおよびハーフワード選択を制御する。もしL
BOビットが0なら、パッキングおよび送り込みはシー
ケンシャルにアドレスを増加させるために左から右に進
む。もしLBOビットが1なら、パッキングおよび送り
込みは、シーケンシャルにアドレスを増加させるために
右から左に進む。その順序はシーケンシャルにアドレス
を減少させるためには逆にされることに注目されたい。
RBOビットはバイトおよびハーフワード位置がアドレ
スに依存している場合には遠隔バス上のデータの位置を
制御する。さらに、DMAチャネルまたは入出力ポート
が転送に含まれるとき関連したチャネルモードたはボー
トモードレジスタのためのRBOビットはLBOビット
と比較される。
スに依存している場合には遠隔バス上のデータの位置を
制御する。さらに、DMAチャネルまたは入出力ポート
が転送に含まれるとき関連したチャネルモードたはボー
トモードレジスタのためのRBOビットはLBOビット
と比較される。
もし選択されたRBOビットがLBOビットと一致せず
かつ転送されたデータがバイトより広いなら、ハーフワ
ードまたはワード内のバイトはスワツピングされて2個
のアドレス指定の規定の間で変換する。このスワツピン
グは第5図でグラフで示される。
かつ転送されたデータがバイトより広いなら、ハーフワ
ードまたはワード内のバイトはスワツピングされて2個
のアドレス指定の規定の間で変換する。このスワツピン
グは第5図でグラフで示される。
第5図では、バイトは数字の代わりに文字で示されスワ
ツピングがいずれかのアドレス指定規定が他方に変換す
ることを強調する。
ツピングがいずれかのアドレス指定規定が他方に変換す
ることを強調する。
パッキングおよび送り込み動作がDTCによって支持さ
れる態様が説明される。
れる態様が説明される。
パッキングに関して、遠隔からローカルへの転送でDT
Cは遠隔バス上のバイトまたはハーフワード転送の数を
より少ないローカルバス上のハーフワードまたはワード
転送の数に変換することができる。これはバイトまたは
ハーフワードをハーフワードまたはワードにパッキング
することによって達成される。バイトは入出力ボートア
クセスでのみハーフワードにパッキングされ得ることを
思い出すべきである。
Cは遠隔バス上のバイトまたはハーフワード転送の数を
より少ないローカルバス上のハーフワードまたはワード
転送の数に変換することができる。これはバイトまたは
ハーフワードをハーフワードまたはワードにパッキング
することによって達成される。バイトは入出力ボートア
クセスでのみハーフワードにパッキングされ得ることを
思い出すべきである。
以前に示されたように各DTCDMAチャネルおよび入
出力ポートは関連した32ビツトのバック/送り込みレ
ジスタを有する。このレジスタは要求される量のデータ
が集められるまで(要求されるデータ幅は通常1ワード
であるが、入出力ボートアクセスの場合ハーフワードで
あってもよい)1バイトまたはハーフワードを集めるこ
とによってパッキング動作を支持する。パック/送り込
みレジスタにおけるデータが要求される幅に達すると、
それはバック/送り込みレジスタから適切なりMAキュ
ー(DMAチャネルのため)かまたはローカルバス(入
出力ポートのため)に転送される。−旦データがパック
/送り込みレジスタから取除かれると、さらなるパッキ
ング動作が進められてもよい。
出力ポートは関連した32ビツトのバック/送り込みレ
ジスタを有する。このレジスタは要求される量のデータ
が集められるまで(要求されるデータ幅は通常1ワード
であるが、入出力ボートアクセスの場合ハーフワードで
あってもよい)1バイトまたはハーフワードを集めるこ
とによってパッキング動作を支持する。パック/送り込
みレジスタにおけるデータが要求される幅に達すると、
それはバック/送り込みレジスタから適切なりMAキュ
ー(DMAチャネルのため)かまたはローカルバス(入
出力ポートのため)に転送される。−旦データがパック
/送り込みレジスタから取除かれると、さらなるパッキ
ング動作が進められてもよい。
パッキング動作の間のローカルおよび遠隔バス転送は以
下の表に述べられるように発生する。
下の表に述べられるように発生する。
ローカルバ 遠隔バス
スデータ幅 データ幅 遠隔バス転送の数32ビット
32ビツト 1 32ビツト 16ビツト 2 32ビツト 8ビツト 4 16ビツト 16ビツト 1(人出力ポートのみ)16
ビツト 8ビツト 2(入出力ポートのみ)8ビツト
8ビツト 1(入出力ポートのみ)遠隔バスからロ
ーカルバスに転送されるすべてのデータはたとえ遠隔バ
イアス上のデータ幅がローカルバス上のデータ幅と一致
している場合でも、適切なパック/送り込みレジスタに
おいてバッファされることに注目すべきである。
32ビツト 1 32ビツト 16ビツト 2 32ビツト 8ビツト 4 16ビツト 16ビツト 1(人出力ポートのみ)16
ビツト 8ビツト 2(入出力ポートのみ)8ビツト
8ビツト 1(入出力ポートのみ)遠隔バスからロ
ーカルバスに転送されるすべてのデータはたとえ遠隔バ
イアス上のデータ幅がローカルバス上のデータ幅と一致
している場合でも、適切なパック/送り込みレジスタに
おいてバッファされることに注目すべきである。
例外の場合には、パッキング動作は要求されるデー、夕
幅が得られる前にキャンセルされるかもしれない。これ
らの場合は転送の間に例外があるとき(たとえばパリテ
ィエラー)やまたは遠隔バス転送がパッキング動作がワ
ードを作る前に終わるとき(たとえばバイトの奇数がD
MAチャネルで転送されると)起こる。もしパッキング
動作が要求される幅のデータユニットを作ることができ
ないなら、ハーフワードまたはワードの残りはこの発明
の好ましい実施例に従って0でパッディングされる。
幅が得られる前にキャンセルされるかもしれない。これ
らの場合は転送の間に例外があるとき(たとえばパリテ
ィエラー)やまたは遠隔バス転送がパッキング動作がワ
ードを作る前に終わるとき(たとえばバイトの奇数がD
MAチャネルで転送されると)起こる。もしパッキング
動作が要求される幅のデータユニットを作ることができ
ないなら、ハーフワードまたはワードの残りはこの発明
の好ましい実施例に従って0でパッディングされる。
送り込みに関すれば、ローカルから遠隔への転送でDT
Cはローカルバス上のワードまたはハーフワード転送の
数をより大きな遠隔バス上のハーフワードまたはバイト
転送の数に変換する。これはワードまたはハーフワード
内のデータをハーフワードまたはバイト転送のシーケン
スに送り込むことによって達成される。ハーフワードは
入出力ボートアクセスのみのためのバイトに送り込まれ
ることに注目すべきである。
Cはローカルバス上のワードまたはハーフワード転送の
数をより大きな遠隔バス上のハーフワードまたはバイト
転送の数に変換する。これはワードまたはハーフワード
内のデータをハーフワードまたはバイト転送のシーケン
スに送り込むことによって達成される。ハーフワードは
入出力ボートアクセスのみのためのバイトに送り込まれ
ることに注目すべきである。
パック/送り込みレジスタはDMAキュー(DMAチャ
ネルのための)またはローカルバス(入出力ポートのた
めの)からデータを受取り、それを送り込み動作の間バ
ッファする。送り込みは1度に19ハーフワードまたは
バイトをパック/送り込みレジスタから抽出しそしてそ
れらを個々に遠隔バス上で転送する。パック/送り込み
レジスタ内のすべてのデータが転送されると、パック/
送り込みレジスタは転送されるべきより多くのデータで
書込まれてもよい。
ネルのための)またはローカルバス(入出力ポートのた
めの)からデータを受取り、それを送り込み動作の間バ
ッファする。送り込みは1度に19ハーフワードまたは
バイトをパック/送り込みレジスタから抽出しそしてそ
れらを個々に遠隔バス上で転送する。パック/送り込み
レジスタ内のすべてのデータが転送されると、パック/
送り込みレジスタは転送されるべきより多くのデータで
書込まれてもよい。
送り込み動作の間のローカルおよび遠隔バス転送はパッ
キングの間と同じ態様で発生し、データ幅および転送の
数の表は以前に述べられたものである。
キングの間と同じ態様で発生し、データ幅および転送の
数の表は以前に述べられたものである。
ローカルバスから遠隔バスに転送されるすべてのデータ
はたとえローカルバス上のデータ幅が遠隔バス上のデー
タ幅と一致する場合でも、適切なパック/送り込みレジ
スタにおいてバッファされることもまた注目すべきであ
る。
はたとえローカルバス上のデータ幅が遠隔バス上のデー
タ幅と一致する場合でも、適切なパック/送り込みレジ
スタにおいてバッファされることもまた注目すべきであ
る。
例外の場合においては、送り込み動作はバック/送り込
みレジスタにおけるデータがなくなる前にキャンセルさ
れてもよい。転送の間エラー(たとえばパリティエラー
)が存在するときかまたは遠隔バス転送が送り込み動作
がパック/送り込みレジスタからハーフワードまたはワ
ードのすべてを転送してしまう前に終わるとき(たとえ
ばバイトの奇数がDMAチャネルで転送されるとき)、
これらの場合が発生する。これらの場合の各々において
、パック/送り込みレジスタにおける転送されていない
いかなるデータもこの発明の好ましい実施例に従って無
視される。
みレジスタにおけるデータがなくなる前にキャンセルさ
れてもよい。転送の間エラー(たとえばパリティエラー
)が存在するときかまたは遠隔バス転送が送り込み動作
がパック/送り込みレジスタからハーフワードまたはワ
ードのすべてを転送してしまう前に終わるとき(たとえ
ばバイトの奇数がDMAチャネルで転送されるとき)、
これらの場合が発生する。これらの場合の各々において
、パック/送り込みレジスタにおける転送されていない
いかなるデータもこの発明の好ましい実施例に従って無
視される。
DTCはどのようにデータおよび支持されたフォーマッ
トを取扱うかを説明してきたが、DTCの説明は次にプ
ログラムされた入出力の支持に向けられる。
トを取扱うかを説明してきたが、DTCの説明は次にプ
ログラムされた入出力の支持に向けられる。
ここで用いられた「プログラムされた入出力」という言
葉はRISCプロセッサによるロードまたはストア命令
の実行の直接の結果である、DTCアクセスまたはデー
タ転送をいう。この言葉はRISCシステムの入出力ア
ドレス空間へのアクセスと混同してはならず、なぜなら
DTCはRISCシステムのデータメモリかまたは入出
力アドレス空間のいずれかにおいてプログラムされた入
出力を支持するからである。
葉はRISCプロセッサによるロードまたはストア命令
の実行の直接の結果である、DTCアクセスまたはデー
タ転送をいう。この言葉はRISCシステムの入出力ア
ドレス空間へのアクセスと混同してはならず、なぜなら
DTCはRISCシステムのデータメモリかまたは入出
力アドレス空間のいずれかにおいてプログラムされた入
出力を支持するからである。
DTCはプログラムされた入出力の29のタイプ、すな
わち内部と遠隔とを支持する。内部のプログラムされた
入出力はDTCの内部のレジスタをアクセスするために
用いられる。遠隔入出力はプログラム実行に結合される
態様において遠隔バス上でのデータをアクセスするため
に用いられる(通常では結合が解除されるDMAとは対
照的に)。
わち内部と遠隔とを支持する。内部のプログラムされた
入出力はDTCの内部のレジスタをアクセスするために
用いられる。遠隔入出力はプログラム実行に結合される
態様において遠隔バス上でのデータをアクセスするため
に用いられる(通常では結合が解除されるDMAとは対
照的に)。
以上述べられたように、内部のDTCレジスタへのアク
セスはチップ選択マツピングレジスタによって制御され
る。このレジスタは内部レジスタのだめのベースアドレ
スを指定しかつこのアドレスがRISCシステムのデー
タメモリまたは入出力アドレス空間にあるかどうかを指
定する。またそれは”CS E L入力を可能化および
不能化し、ベースアドレスは*C3ELが可能化されて
いるときはいつでも不適切である。
セスはチップ選択マツピングレジスタによって制御され
る。このレジスタは内部レジスタのだめのベースアドレ
スを指定しかつこのアドレスがRISCシステムのデー
タメモリまたは入出力アドレス空間にあるかどうかを指
定する。またそれは”CS E L入力を可能化および
不能化し、ベースアドレスは*C3ELが可能化されて
いるときはいつでも不適切である。
もし*C3ELが可能化されるなら、DTCは*CS
E L入力が活性状態であるいかなる内部アクセスに対
しても応答する。このアクセスはローカルのデータメモ
リかまたは入出力アドレス空間のいずれか1こあっても
よい。もし寧C3ELが不能化されるなら、DTCは以
下の基準にあうアクセス応答する。
E L入力が活性状態であるいかなる内部アクセスに対
しても応答する。このアクセスはローカルのデータメモ
リかまたは入出力アドレス空間のいずれか1こあっても
よい。もし寧C3ELが不能化されるなら、DTCは以
下の基準にあうアクセス応答する。
1、 アクセスのためのアドレスのビット31−11
はチップ選択マツピングレジスタのチップ選択アドレス
フィールドの対応するビットに一致する。
はチップ選択マツピングレジスタのチップ選択アドレス
フィールドの対応するビットに一致する。
2、 アクセスのためのアドレス空間(データメモリま
たは入出力)がチップ選択マツピングレジスタのローカ
ルアドレス空間によって特定されるものと一致する。
たは入出力)がチップ選択マツピングレジスタのローカ
ルアドレス空間によって特定されるものと一致する。
もし上の基準が満たされるなら、DTCは内部のレジス
タを選択するためにアドレスのオフセット部分(ビット
1O−2)を用いる。DTC内部レジスタへのすべての
アクセスは語長アクセスであって、DTCはもし0PT
O−OPTI信号が内部レジスタアクセスで00でない
なら*DERRで応答する(データ幅例外ビットまたは
グローバル状態レジスタはその例外の理由を示す)。い
かなる場合でも、AI−AO倍信号無視される。
タを選択するためにアドレスのオフセット部分(ビット
1O−2)を用いる。DTC内部レジスタへのすべての
アクセスは語長アクセスであって、DTCはもし0PT
O−OPTI信号が内部レジスタアクセスで00でない
なら*DERRで応答する(データ幅例外ビットまたは
グローバル状態レジスタはその例外の理由を示す)。い
かなる場合でも、AI−AO倍信号無視される。
ロード(R/”Wハイ)で°は、選択されたレジスタの
内容はローカルバスに送られる。実現されていないレジ
スタビットは0と読出される。ストア(R/寧Wロー)
では、選択されたレジスタはD31−Doラインの内容
で書込まれる。実現されていないレジスタビットに対応
するD31−DOラインのいずれも無視されるが、好ま
しい実施例に従えば上向き互換性の理由では0であるべ
きである。
内容はローカルバスに送られる。実現されていないレジ
スタビットは0と読出される。ストア(R/寧Wロー)
では、選択されたレジスタはD31−Doラインの内容
で書込まれる。実現されていないレジスタビットに対応
するD31−DOラインのいずれも無視されるが、好ま
しい実施例に従えば上向き互換性の理由では0であるべ
きである。
もし以下の条件のどれかがあてはまるなら、たとえそれ
がアクセスに応答してもDTCは首尾よくアクセスを終
えることはない。すなわち、1、 DTCはローであ
るSUP/”US出力によって示されるようにユーザモ
ードである。
がアクセスに応答してもDTCは首尾よくアクセスを終
えることはない。すなわち、1、 DTCはローであ
るSUP/”US出力によって示されるようにユーザモ
ードである。
2、 アクセスのためのアドレスがDTCによって認め
られるアドレスの範囲内にあるが、オフセットは実現さ
れたレジスタを選択しない。
られるアドレスの範囲内にあるが、オフセットは実現さ
れたレジスタを選択しない。
上の場合のいずれかにおいて、DTCは寧DERR指示
でアクセスに応答する。グローバル状態レジスタの保護
違反またはアクセスエラービット(適切なように)が”
DERR応答の理由を示すようにセットされる。
でアクセスに応答する。グローバル状態レジスタの保護
違反またはアクセスエラービット(適切なように)が”
DERR応答の理由を示すようにセットされる。
適切な場合、DTCはRISCプロセッサロード多重化
またはストア多重化命令に応答してバーストモードアク
セスを行なうことができる。DTCは適切なアドレス増
分論理を含み、バーストモードアクセスを適切に支持す
る。しかしながら、バーストモードアクセスはレジスタ
を連続したオフセット値でアクセスするためにのみ用い
られ得る。もし実現されていないレジスタがバーストモ
ードシーケンス内で遭遇されるなら、DTCはゝDER
R指示で応答しそのアクセスをキャンセルする。
またはストア多重化命令に応答してバーストモードアク
セスを行なうことができる。DTCは適切なアドレス増
分論理を含み、バーストモードアクセスを適切に支持す
る。しかしながら、バーストモードアクセスはレジスタ
を連続したオフセット値でアクセスするためにのみ用い
られ得る。もし実現されていないレジスタがバーストモ
ードシーケンス内で遭遇されるなら、DTCはゝDER
R指示で応答しそのアクセスをキャンセルする。
DMAチャネルをそのローカルバスアドレスの範囲がD
TC内部レジスタのアドレスの範囲をオーバラップする
ように形成することが可能である。
TC内部レジスタのアドレスの範囲をオーバラップする
ように形成することが可能である。
しかしながら、DTCはDMAチャネルを介して内部レ
ジスタアクセスを支持しない。もしそのようなアクセス
が試みられるなら、アドレスの矛盾が発生しかつDMA
転送がキャンセルされる。適切なチャネル状態レジスタ
のアドレス矛盾ビットは例外の理由を示すようにセット
される。
ジスタアクセスを支持しない。もしそのようなアクセス
が試みられるなら、アドレスの矛盾が発生しかつDMA
転送がキャンセルされる。適切なチャネル状態レジスタ
のアドレス矛盾ビットは例外の理由を示すようにセット
される。
第3図に従えば、この発明の概要はDTC入出力ボート
を介する遠隔のプログラムされた入出力によってローカ
ルバスに付けられたRISCプロセッサが遠隔バス上の
デバイスおよびメモリをアクセスすることができること
を示した。遠隔プログラムされた入出力がどのようにD
TCを用いて達成されるかの詳細は次に述べられる。
を介する遠隔のプログラムされた入出力によってローカ
ルバスに付けられたRISCプロセッサが遠隔バス上の
デバイスおよびメモリをアクセスすることができること
を示した。遠隔プログラムされた入出力がどのようにD
TCを用いて達成されるかの詳細は次に述べられる。
DTCは遠隔バスアクセスのための4個の独立した入出
力ポートを組込む。各入出力ボートは、1、 ローカ
ルバスアドレスの2の累乗の範囲を遠隔バスアドレスの
独立した範囲にマツピングし、 2、 バイトとハーフワードとワードアクセスを支持
し、 3、 他のRISCプロセッサの動作で遠隔バスアクセ
スをオーバラップするための機能を含む。
力ポートを組込む。各入出力ボートは、1、 ローカ
ルバスアドレスの2の累乗の範囲を遠隔バスアドレスの
独立した範囲にマツピングし、 2、 バイトとハーフワードとワードアクセスを支持
し、 3、 他のRISCプロセッサの動作で遠隔バスアクセ
スをオーバラップするための機能を含む。
遠隔プログラムされた入出力アクセスは入出力ボートレ
ジスタによって制御される。上で説明された(19の入
出力ポートにつき1組の)4組の同一のレジスタが存在
する。
ジスタによって制御される。上で説明された(19の入
出力ポートにつき1組の)4組の同一のレジスタが存在
する。
以前に示されたように、入出力ポートはローカルバスか
らアクセスを受取り、それらを遠隔バスに送る。アドレ
ス翻訳はローカルバスと遠隔バスの間で行なわれる。パ
ッキングおよび送り込み動作によってローカルバス要求
のためのデータ幅が遠隔バス要求のためのデータ幅より
大きくなることが可能になる。
らアクセスを受取り、それらを遠隔バスに送る。アドレ
ス翻訳はローカルバスと遠隔バスの間で行なわれる。パ
ッキングおよび送り込み動作によってローカルバス要求
のためのデータ幅が遠隔バス要求のためのデータ幅より
大きくなることが可能になる。
ローカルバスと遠隔バスの間の接続は直接であるか結合
が解除されてもよい。直接の接続の場合、遠隔バスアク
セスはローカルバスアクセスが終了できる前に終了しな
くてはならない。結合が解除されたアクセスの場合、デ
ータは遠隔バス動作から独立してローカルバスアクセス
が以前の遠隔バス読出の結果を読出すかまたは次の遠隔
バス書込のためのデータを書込むかするようにバッファ
される。
が解除されてもよい。直接の接続の場合、遠隔バスアク
セスはローカルバスアクセスが終了できる前に終了しな
くてはならない。結合が解除されたアクセスの場合、デ
ータは遠隔バス動作から独立してローカルバスアクセス
が以前の遠隔バス読出の結果を読出すかまたは次の遠隔
バス書込のためのデータを書込むかするようにバッファ
される。
もし遠隔バスのための入出力ポートからの要求がDMA
チャネルからの要求と同時に発生するなら、人出力ポー
トが優先順位を有する。
チャネルからの要求と同時に発生するなら、人出力ポー
トが優先順位を有する。
入出力ポートを介するアクセスは各入出力ポートと関連
したローカルベースアドレスレジスタによって制御され
る。このレジスタはそれぞれの入出力ポートのローカル
バスペースアドレスを指定しかつこのアドレスがRIS
Cシステムのデータメモリかまたは入出力アドレス空間
にあるかどうかを示す。
したローカルベースアドレスレジスタによって制御され
る。このレジスタはそれぞれの入出力ポートのローカル
バスペースアドレスを指定しかつこのアドレスがRIS
Cシステムのデータメモリかまたは入出力アドレス空間
にあるかどうかを示す。
入出力ポートは以下の条件が満たされるときはいつでも
活性状態になる。すなわち、 1、 グローバルモードレジスタの適切なポート可能
化ビットがセットされる。
活性状態になる。すなわち、 1、 グローバルモードレジスタの適切なポート可能
化ビットがセットされる。
2、 ローカルバスアドレスの適切な高順位ビットが
ローカルベースレジスタの対応するビットと一致する。
ローカルベースレジスタの対応するビットと一致する。
3、 アドレス空間(アクセスのためのデータメモリま
たは人出力)がポートモードレジスタのローカルアドレ
ス空間ビットによって指定されるものと一致する。
たは人出力)がポートモードレジスタのローカルアドレ
ス空間ビットによって指定されるものと一致する。
*C3EL入力は人出力ポートアクセスにいかなる要求
も及ぼしていないことを思い出すべきである。
も及ぼしていないことを思い出すべきである。
もし上の基準が満たされるなら、DTCは上の比較にお
いて用いられたローカルアドレスの高順位ビットを遠隔
ベースアドレスレジスタの対応するビットヒ取替える。
いて用いられたローカルアドレスの高順位ビットを遠隔
ベースアドレスレジスタの対応するビットヒ取替える。
すなわち、低順位ビット(すなわちポートオフセット)
は修正されない。
は修正されない。
結果として生じるアドレスは遠隔ベースアドレスレジス
タの遠隔アドレス空間ビットによって決定されるように
、遠隔バスのメモリまたは入出力空間のいずれかにおい
て遠隔バスアクセスのために用いられる。
タの遠隔アドレス空間ビットによって決定されるように
、遠隔バスのメモリまたは入出力空間のいずれかにおい
て遠隔バスアクセスのために用いられる。
第6図はアドレス翻訳プロセスを例示しかつ人出力ポー
トのデータフローを示す。
トのデータフローを示す。
第6図はライン601上でローカルポートアドレスレジ
スタ602に入力される32ビツトローカルバスアドレ
スを示す。Do−D31 (上でパリティビットDO−
D3)からのデータはMUX603とパック/送り込み
レジスタ604を介してパック/送り込みレジスタ回路
網手段(第3図に示される手段304)へまたはそこか
らのいずれかに流れることができ、第6図の両方の部分
は入出力ポートに関連している。
スタ602に入力される32ビツトローカルバスアドレ
スを示す。Do−D31 (上でパリティビットDO−
D3)からのデータはMUX603とパック/送り込み
レジスタ604を介してパック/送り込みレジスタ回路
網手段(第3図に示される手段304)へまたはそこか
らのいずれかに流れることができ、第6図の両方の部分
は入出力ポートに関連している。
もしそのアクセスがポートのアドレス空間内にあるかど
うかをまず決定することによって発生しくブロック60
5を介して)そしてもしそうであるなら、アドレスを翻
訳する(ブロック606を介して)。
うかをまず決定することによって発生しくブロック60
5を介して)そしてもしそうであるなら、アドレスを翻
訳する(ブロック606を介して)。
ブロック605において、ローカルベースアドレスレジ
スタ620の内容はポートのサイズに基づいた比較のた
めのビットを選択した後(ブロック623および624
を介して)、ローカルポートアドレスレジスタ602の
内容と比較される(比較器625を介して)。たとえば
、1キロバイトのポートでは、レジスタ602および6
20からの高順位の22ビツトが比較される。上で示さ
れるように、窓のサイズ情報はポートモードレジスタの
窓サイズフィールドからくる。
スタ620の内容はポートのサイズに基づいた比較のた
めのビットを選択した後(ブロック623および624
を介して)、ローカルポートアドレスレジスタ602の
内容と比較される(比較器625を介して)。たとえば
、1キロバイトのポートでは、レジスタ602および6
20からの高順位の22ビツトが比較される。上で示さ
れるように、窓のサイズ情報はポートモードレジスタの
窓サイズフィールドからくる。
もし入出力ポートが実際にアドレス指定されているなら
、ブロック606を介するアドレス翻訳は(窓サイズ情
報を再び用いて)ブロック680を介してローカルバス
アドレスから適切な高順位ビットをマスクアウトしかつ
レジスタ688内の遠隔ベースアドレスから同じ数の低
順位ビットをマスクアウトすることによって保存された
高順位ビットで残余の低順位ビットを最後にマージする
ことによって発生する。この第2のマスクはブロック6
89によって行なわれる。
、ブロック606を介するアドレス翻訳は(窓サイズ情
報を再び用いて)ブロック680を介してローカルバス
アドレスから適切な高順位ビットをマスクアウトしかつ
レジスタ688内の遠隔ベースアドレスから同じ数の低
順位ビットをマスクアウトすることによって保存された
高順位ビットで残余の低順位ビットを最後にマージする
ことによって発生する。この第2のマスクはブロック6
89によって行なわれる。
ブロック690によって行なわれる(第6図)のが示さ
れるが、マージの結果として、遠隔バスアドレスが展開
される。上で参照された1キロバイトの窓の具体例では
、翻訳されたアドレスは遠隔ベースアドレスレジスタの
内容からのその高順位22ビツトとローカルポートアド
レスレジスタからの低順位の10ビツトとを有し、実際
にアドレス翻訳プロセスにおける適切なポートオフセッ
トを維持する。
れるが、マージの結果として、遠隔バスアドレスが展開
される。上で参照された1キロバイトの窓の具体例では
、翻訳されたアドレスは遠隔ベースアドレスレジスタの
内容からのその高順位22ビツトとローカルポートアド
レスレジスタからの低順位の10ビツトとを有し、実際
にアドレス翻訳プロセスにおける適切なポートオフセッ
トを維持する。
所与の入出力ポートのためのローカルアドレスの幅や他
のポートのためのアドレスの範囲とオーバラップするこ
とは可能である。この場合、最も低い数を有する入出力
ポートがこの発明の好ましい実施例において優先順位を
有する。たとえば、もし入出力ポート0のためのアドレ
ス範囲が人出力ポート2のためのアドレス範囲とオーバ
ラップするなら、入出力ポート0が優先される。入出力
ポートのための遠隔アドレスの範囲もまた他の入出力ポ
ートの範囲とオーバラップしてもよい。しかしながら、
1個の入出力ボートしかいずれのときも遠隔バス上で活
性状態であり得ないので、いかなる競合も存在しない。
のポートのためのアドレスの範囲とオーバラップするこ
とは可能である。この場合、最も低い数を有する入出力
ポートがこの発明の好ましい実施例において優先順位を
有する。たとえば、もし入出力ポート0のためのアドレ
ス範囲が人出力ポート2のためのアドレス範囲とオーバ
ラップするなら、入出力ポート0が優先される。入出力
ポートのための遠隔アドレスの範囲もまた他の入出力ポ
ートの範囲とオーバラップしてもよい。しかしながら、
1個の入出力ボートしかいずれのときも遠隔バス上で活
性状態であり得ないので、いかなる競合も存在しない。
各ボートに関連したボートモードレジスタのスーパバイ
ザモードアクセスオンリ(rSUPJ )ビットはボー
トがユーザモードプログラムによってアクセスされても
よいかどうかを決定する。もしユーザモードアクセス(
USP/寧US信号によって示される)がそのSUPビ
ットが1である入出力ごとに試みられるなら、DTCは
要求される遠隔バスアクセスを行なわない。それは*D
ERR指示でそのアクセスに対して応答する。関連ボー
ト状態レジスタの保護違反ビットは*DERR応答の理
由を示すようにセットされる。
ザモードアクセスオンリ(rSUPJ )ビットはボー
トがユーザモードプログラムによってアクセスされても
よいかどうかを決定する。もしユーザモードアクセス(
USP/寧US信号によって示される)がそのSUPビ
ットが1である入出力ごとに試みられるなら、DTCは
要求される遠隔バスアクセスを行なわない。それは*D
ERR指示でそのアクセスに対して応答する。関連ボー
ト状態レジスタの保護違反ビットは*DERR応答の理
由を示すようにセットされる。
ローカルバスアドレスのその範囲が入出力ポートのため
のアドレスの幅とオーバラップするようにDMAチャネ
ルを形成することが可能である。
のアドレスの幅とオーバラップするようにDMAチャネ
ルを形成することが可能である。
しかしながら、DTCはDMAチャネルを介して入出力
ボートアクセスを支持しない。もしそのようなアクセス
が試みられるなら、アドレス矛盾が発生しかつDMA転
送がキャンセルされる。適切なチャネル状態レジスタの
アドレス矛盾ビットはその例外の理由を示すようにセッ
トされる。
ボートアクセスを支持しない。もしそのようなアクセス
が試みられるなら、アドレス矛盾が発生しかつDMA転
送がキャンセルされる。適切なチャネル状態レジスタの
アドレス矛盾ビットはその例外の理由を示すようにセッ
トされる。
各入出力ポートの通常の動作は以下のとおりである。
入出力ポートに向けられるロード(R/*Wハイ)では
、DTCは遠隔バス上での読出アクセスを行ない(多数
の読出はパッキングが要求されるなら発生し得る)、ア
クセスされたデータはそのロードに応答して戻される。
、DTCは遠隔バス上での読出アクセスを行ない(多数
の読出はパッキングが要求されるなら発生し得る)、ア
クセスされたデータはそのロードに応答して戻される。
もし例外が遠隔バスアクセスの間に発生するなら(たと
えば*RBERR応答またはパリティエラーのために)
、DTCはローカルバス上の”DERRで応答する。*
DERR応答では、関連のボート状態レジスタがその理
由を示す。
えば*RBERR応答またはパリティエラーのために)
、DTCはローカルバス上の”DERRで応答する。*
DERR応答では、関連のボート状態レジスタがその理
由を示す。
入出力ポートに向けられたストア(R/*Wロー)では
、DTCはストアのために与えられたデータを用いて遠
隔バス上で書込アクセスを行なう(多数の書込がもし送
り込みが要求されるなら発生し得る)。もし遠隔バスア
クセスの間例外が発生するなら、DTCはローカルバス
上の”DERRで応答する。*DERR応答の場合、そ
の関連のボート状態レジスタはその理由を示す。
、DTCはストアのために与えられたデータを用いて遠
隔バス上で書込アクセスを行なう(多数の書込がもし送
り込みが要求されるなら発生し得る)。もし遠隔バスア
クセスの間例外が発生するなら、DTCはローカルバス
上の”DERRで応答する。*DERR応答の場合、そ
の関連のボート状態レジスタはその理由を示す。
適切な場合、DTCはRISCプロセッサロードマルチ
プルまたはストアマルチプル命令に応答して入出力ポー
トを介してバーストモードアクセスを行なうことができ
る。DTCはバーストモードアクセスを適切に支持する
ために、適切なアドレス増分論理を含む。遠隔バスでは
、この転送はブロックモードして行なわれる。
プルまたはストアマルチプル命令に応答して入出力ポー
トを介してバーストモードアクセスを行なうことができ
る。DTCはバーストモードアクセスを適切に支持する
ために、適切なアドレス増分論理を含む。遠隔バスでは
、この転送はブロックモードして行なわれる。
バーストモードアクセスはローカルバス上の連続しtこ
ワードアドレスでデータをアクセスするt二めのみに用
いられ得る。ローカルバス上のデータ幅は32ビツトで
あるべきである。4バイトの整数倍または2個のハーフ
ワードが(この発明の好ましい実施例に従えば)転送さ
れなくてはならないといった制限のもとで、パッキング
および送り込みによってこれらのワードアドレスは遠隔
バス上のより狭い幅のアクセスにまたはそれから変換す
ることができる。
ワードアドレスでデータをアクセスするt二めのみに用
いられ得る。ローカルバス上のデータ幅は32ビツトで
あるべきである。4バイトの整数倍または2個のハーフ
ワードが(この発明の好ましい実施例に従えば)転送さ
れなくてはならないといった制限のもとで、パッキング
および送り込みによってこれらのワードアドレスは遠隔
バス上のより狭い幅のアクセスにまたはそれから変換す
ることができる。
もし”LOCK信号が入出力ポートの読出の開店性状態
であるなら、DTCは遠隔バス上で読出−修正−書込ア
クセスを行なう。このアクセスは*RMW出力が読出ア
クセスの初めで断定されるといった点で、他の遠隔バス
アクセスと区別される。寧RMWは書込アクセスが読出
−修正−書込シーケンスを終えるまで活性状態のままで
ある。
であるなら、DTCは遠隔バス上で読出−修正−書込ア
クセスを行なう。このアクセスは*RMW出力が読出ア
クセスの初めで断定されるといった点で、他の遠隔バス
アクセスと区別される。寧RMWは書込アクセスが読出
−修正−書込シーケンスを終えるまで活性状態のままで
ある。
DTCは*LOCK信号の結果としていかなる特別な暗
黙の順序づけも行なわないが、ただRISCプロセッサ
ロードおよびセット命令によって行なわれる順序づけを
遠隔バスへ通過させるように働くだけである。こうして
、読出−修正−書込シーケンスを終える書込はローカル
バス上の書込の結果発生する。
黙の順序づけも行なわないが、ただRISCプロセッサ
ロードおよびセット命令によって行なわれる順序づけを
遠隔バスへ通過させるように働くだけである。こうして
、読出−修正−書込シーケンスを終える書込はローカル
バス上の書込の結果発生する。
他の同期化プロトコルは当業者によって案出されるかも
しれないが、引用された同時係属出願においてRISC
システムを参照して述べられたこの発明の好ましい実施
例はRISCプロセッサのロードおよびセット意味を実
現することのみができ、かついかなる他の同期化/排他
プロトコルも明示的に支持しない。
しれないが、引用された同時係属出願においてRISC
システムを参照して述べられたこの発明の好ましい実施
例はRISCプロセッサのロードおよびセット意味を実
現することのみができ、かついかなる他の同期化/排他
プロトコルも明示的に支持しない。
もしポートモードレジスタのオーバラップされた入出力
(010)ビットがセットされるなら、関連した入出力
ポートは先読みおよび後書き動作を遠隔バスへの直接の
読出および書込に代わって行なう。これらの特別な動作
によってローカルバスプロセッサは他の動作を遠隔バス
アクセスとオーバラップさせることが可能となる。
(010)ビットがセットされるなら、関連した入出力
ポートは先読みおよび後書き動作を遠隔バスへの直接の
読出および書込に代わって行なう。これらの特別な動作
によってローカルバスプロセッサは他の動作を遠隔バス
アクセスとオーバラップさせることが可能となる。
第7図は先読みおよび後書き動作のためのフローチャー
トを示す。オーバラップされた入出力の説明をする際に
第7図のブロック701−709が参照される。
トを示す。オーバラップされた入出力の説明をする際に
第7図のブロック701−709が参照される。
ポートモードレジスタのO■Oビットがまずセットされ
ると(第7図のブロック701)、関連した人出力ボー
トがそれが行なわれるべき遠隔バスアクセス上で待機す
る代わりに次のアクセスに即座に応答するような状態に
置かれる(ブロック702)。もし次のアクセスがロー
ド(読出)であるなら、入出力ポートはそのパック/送
り込みレジスタの内容(それが最も規定されにくい)で
応答する(ブロック703)。もし次のアクセスがスト
ア(書込)なら、その人出力ボートはパック/送り込み
レジスタレジスタの関連したデータをストアする(ブロ
ック704)。ロードとストアの両方で、入出力ポート
はローカルポートアドレスレジスタのアクセスのための
アドレスをバッファする(ブロック709)。
ると(第7図のブロック701)、関連した人出力ボー
トがそれが行なわれるべき遠隔バスアクセス上で待機す
る代わりに次のアクセスに即座に応答するような状態に
置かれる(ブロック702)。もし次のアクセスがロー
ド(読出)であるなら、入出力ポートはそのパック/送
り込みレジスタの内容(それが最も規定されにくい)で
応答する(ブロック703)。もし次のアクセスがスト
ア(書込)なら、その人出力ボートはパック/送り込み
レジスタレジスタの関連したデータをストアする(ブロ
ック704)。ロードとストアの両方で、入出力ポート
はローカルポートアドレスレジスタのアクセスのための
アドレスをバッファする(ブロック709)。
ローカルバスアクセスは遠隔バス上のいずれのアクセス
からも独立して終了する(”DRDYは送り戻される。
からも独立して終了する(”DRDYは送り戻される。
ブロック703および705を参照)。しかしながら、
入出力ポートは最も速い機会(それは遠隔バス調停およ
び他のDTCの作業に依存しているかもしれない)で要
求される遠隔バスアクセスを行なうような状態にある。
入出力ポートは最も速い機会(それは遠隔バス調停およ
び他のDTCの作業に依存しているかもしれない)で要
求される遠隔バスアクセスを行なうような状態にある。
先読みまたは後書きを行なうために、入出力ポートはロ
ーカルポートアドレスレジスタ(このレジスタは逆の翻
訳を要求せずに例外の場合に回復を許容するために翻訳
されていないアドレスを保持する)においてアドレスを
翻訳する。次に、先読みでは、入出力ポートは翻訳され
たアドレスを用いて遠隔バス続出を行なう(ブロック7
06)。
ーカルポートアドレスレジスタ(このレジスタは逆の翻
訳を要求せずに例外の場合に回復を許容するために翻訳
されていないアドレスを保持する)においてアドレスを
翻訳する。次に、先読みでは、入出力ポートは翻訳され
たアドレスを用いて遠隔バス続出を行なう(ブロック7
06)。
この続出のためのデータは読出が終わると(パッキング
が行なわれるかもしれないことに注目されたい)、バッ
ク/送り込みレジスタにストアされる(ブロック707
)。後書きでは、入出力ポートは翻訳されたアドレスを
用いて遠隔バス書込を行なう(ブロック708)。この
書込のためのデータはパック/送り込みレジスタによっ
て与えられるおよび送り込みが行なわれるかもしれない
)。
が行なわれるかもしれないことに注目されたい)、バッ
ク/送り込みレジスタにストアされる(ブロック707
)。後書きでは、入出力ポートは翻訳されたアドレスを
用いて遠隔バス書込を行なう(ブロック708)。この
書込のためのデータはパック/送り込みレジスタによっ
て与えられるおよび送り込みが行なわれるかもしれない
)。
入出力ポートが遠隔バス上で先読みまたは後書きを行な
っている間、それはローカルバスがら第2のアクセスを
受取らない(DTCは内部レジスタの他の入出力ポート
へのアクセスを受取るがもじれないカリ。入出力ポート
は遠隔バスアクセスが終わった後にのみ第2のローカル
バスアクセスを受取る。通常、第2のアクセスは第1の
ものと同じ型のものである(読出または書込)。
っている間、それはローカルバスがら第2のアクセスを
受取らない(DTCは内部レジスタの他の入出力ポート
へのアクセスを受取るがもじれないカリ。入出力ポート
は遠隔バスアクセスが終わった後にのみ第2のローカル
バスアクセスを受取る。通常、第2のアクセスは第1の
ものと同じ型のものである(読出または書込)。
もし他の入出力ポートのアクセスが先読みまたは後書き
が始まる前に活性状態になるなら(すなわちもし遠隔バ
スを求めて争う他のアクセスが存在するなら)、第2の
アクセスは第2のアクセスが終わるまで阻止される。
が始まる前に活性状態になるなら(すなわちもし遠隔バ
スを求めて争う他のアクセスが存在するなら)、第2の
アクセスは第2のアクセスが終わるまで阻止される。
先読みの場合、同様の人出力ポートへの第2の読出はデ
ータを第1の読出から得、かつ第2の遠隔バス読出のた
めのアドレスを供給する。後書きの場合、同様の入出力
ポートへの第2の書込は付加のデータおよび第2の遠隔
バス書込のための第2のアドレスをバッファする。両方
の場合、もし第1の遠隔バスアクセスの間例外が発生し
たなら、DTCは*DERRの指示で第2のローカルバ
スアクセスに応答する(関連のポート状態レジスタは例
外の理由を示す)。
ータを第1の読出から得、かつ第2の遠隔バス読出のた
めのアドレスを供給する。後書きの場合、同様の入出力
ポートへの第2の書込は付加のデータおよび第2の遠隔
バス書込のための第2のアドレスをバッファする。両方
の場合、もし第1の遠隔バスアクセスの間例外が発生し
たなら、DTCは*DERRの指示で第2のローカルバ
スアクセスに応答する(関連のポート状態レジスタは例
外の理由を示す)。
先読みおよび後書きの動作のシーケンスはすべてのアク
セスが終わるまで続く。後書きが比較的真直ぐな行ない
を有する間、先読みはすべてのデータを転送するために
シーケンスの始めと終わりで付加のアクセスを要求する
。先読みは最初のローカルバス読出を要求し、第1の遠
隔バス読出のためのアドレスを与える。さらに、シーケ
ンスにおける最後のローカルバス読出はたとえこのアク
セスが不必要であっても遠隔バス上にアクセスを発生す
る。
セスが終わるまで続く。後書きが比較的真直ぐな行ない
を有する間、先読みはすべてのデータを転送するために
シーケンスの始めと終わりで付加のアクセスを要求する
。先読みは最初のローカルバス読出を要求し、第1の遠
隔バス読出のためのアドレスを与える。さらに、シーケ
ンスにおける最後のローカルバス読出はたとえこのアク
セスが不必要であっても遠隔バス上にアクセスを発生す
る。
読出および書込は先読みおよび後書きの間効果的に混ざ
り会うことができない。もし読出が以前に後書きを行な
っていたボートに対して行なわれるなら、得られるデー
タは規定されない。もし書込が以前に先読みを行なって
いたボートに対して行なわれるなら、パック/送り込み
レジスタに保持されるデータは破鳩される。この発明の
好ましい実施例に従えば、ソフトウェアは所望の動作の
ための読出および書込の正しいシーケンスを発生させる
ことに責任がある。特に読出−修正−書込シーケンスは
先読みまたは後書きを行なうために形成されるボートに
よって適切に行なわれ得ないことに注目すべきである。
り会うことができない。もし読出が以前に後書きを行な
っていたボートに対して行なわれるなら、得られるデー
タは規定されない。もし書込が以前に先読みを行なって
いたボートに対して行なわれるなら、パック/送り込み
レジスタに保持されるデータは破鳩される。この発明の
好ましい実施例に従えば、ソフトウェアは所望の動作の
ための読出および書込の正しいシーケンスを発生させる
ことに責任がある。特に読出−修正−書込シーケンスは
先読みまたは後書きを行なうために形成されるボートに
よって適切に行なわれ得ないことに注目すべきである。
もし先読みおよび後書きを用いて読出と書込を混合する
ことが所望であるなら、2個の人出力ポートが用いられ
なくてはならない。19の入出力ボートは先読みのため
に用いられかつ他方の入出力ボートは後書きのために用
いられる。しかしながら、最終的な性能は遠隔バスの容
量によって制限されるかもしれない。
ことが所望であるなら、2個の人出力ポートが用いられ
なくてはならない。19の入出力ボートは先読みのため
に用いられかつ他方の入出力ボートは後書きのために用
いられる。しかしながら、最終的な性能は遠隔バスの容
量によって制限されるかもしれない。
DTCによって支持されるプログラムされた入出力の説
明を終えるために、首尾よく転送を終えることを妨げる
、プログラムされた入出力転送の間に多数の例外が発生
することに注目すべきである。もしプログラムされた入
出力転送の間に例外が発生するなら、DTCは”DER
R指示でローカルバス上で応答する。以下の例外は適切
な優先順位でプログラムされた入出力転送の間に発生す
るかもしれない。すなわち、 1、 保護違反。ユーザモードプログラム(USP/”
US信号によって示される)はスーパバイザモードアク
セスのみのためにセットされる入出力ボートへのアクセ
スを試みるか、または内部DTCレジスタをアクセスす
るように試みる。
明を終えるために、首尾よく転送を終えることを妨げる
、プログラムされた入出力転送の間に多数の例外が発生
することに注目すべきである。もしプログラムされた入
出力転送の間に例外が発生するなら、DTCは”DER
R指示でローカルバス上で応答する。以下の例外は適切
な優先順位でプログラムされた入出力転送の間に発生す
るかもしれない。すなわち、 1、 保護違反。ユーザモードプログラム(USP/”
US信号によって示される)はスーパバイザモードアク
セスのみのためにセットされる入出力ボートへのアクセ
スを試みるか、または内部DTCレジスタをアクセスす
るように試みる。
2、 アドレス指定エラー。内部レジスタアクセスの
ためのオフセットは実現されていないレジスタに対応す
る。
ためのオフセットは実現されていないレジスタに対応す
る。
3、 パリティエラー。DTCは転送の間無効なパリ
ティを検出する。パリティはデータが遠隔バスから受取
られた直後にチエツクされる。パリティはローカルバス
からのプログラムされた入出力書込のためにはチェック
されない。
ティを検出する。パリティはデータが遠隔バスから受取
られた直後にチエツクされる。パリティはローカルバス
からのプログラムされた入出力書込のためにはチェック
されない。
4、 遠隔バスエラー。*RBERR応答は遠隔バス転
送に受取られる。
送に受取られる。
5、 データ幅例外。入出力ボート転送に対するDS
ACKO−DSACKIの応答は遠隔バスデバイスまた
はメモリが要求された幅の転送を取扱うことができない
か、DTC内部レジスタへのバイトまたはハーフワード
アクセスが試みられることを示す。
ACKO−DSACKIの応答は遠隔バスデバイスまた
はメモリが要求された幅の転送を取扱うことができない
か、DTC内部レジスタへのバイトまたはハーフワード
アクセスが試みられることを示す。
例外が本DERRで報告されると、グローバル状態レジ
スタは入出力ボートのどれが例外に遭遇したかを示すか
、または例外が内部レジスタアクセスにおいて発生した
かを示すようにセットされる。もし例外が入出力ボート
アクセスで発生したなら、示された入出力ボートのボー
ト状態レジスタは例外の理由を示す。
スタは入出力ボートのどれが例外に遭遇したかを示すか
、または例外が内部レジスタアクセスにおいて発生した
かを示すようにセットされる。もし例外が入出力ボート
アクセスで発生したなら、示された入出力ボートのボー
ト状態レジスタは例外の理由を示す。
先読みまたは後書きを実現する入出力ボートの場合、そ
の報告された例外は最も最近の遠隔バスアクセスで発生
した。ローカルボートアドレスレジスタはこのアクセス
のための翻訳されていないアドレスを含みかつもし可能
ならアクセスを再スタートさせるためにソフトウェアに
よって用いられてもよい。書込では、アクセスを再スタ
ートさせるため用いられるデータはパック/送り込みレ
ジスタによって保持される。すべての他の場合、プログ
ラムされた人出力アクセスに関する情報はRISCプロ
セッサチャネルアドレスとチャネルデータとチャネル制
御レジスタとに含まれ、そしてこれらのレジスタによっ
て再スタートされ得る。
の報告された例外は最も最近の遠隔バスアクセスで発生
した。ローカルボートアドレスレジスタはこのアクセス
のための翻訳されていないアドレスを含みかつもし可能
ならアクセスを再スタートさせるためにソフトウェアに
よって用いられてもよい。書込では、アクセスを再スタ
ートさせるため用いられるデータはパック/送り込みレ
ジスタによって保持される。すべての他の場合、プログ
ラムされた人出力アクセスに関する情報はRISCプロ
セッサチャネルアドレスとチャネルデータとチャネル制
御レジスタとに含まれ、そしてこれらのレジスタによっ
て再スタートされ得る。
DTCによって支持さるDMA転送が次に詳細に説明さ
れる。
れる。
以下の説明において用いられるように、「直接メモリア
クセスJ (DMA)という言葉(または省略記号)
はRISCプロセッサにおける命令実行から独立してい
るアクセスまたはデータ転送を表わす。この言葉はいく
らか不正確であり、というのもDMA転送は必ずしもロ
ーカルバス上のメモリをアクセスしないからである。い
くつかの場合においては、遠隔バスデータはRISCプ
ロセッサがキューにおいてデータを直接に扱って、DT
CのDMAキューにおよびそこから転送される。
クセスJ (DMA)という言葉(または省略記号)
はRISCプロセッサにおける命令実行から独立してい
るアクセスまたはデータ転送を表わす。この言葉はいく
らか不正確であり、というのもDMA転送は必ずしもロ
ーカルバス上のメモリをアクセスしないからである。い
くつかの場合においては、遠隔バスデータはRISCプ
ロセッサがキューにおいてデータを直接に扱って、DT
CのDMAキューにおよびそこから転送される。
しかしながら、一般に利用されている言葉の中で、「直
接メモリアクセス」およびrDMAJはDTCによって
実現される機能を最もよく表わしている。
接メモリアクセス」およびrDMAJはDTCによって
実現される機能を最もよく表わしている。
上で述べられたように、DMA転送はDTCによって実
現された4個のDMAチャネルを介して発生する。これ
らのチャネルの各々は特定のデータ転送を行なうために
RISCプロセッサによって初期設定されかつ実際の転
送はプロセッサによってさらなる干渉なしに起こる。も
しそうするために可能化されるなら、チャネルは転送が
通常通りに終わるかまたは例外のためにキャンセルされ
るかするとプロセッサ割込を発生するかもしれない(亭
lNTRを断定することによって)。
現された4個のDMAチャネルを介して発生する。これ
らのチャネルの各々は特定のデータ転送を行なうために
RISCプロセッサによって初期設定されかつ実際の転
送はプロセッサによってさらなる干渉なしに起こる。も
しそうするために可能化されるなら、チャネルは転送が
通常通りに終わるかまたは例外のためにキャンセルされ
るかするとプロセッサ割込を発生するかもしれない(亭
lNTRを断定することによって)。
DMA転送はほとんどプロセッサの干渉を必要としない
ので、大量のデータがプロセッサの実行と同時転送され
得る。たとえば、多重プログラミングまたはタスク多重
化状況において、所与のプロセスがデータ転送を終える
ためにDMAチャネルを待機している間に他の処理が実
行されてもよい。
ので、大量のデータがプロセッサの実行と同時転送され
得る。たとえば、多重プログラミングまたはタスク多重
化状況において、所与のプロセスがデータ転送を終える
ためにDMAチャネルを待機している間に他の処理が実
行されてもよい。
DTCのDMAチャネルは広い範囲の柔軟性を支持する
ように設計される。DMA転送の性能はDTCプロセッ
サとRISCプロセッサの間のローカルバス資源のため
の競合を制限するための規定で、ローカルバスおよび遠
隔バスの双方上で最大にされる。
ように設計される。DMA転送の性能はDTCプロセッ
サとRISCプロセッサの間のローカルバス資源のため
の競合を制限するための規定で、ローカルバスおよび遠
隔バスの双方上で最大にされる。
ローカルバス上のDMA転送はDMAキ二一によって与
えられる大規模なバッファリングのために、遠隔バス上
の転送とは比較的独立している。
えられる大規模なバッファリングのために、遠隔バス上
の転送とは比較的独立している。
これはDMAチャネルの編成において反映され、すなわ
ち多くのレジスタはDMAチャネルのローカルバス側か
または遠隔バス側のみにもたらされる。第8図はDMA
チャネルのデータフロー図を示す。
ち多くのレジスタはDMAチャネルのローカルバス側か
または遠隔バス側のみにもたらされる。第8図はDMA
チャネルのデータフロー図を示す。
第8図は示されたDMAチャネルへの(ライン801)
またはそこからの(リンク802)DO−D31 (お
よびパリティピット)上のデータを示す。
またはそこからの(リンク802)DO−D31 (お
よびパリティピット)上のデータを示す。
入ってくるデータはMUX803を介してチャネルのた
めに64ワードキユー804に多重化される。明らかに
、DTCを作る際にはより大きいかまたはより小さなキ
ューでも用いられ得る。データはパック/送り込みレジ
スタ(805)およびMUX806を介してキューから
およびパック/送り込み回路網に流れる。MUX806
はデータがキュー804からパック/送り込み回路網に
出力されることを可能にするのに加えて、レジスタ80
5とMUX80Bを介してパック/送り込み回路網から
キュー804にデータをチャネル動作させるように働く
。
めに64ワードキユー804に多重化される。明らかに
、DTCを作る際にはより大きいかまたはより小さなキ
ューでも用いられ得る。データはパック/送り込みレジ
スタ(805)およびMUX806を介してキューから
およびパック/送り込み回路網に流れる。MUX806
はデータがキュー804からパック/送り込み回路網に
出力されることを可能にするのに加えて、レジスタ80
5とMUX80Bを介してパック/送り込み回路網から
キュー804にデータをチャネル動作させるように働く
。
ローカルバス上ではDMA転送はRISCシステムのデ
ータメモリアドレス空間に対してのみ発生することに注
目すべきである。
ータメモリアドレス空間に対してのみ発生することに注
目すべきである。
遠隔からローカルへのDMA転送では、チャネルモード
レジスタによって指定されかつ遠隔アドレスレジスタに
よってトラッキングされたアドレス指定パターンで、デ
ータは遠隔バスから読出される。転送されたバイトの数
は遠隔バイトカウントレジスタによってトラッキングさ
れる。このデータは適切なりMA中に置かれ(おそらく
パッキングの後に)そしてローカルバス転送が不能化さ
れているときを除いてローカルバスに引き続き転送され
、その場合データはローカルバス上のプロセッサによっ
て転送されるかまたは検査される。
レジスタによって指定されかつ遠隔アドレスレジスタに
よってトラッキングされたアドレス指定パターンで、デ
ータは遠隔バスから読出される。転送されたバイトの数
は遠隔バイトカウントレジスタによってトラッキングさ
れる。このデータは適切なりMA中に置かれ(おそらく
パッキングの後に)そしてローカルバス転送が不能化さ
れているときを除いてローカルバスに引き続き転送され
、その場合データはローカルバス上のプロセッサによっ
て転送されるかまたは検査される。
ローカルバス転送のためのアドレスは常にシーケンシャ
ルにワードアドレスを増加させかつローカルアドレスレ
ジスタによってトラッキングされる。転送されるバイト
の数はローカルバイトカウントレジスタによってトラッ
キングされる。
ルにワードアドレスを増加させかつローカルアドレスレ
ジスタによってトラッキングされる。転送されるバイト
の数はローカルバイトカウントレジスタによってトラッ
キングされる。
遠隔バス転送は遠隔バイトカウントが終了カウントレジ
スタにおける値と一致するまで続く。それに引き続きロ
ーカルバス転送はローカルバイトカウントが終了カウン
トレジスタの値と一致するまで続< (DMAキュー
においてバッファされるデータのために)。ローカルバ
イトカウントが終了カウントと一致すると、転送が終了
しかつ可能化されるなら*lNTRが断定される。
スタにおける値と一致するまで続く。それに引き続きロ
ーカルバス転送はローカルバイトカウントが終了カウン
トレジスタの値と一致するまで続< (DMAキュー
においてバッファされるデータのために)。ローカルバ
イトカウントが終了カウントと一致すると、転送が終了
しかつ可能化されるなら*lNTRが断定される。
ローカルから遠隔へのDMA転送では、データはローカ
ルアドレスレジスタによってトラッキングされるアドレ
ス指定パターンをシーケンシャルに増加させて、(ロー
カルバス転送が不能化され、その場合データがローカル
バス上のプロセッサによってロードされるときを除いて
)ローカルバスから読出される。転送されるバイトの数
は適切なりMAキューによってトラッキングされかつシ
ーケンシャルに遠隔バスに転送される(おそらく送り込
みで)。
ルアドレスレジスタによってトラッキングされるアドレ
ス指定パターンをシーケンシャルに増加させて、(ロー
カルバス転送が不能化され、その場合データがローカル
バス上のプロセッサによってロードされるときを除いて
)ローカルバスから読出される。転送されるバイトの数
は適切なりMAキューによってトラッキングされかつシ
ーケンシャルに遠隔バスに転送される(おそらく送り込
みで)。
遠隔バス転送のためのアドレスはチャネルモードレジス
タによって指定されかつ遠隔アドレスレジスタによって
トラッキングされるアドレス指定パターンを有する。転
送されるバイトの数は遠隔バイトカウントレジスタによ
ってトラッキングされる。
タによって指定されかつ遠隔アドレスレジスタによって
トラッキングされるアドレス指定パターンを有する。転
送されるバイトの数は遠隔バイトカウントレジスタによ
ってトラッキングされる。
ローカルバス転送はローカルバイトカウントが終了カウ
ントレジスタの値に一致するまで続けられる。次に遠隔
バス転送は遠隔バイトカウントが終了カウントレジスタ
の値と一致するまで続く(DMAキューにおいてバッフ
ァされるデータのために)。遠隔バイトカウントが終了
カウントに一致するとき、その転送は終了し、可能化さ
れるなら*lNTRが断定される。
ントレジスタの値に一致するまで続けられる。次に遠隔
バス転送は遠隔バイトカウントが終了カウントレジスタ
の値と一致するまで続く(DMAキューにおいてバッフ
ァされるデータのために)。遠隔バイトカウントが終了
カウントに一致するとき、その転送は終了し、可能化さ
れるなら*lNTRが断定される。
各MDAチャネルがそれがローカルと遠隔バスとの間で
転送される間データをバッファする関連したDMAキュ
ーを有する。この発明の好ましい実施例に従えば、これ
らのキューの各々はサイズが256バイトでありかつ6
4ワードで編成される。再び、ワードのみがローカルバ
ス上のキューにおよびキューから転送される。遠隔バス
上では、パッキングおよび送り込み動作のためワードと
ハーフワードとバイトが転送されてもよい。DMAキュ
ーはこれより先に論じられる29の目的に適う。
転送される間データをバッファする関連したDMAキュ
ーを有する。この発明の好ましい実施例に従えば、これ
らのキューの各々はサイズが256バイトでありかつ6
4ワードで編成される。再び、ワードのみがローカルバ
ス上のキューにおよびキューから転送される。遠隔バス
上では、パッキングおよび送り込み動作のためワードと
ハーフワードとバイトが転送されてもよい。DMAキュ
ーはこれより先に論じられる29の目的に適う。
真のDMA転送では(すなわち実際にローカルバスメモ
リをアクセスする転送) 、DMAキューによって出さ
れるバッファリングにより、ローカルバスDMA転送は
ローカルバスのバーストモード能力を用いて100メガ
バイト/秒までの範囲で進むことが可能となる。全体の
キューの内容は単一のバーストモードストアによって転
送されるかまたはキューはバーストモードロードで全て
満たされてもよい。
リをアクセスする転送) 、DMAキューによって出さ
れるバッファリングにより、ローカルバスDMA転送は
ローカルバスのバーストモード能力を用いて100メガ
バイト/秒までの範囲で進むことが可能となる。全体の
キューの内容は単一のバーストモードストアによって転
送されるかまたはキューはバーストモードロードで全て
満たされてもよい。
バーストモードアクセスを支持するに加えて、DMAキ
ューはDMA転送のだめののローカルバス獲得の影響を
減する。2個のサイクルが通常ローカルバスを獲得しか
つ放棄するために必要とされかつローカルバスはこれら
のサイクルの開用いられ得ない。もし1ワードのみが各
獲得で転送されたなら、これらのサイクルによって示さ
れたオーバヘッドは比較的高いであろう。64ワードも
のワードが19の獲得で転送されることを可能にするこ
とによって、DMAキューはこのオーバヘッドを最小に
するのを助ける。
ューはDMA転送のだめののローカルバス獲得の影響を
減する。2個のサイクルが通常ローカルバスを獲得しか
つ放棄するために必要とされかつローカルバスはこれら
のサイクルの開用いられ得ない。もし1ワードのみが各
獲得で転送されたなら、これらのサイクルによって示さ
れたオーバヘッドは比較的高いであろう。64ワードも
のワードが19の獲得で転送されることを可能にするこ
とによって、DMAキューはこのオーバヘッドを最小に
するのを助ける。
DMAキューの第1の目的はRISCプロセッサによる
直接の操作のだめのバッファ区域を提供することである
。いくつかのシステムでは、プロセッサがDMAキュー
において直接に遠隔バスに転送されるべきデータをアセ
ンブルしかつDMAキューから直接に遠隔バスから転送
されるデータを読出すことが有利である。この場合、D
MAキューはローカルバスメモリの延長として現われる
ように構成される。これによってローカルバスメモリへ
のまたはローカルバスメモリからの余分な転送に含まれ
る待ち時間が避けられる。しかしながら、直接の転送は
含まれるデータがDMAキューによって提供される64
ワードの区域に適合するときのみ直接の転送が適切であ
る。
直接の操作のだめのバッファ区域を提供することである
。いくつかのシステムでは、プロセッサがDMAキュー
において直接に遠隔バスに転送されるべきデータをアセ
ンブルしかつDMAキューから直接に遠隔バスから転送
されるデータを読出すことが有利である。この場合、D
MAキューはローカルバスメモリの延長として現われる
ように構成される。これによってローカルバスメモリへ
のまたはローカルバスメモリからの余分な転送に含まれ
る待ち時間が避けられる。しかしながら、直接の転送は
含まれるデータがDMAキューによって提供される64
ワードの区域に適合するときのみ直接の転送が適切であ
る。
DMAキューはこの発明の好ましい実施例において25
6ワードアレイによって実現され、これは4つの64ワ
ードの部分に分けられる。そのキューはローカルバス上
の内部レジスタとして目視可能である。
6ワードアレイによって実現され、これは4つの64ワ
ードの部分に分けられる。そのキューはローカルバス上
の内部レジスタとして目視可能である。
各DMAチャネルに関連したキュー状態レジスタ(以前
に説明されている)は関連したDMAキニーの状態を与
える。キュー状態レジスタはキューの前でワードのアド
レスを含むキューヘッド(QH)フィールドと、キュー
の最後で(空の)ワードのアドレスを含むキューテイル
(QT)フィールドとを含む。
に説明されている)は関連したDMAキニーの状態を与
える。キュー状態レジスタはキューの前でワードのアド
レスを含むキューヘッド(QH)フィールドと、キュー
の最後で(空の)ワードのアドレスを含むキューテイル
(QT)フィールドとを含む。
DMAチャネルがDMA転送を行なうために初期設定さ
れると(チャネル状態レジスタにおいてR3Tビットを
セットすることによって)、QHおよびQTフィールド
の両方が0にセットされる。
れると(チャネル状態レジスタにおいてR3Tビットを
セットすることによって)、QHおよびQTフィールド
の両方が0にセットされる。
DMA転送の間、データはQTフィールドによって識別
される位置でキューに置かれ、そしてQTフィールドは
データが書込まれると1だけ増分される。QTフィール
ドはこうして常にキュー内の次の空の位置を指す。デー
タはQHフィールドによって識別されるデータでキュー
から除去されかつQHフィールドはデータが読出される
と1だけ増分される。QHフィールドはこうしてキュー
が空のときを除いて次の有効のキュー位置を指す。
される位置でキューに置かれ、そしてQTフィールドは
データが書込まれると1だけ増分される。QTフィール
ドはこうして常にキュー内の次の空の位置を指す。デー
タはQHフィールドによって識別されるデータでキュー
から除去されかつQHフィールドはデータが読出される
と1だけ増分される。QHフィールドはこうしてキュー
が空のときを除いて次の有効のキュー位置を指す。
QHフィールドの値は空のDMAキューに対してのみQ
Tフィールドの値に等しい。−杯のキューはその値がQ
Hフィールドの値より少ない(モジュロ64)QTフィ
ールドによって識別される。
Tフィールドの値に等しい。−杯のキューはその値がQ
Hフィールドの値より少ない(モジュロ64)QTフィ
ールドによって識別される。
空と、部分的に一杯と、−杯のキューのためのQHポイ
ンタとQTポインタとの関係が第9図に示される。
ンタとQTポインタとの関係が第9図に示される。
DMAキューがパターンを転送するために用いられると
(すなわちチャネルモードレジスタのキューパターンビ
ットがセットされると) 、QHフィールドはパターン
を含むキューの位置(その位置はパターンで明示的に書
込まれなくてはならない)を識別する。QHフィールド
はパターンが転送されると変化されない。この構造では
、QTフィールドの値は重要ではない。
(すなわちチャネルモードレジスタのキューパターンビ
ットがセットされると) 、QHフィールドはパターン
を含むキューの位置(その位置はパターンで明示的に書
込まれなくてはならない)を識別する。QHフィールド
はパターンが転送されると変化されない。この構造では
、QTフィールドの値は重要ではない。
キュー状態レジスタはキューの状態を変化するために書
込まれるかもしれないが、これはもしDMA転送が進行
中なら予想できない影響を有するかもしれない。
込まれるかもしれないが、これはもしDMA転送が進行
中なら予想できない影響を有するかもしれない。
DMA転送は種々の制御状態および形態に従っている。
これらの条件および形態そしてそれらがどのようにロー
カルバスと遠隔バスの両方上のDMA転送に関係するか
が次に述べられる。
カルバスと遠隔バスの両方上のDMA転送に関係するか
が次に述べられる。
DMAチャネルはグローバルモードレジスタの適切なチ
ャネルビットをセットすることによって可能化および不
能化される。不能化されたDMAチャネルは他の可能化
条件に関係なく転送を行なうのが妨げられる。可能化さ
れたDMAチャネルはもし他の状態が転送が起こる得り
ようなものなら転送を行なうことができる。これらは後
に述べられる。可能化されたDMAチャネルが有効な転
送のために形成されているということが仮定される。
ャネルビットをセットすることによって可能化および不
能化される。不能化されたDMAチャネルは他の可能化
条件に関係なく転送を行なうのが妨げられる。可能化さ
れたDMAチャネルはもし他の状態が転送が起こる得り
ようなものなら転送を行なうことができる。これらは後
に述べられる。可能化されたDMAチャネルが有効な転
送のために形成されているということが仮定される。
可能化されたDMAチャネルのDMA転送は所与の時間
で以下の動作状態のうちのいずれかであってよい。
で以下の動作状態のうちのいずれかであってよい。
1、 ベンディング。DMAチャネルはローカルバスま
たは遠隔バス上で転送を行なうように準備されるが、そ
の転送は実際に起こらない。DMA転送はバスの仲裁の
待ち時間またはより高い優先順位のDMA要求のために
ベンディングであるかもしれない。
たは遠隔バス上で転送を行なうように準備されるが、そ
の転送は実際に起こらない。DMA転送はバスの仲裁の
待ち時間またはより高い優先順位のDMA要求のために
ベンディングであるかもしれない。
2、 活性状態。DMAチャネルはローカルバスかまた
は遠隔バスのいずれかの上でのDMA転送を現在行なっ
ている。
は遠隔バスのいずれかの上でのDMA転送を現在行なっ
ている。
3、 不活性状態。DMA転送はチャネル状態レジスタ
のチャネル活性状態(CA)ビットによって中断される
。このビットはDMAチャネル上でDMA転送を一時的
に中断しかつ再び始めるためにソフトウェアによってリ
セットおよびセットされてもよい。
のチャネル活性状態(CA)ビットによって中断される
。このビットはDMAチャネル上でDMA転送を一時的
に中断しかつ再び始めるためにソフトウェアによってリ
セットおよびセットされてもよい。
4、 終了されている。DMAチャネルはすべての要求
されたアクセスを行なっている。チャネルデータレジス
タのCAビットはDMA転送が終わるとリセットされる
。
されたアクセスを行なっている。チャネルデータレジス
タのCAビットはDMA転送が終わるとリセットされる
。
5、 先取りされている。DMAチャネルはすべての転
送を行なっていないが、転送のシーケンスは一時的に中
断される。多くの場合、この状態はデータフロー制御の
ために起こる。しかしながら、DMA転送はバスの仲裁
や、より高い優先順位のDMA要求や、転送に直接関連
していない他の状態に先取りされる。
送を行なっていないが、転送のシーケンスは一時的に中
断される。多くの場合、この状態はデータフロー制御の
ために起こる。しかしながら、DMA転送はバスの仲裁
や、より高い優先順位のDMA要求や、転送に直接関連
していない他の状態に先取りされる。
6、 キャンセルされる。DMA転送はたとえパリティ
エラーのような成る例外の事象のために、残っているさ
らなる転送が存在しても妨げられる。チャネル状態レジ
スタのCAビットはDMA転送がキャンセルされるとリ
セットされる。
エラーのような成る例外の事象のために、残っているさ
らなる転送が存在しても妨げられる。チャネル状態レジ
スタのCAビットはDMA転送がキャンセルされるとリ
セットされる。
D M A転送が終了するかまたはキャンセルされると
、対応するDMAキューは空にされ(可能であるなら)
かつ関連のチャネル状態レジスタのCAはリセットされ
、DMAチャネルが活性状態になることを引き起こす。
、対応するDMAキューは空にされ(可能であるなら)
かつ関連のチャネル状態レジスタのCAはリセットされ
、DMAチャネルが活性状態になることを引き起こす。
このとき、もしチャネルモードレジスタの割込可能化が
セットされかつグローバルモードレジスタのグローバル
割込可能化ビットがセットされるなら、DTCは”lN
TR出力を断定する。これによってRISCプロセッサ
への割込(またはトラップ)が許容される。
セットされかつグローバルモードレジスタのグローバル
割込可能化ビットがセットされるなら、DTCは”lN
TR出力を断定する。これによってRISCプロセッサ
への割込(またはトラップ)が許容される。
ローカルバスと遠隔バスとの間のDMA転送はローカル
バスと遠隔バスとの間の経路におけるいくつかの点でフ
ロー制御(すなわち転送速度制御)に従う。
バスと遠隔バスとの間の経路におけるいくつかの点でフ
ロー制御(すなわち転送速度制御)に従う。
1、 ローカルバスメモリ。ローカルバスメモリは種
々の時間ですべてのDMAチャネルの集合体要求を満た
すための十分な容量を有していなくてもよい。
々の時間ですべてのDMAチャネルの集合体要求を満た
すための十分な容量を有していなくてもよい。
2゜ ローカルバースト/ドウエルカウント。ローカ
ルバースト/ドウエルレジスタはローカルバス上で転送
され得るデータの量を制限しかつローカルバスメモリの
容量より厳しいデータのフローの制限を示すかもしれな
い。バースト/ドウニルカウントはDTCによって発生
されるローカルバスのための競合を制限するために設け
られる。
ルバースト/ドウエルレジスタはローカルバス上で転送
され得るデータの量を制限しかつローカルバスメモリの
容量より厳しいデータのフローの制限を示すかもしれな
い。バースト/ドウニルカウントはDTCによって発生
されるローカルバスのための競合を制限するために設け
られる。
3、 遠隔バースト/ドウニルカウント。
遠隔バースト/ドウエルレジスタは遠隔バス上で転送さ
れ得るデータの量を制限し、DTCによって発生される
遠隔バスのための競合を制限する。これは19の要求で
大量のデータが転送されるかもしれない、転送の成るモ
ード(たとえば要求モード)に対してのみあてはまる。
れ得るデータの量を制限し、DTCによって発生される
遠隔バスのための競合を制限する。これは19の要求で
大量のデータが転送されるかもしれない、転送の成るモ
ード(たとえば要求モード)に対してのみあてはまる。
4、 遠隔バスデバイスまたはメモリ。遠隔バス上のデ
バイスまたはメモリは適切な*DRQO−*DR03人
力を用いてデータのフローを制限することができる。さ
らに、データのフローはDSACKO−DSACKI、
またはチャネルモードレジスタの遠隔待機カウントおよ
び遠隔回復カウントによって即座に制限されるかもしれ
ない。
バイスまたはメモリは適切な*DRQO−*DR03人
力を用いてデータのフローを制限することができる。さ
らに、データのフローはDSACKO−DSACKI、
またはチャネルモードレジスタの遠隔待機カウントおよ
び遠隔回復カウントによって即座に制限されるかもしれ
ない。
上の1と2の場合、DTCは1個以上のDMAチャネル
の遠隔バス側でフロー制御を行なわなくてはならず、遠
隔側へのローカルバスへの制限を反映する。もしDMA
キューが遠隔バスの書込を満たすための゛いかなるデー
タも有さないかまたはDMAキューが遠隔バスの読出の
データを受取るための位置を有さないなら(すなわちそ
れはたった19の空の位置しか有さない) 、DTCは
その状態がもはや存在しなくなるまで寧DRQO−”D
RQ3によって要求されるDMA転送を行なわない(お
よびその要求を肯定応答しない)。
の遠隔バス側でフロー制御を行なわなくてはならず、遠
隔側へのローカルバスへの制限を反映する。もしDMA
キューが遠隔バスの書込を満たすための゛いかなるデー
タも有さないかまたはDMAキューが遠隔バスの読出の
データを受取るための位置を有さないなら(すなわちそ
れはたった19の空の位置しか有さない) 、DTCは
その状態がもはや存在しなくなるまで寧DRQO−”D
RQ3によって要求されるDMA転送を行なわない(お
よびその要求を肯定応答しない)。
一般に、上のフロー制御メカニズムのいずれかがデータ
のフローを制限し得る。しかしながら、ローカルバスか
または遠隔バスのいずれか上のバースト/ドウニルカウ
ントは進行中のアクセスを先取りすることはできない。
のフローを制限し得る。しかしながら、ローカルバスか
または遠隔バスのいずれか上のバースト/ドウニルカウ
ントは進行中のアクセスを先取りすることはできない。
もしバースト/ドウエル制限が要求されるなら、それは
進行中の転送に続く転送上に課される。
進行中の転送に続く転送上に課される。
チャネルモードレジスタのローカル転送不能化ビットに
よって可能化されるなら、ローカルバスへのおよびロー
カルバスからのDMA転送はローカルバス上で要求され
ない(それらは遠隔バス上にあるので)。ローカルバス
DMA転送はDMAキューの状態およびDMAチャネル
の動作状態によって活性状態にされる。
よって可能化されるなら、ローカルバスへのおよびロー
カルバスからのDMA転送はローカルバス上で要求され
ない(それらは遠隔バス上にあるので)。ローカルバス
DMA転送はDMAキューの状態およびDMAチャネル
の動作状態によって活性状態にされる。
遠隔からローカルへのDMA転送では、ローカルバス転
送はDMAキューに19の残余の用いられていないワー
ドが存在するときはいつでもベンディング状態になる。
送はDMAキューに19の残余の用いられていないワー
ドが存在するときはいつでもベンディング状態になる。
このワードはキューヘッドおよびキューテイルポインタ
が一杯のキューではは等しくされ得ないので満たされ得
ない。通常の状態のもとでは、DMA転送はキューが空
にされるまで活性状態のままである(DMAキューは遠
隔バスから同時に満たされてもよいことに注目されたい
)。しかしながら、転送は上で述べられた他の状態(先
取りやバースト/ドウニルカウントなど)に従う。
が一杯のキューではは等しくされ得ないので満たされ得
ない。通常の状態のもとでは、DMA転送はキューが空
にされるまで活性状態のままである(DMAキューは遠
隔バスから同時に満たされてもよいことに注目されたい
)。しかしながら、転送は上で述べられた他の状態(先
取りやバースト/ドウニルカウントなど)に従う。
ローカルから遠隔への転送では、ローカルバス転送はD
MAキューが1個の転送されていないワードを含むとき
かまたはキューが空のときベンディング状態になる。通
常の状態のもとでは、DMA転送はキューが一杯になる
まで活性状態のままである(DMAキューは遠隔バスか
ら同時に空にされることに注目されたい)。しかしなが
ら、転送はいかなる他の上で論じられた条件にも従う。
MAキューが1個の転送されていないワードを含むとき
かまたはキューが空のときベンディング状態になる。通
常の状態のもとでは、DMA転送はキューが一杯になる
まで活性状態のままである(DMAキューは遠隔バスか
ら同時に空にされることに注目されたい)。しかしなが
ら、転送はいかなる他の上で論じられた条件にも従う。
もし遠隔からローカルへの転送が終わるかまたはキャン
セルされるなら、関連のDMAキューが空にされなくて
はならない(もしたとえばゝDERRといった例外がロ
ーカルバスによって引き起こされないなら)。これらの
状態のうちいずれかが起こると、ローカルバス転送は即
座にベンディング状態になりかつDMAキューは*lN
TRが断定される前に空にされる( 事lNTRは可能
化されるなら断定されるのみである)。
セルされるなら、関連のDMAキューが空にされなくて
はならない(もしたとえばゝDERRといった例外がロ
ーカルバスによって引き起こされないなら)。これらの
状態のうちいずれかが起こると、ローカルバス転送は即
座にベンディング状態になりかつDMAキューは*lN
TRが断定される前に空にされる( 事lNTRは可能
化されるなら断定されるのみである)。
各DMAチャネルはすべてここで以前に論じられたが、
転送されるデータの量を制御しかつトラッキングするた
めのいくつかのレジスタを有する。
転送されるデータの量を制御しかつトラッキングするた
めのいくつかのレジスタを有する。
これらは以下のとおりである。
1、 ローカルバイトカウントレジスタ2、 ロー
カルアラームカウントレジスタ3、 遠隔バイトカウン
ト 4、 遠隔アラームカウントレジスタ 5、 終了カウントレジスタ DMA転送が初期設定されると、ローカルバイトカウン
トレジスタおよび遠隔バイトカウントレジスタは共に0
にセットされる。DMA転送が発生すると、各レジスタ
は個々にそれぞれのバスの上で転送されるバイト数をカ
ウントする。ローカルバイトカウントレジスタは4バイ
トの単位でカウントし遠隔バイトカウントレジスタはチ
ャネルモードレジスタのデータ幅フィールドによって決
定される単位でカウントする。
カルアラームカウントレジスタ3、 遠隔バイトカウン
ト 4、 遠隔アラームカウントレジスタ 5、 終了カウントレジスタ DMA転送が初期設定されると、ローカルバイトカウン
トレジスタおよび遠隔バイトカウントレジスタは共に0
にセットされる。DMA転送が発生すると、各レジスタ
は個々にそれぞれのバスの上で転送されるバイト数をカ
ウントする。ローカルバイトカウントレジスタは4バイ
トの単位でカウントし遠隔バイトカウントレジスタはチ
ャネルモードレジスタのデータ幅フィールドによって決
定される単位でカウントする。
DMA転送の間、ローカルバイトカウントレジスタの値
はローカルアラームカウントレジスタの値と比較され遠
隔バイトカウントレジスタの値は遠隔アラームカウント
レジスタの値と比較される。
はローカルアラームカウントレジスタの値と比較され遠
隔バイトカウントレジスタの値は遠隔アラームカウント
レジスタの値と比較される。
ローカルバイトカウントレジスタおよび遠隔バイトカウ
ントレジスタの両方の値は終了カウントレジスタの値と
比較される。
ントレジスタの両方の値は終了カウントレジスタの値と
比較される。
チャネルモードレジスタのローカルアラーム可能化およ
び遠隔アラーム可能化ビットはDTCがローカルまたは
遠隔バイトカウントがそれぞれ対応するアラームカウン
トと一致するかまたはそれを越えると割込を発生するよ
うにする(もしそうでないなら可能化される)。チャネ
ル状態レジスタのローカルアラーム達成かまたは遠隔ア
ラーム達成ビットが割込を引き起こすようにセットされ
る。
び遠隔アラーム可能化ビットはDTCがローカルまたは
遠隔バイトカウントがそれぞれ対応するアラームカウン
トと一致するかまたはそれを越えると割込を発生するよ
うにする(もしそうでないなら可能化される)。チャネ
ル状態レジスタのローカルアラーム達成かまたは遠隔ア
ラーム達成ビットが割込を引き起こすようにセットされ
る。
アラーム割込はDMA転送の特定の点が終了条件のいず
れからも独立して達成されるとRISCプロセッサに割
込むための手段を設ける。たとえば、これはRISCプ
ロセッサに交信パッケージのヘッダ部分が受取られたこ
とを知らせることができ、パッケージの残余のものが転
送されている間ヘッダが検査されることを可能にする。
れからも独立して達成されるとRISCプロセッサに割
込むための手段を設ける。たとえば、これはRISCプ
ロセッサに交信パッケージのヘッダ部分が受取られたこ
とを知らせることができ、パッケージの残余のものが転
送されている間ヘッダが検査されることを可能にする。
終了カウントレジスタの値への比較によってDMAチャ
ネルが終了条件に達したことが示される。
ネルが終了条件に達したことが示される。
DMAキューによって与えられるバッファリングのため
に、DMAチャネルの遠隔バスおよびローカルバス側は
同時に終了カウントに達することはまずない。
に、DMAチャネルの遠隔バスおよびローカルバス側は
同時に終了カウントに達することはまずない。
いずれかの側が終了カウントに達すると、DMAの作業
はそれぞれのバス上で終了される。さらに、遠隔バス側
が遠隔からローカルへの転送で終了カウントに達するな
ら、DMAキューの内容はキューにおけるデータの量に
関係なく、ローカルバスに転送される(そうするように
可能化されるなら)(すなわち、そのキューは空にされ
る)。
はそれぞれのバス上で終了される。さらに、遠隔バス側
が遠隔からローカルへの転送で終了カウントに達するな
ら、DMAキューの内容はキューにおけるデータの量に
関係なく、ローカルバスに転送される(そうするように
可能化されるなら)(すなわち、そのキューは空にされ
る)。
DMA転送のためのローカルまたは遠隔バス上で転送さ
れるバイトの合計数はこのレジスタの値とローカルバス
および遠隔バス上のデータ幅との関係に依存して、終了
カウントレジスタによって指定される数よりわずかに大
きくてもよい。終了カウント値はバイトの単位である。
れるバイトの合計数はこのレジスタの値とローカルバス
および遠隔バス上のデータ幅との関係に依存して、終了
カウントレジスタによって指定される数よりわずかに大
きくてもよい。終了カウント値はバイトの単位である。
もしこのバイトの数がいずれかのバスの転送の整数によ
って転送され得ないなら、データはカウントを越えるま
で転送される。
って転送され得ないなら、データはカウントを越えるま
で転送される。
たとえば、DMA転送が初期設定されるとき終了カウン
トレジスタは値41にセットされかつ遠隔バスデータ幅
は16ビツトであることを考慮されたい。この場合、4
4バイト(11ワード)はローカルバス上で転送されか
つ42バイト(21ハーフワード)は遠隔バス上で転送
されるであろう。
トレジスタは値41にセットされかつ遠隔バスデータ幅
は16ビツトであることを考慮されたい。この場合、4
4バイト(11ワード)はローカルバス上で転送されか
つ42バイト(21ハーフワード)は遠隔バス上で転送
されるであろう。
もしチャネルモードレジスタのローカル転送不能化ビッ
トがセットされてローカルバスへのDMA転送を不能化
するなら、ローカルアドレスレジスタおよびローカルバ
イトカウントレジスタは変化しない。ローカルバイトカ
ウントレジスタの値で行なわれたすべての比較の結果は
不能化されかつ終了条件は遠隔バイトカウントレジスタ
依存する。
トがセットされてローカルバスへのDMA転送を不能化
するなら、ローカルアドレスレジスタおよびローカルバ
イトカウントレジスタは変化しない。ローカルバイトカ
ウントレジスタの値で行なわれたすべての比較の結果は
不能化されかつ終了条件は遠隔バイトカウントレジスタ
依存する。
1より多いDMA要求が特定の瞬間でベンディングして
いるとき矛盾しているDMA要求はDMA要求に優先順
位を付けることによって解決される。DMAチャネル内
の優先順位はグローバルモードレジスタのチャネル優先
順位回転ビットによって制御され、固定されているかま
たは回転しているかのいずれかであり得る。
いるとき矛盾しているDMA要求はDMA要求に優先順
位を付けることによって解決される。DMAチャネル内
の優先順位はグローバルモードレジスタのチャネル優先
順位回転ビットによって制御され、固定されているかま
たは回転しているかのいずれかであり得る。
DMAチャネルの優先順位が固定されているとき、この
発明の好ましい実施例に従えばDMAチャネルの優先順
位はDMAチャネル0が最も高い優先順位を有するよう
に数字の順に固定される。
発明の好ましい実施例に従えばDMAチャネルの優先順
位はDMAチャネル0が最も高い優先順位を有するよう
に数字の順に固定される。
こうして、DMAチャネル0の要求はDMAチャネル1
や以下のものにおける要求よりも優先される。
や以下のものにおける要求よりも優先される。
DMAチャネルの優先順位が回転するとき、DMAチャ
ネルの優先順位は時間の量によって順番が決められ、こ
れは最も最近の転送、すなわち最も長い不活性状態の期
間を有するチャネルに最も高い優先順位が与えられるか
らである。暗示されているように、サイクルごとに各チ
ャネルの要求をスキャンすることによって回転は実現さ
れないことに注目されたい。むしろ、所与のDMAチャ
ネルはそれがDMA転送を始めるや否や最も低い優先順
位が割当てられかつチャネルはそれらの要求が満たされ
ると最も低い優先順位を通って回転する。
ネルの優先順位は時間の量によって順番が決められ、こ
れは最も最近の転送、すなわち最も長い不活性状態の期
間を有するチャネルに最も高い優先順位が与えられるか
らである。暗示されているように、サイクルごとに各チ
ャネルの要求をスキャンすることによって回転は実現さ
れないことに注目されたい。むしろ、所与のDMAチャ
ネルはそれがDMA転送を始めるや否や最も低い優先順
位が割当てられかつチャネルはそれらの要求が満たされ
ると最も低い優先順位を通って回転する。
優先順位化が特定のDMA要求に合うために決定の最後
の段階に影響を及ぼすことに注目されたい。たとえば、
遠隔バス上のDMA続出の要求はもし関連のDMAキュ
ーが一杯であるならたとえチャネルが高い優先順位を有
していても優先順位化の中には含まれないであろう。
の段階に影響を及ぼすことに注目されたい。たとえば、
遠隔バス上のDMA続出の要求はもし関連のDMAキュ
ーが一杯であるならたとえチャネルが高い優先順位を有
していても優先順位化の中には含まれないであろう。
1個以上の゛DMAチャネルが所与の時間でローカルバ
ス転送を行なうことができる場合、その矛盾はそのとき
に与えるチャネルの優先順位に従って解決される。
ス転送を行なうことができる場合、その矛盾はそのとき
に与えるチャネルの優先順位に従って解決される。
もし入出力ポートアクセスがDMA転送と同時にベンデ
ィングになるなら、入出力ボートは遠隔バスの利用にお
いて優先される。さらに、もし入出力ポートアクセスが
DMA転送が活性状態の間ベンディングになるなら、そ
れは転送を先取りしてもよい。
ィングになるなら、入出力ボートは遠隔バスの利用にお
いて優先される。さらに、もし入出力ポートアクセスが
DMA転送が活性状態の間ベンディングになるなら、そ
れは転送を先取りしてもよい。
DMA転送の間に発生し得るいくつかの例外がある。こ
れらの例外のいずれかによつて*lNTR出力が断定さ
れる(もし可能化されるなら)、DMA転送のキャンセ
ルが引き起こされる。遠隔からローカルへの転送では、
DMAキューは*lNTRが断定される前に流される。
れらの例外のいずれかによつて*lNTR出力が断定さ
れる(もし可能化されるなら)、DMA転送のキャンセ
ルが引き起こされる。遠隔からローカルへの転送では、
DMAキューは*lNTRが断定される前に流される。
適切な場合の好ましい実施例の優先順位化された順位に
おける以下の例外はDMA転送の間に起こるかもしれな
い。
おける以下の例外はDMA転送の間に起こるかもしれな
い。
1、 パリティエラー。DTCは転送の間無効を検出す
る。パリティはデータがいずれかのバスから受取られた
後すぐにチエツクされ、その結果DMAキューのデータ
は常に有効パリティを有する。
る。パリティはデータがいずれかのバスから受取られた
後すぐにチエツクされ、その結果DMAキューのデータ
は常に有効パリティを有する。
2、 遠隔バスエラー。*RBERR応答は遠隔バス転
送に受取られる。
送に受取られる。
3. データ幅例外。DMA転送に対するDSACKO
−DSACKI応答は遠隔バスデバイスまたはメモリが
要求された幅の転送を取扱うことができないことを示す
。
−DSACKI応答は遠隔バスデバイスまたはメモリが
要求された幅の転送を取扱うことができないことを示す
。
4、 アドレス矛盾。ローカルバス転送のためのアド
レスは入出力ポートのためのアドレスとオーバラップす
るかまたはチップ選択マツピングレジスタによって認め
られるアドレスである(これは単に活性状態の寧C3E
L入力であってもよいことに注目されたい)。これによ
って例外が与えられるまで対応するDMAチャネルによ
るさらなるローカルバスの転送は妨げられる。
レスは入出力ポートのためのアドレスとオーバラップす
るかまたはチップ選択マツピングレジスタによって認め
られるアドレスである(これは単に活性状態の寧C3E
L入力であってもよいことに注目されたい)。これによ
って例外が与えられるまで対応するDMAチャネルによ
るさらなるローカルバスの転送は妨げられる。
5、 ローカルバスエラー。*DERR応答はローカ
ルバス転送に受取られる。これによって例外が出るまで
対応するDMAチャネルによるさらなるローカルバス転
送が妨げられる。
ルバス転送に受取られる。これによって例外が出るまで
対応するDMAチャネルによるさらなるローカルバス転
送が妨げられる。
6、 処理の最後。*EOP入力は遠隔バス転送の間、
断定される。これはそのシステムに依存してエラーの信
号を送るかまたは送らないかのどちらでもよい。
断定される。これはそのシステムに依存してエラーの信
号を送るかまたは送らないかのどちらでもよい。
*lNTRが断定されると、グローバル状態レジスタは
DMAチャネルのどれが例外に遭遇したかを示す。示さ
れたDMAチャネルのチャネル状態レジスタはその例外
の理由を示す。もし割込が可能化されるなら、例外を報
告するこのレジスタのビットは*lNTRが断定される
ことを引き起こす。それらはその割込を非活性化するた
めにソフトウェアによってリセットされてもよい。また
1個以上のこれらのビットをセットすることによってソ
フトウェアは*lNTRが断定されることを引き起こす
かもしれないことに注目されたい。
DMAチャネルのどれが例外に遭遇したかを示す。示さ
れたDMAチャネルのチャネル状態レジスタはその例外
の理由を示す。もし割込が可能化されるなら、例外を報
告するこのレジスタのビットは*lNTRが断定される
ことを引き起こす。それらはその割込を非活性化するた
めにソフトウェアによってリセットされてもよい。また
1個以上のこれらのビットをセットすることによってソ
フトウェアは*lNTRが断定されることを引き起こす
かもしれないことに注目されたい。
遠隔バスデバイスまたはメモリがどのようにDMA転送
を要求するかが次に述べられる。
を要求するかが次に述べられる。
遠隔バスデバイスまたはメモリはそれが断定されるDM
Aチャネルに依存して、”DRQO−”DRQ3人力の
19を断定することによってDMA転送を要求する(I
DRQOはDMAチャネル0に応答し、以下同様である
)。DTCは遠隔バス上で要求された転送を行ない、適
切に転送の初めで”DACKO−*DACK3出力の1
9を断定する。
Aチャネルに依存して、”DRQO−”DRQ3人力の
19を断定することによってDMA転送を要求する(I
DRQOはDMAチャネル0に応答し、以下同様である
)。DTCは遠隔バス上で要求された転送を行ない、適
切に転送の初めで”DACKO−*DACK3出力の1
9を断定する。
デバイスおよびメモリは*DRQO−*DRQ3でデー
タのフローを制御する必要がない。この場合、DMAチ
ャネルは対応する*DRQO−*DR03人力を無視す
るように構成されることができかつDSACKO−DS
ACKIのような遠隔バス転送でのDTCの動作状態お
よび他の制限によって決定される速度でデータを転送す
る。
タのフローを制御する必要がない。この場合、DMAチ
ャネルは対応する*DRQO−*DR03人力を無視す
るように構成されることができかつDSACKO−DS
ACKIのような遠隔バス転送でのDTCの動作状態お
よび他の制限によって決定される速度でデータを転送す
る。
DMAチャネルは適切なチャネルモードレジスタのDM
A要求応答モード(DRM)フィールドによって制御さ
れて、3つのモードのうちの19で対応する”DRQO
−”DR03人力に応答する。これらのモードは対応す
る*DRQO−*DRQ3人力の断定のためにDMAチ
ャネルの行ないを規定する。
A要求応答モード(DRM)フィールドによって制御さ
れて、3つのモードのうちの19で対応する”DRQO
−”DR03人力に応答する。これらのモードは対応す
る*DRQO−*DRQ3人力の断定のためにDMAチ
ャネルの行ないを規定する。
もしチャネルモードレジスタのDRMフィールドが00
であるなら、DMAチャネルが対応する寧DRQO−*
DR03人力を無視する。もしチャネルがグローバルモ
ードレジスタの適切なチャネル可能化ビットとチャネル
状態レジスタのCAビットによって転送のために可能化
されるなら、チャネルは転送が他の方法で可能なときは
いつでも(DMAキューの状態やチャネルの優先順位等
によって決定される)、データを転送する。
であるなら、DMAチャネルが対応する寧DRQO−*
DR03人力を無視する。もしチャネルがグローバルモ
ードレジスタの適切なチャネル可能化ビットとチャネル
状態レジスタのCAビットによって転送のために可能化
されるなら、チャネルは転送が他の方法で可能なときは
いつでも(DMAキューの状態やチャネルの優先順位等
によって決定される)、データを転送する。
このモードでは、遠隔バスデバイスまたはメモリに利用
可能なデータフロー制御メカニズムしかDSACKO−
DSACKIによってかまたはチャネルモードレジスタ
の待機/回復カウントによって提供されない。これらの
メカニズムが遠隔バス容量を用いるので、それらは効率
的でないかもしれない。
可能なデータフロー制御メカニズムしかDSACKO−
DSACKIによってかまたはチャネルモードレジスタ
の待機/回復カウントによって提供されない。これらの
メカニズムが遠隔バス容量を用いるので、それらは効率
的でないかもしれない。
DTCはそれが遠隔バス上でのDMA転送を始めるとき
たとえ対応するDMA要求が無視されているときでも適
切な*DAK0−車DAK3出力を断定する。
たとえ対応するDMA要求が無視されているときでも適
切な*DAK0−車DAK3出力を断定する。
もしチャネルモードレジスタのDRMフィールドが01
であるなら、DMAチャネルの対応する寧DRQO−車
DR03人力の各ハイからローへの推移のための単一の
遠隔バス転送を行なう。適切な”DACKO−”DAC
K3出力は転送の初めで(すなわちアドレスサイクルの
間)で断定される。DMA要求入力は同期式遠隔バスの
ための少なくとも1サイクルかまたは同期式の遠隔バス
のための2サイクルの間、それが他のハイからローへの
推移を行なうことができる前に不活性状態でなくてはな
らない。最大のスルーブツトでは、それゆえ、DMA要
求人力は要求される転送が終わる前に断定が解除されな
くてはならない。
であるなら、DMAチャネルの対応する寧DRQO−車
DR03人力の各ハイからローへの推移のための単一の
遠隔バス転送を行なう。適切な”DACKO−”DAC
K3出力は転送の初めで(すなわちアドレスサイクルの
間)で断定される。DMA要求入力は同期式遠隔バスの
ための少なくとも1サイクルかまたは同期式の遠隔バス
のための2サイクルの間、それが他のハイからローへの
推移を行なうことができる前に不活性状態でなくてはな
らない。最大のスルーブツトでは、それゆえ、DMA要
求人力は要求される転送が終わる前に断定が解除されな
くてはならない。
もしチャネルモードレジスタのDRMフィールドが10
なら、DMAチャネルは適切な*DRQO−*DR03
人力が活性状態である限りかつ他の状態により転送が起
こるようにされる限り(たとえば他のチャネルの優先順
位など)遠隔バス転送を行なう。*DACK0−車DA
CK3出力は第1の転送のアドレスサイクルの間断室さ
れかつ最後の転送が例外であるかもしれないが、すべて
の転送の開店性状態のままである。
なら、DMAチャネルは適切な*DRQO−*DR03
人力が活性状態である限りかつ他の状態により転送が起
こるようにされる限り(たとえば他のチャネルの優先順
位など)遠隔バス転送を行なう。*DACK0−車DA
CK3出力は第1の転送のアドレスサイクルの間断室さ
れかつ最後の転送が例外であるかもしれないが、すべて
の転送の開店性状態のままである。
遠隔バスデバイスまたはメモリは最後の転送でのローか
らハイへの*D S T Bの推移の前に、*DRQO
−*DRQ3を断定解除することによって要求転送を先
取りしてもよい。さらなる転送は後に寧DRQO−DR
Q3を再び断定することによって要求されるかもしれな
い。
らハイへの*D S T Bの推移の前に、*DRQO
−*DRQ3を断定解除することによって要求転送を先
取りしてもよい。さらなる転送は後に寧DRQO−DR
Q3を再び断定することによって要求されるかもしれな
い。
もしDTCが活性状態の要求転送の間転送を終えるかま
たは先取りするなら、適切な”DACKO−”DACK
3出力が最後のデータ転送の間断室される(”DSTH
の断定と同時に)。しかしながら、もし終結が遠隔バス
からの*EOPに応答しているなら、対応する”DAC
KO−*DACK3出力は最後の転送の開店性状態のま
まである。
たは先取りするなら、適切な”DACKO−”DACK
3出力が最後のデータ転送の間断室される(”DSTH
の断定と同時に)。しかしながら、もし終結が遠隔バス
からの*EOPに応答しているなら、対応する”DAC
KO−*DACK3出力は最後の転送の開店性状態のま
まである。
要求モード転送でのDMAチャネル実行はもしそれが高
い優先順位を有するなら他のチャネル上でDMAのサー
ビスを妨げるかもしれないことに注目すべきである。
い優先順位を有するなら他のチャネル上でDMAのサー
ビスを妨げるかもしれないことに注目すべきである。
回転する優先順位に関しては、チャネルはそれが転送を
始めるや否や最も低い優先順位が割当てられかつ他のチ
ャネルへのサービスを妨げることができない。
始めるや否や最も低い優先順位が割当てられかつ他のチ
ャネルへのサービスを妨げることができない。
上で述べられたこの発明の好ましい実施例は、アドレス
がデータの転送のいかなる数に対しても1度転送される
「ブロック転送」やDMAチャネルがプログラムされて
固定されたパターンを遠隔バスまたはローカルバスに転
送する「パターン転送」といった特別の動作のために構
成されてもよい。
がデータの転送のいかなる数に対しても1度転送される
「ブロック転送」やDMAチャネルがプログラムされて
固定されたパターンを遠隔バスまたはローカルバスに転
送する「パターン転送」といった特別の動作のために構
成されてもよい。
新規のDTCの詳細な説明を締めくくる前に、いくつか
の詳細および全体的なシステムへの考慮が残っている。
の詳細および全体的なシステムへの考慮が残っている。
まず、第1図を参照して簡単に述べられているように(
ユニット105) 、DTCに遠隔バスを付けるために
インターフェイスはオプショナルに利用されてもよい。
ユニット105) 、DTCに遠隔バスを付けるために
インターフェイスはオプショナルに利用されてもよい。
第10図は遠隔データおよびアドレス信号および制御信
号を遠隔システムアドレスやデータおよび制御バスに結
合するための、市場で人手可能なラッチや、ドライバや
、トランシーバおよび制御インターフェイスとの典型的
な遠隔バス接続を示す。しかしながら、いくつかの場合
においては(たとえば遠隔バスへの低価格の接続を提供
するための)、遠隔バスと周辺装置との間の論理をイン
ターフェイスするバスを除去して周辺装置を直接に制御
することが有利であり得る。DTCは入出力ボートまた
はDMAチャネルの19あたりのプログラム可能バスタ
イミングを支持することによってそのようなシステムの
設計を容易にする。
号を遠隔システムアドレスやデータおよび制御バスに結
合するための、市場で人手可能なラッチや、ドライバや
、トランシーバおよび制御インターフェイスとの典型的
な遠隔バス接続を示す。しかしながら、いくつかの場合
においては(たとえば遠隔バスへの低価格の接続を提供
するための)、遠隔バスと周辺装置との間の論理をイン
ターフェイスするバスを除去して周辺装置を直接に制御
することが有利であり得る。DTCは入出力ボートまた
はDMAチャネルの19あたりのプログラム可能バスタ
イミングを支持することによってそのようなシステムの
設計を容易にする。
これによって回路をインターフェイスすることによって
実現されるタイミングの必要性がなくなる。
実現されるタイミングの必要性がなくなる。
DTCで制御されたバスタイミングはチャネルモードレ
ジスタかまたはボートモードレジスタの遠隔待機カウン
ト(RWC)と遠隔回復カウント(RRC)フィールド
を介してプログラムされる。
ジスタかまたはボートモードレジスタの遠隔待機カウン
ト(RWC)と遠隔回復カウント(RRC)フィールド
を介してプログラムされる。
RWCフィールドは転送のためデータサイクルでのサイ
クルの数(1サイクル以上)を示す(上で示されるよう
に)。RRCはデータサイクルの最後と次のデータサイ
クルの始まりの間のサイクルの数(0かもしれない)を
指定する(アドレスサイクルは非ブロツクモード転送の
ためのデータサイクルを先導することに注目されたい)
。これらのフィールドによって制御されるタイミングは
チャネルモードレジスタかまたはポートモードレジスタ
のデータサイズ肯定応答不能化(DAD)ビットによっ
て可能化される。
クルの数(1サイクル以上)を示す(上で示されるよう
に)。RRCはデータサイクルの最後と次のデータサイ
クルの始まりの間のサイクルの数(0かもしれない)を
指定する(アドレスサイクルは非ブロツクモード転送の
ためのデータサイクルを先導することに注目されたい)
。これらのフィールドによって制御されるタイミングは
チャネルモードレジスタかまたはポートモードレジスタ
のデータサイズ肯定応答不能化(DAD)ビットによっ
て可能化される。
DTC制御されたバスのタイミングが特定の入出力ボー
トまたはMDAチャネルのために可能化されるなら、D
TCは入出力ポートまたはチャネルを介するいかなる遠
隔バスアクセスでもDSACKO−DSACKIを無視
し、遠隔バス上のアクセスの時間を定めるためにRWC
およびRRCフィールドの値に依存する。DSACKO
−DSACKlは無視されるので、適当なデータ幅が適
切なチャネルモードレジスタまたはボートモードレジス
タにおいてプログラムされなくてはならない。
トまたはMDAチャネルのために可能化されるなら、D
TCは入出力ポートまたはチャネルを介するいかなる遠
隔バスアクセスでもDSACKO−DSACKIを無視
し、遠隔バス上のアクセスの時間を定めるためにRWC
およびRRCフィールドの値に依存する。DSACKO
−DSACKlは無視されるので、適当なデータ幅が適
切なチャネルモードレジスタまたはボートモードレジス
タにおいてプログラムされなくてはならない。
DTCはさらにそれがバスタイミングを発生するために
可能化されると、*EBERRおよび*EOPに応答す
る。これらの信号のいずれかの断定によってWRCフィ
ールドの値に関係なくデータサイクルが終了しかつその
断定はその他では普通の効果を有する。
可能化されると、*EBERRおよび*EOPに応答す
る。これらの信号のいずれかの断定によってWRCフィ
ールドの値に関係なくデータサイクルが終了しかつその
断定はその他では普通の効果を有する。
次に、遠隔バスの論理動作はバスが同期式の動作を有し
ているかまたは非同期式の動作を有しているかに依存し
ていないことを理解すべきである。
ているかまたは非同期式の動作を有しているかに依存し
ていないことを理解すべきである。
アクセスを制御するために用いられる信号はどの場合に
おいても同じ翻訳を有する。しかしながら、同期式バス
と比較して非同期式バスの物理的実現には本質的な29
の違いがある。すなわち、1、 非同期式バスを制御す
るDTCの入力は準安定状態に対する保護を有する。こ
の保護バスアクセスに要する時間を増す、内部同期化を
必要とする。
おいても同じ翻訳を有する。しかしながら、同期式バス
と比較して非同期式バスの物理的実現には本質的な29
の違いがある。すなわち、1、 非同期式バスを制御す
るDTCの入力は準安定状態に対する保護を有する。こ
の保護バスアクセスに要する時間を増す、内部同期化を
必要とする。
2、 非同期式バスでは、−次ハンドシェーク信号DS
ACKO−DSACKIと亭RBERRと*EOPのす
べての遷移はDTCによって認められかつ同期化されな
くてはならない。それに対して、これらの信号は同期式
バス上でサンプリングされかつ遷移を同期化するのに余
分の時間は必要とされない。
ACKO−DSACKIと亭RBERRと*EOPのす
べての遷移はDTCによって認められかつ同期化されな
くてはならない。それに対して、これらの信号は同期式
バス上でサンプリングされかつ遷移を同期化するのに余
分の時間は必要とされない。
非同期式バスの要求によって、一般にそれは同期式バス
より遅い速度で動作するようにされる。
より遅い速度で動作するようにされる。
これは準安定の同期化時間の結果でありかつハンドシェ
ーキング信号の両方の推移は同期化されなくてはならな
いということである。
ーキング信号の両方の推移は同期化されなくてはならな
いということである。
同期式または非同期式バスのいずれに対してもアドレス
サイクルは同期式である。DTCはアドレスが単一のR
CLKサイクルで転送され得るということに依存してい
る。この同期式転送は外部のアドレスラッチによって隠
される。
サイクルは同期式である。DTCはアドレスが単一のR
CLKサイクルで転送され得るということに依存してい
る。この同期式転送は外部のアドレスラッチによって隠
される。
信号DSACKO−DSACKIは非同期式バス上でス
キューされることが許容される。これらの信号のいずれ
かの転送によってデータサイクルは同期化期間の後の終
了させられる。しかしながら、同期化期間の間他の信号
が変化するなら、DTCはそれがRCLKに関して有効
なセットアツプ時間で発生する限り変化を受取る。デー
タサイクル(IRDERR,*EOP)を終える他の信
号も同様にスキューされてもよい。
キューされることが許容される。これらの信号のいずれ
かの転送によってデータサイクルは同期化期間の後の終
了させられる。しかしながら、同期化期間の間他の信号
が変化するなら、DTCはそれがRCLKに関して有効
なセットアツプ時間で発生する限り変化を受取る。デー
タサイクル(IRDERR,*EOP)を終える他の信
号も同様にスキューされてもよい。
付加的なシステムの考慮はDTCを介して転送されるデ
ータの「以前」および「以後」の見解である。第11図
および第12図は新規のDTCへのおよびそこからのロ
ーカルバスデータ転送および遠隔バスデータ転送両方の
ためのデータの位置を例示するために提示されている。
ータの「以前」および「以後」の見解である。第11図
および第12図は新規のDTCへのおよびそこからのロ
ーカルバスデータ転送および遠隔バスデータ転送両方の
ためのデータの位置を例示するために提示されている。
第11図はローカルバス上のデータの位置の種々の可能
性を要約している。
性を要約している。
データのバイトまたはハートワードがローカルバス上の
DTCから転送されると、それはローカルバスに関して
右に位置調整される。こうして、D7−DO上でバイト
が現われかつD15−DO上でハーフワードが現われる
。この発明の好ましい実施例に従えば、残余のバス信号
はローに駆動される。
DTCから転送されると、それはローカルバスに関して
右に位置調整される。こうして、D7−DO上でバイト
が現われかつD15−DO上でハーフワードが現われる
。この発明の好ましい実施例に従えば、残余のバス信号
はローに駆動される。
データのバイトまたはハーフワードがローカルバスから
DTCに転送されると、それはそのバスに関して右に位
置調整される。こうして、バイトはD7−DOで現われ
かつハーフワードはD15−DOで現われる。残余のバ
ス信号は無視される。
DTCに転送されると、それはそのバスに関して右に位
置調整される。こうして、バイトはD7−DOで現われ
かつハーフワードはD15−DOで現われる。残余のバ
ス信号は無視される。
第12図は遠隔バス上のデータの位置の種々の可能性を
要約する。
要約する。
データのバイトまたはハーフワードがDTCから遠隔バ
スのデバイスまたはメモリに転送されると、それは遠隔
バス上の各バイトまたはハーフワード位置に反復される
。こうして、バイトはRAD31−RAD24と、RA
D23−RADl6、RADl 5−RAD8と、RA
D7−RADOで現われる。ハーフワードはRAD31
−RADl6おびRADl5−RADOで現われる。
スのデバイスまたはメモリに転送されると、それは遠隔
バス上の各バイトまたはハーフワード位置に反復される
。こうして、バイトはRAD31−RAD24と、RA
D23−RADl6、RADl 5−RAD8と、RA
D7−RADOで現われる。ハーフワードはRAD31
−RADl6おびRADl5−RADOで現われる。
データのバイトまたはハーフワードが遠隔バスからDT
Cに転送されると、それは転送に関連したチャネルモー
ドレジスタまたはボートモードレジスタのデータ位置フ
ィールドによって決定される位置でバス上で現われる。
Cに転送されると、それは転送に関連したチャネルモー
ドレジスタまたはボートモードレジスタのデータ位置フ
ィールドによって決定される位置でバス上で現われる。
4個の可能な位置合わせが指示される。すなわち、
1、 アドレスによって。ハーフワードまたはバイト
はそのアドレスによって決定される位置でバスに現われ
る。
はそのアドレスによって決定される位置でバスに現われ
る。
2、 固定されたハイ。バイトまたはハーフワードはそ
のバスに関して左に位置合わせされる。
のバスに関して左に位置合わせされる。
3、 固定されたロー。バイトまたはハーフワードはそ
のバスに関して右に位置合わせされる。
のバスに関して右に位置合わせされる。
4゜ アドレスによって固定されたロー/バイト。ハ
ーフワードはバスに関して右に位置調整されかつバイト
はそれらのアドレスによって決定されるようにバスの低
順位16ビツト内で現われる。
ーフワードはバスに関して右に位置調整されかつバイト
はそれらのアドレスによって決定されるようにバスの低
順位16ビツト内で現われる。
バイトまたはハーフワードの位置がそのアドレスに依存
するなら(オプション1および4)、特定のバイトまた
はハーフワードの実際の位置はアドレスのみならず適切
なチャネルモードまたはボートモードレジスタの遠隔バ
イトオーダ(RB O)ビットによって指定されるバイ
トおよびハーフワード順序によってもまた決定される。
するなら(オプション1および4)、特定のバイトまた
はハーフワードの実際の位置はアドレスのみならず適切
なチャネルモードまたはボートモードレジスタの遠隔バ
イトオーダ(RB O)ビットによって指定されるバイ
トおよびハーフワード順序によってもまた決定される。
上のオプションの各々に関して、転送に含まれないいか
なるバス信号も無視されることに注目すべきである。
なるバス信号も無視されることに注目すべきである。
DTCはシステムへの2個の1次インターフェイスのロ
ーカルバスと遠隔バスを組込むことがここで明らかとな
るべきである。これらのインターフェイスによって様々
な異なるシステムの形態が可能となる。各インターフェ
イスは典型的には独立したクロックで動作する。
ーカルバスと遠隔バスを組込むことがここで明らかとな
るべきである。これらのインターフェイスによって様々
な異なるシステムの形態が可能となる。各インターフェ
イスは典型的には独立したクロックで動作する。
この発明の好ましい実施例に従えば、RI SCシステ
ムで(またはその中で)動作する環境において述べられ
ているように、ローカルバス動作は5YSCLK入力に
同期している。この入力はRISCプロセッサの5YS
CLK出力によって駆動されるかまたはRISCプロセ
ッサの5yscLK入力をまた駆動する別のクロック発
生器によって駆動される。
ムで(またはその中で)動作する環境において述べられ
ているように、ローカルバス動作は5YSCLK入力に
同期している。この入力はRISCプロセッサの5YS
CLK出力によって駆動されるかまたはRISCプロセ
ッサの5yscLK入力をまた駆動する別のクロック発
生器によって駆動される。
遠隔バス動作はRCLK信号と時間が合わされている(
遠隔バス動作はRCLKに対して同期しているかまたは
非同期しているかのいずれであってもよい)。DTCは
システムクロック発生および分配の29の方法を提供す
る。
遠隔バス動作はRCLKに対して同期しているかまたは
非同期しているかのいずれであってもよい)。DTCは
システムクロック発生および分配の29の方法を提供す
る。
一方のクロック動作配置では、DTCは遠隔バスのため
のRCLKクロックを発生し、このクロックはRCLK
ビン上で現われ、そして他の遠隔バスの構成要件に外部
より分配されてもよい。第2の配置では、遠隔バスのた
めの独立したクロック発生が存在し、この場合DTCは
RCLKピン上の外部から発生されたクロックを受取る
。両方の配置では、RCLKを発生しかつバッファする
回路は外部DTCクロックおよび外部遠隔バスクロック
の間の明らかなスキューを最小にするように設計される
。
のRCLKクロックを発生し、このクロックはRCLK
ビン上で現われ、そして他の遠隔バスの構成要件に外部
より分配されてもよい。第2の配置では、遠隔バスのた
めの独立したクロック発生が存在し、この場合DTCは
RCLKピン上の外部から発生されたクロックを受取る
。両方の配置では、RCLKを発生しかつバッファする
回路は外部DTCクロックおよび外部遠隔バスクロック
の間の明らかなスキューを最小にするように設計される
。
DTCはすべての他のチップ電力分配から独立している
RCLKドライバのための電源ピンを設ける。これによ
って他のDTC回路はRCLKドライバによって電源に
誘発されるかもしれない騒音と電気的に隔離される。別
の電源もまた2個の可能なりロック動作配置の間を決定
するために用いられる。
RCLKドライバのための電源ピンを設ける。これによ
って他のDTC回路はRCLKドライバによって電源に
誘発されるかもしれない騒音と電気的に隔離される。別
の電源もまた2個の可能なりロック動作配置の間を決定
するために用いられる。
もし電力(すなわち+5ボルト)がRCLK電源ピンに
与えられると、DTCは遠隔バスのためにクロックを発
生するように構成される。この場合、RCLKピンは出
力であり、ROSC上の信号は遠隔バスクロックを発生
するために用いられる。DTCはRCLKの発生におい
てRO8C信号を29に分割し、そのためROSCは遠
隔バスの2倍の動作周波数で駆動されるべきである。
与えられると、DTCは遠隔バスのためにクロックを発
生するように構成される。この場合、RCLKピンは出
力であり、ROSC上の信号は遠隔バスクロックを発生
するために用いられる。DTCはRCLKの発生におい
てRO8C信号を29に分割し、そのためROSCは遠
隔バスの2倍の動作周波数で駆動されるべきである。
もしRCLKm源ピンが接地されるなら、DTCは外部
から発生されるクロックを受取るように構成される。こ
の場合、RCLKピンはDTCクロックとして直接に用
いられる入力である。RCLKは遠隔バスの動作周波数
で駆動されるべきである。この構成では、RO8C人力
はこれより後に論じられる成るマスタ/スレーブ機器構
成の場合を用いてハイかまたはローにつながれるべきで
ある。
から発生されるクロックを受取るように構成される。こ
の場合、RCLKピンはDTCクロックとして直接に用
いられる入力である。RCLKは遠隔バスの動作周波数
で駆動されるべきである。この構成では、RO8C人力
はこれより後に論じられる成るマスタ/スレーブ機器構
成の場合を用いてハイかまたはローにつながれるべきで
ある。
RCLKビンは遠隔バスクロックサイクルの前半はハイ
であり、遠隔バスサイクルの後半はローである。こうし
て、サイクルはRCLKのローからハイへの推移で始ま
る。遠隔バスクロックサイクルの始まりの規定は特定の
システムのために選ばれるクロック動作配置とは独立し
ている。
であり、遠隔バスサイクルの後半はローである。こうし
て、サイクルはRCLKのローからハイへの推移で始ま
る。遠隔バスクロックサイクルの始まりの規定は特定の
システムのために選ばれるクロック動作配置とは独立し
ている。
いくつかのシステムにおいては、各々が共通のRO8C
信号によって駆動される2個以上のDTCをロックステ
ップ同期化において動作させることが望ましいかもしれ
ない。この場合、同期化は*RESET入力によって達
成される。もし*RESETの断定解除がROSCのロ
ーがらハイへの推移に関する指定された準備時間と一致
するなら、RCLK出力は次の半分のサイクルにおいて
ローにあることが補償される。こうして、すべてのDT
Cは必要に応じて同期化されてもよい。
信号によって駆動される2個以上のDTCをロックステ
ップ同期化において動作させることが望ましいかもしれ
ない。この場合、同期化は*RESET入力によって達
成される。もし*RESETの断定解除がROSCのロ
ーがらハイへの推移に関する指定された準備時間と一致
するなら、RCLK出力は次の半分のサイクルにおいて
ローにあることが補償される。こうして、すべてのDT
Cは必要に応じて同期化されてもよい。
DTCの電気的仕様に関する限り(RCLKに関して)
、それらは大部分の他のDTCの入力および出力の仕様
とは異なる。クロックのスキュー効果を減じるために、
RCLKピンはDTCチップを組立てるのに用いられる
TTL回路と互換性があるよりはむしろCMO3回路と
電気的に互換性がある。
、それらは大部分の他のDTCの入力および出力の仕様
とは異なる。クロックのスキュー効果を減じるために、
RCLKピンはDTCチップを組立てるのに用いられる
TTL回路と互換性があるよりはむしろCMO3回路と
電気的に互換性がある。
RCLKピンはテストモード(後に説明される)によっ
て高インピーダンス状態におかれる。もし外部から発生
されたクロックがこの場合において与えられるなら、D
TCの状態は失われるかもしれない。
て高インピーダンス状態におかれる。もし外部から発生
されたクロックがこの場合において与えられるなら、D
TCの状態は失われるかもしれない。
テストモードによってDTCの入力はDTCのテストま
たは診断の目的のために直接駆動され得る。テストモー
ドはすべての出力(MSERRを除く)を高インピーダ
ンス状態に置き、その結果それらは外部から与えられる
信号と電気的にインターフェイスしない。他のすべての
点において、DTCの動作は変化されない。
たは診断の目的のために直接駆動され得る。テストモー
ドはすべての出力(MSERRを除く)を高インピーダ
ンス状態に置き、その結果それらは外部から与えられる
信号と電気的にインターフェイスしない。他のすべての
点において、DTCの動作は変化されない。
テストモードは”T E S T入力における活性状態
レベルによって呼出される。DTC出力の不能化は結合
して行なわれる。それはたとえクロックがDTCに与え
られなくても起こる。
レベルによって呼出される。DTC出力の不能化は結合
して行なわれる。それはたとえクロックがDTCに与え
られなくても起こる。
いくつかの出力では、テストモードから生じる高インピ
ーダンス状態への推移は通常のDTC動作の間(たとえ
ばDTCがローカルバスを放棄するとき)与えるよりも
ずっと遅い速度で発生してもよい。このためテストモー
ドは特別のユーザが規定した目的に適していないかもし
れない。
ーダンス状態への推移は通常のDTC動作の間(たとえ
ばDTCがローカルバスを放棄するとき)与えるよりも
ずっと遅い速度で発生してもよい。このためテストモー
ドは特別のユーザが規定した目的に適していないかもし
れない。
他のシステムへの考慮は各DTC出力がDTCが出力ド
ライバに内部から与えている信号と出力での信号を比較
する関連した論理を有するということである。その29
の信号の比較は所与のドライバが可能化されかつテスト
モードのためのみにドラバが不能化される時間のいつで
も行なわれる。
ライバに内部から与えている信号と出力での信号を比較
する関連した論理を有するということである。その29
の信号の比較は所与のドライバが可能化されかつテスト
モードのためのみにドラバが不能化される時間のいつで
も行なわれる。
もしその比較が行なわれてドライバの出力がその入力と
一致していないなら、DTCはそのエラーがローカルバ
ス上で検出されるかまたは遠隔バス上で検出されるかに
依存して5YSCAKまたはRCLKの次のMSERR
出力を断定する。
一致していないなら、DTCはそのエラーがローカルバ
ス上で検出されるかまたは遠隔バス上で検出されるかに
依存して5YSCAKまたはRCLKの次のMSERR
出力を断定する。
DTCがMSERRを断定すると、それは検出された比
較の間違いに関するいかなる行動もとらない。しかしな
がら、MSERRはトラップの発生を含むシステム機能
を行なうために外部がら用いられてもよい。
較の間違いに関するいかなる行動もとらない。しかしな
がら、MSERRはトラップの発生を含むシステム機能
を行なうために外部がら用いられてもよい。
もしシステムにおいて単一のDTCが存在するなら、M
SERR出力はDTCドライバが不良であるかまたはD
TC出力において短絡が存在しているかを示す。しかし
ながら、第2のDTC(「スレーブ」と呼ばれる)が第
1のDTCrマス夕」と呼ばれる)と並列に接続される
なら(スレーブDTCはそのテストモードによって不能
化された出力を有する)、ずっと高いレベルの障害検出
が可能である。
SERR出力はDTCドライバが不良であるかまたはD
TC出力において短絡が存在しているかを示す。しかし
ながら、第2のDTC(「スレーブ」と呼ばれる)が第
1のDTCrマス夕」と呼ばれる)と並列に接続される
なら(スレーブDTCはそのテストモードによって不能
化された出力を有する)、ずっと高いレベルの障害検出
が可能である。
その出力をマスクの出力と比較することによってスレー
ブDTCはマスクの動作の包括的なチェックを行なう。
ブDTCはマスクの動作の包括的なチェックを行なう。
さらに、スレーブはシステムと交信するマスクによって
用いられる電気経路における開放回路および他の障害を
検出するかもしれない。マスクはさらにこの機器構成に
おける出力での比較を行なう。
用いられる電気経路における開放回路および他の障害を
検出するかもしれない。マスクはさらにこの機器構成に
おける出力での比較を行なう。
2個のDTCがマスタ/スレーブ機器構成に接続される
とき、MSERRの非論理的断定を妨げることが必要で
ある。これらはマスクの出力とスレーブDTCの出力が
一致しない状況から生じるが、双方とも正しく動作して
いる。
とき、MSERRの非論理的断定を妨げることが必要で
ある。これらはマスクの出力とスレーブDTCの出力が
一致しない状況から生じるが、双方とも正しく動作して
いる。
非論理的なエラーの19の源はDTCレジスタにおける
実現されていないビットのための予言できない値であり
得る。この潜在的な問題はすべての実現されていないビ
ットが0と読出される好ましいDTCアーキテクチャに
よって避けられている。
実現されていないビットのための予言できない値であり
得る。この潜在的な問題はすべての実現されていないビ
ットが0と読出される好ましいDTCアーキテクチャに
よって避けられている。
非論理的エラーの第2の源は遠隔バスからローカルバス
へ転送されるデータに関する。成る場合において、たと
えば単一のバイトがローカルバスから入出力ボートを介
して転送されるとき、「気にしない」であるデータをD
TCは転送する。もし無視されたデータ入力が有効な論
理レベルでなくかつそれらが他のバス上で自体に反映さ
れるなら、2個のDTCは無効な論理レベルのためにデ
ータのための値と一致しないかもしれない。DTCはデ
ータを0でパディングすることによってかつ「気にしな
い」をマスクするためにデータを反復することによって
この問題を避ける。
へ転送されるデータに関する。成る場合において、たと
えば単一のバイトがローカルバスから入出力ボートを介
して転送されるとき、「気にしない」であるデータをD
TCは転送する。もし無視されたデータ入力が有効な論
理レベルでなくかつそれらが他のバス上で自体に反映さ
れるなら、2個のDTCは無効な論理レベルのためにデ
ータのための値と一致しないかもしれない。DTCはデ
ータを0でパディングすることによってかつ「気にしな
い」をマスクするためにデータを反復することによって
この問題を避ける。
非論理的エラーの他の源はマスクDTCとスレーブDT
Cの間の同期化不足である。マスクとスレーブ間の同期
化を維持するために、まずそれらは同一のクロックで動
作するということが必要である。スレーブにRCLKを
人力として受取られてマスクにRCLKを駆動させるよ
うにするかまたは両方のマスクとスレーブを同じ外部か
ら発生されたRCLKと駆動することによって達成され
る。
Cの間の同期化不足である。マスクとスレーブ間の同期
化を維持するために、まずそれらは同一のクロックで動
作するということが必要である。スレーブにRCLKを
人力として受取られてマスクにRCLKを駆動させるよ
うにするかまたは両方のマスクとスレーブを同じ外部か
ら発生されたRCLKと駆動することによって達成され
る。
しかしながら、両方のマスクおよびスレーブDTCは同
じクロックで動作するということは同期化を補償するの
に十分ではない。非同期入力はそれらはスレーブに影響
を与えるより1サイクル早いか遅いかでマスクに影響を
及ぼすかもしれない。
じクロックで動作するということは同期化を補償するの
に十分ではない。非同期入力はそれらはスレーブに影響
を与えるより1サイクル早いか遅いかでマスクに影響を
及ぼすかもしれない。
このため、遠隔バスはマスタ/スレーブ機器構成におい
て同期式動作を有さなくてはならないかまたは共通の点
で外部から同期化されなくてはならない。活性状態から
不活性状態への”RESETの推移は同期化されてなく
てはならないことに注目すべきである。
て同期式動作を有さなくてはならないかまたは共通の点
で外部から同期化されなくてはならない。活性状態から
不活性状態への”RESETの推移は同期化されてなく
てはならないことに注目すべきである。
いくつかのマスタ/スレーブ機器構成では、エラーが離
されているときのシステム上のスレーブDTC制御をマ
スクDTCに与えることが望ましいかもしれない。それ
をテストモードから取出しかつマスタをテストモードに
置くことによって制御をスレーブに与えることが可能で
ある。同期化はこれが終了するとき維持されていなくて
はならない。
されているときのシステム上のスレーブDTC制御をマ
スクDTCに与えることが望ましいかもしれない。それ
をテストモードから取出しかつマスタをテストモードに
置くことによって制御をスレーブに与えることが可能で
ある。同期化はこれが終了するとき維持されていなくて
はならない。
もしもとのマスクがこの場合においてRCLKを発生す
るように構成されるなら、スレーブはまたそれがマスク
にあるときRCLKを発生しなくてはならない。このた
め、RO3C信号はマスクおよびスレーブの両方に与え
られなくてはならず、両方ともクロックを発生するよう
に構成されている。
るように構成されるなら、スレーブはまたそれがマスク
にあるときRCLKを発生しなくてはならない。このた
め、RO3C信号はマスクおよびスレーブの両方に与え
られなくてはならず、両方ともクロックを発生するよう
に構成されている。
このマスタ/スレーブ機器構成において、スレーブはさ
らに以前に述べられたようにマスクからRCLKを受取
る。スレーブはテストモードのためにRCLKを駆動し
ない。しかしながら、スレーブがテストモードから取出
されるとRCLKを望み通りに駆動することができる。
らに以前に述べられたようにマスクからRCLKを受取
る。スレーブはテストモードのためにRCLKを駆動し
ない。しかしながら、スレーブがテストモードから取出
されるとRCLKを望み通りに駆動することができる。
当業者は上で述べられたスイッチング機構が29以上の
DTCに対して概括的に論じられてもよい。
DTCに対して概括的に論じられてもよい。
最後のシステムの機器構成として、転送のためのデータ
幅が転送の間ダイナミックに決定される、ダイナミック
バスの大きさ決め動作をいくつかの標準のバスが支持す
ることが指摘されるべきである。DTCはこの機能を直
接に支持しないが、より高いレベルでそれを支持するの
に必要な特徴を提供する。
幅が転送の間ダイナミックに決定される、ダイナミック
バスの大きさ決め動作をいくつかの標準のバスが支持す
ることが指摘されるべきである。DTCはこの機能を直
接に支持しないが、より高いレベルでそれを支持するの
に必要な特徴を提供する。
DTCは要求された転送が行なわれないことを示す(車
RBERRのDSACKO−DSACKlのいずれかに
よって)転送に対する応答を受取ると、それによってR
ISCプロセッサへのトラップまたは割込が引き起こさ
れる。人出力ボートアクセスでは、DTCは*DERR
で応答し、そしてDMAチャネルではDTCは*lNT
Rを断定する(もし割込が可能化されるなら)。
RBERRのDSACKO−DSACKlのいずれかに
よって)転送に対する応答を受取ると、それによってR
ISCプロセッサへのトラップまたは割込が引き起こさ
れる。人出力ボートアクセスでは、DTCは*DERR
で応答し、そしてDMAチャネルではDTCは*lNT
Rを断定する(もし割込が可能化されるなら)。
応答する割込またはトラップハンドラは示された入出力
ボートまたはDMAチャネル上のデータ幅を減じるかま
たはより小さなデータ幅を取扱うために他の入出力ボー
トまたはDMAチャネルを割当てるかのオプションを有
する。適切なボート状態レジスタまたはチャネル状態レ
ジスタのデータサイズ肯定応答フィールドはエラーを引
き起こしたDSACKO−DSACKI応答を示す。も
との転送は再び開始され得る。
ボートまたはDMAチャネル上のデータ幅を減じるかま
たはより小さなデータ幅を取扱うために他の入出力ボー
トまたはDMAチャネルを割当てるかのオプションを有
する。適切なボート状態レジスタまたはチャネル状態レ
ジスタのデータサイズ肯定応答フィールドはエラーを引
き起こしたDSACKO−DSACKI応答を示す。も
との転送は再び開始され得る。
もし入出力ボートまたはDMAチャネルのデータ幅が減
じられるなら、その入出力ボートまたはDMAチャネル
を介するすべての転送は指定された幅を有するように取
扱われるべきことに注目すべきである。たとえば、ワー
ドデバイスへの転送はもし人出力ポートまたはDMAチ
ャネルの幅が8ビツトとして指定されるなら1度に1バ
イト行なわれる。これは有効な動作として考えられ例外
を引き起こさない。こうして、DTCはデータ幅におけ
るダイナミックな減少を支持するが、データ幅のダイナ
ミックな増加は支持しない。
じられるなら、その入出力ボートまたはDMAチャネル
を介するすべての転送は指定された幅を有するように取
扱われるべきことに注目すべきである。たとえば、ワー
ドデバイスへの転送はもし人出力ポートまたはDMAチ
ャネルの幅が8ビツトとして指定されるなら1度に1バ
イト行なわれる。これは有効な動作として考えられ例外
を引き起こさない。こうして、DTCはデータ幅におけ
るダイナミックな減少を支持するが、データ幅のダイナ
ミックな増加は支持しない。
先読みまたは後書きを行なう入出力ボートでは、データ
幅例外はそれが遠隔バス上で発生した後に報告されかつ
両方のそのアクセスおよび’DERR応答を受取るアク
セスは再スタートされなくてはならない。この場合、最
初のアクセスはローカルボートアドレスレジスタにおけ
る翻訳されていない入出カポ−ドアドレスを用いて、ロ
ードまたはストアによって明示的に再び開始されなくて
はならない。第2のアクセスはRISCプロセッサにお
けるチャネルアドレスやチャネルデータおよびチャネル
制御レジスタによって再び開始される。
幅例外はそれが遠隔バス上で発生した後に報告されかつ
両方のそのアクセスおよび’DERR応答を受取るアク
セスは再スタートされなくてはならない。この場合、最
初のアクセスはローカルボートアドレスレジスタにおけ
る翻訳されていない入出カポ−ドアドレスを用いて、ロ
ードまたはストアによって明示的に再び開始されなくて
はならない。第2のアクセスはRISCプロセッサにお
けるチャネルアドレスやチャネルデータおよびチャネル
制御レジスタによって再び開始される。
第1のアクセスはユーザまたはスーパバイザモードのい
ずれかで再び開始されてもよいことに注目すべきである
が、これは保護違反がその先に捕まっているからである
。
ずれかで再び開始されてもよいことに注目すべきである
が、これは保護違反がその先に捕まっているからである
。
機能や、その内部レジスタや入力および出力、データフ
ォーマットや支持される転送などで新規のDTCがここ
で詳細に述べられてきたが当業者はこの発明の目的は以
前に述べられたように満たされるものであったことを認
めるであろう。
ォーマットや支持される転送などで新規のDTCがここ
で詳細に述べられてきたが当業者はこの発明の目的は以
前に述べられたように満たされるものであったことを認
めるであろう。
新規の方法および装置の好ましい実施例および例示的具
体例の上述の説明は例示および説明のためのみに提示さ
れている。この発明は余すところないわけではなく、開
示された綿密な型にこの発明を制限するようにも意図さ
れておらず、明らかに多くの修正および変化が上述の教
示に照らし合わせて可能である。
体例の上述の説明は例示および説明のためのみに提示さ
れている。この発明は余すところないわけではなく、開
示された綿密な型にこの発明を制限するようにも意図さ
れておらず、明らかに多くの修正および変化が上述の教
示に照らし合わせて可能である。
これまでに述べられた実施例および具体例はこの発明の
原理を最もよく説明するために提示され、それによって
当業者はこの発明を考えられる特定の使用に適した種々
の実施例および種々の修正においてこの発明を最もよく
利用できるであろう。
原理を最もよく説明するために提示され、それによって
当業者はこの発明を考えられる特定の使用に適した種々
の実施例および種々の修正においてこの発明を最もよく
利用できるであろう。
この発明の範囲は添付の特許請求の範囲によって規定さ
れることが意図される。
れることが意図される。
第1図はこの発明の好ましい実施例に従った、ローカル
バスを介してRISCシステムとインターフェイスしか
つ1組の周辺装置や入出力サブシステム等が取付けられ
てもよい遠隔バスとインターフェイスする、新規のDT
Cを示す。 第2図はこの発明の好ましい実施例に従った、新規のD
TCをハウジングしかつローカルバスを介する両方のR
ISCシステムおよび遠隔バスを介する1組の周辺装置
との相互接続を容易にする、集積回路パッケージのため
のピンアウト図を示す。 第3図はこの発明の好ましい実施例に従って作られた、
4個の入出力ボートと4個のDMAチャネルを有するD
TCの機能ブロック図である。 第4図はここで教示される新規のDTCによって指示さ
れる、ハーフワードおよびワード内のバイトおよびハー
フワードの位置のための確立された規定を示す。 第5図はDTCが第4図に示されるアドレス指定の規定
の間で変換するために用いられるとき、ハーフワードお
よびワード内でのバイトのスワツピングを例示する。 第6図は1個の入出力のための入出力ポートデータフロ
ーを例示するブロック図である。 第7図はDTCがどのようにオーバラップされた入出力
を指示するかを例示するかを例示するフローチャートで
ある。 第8図は1個のDMAチャネルのためのDMAチャネル
データフローを例示するブロック図である。 第9図は空のと、部分的の一杯のと、−杯のDMAQを
例示する。 第10図は市場で入手可能なデバイスがどのように新規
のDTCを遠隔バスに相互接続させるために用いられる
かの具体例である。 第11図はDO−D31上での新規のDTCへのおよび
新規のDTCからのローカルバスデータ転送のためのデ
ータ位置を例示する。 第12図はRADO−RAD31上での新規のDTCへ
のおよび新規のDTCからの両方の遠隔バスデータ転送
ためのデータ位置を例示する。 図において、101はRISCプロセッサ、102はプ
ログラムストア、103はデータメモリ、105はイン
ターフェイスユニット、110はローカルバス、111
はアドレスバス、112はデータバス、120は遠隔バ
ス、204は集積回路パッケージである。 特許出願人 アドバンスト・マイクロ・ディバイシズ・
インコーホレーテッド
バスを介してRISCシステムとインターフェイスしか
つ1組の周辺装置や入出力サブシステム等が取付けられ
てもよい遠隔バスとインターフェイスする、新規のDT
Cを示す。 第2図はこの発明の好ましい実施例に従った、新規のD
TCをハウジングしかつローカルバスを介する両方のR
ISCシステムおよび遠隔バスを介する1組の周辺装置
との相互接続を容易にする、集積回路パッケージのため
のピンアウト図を示す。 第3図はこの発明の好ましい実施例に従って作られた、
4個の入出力ボートと4個のDMAチャネルを有するD
TCの機能ブロック図である。 第4図はここで教示される新規のDTCによって指示さ
れる、ハーフワードおよびワード内のバイトおよびハー
フワードの位置のための確立された規定を示す。 第5図はDTCが第4図に示されるアドレス指定の規定
の間で変換するために用いられるとき、ハーフワードお
よびワード内でのバイトのスワツピングを例示する。 第6図は1個の入出力のための入出力ポートデータフロ
ーを例示するブロック図である。 第7図はDTCがどのようにオーバラップされた入出力
を指示するかを例示するかを例示するフローチャートで
ある。 第8図は1個のDMAチャネルのためのDMAチャネル
データフローを例示するブロック図である。 第9図は空のと、部分的の一杯のと、−杯のDMAQを
例示する。 第10図は市場で入手可能なデバイスがどのように新規
のDTCを遠隔バスに相互接続させるために用いられる
かの具体例である。 第11図はDO−D31上での新規のDTCへのおよび
新規のDTCからのローカルバスデータ転送のためのデ
ータ位置を例示する。 第12図はRADO−RAD31上での新規のDTCへ
のおよび新規のDTCからの両方の遠隔バスデータ転送
ためのデータ位置を例示する。 図において、101はRISCプロセッサ、102はプ
ログラムストア、103はデータメモリ、105はイン
ターフェイスユニット、110はローカルバス、111
はアドレスバス、112はデータバス、120は遠隔バ
ス、204は集積回路パッケージである。 特許出願人 アドバンスト・マイクロ・ディバイシズ・
インコーホレーテッド
Claims (1)
- 【特許請求の範囲】 (1)少なくとも1個の中央処理装置(CPU)を含む
第1の組の高性能デバイスが取付けられる第1のバスへ
およびそこから、かつ第2の組の比較的より低い性能の
デバイスが取付けられる第2のバスへおよびそこからデ
ータを転送するための直接メモリアクセス手段であって
、前記第1のバスと第2のバスへのおよびそれらからの
データの転送が前記第1の組のデバイスと第2の組のデ
バイスの間の通信を容易にする一方で、前記第1の組の
デバイスの性能を前記第2の組のデバイスの比較的より
低い性能から隔離し、 (a)前記第1のバスと前記第2のバスに連結合され、
少なくとも1個の直接メモリアクセスチャネル手段を含
み、前記第1のバスから前記第2のバスへの直接メモリ
アクセス転送と前記第2のバスから前記第1のバスへの
直接メモリアクセス転送をチャネル動作させるためのア
クセス手段と、 (b)前記第1のバスを前記アクセス手段に相互接続す
るための手段と、 (c)前記第2のバスを前記アクセス手段に相互接続す
るための手段とを含む、直接メモリアクセス手段とを含
む、直接メモリアクセス手段。 (2)前記第2のバスを前記アクセス手段に相互接続す
るための前記手段が、前記アクセス手段に連結されて前
記第1のバスと前記第2のバスの間の可変幅データ転送
を適応させるためパッキングおよび送り込み回路網手段
をさらに含む、請求項1に記載の直接メモリアクセス手
段。 (3)複数個のチャネル手段が存在するときはいつでも
、前記チャネル手段へのアクセスに優先順位をつけるた
めの手段をさらに含む、請求項2に記載の直接メモリア
クセス手段。 (4)データ転送とアドレス転送の両方に対しパリテイ
をチェックするための手段をさらに含む、請求項3に記
載の直接メモリアクセス手段。 (5)前記チャネル手段の状態を制御および維持するた
めの1組の内部レジスタを含む、請求項1に記載の直接
メモリアクセス手段。 (6)前記第1のバスを前記アクセス手段に相互接続す
るための前記手段が、前記レジスタの組を初期設定する
ための手段をさらに含む、請求項5に記載の直接メモリ
アクセス手段。 (7)前記CPUにより前記アクセス手段の動作をプロ
グラム実行から結合解除するための手段をさらに含む、
請求項1に記載の直接メモリアクセス手段。 (8)前記アクセス手段がプログラム可能である、請求
項1に記載の直接メモリアクセス手段。 (9)前記アクセス手段が初期設定の間前記CPUによ
りプログラムされ、転送動作の間前記CPUとは無関係
にデータ転送アドレスを決定するようにする、請求項8
に記載の直接メモリアクセス手段。 (10)前記アクセス手段が、シーケンシャルでない転
送を実施するための手段をさらに含む、請求項1に記載
の直接メモリアクセス手段。 (11)前記アクセス手段が、 (a)前記第1のバスと前記第2のバスの間で転送され
るデータをバッファするためのキュー手段と、 (b)前記キュー手段の動作を制御するためのプログラ
ム可能内部レジスタ手段とを含む、請求項2に記載の直
接メモリアクセス手段。 (12)前記チャネル手段の各々が、 (a)前記第1のバスから前記アクセス手段に入力され
る語長データを選択的に転送するための、かつ前記パッ
キングおよび送り込み回路網手段から前記アクセス手段
にに入力されるパッキングされたデータを前記キュー手
段へと選択的に転送するための第1の多重化手段と、 (b)前記第1の多重化手段およ前記パッキングおよび
送り込み回路網手段に連結され、パッキングおよび送り
込み動作の間データをストアするための第1のパッキン
グ/送り込みレジスタ手段と、 (c)前記第1のレジスタ手段を介して前記パッキング
および送り込み回路網手段に送り込まれるように前記キ
ュー手段から出力されるデータを選択的に転送するため
の、かつ前記第1のレジスタ手段を介して前記パッキン
グおよび送り込み回路網から前記第1の多重化手段へ入
力されるパッキングされたデータを選択的に転送するた
めの第2の多重化手段とをさらに含む、請求項11に記
載の直接メモリアクセス手段。 (13)前記キュー手段においてバッファされるデータ
が前記CPUにより直接的に操作され得て、前記第1の
バスと前記キュー手段の間のデータ転送に関する待ち時
間を回避するようにする、請求項11に記載の直接メモ
リアクセス手段。 (14)前記アクセス手段が、前記第1のバスと前記第
2のバスの間の経路における転送速度制御手段をさらに
含む、請求項1に記載の直接メモリアクセス手段。 (15)バスの大きさ決めを実施するための手段をさら
に含む、請求項1に記載の直接メモリアクセス手段。 (16)チャネル手段動作を前記第1のバスに取付けら
れる前記デバイスの組の動作とオーバラップさせるため
の手段をさらに含む、請求項1に記載の直接メモリアク
セス手段。(17)データパッキングおよびパッキング
解除を実施するための手段をさらに含む、請求項1に記
載の直接メモリアクセス手段。 (18)転送されるワードにおけるデータパケット場所
をスワッピングするための手段をさらに含む、請求項1
に記載の直接メモリアクセス手段。 (19)データ転送動作を初期化および制御するように
働く、前記複数個の組の内部レジスタへおよびそれらか
らCPUおよびデバイスが発生した信号を搬送するため
に使用される複数個の信号経路をさらに含む、請求項6
に記載の直接メモリアクセス手段。 (20)前記複数個の信号経路が集積回路パッケージの
ピンを含む、請求項19に記載の直接メモリアクセス手
段。 (21)前記パッキングおよび送り込み回路網手段が、 (a)前記第2のバス上の多数のバイトおよびハーフワ
ード転送を前記第1のバス上のより少数のハーフワード
およびワード転送に変更するための手段を含む、前記第
2のバスから前記第1のバスへの転送の際にデータをパ
ッキングするための手段と、 (b)前記第1のバスへのパッキングされたデータの全
ワード転送を容易にするために、前記パッキングのため
の手段によりパッキングされるデータをバッファするた
めの手段をさらに含む、請求項2に記載の直接メモリア
クセス手段。 (22)前記パッキングおよび送り込み回路網手段が、 (a)前記第1のバス上の多数のワードおよびハーフワ
ード転送を前記第2のバス上のより多数のハーフワード
およびバイト転送に変換するための手段を含む、前記第
1のバスから前記第2のバスへの変換の際にデータを送
り込むための手段と、 (b)前記送り込むための手段が前記第2のバスへの転
送のために1度に1個バッファされたデータのハーフワ
ードおよびバイトを抽出することを可能にするために、
前記送り込むための手段により送り込まれるデータをバ
ッファするための手段とをさらに含む、請求項2に記載
の直接メモリアクセス手段。 (23)両方のバス上のアクセス間の同時実行で、前記
第1のバス上のアクセスの待ち時間および帯域幅を前記
第2のバス上のアクセスの待ち時間および帯域幅から結
合解除するための手段をさらに含む、請求項1に記載の
直接メモリアクセス手段。 (24)前記アクセス手段が、前記第1のバスと第2の
バスの間のブロックおよびパターン転送を指示するよう
に構成され得る、請求項1に記載の直接メモリアクセス
手段。 (25)2個の同期バス間でデータを転送するのに適す
る、請求項1に記載の直接メモリアクセス手段。 (26)2個の非同期バス間でデータを転送するのに適
する、請求項1に記載の直接メモリアクセス手段。 (27)制御器出力が診断目的で駆動されることを可能
にする動作のテストモードを有する、請求項1に記載の
直接メモリアクセス手段。 (28)マスタ/スレーブ関係で、それが接続される少
なくとも1個のデータ転送制御器と並列に動作可能であ
る、請求項1に記載のそのような直接メモリアクセス手
段。 (29)少なくとも1個の中央処理装置(CPU)を含
む第1の組の高性能デバイスが取付けられる第1のバス
へおよびそこから、かつ第2の組の比較的より低い性能
のデバイスが取付けられる第2のバスへおよびそこから
データを転送するための方法であって、 (a)少なくとも1個の直接メモリアクセスチャネル手
段を含み、前記バスに結合される直接メモリアクセス手
段を利用して、前記第1のバスと前記第2のバスの間で
データを転送するステップと、 (b)前記アクセス手段を介して前記第1のバスと第2
のバスの間でデータを転送する場合、前記チャネル手段
を介して、前記第1の組のデバイスの性能を前記第2の
組のデバイスの比較的より低い性能から隔離するステッ
プとを含む、方法。 (30)可変幅データ転送を適応させるように前記第2
のバスから前記第1のバスへ転送されるデータをパッキ
ングするステップをさらに含む、請求項29に記載の方
法。 (31)可変幅データ転送を適用させるように前記第1
のバスから前記第2のバスへ転送されるデータを送り込
むステップをさらに含む、請求項30に記載の方法。 (32)前記アクセス手段により前記第2のバスに転送
されるアドレス信号およびデータ信号を多重化するステ
ップをさらに含む、請求項31に記載の方法。 (33)複数個のチャネル手段が存在するときはいつで
も、前記チャネル手段へのアクセスに優先順序をつける
ステップをさらに含む、請求項29に記載の方法。 (34)データ転送とアドレス転送の両方に対しパリテ
イをチェックするステップをさらに含む、請求項29に
記載の方法。 (35)前記アクセス手段を制御するために使用される
1組のレジスタを初期設定するステップをさらに含む、
請求項29に記載の方法。 (36)前記アクセス手段を介して転送する場合の前記
隔離するステップが、前記CPUにより前記アクセス手
段の動作をプログラム実行から結合解除するステップを
さらに含む、請求項29に記載の方法。 (37)前記アクセス手段を介する前記隔離するステッ
プが、CPU動作とは無関係にデータ転送アドレスを決
定するように前記アクセス手段をプログラミングするス
テップをさらに含む、請求項29に記載の方法。 (38)前記アクセス手段を介する前記転送するステッ
プがシーケンシャルではなく実施される、請求項29に
記載の方法。 (39)前記チャネル手段を介する前記隔離するステッ
プが、プログラミングされたレジスタ手段の制御のもと
で、前記第1のバスと前記第2のバスの間で転送される
データをキュー手段へとバッファするステップをさらに
含む、請求項31に記載の方法。 (40)前記チャネル手段を介する隔離するステップが
、前記キュー手段においてバッファするために、前記第
2のバスから前記アクセス手段を介して転送されるパッ
キングされた語長データを有する前記第1のバスから前
記アクセス手段に入力される語長データを多重化するス
テップをさらに含む、請求項39に記載の方法。 (41)前記キュー手段においてバッファされるデータ
が、前記第1のバスと前記キュー手段の間でのデータ転
送と関連する待ち時間を回避するように前記CPUによ
り直接的に操作され得る、請求項39に記載の方法。 (42)前記チャネル手段を介する隔離するステップが
、前記第1のバスと前記第2のバスの間の転送速度を制
御するステップをさらに含む、請求項29に記載の方法
。 (43)バスの大きさ決めを実施するステップをさらに
含む、請求項29に記載の方法。(44)前記チャネル
手段を介して隔離する前記ステップが、チャネル手段動
作を前記第1のバスに取付けられる前記デバイスの組の
動作とオーバラップさせるステップをさらに含む、請求
項29に記載の方法。 (45)(a)前記第2のバスからの転送の際にデータ
をパッキングするステップをさらに含み、前記パッキン
グするステップが前記第2のバス上の多数のバイトおよ
びハーフワード転送を前記第1のバス上のより少数のハ
ーフワードおよびワード転送に変換するステップをさら
に含み、 (b)前記第1のバスへのパッキングされたデータの全
ワード転送を容易にするためにパッキングされたデータ
をバッファするステップをさらに含む、請求項29に記
載の方法。(46)前記第1のバスから前記第2のバス
への転送の際にデータを送り込むステップをさらに含み
、前記送り込むステップが、前記第1のバス上の多数の
ワードおよびハーフワード転送を前記第2のバス上のよ
り多数のハーフワードおよびバイト転送に変換するステ
ップをさらに含む、請求項29に記載の方法。 (47)前記変換するステップが、 (a)送り込まれるデータをバッファするステップと、 (b)前記第2のバスへの転送のために、1度に1個、
バッファされたデータのハーフワードおよびバイトを抽
出するステップとをさらに含む、請求項46に記載の方
法。 (48)両方のバス上のアクセス間の同時実行で、前記
第1のバス上のアクセスの待ち時間および帯域幅を前記
第2のバス上のアクセスの待ち時間および帯域幅から結
合解除するステップをさらに含む、請求項29に記載の
方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US133,094 | 1987-12-15 | ||
| US07/133,094 US4878166A (en) | 1987-12-15 | 1987-12-15 | Direct memory access apparatus and methods for transferring data between buses having different performance characteristics |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01231159A true JPH01231159A (ja) | 1989-09-14 |
Family
ID=22456973
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63316047A Pending JPH01231159A (ja) | 1987-12-15 | 1988-12-14 | データを転送するための方法およびそのための直接メモリアクセス手段 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4878166A (ja) |
| EP (1) | EP0321157A3 (ja) |
| JP (1) | JPH01231159A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0863425A (ja) * | 1994-08-02 | 1996-03-08 | Motorola Inc | インタバス・バッファ |
Families Citing this family (92)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4975832A (en) * | 1987-06-25 | 1990-12-04 | Teac Corporation | Microcomputer system with dual DMA mode transmissions |
| JPH0831074B2 (ja) * | 1987-11-25 | 1996-03-27 | 株式会社日立製作所 | チャネル制御方式 |
| US5317715A (en) * | 1987-12-15 | 1994-05-31 | Advanced Micro Devices, Inc. | Reduced instruction set computer system including apparatus and method for coupling a high performance RISC interface to a peripheral bus having different performance characteristics |
| US4980846A (en) * | 1988-04-07 | 1990-12-25 | Impact Systems, Inc. | Process and apparatus for controlling on-line a parameter of a moving sheet |
| JPH01258163A (ja) * | 1988-04-08 | 1989-10-16 | Fujitsu Ltd | ダイレクトメモリアクセス制御装置 |
| US5721884A (en) * | 1988-11-17 | 1998-02-24 | Canon Kabushiki Kaisha | Apparatus for combining and separating color component data in an image processing system |
| JP2712131B2 (ja) * | 1989-01-23 | 1998-02-10 | 株式会社日立製作所 | 通信制御装置 |
| US5187795A (en) * | 1989-01-27 | 1993-02-16 | Hughes Aircraft Company | Pipelined signal processor having a plurality of bidirectional configurable parallel ports that are configurable as individual ports or as coupled pair of ports |
| US5214767A (en) * | 1989-02-07 | 1993-05-25 | Compaq Computer Corp. | Full address and odd boundary direct memory access controller which determines address size by counting the input address bytes |
| US5088028A (en) * | 1989-04-07 | 1992-02-11 | Tektronix, Inc. | Lock converting bus-to-bus interface system |
| JP2655191B2 (ja) * | 1989-07-05 | 1997-09-17 | 三菱電機株式会社 | 演算処理装置 |
| JP2995752B2 (ja) * | 1989-07-21 | 1999-12-27 | 日本電気株式会社 | バスアーキテクチャ変換回路 |
| US5278974A (en) * | 1989-12-04 | 1994-01-11 | Digital Equipment Corporation | Method and apparatus for the dynamic adjustment of data transfer timing to equalize the bandwidths of two buses in a computer system having different bandwidths |
| US6751696B2 (en) | 1990-04-18 | 2004-06-15 | Rambus Inc. | Memory device having a programmable register |
| IL96808A (en) | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
| US6324120B2 (en) | 1990-04-18 | 2001-11-27 | Rambus Inc. | Memory device having a variable data output length |
| US5416907A (en) * | 1990-06-15 | 1995-05-16 | Digital Equipment Corporation | Method and apparatus for transferring data processing data transfer sizes |
| JP2502403B2 (ja) * | 1990-07-20 | 1996-05-29 | 三菱電機株式会社 | Dma制御装置 |
| EP0473059B1 (en) * | 1990-08-22 | 2000-05-31 | Sanyo Electric Co., Limited. | Communication control system |
| GB9019001D0 (en) * | 1990-08-31 | 1990-10-17 | Ncr Co | Work station including a direct memory access controller and interfacing means to microchannel means |
| US5664142A (en) * | 1990-10-01 | 1997-09-02 | International Business Machines Corporation | Chained DMA devices for crossing common buses |
| US5333294A (en) * | 1990-10-09 | 1994-07-26 | Compaq Computer Corporation | Configurable data width direct memory access device with a read address counter and a write address counter which increments the addresses based on the desired data transfer width |
| JP2601960B2 (ja) * | 1990-11-15 | 1997-04-23 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ処理方法及びその装置 |
| CA2060820C (en) * | 1991-04-11 | 1998-09-15 | Mick R. Jacobs | Direct memory access for data transfer within an i/o device |
| CA2065989C (en) * | 1991-06-07 | 1998-03-31 | Don Steven Keener | Personal computer data flow control |
| US5313610A (en) * | 1991-07-03 | 1994-05-17 | Picker International, Inc. | Direct memory access control device for use with a single n-bit bus with MOF the n-bits reserved for control signals and (n-m) bits reserved for data addresses |
| ATE165925T1 (de) * | 1991-07-30 | 1998-05-15 | Siemens Nixdorf Inf Syst | Schaltungsanordnung zum aufbau gleichartiger peripheriegeräteanschlussschaltungen als zugangsschaltungen für unterschiedliche peripheriegeräte zu einem gemeinsamen bus |
| EP0525233A1 (de) * | 1991-07-30 | 1993-02-03 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Verfahren und Schaltungsanordnung für den Datenaustausch zwischen einer Leitungs- und einer Speicherseite durch direkte Speicherzugriffsübertragung |
| US5459839A (en) * | 1991-09-05 | 1995-10-17 | International Business Machines Corporation | System and method for managing queue read and write pointers |
| JP2599539B2 (ja) * | 1991-10-15 | 1997-04-09 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 直接メモリ・アクセス装置及びルック・アヘッド装置 |
| EP0539782B1 (en) * | 1991-10-28 | 1999-04-21 | Eastman Kodak Company | Circuit for controlling data transfer from VME bus to SCSI disk drive |
| JP2836321B2 (ja) * | 1991-11-05 | 1998-12-14 | 三菱電機株式会社 | データ処理装置 |
| US5640599A (en) * | 1991-12-30 | 1997-06-17 | Apple Computer, Inc. | Interconnect system initiating data transfer over launch bus at source's clock speed and transfering data over data path at receiver's clock speed |
| US5887196A (en) * | 1991-12-30 | 1999-03-23 | Apple Computer, Inc. | System for receiving a control signal from a device for selecting its associated clock signal for controlling the transferring of information via a buffer |
| CA2080210C (en) * | 1992-01-02 | 1998-10-27 | Nader Amini | Bidirectional data storage facility for bus interface unit |
| JPH07122865B2 (ja) * | 1992-01-02 | 1995-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | バス動作の動作速度を制御するようにしたバス・インターフェースを有するコンピュータ・システム |
| US5309093A (en) * | 1992-03-16 | 1994-05-03 | Aderhold Daniel O | Electronic speed signal ratio measuring apparatus for controlling operations |
| JPH07504773A (ja) * | 1992-03-18 | 1995-05-25 | セイコーエプソン株式会社 | マルチ幅のメモリ・サブシステムをサポートするためのシステム並びに方法 |
| US5721954A (en) * | 1992-04-13 | 1998-02-24 | At&T Global Information Solutions Company | Intelligent SCSI-2/DMA processor |
| US5465332A (en) * | 1992-09-21 | 1995-11-07 | International Business Machines Corporation | Selectable 8/16 bit DMA channels for "ISA" bus |
| JPH0827773B2 (ja) * | 1992-10-23 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ経路を使用可能にする方法、装置およびデータ処理システム |
| IE922813A1 (en) * | 1992-11-12 | 1994-05-18 | Digital Equipment Internat Ltd | Digital data storage system |
| KR100295074B1 (ko) * | 1992-12-22 | 2001-09-17 | 리패치 | 응용주문형집적회로인에러정정코드메모리제어기 |
| US5499384A (en) * | 1992-12-31 | 1996-03-12 | Seiko Epson Corporation | Input output control unit having dedicated paths for controlling the input and output of data between host processor and external device |
| JP3608804B2 (ja) * | 1993-05-14 | 2005-01-12 | 株式会社ソニー・コンピュータエンタテインメント | バス制御装置 |
| US5448703A (en) * | 1993-05-28 | 1995-09-05 | International Business Machines Corporation | Method and apparatus for providing back-to-back data transfers in an information handling system having a multiplexed bus |
| US5550989A (en) * | 1993-05-28 | 1996-08-27 | International Business Machines Corporation | Bridge circuit that can eliminate invalid data during information transfer between buses of different bitwidths |
| US5717873A (en) * | 1993-09-30 | 1998-02-10 | Intel Corporation | Deadlock avoidance mechanism and method for multiple bus topology |
| US5805927A (en) * | 1994-01-28 | 1998-09-08 | Apple Computer, Inc. | Direct memory access channel architecture and method for reception of network information |
| 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 |
| US5828856A (en) * | 1994-01-28 | 1998-10-27 | Apple Computer, Inc. | Dual bus concurrent multi-channel direct memory access controller and method |
| TW321744B (ja) * | 1994-04-01 | 1997-12-01 | Ibm | |
| US5548780A (en) * | 1994-07-21 | 1996-08-20 | Apple Computer, Inc. | Method for semaphore communication between incompatible bus locking architectures |
| US5559969A (en) * | 1994-08-09 | 1996-09-24 | Unisys Corporation | Method and apparatus for efficiently interfacing variable width data streams to a fixed width memory |
| US5657455A (en) * | 1994-09-07 | 1997-08-12 | Adaptec, Inc. | Status indicator for a host adapter |
| US5623694A (en) * | 1994-10-03 | 1997-04-22 | International Business Machines Corporation | Aborting an I/O operation started before all system data is received by the I/O controller after detecting a remote retry operation |
| US5588120A (en) * | 1994-10-03 | 1996-12-24 | Sanyo Electric Co., Ltd. | Communication control system for transmitting, from one data processing device to another, data of different formats along with an identification of the format and its corresponding DMA controller |
| US5619726A (en) * | 1994-10-11 | 1997-04-08 | Intel Corporation | Apparatus and method for performing arbitration and data transfer over multiple buses |
| CA2160499A1 (en) * | 1994-11-30 | 1996-05-31 | Patrick Maurice Bland | Bridge between buses in a system having a plurality of buses with different memory addressing capacities and having an arrangement for reallocating memory segments within the system memory map |
| WO1997044739A1 (en) * | 1996-05-23 | 1997-11-27 | Advanced Micro Devices, Inc. | Apparatus for converting data between different endian formats and system and method employing same |
| US6523080B1 (en) * | 1996-07-10 | 2003-02-18 | International Business Machines Corporation | Shared bus non-sequential data ordering method and apparatus |
| US5857080A (en) * | 1996-09-10 | 1999-01-05 | Lsi Logic Corporation | Apparatus and method for address translation in bus bridge devices |
| US6065084A (en) * | 1996-12-31 | 2000-05-16 | Silicon Graphics, Inc. | Programmable packer and unpacker with ditherer |
| US5822766A (en) * | 1997-01-09 | 1998-10-13 | Unisys Corporation | Main memory interface for high speed data transfer |
| US5970253A (en) * | 1997-01-09 | 1999-10-19 | Unisys Corporation | Priority logic for selecting and stacking data |
| US5966451A (en) * | 1997-02-20 | 1999-10-12 | Kabushiki Kaisha Toshiba | Distributed network computing system, and data exchange apparatus and method and storage medium used in this system |
| US6055597A (en) * | 1997-10-30 | 2000-04-25 | Micron Electronics, Inc. | Bi-directional synchronizing buffer system |
| US6081851A (en) * | 1997-12-15 | 2000-06-27 | Intel Corporation | Method and apparatus for programming a remote DMA engine residing on a first bus from a destination residing on a second bus |
| US6301629B1 (en) * | 1998-03-03 | 2001-10-09 | Alliance Semiconductor Corporation | High speed/low speed interface with prediction cache |
| US6266715B1 (en) * | 1998-06-01 | 2001-07-24 | Advanced Micro Devices, Inc. | Universal serial bus controller with a direct memory access mode |
| JP2000020490A (ja) * | 1998-07-01 | 2000-01-21 | Fujitsu Ltd | 遠隔手続き呼出し機構またはオブジェクトリクエストブローカ機構を有する計算機、データ転送方法、および転送方法記憶媒体 |
| US6237068B1 (en) | 1998-08-18 | 2001-05-22 | International Business Machines Corp. | System for multi-volume, write-behind data storage in a distributed processing system |
| US6216209B1 (en) | 1998-08-18 | 2001-04-10 | International Business Machines Corporation | Multi-volume, write-behind data storage in a distributed processing system |
| US6223262B1 (en) | 1998-08-18 | 2001-04-24 | International Business Machines Corporation | Method for multi-volume, write-behind data storage in a distributed processing system |
| GB2365545B (en) * | 1999-12-23 | 2004-06-02 | Ibm | Data processing system with master and slave processors |
| EP1316891B1 (de) * | 2001-12-03 | 2007-10-10 | Infineon Technologies AG | Datenübertragungseinrichtung |
| JP2004164579A (ja) * | 2002-09-24 | 2004-06-10 | Sharp Corp | データバス幅変換装置およびデータ処理装置 |
| EP1480224A1 (en) * | 2003-05-22 | 2004-11-24 | STMicroelectronics S.r.l. | A semiconductor memory with a multiprotocol serial communication interface |
| WO2005048115A2 (en) * | 2003-11-13 | 2005-05-26 | Koninklijke Philips Electronics N.V. | Electronic data processing circuit that transmits packed words via a bus |
| US7673164B1 (en) * | 2004-12-13 | 2010-03-02 | Massachusetts Institute Of Technology | Managing power in a parallel processing environment |
| US7624248B1 (en) | 2006-04-14 | 2009-11-24 | Tilera Corporation | Managing memory in a parallel processing environment |
| US7853754B1 (en) | 2006-09-29 | 2010-12-14 | Tilera Corporation | Caching in multicore and multiprocessor architectures |
| TWI346873B (en) * | 2007-03-27 | 2011-08-11 | Ind Tech Res Inst | A direct memory access controller with dynamic data width adjustment, method thereof, and computer accessible storage media to store program thereof |
| JP2010287150A (ja) * | 2009-06-15 | 2010-12-24 | Sanyo Electric Co Ltd | データ転送回路 |
| US8255593B2 (en) * | 2009-09-29 | 2012-08-28 | Oracle America, Inc. | Direct memory access with striding across memory |
| US8443129B1 (en) * | 2010-07-21 | 2013-05-14 | Xilinx, Inc. | Method and apparatus for implementing a data bus interface |
| US8719463B2 (en) * | 2010-11-16 | 2014-05-06 | Taiwan Semiconductor Manufacturing Company, Ltd. | Processor with tightly coupled smart memory unit |
| US9183041B2 (en) * | 2012-09-21 | 2015-11-10 | International Business Machines Corporation | Input/output traffic backpressure prediction |
| US10303618B2 (en) | 2012-09-25 | 2019-05-28 | International Business Machines Corporation | Power savings via dynamic page type selection |
| KR102774563B1 (ko) | 2018-11-30 | 2025-03-04 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 내 자원 사용에 대응하여 데이터 패스를 동적 할당하는 방법 및 장치 |
| US10642766B1 (en) | 2019-07-15 | 2020-05-05 | Daniel Kilsdonk | Facilitating sequential data transformations via direct memory access |
| US12380047B2 (en) * | 2023-07-14 | 2025-08-05 | Qualcomm Incorporated | Expanded data link width for main band chip module connection in alternate modes |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4300194A (en) * | 1979-01-31 | 1981-11-10 | Honeywell Information Systems Inc. | Data processing system having multiple common buses |
| US4310879A (en) * | 1979-03-08 | 1982-01-12 | Pandeya Arun K | Parallel processor having central processor memory extension |
| JPS564854A (en) * | 1979-06-22 | 1981-01-19 | Fanuc Ltd | Control system for plural microprocessors |
| US4344130A (en) * | 1979-09-26 | 1982-08-10 | Sperry Corporation | Apparatus to execute DMA transfer between computing devices using a block move instruction |
| JPS5779551A (en) * | 1980-11-06 | 1982-05-18 | Nec Corp | Information transfer device |
| US4400772A (en) * | 1980-12-30 | 1983-08-23 | International Memories, Inc. | Method and apparatus for direct memory access in a data processing system |
| JPS58501602A (ja) * | 1981-09-18 | 1983-09-22 | クリスチャン ロプシング エ−・エス | マルチプロセッサ・コンピュ−タシステム |
| EP0079140A1 (en) * | 1981-10-15 | 1983-05-18 | Convergent Technologies Inc. | Multiple computing systems and communication bus structure therefor |
| US4604683A (en) * | 1984-12-10 | 1986-08-05 | Advanced Computer Communications | Communication controller using multiported random access memory |
-
1987
- 1987-12-15 US US07/133,094 patent/US4878166A/en not_active Expired - Lifetime
-
1988
- 1988-12-09 EP EP19880311681 patent/EP0321157A3/en not_active Withdrawn
- 1988-12-14 JP JP63316047A patent/JPH01231159A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0863425A (ja) * | 1994-08-02 | 1996-03-08 | Motorola Inc | インタバス・バッファ |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0321157A3 (en) | 1991-03-20 |
| US4878166A (en) | 1989-10-31 |
| EP0321157A2 (en) | 1989-06-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5142672A (en) | Data transfer controller incorporating direct memory access channels and address mapped input/output windows | |
| US4947366A (en) | Input/output controller incorporating address mapped input/output windows and read ahead/write behind capabilities | |
| US4878166A (en) | Direct memory access apparatus and methods for transferring data between buses having different performance characteristics | |
| US5317715A (en) | Reduced instruction set computer system including apparatus and method for coupling a high performance RISC interface to a peripheral bus having different performance characteristics | |
| US4851990A (en) | High performance processor interface between a single chip processor and off chip memory means having a dedicated and shared bus structure | |
| US5191656A (en) | Method and apparatus for shared use of a multiplexed address/data signal bus by multiple bus masters | |
| US5524268A (en) | Flexible processor-driven control of SCSI buses utilizing tags appended to data bytes to determine SCSI-protocol phases | |
| CN1069426C (zh) | 信息处理系统 | |
| US6085278A (en) | Communications interface adapter for a computer system including posting of system interrupt status | |
| US5471488A (en) | Clock fault detection circuit | |
| US5386517A (en) | Dual bus communication system connecting multiple processors to multiple I/O subsystems having a plurality of I/O devices with varying transfer speeds | |
| US6321286B1 (en) | Fault tolerant computer system | |
| US5544346A (en) | System having a bus interface unit for overriding a normal arbitration scheme after a system resource device has already gained control of a bus | |
| AU628407B2 (en) | High speed bus with virtual memory data transfer capability | |
| US6415348B1 (en) | Flexible microcontroller architecture | |
| US5274795A (en) | Peripheral I/O bus and programmable bus interface for computer data acquisition | |
| EP0606102A1 (en) | An input output interface controller connecting a synchronous bus to an asynchronous bus and methods for performing operations on the buses | |
| US7865646B1 (en) | Sharing of functions between an embedded controller and a host processor | |
| JPH0954746A (ja) | コンピュータシステム | |
| US6567881B1 (en) | Method and apparatus for bridging a digital signal processor to a PCI bus | |
| US6425071B1 (en) | Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus | |
| US5535333A (en) | Adapter for interleaving second data with first data already transferred between first device and second device without having to arbitrate for ownership of communications channel | |
| WO2004064286A2 (en) | Flow-through register | |
| US5809260A (en) | Burst mode data transmission retry of previously aborted block transfer of data | |
| EP0362425B1 (en) | Input/output controller incorporating address mapped input/output windows and read ahead/write behind capabilities |