JPS59111561A - 複合プロセツサ・システムのアクセス制御方式 - Google Patents

複合プロセツサ・システムのアクセス制御方式

Info

Publication number
JPS59111561A
JPS59111561A JP57221684A JP22168482A JPS59111561A JP S59111561 A JPS59111561 A JP S59111561A JP 57221684 A JP57221684 A JP 57221684A JP 22168482 A JP22168482 A JP 22168482A JP S59111561 A JPS59111561 A JP S59111561A
Authority
JP
Japan
Prior art keywords
bus
data
processor
output
shared memory
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.)
Pending
Application number
JP57221684A
Other languages
English (en)
Inventor
Minoru Hatada
畑田 稔
Hideaki Ishida
石田 秀昭
Masatoshi Matsushita
松下 正年
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.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Hitachi Ltd, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP57221684A priority Critical patent/JPS59111561A/ja
Priority to EP83112366A priority patent/EP0111840A3/en
Priority to US06/563,038 priority patent/US4571672A/en
Publication of JPS59111561A publication Critical patent/JPS59111561A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/37Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、複合プロセッサ・システムのアクセス制御方
式に関し、特に共有メモリや共通バスに対する排他制御
が不要で、かつ各プロセッサの使用権を平等にできるバ
スまたはメモリへのアクセス制御方式に関するものであ
る。
〔従来技術〕
従来より、複数のプロセッサからなる複合プロセッサ・
システムで、は、プロセッサ相互間で通信した際に課り
が生じた場合は問題があり、また共有メモリや共通バス
を使用する際に排他制御を行うため、長時間使用不可能
状態となり、結局各プロセッサで使用権の不平等が生じ
ている。
第1図は、従来の共有メモリ結合型複合プロセッサ・シ
ステムのブロック図である。
共有メモリ結合型プロセッサ・システムでは、プロセッ
サ21,31. ローカル・メモリ22゜32、および
インターフェイス23.33からなるプロセシング・モ
ジュール2,3の複数台ト、共有メモリ1と、バス・ア
ービタ4とが、共通バス5を介して接続されている。各
プロセッサ21゜31は、ローカル・メモリ22.32
と全く同じように共有メモリ1に対してアクセスするこ
とができる。
第2図は、第1図で実行されるプログラム・モジュール
相互間の通信方法を示す図である。プログラム・モジュ
ール24.34は、相異なるプロセシング・モジュール
2,3の中のローカル・メモリ22.32内に格納され
ており、各々のプロセッサ21.31により実行される
。プログラム・モジュール24.34相互間の通信は、
共有メモリ1内に格納された共通データ11を介して行
われる。共通データ11は、任意の時刻に任意のプログ
ラム・モジュールから自由にアクセスされるので、プロ
セッサ間通信の自由度はきわめて大きいが、その反面、
プログラムに誤りが存在した場合には、その箇所を検出
して訂正することが困難である。
次に、共有メモリ1は、2以上のプロセッサによって同
時にはアクセスできない。バス・アービタ4は、複数プ
ロセッサによる共有メモリ・アクセスが同時に起こらな
いように、共通バス5の排他制御を行う0また、プロセ
ッサ21または31は、共通データ11をアクセスして
、更新する間他のプロセッサを排除して共通バス5を完
全に占有するような排他制御機能、を、プロセシング・
モジュール2または3内に具備している。このような排
他制御は、共有メモリ結合方式では必要不可欠ではある
が、従来の方式の場合は排他制御に要する共□通バス占
有時間が長くなりすぎるため、プロセッサの数が多いと
きには、各プロセッサの共通バス空き待ち時間はきわめ
て長くなっている。
この結果、システム全体のオーバーヘッド増加を引き起
こす欠点がある。
第3図は、従来の複合プロセッサ・システムにおけるバ
ス制御方法を示す図である。
複数のプロセッサ2,3・・・・・6を同一バスδに接
続した複合プロセッサ・システムでは、第3図に示すよ
うなディジー・チェイン方式により制御が行われる。
いま、プロセッサ2.3・・・・・6のうちの1つがバ
ス使用要求信号BRを出力すると、バス・アービタ4は
、バス使用可能状態か否かを判別し、使用可能であれば
バス使用許可信号BGOUTを出力する。バス使用許可
信号BGOUTは、ディジー・チェインにより、バス・
アービタ4に物理的に近いプロセッサ2から順に伝達さ
れ、バス使用要求信号BRを出力したプロセッサに受は
取られる。1つのプロセッサがバス使用権を得た後に、
他のプロセッサからバス使用要求信号BRが出力される
と、占有中のプロセッサからバス使用中BBUSYが出
力される。これらの信号BR,BBUSYは、バス・ア
ービタ4に受信され、バス・アービタ4はこれによりバ
ス使用状況を把握する。
第4図は、第3図のプロセッサのバス制御回路の論理構
成図である。
プロセッサがバス使用要求W玉を出力すると、バスドラ
イバ15を駆動して要求信号BRを送出するとともに、
7リツプ・7pツブF2を使用許可信号BGINの人力
に同期してセットし、セット出力でバスドライバ16を
駆動してバス使用中信号BBSYを送出する。バス使用
許可信号BGINは、インバータ19.遅延素子18お
よびナンド回路17を介して次のプロセッサに出力され
る。ただし、プロセッサがバスを使用しなくなって、要
求BRを反転するか、あるいはリセット信号RR8ET
により7リツプ・7pツブF2をリセットした後、リセ
ット出力によりナンド回路17を開くことにより、隣接
プロセッサに使用許可信号BGOUTt出力する。
これによって、各プロセッサは自由にノくス使用要求信
号BRを出力できるため、バス・アービタ養に物理的&
〆近いプロセッサの方がバスの使用権を得る優先度が高
い。そのために、バス・アービタ養から物理的に遠い場
所に位置するプロセッサは、よす近いプロセッサにバス
使用許可信号BGOUTを阻止されてしまい、使用権を
得ることができず、したがってバス使用権はきわめて不
平等なものとなっている。
〔発明の目的〕
本発明の目的は、これら従来の欠点を改善するため、速
やかにプログラムの誤りを検出して訂正でき、かつ排他
制御に要する共通バス占有時間を短縮でき、しかも各プ
ロセッサのバス使用権を平等化できる複合プロセッサ・
システムのアクセス制御方式を提供することにある。
〔発明のWAI要〕
本発明による複合プロセッサ・システムのアクセス制御
方式は、空きのときのみデータを書き込み、データがあ
るときのみ読み出しができるデータ受渡用のボートを設
けて、2重書きおよび同一データの2度読みによる誤り
を阻止し、かつボート自体に排他制御動作を行わせるこ
とに特徴がある。さらに、本発明では、複数のプロセッ
サが同時にバスの使用要求を出力したとき、1つのプロ
セッサにバス使用権を与えるが、他のプロセッサの使用
要求がなくなるまで、すでに使用権を得たプロセッサに
再度バス使用要求を出力させないようにすることに特徴
がある。
〔発明の実施例〕
以下、本発明の実施例を、図面により説明する。
第5図は、本発明の実施例を示すデータ・7p−結合型
プロセッサの概念図である。
第5図において、ボー)(PO)7は、データを1つだ
け格納できる箱のような概念である。ボート7が空きの
ときのみ、そこにデータを書き込むことができる。また
、1つのデータが格納されているときのみ読み出しが可
能であり、そのときボート7は空きになる。ボート7が
空き状態のときに読み出したり、または1つのデータが
格納されている満杯状態のときに書き込もうとすると、
アクセスは不・成功に終る。
第6図は、第5図におけるプロセッサ間通信の方法を示
す図である。
プログラム・モジュール24.34は、ボート7を介し
て共通データ71を送受する。この方式における通信は
、書類の受は渡しに該当するものである。ボート7を介
することにより、1度書き込まれたデータが誤って書き
換えられることを防止でき、また誤った読み出しあるい
は書き込み操作を速やかに検出かつ訂正できる。すなわ
ち、データの書き込み、読み出し操作が不成功に終った
とき、誤った書き込み、読み出しであることを検出でき
る。
また、データ・フロー結合方式では、ポート7自体が排
他制御機能を持っているため、従来の共通メモリ結合方
式で必要としたような排他制御が不要となる。
第7図は、第6図によりパイプライン処理を行う場合の
説明図である。第7図(a)はその動作説明を示し、第
7図(b)はタイムチャートを示す。
プログラム・モジュール24.34は、ボート7を用い
てパイプライン処理が可能である。プログラム・モジュ
ール囚24は、◆0〜す養の5つのボートに、その順序
でデータを書き込む命令を含み、モジュール■34は、
それら5つのボートのうち2つのボートナO9す2から
データを読み出す命令を含んでいる場合、モジュール@
34はモジュール(A)24の書き込み命令が完全に終
了するまで待つ必要はなく、ボー)會O1會2のデータ
が書き込まれた時点で直ちに実行できる。すなわち、第
7図(k+)に示すように、ナ2のデータ書き込み命令
が開始された後、ナ2のデータ読み出しを開始する。
第8図は、本発明の実施例を示すデータ・フルー結合型
プリセッサのシステム全体構成図である。
プロセッサ21.ローカル・メモリ22.バッフ727
、制御le!A[25および分散アービタ26よりなる
プロセシング・モジール2が複数台と、バス・アービタ
養と、ならびに共有メモリ1.データ・70−制御モジ
ュール8よりなるボート7が、共通バス5を介して接続
されている。
ボート7の共有メモリ1に対して、各プロセッサからデ
ータを書き込みまたは読み出すことができるが、その際
に、1度書き込まれたデータが誤って書き換えられない
ように、また瞑った読み出し、書き込み操作を速やかに
検出するように、データ・フロー制御モジュール8が管
理する。また、各プロセシング・モジュール2には、イ
ンターフェイス23のかわりに、バッファ27.制御機
構25および分散アービタ26を配置して、それぞれに
機能を分散させ、よりきめの細かい制御を行わせる。
以下、本発明の中心となるデータ・フロー制御モジュー
ル8について述べる。
第9図は、第8図のデータ・7p−制御モジュールのブ
ロック構成図である。
このモジュール8は、共通メモリlの1バイトごとに1
ビツトのステータス情報を持っている。
ステータス情報は、ボート7が空き状態(°“0″)か
、満杯状態(“1′′)かを示す。空き状態での書き込
み(11) 操作または満杯状態での読み出し操作が行われるとき、
そのステータス情報は反転し、共通バス(BUS)5上
のデータ・ストローブ信号DSO,DSLに応じてこの
モジュール8から共通メモリ(M E M)1にデータ
・ストローブ信号LDS、UDSを出力する。これによ
り、実際に共通メモ!j (MEM)1のデータ自体の
アクセスが行われる。ボート7が空き状態での読み出し
操作または満杯状態での書き込み操作では、LDS、U
DS信号は出力されず、データ自体のアクセスは行われ
ない。その代わりに、そのアクセスが不成功に終ったこ
とを示すNA CK信号をアクセスしようとしたプロセ
シング・モジュールに出力する。この場合、ステータス
情報は変化しない。
データ・フロー制御モジュール8は、第9図に示すよう
に、アドレス・デコード回路9.ステータス回路10.
出カイm号分配回路11および初期設定回路12から構
成されている。次に、これらの各回路について、説明す
る。
第10図は、第9図のアドレス・デコード回路α2) のブロック図である。
この回路は、データ・フロー制伺1モジュール8がサポ
ートするアドレス領域がアクセスされたことを示すC8
信号、それぞれ一定跡間遅延したC81.OO,C81
4−0およびC8160信号、およびステータス回路1
0中のステータス情報を格納するためのメモリを選択す
るC3OL、C3lL、C3OU、C3lU 信号を発
生する。例えば、16KX1ビツトのRA、 Mをステ
ータス・メモリ゛に用いれば、全体で64 Kボート、
つまり共有メモリ1上で64にバイトの領域をサポート
することができる。
第10図において、比較回路91は共有メモリ1のアド
レスAO〜A7とアクセスされたアドレスA16〜A2
3 (BO〜BT)とを比較して、一致したときチップ
・セレクト信@C8を共有メモリ1に送出するとともに
、ステータス回路10にもC3QL、C3lL、C3O
tJ、C3lUを送出する。共有メモリ1のアドレス(
J1アl°レス設定スイッチ92により任意に定めるこ
とができ、例えばO〜10000 番地のうちボートの
対象として用いたい範囲を2000−3000 番地と
する場合には、アドレス設定スイッチ92によりAO−
A7をその範囲に設定する。なお、アクセスするメモリ
・アドレスに、AONA15とA16〜A23の上位、
下位アドレスに分けられており、アドレス・デコード回
路Oでは下位アドレスA16〜A23のみを比較照合す
る。
第11図は、第9図のステータス回路のブロック構成図
である。
ステータス回路lOは、各ボートのステータス情報の管
理とアクセス可否の判定を行う。各ボートに対し1ビツ
トずつ割り当て、この値がO″のときボートは空き状態
、°°1”のとき鈎杆状態を示す。NACKOL、NA
CKIL、NACKOU、およびNACKIU信号は、
ボートのステータスとアクセス内容とが合致し、ボート
・アクセスが不成功のときのみ“OI+となる。この1
3号は、ゲー) G 1を)jnシて7リツプ・フロッ
プF1に供給される。一方、フリップ・フロップF1の
クロック信号には、100ns遅延されたC8100信
号を用いており、NACKOL−NACKIU が確定
した状態で、フリップ・フロップF1にラッチされるこ
とを保証している。この出力信号NACKは、出力信号
分配回路11に供給されるとともに、ボー)G3を通し
てRAM1030の書き込み端子WEに供給される。
ボート アクセスが成功するとき、この信号が101+
になるため、RAM1030に信号“Onが入力するご
とにより、そのボートのステータス情報が反転する。ボ
ー)G3に、C8140信号が入力されているの(Jl
その信号が確定していることを保証するためである。ま
た、RAM1030にデータを書き込むとき、出力端子
D  はハイインビーダンut スになるため、アクセス開始時のステータスを正しく保
持できるように7リツプ・70ツブFlt−用いている
。また、アクセスが不成功のときに、書き込み端子W1
に入力される信号は“l”となるため、R,0M103
0はライト・モードにならず、ボートのステータス情報
は変化しない。なお、ステータス回路lOは、点線で囲
まれた4つの部分101〜104に分割されており、1
01,102のαυ 回路が下位アドレスのステータス照合を、また103.
104の回路が上位アドレスのステータス照合を、それ
ぞれ行っている。入力されるアドレスとチップ・セレク
ト信号C3OL、LL、OU、IUを除けば、4つの部
分は全く同一の回路で構成されている。回路103では
、アドレス・デコード回路9からチップ・セレクト信号
C3OUが、またバスからり一ド/ライト信号詐および
アドレスA14−〜A1が、またナンド回路G3からラ
イト・イネーブル信号WEが、それぞれRAM 103
0に入力する。アクセスされた上位アドレスAI4〜A
1に対応するボートのステータス情報力“1″のときに
、書き込み要求(R/W −1)が出されると、RAM
 1030のり。utIUS力とV[出力によりゲート
回路が開かず、ボー)Glにはu Onが入力される。
また、ステータス情報が“°0”のときに、読み出し要
求(R席−〇)が出されると、ROM1030のり。u
t  出力とn、AFi  出力によりやはりゲート0
1′には0゛°が入力されて、アクセスは阻止される。
第12図は、第9図の初期設定回路の構成図でC6) ある。
電源投入時、ボートのステータス情報は未定餞状態であ
る。ここで、初期設定回路12の7リツプ・70ツブF
3の出力INITを″OIIとすることにより、ステー
タス情報の内容にかかわらずに、すべてのボートに対し
アクセス可能にする。すなわち、■NIT信号は、ステ
ータス回路10のボー)G2に入力されているので、そ
の44号が“09″であればゲートG2の出力はNAC
K OL−NACKIUに関係なく“0′″となり、ボ
ー トに対しアクセス可能となる。そこで、シスデJ\
・イニシャラ・イス・プログラムにより、データ・フロ
ー制御モジュール8がサポートしている全ポートに対し
て読み出し操作を行うことによって、ボートを空き状態
にする。その後、初めて実行される書き込み命令により
、ボー)G4の出力信号がO″から1″に変わり、7リ
ツプ・フロップF3の出力も°“I 11になる。その
結果、ボー)G2はそれ以降フリップ。
70ツブF1の出力がそのままim過することになり、
ステータス情報によってボート・アクセス可否の判定が
行われる。
第13図は、第9図の出力信号分配回路の論理構成図で
ある。
出力信号分配回路11は、ボー)G2の出力NACKお
よびデータ・ストローブ信号DSO,DS1より、最終
的にプロセシング・モジュール2゜3に返送するN A
 CK信号、共有メモリlに渡すLDS、UDS信号を
発生さぜる。ゲートG5゜G6に与えられているC81
40およびC8160信号は、NACK信号の確定を保
証し、アクセス許可サイクル中にひげ状のノイズを発生
させないためのものである。
実施例としては、前述したボートの考え方を実現するも
のであれば、勿論、他の形態を用いてもよい。例えば、
RAMを16KX1ビツトを8個として128にボート
をサポートさせることができ、また他の種類のRAM素
子、例えばIKXIビット、4に×1ビット、あるいは
ダイナミック・メモリ素子等を用いてもよい。ただし、
誓き換え可能なメモリでなければならない。また、デー
タ・ストロープ信号LDS、UDSは、1本または3本
以上でもより。2種類の信号NACK(LDS、UDS
)ならびにステータス1′〃報の書き換えに係わるタイ
ミング信号も、他の形態をとることができる。
第14図は、本発明の実施例を示すプロセシング・モジ
ュールのバス制御回路の構成図である。
第8図における各プロセシング・モジュール2゜3では
、分散アービタ26によってバス制御が行われる。ボー
ト・アクセス不可の場合には、第8図におけるボート7
から出されるNACKi号により、第14図の分散アー
ビタにおいて、バス使用要求信号BRが、出力され、同
じボートを再度アクセスすることができる。
従来のバス制御回路では、各プロセッサがバス使用要求
信号BRを自由に出力できたのに対して第14図に示す
バス制御回路では、他のプロセッサのバス使用要求と、
バスの使用状態とをチェックし、バス使用要求信号の出
力を管理している。
つまり、プロセッサが1度バスを使用すると、バス使用
要求を出力している他のプロセッサのバスα9) 使用を優先させるために、他のプロセッサのバス使用要
求信号が出力されておらず、かつバスが使用されていな
い状態になるまで、バスを使用したプロセッサは再びバ
スの使用要求をすることができないようにして、各プロ
セッサのバスの使用権の平等化を図る。
第14図に示すバス制御回路は、第4図に示した従来の
回路に、バス使用要求BRおよびバス使用中信号BBS
Yのバス・ドライバ15.16の出力側の信号をナンド
回路14の入力に用い、その出力を7リツプ・フロップ
F4のクリア大刀とじて、フリップ・70ツブF4のQ
出力がプロセッサからのバス要求BRをBRとしてバス
に出方可能か、あるいは不可かを制御する回路を付加す
る。
初期状態では、どの分散アービタのバス制御回路もバス
使用要求信号BRを出力せず、かつバス5は空き状態で
あるため、ナンド回路14からフリップ・70ツブF4
のクリア入力端子CI、 Hに対してローレベルを出力
する。これにより、7リツプ・プロップF4はリセット
され、出方端子Q(20) からローレベル出力が与えられる。このとき、プロセッ
サがバス使用要求をしようとして分散バス・アービタへ
の信号W玉をローレベルにすると、ナンド回路13から
ハイレベル出力が与えられ、バス使用要求信号BRをバ
スに出力することができる。要求信号Bnが出力された
ことにより、バス・アービタ4が駆動してバス使用許可
信号BGINがディジー・チェインを経て入力される。
この許可信号BGINをインバータ19を通して7リツ
プ・70ツブF2のクロック入力端子CKに加えると、
そのとき7リツプ・70ツブp 2 (7) pR入力
端子およびCLR入力端子には、ハイレベル電圧が印加
されており、クロックが有効な状態にある?で、7リツ
プ・フロップF2の出力Qかラババイレベル電圧、出力
ζからはローレベル電圧が、それぞれ出力される。この
出力Qからのハイレベル電圧がバス・ドライバ16を経
てバスにバス使用中信号BBSYを出力し、バスを占有
する。同時に、フリップ・70ツブF2の出力Qのハイ
レベル出力電圧を7リツプ・70ツブF4のクロック入
力端子CLKに加えることにより、フリップ・70ツブ
F4のQ出力からハイレベル電圧をナンド回路13に与
える。それによって、バスの使用を終了して、再びバス
の使用要求を出そうとしてBRをローレベルにしても、
フリップ・フロップF4のQ出力がハイレベルであるた
め、ナンド回路13の入力が満たされず、バス使用要求
信号BRをバス上に出方できない。信号BRがバスに出
力されるためには、フリップ・70ツブF4がリセット
されてQal力がp−レベルになっていなければならな
い。フリップ・フロップF4がリセットされるためには
、バス上のBR,BBSY信号が出力されていない状態
、つまり他のプロセッサのバス使用要求がバス・アービ
タ養によって順次使用許可され、バスの使用がずべて終
了L、BR,BBSY信号がハイレベルになっテ、ナン
ド回路14からローレベル電圧がフリップ・フロップF
4のCLR入力端子に対して与えられることにより、フ
リップ・70ツブF4がリセットされる。フリップ・フ
ロップF4がリセットされることにより、Q出力からロ
ーレベルm圧がナンド回路13に与えられ、BR倍信号
ローレベルになれば、アンド条件がとれてナンド回路1
3の出力カハイレベルとなるため、BR倍信号出力する
ことが可能となる。ここで、BR倍信号出力していない
状態で、バス使用許可信号BGINを得たときには、B
R倍信号出力しているか否かを判断して、出力していな
ければ、次のプロセッサの使用許可信号BGINとする
ため、信号BGOUTを出力する。なお、遅延紫子18
は、BR倍信号出力しているか否かの判断に要する遅延
であり、7リツプ・70ツブF2の動作時間以上の遅延
時間が必要である。
このようにして、複合マイクロプロセッサ・システムを
t#成する各プロセッサのバスの使用権を平等にするこ
とができる。
〔発明の効果〕
以上説明したように、本発明によれば、共有メモリとし
てボートを設けたので、プロセッサ相互間のデータの受
は渡しの際に、同一エリアへのデCの −タの2重書きや、同一データの2度読みによる誤りを
検出して阻止でき、またボート自体が排他制御機能を具
備することにより、共通結合方式で必要であった排他制
御は不要となり、さらに排他制御に要する共通バス占有
時間を短縮化できる。
さらに、各プロセッサにバス制御回路を設けたので、各
プロセッサの共通バスの使用権を平等にすることができ
、システム全体の稼動率を向上することができる。
【図面の簡単な説明】
第1図は従来の共有メモリ結合型複合プロセッサ・シス
テムのブロック図、第2図は第1図のプログラム・モジ
ュール相互間の通信方法を示す図、第3図は従来の複合
プロセッサ・システムのバス制御方法を示す図、第4図
は第3図の各プロセッサのバス制御回路の論理構成図、
第5図は本発明の実施例を示すデータ・70−結合型プ
ロセッサの概念図、第6図は第5図のプロセッサ間通信
の方法を示す図、第7図は第6図に、よりパイプライン
処理を行うときの説明図、第8図は本発明の実G2搬 施例を示すデータ・フロー結合型プロセッサのシステム
全体構成図、第9図は第8図のデータ・フルー制御モジ
ュールのブロック構成図、第10図は第9図のアドレス
・デコード回路のブロック図、第11図は第9図のステ
ータス回路のブロック図、第12図は第9図の初期設定
回路の構成図、第13図は第9図の出力分配回路の論理
構成図、第14図は本発明の実施例を示すプロセシング
・モジュールのバス制御回路の論理構成図である。 1:共有メモリ、2.3,6:プロセシング・モジュー
ル、7:ボート、8:データ・フロー制御モジュール、
5’ J”< 3に1バス、4=バスパr−ビタ、21
:プロセッサ、22:ローカル・メモリ、24、34 
ニブログラム・モジュール、251ftlJllI機構
、26:分散アービタ、27:バッファ、9ニアドレス
・デコード回路、10:ステータス回路、11;出力信
号分配回路、12:初期設定回路、F1〜F4 ニアリ
ップ・70ツブ。 特許出願人  株式金社日立製作所(ばか1名)代  
理  人   弁理士  磯  村  雅  佼第  
 1   図 第   2   図 第   5   図 23 第   6   図 第    7    図 一時刻 第    8   図 り一一一一−−−−−−−−−−−−−−一−」第  
  9   図 q 第10図 g] 第   11   図 第  12  図

