JP2004062910A - マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法 - Google Patents

マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法 Download PDF

Info

Publication number
JP2004062910A
JP2004062910A JP2003276637A JP2003276637A JP2004062910A JP 2004062910 A JP2004062910 A JP 2004062910A JP 2003276637 A JP2003276637 A JP 2003276637A JP 2003276637 A JP2003276637 A JP 2003276637A JP 2004062910 A JP2004062910 A JP 2004062910A
Authority
JP
Japan
Prior art keywords
core
cau
signal
cores
value
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.)
Withdrawn
Application number
JP2003276637A
Other languages
English (en)
Inventor
Michael C Sedmak
マイケル・シー・セドマック
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2004062910A publication Critical patent/JP2004062910A/ja
Withdrawn legal-status Critical Current

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
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Abstract

【課題】マルチコアプロセッサ上でセマフォを実施する方法を提供し、システムパフォーマンスの低下を防止すること。
【解決手段】マルチコアプロセッサは、その各コアが接続された中央調停ユニット(central arbitration unit(CAU))を含む。本方式は、各コアについて、コアからCAUに対して、演算を実行するための共通資源へのアクセスを要求する第1の信号を出力することと、CAUからの第2の信号の受信に応じて、コアが演算を実行する。
【選択図】図1

Description

 本発明は、概してコンピュータシステムに関する。より詳細には、限定するものではないが、本発明は、複数のプロセッサコアを含む集積回路チップ上でオンチップセマフォを具現化する方法および装置に関する。
 マルチプロセッサコンピュータシステムでは、一般に、複数のプロセッサが、同時に共通のハードウェアまたはソフトウェア資源に対するアクセスを要求する状況が発生する。場合によっては、かかる資源に対し複数のプロセッサが同時にアクセス可能である。一方、資源が「共有不可能」とみなされ、そのため一度に1つのプロセッサしかアクセス可能でない場合もある。この問題の1つの解決法は、セマフォを利用するというものである。概して、セマフォは、複数のプロセスによって共有資源へのアクセスを制御するために使用されるカウンタである。セマフォは、一般に、プロセスが、他のプロセスが演算を実行している特定の資源に対しアクセスしないようにする、ロッキング機構として使用される。
 ここで、セマフォの一般的な従来技術による実施態様を、すべてシステムバスを介して相互接続される、複数のプロセッサと、共通I/O資源と、システムメモリとを含む例示的なコンピュータシステムに関連して説明する。動作時、プロセッサのうちの1つがI/O資源にアクセスしたい場合、そのプロセッサは最初に、I/O資源に関連しシステムメモリに格納されたセマフォに対し、システムバスを介して読出しコマンドを送信することにより、資源のステータスをチェックしなければならない。セマフォは、要求プロセッサに対しステータス情報を返す。資源が利用可能である場合、要求プロセッサは、セマフォに対し、セマフォのステータスを利用可能から利用不可能に変更する書込みコマンドを送信する。
 上述したようなマルチプロセッサシステムでは、プロセッサは、セマフォに対し読出しコマンドを送信する前に、読出し/書込みサイクルが完了するまでシステムバスをロックする。これにより、他のプロセスまたはプロセッサが要求プロセッサと同時にセマフォのステータスをチェックすることがない。
 理解されるように、バスをロックすることによって、読出し/書込み動作中に他のプロセスまたはプロセッサがセマフォにアクセスできなくなる上、他のプロセッサがシステムバス上の他の装置と通信できなくなる。それによってシステムパフォーマンスが低下する。明らかに、これは望ましくない結果である。
 システムメモリセマフォを使用することで、上述した問題に加えて他にも問題がある。特に保護されたオペレーティングシステムでは、実行にあたりメモリ空間をばらばらにして、ばらばらになったメモリ空間を複数の装置に割当てる。したがって、複数のプロセスが通信するための共通の領域を、フラグを設定することによって生成することは問題がある場合がある。標準的な保護の方法では、特定のプロセスは特定のメモリ領域にしかアクセスすることができないからである。複数のプロセッサおよびプロセスはメモリセマフォにアクセスしなければならないが、これによりメモリセマフォの使用が妨げられる。
 さらに、システムメモリセマフォにアクセスしそれを変更する際に固有の何らかのレイテンシがある。さらに、システムメモリセマフォを利用するためには、システムメモリを最初に初期化しなければならない。初期化することは、環境によっては、常に都合がよいか効率的であるとは限らない。
 本発明の目的は、マルチコアプロセッサ上でセマフォを実施する方法および装置を提供し上述の問題点が解決することである。
 一実施形態では、マルチコアプロセッサは、その各コアが接続された中央調停ユニット(central arbitration unit(CAU))を含む。本方式は、各コアについて、コアからCAUに対して、演算を実行するための共通資源へのアクセスを要求する第1の信号を出力することと、CAUからの第2の信号の受信に応じて、コアが演算を実行することとを含む。
 本発明を、添付図面と併せて以下の詳細な説明を参照することにより、より完全に理解することができる。
 図面において、そのうちのいくつかの図を通して、同様の要素または類似の要素が同じ参照数字で示されており、示されているあらゆる要素は必ずしも一定の比率で描かれていない。
 図1は、マルチコアプロセッサ集積回路(「IC」)チップ102を含むコンピュータシステム実施形態100の一部のシステムブロック図である。例示的な実施形態では、ICチップ102は、2つのコア104(1)および104(2)(ICチップ102が3つ以上のコアを含むことができる)と、図1では3つの共有資源105(1)、105(2)、および105(3)によって表されている、複数の共有資源とを含む。共有資源105(1)、105(2)、105(3)はまた、ICチップ102上にも存在することができる。コア104(1)、104(2)の各々は、それぞれ制御レジスタ106(1)、106(2)を含むかまたは他の方法で関連付けられ、レジスタの2つのビットはセマフォ制御に割付けられる。それぞれR[1]およびR[2]で示す、ビットのこれらのペアの各々のうちの第1のビット(すなわち、要求フィールド)は、それぞれのコア104(1)、104(2)に対してそれぞれの要求ライン(参照数字108(1)で示すRequest[1]と参照数字108(2)で示すRequest[2])に接続され、それぞれG[1]およびG[2]で示す、各ペアの残りのビット(すなわち、許可フィールド)は、それぞれのコア104(1)、104(2)に対して許可ライン(参照数字109(1)で示すGrant[1]および参照数字109(2)で示すGrant[2])に接続される。
 要求および許可ライン108(1)、108(2)、109(1)、および109(2)は、中央調停ユニット(central arbitrating unit(「CAU」))110に接続されており、CAU110は、同様にICチップ102に配置される。CAU110が備える調停ロジックには、一度に1つのコアのみセマフォが許可され、従って共有資源105(1)〜105(3)にアクセスできることが保証される。動作時、許可ビット(たとえば、G[1]またはG[2])を論理0または論理1に設定することにより、対応する許可ライン(たとえば、Grant[1]109(1)またはGrant[2]109(2))がそれぞれローまたはハイに駆動される。同様に、要求ライン(たとえば、Request[1]108(1)またはRequest[2]108(2))をローまたはハイに駆動することにより、対応する要求ビット(R[1]またはR[2])がそれぞれ論理0かまたは論理1に設定される。
 図1に示す実施形態では、単一セマフォが、複数の共有資源に対するアクセスを制御するが、代替実施形態では、2つ以上のセマフォを使用して複数の共有資源へのアクセスを制御することができる。なお、実施される各セマフォの各コアに対し、別々の要求/許可ビットペアと対応するラインとが要求される。ICチップ102は、図1のバス112で示される1つまたは複数のバスを介して、従来の方法で、システムメモリ114および他のI/O装置116に接続される。
 図2は、一度にコア104(1)、104(2)のうちの一方のみに対しセマフォの許可を保証するCAU110の、例示的な動作のフローチャートである。なお図2に示す調停は、2つのコアのみに対するものであるが、それを、3つ以上のコア間で調停するように同様に拡張することができる。さらに、任意の数の要求エンティティ間での競合を解決するために、いかなる既知のまたはこれまで未知である調停技法をCAUの一部として実施できる。
 ブロック200において、コア104(1)がセマフォを要求したことを示す、Request[1]ライン108(1)がハイであるか否かの判断がなされる。特に、一実施形態では、ビットR[1]が1(すなわち「ハイ」または「真(TRUE)」)に設定されているか否かが判断される。設定されている場合ブロック202に進み、そこでセマフォが目下コア104(1)に対して許可されているか否か(すなわち、コア104(1)がセマフォの現被許可者であるか否か)の判断がなされる。設定されていない場合、ブロック204に進み、セマフォが目下コア104(2)に対して許可されているか(すなわち、コア104(2)がセマフォの現被許可者であるか否か)の判断がなされる。許可されていない場合、実行はブロック206に進む。同様に、ブロック202において、コア104(1)に対して目下セマフォが許可されていると判断される場合、ブロック206に進む。ブロック206において、Grant[1]ライン109(1)はハイに駆動され、Grant[2]ラインはローに駆動される。特に、一実施形態では、これにより、ビットG[1]は1に設定され、G[2]ビットは0(または「ロー」または「偽(FALSE)」)に設定される。
 ブロック204で肯定の判断がなされた場合、ブロック208に進む。同様に、ブロック200において否定の判断がなされた場合も、ブロック208に進む。ブロック208において、コア104(2)によってセマフォに対する要求がなされたことを示す、Request[2]ライン108(2)がハイであるか否かの判断がなされる。特に、一実施形態では、ビットR[2]が1に設定されているか否かに関する判断がなされる。設定されている場合、ブロック210に進み、そこでセマフォが目下コア104(2)に対して許可されているか否かの判断がなされる。設定されていない場合、実行はブロック214に進む。
 ブロック214において、セマフォが目下コア104(1)に対して許可されているか否かの判断がなされる。そうでない場合、ブロック216に進み、そこで、Request[1]ライン108(1)がハイであるか否かの判断がなされる。特に、一実施形態では、ビットR[1]が0に設定されているか否かの判断がなされる。そうでない場合、実行はブロック218に進む。同様に、ブロック210において、セマフォが目下コア104(2)に対して許可されていると判断された場合、実行はブロック218に進む。ブロック218において、Grant[1]ライン109(1)はローに駆動され、Grant[2]ライン109(2)はハイに駆動される。特に、一実施形態では、これにより、ビットG[1]が0に設定され、G[2]ビットが1に設定される結果となる。
 ブロック208において否定の判断がなされたか、またはブロック214または216のいずれかにおいて肯定の判断がなされた場合、実行はブロック222に進み、そこでGrant[1]ライン109(1)とGrant[2]ライン109(2)とがローに駆動される。特に、一実施形態では、この結果、許可ビットG[1]とG[2]とがともに0に設定される。ブロック206、218、または222のいずれかの完了時に、実行はブロック224に進み、そこでセマフォの現被許可者(すなわち、コア104(1)、コア104(2)もしくはいずれでもない)が更新され、その後ブロック200に戻る。
 図2を参照して例示し説明した調停ロジックを実施する一例としての擬似コードを、以下に示す。
