JPH09198341A - データ処理システム - Google Patents

データ処理システム

Info

Publication number
JPH09198341A
JPH09198341A JP9002099A JP209997A JPH09198341A JP H09198341 A JPH09198341 A JP H09198341A JP 9002099 A JP9002099 A JP 9002099A JP 209997 A JP209997 A JP 209997A JP H09198341 A JPH09198341 A JP H09198341A
Authority
JP
Japan
Prior art keywords
data
bus
module
pci
address
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
Application number
JP9002099A
Other languages
English (en)
Inventor
Randall Don Briggs
ランダル・ドン・ブリッグス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH09198341A publication Critical patent/JPH09198341A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】PCIバスと複数の入出力デバイス(I/O)
を接続する低コストのインターフェースを提供する。 【構成・作用】PCIバス22と複数のI/O30の間
にはコントローラ62が介在し、これらのI/OはAS
ICバス54に接続される。PCIバスからアドレス及
びコマンドが与えられると、モジュール56〜60がア
ドレスをデコードし、どのI/Oがアクセスされている
かを検出してコントローラに通知する。これによりコン
トローラはアクセスされているI/Oの専用コマンドラ
インを付勢してそのI/Oにアクセスを通知し、所要動
作を行わせる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ処理システ
ムの内部のモジュールとPCI(Peripheral Component
Interface)バスを相互接続する回路アーキテクチャに関
し、詳細には、単一のインタフェース構造によってPC
Iバスを複数の多機能装置空間に接続できるようにする
回路アーキテクチャに関する。
【0002】
【従来技術及びその問題点】PCIインタフェースは、
急速にコンピュータ関連装置における入出力機能用の好
ましいインタフェースになりつつある。PCI仕様は業
界標準であり、外部装置とデータ処理機器中の既存の内
部バス構造を相互接続するための信号レベル、プロトコ
ル、回路構成に関する詳細を提示するものである。PC
I仕様によって、それぞれ、少なくとも1つの機能モジ
ュールを含む構成空間を作成することができ、PCIバ
ス上の入力アドレスを構成空間内の機能モジュールにマ
ッピングすることができる。一般に、各構成空間は1つ
の機能モジュールに制限される。
【0003】PCIインタフェースを実装するにはかな
りの論理回路が必要なので、PCIバスと複数の機能モ
ジュールとの間の通信ができるようにする単一のインタ
フェースを提供することが望ましい。PCI仕様には多
機能を持つことができるという能力が記載されている
が、そのようなインタフェース機能の実装に関する詳細
はほとんど提示されていない。それにもかかわらず、
(PCI仕様によって使用可能にされるように)複数の
構成空間を使用可能にするだけでなく、複数の機能とP
CI機能とのインタフェースをとれるようにする低コス
トのPCIインタフェースが要求されている。
【0004】従来技術には、データ処理システムの内部
モジュール機能とPCIバスとの間のインタフェース機
能を提供する多くの手法が存在している。1つの解決策
では、各入出力機能がそれ自体のPCIインタフェース
を有し、単に各入出力機能を個別のインタフェースと共
に単一の集積回路上に配置するだけである。
【0005】LSI Logic,Inc.は、内部コンピュータ機能
をPCIバスへインタフェースする"PCI-32 FlexCore"
アーキテクチャを提供している。FlexCore製品は内部で
IntelCorp.の486"VL"バスとのインタフェースをと
る。FlexCore製品のサイズは10000ゲートないし4
3000ゲートの範囲であり、そのため、インタフェー
ス問題に対する複雑で比較的高価な解決策である。Flex
Core製品は構成空間内の複数の機能モジュールへのアク
セスをサポートするようであるが、これをどのように行
うかに関する詳細は知られていない。
【0006】Synopsys Corporationは"DesignWare PCI
Macro Set"を提供している。Synopsys Corporationの製
品は多数のコードブロックを備え、これらのコードブロ
ックは、コードで表される機能設計を自分の設計に組み
込む顧客に販売されている。その結果、顧客の回路との
インタフェースは、明確には定義されておらず、構成内
の複数のモジュール機能は、結果として得られるインタ
フェースではサポートされない。複数の入出力機能にア
クセスする場合、それらの機能は単一の構成空間を共用
しなければならない。
【0007】AMCC Corporationは、組込型マイクロプロ
セッササブシステムとPCIバスのインタフェースをと
る方法を提供する”アドオンアプリケーション用PCI
コントローラ”を提供している。この製品は、マイクロ
プロセッサの内部にない複数の機能にアクセスするため
に使用される非マイクロプロセッサバスを対象としたも
のではない。
【0008】
【概要】データ処理システムは、プロセッサと他の構成
要素を結合し、標準プロトコルに従って動作するように
構成された第1のバスを含む。それぞれデータ処理シス
テムによって必要とされる機能を実行する複数の機能モ
ジュールが第2のバスに結合される。第2のバスは、各
機能モジュール用の専用読出し/書込みイネーブル線
と、全ての機能モジュールに共通に結合された複数のデ
ータ線とを含む。ブリッジモジュールは、第1のバスと
第2のバスとの間に結合されたコントローラを含む。コ
ントローラは、プロセッサから受け取った読出しコマン
ドまたは書込みコマンドに応答して、受け取ったコマン
ドによって指定された機能モジュールに結合された読出
し/書込みイネーブル線に論理信号を印加する。機能モ
ジュールは、必要に応じて、要求されたデータを第2の
バスのデータ線上に提供し、あるいは第2のバスから機
能モジュール内にデータを受け取ることによって応答す
る。各機能モジュールごとの専用読出し/書込みイネー
ブル線によって、第1のバスからのコマンド入力の特殊
な構成を必要とせずに、複数の機能モジュールを第2の
バスに取り付け制御することができる。機能モジュール
との間の直接メモリアクセスも可能になる。
【0009】
【実施例】図1を参照し、レーザプリンタあるいはイン
クジェットプリンタのいずれかであってよいプリンタに
関連してデータ処理システム10について説明する。し
かし、本発明が、PCIなど広く受け入れられている標
準プロトコルを満たす入出力バスを使用するデータ処理
システムにも同様に適用できることを理解されたい。
【0010】データ処理システム10は、ランダムアク
セスメモリ(RAM)14及び読出し専用メモリ(RO
M)16に結合された中央演算処理装置(CPU)12
を備える。RAM14とROM16は共に、プロセッサ
バス18によってCPU12に接続される。バス18は
CPU12を複数のアドオンメモリスロット20にも結
合する。
【0011】入出力バス22は、CPU12をASIC
24に結合するように構成される。ASIC24は、プ
リンタ10を動作できるようにするためにプリンタ10
中の必要な動作を実行する複数の機能モジュールを備え
る。機能モジュールは、マスタ構成とスレーブ構成の両
方で動作する。スレーブ構成では、機能モジュールは、
定義された機能を実行するようにCPU12からのコマ
ンド入力によって制御される。このコマンドに応答し
て、機能モジュールは、別々の出力線26上で、プリン
タシステム10の接続されたそれぞれのハードウェア構
成要素に信号を発行する。
【0012】マスタ構成では、機能モジュールは、直接
メモリアクセス(DMA)動作を実行する。直接メモリ
アクセス動作は、CPU12中のデータの中間記憶域を
バイパスし、必要に応じて、RAM14に直接データが
書き込まれ、あるいはRAM14から直接データが読み
出されるようにする。
【0013】PCIバス22は、CPU12及びASI
C24を複数の入出力カードスロット28と相互接続
し、このスロットでプリンタ10に装置を組み込むこと
ができる。PCIバス22は好ましくは、PCIプロト
コルなど一般に受け入れられている標準プロトコルに従
って動作するように構成される。上で指摘したように、
PCIインタフェースアーキテクチャは、データ処理シ
ステムとアドオン装置との間の入出力通信向けにデータ
処理業界で広く受け入れられている。
【0014】ASIC24には、それに組み込まれた複
数の機能モジュールのそれぞれを接続するASICバス
構造が組み込まれる。そのASICバス構造は、本発明
を組み込んだインタフェースを介してPCIバス22に
結合される(ASICバス構造については下記で詳しく
説明する)。しかし、ASIC24の構造の詳細を考慮
する前に、PCIアーキテクチャを簡単に紹介する。
【0015】あらゆるPCIデータ転送には、イニシエ
ータつまり始動装置とターゲットつまり対象装置の2つ
の参加者がいる。イニシエータつまりバスマスタとは転
送を開始する装置である。ターゲットつまりスレーブと
はデータ転送を実行するために現在イニシエータによっ
てアドレスされている装置である。あらゆるPCIトラ
ンザクションは、イニシエータがターゲット装置及びト
ランザクションのタイプを識別するアドレスフェーズで
始まる。ターゲット装置は、ターゲット装置へ割り当て
られた範囲内のアドレスをPCIバス22上のPCIア
ドレス線を駆動して出力することによって識別される。
同時に、イニシエータは、コマンドタイプをPCIバス
22を駆動して出力することによってトランザクション
のタイプを識別する。
【0016】インタフェースASIC24内のインタフ
ェース機能は、アドレスバス上のアドレスをデコード
し、コマンドタイプを判定し、更に、要求されたターゲ
ットモジュールが要求された態様で応答できるようにす
る処置をとる。アドレスフェーズの後にデータフェーズ
が開始され、イニシエータが必要なデータをPCIバス
22を駆動して出力する。データフェーズ中に送られる
データの量は、データフェーズ中にイニシエータによっ
てアサートされるいくつかの信号によって決定される。
【0017】図2を参照し、ASIC24の詳細を更に
説明する。PCIアーキテクチャでは、PCIバス22
上に現れるアドレスによって独立にアドレスできる機能
モジュールの複数の構成空間を確立することができる。
ASIC24内には、プリンタ10の動作に必要な複数
の機能モジュールがある。ビデオモジュール30はプリ
ントエンジン(図示せず)にビデオラスタストリームを
提供する。NVRAM機能モジュール32はシリアル非
揮発性RAM(NVRAM)へのアクセスを提供する。
エンジンステータスモジュール34はプリントエンジン
の状態に関するステータス情報を提供する。PLLモジ
ュール36はプリンタ10内の諸機能にクロッキング信
号を出力できるようにする1つまたは複数のフェーズロ
ックループを含む。タイマモジュール38はタイミング
機能を提供する。存在検出モジュール40は電源投入時
にプリンタ10の構成を判定するために使用される。具
体的には、存在検出モジュール40はCPUバス18上
でどんな装置が相互接続されているかを判定する。圧縮
/伸張機能モジュール42は、必要に応じて、プリント
データを圧縮し伸張するために使用される。割込み機能
モジュール44はASICバス54上に現れるシステム
割込みアクションを処理する。パラレルインタフェース
モジュール46はプリンタ10とホストプロセッサを相
互接続するために使用され、割込み/パラレルモジュー
ル48は、パラレルインタフェースポート機能モジュー
ル46を通じて割込みを処理するために使用される。同
様に、シリアルポートモジュール50はホストプロセッ
サとのシリアルポートを提供し、割込み/シリアルモジ
ュール52はシリアルポートについての割込みを処理す
る。
【0018】全ての前述の機能モジュールは、データ線
とアドレス線と制御線を共に含むASICバス54を介
して相互接続される。ASICバス54には複数の構成
空間モジュール56、58、60も接続される。各構成
空間モジュールは、定義された構成空間内に含まれる1
つまたは複数の機能モジュールのアドレスを識別する。
従って、PCI機能1内の機能モジュールのアドレスは
構成空間モジュール56内にリストされ;PCI機能2
に割り当てられた機能モジュールのアドレスは構成空間
モジュール58内にリストされ、PCI機能領域3内の
機能モジュール50及び52のアドレスは構成空間モジ
ュール60内にリストされる。
【0019】1つの構成空間に割り当てられた機能モジ
ュールのアドレスをPCIバス22を介して受け取った
場合、それぞれの構成空間モジュールは、ASICバス
54にも結合されたコントローラ62に”ヒット”出力
を提供する。コントローラ62は、”ヒット”信号に応
答して、アドレスされた機能モジュールへの読出し/書
込み線をイネーブルにする。具体的には、ASICバス
54に結合された各機能モジュールは、(1本または複
数本の線を設けた)専用読出し/書込み線を介してコン
トローラ62にも結合される。従って、コントローラ6
2は、特定的にアドレスされた機能モジュールへの専用
読出し/書込み線上に信号レベルを印加し、それによっ
てそのモジュールが直ちにデータを読み出しあるいは書
き込むことができる状態にすることができるようになさ
れる。従って、データ書込み動作では、あるモジュール
への読出し/書込み線に書込み信号が印加されると、そ
のモジュールは、ASICバス54を介して他のアドレ
シング動作を実行する必要なしに、直ちに後でASIC
バス54上に印加されるデータをストアする(書き込
む)ことができる。機能モジュールが外部からアドレス
できる複数のレジスタを含むとき、コントローラ62か
らの出力は、それぞれの機能モジュールがASICバス
54を介してデータを受け取ったときに、そのアドレス
可能なレジスタ内に受け取ったデータを記憶できるよう
にするアドレス値も含む。モジュール専用読出し/書込
み線に印加された読出し信号に応答して同様な動作が実
行される。そのような状況では、選択されたモジュール
は、それ以上のアドレシング動作の必要なしに要求され
たデータをASICバス54に直ちに印加する。
【0020】図3は、コントローラ62及び構成空間モ
ジュール56、58、60の詳細を示す。アドレス/デ
ータレジスタ70は、ASICバス54とPCIバス2
2との間のデータ線とアドレス線の両方に対するインタ
フェースバッファリングを行う。コマンド/バイトイネ
ーブルレジスタ72は、それぞれのASICバス54及
びPCIバス22からコマンドデータとバイトイネーブ
ルデータの両方を受け取り、そのデータを一方のバスか
ら他方のバスにバッファするように働く。
【0021】図3に示した装置の詳細な動作を説明する
前に、下で、インタフェースシステムの動作で使用され
る各インタフェース制御信号について説明する。
【0022】PCIインタフェース制御信号
【0023】FRAME(フレーム):この信号は、マ
スタによって生成され、ターゲットへ送られる。FRA
MEは、イニシエータが駆動して出力し、トランザクシ
ョンの開始(最初にアサートされたとき)及び継続を示
す。トランザクションは、イニシエータとアドレスされ
たターゲットとの間の1回または複数のデータ転送で構
成される。
【0024】TRDY:”Target ready
(ターゲット準備完了)”は、現在アドレスされている
ターゲットが駆動して出力する。この信号は、ターゲッ
トが現データ転送を完了する準備が完了したときに挿入
される。データ転送は、クロック信号の立上りに、ター
ゲットがTRDYをアサートし、マスタがIRDY(イ
ニシエータ準備完了)をアサートしたときに完了する。
読出し動作時には、TRDYがアサートされることは、
ターゲットがデータバス上に有効なデータを駆動して出
力していることを示す。書込み時には、TRDYがアサ
ートされることは、ターゲットがマスタからデータを受
け入れる準備が完了したことを示す。
【0025】IRDY:”Initiator rea
dy(イニシエータ準備完了)”は、現バスマスタ(ト
ランザクションのイニシエータ)が駆動して出力する。
書込み動作時には、IRDYがアサートされることは、
イニシエータがデータバス上に有効なデータを駆動して
出力していることを示す。読出し時には、IRDYがア
サートされることは、イニシエータが、現在アドレスさ
れているターゲットからデータを受け入れる準備が完了
したことを示す。
【0026】STOP:ターゲットは、現データ転送に
関して進行中のトランザクションをイニシエータに停止
させたいことを示すためにSTOPをアサートする。
【0027】DEVSEL:”Device Sele
ct(装置選択)”は、ターゲットがアドレスをデコー
ドしたときにターゲットによってアサートされる。この
信号は現イニシエータへの入力として働く。
【0028】ASICバス信号
【0029】ADDR(31:2):Address
(アドレス)。この信号は、転送中の32ビットワード
のアドレスを含む。機能モジュールは、スレーブとして
動作しているときにはアドレスを受け取り、マスタとし
て動作しているときにはアドレスを出力する。スレーブ
として動作するとき、アドレスは、機能モジュールのR
d_Enable信号またはWr_Enable信号が
アサートされているときに有効である。マスタとして動
作するとき、アドレスはnREQがアサートされている
ときに有効である。
【0030】Data(31:0):Data(デー
タ)。データは、書込みの場合はマスタが駆動してスレ
ーブへ出力され、読出しの場合にはスレーブが駆動して
マスタへ出力される。機能モジュールは、スレーブとし
ては、Rd_Enable信号がアサートされたときに
データを送り、Wr_Enable信号がアサートされ
たときにデータを受け取る。機能モジュールは、マスタ
としては、nPCIRdyがアサートされることによっ
てデータが受け入れられることが示されるまで書込み用
のデータを送り、有効な読出しデータが返されたことを
示すnPCIRdyがアサートされたときにデータを受
け入れる。
【0031】nBE(3:0):Byte Enabl
e(バイトイネーブル)。PCIバスで使用されるのと
同じbyte enableがこのインタフェースでも
維持される。byte enableは、マスタが駆動
してスレーブへ出力される。
【0032】Rd_Enable:Read Enab
le(読出しイネーブル)。この信号は、PCIバスが
マスタでありASICがスレーブであるときに機能モジ
ュール中のレジスタの読出しを行うための信号である。
Rd_Enable信号がアサートされると、それはa
ddress及びbyte enableが有効であ
り、機能モジュールが要求されたデータを返さなければ
ならないことを示す。
【0033】Wr_Enable:Write Ena
ble(書込みイネーブル)。この信号は、PCIバス
22がマスタでありASICバス54がスレーブである
ときに機能モジュール中のレジスタに書込みを行うため
の信号である。Wr_Enable信号がアサートされ
ると、それはaddress及びbyte enabl
eが有効であり、機能モジュールが提供されたデータを
受け入れなければならないことを示す。
【0034】nPCIRdy:PCI Interfa
ce Ready(PCIインタフェース準備完了)。
これは、PCIインタフェースがデータを転送する準備
が完了したことを知らせるものである。(たとえば、直
接メモリアクセス読出しにおける)データの受信時に、
この信号はそのデータが有効であることを意味する。
(たとえば、直接メモリアクセス書込みにおける)デー
タの送信時に、この信号はインタフェースがデータを受
け取る準備ができていることを意味する。
【0035】nRetry:Retry(再試行)。こ
の信号は、現DMA書込みバーストをASICバス上で
最後に受け入れられたワードから再開しなければならな
いことを示す。
【0036】nAbort:Abort(中止)。この
信号は、ASICバスマスタトランザクションがPCI
バス上でエラー状態に出会ったときにアサートされる。
PCIバス上で実行されたトランザクションがターゲッ
トによって応答されず、あるいはターゲットがターゲッ
ト中止シーケンスで応答した。
【0037】nREQ:Request(要求):この
信号は、この内部機能モジュールがバスを使用したいこ
とをアービトレーション機能モジュールに知らせる。あ
らゆるマスタはそれ自体のnREQを有する。
【0038】nGnt:Grant(許可)。この信号
は、ASICバスへのアクセスが許可されたことを機能
モジュールに知らせる。あらゆるマスタはそれ自体のn
Gntを有する。
【0039】図3に戻って、コントローラ62は、PC
Iバス22とASICバス54との間のインタフェース
機能の全体的な制御を実行する。コントローラ62は、
制御線のうちで、とりわけ、PCIバス22のFRAM
E線、IRDY線、TRDY線、STOP線、DEVS
EL線に結合される。同様に、コントローラ62は、R
d_Enable線74及びWr_Enable線76
を介して、ASICバス54に接続された各機能モジュ
ールに結合される。アドレス/データレジスタ70は、
31本のアドレス線を介してPCIバス22に接続さ
れ、コマンド/バイトイネーブルレジスタ72は、コマ
ンドデータとバイトイネーブルデータの両方を運ぶ3本
の線を介してPCIバス22に結合される。アドレス/
データレジスタ70は、複数のアドレス線及びデータ線
80を介してASICバス54にも結合され、コマンド
/バイトイネーブルレジスタ72は、選択された機能モ
ジュールへコマンドデータ及びバイトイネーブルデータ
を送るために複数の線82を介してASICバス54に
接続される。
【0040】前述の線を適切に条件付けることによっ
て、選択された機能モジュールをコマンドに応答させ、
コマンドが必要とする動作を実行させることができる。
一旦Rd_Enable線またはWr_Enable線
を条件付けすれば、接続された機能モジュールからの確
認応答は必要とされない。なぜなら、機能モジュールが
必要な態様で応答することは分かっているからである。
【0041】各構成空間モジュール56、58、60
は、、コントローラ62に接続されたWr_Enabl
e線及びRd_Enable線も含み、更に、全ての残
りの機能モジュールと同様にASICバス54に結合さ
れる。従って、各構成空間モジュール56、58、60
は、他の全ての機能モジュールと同様に操作される。各
構成空間モジュールの1つの機能は、レジスタ70から
受け取ったアドレスを調べて、アドレスデータが特定の
構成空間のベースアドレスと合致するかどうかを判定す
ることである。もし合致した場合、構成空間モジュール
は、構成空間内に割り当てられた機能モジュールがアド
レスされたことを示すヒット信号を発行してコントロー
ラ62に戻す。これに応答して、コントローラ62は、
そのアドレスの小さなビット群を調べ、どの機能モジュ
ールがアドレスされたかを判定し、受け取ったコマンド
に応じて、その機能モジュールへのRd_Enable
線とWr_Enable線のどちらかを励起する。
【0042】以下で、図3のインタフェース回路の機能
について、(i)機能モジュールへの単一ワード書込み、
(ii)機能モジュールからの単一ワード読出し、(iii)機
能モジュールからRAMへの単一ワード直接メモリアク
セス書込み、(iv)RAMから機能モジュールへの単一ワ
ード直接メモリアクセス読出しに関連して説明する。
【0043】図4の波形図に目を向けて、単一ワード書
込み動作について説明する。最初に、CPU12が、A
SICバス54に接続された機能モジュールのうちの1
つの中のレジスタにデータを書き込むと仮定する。従っ
て(図4を見よ)、CPU12は、フレームパルス90
を発行し、それに続いて、機能モジュールへデータを送
る準備が完了したことを示すinitiator re
ady(IRDY)信号92を発行する。CPU12は
また、アドレスデータ94及び書込みコマンド96をP
CIバス22上で駆動して出力する。
【0044】コントローラ62は、アドレスデータ及び
コマンドデータを受け取ってレジスタ70及び72にラ
ッチすると、PCIバス22の一部を形成する制御線上
でtarget ready(TRDY)信号及びde
vice select(DEVSEL)信号を発行す
る。コマンド/バイトイネーブルレジスタ72がコマン
ドを受け取ると、そのコマンドはラッチされた後コント
ローラ62にも送られ、そこで解釈されコントローラ6
2の動作を制御するために使用される。同時に、コント
ローラ62は、受け取ったアドレスと記憶されているベ
ースアドレスの比較の結果として「ヒット」が生じたこ
とを構成空間モジュール56、58、60のうちの一つ
から知らされているので、選択された機能モジュールへ
の書込みイネーブル線(Wr_Enable)をアサー
トする。更に、コントローラ62は、アドレスデータ、
書き込むべきデータ及びバイトイネーブルデータをAS
ICバス54に印加する。
【0045】Wr_Enable信号に応答して、アド
レスされた機能モジュールが、ASICバス54から得
たデータをラッチし、手順が終了する。機能モジュール
に必要なアドレスデータのデコードは、書き込まれるべ
きデータを機能モジュール中のどのレジスタが(複数の
レジスタがある場合)受け取るかを判定することだけで
あることに留意されたい。機能モジュールはWr_En
able信号には確認応答せず、書込み動作が首尾良く
完了したと仮定される。
【0046】図5を参照し、単一ワード読出し動作につ
いて説明する。この動作の場合、機能モジュールに記憶
されているデータが取り出され、たとえばCPU12中
のレジスタに記憶される。この場合もCPU12はフレ
ーム信号を発行し、その直後に、PCIバス22のアド
レス線及びコマンド線を駆動してデータを読み出すべき
機能モジュールのアドレス及びReadコマンドを出力
する。アドレスデータ及びコマンドデータは、ASIC
24中のレジスタ70及び72にバッファされる。コン
トローラ62は、構成空間モジュール56、58、60
のうちの1つからのヒットに応答して、読み出すべきデ
ータを保持するアドレスされた機能モジュールへのRd
_Enable線をアサートする。同時に、ASICバ
ス54が駆動されてアドレスデータが出力される。アド
レスされた機能モジュールは、ASICバス54のデー
タ線を駆動して要求されたデータを出力することによっ
て応答する。そのデータはレジスタ72におけるバイト
イネーブルデータと共にレジスタ70にラッチされる。
その後に続くクロック信号で、アドレスされたデータが
アドレスデータレジスタ70から読み出され、PCIバ
ス22上に印加され、そこからCPU12によって取り
込まれる。
【0047】この場合も、アドレスされた機能モジュー
ルはRd_Enable信号に確認応答を返さない。ア
ドレスデコードは主として構成空間モジュール56、5
8、60によって実行される。更に、各構成空間モジュ
ールが、他の機能モジュールと同に様な態様でASIC
バス54に接続されることに留意されたい。従って、構
成空間レジスタとの間でデータを送るためにコントロー
ラ62と構成空間モジュールとの間で特殊なインタフェ
ース機能や制御手順が必要とされることはない。
【0048】図6を参照し、単一ワードDMA書込みに
ついて説明する。この例では、機能モジュールがマスタ
として働き、機能モジュール自体に記憶されているデー
タを、CPU12中の中間記憶なしで直接RAM14に
書き込ませるので、読出し/書込みイネーブル線は採用
されない。機能モジュールは、DMA書込みを開始する
ために、PCIバス22へのアクセスを要求するnRE
Q信号100を発行する。PCIバスアービタ(図示せ
ず)がPCIバス22の状態を調べ、PCIバス22が
使用できる場合は、PCIバス22へのアクセスを許可
するnGnt信号102を発行して要求側機能モジュー
ルに戻す。その後、PCIバス22を許可された機能モ
ジュールは、ASICバス54を駆動してアドレス信号
及びデータ信号をバイトイネーブルデータ及び転送カウ
ントと共に出力する。これに応答して、コントローラ6
2はPCIバス22を駆動してフレーム信号を出力し、
この信号によって、アドレスデータ及びコマンドデータ
がレジスタ70及び72から読み出され、PCIバス2
2を駆動して出力され、それによってRAM14に結合
された必要なゲートをセットアップすることができる。
従来、単一のDMA書込みを実行する機能モジュール
は、データ書込み動作を示す読出し/書込み(RnW)
信号もASICバス54上に発行していた。その後、レ
ジスタ70及び72に全ての必要なデータがラッチされ
ると、コントローラ62は、データの転送を可能にする
nPCIRdy信号104とbyte enable c
ontrol信号をRAM14に向けて発行する。
【0049】図7には、RAM14からの単一のワード
DMA読出しを実行するために必要な波形が示されてい
る。この場合も、機能モジュールがバス要求(nRe
q)レベルをASICバス54上に印加することに留意
されたい。アービタが要求側機能モジュールのバスへの
アクセスを許可すると、ASICバス54が駆動されて
RAM14内の読み出すべき領域を示すアドレスデータ
及びバイトイネーブルデータが出力されレジスタ70及
び72内に夫々書き込まれる。その後、CPU14は、
適当な制御信号によって、要求されたデータをRAM1
4から読み出させ、そのデータをPCIバス22上に印
加し、そこでレジスタ70によってデータが取り込まれ
る。この動作が完了した後、コントローラ62はnPC
IRdyレベルをアサートし、ASICバス54を駆動
してレジスタ70、72中のラッチされたデータを出力
し要求側機能モジュール内に書き込ませる。
【0050】以上から分かるように、前述のインタフェ
ース機能は、取り付けられた機能モジュールがPCIバ
スにアクセスできるようにする簡単なインタフェースを
提供する。このインタフェース機能は多機能インタフェ
ースも提供し、これによって、各機能モジュールごとに
PCIインタフェース全体を複製する必要なしに同じA
SIC内で複数の機能構成空間が使用可能になる。この
インタフェースは、追加機能モジュールならびに追加構
成空間に適応するための容易な拡張を可能にし、取り付
けられた各モジュールのニーズ、たとえば、DMAチャ
ネルの数、割込みの数、DMAチャネルの優先順位、e
nable信号のパルス幅を満たすようにカスタマイズ
することができる。
【0051】前述の説明が本発明を例示するものに過ぎ
ないことが理解されよう。当業者なら、本発明から逸脱
せずに様々な変更及び修正を構想することができる。従
って、本発明は、特許請求の範囲内のそのような全ての
変更、修正、変形を包含するものである。
【0052】本発明の実施の態様の例を以下に列挙す
る。
【0053】〔実施態様1〕プロセッサ(12)とラン
ダムアクセスメモリ(RAM)(14)とを含むデータ
処理システム(10)において、標準プロトコルに従っ
て動作するように構成され、前記プロセッサ(12)に
結合された第1のバス手段(22)と、それぞれ前記デ
ータ処理システム(10)が必要とする機能を実行する
複数の機能モジュール(30ないし52)と、前記各機
能モジュール(30ないし52)に接続されるととも
に、前記機能モジュールの各々に接続された専用読出し
/書込み制御線(74、76)及び全ての前記機能モジ
ュール(30ないし52)に共通に結合された複数のデ
ータ線(80)とを含む第2のバス手段(54)と、前
記第1のバス手段(22)と第2のバス手段(54)と
の間に結合され、前記第1のバス手段(22)からのコ
マンドに応答して、指定された機能モジュール(30な
いし52)にデータを書き込み、前記指定された機能モ
ジュール(30ないし52)に接続された専用読出し/
書込み線(74、76)に書込み制御信号を印加し、更
に、書き込むべきデータを前記複数のデータ線(80)
に印加する制御手段(62)を含むブリッジモジュール
手段(56、58、60、62)とを備え、前記指定さ
れた機能モジュール(30ないし52)は、前記指定さ
れた機能モジュール(30ないし52)に存在するレジ
スタに前記データを書き込むことによって前記書込み制
御信号に応答することを特徴とするデータ処理システム
(10)。
【0054】〔実施態様2〕前記制御手段(62)が、
前記第1のバス手段(22)を介して受け取ったところ
の、指定された機能モジュール(30ないし52)の記
憶されているデータを所与のアドレスに読み出すコマン
ドに応答して、前記指定された機能モジュール(30な
いし52)に接続された専用の読出し/書込み回路に読
出し制御信号(74、76)を印加し、前記指定された
機能モジュール(30ないし52)は、前記記憶されて
いるデータを前記複数のデータ線(80)に印加するこ
とによって前記読出し制御信号に応答し、前記制御手段
(62)は、前記記憶されているデータを、前記所与の
アドレスへの送出のために、前記複数のデータ線(8
0)から前記第1のバス手段(22)へ送出せしめるこ
とを特徴とする実施態様1に記載のデータ処理システム
(10)。
【0055】〔実施態様3〕前記ブリッジモジュールが
更に以下のものを設けたことを特徴とすることを特徴と
する実施態様2に記載のデータ処理システム(10):
前記第2のバス手段(54)に結合された機能モジュー
ル(30ないし52)の少なくともサブセットを識別す
る構成モジュール手段(56、58、60):前記構成
モジュール手段は前記第2のバス手段(54)に結合さ
れるとともに専用読出し/書込み回路(74、76)に
よって前記制御手段(62)に接続され;前記構成モジ
ュール手段は前記専用読出し/書込み回路(74、7
6)に印加された制御信号と前記制御手段(62)によ
って前記第2のバス手段(54)に印加されたところの
機能モジュール(30ないし52)の少なくとも1つの
前記サブセットを識別するアドレスに応答して、アドレ
スされた機能モジュール(30ないし52)を前記制御
手段(62)に対して識別する。
【0056】〔実施態様4〕前記標準プロトコルがPC
Iであり、PCIが前記プロセッサ(12)の制御下で
実現されることを特徴とする実施態様3に記載のデータ
処理システム(10)。
【0057】〔実施態様5〕前記複数の機能モジュール
(30ないし52)、前記第2のバス手段(54)、前
記制御手段(62)、前記構成モジュール手段(56、
58、60)が全てASIC上に形成されることを特徴
とする実施態様4に記載のデータ処理システム(1
0)。
【0058】〔実施態様6〕以下の(a)ないし(d)を設
け、プロセッサ(12)とランダムアクセスメモリ(R
AM)(14)とを含むデータ処理システム(10): (a)前記プロセッサ(12)に結合され、標準プロトコ
ルに従って動作するように構成された第1のバス手段
(22); (b)複数のデータ線と制御線を含む第2のバス手段(5
4); (c)前記第2バス手段(54)に結合され、夫々前記デ
ータ処理システム(10)が必要とする機能を実行する
複数の機能モジュール(30ないし52):前記機能モ
ジュールの少なくともいくつかは前記RAM(14)へ
の直接メモリアクセスによるデータ書込みを実行するた
めに前記第1のバス手段(22)の支配権を要求するこ
とができる; (d)前記第1のバス手段(22)と第2のバス手段(5
4)との間に結合され、前記第1のバス手段(22)に
対する支配権要求に応答して、前記第1のバス手段(2
2)が使用可能になったときに前記要求を許可する制御
手段(62)を含むブリッジモジュール手段(56、5
8、60、62):前記所有要求を許可された前記機能
モジュール(30ないし52)は、その後前記RAM
(16)に書き込むべきデータ及び前記データを書き込
むべきRAM(16)中のアドレスを前記第2のバス手
段(54)に印加し、前記ブリッジモジュール手段(5
6、58、60、62)が、書き込むべきデータ及び前
記アドレスを前記第1のバス手段(22)に印加し前記
直接メモリアクセスを達成する。
【0059】〔実施態様7〕以下の(a)ないし(d)を設
け、プロセッサ(12)とランダムアクセスメモリ(R
AM)(14)とを含むデータ処理システム(10): (a)標準プロトコルに従って動作するように構成され、
前記プロセッサ(12)に結合された第1のバス手段
(22)と、 (b)複数のデータ線と制御線とを含む第2のバス手段
(54)と、 (c)前記第2バス手段(54)に結合され、夫々前記デ
ータ処理システム(10)が必要とする機能を実行し、
少なくともいくつかが、前記RAM(14)への直接メ
モリアクセスによるデータ書込みを実行するために前記
第1のバス手段(22)の所有権を要求することができ
る、複数の機能モジュール(30ないし52)と、 (d)前記第1のバス手段(22)と第2のバス手段(5
4)との間に結合され、前記第1のバス手段(22)に
対する支配権要求に応答して、前記第1のバス手段(2
2)が使用可能になったときに前記要求を許可する制御
手段(62)を含むブリッジモジュール手段(56、5
8、60、62):前記支配権要求を許可された前記機
能モジュール(30ないし52)は、その後前記データ
を読み出すべきRAM(16)中のアドレスを前記第2
のバス手段(54)に印加し、前記ブリッジモジュール
手段(56、58、60、62)は前記第1のバス手段
(22)に前記アドレスを印加し、前記RAM(16)
がデータを前記アドレスから前記第1のバス手段(2
2)上に出力する準備が完了したことを知らされたとき
に、前記データを前記アドレスから前記第2のバス手段
(54)上に駆動し前記直接メモリアクセスによるデー
タ読出しを達成する。
【図面の簡単な説明】
【図1】本発明を組み込んだ代表的なデータ処理システ
ムのブロック図。
【図2】ASICに組み込まれた、PCIバスを複数の
機能モジュールへインタフェースするブリッジ構造を示
すブロック図。
【図3】PCIバスと、ASICの全ての機能モジュー
ルをリンクするASICバスとの間のインタフェース機
能を提供する図2のASICの各部の詳細のブロック
図。
【図4】単一ワード書込み動作中の本発明の動作を理解
する上で助けとなる波形図。
【図5】単一ワード読出し動作中の本発明の動作を理解
する上で助けとなる波形図。
【図6】単一ワード直接メモリアクセス書込み動作中の
本発明の動作を理解する上で助けとなる波形図。
【図7】単一ワード直接メモリアクセス読出し動作中の
本発明の動作を理解する上で助けとなる波形図。
【符号の説明】
22:PCIバス 30、32、34、36、38、50、42、44、4
6、48、50、52:機能モジュール 54:ASICバス 56、58、60:構成空間モジュール 62:コントローラ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】プロセッサとランダムアクセスメモリ(R
    AM)とを含むデータ処理システムにおいて、 標準プロトコルに従って動作するように構成され、前記
    プロセッサに結合された第1のバス手段と、 それぞれ前記データ処理システムが必要とする機能を実
    行する複数の機能モジュールと、 前記各機能モジュールに接続されるとともに、前記機能
    モジュールの各々に接続された専用読出し/書込み制御
    線及び全ての前記機能モジュールに共通に結合された複
    数のデータ線とを含む第2のバス手段と、 前記第1のバス手段と第2のバス手段との間に結合さ
    れ、前記第1のバス手段からのコマンドに応答して、指
    定された機能モジュールにデータを書き込み、前記指定
    された機能モジュールに接続された専用読出し/書込み
    線に書込み制御信号を印加し、更に、書き込むべきデー
    タを前記複数のデータ線に印加する制御手段を含むブリ
    ッジモジュール手段とを備え、 前記指定された機能モジュールは、前記指定された機能
    モジュールに存在するレジスタに前記データを書き込む
    ことによって前記書込み制御信号に応答することを特徴
    とするデータ処理システム。
JP9002099A 1996-01-11 1997-01-09 データ処理システム Pending JPH09198341A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US584,413 1996-01-11
US08/584,413 US5793997A (en) 1996-01-11 1996-01-11 Interface architecture for connection to a peripheral component interconnect bus

Publications (1)

Publication Number Publication Date
JPH09198341A true JPH09198341A (ja) 1997-07-31

Family

ID=24337226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9002099A Pending JPH09198341A (ja) 1996-01-11 1997-01-09 データ処理システム

Country Status (4)

Country Link
US (1) US5793997A (ja)
EP (1) EP0784278B1 (ja)
JP (1) JPH09198341A (ja)
DE (1) DE69619646T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006522414A (ja) * 2003-04-03 2006-09-28 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 仮想周辺コンポーネントインターコネクト多重ファンクション装置
JP2006294022A (ja) * 2005-03-28 2006-10-26 Nvidia Corp ユニバーサルストレージバスアダプタ
KR100643815B1 (ko) * 2004-05-10 2006-11-10 인텔 코오퍼레이션 링크-기반 컴퓨팅 시스템 내에서의 i/o 구성 메시징

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023736A (en) * 1997-12-19 2000-02-08 International Business Machines Corporation System for dynamically configuring I/O device adapters where a function configuration register contains ready/not ready flags corresponding to each I/O device adapter
US6101557A (en) * 1998-05-29 2000-08-08 International Business Machines Corporation Method and system for remote function control and delegation within multifunction bus supported devices
US6820157B1 (en) 1998-06-30 2004-11-16 International Business Machines Corporation Apparatus, program product and method of replacing failed hardware device through concurrent maintenance operation
US6243774B1 (en) 1998-06-30 2001-06-05 International Business Machines Corporation Apparatus program product and method of managing computer resources supporting concurrent maintenance operations
US6529978B1 (en) 2000-02-23 2003-03-04 International Business Machines Corporation Computer input/output (I/O) interface with dynamic I/O adaptor processor bindings
WO2003019394A1 (en) * 2001-08-24 2003-03-06 Intel Corporation A general input/output architecture, protocol and related methods to support legacy interrupts
US9836424B2 (en) 2001-08-24 2017-12-05 Intel Corporation General input/output architecture, protocol and related methods to implement flow control
US6809547B2 (en) * 2001-12-24 2004-10-26 Broadcom, Corp. Multi-function interface and applications thereof
CN112667541B (zh) * 2020-12-15 2023-06-02 厦门智多晶科技有限公司 一种ip动态配置电路和fpga

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4641261A (en) * 1984-05-21 1987-02-03 Rca Corporation Universal interface circuit for microprocessor peripherals
JPH02226454A (ja) * 1989-01-13 1990-09-10 Internatl Business Mach Corp <Ibm> コンピユータ・システムおよびそのデータ転送方法
US5396602A (en) * 1993-05-28 1995-03-07 International Business Machines Corp. Arbitration logic for multiple bus computer system
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
SG47015A1 (en) * 1994-02-24 1998-03-20 Intel Corp Apparatus and method for prefetching data to load buffers in a bridge between two buses in a computer
US5664124A (en) * 1994-11-30 1997-09-02 International Business Machines Corporation Bridge between two buses of a computer system that latches signals from the bus for use on the bridge and responds according to the bus protocols

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006522414A (ja) * 2003-04-03 2006-09-28 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 仮想周辺コンポーネントインターコネクト多重ファンクション装置
JP4869065B2 (ja) * 2003-04-03 2012-02-01 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 仮想周辺コンポーネントインターコネクト多重ファンクション装置
KR100643815B1 (ko) * 2004-05-10 2006-11-10 인텔 코오퍼레이션 링크-기반 컴퓨팅 시스템 내에서의 i/o 구성 메시징
JP2006294022A (ja) * 2005-03-28 2006-10-26 Nvidia Corp ユニバーサルストレージバスアダプタ

