JPH11194994A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH11194994A
JPH11194994A JP10000428A JP42898A JPH11194994A JP H11194994 A JPH11194994 A JP H11194994A JP 10000428 A JP10000428 A JP 10000428A JP 42898 A JP42898 A JP 42898A JP H11194994 A JPH11194994 A JP H11194994A
Authority
JP
Japan
Prior art keywords
bus
data
bank
mode
write
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
Application number
JP10000428A
Other languages
English (en)
Other versions
JP3570877B2 (ja
Inventor
Satoshi Jinguji
聡 神宮寺
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 Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
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 Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP00042898A priority Critical patent/JP3570877B2/ja
Priority to US09/226,919 priority patent/US6266777B1/en
Publication of JPH11194994A publication Critical patent/JPH11194994A/ja
Application granted granted Critical
Publication of JP3570877B2 publication Critical patent/JP3570877B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】Pipeline方式を用いたシステムバスを持つシス
テムにおいて、メモリへのWrite動作時のRQとData間のL
atencyを可変にする。 【解決手段】1つ以上の演算処理装置と前記演算処理装
置のデータ転送動作を制御する転送制御装置とから構成
される処理装置と、1つ以上の前記処理装置から共有し
て使用され記憶単位であるBankで構成される主記憶部
と、前記処理装置間を接続する制御線と、前記処理装置
間と前記主記憶部とを接続するパイプライン方式のBus
と、前記演算処理装置からデータの転送命令を受け付け
たとき前記Busの使用状況から前記転送命令と転送する
データとの時間間隔であるLatencyを設定するモード管
理手段を備えた前記転送制御装置とで構成する。 【効果】RQとData間のLatencyを可変にすることにより
システムバスの利用効率をあげ、システム性能を向上さ
せる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は情報処理装置に関
し、特に複数の演算処理装置からPipeline方式を用いた
システムバスを介してメモリへのWrite動作時にデータ
転送時の時間間隔を可変にしシステムバスの使用効率の
向上を計る情報処理装置に関する。
【0002】
【従来の技術】従来の情報処理装置は、図16に従来技
術の情報処理装置の構成図を示す。従来技術の情報処理
装置は、全て同型の処理装置(以下 PU)11、12およ
び図示されていない複数のPUと、複数の記憶単位(以下
Bank)で構成され該PUに共有される主記憶部(以下 MM)1
3と、これらを接続するシステムバス(以下 Bus)14
と、該PUを相互に接続する制御線15で構成する。Bus
14は、1つのPUとBus間インターフェースの転送性能
と、BusとMM間インタフェースの転送性能が等しく、且
つ、MM内のBankインタフェースの転送性能がメモリ素子
の動作時間に依存し、且つ、Bus上のリクエスト(以下 R
Q)の動作指示を意味するfieldとメモリアクセス時に参
照するアドレスを意味するfieldを転送するAddress Cyc
le、Dataを転送するData Cycleの2 stateで1 Bus Cycle
を構成している。該Busの動作はPipeline方式である。B
usにおいて、RQから該RQに対応するData(以下 Response
Data)は一定時間後に転送されてくる。以後、RQを発行
してからデータを転送するまでの時間間隔をLatencyと
呼ぶ。また、RQの送出とDataの送出の間、Busは開放さ
れた状態となり、この間に別のRQを実行する事が可能で
ある。制御線15は、各PUがBusを使用する為の競合調
停を行う際に、自PUからのRQの種別を他の全てのPUに送
る為、及びSystem内のCache coherenceを保つ目的で、B
usに発行されたRQに対して自PU内の演算処理装置内にあ
るCacheのStatusに関する情報を他の全てのPUに送る為
に用いられる。Cache Coherency protocolはsnoop方式
を用いる。転送制御装置23は、CPUとインタフェース
を持ち該CPUと転送制御装置間のデータ転送を行うCPU接
続手段31と、MMのBankへのアクセス状況を管理し、Ba
nkへアクセスするRQ発行時にアクセスが可能か不可能か
の判断を行う為に参照されるBank Busy管理手段32
と、Busに接続される各PUからの前記制御線15を介し
てBusに対するRQ発行の要求の調停を行い、Busの使用権
をいずれかのPUに与えるBus競合調停手段34と、Busと
インタフェースを持ち該Busと前記転送制御装置23間
のデータ転送を行うBus接続手段35と、CPU接続手段3
1とBank Busy管理手段32とBus競合調停手段34とBu
s接続手段35を制御するRQ転送制御手段36とで構成
する。図8は、メモリへのRead動作時のタイムチャート
である。図8のCycleのA、DはBusのAddress Cycle、Dat
a Cycleを、RQはRead RQを、Dataは該RQのResponse Dat
aを、LatencyはBusのLatencyをそれぞれ示している。時
刻0においてRead RQがPU内で処理され、時刻2におい
て前記RQはBusに発行され、時刻4において前記RQはMM
内で処理をされ、時刻6から時刻10間において前記RQ
はBankアクセスを行い、時刻11においてMMは前記RQの
データを読みだし、時刻13において前記データはMM内
で転送され、時刻15において前記データはBusに転送
され、時刻17において前記データはPU内で転送され
る。RQが発行されてからデータが転送されるまでのBus
上のLatencyは、12時刻である。図17は、メモリへ
のWrite動作時のタイムチャートである。図のCycleの
A、DはBusのAddress Cycle、Data Cycleを、RQはRead R
Qを、Dataは該RQのResponse Dataを、LatencyはBusのLa
tencyをそれぞれ示している。時刻0においてWrite RQ
がPU内で処理され、時刻2において前記RQはBus発行さ
れ、時刻4から時刻12において前記RQはMM内でデータ
の待ち合わせのために持ち回られ、時刻14から時刻1
8においてMMは前記RQのBankアクセスを行い、時刻13
においてライトデータはPU内で転送され、時刻15にお
いて前記データはBusに転送され、時刻17において前
記データはMM内で転送され、時刻19において前記デー
タはBankに書き込まれる。RQが発行されてからデータが
転送されるまでのBus上のLatencyは、Read動作時と同様
に12時刻である。図18は、あるCPUのメモリへのRea
dアドレスが他のCPUのCacheにDirtyでHitした場合のCac
he間データ転送の動作(以下 C Write)時のタイムチャー
トを示す。図のCycleのA、DはBusのAddress Cycle、Dat
a Cycleを、RQはRead RQを、Dataは該RQのResponse Dat
aを、LatencyはBusのLatencyをそれぞれ示している。時
刻0から時刻17は、図9の動作と同様である。ここ
で、前記Read RQで要求しているアドレスがBusのSnoop
の結果、他のPU内のCPUのCacheにDirtyでHitしDirtyでH
itしたCPUからRead RQの発行元のCPUへのCache間のデー
タ転送のRQ(C Write RQ)が生じる。時刻18においてC
Write RQがDirtyでHitしたCPUを持つPU内で処理され、
時刻20において前記RQはBus発行され、時刻22にお
いてRead RQ発行元のPU内で処理され、時刻31おいてC
ache間の転送データはC Write RQの発行PU内で転送さ
れ、時刻33において前記データはBusに転送され、時
刻35において前記データはRead RQ発行元のPU内で転
送される。RQが発行されてから対応するデータが転送さ
れるまでのBus上のLatencyは、前記Read動作時及び前記
Write動作時と同様に12時刻である。従来の情報処理
装置は、図9、10、12のタイムチャートによると、
RQの種類に共通して、RQとData間に一定のLatencyがあ
り、該Latencyがシステム性能に影響を及ぼしていた。
また、特開昭57−500445には、システムバスよ
りのシステムクロックにて特定のコードアドレス及びト
ランザクション型制御信号の発生及び確認を行うシステ
ムバスの制御により、システムの能力増大と高速化を図
る技術が記載されている。また、特開平04−3720
43には、アドレス信号とデータ信号の出力タイミング
をクロックに対して逆位相にすることで最大転送速度を
最適化する技術が記載されている。
【0003】
【発明が解決しようとする課題】上述した従来の情報処
理装置は、第一の問題点は、メモリへのライト動作時、
ライト動作を要求するCPUの発行するアドレス情報とラ
イトデータ間はLatencyの時間間隔があり、該Latencyが
メモリへのライト動作の性能に潜在的な性能悪化をもた
らしている。その理由は、システムバスが、pipeline方
式である為である。第二の問題点は、Cache間のデータ
転送時、データ転送元のCPUからのアドレス情報と転送
データ間はLatencyの時間間隔があり、該LatencyがCach
e間のデータ転送の性能に潜在的な性能悪化をもたらし
ている。その理由は、第一の問題点の理由と同様に、シ
ステムバスが、pipeline方式である為である。第三の問
題点は、Cache間のデータ転送の遅れが、前記転送のDat
aを受ける側のCPUの動作を一時的に止め複数のCPUを持
つシステムの性能低下を引き起こす原因になる。その理
由は、第一の問題点の理由と同様に、システムバスが、
pipeline方式である為である。
【0004】本発明の目的は、システムバスのLatency
を可変にし前記システムバスの効率的な使用を可能にす
る情報処理装置を提供することにある。
【0005】
【課題を解決するための手段】第1の発明の情報処理装
置は、1つ以上の演算処理装置と前記演算処理装置から
データを転送する時間間隔を可変に制御する転送制御装
置とから構成される処理装置と、1つ以上の前記処理装
置から共有して使用され記憶単位であるBankで構成され
る主記憶部と、前記処理装置間を接続する制御線と、前
記処理装置間と前記主記憶部とを接続するパイプライン
方式のBusと、を備えて構成されている。
【0006】また、第2の発明の情報処理装置は、第1
の発明において前記制御線は、前記処理装置が前記Bus
を使用する為の競合調停を行う際に、自処理装置からの
前記転送命令を他の全処理装置に送る為に用いられるこ
とにより構成されている。
【0007】さらに、第3の発明の情報処理装置は、第
1の発明において前記転送制御装置は、前記演算処理装
置からデータの転送命令を受け付けデータ転送を行うCP
U接続手段と、前記主記憶部のBankのアクセス状況を管
理し前記Bankへアクセスするデータの転送命令の発行時
にアクセスが可能か不可能かの判断を行うBank Busy管
理手段と、前記演算処理装置からデータの転送命令を受
け付けたとき前記Busの使用状況から前記転送命令と転
送するデータとの時間間隔であるModeを設定するMode管
理手段と、前記Busに接続される前記処理装置からの前
記制御線を介してBusに対する前記転送命令の要求の調
停を行い前記Busの使用権をいずれかの処理装置に与え
るBus競合調停手段と、前記Busとインタフェースを持ち
前記演算処理装置からのデータの転送を行うBus接続手
段と、前記CPU接続手段と前記Bank Busy管理手段と前記
Mode管理手段と前記Bus競合調停手段と前記Bus接続手段
とを制御するRQ転送制御手段と、を備えて構成されてい
る。
【0008】さらに、第4の発明の情報処理装置は、第
2の発明において前記Mode管理手段は、前記BusのData
cycleの使用状況を示すBus全体のTimingレジスタにより
管理するBus Busy管理手段と、前記演算処理装置からの
データの転送命令がWrite命令のとき前記Bus全体のTimi
ngレジスタの値に対応しデータを前記Busに転送するTim
ingを規定するModeを設定するMode設定手段と、前記Bus
上に発行された転送命令の前記Modeを識別し所属する前
記処理装置に対しCache間またはCacheと主記憶部間のデ
ータ転送を行うTimingを判断するMode識別手段と、前記
Bus Busy管理手段と前記Mode設定手段と前記Mode識別手
段とを制御するMode管理制御手段と、を備えて構成され
ている。
【0009】さらに、第5の発明の情報処理装置は、第
1の発明において前記主記憶部は、前記Bankアクセス手
段からの制御によりデータを記憶するBankと、前記Bus
とインタフェースを持ちBusとのデータ転送を行うMM接
続手段と、前記Busからデータの転送命令に設定されて
いる前記Modeによりデータが送られてくるTimingを識別
するMode制御手段と、前記処理装置内にある前記Bank B
usy管理手段と同一の機能を持つBank Busy管理手段と、
前記Bankと対をなしデータの転送命令のアクセスを制御
するBankアクセス手段と、前記MM接続手段と前記Mode制
御手段と前記Bank Busy管理手段と前記Bankアクセス手
段の制御とデータの転送命令を受け取ったときにこの転
送命令のデータを受け取るまで待ち合わせるMM制御手段
と、を備えて構成されている。
【0010】さらに、第6の発明の情報処理装置は、第
5の発明において前記Mode制御手段は、前記Busからの
転送命令に設定されているModeによりDataが送られてく
Timingを識別するMode識別手段と、前記Mode識別手段を
制御する識別制御手段と、を備えて構成されている。
【0011】さらに、第7の発明の情報処理装置は、第
1の発明において前記転送制御装置は、前記CPU接続手
段と、前記Bank Busy管理手段と、前記Bus競合調停手段
と、前記Bus接続手段と、前記Busの使用状況を管理する
Bus Busy管理手段とこのBus Busy管理手段を制御するBu
s管理制御手段とから構成されるBus管理手段と、前記CP
U接続手段と前記Bank Busy管理手段と前記Bus競合調停
手段と前記Bus接続手段と前記Bus管理手段とを制御する
RQ転送制御手段と、を備えて構成されている。
【0012】さらに、第8の発明の情報処理装置は、第
4または7の発明において前記Bus管理手段は、前記Bus
Busy管理手段内のBus全体のTimingレジスタに加えて有
効Timingレジスタを備えて構成されている。
【0013】さらに、第9の発明の情報処理装置は、第
8の発明において前記有効Timingレジスタは、Bus全体
のTimingレジスタに登録されたTimingが所属する処理装
置から前記Busに有効なデータの転送命令を出力したこ
とを示し、前記Bus全体のTimingレジスタにセットされ
たとき同じTimingでセットされることにより構成されて
いる。
【0014】さらに、第10の発明の情報処理装置は、
第1、5または8の発明において前記主記憶部は、前記
Mode制御手段と前記Bus管理手段とを置換した構成を備
えて構成されている。
【0015】
【発明の実施の形態】本発明の一つの実施の形態につい
て図面を参照して説明する。図1は本発明の第1の実施
の形態の構成を示すブロック図である。図3は、本発明
の第一および第二の実施の形態のRead動作の流れ図であ
る。図4は、本発明の第一および第二の実施の形態のWr
ite動作の流れ図である。図5は、本発明の第一および
第二の実施の形態のCache間およびCacheとMM間のData転
送を行うC Write動作の流れ図である。図6は、本発明
の第一の実施の形態のRQ/Dataのフォーマットである。
図8は、本発明の第一、第二の実施の形態および従来技
術のRead動作のタイムチャートである。図9は、本発明
の第一および第二の実施の形態のWrite動作のタイムチ
ャートである。図10は、本発明の第一および第二の実
施の形態のC Write動作のタイムチャートである。図1
1は、本発明の第一の実施の形態のRead動作時のBus Bu
sy管理手段におけるレジスタ値の変化の一覧を示す図で
ある。図12は、本発明の第一の実施の形態のWrite動
作時のBus Busy管理手段におけるレジスタ値の変化の一
覧を示す図である。図13は、本発明の第一の実施の形
態のWrite動作時のBus Busy管理手段におけるレジスタ
値とModeの関係の一覧を示す図である。
【0016】本発明の第一の実施の形態は、図1を参照
すると、全て同型の処理装置(以下PU)11、12および
図示されていない複数のPUと、複数の記憶単位(以下 Ba
nk)で構成されPU11、12に共有される主記憶部(以下
MM)13と、これらを接続するシステムバス(以下 Bus)
14と、PU11、12を相互に接続する制御線15とか
ら構成される。Bus14は、PU11またはPU12とBus1
4間インターフェースの転送性能と、Bus14とMM13
間インタフェースの転送性能が等しく、且つ、MM13内
のBank46、47とのインタフェースの転送性能がメモ
リ素子の動作時間に依存し、且つ、Bus14上のリクエ
スト(以下 RQ)の動作指示を意味するfieldとメモリアク
セス時に参照するアドレスを意味するfieldとを転送す
るAddress Cycleと、Dataを転送するData Cycleの2 sta
teで1 Bus Cycleを構成している。Bus14の基本動作は
Pipeline方式である。MM13に対するRead動作は、RQか
ら一定時間(以下 Latency)後に必ずMM13からResponse
Dataが転送されてくる。MM13に対するWrite動作、ま
たはCache間のWrite動作はRQからLatency内に有効なDat
aが存在しない最速なData Cycle(Latency後のData Cycl
eが最も遅いData Cycle)でWrite Dataを転送する。いず
れのケースでも、RQの送出とDataの送出の間はBus14
は開放された状態となり、この間に別のRQを実行するこ
とが可能である。制御線15は、PU11、12がBus1
4を使用する為の競合調停を行う際に、自PUからのRQの
種別を他の全てのPUに送る為、及びSystem内のCache co
herenceを保つ目的で、Bus14に発行されたRQに対して
自PU内の演算処理装置内にあるCacheのStatusに関する
情報を他の全てのPUに送る為に用いられる。Cache Cohe
rencyprotocolは、snoop方式を用いる。各PU11、12
(代表としてPU 11で説明)は、同型でCacheを備える演
算処理装置(以下 CPU)21、22および図示されていな
い複数のCPUと、CPU21、22とBus14とのデータ転
送を制御する転送制御装置23で構成される。転送制御
装置23は、CPU21、22とインタフェースを持ちCPU
21、22と転送制御装置間のデータ転送を行うCPU接
続手段31と、MM13のBank46、47へのアクセス状
況を管理し、BankへアクセスするRQ発行時にアクセスが
可能か不可能かの判断を行う為に参照されるBank Busy
管理手段32と、RQによるBus14のData Cycleの使用
状況を管理し、RQとDataのBus Cycleの間隔に関する情
報をRQに付加情報(以下 Mode)として設定するMode管理
手段33と、Bus14に接続される各PUからの前記制御
線15を介してBus14に対するRQ発行の要求の調停を
行い、Bus14の使用権をいずれかのPUに与えるBus競合
調停手段34と、Bus14とインタフェースを持ち該Bus
と前記転送制御装置23間のデータ転送を行うBus接続
手段35と、CPU接続手段31とBank Busy管理手段32
とMode管理手段33とBus競合調停手段34とBus接続手
段35を制御するRQ転送制御手段36とから構成されて
いる。
【0017】次に転送制御装置23の各手段を説明す
る。Bank Busy管理手段32は、各PUからのRQをBus競合
調停手段34で調停した結果、Busを獲得したPUのRQに
より使用されるBankに対してBankの使用状況の登録とア
クセスの不可能である時間(以下 Bank Busy)の管理を行
う。
【0018】Bank Busy管理手段32は、メモリリードR
Q(以下 Read RQ)時のBank Busyを管理するRead Busy管
理手段321と、メモリライトRQ(以下 Write RQ)時のB
ank Busyを管理するWrite Busy管理手段322と、Read
Busy管理手段321とWriteBusy管理手段322を制御
するBank Busy制御手段323とから構成される。
【0019】Mode管理手段33は、Read RQによりRespo
nse Dataが使用するData Cycleと、Write RQおよびCach
e間およびCacheとMM間のData転送を行うRQ(以下 C Writ
e RQ)により使用されるData Cycleとを各々登録するBus
全体のTimingレジスタを備えてBusのData cycleの使用
状況を管理するBus Busy管理手段331と、Write RQお
よびC Write RQを発行するときBus Busy管理手段331
のData cycleの使用状況を参照しDataをBus14上に発
行するTimingを規定するModeを設定するMode設定手段3
32と、Bus14上に発行されたRQのModeを識別し所属
するPUに対するCWrite RQのDataがBus14に発行される
Timingを判断するMode識別手段333と、Bus Busy管理
手段331とMode設定手段332とMode識別手段333
とを制御するMode管理制御手段334とから構成され
る。
【0020】Bus接続手段35は、Bus競合調停手段34
による調停の結果、自PUがBus14を獲得したRQに対応
するDataを、Mode管理手段33により設定されたModeの
規定するTimingでBus14に発行されるまで一時的に保
持するDATA保持手段351と、Bus14とインタフェー
スを持ちBus14へのデータ転送を行う転送手段352
と、Bus14からのRQを識別し所属するPUへのRQを検出
するRQ識別手段353と、DATA保持手段351とBus接
続手段352とRQ識別手段353とを制御する接続制御
手段354とから構成される。
【0021】転送制御手段36は、CPUから発行されたR
QおよびBusからのRQを解読するRQ解読手段361と、RQ
のアクセスするBankがBusy状態である場合、Busyが解除
されるまでの間、または、Bus競合調停手段34による
調停の結果によって所属するPUがBusを獲得できなかっ
た場合にRQを一時的に保持し、さらに保持されているRQ
がある場合、後続のRQを一時的に保持するRQ保持手段3
62と、RQ解読手段361とRQ保持手段362とを制御
するRQ制御手段363とから構成される。
【0022】次にMM13の構成を図1を参照して説明
する。MM13は、Bus14とインタフェースを持ちBus
14とMM13間のデータ転送を行うMM接続手段41と、
Bus14からのRQに設定されているModeによりDataの送
られて来るTimingを識別するMode制御手段42と、各PU
内にある前記のBank Busy管理手段32と同一の機能を
持つBank Busy管理手段43と、複数のBank46、47
と対をなしRead/Writeのアクセスを制御するBankアクセ
ス手段44、45および図示されていない複数のBankア
クセス手段と、同型で前記Bankアクセス手段44、45
からの制御によりDataを記憶するBank 46、47およ
び図示されていない複数のBankと、MM接続手段41とMo
de制御手段42とBank Busy管理手段43とBankアクセ
ス手段44、45を制御し、メモリへのWrite動作のRQ
を受け取った場合に該RQに対応するDataを受け取るまで
RQを待ち合わせるMM制御手段48とから構成される。
【0023】次にMM13を構成する各手段を説明す
る。MM接続手段41は、Bus14からのRQを識別しMM
13へのRQを検出するRQ識別手段412と、Bus14と
インタフェースを持ちBus14へのデータ転送を行う転
送手段411と、RQ識別手段412と転送手段411を
制御する接続制御手段413とから構成される。Mode制
御手段42は、Bus14からのRQに設定されているMode
によりDataの送られて来るTimingを識別するMode識別手
段421と、Mode識別手段421を制御する識別制御手
段422とから構成される。Bank Busy管理手段43
は、各PU内にある前記のBank Busy管理手段32と同一
の機能を持つRead Busy管理手段431とWrite Busy管
理手段432とBank Busy制御手段433とから構成さ
れる。各Bankアクセス手段44、45(代表としてBank
アクセス手段44で説明)は、Bank46からのDataの読
みだし動作のアクセスを制御するReadアクセス手段44
1と、Bank46へのDataの書き込み動作のアクセスを制
御するWriteアクセス手段442と、Readアクセス手段
441とWriteアクセス手段442を制御するアクセス
制御手段443とから構成される。MM制御手段48は、
Bus14からのRQの動作指示を示すTypeからMM13への
動作を解読するRQ解読手段481と、メモリへのWrite
動作のRQを受け取った場合に該RQに対応するDataを受け
取るまでRQを待ち合わせるRQ待機手段482と、RQ解読
手段481とRQ待機手段482とを制御するRQ制御手段
483とから構成される。また、システム内のメモリは
一つの論理アドレスに定義され、CPUからは、物理アド
レスに変換されたアドレスがRQのアドレスとして用いら
れる。
【0024】次に、第一の実施の形態のRead動作とWrit
e動作とC Write動作を図1、図3、図4、図5、図6、
図8、図9、図10、図11、図12、図13を用いて
説明する。CPU21がBank46に対しRead RQを発行した
場合のRead動作について説明する。図6に示すフォーマ
ットは、BusへのRQを示す有効ビット(V)、RQの動作指示
(Type)、Write動作時に有効な付加情報(Mode)、アクセ
スするBank内アドレスとBank番号(Address)の4つのfie
ldで構成される。Read RQは、Read動作指示(命令フォー
マットは図示せず)がType fieldに含まれる。Dataは、
転送データで構成される。各ステップを以下 Sと記す。
【0025】図3を参照すると、S1でCPU21がRead R
Qを転送制御装置23に発行する。RQ転送制御装置36
では、RQをCPU接続手段31を介しRQ解読手段361で
受け取る。
【0026】S2でRQ解読手段361は、RQのTypeからR
ead RQであることを解読するとRQ制御手段363にRead
RQに関する制御情報を渡す。
【0027】S3でRQ制御手段363は、所属するPU内
のCPUが以前に発行されたRQがRQ保持手段362内に保
持されているか確認する。保持されているRQがあれば、
S4としてS2で解読されたRQをRQ保持手段362の保持
されているRQの列の最後尾に保持し、S5としてRQ保持
手段362にある最も古いRQをS6以降の動作対象とし
て選択する。RQ保持手段362で保持されているRQが無
ければ、S2で解読されたRQをS6以降の動作対象として
選択する。
【0028】S6でBank Busy管理手段32は、選択され
たRQがRead RQであることを示す情報とアクセスするBan
k番号を受け取り、Read Busy管理手段321を参照し該
当するBank(ここではBank46)に対してアクセスが可能
かを確認する。アクセス可能であればS7以降の処理を
行い、アクセス不可能であればRead RQをRQ保持手段3
62にて一時的に保持する(S4に戻る)。
【0029】S7でBus競合調停手段34は、各PUがBus
へのRQ発行する際に生じるPU間での競合の調停を行う。
この際、Bus競合調停手段34は、所属するPU11を除
いた他の全てのPUから調停に必要な情報を制御線15を
介して受け取り、同時に他の全てのPUが調停に必要な情
報を他の全てのPUに送る。システム内の全てのPUにおい
て、この調停に関する処理は同期している。Bus競合調
停手段34による調停の結果、所属するPUのRead RQがB
usに対して発行可能な状態になると、Bank Busy管理手
段32のBank Busyの状態を更新し、S8以降の処理を行
い、発行不可能な状態のときは該RQをRQ保持手段362
にて一時的に保持する(S4に戻る)。
【0030】S8でBus接続手段35は、RQ転送制御手段
36からRead RQを受け取り転送手段352を用いてBus
に対してRead RQを発行する。
【0031】S9でMode管理手段33は、Busに対してRe
ad RQを発行してからLatency後に該RQのResponse Data
がBus上に存在する、すなわちBusのData Cycleを使用す
ることを意味する情報をBus管理手段331に登録す
る。Bus Busy管理手段331内のレジスタ値の変化を図
11に示す。Bus全体のTimingレジスタとは、Bus上に有
効なDataが存在するTimingの情報を持つ。ここでは、La
tencyが7Bus Cycleである場合について説明する。Busに
RQが発行される1Bus Cycle前を時刻Tとし、RQが発行さ
れた時を時刻T+1とする。時刻T+1では、発行されたRead
RQのResponse Dataのタイミング(Latency後)に、Bus上
に有効なDataが存在することを示すため、レジスタの最
上位に1をセットする。このレジスタを毎Bus Cycleご
とに右シフトし、最下位に1が来たタイミングでBusに
上記Read RQのResponse DataがBusに存在することを意
味する。
【0032】S10でMM接続手段41は、Bus上のRQを取
り込みRQ識別手段411でRQのTypeからRQの識別を行
い、MMへのRQである場合はS11以降の処理を行い、MM
へのRQでなければ動作しない。
【0033】S11でMM制御手段48は、RQ解読手段4
81にてRQ識別手段411からRQを受け取りさらにRQの
Typeを解読し、Read RQである場合はS12以降の処理を
行い、Read RQでなければその他の動作を行う。
【0034】S12でRQ解読手段481は、RQのAddress
fieldに含まれるBank番号からアクセスするBankを解読
する(ここでは、Bank46へのアクセスと解読される)。
【0035】S13でBank Busy管理手段43は、RQ解読
手段481からRQがRead RQであることを示す情報をア
クセスするBank番号を受け取りRead Busy管理手段43
1を参照し、該当するBank(ここではBank46)に対して
アクセスが可能かを確認する。アクセス可能であればS
13以降の処理を行い、アクセス不可能であれば障害と
識別し障害を処理する動作を行う(ここでは障害を処理
する動作に関しては言及しない)。また、アクセス可能
であるBankに関する情報を受け取ると、Bank Busyの状
態を更新する。
【0036】S14でBankアクセス手段44は、RQ解読
手段481からのRead指示をReadアクセス手段441で
受け取り、RQのAddress fieldに含まれるBank内アドレ
スで指定されたアドレスからDataを読みだす。
【0037】S15でBankから読み出されたDataは、Ban
kアクセス手段44、MM制御手段48を介してMM接続手
段41内の転送手段412からBusへ転送される。このD
ataは、Read RQがBusに発行されてからLatency後にBus
へ転送される。
【0038】S16でRead RQ発行元PU11は、RQ識別手
段353でRQをBus上に発行してからLatency後にBus上
にあるDataを該RQのResponse Dataをして受け取る。
【0039】S17でRQ転送制御手段36は、前記Respo
nse Dataを受け取りCPU接続手段31を介してRead RQを
発行したCPU21にDataを返し、一連のRead動作を終了
する。
【0040】図8は、第一の実施の形態におけるRead R
Qの動作のタイムチャートである。図8において、Cycle
のAはBusのAddress Cycleを示し、CycleのDはBusのAddr
essCycleのData Cycleを示し、RQはRead RQを示し、Dat
aは該RQのResponse Dataを示し、LatencyはBusのLatenc
yを示している。Read RQの動作のタイムチャートにおい
て、第一の実施の形態は従来の技術と同じである(従来
技術のRead動作時の説明を参照のこと)。
【0041】次に、第一の実施の形態のWriteの動作を
図1、図4、図6を用いて説明する。CPU21がBank4
6に対しWrite RQを発行した場合の動作について説明す
る。
【0042】図4を参照すると、S1でCPU21がWrite
RQ、および該RQに対応するWrite Dataを転送制御装置2
3に発行する。RQ転送制御装置36では、RQとDataをCP
U接続手段31を介しRQ解読手段361で受け取る。
【0043】S2でRQ解読手段361は、RQのTypeからW
rite RQである事を解読するとRQ制御手段363にWrite
RQに関する制御情報を渡す。S3でRQ制御手段363
は、所属するPU内のCPUが以前に発行されたRQがRQ保持
手段362内に保持されているか確認する。保持されて
いるRQがあれば、S4としてS2で解読されたRQをRQ保持
手段362の保持されているRQの列の最後尾に保持し、
S5としてRQ保持手段362にある最も古いRQをS6以降
の動作対象として選択する。RQ保持手段362で保持さ
れているRQが無ければ、S2で解読されたRQをS6以降の
動作対象として選択する。
【0044】S6でBank Busy管理手段32は、選択され
たRQがWrite RQである事を示す情報とアクセスするBank
番号を受け取り、Write Busy管理手段321を参照し該
当するBank(ここではBank46)に対してアクセスが可能
かを確認する。アクセス可能であればS7以降の処理を
行い、アクセス不可能であればWrite RQを一時的に保持
する(S4に戻る)。
【0045】S7でBus競合調停手段34は、各PUがBus
へのRQ発行する際に生じるPU間での競合の調停を行う。
この際、Bus競合調停手段34は、所属するPU11を除
いた他の全てのPUから調停に必要な情報を制御線15を
介して受け取り、同時に、他の全てのPUが調停に必要な
情報を他の全てのPUに送る。システム内の全てのPUにお
いて、この調停に関する処理は同期している。Bus競合
調停手段34による調停の結果、所属するPUのWrite RQ
がBusに対して発行可能な状態になると、BankBusy管理
手段32のBank Busyの状態を更新し、S8以降の処理を
行い、発行不可能な状態であると該RQをRQ保持手段36
2にて一時的に保持する(S4に戻る)。
【0046】S8でBus競合調停手段34による調停の結
果、所属するPUのWrite RQがBusに対して発行可能な状
態になると、Mode管理手段33は、該RQがWrite RQであ
る情報を受け取り、Bus管理手段331でBusのData Cyc
leの使用状況を確認する。BusはPipeline方式により動
作する為、Write RQに対応するWrite DataはWrite RQが
Bus上に発行されてからLatency後にBus上に転送できる
が、Latency以前に使用されていないData Cycyleがある
場合、Write RQがBusに発行されてから最早の使用され
ていないData CycleでDataをBusに転送することが可能
である。この場合、Write Dataを転送するタイミングす
なわち、Data Cycleを使用するタイミングを意味する情
報をBus Busy管理手段331に登録し、Mode設定手段3
32にてWrite RQにData Cycleを使用するタイミングの
情報をModeとして設定する。Bus Busy管理手段331内
のレジスタ値の変化を図12に示す(第一の実施の形態
におけるRead RQ動作のS9参照)。図12を参照する
と、レジスタ値(T)の状態が現在のBasの使用状態を
示している。Data Cycleを使用するタイミングであるDa
ta Cycleはレジスタ値の0の位置が該当する。例えば、
レジスタ値「xxxxx0」であれば0の位置が最右端
であるから1番目のBus Cycleを使用しBus上にWrite RQ
が発行されるBasのタイミングであることを示してい
る。同様にレジスタ値「xxxx01」であれば0の位
置が2番目であるから2番目のBus Cycleを使用しBus上
にWrite RQが発行されるBasのタイミングであることを
示している。このBasのタイミングが図13に示すMode
と対応している。すなわち、Write RQが発行されるとき
図12で示すレジスタ値(T)の参照したときレジスタ
値に対応したModeが決定する。また、Write RQが発行さ
れるときレジスタ値の0の位置に1がセットされる。前
記レジスタ値(T)「xxxxx0」であれば「xxx
xx1」となり、前記「xxxx01」であれば「xx
xx11」となる。1Bus Cycleが経過するとレジスタ
値は右シフトされた状態がレジスタ値(T+1)であ
る。すなわち前記「xxxxx1」は「0xxxxx」
となり、前記「xxxx11」は「0xxxx1」とな
る。最も左のBitにはLatencyではDataが存在しないこと
を意味する0がセットされる。
【0047】S9でBus接続手段35は、RQ転送制御手段
36からWrite RQとWrite Dataを、Mode管理手段33か
らModeを受け取り、Modeによって指定されたData Cycle
までの間、Write DataをData保持手段351で一時的に
保持する。
【0048】S10でBus接続手段35は、転送手段35
2を用いてBusに対してWrite RQを発行する。
【0049】S11でMM接続手段41は、Bus上のRQを取
り込みRQ識別手段411でRQのTypeからRQの識別を行
い、MMへのRQである場合はS12以降の処理を行い、MM
へのRQでない場合は動作しない。
【0050】S12でMM制御手段48は、RQ解読手段4
81にてRQ識別手段411からRQを受け取りさらにRQの
Typeを解読し、Write RQである場合は、前記Write RQに
対応するWrite Dataを受け取るまでRQの有効ビット、Ba
nk内アドレス、Bank番号をRQ待機手段482において一
時的に待機させ、S13以降の処理を行う。Write RQで
ない場合はその他の動作を行う。
【0051】S13でRQ解読手段481は、RQのAddress
に含まれるBank番号からアクセスするBankを解読する
(ここでは、Bank46へのアクセスと解読される)。
【0052】S14でMode制御手段42では、RQのMode
をMode識別手段421で受け取る。Mode識別手段421
では、Modeの内容から受け取ったWrite RQに対応するWr
ite Dataが何Bus cycle後のData CycleにBus上に存在す
るかを識別する。
【0053】S15でWrite RQ発行元PU11のBus接続手
段35では、Data保持手段351に保持しているData
を、該RQのModeが指定するData cycleにBusへ転送す
る。
【0054】S16でMM接続手段41は、Mode制御手段
42からの指示によりRQ識別手段412にてModeの指示
するData CycleにあるDataをBusより受け取る。
【0055】S17でBank Busy管理手段43は、RQ解読
手段481からRQがWrite RQであることを示す情報と、
RQ待機手段482からアクセスするBank番号を受け取り
Write Busy管理手段431を参照し、該当するBank(こ
こではBank46)に対してアクセスが可能かを確認す
る。アクセス可能であればS13以降の処理を行い、ア
クセス不可能であれば障害と識別し障害を処理する動作
を行う(ここでは障害を処理する動作に関しては言及し
ない)。また、アクセス可能であるBankに関する情報を
受け取ると、Bank Busyの状態を更新する。
【0056】S18でBankアクセス手段44は、RQ解読
手段481からのWrite指示をWriteアクセス手段441
で受け取り、RQ待機手段482からRQのBank内アドレス
を受け取り、指定されたアドレスにDataを書き込み、一
連のWrite動作を終了する。
【0057】図11は、第一の実施の形態におけるWrit
e RQの動作のタイムチャートを説明する。図のCycleの
A、DはBusのAddress Cycle、Data Cycleを、RQはWrite
RQを、Dataは該RQのResponse Dataを、LatencyはBusのL
atencyをそれぞれ示している。図11では、Write RQが
Busに発行されてからWrite DataがBus上に存在するまで
の最速のタイミングを実線で表し、ModeによりWrite Da
taの存在するData Cycleのタイミングの変化を点線で表
す。時刻0においてWrite RQがPU内で処理され、時刻1
においてライトデータはPU内で転送され、時刻2におい
て前記RQはBus発行され、時刻3において前記データはB
usに転送され、時刻4において前記RQはMM内で処理さ
れ、時刻5において前記データはMM内で転送され、時刻
6から時刻10においてMMは前記RQのBankアクセスを行
い、時刻11において前記データはBankに書き込まれ
る。RQが発行されてからデータが転送されるまでのBus
上のLatencyは0時刻、すなわちLatencyがないことを意
味する。図中で点線は、Latencyが1Bus Cycle毎遅れた
場合を表している。最も遅く前記データがBusに発行さ
れるのは、時刻15であり、このときのLatencyは、Rea
d動作時のLatencyと等しく12時刻となる。
【0058】次に第一の実施の形態で、CPU21がBank
46に対しRead RQを発行し、該RQが、PU12内に存在
するCache LineにDirtyでHitし、PU12がPU11に対し
C Write RQを発行した場合のC Write動作について図
4、図5、図6、図9、を用いて説明する。図5は第一
の実施の形態のC Write RQの動作の流れ図であり、図3
のRead RQの動作の流れ図と説明および図4のWrite RQ
の動作の流れ図と説明とを引用する。説明には図1の名
称と符合を使用する。ただし、図4のWrite RQの動作の
説明を引用する場合、Write RQをC Write RQに差し替え
る。
【0059】S1でCPU21がRead RQを転送制御装置2
3に発行する。以降の処理は、ReadRQの動作の説明S1
と同様であるので省略する。S2では、Read RQの動作の
説明S2からS7と同様であるので省略する。S3では、R
ead RQの動作の説明S8と同様であるので省略する。S4
では、Read RQの動作の説明S9と同様であるので省略す
る。S5でRead RQを発行したPU以外の全てのPU(ここで
は、PU12)では、システム内のCache Coherencyを保つ
為、毎Address CycleにBusをSnoopする。S6でPU12で
は、SnoopしたRQのAddress fieldと自PU内に存在するCa
che Lineを比較し、前記Read RQの要求するDataが前記C
ache LineにDirtyでHitした場合、S7以降の処理を行
い、DirtyでHitしない場合、S8の処理を行う。S7でPU
12は、前記Read RQが自PU内にDirtyでHitし、C Write
RQを発行することを他の全てのPU(ここでは、PU11)
に対して制御線15を使って通知する。よって前記Read
RQを発行したCPU21は、前記Read RQによってC Write
RQが発行されることを識別する。S8でPU12は、前記
Read RQが自PU内にDirtyでHitしなかったことを他の全
てのPU(ここでは、PU11)に対して制御線15を使って
通知する。この場合、PU11は制御線15の情報による
動作はしない。S9では、Read RQの動作の説明S10か
らS14と同様であるので省略する。S10では、Read R
Qの動作の説明S15からS16と同様であるので省略す
る。S11でRead RQ発行元のCPU21では、自身の発行
したRead RQに対してS7でPU12からC Write RQにより
Dataが供給されることが通知されているので、MM13か
らのResponse Dataを無効にする。S12でDirtyでHitし
たCache Lineを持つCPU(この場合PU12に所属してい
る)は、Read RQの発行元のPU11に対して該RQのRespon
seとしてC Write RQを発行する。S13は、Write RQの
動作の説明S2からS9と同様であるので省略する。ただ
し、PU12に動作である為に符合は参照しない。S14
は、Write RQの動作の説明S10、S11、S14、S15
と同様であるので省略する。ただし、PU12に動作であ
る為に符合は参照しない。S15でPU11は、C Write R
Qに対してRead RQの動作の説明S16と同様に動作す
る。この時、Mode識別手段333により、C Write RQの
Modeにより指定されたTimingでBusからDataを受け取
る。S16は、Read RQの動作の説明S17と同様であ
り、一連のC Write RQ動作を終了する。図10を参照
し、第一の実施の形態におけるC Write RQの動作をタイ
ムチャートで説明する。図10において、CycleのA、D
はBusのAddress Cycle、Data Cycleを、RQはRead RQとC
Write RQを、Dataは該RQのResponse DataとC Write RQ
のDataを、LatencyはBusのLatencyをそれぞれ示してい
る。図10では、Read RQがBusに発行されたことにより
C Write DataがBus上に発行され、該C Write RQによるD
ataがBus上に最速のタイミングで存在する場合を表す。
【0060】時刻0から時刻18までは、従来技術のRe
ad動作と同様である(従来技術のC Write RQの動作説明
参照のこと)。時刻19においてライトデータはPU内で
転送され、時刻20において前記RQはBus発行され、時
刻21において前記データはBusに転送され、時刻22
において前記RQはRead RQ発行元のPU内で処理され、時
刻23において前記データはRead RQ発行元のPU内で転
送される。C Write RQが発行されてから対応するデータ
が転送されるまでのBus上のLatencyは0時刻、すなわち
Latencyがないことを意味する。図中で点線は、Latency
が最も遅れた場合を表している。最も遅く前記データが
Busに発行されるのは、時刻33であり、このときのLat
encyは、Read動作時のLatencyと等しく12時刻とな
る。
【0061】次に、本発明の第二の実施の形態について
図面を参照して説明する。図2は、本発明の第二の実施
の形態を示すブロック図である。図7は、本発明の第二
の実施の形態のRQ/Dataのフォーマットである。図14
は、本発明の第二の実施の形態のRead動作時のBus Busy
管理手段におけるレジスタ値の変化の一覧を示す図であ
る。図15は、本発明の第二の実施の形態のWrite動作
時のBus Busy管理手段におけるレジスタ値の変化の一覧
を示す図である。
【0062】本発明の第二の実施の形態では、第一の実
施の形態における各PU内に含まれるMode管理手段33を
Bus管理手段49に置き換え、MM13に含まれるMode管
理手段42を各PU内に含まれる前記Bus管理手段49に
置き換えた構成である。各PU11、12内のBus管理手
段49と、MM13内のBus管理手段49は同一の手段で
ある。
【0063】第二の実施の形態でBus管理手段49は、R
ead RQによりResponse Dataが使用するData Cycleと、C
ache間およびCacheとMM間のData転送を行うWrite RQ(以
下C Write RQ)により使用されるData Cycleとを各々登
録する2種のレジスタと、RQによるBusのData cycleの
使用状況を管理するBus Busy管理手段491と、BusBus
y管理手段491を制御するBus管理制御手段492とか
ら構成される。
【0064】次に第二の実施の形態のRead動作とWrite
動作とC Write動作を図2、図3、図4、図5、図7、
図8、図9、図10、図14、図15を用いて説明す
る。ただし図3において、第二の実施の形態のRead RQ
の動作の説明ではS12’が含まれる。図7は、Address
/Data Cycleのフォーマットを示し、有効ビット(V)、RQ
の動作指示(Type)、アクセスするBank内アドレスとBank
番号(Address)の3つのfieldで構成される。Read RQ
は、Read動作指示(命令フォーマットは図示せず)がType
fieldに含まれる。Dataは、転送データで構成される。
【0065】CPU21がBank46に対しRead RQを発行し
た場合のRead動作について図3を用いて説明する。
【0066】S1でCPU21がRead RQを転送制御装置2
3に発行する。以下第一の実施の形態におけるS1からS
12と同様である。
【0067】ただし、S9の動作が異なる。S9ではBus
管理手段491内のレジスタ値の変化を図14に示す。
図14に示すように、Bus管理手段491内に第一の実
施の形態のBus Busy管理手段331内のBus全体のTimin
gレジスタに加えて有効Timingレジスタを備えている。
この有効Timingレジスタは、Bus全体のTimingレジスタ
に登録されたTimingが所属するPUからBusに有効なRQを
出力したことを示し毎BusCycleに右シフトする。この有
効Timingレジスタは、時刻T+1において、Bus全体のTimi
ngレジスタにセットされた1が所属するPUに有効であれ
ば同じTimingで1がセットされ、有効でなければ0がセ
ットされる。
【0068】S12’でBus管理手段49は、MM制御手段
48からMM13が受け取ったRQがRead RQである情報を
受け取り、Bus Busy管理手段491に該RQのResponse D
ataがBusを使用するData Cycleのタイミングを登録す
る。Bus Busy管理手段491のレジスタの動作は、S9
のBus Busy管理手段491と同様である(ただし、「所
属するPU」を「所属するMM」に読み替える)。
【0069】S13からS17では、第一の実施の形態に
おけるRead動作の説明と同様である。以上により、一連
のRead動作を終了する。
【0070】図8は、第二の実施の形態におけるRead R
Qの動作のタイムチャートである。Read RQの動作のタイ
ムチャートにおいて、第二の実施の形態は第一の実施の
形態および従来の技術と同じである(第一の実施の形態
のRead RQのタイムチャートの説明参照のこと)。
【0071】次に第二の実施の形態で、CPU21がBank
46に対しWrite RQを発行した場合のWrite動作につい
て図4を用いて説明する。ただし図4において、第二の
実施の形態のWrite RQの動作説明ではS8の代わりにS
8’とし、S14の代わりにS14’とし、S15の代わ
りにS15’とし、S16の代わりにS16’とする。
【0072】S1でCPU21がWrite RQを転送制御装置2
3に発行する。以下第一の実施の形態におけるWrite RQ
の動作の説明のS1からS7と同様である。第二の実施の
形態におけるWrite動作では、第一の実施の形態におけ
るS8の処理は行わずS8’の処理をする。
【0073】S8’でBus競合調停手段34による調停の
結果、所属するPUのWrite RQがBusに対して発行可能な
状態になると、Bus管理手段33は、該RQがWrite RQで
ある情報を受け取り、Bus Busy管理手段491でBusのD
ata Cycleの使用状況を確認する。BusはPipeline方式に
より動作する為、Write RQに対応するWrite DataはWrit
e RQがBus上に発行されてからLatency後にBus上に転送
できるが、Latency以前に使用されていないData Cycyle
がある場合、Write RQがBusに発行されてから最早の使
用されていないData CycleでDataをBusに転送すること
が可能である。この場合、Write Dataを転送するタイミ
ング、すなわち、Data Cycleを使用するタイミングを意
味する情報をBus Busy管理手段491に登録する。Bus
Busy管理手段491内のレジスタ値の変化を図15に示
す(第一の実施の形態におけるWrite RQ動作のS8、第二
の実施の形態におけるRead RQ動作のS9参照)。Bus全体
のTimingレジスタの動作は、第一の実施の形態のWrite
RQ動作を同様である。また、有効Timingレジスタの動作
は、第一の実施の形態と同様に時刻T+1において、Bus全
体のTimingレジスタにセットされた1が所属するPUに有
効であれば同じTimingで1がセットされ、有効でなけれ
ば0がセットされる。
【0074】S9からS13では、第一の実施の形態にお
けるWrite動作の説明S9からS13と同様である。第二
の実施の形態におけるWrite動作では、第一の実施の形
態におけるS14の処理は行わずS14’の処理をする。
【0075】S14’でBus管理手段49は、MM制御手段
48からMMが受け取ったRQがWriteRQである情報を受け
取り、Bus Busy管理手段491に該RQのWrite DataがBu
sを使用するData CycleのタイミングをS8’と同様に登
録する。第二の実施の形態におけるWrite動作では、第
一の実施の形態におけるS15の処理は行わずS15’の
処理をする。
【0076】S15’でWrite RQ発行元PU11のBus接続
手段35は、Data保持手段351に保持しているData
を、S3でBus Busy管理手段491に登録してあるBusの
Data CycleにWrite RQのWrite DataをBus上に転送す
る。第二の実施の形態におけるWrite動作では、第一の
実施の形態におけるS16の処理は行わずS16’の処理
をする。
【0077】S16’でMM接続手段41は、Bus管理手段
49からBus Busy管理手段491の登録してあるBusのD
ata CycleにWrite RQのWrite Dataが転送される指示を
受け、RQ識別手段411にて前記の指示でData Cycleに
あるDataをBusより受け取る。
【0078】S17からS18では、第一の実施の形態に
おけるWrite動作の説明と同様である。以上により、一
連のWrite RQの動作を終了する。
【0079】図9は、第二の実施の形態におけるWrite
RQの動作のタイムチャートである。Write RQの動作のタ
イムチャートにおいて、第二の実施の形態は第一の実施
の形態および従来の技術と同じである(第一の実施の形
態のWrite RQのタイムチャートの説明参照のこと)。
【0080】次に第二の実施の形態のC Write動作を説
明する。CPU21がBank46に対しRead RQを発行し、該
RQがPU12内に存在するCache LineにDirtyでHitし、PU
12がPU11に対しC Write RQを発行する動作について
図5を用いて説明する。第二の実施の形態におけるC Wr
ite 動作は、第一の実施の形態のC Write動作の説明に
おけるRead 動作の説明とWrite動作の説明をそれぞれ第
二の実施の形態のRead動作の説明とWrite 動作の説明に
置き換える。図5はC Write RQの動作の流れ図であり、
図4のRead RQの動作の流れ図と説明、および図5のWri
te RQの動作の流れ図と説明を引用する。説明には図2
の名称と符合を使用する。ただし、Write RQの動作の説
明を引用する場合、Write RQをC Write RQに差し替え
る。
【0081】すなわち、Write RQの動作時にModeによる
制御と有効Timingレジスタによる制御の違いで動作結果
は図10のタイムチャートとなり第一の実施形態と同様
となる。
【0082】
【発明の効果】以上説明したように、本発明の第一の効
果は、第一の実施の形態において、メモリに対するWrit
e動作が行われるRQ発行時にModeによるRQとData間の時
間を可変にするのでBus上でRQとData間をLatency以下に
することが可能となる。これにより、Write RQ発行時ま
たはC Write RQ発行時において、Dataを供給されるCPU
がRQを受けてからDataを受けるまでの待ち時間をBus上
でLatency以下にすることが可能となり、前記待ち時間
による性能低下を押さえることが可能となる。
【0083】第二の効果は、第二の実施の形態におい
て、メモリに対するWrite動作が行われるRQ発行時に各P
U、MMで同期を取るレジスタを設けたため、Bus上でRQと
Data間をLatency以下にすることが可能となる。これに
より、Write RQ発行時またはCWrite RQ発行時におい
て、該RQによりDataを供給されるCPUがRQを受けてからD
ataを受けるまでの待ち時間をBus上でLatency以下にす
ることが可能となり、前記待ち時間による性能低下を押
さえることが可能となる。
【図面の簡単な説明】
【図1】本発明の第一の実施の形態の構成を示すブロッ
ク図である。
【図2】本発明の第二の実施の形態の構成を示すブロッ
ク図である。
【図3】本発明の第一および第二の実施の形態のRead動
作の流れ図である。
【図4】本発明の第一および第二の実施の形態のWrite
動作の流れ図である。
【図5】本発明の第一および第二の実施の形態のC Writ
e動作の流れ図である。
【図6】本発明の第一の実施の形態のRQ/Dataのフォー
マットである。
【図7】本発明の第二の実施の形態のRQ/Dataのフォー
マットである。
【図8】本発明の第一、第二の実施の形態及び従来技術
のRead動作のタイムチャートである。
【図9】本発明の第一および第二の実施の形態のWrite
動作のタイムチャートである。
【図10】本発明の第一および第二の実施の形態のCach
e間およびCacheとMM間のData転送を行うC Write動作の
タイムチャートである。
【図11】本発明の第一の実施の形態のRead動作時のBu
s Busy管理手段におけるレジスタ値の変化の一覧を示す
図である。
【図12】本発明の第一の実施の形態のWrite動作時のB
us Busy管理手段におけるレジスタ値の変化の一覧を示
す図である。
【図13】本発明の第一の実施の形態のWrite動作時のB
us Busy管理手段におけるレジスタ値とModeの関係の一
覧を示す図である。
【図14】本発明の第二の実施の形態のRead動作時のBu
s Busy管理手段におけるレジスタ値の変化の一覧を示す
図である。
【図15】本発明の第二の実施の形態のWrite動作時のB
us Busy管理手段におけるレジスタ値の変化の一覧を示
す図である。
【図16】従来技術の構成図である。
【図17】従来技術のWrite動作のタイムチャートであ
る。
【図18】従来技術のC Write動作のタイムチャートで
ある。
【符号の説明】
11、12 PU 13 MM 14 Bus 15 制御線 21、22 CPU 23 転送制御装置 31 CPU接続手段 32 Bank Busy管理手段 321 Read Busy管理手段 322 Write Busy管理手段 323 Bank Busy制御手段 33 Mode管理手段 331 Bus Busy管理手段 332 Mode設定手段 333 Mode識別手段 334 Mode管理制御手段 34 Bus競合調停手段 35 Bus接続手段 351 Data保持手段 352 転送手段 353 RQ識別手段 354 接続制御手段 36 RQ転送制御手段 361 RQ解読手段 362 RQ保持手段 363 RQ制御手段 41 MM接続手段 411 転送手段 412 RQ識別手段 413 接続制御手段 42 Mode制御手段 421 Mode識別手段 422 識別制御手段 43 Bank Busy管理手段 431 Read Busy管理手段 432 Write Busy管理手段 433 Bank Busy制御手段 44、45 Bankアクセス手段 441 Readアクセス手段 442 Writeアクセス手段 443 アクセス制御手段 46、47 Bank 48 MM制御手段 481 RQ解読手段 482 RQ待機手段 483 RQ制御手段 49 Bus管理手段 491 Bus Busy管理手段 492 Bus管理制御手段

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 演算処理装置と転送制御装置とを構成す
    る処理装置からバスを経由して他の処理装置または主記
    憶部とデータ転送を行う情報処理装置において、1つ以
    上の演算処理装置と前記演算処理装置からデータを転送
    する時間間隔を可変に制御する転送制御装置とから構成
    される処理装置と、1つ以上の前記処理装置から共有し
    て使用され記憶単位であるBankで構成される主記憶部
    と、前記処理装置間を接続する制御線と、前記処理装置
    間と前記主記憶部とを接続するパイプライン方式のBus
    と、を備えることを特徴とする情報処理装置。
  2. 【請求項2】 前記制御線は、前記処理装置が前記Bus
    を使用する為の競合調停を行う際に、自処理装置からの
    前記転送命令を他の全処理装置に送る為に用いられるこ
    とを特徴とする請求項1記載の情報処理装置。
  3. 【請求項3】 前記転送制御装置は、前記演算処理装置
    からデータの転送命令を受け付けデータ転送を行うCPU
    接続手段と、前記主記憶部のBankのアクセス状況を管理
    し前記Bankへアクセスするデータの転送命令の発行時に
    アクセスが可能か不可能かの判断を行うBank Busy管理
    手段と、前記演算処理装置からデータの転送命令を受け
    付けたとき前記Busの使用状況から前記転送命令と転送
    するデータとの時間間隔であるModeを設定するMode管理
    手段と、前記Busに接続される前記処理装置からの前記
    制御線を介してBusに対する前記転送命令の要求の調停
    を行い前記Busの使用権をいずれかの処理装置に与えるB
    us競合調停手段と、前記Busとインタフェースを持ち前
    記演算処理装置からのデータの転送を行うBus接続手段
    と、前記CPU接続手段と前記Bank Busy管理手段と前記Mo
    de管理手段と前記Bus競合調停手段と前記Bus接続手段と
    を制御するRQ転送制御手段と、を備えることを特徴とす
    る請求項1記載の情報処理装置。
  4. 【請求項4】 前記Mode管理手段は、前記BusのData cy
    cleの使用状況を示すBus全体のTimingレジスタにより管
    理するBus Busy管理手段と、前記演算処理装置からのデ
    ータの転送命令がWrite命令のとき前記Bus全体のTiming
    レジスタの値に対応しデータを前記Busに転送するTimin
    gを規定するModeを設定するMode設定手段と、前記Bus上
    に発行された転送命令の前記Modeを識別し所属する前記
    処理装置に対しCache間またはCacheと主記憶部間のデー
    タ転送を行うTimingを判断するMode識別手段と、前記Bu
    s Busy管理手段と前記Mode設定手段と前記Mode識別手段
    とを制御するMode管理制御手段と、を備えることを特徴
    とする請求項2記載の情報処理装置。
  5. 【請求項5】 前記主記憶部は、前記Bankアクセス手段
    からの制御によりデータを記憶するBankと、前記Busと
    インタフェースを持ちBusとのデータ転送を行うMM接続
    手段と、前記Busからデータの転送命令に設定されてい
    る前記Modeによりデータが送られてくるTimingを識別す
    るMode制御手段と、前記処理装置内にある前記Bank Bus
    y管理手段と同一の機能を持つBank Busy管理手段と、前
    記Bankと対をなしデータの転送命令のアクセスを制御す
    るBankアクセス手段と、前記MM接続手段と前記Mode制御
    手段と前記Bank Busy管理手段と前記Bankアクセス手段
    の制御とデータの転送命令を受け取ったときにこの転送
    命令のデータを受け取るまで待ち合わせるMM制御手段
    と、を備えることを特徴とする請求項1記載の情報処理
    装置。
  6. 【請求項6】 前記Mode制御手段は、前記Busからの転
    送命令に設定されているModeによりDataが送られてくTi
    mingを識別するMode識別手段と、前記Mode識別手段を制
    御する識別制御手段と、を備えることを特徴とする請求
    項5記載の情報処理装置。
  7. 【請求項7】 前記転送制御装置は、前記CPU接続手段
    と、前記Bank Busy管理手段と、前記Bus競合調停手段
    と、前記Bus接続手段と、前記Busの使用状況を管理する
    Bus Busy管理手段とこのBus Busy管理手段を制御するBu
    s管理制御手段とから構成されるBus管理手段と、前記CP
    U接続手段と前記Bank Busy管理手段と前記Bus競合調停
    手段と前記Bus接続手段と前記Bus管理手段とを制御する
    RQ転送制御手段と、を備えることを特徴とする請求項1
    記載の情報処理装置。
  8. 【請求項8】 前記Bus管理手段は、前記Bus Busy管理
    手段内のBus全体のTimingレジスタに加えて有効Timing
    レジスタを備えることを特徴とする請求項4または7記
    載の情報処理装置。
  9. 【請求項9】 前記有効Timingレジスタは、Bus全体のT
    imingレジスタに登録されたTimingが所属する処理装置
    から前記Busに有効なデータの転送命令を出力したこと
    を示し、前記Bus全体のTimingレジスタにセットされた
    とき同じTimingでセットされることを特徴とする請求項
    8記載の情報処理装置。
  10. 【請求項10】 前記主記憶部は、前記Mode制御手段と
    前記Bus管理手段とを置換した構成を備えることを特徴
    とする請求項1、5または8記載の情報処理装置。
JP00042898A 1998-01-05 1998-01-05 情報処理装置 Expired - Lifetime JP3570877B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP00042898A JP3570877B2 (ja) 1998-01-05 1998-01-05 情報処理装置
US09/226,919 US6266777B1 (en) 1998-01-05 1999-01-05 Information processing apparatus to control bus latency

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00042898A JP3570877B2 (ja) 1998-01-05 1998-01-05 情報処理装置

Publications (2)

Publication Number Publication Date
JPH11194994A true JPH11194994A (ja) 1999-07-21
JP3570877B2 JP3570877B2 (ja) 2004-09-29

Family

ID=11473551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00042898A Expired - Lifetime JP3570877B2 (ja) 1998-01-05 1998-01-05 情報処理装置

Country Status (2)

Country Link
US (1) US6266777B1 (ja)
JP (1) JP3570877B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001136583A (ja) * 1999-08-18 2001-05-18 Nokia Corp 移動ターミナルにおけるコンピュータゲームの遂行に褒賞を与える装置及び関連方法
US6845418B2 (en) 2000-08-05 2005-01-18 Samsung Electronics Co., Ltd. Bus system for master-slave device accesses, has multiple pseudo-delayer connected to controllers which delay and output access commands to slave devices for having longer latency periods

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2091919B (en) 1980-03-21 1984-08-08 Concurrent Processing Systems Computer system and interface therefor
US4412286A (en) * 1980-09-25 1983-10-25 Dowd Brendan O Tightly coupled multiple instruction multiple data computer system
JP2705709B2 (ja) * 1991-06-17 1998-01-28 大日本スクリーン製造株式会社 データの時分割転送装置
JPH04372043A (ja) 1991-06-21 1992-12-25 Hitachi Ltd 情報処理装置用バス

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001136583A (ja) * 1999-08-18 2001-05-18 Nokia Corp 移動ターミナルにおけるコンピュータゲームの遂行に褒賞を与える装置及び関連方法
US6845418B2 (en) 2000-08-05 2005-01-18 Samsung Electronics Co., Ltd. Bus system for master-slave device accesses, has multiple pseudo-delayer connected to controllers which delay and output access commands to slave devices for having longer latency periods

Also Published As

Publication number Publication date
US6266777B1 (en) 2001-07-24
JP3570877B2 (ja) 2004-09-29

Similar Documents

Publication Publication Date Title
US5802560A (en) Multibus cached memory system
US6681302B2 (en) Page open hint in transactions
EP1191452B1 (en) Out of order associative queue in two clock domains
US6006307A (en) Computer system employing a mirrored memory system for providing prefetch bandwidth
US5919254A (en) Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
KR101005114B1 (ko) 모드 레지스터에서의 버스트 길이 설정 변화 없이 상이한버스트―길이 액세스들을 지원하는 dram
US6636927B1 (en) Bridge device for transferring data using master-specific prefetch sizes
EP1012734B1 (en) Address translation in computer bus bridge devices
EP0748481A1 (en) Highly pipelined bus architecture
US5515516A (en) Initialization mechanism for symmetric arbitration agents
EP0663087A1 (en) Method and apparatus for non-snoop window reduction
TWI259362B (en) Memory controller
JPH06231075A (ja) ゼロ潜伏性ループアービトレーションの方法及び装置
JPH10320282A (ja) 仮想キャッシュ・コントロール方法及び装置
EP1323045A2 (en) Dynamic priority external transaction system
US20100306421A1 (en) Dma transfer device
JPH08249231A (ja) マルチプロセッサ・システムにおける古いデータの処理システム及び方法
JPH0728758A (ja) ダイナミックタイムループ調停及び装置
US7093052B2 (en) Bus sampling on one edge of a clock signal and driving on another edge
US6928525B1 (en) Per cache line semaphore for cache access arbitration
JPH11134292A (ja) パイプライン方式のバスを用いたメモリ制御方式
JP2002163228A (ja) 多重コアdsp装置のための外部バス裁定技術
TWI766936B (zh) 資料處理
JPH11194994A (ja) 情報処理装置
JP2005165508A (ja) ダイレクトメモリアクセスコントローラ

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040510

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040517

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040601

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040622

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070702

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080702

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090702

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100702

Year of fee payment: 6