入力
 request[1]:コア1から調停ロジックへの要求ライン
 request[2]:コア2から調停ロジックへの要求ライン
出力
 grant[1]:コア1に対して許可されたセマフォ
 grant[2]:コア2に対して許可されたセマフォ
状態
 grant_last[1]:コア1に対しセマフォが許可された
 grant_last[2]:コア2に対しセマフォが許可された
 grant_last[1]=FALSE;
 grant_last[2]=FALSE;
while(TRUE)
 {
   if(request[1] AND grant_last[1]
   OR
   (request[1] AND (NOT grant_last[2])))
  {
    grant[1]=TRUE;
    grant[2]=FALSE;
   }
  else if((request[2] AND grant_last[2])//実行まで許可を維持//
  OR
  (request[2] AND (NOT request[1]) AND (NOT grant_last[1])))
  {
    grant[1]=FALSE;
    grant[2]=TRUE;
   }
   else
   {
     grant[1]=FALSE;
     grant[2]=FALSE;
    }
    grant_last[1]=grant[1];
    grant_last[2]=grant[2];
 }
 図3は、セマフォにアクセスする各コアの動作のフローチャートである。図3に示す動作は、コアによってセマフォへのアクセスが望まれる場合に、各コア104(1)および104(2)において独立して実施される。例示および簡単のために、図3に示す動作を、コア104(1)に関連して説明する。コア104(1)がセマフォへのアクセスを望んでいると判断された後に、実行はブロック300で開始する。ブロック300において、要求ライン108(1)に対して第1の信号が出力される。特に、コア104(1)の要求ビット、すなわち要求ビットR[1]が1に設定される(およびRequest[1]ライン108(1)がハイに駆動される)。図2に関して上述した調停ロジックが、第1の信号の受信(すなわち、Request[1]ライン108(1)のハイへの駆動)を検出し、それにしたがって、要求を許可するか(Grant[1]ライン109(1)に第2の信号を送信する(すなわち、Grant[1]ライン109(1)をハイに駆動し、それによって許可ビットG[1]を1に設定する)ことにより)、または要求を効果的に拒絶する(Grant[1]ライン109(1)に第3の信号を送信する(すなわち、Grant[1]ライン109(1)をローに駆動し、それによって許可ビットG[1]を0に設定する))ことによって応答する。ブロック302において、コア104(1)は、許可ビットG[1]を読み出す。ブロック304において、許可ビットG[1]が0に設定されているか否かの判断がなされる。そうである場合、実行はブロック300に戻り、そうでない場合、実行はブロック306に進む。ブロック306において、セマフォが許可されており、セマフォを要求した動作が実行される。動作が完了すると、実行はブロック308に進み、そこでRequest[1]ライン108(1)に第4の信号が送信される。特に、Request[1]ライン108(1)はローに駆動され、それによって要求ビットR[1]が0に設定され、セマフォが解放される。
 このように、本明細書で説明した本発明の実施形態は、マルチコアプロセッサと接続して使用するオンチップセマフォを提供し、それによりシステムメモリセマフォを実施する際に固有のレイテンシおよび固有の他の問題が軽減される。本発明をいくつかの実施態様に関して説明したが、示し説明する発明の形態は、例示的な実施形態としてのみ扱われるべきである、ということが理解されなければならない。たとえば、上述したように、本明細書で説明したオンチップセマフォを、いかなる数のコアを有するマルチコアプロセッサで実施してもよく、調停ロジックはそれにしたがって変更される。さらに、複数の共有資源へのアクセスを制御する際に使用するために、複数のセマフォを実施することができる。したがって、かかるすべての変更形態、拡張形態、変形形態、修正形態、追加形態、削除形態、置換形態、結合形態等が、本特許請求の範囲によってのみ適用範囲が画定される本発明の範囲内にあるとみなされる。
