JPS5858672A - 再構成可能集積回路 - Google Patents

再構成可能集積回路

Info

Publication number
JPS5858672A
JPS5858672A JP57128805A JP12880582A JPS5858672A JP S5858672 A JPS5858672 A JP S5858672A JP 57128805 A JP57128805 A JP 57128805A JP 12880582 A JP12880582 A JP 12880582A JP S5858672 A JPS5858672 A JP S5858672A
Authority
JP
Japan
Prior art keywords
interrupt
processor
processors
path
status
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP57128805A
Other languages
English (en)
Other versions
JPS6322343B2 (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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPS5858672A publication Critical patent/JPS5858672A/ja
Publication of JPS6322343B2 publication Critical patent/JPS6322343B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明はソフトウェアで変更が可能なプロセッサ間の接
続を行う内部接続を持ち、共通メモリの全てにアクセス
する多重ビツトプロセッサを有し、ICに関する。
VL151技術によって、得ることのできる経済的利点
をいかす場合の主な問題点は、将来的なVLS1部品で
満足のゆくレベルまで価格を低減できるほど充分な量産
が可能なものはわずかしかないということである。特に
、応用例の多くの場合、プロ、セッサの機能にそれぞれ
独自の構造を要求するので、亡々の応用例に用いられる
プロセッサはその目的に特に設計されることになシ、必
然的に高価格になる。
本発明の特に目的とすることは5.1種の一般的ICチ
ップの設計を用いて多数の種々の応用例におけるプロセ
ス上の要求を満たし、それに伴なってICを非常に経済
的KW造できるようにすることである。
主要プロセッサに加え110機能制#(CRTディスプ
レイのような)、メモリ管理、又は、特定の演算処理の
為の専用プロセッサを使用することは好都合である事が
多い。しかしながら、上記で示した様に、個々の目的の
ために特別に設計された台LSIは高価であるので、こ
のような専用プロセッサによって得られる利益は十分に
は活かし得ていない。
本発明の他の目的は、特別製ではない一般的Icを用い
て特別な目的専用のプロセッサを容易に構成する手段を
提供することで逃る。
このような専用プロセッサを用いるにあたっては、これ
らを一般的な目的のプロセッサと共に単一チップ上に集
積すれば、特に好都合であることが多い。しかしながら
、このような構造は更に特別な設計を必要とし、前述の
ように価格的な不都合の問題が生じるととkなる。
本発明の他の目的は、容易に量産可能な一般的な目的の
再構成可能ICを用いて、一般的な目的のプロセッサと
1つ以上の特定目的のプロセッサと金単−チツブ上に集
積可能にすることである。
特定目的の丸めに設計されたVLSIの他の問題点は、
部品製造の歴史が長くなるほど完成部品の価格と歩留ま
りおよび信頼性が、「ラーニングカーブ(習熟曲線)」
に沿って良くなるという傾向があるのに対し、カスタム
メイドによる特定目的の設計では、−価格や信頼性に顕
著な改善があられれる程充分に長期の期間にわたり大量
生産が行われることは通常はないということである。
したがって、本発明の他の目的は、価格、歩留まりおよ
び信頼性がラーニングカーブに浴って顕著に改善される
よう長期にわたシ大量生産が可能な一般的目的を有する
部品を提供することである。
カスタムメイドす々わち特定目的のために設計されたV
LSIは高価であるとともに、ダートの集積度が比較的
低いという問題点をさらに有する場合が多い。これは、
少量で生産される部品である為にノ4ツキングの集積度
を最適とする為に多くの時間及び多くの費用を費すこと
は、経済的でなくなるという理由からである。
そこで、本発明の他の目的は、ダートの高集積を保持し
ながらカスタムメイドの集積回路の必要を充たすことの
できる集積回路を提供することである。
ゲートアレイは、非常に融通性の高いLSI又はVLS
1部品を提供することができ、さらにゲートアレイは、
ある種の特定な機能たとえば高速乗算器又はクロスバ−
スイッチのような機能を有効に行うことができる。しか
しながら、ゲートアレイは、プログラム可能なシステム
の補助にはあまシ適さないし、ゲートアレイの集積度は
通常プロセッサはど高くない。
したがって、本発明の他の目的は、r−ドアレイよシ高
いf−トの集積度を持ち、プログラム可能なシステムの
補助に一ノー適した再構成可能集積回路を提供すること
である。
比較的大規模で複雑なシステムを数学的にモデル設計し
たい場合、各々のプロセッサのデータ処理能力は比較的
低くとも、高次の並列演算処理によって全体的なデータ
処理は非常に高くなるように大規模配列でプロセッサを
使用することが望ましい場合が多い。しかし、このよう
な配列でプロセッサを使用することは、通常は特定の目
的の為のシステムとして構成されるので今のところ比較
的高価なものとならさるえない。
同様にして、非常に広い多重精密ワード(ここで複雑な
軌道的システムが非常に長期にわたってモデルされなく
てはならない)を用いて長い連続する計算を実行するこ
とがしばしば望まれる。この場合に於ても、既製のシス
テムを適合させると、通常高価格又は低速となるか、又
はこの両方の1間故に、本発明の他の目的は、特別な・
・−ドウエアを設計することなく、多数のこのような集
積口、安価に配列処理及び/又は多重精 密処理を行うよう□にプロセッサを集積回路中に設“x
:::°19,5.。3゜3゜i* irmg要と、さ
れるので設計のサイクルタイムがどうしても長くなるこ
とである。
そこで、本発明の他の目的は、単にソフトウェア及び/
又はファームウェアを変化することによって特定の応用
例にあわせて再構成可能な集積回路を提供することであ
る。
多重処理システム、ダイナミック構造及びマイクロプロ
セッサ構造の背景を一般でに理解する為の参考文献とし
ては以下のものがある。
「多重・プロセッサ及び並列処理J (ad P、エン
スロウ ジュニア 1974 ) : A、アプトアラ
&入メルツア、「テジタルコンピュータ設計の目的」(
1976);C,ミード&L、ニア7ウエイ、[VLs
lシステム入門J(1980):R,クルツ、「マイク
I:I7sロセツサ及び論理設計J(1980):G−
メイヤー、「コンピュータ構造の発展J (1978)
:ペアー、「多重処理システムJ25 1EEE)ラン
ズアクションズ・オン・≧、ンピューターズ1271頁
(1976):サー・ぐ−&カルド、「協働並列7’o
セツサ」、7コンピユ一タサーベイ215頁(1975
):カータシエフ&カータシエフ、「ダイナミック構造
:その問題と解法」コンピュータマがシン78年7月2
6頁;カータジエフ&カータシエフ、「ダイナミック構
造を持つ多重コンピュータシステムJ28  +EEE
トランズアクションズ・オン・コンピューターオフ04
頁(1979):カータシエフ&カータシエフ「80年
代の為ノスーノ9−システム」コンピュータマがシン、
1980年11月号11頁;及びヴイツク「スーパシス
テムに適合可能な構造」コンピュータマがシン1980
年11月号17頁。これらは全てここに参照として示す
持たないような場合、特 定の仕事にあわせた非常に高度なアブリケーショことは
、特に好都合である場合 が多い。しかしながら、このようなアプリケーション言
語がソフトウェア 速度が落、ちることになるのが普通であるし、・・−5
ドウエアで実施されれば1、通常、非常に高価なも°:
二ζ4.9゜。、。2.1や1、。6.664のアプリ
ケーション言語の翻訳にも適合するVLSIプロセッサ
を経済的に与える手段を提供することである。
多重プロセッサシステムの持つ多くの利点は、めったに
有効に利用されていない。これは1つには、単一プロセ
ッサシステムよう多重プロセッサにおいて最適となるプ
ログラムを作れるように7’ログラマーを7訓練するこ
とは、常に困−である為である。したがって、本発明の
他の目的は、多重処理及び単一処理システムの間を簡単
に構成の変更可能なシステムを提供し、プログラマが多
重プロセッサのゾログラミングの利点を活かし得るよう
にその要求するところに徐々に慣れるようにすることで
ある。
多重処理システムの利用に関してのこの他の問題点は、
・・−ドウエ□ア構造に融通性がないという問題である
。多重処理システムの動作の大部分は、ハードウェアの
構造によって決定されるので、また現在のところ提案さ
れそいる全ての7−−ドウエア構造はある型の問題に対
し最適でも他には最適ではないと思われるので、真に一
般的な目的を果たすシステム肌用システム)を実現する
多重プロセッサハードウェア構造はまだ1つもできてい
ないそこで、本発明の他の目的は、再構成可能であって
この為に真に汎用多重プロセッサハードウェア構造とな
り得る多重プロセッサハードウェア構造を提供すること
である。
多くの多重プロセッサシステムに発生するこの他の問題
点と“しては、2つ以上のプロセッサがメモリの同じ領
域にアクセスしようとする時に起こるプロセッサ間の干
渉の問題である。いずれか1つのプロセッサによってア
クセスできるようにメモリの領域に拘束を与えることも
可能であるが、これによってプロセッサ間の干渉9問題
は避けられる一方、多重プロセッサシステム5よって受
ケる大部分の利益を犠牲にすることになる。
したがって、本発明の他の目的は、どのデロセ 、ツサ
もメモリのいずれの頭載にもアクセス可能であシながら
、データの完全性も保持できる多重プロセツサシステム
を提供することである。
マイクロプロセッサ言語と構造(アーキテクチャ)の間
の、またマイクロコンピュータとミニコンピユータシス
テムの間のエミュレーションニハ、現在、比較的高額な
費用がかかる。もしこのエミュレーションをもつと安価
にすることができれば、たとえば単一のプロセスチップ
で達成できるようになれば、より安価な開発及び試験が
可能となり、これによって特定目的に設計され−た応用
システムの使用範囲が広がり、新しい技術に一層早く適
合できるようになる。
本発明の他の目的は、融通性があって効率的なエミュレ
ーションを行うことができる単一 −i ツfプロセッ
サを提供すると、とである。
故障のあった場合をでも性能低下をおだやかにすること
ができるマイクロプロセッサシステムを提供することも
望ましい。こうすることによって、・・−ドウエアに最
−初に生じた重要な誤動作は、チップの機能に影響を与
えなくなり、単にチップの機能をわずかに低下させるだ
けになるので、信頼性及び歩留まシの両方が大巾に改善
される。
本発明の他の目的は、ハードウェアに誤シがあった場合
、壊滅的な誤シとするよシむしろおだやかな機能低下を
おこすマイクロプロセッサシステムを提供することであ
る。
システムは、多重プロセッサが高価であること、これら
の内部接続が困難であること及び大規模なシステム内の
プロセッサ間のインタフェースの為に適当なゾロトコー
ルを特定することが非常に困難であること、などのため
に、今までのところその利点をわずかに利用できるのみ
である。
本発明の他の目的は、所要数のプロセッサを内蔵してい
る多重プロセッサシステムの中に容易に組み込み得るプ
ロセッサを提供することであ。る。
ICプロセッオを多重ノロセッサシステムの中に組み込
み得るようにする場合、さらに生ずる問題点は、外部プ
ロセッサとのインターフェースの為にチップ上に別のハ
ードウェアを準備する必要   ゛があることである。
外部で発生された割込みを受けと夛循壌させる+707
0通信及び外部プロセッサと接続するプロセッサ間°の
通信機能を達成するには、これらのために・、・−ドウ
エアを別々に備えるとすれば非常に多くのハードウェア
を必要とする。
本発明の他の目的は、110通信及び中間にあるプロセ
ッサ間通信の両方を操作できる外部インタフェースを提
供することである。
本発明の他の目的は、各々のプロセッサ内でプロセッサ
間通信を管理する為また外部で発生した割込みを転送す
る為あ両方に割込みを使用できるように作られた割込み
管理構造を提供することである。
プロセッサシステムの動作機能又は構造を変更する必要
がある時に論理を再設計すると費用がかがシ困難である
ばか9でなく時間もかかる。
したがって、本発明の他の目的は、論理を再設計するの
ではなくプログラミングを変更する事によっていかなる
レベルにおいてもゾロセッサのオペレーションを容易に
変更できるようにするととである。
クチャコンパイラ−(architecture   
  ’提供できるようにすることは、非常に望ましいこ
とである。このようなコン7やイラは、プログラムによ
って通常可能な変更に加えて、システムの有効な構成を
プログラムすることを可能処する。しかしながら゛この
ようなコンパイラ−を補助する為には、機能的な内部接
続の再構成を選択的且つプログラムに沿って実行できる
ハードウェアを備える必要がある。         
 □そこで、本発明の他の目的は、アーキテクチャコン
パイラを使用する為に必要な機−能の変更が可能な構造
を持つプロセッサシステムをi供するこ本発明は、単一
チップ上に4つのマイクロプログラム可能な16ビツト
マイクロコンピユータを備えるものである。マイクロプ
ロゲラ゛ミング機能与えられるものである。各々のプロ
セッサは状況(5tatus )  azス、データバ
ス、及U %jl (il ハスと呼ぶ3つの各々の主
要パスに接続される。それぞれのプロセッサは、プログ
ラム可能な内部接続として働く状況パスマルチゾレクサ
をそれぞれ介し接続され号。このようにして状況パス接
続の種々の構成が可能となることで、プロセッサは、(
例えば、4らの1−6ビツトプロセツサーとして)単独
で作動させることも、(例えば1つの64ビツトグロセ
ツサー として)ロックステラl(1ockstep 
)  で作動させることも、パイプラインで動作させる
こともできる。このように、プログラムの融通性を与え
る2つの主要なソースが得られる。即ち、PLA翻択に
よるマイクロプログラミングの融通性であシ、プログラ
ム可能状況パス接続を使用し、各々のプロセッサによっ
て翻訳iれた命令の流れを制御することによ不ノロセッ
サ再構成の融通性である。
プロセッサ制御に於てこめ融通性を利用する為、各々の
チップレベルの命令は、1つまたは2つ以上の特定のプ
ロセッサ又と送られる。故に、プロセッサが(個々のプ
ロセヅ れの中で次々と異るオペレーションを実行する)・9イ
ノラインモードで動作することが望ましい時、各々のプ
ロセッサはそれぞれ命令を受け、パイプラインシーケン
ス内のその位置に適当なオペレーションを実行する。ロ
ックステップ処理の場合、1つのプロセッサは、(シー
ケンスその他の制御する)マスタープロセッサとして指
定され、他のロックステップ型プロセッサは全て同時に
制御される。これらの再構成の種々のモードもまた組合
゛せ得るので例えば、1つの一ツゾは4つの独立な16
ビツトプロセツサ、2つのパイプライン型32ビットノ
ロセッサ、1つの48ビツトプロセツサ(3つのロック
ステップ型16ビツトプロセツサ)及び1つの独立16
ビツトプロセツサ等を含むように再構成される。制御パ
スが複数の関連のない命令シーケンスを運搬する為に区
分され得るので、単一の″扉]御記憶管理を用い仲裁(
arbltrat尋  “され制御パスへの構成が行わ
れる多重割込み階級組織(mu目目evcl 1nte
rrupt hierarchy )  が使用される
。(1つの外部割込み管理及び2つの外部状況ボート及
び2つの外部r−タポートを含む)外部インターフェー
ス制御によっても、2個以上のRICチップ上のプロセ
ッサを一緒に前に示したような様々なモードで連結する
こと、が可能である。NK、外部インターフェース制御
もまた外部メモLr10装置その他へのアクセスを制御
し\ ている。
どのプロセッサによってもアクセス可能なRAMを充分
量チップ上′に用意する。しかしながら、各々のプロセ
ッサもまたチップ上のRAMの主要な区域に直接アクセ
スしている。全てのプロセッサは、RAM内のそのノロ
セッサ用の優先区域に並列にそれぞれ直接アクセスさ九
得るが、他のRAM内の区域にもアクセスする為にはプ
ロセッサhy’−タ・fスを使用しなくてはならないの
で、このよつl 7 クセxを+4+攻あるhは調整す
る必要がある。
z゛ンrアyノ 11angLI+) )  及びデッ
ドロック(deadlock )  を防ぐ為の設計手
段が存在する。
第1には256の優先段階が使用され、故に優先性の一
致が起こらないようにする。第2に)全ての割込み(1
nterrupts )が−列に送られて、確認が行わ
れる。第3に、実行を進める為に必要とされる資源を全
部は手に入れることができなかったプロセッサはいずれ
も、予め入手してあった資源を全て放棄し、必要な資源
が入手できるように々るまで待機する。
このような重要な構成要素に加えて、設計の仕様を完全
に満たす為には多数の従来の部品も使用さnる。例えば
各々のプロセッサけ、ALU、バレルシフター、メモリ
マツパ−、マイクロシーケンサ等を有している。
本発明による利点は、前述した本発明の目的1 。
全て解決するものであり、他の利点も当−分野に通常の
知識を有するものであれば明らか÷ある゛と考・える。
例えば、構造の大部分(例えば全部で4)’のノロセッ
サ)は同じものを複製しで使えばよいので、はとんど4
のファクターでRICチップの一/’sL Pウェアの
配置を考える時間が低減される。    □もちろん1
ゾロ七ツサは16ビツトゾロセツ?1である必要はなく
、変わりに32ビツト、8ビツトその他であってもよい
。同様圧して、チップ上のプロセッサの数は、4である
必要はなく3でもまた5以上でもよい。実際は、最大の
プロセッサ数は、製造技術によって単に拘束されるので
あって゛、よ)微細な加工が実用化すればたくさんの数
のプロセッサをワンチップ上に作ることは非常に望まし
いと予想される。このような場合、内部接続ヤパス及び
ノロトコールは、このままでよい。
もちろん、プロセッサが16ビツト以外の場合には、そ
れぞれのパスの規模は、それ相当に変化させなくてはな
らない◎ 本発明は、複数のゾロセッサ、それぞれが上記プロセッ
サの全てに接続される複数の/9ス及び上記のゾロセッ
サの各々に接続され、上記プロセッサを選択的に再構成
すること挺よって、上記プロセッサがロックステップ又
は独立して動作することを可能にする手段とを有する、
モノリシック基板からなる再構成可能集積回路を提供す
るものでおる。
また、本発明は、複数のプロセッサと、それぞれが全て
のプロセッサに接続された複数のパスとを有するモノリ
シック基板からなり、前記パスは複数の線を持つ状況パ
スを含み、上記状況パスの上記線は、同期及び演算集合
線(arNhmeticlinkage 1ines、
)を含む複数ツバストを有し、各各の上記プロセッサは
、それぞれの上記デロセツ、す及び上記状況パスに接続
される別々の状況パスマルチプレクサを有し、上記別々
の状況パスマルチプレクサは、上記状況パスの選択され
た線に対し選択的に且つプログラムに沿って接続又ぽ割
込みを行い、さらに上記それぞれの〈ロセツサを上記状
況パスに選択的に接続していて、これによって上記各々
のゾロセッサを上記状況パスを通し上記プロセッサの隣
接する1つに選択的に且つプログラムに沿って接続する
ようになった再構成可能な集積回路を提供するものであ
る。
さらに1本発明は、複数のプロセッサと、それぞれが全
部の上記プロセッサに接続される複数のパスを有するモ
ノリシック基板からなり、各々の上記プロセッサは、上
記それぞれのプロセッサに与えられる命令を受けとる為
に接続されるダイナミック論理配列(DL^)を有し、
上記DLAは。
^NOマトリクスと、ORマトリクスと、上記^NOマ
トリトスを上記ORマトリクスに接続する中間線と、八
NO及びORマトリクスの最初の1つに接続される複数
の入力線と、上記AND及びORマ) IJクスの他の
1つに接続される複数の出力線とを有し、上記DLA内
の上記AND及びORマトリクスの少くとも1つは、上
記のそれぞれのマ) IJクス内の区画を規定する為に
行列で配列され、各々の上記区画は所定数の能動素子が
含まれるように選択的に配列され所望の論理機能が行わ
れるようになってお夛、さらに、複数の制御線が設けら
れ、各々の上記制御線は、1つ又はそれ以上の上記区画
内に配置される上記能動素子に接続され選択的に作動可
能にしたり作動不可能にしたりして、上記DLAが、上
記制御線の状況に応じて選択された論理機能を行なうよ
うにし、これによって上記DL^は上記それぞれのゾロ
セッサに与えられた命令を上記制御線の状況に応じて選
択的に翻訳するように構成された再構成可能な集積回路
を提供するものである。
本発明はまた。複数のプロセッサと、それぞれが上記プ
ロセッサの全てに接続される複数のパスと、RAMメモ
リとを有するモノリシック基板がらなシ、上記RAMメ
モリは複数のRAMメモリモジュールを有し、上記パス
は複数の線を持つデータバスを有し、さらに複数のパス
制御ユニットが設けられ、各々の上記バス制御ユニット
は、上記プロ、セッサの1つ、上記RAMメモリモジュ
ールの1つ、および上記データバスに接続され、上記バ
ス制御ユニットは選択的に上記プロセッサを。
上記データバスに接続するか又は上記の対応するRAM
メモリモジュールに直接接続するようになった再構成可
能な集積回路を提供するものである。
本発明はまた。複数のプロセッサと、それぞれが上記プ
ロセッサの全てに接続される複数のパスとを有するモノ
リシック基板からな!I1.それぞれの上記プロセッサ
を再構成する手段が設けられ、これによって各々のプロ
セッサは同一の再構成可能集積回路上の1つ又は2つ以
上の他のプロセッサといっしょにロックステップ形式で
又は独立して1選択的且つプログラムに沿って作動でき
るようになった再構成可能な集積回路を提供するもので
ある。
さらに、本箋明は、複数のプロセッサと、それぞれが上
記プロセッサの全てに接続される複数のノ譬スを有する
モノリシック基板からなシ、上記パスは制御パスを含み
、この制御パーは命令。を転送する線と割込み信号を転
送する線とを有し、各々の上記割込み信号は、優先性及
び上記プロセッサの中の割込み先プロセッサ(Inte
rruptee pro−aessor )  を示す
ビットを有し、この上記割込み信号の1つが上記命令の
シーケンスを開始させるようになっており、各々の上記
プロセッサは、上記制御パスに接続し割込み信号を受取
る割込み管理回路(1nterrupt manage
r )を有し、この割込み管理回路が上記割込み信号の
連続する1つをそれぞれテストし、上記割込み管理回路
を持つ上記それぞれのプロセッサが上記連続する割込み
信号によって割合て先として指定されたか否かを決定す
るようになっており、上記割込み管理回路は。
現在、上記プロセッサで実行される別々の命令シーケン
スのいずれかを開始させた上記割込み信号の1つの優先
性を記憶し、上記割込み管理回路は、各々の上記プロセ
ッサにアドレスされた上記割込み信号の各々連続する1
つの優先性と、現在、上記プロセッサで実行されている
別々の命令シーケンスのいずれかを開始させた上記それ
ぞれの割込み信号の優先性を比較し、それに相当するコ
ンチクストスイッチ出力(context 5w1tc
h output )を与えるようになっており、各々
の上記側々のデーロセツサは上記割込み管理回路の上記
コンチクストスイッチ線に接続されるスケデューラ(s
eh・−duler ) ’Fr有し、上記スケデュー
ラは、上記コンチフストスインチが新しく受取った割込
み信号がより高い優先レベルであると示す時にいつでも
、現在上記対応するプロセッサで実行されている上記命
令シーケンスの交換を行なうようになった再構成可能な
集積回路を提供するものである。
以下1本発明に関し実施例を用い図を参゛照しながら詳
細に説明する。
第1図は、再構成可能1c(以下FiRIcと略す)の
!ロック図を示す、PROからPR3tでの4つのプロ
セッサは単一チップ上に形成されており、全てのプロセ
ッサ間を接続する為、3うのパス14.52及び56が
設けられている。各々のパスに対応して外部インターフ
ェース76.74と75、及び72と73が設けられ、
またオンチップRAMメモリ66及び制御記憶回路38
(第2図)も形成される。より詳細な配置図は、第2図
で示されている。第2図は、1つのプロセッサPR3の
全体と、それぞれの型の外部インターフェースのうち1
つ及びパス線とオンチップメモリの一部を含む再構成可
能ICの部分的フロアグランヲ示す、各々のプロセッサ
の割込み管理回路12は、制御パス14上に現われる割
込みを常に監視している。プロセッサPR3にアドレス
された割込みだけが、PRa内の割込み管理回路12に
よって認識される。このような割込み信号はPRa内の
スケデューラ16によって連続して比較され、これらの
信号の優先レベルがプロセッサPR3で現在実行中の命
令シーケンスの優先性より高いかを調べる。これが高い
場合であれば、新し−い割込みが導入した命令の流れ(
”このような命令の流れは「プロセス」と呼ばれる)の
実行の開始が必要である。スケデューラ16は、対応す
る出力を制御DLA22に与え、こればROM命令レジ
スタ18又はRAM命令レジスタ20を作動させるので
制御DLA22が「プロセス」の中に含まれる命令のシ
ーケンスを受けとシ始める。
制御DLA22は、以下に示すようにその構造上の改良
によってバッキング集積度が非常に向上されている点を
除けばPLAと同様に機能する。したがって、制御D″
LA22は、その内部のANf)マトリクスにミ/ター
ム(mlnterms )  を発生し、次にORマト
リクスがこれらのミンタームを次に選択された論理和出
力に変換する。制御DL^22と隣接するの、は、・フ
ィードバックプロ゛ツク24である。これを通っていく
つかの制御DL^22の出力dフィードバックされ、D
LA22の入力へと接続される。この意味で一定の状況
による機械機能がDL^22に与えられるので、DL^
22は例えばある高レベルの命令を低レベルの命令のシ
ーケンスに翻訳することが可能である。
OL^22は、デコーダ区域25及び26に接続され、
これによってDLA22の出力はALU28、バレルシ
フタ30、レジスタファイル32、メモリマツパ−34
等に対するハードウェア命令として選択される。DL^
22の出力は、またマイクロシーケンサ36に接続され
、これによって制御パス14及び制御記憶回路38に対
するアクセスの制御を行う。マイクロシーケンサ36は
制御パス14上に適当な信号を送ることが可能で制御記
憶アドレスレジスタ40を通って制御記憶回路38にア
クセスしている。制御記憶回路38から呼び出され九デ
ータは、制御記憶データレジスタ42を介し制御パス1
4に出力され、更に、もしレジスタ18が割込み管理回
路12によって作動されている場合には、ROM命令レ
ジスタ18内に入力され、制御DLA22のAND区域
に対スル入力として接続される。メモリマツパ−34、
レジスタファイル32、バレルシフター30、ALU2
8%シフトレジスタ44及びフラグレジスタ46のオペ
レーションは、マイクロプロセッサ技術としては既知の
従来の主要オペレーションに従−行われる。
エンド・アラウンド・ループ54を含む状況パス52も
チップ上に形成される。状況パ゛スは、状況マルチプレ
クサ45及び5oを介しそれぞれのプロセッサに接続さ
れる。各々のこのようなペアの状況マルチプレクサはプ
ロダラム可能な相互接続として作動する。状況パス52
及び54の線は、zf イf yインモード中の隣接す
るプロセッサ藺ニ同期を与える為に又はロックステップ
モードでの隣接するプロセッサの間に完全な直結を作フ
出す為に使用される。単独モードでは、このような連結
はまったく必要ない。1対の状況マルチブレフサ4s及
o:5oFiプログラムされて、新シい% −ドが入っ
てくるタイミングごとに適当な状況パスの相互接続が行
われる。
テロセラ? P R3は、メモリマツパ−34t=介し
てRAMメモリ66にアクセスしている。メモリマツパ
−34からの線は、状況パス52を54と交叉しており
、パス制御ユニツ)58−’Cy’−Jlz+x56と
インターフェースしている。パス制御ユニット58は選
択的にプログラムに沿って作動するので、メモリマツパ
−34がらの出力は、プロセッサPR3が好ましくはア
クセスするRAMメモリモジュール6oに、データレ′
ノスタ62及びアドレスレジスタ64を通って直接接続
するか又はデータバス56を通ってチップ上又はチン!
外のメモリのどこか他の領域に接続される。RAMメモ
リ66の他の3つのモデュール(図示せず)のうちの1
つにアク゛セスする必要がある場合、このアクセスはデ
ータバス56を介し、他の3つのメモリスケデュラーユ
ニット68のうち適当な1つと接続される。各々のメモ
リスヶデエーラユニット68は、先に来たものから先に
サービスを行う方法に従ってメモリアクセスの要求をス
ケデユーリングし、制御レジ□スタフoを通って相当す
るメモリモデュールへアクセスするよう制御する。
更に、データバス56は外部データポート72及び73
(第1図参照)に接続され、これを通して各々のプロセ
ッサは、チップ外メモリにアクセス可能となっている。
同様にして、状況パス52及び54は、外部状況ポー)
74及び75に接続されるので、チップ外プロセッサは
、多重チップ間のロックステップ及びパイグラインのオ
ペレーションで同期するようになり、制御パス14が外
部割込み管理回路76に接続されるので1.チップ外プ
ロセッサとの間で命令の送信受信を行うことができる。
制御記憶回路38は、それぞれの制御記憶モデューJL
制a器96によって制御されるモデュール78に分割さ
れている。RAMメモリ66も同様にしてモデュール6
oに分割されている。最後に複数のパッド接続領域8o
が外部との接続の為にチップ周辺に設けられている。ま
た84ビンパックージを使用することが好ましい。
前述した内容は、再構成可能集積回路の機能及び構造を
示す概略的説明である。チップに関するさらに詳しい説
明はいくつかの実施可能な応用例としての提案を行いな
がらこれから説明する。
これからさらに詳しく説明する再構成可能な集積回路の
第1の特徴は制御パスである。制御パスの重要部分の役
目は、制御DLA22によって行われ、このD’LAの
構造及びオ(レーションを第1に説明する。各々のプロ
セサに用いられるプログラム可能な論理配列PLAは大
規模なものであることを必要とする。本実施例では、4
0 X400×120のPLAを必要とする。現在の製
造技術では、この程度の複雑なPLAは、非経済的な程
に広い面積である1 0.000平方ミルのオーダの領
域を占めることになる。しかしながら、プロセス技術の
改良が必要な領域を非常に小さくしている。更に、上記
のような従業のPLAのかわりにDLA(ダイナミック
論理配列)を用いること、でかなりのサイズに関する改
良251可能となった。、量的に多い用途には、マスク
プログラムによるDLAを用いることがζましいが、初
期の開発段階ではフィールドプログラム可能な(又は電
気的に変更可能でさえある)DLAを使用すると、需要
に対する融通性を拡げることができる。集積度に関する
厳格な最高の限界は所望のミンターム又はマクスターム
(minterm又はmaxterm )の結果にかか
つているが典−的なP、LAはトランジスタ集積度の1
01sを有しているので、DLAの使用により4倍の改
良がミンタームを「折りたたむ」ことによって容易に可
能となる。ダイナきツク論理配列DLAは、領域をもつ
と有効に利用する為に改良されたP’LAとして簡単に
考えることができる。そのかわりにDLAを回路レベル
で再構成可能にしたPLAとして考えることもできる。
DLAによって多重機能をPLAで実施できるようにな
るが、一度に1つの機能しか利用できなくなるという拘
束が与えられてしまう。DLAは2   ゛から5倍の
率で領域の有効利用が改善される。Cマルチプレクサと
共働する)DLAはまた単一の機能ではなく多重機能の
為にPLAの入力及び出力を使用可能にすることができ
る。DLAは、単一機能を実行する回路を作動させ一方
この他の機能を実行する回路をオフにする方法でPLA
の部分を絶縁することによってこれを行っている。
DLA22内の能動部分の選択は、2つのデコーダ25
及び26によって行われる。これらの2つのデコーダに
よってDLAの制御線が作動されることに従って、C)
LAが作動し、所定の論理機能を形成する。もちろん、
DLAのいくつかの部分はこれらの制御線によって制御
されていない。この考え方は、PLAにおけるN0Rf
−)仕様及びNANDゲート仕様の両方に適用可能であ
る。
第3図に示すように、NMO3技術を用いてのPLAの
N0Rf−1仕様においては、ORマトリクス内にr−
トを形成するトランジスタと共に^NOマトリクス内に
r−トを作るトランジスタは、共通して接地されるソー
スを全て有している。
特定の機能を作りだすトランジスタのソース力!フロー
トされている場合1回路は、これらのトランジスタが取
り除かれたかのように働くのでその機能は働かなくなる
。NORゲートDLAの背景にある基本的思想は、機能
を行う為の全てのトランジスタを制御線に接続し、機能
を働かせる時に制御線は1地され1機能を働かせない時
にフロートにするということであ石。DLAで多重機能
を作りだす為には、各々の機能を作りだすトランジスタ
のソースを、その機能に対応する別々の制御線に接続す
る。第3図は、典型的なNORゲートDLAを示してい
る。通常のPL^LAは、実線で示され、DLAを作る
為の追加的゛回路は、点線で示されている。DLAは破
線によって示されて区分されている。種々の区分は、P
lから、R8tでの表示が付されている゛。制御線C1
が論理1である場合、区分P1及びP5に於る回路が作
動され、出力E及びFは、入力A、B及び日の関数とな
る。制御線C1が0レベルである場合、E及びFの出力
は、いずれの入力の関数としても制御されることもない
。追加の回路もまた出力E及びFを入力τ、百及び日の
関数として制御される他の機能を作り出す為にP3及び
P7の区域に追加することができる。
同様にして、第3図の制御線C2は区分P4及びP8に
於る回路を作動又は非作動状態にすることができ、追加
の出力機能を与える追加の回路を区分P2及びP6内に
追加することができる。  。
この回路は、あらゆる数の区分に対しても一般化するこ
とが可能であって、この区分は様々なサイズが可能であ
る。またANDマトリクスは、ORマトリクスからは分
離して制御可能である。
第3図は、スタティックグー十PL^に基づいて改良が
行われたDLAを示しているが、明らかなように、上記
の説明はダイナミックダートPL^に基づ(DLAにも
応用することはできる。ダイ′ナミツクf−10LAを
作る為に必要な追加の周辺制御回露は、特にPLAが大
規模である場合でも非常にわずかなチッグ領域を増加す
るだけで足夛るO  − 第4図はNANDゲートD LAを示す。多重化された
機能の選択された1″つを作り出す為にPLAを区分に
分けるという考え方はそのままである。
変わったのは所望の機能を作りだす為のダートを゛絶縁
する方法に関してである。N0Ry−トを作り出す為に
、(共通ソースの)電圧を制御する方法が使用される。
NANDグー、トDLAでは、電圧制御されたNORゲ
ートDLDLAし電流はデュアルで流れる。NANDグ
ー)DLAにおいては、所望の機能を作り出すトランジ
スタ以外の全てのトランジスタは制御線によって制御さ
れる電流バイパスによってう回(シャント)される。所
望の機能を作りだすトランジスタのみが上記のようにう
回されることはない。マクスタームiりむしろミンター
ムの結果を発生するDLAを構成することも可能である
が領域の経済性は同じままで翻訳の為にDLAを使用す
ることによって、各各のプロセッサの翻訳システムは、
DLAのオペレーションのモードを選択することによっ
て容易に再構成可能となる。より高価であるフィールド
プログラム可能構造も使用者の開発にとり有用であるが
、DLA22はマスクプログラムによるものを使用する
ことが好ましい。
このように、制御DLA22を使用することで、各々の
プロセッサ内で必要とされる複雑なマイクロプログラミ
ング機能を得ることができる。マクロ命令を入力として
DLAに与えているノ9スについて以下に説明する。
DLA22は、また単にリアルタイム入力をDLAの入
力線の1つに接続し、その入力とDLAの適当な出力を
へNO接続することによってリアルタイム機能を提供す
る為に使用されている。
制御記憶回路及び制御パスの構造及び使用する割込み制
御システムにつき以下説明する。
ある実施例に於ては、中央制御記憶回路は、4つの全て
のプロセッサにアクセス可能で共用が可能である。ここ
で示す好ましい選択例では、制御記憶回路38のどの部
分にも各々のプロセッサがアクセス可能な−ttにして
おきながら、プロセッサの中の制御記憶回路3臀は、プ
ロセッサの中のデータ記憶部と同様の配置で、配置され
ている。
4つのマイクロシーケンサ36は、並列アクセスが可能
でないが、単に低い平均アクセスタイムは可能である。
もちろん、〜イク・シーケンサ゛36は(パス制御エニ
ット38と同様に)並列アクセスが可能なようにも構成
されるが、これにみあうだけの利点は得られずに、追加
の回路によって複雑性は増すことになる。中央共有可能
制御回路は。
以下のような利点を与えている。多重プロセッサで使用
されるコードは複製されないので、メモリ領域をより有
効に利用することができる。各々のプロセッサに与えら
れる制御記憶量を要求に対して、より良い具合に合わせ
ることが可能になる。
メモリを中央に集中できるのでフィールドグログラミン
グが実用的である。もちろん、中央制御記憶回路にアク
セスする単一のチャンネルがシステムの障害となるのを
避ける為に、制御記憶回路に記憶される命令のレベルを
充分に高くして、各々のプロセッサが制御記憶回路から
受けとった各々の単一命令を、実行する為に平均して4
又はそれ以上の完全クロックサイクルを要するようにし
なぐてはならない、現在のマイクロプロセツサのン7ト
ウエア構造に於ては、1つのアッセンブリ言語命令には
典型的に平均して5ないし1oサイクルを要するので、
命令のレベルに関する上記の拘束は、容易に満たされる
マイクロシーケンサ36は、ROMメモリ内に記憶され
るマイクロ命令を実行するシーケンスを制御する為のア
ドレスシーケンサである。シーケンス的ナアクセス機能
に加えて、このマイクロシーケンサに14ピツトの範囲
又は16にワードの範囲内であらゆるマイクロ命令を条
件付きで分岐して込る。またマイクロサラルーチン回帰
連結及びループ機能を与えているラスト・イン・アンド
拳ファースト・アウト形式のスタックをこのシーケンサ
が提供している。ここでは、4から8のレベルのマイク
ロサブルーチンがある。アドレス範囲内のマイクロ命令
ループカウンタも有している。
マイクロ命令ケ/す3゛6の実施例につ−てのこの他の
詳しい説明は、当分野に通常の知識を有する者には明ら
かであると考え、さらに詳細を第47図に示すにとどめ
る。
中央制御記憶回路構造は、中央共有制御パスを含んでい
る。中央制御パス14は4つのプロセッサPR□からP
H3の中の制御記憶回路38の使用の仲裁、を行い、プ
ロセッサからのアドレスt[送し、制御記憶回路3Bか
らのマイクロ命令を、複数のプロセッサに転送してhる
。制御パス14は。
チップの長さと同じ位の長さで設けdれた73本の線を
有している。故に、パスは高価な資源であってパスの帯
域をフルに使用できるようにすることが望まし込。即ち
、制御パスの帯域は制御記憶回路38のスロードッグ及
びプロセッサのマイクロ記憶アクセス率とほぼ一致する
本実施例に従った制御パス14の構造が第5図に示され
る。制御パス14は制御データバス82゜アドレスバス
84、割あてパス(destlnatlonbu@) 
86 s割込みパス88及びデータルーチンパス90を
有している。制御データバス82は、制御記憶回路3B
からとってきたマイクロ命令をfロセツtPRoからP
H1までに転送している。
このノ者スけ40本分の線の広さである。アドレスバス
84は、!イクロシーケンサ36によってそれぞれのプ
ロセッサ内で発生されたアドレスを制御記憶回路38に
送シ、マイクロ命令をとりだしている。以下に説明する
ように、アドレスバス84もまた割込み期間中は優先性
の情報を運んでいる。このパスは14本分の線の広さで
あって。
制御記憶回路38に16にワードのアドレス領域を確保
している。割合でパス86はプロセッサが制御記憶回路
38にアクセスする時に込つでも使用され、1つまたそ
れ以上のプロセッサPRQ−PR3及び外部割込み管理
回路76のいずれかで現在アクセスされている制御記憶
回路38内のアドレスに記憶されるデータを受けとるか
を知らせる。割合てパス86は、割込み期間中に使用さ
れプロセッサPRQ−PR3及び割込み管理76のらち
のいずれが現在の割込みを受は取るか(即ち割込゛み先
1nterruptae )を確定して−る。割当てパ
ス86は線5本分の広さである。割込みパス88は割込
みのソースを転送するのに使用される。
このパスは、割込み先プロセッサに対し割込みが手元に
ある中で最も高い優先性のタスクであるかどうかを知ら
せる為に((即ち割込み先プロセッサが割込みを受入れ
るかを知らせる為に)使用される。この型の応答では、
パイプライ/型又はロックステップ型オペレーションを
必要トシてプロ。
セスを迅速に設定(又は延期)する必要がある。
割込みパス88は5本分の線の広さである。データルー
チンパス90は制御記憶回路92によって制御され、P
RoからPH3のうちの1つ又は2つ以°上のどのプロ
セッサが現在制御パス82で転送中のマイクロ命令を受
けとるのを示す為に使用される。データルーチンパス9
0は5本分の線の広さである。線OR0−DR3は、R
OMからとり出されたワードの割当て通りに又は割込み
に応じてPROからPR3のうちの対応するプロセッサ
を指定する為に使用される。線DR4はROMからとり
出されたワードの割当て又は割込みに応じて外部割込み
管理回路を指定するために使用される。
第6図に示されるように、制御記憶管理回路92は1つ
の中央制御器94及び4つの制御記憶モジュール制御器
96から組織される。第7図は、制御記憶管理回路−9
2のオペレーションを示す流れ図である。制御記憶管理
回路・92が作動される時、この回路は、パスss’s
s4からそれぞれ割当て及び制御アドレスの情報を受取
る。次に回路は、アドレスバス84で受けとったアドレ
スのうちの上から2つの最高位ピットの示す内容に従っ
て制御記憶回路38内の4つの制御記憶モジュール78
のうち1つを選択する。アゼレスは更に適当なモジュー
ル制御回路96に送られる。第7図の流れ図に示す上述
の機能は、中央制御回路94によって実行され、残る機
能は、適当なモジュール制御回路96によって実行され
る。モデュール制御96はここで要求されたアクセスの
為のアドレス及び割当て先を待ち行列にしてFIFOの
オーダーで要求された制御ワードを読み出す。
制御ハス14による仲裁は、プロセッサPROからPR
,30間を花輪状に結ぶパス作動線98(第5図参照)
を用いて行われる。あるプロセッサが制御パス14を支
配するとき、とのプロセッサはフルの1サイクルのみの
量制御パスを使用する。
(アドレスを送る為の第1フユイズ、及び連続する必要
はないがデータを受けとる第2フエイズ)。
第1フエイズの間、パス14を制御するプロセッサはパ
ス作動線98の電位を低い状況にしておく。
アドレスが送られた後、このプロセッサは、パス作動線
98の電位を上げる。線は花輪状に連結しているので、
パス作動回路98の高論理状態は1つのプロセッサだけ
によりた。たちに受けとられて、このプロセッサは制御
メモリへアクセスするか又はパス作動線98の花環状の
連結の次の連結の電位をあげるかのうちいずれかを実行
する。あるプロセッサが制御パスを使用していてパス作
動線が′循環してそのサイクルの間にこのプロセッサに
戻ってくる場合(即ち他のプロセッサがいずれも制御パ
スを使用する必要のない時)パスを利用しているプロセ
ッサは信号をうけとり、制御パスの同期を適正に保つ為
、信号を改めて発生する。制御パスのアクセスにはラウ
ントロピン(round −roblnjlOち優先性
を決めないで)仲裁が行われる。
従来の型式と同様に、アドレス準備線100及びデータ
準備線102を使用してアクティブなプロセッサ間及び
/又は制御記憶管理回路92間での通信に同期を行う、
この他のデータ準備線及びアドレス準備線を使用して割
込みの転送期間中のアドレスとデータの間の伝達を行つ
最後に、制御パス14は、花輪状に連結する、割込み準
備線104も有している。花輪のように連結することに
よって割込みを送ろうとしているプロセッサ間でラウン
ドらビン型の仲裁を行っている。プロセッサが制御パス
14を支配して、ただちに割込みを発生する時、プロセ
ッサは、花輪状に連結する割込み準備線104にゼロま
で引き下げる信号を送る。割込みを送るプロセッサは制
御アドレスバス84を支配する岐に割込みパス88を引
き継ぐことができる。割込み元プロセッサ(inter
rupting processor )  が割当て
パス86を支配する時、発生した割込みの割当て先であ
る外部割込み管理回路76上のプロセッサに対応する割
当てパス86内の線の電位を上げる。割込みを発生した
後、発生元のプロセッサは、自分が割込みの発生元であ
ることを割込みパス8i上如示し知らせる。
割込みが開始された後、他の割込みは少くとも2バスサ
イクルの間禁止される:1サイクルは割込みを送る為で
1サイクルは、受は取シ側プロセッサ(割込み先1nt
erruptes・)からの応答を発生元プロセッサ(
割込み元1nierruptor )が受けとる為であ
る。割込みをバッファすることだけが必要な場合、割込
み先の割込み管理回路は割込みのプロセスは可能で1か
ら4の追加パスサイクルが遜き゛るまで他の割込みを受
けとる用意ができている0割込みの受は取り側がロック
ステップ又はノ臂イデラインモードで連結するようにな
った場合、即ちコンチクストスイッチが必要とされる場
合、割込みバス88は、必要なコンチクストスイッチ管
実行する為に使われるタイミングの間ブロックされる0
コンチクストスイツチの長さは、割込まれたプロセッサ
内にどれほどのコンチクストが(即ちレジスタの内容、
ALU状況尋)保持されているかに左右される。以下で
説明する通シ、いくつかのコンチクストスイッチはプロ
セッサのフンチクストを本質的に完全に変更することが
必要である一方、他のスイッチは最小の変更のみを要す
る。最も短いコンチクストスイッチでも通常3父はそれ
以上のバスサイクルを必要とする。この遅延が割込み信
号の帯域幅を限定するが、割こみがフルに有効な帯域幅
を占めるとは予想されないのでこの方法は適していると
思える。この遅延は長い実行を通しての割込み信号の運
行の平均したレートを落とさずに突然の割込みの発生を
スムーズにする目的を果たしている。
割込みは、それぞれの命令のシーケンス(即ち各々の「
プロセス」)を開始する為に使用される。
上記で示した様に、割込みは優先レベルを特定し1.7
” −タル−fンパス90内を移動しどのプロセッサが
アドレスされるかを特定する4ビツトコードを有してい
る0もし割込みによってアドレスされる全てのプロセッ
サが有効な状態にあるならば、(即ち、これよシ高い優
先性のタスクは手元にない場合)fロセス内の命令シー
ケンスの実行が開始される。もし、実行すべき命令が制
御記憶回路38に存在している場合、この命令は適当な
マイクロシーケンサ36によって次々と読出される。
実行すべき命令がRAMメモI)66へKある場合・こ
の命令は、適当なメモリヌケデューラユニット68及び
バス制御ユニット58によってRAMメモリから次々と
読出される。各々の影響をうけるプロセッサ内のメモリ
マツノ4′−3−4はこれらの命令をRAM命令レジス
タ20を通しDLA22に転送する。DLA22けこれ
らのRAM命令をROMアPレスにする翻訳を行ってい
て更にこれらのROMアPレスはマイクロシーケンサを
介してアクセスされている。また、RAM命令は、DL
^22によって直接デコードすることができる。ROM
内に記憶される制御ワードはプロセッサ仕様フィールド
を有していない。しかし、制御ワードは、唯一固定され
た定型部分がオデコード(op cod・)である短い
ピットのストリング(好ましくは62ビツト)である。
RQMから呼びだされた制御ワードがプロセッサのDL
^22に回帰され、制御ワードと共にRAMから受取っ
た命令によって特定されるあらゆる定数及びオイランド
がDLA22によって通訳される。DL^は、OPコー
ドと同時に例えばオ(ランドフィールyt定数フィール
ド、マイクロシーケンサ命令、メモリインターフェース
命令、状況バス命令、(命令が割込みである場合の)割
合て及び優先性データ、割込み管理回路の制御の為の命
令、スケデューラ、バレルシフタ等であるオプコード及
び制御ワードに従って残シの制御ワードフィールドを通
訳する〇命令ワーrの適当な部分が更にデコート9され
、デコーダ25及び26に制御されるDL^にょっそ適
当なハードウェアに直接接続される・もちろん、このマ
イクロ7’oグラミンダ通訳構造では、ハードウェアで
の実行以前にこれ以上のステージを持つ通訳機構を用い
ることも可能である。例えば、制御記憶回路38から読
出された命令は通訳され、制御記憶回路38又はRAM
66から読みだされた他の連続する命令の実行を要求す
るようになる。更に、チップ外メモリモ命令の実行に使
用される。例えば、アプリケーション言語から成る単一
命令が非常に長々しいアブルーチンを示している場合、
制御記憶回路38内の相当する制御ワードは、通訳され
て、RA、Mメモリ66の特定ブロックにあるサブルー
チンka−F’し、引き続べそのサブルーチンの命令を
実行せよという命令が出る。もちろん、チッグ外の記憶
容量に記憶される命令はと夛だされ以下にさらに詳しく
のべるように割込み管理回路76及び/又は外部データ
ポート72及び73を通って実行される。
割込みプロトコールに関するこれ以上の説明は以下で示
す。以下で示すRICを異るモードのオペレーションに
変更する再構成機構は制御ノ々スのオペレーションに関
連づけて説明する。この点に於て、プロセッサPRQ−
PR3の各々の構造についてもさらに詳しく説明する。
第2図かられかる通シ、各々のプロセッサは、DLA2
2及び共働デコーダ25及び26に加えて、フィードパ
。ツク線24及び命令レジスタ18及び20、割込み管
理回路12、ヌケデューラ16、メモリマツパ−34、
スタック/レジスタファイル32、ノ櫂しル(barr
el )  シフp30、^LU28、シフトレジスタ
44及びフラグレジスタ46e有していゐ、後半の構成
部は従来通りであるが、便宜上さらに明らかにする為に
詳細に説明する0例えば、第9図は、^LU28をさら
に詳細に示している。2本の・々ス108及び110は
、プロセッサ内の他のブロック例えばノ々レルシフタ3
0からの入力として提供されている。このパスはそれぞ
れの入力ラッチ112及び114′t−介して、p(伝
播)機能ブロック116.K(遮断)機能ブロック11
8’、C(桁上げ連鎖)ブロック120及びR(結果)
機能ブロック122に連続して接続される。伝播機能ブ
ロック116は、P制御線124によって制御され、速
断ブロック(kill block )  はに制御線
126によって制御され、結果ブロックはR制御線12
8によって制御される・これらの制御線はDLA22か
らALU28までを接続している。更に、桁上げ入力(
carry In ) 線130及び桁上げ出力(ca
rryout )線132が提供されていて、Cブロッ
ク120t−状況マルチプレクサ48及び50に接続す
る。(状況マルチプレクサ48及び、50のオペレーシ
ョンハ、状況パスプロトコールに関連して以下でさらに
詳しく説明する・)Rブロック122の出力はデュアル
パスであって、フラグ発生論理134を通って出力ラッ
チ136に接続されてい  、る。フラグ発生論理13
4は状況とエラーの情報を計算しDLAを介しプログラ
ム状況ワードを提供している。(’DL^22内の)フ
ラグ発生論理134は、フラグレジスタ46に接続され
、出力ラッチ136はシフトレジスタ44に接続される
次にシフトレジスタ44はパスA及びB(108及び1
10)を通ってレジスタファイル32に接続されるか又
はメモリマツパ母−32を通してノ々ス制御ユニット5
8に接続されるので、ALUの出力は、データパー56
内を転送されるか又は、将来のオペレーションで使用す
る為にプロセッサ内に記憶される。
第10図は、ALU28内の機能ブロック116.11
8又は122の1つの一部分の部品レベルの構造を示す
、第11図は、ALU28内の桁上げ連鎖ブロック12
0の一部分の構造を示す、マイク′aプロセッサの構造
に関するこれ以上の参考は例えばオズ?−ンアンPアン
シェードに示され、これは参考としてここにい′つしよ
に示す6fs12図は、データノ譬スの概略図である。
入力信号は、パス108及び110から入力され、これ
らのパスにはそれぞれ入力ラッチ130及び140が接
続されている。これらのラッチはバレルシフタ30の人
力と接続する。バレルシフタ3011、制御線144及
びパラメータ入力146によって制御されている。これ
らはまた両方ともDLA22から提供されている。パラ
メータ入力146は、例えばシフトカウントの為、及び
抽出の限界(extraction boundari
es )の為の値を与えている。バレルシフタ30はパ
ス^及ヒパス日に出力を与えている0^LUは、桁上げ
、オーバーフロー、負数及び/又はゼロといったような
演算状況信号を発生しているa A L Uは、整数の
オーバーフロー、十進数の桁上げ等といったこの他の割
こみ信号も発生している。このような信号は、DLAに
送られてDLAは、これらの、信号に従っテ論理オイレ
ーションを実行し信号を発生している。この信号は、フ
ラグレジスタ内でピットをセットする。この機構によっ
て状況セット信号を発生させ、例えばコンピュータ構造
の中を循環させる。
第13図は、バレルシフタ30によって形成されるシフ
トオペレーションで使用する用語を示している・、従来
、左シフトは、最上位ピットに向かってシフトすること
を示す為に使用される。即ち、最上位ピットは左シフト
に関しては先頭ビットである。同様にして最下位ビット
は、左シフトに関する最後尾ビットであって右シフトに
関し、ては、先頭ビットである。第14a%b及び0図
は、シフトオペレーションのこの他のいくつかの例を示
している。第14−図は、最後尾ビットにゼロが入夛、
先導ビットが欠けている左シフトを示している・ 第14b図は左循環オ(レーションを示しておシ、入力
ラッチ^138の最上位ピットは、入力ラッチBの最下
位ビットにマツピングされ、入力ラッチ6140の最上
位ピットは入力ラッチ^138の最下位ビットにマツピ
ングされ、他のピットはそれに従ってシフトされている
。第141)図は、1ピツトの循環オペレーションを示
してい−るが、[11オペレーシヨンは、バレルシフタ
内の1クロックサイクル期間中に16ビツトまで右又は
左に動きうる。
第14c図は、シフト及び連結オ(レーションを示して
おシ、ここで入力ラッチ138は右にシフトし、連結入
力線(1ink−in 1ine ) 152が最後尾
ビットの新しい内容を与えている。先頭ビットの内容は
、連結出力線(I Ink−out l Ine ) 
154を通シ出力される。本実施例に於て、連結入力1
52及び連結出力線154は、入力ラッチB140から
接続されているので多重ピットシフト及び連結のオ(ニ
レ−ジョンが実行されるが個別の連結入力及び連結出力
線を代わるかわるに用いることもできる。
第15図は、バレルシフタ30によって実行される抽出
(5xtractlon )  オ(レーとヨンを示し
ている。ここに示すオペレーションでは、)櫂しルシフ
タ30は命令を受けて入力の3−11ピツトを抽出して
いる。これらのビットは出力ラッチ150に先頭ビット
として接続される。このような機能をバレルシフター3
0に実行させる為に必要とされる回路は既知、のように
例えば先に参照として示したミード及びコンウェイのr
v+s+システム入門」K示されている。
メモリマツパ−34Fiプロセツサ構造トしてはよく知
られる機能を形成する単なるありふれた構造である。メ
モリマツパ−34によって受けとられる仮想的(ヴアー
チャル)アドレスは共働するメモリオペレーションによ
って16の記憶されいた仮想アドレスと並列に比較が行
われ、もし受取った仮想的アドレスが記憶されていた仮
想的アドレスの一つと整合する場合、これに相当する地
域的アドレスが使用され所望のワードが地域メモリーか
ら呼び出される。整合するものがない場合、仮想的アド
レスはcページテーブル索引のような)、テーブル索引
によって翻訳され実際のアドレスを決定しルゾスタファ
イルの1つに随意にロード可能となる。この意味で、メ
モリマツノ母−34は内部的に記憶されるメモリユニッ
トと外部的に記憶されるメモリユニットを7区別してい
るといえる。
故にメモリマツノ母−34はテーブル検索をこま切れ圧
する( hashing )ことができるように構成さ
れ、ハツシュテーブル内の位置を選択する為に使用され
たハツシュ機能はファームウェアによるプログラムが可
能である。ハツシュテーブルはマルチウェイセット共働
メモリとして作られている。
ハツシュ機能の出力は並行して検索が行われる多重位置
を指示する。所望のアドレスがハツシュテーブルで多重
位置に於て行われた比較と整合しない場合所望のアドレ
ス/li(設計上)テーブルK 存在しないということ
なのでこれ以上の検索は必要なくガる。故にこのマツピ
ング機能は様々なサイズのメモリのマツピングを行う。
ハツシュ機能が記憶容量を補助する為に使用される場合
、ハツシュテーブルエントリーが数10バイトのメモリ
ユニットを指示する。ハツシュ機能が仮想的メモリ翻訳
ルックアサイドバッファを補助する場合、メモリユニッ
トは典型的に一512/fイトかう2,048バイトま
でになる。メモリマツパ9−に適当な構造をもつ物とし
ては1ナショナルセミコンダクタ社のチップ番号160
82がある。
割込み管理回路12は制御パス14を通って転送されて
くる全ての割込み信号を直接受取っている。(割込みプ
ロトコールは以下でさらに詳しく説明する。)割込み管
理回路は、各々の割込みごとに適当な割当てビットをテ
ストし、その割込み管理のプロセッサが割込み先である
か否かを調ベアyレスが適正である場合には、新しい割
込みの優先性と現在実行されているプロセスの優先性を
比較する。新しいプロセスの方が高い優先性を持つ場合
、割込み管理は割込みを受は入れ、さもなければ割込み
管理回路12は、ワイヤーANDED線の電位を引き下
げて割込みを拒絶する。
スケデューラ16は256ピツトシフトレジスタ内の優
先性によって割込みを/4ソファする。プロセスが有効
に行われているi、スケデューラ16はシフトレジスタ
全体をスキャンし、次に高い優先性を持つプロセスを見
つける=現在のプロセスが完了又は時間切れの場合−ス
ケデューラ16は次に高い優先性のプロセスの優先性を
使ってこのプロセスのコンチクストを示すポインタを含
むテーブルにアクセスしている。適当なコンチクストは
、スタック/レジスタファイル32から、RAMメモリ
96から又は外部メモリから再び呼び出される。
第18図は、上記で示したデータバスの総体的な全体図
を示す。パスA及びB(108及び110)は、主要な
構成部であるデータポート、即ちスタック/レジスタフ
ァイル32、バレルシフタ30、ALU28及びフラグ
及びシフトレジスタセット44及び46の側面に設けら
れる。更に左側ポート170はデータバスの入力及び出
力の末端に設けられている。好ましい実施例ではないが
、右側ポートを用意する選択も可能である。このあるプ
ロセッサの右ポートは、隣接するプロセッサの左ポート
に接続する為に使用される。例えば、プロセッサPR3
の右側ポートは、プロセッサPR2の左側yl?−)に
接続される。リテラルレジスタ174もまた定数を発生
させる為に提供される。
入力はメモリマツパ−34から接続する左ボード 、1
70に接続され、右側ポート172からの出力もメモリ
マツパ!−34を通って接続される。
スタック/レジスタファイル32け、2本のパス108
及び110を十分に利用できるよう圧する為にデュアル
ポートのレゾスタフアイルでなくてはならない、さもな
ければレジスタファイル32は従来と全く同じである。
データバス56の組織は、RAMメモリ66、パス制御
ユニット58及びメモリスケデューラユニット68のオ
ペレーション及び構造といっシょに以下で説明する・ 第16図は、≠−タパス5Gの構造を示している。デー
タバス56は16本のアrレス線1561.16本のデ
ータ線158、ラウントロピン仲裁線160.4本のソ
ース−162、モデュールピジー線164、ソース状況
線166及びecuモード線167を有している。別々
のアrレス線156及びデータ線158によってデータ
アクセスのオペレーションが単一パスサイクルで実行可
能トなっている。この場合チップ上のRAMメモリ66
がアクセスされるので少くと本メモリアクセス速度はこ
れを可能にしている。ζうする代わりに、アβレス線及
びデータ線156及びr58を多重構造にし領域を節約
することができる。ラウントロピン仲1[1soは4つ
のプロセッサPRQ−PR3,4つのメモリモデュール
60.及び外部データポート72及び730間を花輪の
ような形で連結しているので、データバス56へのアク
セスは有効に仲裁が行われる。4本のソース線162は
、現在転送中のメモリアクセス要求のソースであるプロ
セッサ又はモデュール又はデータポートを特定している
。その代わシに制御線164の状況に従って、ソース線
163を使って、どのメモリモデュール60がメモリモ
デュールによって次にサービスを受けるのかを示してい
る。10本の割あてIj!168は、どのプロセッサ、
モデュール又はポートがデータを受けるかを゛示す。ソ
ース状況線166は(もし低論理であれば)ソース線1
62は更にプロセッサ、モデュー宛又はデータポートの
どのメモリの要求が次にサービスを受けるのかを示す。
ソース状況線166が高電位状□態にあるということは
、ソース線が現在のンース葡1示していることを表わし
ている。また、メモリの読み出しに使用されるか又はメ
モリの書込みに使用される為パスが停止状況(+d+・
)にあることを示す2本のパス状況線165も提供され
ている。
第17図の流れ図はさらにデータバス56内の線の利用
をさらに明らかにしている。一度、いずれかのソース(
ゾCIOッfP RO−P R3、RAMメモリモデュ
ール60、又はデータポート72又は73)がデータバ
スへのアクセスを受けとると(即ち、一度、そのソース
が花輪状連結線160から高電位信号を受けとると)ソ
ースは線162上に4ビツトコードを示す。ソースがR
AMメモリモデュール60であって、対応するメモリス
ケデューラユット68が未解決のメモリ要求を有してい
る場合、ンーヌ線162はどのプロセッサ又はメモリモ
デュールが次にサービスを受けるかを示すようになシ、
9166は電位が引き上げられる−この後で、また未解
決のメモリ要求を持つメモリモデュールがソースでない
場合でも、メモリアクセス割当て線168の電位が引き
上げられて読出されるべきデータに関する10個の割当
てから成るいずれかの組合せを示す。連動回路(Int
erlock )は、データの完全性を保つ為に提供さ
れている・もし割当て先に未解決のメモリ要求を持つメ
モリモデュール6oを1つまたは2つ以上が含まれる場
合、ワイヤーANDED線であるビジー線164の電位
が引き上げられ、同一のメモリスペース忙対し同時に読
みこみ及び書込みが行われることが々いようにしている
◎ 第19図u、Rrc内のRAMシステムの組織を総体的
に示す概略図である。各々のプロセッサρRO−PR3
は、メモリマツノ?−34を介して、データバス56へ
のインターフェーストLテllI<ノ9ス制御ユニット
acu5Bに接続される。各、々のecussは対応す
るメモリヌヶデューラユニットMSLJ68にも接続さ
れ、5cu56及びMSυ68の各々は両方とも対応す
るRAMメモリモデュール60に接続される。
プロセッサが一自分のメモリモデュール6oにアクセス
する時、プロセッサは自分の日CU38t”通って自分
のMaU68に接続される。MSU68は未解決のメモ
リ要求があるが否かを決定すゐ、未解決のメモリ要求が
存在しない場合、アクセスがただちに発生する。アクセ
スが決定されていない場合、MSLj6gはメモリのサ
ービスを最初KIF求したかを示すタグ(tag )を
待ち行列にする。M9υ68は先に来たものがら先に丈
−ビスを行うスケデ具〜ル方針に従って要求を待ち行列
にする。q#定の要求が列の先l1ltで達した時M3
す68がこのことY7rfロセッサ又はデータ4−)K
(1号で知らせる・このデロセッtxttデータ4−ト
は再び要求を発生し、メモリアクセヌが友だちに行われ
る。プロセッサがそのプロセッサ以外のメモリモデュ〜
ルにアクセスする時、パス制御mgット58はデータバ
ス56を介して通信が可能ICkるよう構成されなくて
はなら1kvh、故K例えばプロセッサPR8がデロセ
ッ賃P自1に相蟲するメモリ篭デュール60にアクセス
する場合、PR3に対応すゐパス制御ユニット58は、
fロセツナPR3をデータバス56に接続するように構
成され、pR2に対応するBCU58は、信号をデータ
バス56によって転送できるように構成され、プロセッ
サPR[に対応する8cU58は(プロセッサPR3に
向かう方向で)データバス56をプロセッサPR1に対
応するRAMメモリモデュール6oに接続するよう構成
されなくてはならない。上記のように、プロセッサはま
ずラウンp oビンのオーダーでスケジュールされた共
有のデータバス56にアクセスできるまで待機している
。プロセッサはパスにアクセスし九後で、プロセッサは
メモリ情報及び割当て先メモリモデュールを示す割当て
タグを連送する。各々のプロセッサ又はデータポートは
、一度に1つだけ未解決のメモリ要求を持つことができ
るめで、どのメモリモデュ〜ルも最大で6つまで未解決
の要求を持つことができる。各々のプロセッサのメモリ
インターフェースは、データバス56を通って送られて
くるメモリ制御信号を鑑視する回路を有している。この
機能はメモリマツノ4−34によって実行される。
RICの内部RAMメモリは、好ましくは最小の微細加
工特徴が1ミクロン(ラムダ=0゜5ン′クロン)であ
る(パスドライバーのようなCMO8技術を実現する高
出力構成素子を用いた)NMO5RICの中に作られた
16にバイトのダイナミツ/RAMである・ 故に、BCU58は全てのプロセッサをそれぞし隣接す
るメモリモデュール60にアクセス可能トスる一方、各
々のプロセッサをデータノ寸ス56によってこれ以外の
離れたメモリモデュールに4アダセス可能にするという
重大な役割を果たしている。SCUの構造は第20図及
び第21図に示す。各々のSCUは、3つの両方向に導
通可能な(パイディレクショナル)スイッチ178.1
80及び182を有している。短いノ々ス184はBC
U58とそれぞれの対応するプロセッサのメモリマツノ
+−a4t″接続している。第2の短い/4ス186は
、対応するモデュール60のアrレスレゾスタ62及び
データレジスタ64に接続される。ノ櫂イデイレクショ
ナルスイッチ178はこれらの短いパスの両方に接続さ
れ、パイディレクショナルスイッチはある位置で単にメ
モリマツパ34をレジスタ62及び64に直接接続する
サービスを行っているので各々のプロセッサはそれに対
応するメモリモデュール60に並列にアクセスすること
ができる。他の位置のパイディレクショナルスイッチ1
78は、M二U68を(短いパス186を介し)データ
バス56に接続するサービスを行っている。同様に、ス
イッチ182は、(対応するプロセッサがその対応する
メモリモデz−ルに7/セスしている時)、データの流
れをブロックするか父は1単に短いパス184tデータ
ノ々ス156に直接接続するか又は、短いパス184を
ノ々イデイレクショナルスイッチ180が封錯モーrで
ある時に絶縁されている2つのデータノ々ス56の組に
方向を指定して接続するか、これらのいずれかを行って
いる。このオペレーションモーVは第21図に示されて
いて、ツタイブラインモードでのRIC。
のオペレーションが可能にしである・この場合、各々の
プロセッサはオペレーションの前段階からデータを受け
とヤ、同時にオペレーションの次に続く段階にデータ出
力の流れを与える。故に、ツタイブラインモードは、隣
接するプロセッサの個別な組の間を異るデータの流れを
並列に転送させてゆくことを必要とし、この機能は、パ
イディレクショナルスイッチ180をブロックモーげに
することによってまたHイデイレクショナルスイッチ1
82を方向を指定して接続することによって実現される
プロセッサが離れ九メモリモデュールにアクセスする時
、異る3つの構造から成るSCUが必要とされる。例え
ば、ゾロセッサPR3がプロセッサPROに対応するメ
モリモデュール60にアク−bxすル場合、PR3に於
る8CU58はPR3をデータバス56に接続しなけれ
ばならないし、PROに対応するB CU 58はデー
タノ々ヌ56を対応するレジスタ62及び64に接続し
なくてはならず中間のSCU58は単にデ、−タノ(ス
56のクリアオペレーションを可能にする必要がある。
本実施例に於て、8 CU 58に必要な調整はデータ
バス56内の8CUモード制御線167によって行われ
る。いずれかのプロセッサがデータバスを制御する時、
そのプロセッサは更にBCU%−r線167を使って全
ての−’B’ CUを制御することができる。仲裁線1
60がプロセッサがデータバス56を制御していること
を示す時、全てのSCU58に於て満たさなくてはなら
ない、唯一の必要条件は、パイディレクショナルスイッ
チ18’0がデータバス56′f、ブロックしていない
ということ−である。更に、各々のBCUS8内のパイ
ディレクショナルスイッチ178は、データバス56を
レジスタ62及び64に接続するように作動している。
故に各々のアPレスレノスタ64は、要求されたアドレ
スを受取シ更に適轟なMSU68が。
その中のメモリモデュール60内の制御レジスタ70を
作動させて蕊要なデータを供給させている。
B CU 5’8を制御する上記のシステムはできうる
範囲で最も有効な例というわけではないが、追加の制御
線の必要性を最小にしてプロセッサ間におこる干渉を防
止している。好ましくは、各々のMsu68h[接デ7
タパスのパス状況41165に接続され、RAM制御レ
ゾスタフ0が必要とする読出し/書込み及び作動ビット
を受取っている。
各々のM8U68は対応するプロセッサに対し直接接続
する2本の線を持って構成され、RAM制御データを与
えてデータバス56を使用せずに地域的なアクセスを行
っている。
メモリスケデューリング二二ツ)(MSU)68では、
第22図で示すようなオペレーションが行われる。デー
タバス56がアクティブであって、BCυモード制御線
167がアクティブにされた時はいつでも、M S U
はアドレス線156の先頭ビレトを見てアクセスがこの
MSUに制御されるメモリモデュール60に対するもの
であるか否かを決定している。もしそのメモリモデュー
ル60に対するものであれば、次は、メモリの要求が未
解決となっているか判断する。この場合、最後の要求を
出し九プロセッサまたはデータポートは、先に入ったも
のが先に処理される形式に配列される。最大で6個のソ
ース(4つのプロセッサ及び2つのデータホード)を待
ち行列に並べられる必要があるので、小さなシフトレジ
スタがこれを実行する・同様にしてもし他のメモリの要
求が既に未解決のままである場合、地域的なプロセッサ
によって要求されるメモリアクセスは延期され、ビジー
信号がもどってくる。メモリ読出しが実行される時は、
データバスが使用可能になるのを待ってから、データワ
ード◆を割合で線168を通って指示され九割合で先に
転送しなくてはならない。
書込みが実行される場合には、回帰信号は必要ない。ど
ちらの場合でも、MSua8はただ待ち行列レジスタか
ら次の未解決のメモリの要求を引きだし、そのソースに
信号を送ってメモリアクセスが現在可能であることを知
らせる。MSU6gは次のソースが要求を再び発生する
まで待機し、それから上記のように適当なメモリのアク
セスを行わせる。
当分針に通常の知識を持つ者には明らかなように、アド
レスレジヌタ64、データレジスタ62及び制御レジス
タ70はMSU68とそれに対応するメモリモデュール
6oの間のインターフェースとして使用される。   
     ゛本実流側において、各々のメモリモデュー
ルは、16ビツトアドレスでチドレス指定される。これ
によって、4つのプロセッサの各々に対し直接アドレス
可能な領域を場合によって64にz4イトまで増やすこ
とが可能である。しかじな力;ら、プロセッサは2種類
の型のアドレス、即ち16及び32ビツトを維持してい
る。プロセッサ自身のメモらモデュールに直接アクセス
する為には16ビツトのアドレスが使用される。52ビ
ツトアドレスは外部メモリへのアクセスの為使用される
。他のメモリモデュールにアクセスする場合は、プロセ
ッサは16ビツトのアドレスを送り、□所望の内部メモ
リモジュールと結合する割合て信号を与えることでメモ
リモジュールを指定する。32ビツトのアドレスは、プ
ロセッサの制御に従って外部アドレス又はマツピングア
ドレスのうちいずれd=となる。外部アドレスとなるよ
うアドレス力(指示される適合、アドレスは外部メモリ
インターフェースに送られてプロセスが実行される。さ
もなけレバアドレスはメモリマツ/や−に送られる。メ
モリマツパーはアドレスが内部のものか外部のものかを
決定する為連合して探索を行う。内部のものであれば、
関連した内部アドレスは外部メモリインターフェースに
送られる。
(状況パスのエンド・アラウンド・ルーダ54を含む)
状況パス52は4つのプロセッサPRO−PH1及び外
部状況ポート74及び75を相互接続している。状況パ
ス52は桁上げ状況線19Q。
桁上げ入力出力線191、オーバーフロー線192&負
a線194ゼロ線196グロセツサ同期線198及びシ
フト循環線199から成る7本の線のみを有している。
故に、エンド・アラウンド・ルーダ54を含めても状況
パスは、たった14本の広さしかない。各々のプロセッ
サは、プログラム可能なスイッチである対応する一対の
状況マルチプレクサ48又は50を有している。これら
のスイッチは、選択的に且つプログラムに沿って各々の
^LU28の状況出力又は入力線を状況・曽ス52及び
エンド拳アラウンド・ループ540両方を含む状況・ぐ
ス線に、いずれかの方向を指定して接続している。第2
3から第25図は、状況マルチプレクサ48及び50で
選択された状況パス接続のいくつかの例を示している。
プロセッサが独立して動作する時、第23図で示すよう
に状況線の接続は必要とされず、状況マルチプレクサ4
8及び50は状況・ずス52及び54に開路を作りだす
隣接するプロセッサがノ9イゾライン構造で作動する時
、(例えばPH1の)データ出力がPH2の人力として
与えられている場合、プロセッサ同期線198のみが接
続される必要がある。最後に、プロセッサPR3及びP
H2が32ビツト又はそれ以上の規模のプロセッサの一
部としてロックステップ構成で作動される場合、プロセ
ッサPR2の状況出力は、全てプロセッサPR3に対す
る状況入力として接続される。プロセッサ同期線は、ロ
ックステップモードで使用され現在のオペレーションが
完了する前には確実に新しいオ(レーションが開始され
ないようにしている。例えばロツ  。
クステツプ構成のプロセッサがアクセスしている全ての
メモリモデュールに対し、他のソースからの未解決なメ
モリ要求が不均一に配分されることによって、全てのプ
ロセッサーは、そのメモリのアクセスを同時に受けとる
ことはない、状況マルチプレクサ4日及び50によるプ
ログラム可能な相互接続の状況は、DLA22から接続
される制御線によって管理される。状況線190から1
96q、ALU28及びフラグレノスタ46からの状況
入力及び出力に接続され、シフト/循環線1i9Id、
)4レルシフタ30のり/フィン及びり/クアウトビッ
トに接続され、プロセッサ同期線198はOL^22に
接続される。外部状況ポート74及び75も同様のプロ
グラム可能な接続回路を有している。
本発明である再構成可能な多重ノロセッサ機能1提供す
る為共働する上記で示したような構造的特徴はこれから
さらに詳しく説明する。
$26.27及び28図は、本発明である再構成可能な
集積回路のオペレーションの5つの主要なモードを示し
ている。第26図は、全体的に独立するモードの組織を
示している。このオペレーションではプロセッサPRO
−PH1は単一チップ上に配置された実質的に4つの独
立するプロセッサとして働いている。4つ別々の命令の
流れが別個のプロセッサPRO−PH1に与、tられ、
独立するプロセッサ間に必要とされる唯一のインターフ
ェースは、制御パス及びデータパスノロトコール、によ
ってアクセスされるものである。
同じ構造はまた配列処理オペレーションを行えるように
なっている。配列処理に於て、プロセッサ間の相互接続
は独立モードの場合と同じである。
配列処理と異る点は、各々のプロセッサが、同じ命令の
流れを受けとっているということである。
もちろん配列処理はまたプロセッサのロックステップで
接続されるプロセッサの2次的な組(例えば2つの32
ビツトプロセツサ)に基づき構成される。
第27図は内部的なロックステップモードで作動される
RIGの例を示す。この例では、4つ全部のプロセッサ
が再構成されて単一の64ビツトプロセツサとして作動
するようになっている。この構成では、制御パス14が
単一の共通な命令の流れを運んでいて、この命令の流れ
を全てのプロセッサが受は取る。上記のように必要な同
期桁上げ及び状況ビットは状況・マス52及び54によ
って通信が行われる。更にシフト及び循環連結が設けら
れているので望みのビット又は循環オペレーションをど
れでも64ピツトワードでデータ・マス56を介し実行
することができる。(この連結に関しては、r−タパス
56は、上記で示したように)々イブラインモードで構
成される。)1ビツトシフト及び循環がシフト/循環線
199によって実行される。RICをこのモードに正確
にプログラムすることによって、各々のプロセッサー1
1164ビツトワードの16ビツトセグメントの読出シ
又は書込みを行い全てのプロセッサが4つのRAMメモ
リモ≠ニールの対応する位置でこの読出し又は書込みを
同時に行うので、単一クロックサイクル内においてRA
Mメモリ66に対する64ビツトでのアクセスが可能と
なる。
第28図は、パイプラインモードで作動するよう構成さ
れたR100例を示す。この構成において、4つのプロ
セッサは、もともとは単一のr −タの流れであった連
続するオペ7−シヨンを実行している。即ち、全体的な
命令の組は、(プログラマ−によって)4つのオペレー
ショ/の組に分割される。この4つのオペレーションの
組はそれぞれほぼ同じ時間を必要とする。そこで4つの
プロセッサは各部分が連続するデータの流れのうち、分
割された命令プロセスの一部分のみを各々で実行する。
故に、このようにして小゛分けされた命令の組を用いて
データの流れを操作しなければならない場合、スループ
ットは4倍になる。命令の組はプログラマ−によって4
つの命令のサブセットに分割されるので、チップレベル
゛では、命令の流れは単に1つ1つがパイプラインモー
ド内の各々のプロセス段階に向けられた4つの別々で個
別の命令の流れとして現われる。上記で示した通シ、8
CU58はデータバス56を小分けして、ノfイブライ
ンモードで連続するステージの間(即ち、隣接するプロ
セッサの間)をデータが直接の転送できるよう構成され
る。更に、ロックステップ及び/fイブライン構造を組
合せることも可能であるので、RICは例えば32ビツ
トプロセツサを接続して2段ノ4イブラインを作って作
動するようにもできる。この場合、次々と74イブライ
ンで接続されるステージの間でのデータ転送はデータバ
ス56で多重にして行われる必、要がおる。故に、この
実施例では、プロセッサPR3及びPH1が2段の32
ビツトワードバイデラインの1段目を形成する場合、プ
ロセッサPR3はプロセッサPRIK対応する割合で線
168の電位を引きさげながら第1段の出力の最上位ビ
ットを送信し、続いてPH1がノロセツtPRoに対応
する割合で縁168の電位を引き下げながらデータ線1
58を使って出力ワードの最下位16ビツトを出力する
再構成を行う為には、3つの主要な型の割込みが使用さ
れる。第1の型の割込みは、他のプロセッサ(即ち、割
込み先(Interruptee) )の資源にロック
ステップモードのオペレーションt−設定するように要
求する。このモードでは、1つのプロセッサが共働単位
の中の他のプロセッサのオペレーションを支配していて
、故にこのプロセッサはロックステップでの共働単位内
のマスタプロセッサと呼ばれる。この型の割込みのプロ
セスを(プロセッサがコンチクストスイッチを実行した
後で)すぐに実行することを全てのプロセッサが受理す
る場合以外は、割込みはこれ以上の動作をおこすこトハ
なく、マスタープロセッサによって後で改めて発生され
る。この場合、自分の割込みが拒絶されたマスタプロセ
ッサは、そのプロセスをバッファの中に入力しておいて
、さらにスケジュールを変更し、次のスケジュールによ
るプロセスの実行を開始する。゛その後再度側込みを送
ることもマスタープロセッサの役割である。故にロック
ステップでの割込みは、すぐにプロセスが実行可能な時
のみ受は入れられる。「どこそこのプロセッサが必要と
されている」 「自分のプロセッサは、今は使用可能で
ある」 「自分のプロセッサを解除せよ」及び「どこそ
このプロセッサーが解除される」等といったオペレーシ
ョンを意味するプロセッサ間での割込みの必要性を最小
限にして、この!ロトコ〜ルはプロセッサ間の通信を最
小にしている。
これKよって割込みに使用されるパスサイクルの数が減
ってプロセス及び割込みのスケデユーリングが複雑でな
くなっている。単に拒絶された割込、みをバッファした
シ、延期したりすることは、上記でボした選択しうる例
に比べて複雑なプロセスではない。
ロックステッププロセスでの割込みの為に要するコンチ
クストスイッチは他の型の割込みタンチクストスイッチ
よシ少ぐてすむ。プロセッサがロックステップに構成さ
れる場合、マイクロシーケンサ36は、ロックステップ
の全期間中は停止状態(Idle )  に保たれる。
実際のところ、マスタープロセッサの!イクロシーケン
サ36が他のゾ璽セツテ内のマイクロシーケンサの機能
を代行する。故に、この場合シーケンサは働かなくなる
ので、マイクロ割込ケ/すのコンチクストスイッチはそ
のままでよい、もちろんこのことは真のマイクロ割込み
が許可される場合のみ問題となる。即ち従来装置におけ
るマクロ命令に相当するものを実行する間に割込みが発
生可能である。本実施例では、マイクロ命令を省略すれ
ば複雑さを減少できるが、これを使うことも可能である
。マイクロ命令を使用する意義には、2つの要素が存在
する。
第1は、大規模cpuに多重チップを使用する場合のよ
うな応用例では、その性能を最大限に利用する為にマク
ロ命令が使用されないことである。
第2は、あるマイクロ命令はストリング操作のように非
常に長くなるということである。
ロックステップ構造の中の従属プロセッサ(5lave
 processor )の割込み管理回路は自分を指
示する割込みの存在を知る為に制御パス14の鑑視を続
けている。しかしながら、もし、ロックステップで構成
される共働単位内のいずれかのプロセッサがその共働単
位内で現在実行しているプロセスよシ高い優先性を持つ
割込みを受取る場合、従属プロセッサに向けられる割込
みを鑑視してい  ゝるマスタープロセッサハ、ロック
ステップで構成される共働単位内の全てのプロセッサに
おける適iなコンチクストスイッチを実行する。マスタ
ープロセッサーは、割込みのソースに通常の割込み応答
を用いてそ辷から発生された割込みがただちに処理され
ることを知らせる。マスタプロセッサは、また、割込み
を必要としない共働単位内の全てのプロセッサを解除す
る。マスタプロセッサは更に再びスケデニールを行う為
に割込まれたプロセスをバッフ7に入力する。マスタノ
ロセッサは共働単位内の他のプロセッサの割込まれたプ
ロセスを再び続行させる。共働単位内の全てのプロセッ
サが再び作動可能になった後で割込まれたロックステッ
プのオペレーションが再び続行される。
ロックステップの共働単位内で作動している従属プロセ
ッサがロックステッププロセスより低い優先順位を持つ
割シこみを受けとる場合、従属プロセッサは、低い優先
性のプロセスをバッファし、後にスケデニールし直す。
故に、マスタープロセッサが、共働単位内の他のプロセ
ッサのいずれかに向けた割込みを確認する必要のある間
は、ロックステップよシ低い優先順位を持っているいか
なる従属プロセッサの割込みに対し、マスタプロセッサ
の割込み管理回路はいかなる機能も実行する必要がない
。それぞiの従属プロセッサ内の割込み管理回路12は
低い優先順位の割込みをバッファする。。
第2の型の割込みは割込み先プロセッサが実行する、い
くつかの計算を特定することを要求する。
(即ち、これはよく知られるI古典的lな割込みプロセ
スを特定する命令の流れが与えられる。この型の割込み
は、その優先順位に従ってプロセスされる。このような
割込みがサービスの為゛にスケデニールされた時には、
割込みの後で与えられ九第1番目の命令に従ってコンテ
クトスイッチを行っている。
第3の型の割込みは、パイプラインブロースを開始させ
る。パイプラインでの割込みの管理は、ロックステップ
型での割込み管理と同様である。
マスタープロセッサがパイプラインの割込みを送シ出す
と、これを受けとった全てのプロセッサは、自分が・や
イブラインゾロセスに参加できるかを信号で知らせる。
受取ったプロセッサが全てそろって参加できない場合、
割込みは無効となって後で再び続行される。同様にパイ
プラインプロセスにおけるマスタープロセッサは、共働
単位内のいずれかのプロセッサに向けられる割込みを鑑
視してノ母イノラインプロセスより高い優先順位を持つ
割込を実行している。従属プロセッサは低い優先性の割
込みのみをバッファする。パイプラインでの割込みの制
御とロックステップでの割込みの制御との間の主な違い
は、パイプライン割込みプロセスでの従属プロセッサが
そのそれぞれの持つマイクロシーケンサ36を使用し独
自のマイクロ命令の流れを実行していることである。故
にそれぞれの従属プロセスtのマイクロシーケンサ36
内に含まれるコンチクストは保持されたままである必要
がある。
資源が共用されている場合、前に述べたようにデッドロ
ックの発生は、非常に危険であって必ず避けなければな
らない。例えばプロセッサPRI及びPROがそれぞれ
プロセッサPR2AびPH1、両方の資源を使いたい場
合、またプロセッサPROがノロセッサPR3を支配し
ようとしている一方でプロセッサPRIができ続きプロ
セッサPR2を支配している場合、もしもプロセッサP
RI及びPROがそ−れぞれの可動できないプロセッサ
だ待つようにだけプログラムされているとすると、デッ
ドロックが起こシうる。本発明にお騒ては、いくつかの
手段′t−講じてデッドロックを防いでいる。第1に各
、々の実行中のプロセス及び各々の割こみには、!ログ
ラマによって独得な優先順位が与えられる。概念的には
、各々のプロセスにそのプロセスの優先順位及びプロセ
スを開始育せる割込みの優先順位と同一の名前をつける
と考えることができる。システム内で実行中の全てのプ
ロセスは、異る優先順位をそれぞれ持つ為、よシ高い優
先順位を持つ割込みが割合てプロセッサを先取するので
行き詰まりは起こり得ない。本実施例に於ては、1回の
割込み期間中には、アドレスバスの8本の低いオーダー
の線に示される256の優先順位がシステム内に存在で
きる。割込みが認められ・リファされる時はいつでも、
優先順位に関する情報もバッファされる。・ヤソファさ
れた割込みがサービスの為にスケゾュールされる時、8
ビツトの優先性に関する情報を含む割込み制御ワードが
と9だされプロセスを開始させる。
故に、全てのプロセス(即ち、命令の流れ)がゼロから
255の間の優先性レベル(又は名前)を有する。この
場合255が最も高い優先順位になる。どのプロセスも
7”aセス自体と同じ優先順位を持つ割込みによって開
始される。多重プロセッサfaセスにおけるマスターノ
ロセッサは、同じレベルの割込みによって全ての必要と
する追′加の7sロセツサに割込みを行う。ロツクステ
ツffロセスでは、同じマイクロ命令の流れが全てのプ
ロセッサによって実行される。ロックステラグプロセス
における各々のプロセッサは他の全てのプロセッサとま
ったく同じプロセスを実行しているものとして扱われる
。(しかし、桁上げビットの存否といったロックステッ
プ内の相対位置によって時々わずかな違いはある。)ロ
ックステップで接続するプロセッサ間における違いは、
これらプロセス、すの位置がプロセッサ間のハードウェ
アの相〃接続を決定していて、マスタノロセッサが共働
単位内の全てのプロセッサに対しよシ高い優先順位の割
込みを実行していることである。パイプラインプロセス
では、各々のプロセッサは、同じ割込みで割込みが行わ
れ、もともとは各々のプロセッサは同じ命令の流れを処
理し・母イブラインノロセスを行っている。引き続きノ
やイブラインプロセス内の各々のプロセッサは、異るマ
イクロ命令の流れを実行することができる。次に、ノロ
セッサは元の共通なマイクロ命令の流れをそれぞれの持
つ場所の数によって分岐し、それに対応す不適当な分岐
を選択し各々のプロセッサに対する別々のマイクロ命令
の流れを作る。ノやイノラインモード内の各々のプロセ
ッサは別々のマイ”クロ命令ルーチンを行うことができ
ても、全てのプロセッサは、チップを管理するという目
的では同じグロセスを実行していると考えられる。ツヤ
イブラインでの共働単位゛・内のマスタープロセッサは
、ロックステッププロセスと同様に単位全体に対しより
高い優先性を持つ割込みが処理される。1つのプロセッ
サのみを必要とするプロセスは、多重プロセッサでのプ
ロセスを管理する為に必要とした!ロトコールは必要と
しない。
上記で示した優先づけ方法によって生ずる拘束としては
、制限なしにはゾロセスを共用することができ7ないこ
とである。この制限とは、同一プロセッサ内で共用され
るプロセスは一度に2回以上の発動は不可能でおること
である。この制限は、いかなるプロセスにも正式にあて
はまるが、多重化した別々のプロセスが共用のルーチン
を開始することができるので、この制限は、共用のルー
チ/に関してのみ重要である。この拘束によって一つの
プロセスの為に複数の状況を記憶する困難性を回避する
ことができ、同じプロセスが多重に発動されたことを見
分ける為に必要となる機′構の必要性をなくしている。
ルーチンを共用して循環を可能にする望ましいこの特性
は、この後に述べる方法によってほとんどすべて実現で
きる、ルーチンが共用されるかあるいは回帰的に呼出さ
れる場合このようなルーチンが発動されるごとに特有な
優先性レベルが与えられる。上の解決法は重複する共用
ルーチンに必要な制御を記憶する領域を節約することが
できる。このようなタスクを開始するにあたっては、優
先性レベルが制御ワードへのアクセスを起こす。制御ワ
ードにはルーチンの最初のアドレスを指示する区域があ
る。共用又は回帰的ルーチンは、全て制御記憶回路38
内の同じ開始アドレスを指示する多重な優先性レベルを
持つことKなる。
256の優先性レベルを用意すればたいていの応用例に
は充分である。故に本実施例ではこれを採用している。
しかし、もつとたくさんの優先性レベルを用意すること
が望ましい場合、例えば8ピツトによる優先順位の特定
よシラ0ビツトを使  □うことはもちろんとるにたら
ない問題である。
256の優先性レベルを用意することは1度に256の
みの有効なプロセスが存在することを意味する。有効で
ないプロセスは数に制限なく存在可能である。
例えば本発明による再構成可能なICを用いて52ビツ
トcpuに対抗することを仮定する。再構成可能なIc
Kおけるプロセスは以下のヨウなタスクが与えられてい
る。即ち命令とシ出し、コンチクストスイッチ、命令間
の対抗、外部割込みレベルごとに1つのプロセス、自己
テスト、リセット等である。この場合256のプロセス
で適しているように思える。
各々のプロセッサ内の割込み管理回路12の主なタスク
は、割込み信号プロトコールに従って信号を受取)また
発生することである。割込み管理回路12は割込み信号
を送信及び受信していて、新しい割込みが受けとった時
はいつもスケデューラ16に信号を送り、現在実行中の
プロセスの優先順位と比較した新しい割込みの優先順位
を知らせる。ヌケデューラ16及び割込み管理回路12
は両方とも現在実行中のタスクの優先順位を記憶してい
る必要がある。新しい割込みが現在実行中のプロセスヲ
続行させる時、スケデューラ−16はただちに新しいプ
ロセスがシーケンサ36の内容を含めた全体的コンチク
ストを記憶することを必要とするか否か又は、部分的な
コンチクストスイッチのみを必要とするかを確認しなく
てはならない6必要なコンチクストスイッチについての
情報は、高いオ二ダのアドレスビット84でコード化さ
れる。優先順位の特定には8ビツトしか必要としないの
で必要なコンチクストスイッチの程度といったような割
込みに関する追加情報をコード化する為に6ビツトが使
用される。受取った割込みの優先順位がよシ低いもので
あってその為バッファされる場合、このようなプロセス
は必然的にロックステッププロセスでないので、バッフ
ァされた優先順位が最終的にスケデュールされる時には
、全部のコンチクストスイッチが必要となる。
ロックステップのプロセスだけは、全部のコンチクスト
スイッチを必要としない。このような場合、スケデュー
ラは適洛なコンチクストを記憶し、現在のタスクをバッ
ファし、プロセッサが新しいプロセスを開始する用意が
できたことを割込み管理回路12に知らせる。
スケデューラ16の構造笈びオイレーションは、第29
図を参照してこれからさらに詳しく説明を行う。スケデ
ューラ16は優先順位によって有効なプロセスのリスト
を作っておかなくてはならない、有効プロセスとは、ス
ケデュールすることのできる最も高い、優先順位を持つ
時、実行を開始するプロセスである。ハードウェアを節
約する為に本実施例では、1ピツト毎の256のリスト
即ち、有効なタスクを記憶する為の有効プロセスバッフ
ァ200を保持している。特定のプロセッサが1と名づ
ける有効プロセス(即ちIの優先性を持ち実行を待つプ
ロセス)を有している時はいつでも、スケデューラ16
の中のこのプロセッサに対応する有効プロセフ22フフ
20001番目の位置に1含まれている。有効プロセス
バッファ200内のプロセスは実行の為のスケデュール
が行われる時には、バッファ200内に於るこの位置(
これはこのプロセスの名前であり優先順位である。)を
使って各々の有効プロセスのフンチクストを示すポイン
タを持つテーブル220にアクセスしている。故に、バ
ッファ220には2つの主な目的がある。それは有効プ
ロセスを鑑視することと有効彦ジョブを優先順位でラン
クづけすることである。故に、スケデューラ16は5つ
の主要な構成部を持つ。即ちバッファ200現在実行中
のプロセス優先順位の為のレジスタ202、次の有効プ
ロセスの優先順位の為のレジスタ204、プログラム可
能タイマー206及び線形的にバッファ200を調査し
次に高い優先順位をテストし、見つけるリニア検索論理
208である。
スケデューラ16のオペレーションu第30図の流れ図
で示される。スケデユ〜う16は、割込みの発生、有効
なプロセスのブロック、又は、プロセスの完成の3つの
起とシうる原因(8発要素)の1つによって作動される
ようになる。20ツクされるデ、ロセスとは、必要な資
源が使用でき彦い為実行の続行を中止させられるもので
ある0例えは要求された資源を全部は受けとらなかった
ロツクステッffJjfロセヌは、他のプロセスカラ(
受けとらなかった)情報を必要とするプロセスであると
してブロックされる。プロセスがブロックされると、プ
ロセスの実行はまず停止する。次に全ての必要なコンチ
クストが記憶される。更に、スケデューラ−16は、有
効プロセスバッファ200内のブロックされたプロセス
の優先性忙匹敵する位置に1を入力することKよってこ
のブロックされたプロセスはバッファされる。グロック
されたプロセスの優先順位は、次の優先順位の為のレジ
スタ204(フロチャートにおける「次の優先性」の項
)にロードされるのでブロックされfi f o セx
 fi少くとも次にスケデューラ16が呼び出されるま
で停止される。
プロツレされたプロセスは、もし必要であiはタイマー
206を使ってプログラムすることがで詣る。このよう
なプロセスがブロックされる時、プロセスは命令でタイ
マーをプログラムする・タイマー206がゼロまでカウ
ントダウンする時、ヌケデューラ16を作動させる誘発
要素が生じる。
この要素によってスヶデューラ16Fi通常のスヶデュ
ールサイクルを実行するようになる・タイマー206を
セットしたブロックされたプロセスが最も高い優先順位
を持っていれば、スケデユーリングが行われる。しかし
ながら制御パス14がら割込みを受けとる場合、又は他
のプロセスがブロックされる場合又はプロセスが完了し
た場合にはタイマー206は作動しなくなる。このよう
な場合には通常のスケデュールサイクルが開始され、故
にタイマー機能が不要になる為タイマー206は作動し
なくなる。このブロックされたプロセスに対するスケデ
ユーリング法は、一方ではブロックされたプ彎セスに引
き続き、チクfめ資源を使用させいつ必要な資源の用意
ができるか判断させてbて、ま念他方でけよシ高い優先
順位を持つプロセスを必要な時間・よシ長くブロックさ
せてbる間を調−整するものである。この調整は低価格
のハードウェアですみ、良好なスケデユーリング動作を
得ることが期待される。しかし、現在の7’oセスの実
行を続行しつつ、現在のプロセスより高い優先順位を次
のプロセスが持つようにすることは、スケデユーラ16
のオペレーションをいくらか複雑にすることになる。
スケデユーラ16が割込みによって呼び出される時、(
レジスタ202から入力された)現在のプロセスの優先
順位及び(レジスタ204から入力された)次のプロセ
スの優先順位の高さと共に受取った割込みの優先順位が
コンパレータ212によって比較される。新しく受取っ
た割込みが3つの中で一番高い優先順位を持つ場合のみ
先取が起こる。先取する必要がある場合、現在のプロセ
スを停止させコンチクストスイッチが実行された後でだ
け新しく受けとった割込みが開始される。
ヌケデユーラは次に次のプロセス及び現在のプロセスの
優先順位の高さを次の優先順位の為のレジスタ204に
入力する。有効プロセスノ々ソファ200内の対応する
優先性レベルに1′t−書きこむことによって現在のプ
ロセスがノ々ソファされる。
先取する必要がない場合、新しく受けとった割込ミハ、
有効デ四セスバッファ200にバッファされ、バッファ
された割込みに関する情報はこれ以後受けと9側のプロ
セッサに記憶される必要はない。次の優先先順位と割込
みの優先順位のうち高い方が次の優先順位の為のレジス
タ204に入力される。故にある場合では次の優先順位
の為のレジ、スタ204が有効な情報を内容として持た
ないようにすることができる。これは、有効!ロセスパ
ッ°ファ200によってリニアな検索を行い次に最も高
い優先順位を持つプロセスを発見することが時として必
要になるからである・必要とされる時に次の優先順位の
為のレジスタ204の内容が有効でなかった場合、スケ
デユーラ16のオペレーションは他に有効なプロセスが
発見できない場合も含めて有効なデータが見つかるまで
停止する。
最終的にプロセスを゛完了することによる作動をおこす
原因が受けとられると、(これはプロセス状況ビットを
通してスケデユーラ16に知らされる)、。
次のプロセスが開始し、次に高い優先順位を持つプロセ
スの検索が開始される。
割込みシステムのオペレーションを明らかにする為、割
込み制御ワー)1’l’1cW)のフォーマットを以下
に説明する。各々のプロセスは、それと共働するICW
を有している。ICWはプロセスの優先順位に予め規定
される定数をつけることによってアクセスされる。全て
のIcWは、制御記憶回路38内の256ワードテーブ
ルの中に含まれる。あるICWをアクセスする為につけ
られる定数とは本質的には、256のワードページに対
するページフレーム数である。lCW/fi、第31図
で示す3つのフォーマツ)K規定される。もちろん必要
に応じて他のフォーマットを規定することもできる。1
つのICWにはプロセスを開始又は改めて開始させる必
要とされる割込みの優先レベルに相当する必要な情報が
含まれている。
ICWのタイプフィールドは命令オプコーPK類似する
。タイプフィールドは4ピツトであるが、3つの型のI
cWが規定されている。タイプ0は単一プロセッサによ
るプロセスの為であシ、タイプ1はロックステッププロ
セスの為、またタイプ2はパイプラインプロセスの為の
ものである。タイプフィールyは割込み管理回路に対す
る命令としても使用され以後の割込みの発生を命じてい
る。
位置フィールドは、予定された割込みを受けとったかを
確認している。このフィールドには各々のプロセッサに
対し1ビツトが含まれていて各々のビット位置における
内容を使用して、それに対応するプロセッサが割込みを
受けとるべきであることを示している。
優先性マスクフィール、ト9はプロセスの名前又は優先
順位とは異る実行の優先順位を特定する為に、使用され
る。言いかえれば、優先性マスクフィールドが使用され
る場合、プロセスの優先順位は、(実行の優先順位とい
うよシむしろ)せシ合う時の優先順位(blddlng
 prlorlty )  と考えることができる・p
Mビットは、優先性マスクが使”用されるか否かを特定
する為に使用される。優先性マスク−は、多重に′資源
を利用する必要のおるプロセスを完全に実行できる可能
性を高める為に使用される。優先性マスクは、他のどの
プロセスにも与見られていない優先値を使うように限定
されてい石、さもなければ、2つのプロセスが同じ優先
順位で資源をと夛あう時、デッrロックが起こりうるか
らである。
次の優先性フィールドは同一ゾロセメに多重質先レベル
を与えるととができる。このフィールFはNTビットが
1である場合のみ有効となる。この機能によって、ラン
タイムで規定される優先順位をプロセスに与えられる。
この機能は、ゾロセメの非常事態がやがて変化する時に
有効となる。
例えばゾロセメは、特定の優先性レベルを持つ割込みを
、必要なサービスを予期して発生することができる・割
込みが直ちに動作を開゛始させない場合でも、割込みの
イニシエータが後にプロセスを開始させる。しかしなが
ら、時間的な遅れによってc本実流側に於て)割込みの
サービスを受ける必要性がさらに急を要するようKなる
のでイニシエータは次に最も高い優先順位−を持つ割込
みが発生可能になる0次に高い優先順位についての情報
は次に高い優先順位の為のフィールド内に含まれている
。この機能を利用する別の方法としては同一プロセスの
多重処理を開始する方法がある。このモードのオペレー
ションでは、ある優先性レベルから優先性レベルへと位
置フィールドが変わる場合に、並列処理が可能となる。
同じ位置フィールドが使用される場合には回帰的ルーチ
ンを使用することができる。
最後に、制御記憶アドレスフィールドは現在の割込みに
よって呼び出されたプロセスマイクロルーヂンのマイク
ロ命令のアドレスを指示している。
前に述べたように、割込みが送られた□時には、14本
の制御記憶アゾレス線84のうちの8本の線のみが使用
されて優先性がコード化される。故に、残る利用可能な
6ビツトのうち1ビツトをコンチクストスイッチを全部
続行するか又は一部続行するかの決定の為に使用するこ
とができる。更にこれ以外の龜51ビットは割込みがた
だちにプロセスを実行しない場合、割込みをバッファす
るかどうかの判断の為に使用される。故に第52図は割
込みが送られる時の制御記憶アドレス4I84Oフオー
マツトを示す。
割込みシステムのオペレーションをさらに明らかKする
為に1第33図は、プロセッサPR3がプロセッサPR
Iに対し割込みを発生した場合のサンプル割込みに相当
するタイミング表を示している。タイムnKお込てプロ
セッサPR3が制御パス14を支配してhて、(線I3
上K)自分が割込みのソースであるという信号を与えて
いて(@o*1上には)割込み先がプロセッサPRIで
あるという信号を与えてbる。同じこのタイムに於ては
現在の割込みが確認さhるまでは他の割込みが制御@1
4を通って転送されることはないのでプロセッサPR3
は、割込み準備線104の電位を引き下げる。次のクロ
ック間隔では、プロセッサPRIは、割込みパスIlの
適当な線の電位を上げることで割込みの確認を行い、コ
ンチクストスイッチを実行した後でプロセッサPRIが
割込みのゾロセメを開始させたことを知らせている0次
にゾロセメfPR3は、割込みによって知らされたプロ
セスを開始させる為のマイクロ命令のアドレスを転送す
るアドレスバス84を操作する。
ゾロセメf P Rlがそのコンチクストスイッチの実
行を完了すると、プロセッサPRIがこのマイクロ命令
のアドレスをロードし、割込みパス13及び割込み準備
線104の電位を引き上げて(又は引き下げを止めて)
割込みが再び受けとれる状態となったことを知らせる。
・ ここまでは再構成可能な機能及び多重プロ1ツサ機能を
提供する割込みノロトコールの組織を説明してきた。再
構成可能機能を提供する為に必要か命令構造に使用する
この他の構成要素は、DLA′22及びDLAデコーダ
26によって通訳される時に、状況パスマルチプレクサ
48及び50の再構成を特定するか又は、BCU5gの
内の1つに含まれるパイディレクショナルスイッチ17
8.180及び182のオペレーションを特定する命令
を有している。
本発明の再構成可能な1Cの実施例は、84ビンパツケ
ージの中に含まれる。(64ピンでデータ及びアドレス
tまか′なう112ピンノ母ツケ7ジも選択できるがあ
まり経済的でない。)ある種の構成に関しては、84ピ
ンパツケージをフルに必要としない。故に、このような
応用例の為に設計されたRIGを中間的な量で製造する
為には、もつと安価な・臂ツケージを使用することがで
きる。
本発明のRICの為に好ましいパッケージは、例えばこ
こに参照として示すエレクトロニクスマガジン1981
年6月30日号の39から40頁で記載されるような8
4ピンプラスチツク・リーP aチップキャリアである
。しかし第34図ではRICが超大規模DIPパッケー
ジの中に含まれる場合のピン配置を便宜上示す。
本実施例のIRCは2“つの1゛6ピツトデータ/アド
レスI−トを有している。各々のポートはデータ及びア
ドレスを運搬する為の16本のノ々イディレクショナル
Sを有している。/−) 1におけるデータ/アPレス
ピンは、1から16まで、I−ト2のピンは26から4
1までの番号力;ふっである。データポート2の対応す
るデータ/−ト1のピンは、機能的に等しいのでポート
1で働ぐピンのみに関し示す。第1及び第2図で示す外
部データポートF2及びF3にデータポート1及び2が
対応する。簡単なピンの配線に加えて、外部データポー
ト72及び73は、1個以上のRIC。
外部メモリ、110装置及びアPレス装置の間を結ぶ共
有外部パスの制御に対し仲裁を行う和議信号(hand
shak@signals ) (ピン17及び18)
を有している0各々のポートは、ノ9スでのデータ及び
アドレスの送信及び受信の同期を行う為の追加のピン(
22及び23)を有している。各々のポートは、パスの
状況、及びパイディレクショナルな一対のプロセッサタ
ダアイデンテイファイヤー(・24及び25)に信号を
送るノ々イデイレクショナルな3本の線の組(ピン19
−21)も有している。デーJ / −ト1と2は独立
している。しかしながら内部的には、両方のポートに同
じオ(レーションを回帰的に実行させ、外部的には2つ
のポートを1つのポートのように扱うことでこれらのポ
ートを単一の大きなポートとして作動させることかでき
ろ、外部データポートには主として2つの機能がある。
第1の機能は、外部デー4/−ドア2及び73としての
役目である。データポートの主要機能の一つは、内部デ
ータバス56と外部データポートピンの間のインターフ
ニーストしての役目である。実際上これの意味すること
は、データポートが内部命令を受けとってデータ及びア
ドレスを外部に送る機能を持つということであって、デ
ータポートはこの機能を果たし、それを適当な信号にし
て外部ピンに送ることができる。
第2にデータポートは、外部ピンから情報を受けとシ、
次に適当に変換して、適当にその信号を内部RAMパス
56に送っている。第2の主要機能は、ブロック転送モ
ードである。これは、例えば1つのアドレス及びデータ
ワーrを外部に送る命令を送るかわシに、内部的に制御
及び命令を受ける多重アドレス及びデータワーrを送シ
出している比較的−搬的な命令を送っている点で上記に
説明シた他のオペレーションとはわずかに異っているO 従来において、データ又はアドレスの内の最上位の固ま
#) (chunk )は第1のサイクルで送られ、そ
れに連続するサイクルにおいて次次とよシ下位の固まシ
が送シ出される。全てのアドレス又はデータの固tbは
最初の(最上位の)固まシが送られた同じポートから送
られる。
これらの2つのデータポートはチップ上の全てのプロセ
ッサに共通する。2つ以上のプロセッサを持ついかなる
プロセッサ又はいかなる内部構成も、いずれかのデータ
ポートを使用可能である。
/−)は、プロセッサ内のメモリマツノ譬−34によっ
て選択される。
以下で述べる外部通信プロトコールに関する機能に加え
て、外部データポート72及び73もプロセッサによる
データバスプロトコールの使用に関し、上記で説明した
ものと全く同じ回路を有しているので、外部プロセッサ
もまたチップ上のメモリにアクセス可能である。
れ= / ”−)−(D 漣*   共有のデータ・f
スを仲裁する機能が備えられている。各々0RICは、
−外部仲裁回路、マスタースレー!機構、又はラウント
ロピン仲裁機構で動作する。RIGの動作が開始すると
、仲裁モードが指示される。゛仲裁信号はf−タ/4ス
可動(DPAV)及びデータバス容認(DPGR)信号
と呼ばれる。信号はポート1に対してはDPAVl及び
DPGRI (ピン17と18)、I−ト2に対しては
DPAV2及びDPGR2(ピン42と43)と表示が
つけらへる。以後こ1れらの信号の表示は2つの同一な
ポートの間を区別する為に参照番号を使わずに参照する
。外部仲裁回路モードが使用される時RIGがノロセス
を開始し、外部回路に接続するDP^■出力信号の電位
を上げるととくよってパスを支配する。
仲裁機構がプロセッサの要求に対しr−タ/ナスが使用
可能でおるか判断し、要求元のDP(aR倍信号電位が
、ひき上げられる。マスタースレーゾモードでは、マス
ターRI Gが常KINスを制御している。従属RIG
がパスを使用したい場合には要求’1DPAV信号でマ
スターに送っている。マスタニは%DPGR信号の電位
を上げることでパスが使用可能であることを知らせる。
この他のモードの仲裁機構としてはラウントロピン機構
がある。
この機構では、論理1示データバスを使用するプロセッ
サの間を循環している。RICがデータバスのオペレー
ションを完了しているか又は、続行中のものがない場合
、RIGはそのDPARの電位を引きあげる。これは、
隣接するRIGのo p a R信号に接続される。デ
ータ/4スオペレーシヨンが続行中である場合、DPG
R信号が1になると、RICがデータバス上支配するよ
うになる。さもなければRIGはそのDPGR信号の電
位を上げる◎パスを使用できなかったRIG[他の資源
がhずれもパスの使用を必要としていないと判断した場
合にこのRIGは循−壊している1をトラップするーそ
こで(もし存在すれば)同期を   “維持する為にこ
のRIGはそのDPGR’(i引きあげて1″ft再び
循環させる。
状況を示す5つのピン(19−21及び44−46)を
有する・データ・量スを制御している使用中のプロセッ
サはパイディレクショナルピンに出力してデータi4?
スの状況を知らせる。状況ピンの配置は、ポートlに関
しテーブル1にリストしである。(ポート2はピン44
−46が第64図のピン19−12に相当することを除
けば同一である。) ピ    ン 19  20  21        機    能0
  0  0   隣接するRIGへの書込み001 
  隣接するRICからの読出し0  1  0   
割合てアドレスへの書込み0  1  1   割合で
アドレスからの読出し1  0  0   メ七りへの
書込み1 0  1   メモリからの読出し1   
1    Q    I10装置への書込み1   1
   1   110装置からの読出しデータバスの状
況はデータノ(スオペレーションの型式を示している。
データパスオペレーショ/に関しては4つの割当て先が
存在しうる。即ち、割当てられたRIG、データ転送の
最初の部分によって特定されたアドレスによる割当て、
システムメモリ又はシステムI10ユニットの4つであ
る。
読出し又は書込みオペレーションはこれら4つの割合て
のいずれでも実行可能である。いずれかの割合て先に転
送される16ビツトアドレスユニツト及び16ピツトデ
ータユニツトの実際の数は、RICのノロダラムによっ
て又は、割合ての)・−ドウエアによって決定される。
直接的な通信は隣接する1つのRICに対してのみ有効
である。割当てアドレスモードはデータ/4スオペレー
シヨンに対し1つ又は複数のソースを特定する一般的な
方法である。データ転送の第1の部分は1つ以上の割合
てを決定するアドレスを特定している。割合てアドレス
を含む16ビツトユニツトの数は、使用者によって特定
される。このモードでは、アドレスは、データバス上の
全ての受信プロセッサに送られる。受信側は、アドレス
が自分の持つアドレスの1つであるかを判断する。全て
のアドレスを受iつりプロセッサは、データノ臂スオペ
レークヨンの残り部分を分担し続行する。メモリ及び1
/l1割当てオペレーショ/に関してのアドレスの長さ
及びデータの長さのフォーマットも使用者によって特定
される。
PRタグピン: これらのピンは、ノマイデイレクショ
ナルなピンである。出力ピンとしてのピンは、r−一パ
スオペレーション中のソースプロセッサ、即チデータ/
4スオペレーションを開始した単一のプロセッサ又は内
部ロックステップのマスタープロセッサであるプロセッ
サを示す為に使用される。
故ニ、データポートはデータ/ぐスオペレーション全期
間中、データ/4スが送信側プロセッサに支配されてな
い組織において使用することもできる。
例えば、メモリに読出しの為のアドレスを送った後でR
ICはr−タグぐスを解除すること妙;でき、メモリか
データ/4スを支配するのを待ち、データを送シ返すこ
とができる。データI譬スを一時的に解除する理由は、
他のデータグ9スの処理がその間行われるようにさせる
為であるOこの解除の方針のもとにおいて、メモリから
ひきだしたデータは、読出し要求のシーケンスとは異る
シーケンスにおいて庁るので(これは゛例えば共用され
、内部差込み形式のメモリ内で起こる)、PRタグ情報
は、読出しオペレーションにおいて重要である。(外部
)メモリ制御器はデータがRIGに戻ってくる時にこれ
らのピンを・9ツフアしてデータに適当なタグをつける
。°内部的には外部データポート72又は73は割当て
線168のうちの1本の上のこの情報を解読し出力して
、受取ったデータを適当なメモリ位置にマツプしてゆく
。これらのタグピンはRICからRICへの通信を行う
割当てプロセッサをも指定している。
データ転送同期: これら2つのピンは、ソースと割あ
て先の間のデータ/4ス上をデータが正確に転送されて
いることを確実にする為に必要とされる。これらのピン
は、情報転送可能(IA)と情報受信(IR)でめる。
情報転送に関するプロトコールは、以下の通りである。
データ/4スの制御を行いながらソースはただちにIA
倍信号電、位を下げる。ソースはデータ/アドレスピン
に情報を設定するので、IA倍信号111まで電位が上
げられる。1^信号の電位を上げることによって全ての
受信側プロセッサに情報がデータ/4スによって転送中
であることを知らせる。IR倍信号通常低い電位にある
。受信側がデータ/4スからの情報をバッファする時に
IR倍信号電位が引き上げられる。IR倍信号ワイヤー
ANDに接続されている。故に受信側が多重に存在する
場合、IR倍信号、全ての受信プロセッサが情報を/f
ソファするまで低い電位のまま維褥される。
要約すると、r−タパスが特定されることで融通のキく
仲裁プロセスを持つ仲裁データ/17回路網が構成され
る。情報転送の割当ては、割当てをアドレスする機能を
持つので一般的なものである0情報のフォーマット1d
R1cをプログラムし、メモリ及びl/llシステムを
構成することで特定されるので一般的なものである。最
後に、情報の転送は、ある点からある点の間でも又は間
にいくつかの分岐を含むもの(マルチド占ツゾ)であっ
てもよい。
割込みポート(ピン5l−58)はこの目的を果たして
いる。第1の目的は、従来のマイクロコンピュータ及び
マイクロプロセッサが行っていたのと同様に外部からの
割込みを受けとシノロセスを行うことである。割込みの
概念は、他の受信側プロセッサに割込みを送信する機能
とともにこの従来的な目的未達成できるよう一般化され
る。この−膜化によってチップ内部の通信が可能となる
チップ内部の通信を可能にするという目的は、RICに
タスクをコープイネイトし情報を転送する役目である。
チップ内部の通信システムはチップ間通信の命令(co
rrrnunlqu・)の部分を転送する為に使用され
る。情報転送のデータ部分はメモリ間で通信される。例
え°ば、ディスク読出しオペレーションは、RIGの割
込みポートを使ってディスク制御器に命令を送ることに
よって開始される。
データ転送は、ディスクシステム及びメそリシス −テ
ムの間の個別なデータバスにおいて行われる。
割込み/!リー@:RICの割込み/−)は8本のピン
5l−58t−有している。ピン57−58は割込みを
送信中に使用される共有資源の要求を仲裁する為提供さ
れる3つのモードの仲裁が維持されている。第1vモー
ドは、ラウントロピン機構で仲裁される共通の割込みパ
スを維持している。
この機構の中で「1」の信号がチップの間を循環して上
記で示したように割込み資源を配分してbる。あるチッ
プに於る割込み可能(IA)出力(ピン58)が隣接す
るラウンの割込み許可(IG)入力(ピン57)に接続
される。IQ倍信号あるチップで「1」になる時このチ
ップは割込みを発生子ることかできる。送信すべき割込
みがそのチップに存在しない場合、IA倍信号電位が上
昇する。第2のモ゛−ドFir−タポート仲裁の方針で
説明したのと同じマスタースレーブ機構ドである。
通常は、マスターRICがz4スを制御している。
従JIERICがマスターのIG入力信号を上昇させて
アクセスヲ要求している場合、マスターRICは、好き
な時にマスターのIG倍信号電位を上げて選択的に従属
RICに対するパスの支配を得る。
もう1つの仲裁モードは各々のチップの割込み可能及び
割込み許可信号分外部仲裁ハードウェアに接続して行う
。RICが送信すべき割込みを有する時、RICはIA
倍信号電位を上げる。割込みポートが割込みの要求側に
よって使用可能な状態にある時、外部ハードウェアがI
G倍信号電位を上ける。6つの仲裁機構を用意する理由
は応用に対する一般性を与える為である。ラウンドーロ
ビーン仲裁機構では、少数のRIGを接続して内部通信
を可能にする経済的な方法を提供している・マスタース
レーブ機構では、多重な情報処理機能を持つ装置をコー
プイネイトする為の一般的な方法の使用を可能にする。
RICを外部割込み管理回路に付加できる機能性を有す
ることで、チップ内部通信に用いる回路網を思いのまま
に構成することが可能となっている。
割込み情報: ポートの4本のピン53−56は、外部
割込み情報専用のものである。外部割込み情報プロトコ
ールは、最大限に使用者が規定できるように特定される
部分は最小にしである。また情報プロトコールはアドレ
スとデータとの区別に関して示している。また、プロト
コールはメツセージの長さも示している。ここに示すも
のに関する特徴を以下に説明する。情報プロトコールは
、あらゆる情報の第1番めの部分が割込みの受取り手を
認定するアドレスであることを示している。アドレスの
長さは使用者忙よって指定される0割込みが送られる時
は、共通な割込みノマス上の全てのチップがアドレスを
受けとシ、それを記憶する。
以下で規定されるように、割込み状況信号は情報線がア
ドレスを這んでいるのかデータを運んでいるのかを知ら
せる。状況がアドレスビット力(送信されていることを
示す限り、受信側0RICはアドレス部分をパラレアし
ておく。割当てアドレスが送信された後、各々の受信側
RICHそのアドレスを使ってチップ上のRAMメモリ
66内のビットにアクセスする。N個のアドレスビット
カ!送られる場合、高いオーダーのN−5個のピラトラ
使用して内部メモリのテーブル内の/fイトにアドレス
する・このバイトはRICの外部割込み管理回路76に
送られる。次に低いオーダーの5つのアドレスビット、
がこのバイトの中から1ビツトを選択する。この選択さ
れたビットが「1」である場合、このチップが割込みの
割当て先であること金示す。このRICは何か送信され
てくるまで割込みと共働する残る情報を/fツソフしつ
づける。
このアドレス探索機構は、任意につけ加えられる。
単純な割込み機構では、受けとったどの割込みもいずれ
かの受は取ル手に対し送信することができるO 通信ポートの残る2本のピン51及び52は、割込みパ
スの状況を示す為に使用され゛る。ピンの配置はテーブ
ル2に示される。
−テーブル2 131     152 (ピン51) (ピン52) 1    1    受信側準備 1    0   2−タ転送 0    1    アドレス転送 0   0    情報i送完了 2本の割込み萩況線は2つの目的に使用される・第1の
目的は、ソースと割あて先の間に非同期の和議信号を与
え゛ることである。もう1つの目的は、アドレスの転送
とT−夕の転送を区別することである。割込み信号の転
送が始まる前は、割込み信号は11の状況(−即ちl 
31=1及び1s2=1)である。第1のニブルをアド
レスとする。@1のニブルが送られると割込み状況は0
1となる。全てのts1信号がいっしょにワイヤーAN
Dで接続される。全ての152信号もワイヤーANDで
接続される。1タイムの遅延の後、割込みのソースは+
51信号をフロートの状態にする。情報がチップにロー
ドされると各々の受信側RICは+31信号の電位をゼ
ロに引き下げる◎チップが受取った情報を処理した後で
このチップは+51信号をフロートの状態にする。全て
の受取シ側RIGが情報のプロセスを完了すると、IS
1信号は「1」を示すようになる。そして状況は11と
なる・送信側は送信可能な状態の次のニブルがもしあれ
ばそれを調査する。次のデータの形式は状況線によって
決定される。状況o1は、アドレス情報に対応し、状況
1aはデータ情報に対応する。データ情報が送られると
、送信側は、アドレス情報の転送に使用したのと同じプ
ロトコールを使用する。唯一の相違点は、情報が送られ
る後に、送信側が151及び152両方の信号をフロー
トの状態にすることである。最後のニブルが送られた後
で、送信側RIGが状況00を出力し、割込み情報ブロ
ックの終了したことを知らせる。遅延の後に送信側は状
況信号をフロートの状態にする。
このことが受信側に割込みが終了したことを知らせる。
外部仲裁機構が使用される場合は、割込みの終了は次の
割込会の開始が可能であることも意味する。もしラウン
トロピン−仲裁機構が使用される場合、送信側が割込み
可能信号の電位を上げて次の割込みを送信するRICの
選択を開始させる。
マスタースレーブオペレーションが使用サレ、送信側が
従属RICである場合、マスターが割込み資源の制御を
行う。マスターが送信側である場合、従属R1−CK対
し割込み資源をせシあうことができることを知らせる。
通信プロセスはチップの外部割込み管理回路76にMP
Sが割込みを送シ出すことによって始まる。上記で示し
たように、優先性バイト及びランタイム情報である4ビ
ツトは、内部割込みの受信側に送られる。割込み管理回
路76が内部割込みを受けとる時、優先性バイトは、テ
ーブルエントリを示している。このテーブルはチップO
RAM66内に含まれている。テーブルエントリは、メ
ツセージブロックを示す。ランタイム情報は、メツセー
ジブロック内のバイト数を意味する。これによって15
バイトを送信することが可能である。
ランタイム情報が10進法上のゼロである場合、メツセ
ージブロック内の第2のバイトがメツセージ内のバイト
数を有している。第2のバイトが(ランタイム情報と同
時に)10進法のゼロである場合、次の2バイトがメツ
セージブロック等の中のバイト数を有している。
チップの外部割込み管理回路76が外部に送信する為の
割込みを受けとった場合、外部割込みパスにアクセスす
ることができることにょル割込み管理回路76が割込み
送信プロセスを開始する。
仲裁機構がラウントロピン形式である場合又は、仲裁機
構がマスタースレーゾ形式であって送信側RICが従属
関係にある場合、送信側は割込み許可信号が「1」にな
るまで待轡する。マスターRICが資源を制御する時は
いつでも、マスターは割込みを送ることができる。外部
の仲裁msが使用される場合、′送信側RIGは、割込
み可能信号の電位を上げる。送信側はさらに割込み許可
信号が「1」を示すようになるまで待機する。割込み許
可及び割込み可能信号で制御されるハードウェアの制御
方針は、開始時点で発生した2つの状況ピットによって
決定される。これらのピットが11であればラウントロ
ピン仲裁機構を使用しこれらのビットが00を示せば外
部仲裁機構を使用する。マスタースレーブ仲裁機構は1
0を示す場合に使用される。
外部割込みパスを支配できるようになった後、外部割込
み管理回路が割当てアドレスを送る。割込み管理回路7
6はチップのRAM66からデータをとシだしその1タ
イムに1ニツルの情報を割込みボートの情報線53−5
6に送る。ソースノロセツサが外部割込み管理回路76
に優先性/(イトを送シ、外部割込み管理回路76の送
信オペレーションを開始させるととKよって・、メツセ
ージブロックの開始が知らされる。優先性/−rイトは
、外部割込みテーブル内のエントリを示す。この外部割
込みテーブルは、割込みが外部的にも内部的にも両方に
対し送信されるのかどうかを示す)々イト及びメツセー
ジブロックの開始アドレスを示すバイトの両方のバイト
を含んでいる。テーブル内の第1のバイトは、自己に対
する割込み、即ち外部及び内部に対し回帰的に送信され
る割込みを示す為に使用される。この型の割込みは以下
で示すような、外部ロックステップに対する割込みに必
要とされる。このバイトの一番左のニブルは全て「1」
である。右のニブルは、内部のどのプロセッサに割込み
を行うかを示す為に使用される。ニブルの最上位ピット
が、PH1に対応し、次の最上位ビットは、PH1に対
応し、以下この通シ対応する。もし、右側ニブルのいず
れかのビットに「1」が含まれる場合、それに対応する
プロセッサは、そのプロセッサに対する割込みを受けと
っている。割あてアドレスの最後はゼロのバイトで位置
を示される。外部割込み管理76がゼロのバイトの存在
を検索する時、もしゼロが存在すれば割込みメツセージ
のデータ部分を送る。データ部分の終了は、t+ゼロの
バイトで知らされる。次−割込み管理回路76はゼロを
検知した場合、アドレスのソースを送る。内部割込みデ
ータ構造は、第55図に示される。外部割込み管理回路
に知らされたメツセージブロックの長さによって決定さ
れた通シのメツセージブロックが送り終わるまで割込み
管理回路がニブルを送る。メツセージブロックが送られ
た後で且つ外の内部及び外部に対する割込みのプロセス
が始まる前に、外部割込み管理回路76はテーブル内に
割込み状況を割込みを発生したプロセッサに対し割込み
を送る。このプロセッサが割込みを開始する。また、割
込みメツセージブロックの送信が例外的に中断された場
合もこの状況が同じテーブル内に書込まれ発生元でああ
プロセッサに割込みが行われる。この割込み送信プロセ
スは第36図に示す。
上記で示したように、共通割込みパス上の全て0RIC
#−i割当てアドレスを受けと)、こnをそAぞれの持
つ外部割込み管−回路76内に・マッファする。アドレ
スを受取った後で、各々の外部割込み管理回路76がひ
とつのピットにアクセスし、それのあるそれぞれのチッ
プが割込みの割合て先であるかを判断する。あるRIG
が割込みの割当て先である場合、外部割込み管理回路7
6は残るメツセージをそのチップの内部RAM内にノ9
ソフアする。メツセージブロックのデータ部分の終了ま
でくると、割込み管理回路はゼロのバイトを1きこみデ
ータ部分の終了を示す。割込み管理回路は「1」が送ら
れてきた場合割込みのソースアドレスもバッフ了する。
メツセージブロックを送シおえた後、割当て先R,IC
の外部割込み管理回路76は、割当てアト−レスを使用
して内部RAM66内の外部割込みマツプテーブルにア
クセスし、これによってRIG上のどのプロセッサが割
込みを受呟とるのか又は割込みは内部的にどの程度あ優
先性を持つのかと判断している。内部割込みあ優先性は
、メツセージブロックの開始位置及びメツセージの長さ
が書きこまれる外部割込みメツセージテーブル内の位置
を指定する為に使用される。
さらに、外部割込み管理回路は割込みをチルプ上のプロ
セッサに送る。割込み管理回路は外部割込みメツセージ
テーブル内の情報を使ってメツセージブロックにアクセ
スしこれの一プロセスを行う。
外部割込み管理回路が使用するRAM領域のメモリ管理
は、割込みを送ったシ受けたシするグロセッサーにより
行われる。プロセッサが外部割込みを送る時、割込みは
ポインタをメツセージブロックにわたしている。外部割
込み管理回路76が割込みを送った後に、送信したプロ
セッサには送った割込みの状況が知らされる。割込みが
誤りなく送られた場合、プロセッサは改めてメツセージ
ブロックのメモリ領域の使用を請求できる。外部割込み
管理回路76は、プロセッサPRQ〜PR3に自分自身
のメモリの管理を行わせる機能はない。
故に外部割込み管理回路76は、外部から受けとったメ
ツセージブロックを書きこむ為の領域を確保する為にメ
モリの管理を必要とする。外部割込み管理回路はメツセ
ージブロックを記憶しておく為に2つのメモリ4インタ
:現在のメッセーノブロックポインタ(CM、)及び次
のメツセージブロックIイタ(NMB)t−有している
。CMBが有効であれば外部割込み管理回路76#iこ
のポインタをメツセージブロックの開始として使用し、
受取ったメツセージブロックの各々のバイトが瞥きこ壕
れた後でアドレスIインタをインクレメントする。割込
みメツセージブロックを受けとった後、割当てプロセッ
サは、割込みを知らされる。
外部割込み管理回路はNMBを育ち、K CB Mに変
えて、NMBが有効でないことを記録する。割込みをう
けとったプロセッサはただちに新しいメツセージのブロ
ック領域を計算して出すという高騒優先順位のプロセス
を開始する。この新しいメツセージブロックの開始アド
レスは外部メモリ管理回路のNMBレジスタに書こ1れ
る。外部メモリ管理回路がCAM及びNMBのどちらの
ポインタも有効で々いという状態を示すように々ると、
割こみの送信側に「用意できて暦表い」という信号を送
って、どもらかのポインタが有効となるまでメツセージ
ブロックの送信は停止する。
外部割込み管理76は開始時点で初期化される最長プロ
ックノダラメータを有している。最大の長さよシ長いメ
ツセージブロックが送信される場合、外部割込み管理回
路は「受は取り準備ができていない」という信号を割込
みの送信側に送る。1+外部割込み管理回路はソースゾ
ロセッサを判断しそれらにメツセージブロックのあふれ
を意味する割込みを送る。プロセッサはプログラムされ
ていた動作を実行する・例えば送信(1111−が時間
外に超過した後で、プロセッサは割込みを途中で停止さ
せることはできなくすることもできる。この他にも・外
部割込み管理回路76に他のメッセーノブロックポイン
タを送ることもできる。外部割込み管理回路76は内部
割込みによって新しい、メモリポインタで開始するメツ
セージブロックをひき継き受けとらなくてはならないこ
とを知らされる・この後者の方法は、メツセージブロッ
クの長さが様々テ、最長□のブロックの長さが大多数の
メツセージブロックよシ長いか又は等しくセットされる
場合に使用される。
この割込みインターフェースを提供する目的は、使用者
が割込み機構を規定できるようにスペクトルを提供する
為である。最も簡単な割込み機構は従来のマイクロプロ
セッサで使用される割込み機構と類似している。このよ
シ簡単な機構よシ更に融通性を拡大する為には内部的に
ゾログラム構造を形成する必要がある。
状況ポート1(ピン59−67)及び状況ポート2(ピ
ン6g−76)である2つの状況ポートが提供される。
状況ポートの信号は同一である。
故に状況ポート1のみに関し説明を行う、状況I−トの
主要な機部の1つは、異るRIC上のロックステップモ
ードの2つのプロセッサに信号を提供することである。
状況ポート1は、PRQ又はPRl、又はロックステッ
プで接続されるPRQ及びPR1’l外部プロセッサに
目ツタステップで接続する為に使用することができる。
状況ポート2は、PH1又はPH3に関し、あるいは、
PR2又#1PR3がロックステップ内で最も重畳なマ
スタープロセッサである内部のロックスジテップに関し
外部的にロックステップを形成する為に使用することが
できる。各々の状況ポートには、4つの型のピン機能が
ある:即ち、ALUの結果状況、桁上は連結、シフト/
循環連結及びチップ内部の同期である@状況ポー)1(
ピン59−67)は、内部状況パス52及び54に外部
状況ポート75(第1図を参照せよ)を通して接続され
る。同様にして状況/−ト2は、外部状況ポー)74(
第1及び第2図で示す)を通して接続する。
ALLIO結果状況:   ALLJの結果を示す為に
#i4つの線59−62が存在する。負の結果状況N、
ゼロの結果状況21桁の結果状況C5及びオーバーフロ
ーの結果状況Vという信号が存在する。
これら4つの信号は、各々外部的にロックステラ!で結
ばれる状況/−)全てが接続する外部状況パスにワイヤ
ーへNO接続される。これらの信号がコード化され16
の^Lυ結果状況のうち1つを示すようになる。これら
の線のオペレーションは上記で示したような内部ロック
ステップ構成におけるALU結果状況の内部での発生及
び(内部状況)4ス52及び54における)^LUの接
続やオペレーションとほとんど同様である。
は桁上げ信号(ピン63)及び桁下げ信号(ピン64)
を有している。あるRIGの桁下げ信号は次に高順位の
RIGの桁上げ信号と接続される。
あるRICで完了した演算が使用される場合、最上位プ
ロセッサは最下位プロセッサの桁上げ信号に接続される
シフト/循環連結:  シフト/循環連結(shrtt
/ rota’te目nkage )は、外部的KOツ
クステツゾで”接結−t−るプロセッサ間のシフトオペ
レーションを実行する為に使用される。RIGのシフト
/循環高電位信号(ピン65)は、次に最上位のRIG
のシフト/循環低電位信号(ピン66)に接続される。
最上位RICのシフト/循環高電位信号は、最下位RI
Cのシフト/循環低電位信号に接゛続されて循環連結が
形成されている。
を行う為には、外部的にロック2テツゾで接続するプロ
セッサが確実にフェイズ内で同じ命令を実行するように
し々くてはならなXA6外部ロツクステツ!内のプロセ
ッサは、同じRIGの中の1つのRICO上に形成され
る他のプロセッサが外部   ”のロックステップで接
続するプロセッサとは独立して作動されることから、同
期を行わずにロックステップからけずれることができる
。故にマイクロ命令をとシだす時間は、ロック2テツゾ
で接続されるプロセッサを有するRICの間で様々であ
る。チップ間の同期ピンはフラグとしての役めをし、各
々のプロセッサが先のマイクロ命令を完了し次のマイク
ロ命令を取り出したことを知らせておシ次のマイクロ命
令を実行する用意ができていることを示す、チップ間の
同期ピンはワイヤーAND接続される。全ての外部的に
ロックステップで接続されるプロセッサの次のマイクロ
命令を実行する用意ができた時、チップ間の同期線の電
位が上がる。もし1つ以上のPRの用意ができてない場
合、線の電位は低くなる。同期線の電位が高い時、次の
クロックサイクルで実行が開始する。
(共通な外部ロックステップ内のPRを持つ全て0RI
Cは同じシステムクロックを使用しなくてはならない。
)実行が始まった少し後で、チップ内部同期線の電位は
全てのpRが次のマイクロ命令を実行する用意のできた
状態に々るまで低くなっている。PFIが外部的にロッ
クステップで接続される時、マイクロ命令の実行中はP
Rに対する割込みはおこってはならない。この割込みの
制限によって、マイクロ命令の実行が開始した後も外部
でロックステップ接続するプロセッサ間の同期は確実に
保たれる。この制限で得る利点は、状況ポートのピンの
為に他の同期手段を設ける必要がないという点である。
外部でロックステップで接続するプロセッサに関しては
もう1つの事項がある。外部のセックステップ内のプロ
セッサに対する割込みは、プロセッサの同期を妨害する
ことになるので、割込みによる効果を考慮しなくてはな
らない。追加のピンあるいは追加のオ”−パーベッドを
使わずに外部的fkC2ツクステップ接続の同一を維持
する為には、外部ロックステップに対する割込みは、外
部ロックステップ内の全てのM9Pに対して行われるよ
う制限されなくて゛はならない0割込みのサブセットに
割込みを実行することは可能なのでこれはあtb厳格な
制限ではない。外部ロックステップ全体に対し割込みを
送ることを必要とするこの制限によって、外部ロックス
テップ内のちょうどプロセスを開始しようとしているグ
四七ツフに割込みの名曲を知らせる必要性を省くことが
できる。外部ロックステップ全体に送られる割込みは適
切に実行される。これは、割込みが行われる外部ロック
ステップを有する全てのRICが同時に同じ割込みを受
けとることによる。fllcll上スの外部割込み管理
回路は、受取ったオー〆で割込みを行う、故に、外部ロ
ックステップ内の全てのプロセッサは同じオーダーで割
込みを受取る。RIGの自己に対する割込み(5alt
Int・rrupt )に関しての特徴は、外部ロック
ステップに対する割込みが割込み先である外部ロックス
テップ内のプロセッサを有するRIC内で発生される場
合に必要となる。前に述べたように、自己に対する割込
みは、割込みの送信側にとってそ、の送信側自身が受信
も行っているものとして取り扱われる。
上記で説明した通シ、−外部ロックステラグ内のプロセ
ッサはマイクロ命令の実行中は割込みが行われることは
ない。マイクロ命令が終了すると割込みが行われたプロ
セッサは4本の^LU結果状況線にコーrを発生する。
(即ち、0111である。)このコードは、外部ロック
ステップの割込みが少くとも1つのプロセッサによって
受けとられたことを示している。これによって外部ロッ
クステップの実行は停止する。各々のプロセッサはコン
チクストスイッチが実行されるとチップ間MSP同期線
の電位を低く保つのをやめる。現在の割込みよシ高い優
先順位を持つ他の割込みが、現在の割込みが入れ変わろ
うとしている期間中に外部ロックステップに送られる場
合、全てのプロセッサが現在の割込みに変わるまで次の
割込みは無視される。
状況ポートにけもう1つ重要な機能がある。外部ALU
状況ピyNZcVは、制御OL^22への入力として実
際の内部ALU状況ビンを配置することによって決定さ
れる値を持つ。制御DLA22への入力は外部ピンに送
られた値を発生する。  ゛故に上記で示したような機
能によって、リアルタイム信号を発生する為Kf用され
る実際の外部信号を発生することができる。例えば、R
ICに使用されるCRT制御回路の場合、N信号は内部
的に制御されて水平同期信号を発生する。また、チップ
間同期信号は内一部制御システム(即ちDL^22等)
に対する直接の割込みの時に使用される。
例えば、チップ間同期信号は、内部的には、外部クロッ
クとして通訳される。この外部クロックは、各クロック
サイクルの期間に所定のオペレーションを発生させる。
外部ロックステップの全てのプロセスは、割込みによっ
て開始される。RICのリセットによって外部ロックス
テップ内のマスタープロセッサが自己に対する割込みを
発生し、外部ロックステップを開始させる。プロセスの
完成時点で、マスタープロセッサは自己に対する割込み
を発生し、最も高い優先順位を持つ別々のプロセスを開
始する。
リセットインR1(ピン77)及びリセット°アウトR
O(ピン78)の2本のチップ制御線力5提供されてい
る。全てのRICから接続するR1及びRO傷信号別々
に接続される。R1信号はアクティブで高い電位である
。R1信号が「l」を示すまで電位を上昇されるとRI
Cは自分自前を初期化を開始しオペレーションに備える
。RO傷信号、有効にワイヤーANDで接続されている
RICが初期化オペレーションを完了した時、電位を低
くしであるRO傷信号フロート”の状態になる。全ての
RICが初期化を完了すると、RQ倍信号高い電位とな
シシステムが初期化を完了したことを示す@ チップが初期化されると、プロセッサPR3はただちに
、最も高い優先順位255を持つプロセスを開始させる
。この場合プロセッサPR3d、fwスターである・プ
ロセッサPR3は次にチップ上のRA M 6.6 電
位t r OJに固定アドレスをロードし、プロセッサ
PR3はそこで他のプロセッサに対する割込みを行いこ
れに必要なプロセスを開始する〇 好ましい実施例において、この中のRICは、高出力部
分に使用される0MO5を持つ1マイクロメーターの微
細加工によるNMOJK実施されている。2つの出力ピ
ン81及び82が3がルトと接地電位で使用される。
更に、本実施例はRIC上にクロック発生器を設置し、
2つのクロック入力(ピン79及び80)の間にのみ結
晶を設置する必要がある。その代わりに、所望の通シ例
えば多重RICを使ったシステムに実施する場合では、
外部クロック回路をこれらのピンと接続することができ
る。
第57図から第41図は、1つ又は2つ以上のRIGチ
ップを使って与えられたある特定な構成を示す。第37
図は、16ビツトノ母イブラインRIC構成を示す、パ
イプラインプロセスは4段のプロセスにのみ限られるわ
けではなく、追加のRICをいっしょに連結することで
望むだけの数の段を含むことができることに注意して1
1 Lい。
第38図は、32ビツト/?イブラインを示している。
プロセッサPRI及びPR2tt、’ロセツサP Rl
 及(j P ROと同様ロックステップで接続される
ことに注意して欲しい。また、2段の)9イゾラインの
みが示されている力よ、単に充分な数のRICチップを
連結するだけでノ9イデラインの段をいくつでも望みの
数にすることができることも注意していなくてはならな
い。
第39図は、64ビツトの外部ロックステップノ臂イゾ
ライン構成を示している。RIC^のプロセッサP、R
3及びPR2及びRICBのプロセッサPR3及びPR
2は、全てのプロセッサーPRI及びPROと同様にロ
ックステップで接続される。
第39図において、両方のRICから接続する32ビツ
ト出力は、それぞれの単一な16°ビツトデータポート
において、多重化されているものとして示している。こ
れはノクイデライン構成の中の1つのデータポートは、
面の段から与えられたデータを受けとる為に必要とされ
るからである。異るチップ上のプロセッサPR3及びP
R2を含むように外部ロックステップ構造の大きさを拡
大することによって、よシ大きなノ9イゾラインを作る
ことさえ可能である。−故にノ臂イブラインワードの規
模は、32ビツトインクレメントまで拡大することがで
きる。32ビツトのインクレメントは、桁上げ7桁下げ
信号及びシフト/循環高/低信号を除き状況ポートの全
てのピンを接続して特定のステージを作シ出すことによ
ってつけ加えられる@(桁及びシフト/循環信号以外の
)これらの信号は、ワイヤーANDでいっしょに接続さ
れる時適正に機能する。桁下げ信号はピンの中の次に最
高位の桁を示すものに接続される。シフト/循環高電位
ピンは次に最高位シフト/循環低電位ピンに接続する。
(最高位シフト/循環高電位ピンは、最下位シフト循環
低電位ピンに接続する。)第40図は、64ビツトの規
模のステージのノ臂イブラインを示す、このステージは
、最初に再構成可能なIC上の4つ全てのプロセッサを
ロックステップで接続する。ことによって形成される。
第40図では、別々の16ビツトの入力及び出力ポート
として示されているので、4つのフェイズでの多重なデ
ータ、転送が必要となる。各々のICの2つのデータポ
ートを統合することも可能Fあるので32ビツトの並列
ポートが形成されるOこれによって第40図の64ピツ
トノ母イブラインのステージ構成は、4クロツクサイク
ルよシむしろ2クロツクサイクルでデータ転送を実行し
ている。
しかしながらこれによって、32ビツトの転送を可能に
し多重ステージノ9イブラインのステージの他のペアと
の間を並列にする別々の絶縁されたスイッチの組が必要
になる。故に、多重16ビツトポートを使用した方がは
るかに簡琳であシ、一般的に好ましい。
第41図は128ビツトの大規模ハイブリッドロックス
テッププロセス実行素子を形成するように接続された2
つのRICチップを示している。
内部的には各々のチップの上の4つのプロセッサーはロ
ックステップで接続されている。各々のチップ上に1つ
だけの状況ポートが使用されて図で示す通シ2つのチッ
プ間にロックへテップを形成し七いるので、いずれかの
多重化法によって、64ビツトの規模にした同様のハイ
ブリッドプロセス実行素子を構成することが可能である
多重RIG構成において、割込み操作通信網を使う樹系
図を用いることでのその融通性及び複雑性をさらに増加
することができる。
以下の3種の割込みは、一定の集積形式で取シ扱われる
。(1)チップ内部割込み:これらの割込みのソース及
び割当てプロセッサは同−RIC上に存在するのでこれ
らの割込みが1つのRICチップ上で発生し完全に同一
チップ上で処理される。
(2)チップ開割込み:これらの割込みのソースプロセ
ッサ及び割当てプロセッサが異るチップ上に存在してい
る。f311 / 0割込み:これらの割込みはI10
装置で発生し、1つ又は2つ以上のRICチッチップ上
在するプロセッサに対し行われる。
チップ内部割込みは通常チップ上でダイナミックな再構
成を行う為に使用される。例えば、内部的ロックステッ
プモード又はノ童イブラインモードのオペレーションを
実行させる為に使用される。
内部的な割込みは、同じRICチップ上の他のプロセッ
サからサービスを受ける為にも使用され石。
チップ内部割込みは多重チップ構成に於て重大な役目を
果たしておシ、チップ外又はチップ内のロックステップ
パイプラインモードのような様々な多重モードを開始さ
せる為に使用している。チップ開割込みも、異るチップ
上に異るプロセッサが使用される時K、多重プロセッサ
の態様におけるプロセッサ間の通信を行う為に使用され
る。一般的ガ例は、異るチップ′上に形成された中央プ
ロセッサ及び110プロセツサを含む多重チップ構成で
ある。“中央プロセッサ及び110プロセッサ′社割込
みを介して通信を行っている。110ゾロセツサは、中
央プロセッサと共通パスを共有していて、中央プロセッ
サのメモリとI10装置の間で情報の転送を行っている
故に、チップ上のどのプロセッサも3種類のソースから
割込みを受けとる可能性がある。:同一チップ上の他の
プロセッサ、又は異るチップ上のどれかのプロセッサ又
はI10装置からの割込みである。以下の集積割込み機
構は一定の型式でこれらの割込みを処理している。いず
れかの割込みに応答して、割当てプロセッサの割込み管
理回路12は対応するスケデユーラ16に指示して割込
みの優先順位及び現在実行中のプロセスの優先順位に従
って適轟なプロセスのスヶデユールを行う・上記で示し
た様に、各々のRICは外部割込み管理回路76を有し
、この割込み管理回路が外部ソースから受取った割込み
の受は取シ、記憶及び内部フロセッサへの通知を管理し
ていて、内部プロセッサによって発生された外部割当て
先に対する割込みの送信も管理している。
多数のRICチップを含むことのできるシステムの為の
上記のような割込み管理機構を一般化する為に、我々は
「クラチター(cluster ) Jの概念を導入し
ている。クラスターとは、相互に割込みの送信が可能な
一組の例えば4つのチップから成る組のことである。第
42図は、4つのチツ/を持つクラスターの例を示して
いる。故に、割込みの階級的組織(hierachlc
al organlzatlon )においては、クラ
スターはチップよシ1つ1位のレベルである。本実施例
の割込みシステムでは、クラ−スター内部のチップの役
目は、チップ内におけるプロセッサの役目と類似する。
ここで我々はパスを結合することでこのクラスター内に
発生するチップ開割込み、即ちクラ−ター内部割込みを
容易に操作することができる。このようなパスは「クラ
スター割込みパス」と呼ばれ、第42図に示されている
。このパスはまたクラスター内部で発生し、クラスタ外
部に割当て先を持つクラスター即ちクラスター開割込み
を運搬している。同様にパスはクラスター外部で発生し
、クラスター内のチップの内の1つに於るあるプロセッ
サに割当てる110及びクラスター開割込みの運搬に使
用されている。この階級的機構をもつと有効に利用する
為には、割込み管理回路218が加えられる。
この割込み管理は外部割込み管理回路76がRICチッ
プに対し行っていたと同じ役めをクラスターに対し行っ
ている。故に各々のチツ″ゾ216の外部割込み管理回
路76は、クラスターi込本パス214及びクラスター
割込み管理回路218とインターフェースしていなくて
はならない@クラスター間込み管理回路218の第1の
機能は、クラスター割込みパス214とクラスター間及
び110の割込みの間のインターフェースとして働くこ
とである。故にクラスター内で発生したクラスター開割
込みは、クラスター割込みパス214及びクラス−一割
込み管理回路218を介し外部クラスターに送られる。
同様に、クラスター外部で発生したがクラスター内にあ
るチップを割合て先にするクラスター間及びIloの割
込みは、クラスター割込み管理回路218及びクラスタ
ー割込みパス214を介し割当てチップに送られる。ク
ラスター割込み管理回路218及びクラスター内に暮る
(例えば)4つのチップはクラスター割込みパス214
を共用している。クラスター割込みパス214に関する
仲裁方針は1ラウントロピンに限られない。R10割込
みインターフェース76によって外部的な制御方法によ
って仲裁を行うことが可能である。故に違う仲裁機構を
必要とするクラスターは、それぞれの持つ各々のクラス
ター割込み管理回路218内にその機構を設けている。
クラスター割込み管理回路218は優先順位又は位置に
基づくような仲裁方法を使用すること本できる。優先順
位に基づく仲裁方針をとった場合、クラスター割込みパ
スを共用する全ての競争者(即ち、チッf216及びク
ラスター割込み管理回路218は、チップ外部に存在す
るパス仲裁論理K(他のチップに送る為の)割込ミの優
先順位の判断をゆだねている。そこで仲裁論理が最も高
い優先順位を持つ競争中の割込みソースを決定しパスの
制御をまかせる。位置に基づく仲裁方針が使用される場
合、パスの使用権につき紛争が起きた場合、クラスター
内部の競争者の位置が誰にパスの支配を与えるかを決定
する。例えば第42図では、位置に基づく方針を使って
決定する場合、争いが起ったならばクラスター割込み管
理218が常に第1の優先順位を持つとすることができ
、それぞれチップO,i、2% 3が続く。
設計者は、考想中の応用に適合するようにもつと複雑な
仲裁方針を自由に選択することができる。
しかし、優先順位に基づくようなよシ複雑な方針にはチ
ップ外部にかなシの論理を必要とするが、   。
ラウントロピン又は位置に基づくような簡単な方針はチ
ップ外部に非常にわずかな論理を用意するだけで使用で
きる。
クラスター割込み管理回姑2xsの第2の機能は、クラ
スター外部に出ていくクラスター間!1J込みの為の−
1またクラスター内に入ってくるクラスター間及び11
0割込みの為のバッファとして働くことである。このバ
ッファする機能は、本質的にクラスター内部の割込み暴
送とクラスター外部の割込み運送を隔離している。クラ
スター割込み管理回路218はクラスター内部外部両側
の割込み運送を同時に操作するインターフェースとして
設計されている。このようなりラスター管理回路はRI
C又はRIC内の1つ又は2つのプロセッサに設けるこ
とができる。
この点で生まれる明らかな疑問点としては、2つ以上の
クラスターを持つシステムでいかKして管理を行うかと
いうことである。これらのクラスターは、自分のクラス
ター割込みパス及びクラスター割込み管理回路を介しク
ラスター開割込みを送っている。さらに階級的組織によ
る管理機構を発展させて、−組の(例えば4つのンクラ
スーターを「マクロクラスター」と呼ぶことにする。マ
クロクラスター222内のクラスター220は、「マク
ロクラスター割込み管理回路」226に接dする「マク
ロクラスター割込ミパスJ224t−共有している。マ
クロクラスター割込みパス224及びマクロクラスター
割込み管理回路226はマクロクラスター222内に於
て、クラスター割込みパス214及びクラスター割込み
管理回路218がクラスター内部で行っていたのと同じ
役目を果たしている′。我々は、之の考え方をさらに発
展させることができる。故に(例えば)4つのマクロク
ラスター222で次に高いレベルになるような実在を作
りだすと考えることができさらにそれ以上発展させるこ
とも可能である。最後に、好きな数だけレベルを設けた
後で割込みを転送するパスを共有する(例えば)4つの
サプシステA234まで拡張し、これらから成るシステ
ムの段階まで運、することができる。このパスはシステ
ム割込みパス232″と呼ぶ。
第43図は、サブシステム0及びlである2つのサブシ
ステム234から成るシステムを示している。サブシス
テムlは、マクロクラスター0及び1を含んでいてサブ
システム0は、ただ1つのマクロクラスター即ちマクロ
クラスター〇を含んでいる。サブシステムlのマクロク
ラスター0は4つのクラスターから成シ、サブシステム
lのマクロクラスター1は2つのクラスターから成りサ
ブシステム0のマクロクラスターは2つのクラスターか
ら成る。各々のクラスターは4つのチップを有している
。この例ではサブシステムIH1つだけのマクロクラス
ター割込している。故にこのマクロクラスターの割込み
管理機能はサブシステムOの割込み管理に委託すること
ができる。これによってサブシステム0ではマクロクラ
スター割込み管理回路及びマクロクラスター割込みパス
を除くことができる。ここでは、割込みの階級的構造の
考え方を示している。
第44図では、割込みの階級的構造の考え方を示す樹系
図を用いて第43図のシステムが示されている。RIC
チップ216内のプロセッサPRO−PR3は樹系図の
最下位階級に存在し、木にたとえるなら「葉」の部分に
あたる。次に高い段階−にはRICチップ216を示す
節がある。その次の2つの段階にある節はクラスター2
20、その上はマクロクラスター222を示す。最後に
樹系図の根元では完全なシステム全体を示してhる。
樹系図にはレベルに番号をつけることができる。
プロセッサはレベル0とする、引き続きよシ高いレベル
に存在するチツf216、クラスター220マクロクラ
スター222は、それぞれレベル1.2.3・・・・・
・・・・ nで示すことができる。同様にして割込みの
階級的組織におけるレベルにも番号をつけることができ
る。割込みパスに関しては、チップ割込みパス88はレ
ベル0と番号のついた最下位レベルに存在する。クラス
ター214、マクロクラスター224、・・・・・・・
・・ サブシステム228及びシステム割込みパスは次
々と高くなる各レベルに存在する。これらはそれぞれ1
.2・・・・・・iと番号がつけられる。プロセッサー
の割込み管理回路12は最下位レベル即ちレベルOK存
在する。チップ76、クラスター218、マクロクラス
ター226・・・・・・サブシステム230の割込み管
理回路は次々とよシ高くなる各々のレベルに存在する。
これらに1,2・・・・・・nと番号がついている。プ
ロセッサーは、その完全な「アドレス」を与えることに
よって即ちシブシステム・・・・・・、マクロクラスタ
ー、クラスター、チップ及びプロセッサを規定すること
によってプロセッサーを完全に規定することができる。
故に各々のアドレスは、サブシステム・・・・・・マク
ロクラスター、クラスター、チップ及びプロセッサを区
別する為の構成部を有している。
我々は、このアドレス構成部に同様に階級的組織のレベ
ルを与えることができる。プロセッサPRO−PH1を
規定するアドレス構成部は、最下位階級即ちレベル0と
する。テップ、クラスター、マクロクラスター、・・・
・・・サブシステムを特定するアドレス構成部が次々と
高くなるレベルにそれぞれ属する。これらはレベル1.
2・・・・・・nと名づけられている。
チップ内のプロセッサ開割込みは、最も頻繁に起こる割
込みであると予想されるのでこれらの割込みの通信及び
処理は一般的にできるだけ迅速に完了しなくてはなら々
い。上記に示した通シ、1つの割込みについてのソース
、割当て、優先順位及び関連ランタイムに関する情報は
、一度ソースプロセッサがチップ割込みパス88の支配
を握るとちょうど1パスサイクル内で通信される。クラ
スタ内でのチップ開割込みは2番目に一般的な割込みで
あると予想される。本発明の割込み組織では、クラスタ
ー割込みパス214を使ってソースプロセッサからのソ
ースチップ216及びプロセッサPRQ−PR3、割合
でチップ及びプロセッサ優先性及びランタイムを確定す
る情報をクラスター割込み管理回路218に8パスサイ
クルで通信することが可能となっている。マクロクラス
ター内のクラスター開割込みはその次姉最も一般的′な
割込みであると予想される。本発明の割込み組織では、
ソースプロセッサからの割込みに関してのソースクラス
ター、チップ、プロセッサ、および割合でクラスター割
込ゾ、プロセッサおよび優先性及びランタイムを確定す
る情報は、マクロクラスター割込み・寸スを用いて10
パスサイクルでマクロクラスター割込み管理回路226
に通信可能となっている。次々と高くなってゆく各段階
における割込み期間での同様の情報の通信には、レベル
の高くなるごとに2パスサイクルのみ追加した期間が必
要となる。
第44図は、3つのサンプル割込み1,2、及び30期
間中の情報の流れる方向も示している。
この情報は、割込みのソースと割当て先、優先順位及び
ランタイム情報を規定している。我々はこの情報を「割
込み情報J′と呼ぶ。割込み1は、サツシステム1の中
のマクロクラスタ1内のクラスター3のサツシ2に属す
るPH1で発生し一同一チツブ内のPROに割当てられ
ている0割込み2は、サブシステム1の中の゛マクロク
ラスター0内のクラスター1のチツf3に属するPH1
で発生し、ソースプロセッサがあるのと同じマクロクラ
スター内のクラスター〇のチップO上のPROlPRI
、PH2及びPH1に割当てられている。
割込み3は、す!システムOのマクロクラスター内のク
ラスター0に属するサツシl、2、及び3上のPROで
発生する。割込み情報は一番下の「葉」から開始し、必
要な限υ上まで移動してゆく0即ちレベルを上に上って
ゆき、次に系図を下まで下って割あて先プロセッサを示
す「葉」の部分まで達する。割込み情報が樹系図内を移
動する時間内における割込みの移#を我々は、2つの2
エイズに区別している。これらのフェイズは、「上昇」
フェイズ及び「非上昇」フェイズと呼ばれる。′上昇フ
ェイズの期間中、割込み情報はきちんと樹系図を上って
ゆく、即ち、情報がレベル1の割込み管理回路からレベ
ル1の割込みパスを介しレベル(1+1)の他の割込み
管理回路に移動する。非上昇フェイズでは、割込み情報
は、系図の同じレベルを移動する、即ちレベルiの割込
み管理回路からレベル1の割込みパスを介しレベルIの
他の割込み管理回路に移動するか、あるいはまた系図の
下に向っておシてゆく即ちレベル1の割込み管理回路か
らレベル(+−1)の割込みパスを介しレベル(+−1
)の他の割込み管理回路−移動するかのいずれかである
。例えば、第44図の割込み3は割込み情報がサツシス
テム1内を移動している間は上昇フェイズである。割込
み情報力+ 7’ シx テムlの割込み管理回路から
システム割込みパスでサブシステム0の割込み管理回路
に移動する時、非上昇フェイズが始まる。情報がサブシ
ステム0内を移動する間、情報が割当て先プロセッサに
到達するまで非上昇フェイズが継続する。
上記の割込み3のように、ソース及び割当て先ノロセッ
サが異るサツシステム内に存在する場合、割込み情報は
最長距離を移動し、最長の時間を要する。一方、割込み
lOようにソース及び割当てプロセッサが同一サツシ上
に存在する場合、距離及び時間は最短になる。故に1一
番あまシ発生しない割込みが通信又はプロセスに存在す
る中で最長の時間を要する一方最も頻繁に発生する割込
みは最短時間で通信及びプロセスが行われる。この望ま
しい利点が割込みの階級的組織から直接的に生じる。
一般的なプロトコールはここでは、一番目のレベル(1
≦鳳≦n;l=Qである場合はRIC外部割込み管理回
路を意味する)の割込みパス及び割込み管理回路である
との見地で説明される。第45図で示すように、段Il
lの割込みパスは、レベル1の例えば4つまでの割込み
管理回路とレベル(1−M)の1つ割込み管理回路によ
って共有されることができる。一方、レベル]の割込み
管理回路がレベル(1−1>の割込みパスとインター7
子−スし、レベル(1+1)の割込み管理回路がレベル
(1+1 )の割込みパスとインターフェースしている
。我々は、ここでレベル■の割込み管理回路をとりあげ
て、割込みの上昇及び非上昇フェイズの区別を再考して
みる。
割込みの上昇フェイズの間、割込みはレベル10割込み
管理回路から譲られる。割込みは、レベル1の割込みパ
スを介し割込みの階級的組織の樹系図を上に上ってゆき
レベル(1+1 )の割込み管理回路に達する。上昇フ
ェイズ期間中の割込みの移動は、第45図に示されてい
る。
割込みの非上昇フェイズの間、割込みは、レベル署の割
込み管理回路によって送シ出され、同じレベルに留まる
。即ちレベル墨の割込みパスを移動し、レベル(1+1
)の管理回路に移動するかわりにレベル・の他の割込み
管理回路にゆくか又は、レベル(r’−1)の割込みパ
スを介し割込みの階級的組織の樹系図を下に向って移動
しレベル(i−1)の割込み管理回路に達するかのいず
れかで移動する。割込み移動の非上昇フェイズの期間中
の割込みの動きも第45図に示されている。
割込みの上昇7エイズ中に使用するプロトコールが第4
6図に示される。特に、レベルSの割込み管理回路2は
、割込みをレベル−の割込みパスを介しレベル(1+1
 )の割込み管理回路に送ルだしている。この割込みの
期間中以下の動作が行われる。まずレベル1の管理回路
2がレベル1の割込みパスを制御する。
パスサイクルOK’ついてニレベルIOソース割込み管
理が割込み情報線に全てゼロを送ってレベル(I−2)
の割込み管理回路をこの割込みの割当て先として指定す
る。レベル(1+1 )の割込み管理回路は、自分がこ
の割込みの割当て先であるかを判断する。各々の割込み
の長さは、ソース及び割あてアドレスの長さによって決
まる。レベル(1+1 )の割込み管理回路が最も長い
場合の割込みも記憶するのに充分なバッファスペースを
有して因る場合、割込み管理回路は割込み情報の受取シ
及び記憶を開始する。さもなければ、割込み管理回路は
、割込み情報の最初のニブルを受けとった事を知らせな
−、第46図では、転送同期信号は、割込み管理回路が
割込み情報を記憶する為に充分なバッファスペースを有
していることを意味する最初のニブルが受けとられたと
いうことを示している。
パスサイクル1から(2n+4)まで:これらのサイク
ルは、割込みの割当てアドレス、割込みの優先−位、及
び割込みのソースアドレスを指定する情報を転送する為
に使用される。割当てアドレスは、以下の順で送られる
。:サブシステム、・・・・・・マクロクラスター、ク
ラスター、チップ及びPR即ち1関連するアドレス構成
要素の最高のものから開始して、減少オーダーで階級組
織内を下に向ってプロセスが進行し、PRの認定まで至
っている0第46図では、サブシステム0、マクロクラ
スターl、クラスター3、チップl及び2、プロセッサ
PR2及びPR3が割当て先として特定されている。割
込みの優先順位は127であってランタイム情報は34
である。割込みのソースアドレスはザブシステム2、マ
クロクラスター1、クラスター2、チップ3PROであ
る。ここで関□連する最高レベルのアドレスがサブシス
テムアドレスであると仮定すると、最悪の場合でもソー
ス及び割当て先を認定する情報を転送する為には2nサ
イクルが必要とされる。割込みの優先順位及びその他関
連情報を送信する為には、あと4サイクルが必要とされ
る。例えば、最高レベルの関連アドレスがマクロクラス
ターまでだけである場合、マクロクラスター、クラスタ
ー、チップ及びプロセッサだけのシーケンスがパスサイ
クル1から5までで特定される必要がある。パスサイク
ル6及び7は、割込みの優先順位を転送する為に使用さ
れ、パスサイクル8及び9は、割込みについてのランタ
イム情報を転送する為に使用される。
ソースアドレスはパスサイクル10から14で送られる
上昇プロトコールと非止昇プロトコールの間には2つの
へ違いがある。1つは、上昇プロトコールでは、割込み
が次に高いレベルへと送られることである。非上昇プロ
トコールでは、割込は次に低いレベルへ送られるか又は
、同じレベルの割当て先に送られる。2つのプロトコー
ルの間でのもう一つの違いは、ソース及び割当叉アドレ
スが送られる順序に関してである。上昇プロトコールに
関してハ、最も高いレベルのアドレスが第1に送られる
。これに対し非上昇プロトコールでは階級的組織の中で
次のレベルがアドレスされて送られている。
以下の例でこれらのプロトコールをより具体的に説明す
る。サツシステム、マクロクラスター、チップ及びプロ
セッサPRから成る階級的組織を持つシステムを考えて
みる。あるサツシステムで発生しどれか他のサブシステ
ムに移動するよう割当てられた割込みは、テーブル3で
示すように階級的組織の中で移動する。テーブルは各々
のレベルでの(我々はチップ外の割込みプロトコールに
ついて説明を行っているのでレベルlから始まっている
)割込みデータバス上の割込みの運行を示しており一ソ
ース及び割込み先を認定する情報が転送されるシーケン
スを示している。
テーブルSU、以下の点につき示、してhる。割込み非
上昇フェイズが開始することは、割込みが階級的組織の
中で登る必要のある一番上のレベルまで達したことを意
味する。テーブル、に示される場合では、その最高位レ
ベルはシステムのレベル即ちレベル5である。割込みの
非上昇フェイズの間アドレスの第1の構成部で示すレベ
ルは、ソース及び割当て先を示す情報が循環する割込み
パスのレベルとマツチする。例えば、サブシステム割込
みパスがレベル3にあるとマクロクラスターを確定する
アドレス構成部もレベル3であるOテーブル3 使用中の割込みパス  ソース及び割当て先を確定する
情報を転送するシーケンス クラスターパス    サブシステム、マクロクラスタ
ー、クラスター、チップ、プロ セッサ マクロクラスター/マス サブシステム、マクロクラス
ター、り2スター、チップ、プロ セッサ サツシステムパス   サブシステム、マクロクラスタ
ー、クラスター、チップ、プロ セッサ システムパス    サブシステム、マクロクラスター
、クラスター、チップ、プロ セッサ 非上昇フェイズ サブシステムパス チップ、PR、サブ7.、テム※ マクロクラスターパス クラスター、チップ、PR,サ
ブシステム 、マクロクラスタ ー※ クラスターパス    チツf、PRsサブシスアム 
、マクロクラスター 、クラスタ ※ ※ このアドレスは割込みの割当てを決唆るのには必要
ない。故に割当てパス上を送信されない。
割込みの移動が非上昇フェイズの期間中、割当て先を認
定する情報のシーケンスは、割当てアドレスにある簡単
な「アドレス構成部を左にシフトせよ」というオペレー
ションの実行によして容易に導き出される。このことは
、割込み管理回路カニ手渡された割込みの割当てを認定
する情報のシーケンスを構成する為の筒部なアルゴリズ
ムを構成する為に利用される。割込み管理回路がパスを
制御するようになると、第1のサイクルで割合て先の割
込み管理回路が決定されることを思いだしてほしい。テ
ーブル3で示す通シ、割込みの非上昇フェイズ期間は、
割当て先割込み管理回路#i第1のアドレス構成部によ
って容易に決定することができる。割込みの上昇フェイ
ズ期間では、割当て先は、割当てパス上に全てゼロを送
信するととKよって決定する。
割込み管理回路によって実行されるオーバーオール機能
は以下の通シである。我には、レベル10割込み管理回
路を最初念頭において説明を行う。
一方でレベル1の割込み管理回路がレベル10割込みパ
スとインターフェースし、また一方ではレベル(1−1
)の割込みパストモインターフェースしている事を思い
だしてほしい。これらのパスは様々な方針によって仲裁
が行われる。これらの方針の典型的な例はラウントロピ
ン、優先性のへ順によるもの、位置順によるもの等であ
る。チップ割込みパス88はラウントロピンの順序で仲
裁が行われる。いかなる割込み管理回路も内外両側から
の割込みを同時にうまく処理することが可能でなければ
ならない。割込み管理回路と割込みパスの間のインター
フェースを示すブロック図が第45図に示される。
各々の割込み管理回路は、送信されるのを待つ割込み℃
待ち行列を保持している。各々の割込みに関して割当て
アドレスの優先順位、ランタイム情報、ソースアドレス
及びフェイズ(上昇か又は非上昇か)が待ち行列になっ
て保持されてbる。
割込みの上昇フェイズ期間中、関連する最高レベルから
開始する全てのアドレス構成部は、ソース及び割当て先
を決定する為に記憶されてbなくてはなら々い。割込み
の非上昇フェイズの期間では、割込み管理回路のレベル
よ)低い段階であるこれらの割当てアドレス構成部だけ
が割合て先の決定の為に記憶さ些る必要がある0例えば
クラスター割込み管理回路218は割当ての為にチップ
とプ  ゛ロセッサを特定する情報だけを記憶する必要
がある。先に入ったものを先に出す方式による待行列の
維持の方が簡単であるが、好ましい割込み管理回路は、
優先順位に基づく方針で待ち行列を維持している。優先
順位に基づき待ち行列の管理を行う場合、行列の中での
到着時間の順にかかわらず、行列の最前列にある割込み
がその列の中で最も高い優先性を持つ。
情報状況信号は、いつアドレス情報が送信されるかを示
してhる。上記で示した通り、割当てアドレスが最初に
送られ次に割込みデータ及び割込みのソースアドレスが
送られる。割込み管理回路は受取った割当てアドレスの
数を計数している。
この数及び割込み階級的組織に於るそのアドレスのレベ
ルに関しわかることに基づいて、割込み管理回路はソー
ス/割当てを決定す今情報を先着順のオーダで送るか(
上昇フェイズ)又は「アドレス構成部を左に循環せよ」
というオ(レーションを実行するか(非上昇フェイズ)
のいずれにするかを決定してhる。
階級的組織情報網は、RIC11j込みポート機能に対
する応用の一例として示されている。この割込ミボート
は、割込みトポ、ロノー及び割込みプロトコールによっ
てまったく一般的々ものである。
階級的組織割込み情報網は、情報網のある形態にすぎな
い。この情報網の中では、トポロギーに関しては変化さ
せることが可能でこのことがRIGの外部割込み管理回
路に影響し、2種類の変化を生む。第1の変化はし4ル
の数が変わると、情報網の中のアドレスの長さが変化す
ることである◎アドレスの長さが変化すると割込み管理
回路内のハソファスヘースモ変化スる。パンファスイー
スの変化は、RIC内に含まれてい々b割込み管理回路
のハードウェアの設計を適当に変えることによって操作
することができる。トポロジーの変化によるもう1つの
変化は、有効アドレスの組に関して起こる。この変化も
、RICの外部割込み管理回路を使ってプログラムする
ととKよって又は他の割込み管理のハードウェアの仕様
を変えることによって操作される。
上記説明はRIGのみを有する割込み情報網に限定され
て示しである。しかしながら、チャンネル、ディスク、
プリンター及び通信網インターフェースといったような
あらゆる110装置を含む情報網にも同じ様に応用する
ことができる。この応用性を保持する為に唯一必要とさ
れることは、I10装置がR10割込みポートと接続可
能なインターフェースを有しているということだけであ
る。
以上のように当初の目的ti成し、一般的な構造を持つ
Ict−再構成可能にして使用者のニーズにあわせたカ
スタムなIC唄安価に提供することができる。このよう
な再構成可能な機能を持つことで本発明はICによシ新
しい太き々応用の可能性を持九せることかできると確信
する。
【図面の簡単な説明】
第1図は、本発明の再構成可能ICの概略的全体図であ
る。 第2図は、1つのプロセッサを全体的に含み各各の種類
の外部インターフェースの内の1つを含むRIGの部分
的な平面図である。 第5図はNORゲート仕様として実施されたDLAのA
ND及びORマ) IJクス部分を示す部分図である。 第4図は、ダート仕様と名前のついた実施例であるDL
AのAND及びORマトリクスの部分を示す図である・ 第5図は制御パスの構成を示す図である。 第6図は、中央制御記憶制御回路と4つのモデユール制
御回路の間の関係を示す図である。 第7図は、中央制御記憶回路がアクセスされた場合の中
央制御記憶回路及びそれぞれのモデユール制御回路のオ
ペレーションを示すフローチャートである。 第8図は、花輪状に連結されたパス使用可能線の接続を
示す図である。 第9図は各々のプロセッサ内のALUの主要部分を示す
概略図である。 第10図及び第11図は、それぞれ各々のプロセッサ内
の機能ブロック及び桁上げ連結ブロック部分の回路図で
ある。 第12図は各々のプロセッサ内のバレルシフターの構造
を示すフローチャートである。 第1s図、第14(a)、14伽)、及び14 (c)
図は、各々のプロセッサ内のバレルシフタで実行される
第16図はr−タパスの構造を示す図である。 第17図は、データバスのノロトコールを示す図である
。 第18図は、各々の!ロセツを内のデータバスのブロッ
ク図である。 第19図はRICの内部RAMシステムを概略的に示す
図である。 第20及び21図はそれぞれのパス制御ユニットの構造
及びオペレーションを示す図である。 822図は、メモリスケデエーリングユニットのオペレ
ーションを示すフローチャートである。 第25図〜第25図は隣接するプロセッサの再構成され
た異るモードに対応して状況マルチプレクサが操作を行
う状況パスの内部接続を示す図である。 第26図、第27図及び第28図は、それぞれ独立モー
ドロックステップモード、パイプライン・モードにおけ
るRIC内のデータ及びコマンド命令の流れを概略的に
示す図である。 第29図は、各々のプロセッサ内のスケfユーラ及び割
込み管理回路のブロック図である。 第30図は、各々のプロセッサ内のスケデユーラのオペ
レーションのフローチャートである。 第31図は、割込み管理ワードのフォーマットを示す図
である。 9452図は、割込みが送られる時の制御記憶アドレス
線のフォーマットを示す。 第33図は、プロセッサP’R3がプロセッサPRIに
対し割込みを送る時の割込みのタイミングの例を示す図
である。 第34図は、RICのビンの配置図である。 !35図は、概略的に内部割込みデータ構造を示す図で
ある。 第36図は、割込みが送られている間の外部割込み管理
回路のオペレーションを示す図である。 第37図〜第41図は、2つ以上のRICチツl上t)
fI2七ツセッサ結すると七で可能となる構成の例を示
す図である。 第42図は、4つのチップからクラスタまでの5KI1
1級的組織内の不特定なレベルにおける割込みレベルv
m回m及びパスのオ(レーションヲ概重チクプ階級的組
織において割込みが上昇フェイズである時の情報!ロト
コール?示すタイミング図である。 菖47図は、各々のプロセッサ内に含まれるマイク誓シ
ーケンサのブロック図である。 符号の説明 PRO〜P R!−・・ゾロセッサ、12・・・割込み
管理回路、14・・・制御パス、52.54・・・状況
パス、56・・・f −p ハス、16・・・スケデユ
ーラ、22・・・制御DLA%28・・・ALU、36
・・・マイクロシーケンサ、38・・・制御記憶回路、
45.50・・・状況マルチプレクサ、60・・・RA
Mメモリモジュール、68・・・メモリスケデユーラユ
ニット、72〜76・・・外部インターフェース。 図面の浄書(内存に変更なし) 〉 ・? ( tgz2 Ft’gzJ Ov 中央制御!!與 Fig、11 右シフトの畢侠尾ど(トー右へシフト      右シ
フトの5’C頭ビットFig、 /4 (C) シフトハ場1ltys□      □Ft’g、23 pH3、p*x PIIm                    p
H?Ft’g、25 テ5タボート2 「 姿                       ・
へペ           ′、λ 徊た                  掴bFt’
g、 4/ ス7−ン71v&5 \ 9 MN” H、目   目 昭和  年  月  日 1.事件の表示 昭和j7年特許願 第12ggoj号
2、発明の名称   再構成可能集積回路3、 補正を
する者 事件との関係  出願人 4、代理人 7、補正の内容  別紙の通り 図面の浄書(内容に変更なし)。 昭和  年  月   日 特許庁長官 若 杉 和 夫 殿 3、補正をする者 事件との関係 出願人 4、代理人 5、補正命令の日付  自  発 6゜ 8、補正の内容 (1)  明細書落Il1頁第1行に1示す、1とある
を「示す、ことでぜット13におけるC3がlのと亀は
全部のコンチクストスイッチを、C3がθのときは部分
的なコンチクストスイッチを。 またビット12におけるBuが7のとき社すぐにプロセ
スされない場合の割込みをバッファすることを、BUが
Oのときは割込みなノ臂ソファしないことをそれぞれ表
わしている。」と訂正する。 (2)同書第1Irj頁第1り行に1ある。1とあるを
rあシ、第23図Fi独立モード内部接続を。 第24c図はノ譬イブツインモード内部接続を、第21
図は四ツクステツf4−ド内部接続をそれぞれ示してい
る。」と訂正する。 (3)  同IFjl/ f AJ[j17行K ” 
?−? −) −t”l!、 ’とあるのを次の通シ訂
正する。 「チャーFであシ、この図に用いられる、P(INT、
〕は割込みの優先順位t。 P(NEXT)は次に高い優先性をもつfwsセスの優
先順位をQ!−= (CU R)は現在実行中のプレセ
スの優先順位を、NEXTは次にス、ケrエールしたプ
目セスの優先順位を持つレジスタを、CURRENTは
現在実行中のゾロ讐スの優先順位を持つレジスタを%T
EMPは一時的なレジスタを示している。」 (4)  明細書中、下記各個所の誤記を夫々訂正する

Claims (9)

    【特許請求の範囲】
  1. (1)複数のプロセッサと、 上記のプロセッサの全てに各々が接続される複数のバス
    と、 各々の上記プロセッサに接続されて上記プロセッサの構
    成を選択的に変更しこれによって上記プロセッサを、ロ
    ックステップでまたは独立に作動可能とする手段 を有するモノリシック基板を有する集積回路。
  2. (2)  上記バスが複数の線を有する状況バスを有し
    。 上−記状況パスの゛上記線が同期線及び演算連結線を有
    しており、       ゛ 各々の上記プロセッサが上記プロセッサの各各及び上記
    状況パスに接続される状況・9スマルチゾレクサを有し
    、上記それぞれの状況ノ4スマルチデレクサが選択的且
    つプログラムに沿って上記状況パスの選択された線、に
    接続又は割込みを行い、えらや上記それぞれ。デ。−ッ
    ヶを選択的に上記状況パスに接続し、これによって上記
    それぞれのプロセッサが上記状況パスを通して上記プロ
    セッサのう“ちの隣接するものに接続されるようになっ
    た特許請求の範囲第1項の集積回路。
  3. (3)各々の上記プロセッサが上記それぞれのプロセッ
    サに与えられる命令を受けとる為に接続されるダイナミ
    ック型論理配列(DLA)を有し7゜上記OL^は:A
    NDマトリクス及びORマトリ/ 2.と:上記AND
    マトリクスを上記ORマトリクスに接続する中間線y:
    上記AND及びORマトリクスの最初の1つと接続する
    複数の入力線と;上記^NO及びORマトリクスの他の
    1つと接続される複数の出力線を含み、上記DLAの上
    記^NO及びORマトリクスの少くとも1つが行列に配
    列されて、それぞれの上記マトリクス内の区画を規定す
    るようになってお上記区画は所望の論理機能を行うよう
    に配置された選ばれた。数の能動素子を含むように選択
    的に配列されており; さらに複数の制御線が設けられ、各々の上記制御線が選
    択的に1つ又は2つ以上の上記区画に存在する上記能動
    素子を一作動させたり作動を切ったシする為に接続され
    ることで上記DLAが上記制御線の状況に応じて選択さ
    れた論理機能を行うようになっておシ、 これによって上記DILAが制御線の状況に従って上記
    それぞれのプロセッサに選択的に与えられた命令を通訳
    するようになる、 特許請求の範囲第1項の集積回路。
  4. (4)複数のRAMメモリモジュールを持つRAMメモ
    リが設けられ、前記ノ4スは複数の線を持つデータバス
    を有し、さらに複数の・々ス制御ユニットを有し、前記
    パス制御ユニットの各々が上記プロセッサの1つ、上記
    RAMメモリモジュールの1つ、及び上記データ・々ス
    に接続され。 上記パス制御ユニットが上記プロセッサを上記データバ
    ス又は、直接上記対応、するRAMメモリモジュールに
    接続するようになった特許請求の範囲第1項の集積回路
  5. (5)各々のプロセッサの構造を変更する上記手段は、
    その作動によって各々の上記プロセッサが同一の再構成
    可能集積回路上又は他の同様な再構成可能集積回路上の
    1つ又は2つ以上の上記プロセッサとロックステップ状
    態でまたはこれらから独立して選択的且つプログラムに
    沿って作動可能である特許請求の範囲第1項の集積回路
  6. (6)  上記パスが制御パスを有し、上記制御パスが
    命令を転送する線及び−割込み信号を転送する線を含ん
    でおり、各々の上記割込み信号が優先性及び割込み“光
    信号を示すピットを持って各々の命令のシーク・ンスを
    開始するようになっており、各々の上記プロセッサは上
    記制御パスに接続され上記割込み信号を受取る割込み管
    理回路を有し、上記割込み管理回路が上記割込み信号の
      ゛各々連続する1つをテストし、上記割込み管理回
    路を含む、上記それぞれ?プロセッサが上記連続する割
    込み信号によって割込み先として指、示されているかを
    判断し、上記割込み管理が上記プロセッサによって現在
    実行中のそれぞれの命令シーケンスの込ずれかを開始し
    た上記割込み信号のうちの1つの優先順位を記憶し、対
    応するコンチクストスイッチ出力を与えており′。 上記各々のプロセッサは上記割込み管理回路の上記コン
    チクストスイッチ線に接続されるスケデュラーを含み。 上記コンチクストスイッチが新しく受取った割込み信号
    がより高い優先性レベルを有していることを、示す時は
    いつでも上記スケデュラーが上記対応するゾロセッサに
    よって現在実行される上記命令のシーケンスのとりかえ
    を行うようになった、 特許請求の範囲第1項の集積回路。
  7. (7)  上記パスは制御パスを含み、さらに上記制御
    パスに接続され外部ピンを有する外部割込み管理回路が
    設けられ、上記外部割込み管理回路は。 上記対応する割込み信号のフォーマットを特定する長さ
    に関する情報及び型に関する情報をそれぞれ含む割込み
    信号を受信及び送信する為の手段を有し上記長さの情報
    は、各々の割込み信号の長さを特定するようになった特
    許請求の範囲第1項の集積回路。      ′
  8. (8)上記パスが複数の線を含む状況パースを有し、上
    記状況パスの上記線が同期及びアース連結線を有し、 上記プロセッサが上記それぞれのプロセッサ及び上記状
    況パスに接続されるそれぞれの状況パスマルチプレクサ
    を有し、上記それぞれの状況バスマルチルクサが上記状
    況パスの選択された線を選択的かつプログラムに沿って
    接続し父は割込みを行い、更に上記プロセッサを上記状
    況パスに選択的に接続しこれによって上記それぞれのプ
    ロセッサを上記状況パスを通して上記プロセッサに隣接
    するものに選択的且つプログラムに沿って接続し、 各々の上記プロセッサは、ダイナミック論理配列(DL
    A)を持ち、上記OLAがANDマトリクス、ORマト
    リクス、上記ANDマトリクスをORマトリクスに接続
    する中間線とからな力、 上記AND及びORマトリクスのうちの第1のものに接
    続される複数の入力線と、 上記AND及びORマトリクスのうちの他のものに接続
    される複数の出力線とが設けられ、上記DLAの上記A
    ND及びORマトリクスの少くとも1つが行列に配列さ
    れて上記それぞれのマトリクス内の区画を規定しており
    、各々の上記区画が所望の論理機能を行わせる為配装置
    された選択された数の能動素子を含むように配列されて
    おシ、 複数の制御線が、その各々が1つ又は2つ以上の上記区
    画に存在する上記能動素子を選択的に作動させたシ又は
    作動を切ったシすることができるように接続され、上記
    DLAが上記制御線の状況に応じて選択された論理機能
    を行うようになっておシ、 上記DLAが上記状況マルチプレクサに接続され、これ
    によって上記それぞれの状況マルチプレクサから、上記
    それぞれのプロセッサに与えられた入力及び出力が上記
    DLAKよってプログラムに沿って接続されるようにな
    った特許請求の範囲第1項の集積回路。
  9. (9)複数のプロセッサと: 、各々1つ又は2以上の上記プロセッサに接続された割
    込み管理回路とを有し、上記プロセッサの全てが上記割
    込み管理回路のそれぞれ1つに接続されており、 それぞれの上記外゛部側込み管理回路間で信号を伝達す
    る・・へ手段カニ設けられ、 上記各々の外部割込み管理回路は、それぞれ長さに関す
    る情報及び型に関する情報を含む割込み信号の受信及び
    送信を行う手段を有し、各各の上記型に関する情報が対
    応する割込み、信号のフォーマツ1を特定し、各々の上
    記長さに関する情報が上記対応する割込み信号の長さを
    特一定している多重プロセッサシステム。 00  複数のプロセッサと、− 各々が上記プロセッサの全てに接続される複数のバスと
    を有するモノリシック基板がらなり。 上記複数のバスが複数の状況線を含み、各々の上記プロ
    セッサがデータ・ヤスハードウェアを有しさらにゾログ
    ラム可能な論理配列(PLA)を有していて、上記複数
    のバスの上記 ゛状況線が上記PLAの入力及び出力、
    また上記PLAの上記出力及び入力線に接続されている
    集積回路。
JP57128805A 1981-07-24 1982-07-23 再構成可能集積回路 Granted JPS5858672A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US28642581A 1981-07-24 1981-07-24
US286426 1981-07-24
US286424 1981-07-24
US286425 1988-12-19

Publications (2)

Publication Number Publication Date
JPS5858672A true JPS5858672A (ja) 1983-04-07
JPS6322343B2 JPS6322343B2 (ja) 1988-05-11

Family

ID=23098547

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57128805A Granted JPS5858672A (ja) 1981-07-24 1982-07-23 再構成可能集積回路

Country Status (1)

Country Link
JP (1) JPS5858672A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5864562A (ja) * 1981-10-14 1983-04-16 Hitachi Ltd 信号処理装置
JPS60184297U (ja) * 1984-05-17 1985-12-06 スタンレー電気株式会社 El素子
JPS6341970A (ja) * 1986-08-07 1988-02-23 Sanyo Electric Co Ltd マイクロコンピユ−タシステム
JPS63220353A (ja) * 1986-11-05 1988-09-13 ストレイタス・コンピュータ・インコーポレイテッド 拡張可能なプロセッサ部を有する障害許容コンピュータ用情報処理方法および装置
JP2007174701A (ja) * 1996-12-09 2007-07-05 Pact Xpp Technologies Ag 再構築可能プロセッサ、再構築可能データ処理ユニット、データ処理装置構築可能ユニット、構築可能データプロセッサ
US7693257B2 (en) 2006-06-29 2010-04-06 Accuray Incorporated Treatment delivery optimization

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02101042U (ja) * 1989-01-27 1990-08-10

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5864562A (ja) * 1981-10-14 1983-04-16 Hitachi Ltd 信号処理装置
JPS6325383B2 (ja) * 1981-10-14 1988-05-25 Hitachi Ltd
JPS60184297U (ja) * 1984-05-17 1985-12-06 スタンレー電気株式会社 El素子
JPH0143837Y2 (ja) * 1984-05-17 1989-12-19
JPS6341970A (ja) * 1986-08-07 1988-02-23 Sanyo Electric Co Ltd マイクロコンピユ−タシステム
JPS63220353A (ja) * 1986-11-05 1988-09-13 ストレイタス・コンピュータ・インコーポレイテッド 拡張可能なプロセッサ部を有する障害許容コンピュータ用情報処理方法および装置
JP2007174701A (ja) * 1996-12-09 2007-07-05 Pact Xpp Technologies Ag 再構築可能プロセッサ、再構築可能データ処理ユニット、データ処理装置構築可能ユニット、構築可能データプロセッサ
US7693257B2 (en) 2006-06-29 2010-04-06 Accuray Incorporated Treatment delivery optimization

Also Published As

Publication number Publication date
JPS6322343B2 (ja) 1988-05-11

Similar Documents

Publication Publication Date Title
US11915057B2 (en) Computational partition for a multi-threaded, self-scheduling reconfigurable computing fabric
CN111919205B (zh) 多线程自调度可重新配置计算架构的循环线程顺序执行控制
CN112055853B (zh) 用于多线程自调度可重新配置计算架构的电路及系统
US10282338B1 (en) Configuring routing in mesh networks
US9787612B2 (en) Packet processing in a parallel processing environment
US8737392B1 (en) Configuring routing in mesh networks
US8151088B1 (en) Configuring routing in mesh networks
US5197130A (en) Cluster architecture for a highly parallel scalar/vector multiprocessor system
US20060245225A1 (en) Reconfigurable elements
KR20210057184A (ko) 이종 cpu/gpu 시스템에서 데이터 흐름 신호 처리 애플리케이션 가속화
JP2511397B2 (ja) 多重プロセッサデ―タ処理システム及びその操作方法
WO1994003860A1 (en) Massively parallel computer including auxiliary vector processor
US5165038A (en) Global registers for a multiprocessor system
KR20200139829A (ko) 네트워크 온칩 데이터 처리 방법 및 장치
JP2010079923A (ja) 処理チップ、チップを含むシステム、マルチプロセッサ装置およびマルチコアプロセッサ装置
US20200167309A1 (en) Reconfigurable fabric configuration using spatial and temporal routing
US7765250B2 (en) Data processor with internal memory structure for processing stream data
KR102539571B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
KR102539572B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
EP2132645B1 (en) A data transfer network and control apparatus for a system with an array of processing elements each either self- or common controlled
JPS5858672A (ja) 再構成可能集積回路
US20070283077A1 (en) Memory and Memory Communication System
EP0071727B1 (en) Restructurable integrated circuit
KR102539573B1 (ko) 네트워크 온칩 데이터 처리 방법 및 장치
Vick et al. Adptable Architectures for Supersystems