JPH0916541A - Information processor - Google Patents
Information processorInfo
- Publication number
- JPH0916541A JPH0916541A JP18830395A JP18830395A JPH0916541A JP H0916541 A JPH0916541 A JP H0916541A JP 18830395 A JP18830395 A JP 18830395A JP 18830395 A JP18830395 A JP 18830395A JP H0916541 A JPH0916541 A JP H0916541A
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- transaction
- write
- control means
- 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
Landscapes
- Bus Control (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は情報処理装置に関し、特
に情報処理装置のデータ転送/割り込み同期方式に関す
る。より詳細には、本発明は、二重化バスで構成され、
入出力制御部から記憶部へデータ転送を行い、データ転
送の終了を割り込みによってソフトウェアに通知する方
式の従来の情報処理装置において、性能向上の必要性か
ら採用された二重化バスの構造のためにデータブロック
を割り込みが追い越す可能性をハードウェアで制御する
ようにした情報処理装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus, and more particularly, to a data transfer / interrupt synchronization method for an information processing apparatus. More specifically, the present invention comprises a duplicated bus,
In a conventional information processing device that transfers data from the input / output control unit to the storage unit and notifies the software of the end of the data transfer by an interrupt, the data structure is reduced due to the redundant bus structure adopted because of the need to improve performance. The present invention relates to an information processing apparatus in which the possibility of an interrupt overtaking a block is controlled by hardware.
【0002】[0002]
【従来の技術】従来、演算処理部、記憶部、入出力制御
部、それらを接続する一本のバスからなる情報処理装置
においては、入出力制御部から記憶部へデータ転送(例
えばデバイスから記憶部へのDMA(Direct Memory Ac
cess)転送)を行い、データ転送の終了を入出力制御部
から演算処理部への割り込みによってソフトウェア(割
り込みハンドラ)に通知する場合、転送されるデータブ
ロックを割り込みが追い越すという問題はおこらない。2. Description of the Related Art Conventionally, in an information processing apparatus including an arithmetic processing unit, a storage unit, an input / output control unit, and a single bus connecting them, data transfer from the input / output control unit to the storage unit (for example, storage from the device DMA (Direct Memory Ac)
cess) transfer, and the completion of the data transfer is notified to the software (interrupt handler) by the interrupt from the input / output control unit to the arithmetic processing unit, there is no problem that the data block to be transferred is overtaken by the interrupt.
【0003】また、演算処理部、記憶部、入出力制御
部、それらを接続する二重化バスで構成され、入出力制
御部から記憶部へデータ転送を行い、データ転送の終了
を入出力制御部から演算処理部への割り込みによって演
算処理部のソフトウェア(割り込みハンドラ)に通知す
る情報処理装置では、この追い越し制御をソフトウェア
で行っていた。[0003] Further, it is composed of an arithmetic processing unit, a storage unit, an input / output control unit, and a redundant bus connecting them, and performs data transfer from the input / output control unit to the storage unit. In an information processing apparatus that notifies software (interrupt handler) of an arithmetic processing unit by interruption to the arithmetic processing unit, the overtaking control is performed by software.
【0004】なお、二重化バスは、例えば本発明の一実
施例を説明するための図1に示すように、入出力制御部
とデバイス制御部とを接続する入出力バス(I/Oバス
等)と、入出力制御部、記憶部、演算処理部等が接続さ
れるシステムバス(SYSBUS等)を二重化して実質
的にバスのビット(バイト)幅を増大し、バス転送のバ
ンド幅を拡大し高速転送の実現等性能向上を図るもので
ある。A duplex bus is an input / output bus (such as an I / O bus) for connecting an input / output control unit and a device control unit as shown in FIG. 1 for explaining an embodiment of the present invention. And a system bus (SYSBUS or the like) to which the input / output control unit, the storage unit, the arithmetic processing unit, and the like are connected is doubled to substantially increase the bit (byte) width of the bus and increase the bus transfer bandwidth. It is intended to improve performance such as realization of high-speed transfer.
【0005】そして、二重化バスにおける割り込みの追
い越し制御をソフトウェアで実現する方法の一例とし
て、演算処理部がデバイス制御部へのI/Oリード要求
(デバイス制御部から記憶部へのDMA転送)を発行
し、データ転送終了の割り込みハンドラが起動された際
に該デバイス制御部に対して引き続きダミーなアクセス
(データの読み出し転送を行なわないダミーなI/Oリ
ード等)を行ない、このダミーなI/Oリードに対する
デバイス制御部からの応答(レスポンス)を演算処理部
が入手した後に、前記したI/Oリード要求によって記
憶部に転送されたデータの処理を行なうようにする方法
がある。[0005] As an example of a method for realizing the overtaking control of the interrupt in the redundant bus by software, the arithmetic processing unit issues an I / O read request (DMA transfer from the device control unit to the storage unit) to the device control unit. When the data transfer end interrupt handler is activated, dummy access (such as dummy I / O read without data read transfer) is continuously performed to the device control unit, and the dummy I / O is performed. There is a method in which after the arithmetic processing unit obtains a response (response) to the read from the device control unit, the data transferred to the storage unit by the above-described I / O read request is processed.
【0006】この制御方法によれば、デバイス制御部か
ら読み出され、一の入出力制御部でシステムバスへの出
力が待ち状態とされていたデータブロックも、ダミーな
I/Oリードのデバイス制御部からの応答に対して時系
列的に先行しているため、デバイス制御部からのダミー
なI/Oリードに対する応答が演算処理部に到達した時
点では、該データブロックは既に記憶部に転送済みであ
り、割り込みの追い越しによる「データ化け」(旧デー
タを新データとして扱う事)が回避される。According to this control method, a data block read from the device control unit and waiting for output to the system bus by one input / output control unit can also be used for device control of dummy I / O read. The data block has already been transferred to the storage unit when the response to the dummy I / O read from the device control unit arrives at the arithmetic processing unit because it precedes the response from the unit in time series. Thus, "garbled data" (treating old data as new data) due to passing of an interrupt is avoided.
【0007】[0007]
【発明が解決しようとする課題】上述した情報処理装置
で、ソフトウェアが追い越し制御を行わない場合、入出
力制御部から記憶部へ二重化バスを用いて交互に所定の
バイト長からなるブロック単位のデータ転送を行い、デ
ータ転送終了時に入出力制御部から演算処理部へ割り込
みを行うが、二重化バスであるため、最後のデータブロ
ックと割り込みがそれぞれ別の入出力制御部に上がり、
最後のデータブロックが一側の入出力制御部においてバ
スビジーのため一側のバスへ発行されるのを待っている
間、後続の割り込みが待ち状態のデータブロックを追い
越して、他側のバスから演算処理部のソフトウェア(割
り込みハンドラ)に通知されるという事態が生じる。In the above-mentioned information processing apparatus, when software does not perform overtaking control, data in block units each having a predetermined byte length are alternately transmitted from the input / output control unit to the storage unit using a duplex bus. When the data transfer is completed, the I / O control unit interrupts the arithmetic processing unit at the end of the data transfer.However, because of the redundant bus, the last data block and the interrupt go up to separate I / O control units, respectively.
While waiting for the last data block to be issued to one bus due to bus busy in one input / output control unit, a subsequent interrupt overtakes the waiting data block and performs operation from the other bus. A situation occurs in which the software (interrupt handler) of the processing unit is notified.
【0008】割り込みの追い越しが発生し、割り込みを
通知されたソフトウェアは、記憶部にデータブロックが
書き込まれる前の古いデータブロックを用いてしまうこ
とになり、「データ化け」が生じてしまう。[0008] When the software is notified of the interruption due to the passing of the interruption, the old data block before the data block is written to the storage unit is used, resulting in "garbled data".
【0009】一方、ソフトウェアがこの追い越しを制御
する場合には、貴重な演算処理部の能力を浪費すること
になり、結果的に二重化バスによるシステムの性能向上
を阻害することにもなる。On the other hand, when the software controls the overtaking, valuable performance of the arithmetic processing unit is wasted, and as a result, improvement of the system performance by the redundant bus is hindered.
【0010】従って、本発明の目的は、上記問題点を解
消し、古いデータブロックの誤用によるデータ化けを確
実に回避し性能改善を達成する情報処理装置を提供する
ことにある。SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide an information processing apparatus which solves the above-mentioned problems, reliably avoids garbled data due to misuse of old data blocks, and achieves an improvement in performance.
【0011】[0011]
【課題を解決するための手段】前記目的を達成するた
め、本発明は、演算処理手段と、記憶手段と、第1及び
第2の入出力制御手段と、デバイス制御手段と、を含
み、二重化されたバス構成を有する情報処理装置におい
て、前記第1の入出力制御手段が、前記デバイス制御手
段から入力されたトランザクションをデコードして前記
デバイス制御手段から前記記憶手段へのDMAデータ転
送(「DMAライト」という)であることを検出した際
に、前記第2の入出力制御手段に前記DMAライトのト
ランザクションを保持中である旨を通知するためのライ
ト実行信号をアクティブ状態とするように制御する回路
手段を備え、前記第2の入出力制御手段が、前記第1の
入出力制御手段から出力される前記ライト実行信号を入
力し、前記デバイス制御手段から入力されたトランザク
ションをデコードして割り込み要求であることを検出し
た際に、前記ライト実行信号がアクティブ状態にある間
前記割り込み要求を保留し、前記ライト実行信号がイン
アクティブ状態になった時点で前記保留された割り込み
要求を発行するように制御する回路手段を備えたことを
特徴とする情報処理装置を提供する。In order to achieve the above object, the present invention provides a dual processing system including an arithmetic processing unit, a storage unit, first and second input / output control units, and a device control unit. In the information processing apparatus having the above-described bus configuration, the first input / output control means decodes a transaction input from the device control means and transfers DMA data from the device control means to the storage means (“DMA data transfer”). , The write execution signal for notifying the second input / output control means that the DMA write transaction is being held is set to the active state. Circuit means, wherein the second input / output control means inputs the write execution signal output from the first input / output control means, and When the transaction input from the means is decoded and an interrupt request is detected, the interrupt request is suspended while the write execution signal is in an active state, and the write execution signal is inactivated. And a circuit means for controlling so as to issue the suspended interrupt request.
【0012】本発明は、好ましくは、前記第1及び第2
の入出力制御手段が、データを保持し前記記憶手段との
データの一致性(「コヒーレンシ」という)を保つため
の入出力キャッシュ手段を備え、前記第1の入出力制御
手段が、前記トランザクションをデコードした結果前記
DMAライトである場合に前記ライト実行線をアクティ
ブ状態にセットすると共に、前記トランザクションが前
記入出力キャッシュ手段に対してヒットした場合には、
前記トランザクションを前記入出力キャッシュ手段に格
納した後に前記ライト実行線をインアクティブ状態とす
ることを特徴とする。[0012] The present invention preferably provides the first and second embodiments.
Input / output control means includes input / output cache means for retaining data and maintaining data consistency with the storage means (referred to as "coherency"), and the first input / output control means When the decoded result indicates the DMA write, the write execution line is set to an active state, and when the transaction hits the input / output cache unit,
After the transaction is stored in the input / output cache unit, the write execution line is set to an inactive state.
【0013】また、本発明は、好ましくは、前記トラン
ザクションが前記入出力キャッシュ手段に対してミスし
た場合には、キャッシュを無効化する排他型のコヒーレ
ントリード要求が第1のシステムバス上に発行され、該
排他型のコヒーレントリード要求に対する応答データを
前記第1のシステムバスから前記入出力キャッシュに書
き込むと共に、保持中の前記トランザクションを前記入
出力キャッシュに書き込み、前記ライト実行線をインア
クティブ状態とすることを特徴とする。Preferably, when the transaction misses the input / output cache means, an exclusive coherent read request for invalidating a cache is issued on the first system bus. Writing response data to the exclusive coherent read request from the first system bus to the input / output cache, writing the held transaction to the input / output cache, and setting the write execution line to an inactive state. It is characterized by the following.
【0014】本発明は、第1、第2のシステムバスと、
前記第1、第2のシステムバスにそれぞれ接続される第
1、第2の入出力制御手段と、第1、第2の入出力バス
と、前記第1、第2の入出力バスを介して前記第1、第
2の入出力手段にそれぞれ接続されるデバイス制御手段
と、記憶手段と、演算処理手段と、を含む情報処理装置
において、前記第1の入出力制御手段が、DMAライト
を保有したことを認識した場合に、該DMAライトを保
有中である旨の情報を前記第2の入出力制御手段に通知
し、保有中の該DMAライトを前記第1のシステムバス
に出力するように制御するDMAライト実行検出手段を
備え、前記第2の入出力制御手段が、前記第1の入出力
制御手段の前記DMAライト実行検出手段からの通知情
報に基づき、前記デバイス制御手段から割り込みを受信
した場合に、DMAライトの実行中は前記第2のシステ
ムバスの獲得要求を抑止して前記割り込みを保留し、D
MAライト実行中でなくなった場合に前記第2のシステ
ムバスの獲得要求を行い、前記第2のシステムバスを獲
得した際に保留されていた前記割り込みを発行する割り
込み抑止手段を、備えたことを特徴とする情報処理装置
を提供する。The present invention comprises a first and a second system bus,
Via first and second input / output control means respectively connected to the first and second system buses, first and second input / output buses, and the first and second input / output buses. In an information processing device including a device control unit, a storage unit, and an arithmetic processing unit, which are respectively connected to the first and second input / output units, the first input / output control unit has a DMA write. When it is recognized that the DMA write is held, the information indicating that the DMA write is held is notified to the second input / output control means, and the held DMA write is output to the first system bus. DMA write execution detection means for controlling is provided, and the second input / output control means receives an interrupt from the device control means based on the notification information from the DMA write execution detection means of the first input / output control means. If you do, DM Light is running pending the interruption thus suppressing the acquisition request of the second system bus, D
Interrupt inhibiting means for issuing an acquisition request for the second system bus when the MA write is not being executed and issuing the interrupt suspended when the second system bus is acquired. An information processing device having a feature is provided.
【0015】本発明は、好ましくは、前記第1及び第2
の入出力制御手段が、データを保持し記憶手段とのデー
タの一致性(「コヒーレンシ」という)を保つための入
出力キャッシュ手段を備え、前記第1及び第2のシステ
ムバスがコヒーレンシ機能を有し、前記第1の入出力制
御手段が、DMAライトを保有したことを認識し、DM
Aライトを保有中である旨の情報を前記第2の入出力制
御手段に通知し、保有中のDMAライトのアドレスが前
記入出力キャッシュ手段で保持しているアドレスと一致
した場合に、データを前記入出力キャッシュ手段にライ
トしてDMAライトを保有しなくなったことを認識し、
保有中のDMAライトアドレスが前記入出力キャッシュ
手段で保持しているアドレスと不一致の場合、前記第1
のシステムバスの獲得要求を行い、前記第1のシステム
バスを獲得した後に、コヒーレンシ機能を持ち、同一ア
ドレスのデータブロックを持っていた場合、キャッシュ
を無効化するリード(「排他型コヒーレントリード」と
いう)を前記第1のシステムバスに出力し、該リードの
応答データを受け取った後、該データを前記入出力キャ
ッシュに書き込み、保留中のDMAライト処理が終了し
たことを認識して前記第2の入出力制御手段に通知する
手段、を備えたことを特徴とする。[0015] The present invention preferably provides the first and second embodiments.
Input / output control means includes input / output cache means for holding data and maintaining data consistency with the storage means (referred to as "coherency"), and the first and second system buses have a coherency function. Then, the first input / output control means recognizes that it has a DMA write,
The second I / O control unit is notified of information that the A write is being held, and if the address of the held DMA write matches the address held by the I / O cache unit, the data is deleted. Recognizing that writing to the input / output cache means no longer holds the DMA write,
If the held DMA write address does not match the address held in the input / output cache means, the first
After the first system bus is acquired and the first system bus is acquired, if a data block having the same address is provided with a coherency function, a read for invalidating the cache (referred to as “exclusive coherent read”) ) Is output to the first system bus, and after receiving the response data of the read, the data is written to the input / output cache, and it is recognized that the pending DMA write process has been completed, and the second Means for notifying the input / output control means.
【0016】また、本発明は、好ましくは、前記第1の
入出力制御手段が、第1のI/Oバスを介して前記デバ
イス制御手段から送出されたトランザクションを入力す
る入力バッファレジスタと、該入力バッファレジスタに
格納されたトランザクションをデコードするデコーダ
と、該トランザクションの有効/無効を示す第1のフラ
グと、DMAリード/ライトを示す第2のフラグと、割
り込み要求の有無を示す第3のフラグと、前記トランザ
クションを保持するフィールドと、を少なくとも含むレ
ジスタと、第1のシステムバスに該トランザクションを
出力するための出力バッファレジスタを備え、前記第1
のフラグは、前記デバイス制御手段からのトランザクシ
ョン送信合図信号がアクティブ状態とされ、該トランザ
クションが有効である時にオン状態とされ、前記第1の
フラグがオン状態を示し、前記第2のフラグがDMAラ
イトを示す時に前記ライト実行信号をアクティブとする
ことを特徴とする。In the present invention, preferably, the first input / output control means inputs a transaction sent from the device control means via a first I / O bus, and A decoder for decoding a transaction stored in the input buffer register; a first flag indicating validity / invalidity of the transaction; a second flag indicating DMA read / write; and a third flag indicating presence / absence of an interrupt request And a register including at least a field for holding the transaction; and an output buffer register for outputting the transaction to a first system bus.
Are turned on when the transaction transmission signal from the device control means is activated, and when the transaction is valid, the first flag indicates the on state, and the second flag indicates the DMA state. The write execution signal is activated when a write is indicated.
【0017】さらに、本発明は、好ましくは、前記第2
の入出力制御手段が、第2のI/Oバスを介して前記デ
バイス制御手段から送出されたトランザクションを入力
する入力バッファレジスタと、該入力バッファレジスタ
に格納されたトランザクションをデコードするデコーダ
と、該トランザクションの有効/無効を示す第1のフラ
グと、DMAリード/ライトを示す第2のフラグと、割
り込み要求の有無を示す第3のフラグと、前記トランザ
クションを保持するフィールドと、を少なくとも含むレ
ジスタと、第2のシステムバスに該トランザクションを
出力する出力バッファレジスタを備え、前記第1のフラ
グは、前記デバイス制御手段からのトランザクション送
信合図信号がアクティブ状態とされ、該トランザクショ
ンが有効である時にオン状態とされ、前記第1のフラグ
がオン状態を示す場合において、前記第3のフラグが前
記デバイス制御手段からの割り込み要求を示すと共に前
記ライト信号線がアクティブ状態の時に、前記デバイス
制御手段からの前記割り込み要求を前記演算処理装置に
伝達しないように制御することを特徴とする。Further, the present invention preferably comprises the second step.
An input buffer register for inputting a transaction sent from the device control means via a second I / O bus, a decoder for decoding a transaction stored in the input buffer register, A register including at least a first flag indicating validity / invalidity of the transaction, a second flag indicating DMA read / write, a third flag indicating the presence or absence of an interrupt request, and a field for holding the transaction; And an output buffer register for outputting the transaction to a second system bus, wherein the first flag is set to an on state when a transaction transmission signal from the device control means is activated and the transaction is valid. And the first flag indicates an ON state. In this case, the third flag indicates an interrupt request from the device control means, and is controlled so that the interrupt request from the device control means is not transmitted to the arithmetic processing unit when the write signal line is in an active state. It is characterized by doing.
【0018】[0018]
【作用】本発明によれば、デバイスから記憶装置へのD
MA転送におけるデータブロックの割り込みによる追い
越しをハードウエアで抑止するように構成したことによ
り、ソフトウェアによるデータ転送と割り込みの同期制
御を不要とし、データ転送と割り込みの順序を確実に保
証することができるため、高速で、データ・インテグリ
ティの高い二重化バスで構成される情報処理装置を実現
することが可能とされ、例えば高速データ転送が要求さ
れるファイルサーバ等の情報処理装置に好適に適用され
る。According to the present invention, D is transferred from a device to a storage device.
Since the overtaking due to the interruption of the data block in the MA transfer is suppressed by hardware, the synchronous control of the data transfer and the interrupt by software is not required, and the order of the data transfer and the interrupt can be reliably guaranteed. It is possible to realize an information processing device configured with a high-speed, high-data-integration duplex bus, and is suitably applied to, for example, an information processing device such as a file server that requires high-speed data transfer.
【0019】[0019]
【実施例】図面を参照して、本発明の実施例を以下に説
明する。Embodiments of the present invention will be described below with reference to the drawings.
【0020】[0020]
【実施例1】図1は、本発明の一実施例の構成を示すブ
ロック図である。FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.
【0021】図1を参照して、本実施例に係る二重化バ
ス方式の情報処理装置は、第1の入出力制御部101、
第2の入出力制御部201、およびデバイス制御部30
1を備えている。Referring to FIG. 1, the information processing apparatus of the dual bus system according to the present embodiment includes a first input / output control unit 101,
Second input / output control unit 201 and device control unit 30
1 is provided.
【0022】第1の入出力制御部101(=入出力制御
部1)は、第1のシステムバスのSYSBUS1、RE
Q1、GNT1を介していずれも不図示のCPU(演算
処理装置)とメモリとに接続されると共に、第1のI/
OバスのIOBUS1、ADS1、RDY1を介してデ
バイス制御部301に接続される。The first input / output control unit 101 (= input / output control unit 1) includes SYSBUS1 and REBUS of the first system bus.
Both are connected to a CPU (arithmetic processing unit) (not shown) and a memory via Q1 and GNT1, and a first I / O
It is connected to the device control unit 301 via IOBUS1, ADS1, and RDY1 of the O bus.
【0023】第2の入出力制御部201(=入出力制御
部2)は、第2のシステムバスのSYSBUS2、RE
Q2、GNT2を介して不図示のCPUとメモリと接続
されると共に、第2のI/OバスのIOBUS2、AD
S2、RDY2を介してデバイス制御部301に接続さ
れる。The second input / output control unit 201 (= input / output control unit 2) is provided with SYSBUS2, REBUS of the second system bus.
Q2 and GNT2 are connected to a CPU and a memory (not shown), and the second I / O bus IOBUS2,
It is connected to the device control unit 301 via S2 and RDY2.
【0024】デバイス制御部301側からみた場合、第
1のI/OバスのIOBUS1、ADS1、RDY1を
介して入出力制御部1に接続されると共に、第2のI/
OバスのIOBUS2、ADS2、RDY2を介して入
出力制御部2に接続される。When viewed from the device control unit 301 side, it is connected to the input / output control unit 1 via the first I / O bus IOBUS1, ADS1, RDY1 and the second I / O bus.
It is connected to the input / output control unit 2 via IOBUS2, ADS2, and RDY2 of the O bus.
【0025】なお、図1において、信号、構成要素の名
称の最後に付加される「1」または「2」(例えば、R
EQ1、REQ2あるいはBUF1、BUF2等におけ
る「1」、「2」)は、二重化されたバス及び入出力制
御部における「第1」又は「第2」を示すものであり、
以下では主としてこの記法を用いる。また、「第1」と
「第2」をそれぞれ指示する際には、例えば「REQ1
/2」等のような記法を用いる。In FIG. 1, "1" or "2" (for example, R
"1" and "2" in EQ1, REQ2 or BUF1, BUF2, etc. indicate "first" or "second" in a duplicated bus and an input / output control unit,
In the following, this notation is mainly used. When “first” and “second” are designated, for example, “REQ1”
/ 2 "or the like.
【0026】システムバスは二重化され、SYSBUS
1/2、REQ1/2、GNT1/2から成り、SYS
BUS1/2は、トランザクションのアドレス/データ
/コマンドを転送し、REQ1/2はシステムバスに接
続されている不図示のバスエージェント(「バスアービ
タ」ともいう)に対するバス使用要求線、GNT1/2
はバスエージェントからのバス使用許可線である。ま
た、SYSBUS1、REQ1、GNT1からなる第1
のシステムバスと、SYSBUS2、REQ2、GNT
2からなる第2のシステムバスは独立に動作する。The system bus is duplicated, and SYSBUS
1/2, REQ1 / 2, GNT1 / 2, SYS
BUS1 / 2 transfers the address / data / command of the transaction, and REQ1 / 2 denotes a bus use request line for a bus agent (also referred to as a “bus arbiter”) connected to the system bus, GNT1 / 2.
Is a bus use permission line from the bus agent. Also, a first bus composed of SYSBUS1, REQ1, and GNT1 is used.
System bus, SYSBUS2, REQ2, GNT
The second system bus consisting of two operates independently.
【0027】I/Oバスは二重化され、IOBUS1/
2、ADS1/2、RDY1/2から成り、IOBUS
1/2はトランザクションのアドレス/データ/コマン
ドを転送し、ADS1/2はデバイス制御部301から
のトランザクション送信合図(アドレスストローブ信
号)、RDY1/2は、入出力制御部1/2のトランザ
クション受信レスポンス(レディ信号)である。The I / O bus is duplicated and IOBUS1 /
2, consisting of ADS1 / 2, RDY1 / 2, IOBUS
1/2 transfers the address / data / command of the transaction, ADS1 / 2 is the transaction transmission signal (address strobe signal) from the device control unit 301, and RDY1 / 2 is the transaction reception response of the input / output control unit 1/2. (Ready signal).
【0028】図1に示すように、入出力制御部1は、入
力バッファレジスタ(INBUF1)108、バッファ
レジスタ(BUF1)113、出力バッファレジスタ
(OUTBUF1)114、デコーダ(DEC1)11
2、ライト実行検出部115、レジスタ(RADS1)
109、レジスタ(RRDY1)110を備えている。As shown in FIG. 1, the input / output controller 1 includes an input buffer register (INBUF1) 108, a buffer register (BUF1) 113, an output buffer register (OUTBUF1) 114, and a decoder (DEC1) 11.
2. Write execution detection unit 115, register (RADS1)
109, a register (RRDY1) 110.
【0029】入出力制御部2は、入力バッファレジスタ
(INBUF2)208、バッファレジスタ(BUF
2)213、出力バッファレジスタ(OUTBUF2)
214、デコーダ(DEC2)212、割り込み抑止部
215、レジスタ(RADS2)209、レジスタ(R
RDY2)210を備え、入出力制御部1のライト実行
検出部115から出力されるライト実行線111が入出
力制御部2の割り込み抑止部215に入力されている。The input / output controller 2 includes an input buffer register (INBUF2) 208 and a buffer register (BUF).
2) 213, output buffer register (OUTBUF2)
214, decoder (DEC2) 212, interrupt suppression unit 215, register (RADS2) 209, register (R
RDY2) 210, and the write execution line 111 output from the write execution detection unit 115 of the input / output control unit 1 is input to the interrupt suppression unit 215 of the input / output control unit 2.
【0030】INBUF1/2は、デバイス制御部30
1が、IOBUS1/2に出力するトランザクション
(アドレス、コマンド、データ)を1クロック分保持す
るレジスタである。INBUF1 / 2 is the device control unit 30
Reference numeral 1 denotes a register for holding a transaction (address, command, data) output to IOBUS1 / 2 for one clock.
【0031】RADS1/2は、デバイス制御部301
が出力するアドレスストローブ(ADS)1/2を1ク
ロック分保持し、ADS1/2が有効になった1クロッ
ク後に論理“1”を出力するレジスタである。RADS1 / 2 is a device control unit 301
Is a register that holds the address strobe (ADS) 1/2 output by the CPU for one clock, and outputs the logic "1" one clock after the ADS1 / 2 becomes valid.
【0032】RRDY1/2は、RADS1/2の出力
が論理“1”で、かつINBUF1/2に格納されてい
るアドレス/コマンドを、DEC1/2がデコードし、
そのデコード結果、受信したトランザクションが有効で
ある場合、RADS1/2が論理“1”になった1クロ
ック後に論理“1”を示すレジスタである。In RRDY1 / 2, DEC1 / 2 decodes an address / command whose output of RADS1 / 2 is logic "1" and which is stored in INBUF1 / 2.
As a result of the decoding, if the received transaction is valid, this register indicates the logic “1” one clock after RADS1 / 2 becomes the logic “1”.
【0033】DEC1/2は、INBUF1/2に格納
されているアドレス/コマンドをデコードし、受信した
トランザクションの有効/無効を判定し、トランザクシ
ョンのタイプ(割り込み、DMAライト、あるいはDM
Aリード)を認識するデコーダである。なお、「DMA
ライト(DMA write)」は、デバイス制御部301から
I/Oバス、システムバスを介して記憶部へデータを書
込むためのDMA転送をいい、「DMAリード(DMA re
ad)」は記憶部側からシステムバス、I/Oバスを介し
てデバイス側へデータを読込むためのDMA転送をい
う。DEC1 / 2 decodes the address / command stored in INBUF1 / 2, determines whether the received transaction is valid or invalid, and determines the type of transaction (interrupt, DMA write, or DM).
A read). Note that "DMA
“Write (DMA write)” refers to a DMA transfer for writing data from the device control unit 301 to the storage unit via the I / O bus and the system bus.
ad) "means a DMA transfer for reading data from the storage unit to the device via the system bus and the I / O bus.
【0034】BUF1/2は、V(Valid:有効/
無効フラグ、「バリッドフラグ」ともいう)、割り込み
フラグ(割り込みフラグはデバイス制御部301からの
割り込みの有無を示すフラグ)、DMAリード/DMA
ライトフラグ、トランザクションを保持するトランザク
ション・フィールド(アドレス、データ)から成る。BUF1 / 2 is V (Valid: valid /
An invalid flag, also referred to as a “valid flag”), an interrupt flag (an interrupt flag is a flag indicating the presence or absence of an interrupt from the device control unit 301), a DMA read / DMA
It consists of a write flag and a transaction field (address, data) for holding a transaction.
【0035】バリッドフラグVは、DEC1/2がIN
BUF1/2に格納されているトランザクションをデコ
ードした結果、受信したトランザクションが有効である
場合、RADS1/2が論理“1”になった1クロック
後に論理“1”になり、BUF1/2のトランザクショ
ンがSYSBUS1/2に出力された後に論理“0”に
なる。The valid flag V is set such that DEC1 / 2 is IN
As a result of decoding the transaction stored in BUF1 / 2, if the received transaction is valid, the logic becomes "1" one clock after RADS1 / 2 becomes "1", and the transaction of BUF1 / 2 becomes After being output to SYSBUS1 / 2, it becomes logic "0".
【0036】割り込みフラグと、DMAリード/DMA
ライトフラグとは、バリッドフラグVが論理“1”にな
るタイミングと同一のタイミングで更新され、割り込み
フラグとDMAリード/DMAライトフラグとの論理値
(組み合わせ)は、DEC1/2がINBUF1/2に
格納されているトランザクション(コマンド)をデコー
ドした結果、トランザクションが、割り込みの場合には
“1,0”、DMAリードの場合には“0,0”、DM
Aライトの場合には“0,1”になる。Interrupt flag and DMA read / DMA
The write flag is updated at the same timing as when the valid flag V becomes logical "1". The logical value (combination) of the interrupt flag and the DMA read / DMA write flag is such that DEC1 / 2 becomes INBUF1 / 2. As a result of decoding the stored transaction (command), the transaction is “1, 0” if the transaction is an interrupt, “0, 0” if the transaction is a DMA read, and DM
In the case of the A write, it is "0, 1".
【0037】BUF1/2のトランザクション・フィー
ルドは、バリッドフラグVが論理“1”になるタイミン
グと同一のタイミングで更新され、INBUF1/2か
らトランザクションのアドレス、コマンド、データが格
納される。The transaction field of BUF1 / 2 is updated at the same timing as the timing when the valid flag V becomes logical "1", and the transaction address, command and data are stored from INBUF1 / 2.
【0038】REQ1は、BUF1のバリッドフラグV
が論理“1”になったとき、論理“1”になることで、
SYSBUS1のバス使用要求を行なう。REQ1 is a valid flag V of BUF1.
Becomes “1” when it becomes “1”,
A bus use request of SYSBUS1 is made.
【0039】REQ2は、BUF2のバリッドフラグV
にANDゲートを介して接続され、ANDゲートの他の
入力(後に説明するNANDゲート出力)が論理“1”
の状態で、バリッドフラグVが論理“1”になったと
き、論理“1”になることで、SYSBUS2のバス使
用要求を行なう。REQ2 is a valid flag V of BUF2.
Is connected via an AND gate, and the other input of the AND gate (the output of a NAND gate to be described later) is a logical "1".
In this state, when the valid flag V becomes logic "1", the bus use request of the SYSBUS2 is made by making the logic "1".
【0040】GNT1/2は、REQ1/2が論理
“1”(入出力制御部1/2がバスの使用を要求時)
で、かつ入出力制御部1/2にバスの使用権を与える時
に論理“1”になる。In GNT1 / 2, REQ1 / 2 is logic "1" (when the input / output control unit 1/2 requests use of the bus).
When the right to use the bus is given to the input / output control unit 1/2, the logic becomes "1".
【0041】OUTBUF1/2は、トランザクション
がBUF1/2に格納された1クロック後にトランザク
ションのアドレス、コマンド、データを格納する。そし
て、GNT1/2が‘1’になると、OUTBUF1/
2からトランザクションがSYSBUS1/2に出力さ
れる。OUTBUF1 / 2 stores the address, command, and data of the transaction one clock after the transaction is stored in BUF1 / 2. When GNT1 / 2 becomes “1”, OUTBUF1 /
2 outputs a transaction to SYSBUS1 / 2.
【0042】ライト実行検出部115は、バリッドフラ
グVとDMAリード/ライト・フラグとを入力とするA
NDゲートを備え、ANDゲートの出力をライト実行線
111としている。バリッドフラグVが論理“1”で、
かつDMAリード/ライト・フラグが論理“1”の場合
(DMAライトの場合)、ライト実行線111を論理
“1”として、入出力制御部1がDMAライトを実行中
であることを入出力制御部2に通知する。The write execution detector 115 receives the valid flag V and the DMA read / write flag as inputs.
An ND gate is provided, and the output of the AND gate is used as a write execution line 111. When the valid flag V is logic “1”,
When the DMA read / write flag is logic "1" (in the case of DMA write), the write execution line 111 is set to logic "1", and the input / output control unit 1 indicates that the DMA write is being executed. Notify part 2.
【0043】入出力制御部2の割り込み抑止部215
は、ライト実行線111と入出力制御部2のBUF2の
割り込みフラグを入力とするNANDゲートと、NAN
Dゲートの出力とBUF2のバリッドフラグVを入力と
するANDゲートからなり、ANDゲートの出力をRE
Q2として第2のシステムバスに出力するように構成さ
れている。The interrupt suppressing unit 215 of the input / output control unit 2
A NAND gate which receives the write execution line 111 and an interrupt flag of BUF2 of the input / output control unit 2 as inputs,
An AND gate that receives the output of the D gate and the valid flag V of BUF2 is input.
It is configured to output to the second system bus as Q2.
【0044】バリッドフラグVが論理“1”である場合
において、BUF2の割り込みフラグが論理“1”で、
かつライト実行線111が論理“1”の時には、割り込
み抑止部215のNANDゲートの出力は論理“0”と
なるため、バリッドフラグVはマスクされてANDゲー
トの出力は常に“0”とされ、REQ2は論理“0”の
状態に保持され、入出力制御部2はSYSBUS2への
割り込み発行を抑止する。When the valid flag V is logic "1", the interrupt flag of BUF2 is logic "1", and
When the write execution line 111 is at logic "1", the output of the NAND gate of the interrupt suppressing unit 215 is at logic "0". Therefore, the valid flag V is masked and the output of the AND gate is always "0". REQ2 is kept at the state of logic "0", and the input / output control unit 2 suppresses the issuance of an interrupt to SYSBUS2.
【0045】また、割り込みフラグが論理“0”、ある
いは、ライト実行線111が論理“0”の場合、割り込
み抑止部215のNANDゲートの出力は論理“1”と
なり、入出力制御部2で実行中のトランザクションの発
行は、割り込み抑止部215で抑止されない。すなわ
ち、BUF2のバリッドフラグVはANDゲートをその
まま導通し、バリッドフラグVが論理“1”と時に、R
EQ2は論理“1”となる。When the interrupt flag is logic “0” or the write execution line 111 is logic “0”, the output of the NAND gate of the interrupt suppression unit 215 becomes logic “1” and the input / output control unit 2 executes Issuance of the middle transaction is not suppressed by the interrupt suppression unit 215. In other words, the valid flag V of BUF2 conducts the AND gate as it is, and when the valid flag V is logic "1", R
EQ2 becomes logic "1".
【0046】図2は、本発明の一実施例の動作タイミン
グを示すタイミングチャートである。図2では、IOB
US1側から、DMAライト1(デバイス側から記憶部
へデータを書き込むDMA転送)が入出力制御部1に入
力され、そのDMAライト1の終了後に、IOBUS2
から割り込みが入出力制御部2に入力される。FIG. 2 is a timing chart showing the operation timing of one embodiment of the present invention. In FIG. 2, IOB
DMA write 1 (DMA transfer for writing data from the device side to the storage unit) is input to the input / output control unit 1 from the US 1 side, and after the DMA write 1 ends, IOBUS 2
Is input to the input / output control unit 2.
【0047】割り込みが入出力制御2に入力される前
に、ライト実行線111が論理“1”になった場合、割
り込み抑止部215はその状態を検出し、入出力制御部
2に割り込みが入力された際に(IOBUF2に割り込
みのトランザクションが入力されデコーダ2でデコード
されBUF2の割り込みフラグが論理“1”とされた
際)、割り込み要求の抑止を行う。すなわち、ライト実
行線111が論理“1”である期間、BUF2のバリッ
ドフラグVが論理“1”、割り込みフラグが論理“1”
の時、REQ2は論理“0”の状態を保持している。If the write execution line 111 becomes logic “1” before the interrupt is input to the input / output control 2, the interrupt suppression unit 215 detects the state, and the interrupt is input to the input / output control unit 2. (When an interrupt transaction is input to IOBUF2 and decoded by decoder 2 and the interrupt flag of BUF2 is set to logic "1"), the interrupt request is suppressed. That is, while the write execution line 111 is at logic “1”, the valid flag V of the BUF2 is logic “1” and the interrupt flag is logic “1”.
At this time, REQ2 holds the state of logic "0".
【0048】入出力制御部1で処理中のDMAライト1
をSYSBUS1へ出力すると、ライト実行線を論理
“0”に戻す。DMA write 1 being processed by the input / output control unit 1
Is output to the SYSBUS 1 to return the write execution line to logic “0”.
【0049】これを受けて、割り込み抑止部215は抑
止していた割り込みの要求をSYSBUS2に出力し、
バスの使用許可をもらったところで(GNT2が論理
“1”となった時点で)、保留中の割り込みを発行す
る。In response to this, the interrupt suppression unit 215 outputs the suppressed interrupt request to SYSBUS2,
When the bus is permitted to be used (when GNT2 becomes logic "1"), a pending interrupt is issued.
【0050】[0050]
【実施例2】図3は、本発明の第2の実施例の構成を示
すブロック図である。[Embodiment 2] FIG. 3 is a block diagram showing a configuration of a second embodiment of the present invention.
【0051】図3を参照して、本実施例は、図1に示し
た前記第1の実施例における入出力制御部1に、I/O
キャッシュ401、ヒット判定回路402、入力バッフ
ァ(INBUF3)403が追加されている。Referring to FIG. 3, in this embodiment, the I / O control unit 1 in the first embodiment shown in FIG.
A cache 401, a hit determination circuit 402, and an input buffer (INBUF3) 403 are added.
【0052】以下では、本実施例と前記第1の実施例と
の相違点のみを説明する。I/Oキャッシュ401は、
データを保持し記憶手段とのデータの一致性(coherenc
y、「コヒーレンシ」という)を保つための入出力キャ
ッシュメモリである(コヒーレンシ保持のために所定の
キャッシュコヒーレンシ・プロトコルが実装されてい
る。なお、キャッシュコヒーレンシ・プロトコルについ
ては、例えば文献:「J.L.Hennessy、D.A.Patterson、
“COMPUTER ARCHTECTURE: A QUANTATIVE APPROACH”、M
ORGAN KAUFFMANN PUBLISHERS, INC. 1990年、第466〜47
3頁」、あるいは文献:「J.L.Hennessy、D.A.Patterso
n、“COMPUTER ORGANIZATION AND DESIGN: THE HARDWAR
E/SOFTWARE INTERFACE”、MORGAN KAUFFMANN PUBLISHER
S, INC. 1994年、第575頁」等参照)。In the following, only the differences between this embodiment and the first embodiment will be described. The I / O cache 401 is
Data consistency and data consistency with storage means (coherenc
y, which is an input / output cache memory for maintaining “coherency” (a predetermined cache coherency protocol is implemented for maintaining coherency. For the cache coherency protocol, for example, see the document “JLHennessy, DAPatterson,
“COMPUTER ARCHTECTURE: A QUANTATIVE APPROACH”, M
ORGAN KAUFFMANN PUBLISHERS, INC. 1990, 466-47
3 pages "or literature:" JLHennessy, DAPatterso
n, “COMPUTER ORGANIZATION AND DESIGN: THE HARDWAR
E / SOFTWARE INTERFACE ”, MORGAN KAUFFMANN PUBLISHER
S, INC. 1994, p. 575 ").
【0053】I/Oキャッシュ401は、Vフラグ、キ
ャッシュステータス、データフィールド、アドレスフィ
ールドからなるラインを複数ライン含んでいる。The I / O cache 401 includes a plurality of lines including a V flag, a cache status, a data field, and an address field.
【0054】Vフラグは、その値が論理“1”の時、対
応するI/Oキャッシュラインに有効なトランザクショ
ンが格納されていることを示し、論理“0”のとき、対
応するI/Oキャッシュラインが無効であることを示
す。When the value of the V flag is logical "1", it indicates that a valid transaction is stored in the corresponding I / O cache line, and when the value is logical "0", the corresponding I / O cache line is Indicates that the line is invalid.
【0055】I/Oキャッシュ401のキャッシュステ
ータスは、対応するI/Oキャッシュラインのステータ
スが、クリーン・エクスクルーシブ、ダーティ・エクス
クルーシブ、あるいはシェアードのいずれかであること
を示す。なお、「ダーティ」とはキャッシュラインが汚
れている、すなわち一致性が保たれていない状態(ステ
ータス)を示す。The cache status of the I / O cache 401 indicates that the status of the corresponding I / O cache line is one of clean exclusive, dirty exclusive, and shared. Note that "dirty" indicates a state in which the cache line is dirty, that is, a state in which consistency is not maintained.
【0056】I/Oキャッシュ401のデータフィール
ドはトランザクションのデータを格納し、アドレスフィ
ールドは、トランザクションのアドレス(より詳細に
は、アドレス信号の所定の上位側ビットフィールドから
なるアドレスタグ)を格納する。The data field of the I / O cache 401 stores the data of the transaction, and the address field stores the address of the transaction (more specifically, the address tag composed of a predetermined upper bit field of the address signal).
【0057】BUF1に格納されたトランザクションが
I/Oキャッシュ401においてミスと判定されると、
OUTBUF1からSYSBUS1に発行する。OUT
BUF1からSYSBUS1に発行されたトランザクシ
ョンのレスポンスは、SYSBUS1からINBUF3
を介してI/Oキャッシュ401に格納される。When the transaction stored in BUF1 is determined as a miss in the I / O cache 401,
Issue from OUTBUF1 to SYSBUS1. OUT
The response of the transaction issued from BUF1 to SYSBUS1 is from SYSBUS1 to INBUF3.
Through the I / O cache 401.
【0058】そして、格納されたトランザクションがD
MAライトであるとき、対応するI/Oキャッシュライ
ンのステータス、データフィールド、アドレスフィール
ドの更新が行われる。Then, the stored transaction is D
When the write operation is the MA write, the status, data field, and address field of the corresponding I / O cache line are updated.
【0059】ヒット判定回路402は、BUF1に格納
されたトランザクションが、I/Oキャッシュ401の
いずれかのラインにヒットしているか、あるいはミスを
しているか否かを判定する。The hit determination circuit 402 determines whether the transaction stored in the BUF1 hits any line of the I / O cache 401 or makes a miss.
【0060】トランザクションがヒットとなるのは、I
/Oキャッシュ401のVフラグが論理“1”で、か
つ、I/Oキャッシュ401にそのアドレスフィールド
の内容(アドレスタグ)がトランザクションのアドレス
タグと一致するラインが存在した場合である。一方、ミ
スとなるのは、I/Oキャッシュ401のVフラグが論
理“0”あるいはアドレスが不一致になった場合であ
る。The transaction hits the I
This is a case where the V flag of the / O cache 401 is logical "1", and there is a line in the I / O cache 401 whose address field content (address tag) matches the address tag of the transaction. On the other hand, a miss occurs when the V flag of the I / O cache 401 is logical "0" or the addresses do not match.
【0061】ライト実行線111は、トランザクション
「DMAライト」がBUF1に格納された時点で、論理
“1”になり(BUF1のバリッドフラグVとDMAリ
ード/ライトフラグが共に論理“1”)、もし該トラン
ザクションがI/Oキャッシュ401のあるラインに対
してヒットした場合には、I/Oキャッシュ401に格
納される。When the transaction “DMA write” is stored in BUF1, the write execution line 111 becomes logic “1” (both the valid flag V of BUF1 and the DMA read / write flag are logic “1”). When the transaction hits a certain line in the I / O cache 401, the transaction is stored in the I / O cache 401.
【0062】そして、該トランザクションが格納された
後に、ライト実行線411は論理“0”とされる。After the transaction is stored, the write execution line 411 is set to logic "0".
【0063】一方、トランザクションがミスした場合、
トランザクション「DMAライト」は、キャッシュを無
効化(invalidate)するリードすなわちエクスクルーシ
ブ(排他型)コヒーレントリードに変更され、OUTB
UF1からSYSBUS1に発行される(なお、SYS
BUS1に発行されたエクスクルーシブコヒーレントリ
ードはSYSBUS1に接続される例えばCPU等のキ
ャッシュを無効化する)。On the other hand, if the transaction misses,
The transaction “DMA write” is changed to a read that invalidates the cache, that is, an exclusive (exclusive) coherent read, and OUTB
Issued from UF1 to SYSBUS1 (note that SYSBUS1 is
The exclusive coherent read issued to the BUS1 invalidates a cache such as a CPU connected to the SYSBUS1).
【0064】そして、エクスクルーシブ・コヒーレント
リードのデータレスポンスはSYSBUS1からINB
UF3を介してI/Oキャッシュ401に格納される
が、この動作が終了した時点でライト実行線111が論
理“0”になる。The data response of exclusive coherent read is from SYSBUS1 to INB.
The data is stored in the I / O cache 401 via the UF 3, but when this operation is completed, the write execution line 111 becomes logic “0”.
【0065】そして、ライト実行線111が論理“0”
になった時点で、入出力制御部2は、割り込み要求を保
留している場合には、該割り込み要求をSYSBUS2
に発行する。Then, the write execution line 111 becomes logic "0".
At this point, if the interrupt request is suspended, the input / output control unit 2 sends the interrupt request to the SYSBUS2.
Issue to
【0066】図4は、本発明の第2の実施例の動作タイ
ミングを示すタイミングチャートである。FIG. 4 is a timing chart showing the operation timing of the second embodiment of the present invention.
【0067】IOBUS1からDMAライト2のトラン
ザクションが入出力制御部1に入力される。The transaction of the DMA write 2 is input to the input / output control unit 1 from the IOBUS 1.
【0068】DMAライト2がBUF1に格納された時
点で、ライト実行線が論理“1”になる。When the DMA write 2 is stored in BUF1, the write execution line becomes logic "1".
【0069】BUF1のバリッドフラグVが論理“1”
になった時、ヒット判定回路402でヒット判定が行わ
れ、この場合、ミスであることが判定される。The valid flag V of BUF1 is a logical "1"
Is reached, hit determination is performed by the hit determination circuit 402. In this case, it is determined that a mistake has occurred.
【0070】キャッシュのミスになると、SYSBUS
1に対してREQ1を論理“1”にすることでバス使用
要求を行う。When a cache miss occurs, SYSBUS
A bus use request is made for REQ1 by setting REQ1 to logic "1".
【0071】第1のシステムバスの使用許可信号である
GNT1が論理“1”になると、エクスクルーシブ・コ
ヒーレントリードをSYSBUS1に発行する。When GNT1, which is the use permission signal for the first system bus, becomes logic "1", an exclusive coherent read is issued to SYSBUS1.
【0072】図2に示すように、例えば9バスサイクル
後にSYSBUS1からデータレスポンスが来ると、そ
のトランザクションをINBUF3からI/Oキャッシ
ュ401のキャッシュラインのデータフィールドに格納
する。As shown in FIG. 2, for example, when a data response is received from SYSBUS1 after 9 bus cycles, the transaction is stored in the data field of the cache line of the I / O cache 401 from INBUF3.
【0073】その1サイクル(1T)後に、BUF1に
格納されているデータ(BUFデータ)を、対応するI
/Oキャッシュラインに格納し(部分マージ)、ライト
実行線111を論理“0”とする。One cycle (1T) later, the data (BUF data) stored in BUF1 is transferred to the corresponding I
The data is stored in the / O cache line (partial merge), and the write execution line 111 is set to logic “0”.
【0074】以上、本発明を上記実施例に即して説明し
たが、本発明は上記態様にのみ限定されず、本発明の原
理に準ずる各種態様を含むことは勿論である。Although the present invention has been described with reference to the above embodiments, the present invention is not limited to the above embodiments, but includes various embodiments according to the principles of the present invention.
【0075】[0075]
【発明の効果】以上説明したように、本発明によれば、
ソフトウェア制御によるデータ転送と割り込みの同期が
不要とされ、同期処理用に費やされるCPU処理時間を
浪費しないで済み、かつデータ転送と割り込みの順序を
保証することができるため、高速で、データ・インテグ
リティの高い二重化バスで構成される情報処理装置を実
現することができるという効果を有する。また、本発明
によれば、I/Oキャッシュを備えたことにより、デー
タのコヒーレンシを保持し、データ転送処理性能を一層
向上するものである。As described above, according to the present invention,
Synchronization of data transfer and interrupts under software control is not required, so that CPU processing time for synchronous processing is not wasted, and the order of data transfer and interrupts can be guaranteed. This makes it possible to realize an information processing device configured with a highly-reliable duplex bus. Further, according to the present invention, by providing the I / O cache, data coherency is maintained and data transfer processing performance is further improved.
【図1】本発明の一実施例の構成を示すブロック図であ
る。FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention.
【図2】本発明の一実施例の動作を説明するタイミング
チャートである。FIG. 2 is a timing chart illustrating the operation of one embodiment of the present invention.
【図3】本発明の別の実施例の構成を示すブロック図で
ある。FIG. 3 is a block diagram showing a configuration of another embodiment of the present invention.
【図4】本発明の別の実施例の動作を説明するタイミン
グチャートである。FIG. 4 is a timing chart for explaining the operation of another embodiment of the present invention.
101 入出力制御部1 102 システムバス1 103 バス使用要求線1 104 バス使用許可線1 105 I/Oバス1 106 アドレス・ストローブ線1 107 受信応答線1 108 入力バッファ1 109 アドレス・ストローブ・レジスタ1 110 受信応答レジスタ1 111 ライト実行線 112 デコーダ1 113 トランザクション・バッファ1 114 出力バッファ1 115 ライト実行検出部 201 入出力制御部2 202 システムバス2 203 バス使用要求線2 204 バス使用許可線2 205 I/Oバス2 206 アドレス・ストローブ線2 207 受信応答線2 208 入力バッファ2 209 アドレス・ストローブ・レジスタ2 210 受信応答レジスタ2 212 デコーダ2 213 トランザクション・バッファ2 214 出力バッファ2 215 割込み抑止部 301 デバイス制御部 401 I/Oキャッシュ 402 ヒット判定回路 403 入力BUF3 101 I / O control unit 1 102 System bus 1 103 Bus use request line 1 104 Bus use permission line 1 105 I / O bus 1 106 Address strobe line 1 107 Receive response line 1 108 Input buffer 1 109 Address strobe register 1 110 Reception response register 1 111 Write execution line 112 Decoder 1 113 Transaction buffer 1 114 Output buffer 1 115 Write execution detection unit 201 I / O control unit 2 202 System bus 2 203 Bus use request line 2 204 Bus use permission line 2 205 I / O bus 2 206 Address strobe line 2 207 Receive response line 2 208 Input buffer 2 209 Address strobe register 2 210 Receive response register 2 212 Decoder 2 213 Transaction buffer 2 214 Output buffer 2 215 Interrupt suppression unit 301 Device control unit 401 I / O cache 402 Hit determination circuit 403 Input BUF3
Claims (7)
2の入出力制御手段と、デバイス制御手段と、を含み、
二重化されたバス構成を有する情報処理装置において、 前記第1の入出力制御手段が、前記デバイス制御手段か
ら入力されたトランザクションをデコードして前記デバ
イス制御手段から前記記憶手段へのDMAデータ転送
(「DMAライト」という)であることを検出した際
に、前記第2の入出力制御手段に前記DMAライトのト
ランザクションを保持中である旨を通知するためのライ
ト実行信号をアクティブ状態とするように制御する回路
手段を備え、 前記第2の入出力制御手段が、前記第1の入出力制御手
段から出力される前記ライト実行信号を入力し、前記デ
バイス制御手段から入力されたトランザクションをデコ
ードして割り込み要求であることを検出した際に、前記
ライト実行信号がアクティブ状態にある間前記割り込み
要求を保留し、前記ライト実行信号がインアクティブ状
態になった時点で前記保留された割り込み要求を発行す
るように制御する回路手段を備えたことを特徴とする情
報処理装置。1. An image processing apparatus comprising: an arithmetic processing unit; a storage unit; first and second input / output control units; and a device control unit;
In the information processing apparatus having a duplicated bus configuration, the first input / output control unit decodes a transaction input from the device control unit and transfers DMA data from the device control unit to the storage unit (“ DMA write ”), the write execution signal for notifying the second input / output control means that the DMA write transaction is being held is set to the active state. The second input / output control means receives the write execution signal output from the first input / output control means, decodes a transaction input from the device control means, and interrupts the transaction. Request is detected, the interrupt request is issued while the write execution signal is in the active state. Distillate City, information processing apparatus, characterized in that the write execution signal includes a circuit means for controlling to issue the pending interrupt requests when it becomes inactive.
ータを保持し前記記憶手段とのデータの一致性(「コヒ
ーレンシ」という)を保つための入出力キャッシュ手段
を備え、 前記第1の入出力制御手段が、前記トランザクションを
デコードした結果前記DMAライトである場合に前記ラ
イト実行線をアクティブ状態にセットすると共に、 前記トランザクションが前記入出力キャッシュ手段に対
してヒットした場合には、前記トランザクションを前記
入出力キャッシュ手段に格納した後に前記ライト実行線
をインアクティブ状態とすることを特徴とする請求項1
記載の情報処理装置。2. The apparatus according to claim 1, wherein said first and second input / output control means include input / output cache means for retaining data and maintaining data consistency with said storage means (referred to as "coherency"). When the I / O control means sets the write execution line to an active state when the DMA write is a result of decoding the transaction, and when the transaction hits the I / O cache means, 2. The write execution line is made inactive after storing the transaction in the input / output cache unit.
The information processing device described.
シュ手段に対してミスした場合には、キャッシュを無効
化する排他型のコヒーレントリード要求が第1のシステ
ムバス上に発行され、 該排他型のコヒーレントリード要求に対する応答データ
を前記第1のシステムバスから前記入出力キャッシュに
書き込むと共に、保持中の前記トランザクションを前記
入出力キャッシュに書き込み、 前記ライト実行線をインアクティブ状態とすることを特
徴とする請求項2記載の情報処理装置。3. An exclusive coherent read request for invalidating a cache is issued on a first system bus when the transaction misses the input / output cache means, and the exclusive coherent read is issued. And writing the response data to the request from the first system bus to the input / output cache, writing the held transaction to the input / output cache, and setting the write execution line to an inactive state. 2. The information processing apparatus according to item 2.
第2のシステムバスにそれぞれ接続される第1、第2の
入出力制御手段と、第1、第2の入出力バスと、前記第
1、第2の入出力バスを介して前記第1、第2の入出力
手段にそれぞれ接続されるデバイス制御手段と、記憶手
段と、演算処理手段と、を含む情報処理装置において、 前記第1の入出力制御手段が、DMAライトを保有した
ことを認識した場合に、該DMAライトを保有中である
旨の情報を前記第2の入出力制御手段に通知し、保有中
の該DMAライトを前記第1のシステムバスに出力する
ように制御するDMAライト実行検出手段を備え、 前記第2の入出力制御手段が、前記第1の入出力制御手
段の前記DMAライト実行検出手段からの通知情報に基
づき、前記デバイス制御手段から割り込みを受信した場
合に、DMAライトの実行中は前記第2のシステムバス
の獲得要求を抑止して前記割り込みを保留し、 DMAライト実行中でなくなった場合に前記第2のシス
テムバスの獲得要求を行い、前記第2のシステムバスを
獲得した際に保留されていた前記割り込みを発行する割
り込み抑止手段を、 備えたことを特徴とする情報処理装置。4. The system of claim 1, further comprising: a first and a second system bus;
First and second input / output control means respectively connected to a second system bus; first and second input / output buses; and the first and second input / output buses via the first and second input / output buses. In an information processing apparatus including a device control unit, a storage unit, and an arithmetic processing unit connected to the second input / output unit, it is recognized that the first input / output control unit has a DMA write. In this case, the DMA write is notified to the second input / output control means of information indicating that the DMA write is being held, and the DMA write is controlled so as to output the DMA write being held to the first system bus. An execution detection unit, wherein the second input / output control unit receives an interrupt from the device control unit based on notification information from the DMA write execution detection unit of the first input / output control unit, DMA write During execution, the acquisition request for the second system bus is suppressed to suspend the interrupt, and when the DMA write is not being executed, the acquisition request for the second system bus is issued, and the second system bus is issued. An information processing apparatus comprising: an interrupt suppressing unit that issues the interrupt that has been suspended when acquired.
ータを保持し記憶手段とのデータの一致性(「コヒーレ
ンシ」という)を保つための入出力キャッシュ手段を備
え、 前記第1及び第2のシステムバスがコヒーレンシ機能を
有し、 前記第1の入出力制御手段が、DMAライトを保有した
ことを認識し、DMAライトを保有中である旨の情報を
前記第2の入出力制御手段に通知し、 保有中のDMAライトのアドレスが前記入出力キャッシ
ュ手段で保持しているアドレスと一致した場合に、デー
タを前記入出力キャッシュ手段にライトしてDMAライ
トを保有しなくなったことを認識し、 保有中のDMAライトアドレスが前記入出力キャッシュ
手段で保持しているアドレスと不一致の場合、前記第1
のシステムバスの獲得要求を行い、 前記第1のシステムバスを獲得した後に、コヒーレンシ
機能を持ち、同一アドレスのデータブロックを持ってい
た場合、キャッシュを無効化するリード(「排他型コヒ
ーレントリード」という)を前記第1のシステムバスに
出力し、 該リードの応答データを受け取った後、該データを前記
入出力キャッシュに書き込み、保留中のDMAライト処
理が終了したことを認識して前記第2の入出力制御手段
に通知する手段、 を備えたことを特徴とする請求項3記載の情報処理装
置。5. The first and second input / output control means include input / output cache means for retaining data and maintaining data consistency with storage means (referred to as "coherency"), And the second system bus has a coherency function. The first input / output control means recognizes that the DMA write is held, and sends information indicating that the DMA write is held to the second input / output. Notifying the control means that if the address of the DMA write being held matches the address held in the I / O cache means, data is written to the I / O cache means and the DMA write is no longer held. When the held DMA write address does not match the address held in the input / output cache unit, the first DMA write address is recognized.
System bus acquisition request, and after acquiring the first system bus, it has a coherency function, and if it has a data block with the same address, a read that invalidates the cache (called "exclusive coherent read") ) Is output to the first system bus, the read response data is received, the data is written to the input / output cache, and the pending DMA write processing is recognized and the second data is output. The information processing apparatus according to claim 3, further comprising means for notifying the input / output control means.
Oバスを介して前記デバイス制御手段から送出されたト
ランザクションを入力する入力バッファレジスタと、 該入力バッファレジスタに格納されたトランザクション
をデコードするデコーダと、 該トランザクションの有効/無効を示す第1のフラグ
と、DMAリード/ライトを示す第2のフラグと、割り
込み要求の有無を示す第3のフラグと、前記トランザク
ションを保持するフィールドと、を少なくとも含むレジ
スタと、 第1のシステムバスに該トランザクションを出力するた
めの出力バッファレジスタを備え、 前記第1のフラグは、前記デバイス制御手段からのトラ
ンザクション送信合図信号がアクティブ状態とされ、該
トランザクションが有効である時にオン状態とされ、 前記第1のフラグがオン状態を示し、前記第2のフラグ
がDMAライトを示す時に前記ライト実行信号をアクテ
ィブとすることを特徴とする請求項1記載の情報処理装
置。6. The first I / O control means includes a first I / O control unit.
An input buffer register for inputting a transaction sent from the device control means via the O bus, a decoder for decoding the transaction stored in the input buffer register, a first flag indicating validity / invalidity of the transaction; , A register including at least a second flag indicating DMA read / write, a third flag indicating the presence or absence of an interrupt request, and a field for holding the transaction, and outputting the transaction to a first system bus. The first flag is turned on when the transaction transmission signal from the device control means is activated, and the transaction is valid, and the first flag is turned on. Status, and the second flag is The information processing apparatus according to claim 1, characterized in that the active the write execution signal when indicating the MA light.
Oバスを介して前記デバイス制御手段から送出されたト
ランザクションを入力する入力バッファレジスタと、 該入力バッファレジスタに格納されたトランザクション
をデコードするデコーダと、 該トランザクションの有効/無効を示す第1のフラグ
と、DMAリード/ライトを示す第2のフラグと、割り
込み要求の有無を示す第3のフラグと、前記トランザク
ションを保持するフィールドと、を少なくとも含むレジ
スタと、 第2のシステムバスに該トランザクションを出力する出
力バッファレジスタを備え、 前記第1のフラグは、前記デバイス制御手段からのトラ
ンザクション送信合図信号がアクティブ状態とされ、該
トランザクションが有効である時にオン状態とされ、 前記第1のフラグがオン状態を示す場合において、前記
第3のフラグが前記デバイス制御手段からの割り込み要
求を示すと共に前記ライト信号線がアクティブ状態の時
に、前記デバイス制御手段からの前記割り込み要求を前
記演算処理装置に伝達しないように制御することを特徴
とする請求項1記載の情報処理装置。7. The second input / output control means includes a second I / O control means.
An input buffer register for inputting a transaction sent from the device control means via the O bus, a decoder for decoding the transaction stored in the input buffer register, a first flag indicating validity / invalidity of the transaction; , A second flag indicating DMA read / write, a third flag indicating the presence or absence of an interrupt request, a register including at least a field for holding the transaction, and outputting the transaction to a second system bus. An output buffer register, wherein the first flag is turned on when a transaction transmission signal from the device control means is activated, and the transaction is valid, and the first flag is turned on. In the case shown, the third And a control unit that controls not to transmit the interrupt request from the device control unit to the arithmetic processing unit when the write signal line is in an active state. Item 10. The information processing apparatus according to Item 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18830395A JP2751880B2 (en) | 1995-06-30 | 1995-06-30 | Information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18830395A JP2751880B2 (en) | 1995-06-30 | 1995-06-30 | Information processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0916541A true JPH0916541A (en) | 1997-01-17 |
JP2751880B2 JP2751880B2 (en) | 1998-05-18 |
Family
ID=16221258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18830395A Expired - Lifetime JP2751880B2 (en) | 1995-06-30 | 1995-06-30 | Information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2751880B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6498137B1 (en) | 2001-06-27 | 2002-12-24 | Spartan Chemical Company, Inc. | Aerosol cleaning composition containing an organic acid and a spore forming microbial composition |
JP2009534767A (en) * | 2006-04-25 | 2009-09-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Move data accessed by I / O devices |
-
1995
- 1995-06-30 JP JP18830395A patent/JP2751880B2/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6498137B1 (en) | 2001-06-27 | 2002-12-24 | Spartan Chemical Company, Inc. | Aerosol cleaning composition containing an organic acid and a spore forming microbial composition |
JP2009534767A (en) * | 2006-04-25 | 2009-09-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Move data accessed by I / O devices |
Also Published As
Publication number | Publication date |
---|---|
JP2751880B2 (en) | 1998-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5426765A (en) | Multiprocessor cache abitration | |
EP3796179A1 (en) | System, apparatus and method for processing remote direct memory access operations with a device-attached memory | |
US5463753A (en) | Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller | |
US5353415A (en) | Method and apparatus for concurrency of bus operations | |
US7143246B2 (en) | Method for supporting improved burst transfers on a coherent bus | |
EP1215584A2 (en) | Highly pipelined bus architecture | |
EP1311956B1 (en) | Method and apparatus for pipelining ordered input/output transactions in a cache coherent, multi-processor system | |
US5765196A (en) | System and method for servicing copyback requests in a multiprocessor system with a shared memory | |
JPH11502345A (en) | Multiple processing cache coherency protocol on local bus | |
WO1994008297A9 (en) | Method and apparatus for concurrency of bus operations | |
US5918069A (en) | System for simultaneously writing back cached data via first bus and transferring cached data to second bus when read request is cached and dirty | |
JP2001117859A (en) | Bus controller | |
US6321307B1 (en) | Computer system and method employing speculative snooping for optimizing performance | |
TW505862B (en) | Write buffer with burst capability | |
US5829027A (en) | Removable processor board having first, second and third level cache system for use in a multiprocessor computer system | |
US5511226A (en) | System for generating snoop addresses and conditionally generating source addresses whenever there is no snoop hit, the source addresses lagging behind the corresponding snoop addresses | |
JP2695017B2 (en) | Data transfer method | |
KR100310399B1 (en) | Method and apparatus for transferring data over a processor interface bus | |
US5920891A (en) | Architecture and method for controlling a cache memory | |
JPH06318174A (en) | Cache memory system and method for performing cache for subset of data stored in main memory | |
JPH11328106A (en) | Computer system equipped with arbitration mechanism enabling multiple bus masters for access to graphic bus | |
US6862646B2 (en) | Method and apparatus for eliminating the software generated ready-signal to hardware devices that are not part of the memory coherency domain | |
JP2751880B2 (en) | Information processing device | |
JPH0830546A (en) | Bus controller | |
KR100453262B1 (en) | Processor or core logic unit with internal register for peripheral status |
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: 19980127 |