本発明の一実施形態によるマルチコアオンチップセマフォを実施するコンピュータシステムの一形態のシステムブロック図。 図1に示すマルチコアオンチップセマフォを実施する例示的な調停ロジックの一形態のフローチャート。 図1のコンピュータシステムの各コアによりそのマルチコアオンチップセマフォにアクセスするために実施されるロジックの一形態のフローチャート。

Claims (10)

  1. マルチコアプロセッサでセマフォを実施し、共通資源へのアクセスを制御する方法であって、
     前記マルチコアプロセッサは各コアに接続された中央調停ユニット(CAU)を備え、それぞれのコアについて、
     複数のコアの1つから前記CAUに第1の信号を出力し、演算を実行するために前記共通資源へのアクセスを要求することと、
     前記CAUからの第2の信号の受信に応じて、前記1つのコアが前記演算を実行することと、を含む方法。
  2. 前記CAUからの第3の信号の受信に応じて、前記1つのコアが、前記CAUからの前記第2の信号の受信を待ち続けることをさらに含む請求項1記載の方法。
  3. 前記第1の信号の出力に応じて、前記CAUが、前記複数コアの他方が前記共通資源の制御を有しているか否かを判断することと、
     前記複数コアの他方が前記共通資源の制御を有している場合、前記CAUが前記1つのコアに対し前記第3の信号を出力することと、
     前記複数コアの他方が前記共通資源の制御を有していない場合、前記CAUが前記1つのコアに対し前記第2の信号を出力することと
    をさらに含む請求項2に記載の方法。
  4. 前記マルチコアプロセッサの各コアについて、前記実行の完了時に、前記1つのコアが前記CAUに対して第4の信号を出力することをさらに含む請求項2または3に記載の方法。
  5. 前記第1の信号の出力に応じて、前記CAUが、前記コアの他方が前記CAUに対し第1の信号を出力しているか否かを判断することと、
     前記複数コアの他方が前記CAUに対して第1の信号を出力している場合、前記CAUが前記1つのコアに対して第3の信号を出力することと、
     前記複数コアの他方が前記CAUに第1の信号を出力していない場合、前記CAUが前記1つのコアに対して第2の信号を出力することと
    をさらに含む、請求項1から4のいずれか1つに記載の方法。
  6. 前記CAUは、最初に前記1つのコアに対し第3の信号を出力することをさらに含む請求項1から5のいずれか1つに記載の方法。
  7. マルチコアプロセッサ集積回路(「IC」)チップでセマフォを実施し、共通資源に対するアクセスを制御する方法であって、
     前記ICチップは該ICチップの各コアに接続された中央調停ユニット(CAU)を含み、前記ICチップの各コアは、許可フィールド(G1、G2)と要求フィールド(R1、R2)とを備えた制御レジスタを含み、前記ICチップのそれぞれのコアについて、
     複数コアの1つは、前記要求フィールド(R1、R2)に対して第1の値を書き込むことにより前記共通資源へのアクセスを要求し、その時前記オンチップCAUが前記1つのコアに対し第2の値を出力することにより、該コアに対し前記共通資源へのアクセスを許可するか、または第3の値を出力することにより、該コアに対する前記共通資源へのアクセスを拒絶することと、
     前記1つのコアは、前記要求フィールド(R1、R2)に第4の値を書込んで0にすることにより、前記共通資源の制御を放棄することと、を含む方法。
  8. 前記ICチップの各コアについて、
     前記要求フィールド(R1、R2)に対する前記第1の値の書込みに応じて、前記CAUは、前記複数コアの他方が前記共通資源の制御を有するか否かを判断し、
     前記複数コアの他方が前記共通資源の制御を有することに応じて、前記CAUは前記コアに対して第3の値を出力することと、
     前記複数コアの他方が前記共通資源の制御を有していないことに応じて、前記CAUは前記1つのコアに対して第2の値を出力することと
    をさらに含む請求項7に記載の方法。
  9. 前記ICチップの各コアについて、
     前記要求フィールド(R1、R2)に対する前記第1の値の書込みに応じて、前記CAUは、前記複数コアの他方がその要求フィールド(R1、R2)に格納された第1の値を有しているか否かを判断することと、
     前記複数コアの他方がその要求フィールド(R1、R2)に格納された第1の値を有することに応じて、前記CAUは前記コアに対して第3の値を出力することと、
     前記複数コアの他方がその要求フィールド(R1、R2)に格納された第4の値を有することに応じて、前記CAUは前記コアに対して第2の値を出力することと、をさらに有する請求項7または8に記載の方法。
  10. 前記ICチップの各コアについて、前記CAUは、最初に前記1つのコアに対し第3の値を出力することをさらに含む請求項7から9のいずれか1つに記載の方法。