Also Published As

Publication number Publication date
EP0784278B1 (en) 2002-03-06
EP0784278A1 (en) 1997-07-16
DE69619646T2 (de) 2002-08-01
DE69619646D1 (de) 2002-04-11
US5793997A (en) 1998-08-11

Similar Documents

Publication Publication Date Title
JP2571673B2 (ja) 多重化バスを有する情報処理システムでバック・ツー・バック・データ転送を提供する方法および装置
US5664197A (en) Method and apparatus for handling bus master channel and direct memory access (DMA) channel access requests at an I/O controller
KR970000842B1 (ko) 정보 처리 시스템 및 컴퓨터 시스템
US5533204A (en) Split transaction protocol for the peripheral component interconnect bus
US5802269A (en) Method and apparatus for power management of distributed direct memory access (DDMA) devices
US5729762A (en) Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent
US5774681A (en) Method and apparatus for controlling a response timing of a target ready signal on a PCI bridge
US20010007999A1 (en) High-throughput interface between a system memory controller and a peripheral device
JPH11513150A (ja) Pci間ブリッジを統合する入出力プロセッサ用アーキテクチャ
JPH11353244A (ja) 不正パリティまたは0バイト・イネ―ブルによる、pci装置に対するi/oロ―ド/ストア・オペレ―ションのための拡張エラ―処理方法及び装置
KR20060017584A (ko) 가상 주변 장치 상호 연결 다기능 장치
CA2071301A1 (en) Error detection and recovery in a dma controller
US5796968A (en) Bus arbiter used in a computer system
JP2003281082A (ja) 二バス間のトランザクションを制御する再試行方法
US6397279B1 (en) Smart retry system that reduces wasted bus transactions associated with master retries
US20020019899A1 (en) Method of bus priority arbitration
JP2001502088A (ja) バス・インタフェース制御回路
JPH09198341A (ja) データ処理システム
USRE44688E1 (en) Bus transaction reordering in a computer system having unordered slaves
US5878239A (en) Method and apparatus for processing a target retry from a PCI target device to an ISA master devise using a PCI/ISA bridge
JP2001216254A (ja) バストランザクションにおける制御チップセットのアービトレーション
US6973520B2 (en) System and method for providing improved bus utilization via target directed completion
US5737545A (en) Computer bus mastery system and method having a lock mechanism
JP3377797B2 (ja) 複数のデータ処理エージェントの間でデータを転送するバスにおいて、第1のエージェントがサービスの必要を第2のエージェントへ知らせる方法
JP3836485B2 (ja) デバイスコントローラ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060510

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061101