Claims (1)

  1. 【特許請求の範囲】 α)複合のプロセッサと共有メモリとが共通バスに接続
    された複合プロセッサ・システムにおいて、上記共有メ
    モリとして、空きのときのみデータを書き込み、データ
    が格納されているときのみ読み出しが行えるデータ受渡
    し用のボートを設け、各プロセッサから該ボートをアク
    セスする際に、該ボート自体の動作により、データの2
    重書き、および同一データの2度読みを阻止し、かつ排
    他制御を行うことを特徴とする複合プロセッサ・システ
    ムのアクセス制御方式。 ■1合のプロセッサと共有メモリとが共通バスに接続さ
    れた複合プロセッサ・システムにおいて、上記共有メモ
    リとして、空きのときのみデータを書き込み、データが
    格納されているときのみ、読み出しが行えるデータ受渡
    し用ポートを設けるとともに、各プロセッサ内にバス制
    御回路を設け、複数のプロセッサが同時に上記ボート等
    をアクセスするためバス使用要求を出力したとき、一旦
    バス使用権を得たプロセッサでは、他のプロセッサから
    のバス使用要求がなくなるまで、上記バス制御回路によ
    り再度のバス使用要求出力を阻止することを特徴とする
    複合プロセッサ・システムのアクセス制御方式。
JP57221684A 1982-12-17 1982-12-17 複合プロセツサ・システムのアクセス制御方式 Pending JPS59111561A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP57221684A JPS59111561A (ja) 1982-12-17 1982-12-17 複合プロセツサ・システムのアクセス制御方式
EP83112366A EP0111840A3 (en) 1982-12-17 1983-12-08 Access control method for multiprocessor systems
US06/563,038 US4571672A (en) 1982-12-17 1983-12-19 Access control method for multiprocessor systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57221684A JPS59111561A (ja) 1982-12-17 1982-12-17 複合プロセツサ・システムのアクセス制御方式

Publications (1)

Publication Number Publication Date
JPS59111561A true JPS59111561A (ja) 1984-06-27

Family

ID=16770651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57221684A Pending JPS59111561A (ja) 1982-12-17 1982-12-17 複合プロセツサ・システムのアクセス制御方式

Country Status (3)

Country Link
US (1) US4571672A (ja)
EP (1) EP0111840A3 (ja)
JP (1) JPS59111561A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082842A (ja) * 2000-06-20 2002-03-22 Bayerische Motoren Werke Ag メインマイクロプロセッサと、バス送受信ユニットに対するプロセッサインタフェースとを有する制御装置

Families Citing this family (124)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR900002438B1 (ko) * 1984-02-29 1990-04-14 가부시끼가이샤 도오시바 프로세서간 결합방식
US4760521A (en) * 1985-11-18 1988-07-26 White Consolidated Industries, Inc. Arbitration system using centralized and decentralized arbitrators to access local memories in a multi-processor controlled machine tool
IN168469B (ja) * 1986-02-24 1991-04-06 Ibm
GB2196762B (en) * 1986-10-27 1990-12-19 Burr Brown Ltd Interleaved access to global memory by high priority source
GB2197506A (en) * 1986-10-27 1988-05-18 Burr Brown Ltd Providing and handling break points in a software monitor
JPS63199540A (ja) * 1987-02-16 1988-08-18 Toshiba Corp デ−タ伝送方法及び装置
US5034883A (en) * 1987-05-01 1991-07-23 Digital Equipment Corporation Lockhead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US4980854A (en) * 1987-05-01 1990-12-25 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US4947368A (en) * 1987-05-01 1990-08-07 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US5111424A (en) * 1987-05-01 1992-05-05 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer
US5257392A (en) * 1988-01-29 1993-10-26 Sharp Kabushiki Kaisha System for loading and dumping data in a data flow processor based on paired program data and data to be processed
US5003464A (en) * 1988-05-23 1991-03-26 Bell Communications Research, Inc. Methods and apparatus for efficient resource allocation
US5210828A (en) * 1988-12-29 1993-05-11 International Business Machines Corporation Multiprocessing system with interprocessor communications facility
US5168568A (en) * 1989-02-06 1992-12-01 Compaq Computer Corporation Delaying arbitration of bus access in digital computers
DE69030640T2 (de) * 1989-11-03 1997-11-06 Compaq Computer Corp Multiprozessorarbitrierung in für Einzelprozessor bestimmten Arbitrierungsschemas
US5206948A (en) * 1989-12-22 1993-04-27 Bull Hn Information Systems Inc. Bus monitor with means for selectively capturing trigger conditions
US6751696B2 (en) 1990-04-18 2004-06-15 Rambus Inc. Memory device having a programmable register
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5995443A (en) * 1990-04-18 1999-11-30 Rambus Inc. Synchronous memory device
US5269013A (en) * 1991-03-20 1993-12-07 Digital Equipment Corporation Adaptive memory management method for coupled memory multiprocessor systems
US5303362A (en) * 1991-03-20 1994-04-12 Digital Equipment Corporation Coupled memory multiprocessor computer system including cache coherency management protocols
US5450546A (en) * 1992-01-31 1995-09-12 Adaptec, Inc. Intelligent hardware for automatically controlling buffer memory storage space in a disk drive
US5353415A (en) * 1992-10-02 1994-10-04 Compaq Computer Corporation Method and apparatus for concurrency of bus operations
US5553248A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation System for awarding the highest priority to a microprocessor releasing a system bus after aborting a locked cycle upon detecting a locked retry signal
US5553310A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation Split transactions and pipelined arbitration of microprocessors in multiprocessing computer systems
US5463753A (en) * 1992-10-02 1995-10-31 Compaq Computer Corp. Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller
US5535395A (en) * 1992-10-02 1996-07-09 Compaq Computer Corporation Prioritization of microprocessors in multiprocessor computer systems
JP2936036B2 (ja) * 1992-10-27 1999-08-23 富士通株式会社 メモリアクセス装置
US6349371B1 (en) * 1999-10-01 2002-02-19 Stmicroelectronics Ltd. Circuit for storing information
US6934817B2 (en) * 2000-03-31 2005-08-23 Intel Corporation Controlling access to multiple memory zones in an isolated execution environment
US6795905B1 (en) 2000-03-31 2004-09-21 Intel Corporation Controlling accesses to isolated memory using a memory controller for isolated execution
US6769058B1 (en) 2000-03-31 2004-07-27 Intel Corporation Resetting a processor in an isolated execution environment
US7089418B1 (en) 2000-03-31 2006-08-08 Intel Corporation Managing accesses in a processor for isolated execution
US7013484B1 (en) 2000-03-31 2006-03-14 Intel Corporation Managing a secure environment using a chipset in isolated execution mode
US7082615B1 (en) 2000-03-31 2006-07-25 Intel Corporation Protecting software environment in isolated execution
US6678825B1 (en) 2000-03-31 2004-01-13 Intel Corporation Controlling access to multiple isolated memories in an isolated execution environment
US6754815B1 (en) 2000-03-31 2004-06-22 Intel Corporation Method and system for scrubbing an isolated area of memory after reset of a processor operating in isolated execution mode if a cleanup flag is set
US6990579B1 (en) 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US7356817B1 (en) 2000-03-31 2008-04-08 Intel Corporation Real-time scheduling of virtual machines
US7013481B1 (en) 2000-03-31 2006-03-14 Intel Corporation Attestation key memory device and bus
US7111176B1 (en) 2000-03-31 2006-09-19 Intel Corporation Generating isolated bus cycles for isolated execution
US6760441B1 (en) 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US6957332B1 (en) 2000-03-31 2005-10-18 Intel Corporation Managing a secure platform using a hierarchical executive architecture in isolated execution mode
US7194634B2 (en) 2000-03-31 2007-03-20 Intel Corporation Attestation key memory device and bus
US7073071B1 (en) 2000-03-31 2006-07-04 Intel Corporation Platform and method for generating and utilizing a protected audit log
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
US7793111B1 (en) * 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
US7389427B1 (en) 2000-09-28 2008-06-17 Intel Corporation Mechanism to secure computer output from software attack using isolated execution
US7215781B2 (en) * 2000-12-22 2007-05-08 Intel Corporation Creation and distribution of a secret value between two devices
US7225441B2 (en) 2000-12-27 2007-05-29 Intel Corporation Mechanism for providing power management through virtualization
US7818808B1 (en) 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US6907600B2 (en) * 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
US7117376B2 (en) * 2000-12-28 2006-10-03 Intel Corporation Platform and method of creating a secure boot that enforces proper user authentication and enforces hardware configurations
US7096497B2 (en) 2001-03-30 2006-08-22 Intel Corporation File checking using remote signing authority via a network
US20020144121A1 (en) * 2001-03-30 2002-10-03 Ellison Carl M. Checking file integrity using signature generated in isolated execution
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US20030126454A1 (en) * 2001-12-28 2003-07-03 Glew Andrew F. Authenticated code method and apparatus
US7308576B2 (en) 2001-12-31 2007-12-11 Intel Corporation Authenticated code module
US7085866B1 (en) * 2002-02-19 2006-08-01 Hobson Richard F Hierarchical bus structure and memory access protocol for multiprocessor systems
US6959372B1 (en) * 2002-02-19 2005-10-25 Cogent Chipware Inc. Processor cluster architecture and associated parallel processing methods
US7480806B2 (en) * 2002-02-22 2009-01-20 Intel Corporation Multi-token seal and unseal
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7069442B2 (en) 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
US7028149B2 (en) * 2002-03-29 2006-04-11 Intel Corporation System and method for resetting a platform configuration register
US20030191943A1 (en) * 2002-04-05 2003-10-09 Poisner David I. Methods and arrangements to register code
US20030196096A1 (en) * 2002-04-12 2003-10-16 Sutton James A. Microcode patch authentication
US7076669B2 (en) 2002-04-15 2006-07-11 Intel Corporation Method and apparatus for communicating securely with a token
US7058807B2 (en) * 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7127548B2 (en) * 2002-04-16 2006-10-24 Intel Corporation Control register access virtualization performance improvement in the virtual-machine architecture
US7139890B2 (en) * 2002-04-30 2006-11-21 Intel Corporation Methods and arrangements to interface memory
US20030229794A1 (en) * 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US6820177B2 (en) 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
US7142674B2 (en) * 2002-06-18 2006-11-28 Intel Corporation Method of confirming a secure key exchange
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
US20040003321A1 (en) * 2002-06-27 2004-01-01 Glew Andrew F. Initialization of protected system
US7124327B2 (en) * 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
US6996748B2 (en) * 2002-06-29 2006-02-07 Intel Corporation Handling faults associated with operation of guest software in the virtual-machine architecture
US7296267B2 (en) * 2002-07-12 2007-11-13 Intel Corporation System and method for binding virtual machines to hardware contexts
US7165181B2 (en) * 2002-11-27 2007-01-16 Intel Corporation System and method for establishing trust without revealing identity
US20040117532A1 (en) * 2002-12-11 2004-06-17 Bennett Steven M. Mechanism for controlling external interrupts in a virtual machine system
US7073042B2 (en) * 2002-12-12 2006-07-04 Intel Corporation Reclaiming existing fields in address translation data structures to extend control over memory accesses
US7318235B2 (en) * 2002-12-16 2008-01-08 Intel Corporation Attestation using both fixed token and portable token
US20040117318A1 (en) * 2002-12-16 2004-06-17 Grawrock David W. Portable token controlling trusted environment launch
US7318141B2 (en) 2002-12-17 2008-01-08 Intel Corporation Methods and systems to control virtual machines
US7793286B2 (en) * 2002-12-19 2010-09-07 Intel Corporation Methods and systems to manage machine state in virtual machine operations
US20040128345A1 (en) * 2002-12-27 2004-07-01 Robinson Scott H. Dynamic service registry
US7900017B2 (en) * 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US20040128465A1 (en) * 2002-12-30 2004-07-01 Lee Micheil J. Configurable memory bus width
US7076802B2 (en) * 2002-12-31 2006-07-11 Intel Corporation Trusted system clock
US7415708B2 (en) * 2003-06-26 2008-08-19 Intel Corporation Virtual machine management using processor state information
US20050044292A1 (en) * 2003-08-19 2005-02-24 Mckeen Francis X. Method and apparatus to retain system control when a buffer overflow attack occurs
US7424709B2 (en) * 2003-09-15 2008-09-09 Intel Corporation Use of multiple virtual machine monitors to handle privileged events
US7287197B2 (en) * 2003-09-15 2007-10-23 Intel Corporation Vectoring an interrupt or exception upon resuming operation of a virtual machine
US7739521B2 (en) * 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US7610611B2 (en) * 2003-09-19 2009-10-27 Moran Douglas R Prioritized address decoder
US7177967B2 (en) * 2003-09-30 2007-02-13 Intel Corporation Chipset support for managing hardware interrupts in a virtual machine system
US20050080934A1 (en) 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US7237051B2 (en) * 2003-09-30 2007-06-26 Intel Corporation Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US7366305B2 (en) * 2003-09-30 2008-04-29 Intel Corporation Platform and method for establishing trust without revealing identity
US7636844B2 (en) * 2003-11-17 2009-12-22 Intel Corporation Method and system to provide a trusted channel within a computer system for a SIM device
US20050108534A1 (en) * 2003-11-19 2005-05-19 Bajikar Sundeep M. Providing services to an open platform implementing subscriber identity module (SIM) capabilities
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050133582A1 (en) * 2003-12-22 2005-06-23 Bajikar Sundeep M. Method and apparatus for providing a trusted time stamp in an open platform
US20050152539A1 (en) * 2004-01-12 2005-07-14 Brickell Ernie F. Method of protecting cryptographic operations from side channel attacks
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US20050216920A1 (en) * 2004-03-24 2005-09-29 Vijay Tewari Use of a virtual machine to emulate a hardware device
US7356735B2 (en) * 2004-03-30 2008-04-08 Intel Corporation Providing support for single stepping a virtual machine in a virtual machine environment
US7620949B2 (en) 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
US7490070B2 (en) 2004-06-10 2009-02-10 Intel Corporation Apparatus and method for proving the denial of a direct proof signature
US20050288056A1 (en) * 2004-06-29 2005-12-29 Bajikar Sundeep M System including a wireless wide area network (WWAN) module with an external identity module reader and approach for certifying the WWAN module
US7305592B2 (en) * 2004-06-30 2007-12-04 Intel Corporation Support for nested fault in a virtual machine environment
US7840962B2 (en) * 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US8533777B2 (en) * 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US8279886B2 (en) 2004-12-30 2012-10-02 Intel Corporation Dataport and methods thereof
US7395405B2 (en) 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
DE102007063291A1 (de) * 2007-12-27 2009-07-02 Robert Bosch Gmbh Sicherheitssteuerung
US8514855B1 (en) * 2010-05-04 2013-08-20 Sandia Corporation Extensible packet processing architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4285038A (en) * 1976-10-15 1981-08-18 Tokyo Shibaura Electric Co., Ltd. Information transfer control system
GB1601955A (en) * 1977-10-21 1981-11-04 Marconi Co Ltd Data processing systems
GB1601956A (en) * 1978-03-02 1981-11-04 Marconi Co Ltd Multiprocessor data processing systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082842A (ja) * 2000-06-20 2002-03-22 Bayerische Motoren Werke Ag メインマイクロプロセッサと、バス送受信ユニットに対するプロセッサインタフェースとを有する制御装置

