JPH0814791B2 - 処理システム - Google Patents
処理システムInfo
- Publication number
- JPH0814791B2 JPH0814791B2 JP60216055A JP21605585A JPH0814791B2 JP H0814791 B2 JPH0814791 B2 JP H0814791B2 JP 60216055 A JP60216055 A JP 60216055A JP 21605585 A JP21605585 A JP 21605585A JP H0814791 B2 JPH0814791 B2 JP H0814791B2
- Authority
- JP
- Japan
- Prior art keywords
- microinstruction
- storage means
- nanoinstruction
- coupled
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims description 5
- 230000015654 memory Effects 0.000 claims description 52
- 238000012360 testing method Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 7
- 239000000872 buffer Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- CRQQGFGUEAVUIL-UHFFFAOYSA-N chlorothalonil Chemical compound ClC1=C(Cl)C(C#N)=C(Cl)C(C#N)=C1Cl CRQQGFGUEAVUIL-UHFFFAOYSA-N 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 101001073409 Homo sapiens Retrotransposon-derived protein PEG10 Proteins 0.000 description 1
- 101001094545 Homo sapiens Retrotransposon-like protein 1 Proteins 0.000 description 1
- 101000689689 Oryzias latipes Alpha-1A adrenergic receptor Proteins 0.000 description 1
- 102100035844 Retrotransposon-derived protein PEG10 Human genes 0.000 description 1
- 102100035123 Retrotransposon-like protein 1 Human genes 0.000 description 1
- 241001441724 Tetraodontidae Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30192—Instruction operation extension or modification according to data descriptor, e.g. dynamic data typing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
- G06F9/264—Microinstruction selection based on results of processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
- G06F9/30038—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】 発明の背景 発明の分野 この発明は複数レベルのサブ命令の組を有するプログ
ラム可能な装置に関するものであり、特に、下位レベル
の命令の組の一部が上位レベルの命令の組に埋め込まれ
た装置に関するものである。
ラム可能な装置に関するものであり、特に、下位レベル
の命令の組の一部が上位レベルの命令の組に埋め込まれ
た装置に関するものである。
先行技術の説明 用語“マイクロプログラム”は、英国マンチェスター
のレポート・オブ・ザ・マンチェスター・ユニバーシテ
ィ・コンピュータ・インオウグラル・コンファレンス
(Report of the Manchester University Computer Ina
ugural Conference),1951年7月の論文第16頁ないし第
18頁の“自動化された計算装置の設計のための最良の方
法”でモーリス・ウィルクスによって初めて作られた。
この論文は、要するに、リードオンリメモリとして働く
ダイオードマトリックスである機械命令デコーダを説明
していた。機械語命令はこのリードオンリメモリに対す
るアドレスとして用いられ、それぞれの制御信号は、次
に、メモリから読出されてプロセッサの種々の機能ユニ
ットへ送られて与えられた動作を行なっていた。このよ
うな機械語命令は、しばしばオブジェクトコードと呼ば
れており、与えられた機械語命令を実行するシーケンス
で制御信号の多数の組がメモリから読出されることを必
要としたステップのシーケンスを含んでいた。制御信号
の各組はマイクロ命令として知られることになり、機械
語命令はしばしばマクロ命令として示されている。
のレポート・オブ・ザ・マンチェスター・ユニバーシテ
ィ・コンピュータ・インオウグラル・コンファレンス
(Report of the Manchester University Computer Ina
ugural Conference),1951年7月の論文第16頁ないし第
18頁の“自動化された計算装置の設計のための最良の方
法”でモーリス・ウィルクスによって初めて作られた。
この論文は、要するに、リードオンリメモリとして働く
ダイオードマトリックスである機械命令デコーダを説明
していた。機械語命令はこのリードオンリメモリに対す
るアドレスとして用いられ、それぞれの制御信号は、次
に、メモリから読出されてプロセッサの種々の機能ユニ
ットへ送られて与えられた動作を行なっていた。このよ
うな機械語命令は、しばしばオブジェクトコードと呼ば
れており、与えられた機械語命令を実行するシーケンス
で制御信号の多数の組がメモリから読出されることを必
要としたステップのシーケンスを含んでいた。制御信号
の各組はマイクロ命令として知られることになり、機械
語命令はしばしばマクロ命令として示されている。
しかしながら、ウィルクス教授の考えが実用的になる
のに数年かかった。なぜならばほとんどのコンピュータ
は各クロック期間ごとに非常に多数の制御信号を必要と
したからであり、これは、制御記憶装置、またはマイク
ロプログラム記憶装置は各マイクロ命令に非常に数多く
のビットを含まなければならないだけではなく、それぞ
れのマイクロ命令のすべてを実行するのに必要なマイク
ロ命令のシーケンスのすべてを含まなければならないと
いうことを意味した。しかしながら、その当時のコアメ
モリまたはダイオードメモリはあまりに大きくて嵩張っ
ているとともに高価であったため、命令デコーダとして
プロセッサの内側に配置されなかった。さらに、メモリ
からの結果的なマイクロ命令の取出はハードワイヤード
論理デコーダから得られることができるものよりも時間
がかかった。
のに数年かかった。なぜならばほとんどのコンピュータ
は各クロック期間ごとに非常に多数の制御信号を必要と
したからであり、これは、制御記憶装置、またはマイク
ロプログラム記憶装置は各マイクロ命令に非常に数多く
のビットを含まなければならないだけではなく、それぞ
れのマイクロ命令のすべてを実行するのに必要なマイク
ロ命令のシーケンスのすべてを含まなければならないと
いうことを意味した。しかしながら、その当時のコアメ
モリまたはダイオードメモリはあまりに大きくて嵩張っ
ているとともに高価であったため、命令デコーダとして
プロセッサの内側に配置されなかった。さらに、メモリ
からの結果的なマイクロ命令の取出はハードワイヤード
論理デコーダから得られることができるものよりも時間
がかかった。
商業的に入手可能な集積回路の出現で、プロセッサは
その寸法が小さくされかつ速度が大きくされることがで
きたのみならず、メモリは安くなりかつ高速になり、か
つ広く普及した商業的な市場で市場化されるべき最初の
マイクロプログラムコンピュータはシステム/360(アム
ダールほかのアメリカ合衆国特許第3,400,371を参照)
と呼ばれるシリーズとしてIBMによって導入された。実
際に、そのシリーズの或る部材のマイクロプログラムメ
モリはコンデンサカードから形成された。
その寸法が小さくされかつ速度が大きくされることがで
きたのみならず、メモリは安くなりかつ高速になり、か
つ広く普及した商業的な市場で市場化されるべき最初の
マイクロプログラムコンピュータはシステム/360(アム
ダールほかのアメリカ合衆国特許第3,400,371を参照)
と呼ばれるシリーズとしてIBMによって導入された。実
際に、そのシリーズの或る部材のマイクロプログラムメ
モリはコンデンサカードから形成された。
システム/360において、マイクロ命令はマイクロメモ
リに記憶されるのに必要とされるビットの数を維持する
ために各グループまたはフィールドがエンコードされる
そのようなグループまたはフィールドに分割された1組
の制御信号であった。これらのフィールドは、次に、プ
ロセッサの種々のユニットの同時的な実行のためにデコ
ードされた。先に開発されたマイクロプログラムされた
プロセッサにおいて、全体のマイクロ命令は、マイクロ
命令自体が必要な制御信号を得るためにデコードされな
ければならないことを必要としたメモリスペースを節約
するために、エンコードされた。フィールドへ部分的に
エンコードされた制御信号の前者の形式は、水平マイク
ロ命令として知られることになり、他方、完全にエンコ
ードされたマイクロ命令の後者の形式は垂直マイクロ命
令と呼ばれた。しかしながら、いずれの形式のマイクロ
命令でも、そのようなマイクロ命令の完全なシーケンス
はデコードされるべきすべてのマイクロ命令のためにス
トアされなければならなかった。
リに記憶されるのに必要とされるビットの数を維持する
ために各グループまたはフィールドがエンコードされる
そのようなグループまたはフィールドに分割された1組
の制御信号であった。これらのフィールドは、次に、プ
ロセッサの種々のユニットの同時的な実行のためにデコ
ードされた。先に開発されたマイクロプログラムされた
プロセッサにおいて、全体のマイクロ命令は、マイクロ
命令自体が必要な制御信号を得るためにデコードされな
ければならないことを必要としたメモリスペースを節約
するために、エンコードされた。フィールドへ部分的に
エンコードされた制御信号の前者の形式は、水平マイク
ロ命令として知られることになり、他方、完全にエンコ
ードされたマイクロ命令の後者の形式は垂直マイクロ命
令と呼ばれた。しかしながら、いずれの形式のマイクロ
命令でも、そのようなマイクロ命令の完全なシーケンス
はデコードされるべきすべてのマイクロ命令のためにス
トアされなければならなかった。
記憶されなければならなかったマイクロ命令の数を減
少させるために、2レベルの制御記憶装置の概念が開発
され、そこでは、下位のレベルは、冗長であったマイク
ロ命令のシーケンスよりもむしろ各々独特のマイクロ命
令のみを含むように要求された。ワードまたは命令幅の
点でより小さなメモリが下位のレベルの記憶装置に書込
まれた対応する水平マイクロ命令へのアドレスとして働
くエンコードされたマイクロ命令のシーケンスを含むよ
うに供給された。このようなシステムはファーザーほか
のアメリカ合衆国特許第3,983,539に説明されている。
このようなシステムでは、下位レベルの制御記憶装置は
リード・オンリ・メモリであり、これはランダム・アク
セス・メモリよりも安く、他方、上位レベルのメモリは
ランダムアクセスメモリである。上位レベルメモリにお
けるより短い垂直マイクロ命令と、下位レベルメモリに
おけるより長い水平マイクロ命令とを区別するために、
上位レベルメモリはマイクロメモリと呼ばれ、ファーザ
ー特許の発明者達は下位レベルメモリをナノメモリと称
し、かつ水平マイクロ命令はナノ命令と呼ばれた。
少させるために、2レベルの制御記憶装置の概念が開発
され、そこでは、下位のレベルは、冗長であったマイク
ロ命令のシーケンスよりもむしろ各々独特のマイクロ命
令のみを含むように要求された。ワードまたは命令幅の
点でより小さなメモリが下位のレベルの記憶装置に書込
まれた対応する水平マイクロ命令へのアドレスとして働
くエンコードされたマイクロ命令のシーケンスを含むよ
うに供給された。このようなシステムはファーザーほか
のアメリカ合衆国特許第3,983,539に説明されている。
このようなシステムでは、下位レベルの制御記憶装置は
リード・オンリ・メモリであり、これはランダム・アク
セス・メモリよりも安く、他方、上位レベルのメモリは
ランダムアクセスメモリである。上位レベルメモリにお
けるより短い垂直マイクロ命令と、下位レベルメモリに
おけるより長い水平マイクロ命令とを区別するために、
上位レベルメモリはマイクロメモリと呼ばれ、ファーザ
ー特許の発明者達は下位レベルメモリをナノメモリと称
し、かつ水平マイクロ命令はナノ命令と呼ばれた。
この複数レベルのサブ命令の組のプロセッサの第1の
実施例は、インプリメンテーションのために数100個の
集積回路チップを必要とした。なぜらなば当時そのよう
な集積回路チップは1個のチップあたり少数のゲートし
か含んでいなかったからである。より大きなパッキング
密度、すなわち、チップあたり数多くのゲートを持つ集
積回路が開発されたので、プロセッサを構成するのにわ
ずかなチップしか必要とされなくなった。初期のチップ
は小規模集積回路(SSI)として参照されており、他
方、より高密度にパックされたチップは中規模集積回路
(MSI)として知られることになった。
実施例は、インプリメンテーションのために数100個の
集積回路チップを必要とした。なぜらなば当時そのよう
な集積回路チップは1個のチップあたり少数のゲートし
か含んでいなかったからである。より大きなパッキング
密度、すなわち、チップあたり数多くのゲートを持つ集
積回路が開発されたので、プロセッサを構成するのにわ
ずかなチップしか必要とされなくなった。初期のチップ
は小規模集積回路(SSI)として参照されており、他
方、より高密度にパックされたチップは中規模集積回路
(MSI)として知られることになった。
非常に高パッキング密度(チップあたり数千個のゲー
ト)まで集積回路をさらに改善して、ファーバー特許の
概念を用いるプロセッサは、今、1個の集積回路チップ
について商業的に入手可能である(たとえば、トレーデ
ンニックほかのアメリカ合衆国特許第4,342,078を参
照)。
ト)まで集積回路をさらに改善して、ファーバー特許の
概念を用いるプロセッサは、今、1個の集積回路チップ
について商業的に入手可能である(たとえば、トレーデ
ンニックほかのアメリカ合衆国特許第4,342,078を参
照)。
しかしながら、今日の超大規模集積回路技術でも、ト
レードンニックのプロセッサにおけるナノROMおよびマ
イクロRAMの寸法が限られており、これは、用いられる
ことができる完全な組のすべてのナノ命令が制限されな
ければならないことを意味する。そこで、この発明の目
的は、複数レベルのサブ命令の組、すなわち、マイクロ
命令およびナノ命令を用いる改善されたプロセッサを提
供することである。
レードンニックのプロセッサにおけるナノROMおよびマ
イクロRAMの寸法が限られており、これは、用いられる
ことができる完全な組のすべてのナノ命令が制限されな
ければならないことを意味する。そこで、この発明の目
的は、複数レベルのサブ命令の組、すなわち、マイクロ
命令およびナノ命令を用いる改善されたプロセッサを提
供することである。
この発明の他の目的は、十分に拡大された組のナノ命
令を用いることができるそのような改善されたプロセッ
サを提供することである。
令を用いることができるそのような改善されたプロセッ
サを提供することである。
この発明のさらに他の目的は、より大きな融通性を与
えるようにかつプロセッサの機能的ユニットのすべての
能力を用いるように十分に拡大されたナノ命令の組をそ
のようなプロセッサに与えることである。
えるようにかつプロセッサの機能的ユニットのすべての
能力を用いるように十分に拡大されたナノ命令の組をそ
のようなプロセッサに与えることである。
発明の概要 上述の目的を達成するために、この発明は集積回路チ
ップにおけるインプリメンテーションのためのプロセッ
サに向けられるものであり、このプロセッサは2レベル
のサブ命令、すなわち、マイクロ命令およびナノ命令に
よって駆動され、そのうち後者はプロセッサの種々の機
能ユニットを実際に駆動する制御信号のエンコードされ
たグループである(それらはエンコードされる必要はな
いが)。このようなナノ命令の選択グループがナノメモ
リの集積回路チップにストアされ、これはランダム・ア
クセス・マイクロ命令メモリからのそれぞれのマイクロ
命令によってアドレスされる。この発明では、マイクロ
メモリは別の集積回路チップに設けられる。ナノメモリ
の寸法を制限するために、ナノ命令の選択されたグルー
プのみがそこに記憶され、通常のルーチンのナノ命令は
マイクロ命令コードストリームの部分として供給され
る。この減少されたナノメモリで、32ビットのプロセッ
サにデータバスを用いることができるが、或る応用に対
しては、これらのビットのうち16ビットのみが用いられ
てもよく、それによってプロセッサのデータ経路幅を短
くする。16ビットおよび32ビットデータ経路間の選択
は、プログラム可能であるようにマイクロレベルの命令
源の制御下にある。さらに、プロセッサはマイクロプロ
グラム制御下の1回のクロックタイムの間にデータワー
ドにおける選択されたフィールドを分離することができ
る。
ップにおけるインプリメンテーションのためのプロセッ
サに向けられるものであり、このプロセッサは2レベル
のサブ命令、すなわち、マイクロ命令およびナノ命令に
よって駆動され、そのうち後者はプロセッサの種々の機
能ユニットを実際に駆動する制御信号のエンコードされ
たグループである(それらはエンコードされる必要はな
いが)。このようなナノ命令の選択グループがナノメモ
リの集積回路チップにストアされ、これはランダム・ア
クセス・マイクロ命令メモリからのそれぞれのマイクロ
命令によってアドレスされる。この発明では、マイクロ
メモリは別の集積回路チップに設けられる。ナノメモリ
の寸法を制限するために、ナノ命令の選択されたグルー
プのみがそこに記憶され、通常のルーチンのナノ命令は
マイクロ命令コードストリームの部分として供給され
る。この減少されたナノメモリで、32ビットのプロセッ
サにデータバスを用いることができるが、或る応用に対
しては、これらのビットのうち16ビットのみが用いられ
てもよく、それによってプロセッサのデータ経路幅を短
くする。16ビットおよび32ビットデータ経路間の選択
は、プログラム可能であるようにマイクロレベルの命令
源の制御下にある。さらに、プロセッサはマイクロプロ
グラム制御下の1回のクロックタイムの間にデータワー
ドにおける選択されたフィールドを分離することができ
る。
そこで、この発明の特徴はサブ命令の2つのレベルを
有するプロセッサであり、プロセッサデータバスはナノ
プログラム制御の下で16ビットまたは32ビット幅のバス
のいずれかとして選択可能である。
有するプロセッサであり、プロセッサデータバスはナノ
プログラム制御の下で16ビットまたは32ビット幅のバス
のいずれかとして選択可能である。
この発明の上述および他の目的、利点ならびに特徴
は、添付図面に関して行なう以下の詳細な説明からより
一層明らかとなろう。
は、添付図面に関して行なう以下の詳細な説明からより
一層明らかとなろう。
この発明の一般的説明 上述のファーバー特許のインプリメンテーションは16
ビットの小さなマイクロ命令幅と、54ビットのより大き
なナノ命令幅とを用いた。マシンの臨界的な経路タイミ
ングに含まれたナノ命令のいくつかのフィールドは2個
のカスケード接続されたメモリアクセスの後しか利用で
きなかった。マイクロサイクルをスピードアップするた
めに、この発明のナノ命令の時間臨界フィールドはマイ
クロ命令へ移動されかつさらに後で説明されるであろ
う。これらの変化の正味の効果は、この発明のマイクロ
命令が今48ビット幅であり、ナノ命令が39ビット幅であ
るということである。さらに、ナノメモリは、集積回路
チップ上に配置され、またはより特定的には、プロセッ
サを含む機能ユニットの間に配置される。マイクロ命令
メモリは、上述したファーバー特許における場合のよう
に、プロセッサの外側にある他の集積回路のチップ上に
ある。
ビットの小さなマイクロ命令幅と、54ビットのより大き
なナノ命令幅とを用いた。マシンの臨界的な経路タイミ
ングに含まれたナノ命令のいくつかのフィールドは2個
のカスケード接続されたメモリアクセスの後しか利用で
きなかった。マイクロサイクルをスピードアップするた
めに、この発明のナノ命令の時間臨界フィールドはマイ
クロ命令へ移動されかつさらに後で説明されるであろ
う。これらの変化の正味の効果は、この発明のマイクロ
命令が今48ビット幅であり、ナノ命令が39ビット幅であ
るということである。さらに、ナノメモリは、集積回路
チップ上に配置され、またはより特定的には、プロセッ
サを含む機能ユニットの間に配置される。マイクロ命令
メモリは、上述したファーバー特許における場合のよう
に、プロセッサの外側にある他の集積回路のチップ上に
ある。
この発明では、ナノメモリは上述したような32ビット
幅のバスを含む他の機能ユニットに対してはより大きな
スペースを与え、かつナノメモリ寸法を小さくするため
256個のナノ命令に限られる。付加的なナノ命令を与え
るために、新しい形式のマイクロ命令が規定され、この
命令はナノ命令として働く39ビットフィールドを含む。
これは本願発明のデータ経路の完全な汎用的用途を与え
るものであり、ナノメモリに記憶されるこれらのナノ命
令は状態テストおよび/または組、リテラルロードまた
はブランチをデータ経路演算と組合わせる演算に必要な
ものだけである。
幅のバスを含む他の機能ユニットに対してはより大きな
スペースを与え、かつナノメモリ寸法を小さくするため
256個のナノ命令に限られる。付加的なナノ命令を与え
るために、新しい形式のマイクロ命令が規定され、この
命令はナノ命令として働く39ビットフィールドを含む。
これは本願発明のデータ経路の完全な汎用的用途を与え
るものであり、ナノメモリに記憶されるこれらのナノ命
令は状態テストおよび/または組、リテラルロードまた
はブランチをデータ経路演算と組合わせる演算に必要な
ものだけである。
この発明を用いるシステムは第1図に示されており、
このシステムはプロセッサ10を含み、このプロセッサ10
はマスタプロセッサでもよく、この場合同一のスレーブ
プロセッサ10aもまたアドレスおよびデータバスへ接続
される。スレーブプロセッサ10aはマスタ10またはスレ
ーブ10aにおけるまたはそれらの相互接続ワイヤリング
における故障を検出するために用いられる。プロセッサ
10はマシンまたは“S"命令およびSメモリ12からのデー
タを受けかつ機械語オペレータを用いてマイクロメモリ
11へのアドレスを形成し、このメモリ11からそれは、後
でより詳細に説明するようにマイクロ命令を受ける。プ
ロセッサ10は8ビットのハイアドレスと16ビットのロー
アドレスとを含む24ビットのアドレスバスによってメイ
ンメモリアレイをアドレスし、そのバスはラッチ13aを
含む。データはバッファ13bを介して、16ビットデータ
バスを経由して受信されかつ送信される。バッファ14a
および14bはそれぞれ相互プロセッサアドレスおよびデ
ータバス16aおよび16bへ、プロセッサ10によってアクセ
スを行なう。パッファ15aおよび15bはバス16aおよび16b
をそれぞれ介して他方のプロセッサからS−メモリ12へ
アクセスする。デュアルポート制御装置12aはバス16aお
よび16bを介してプロセッサ10および他のプロセッサか
らS−メモリへアクセスするためのリクエスト間の仲裁
を行なう。
このシステムはプロセッサ10を含み、このプロセッサ10
はマスタプロセッサでもよく、この場合同一のスレーブ
プロセッサ10aもまたアドレスおよびデータバスへ接続
される。スレーブプロセッサ10aはマスタ10またはスレ
ーブ10aにおけるまたはそれらの相互接続ワイヤリング
における故障を検出するために用いられる。プロセッサ
10はマシンまたは“S"命令およびSメモリ12からのデー
タを受けかつ機械語オペレータを用いてマイクロメモリ
11へのアドレスを形成し、このメモリ11からそれは、後
でより詳細に説明するようにマイクロ命令を受ける。プ
ロセッサ10は8ビットのハイアドレスと16ビットのロー
アドレスとを含む24ビットのアドレスバスによってメイ
ンメモリアレイをアドレスし、そのバスはラッチ13aを
含む。データはバッファ13bを介して、16ビットデータ
バスを経由して受信されかつ送信される。バッファ14a
および14bはそれぞれ相互プロセッサアドレスおよびデ
ータバス16aおよび16bへ、プロセッサ10によってアクセ
スを行なう。パッファ15aおよび15bはバス16aおよび16b
をそれぞれ介して他方のプロセッサからS−メモリ12へ
アクセスする。デュアルポート制御装置12aはバス16aお
よび16bを介してプロセッサ10および他のプロセッサか
らS−メモリへアクセスするためのリクエスト間の仲裁
を行なう。
この発明のプロセッサが第2図に示されており、かつ
外部バスインターフェイス20を含み、このインターフェ
イス20はハイアドレスバスおよびアドレス/データバス
を経由して第1図のメインメモリ12をアドレスすること
ができ、アドレス/データバスは双方向バスである。プ
ロセッサはメインメモリからデータおよび機械命令を受
ける。後でより詳細に説明する外部バスインターフェイ
スは機械命令オペレータの部分をシーケンサ21bへ送
る。シーケンサ21bはそのオペレータを用いて第1図の
マイクロメモリ11をアドレスする。それに応答して、制
御装置21aおよび他のユニットへ戻されるマイクロ命令
が受けられ、その一部は、後で十分に説明するように、
ナノメモリ22へのアドレスとして用いられる。第2図に
示されるように、かつ上で説明したように、このような
マイクロ命令の一形式が、直接、制御レジスタ23へ供給
されるナノ命令であってもよい。ナノ命令がナノメモリ
22からくるかまたは第1図のマイクロメモリ11からくる
かどうかにかかわらず、その種々のフィールドはそれら
が制御レジスタ23にあるので、演算論理ユニット24およ
びプロセッサの他の機能ユニットへ送られて特定の演算
を行なう。
外部バスインターフェイス20を含み、このインターフェ
イス20はハイアドレスバスおよびアドレス/データバス
を経由して第1図のメインメモリ12をアドレスすること
ができ、アドレス/データバスは双方向バスである。プ
ロセッサはメインメモリからデータおよび機械命令を受
ける。後でより詳細に説明する外部バスインターフェイ
スは機械命令オペレータの部分をシーケンサ21bへ送
る。シーケンサ21bはそのオペレータを用いて第1図の
マイクロメモリ11をアドレスする。それに応答して、制
御装置21aおよび他のユニットへ戻されるマイクロ命令
が受けられ、その一部は、後で十分に説明するように、
ナノメモリ22へのアドレスとして用いられる。第2図に
示されるように、かつ上で説明したように、このような
マイクロ命令の一形式が、直接、制御レジスタ23へ供給
されるナノ命令であってもよい。ナノ命令がナノメモリ
22からくるかまたは第1図のマイクロメモリ11からくる
かどうかにかかわらず、その種々のフィールドはそれら
が制御レジスタ23にあるので、演算論理ユニット24およ
びプロセッサの他の機能ユニットへ送られて特定の演算
を行なう。
デコーダ23aは入ってくるマイクロ命令がタイプIま
たはタイプIIIのマイクロ命令かどうかを検出する。も
しもそれが前者であれば、そのナノメモリアドレスがナ
ノメモリ22へ送られる。もしもマイクロ命令がタイプII
Iであれば、それは、直接、制御レジスタ23へ送られ
る。デコーダ23aはその形式を検出しかつ、ナノメモリ2
2の出力または制御レジスタ23へ転送のためマイクロメ
モリからの入力を受けるべきかどうかをマルチプレクサ
25に知らせる。
たはタイプIIIのマイクロ命令かどうかを検出する。も
しもそれが前者であれば、そのナノメモリアドレスがナ
ノメモリ22へ送られる。もしもマイクロ命令がタイプII
Iであれば、それは、直接、制御レジスタ23へ送られ
る。デコーダ23aはその形式を検出しかつ、ナノメモリ2
2の出力または制御レジスタ23へ転送のためマイクロメ
モリからの入力を受けるべきかどうかをマルチプレクサ
25に知らせる。
マイクロ命令の種々の形式を第3A図ないし第3D図に示
す。左からスタートする最初の4ビットがマイクロ命令
の形式を示すために用いられる。第3A図のタイプIマイ
クロ命令において、次の39ビットはシーケンス情報、ナ
ノアドレス、外部動作情報およびリテラル値を含む。マ
イクロ命令のすべての形式のうちのビット43ないし47
は、以下により詳細に説明する演算論理装置のBレジス
タファイルをアドレスするために用いられかつビット48
はパリティビットである。
す。左からスタートする最初の4ビットがマイクロ命令
の形式を示すために用いられる。第3A図のタイプIマイ
クロ命令において、次の39ビットはシーケンス情報、ナ
ノアドレス、外部動作情報およびリテラル値を含む。マ
イクロ命令のすべての形式のうちのビット43ないし47
は、以下により詳細に説明する演算論理装置のBレジス
タファイルをアドレスするために用いられかつビット48
はパリティビットである。
第3B図はリテラル値およびシフト量レジスタ値を演算
論理装置へ供給するために主として用いられるタイプII
マイクロ命令を示す。また、最初の4ビットはマイクロ
命令の形式を示し、次の6ビットはロード制御情報であ
り、次の32ビットはリテラル値またはシフト量値のいず
れかであり、再び、ビット43ないし47はBレジスタファ
イルアドレスであり、ビット48はパリティビットであ
る。
論理装置へ供給するために主として用いられるタイプII
マイクロ命令を示す。また、最初の4ビットはマイクロ
命令の形式を示し、次の6ビットはロード制御情報であ
り、次の32ビットはリテラル値またはシフト量値のいず
れかであり、再び、ビット43ないし47はBレジスタファ
イルアドレスであり、ビット48はパリティビットであ
る。
タイプIIIマイクロ命令は内容の一部として、上述し
たナノ命令を含む。この場合、最初の3ビットは命令形
式を特定し、次の39ビットはナノ命令である。再び、ビ
ット43ないし47はBレジスタファイルアドレスであり、
ビット48はパリティビットである。
たナノ命令を含む。この場合、最初の3ビットは命令形
式を特定し、次の39ビットはナノ命令である。再び、ビ
ット43ないし47はBレジスタファイルアドレスであり、
ビット48はパリティビットである。
タイプIマイクロ命令を第3D図により詳細に説明す
る。上述したように、すべてのマイクロ命令は幅が42ビ
ットである。第3D図において、最初の4ビットはマイク
ロ形式を示す。ビット5ないし15は、テストされるべき
条件、たとえば加算器のオーバフローなどを示すビット
5ないし8を持つ条件ビットである。ビット9はその条
件が真値または偽値であることを検査すべきかどうかを
示す。ビット10は演算論理装置の動作が条件的か無条件
的かどうかを示し、かつビット11および12ないし15は、
条件調整があるべきかどうかおよびその動作が条件的で
あるべきかどうかを示す。これらの条件ビットは第2図
の制御装置21aへダイナミックに送られる。
る。上述したように、すべてのマイクロ命令は幅が42ビ
ットである。第3D図において、最初の4ビットはマイク
ロ形式を示す。ビット5ないし15は、テストされるべき
条件、たとえば加算器のオーバフローなどを示すビット
5ないし8を持つ条件ビットである。ビット9はその条
件が真値または偽値であることを検査すべきかどうかを
示す。ビット10は演算論理装置の動作が条件的か無条件
的かどうかを示し、かつビット11および12ないし15は、
条件調整があるべきかどうかおよびその動作が条件的で
あるべきかどうかを示す。これらの条件ビットは第2図
の制御装置21aへダイナミックに送られる。
第3D図のタイプIフォーマットで続きながら、ビット
16-18および19-21は第2図のシーケンサ21bへ送られか
つ、テストされた選択された条件が真または偽であるか
どうかに依存してサクセサマイクロ命令アドレスのソー
スを示す。
16-18および19-21は第2図のシーケンサ21bへ送られか
つ、テストされた選択された条件が真または偽であるか
どうかに依存してサクセサマイクロ命令アドレスのソー
スを示す。
ビット22-29が、タイプIマイクロ命令によって第2
図のナノメモリ22へ供給される8ビットナノアドレスで
あり、かつ256個のナノ命令の任意の1つを選択するこ
とができる。ビット30-34は、ダイナミックに、第2図
の外部バスインターフェイス20および制御ユニット21a
へ送られ、かつシフト量レジスタへロードされるべき値
または外部動作のいずれかを特定する。ビット35ないし
42はリテラル値を表わし、かつ制御装置21aに関して議
論するリテラルレジスタへ送られるか、または第2図の
シーケンサ21bへ送られるべきブランチアドレスとして
送られる。上述したように、ビット43-47は演算論理装
置のBレジスタファイルアドレスを示し、かつビット48
はパリティビットである。
図のナノメモリ22へ供給される8ビットナノアドレスで
あり、かつ256個のナノ命令の任意の1つを選択するこ
とができる。ビット30-34は、ダイナミックに、第2図
の外部バスインターフェイス20および制御ユニット21a
へ送られ、かつシフト量レジスタへロードされるべき値
または外部動作のいずれかを特定する。ビット35ないし
42はリテラル値を表わし、かつ制御装置21aに関して議
論するリテラルレジスタへ送られるか、または第2図の
シーケンサ21bへ送られるべきブランチアドレスとして
送られる。上述したように、ビット43-47は演算論理装
置のBレジスタファイルアドレスを示し、かつビット48
はパリティビットである。
第4図は第2図のナノメモリ22から、またはタイプII
Iマイクロ命令が用いられるときは第1図のマイクロメ
モリ11から制御レジスタ23によって受けられるナノ命令
のフォーマットを示す。上で示したようにこのナノ命令
は、実際の制御信号を作り出すために後でデコードされ
るエンコードされた制御信号のグループから作られる。
それらはナノメモリの大きさを減らすためにエンコード
される。これらの種々のフィールドは以下に完全に議論
するような演算論理装置における異なる動作を制御する
ので、この議論はナノ命令の種々のフィールドおよびそ
れらが演算論理装置で作動するユニットを互いに参照し
合うであろう。しかしながら、ナノ命令のフォーマット
について、ナノ命令と、第2図のプロセッサの種々のユ
ニットとの間の関係をよりよく理解するために今説明し
ている。
Iマイクロ命令が用いられるときは第1図のマイクロメ
モリ11から制御レジスタ23によって受けられるナノ命令
のフォーマットを示す。上で示したようにこのナノ命令
は、実際の制御信号を作り出すために後でデコードされ
るエンコードされた制御信号のグループから作られる。
それらはナノメモリの大きさを減らすためにエンコード
される。これらの種々のフィールドは以下に完全に議論
するような演算論理装置における異なる動作を制御する
ので、この議論はナノ命令の種々のフィールドおよびそ
れらが演算論理装置で作動するユニットを互いに参照し
合うであろう。しかしながら、ナノ命令のフォーマット
について、ナノ命令と、第2図のプロセッサの種々のユ
ニットとの間の関係をよりよく理解するために今説明し
ている。
第4図のナノ命令の最初の4ビットは第6図の論理装
置40へのx入力のためのソースを示す。ビット5ないし
7は論理装置40へのy入力に対するソースを示す。ビッ
ト8ないし13は、y入力と、論理装置40との間の第6図
のマスカー装置45によって与えられるべき操作の形式を
示す。ビット14ないし18は論理装置によって行なわれる
べき動作を特定する。ビット19ないし21は、論理装置40
の出力を右、左、循環桁送りなどをすることができ、ま
たは単純にそのデータを通過させることができる、第6
図のバレルシフタ46によって行なわれるべき動作を示
す。ビット22ないし24は第6図のAレジスタ43のうちど
れがデータを受けるべきかを示す。ビット25ないし27は
第6図のBレジスタファイル44への入力のソースを示
す。ビット28ないし30は第5図のどのメモリアドレスレ
ジスタ32がデータを受けるべきかを示す。ビット31ない
し34は要求されるかもしれない他の目的を特定するため
に用いられかつビット35ないし39はプロセッサの他の装
置に関してさらに以下に説明される雑通知制御信号であ
る。
置40へのx入力のためのソースを示す。ビット5ないし
7は論理装置40へのy入力に対するソースを示す。ビッ
ト8ないし13は、y入力と、論理装置40との間の第6図
のマスカー装置45によって与えられるべき操作の形式を
示す。ビット14ないし18は論理装置によって行なわれる
べき動作を特定する。ビット19ないし21は、論理装置40
の出力を右、左、循環桁送りなどをすることができ、ま
たは単純にそのデータを通過させることができる、第6
図のバレルシフタ46によって行なわれるべき動作を示
す。ビット22ないし24は第6図のAレジスタ43のうちど
れがデータを受けるべきかを示す。ビット25ないし27は
第6図のBレジスタファイル44への入力のソースを示
す。ビット28ないし30は第5図のどのメモリアドレスレ
ジスタ32がデータを受けるべきかを示す。ビット31ない
し34は要求されるかもしれない他の目的を特定するため
に用いられかつビット35ないし39はプロセッサの他の装
置に関してさらに以下に説明される雑通知制御信号であ
る。
発明の詳細な説明 第2図の外部バスインターフェイス20を第5図により
詳細に説明する。第2図のALU24へ伝送するためデータ
が外部レジスタ31によってアドレス/データバスから受
けられ、かつALUの結果はメモリ情報レジスタバス(MIR
(L))からアドレス/データバスへ伝送される。
詳細に説明する。第2図のALU24へ伝送するためデータ
が外部レジスタ31によってアドレス/データバスから受
けられ、かつALUの結果はメモリ情報レジスタバス(MIR
(L))からアドレス/データバスへ伝送される。
最大4個の16ビット命令までを保持することができる
命令待ち行列30によってアドレス/データバスから命令
が受けられる。第2図の制御装置21aに関してさらに議
論するように、各々の16ビット命令は4個の4ビットフ
ィールドIQDA,IQDC,IQDBおよびIQDDに分けられる。これ
らのそれぞれのフィールドは後で完全に説明するような
Bレジスタファイルアドレスまたはマイクロアドレスを
形成するため制御装置21aへ送られる。さらに、IQDAお
よびIQDBは8ビットフィールドを形成するために用いら
れることができ、この8ビットフィールドはまた制御装
置21aへ送られて、マイクロアドレスを形成しかつ全体
の16ビット命令IQはALUへ送られることができる。
命令待ち行列30によってアドレス/データバスから命令
が受けられる。第2図の制御装置21aに関してさらに議
論するように、各々の16ビット命令は4個の4ビットフ
ィールドIQDA,IQDC,IQDBおよびIQDDに分けられる。これ
らのそれぞれのフィールドは後で完全に説明するような
Bレジスタファイルアドレスまたはマイクロアドレスを
形成するため制御装置21aへ送られる。さらに、IQDAお
よびIQDBは8ビットフィールドを形成するために用いら
れることができ、この8ビットフィールドはまた制御装
置21aへ送られて、マイクロアドレスを形成しかつ全体
の16ビット命令IQはALUへ送られることができる。
Sメモリアドレスは、3個のレジスタMAR1およびMAR2
ならびに命令ポインタIPを含むメモリアドレスレジスタ
32によってバレルシフタまたはバレルスイッチ出力バス
BSW49から受けられ、その各々は個々に選択されて8ビ
ットアドレスハイバスおよび第1図および第2図の両方
に関して上述した16ビットアドレスバスを経由して第1
図のSメモリ12へその内容を伝送することができる。こ
れらのレジスタの出力もまた第2図のALU24のXおよび
Yアダー入力へ戻すように転送するために選択されるこ
とができ、かつ各レジスタは独立して1または2だけ増
分されることができる。
ならびに命令ポインタIPを含むメモリアドレスレジスタ
32によってバレルシフタまたはバレルスイッチ出力バス
BSW49から受けられ、その各々は個々に選択されて8ビ
ットアドレスハイバスおよび第1図および第2図の両方
に関して上述した16ビットアドレスバスを経由して第1
図のSメモリ12へその内容を伝送することができる。こ
れらのレジスタの出力もまた第2図のALU24のXおよび
Yアダー入力へ戻すように転送するために選択されるこ
とができ、かつ各レジスタは独立して1または2だけ増
分されることができる。
第2図の制御装置21aおよびシーケンサ21bの詳細を説
明する前に、第2図の制御レジスタ23のナノ命令によっ
て制御される第2図のALU24の機能ユニットをまず説明
することがよりよき理解を与えるかもしれず、そのよう
なナノ命令のシーケンスはシーケンサ21bおよび制御ユ
ニット21aによって決定される。第2図のALU24は第6図
により詳細に示される。
明する前に、第2図の制御レジスタ23のナノ命令によっ
て制御される第2図のALU24の機能ユニットをまず説明
することがよりよき理解を与えるかもしれず、そのよう
なナノ命令のシーケンスはシーケンサ21bおよび制御ユ
ニット21aによって決定される。第2図のALU24は第6図
により詳細に示される。
第6図において、論理装置40はバス48として示される
種々のソース、すなわち、それぞれXマルチプレクサ41
およびYマルチプレクサ42を経由してAレジスタファイ
ル43およびBレジスタファイル44からデータ入力を受け
ることができる。Yマルチプレクサ42の出力は、後で完
全に説明するような理由のためマスカー装置45を経由し
て論理装置40へ供給される。論理装置40の出力は、Xマ
ルチプレクサ41の出力とともにバレルシフタ46へ供給さ
れる。上で説明したように、バレルシフタ46は第3D図に
関して説明したようにシフト量レジスタによって特定さ
れるシフト量値によって決定されるビット位置の数を左
または右および循環桁送りすることができる。バレルシ
フタ46の出力はメモリ情報レジスタ47へ供給されかつま
たバレルシフタ出力バス(BSW)49へ供給されて第2図
の外部バスインターフェイス20かつまた第2図の制御装
置21aおよびシーケンサ21bへ伝送される。
種々のソース、すなわち、それぞれXマルチプレクサ41
およびYマルチプレクサ42を経由してAレジスタファイ
ル43およびBレジスタファイル44からデータ入力を受け
ることができる。Yマルチプレクサ42の出力は、後で完
全に説明するような理由のためマスカー装置45を経由し
て論理装置40へ供給される。論理装置40の出力は、Xマ
ルチプレクサ41の出力とともにバレルシフタ46へ供給さ
れる。上で説明したように、バレルシフタ46は第3D図に
関して説明したようにシフト量レジスタによって特定さ
れるシフト量値によって決定されるビット位置の数を左
または右および循環桁送りすることができる。バレルシ
フタ46の出力はメモリ情報レジスタ47へ供給されかつま
たバレルシフタ出力バス(BSW)49へ供給されて第2図
の外部バスインターフェイス20かつまた第2図の制御装
置21aおよびシーケンサ21bへ伝送される。
用いられるべきそれぞれのBレジスタは先のマイクロ
命令のBファイルアドレスによって決定され、かつ他の
ユニットは第4図に関して説明したナノ命令の制御フィ
ールドの制御下にある。このように、X選択,Y選択,マ
スカー動作、ALU動作およびバレルスイッチ動作は第4
図に関して説明した制御フィールドによって決定され
る。
命令のBファイルアドレスによって決定され、かつ他の
ユニットは第4図に関して説明したナノ命令の制御フィ
ールドの制御下にある。このように、X選択,Y選択,マ
スカー動作、ALU動作およびバレルスイッチ動作は第4
図に関して説明した制御フィールドによって決定され
る。
第6図におけるすべてのデータ経路幅は32ビット幅で
あるが、第6図のユニットはマイクロ命令制御下で16ビ
ット幅データ経路幅のために用いられることができる。
あるが、第6図のユニットはマイクロ命令制御下で16ビ
ット幅データ経路幅のために用いられることができる。
第2図のシーケンサ21bを、第7図に関して説明す
る。このシーケンサはナノ命令または、必要なとき、上
述したような第2図のナノメモリ22を、特にアドレスす
るマイクロ命令のいずれかを検索するため第1図のマイ
クロメモリ11をアドレスするマイクロアドレスを繰返し
ている。最初に、シーケンス作用は0にセットされてい
るマイクロプログラムカウントレジスタ50(MPCR)で始
まり、かつ実行信号が開始すると、その出力はインクリ
メンタ51によって1だけ増分されかつ次のアドレスマル
チプレクサ56およびアドレスラッチ58を経由してマイク
ロメモリへ送られる。S命令が第4図の命令待ち行列30
へロードされるとき、これらの命令のそれぞれのフィー
ルドは第2図の制御装置21aによって用いられて、次の
アドレスマルチプレクサ56へ直接供給されることができ
るか、またはマルチプレクサ53を経由して代替マイクロ
プログラムカウントレジスタスタック54に記憶されるこ
とができるブランチアドレスを発生する。代替マイクロ
命令アドレスはまた第6図のバレルスイッチ出力49(BS
W)からスタック54へ入れられることができる。スタッ
ク54はプッシュダウンスタックであり、入れられるべき
最後のアドレスは読出されるべき最初のアドレスであ
る。
る。このシーケンサはナノ命令または、必要なとき、上
述したような第2図のナノメモリ22を、特にアドレスす
るマイクロ命令のいずれかを検索するため第1図のマイ
クロメモリ11をアドレスするマイクロアドレスを繰返し
ている。最初に、シーケンス作用は0にセットされてい
るマイクロプログラムカウントレジスタ50(MPCR)で始
まり、かつ実行信号が開始すると、その出力はインクリ
メンタ51によって1だけ増分されかつ次のアドレスマル
チプレクサ56およびアドレスラッチ58を経由してマイク
ロメモリへ送られる。S命令が第4図の命令待ち行列30
へロードされるとき、これらの命令のそれぞれのフィー
ルドは第2図の制御装置21aによって用いられて、次の
アドレスマルチプレクサ56へ直接供給されることができ
るか、またはマルチプレクサ53を経由して代替マイクロ
プログラムカウントレジスタスタック54に記憶されるこ
とができるブランチアドレスを発生する。代替マイクロ
命令アドレスはまた第6図のバレルスイッチ出力49(BS
W)からスタック54へ入れられることができる。スタッ
ク54はプッシュダウンスタックであり、入れられるべき
最後のアドレスは読出されるべき最初のアドレスであ
る。
次アドレスマルチプレクサ56への種々の入力はMPCR50
から来るか(そのアドレスはインクリメンタ51によって
1だけ増分されまたはインクリメンタ52によって2だけ
増分される)、インクリメンタ55を経由してまたは直接
AMPCRスタック54の出力からくるか、または第2図の制
御装置21aのブランチアドレス発生器からくることがで
きる。これらの入力のどれがアドレスラッチ58へ伝送す
るために選ばれるかは、現在のマイクロ命令からの条件
信号と、真のサクセサまたは偽のサクセサが要求されて
いるかどうかを示す2個の3ビット信号のうちの一方と
によって駆動されるサクセサ論理57によって決定され、
これらの信号はまた現在のタイプIマイクロ命令からく
るものである。タイプI以外のマイクロ命令形式の実行
は、次のマイクロ命令アドレスとしてMPCR+1の内在的
な選択を行なう。
から来るか(そのアドレスはインクリメンタ51によって
1だけ増分されまたはインクリメンタ52によって2だけ
増分される)、インクリメンタ55を経由してまたは直接
AMPCRスタック54の出力からくるか、または第2図の制
御装置21aのブランチアドレス発生器からくることがで
きる。これらの入力のどれがアドレスラッチ58へ伝送す
るために選ばれるかは、現在のマイクロ命令からの条件
信号と、真のサクセサまたは偽のサクセサが要求されて
いるかどうかを示す2個の3ビット信号のうちの一方と
によって駆動されるサクセサ論理57によって決定され、
これらの信号はまた現在のタイプIマイクロ命令からく
るものである。タイプI以外のマイクロ命令形式の実行
は、次のマイクロ命令アドレスとしてMPCR+1の内在的
な選択を行なう。
第2図の制御装置21aは第8A図ないし第8D図に詳細に
示されている。第8図はリテラルレジスタ、条件テスト
および調整、雑通知制御レジスタおよびアドレス変更子
を含む制御装置の4個の部分を示すだけである。
示されている。第8図はリテラルレジスタ、条件テスト
および調整、雑通知制御レジスタおよびアドレス変更子
を含む制御装置の4個の部分を示すだけである。
第8A図は第5図のBレジスタファイル44のためのBフ
ァイルアドレスおよび第2図および第7図のシーケンサ
21bのためのブランチアドレスの両方を発生する論理の
ブロック図である。この論理に対する現在の形式Iマイ
クロ命令からは2つの入力がある。一方は5ビットのB
ファイルアドレスで他方は16ビットのブランチアドレス
であり、これらの両方は第3D図のタイプIマイクロ命令
からくるものである。そのマイクロ命令におけるBファ
イルアドレスビットはビット43-47であり、かつ16ビッ
トブランチアドレスは、それらのフィールドがブランチ
アドレスを供給するために用いられるときビット30-42
および13,14および15から得られる。これらの入力に対
する変更は第5図に詳細に示される第2図の外部バスイ
ンターフェイス20からくるか、または第6図のバレルス
イッチ出力バス49の最下位の16ビットからくる。4個の
ビットフィールドIQDA,IQDB,IQDCおよびIQDDならびにBS
W出力49は現在のタイプIマイクロ命令によって供給さ
れるBレジスタファイルアドレスおよび/またはマイク
ロ命令ブランチアドレスを変更するために用いられる。
IQDAおよびIQDBの連結は現タイプIマイクロ命令によっ
て供給されたマイクロ命令ブランチアドレスを変更する
ために用いられる。
ァイルアドレスおよび第2図および第7図のシーケンサ
21bのためのブランチアドレスの両方を発生する論理の
ブロック図である。この論理に対する現在の形式Iマイ
クロ命令からは2つの入力がある。一方は5ビットのB
ファイルアドレスで他方は16ビットのブランチアドレス
であり、これらの両方は第3D図のタイプIマイクロ命令
からくるものである。そのマイクロ命令におけるBファ
イルアドレスビットはビット43-47であり、かつ16ビッ
トブランチアドレスは、それらのフィールドがブランチ
アドレスを供給するために用いられるときビット30-42
および13,14および15から得られる。これらの入力に対
する変更は第5図に詳細に示される第2図の外部バスイ
ンターフェイス20からくるか、または第6図のバレルス
イッチ出力バス49の最下位の16ビットからくる。4個の
ビットフィールドIQDA,IQDB,IQDCおよびIQDDならびにBS
W出力49は現在のタイプIマイクロ命令によって供給さ
れるBレジスタファイルアドレスおよび/またはマイク
ロ命令ブランチアドレスを変更するために用いられる。
IQDAおよびIQDBの連結は現タイプIマイクロ命令によっ
て供給されたマイクロ命令ブランチアドレスを変更する
ために用いられる。
第8B図は雑通知制御レジスタを示すものであり、これ
らのすべては第6図のバレルシフト出力49から、論理装
置40によって発生される値をロードされることができ
る。これらのレジスタの或るものはソースからロードさ
れることができ、かつ今説明するように、特定の機能を
行なう。
らのすべては第6図のバレルシフト出力49から、論理装
置40によって発生される値をロードされることができ
る。これらのレジスタの或るものはソースからロードさ
れることができ、かつ今説明するように、特定の機能を
行なう。
IQ状態レジスタ61は第5図の外部バスインターフェイ
スの命令待ち行列のバイト数を示す3ビットIQ状態信号
を受ける。上で示したように、これもまた第6図の論理
装置56によって発生される値を受け、かつその出力はX
アダー入力およびIQ制御装置の両方へ進む。
スの命令待ち行列のバイト数を示す3ビットIQ状態信号
を受ける。上で示したように、これもまた第6図の論理
装置56によって発生される値を受け、かつその出力はX
アダー入力およびIQ制御装置の両方へ進む。
S状態レジスタ62は第4図のナノ命令フォーマットの
雑通知フィールドからイネーブルS状態信号を受け、か
つまた、ALU動作から生じるALU条件を表わす4ビットを
受ける。
雑通知フィールドからイネーブルS状態信号を受け、か
つまた、ALU動作から生じるALU条件を表わす4ビットを
受ける。
マスクレジスタ63は或る状態条件を割込要求信号とな
るようにすることができる。
るようにすることができる。
選択レジスタ64は、なかんずく、リテラル値が以下に
説明するリテラルレジスタからき、かつALUおよびバレ
ルスイッチ出力バス49を経由して選択レジスタ64へ供給
されるタイプIまたはタイプIIマイクロ命令のいずれか
からの値を受ける。その出力はXアダー入力および或る
制御論理エレメントへ進み、特定の動作モードを能動化
する。
説明するリテラルレジスタからき、かつALUおよびバレ
ルスイッチ出力バス49を経由して選択レジスタ64へ供給
されるタイプIまたはタイプIIマイクロ命令のいずれか
からの値を受ける。その出力はXアダー入力および或る
制御論理エレメントへ進み、特定の動作モードを能動化
する。
シフト量レジスタ65はバレルスイッチ出力49を経由し
て論理装置からシフト量値を受けるが、また、第3D図お
よび第3B図のタイプIまたはタイプIIマイクロ命令のシ
フト量フィールドからシフト量値を受けることができ、
かつカウンタ66はバレルスイッチ出力49からかつまた第
8D図に関して以下に説明するリテラルレジスタからの値
を受けることができる。
て論理装置からシフト量値を受けるが、また、第3D図お
よび第3B図のタイプIまたはタイプIIマイクロ命令のシ
フト量フィールドからシフト量値を受けることができ、
かつカウンタ66はバレルスイッチ出力49からかつまた第
8D図に関して以下に説明するリテラルレジスタからの値
を受けることができる。
第8C図は条件選択論理69およびフラグレジスタ70を示
す。条件選択論理69は、種々の外部条件、ALU条件およ
びフラグレジスタ70の或るビットのみならず、第8B図の
カウンタ66のカウンタオーバフロー出力からの入力を受
ける。これらの信号の組合わせはタイプIマイクロ命令
の条件選択フィールド、ビット5−11によって選択され
かつ選択された条件を、第2図のシーケンサ21b、第2
図のALU24およびフラグレジスタ70へ出力して、第3D図
のタイプIマイクロ命令、ビット12-15からの条件調節
コマンドに従ってフラグレジスタの或るビットの値を変
更する。
す。条件選択論理69は、種々の外部条件、ALU条件およ
びフラグレジスタ70の或るビットのみならず、第8B図の
カウンタ66のカウンタオーバフロー出力からの入力を受
ける。これらの信号の組合わせはタイプIマイクロ命令
の条件選択フィールド、ビット5−11によって選択され
かつ選択された条件を、第2図のシーケンサ21b、第2
図のALU24およびフラグレジスタ70へ出力して、第3D図
のタイプIマイクロ命令、ビット12-15からの条件調節
コマンドに従ってフラグレジスタの或るビットの値を変
更する。
フラグレジスタ70は第6図の論理装置40によって発生
される信号をその入力として受ける。フラグレジスタの
ビットの値は上述した条件調整コマンドに従って調整さ
れる。
される信号をその入力として受ける。フラグレジスタの
ビットの値は上述した条件調整コマンドに従って調整さ
れる。
第8D図は第2図の制御装置21aにおけるリテラルレジ
スタを示し、それは第3D図のタイプIマイクロ命令から
の8および16ビットリテラル値のみならず、第3B図に示
されるタイプIIマイクロ命令からの32ビットリテラル値
をも受けることができる。この目的で、レジスタ67aお
よびレジスタ67bは各々8ビットレジスタであり、他
方、レジスタ67cは16ビットレジスタである。
スタを示し、それは第3D図のタイプIマイクロ命令から
の8および16ビットリテラル値のみならず、第3B図に示
されるタイプIIマイクロ命令からの32ビットリテラル値
をも受けることができる。この目的で、レジスタ67aお
よびレジスタ67bは各々8ビットレジスタであり、他
方、レジスタ67cは16ビットレジスタである。
上で説明した機能および種々の動作に加えて、この発
明は、この発明のプロセッサの融通性を与えるのに特に
有益な2つの動作を特徴とする。上で示したように、こ
れらの特徴の1つはプログラム制御のもとで32ビットま
たは16ビットデータ経路幅のいずれかを用いるための第
6図の演算論理装置の能力である。これが行なわれる態
様は、プログラムが第8D図のリテラルレジスタを、16ビ
ットバスまたは32ビットバスが用いられるべきかどうか
を示すための適当な値でロードすることである。これは
タイプIマイクロ命令で行なわれ、これに続いて、タイ
プIIIマイクロ命令またはナノ命令が続き、この命令は
そのリテラルレジスタの値を、論理装置およびバレルス
イッチ出力バスを経由して第8B図の選択レジスタ64へ転
送する。これは論理装置の最上位ビット条件およびキャ
リーアウトならびにオール0およびオール1検出論理に
影響する。バレルスイッチ動作もまた影響を受ける、な
ぜならば循環桁送りは16−ビットおよび32−ビットモー
ドにおいて異なるからである。この発明の他の特徴は、
1クロックタイムで異なるフィールドを分離するための
演算論理装置の能力である。これは、分離されるべきフ
ィールドを用いるデータワードを第6図のYマルチプレ
クサ42と、現在のナノ命令の制御に従って、分離される
べきフィールドの左へ、そのデータワードのその部分を
マスクしてしまうマスカーユニット45とへ供給すること
によって達成される。データワードの残りの部分は論理
装置40を経由してバレルシフタ46へ供給され、その場合
それは右エンドオフまでシフトされてそのデータワード
のその部分を分離されるべき所望のフィールドの右へ除
去する。
明は、この発明のプロセッサの融通性を与えるのに特に
有益な2つの動作を特徴とする。上で示したように、こ
れらの特徴の1つはプログラム制御のもとで32ビットま
たは16ビットデータ経路幅のいずれかを用いるための第
6図の演算論理装置の能力である。これが行なわれる態
様は、プログラムが第8D図のリテラルレジスタを、16ビ
ットバスまたは32ビットバスが用いられるべきかどうか
を示すための適当な値でロードすることである。これは
タイプIマイクロ命令で行なわれ、これに続いて、タイ
プIIIマイクロ命令またはナノ命令が続き、この命令は
そのリテラルレジスタの値を、論理装置およびバレルス
イッチ出力バスを経由して第8B図の選択レジスタ64へ転
送する。これは論理装置の最上位ビット条件およびキャ
リーアウトならびにオール0およびオール1検出論理に
影響する。バレルスイッチ動作もまた影響を受ける、な
ぜならば循環桁送りは16−ビットおよび32−ビットモー
ドにおいて異なるからである。この発明の他の特徴は、
1クロックタイムで異なるフィールドを分離するための
演算論理装置の能力である。これは、分離されるべきフ
ィールドを用いるデータワードを第6図のYマルチプレ
クサ42と、現在のナノ命令の制御に従って、分離される
べきフィールドの左へ、そのデータワードのその部分を
マスクしてしまうマスカーユニット45とへ供給すること
によって達成される。データワードの残りの部分は論理
装置40を経由してバレルシフタ46へ供給され、その場合
それは右エンドオフまでシフトされてそのデータワード
のその部分を分離されるべき所望のフィールドの右へ除
去する。
結語 2レベルのサブ命令の組、すなわち、プロセッサのナ
ノ命令メモリまたは制御記憶装置をアドレスするため
か、またはそのようなナノ命令を直接プロセッサの制御
レジスタへ供給するために用いられるマイクロ命令を用
いるマイクロプログラムされた処理システムを説明して
きた。この態様で、限られた数のナノ命令のみが、集積
回路チップ上に配置されるプロセッサ内にあるリード・
オンリ・メモリに記憶される必要がある。これは32ビッ
トデータバスプロセッサを含みかつ他の機能を行なうよ
うにチップのさらなる利用を考慮している。マイクロプ
ログラム制御のもとで、プロセッサは32ビットデータバ
スまたは16ビットデータバスのいずれかに配置されるこ
とができかつプロセッサにはまた、1クロックタイムで
データワードにおけるフィールドを分離することができ
るマスカーユニットおよびバレルシフタユニットが設け
られる。
ノ命令メモリまたは制御記憶装置をアドレスするため
か、またはそのようなナノ命令を直接プロセッサの制御
レジスタへ供給するために用いられるマイクロ命令を用
いるマイクロプログラムされた処理システムを説明して
きた。この態様で、限られた数のナノ命令のみが、集積
回路チップ上に配置されるプロセッサ内にあるリード・
オンリ・メモリに記憶される必要がある。これは32ビッ
トデータバスプロセッサを含みかつ他の機能を行なうよ
うにチップのさらなる利用を考慮している。マイクロプ
ログラム制御のもとで、プロセッサは32ビットデータバ
スまたは16ビットデータバスのいずれかに配置されるこ
とができかつプロセッサにはまた、1クロックタイムで
データワードにおけるフィールドを分離することができ
るマスカーユニットおよびバレルシフタユニットが設け
られる。
この発明の一実施例を説明してきたが、種々の変更お
よび変形は、添付の特許請求の範囲に記載されるこの発
明の精神および範囲から逸脱することなくなされるであ
ろうということが当業者にとって明らかであろう。
よび変形は、添付の特許請求の範囲に記載されるこの発
明の精神および範囲から逸脱することなくなされるであ
ろうということが当業者にとって明らかであろう。
第1図はこの発明を用いるシステムの図である。 第2図はこの発明のプロセッサにおける機能ユニットの
図である。 第3A図ないし第3D図はこの発明に用いられるマイクロ命
令のフォーマットおよび種々の形式を示す。 第4図はこの発明に用いられるナノ命令のフォーマット
の表示である。 第5図はこの発明とともに用いられる外部バスインター
フェイスの概略図である。 第6図はこの発明に用いられる演算論理装置の概略図で
ある。 第7図はこの発明のシーケンサの概略図である。 第8図は制御装置の4つの部分を示す。 第8A図ないし第8D図はこの発明の制御装置の種々の部分
の概略図である。 図において、11はマイクロメモリ、10はマスタープロセ
ッサ、10aはスレーブプロセッサ、12はSメモリ、13aは
ラッチ、13bはバッファ、22はナノメモリ、21aは制御装
置、21bはシーケンサ、24は演算論理装置、20は外部バ
スインターフェイス、23は制御レジスタ、25はマルチプ
レクサを示す。
図である。 第3A図ないし第3D図はこの発明に用いられるマイクロ命
令のフォーマットおよび種々の形式を示す。 第4図はこの発明に用いられるナノ命令のフォーマット
の表示である。 第5図はこの発明とともに用いられる外部バスインター
フェイスの概略図である。 第6図はこの発明に用いられる演算論理装置の概略図で
ある。 第7図はこの発明のシーケンサの概略図である。 第8図は制御装置の4つの部分を示す。 第8A図ないし第8D図はこの発明の制御装置の種々の部分
の概略図である。 図において、11はマイクロメモリ、10はマスタープロセ
ッサ、10aはスレーブプロセッサ、12はSメモリ、13aは
ラッチ、13bはバッファ、22はナノメモリ、21aは制御装
置、21bはシーケンサ、24は演算論理装置、20は外部バ
スインターフェイス、23は制御レジスタ、25はマルチプ
レクサを示す。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 デイヴイツド・ダラス・マツコウチ アメリカ合衆国、ペンシルベニア州、ウエ スト・チエスター ハムステツド・プレイ ス、301 (56)参考文献 特開 昭57−45648(JP,A) 特開 昭56−14350(JP,A) 特開 昭56−68838(JP,A)
Claims (12)
- 【請求項1】種々の機能ユニットを有する演算論理装置
を含む処理システムであって、 マイクロ命令記憶手段と、 ナノ命令記憶手段と、 制御レジスタとを備え、 前記マイクロ命令記憶手段は、前記ナノ命令記憶手段と
は別の集積回路チップ上に設けられ、 前記マイクロ命令記憶手段はマイクロ命令を含み、前記
マイクロ命令は、 前記マイクロ命令記憶手段からマイクロ命令が読出され
るときに、前記ナノ命令記憶手段における対応するナノ
命令をアドレスするのに用いられるナノ命令記憶手段の
アドレスをその中に含む第1のタイプと、 前記マイクロ命令記憶手段からマイクロ命令が読出され
るときに、ナノ命令を与えるのに用いられるナノ命令制
御信号をその中に含む第2のタイプとを含み、 前記ナノ命令記憶手段は、そこに制御信号を含むナノ命
令を含み、 前記制御レジスタは前記マイクロ命令記憶手段および前
記ナノ命令記憶手段に結合されて、前記現在のマイクロ
命令における一定の選択されたビットに従って前記記憶
手段の一方または他方から制御信号を受け、前記制御レ
ジスタはさらに前記演算論理装置へ結合されて前記制御
信号を前記演算論理装置の前記種々の機能ユニットへ供
給する、処理システム。 - 【請求項2】前記マイクロ命令記憶手段へ結合され前記
マイクロ命令における第1の組のビットを受けて、前記
マイクロ命令が前記ナノ命令記憶手段へのアドレスを含
むかまたは制御信号を含むかどうかを決定するためのデ
コーダ手段と、 前記デコーダ手段へ結合されるマルチプレクサ手段とを
さらに備え、前記マルチプレクサ手段はまた前記マイク
ロ命令記憶手段と前記ナノ命令記憶手段とに結合されて
前記記憶手段の一方を選択して制御信号を前記制御レジ
スタへ供給する、特許請求の範囲第1項記載のシステ
ム。 - 【請求項3】制御装置と、 機械語命令を記憶するためのメモリ手段とをさらに備
え、前記メモリ手段は前記制御装置へ結合されて前記機
械語命令を供給し、 前記制御装置は前記機械語命令からマイクロ命令記憶手
段のアドレスを形成するための手段を含む、特許請求の
範囲第2項記載のシステム。 - 【請求項4】前記制御装置は条件テストユニットを含
み、 前記マイクロ命令はどのような条件がテストされるべき
かを特定するフィールドを含む、特許請求の範囲第3項
記載のシステム。 - 【請求項5】前記制御装置および前記マイクロ命令記憶
手段へ結合されて、前記マイクロ命令記憶手段のアドレ
スを受けて前記マイクロ命令記憶手段をアドレスするシ
ーケンス手段をさらに備えた、特許請求の範囲第3項記
載のシステム。 - 【請求項6】外部バスと、 前記外部バスと、前記制御装置との間に結合される外部
バスインターフェイス手段とを含み、 前記外部バスは前記メモリ手段へ結合されて前記機械語
命令およびデータを受ける、特許請求の範囲第5項記載
のシステム。 - 【請求項7】前記演算論理装置は加算手段と、前記加算
手段に結合される入力レジスタと、前記加算手段に結合
される出力レジスタとを含み、 前記ナノ命令の前記制御信号は複数のフィールドに分割
され、かつ前記制御レジスタはそれぞれの機能ユニット
へ結合されてそこへ制御信号を供給する、特許請求の範
囲第1項記載のシステム。 - 【請求項8】制御装置と種々の機能ユニットを有する演
算論理装置とを含む処理システムであって、 マイクロ命令記憶手段と、 ナノ命令記憶手段と、 機械語命令を記憶するためのメモリ手段とを備え、前記
メモリ手段は前記制御装置へ結合されて前記機械語命令
をそこへ供給し、かつ 制御レジスタをさらに備え、 前記マイクロ命令記憶手段は、前記ナノ命令記憶手段と
は別の集積回路チップ上に設けられ、 前記マイクロ命令記憶手段はマイクロ命令を含み、前記
マイクロ命令は、 前記マイクロ命令記憶手段からマイクロ命令が読出され
るときに、前記ナノ命令記憶手段における対応するナノ
命令をアドレスするのに用いられるナノ命令記憶手段の
アドレスをその中に含む第1のタイプと、 前記マイクロ命令記憶手段からマイクロ命令が読出され
るときに、ナノ命令を与えるのに用いられるナノ命令制
御信号をその中に含む第2のタイプとを含み、 前記ナノ命令記憶手段は、そこに制御信号を含むナノ命
令を含み、 前記制御装置は前記機械語命令からマイクロ命令記憶手
段のアドレスを形成するための手段を含み、 前記制御レジスタは前記マイクロ命令記憶手段および前
記ナノ命令記憶手段に結合されて、前記現在のマイクロ
命令における一定の選択されたビットに従って前記記憶
手段の一方または他方から制御信号を受け、前記制御レ
ジスタはさらに前記演算論理装置へ結合されて前記制御
信号を前記演算論理装置の前記種々の機能ユニットへ供
給する、処理システム。 - 【請求項9】前記マイクロ命令記憶手段へ結合されて前
記マイクロ命令における第1の組のビットを受けて、前
記マイクロ命令が前記ナノ命令の記憶手段へのアドレス
を含むかまたは制御信号を含むかどうかを決定するため
のデコーダ手段と、 前記デコーダ手段へ結合されるマルチプレクサ手段とを
さらに備え、前記マルチプレクサ手段はまた前記マイク
ロ命令記憶手段と前記ナノ命令記憶手段とに結合されて
前記記憶手段の一方を選択して制御信号を前記制御レジ
スタへ供給する、特許請求の範囲第8項記載のシステ
ム。 - 【請求項10】前記制御装置および前記マイクロ命令記
憶手段へ結合されて、前記マイクロ命令記憶手段のアド
レスを受けて前記マイクロ命令記憶手段をアドレスする
シーケンス手段をさらに備えた、特許請求の範囲第8項
記載のシステム。 - 【請求項11】外部バスと、 前記外部バスと、前記制御装置との間に結合される外部
バスインターフェイス手段とを含み、 前記外部バスは前記メモリ手段へ結合されて前記機械語
命令およびデータを受ける、特許請求の範囲第10項記載
のシステム。 - 【請求項12】前記演算論理手段は加算手段と、前記加
算手段へ結合される入力レジスタと、前記加算手段に結
合される出力レジスタとを含み、 前記ナノ命令の前記制御信号は複数のフィールドに分割
され、かつ前記制御レジスタはそれぞれの機能ユニット
へ結合されてそこへ制御信号を供給する、特許請求の範
囲第8項記載のシステム。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US65624784A | 1984-10-01 | 1984-10-01 | |
US65654784A | 1984-10-01 | 1984-10-01 | |
US656547 | 1984-10-01 | ||
US656247 | 1991-02-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61114341A JPS61114341A (ja) | 1986-06-02 |
JPH0814791B2 true JPH0814791B2 (ja) | 1996-02-14 |
Family
ID=27097157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60216055A Expired - Lifetime JPH0814791B2 (ja) | 1984-10-01 | 1985-09-27 | 処理システム |
Country Status (4)
Country | Link |
---|---|
EP (2) | EP0177268B1 (ja) |
JP (1) | JPH0814791B2 (ja) |
CA (1) | CA1256579A (ja) |
DE (2) | DE3578629D1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0251715B1 (en) * | 1986-07-02 | 1994-08-24 | Advanced Micro Devices, Inc. | Programmable expandable controller with flexible I/O |
US5179716A (en) * | 1986-07-02 | 1993-01-12 | Advanced Micro Devices, Inc. | Programmable expandable controller with flexible I/O |
ATE67326T1 (de) * | 1986-07-02 | 1991-09-15 | Unisys Corp | Programmgesteuerte, teilweise verteilte maskenvorrichtung in einer programmierbaren einheit mit variablen datenwegbreiten. |
WO1992002883A1 (en) * | 1990-08-03 | 1992-02-20 | Du Pont Pixel Systems Limited | Parallel-processing systems |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3983539A (en) * | 1969-05-19 | 1976-09-28 | Burroughs Corporation | Polymorphic programmable units employing plural levels of sub-instruction sets |
US3751650A (en) * | 1971-06-28 | 1973-08-07 | Burroughs Corp | Variable length arithmetic unit |
JPS5614350A (en) * | 1979-07-12 | 1981-02-12 | Fujitsu Ltd | Microprogram control system |
JPS5668838A (en) * | 1979-11-12 | 1981-06-09 | Nec Corp | Data control unit |
JPS5745648A (en) * | 1980-09-02 | 1982-03-15 | Hitachi Ltd | Data processor |
DE3271123D1 (en) * | 1982-06-08 | 1986-06-19 | Ibm Deutschland | Circuits in the control part of a microprogrammable processor for direct hardware execution of selected instructions |
US4785393A (en) * | 1984-07-09 | 1988-11-15 | Advanced Micro Devices, Inc. | 32-Bit extended function arithmetic-logic unit on a single chip |
-
1985
- 1985-09-26 DE DE8585306836T patent/DE3578629D1/de not_active Expired - Lifetime
- 1985-09-26 EP EP85306836A patent/EP0177268B1/en not_active Expired
- 1985-09-26 EP EP88112570A patent/EP0305752B1/en not_active Expired - Lifetime
- 1985-09-26 DE DE88112570T patent/DE3587326T2/de not_active Expired - Lifetime
- 1985-09-27 JP JP60216055A patent/JPH0814791B2/ja not_active Expired - Lifetime
- 1985-09-30 CA CA000491922A patent/CA1256579A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
EP0305752A2 (en) | 1989-03-08 |
DE3587326T2 (de) | 1993-11-18 |
EP0177268A3 (en) | 1988-06-22 |
DE3578629D1 (de) | 1990-08-16 |
EP0177268A2 (en) | 1986-04-09 |
DE3587326D1 (de) | 1993-06-09 |
JPS61114341A (ja) | 1986-06-02 |
EP0305752B1 (en) | 1993-05-05 |
EP0177268B1 (en) | 1990-07-11 |
EP0305752A3 (en) | 1989-08-16 |
CA1256579A (en) | 1989-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4016545A (en) | Plural memory controller apparatus | |
US4524416A (en) | Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system | |
US4042972A (en) | Microprogram data processing technique and apparatus | |
US7404066B2 (en) | Active memory command engine and method | |
US5752073A (en) | Digital signal processor architecture | |
US3990052A (en) | Central processing unit employing microprogrammable control for use in a data processing system | |
EP0476722B1 (en) | Data processing system | |
JP2840444B2 (ja) | 算術パイプラインをオペレーティングする方法及びデータプロセッシング装置 | |
US4541045A (en) | Microprocessor architecture employing efficient operand and instruction addressing | |
EP0114191B1 (en) | Microword control system utilizing overlapped programmable logic arrays | |
US4348724A (en) | Address pairing apparatus for a control store of a data processing system | |
WO1999028817A2 (en) | An instruction decoder | |
KR19980032103A (ko) | 컴퓨터에 있어서 스칼라값을 벡터로 기입하는 방법 | |
JPH0752386B2 (ja) | マルチデ−タ路のcpuア−キテクチヤ | |
US4285039A (en) | Memory array selection mechanism | |
EP0035334B1 (en) | Data processing system with two level microprogramming | |
JP2001504959A (ja) | Riscアーキテクチャを有する8ビットマイクロコントローラ | |
US5034879A (en) | Programmable data path width in a programmable unit having plural levels of subinstruction sets | |
US5890009A (en) | VLIW architecture and method for expanding a parcel | |
US6026486A (en) | General purpose processor having a variable bitwidth | |
US4837688A (en) | Multi-channel shared resource processor | |
US4975837A (en) | Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets | |
US5526500A (en) | System for operand bypassing to allow a one and one-half cycle cache memory access time for sequential load and branch instructions | |
JPH0814791B2 (ja) | 処理システム | |
JPH0640303B2 (ja) | デ−タ処理装置 |