Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3458750B2 - Bus control device and information processing system having the same - Google Patents
[go: Go Back, main page]

JP3458750B2 - Bus control device and information processing system having the same - Google Patents

Bus control device and information processing system having the same

Info

Publication number
JP3458750B2
JP3458750B2 JP06407999A JP6407999A JP3458750B2 JP 3458750 B2 JP3458750 B2 JP 3458750B2 JP 06407999 A JP06407999 A JP 06407999A JP 6407999 A JP6407999 A JP 6407999A JP 3458750 B2 JP3458750 B2 JP 3458750B2
Authority
JP
Japan
Prior art keywords
bus
command
buffer
stall
circuit
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.)
Expired - Fee Related
Application number
JP06407999A
Other languages
Japanese (ja)
Other versions
JP2000259551A (en
Inventor
隆浩 谷岡
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP06407999A priority Critical patent/JP3458750B2/en
Publication of JP2000259551A publication Critical patent/JP2000259551A/en
Application granted granted Critical
Publication of JP3458750B2 publication Critical patent/JP3458750B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、少なくとも2つ
のシステムバスを接続するバスブリッジに使用して好適
なバス制御装置ならびに同装置を持つ情報処理システム
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a bus controller suitable for use in a bus bridge connecting at least two system buses and an information processing system having the same.

【0002】[0002]

【従来の技術】複数のストアインキャッシュが接続され
る複数のシステムバスをバスブリッジによって接続する
情報処理システムの一例が、特開平11-15734号「キャッ
シュシステム」に開示されている。この情報処理システ
ムの概容につき図6を参照して説明する。図において、
プロセッサ(EPU) 101〜104はそれぞれストアインキャッ
シュ(SIC) 111〜114に接続され、SIC 101〜104はローカ
ルバス120に接続されている。ここで、SIC 111〜114はE
PU 101〜104のプライベートキャッシュであるが、一般
には一つのSICに複数のEPUが接続されるシェアドキャッ
シュの形態を採っても構わない。ローカルバス120は、
更に、バスブリッジ(BB)130を介してグローバルバス5に
接続される。物理的にはEPU 101から104、SIC 111〜11
4、ローカルバス120、バスブリッジ130は一枚のパッケ
ージ上に実装され、一つの構成単位をなす(中央処理装
置:CPU1)。グローバルバス5には、CPU1と同様の構成の
パッケージが複数(CPU2)接続され、主記憶(MMU)3〜4を
共有している。
2. Description of the Related Art An example of an information processing system in which a plurality of system buses to which a plurality of store-in caches are connected is connected by a bus bridge is disclosed in Japanese Patent Laid-Open No. 11-15734, "Cache System". An outline of this information processing system will be described with reference to FIG. In the figure,
The processors (EPUs) 101 to 104 are connected to store-in caches (SICs) 111 to 114, respectively, and the SICs 101 to 104 are connected to a local bus 120. Where SIC 111-114 is E
Although it is a private cache of the PUs 101 to 104, it may generally take the form of a shared cache in which multiple EPUs are connected to one SIC. The local bus 120 is
Further, it is connected to the global bus 5 via the bus bridge (BB) 130. Physically EPU 101-104, SIC 111-11
4. The local bus 120 and the bus bridge 130 are mounted on one package and form one structural unit (central processing unit: CPU1). A plurality of packages (CPU 2) having the same configuration as the CPU 1 are connected to the global bus 5 and share the main memories (MMU) 3 to 4.

【0003】ここで、この情報処理システムで用いられ
ているシステムバスの動作について簡単に説明する。ロ
ーカルバス120及びグローバルバス5は、同一のバスプロ
トコルに従って動作するスプリットトランザクション方
式のバスであり、更に、アドレスバスとデータバスを分
離し、それぞれ独立して動作させることができるように
構成されている。このうちアドレスバスを用いるコマン
ドの動作を図7に示す<表2>を参照して説明する。<
表2>において、ステート1〜5はクロックに同期して常
時カウントされているタイミング信号である。各ステー
トに同期してステージが定義されており、バスサイクル
毎にコマンドをオーバーラップして動作させることが可
能である。例えば、先行するコマンドのCANステージで
は、直後のコマンドのREQステージが開始される。ま
た、ステート1〜5の期間を指して特にバスサイクルと呼
ぶ。しかしながら、従来のシステムのように多数のバス
を介してストアインキャッシュを接続するような複雑な
構成を採る情報処理システムでは、特にキャッシュコヒ
ーレンシを維持したり、あるいはロックなどの排他制御
を行うためのインプリメントが非常に複雑になるという
問題がある。上述した特開平11-15734号においてはこの
点について何ら言及していないが、システムが複雑にな
るほど、論理不具合(バグ)によるデータ化け、コマンド
の喪失、ストールなどの問題を引き起こしやすくなる。
The operation of the system bus used in this information processing system will be briefly described. The local bus 120 and the global bus 5 are split transaction type buses that operate according to the same bus protocol, and are further configured so that the address bus and the data bus are separated and can be operated independently. . Among these, the operation of the command using the address bus will be described with reference to Table 2 shown in FIG. <
In Table 2>, states 1 to 5 are timing signals which are always counted in synchronization with the clock. A stage is defined in synchronization with each state, and commands can be operated by overlapping each bus cycle. For example, in the CAN stage of the preceding command, the REQ stage of the immediately following command is started. The period of states 1 to 5 is called a bus cycle. However, in an information processing system having a complicated configuration in which store-in caches are connected via a large number of buses like a conventional system, in particular, cache coherency is maintained or exclusive control such as locking is performed. The problem is that the implementation becomes very complicated. Although the above-mentioned Japanese Patent Laid-Open No. 11-15734 makes no mention of this point, the more complicated the system, the more likely it is to cause problems such as data corruption, command loss, and stalls due to logical defects (bugs).

【0004】ここで、特にバスのストールについて図8
を用いて簡単に説明する。図8は、図6に示す構成の情
報処理システムにおいて、バスのストールが発生する状
況の最も単純な例を説明するために引用した動作概念図
である。図中、SIC 111と211、バスブリッジ130と230、
ローカルバス120と220、グローバルバス5等の構成要素
は図6のそれに対応する。また、図6の中でもここでの
説明に不要な要素は省略されている。更に、コマンドバ
ッファ133、233はそれぞれグローバルバスから受信した
コマンドをローカルバスへ送出する際の緩衝バッファ、
コマンドバッファ134、234はローカルバスから受信した
コマンドをグローバルバスへ送出する際の緩衝バッファ
である。
Here, especially regarding the stall of the bus, FIG.
Will be briefly explained. FIG. 8 is an operation conceptual diagram cited for explaining the simplest example of a situation where a bus stall occurs in the information processing system having the configuration shown in FIG. In the figure, SIC 111 and 211, bus bridges 130 and 230,
The components such as the local buses 120 and 220 and the global bus 5 correspond to those in FIG. Also, in FIG. 6, elements unnecessary for the description here are omitted. Further, the command buffers 133 and 233 are buffer buffers for sending commands received from the global bus to the local bus,
The command buffers 134 and 234 are buffer buffers for sending a command received from the local bus to the global bus.

【0005】図8を参照して、まずコマンドバッファ23
3が何らかの理由によりバッファフル状態にある場合を
想定すると、この時コマンドバッファ134からグローバ
ルバス5へのコマンド送出は抑止されなければならない
(図中A)。これは、例えばコマンドバッファ134から送出
しようとしているコマンドがメモリリードであった場
合、SIC211が必要なデータを保持している可能性があ
り、そのデータを取得するためにはこのコマンドをコマ
ンドバッファ233へ格納する必要があるためである。コ
マンドの抑止は、従来の情報処理システムにおいてはCA
Nステージにおいてバスブリッジ230がバスブリッジ130
から送出されるコマンドをキャンセルすることで行われ
る。やがて、コマンドバッファ134は、例えばSIC 111か
らの後続のコマンドによってバッファフル状態になる
(図中B)。この時、コマンドバッファ 233からローカル
バス 220へコマンドが送出されれば、コマンドバッファ
233のバッファフル状態は解除されるので、コマンドバ
ッファ 134からのコマンド送出抑止も解除され、従って
コマンドバッファ 134のバッファフル状態もやがて解除
される。
Referring to FIG. 8, first, the command buffer 23
Assuming that 3 is in a buffer full state for some reason, the command transmission from the command buffer 134 to the global bus 5 must be suppressed at this time.
(A in the figure). This is because, for example, if the command to be sent from the command buffer 134 is a memory read, the SIC211 may have the necessary data, and this command should be sent to the command buffer 233 in order to obtain that data. This is because it needs to be stored in. Command suppression is performed by CA in the conventional information processing system.
Bus bridge 230 becomes bus bridge 130 at N stage
This is done by canceling the command sent from. Eventually, the command buffer 134 will become buffer full due to subsequent commands from, for example, the SIC 111.
(B in the figure). At this time, if a command is sent from the command buffer 233 to the local bus 220, the command buffer
Since the buffer full state of 233 is released, the command transmission inhibition from the command buffer 134 is also released, and thus the buffer full state of the command buffer 134 will be released soon.

【0006】[0006]

【発明が解決しようとする課題】しかしここで例えばバ
スブリッジ130の論理に不具合があり、コマンドバッフ
ァ134のバッファフル状態によってローカルバス120への
全てのコマンド送出を抑止するようなインプリメントに
なっていた場合を仮定すると、コマンドバッファ134の
バッファフル状態によってコマンドバッファ133からロ
ーカルバスへのコマンド送出が抑止されることが起こり
得る(図中E)。その結果の連鎖として、コマンドバッフ
ァ133はバッファフル状態となり、コマンドバッファ234
からのコマンド送出は抑止され(図中C)、コマンドバッ
ファ234はSIC211からのコマンドによってバッファフル
状態となる(図中D)。この時までにコマンドバッファ233
のバッファフル状態が解消されなければ、バスブリッジ
130と同様の不具合によりコマンドバッファ233からのコ
マンド送出は、コマンドバッファ234のバッファフルに
よって抑止される。こうして4つのコマンドバッファ全
てがバッファフル状態になり、何れのコマンドバッファ
からのコマンド送出も出来なくなる。この状態がバスの
ストールである。
However, here, for example, there is a problem in the logic of the bus bridge 130, and the implementation is such that all commands are sent to the local bus 120 due to the buffer full state of the command buffer 134. Assuming a case, it is possible that the buffer full state of the command buffer 134 may inhibit command transmission from the command buffer 133 to the local bus (E in the figure). As a result, the command buffer 133 becomes a buffer full state and the command buffer 234
The command transmission from SIC211 is suppressed (C in the figure), and the command buffer 234 becomes a buffer full state by the command from the SIC211 (D in the figure). By this time the command buffer 233
If the buffer full condition of the
Due to the same trouble as 130, the command transmission from the command buffer 233 is suppressed by the buffer full of the command buffer 234. In this way, all four command buffers become buffer full, and no command can be sent from any command buffer. This is the stall of the bus.

【0007】無論、上述した例はこのような構成のシス
テムで起こり得るストールの中でも最も単純な例であ
り、実際にはより複雑なシーケンスでストールが発生す
る場合も含めて多くの発生パターンが考えられる。しか
しながら、ストールが発生する状況として、上述した例
のようにバッファフル状態による後続コマンドの抑止が
引き金になっている場合が多い。本来このような不具合
は論理の修正によって解決しなければならない性質のも
のであるが、実際の開発作業においては試作機上で問題
が発見されてから論理修正を施しても、問題が修正され
たLSIを入手するまで数ヶ月以上の期間を要するため、
予め予想され得る幾つかの種類の不具合に対しては、LS
Iの設計段階で何らかの回避手段を組み込んでおくこと
が望ましい。この発明は上記事情に鑑みてなされたもの
であり、二つのシステムバスを接続するバスブリッジに
おいて、主として論理上の不具合によるバスのストール
(デッドロック)が発生した場合にこれを検出し回避する
構成とすることにより、バスブリッジの開発・評価にお
いて有用な、コマンドバッファのバッファフルに起因す
るバスストールを回避しうるバス制御装置ならびに同装
置を持つ情報処理システムを提供することを目的とす
る。
Of course, the above-mentioned example is the simplest example of the stalls that can occur in the system having such a configuration, and in fact, many occurrence patterns are considered including the case where the stalls occur in a more complicated sequence. To be However, as a situation in which a stall occurs, suppression of subsequent commands due to the buffer full state is often triggered as in the above-mentioned example. Originally, such a defect has the property that it must be solved by correcting the logic, but in the actual development work, the problem was corrected even if the logic was corrected after the problem was found on the prototype. It takes several months or more to get the LSI,
For some types of failures that can be predicted in advance, LS
It is desirable to incorporate some kind of workaround at the design stage of I. The present invention has been made in view of the above circumstances, and in a bus bridge connecting two system buses, the stall of the bus is mainly caused by a logical defect.
When a (deadlock) occurs, it is configured to detect it and avoid it, which is useful in the development and evaluation of a bus bridge. An object is to provide an information processing system having a device.

【0008】[0008]

【課題を解決するための手段】上述した課題を解決する
ために請求項1記載のバス制御装置は、少なくとも2つ
のシステムバス同士を接続するバスブリッジを持つ情報
処理システムにおいて、前記バスブリッジが持つコマン
ドバッファに対するコマンドの送受信の数の差を監視
し、予め閾値により定義される一定サイクルの間前記の
差が変化しなくなる状態を検出することによりバスのス
トールを検出し、該バスのストールを検出したときにバ
ッファビジーを一時的に抑止して前記システムバスを介
して到来するコマンドの受信を許可し、前記コマンドの
送受信の数の差が前記コマンドバッファが持つエントリ
数より少なくなるように予め設定された閾値を越えたと
きに前記バッファビジーにより後続するコマンドの受信
を抑止することを特徴とする。
Means for Solving the Problems] bus control apparatus according to claim 1, wherein in order to solve the above problems, an information processing system having a bus bridge for connecting at least two system bus between the bus bridge has Coman
Monitor the difference in the number of commands sent and received to the buffer
However, for the fixed cycle previously defined by the threshold,
By detecting a condition where the difference no longer changes, the bus
When a stall of the bus is detected, the buffer busy is temporarily suppressed when the stall of the bus is detected, and the reception of the command arriving via the system bus is permitted. It is characterized in that the reception of the subsequent command is suppressed by the buffer busy when the preset threshold value is exceeded so that the number of entries is smaller than the number of entries held by.

【0009】また、請求項2記載のバス制御装置は、バ
ス経由で受信したコマンドを格納するバッファと、その
バッファのリードポインタを生成するリードポインタ生
成回路と、ライトポインタを生成するライトポインタ生
成回路と、該リードポインタとライトポインタ出力が供
給され、両ポインタ値の差分を算出することによりバッ
ファに格納されているコマンド数を求め、バッファフル
を検出して後続のコマンド受信を抑止するバッファビジ
ー信号を生成し、これを検出するバッファビジー検出回
路と、前記リードポインタとライトポインタの差分を予
め定義される第一の閾値と比較することによってバッフ
ァビジーを検出し、さらに前記リードポインタ及び前記
ライトポインタの値が予め第二の閾値により定義される
一定サイクルの間変化しなくなる状態を検出することに
より該バッファビジー信号を抑止するストール検出回路
と、前記ビジー検出回路とストール検出回路出力の論理
和演算を行い、ビジー信号として外部へ出力する論理和
回路とを備えることを特徴とする。更に、請求項3記載
のバス制御装置において、ストール検出回路は、リード
ポインタ生成回路ならびにライトポインタ生成回路によ
り供給されるそれぞれのポインタ値の差分を演算する減
算器と、該減算器出力と予めストール検出のために設定
される閾値を比較し、前記差分が設定された閾値を越え
たときに有意となる信号を出力する第一の比較器と、
記リードポインタ及び前記ライトポインタに設定される
それぞれの値の変化を検出する第二・第三の比較器と、
前記第二・第三の比較器出力の論理積演算を行い、前記
ストールを監視するのに必要な所定の値をカウントする
カウンタのセットリセットを行なう第一の論理積回路
と、前記カウンタ出力と前記予め定義された閾値とを比
較してバスのストールを検出する第四の比較器と、前記
第一の比較器と第四の比較器出力を論理積演算する第二
の論理積演算回路とを備えることを特徴とする。また、
請求項4記載のバス制御装置において、前記ストール検
出を有効にするモードフラグが設定されるフリツプフロ
ップを更に備え、前記第二の論理積演算回路の一入力と
して供給し、ストール検出のための機能を制御すること
を特徴とする。
According to another aspect of the bus control device of the present invention, a buffer for storing a command received via the bus, a read pointer generation circuit for generating a read pointer of the buffer, and a write pointer generation circuit for generating a write pointer. And the read pointer and write pointer outputs are supplied, the number of commands stored in the buffer is calculated by calculating the difference between the pointer values, and a buffer busy signal that detects buffer full and suppresses subsequent command reception And a buffer busy detection circuit that detects this and the difference between the read pointer and the write pointer.
The buffer by comparing it with a first threshold defined for
The busy pointer is detected, and the read pointer and
The value of the write pointer is previously defined by the second threshold
To detect a state that does not change during a certain cycle
Stall detection circuit for suppressing the buffer busy signal
And a logical sum circuit for performing a logical sum operation of the outputs of the busy detection circuit and the stall detection circuit and outputting the result as a busy signal to the outside. Further, in the bus control device according to claim 3, the stall detection circuit includes a subtracter for calculating the difference between the pointer values supplied by the read pointer generation circuit and the write pointer generation circuit, and the stall in advance with the subtracter output. comparing the threshold set for the detection, a first comparator for outputting a signal which becomes significant when it exceeds the threshold value the difference is set, before
A second and a third comparator for detecting changes in respective values set in the read pointer and the write pointer ,
A first AND circuit for performing a logical AND operation of the outputs of the second and third comparators and setting and resetting a counter for counting a predetermined value necessary for monitoring the stall, and the counter output A fourth comparator for detecting a stall of the bus by comparing it with a predefined threshold; and a second AND operation circuit for ANDing the outputs of the first and fourth comparators. It is characterized by including. Also,
5. The bus control device according to claim 4, further comprising a flip-flop in which a mode flag that enables the stall detection is set, and which is supplied as one input of the second AND operation circuit and has a function for stall detection. It is characterized by controlling.