Also Published As

Publication number Publication date
EP0111840A3 (en) 1986-12-30
EP0111840A2 (en) 1984-06-27
US4571672A (en) 1986-02-18

Similar Documents

Publication Publication Date Title
JPS59111561A (ja) 複合プロセツサ・システムのアクセス制御方式
US4737932A (en) Processor
KR900004006B1 (ko) 마이크로 프로세서 시스템
US5265212A (en) Sharing of bus access among multiple state machines with minimal wait time and prioritization of like cycle types
US4470113A (en) Information processing unit
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
JP2673390B2 (ja) マルチポートメモリ
JPH0219954A (ja) データ処理システム及びデータ通信バス・システム
EP0301610B1 (en) Data processing apparatus for connection to a common communication path in a data processing system
US4622630A (en) Data processing system having unique bus control protocol
JPS58222363A (ja) 共用メモリの割振装置
CA1178378A (en) High-speed external memory system
JPH0626336B2 (ja) 制御リンク
JPH0520278A (ja) マイクロコンピユータ
JPH0146946B2 (ja)
GB2060961A (en) Data processing system having memory modules with distributed address information
JP2749819B2 (ja) 共有メモリ制御方式
JPS58109960A (ja) デ−タ処理システム
JPS6242306B2 (ja)
JPH03668B2 (ja)
JPS5995662A (ja) メモリアクセス選択回路
JPH0227696B2 (ja) Johoshorisochi
JPH0715670B2 (ja) デ−タ処理装置
KR0176087B1 (ko) 시스템 제어기의 프로세서 데이타 처리회로
JPH0512185A (ja) バーストサイクルデータ読み出しのためのアドレス予測および検証回路