JP2003276637A 2002-07-25 2003-07-18 マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法 Withdrawn JP2004062910A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/205,268 US20040019722A1 (en) 2002-07-25 2002-07-25 Method and apparatus for multi-core on-chip semaphore

Publications (1)

Publication Number Publication Date
JP2004062910A true JP2004062910A (ja) 2004-02-26

Family

ID=27765825

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003276637A Withdrawn JP2004062910A (ja) 2002-07-25 2003-07-18 マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法

Country Status (3)

Country Link
US (1) US20040019722A1 (ja)
JP (1) JP2004062910A (ja)
GB (1) GB2393535B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128895A (ja) * 2008-11-28 2010-06-10 Internatl Business Mach Corp <Ibm> スレッド実行制御方法、およびシステム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050102457A1 (en) * 2003-11-12 2005-05-12 Dell Products L.P. System and method for interrupt processing in a multiple processor system
TWI256553B (en) * 2004-12-17 2006-06-11 Ind Tech Res Inst Apparatus and method for hardware semaphore
CN101366004A (zh) * 2005-12-06 2009-02-11 波士顿电路公司 用于带有专用线程管理的多核处理的方法和设备
US20080059674A1 (en) * 2006-09-01 2008-03-06 Jiaxiang Shi Apparatus and method for chained arbitration of a plurality of inputs
US7765351B2 (en) * 2007-03-12 2010-07-27 International Business Machines Corporation High bandwidth low-latency semaphore mapped protocol (SMP) for multi-core systems on chips
JP5245722B2 (ja) * 2008-10-29 2013-07-24 富士通株式会社 スケジューラ、プロセッサシステム、プログラム生成装置およびプログラム生成用プログラム
US9830295B2 (en) 2015-01-15 2017-11-28 Nxp Usa, Inc. Resource domain partioning in a data processing system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696939A (en) * 1995-09-29 1997-12-09 Hewlett-Packard Co. Apparatus and method using a semaphore buffer for semaphore instructions
FR2759472B1 (fr) * 1997-02-12 1999-05-07 Thomson Csf Registre semaphore rapide a fonctionnement securise sans protocole de bus specifique
US6134579A (en) * 1997-08-15 2000-10-17 Compaq Computer Corporation Semaphore in system I/O space
US6279066B1 (en) * 1997-11-14 2001-08-21 Agere Systems Guardian Corp. System for negotiating access to a shared resource by arbitration logic in a shared resource negotiator
JPH11296541A (ja) * 1998-04-14 1999-10-29 Fujitsu Ltd 構造化データ管理システム及び構造化データ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
US7006521B2 (en) * 2000-11-15 2006-02-28 Texas Instruments Inc. External bus arbitration technique for multicore DSP device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128895A (ja) * 2008-11-28 2010-06-10 Internatl Business Mach Corp <Ibm> スレッド実行制御方法、およびシステム

Also Published As

Publication number Publication date
US20040019722A1 (en) 2004-01-29
GB0316790D0 (en) 2003-08-20
GB2393535B (en) 2005-05-18
GB2393535A (en) 2004-03-31

Similar Documents

Publication Publication Date Title
US11501024B2 (en) Secure master and secure guest endpoint security firewall
US6775727B2 (en) System and method for controlling bus arbitration during cache memory burst cycles
US6330647B1 (en) Memory bandwidth allocation based on access count priority scheme
JP3790713B2 (ja) 共用バス上の装置に対するトランザクションの選択的宛先設定
US7421529B2 (en) Method and apparatus to clear semaphore reservation for exclusive access to shared memory
JP3634932B2 (ja) データ完全性を維持するためのスピン・バッファおよび方法
US6986005B2 (en) Low latency lock for multiprocessor computer system
US6792497B1 (en) System and method for hardware assisted spinlock
US5590299A (en) Multiprocessor system bus protocol for optimized accessing of interleaved storage modules
JP2008500635A (ja) データ処理システムにおけるエンディアンネス制御方法および装置
JP4587756B2 (ja) 半導体集積回路装置
JP4874165B2 (ja) マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス権設定方法
JPH02500309A (ja) 保留バスに割り込み要求を送る割り込み要求発生ノード
US6275890B1 (en) Low latency data path in a cross-bar switch providing dynamically prioritized bus arbitration
US5894562A (en) Method and apparatus for controlling bus arbitration in a data processing system
JP2007508607A (ja) 複数のプロセッサと1つのメモリシステムを有するシステムのためのメモリインタフェース
US7080174B1 (en) System and method for managing input/output requests using a fairness throttle
JP2004062910A (ja) マルチコアプロセッサにセマフォを具現化し、共通資源へのアクセスを制御する方法
US6279066B1 (en) System for negotiating access to a shared resource by arbitration logic in a shared resource negotiator
JP2005293596A (ja) データ要求のアービトレーション
CN116340243A (zh) 一种双核可信执行的安全芯片架构
US6502150B1 (en) Method and apparatus for resource sharing in a multi-processor system
JPS594733B2 (ja) キヨウツウバスセイギヨカイロ
EP1984943B1 (en) Selective transaction request processing at an interconnect during a lockout
US20060095685A1 (en) System and method to coordinate access to a sharable data structure using deferred cycles

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20061003