【0010】請求項5記載の情報処理システムは、第一
のシステムバスと、第二のシステムバスと、前記第一の
システムバスを介して到来するコマンドを第一のバスイ
ンタフェースを介して受信し、バスブリッジ制御回路に
よる制御の下で第二のバスインタフェースを介して前記
第二のシステムバスへ送信する第一のコマンドバッファ
と、前記第二のシステムバスを介して到来するコマンド
を前記第二のバスインタフェースを介して受信し、前記
バスブリッジ制御回路による制御の下で前記第一のバス
インタフェースを介して前記第一のシステムバスへ送信
する第二のコマンドバッファと、前記第一・第二のそれ
ぞれのコマンドバッファに対するコマンドの送受信の数
の差を監視し、予め閾値により定義される一定サイクル
の間前記の差が変化しなくなる状態を検出することによ
り前記第一・第二のシステムバスのストールを検出し、
該システムバスのストールを検出したときにバッファビ
ジーを一時的に抑止して前記いずれか一方のシステムバ
スからのコマンドの受信を許可し、前記コマンドの送受
信の数の差が前記第一・第二のコマンドバッファが持つ
エントリ数より少なくなるように予め設定された閾値を
越えたときに前記バッファビジーにより後続するコマン
ドの受信を抑止するバスブリッジ制御回路とを備えるこ
とを特徴とする。
An information processing system according to a fifth aspect of the present invention receives a first system bus, a second system bus, and a command which arrives via the first system bus via a first bus interface. A first command buffer transmitting to the second system bus via a second bus interface under the control of a bus bridge control circuit, and a command arriving via the second system bus to the second command buffer; received via the bus interface, and a second command buffer for transmitting said through said first bus interface under the control of the bus bridge control circuit to the first system bus, said first and second That of
Number of commands sent and received for each command buffer
The constant cycle that monitors the difference between
By detecting a condition where the difference remains unchanged during
The stall of the first and second system buses is detected,
When the stall of the system bus is detected, the buffer busy is temporarily suppressed to allow the reception of the command from either one of the system buses, and the difference in the number of transmission / reception of the command is the first / second. And a bus bridge control circuit that inhibits reception of a subsequent command due to the buffer busy when the number of entries exceeds a preset threshold value so as to be smaller than the number of entries of the command buffer.

【0011】上述した構成において、本発明は、二つの
システムバスを接続するバスブリッジにおいて、主とし
て論理上の不具合によるバスのストール(デッドロック)
が発生した場合にこれを検出し、回避し得る手段を追加
し、開発・評価時に有用な評価モードとして備えたこと
を特徴としている。ストール検出回路はコマンドバッフ
ァへの登録及び読み出しを監視することによりバスのス
トールを検出し、この場合にバッファビジー信号を一時
的に抑止してバスからコマンドを受け付けられるように
する。この追加コマンドを受け付けられるようにするた
め、ストール検出回路はコマンドバッファに格納されて
いるコマンドの数を監視し、これがコマンドバッファの
エントリ数より少なくなるように予め設定された閾値を
越えた場合にバッファビジー信号によりバスから後続の
コマンドの受信を抑止する。このようにして、一定時間
コマンドバッファへの登録及び読み出しが行われなかっ
た場合に強制的に後続のコマンドを受け付けられるよう
にしているため、バッファビジーにより後続のコマンド
が受信できない場合に発生し得るバスのストールを回避
できる。このことにより、装置の試作評価において不具
合が発生した場合等、新しいLSIの入手まで評価を中断
させることなく継続が可能になる。また、モードフラグ
を使用することにより、本発明により実現さりる機能を
無効にすることができるため、装置の試作評価において
論理不具合が発生した場合のみ本発明機能を実現し、通
常の動作に何等影響を与えることはない。
In the above-mentioned structure, the present invention is a bus bridge connecting two system buses, and the bus is stalled (deadlock) mainly due to a logical defect.
When an error occurs, it is detected, and a means for avoiding it is added, and the evaluation mode useful for development / evaluation is provided. The stall detection circuit detects the stall of the bus by monitoring the registration and reading in the command buffer, and in this case, temporarily suppresses the buffer busy signal so that the command can be accepted from the bus. In order to allow this additional command to be accepted, the stall detection circuit monitors the number of commands stored in the command buffer, and when this exceeds a preset threshold value that is less than the number of entries in the command buffer. The buffer busy signal suppresses the reception of subsequent commands from the bus. In this way, the subsequent command is forcibly accepted when it is not registered or read in the command buffer for a certain period of time, so it may occur when the subsequent command cannot be received due to buffer busy. You can avoid bus stalls. This makes it possible to continue evaluation without interruption until a new LSI is acquired, for example, when a problem occurs in the evaluation of a device prototype. Further, since the function realized by the present invention can be disabled by using the mode flag, the function of the present invention is realized only when a logical defect occurs in the trial evaluation of the device, and the normal operation is not performed. It has no effect.

【0012】[0012]

【発明の実施の形態】図1は本発明の実施形態を示すブ
ロック図であり、本発明の情報処理システムのうち、バ
スブリッジ周辺のみ抽出して示したものである。図にお
いて、ローカルバス120、グローバルバス5、バスブリッ
ジ130は従来の技術の項で説明した図6の要素にそれぞ
れ対応する。また、ローカルバスインタフェース131は
ローカルバス120との間のインタフェース回路、グロー
バルバスインタフェース132はグローバルバス5との間の
インタフェース回路、コマンドバッファ133はグローバ
ルバス5から受信し、ローカルバス120へ送出するコマン
ドを格納する緩衝バッファ、同様にコマンドバッファ13
4はローカルバス120から受信しグローバルバス5へ送出
するコマンドを格納する緩衝バッファである。バスブリ
ッジ制御回路135は、後述するバスブリッジ130全体の動
作を司る制御回路である。また、ローカルバス120に接
続されるストアインキャッシュのキャッシュコヒーレン
シ維持のため、バスブリッジ130はストアインキャッシ
ュのタグのコピーをCTAGメモリ136に保持する。図中、
コマンド及びデータの流れが矢印で図示されている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a block diagram showing an embodiment of the present invention, in which only the periphery of a bus bridge is extracted and shown in the information processing system of the present invention. In the figure, a local bus 120, a global bus 5, and a bus bridge 130 correspond to the elements of FIG. 6 described in the section of the prior art. Further, the local bus interface 131 is an interface circuit with the local bus 120, the global bus interface 132 is an interface circuit with the global bus 5, and the command buffer 133 is a command received from the global bus 5 and sent to the local bus 120. Buffer buffer, as well as the command buffer 13
Reference numeral 4 is a buffer buffer for storing commands received from the local bus 120 and sent to the global bus 5. The bus bridge control circuit 135 is a control circuit that controls the overall operation of the bus bridge 130 described below. Further, in order to maintain the cache coherency of the store-in cache connected to the local bus 120, the bus bridge 130 holds a copy of the tag of the store-in cache in the CTAG memory 136. In the figure,
The flow of commands and data is illustrated by arrows.

【0013】図2にコマンドバッファ134周辺のより詳
細な構成がブロック図で示されている。図において、バ
ッファ301はローカルバスから受信したコマンドを格納
するバッファである。このバッファは8ワードの容量を
持つリングバッファであり、そのリード・ライトポイン
タはリードポインタ生成回路302及びライトポインタ生
成回路303によって供給される。リードポインタ、ライ
トポインタの更新動作は、バスブリッジ制御回路135か
らの制御信号(図示せず)により制御される。また、リー
ドポインタ生成回路302及びライトポインタ生成回路303
の出力は、ビジー検出回路304及びストール検出回路305
に入力される。ビジー検出回路304は、ライトポインタ
とリードポインタの差分を算出することにより、バッフ
ァ301に格納されているコマンドの数を求め、バッファ
フル状態であれば後続のコマンド受信を抑止するため、
ビジー信号(B_Busy)を出力する。ストール検出回路305
は、バッファ301の動作を監視し、必要に応じてビジー
信号(S_Busy)を出力する。この回路の詳細については図
3以降を使用して後述する。OR回路306は、ビジー検出
回路304からのビジー信号(B_Busy)とストール検出回路
(S_Busy)の論理和をビジー信号(Busy)としてバスブリッ
ジ制御回路へ送出する。
FIG. 2 is a block diagram showing a more detailed structure around the command buffer 134. In the figure, a buffer 301 is a buffer that stores a command received from a local bus. This buffer is a ring buffer having a capacity of 8 words, and its read / write pointer is supplied by the read pointer generation circuit 302 and the write pointer generation circuit 303. The update operation of the read pointer and the write pointer is controlled by a control signal (not shown) from the bus bridge control circuit 135. In addition, the read pointer generation circuit 302 and the write pointer generation circuit 303
Is output from the busy detection circuit 304 and the stall detection circuit 305.
Entered in. The busy detection circuit 304 obtains the number of commands stored in the buffer 301 by calculating the difference between the write pointer and the read pointer, and if the buffer is full, the subsequent command reception is suppressed.
Output a busy signal (B_Busy). Stall detection circuit 305
Monitors the operation of the buffer 301 and outputs a busy signal (S_Busy) as necessary. Details of this circuit will be described later using FIG. The OR circuit 306 is a stall detection circuit for the busy signal (B_Busy) from the busy detection circuit 304.
The logical sum of (S_Busy) is sent to the bus bridge control circuit as a busy signal (Busy).

【0014】次に、図3に示すブロック図を参照して、
ストール検出回路305の詳細について説明する。図を参
照して、まずリードポインタ生成回路302及びライトポ
インタ生成回路303から入力されるリードポインタ、ラ
イトポインタの値は、減算器319に入力されて、ライト
ポインタとリードポインタの差分が求められる。この値
は、バッファ301に格納されているコマンドの数と一致
する。一方フリップフロップ(F/F) 321は3ビット容量
を持ち、ここにはS_Busy信号を送出する閾値が格納され
ている。この値は、LSIの初期化時にLSI外部からの操作
によって設定され得るものである。この差分の値と、F/
F 321に格納された値を比較器320で比較し、差分の値が
閾値以上であれば、比較器320は“真”の値を出力す
る。改めて説明するまでも無く、このような閾値のチェ
ックが必要となるのは、ストールを検出する際に後続の
コマンドを強制的に受け付けられるようにするため、バ
ッファ301のエントリに空きを作っておく必要があるた
めである。このため、ストール検出回路305が機能して
いる時には、バッファ301の見かけ上のエントリ数は実
際のエントリ数より少なく見えるため、システム性能が
若干低下することに注意しなければならない。この機能
はストールを引き起こすような論理問題が発生した場合
などに、論理修正を施したLSIを入手するまでの間試作
機による評価を中断させないといった目的に限って用い
られるべきである。
Next, referring to the block diagram shown in FIG.
Details of the stall detection circuit 305 will be described. Referring to the figure, first, the values of the read pointer and the write pointer input from the read pointer generation circuit 302 and the write pointer generation circuit 303 are input to the subtractor 319, and the difference between the write pointer and the read pointer is obtained. This value matches the number of commands stored in the buffer 301. On the other hand, the flip-flop (F / F) 321 has a 3-bit capacity, and the threshold value for transmitting the S_Busy signal is stored therein. This value can be set by an operation from outside the LSI when the LSI is initialized. This difference value and F /
The value stored in F 321 is compared by the comparator 320, and if the difference value is greater than or equal to the threshold value, the comparator 320 outputs a “true” value. Needless to say again, the reason why such a threshold check is necessary is to make a space in the entry of the buffer 301 in order to forcefully accept the subsequent command when detecting the stall. This is because it is necessary. Therefore, it should be noted that when the stall detection circuit 305 is functioning, the apparent number of entries in the buffer 301 appears smaller than the actual number of entries, and the system performance is slightly reduced. This function should be used only for the purpose of not interrupting evaluation by the prototype until the logic modified LSI is obtained when a logic problem that causes a stall occurs.

【0015】一方、リードポインタ生成回路302及びラ
イトポインタ生成回路303からの入力は、それぞれF/F 3
11 とF/F 312に一旦格納され、比較器313と314によって
元の値と比較される。この回路は、入力される値が変化
した時に“真”を出力する微分回路である。この出力は
AND回路315を通ってカウンタ316にセット/リセット信号
として入力される。カウンタ316は、32ビット幅のカウ
ンタであり、この大きさはバスのストールを監視するに
十分な大きさとなるように選択されている。バスのスト
ールは、比較器318が閾値を格納したF/F 317の値と、カ
ウンタ316の値が等しくなった時に“真”を出力するこ
とで検出される。図4に<表1>としてカウンタ316の
動作が示されている。<表1>に示されるようにカウン
タ316は、AND回路315からの入力が“真”、比較器318か
らの入力が“偽”のときにカントの開始を行ない、AND
回路315からの入力が“偽”のとき、あるいはAND回路31
5からの入力ならびに比較器318からの入力が共に“真”
の場合にリセットする。比較器320及び比較器318の出力
は、AND回路322を介してビジー信号(S_Busy)として出力
される。F/F 323に格納されているのは、ストール検出
回路305の機能を有効にするか否かを決定するモードフ
ラグであり、この値が“真”のときAND回路322の出力は
有効となり、“偽”のときは常に“偽”となる(ストー
ル検出回路は動作しない)。
On the other hand, the inputs from the read pointer generation circuit 302 and the write pointer generation circuit 303 are F / F 3 respectively.
11 and F / F 312 are once stored and compared with the original value by the comparators 313 and 314. This circuit is a differentiating circuit that outputs "true" when the input value changes. This output is
It is input as a set / reset signal to the counter 316 through the AND circuit 315. Counter 316 is a 32-bit wide counter, the size of which is chosen to be large enough to monitor bus stalls. The stall of the bus is detected by the comparator 318 outputting "true" when the value of the F / F 317 storing the threshold value becomes equal to the value of the counter 316. FIG. 4 shows the operation of the counter 316 as <Table 1>. As shown in <Table 1>, the counter 316 starts the cant when the input from the AND circuit 315 is “true” and the input from the comparator 318 is “false”.
When the input from the circuit 315 is "false" or when the AND circuit 31
Both the input from 5 and the input from comparator 318 are “true”
Reset if. The outputs of the comparator 320 and the comparator 318 are output as a busy signal (S_Busy) via the AND circuit 322. Stored in the F / F 323 is a mode flag that determines whether to enable the function of the stall detection circuit 305. When this value is “true”, the output of the AND circuit 322 is valid, When it is "false", it is always "false" (the stall detection circuit does not operate).

【0016】尚、ローカルバスインタフェース131、バ
スブリッジ制御回路135、グローバルバスインタフェー
ス132及びCTAGメモリ136の構成は周知であり、本発明要
旨とは直接関係しないためその詳細な説明は省略する。
また、本発明の実施形態では、バッファ301の構成をリ
ングバッファとして説明したが、代わりにシフタを用い
た構成としても良い。この場合、リードポインタ生成回
路、ライトポインタ生成回路などの構成も合わせて変更
する必要があるが、ビジー検出回路304やストール検出
回路305と同様の機能を実現することは容易である。ま
た、グローバルバス5から受信したコマンドをローカル
バス120へ送出する方向においても、コマンドバッファ1
33をコマンドバッファ134と同様の回路構成にすること
によりバッファフル状態を監視することが可能である。
The configurations of the local bus interface 131, the bus bridge control circuit 135, the global bus interface 132, and the CTAG memory 136 are well known and have no direct relation to the gist of the present invention, and therefore detailed description thereof will be omitted.
Further, in the embodiment of the present invention, the buffer 301 has been described as a ring buffer, but a shifter may be used instead. In this case, it is necessary to change the configurations of the read pointer generation circuit, the write pointer generation circuit, etc., but it is easy to realize the same functions as the busy detection circuit 304 and the stall detection circuit 305. Also, in the direction of sending the command received from the global bus 5 to the local bus 120, the command buffer 1
It is possible to monitor the buffer full state by making 33 the same circuit configuration as the command buffer 134.

【0017】図5は本発明実施形態の動作を説明するた
めに引用したタイミングチャートである。上から順に、
(a)バスサイクル、(b)バスコマンド、(c)ライトポイン
タとリードポインタの差分、(d)B_Busy信号、(e)カウン
タ316出力、(f)S_Busy信号、(g)Busy信号のそれぞれを
示す。以下、図1〜図3に示すバスブリッジの動作を図
5に示すタイミングチャートを参照しながら詳細に説明
する。図において、各々のバスサイクルは、従来の技術
の説明の項に記載された<表1>におけるステート1〜5
の期間を指す。バスコマンド(Bus_CMD)がバスサイクル
に同期して送出されると、バスブリッジはそれを受信し
てコマンドバッファ301へ格納する。この動作は、バス
ブリッジ制御回路135からコマンドバッファ301への書き
込み指示信号(図示せず)と、リードポインタ生成回路30
2及びライトポインタ生成回路303への制御信号により行
われる。コマンドバッファ301に格納されているコマン
ドの数は、図中、“WP-RP”で表される。
FIG. 5 is a timing chart cited for explaining the operation of the embodiment of the present invention. From top to bottom,
(a) Bus cycle, (b) Bus command, (c) Difference between write pointer and read pointer, (d) B_Busy signal, (e) Counter 316 output, (f) S_Busy signal, (g) Busy signal Show. Hereinafter, the operation of the bus bridge shown in FIGS. 1 to 3 will be described in detail with reference to the timing chart shown in FIG. In the figure, each bus cycle is represented by states 1 to 5 in Table 1 described in the section of the description of the prior art.
Refers to the period. When the bus command (Bus_CMD) is transmitted in synchronization with the bus cycle, the bus bridge receives it and stores it in the command buffer 301. This operation is performed by the write instruction signal (not shown) from the bus bridge control circuit 135 to the command buffer 301 and the read pointer generation circuit 30.
2 and a control signal to the write pointer generation circuit 303. The number of commands stored in the command buffer 301 is represented by "WP-RP" in the figure.

【0018】図5に示すタイミングチャートによれば、
バスサイクルlからl+2にかけてBus_CMDにコマンド
(“5”〜“7”)が送出されると、コマンドは1バスサイ
クル遅れてバッファ301に格納され、ライトポインタが
更新される。この前後で、バッファ301からグローバル
バス5へのコマンド送出が行われなければ、ライトポイ
ンタのみが+1される結果、WP-RPの値が+1される(図中WP
-RPの5、6、7)。ストール検出回路の出力(S_Busy)は、
バスサイクルl+3においてWP-RPの値がF/F321に格納され
た閾値(ここでは7を仮定)を越えるため、“真(H)”とな
る。カウンタ316の値(図中Count)はこの時までリセット
されており“0”であるが、バスサイクルl+4でリードポ
インタとライトポインタの値が直前のバスサイクルから
変化しなくなるためバスサイクル毎に+1更新される。こ
の値がバスサイクルm+1においてF/F317の閾値(ここでは
“n”が格納されていると仮定)に達すると、S_Busyの値
は比較器318の出力により1バスサイクル間だけ抑止
(“偽”を出力)される。B_Busyは、ビジー検出回路304
が出力するバッファ301のビジー(バッファフル)信号で
あり、WP-RPが“8”の時“真(H)”、その他の時は“偽
(L)”である。バスサイクルm+1において、1サイクルだ
けS_Busyが抑止された事によりBus_CMD“8”が送出さ
れ、バッファ301に格納された結果、バスサイクルm+2に
おいてWP-RP=8となり、B_Busyが“真”となる。
According to the timing chart shown in FIG. 5,
Command Bus_CMD from bus cycle l to l + 2
When ("5" to "7") is sent, the command is stored in the buffer 301 with a delay of one bus cycle, and the write pointer is updated. Before and after this, unless a command is sent from the buffer 301 to the global bus 5, only the write pointer is incremented by 1, and the value of WP-RP is incremented by 1 (WP in the figure).
-RP 5, 6, 7). The output (S_Busy) of the stall detection circuit is
In the bus cycle l + 3, the value of WP-RP exceeds the threshold value (7 is assumed here) stored in the F / F 321, so that the value is “true (H)”. The value of the counter 316 (Count in the figure) has been reset up to this time and is “0”, but at the bus cycle l + 4, the values of the read pointer and the write pointer do not change from those of the immediately preceding bus cycle. Is updated to +1. When this value reaches the threshold of F / F317 (assuming that "n" is stored here) in bus cycle m + 1, the value of S_Busy is suppressed by the output of comparator 318 for only one bus cycle.
("False" is output). B_Busy is a busy detection circuit 304
This is a busy (buffer full) signal of the buffer 301 output by WP-RP. It is "true (H)" when WP-RP is "8", and "false" otherwise.
(L) ”. Bus_CMD“ 8 ”is sent out by S_Busy being suppressed for only one cycle in bus cycle m + 1 and stored in buffer 301. As a result, WP-RP = in bus cycle m + 2. 8 and B_Busy becomes “true”.

【0019】以上説明のように本発明は、二つのシステ
ムバスを接続するバスブリッジにおいて、主として論理
上の不具合によるバスのストール(デッドロック)が発生
した場合にこれを検出し、回避し得る手段を追加し、開
発・評価時に有用な評価モードとして備えたことを特徴
としている。ストール検出回路はコマンドバッファへの
登録及び読み出しを監視することによりバスのストール
を検出し、この場合にバッファビジー信号を一時的に抑
止してバスからコマンドを受け付けられるようにする。
この追加コマンドを受け付けられるようにするため、ス
トール検出回路はコマンドバッファに格納されているコ
マンドの数を監視し、これがコマンドバッファのエント
リ数より少なくなるように予め設定された閾値を越えた
場合にバッファビジー信号によりバスから後続のコマン
ドの受信を抑止する。このようにして、一定時間コマン
ドバッファへの登録及び読み出しが行われなかった場合
に強制的に後続のコマンドを受け付けられるようにして
いるため、バッファビジーにより後続のコマンドが受信
できない場合に発生し得るバスのストールを回避でき
る。このことにより、装置の試作評価において不具合が
発生した場合等、新しいLSIの入手まで評価を中断させ
ることなく継続が可能になる。
As described above, the present invention is a means for detecting and avoiding a bus stall (deadlock) caused mainly by a logical defect in a bus bridge connecting two system buses. Is added, and it is equipped with it as a useful evaluation mode during development and evaluation. The stall detection circuit detects the stall of the bus by monitoring the registration and reading in the command buffer, and in this case, temporarily suppresses the buffer busy signal so that the command can be accepted from the bus.
In order to allow this additional command to be accepted, the stall detection circuit monitors the number of commands stored in the command buffer, and when this exceeds a preset threshold value that is less than the number of entries in the command buffer. The buffer busy signal suppresses the reception of subsequent commands from the bus. In this way, the subsequent command is forcibly accepted when it is not registered or read in the command buffer for a certain period of time, so it may occur when the subsequent command cannot be received due to buffer busy. You can avoid bus stalls. This makes it possible to continue evaluation without interruption until a new LSI is acquired, for example, when a problem occurs in the evaluation of a device prototype.

【0020】[0020]

【発明の効果】以上説明のように本発明によれば、論理
的な不具合を暫定的に回避する手段を備えることによ
り、装置の試作評価において不具合が生じた場合など、
新しいLSIの入手まで評価を中断させることなく評価を
継続できる。また、コマンドバッファのリードポインタ
及びライトポインタの動作の監視によりストールが発生
したことを検出し、このようなストールが発生した場合
に更に後続のコマンドを受け付けるため、これによりコ
マンドバッファフル状態が一時的に解除され、ストール
が解除されうる。更に、本発明により実現される機能を
モードフラグにより無効にできるため、装置の試作評価
において論理不具合が生じた場合などに限って、本発明
機能を使用して評価作業を行うことができ、通常の動作
には影響を与えずに済む。
As described above, according to the present invention, by providing means for tentatively avoiding a logical defect, when a defect occurs in the trial evaluation of the device,
The evaluation can be continued without interruption until a new LSI is obtained. Further, by detecting the operation of the read pointer and the write pointer of the command buffer, it is detected that a stall has occurred, and when such a stall occurs, further subsequent commands are accepted, so that the command buffer full state is temporarily The stall can be canceled. Further, since the function realized by the present invention can be disabled by the mode flag, the evaluation work can be performed by using the function of the present invention only when a logical defect occurs in the trial evaluation of the device. Does not affect the operation of.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の実施形態を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】 図1におけるコマンドバッファ周辺を詳細に
示したブロック図である。
FIG. 2 is a block diagram showing details around a command buffer in FIG.

【図3】 図2におけるストール検出回路の内部構成を
示すブロック図である。
3 is a block diagram showing an internal configuration of a stall detection circuit in FIG.

【図4】 図3におけるカウンタの動作を表形式<表1
>で示した図である。
FIG. 4 is a table format showing the operation of the counter in FIG.
It is the figure shown with>.

【図5】 本発明実施形態の動作を説明するために引用
したタイミングチャートである。
FIG. 5 is a timing chart quoted for explaining the operation of the embodiment of the present invention.

【図6】 従来における情報処理システムの構成を示す
ブロック図である。
FIG. 6 is a block diagram showing a configuration of a conventional information processing system.

【図7】 従来の情報処理システムにおけるバスコマン
ドの動作を表形式<表2>で示した図である。
FIG. 7 is a diagram showing an operation of a bus command in a conventional information processing system in a table format <Table 2>.

【図8】 従来の情報処理システムにおけるバスストー
ルの概略動作を説明するために引用したシステム動作概
念図である。
FIG. 8 is a system operation conceptual diagram cited for explaining a schematic operation of a bus stall in a conventional information processing system.

【符号の説明】[Explanation of symbols]

5…グローバルバス、120…ローカルバス、131…ローカ
ルバスインタフェース、132…グローバルバスインタフ
ェース、133…コマンドバッファ、134…コマンドバッフ
ァ、135…バスブリッジ制御回路、301…バッファ、302
…リードポインタ生成回路(RP)、303…ライトポイン
タ生成回路(WP)、304…ビジー検出回路、305…ストー
ル検出回路、306…OR回路、311(312) …フリップフロツ
プ(F/F)、313…第二の比較器、314…第三の比較器、3
15…第一の論理積回路(AND)、316…カウンタ、317(32
1) …フリップフロップ(F/F)、318…第四の比較器、3
20…第一の比較器、322…第二の論理積回路(AND)、32
3…モードフリップフロップ
5 ... Global bus, 120 ... Local bus, 131 ... Local bus interface, 132 ... Global bus interface, 133 ... Command buffer, 134 ... Command buffer, 135 ... Bus bridge control circuit, 301 ... Buffer, 302
... Read pointer generation circuit (RP), 303 ... Write pointer generation circuit (WP), 304 ... Busy detection circuit, 305 ... Stall detection circuit, 306 ... OR circuit, 311 (312) ... Flip-flop (F / F), 313 ... Second comparator, 314 ... Third comparator, 3
15 ... First AND circuit (AND), 316 ... Counter, 317 (32
1)… Flip-flop (F / F), 318… Fourth comparator, 3
20 ... First comparator, 322 ... Second AND circuit (AND), 32
3 ... Mode flip-flop

フロントページの続き (56)参考文献 特開 平1−241660(JP,A) 特開 平4−150436(JP,A) 特開 平5−314061(JP,A) 特開 平6−332867(JP,A) 特開 平6−236329(JP,A) 特開 平10−312359(JP,A) 特開 平10−79744(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/36 310 Continuation of front page (56) Reference JP-A-1-241660 (JP, A) JP-A-4-150436 (JP, A) JP-A-5-314061 (JP, A) JP-A-6-332867 (JP , A) JP-A-6-236329 (JP, A) JP-A-10-312359 (JP, A) JP-A-10-79744 (JP, A) (58) Fields investigated (Int.Cl. 7 , DB) Name) G06F 13/36 310

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 システムバス同士を接続するバスブリッ
ジを持つ情報処理システムにおいて、前記バスブリッジが持つコマンドバッファに対するコマ
ンドの送受信の数の差を監視し、予め閾値により定義さ
れる一定サイクルの間前記の差が変化しなくなる状態を
検出することによりバスのストールを検出し、 該バスのストールを検出したときにバッファビジーを一
時的に抑止して前記システムバスを介して到来するコマ
ンドの受信を許可し、前記コマンドの送受信の数の差が
前記コマンドバッファが持つエントリ数より少なくなる
ように予め設定された閾値を越えたときに前記バッファ
ビジーにより後続するコマンドの受信を抑止することを
特徴とするバス制御装置。
1. An information processing system having a bus bridge for connecting system buses to each other, a command buffer for the command buffer of the bus bridge.
Monitor the difference between the number of incoming and outgoing
The above condition will not change during a certain cycle
By detecting the stall of the bus by detecting it, the buffer busy is temporarily suppressed when the stall of the bus is detected, and the reception of the command arriving via the system bus is permitted, and the number of the transmission and reception of the command. The bus controller suppresses the reception of a subsequent command due to the buffer busy when a threshold value set in advance so that the difference is smaller than the number of entries in the command buffer is exceeded.
【請求項2】 バス経由で受信したコマンドを格納する
バッファと、そのバッファのリードポインタを生成する
リードポインタ生成回路と、ライトポインタを生成する
ライトポインタ生成回路と、該リードポインタとライト
ポインタ出力が供給され、両ポインタ値の差分を算出す
ることによりバッファに格納されているコマンド数を求
め、バッファフルを検出して後続のコマンド受信を抑止
するバッファビジー信号を生成し、これを検出するバッ
ファビジー検出回路と、前記リードポインタとライトポインタの差分を予め定義
される第一の閾値と比較することによってバッファビジ
ーを検出し、さらに前記リードポインタ及び前記ライト
ポインタの値が予め第二の閾値により定義される一定サ
イクルの間変化しなくなる状態を検出することにより該
バッファビジー信号を抑止するストール検出回路と、 前記ビジー検出回路とストール検出回路出力の論理和演
算を行い、ビジー信号として外部へ出力する論理和回路
とを備えることを特徴とするバス制御装置。
2. A buffer for storing a command received via a bus, a read pointer generation circuit for generating a read pointer of the buffer, a write pointer generation circuit for generating a write pointer, and a read pointer and a write pointer output. The number of commands stored in the buffer is calculated by calculating the difference between the two pointer values supplied, and a buffer busy signal that detects the buffer full and suppresses subsequent command reception is generated. Predefine the detection circuit and the difference between the read pointer and the write pointer
Buffer busy by comparing with a first threshold
Is detected, the read pointer and the write are further detected.
The pointer value is a constant value that is defined in advance by the second threshold.
By detecting a state that does not change during the cycle,
A bus control device comprising: a stall detection circuit for suppressing a buffer busy signal; and a logical sum circuit for performing a logical sum operation of the outputs of the busy detection circuit and the stall detection circuit and outputting the result as a busy signal to the outside.
【請求項3】 前記ストール検出回路は、リードポイン
タ生成回路ならびにライトポインタ生成回路により供給
されるそれぞれのポインタ値の差分を演算する減算器
と、該減算器出力と予めストール検出のために設定され
る閾値を比較し、前記差分が設定された閾値を越えたと
きに有意となる信号を出力する第一の比較器と、前記リ
ードポインタ及び前記ライトポインタに設定されるそれ
ぞれの値の変化を検出する第二・第三の比較器と、前記
第二・第三の比較器出力の論理積演算を行い、前記スト
ールを監視するのに必要な所定の値をカウントするカウ
ンタのセットリセットを行なう第一の論理積回路と、前
記カウンタ出力と前記予め定義された閾値とを比較して
バスのストールを検出する第四の比較器と、前記第一の
比較器と第四の比較器出力を論理積演算する第二の論理
積演算回路とを備えることを特徴とする請求項2記載の
バス制御装置。
3. The stall detection circuit is set in advance for stall detection with a subtracter that calculates the difference between the pointer values supplied by the read pointer generation circuit and the write pointer generation circuit, and the subtracter output. that threshold are compared, and a first comparator for outputting a signal which becomes significant when it exceeds the threshold value the difference is set, the Li
To monitor the stall by performing a logical product operation of the outputs of the second and third comparators and the second and third comparators that detect changes in the respective values set in the write pointer and the write pointer . A first AND circuit that sets and resets a counter that counts a predetermined value necessary for the above, and a fourth comparator that detects the stall of the bus by comparing the counter output with the predefined threshold value. 3. The bus control device according to claim 2, further comprising: a second AND operation circuit for ANDing the outputs of the first comparator and the fourth comparator.
【請求項4】 前記ストール検出を有効にするモードフ
ラグが設定されるフリツプフロップを更に備え、前記第
二の論理積演算回路の一入力として供給し、ストール検
出のための機能を制御することを特徴とする請求項3記
載のバス制御装置。
4. A flip-flop having a mode flag set to enable the stall detection is further provided, and the flip-flop is supplied as one input of the second AND operation circuit to control the function for stall detection. The bus control device according to claim 3.
【請求項5】 第一のシステムバスと、第二のシステム
バスと、前記第一のシステムバスを介して到来するコマ
ンドを第一のバスインタフェースを介して受信し、バス
ブリッジ制御回路による制御の下で第二のバスインタフ
ェースを介して前記第二のシステムバスへ送信する第一
のコマンドバッファと、前記第二のシステムバスを介し
て到来するコマンドを前記第二のバスインタフェースを
介して受信し、前記バスブリッジ制御回路による制御の
下で前記第一のバスインタフェースを介して前記第一の
システムバスへ送信する第二のコマンドバッファと、前記第一・第二のそれぞれのコマンドバッファに対する
コマンドの送受信の数の差を監視し、予め閾値により定
義される一定サイクルの間前記の差が変化しなくなる状
態を検出することにより前記第一・第二のシステムバス
のストールを検出し、 該システムバスのストールを検出
したときにバッファビジーを一時的に抑止して前記いず
れか一方のシステムバスからのコマンドの受信を許可
し、前記コマンドの送受信の数の差が前記第一・第二の
コマンドバッファが持つエントリ数より少なくなるよう
に予め設定された閾値を越えたときに前記バッファビジ
ーにより後続するコマンドの受信を抑止するバスブリッ
ジ制御回路とを備えることを特徴とする情報処理システ
ム。
5. A first system bus, a second system bus, and a command arriving via the first system bus are received via a first bus interface and controlled by a bus bridge control circuit. A first command buffer which is transmitted below to the second system bus via a second bus interface, and a command which arrives via the second system bus is received via the second bus interface. A second command buffer for transmitting to the first system bus via the first bus interface under the control of the bus bridge control circuit, and the first and second command buffers.
Monitor the difference in the number of command transmissions and receptions and set the threshold in advance.
The difference does not change during a certain fixed cycle.
The first and second system buses by detecting the status
Of the system bus is detected, the buffer busy is temporarily suppressed when the stall of the system bus is detected, and the reception of the command from either one of the system buses is permitted. And a bus bridge control circuit for suppressing reception of a subsequent command due to the buffer busy when a threshold value set in advance so as to be smaller than the number of entries held by the first and second command buffers is exceeded. Information processing system.
JP06407999A 1999-03-10 1999-03-10 Bus control device and information processing system having the same Expired - Fee Related JP3458750B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06407999A JP3458750B2 (en) 1999-03-10 1999-03-10 Bus control device and information processing system having the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06407999A JP3458750B2 (en) 1999-03-10 1999-03-10 Bus control device and information processing system having the same

Publications (2)

Publication Number Publication Date
JP2000259551A JP2000259551A (en) 2000-09-22
JP3458750B2 true JP3458750B2 (en) 2003-10-20

Family

ID=13247735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06407999A Expired - Fee Related JP3458750B2 (en) 1999-03-10 1999-03-10 Bus control device and information processing system having the same

Country Status (1)

Country Link
JP (1) JP3458750B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW579467B (en) * 2002-07-24 2004-03-11 Via Tech Inc Method for blocking request to bus
US7457892B2 (en) * 2006-06-05 2008-11-25 Freescale Semiconductor, Inc. Data communication flow control device and methods thereof
JP5332905B2 (en) * 2009-05-26 2013-11-06 富士通セミコンダクター株式会社 Bus control system and semiconductor integrated circuit

Also Published As

Publication number Publication date
JP2000259551A (en) 2000-09-22

Similar Documents

Publication Publication Date Title
EP3588309B1 (en) Semiconductor device, control system, and control method of semiconductor device
US10289569B2 (en) Information processing device and processor
US7860940B2 (en) System and method for bus transmission cancellation
EP0078034B1 (en) Data processing machine suitable for high-speed processing
ITMI950388A1 (en) IT SYSTEM THAT MAINTAINS CACHE CONSISTENCY FOR THE WHOLE SYSTEM DURING DEFERRED COMMUNICATION TRANSACTIONS
JP2008518310A (en) Method and apparatus for monitoring memory units in a multiprocessor system
US20150067277A1 (en) Multiprocessor system for restricting an access request to a shared resource
US8327078B2 (en) Dynamic trailing edge latency absorption for fetch data forwarded from a shared data/control interface
JP3458750B2 (en) Bus control device and information processing system having the same
JPWO2008120566A1 (en) Engine / processor linkage system and linkage method
JP4376787B2 (en) Event notification method, device, and processor system
US6584580B1 (en) Processor and multiprocessor system
JPH0478908A (en) Clock control system
US5592680A (en) Abnormal packet processing system
JP3862777B2 (en) Duplex data matching method and duplex control device
JP2937857B2 (en) Lock flag release method and method for common storage
JP4597484B2 (en) Compound computer system
JP2559531B2 (en) Redundant system error check circuit
JPH076049A (en) Interrupt synchronization method for multiple processors
JPS6398049A (en) Bus control system in buffer nullifying processing
JPH02306349A (en) Main storage controller
JPS6128146B2 (en)
JPH0784933A (en) Input/output control board
JPH09325912A (en) Information processor
JPH08328997A (en) Local bus access method and bus adapter

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030708

LAPS Cancellation because of no payment of annual fees