JP2009054087A - 情報処理装置、pciバス制御方法、およびpciバス制御プログラム - Google Patents
情報処理装置、pciバス制御方法、およびpciバス制御プログラム Download PDFInfo
- Publication number
- JP2009054087A JP2009054087A JP2007222454A JP2007222454A JP2009054087A JP 2009054087 A JP2009054087 A JP 2009054087A JP 2007222454 A JP2007222454 A JP 2007222454A JP 2007222454 A JP2007222454 A JP 2007222454A JP 2009054087 A JP2009054087 A JP 2009054087A
- Authority
- JP
- Japan
- Prior art keywords
- pci
- bus
- request signal
- use request
- clock
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
【解決手段】プロセッサ10及びメモリ15が接続されたシステムバス20にPCIホスト・ブリッジ30を介して接続されたPCIバス60とを有する。このPCIバス60に、周波数の異なった少なくとも二つのPCIデバイス70,80を接続する。PCIホスト・ブリッジ30は、各PCIデバイス70,80に対応した周波数のバスクロックをPCIバス用の動作クロックとして出力するPCIクロック制御部35を備え、前記プロセッサ10は、一方又は他方のPCIデバイスからバス使用要求信号が出力された場合に当該バス使用要求信号にかかるPCIデバイスに対応する周波数のバスクロックを出力するように、前記PCIクロック制御部35に指令するようにしたこと。
【選択図】図1
Description
この場合、動作クロック周波数が同一の周辺デバイスを接続する場合は、同一のバス(例えばISAバス、PCIバスなど)に接続すればすむが、動作クロック周波数の異なる複数の周辺デバイスを接続するためには、動作クロック周波数に対応した複数の「バス」が必要であった。
この図7に示すように、この具体例では、プロセッサ110とそれにつながるシステムバス120、及びこのシステムバス120とPCIバス(A)140とを接続するPCIホスト・ブリッジ130、更に、PCI−PCI・ブリッジ150をPCIバスA140の配下に接続し、PCIバス(B)160を設けた構成となっている。
上述したように、従来の方法では、動作クロックが異なるPCIデバイスを情報処理装置のPCIバスに接続・搭載する場合、例えPCI- PCIブリッジを使用しない方式であっても、複数のPCIバスが必要であった。そのため、PCIバス毎にバス制御回路やバススイッチを必要とするため回路規模が大きくなるという問題を常に抱えていた。
本発明は、上記問題点に鑑み、PCIバスを最小単位にて構成すると共にシステム構成の簡易化を図った情報処理装置、PCIバス制御方法、及びPCIバス制御プログラムを提供することを、その目的とする。
ここで、本実施形態では、最初に情報処理装置の基本的な構成を説明し、その後に具体的な内容を順次説明する。
ここで、本実施形態にあっては、一方のPCIデバイス70は33〔MHz〕で動作する機能を備え、他方のPCIデバイス80は66〔MHz〕で動作する機能を備えて構成されている。
又、PCIホスト・ブリッジ30と前記各PCIデバイス70,80との間には、前記PCIバス60とは別に、外部指令に応じて前記PCIデバイス70,80の何れか一方のバス使用要求信号をマスクするREQマスク部(要求信号マスク手段)50が介装されている。
そして、PCIバスのクロック周波数が切替えられると、それに伴い、プロセッサ10からの指令「MASK REQ」により、マスク対象となるPCIデバイスからのバス使用要求信号REQ#_INが、これまでマスクされずに通過されていた信号に切替えられるという機能を備えている。
そして、PCIクロック制御部35は、プロセッサ10からの指令に基づいて作動し前記PCIバス60における動作クロックの周波数を前記バス使用要求信号にかかる他のPCIデバイス80(又は70)に対応したクロック周波数に切り替えるクロック切替え制御機能35aを備えている。
図1に示すように、PCIデバイス70用のREQマスク回路50Aと、PCIデバイス80用のREQマスク回路50Bとを備えている。このREQマスク回路50A,50Bは共に同一の構成部材により構成されている。
このREQマスク回路50A,50Bは、後述するように、それぞれD型フリップフロップ54と論理和OR回路52のロジックにより構成され、前記各PCIデバイス70又は80からのバス使用要求信号に個別に且つ迅速に対応し得るように、前述した各PCIデバイス毎に各一つの回路を有する構成となっている(図3参照)。
上述したPCIバス60は、動作クロック周波数の異なるPCIデバイス70,80を接続し搭載するPCIバス仕様に準拠したPCI信号を許容するバスである。
PCIホスト・ブリッジ30は、システム・バス20とPCIバス60との間の情報転送、及びPCIバス60のバス制御を行う機能を備えている。このPCIバス60に対するバス制御は、REQマスク部50からの出力信号であるPCIデバイス70又は80からのバス使用要求信号REQ#_OUT の競合制御(アービトレーション)を行い、衝突を回避しながらPCIバス60の時分割的使用をPCIバス仕様に準拠して当該制御が実行される。
尚、本REQ監視テーブル45は、プロセッサ10から監視できるように構成されている。即ち、プロセッサ10は、メモリ15上の監視プログラムと協働して、REQ監視テーブル45の中のREQマスク部50でマスクされてバスの使用が禁止されているPCIデバイスからのバス使用要求信号の状態を検出し、それが有効になったことを契機にバスクロック切替の指令をPCIクロック制御部35に送出する。
そして、PCIバスのクロック周波数が切替えられると、それに伴い、プロセッサ10からの指令により、マスク対象となるPCIデバイスからのバス使用要求信号REQ#_INが、これまでマスクされずに通過されていた信号に切替えられるという機能を備えている。
このPCIバス60のバス制御にかかる上記制御動作の内容のプログラムに関しては、例えば、以下に示す形態で特定してもよい。
REQマスク部50は、図1に示すように、前述した一方と他方の二つのPCIデバイ70,80に対応して二つのREQマスク回路50A,50Bを備えている。
ここで、本REQマスク部50は、図1では、二つのREQマスク回路50A,50Bを備えている場合を例示したが、PCIデバイスが三つ以上の場合は、その個数分のREQマスク回路を備えて構成される。
前述した一方のPCIデバイ70に対応した一方のREQマスク回路50Aは、図3(a)に示すように、D型フリップ・フロップ54と論理和であるOR回路52のロジックを備えて構成されている。他方のREQマスク回路50Bも同様に構成されている。
まず、論理和OR回路52への入力信号として、PCIデバイスからのバス使用要求信号REQ#_INがある。又、D型フリップ・フロップ54への入力信号としては、プロセッサ10からのマスク要求信号信号MASK_REQ とPCIバスのクロック信号PCICLK_INとがある。
ここで、図4に、REQマスク回路50Aの信号制御のタイミングチャートを示す。この図4に示すように、REQマスク回路50Aの信号制御を、マスク動作のタイミング、マスク動作状態、マスク解除のタイミングの順に説明する。
図4中の4−1(マスクタイミング)のタイミングでは、本REQマスク回路50Aの出力信号である信号REQ#_OUT が「1」であり、この信号REQ#_OUT がフリップ・フロップ54の端子ENに加えられているので、フリップ・フロップ54は有効になっている。
図中の4−2(マスク状態)のタイミングでは、内部信号MASK_ENが有効になっているため、論理和OR回路52へ入力されるPCIデバイス70からのバス使用要求信号REQ#_INが有効になっても、本REQマスク回路50Aの出力信号である信号REQ#_OUT は有効にならないので、バス使用要求信号REQ#_INはマスク状態となる。
図中の4−3(マスク解除タイミング)では、プロセッサ10からのマスク要求信号MASK_REQ が無効になるため、内部信号MASK_ENが無効になる。このため、論理和OR回路52へ入力されるPCIデバイス70からのバス使用要求信号REQ#_INの有効状態が、本REQマスク回路50Aの出力信号REQ#_OUT から出力されることになりマスク状態が解除される。
図中の4−4(マスク解除中)のタイミングでは、内部信号MASK_ENが無効のため、論理和OR回路52へ入力されるPCIデバイス70からのバス使用要求信号REQ#_INの状態変化と共に、本REQマスク回路50Aの出力信号REQ#_OUT も変化する。即ち、バス使用要求信号REQ#_INはマスクされないで出力信号REQ#_OUT に反映される。
図5の5−1のタイミングより前は、マスク解除状態であるため、PCIデバイスからの使用要求信号REQ#_INと本REQマスク回路50Aの出力信号REQ#_OUT とは、共に変化し、図5の5−1のタイミングは、PCIデバイスからの使用要求信号REQ#_INと本REQマスク回路50Aの出力信号REQ#_OUT とが、共に有効になっている状態である。このとき、プロセッサ10からのマスク要求信号MASK_REQ が有効になった場合の動作は、以下のようになる。
よって、バス使用要求信号REQ#_INは、マスクされないで本REQマスク回路50Aの出力信号REQ#_OUT になる。
よって、バス使用要求信号REQ#_INはマスクされる。
これらの動作は、PCIデバイス80からのバス使用要求信号REQ#がREQマスク回路50Bに入力された場合も同様に作動する。
続いて、本情報処理装置のPCIバス制御動作、特に、同一PCIバス上に動作クロック周波数の異なるPCIデバイスが接続(搭載)されている場合の動作について説明する。
例えば、前述した図7における周知例の場合、PCIデバイス170が情報転送動作の主導権をもつマスタ(「イニシエータ」ともいう)として動作する場合には、PCIデバイス170は、使用要求信号(REQ#)を有効にすることで、まず、PCIホスト・ブリッジ130にPCIバスA140の使用要求(リクエスト)を行う。次に、PCIホスト・ブリッジ130は、有効な使用要求信号を受けると、使用許可信号( GNT#) に基づいてPCIデバイス170にPCIバスA140の使用許可を行う。これにより、PCIバスA140の使用許可を得たPCIデバイス170は、PCIバスA140を使用してアクセスを開始できる。
以下、その具体的な内容を、図6に基づいて説明する。
現時点でのPCIバスクロック周波数がプロセッサ10で判定され(ステップS100、周波数判定工程)、仮にPCIバスクロック周波数が33〔MHz〕の場合には、REQマスク部50は、プロセッサ10の命令により、33〔MHz〕のPCIデバイス70からの使用要求信号(REQ#_1 )をマスク解除すると共に、66〔MHz〕のPCIデバイス80からの使用要求信号(REQ#_2 )をマスク状態にする(ステップS102、要求信号マスク工程)。
この場合、PCIデバイス70からの使用要求信号(REQ#_1 )はマスク解除されているので、PCIホスト・ブリッジ30に通知される。従って、PCIデバイス70は、問題なく通常のPCI手順に従ってPCIバス60にアクセスできる。
PCIバスクロック周波数がプロセッサ10で判定され(ステップS100、周波数判定工程)、その結果、PCIバスクロック周波数が66〔MHz〕の場合には、REQマスク部50は、プロセッサ10の命令により、33〔MHz〕のPCIデバイス70からの使用要求信号REQ#_1 をマスク状態にすると共に、66〔MHz〕のPCIデバイス80からの使用要求信号REQ#_2 をマスク解除する(ステップS202、要求信号マスク工程)。
そして、プロセッサ10は、REQマスク部50を制御して、33〔MHz〕のPCIデバイス70からの使用要求信号REQ#_1 のマスク解除を行なうと共に、66〔MHz〕のPCIデバイス80からの使用要求信号REQ#_2 をマスク状態に設定する(ステップS102、要求信号マスク工程)。これにより、使用要求信号REQ#_1 の状態がPCIデバイス70からPCIホスト・ブリッジ30に通知されるため、通常のPCI手順に従ってアクセスが可能になる。
ここで、上述したPCIバス60におけるバス制御の各動作内容にあっては、これをプログラム化して前述したプロセッサ10に実行させるように構成しても良い。
10a 切替え指令発信機能
11 周波数判定手段
15 メモリ
15A 周波数判定プログラム
15B 監視プログラム
20 システムバス
30 PCIホスト・ブリッジ
35 PCIクロック制御部
35a クロック切替え機能
40 REQ監視部(監視手段)
45 REQ監視テーブル
50 REQマスク部(要求信号マスク手段)
52 OR回路(論理和OR)
54 D型フリップ・フロップ
60 PCIバス
70 PCIデバイス(33〔MHz〕クロック用)
80 PCIデバイス(66〔MHz〕クロック用)
Claims (6)
- プロセッサおよびメモリが接続されたシステムバスと、このシステムバスにPCIホスト・ブリッジを介して接続されたPCIバスとを有し、
前記PCIバスに接続された周波数の異なる一方と他方の少なくとも二つのPCIデバイスと、前記PCIホスト・ブリッジに装備され前記各PCIデバイスに対応した周波数のバスクロックを前記PCIバス用の動作クロックとして出力するPCIクロック制御部とを備えて成る情報処理装置において、
前記PCIホスト・ブリッジと前記各PCIデバイスとの間に、外部指令に応じて前記PCIデバイスの何れか一方のPCIデバイスにかかるバス使用要求信号をマスクする要求信号マスク手段を介装すると共に、
前記プロセッサは、前記要求信号マスク手段でマスクされた前記PCIデバイスにかかるバス使用要求信号が出力された場合に当該PCIデバイスに対応する周波数のバスクロックを出力するように、前記PCIクロック制御部に指令する対応バスクロック出力指令機能を備えていることを特徴とした情報処理装置。 - 前記請求項1に記載の情報処理装置において、
前記PCIクロック制御部から出力されている動作クロックが前記一方と他方の何れのPCIデバイスに対応した周波数であるかを判定する周波数判定手段を設け、
前記要求信号マスク手段は、前記周波数判定手段によって前記動作クロックが前記一方のPCIデバイスに対応する周波数であると判定された場合に、当該判定信号に基づいて前記他方のPCIデバイスからのバス使用要求信号を選択的にマスクする選択的マスク機能を備え、
この要求信号マスク手段によってマスクされた前記他方のPCIデバイスからバス使用要求信号が出力された場合に、これを保持して監視状態に設定する監視手段を設け、
前記プロセッサは、前記監視手段に保持されているバス使用要求信号が前記一方のPCIデバイスにかかるバス使用要求信号と同一の信号か否かを判断し、異なったバス使用要求信号が保持されていると判断した場合に前記PCIクロック制御部に対して周波数切替え指令を発信する切替え指令発信機能を備え、
前記PCIクロック制御部は、前記プロセッサからの指令に基づいて作動し前記PCIバスにおける動作クロックの周波数を前記バス使用要求信号にかかる他のPCIデバイスに対応したクロック周波数に切り替えるクロック切替え制御機能を備えていることを特徴とした情報処理装置。 - 前記請求項1又は2に記載の情報処理装置において、
前記要求信号マスク手段は、D型フリップフロップと論理和ORのロジックにより一の回路を構成し、前記各PCIデバイスからのバス使用要求信号に対応して各PCIデバイス毎に各一つの回路を有することを特徴とした情報処理装置。 - 前記請求項1又は2に記載の情報処理装置において、
前記監視手段を、前記要求信号マスク手段によってマスクされたバス使用要求信号をラッチする回路と、当該バス使用要求信号を保持するメモリとを含む構成としたことを特徴とする情報処理装置。 - 構成各部の動作を制御するプロセッサとメモリとが接続されるシステムバスと、このシステムバスとPCIバスとを接続すると共に前記PCIバスを制御するPCIホスト・ブリッジとを備え、前記PCIバス上には異なる動作クロック周波数の複数のPCIデバイスが接続されて成る情報処理装置にあって、
前記PCIホスト・ブリッジから前記PCIバスに出力されているPCIバス用の動作クロックの周波数が何れのPCIデバイスにかかる周波数かを予め装備した周波数判定手段によって判定する第1のステップと、
この判定されたPCIバスクロック周波数を動作クロック周波数としていない他のPCIデバイスからのバス使用要求信号を予め装備した要求信号マスク手段によって選択的にマスクする第2のステップと、
この選択的にマスクされた前記他のPCIデバイスにかかるバス使用要求信号を前記システムバスの予め装備された監視手段が取り込んで保持する第3のステップと、
前記監視手段にて保持されているバス使用要求信号が前記PCIバスにおける動作クロック周波数にかかるバス使用要求信号とは異なった信号か否かを判断する第4のステップと、
前記第4ステップで前記監視手段にて保持されているバス使用要求信号が前記PCIバスにおける動作クロック周波数にかかるバス使用要求信号とは異なったバス使用要求信号と判断された場合に、当該プロセッサが前記PCIホスト・ブリッジに対して前記PCIバス用の動作クロックの切替え指令を発信する第5のステップと、
により構成されたことを特徴とするPCIバス制御方法。 - 構成各部の動作を制御するプロセッサとメモリとが接続されるシステムバスと、このシステムバスとPCIバスとを接続すると共に前記PCIバスを制御するPCIホスト・ブリッジとを備え、前記PCIバス上には異なる動作クロック周波数の複数のPCIデバイスが接続されて成る情報処理装置にあって、
前記PCIホスト・ブリッジから前記PCIバスに出力されているPCIバス用の動作クロックの周波数が何れのPCIデバイスにかかる周波数であるかを判定する周波数判定機能、
この判定されたPCIバスクロック周波数を動作クロック周波数としていない他のPCIデバイスからバス使用要求信号が出力された場合に当該バス使用要求信号を予め装備した要求信号マスク手段が選択的にマスクするのを許容すると共に、当該マスクされた前記他のPCIデバイスにかかるバス使用要求信号を前記システムバスに予め装備した監視手段が取り込んで保持するのを許容する要求信号保持許容機能、
前記監視手段にて保持されているバス使用要求信号が前記PCIバスにおける動作クロック周波数にかかるバス使用要求信号とは異なった信号か否かを判断する要求信号判断機能、
前記監視手段にて保持されているバス使用要求信号が前記PCIバスにおける動作クロック周波数にかかるバス使用要求信号とは異なった信号と判断した場合に、前記PCIホスト・ブリッジに対して前記PCIバス用の動作クロックの切替え指令を発する切替え指令発信機能、
を前記プロセッサに実行させることを特徴としたPCIバス制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007222454A JP4788004B2 (ja) | 2007-08-29 | 2007-08-29 | 情報処理装置、pciバス制御方法、およびpciバス制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007222454A JP4788004B2 (ja) | 2007-08-29 | 2007-08-29 | 情報処理装置、pciバス制御方法、およびpciバス制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009054087A true JP2009054087A (ja) | 2009-03-12 |
JP4788004B2 JP4788004B2 (ja) | 2011-10-05 |
Family
ID=40505089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007222454A Expired - Fee Related JP4788004B2 (ja) | 2007-08-29 | 2007-08-29 | 情報処理装置、pciバス制御方法、およびpciバス制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4788004B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018102117A1 (en) * | 2016-12-01 | 2018-06-07 | Intel Corporation | Method, apparatus and system for dynamic clock frequency control on a bus |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001027988A (ja) * | 1999-07-15 | 2001-01-30 | Nec Eng Ltd | Pci装置およびpciバスシステム |
JP2002032329A (ja) * | 2000-07-13 | 2002-01-31 | Hitachi Ltd | I/oバスシステム |
JP2002091901A (ja) * | 2000-09-18 | 2002-03-29 | Nec Eng Ltd | プライオリティエンコーダ |
-
2007
- 2007-08-29 JP JP2007222454A patent/JP4788004B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001027988A (ja) * | 1999-07-15 | 2001-01-30 | Nec Eng Ltd | Pci装置およびpciバスシステム |
JP2002032329A (ja) * | 2000-07-13 | 2002-01-31 | Hitachi Ltd | I/oバスシステム |
JP2002091901A (ja) * | 2000-09-18 | 2002-03-29 | Nec Eng Ltd | プライオリティエンコーダ |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018102117A1 (en) * | 2016-12-01 | 2018-06-07 | Intel Corporation | Method, apparatus and system for dynamic clock frequency control on a bus |
US10241536B2 (en) | 2016-12-01 | 2019-03-26 | Intel Corporation | Method, apparatus and system for dynamic clock frequency control on a bus |
Also Published As
Publication number | Publication date |
---|---|
JP4788004B2 (ja) | 2011-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5127089A (en) | Synchronous bus lock mechanism permitting bus arbiter to change bus master during a plurality of successive locked operand transfer sequences after completion of current sequence | |
JP4182801B2 (ja) | マルチプロセサシステム | |
US11256651B2 (en) | Multiple master, multi-slave serial peripheral interface | |
AU721685B2 (en) | Bus interface control circuit | |
JPH04268938A (ja) | データ処理装置およびメモリコントローラ | |
JP2013106166A (ja) | クロックゲーティング回路およびバスシステム | |
JP2007058716A (ja) | データ転送バスシステム | |
JP4788004B2 (ja) | 情報処理装置、pciバス制御方法、およびpciバス制御プログラム | |
JP2007058279A (ja) | パワーダウン移行システム | |
US20150100759A1 (en) | Pipelined finite state machine | |
US20040054843A1 (en) | Configuration and method having a first device and a second device connected to the first device through a cross bar | |
US9411758B2 (en) | Semiconductor device | |
JPH10320349A (ja) | プロセッサ及び当該プロセッサを用いるデータ転送システム | |
JP3852882B2 (ja) | マスタスレーブ装置 | |
CN211429283U (zh) | 用于选择时钟的系统 | |
JP2017107441A (ja) | 情報処理装置、並びに、その制御装置および制御方法 | |
JP3511407B2 (ja) | インタフェースボード及び命令処理装置 | |
JP2007102783A (ja) | 通信衝突の回避方法及び通信衝突を回避できる電子機器 | |
JPH11184805A (ja) | バスシステム | |
JP2011150645A (ja) | 情報処理装置 | |
JP2846999B2 (ja) | マイクロプロセッサ | |
JP2002351818A (ja) | バス制御システム | |
JP2002229932A (ja) | Dma転送装置及びデータ転送システム | |
JP4689189B2 (ja) | 情報処理装置 | |
JP2007272358A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110323 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110520 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110621 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110701 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140729 Year of fee payment: 3 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |