JP4368320B2 - 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 - Google Patents

情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 Download PDF

Info

Publication number
JP4368320B2
JP4368320B2 JP2005075091A JP2005075091A JP4368320B2 JP 4368320 B2 JP4368320 B2 JP 4368320B2 JP 2005075091 A JP2005075091 A JP 2005075091A JP 2005075091 A JP2005075091 A JP 2005075091A JP 4368320 B2 JP4368320 B2 JP 4368320B2
Authority
JP
Japan
Prior art keywords
request
unit
busy
valid
determination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005075091A
Other languages
English (en)
Other versions
JP2006260013A (ja
Inventor
孝夫 松井
由佳 細川
誠 畑井田
俊和 植木
誠之 岡田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005075091A priority Critical patent/JP4368320B2/ja
Priority to US11/157,809 priority patent/US7490219B2/en
Priority to EP05013582A priority patent/EP1703376A3/en
Priority to KR1020050066133A priority patent/KR100660458B1/ko
Priority to CNB2005100870354A priority patent/CN100414495C/zh
Publication of JP2006260013A publication Critical patent/JP2006260013A/ja
Application granted granted Critical
Publication of JP4368320B2 publication Critical patent/JP4368320B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing

Landscapes

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

Description

本発明は、複数段のレジスタからなるパイプラインレジスタの最終段に、例えば、リクエストを保持するレジスタをそなえる装置において、リクエストがパイプラインレジスタの中途に保持されている段階で、かかるレジスタへの投入(格納)判定を行なうための技術に関する。
従来から、複数段のレジスタからなり、シフトレジスタとして機能するパイプラインレジスタの最終段にリクエストを保持するキューをそなえるパイプライン装置がある(例えば、下記特許文献1参照)。
このようなパイプライン処理装置がそなえられた従来の情報処理システムを図9に示す。この図9に示すように、情報処理システム100では、複数(ここでは8つ)のパイプライン処理装置110−0〜110−7(図中SB(System Board)0〜SB7と表記)がそなえられ、これら複数のパイプライン処理装置110−0〜110−7(以下、これら複数のパイプライン処理装置110−0〜110−7を特に区別しない場合には単に符号“110”を用いて説明する。)が互いに同期しながらパイプライン処理を実行するとともに、複数のパイプライン処理装置110−0〜110−7のそれぞれが、データバス(FSB:Front Side Bus)111−0〜111−7(以下、これらデータバス111−0〜111−7を特に区別しない場合には単に符号“111”を用いて説明する。)を介してリクエストを実行する2つの演算部(図中CPU(Central Processing Unit)と表記)A−0〜A−7,B−0〜B−7(以下、演算部A−0〜A−7,B−0〜B−7を特に区別しない場合には単に符号“A,B”を用いて説明する。)に接続されている。
なお、パイプライン処理装置110−0〜110−7のそれぞれは、符号の末尾の番号が同一の対応するデータバス111−0〜111−7と互いに接続され、さらに、パイプライン処理装置110−0〜110−7のそれぞれは、データバス111を介して、符号の末尾の番号が同一の対応する2つの演算部A−0〜A−7,B−0〜B−7に接続されている。
例えば、パイプライン処理装置110−0はデータバス111−0を介して演算部A−0,B−0に接続され、パイプライン処理装置110−1はデータバス111−1を介して演算部A−1,B−1に接続され、パイプライン処理装置110−7はデータバス111−7を介して演算部A−7,B−7に接続されている。
また、図9において、パイプライン処理装置110−2,110−3,110−4,110−5,110−6、並びにデータバス111−2,111−3,111−4,111−5,111−6、及び演算部A−2,B−2,A−3,B−3,A−4,B−4,A−5,B−5,A−6,B−6は、図の簡略化のため省略している。
また、情報処理システム100は、これら複数のパイプライン処理装置110に対してリクエストを通知するとともに、当該リクエストを複数のパイプライン処理装置110のうちの一のパイプライン処理装置110に担当させる制御装置(図中XB(Crossbar Board)と表記)120をそなえて構成されている。
この情報処理システム100では、制御装置120の選択部121が、制御装置120に対するリクエストREQ0〜REQnを各リクエストREQ0〜REQnの優先度を判断して選択し、選択されたリクエストをGSA(Global System Address)−SB0〜GSA−SB7にて対応するパイプライン処理装置110−0〜110−7に同時に通知する。
そして、各パイプライン処理装置110は、複数のレジスタ112aからなるパイプラインレジスタ112によって、通知されたリクエストを保持する。このとき、各パイプライン装置110は、本情報処理システム100内のシステムクロック(同期信号)に基づいて、他のパイプライン処理装置110と同じタイミングでリクエストを複数のレジスタ112aの上流側から下流側に順に移行させながら保持する。
一方、各パイプライン処理装置110のLCST(Local Cache Status)生成論理114は、他のパイプライン処理装置110と同じタイミングで記憶部(図中TAGと表記)113を検索して、当該リクエストに使用するデータが配下にある演算部A,Bの記憶部に保持されているか否かを判断する。
さらに、LCST生成論理114は、後述するリクエストキュー(図中SLVQ_FSBと表記;Slave Request Queue)117が当該リクエストを格納しうるか否か(つまり、リクエストキュー117がビジー状態であるか否か)を判定する。
そして、LCST生成論理114の条件生成部(図中条件生成と表記)115が、LCST生成論理114によるキャッシュヒットしたか否かの判定結果と、リクエストキュー117がビジー状態であるか否かの判定結果とに基づいて、当該リクエストが担当可能な有効リクエストであるか否かの動作確定を行なう。
次いで、LCST生成論理114がさらに、自身のTAG情報(つまり、記憶部113の上記検索の結果、キャッシュヒットしたか否かの情報)や、当該リクエストが担当可能な有効リクエストであるか否かの動作確定情報などを、LCST−SB0〜LCST−SB7にて制御装置120に送信する。
そして、制御装置120のLCST集約論理122が、複数のパイプライン処理装置110から送信された情報を集約し、GCST(Global Cache Status)生成論理123が、各パイプライン処理装置110から送信された情報を総合判断して、例えば、当該リクエストを複数のパイプライン処理装置110のうちのいずれのパイプライン処理装置110に担当させるかという情報処理システム100としての動作を確定し、この確定動作をGCST−SB0〜GCST−SB7にて対応するパイプライン処理装置110に同時に通知する。
なお、制御装置120も複数のレジスタ124aからなるパイプラインレジスタ124をそなえて構成され、リクエストを各パイプライン処理装置110に通知してから当該リクエストについての動作確定情報が各パイプライン処理装置110から送信されてくるまでの間、各パイプライン処理装置110に対して同期をとるために、パイプラインレジスタ124が、当該リクエストをかかるシステムクロックに基づいて上流側から下流側に順に移行させながら保持している。
そして、各パイプライン処理装置110のGCST判定論理116が、対応するGCST−SB0〜GCST−SB7にて制御装置120から通知された確定動作を受信し、受信した確定動作を元に当該リクエストをパイプラインレジスタ112の後段に設けられたリクエストキュー117に格納するか否かを判定する。
つまり、複数のパイプライン処理装置110のうちの動作許可を得た(つまり、当該リクエストを担当させると確定された)パイプライン処理装置110が、当該リクエストをリクエストキュー117に格納する。
ここで、リクエストキュー117は、リクエストを保持する先入れ先出し方式(FIFO;First In First Out)のレジスタであり、リクエストは、このリクエストキュー117に保持されることによって、データバス111を介して演算部A,Bに渡され、実行される。
なお、各パイプライン処理装置110のパイプラインレジスタ112は、制御装置120からリクエストを受け取ってから自身の動作を確定するまでの間(つまり、記憶部113に保持されたTAG情報を検索する間)のタイムラグを吸収するために、当該リクエストをかかるシステムクロックに基づいて上流側から下流側に順に移行させながら保持している。
さらに、各パイプライン処理装置110のパイプラインレジスタ112は、LCST生成論理114によって自身の動作確定情報等を制御装置120に送信してからGCST判定論理116がGCST生成論理123から確定動作を受信するまでの間、制御装置120に対して同期をとるために、当該リクエストをかかるシステムクロックに基づいて上流側から下流側に順に移行させながら保持している。
このように、情報処理システム100では、各パイプライン処理装置110において、リクエストがパイプラインレジスタ112の中途に保持されている段階で、LCST生成論理114(条件生成部115)が、当該リクエストのリクエストキュー117への投入(格納)判定を行なわなくてはならない。
つまり、各パイプライン処理装置110は、リクエストがパイプラインレジスタ112の中途に保持されている段階で、当該リクエストが、自身が担当しうる有効リクエストであるか否か(すなわち、当該リクエストを自身の配下にある演算部A,Bにて実行可能であるか否か)の動作を確定しなければならない。
しかも、当該リクエストを実際に担当するか否かの最終的な動作確定は、制御装置120のGCST生成論理123が行ない、各パイプライン処理装置110においては当該リクエストがパイプラインレジスタ112の最終段を通過する際に判明されるため、各パイプライン処理装置110のLCST生成論理114は、条件生成部115からリクエストキュー117までの間に介在するレジスタ112aに保持されている他のリクエストを考慮して、リクエストキュー117がビジー状態であるか否かの判定を行なわなければならない。
すなわち、LCST生成論理114は、当該リクエストをリクエストキュー117に格納する際に、リクエストキュー117がビジー状態となっているか否かを前もって判定しなければならず、これにより、当該リクエストをリクエストキュー117に実際に格納する際にリクエストキュー117がビジー状態になっているような状況を回避する。
ここで、図10を参照しながら、LCST生成論理114によるリクエストキュー117の具体的なビジー状態判定方法について説明する。
図10に示すように、リクエストキュー117がm段(mは1以上の整数;つまり、m個のリクエストをエントリ可能)であり、条件生成部115からリクエストキュー117までのパイプラインレジスタ112のレジスタ112aがn段(nは1以上の整数)であり、さらに、リクエストキュー117のx段(xは整数;x<m)を有効リクエストが占有している(つまり、x個の有効エントリが存在している)場合、LCST生成論理114は、n段のレジスタ112aすべてが有効リクエストを保持していると仮定して、下記(X)に示す条件で、リクエストキュー117のビジー判定を行なう。
x+n=m ・・・(X)
つまり、LCST生成論理114は、リクエストキュー117の有効エントリ数x段と、条件生成部115からリクエストキュー117までのレジスタ112aの段数nとの和が、リクエストキュー117のすべてのエントリ数m段と等しければ、リクエストキュー117がビジー状態であると判定する。
なお、従来から、リクエストを保持するキュー(レジスタ)の有効エントリ数(図10におけるx段)をカウントする技術が提案されている(例えば、下記特許文献1,2参照)。
特開平4−367031号公報 特開昭64−10332号公報
しかしながら、図10を参照しながら上述したLCST生成論理114によるビジー判定方法では、n段中のレジスタ112aに無効エントリが存在していても、これを有効エントリとして扱うため、実際にはビジー状態にはならない場合であっても、ビジー状態であると判定することがあり、リクエストキュー117のエントリ数を有効に活用することができない。
しかも、かかるビジー判定方法は、条件生成部115からリクエストキュー117までのレジスタ112aの段数nが、リクエストキューのすべてのエントリ数m以上である場合には、LCST生成論理114が常にビジーを検出することになるため、適用することができない。
そこで、条件生成部115が動作確定を行なう度に、n段のレジスタ112aすべてについて有効エントリが保持されているか否かを判別することが考えられるが、この方法は、各レジスタ112aに有効/無効のいずれのリクエストが保持されているかを判別するための回路等が必要になるため、ハード資源が増大してしまうとともに、製造コストが嵩んでしまう。
本発明は、このような課題に鑑み創案されたもので、上述のような情報処理システムのパイプライン処理装置において、リクエストがパイプラインレジスタの中途に保持されている段階で、当該リクエストをパイプラインレジスタの最終段にそなえられたレジスタへ格納するための、かかるレジスタのビジー判定を、ハード資源を増大させることなく、確実に実行できるようにすることを目的とする。
上記目的を達成するために、本発明の情報処理システムは、リクエストを実行する演算部に接続され、互いに同期しながらパイプライン処理を実行する複数のパイプライン処理装置と、リクエストを前記複数のパイプライン処理装置に対して通知するとともに、当該リクエストに対する最終的な動作を決定する制御装置とからなる情報処理システムであって、前記複数のパイプライン処理装置のそれぞれが、前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、このパイプラインレジスタの後段にそなえられるリクエストキューと、前記パイプラインレジスタに介装され、前記リクエストが、前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部と、この判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタと、この第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部と、このビジー判定部によるビジー状態判定結果を前記制御装置に通知する判定結果通知部とをそなえ、前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうように構成されるとともに、前記制御装置が、リクエストを前記複数のパイプライン処理装置に対して同時に通知するリクエスト通知部と、前記複数のパイプライン処理装置の前記判定結果通知部から通知される前記ビジー状態判定結果に基づいて、当該リクエストに対する最終的な動作を決定する決定部と、この決定部による決定結果を、前記複数のパイプライン処理装置に対して同時に通知する決定結果通知部とをそなえて構成されていることを特徴としている(請求項1)。
なお、前記ビジー判定部によって前記リクエストキューがビジー状態であると判定された場合、前記判定部は、前記リクエストを前記有効リクエストと判定しないことが好ましい(請求項2)。
また、前記複数のパイプライン処理装置のそれぞれが、前記リクエストキューの有効エントリ数をカウントする第2カウンタと、前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部とをそなえ、前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定することが好ましい(請求項3)。
さらに、前記第2カウンタは、前記リクエストキューに前記有効リクエストが前記有効エントリとして新たにエントリされた際に、前記有効エントリ数を1つカウントアップする一方、前記リクエストキューに保持されていた前記有効エントリに関するリクエスト処理が完了されると、前記有効エントリ数を1つカウントダウンすることが好ましく(請求項4)、前記第1カウンタは、前記判定部が前記リクエストを前記有効リクエストであると判定すると、前記有効リクエスト数を1つカウントアップする一方、前記有効リクエストが前記パイプラインレジスタの最終段のレジスタを通過すると、前記有効リクエスト数を1つカウントダウンすることが好ましい(請求項5)。
なお、前記複数のパイプライン処理装置のそれぞれが、前記制御装置の前記決定結果通知部から通知された前記決定結果が、前記リクエストを自身が担当するものである場合、当該リクエストを前記リクエストキューに前記有効エントリとしてエントリする一方、前記決定結果が、前記リクエストを自身が担当するものでない場合、当該リクエストを無効化する確定部をそなえて構成されていることが好ましい(請求項6)。
また、前記複数のパイプライン処理装置のそれぞれが、自身に接続された前記演算部の記憶部に保持されたデータに関するデータ情報を保持するデータ情報保持部と、前記制御装置から通知された前記リクエストに使用されるデータを、自身に接続された前記演算部が保持しているか否かを、前記データ情報保持部に保持された前記データ情報に基づいて判定する保持判定部とをそなえ、前記判定結果通知部が、前記保持判定部による保持判定結果を前記制御装置に通知するとともに、前記判定部が、前記保持判定部による保持判定結果に基づいて、前記判定を行なうことが好ましい(請求項7)。
このとき、前記制御装置の前記決定部が、前記複数のパイプライン処理装置の前記判定結果通知部から通知される前記保持判定部による保持判定結果に基づいて、前記リクエストに対する最終的な動作を決定することが好ましい(請求項8)。
さらに、前記保持判定部が、前記データ情報に基づいて前記リクエストに使用される前記データが最新のデータであるか否かを判定するように構成され、前記保持判定部が当該リクエストに使用される前記データが最新のデータであると判定した場合には、前記判定結果通知部が、当該リクエストに使用される最新のデータを保持していることを示す情報を、前記保持判定部による保持判定結果として前記制御装置に通知することが好ましい(請求項9)。
また、上記の目的を達成するために、本発明のパイプライン処理装置は、リクエストを実行する演算部と、リクエストを通知するとともに当該リクエストに対する最終的な動作を決定する制御装置とに接続され、他のパイプライン処理装置と互いに同期しながらパイプライン処理を実行するパイプライン処理装置であって、前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、このパイプラインレジスタの後段にそなえられるリクエストキューと、前記パイプラインレジスタに介装され、前記リクエストが、前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部と、この判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタと、この第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部と、このビジー判定部によるビジー状態判定結果を前記制御装置に通知する判定結果通知部とをそなえ、前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうことを特徴としている(請求項10)。
なお、前記ビジー判定部によって前記リクエストキューがビジー状態であると判定された場合、前記判定部は、前記リクエストを前記有効リクエストと判定しないことが好ましい(請求項11)。
さらに、前記リクエストキューの有効エントリ数をカウントする第2カウンタと、前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部とをそなえ、前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定することが好ましい(請求項12)。
また、前記第2カウンタは、前記リクエストキューに前記有効リクエストが前記有効エントリとして新たにエントリされた際に、前記有効エントリ数を1つカウントアップする一方、前記リクエストキューに保持されていた前記有効エントリに関するリクエスト処理が完了されると、前記有効エントリ数を1つカウントダウンすることが好ましく(請求項13)、前記第1カウンタは、前記判定部が前記リクエストを前記有効リクエストであると判定すると、前記有効リクエスト数を1つカウントアップする一方、前記有効リクエストが前記パイプラインレジスタの最終段のレジスタを通過すると、前記有効リクエスト数を1つカウントダウンすることが好ましい(請求項14)。
なお、前記制御装置から通知された、前記リクエストに対する最終的な決定結果が、当該リクエストを自身が担当するものである場合、当該リクエストを前記リクエストキューに前記有効エントリとしてエントリする一方、当該リクエストを自身が担当するものでない場合、当該リクエストを無効化する確定部をそなえて構成されていることが好ましい(請求項15)。
さらに、自身に接続された前記演算部の記憶部に保持されたデータに関するデータ情報を保持するデータ情報保持部と、前記制御装置から通知された前記リクエストに使用されるデータを、自身に接続された前記演算部が保持しているか否かを、前記データ情報保持部に保持された前記データ情報に基づいて判定する保持判定部とをそなえ、前記判定結果通知部が、前記保持判定部による保持判定結果を前記制御装置に通知するとともに、前記判定部が、前記保持判定部による保持判定結果に基づいて、前記判定を行なうことが好ましく(請求項16)、このとき、前記保持判定部が、前記データ情報に基づいて前記リクエストに使用される前記データが最新のデータであるか否かを判定するように構成され、前記保持判定部が当該リクエストに使用される前記データが最新のデータであると判定した場合には、前記判定結果通知部が、当該リクエストに使用される最新のデータを保持していることを示す情報を、前記保持判定部による保持判定結果として前記制御装置に通知することが好ましい(請求項17)。
また、上記の目的を達成するために、本発明のビジー判定プログラムは、リクエストを実行する演算部と、リクエストを通知するとともに当該リクエストに対する最終的な動作を決定する制御装置とに接続され、前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、このパイプラインレジスタの後段にそなえられるリクエストキューとをそなえ、互いに同期しながらパイプライン処理を実行する複数のパイプライン処理装置のそれぞれにおいて、前記リクエストが、前記パイプラインレジスタの中途に保持されている段階で、当該リクエストに対する前記リクエストキューのビジー状態を判定する機能をコンピュータに実現させるためのビジー判定プログラムであって、前記リクエストが、前記パイプラインレジスタの中途に保持されている段階で、当該リクエストが前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部、この判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタ、及び、前記第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部として、前記コンピュータを機能させるとともに、前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうように、前記コンピュータを機能させることを特徴としている(請求項18)。
なお、前記リクエストキューの有効エントリ数をカウントする第2カウンタ、及び、前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部として、前記コンピュータを機能させるとともに、前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定するように、前記コンピュータを機能させることが好ましい(請求項19)。
また、上記の目的を達成するために、本発明のコンピュータ読取可能な記録媒体は、上述したビジー判定プログラムを記録したものである(請求項20)。
このように、本発明によれば、各パイプライン処理装置に、判定部からリクエストキューまでの間のレジスタに保持された有効リクエストをカウントする第1カウンタがそなえられるため、リクエストがパイプラインレジスタの中途に保持されている段階で、当該リクエストが有効リクエストであるか否かを判定するために用いる、リクエストキューのビジー判定を、ビジー判定部が確実に実行することができる。
しかも、第1カウンタが、判定部からリクエストキューまでの間の複数のレジスタに保持された有効リクエスト数をカウントするため、かかる複数のレジスタ一つ一つに対して有効/無効のいずれのリクエストが保持されているかを判別するための回路等を設ける必要がなく、ハード資源を増大させることがない。
以下、図面を参照しながら本発明の実施の形態について説明する。
〔1〕本発明の一実施形態について
まず、図1に示すブロック図を参照しながら、本発明の一実施形態としての情報処理システム1の構成について説明する。
図1に示すように、本情報処理システム1は、複数(ここでは8つ)のパイプライン処理装置(図中SB(System Board)と表記)10−0〜10−7,データバス(FSB:Front Side Bus)11−0〜11−7,演算部(図中CPU(Central Processing Unit)と表記)A−0〜A−7,B−0〜B−7,及び制御装置(図中XB(Crossbar Board)と表記)30をそなえて構成されている。
複数のパイプライン処理装置10−0〜10−7(以下、これら複数のパイプライン処理装置10−0〜10−7を特に区別しない場合には単に符号“10”を用いて説明する。)のそれぞれが、データバス11−0〜11−7(以下、これらデータバス11−0〜11−7を特に区別しない場合には単に符号“11”を用いて説明する。)を介して、リクエストを実行する2つの演算部A−0〜A−7,B−0〜B−7(以下、演算部A−0〜A−7,B−0〜B−7を特に区別しない場合には単に符号“A,B”を用いて説明する。)に接続されている。
なお、パイプライン処理装置10−0〜10−7のそれぞれは、データバス11−0〜11−7と互いに接続され、さらに、パイプライン処理装置10−0〜10−7のそれぞれは、データバス11を介して、符号の末尾の番号が同一の対応する2つの演算部A−0〜A−7,B−0〜B−7に接続されている。
例えば、パイプライン処理装置10−0はデータバス11−0を介して演算部A−0,B−0に接続され、パイプライン処理装置10−1はデータバス11−1を介して演算部A−1,B−1に接続され、パイプライン処理装置10−7はデータバス11−7を介して演算部A−7,B−7に接続されている。
また、図1において、パイプライン処理装置10−2,10−3,10−4,10−5,10−6、並びにデータバス11−2,11−3,11−4,11−5,11−6、及び演算部A−2,B−2,A−3,B−3,A−4,B−4,A−5,B−5,A−6,B−6は、図の簡略化のため省略している。
ここで、複数のパイプライン処理装置10のそれぞれは、互いに同期しながら後述するパイプライン処理を実行するように構成され、制御装置30は、これら複数のパイプライン処理装置10に対してリクエストを通知するとともに、当該リクエストに対する採取的な動作を決定するものである。
複数のパイプライン処理装置10のそれぞれは、パイプラインレジスタ12,リクエストキュー(図中SLVQ_FSBと表記;Slave Request Queue)13,データ情報保持部(図中TAGと表記)14,LCST(Local Cache Status)生成論理20,パイプラインビジーカウンタ(第1カウンタ;図中PIPELINE BUSY CNTRと表記)25,有効エントリ数計数論理(第2カウンタ)26,加算器(算出部)27,及びGCST(Global Cache Status)判定論理(確定部)28をそなえて構成されている。
パイプラインレジスタ12は、制御装置30から通知されるリクエストを保持するものであり、複数段のレジスタ12aからなる。
また、パイプラインレジスタ12は、本情報処理システム1内のシステムクロック(同期信号;パルス信号)に基づいて、リクエストを複数段のレジスタ12aの上流側から下流側に順に移行させながら保持する。つまり、パイプラインレジスタ12はシフトレジスタとして機能する。
したがって、複数のパイプライン処理装置10のそれぞれは、パイプラインレジスタ12において、システムクロックに基づいて互いに同期しながらリクエストを下流側のレジスタ12aに移行する。
なお、各パイプライン処理装置10は、かかるシステムクロックに基づいて他の処理(後述するLCST生成論理20,パイプラインビジーカウンタ25,加算器27,及びGCST判定論理28における処理)も互いに同期しながら実行するように構成されている。
リクエストキュー13は、リクエストを保持する先入れ先出し方式(FIFO;First In First Out)のレジスタであり、パイプラインレジスタ12の後段にそなえられている。
なお、リクエストキュー13に保持された有効エントリとしてのリクエストは、自身に接続された演算部A,Bからの要求に応じてFSB11を介してかかる演算部A,Bに渡され、かかる演算部A,Bにおいて実行される。
データ情報保持部14は、自身に接続された演算部A,Bの記憶部(例えば、キャッシュメモリやDIMM;Dual In-line Memory Module)に保持されたデータに関するデータ情報を保持するものである。なお、データ情報保持部14が保持するデータ情報は、演算部A,Bの記憶部に保持されたデータのタグ(TAG)情報であるが、本発明においてデータ情報保持部14が保持するデータ情報は限定されるものではなく、かかるデータ情報が演算部A,Bの記憶部に保持されたデータの内容を示すものであってもよく、少なくとも、後述する保持判定部21が、かかるデータ情報に基づいて、パイプラインレジスタ12に保持されたリクエストが使用するデータを演算部A,Bが保持しているか否かを判定できるものであればよい。
LCST生成論理20は、パイプラインレジスタ12に介装され、パイプラインレジスタ12が保持するリクエストに対する動作を判断するとともに、判断結果を制御装置30に対して通知するものであり、保持判定部21,ビジー判定部(ビジー判定回路)22,条件生成部(判定部;図中条件生成と表記)23,及び判定結果通知部24をそなえて構成されている。
保持判定部21は、制御装置30から通知されたリクエスト(つまり、パイプラインレジスタ12に保持されているリクエスト)に使用されるデータを、自身に接続された演算部A,Bが保持しているか否かを、データ情報保持部14に保持されたデータ情報に基づいて判定するものである。
具体的には、保持判定部21は、図2に示すごとく、以下(1)〜(6)の状態を判定する。
(1)接続された配下の演算部A,Bのいずれのキャッシュメモリ(図中Cacheと表記)にも、DIMMにも、リクエストに使用されるデータが保持されていない[No Hit]。
(2)接続された配下の演算部A,BのDIMMにヒットした[DIMM Hit]。
(3)接続された配下の演算部A,Bのうちのいずれか一方の演算部にて共有型でヒットした[Shared Single Hit]。
(4)接続された配下の演算部A,Bにて共有型でヒットした[Shared Double Hit]。
(5)接続された配下の演算部A,Bのいずれかの演算部に排他型でヒットした[Exclusive Hit]。
(6)接続された配下の演算部A,Bのいずれかの演算部に変更型(最新の状態)でヒットした[Modify]。
このように、保持判定部21は、データ情報保持部14に保持されたデータ情報に基づいて、リクエストに使用されるデータの保持状態を判定し、上記(6)に示すように、保持判定部は、最新のデータであるか否かを判定する。つまり、保持判定部21は、自身に接続された演算部A,Bの記憶部に保持された当該リクエストに使用されるデータが、最新のデータあるか否かを判定する。
なお、パイプライン処理装置10は、保持判定部21によるデータ情報保持部14の検索を行なうために、リクエストを保持するレジスタ12a´をそなえている。したがって、パイプライン処理装置10は、後述する制御装置30のリクエスト通知部31からリクエストを通知されると、当該リクエストをパイプラインレジスタ12及びレジスタ12a´に保持する。
ビジー判定部22は、パイプラインビジーカウンタ25によってカウントされるLCST生成論理20からリクエストキュー13までの間のレジスタ12aにおける、有効リクエスト数に基づいて、リクエストキュー13がビジー状態であるか否かを判定するものである。
具体的には、ビジー判定部22は、図3に示すごとく、以下(a)〜(c)の状態を判定する。
(a)アドレスマッチ等のリトライ要因はなく、リクエストキュー13がビジー状態ではない[No Abort]。
(b)アドレスマッチ等のリトライ要因が検出された[Retry]。
(c)リクエストキュー13のビジー状態が検出された[Busy]。
なお、ビジー判定部22によるビジー状態であるか否かの判定方法は、図4を参照しながら後述する。
条件生成部23は、パイプラインレジスタ12の中途に介装され(すなわち、複数のレジスタ12aの間に介装され)、制御装置30から通知されたリクエストが、リクエストキューに保持されうる有効リクエスト(QUEUE獲得確定リクエスト)であるか否を判定するものである。
つまり、条件生成部23は、リクエストがパイプラインレジスタ12の中途に保持されている段階で、当該リクエストが、自身が担当しうる有効リクエストであるか否か(すなわち、当該リクエストを自身の配下にある演算部A,Bにて実行可能であるか否か)のリクエストに対する動作を判定して、後述するパイプラインビジーカウンタ25を“1”カウントアップ(インクリメント)するか否かを判断する。
ここで、条件生成部23は、保持判定部21による判定結果とビジー判定部22によるビジー状態判定結果とに基づいて、上記判定を行なうように構成されており、具体的には、以下の(x)〜(z)の場合に、条件生成部23は、当該リクエストが有効リクエストではない(すなわち、無効リクエストである)と判定する一方、以下の(x)〜(z)以外の場合には、後述するパイプラインビジーカウンタ25をインクリメントすべく、当該リクエストが有効リクエストであると判定する。
(x)保持判定部21によって、リクエストに使用されるデータを自身に接続された演算部A,Bが保持していないと判定された場合[上記(1)と判定された場合]。
(y)ビジー判定部22によってリクエストキュー13がビジー状態であると判定された場合[上記(c)と判定された場合]。
(z)アドレスマッチ等のリトライ要因が検出された場合[上記(b)と判定された場合]。
判定結果通知部24は、保持判定部21及びビジー判定部22による判定結果を、LCST(Local Cache Status;図中LCST−SB0〜LCST−SB7と表記)にて、制御装置30の後述するLCST集約論理33に通知するものである。
具体的には、判定結果通知部24は、図2に示す保持判定部21による判定結果及び図3に示すビジー判定部22による判定結果を、制御装置30に対して通知する。
つまり、判定結果通知部24は、図2に示すように、保持判定部21による判定結果を、4ビットのキャッシュステータス(Cache Status;図2中、CSTと略記)を用いて、(1)“No Hit”の場合“0000”を、(2)“DIMM Hit”の場合“0001”を、(3)“Shared Single Hit”の場合“0010”を、(4)“Shared Double Hit”の場合“0011”を、(5)“Exclusive Hit”の場合“0100”を、(6)“Modify Hit”の場合“0101”をLCST集約論理33に通知する。
このように、判定結果通知部24は、保持判定部21による判定結果を、その内容を区別して制御装置30に通知するように構成されており、保持判定部21が、リクエストに使用される最新のデータを保持していると判定した場合には(上記(6)と判定した場合)、当該リクエストに使用される最新のデータを保持していることを示す情報(ここではCST“0101”)を、保持判定部21による判定結果として制御装置30に通知する。
なお、図2に示すように、これら保持判定部21による判定結果(1)〜(6)は、判定結果(1)から判定結果(6)に向けて優先度が高くなる(ステータス値が大きいほど優先度が高くなる)。したがって、保持判定部21によって、複数の判定結果(1)〜(6)が得られた場合、判定結果通知部24は、かかる優先度に基づいて優先度が一番高い一の判定結果のみをLCST集約論理33に通知する。
また、判定結果通知部24は、図3に示すように、ビジー判定部2による判定結果を、2ビットのアボートステータス(Abort Status;図3中、ABTSTと略記)を用いて、(a)“No Abort”の場合“00”を、(b)“Retry”の場合“01”を、(c)“Busy”の場合“10”をLCST集約論理33に通知する。
パイプラインビジーカウンタ25は、上述したようにLCST生成論理20からリクエストキュー13までの間のレジスタ12aにおける、有効リクエスト数をカウントするものである。
つまり、図4に示すごとく、パイプラインビジーカウンタ25は、条件生成部23がリクエストを有効リクエストであると判定し、当該リクエストが条件生成部23から条件生成部23の後段のレジスタ12aに移行される際に、有効リクエスト数(カウント数)を1つカウントアップ(インクリメント)する。
一方、パイプラインビジーカウンタ25は、パイプラインレジスタ12の最終段のレジスタ12aを有効リクエストが通過すると、有効リクエスト数(カウント数)を1つカウントダウン(デクリメント)する。
なお、図4において、斜線で示すレジスタ12aは有効リクエストを保持していることを示している。
有効エントリ数計数論理26は、リクエストキュー13における、有効なリクエストが存在しているエントリ(有効エントリ)数を計数(カウント)するものであり、図4に示すごとく、リクエストキュー13に有効リクエストがセットされた場合、つまり、リクエストキュー13に有効リクエストが有効エントリとして新たにエントリされた際に、有効エントリ数(カウント数)を1つカウントアップする。
一方、有効エントリ数計数論理26は、リクエストキュー13に保持されていた有効エントリに関するリクエスト処理が完了し、当該有効エントリが空きとなった場合に、有効エントリ数を1つカウントダウンする。
加算器27は、パイプラインビジーカウンタ25によってカウントされた有効リクエスト数と、有効エントリ数計数論理によってカウントされた有効エントリ数とを加算することにより、これら有効リクエスト数と有効エントリ数との和を算出するものである。
ここで、ビジー判定部22によるリクエストキュー13のビジー判定方法について説明すると、ビジー判定部22は、加算器27によって算出された有効リクエスト数と有効エントリ数との和と、リクエストキュー13がそなえるすべてのエントリ数とを比較して、かかる和がリクエストキュー13のすべてのエントリ数と等しい場合に、リクエストキュー13がビジー状態であると判定する。
つまり、図4に示すごとく、リクエストキュー13がそなえるすべてのエントリ数がm(mは1以上の整数)であり、リクエストキュー13における有効エントリ数(つまり、有効エントリ数計数論理26によってカウントされた有効エントリ数)がx(xは整数;x<m)であり、さらに、条件生成部23(LCST生成論理20)からリクエストキュー13までの間に介在するn段(nは1以上の整数)のレジスタ12aに保持された有効リクエスト数(つまり、パイプラインビジーカウンタ25によってカウントされた有効リクエスト数)がy(yは整数)である場合、ビジー判定部22は、下記式(1)に基づいてリクエストキュー13のビジー判定を行なう。
x+y=m ・・・(1)
なお、ビジー判定部22は、有効リクエスト数(y)と有効エントリ数(x)との和が、リクエストキュー13がそなえるすべてのエントリ数(m)よりも小さければ、リクエストキュー13がビジー状態ではないと判定する。
また、図1に示すように、GCST判定論理28は、制御装置30(具体的には後述するGCST生成論理33)から、自身がリクエストを担当するという決定結果を通知された場合、当該リクエストをリクエストキュー13に有効エントリとしてエントリする一方、制御装置30から、自身がリクエストを担当するものでないという決定結果もしくは当該リクエストの再投入(リトライ)を通知された場合、当該リクエストをリクエストキュー13に有効エントリとしてエントリすることなく、当該リクエストを無効化するものである。
ここで、各パイプライン処理装置10のパイプラインレジスタ12の作用について、図1を参照しながら説明すると、上述のように、各パイプライン処理装置10のパイプラインレジスタ12は、本情報処理システム1のシステムクロックに基づいて、互いに同期しながら同タイミングでリクエストを下流側のレジスタ12aに移行させながら保持する。
そして、各パイプライン処理装置10のパイプラインレジスタ12における、最上流からLCST生成論理20までの間のレジスタ12aは、各パイプライン処理装置10内の保持判定部21及びビジー判定部22による処理(判定)時間を吸収して、他のパイプライン処理装置10に対して条件生成部23及び判定結果通知部24による処理の同期をとるためのものである。
換言すると、パイプラインレジスタ12の最上流からLCST生成論理20までの間には、各パイプライン処理装置10内の保持判定部21及びビジー判定部22による処理時間と同時間をかけてリクエストが移行されるだけの数のレジスタ12aがそなえられている。
また、LCST生成論理20からリクエストキュー13までの間のレジスタ12aは、判定結果通知部24による判定結果の通知後、制御装置30で実行される処理時間(後述するLCST集約論理33及びGCST生成論理34による処理時間)と、GCST判定論理28による処理時間を吸収するためのものである。
つまり、LCST生成論理20からリクエストキュー13までの間には、制御装置30における処理時間とGCST判定論理28による処理時間との合計時間と同時間をかけてリクエストが移行されるだけの数のレジスタ12aがそなえられている。
次に、図1を参照しながら、本情報処理システム1の制御装置30について説明すると、制御装置30は、リクエスト通知部31,パイプラインレジスタ32,LCST集約論理33,及びGCST生成論理34をそなえて構成されている。
リクエスト通知部31は、外部もしくは各パイプライン処理装置10に接続された演算部A,Bから発行されたリクエストREQ0〜REQnの中から1つのリクエストを、各リクエストREQ0〜REQnの優先度を判断して選択し、選択されたリクエストをGSA(Global System Address;図中GSA−SB0〜GSA−SB7と表記)にて、各パイプライン処理装置10に同時に通知するものである。
パイプラインレジスタ32は、リクエスト通知部31によって各パイプライン処理装置10に通知されたリクエストを保持するものであり、パイプライン処理装置10のパイプラインレジスタ12と同様に、複数段のレジスタ32aからなり、本情報処理システム1内のシステムクロックに基づいて、リクエストを上流側から下流側に順に移行させながらリクエストを保持する。
このパイプラインレジスタ32における、リクエスト通知部31から後述するLCST集約論理33までの間のレジスタ32aは、各パイプライン処理装置10において、リクエストを受け取ってから判定結果通知部24によって判定結果を通知するまでの時間を吸収するためのものであり、各パイプライン処理装置10に対して同期をとるためのものである。
換言すると、リクエスト通知部31からLCST集約論理33までの間には、各パイプライン処理装置10において、リクエストを受け取ってから判定結果通知部24によって判定結果を通知するまでの処理時間と同時間をかけてリクエストが移行されるだけの数のレジスタ32aがそなえられている。
LCST集約論理33は、パイプラインレジスタ32に介装され、各パイプライン処理装置10の判定結果通知部24からLCST−SB0〜LCST−SB7にて通知された、保持判定部21による判定結果(図2に示す“CST”)及びビジー判定部22による判定結果(図3に示す“ABTST”)を集約するものである。
GCST生成論理34は、パイプラインレジスタ32の後段にそなえられ、LCST集約論理33によって集約された、各パイプライン処理装置10の保持判定部21及びビジー判定部22による判定結果に基づいて、リクエストを複数のパイプライン処理装置10のうちの一のパイプライン処理装置10に担当させるためのものであり、決定部35及び決定結果通知部36をそなえて構成されている。
決定部35は、リクエストに対する本情報処理システム1の最終的な動作を確定するものであり、LCST集約論理33によって集約された判定結果に基づいて、当該リクエストを実行させるか否か、及び、当該リクエストを実行させる場合には、複数のパイプライン処理装置10の中から当該リクエストを担当させる一のパイプライン処理装置10を決定するものである。
決定結果通知部36は、決定部35によって決定された当該リクエストの最終的な動作(決定結果)を、GCST(Global Cache Status;図中GCST−SB0〜GCST−SB7と表記)にて、各パイプライン処理装置10のGCST判定論理28に同時に通知するものである。
ここで、決定部35によるリクエストに対する最終的な動作確定方法について、図5〜図8に示す例を参照しながら説明する。なお、図5〜図8は説明の簡略化及び図の簡略化のために、パイプライン処理装置10−3〜10−7を省略し、さらに、制御装置30にはLCST集約論理33のみを示し、パイプライン処理装置10−0〜10−2にはデータ情報保持部14及びLCST生成論理20のみを示している。また、図5〜図8に示す例は、制御装置30から各パイプライン処理装置10にメモリリードのリクエスト(以下、リード要求という)が発行(通知)された場合を示している。
まず、図5に示す例は、各パイプライン処理装置10−0〜10−2のLCST生成論理20のビジー判定部22が、リクエストキュー13のビジー状態を検出せず(ABTST:“00”)、パイプライン処理装置10−0の保持判定部21が当該リード要求のデータに対してDIMMヒットを検出し(CST:“0001”)、パイプライン処理装置10−1,10−2の保持判定部21が当該リード要求のデータを検出しなかった(CST:“0000”)場合である。
このとき、LCST集約論理33は、図5に示すごとく、各パイプライン処理装置10−0〜10−2から通知された判定結果を集約する。
そして、GCST生成論理34の決定部35は、LCST集約論理33によって集約された判定結果に基づいて、当該リード要求に対する最終的な動作を決定する。
ここでは、各パイプライン処理装置10−0〜10−2のいずれからもリクエストキュー13のビジーが検出されておらず、パイプライン処理装置10−0のみがDIMMヒットを検出しているため、決定部35は、当該リード要求を、パイプライン処理装置10−0に担当させるという決定を行なう。つまり、決定結果通知部36が、パイプライン処理装置10−のリクエストキュー13に対して、接続された演算部AもしくはBのDIMMにリードアクセスを実行させるSLAVE_REQ(REQUEST)を発行する。
なお、この決定部35による決定結果が決定結果通知部36によって各パイプライン処理装置10−0〜10−2に通知されると、パイプライン処理装置10−0では、GCST判定論理28が、パイプラインレジスタ12に保持された当該リード要求をリクエストキュー13に有効エントリとして登録する一方、パイプライン10−1,10−2では、GCST判定論理28が、パイプラインレジスタ12に保持された当該リード要求を無効化する。
次に、図6に示す例について説明する。図6に示す例は、各パイプライン処理装置10−0〜10−2のLCST生成論理20のビジー判定部22が、リクエストキュー13のビジー状態を検出せず(ABTST:“00”)、パイプライン処理装置10−0の保持判定部21が当該リード要求のデータに対してDIMMヒットを検出し(CST:“0001”)、パイプライン処理装置10−1の保持判定部21が当該リード要求のデータに対してModifyヒットを検出し(CST:“0101”)、パイプライン処理装置10−2の保持判定部21が当該リード要求のデータを検出しなかった(CST:“0000”)場合である。
このとき、図6に示すごとく、LCST集約論理33によって判定結果が集約され、決定部35は、各パイプライン処理装置10−0〜10−2のいずれからもリクエストキュー13のビジーが検出されていないため、DIMMヒット(CST:“0001”)よりも優先度が高いModifyヒット(CST:“0101”)を検出したパイプライン処理装置10−1に当該リード要求を担当させる決定を行なう。
つまり、決定部35は、パイプライン処理装置10−0には、接続された演算部AもしくはBのDIMMにリードアクセスを実行させずに、パイプライン処理装置10−1に、接続された演算部AもしくはBに対するリードアクセスを実行させる。
なお、この決定部35による決定結果を受けると、パイプライン処理装置10−0,10−2ではパイプラインレジスタ12に保持された当該リード要求を無効化され、パイプライン処理装置10−1では当該リード要求がリクエストキュー13に有効エントリとして登録される。
次に、図7に示す例について説明する。図7に示す例は、各パイプライン処理装置10−0〜10−2のLCST生成論理20のビジー判定部22が、リクエストキュー13のビジー状態を検出せず(ABTST:“00”)、パイプライン処理装置10−0の保持判定部21が当該リード要求のデータに対してDIMMヒットを検出し(CST:“0001”)、パイプライン処理装置10−1の保持判定部21が当該リード要求のデータに対してShared−Doubleヒットを検出し(CST:“0011”)、パイプライン処理装置10−2の保持判定部21が当該リード要求のデータに対してShared−Singleヒットを検出した(CST:“0010”)場合である。
このとき、図7に示すごとく、LCST集約論理33によって判定結果が集約され、決定部35は、各パイプライン処理装置10−0〜10−2のいずれからもリクエストキュー13のビジーが検出されていないため、最も優先度が高いShared−Doubleヒット(CST:“0011”)を検出したパイプライン処理装置10−1に当該リード要求を担当させる決定を行なう。
なお、この場合も、パイプライン処理装置10−0,10−2では当該リード要求が無効化され、パイプライン処理装置10−1では当該リード要求がリクエストキュー13に有効エントリとして登録される。
次に、図8に示す例について説明する。図8に示す例は、パイプライン処理装置10−0,10−2のLCST生成論理20のビジー判定部22が、リクエストキュー13のビジー状態を検出せず(ABTST:“00”)、パイプライン処理装置10−1のビジー判定部22がリクエストキュー13のビジー状態を検出した(ABTST:“10”)場合であって、パイプライン処理装置10−0の保持判定部21が当該リード要求のデータに対してDIMMヒットを検出し(CST:“0001”)、パイプライン処理装置10−1の保持判定部21が当該リード要求のデータに対してModifyヒットを検出し(CST:“0101”)、パイプライン処理装置10−2の保持判定部21が当該リード要求のデータを検出しなかった(CST:“0000”)場合である。
このとき、図8に示すごとく、LCST集約論理33によって判定結果が集約され、決定部35は、パイプライン処理装置10−1でリクエストキュー13のBusyが検出されているため(ABTST:“10”)、当該リード要求をいずれのパイプライン処理装置10−0〜10−2にも担当させずに、当該リード要求を再度実行させるべく、当該リクエストをリクエスト通知部31に再度投入させる。
したがって、この場合には、パイプライン処理装置10−0〜10−2のいずれに対しても当該リード要求の無効が発行されて、各パイプライン処理装置10−0〜10−2では当該リード要求が無効化される。
このように、決定部35は、LCST集約論理33によって集約された判定結果の優先度(図2,図3参照)に基づいて、リクエストに対する最終的な動作を決定する。このとき、各パイプライン処理装置10の保持判定部21からの判定結果に関わらず、少なくとも一のパイプライン処理装置10のビジー判定部22による判定結果が“Retry”もしくは“Busy”であれば、決定部35は、当該リクエストをいずれのパイプライン処理装置10にも担当させることなく、当該リクエストをリトライさせるべく、当該リクエストをリクエスト通知部31に再度投入させる。
このように、本発明の一実施形態としての情報処理システム1によれば、各パイプライン処理装置10に、LCST生成論理20からリクエストキュー13までの間のレジスタ12aに保持された有効リクエストをカウントするためのパイプラインビジーカウンタ25がそなえられるため、リクエストがパイプラインレジスタ12の中途に保持されている段階で、条件生成部23によって当該リクエストが有効リクエストであるか否かを判定するための、リクエストキュー13のビジー判定を、ビジー判定部22が確実に実行することができる。
しかも、パイプラインビジーカウンタ25が、条件生成部23が有効リクエストであると判定した場合にカウンタをインクリメントするとともに、最終段のレジスタ12aをリクエストが通過した際にカウンタをデクリメントするため、LCST生成論理20からリクエストキュー13までの間のレジスタ12a一つ一つに対して有効/無効のいずれのリクエストが保持されているかを判別するための回路等を設ける必要がなく、少ない資源で、かかる間の有効リクエスト数をカウントして、リクエストキュー13のビジー判定を行なうことができる。
さらに、CST生成論理20からリクエストキュー13までの間のレジスタ12aの数に関わらず、かかる間のレジスタ12aの数が膨大であっても、パイプラインビジーカウンタ25を使用することにより、かかる間のレジスタ12aに保持されている有効リクエストを正確にカウントすることができ、リクエストキュー13のビジー管理を確実に行なうことができる。
さらに、有効エントリ数計数論理26及び加算器27をそなえて構成されているため、ビジー判定部22が、加算器27によって算出されたパイプラインビジーカウンタ25の有効リクエスト数と有効エントリ数計数論理26の有効エントリ数との和が、リクエストキュー13のすべてのエントリ数と等しいか否かを判定するだけで、リクエストキュー13のビジー判定を行なうことができ、ビジー判定部22を簡易な構成にすることができる。
〔2〕その他
なお、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上述した実施形態では、制御装置30には各パイプライン処理装置10が接続されている例をあげて説明したが、本発明はこれに限定されるものではなく、制御装置30にIOU(I/O装置ユニット;Input/Output Unit)が接続され、このIOUに対してもリクエストを実行させるべく、リクエストを通知するように構成され、さらに、LCST集約論理にてIOUからの判定結果(LCST)を集約して、GCST生成論理にてIOU及び各パイプライン処理装置10を含めた当該リクエストの最終的な動作を確定し、これらIOU及び各パイプライン処理装置10に通知するように構成されていてもよい。なお、この場合には、上記図1に示すごとく、各パイプライン処理装置10からの判定結果の集約と、IOUからの判定結果の集約との同期をとるためのレジスタ32aがそなえられることが好ましい。
また、上述した各パイプライン処理装置の保持判定部21,ビジー判定部22,条件生成部23,判定結果通知部24,パイプラインビジーカウンタ25,有効エントリ数計数論理26,加算器27,GCST判定論理28,及び制御装置30のリクエスト通知部31,LCST集約論理33,決定部35,決定結果通知部36としての機能は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラム(ビジー判定プログラム)を実行することによって実現されてもよい。
そのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RWなど),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD−RW,DVD+R,DVD+RWなど)等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体から例えばビジー判定プログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信回線を介してコンピュータに提供するようにしてもよい。
ここで、コンピュータとは、ハードウェアとOS(オペレーティングシステム)とを含む概念であり、OSの制御の下で動作するハードウェアを意味している。また、OSが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえている。
上記ビジー判定プログラムとしてのアプリケーションプログラムは、上述のようなコンピュータに、保持判定部21,ビジー判定部22,条件生成部23,判定結果通知部24,パイプラインビジーカウンタ25,有効エントリ数計数論理26,加算器27,GCST判定論理28,リクエスト通知部31,LCST集約論理33,決定部35,及び決定結果通知部36としての機能を実現させるプログラムコードを含んでいる。また、その機能の一部は、アプリケーションプログラムではなくOSによって実現されてもよい。
さらに、本実施形態としての記録媒体としては、上述したフレキシブルディスク,CD,DVD,磁気ディスク,光ディスク,光磁気ディスクのほか、ICカード,ROMカートリッジ,磁気テープ,パンチカード,コンピュータの内部記憶装置(RAMやROMなどのメモリ),外部記憶装置等や、バーコードなどの符号が印刷された印刷物等の、コンピュータ読取可能な種々の媒体を利用することもできる。
本発明の一実施形態としての情報処理システムの構成を示すブロック図である。 本発明の一実施形態としての情報処理システムのパイプライン処理装置の保持判定部による判定結果を説明するための図である。 本発明の一実施形態としての情報処理システムのパイプライン処理装置のビジー判定部による判定結果を説明するための図である。 本発明の一実施形態としての情報処理システムのビジー判定部及びパイプラインビジーカウンタを説明するための図である。 本発明の一実施形態としての情報処理システムの制御装置の決定部によるリクエストに対する最終的な動作確定の一例を説明するための図である。 本発明の一実施形態としての情報処理システムの制御装置の決定部によるリクエストに対する最終的な動作確定の一例を説明するための図である。 本発明の一実施形態としての情報処理システムの制御装置の決定部によるリクエストに対する最終的な動作確定の一例を説明するための図である。 本発明の一実施形態としての情報処理システムの制御装置の決定部によるリクエストに対する最終的な動作確定の一例を説明するための図である。 従来の構成を示すブロック図である。 従来の情報処理システムのパイプライン処理装置のLCST生成論理によるリクエストキューのビジー状態判定方法を説明するための図である。
符号の説明
1,100 情報処理システム
10,10−0〜10−7,110,110−0〜110−7 パイプライン処理装置
11,11−0〜11−7,111,111−0〜111−7 データバス
12,32,112,124 パイプラインレジスタ
12a,32a,112a,124a レジスタ
13,117 リクエストキュー
14,113 データ情報保持部
20,114 LCST(Local Cache Status)生成論理
21 保持判定部
22 ビジー判定部
23,115 条件生成部(判定部)
24 判定結果通知部
25 パイプラインビジーカウンタ(第1カウンタ)
26 有効エントリ数計数論理(第2カウンタ)
27 加算器(算出部)
28,116 GCST(Global Cache Status)判定論理(確定部)
30,120 制御装置
31 リクエスト通知部
33,122 LCST(Local Cache Status)集約論理
34,123 GCST(Global Cache Status)生成論理
35 決定部
36 決定結果通知部
112 選択部
A−0〜A−7,B−0〜B−7 演算部

Claims (20)

  1. リクエストを実行する演算部に接続され、互いに同期しながらパイプライン処理を実行する複数のパイプライン処理装置と、
    リクエストを前記複数のパイプライン処理装置に対して通知するとともに、当該リクエストに対する最終的な動作を決定する制御装置とからなる情報処理システムであって、
    前記複数のパイプライン処理装置のそれぞれが、
    前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、
    該パイプラインレジスタの後段にそなえられるリクエストキューと、
    前記パイプラインレジスタに介装され、前記リクエストが、前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部と、
    該判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタと、
    該第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部と、
    該ビジー判定部によるビジー状態判定結果を前記制御装置に通知する判定結果通知部とをそなえ、
    前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうように構成されるとともに、
    前記制御装置が、
    リクエストを前記複数のパイプライン処理装置に対して同時に通知するリクエスト通知部と、
    前記複数のパイプライン処理装置の前記判定結果通知部から通知される前記ビジー状態判定結果に基づいて、当該リクエストに対する最終的な動作を決定する決定部と、
    該決定部による決定結果を、前記複数のパイプライン処理装置に対して同時に通知する決定結果通知部とをそなえて構成されていることを特徴とする、情報処理システム。
  2. 前記ビジー判定部によって前記リクエストキューがビジー状態であると判定された場合、前記判定部は、前記リクエストを前記有効リクエストと判定しないことを特徴とする、請求項1記載の情報処理システム。
  3. 前記複数のパイプライン処理装置のそれぞれが、
    前記リクエストキューの有効エントリ数をカウントする第2カウンタと、
    前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部とをそなえ、
    前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定することを特徴とする、請求項1または請求項2記載の情報処理システム。
  4. 前記第2カウンタは、前記リクエストキューに前記有効リクエストが前記有効エントリとして新たにエントリされた際に、前記有効エントリ数を1つカウントアップする一方、前記リクエストキューに保持されていた前記有効エントリに関するリクエスト処理が完了されると、前記有効エントリ数を1つカウントダウンすることを特徴とする、請求項3記載の情報処理システム。
  5. 前記第1カウンタは、前記判定部が前記リクエストを前記有効リクエストであると判定すると、前記有効リクエスト数を1つカウントアップする一方、前記有効リクエストが前記パイプラインレジスタの最終段のレジスタを通過すると、前記有効リクエスト数を1つカウントダウンすることを特徴とする、請求項1〜請求項4のいずれか1項に記載の情報処理システム。
  6. 前記複数のパイプライン処理装置のそれぞれが、
    前記制御装置の前記決定結果通知部から通知された前記決定結果が、前記リクエストを自身が担当するものである場合、当該リクエストを前記リクエストキューに前記有効エントリとしてエントリする一方、前記決定結果が、前記リクエストを自身が担当するものでない場合、当該リクエストを無効化する確定部をそなえて構成されていることを特徴とする、請求項1〜請求項5のいずれか1項に記載の情報処理システム。
  7. 前記複数のパイプライン処理装置のそれぞれが、
    自身に接続された前記演算部の記憶部に保持されたデータに関するデータ情報を保持するデータ情報保持部と、
    前記制御装置から通知された前記リクエストに使用されるデータを、自身に接続された前記演算部が保持しているか否かを、前記データ情報保持部に保持された前記データ情報に基づいて判定する保持判定部とをそなえ、
    前記判定結果通知部が、前記保持判定部による保持判定結果を前記制御装置に通知するとともに、
    前記判定部が、前記保持判定部による保持判定結果に基づいて、前記判定を行なうことを特徴とする、請求項1〜請求項6のいずれか1項に記載の情報処理システム。
  8. 前記制御装置の前記決定部が、前記複数のパイプライン処理装置の前記判定結果通知部から通知される前記保持判定部による保持判定結果に基づいて、前記リクエストに対する最終的な動作を決定することを特徴とする、請求項7記載の情報処理システム。
  9. 前記保持判定部が、前記データ情報に基づいて前記リクエストに使用される前記データが最新のデータであるか否かを判定するように構成され、
    前記保持判定部が当該リクエストに使用される前記データが最新のデータであると判定した場合には、前記判定結果通知部が、当該リクエストに使用される最新のデータを保持していることを示す情報を、前記保持判定部による保持判定結果として前記制御装置に通知することを特徴とする、請求項7又は請求項8記載の情報処理システム。
  10. リクエストを実行する演算部と、リクエストを通知するとともに当該リクエストに対する最終的な動作を決定する制御装置とに接続され、他のパイプライン処理装置と互いに同期しながらパイプライン処理を実行するパイプライン処理装置であって、
    前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、
    該パイプラインレジスタの後段にそなえられるリクエストキューと、
    前記パイプラインレジスタに介装され、前記リクエストが、前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部と、
    該判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタと、
    該第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部と、
    該ビジー判定部によるビジー状態判定結果を前記制御装置に通知する判定結果通知部とをそなえ、
    前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうことを特徴とする、パイプライン処理装置。
  11. 前記ビジー判定部によって前記リクエストキューがビジー状態であると判定された場合、前記判定部は、前記リクエストを前記有効リクエストと判定しないことを特徴とする、請求項10記載のパイプライン処理装置。
  12. 前記リクエストキューの有効エントリ数をカウントする第2カウンタと、
    前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部とをそなえ、
    前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定することを特徴とする、請求項10または請求項11記載のパイプライン処理装置。
  13. 前記第2カウンタは、前記リクエストキューに前記有効リクエストが前記有効エントリとして新たにエントリされた際に、前記有効エントリ数を1つカウントアップする一方、前記リクエストキューに保持されていた前記有効エントリに関するリクエスト処理が完了されると、前記有効エントリ数を1つカウントダウンすることを特徴とする、請求項12記載のパイプライン処理装置。
  14. 前記第1カウンタは、前記判定部が前記リクエストを前記有効リクエストであると判定すると、前記有効リクエスト数を1つカウントアップする一方、前記有効リクエストが前記パイプラインレジスタの最終段のレジスタを通過すると、前記有効リクエスト数を1つカウントダウンすることを特徴とする、請求項10〜請求項13のいずれか1項に記載のパイプライン処理装置。
  15. 前記制御装置から通知された、前記リクエストに対する最終的な決定結果が、当該リクエストを自身が担当するものである場合、当該リクエストを前記リクエストキューに前記有効エントリとしてエントリする一方、当該リクエストを自身が担当するものでない場合、当該リクエストを無効化する確定部をそなえて構成されていることを特徴とする、請求項10〜請求項14のいずれか1項に記載のパイプライン処理装置。
  16. 自身に接続された前記演算部の記憶部に保持されたデータに関するデータ情報を保持するデータ情報保持部と、
    前記制御装置から通知された前記リクエストに使用されるデータを、自身に接続された前記演算部が保持しているか否かを、前記データ情報保持部に保持された前記データ情報に基づいて判定する保持判定部とをそなえ、
    前記判定結果通知部が、前記保持判定部による保持判定結果を前記制御装置に通知するとともに、
    前記判定部が、前記保持判定部による保持判定結果に基づいて、前記判定を行なうことを特徴とする、請求項10〜請求項15のいずれか1項に記載のパイプライン処理装置。
  17. 前記保持判定部が、前記データ情報に基づいて前記リクエストに使用される前記データが最新のデータであるか否かを判定するように構成され、
    前記保持判定部が当該リクエストに使用される前記データが最新のデータであると判定した場合には、前記判定結果通知部が、当該リクエストに使用される最新のデータを保持していることを示す情報を、前記保持判定部による保持判定結果として前記制御装置に通知することを特徴とする、請求項16記載のパイプライン処理装置。
  18. リクエストを実行する演算部と、リクエストを通知するとともに当該リクエストに対する最終的な動作を決定する制御装置とに接続され、前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、該パイプラインレジスタの後段にそなえられるリクエストキューとをそなえ、互いに同期しながらパイプライン処理を実行する複数のパイプライン処理装置のそれぞれにおいて、前記リクエストが前記パイプラインレジスタの中途に保持されている段階で、当該リクエストに対する前記リクエストキューのビジー状態を判定する機能をコンピュータに実現させるためのビジー判定プログラムであって、
    前記リクエストが、前記パイプラインレジスタの中途に保持されている段階で、当該リクエストが前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部、
    該判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタ、及び、
    該第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部として、前記コンピュータを機能させるとともに、
    前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうように、前記コンピュータを機能させることを特徴とする、ビジー判定プログラム。
  19. 前記リクエストキューの有効エントリ数をカウントする第2カウンタ、及び、
    前記第1カウンタによってカウントされた前記有効リクエスト数と、前記第2カウンタによってカウントされた前記有効エントリ数との和を算出する算出部として、前記コンピュータを機能させるとともに、
    前記ビジー判定部が、前記算出部によって算出される前記和と、前記リクエストキューがそなえるすべてのエントリ数とを比較して、前記和が前記すべてのエントリ数と等しい場合に、前記リクエストキューがビジー状態であると判定するように、前記コンピュータを機能させることを特徴とする、請求項18記載のビジー判定プログラム。
  20. リクエストを実行する演算部と、リクエストを通知するとともに当該リクエストに対する最終的な動作を決定する制御装置とに接続され、前記制御装置によって通知されるリクエストを保持しうる複数段のレジスタからなり、前記リクエストを上流側から下流側に順に移行させながら保持するパイプラインレジスタと、該パイプラインレジスタの後段にそなえられるリクエストキューとをそなえ、互いに同期しながらパイプライン処理を実行する複数のパイプライン処理装置のそれぞれにおいて、前記リクエストが前記パイプラインレジスタの中途に保持されている段階で、当該リクエストに対する前記リクエストキューのビジー状態を判定する機能をコンピュータに実現させるためのビジー判定プログラムを記録したコンピュータ読取可能な記録媒体であって、
    前記ビジー判定プログラムが、
    前記リクエストが、前記パイプラインレジスタの中途に保持されている段階で、当該リクエストが前記リクエストキューに保持されうる有効リクエストであるか否かの判定を行なう判定部、
    該判定部から前記リクエストキューまでの間の前記レジスタにおける、前記有効リクエストの数をカウントする第1カウンタ、及び、
    該第1カウンタによってカウントされる前記有効リクエスト数に基づいて、前記リクエストキューがビジー状態であるか否かを判定するビジー判定部として、前記コンピュータを機能させるとともに、
    前記判定部が、前記ビジー判定部によるビジー状態判定結果に基づいて前記判定を行なうように、前記コンピュータを機能させることを特徴とする、ビジー判定プログラムを記録したコンピュータ読取可能な記録媒体。
JP2005075091A 2005-03-16 2005-03-16 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 Expired - Fee Related JP4368320B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2005075091A JP4368320B2 (ja) 2005-03-16 2005-03-16 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
US11/157,809 US7490219B2 (en) 2005-03-16 2005-06-22 Counter counts valid requests based on a judgment in a system having a plurality of pipeline processors
EP05013582A EP1703376A3 (en) 2005-03-16 2005-06-23 Pipeline processor with queue busy judgement; program and recording medium for the same
KR1020050066133A KR100660458B1 (ko) 2005-03-16 2005-07-21 정보 처리 시스템, 파이프라인 처리 장치, 및 비지 판정프로그램을 기록한 컴퓨터로 판독가능한 기록 매체
CNB2005100870354A CN100414495C (zh) 2005-03-16 2005-07-25 信息处理系统、管线处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005075091A JP4368320B2 (ja) 2005-03-16 2005-03-16 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2006260013A JP2006260013A (ja) 2006-09-28
JP4368320B2 true JP4368320B2 (ja) 2009-11-18

Family

ID=36577486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005075091A Expired - Fee Related JP4368320B2 (ja) 2005-03-16 2005-03-16 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体

Country Status (5)

Country Link
US (1) US7490219B2 (ja)
EP (1) EP1703376A3 (ja)
JP (1) JP4368320B2 (ja)
KR (1) KR100660458B1 (ja)
CN (1) CN100414495C (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217305B (zh) * 2008-01-02 2011-05-04 华为技术有限公司 专用物理数据信道数据的处理方法和装置
US8843651B2 (en) * 2009-06-30 2014-09-23 Oracle America, Inc. Software aware throttle based flow control
US20160006526A1 (en) * 2014-07-03 2016-01-07 Qualcomm Incorporated Systems and methods of network clock comparison
CN104239130B (zh) * 2014-08-15 2020-09-11 北京配天技术有限公司 人机交互界面对操作指令响应的控制方法及终端
JP6996099B2 (ja) * 2017-03-24 2022-01-17 日本電気株式会社 データ処理システム及びデータ処理方法
CN107770090B (zh) * 2017-10-20 2020-05-01 深圳市楠菲微电子有限公司 用于控制流水线中寄存器的方法和装置
US10684797B2 (en) * 2018-08-31 2020-06-16 Micron Technology, Inc. Command-in-pipeline counter for a memory device
CN111104166B (zh) * 2019-12-13 2022-09-06 北京新忆科技有限公司 寄存器的写入方法和写入装置
CN111241622A (zh) * 2020-01-19 2020-06-05 杭州群核信息技术有限公司 一种自适应水暖电管线调整系统及方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4847755A (en) * 1985-10-31 1989-07-11 Mcc Development, Ltd. Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
JPS6410332A (en) 1987-07-03 1989-01-13 Hitachi Ltd Pipeline control system
JPH0527224Y2 (ja) 1987-07-03 1993-07-12
JPH04367031A (ja) 1991-06-14 1992-12-18 Nec Eng Ltd バッファ制御方式
US6006318A (en) * 1995-08-16 1999-12-21 Microunity Systems Engineering, Inc. General purpose, dynamic partitioning, programmable media processor
US5860018A (en) * 1997-06-25 1999-01-12 Sun Microsystems, Inc. Method for tracking pipeline resources in a superscalar processor
US6633916B2 (en) * 1998-06-10 2003-10-14 Hewlett-Packard Development Company, L.P. Method and apparatus for virtual resource handling in a multi-processor computer system
JPH11306020A (ja) 1998-04-20 1999-11-05 Fujitsu Ltd 情報処理装置におけるブロックストア命令の実行制御方式
US6249855B1 (en) * 1998-06-02 2001-06-19 Compaq Computer Corporation Arbiter system for central processing unit having dual dominoed encoders for four instruction issue per machine cycle
US6938147B1 (en) * 1999-05-11 2005-08-30 Sun Microsystems, Inc. Processor with multiple-thread, vertically-threaded pipeline
US6505293B1 (en) * 1999-07-07 2003-01-07 Intel Corporation Register renaming to optimize identical register values
US6711670B1 (en) 1999-10-14 2004-03-23 Hewlett-Packard Development Company, L.P. System and method for detecting data hazards within an instruction group of a compiled computer program
US6490674B1 (en) 2000-01-28 2002-12-03 Hewlett-Packard Company System and method for coalescing data utilized to detect data hazards
US6865663B2 (en) * 2000-02-24 2005-03-08 Pts Corporation Control processor dynamically loading shadow instruction register associated with memory entry of coprocessor in flexible coupling mode
EP1330706A1 (en) * 2000-10-23 2003-07-30 The Trustees of Columbia University in the City of New York Asynchronous pipeline with latch controllers
US7337306B2 (en) * 2000-12-29 2008-02-26 Stmicroelectronics, Inc. Executing conditional branch instructions in a data processor having a clustered architecture
US6961821B2 (en) * 2002-10-16 2005-11-01 International Business Machines Corporation Reconfigurable cache controller for nonuniform memory access computer systems
US7272664B2 (en) * 2002-12-05 2007-09-18 International Business Machines Corporation Cross partition sharing of state information

Also Published As

Publication number Publication date
US7490219B2 (en) 2009-02-10
EP1703376A3 (en) 2008-01-23
KR20060101157A (ko) 2006-09-22
JP2006260013A (ja) 2006-09-28
US20060212683A1 (en) 2006-09-21
EP1703376A2 (en) 2006-09-20
KR100660458B1 (ko) 2006-12-22
CN100414495C (zh) 2008-08-27
CN1834900A (zh) 2006-09-20

Similar Documents

Publication Publication Date Title
JP4368320B2 (ja) 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
US10956328B2 (en) Selective downstream cache processing for data access
US7644221B1 (en) System interface unit
US20060184837A1 (en) Method, apparatus, and computer program product in a processor for balancing hardware trace collection among different hardware trace facilities
US20120204004A1 (en) Processor with a Hybrid Instruction Queue
JP2006309757A (ja) メモリーに送るコマンドの選択方法、メモリーコントローラー、コンピュータシステム
EP3047380B1 (en) Pattern detector for detecting hangs
CN104471555A (zh) 用于高速缓存系统的多级互联系统及多级互联方法
US7415557B2 (en) Methods and system for providing low latency and scalable interrupt collection
CN113791892B (zh) 数据通路仲裁方法、数据通路仲裁装置及芯片
US9697127B2 (en) Semiconductor device for controlling prefetch operation
JP5625737B2 (ja) 転送装置、転送方法および転送プログラム
US8209492B2 (en) Systems and methods of accessing common registers in a multi-core processor
CN101930408A (zh) 高速缓存控制器、控制高速缓存控制器的方法以及计算机系统
CN105980979B (zh) 用于检测暂停的逻辑分析器
WO2023093335A1 (zh) 数据处理电路及人工智能芯片、数据处理方法和装置
US9892072B2 (en) Transaction response modification within interconnect circuitry
EP2348400A1 (en) Arithmetic processor, information processor, and pipeline control method of arithmetic processor
CN103019945B (zh) 一种访存指令的执行方法
US10303483B2 (en) Arithmetic processing unit and control method for arithmetic processing unit
CN103019946B (zh) 一种访存指令的执行装置
US9189380B2 (en) Systems and methods to save and restore a write gather pipe

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090331

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090528

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: 20090804

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090825

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: 20120904

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees