JP3063006B2 - マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法 - Google Patents

マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法

Info

Publication number
JP3063006B2
JP3063006B2 JP2024586A JP2458690A JP3063006B2 JP 3063006 B2 JP3063006 B2 JP 3063006B2 JP 2024586 A JP2024586 A JP 2024586A JP 2458690 A JP2458690 A JP 2458690A JP 3063006 B2 JP3063006 B2 JP 3063006B2
Authority
JP
Japan
Prior art keywords
instruction code
address
entry point
instruction
bits
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
Application number
JP2024586A
Other languages
English (en)
Other versions
JPH02242334A (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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of JPH02242334A publication Critical patent/JPH02242334A/ja
Application granted granted Critical
Publication of JP3063006B2 publication Critical patent/JP3063006B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピユ−タ装置用のマイクロコ−ドの分野
に関するものであり、更に詳しくいえば、マイクロコ−
ドのエントリをアクセスするために要するアドレス表の
大きさを小さくする装置および方法に関するものであ
る。
〔従来の技術〕
今日の多くのコンピユ−タ装置は、コンピユ−タ装置
用の制御信号を発生するためにマイクロコ−ドを利用し
ている。そのようなマイクロコ−ド装置がウイルクス,
エム・ブイ(Wilkes,M.V.)の「ザ・グロウス・オブ・
インタレスト・イン・マイクロプログラミング(The Gr
owth of Interest in Microprogramming)」ア・リテラ
チヤ・サ−ベイ,コンピユ−テイング・サ−ベイス(A
Literature Survey,Computing Surveys)、vol.1、13
9〜145ペ−ジ、1969年9月、に記載されている。
一般に、マイクロコ−ド化されるコンピユ−タ装置
は、マイクロコ−ド化された命令を格納するするため
に、読出し専用メモリ(ROM)のような記憶装置を有す
る。マイクロコ−ド化された命令は記憶装置に格納さ
れ、マイクロコ−ド化された命令の各シ−ケンスはある
定められた入口点を有する。それから、与えられた命令
コ−ドに対応するマイクロコ−ド化された任意のシ−ケ
ンスの入口点を決定する手段が設けられる。
たとえば、従来のマイクロコ−ド化される装置が示さ
れている第1図を参照する。この装置においては、命令
コ−ドすなわちマクロ命令がプログラムされた論理アレ
イ(PLA)回路101により受けられる。PLA101は、求めら
れている命令コ−ドに対応する入口点アドレスを出力と
して発生し、それをマイクロコ−ドシ−ケンスメモリに
供給する。
アメリカ合衆国カリホルニア州サンタクララ(Santa
Clara)所在のインテル・コ−ポレ−シヨン(Intel cor
poration)により製造されたインテル80386マイクロプ
ロセツサはそのような従来のマイクロコ−ド化されるコ
ンピユ−タ装置の例である。
そのような装置においては、PLAまたは類似の装置に
より、各命令コ−ド(マクロ命令)を入口点アドレスに
マツプせねばならない。コンピユ−タ装置内の命令コ−
ドの数が増すと、ルツクアツプ装置(PLA)内の表の大
きさが大きくなる。
〔発明が解決しようとする課題〕
したがつて、本発明の目的は、マイクロコ−ド化され
るコンピユ−タ装置内の入口点を探すために要する表の
大きさを小さくする装置を開発することである。
〔課題を解決するための手段〕
この明細書では、大きさが小さくされたマイクロコ−
ド入口点ルツクアツプテ−ブルを有するマイクロコ−ド
化されるコンピユ−タ装置について説明する。本発明
は、入口点を発生してマイクロコ−ドシ−ケンスメモリ
に供給する入口点アドレス発生器を有するコンピユ−タ
装置を提供するものである。好適な実施例においては、
入口点アドレス発生器はプログラムされる論理アレイ回
路を有するが、別の手段を利用できることが当業者には
明らかであろう。
本発明のコンピユ−タ装置はマイクロコ−ドメモリ、
好ましくは読出し専用メモリ(ROM)手段を更に有す
る。本発明は命令コ−ド(マイクロ命令を群化すること
と、各群をマイクロコ−ドROMの共通入口点へマツピン
グする。そうすると、マイクロコ−ドメモリは複数のブ
ロツクを含むものと定義される。各ブロツクは共通入口
点の1つによりアドレスされる。各ブロツク内で、群内
の命令コ−ドに対応するマイクロコ−ド命令が一様に分
配される。
本発明は、求められている命令コ−ドに対応するマイ
クロコ−ド命令をアドレスが直接にアドレスできるよう
にするために、入口点の選択されたビツトを置き換える
手段も有する。好適な実施例においては、各ブロツクの
長さは32行である。入口点アドレスのビツト2,3,4は命
令コ−ドビツトから置き換えられる。これにより、おの
おの4行のマイクロコ−ド化された8つの命令をアドレ
ツシングできるようにされる。好適な実施例において
は、1行が47ビットの情報を含む。
本発明は更に、5行以上必要なマイクロコ−ド命令に
対しては、4行シ−ケンスの終わりに飛び越し命令を設
ける。それから、次のマイクロコ−ド命令が飛越し目標
場所から読取られる。好適な実施例においては。遅延さ
せられた飛越しスキ−ムが用いられる。飛越し命令を受
けた後で最後の命令を実行できるようにするために、最
後の命令ではなくて、最後の命令の1つ前の命令に飛越
し命令が置かれる。こうすることにより、パイプライン
ア−キテクチヤを有するコンピユ−タ装置においてフエ
ツチアヘツド処理を行わせるものである。
この明細書においてはマイクロコ−ド化されるコンピ
ユ−タ装置について説明する。以下の説明においては、
本発明を完全に理解できるようにするために、特定事項
を数多く詳しく説明する。しかし、それらの特定の詳細
なしに本発明を実施できることが当業者には明らかであ
ろう。他の場合には、本発明を不必要にあいまいにしな
いようにするために、周知の回路、および技術について
は詳しくは説明しないことにする。
本発明は、入口点ルツクアツプテ−ブルにおける必要
なスペ−スを減少する、マイクロコ−ドシ−ケンスメモ
リの編成を改良した、マイクロコ−ド化されるコンピユ
−タ装置で構成される。
本発明は、マイクロコ−ドシ−ケンスメモリ中のアド
レス群内でオフセツトを生じさせる、命令コ−ドオフセ
ツトアドレス発生器を有する。そのオフセツトは、要求
されている命令コ−ドのためのマイクロコ−ドをアドレ
スするために用いられる。
本発明の好適な実施例は、インテル社の80×86マイク
ロプロセツサフアミリ−(一般に、インテル80486と呼
ばれている)の次世代における利用法を実現のために提
案されたものである。
〔実施例〕
まず第2図を参照して、本発明は、入口点アドレスを
発生して、それをマイクロコ−ドシ−ケンスメモリ202
に供給する入口点アドレス発生器201を開示するもので
ある。この入口点アドレス発生器201は、命令コ−ドの
少くとも1ビツトを線210に受け、入口点アドレスを出
力として線211へ供給する。
好適な実施例においては、入口点アドレス発生器201
はプログラムされる論理アレイ(PLA)回路を有する。
しかし、読出し専用メモリ(ROM)、ランダムアクセス
メモリ(RAM)等のような別の手段を用いて本発明を実
施できることが当業者には明らかであろう。
好適な実施例においては、入口点アドレス発生器201
へ線210を介して供給される入力は11ビツトの情報を含
む。11ビツトの情報は、第4A図と第4B図に例示されてい
るように命令コ−ドから選択される。一般に、この好適
な実施例は、本発明を利用する次の2種類の命令コ−ド
を開示するものである。(1) 「1バイト」命令コ−
ド命令、および(2) 「2バイト」命令コ−ド命令。
第4A図と第4B図からわかるように、本発明を利用する1
バイトの命令コ−ド命令は1バイトの命令コ−ドと、ア
ドレツシングモ−ドとレジスタ情報および必要な任意の
オペランドを示す第2のバイトとを有する。
まず第4A図を参照する。この図にはMOVレジスタ/メ
モリ、即時(即時からレジスタまたはメモリを移動させ
る)命令401が示されている。MOVレジスタ/メモリ、即
時命令401は「1バイト」命令コ−ドの例である。8ビ
ツトを含む命令コ−ドバイトがビツト402として示され
ている。また、モ−ド情報およびレジスタ情報をアドレ
スするために第2のバイト403が利用される。ビツト0
〜2はレジスタ情報のために用いられ、ビツト6,7はモ
ード情報のために用いられる。ビット3〜5は命令コー
ドビットとして用いられる。最後に、オペランド404に
命令コ−ドが組合わされる。好適な実施例においては、
命令コ−ドバイト402からの8ビツトと、バイト403の3
〜5ビツトが11ビツト405として組合わされ、この11ビ
ツト405は、第2図の線210における入口点アドレス発生
器201をアドレスするために用いられる。後で第3図を
参照して詳しく説明するように、バイト403のビツト3
〜5は入口点アドレス中の置き換オフセツトとしても用
いられる。
次に、BTレジスタ/メモリ即時(ビツトレジスタまた
はメモリテスト、即時)命令411が示されている第4B図
を参照する。BTレジスタ/メモリ即時命令411は「2バ
イト」命令コ−ドの例である。命令バイトは、8ビツト
416として示されている第1のバイトと、8ビツト412と
して示されている第2のバイトとを有する。また、第3
のバイト413が第4A図のバイト403と同様に、モ−ドおよ
びレジスタ情報をアドレスする。バイト413のビツト3
〜5は命令コ−ドの一部として用いられる。最後に、オ
ペランド情報414に命令コ−ドが組合わされる。バイト4
12の8ビツトとバイト413のビツト3〜5が組合わされ
て11ビツト415にされる。この11ビツト415は、先に第4A
図を参照して説明するように、入口点アドレス発生器20
1をアドレスするために用いられる。更に、第4A図を参
照して説明するように、ビツト3〜5はオフセツトアド
レスのための置換ビツトとして用いられる。
好適な実施例のある浮動小数点命令においては、オフ
セツトアドレス中の置換ビツトのために、ビツト3〜5
の代りに、アドレッシングモード/レジスタバイト(第
4A図のバイト403として示されている)が用いられる。
ビツト0〜2は入口点アドレス発生器201をアドレスす
るために用いられ続ける。
線211上の入口点アドレス発生器201からの入口点アド
レス出力は13ビツトの情報を含む。
入口点アドレス発生器201は、命令コ−ドオフセツト
アドレス発生器203を介して、マイクロコ−ドシ−ケン
スメモリ202へ結合される。入口点アドレス発生器201に
より線211へ出力された入口点アドレス出力は、命令コ
−ドオフセツトアドレス発生器203への第1の入力とし
て結合される。オフセツトアドレス発生器203は線219上
の命令コ−ド情報の3ビツトを受けるために更に結合さ
れる。好適な実施例においては、第4A図と第4B図に置換
ビツトとして示されている3ビツトが線210へ供給され
る。好適な実施例においては、オフセツトアドレス発生
手段203は、入口点アドレスの3ビツトを、線219に供給
された命令コ−ドからの3ビツトと置換する回路を有す
る。
本発明の好適な実施例は入口点アドレスの3ビツトを
命令コ−ドからの3ビツトと置き換える(または「ジヤ
ム」)が、入口点アドレス中の選択したビツトを置換す
るために別の方法を採用できることが当業者には明らか
であろう。たとえば、置換ビツトを格納するRAMまたは
別の記憶装置をアドレスするために、命令コ−ドから選
択したビツトを利用できる。
命令コ−ドアドレス発生器203は、13ビツトの情報を
含む入口点アドレスを線212へ供給する。メモリ202をア
ドレスするための入口点アドレスを供給するために、線
212はマイクロコ−ドシ−ケンスメモリ202へ結合され
る。線212に現われる13ビツトの発生については第3図
を参照して詳しく説明することにする。
マイクロコ−ドシ−ケンスメモリは、ブロツク0 22
0、ブロツク1 221、ブロツク2 222およびメモリ領
域223のような複数の群に編成される。各ブロツク220〜
222は複数のセグメントを有する。各セグメントは1つ
の命令コ−ドのためのマイクロコ−ド命令を含む。
好適な実施例おいては、各セグメントの長さは4行
で、各ブロツクの長さは32行である。長さが4行または
それより短い与えられた命令コ−ドに対する一連のマイ
クロコ−ド命令の場合には、マイクロコ−ド化された命
令の全シ−ケンスを1つのセグメントに適合させること
ができる。4行より長い一連のマイクロコ−ド化された
命令の場合には、4行セグメント命令の終わりに飛越し
命令を使用できる。次のマイクロコ−ド化された命令が
領域223に格納され、かつ領域223から読出されるよう
に、飛越し命令はマイクロコ−ド化された命令をアクセ
スする。
好適な実施例においては、遅延された飛越し命令が利
用される。好適な実施例の遅延された飛越し命令はセグ
メント中の最後から1つ手前の命令として置かれる。遅
延された飛越し命令の後の命令(4行セグメント中の最
後の命令)が実行され、次に領域223への飛越しが実行
される。これにより、マイクロコ−ド化されたメモリか
らの命令のフエツチ動作において、フエツチアヘツド命
令メカニズムを利用できるようにされる。
好適な実施例の開発において、好適な実施例のプロセ
ツサに使用するには4行セグメントが最適であることが
判明した。より長いセグメントではマイクロコ−ドシー
ケンスメモリに使用されないスペ−スが生ずることにな
る。より短いセグメントでは過大な数の飛越しが行われ
ることになる。
次に第3図を参照して、マイクロコ−ドシ−ケンスメ
モリのアドレツシングについて詳しく説明する。入口点
アドレス301が、第2図の入口点アドレス発生器201か
ら、第2図の命令コ−ドオフセツトアドレス発生器203
により受けられる。命令コ−ドオフセツトアドレス発生
器203は線311上の3ビツトオフセツト値も受ける。好適
な実施例においては、3ビットオフセツト値は第4A図と
第4B図を参照して説明したようにして選択される。
第3図に示すように、オフセツト値は線311へ供給さ
れる。オフセツト値は、PLAから供給された入口点アド
レス301のビツト2,3,4 322を置換するために用いられ
る。ビツト0と1 323およびビツト5〜12 321は不変
のままである。ここで説明している例では、線311へ供
給されるオフセツト値は「010」である。
別の実施例においては、入口点アドレスにおいて置換
するために他のビツトを選択できることが明らかであ
る。たとえば、置換のためにビツト3,4,5を選択でき
る。そうすると、ブロツクサイズが64行で、セグメント
サイズが8行として実施できることになる。
マイクロコ−ドシ−ケンスメモリ302(第2図のマイ
クロコ−ドシ−ケンスメモリ202に対応する)をアドレ
スするために、修正された入口点アドレスが線312へ供
給される。
【図面の簡単な説明】
第1図は従来のマイクロコ−ド化される装置のブロツク
図、第2図は本発明のマイクロコ−ド化される装置のブ
ロツク図、第3図は本発明により利用できる、入口点ア
ドレス中の選択されたビツトを置換する方法を示す線
図、第4A図は本発明により利用できる、置換ビツトを有
する第1の命令コ−ドを示し、第4B図は本発明で利用で
きる、置換ビツトを有する第2の命令コ−ドを示す。 201……入口点アドレス発生器、202……マイクロコ−ド
シ−ケンスメモリ、203……命令コ−ドオフセツトアド
レス発生器。302……マイクロコ−ドシ−ケンスメモ
リ。
フロントページの続き (56)参考文献 特開 昭57−203141(JP,A) 特開 昭62−121543(JP,A) 特開 昭64−76241(JP,A) 特開 昭57−157353(JP,A) 特開 昭60−105044(JP,A) 特開 昭52−143726(JP,A) 特開 昭56−82951(JP,A) 特開 昭64−49935(JP,A) 特公 昭60−49935(JP,B2) (58)調査した分野(Int.Cl.7,DB名) G06F 9/22 350

Claims (17)

    (57)【特許請求の範囲】
  1. 【請求項1】(a)命令コードを受信し、第1のメモリ
    手段に対するベース入り口点アドレスを生成する入り口
    点生成手段を備えており、 (b)前記第1のメモリ手段はマイクロコード化された
    命令を格納すると共に複数のセグメント及び1つの命令
    オーバーフロー領域で構成されており、第1のセグメン
    トは第1の命令コードに関して連続して格納される複数
    のマイクロコード化された命令を格納すると共にN行及
    びアドレス位置Xを有し、第2のセグメントは前記第1
    のセグメントに続いて第2の命令コードに関して連続し
    て格納される複数のマイクロプロコード化された命令を
    格納すると共にN行及びアドレス位置X+Nを有し、前
    記命令オーバーフロー領域は前記第1の命令コードに関
    するマイクロコード化された命令を格納すると共に前記
    第1のセグメントとは続いてなく、 (c)更に、前記入り口点生成手段に結合され、更に命
    令コードを与える入力線に結合されており、前記命令コ
    ードの少なくとも1ビットを受信し、前記命令コードの
    前記少なくとも1ビットの関数として前記ベース入り口
    点アドレスの対応する選択されたビットを置き換えて前
    記命令コードについて前記第1のメモリ手段に対する入
    り口点アドレスを作成するオフセットアドレス生成手段
    を備えている ことを特徴とするマイクロプログラム化されたコンピュ
    ータシステム。
  2. 【請求項2】前記オフセットアドレス生成手段は前記入
    力線に結合されており、前記命令コードの3ビットを受
    信して前記ベース入り口点アドレスの選択された3ビッ
    トを置き換えることを特徴とする特許請求の範囲第1項
    に記載のマイクロプログラム化されたコンピュータシス
    テム。
  3. 【請求項3】(a)命令コードの少なくとも1ビットを
    入力として有し、メモリ手段に対する入り口点アドレス
    を生成する入り口点成生手段と、 (b) 前記入り口点生成手段に結合され、更に命令コ
    ードの少なくとも1ビットを与える入力線に結合されて
    おり、前記入り口点アドレスの選択されたビットを命令
    コードの前記少なくとも1ビットで置き換えて修正入り
    口点アドレスを作成する命令コードオフセット生成手段
    と を備え、 (c) 前記メモリ手段はマイクロコード化された命令
    を格納し、前記命令コードオフセット生成手段に結合さ
    れている ことを特徴とするマイクロプログラム化されたコンピュ
    ータシスム。
  4. 【請求項4】前記メモリ手段は複数のセグメントで構成
    されており、各セグメントはn行を格納することを特徴
    とする特許請求の範囲第3項に記載のマイクロプログラ
    ム化されたコンピュータシステム。
  5. 【請求項5】入り口点アドレス生成手段から入り口点ア
    ドレスを受信するマイクロコードシーケンスメモリを有
    するマイクロコード化されたコンピュータシステムであ
    って、 前記入り口点アドレス生成手段に結合され、更に命令コ
    ードを与える入力線に結合されており、前記入り口点ア
    ドレスからのビットを前記命令コードからのビットで置
    き換え、出力として修正入り口点アドレスを与える命令
    コードオフセット生成手段を更に備え、 前記マイクロコードシーケンスメモリは前記修正入り口
    点アドレスを受信し、更にマイクロコード化された命令
    の複数のブロックを備えていることを特徴とするマイク
    ロプロコード化されたコンピュータシステム。
  6. 【請求項6】前記複数のブロックのそれぞれは単一の命
    令コードに関するマイクロコード化された命令を格納す
    る複数のセグメントを備えていることを特徴とする特許
    請求の範囲第5項に記載のマイクロプロコード化された
    コンピュータシステム。
  7. 【請求項7】(a)命令コードを受信するステップと、 (b)前記命令コードに基づいてマイクロコードメモリ
    手段に対する入り口点アドレスを決定するステップと、 (c)前記入り口点アドレスの選択されたビットを前記
    命令コードからの一組のビットで置き換えて修正入り口
    点アドレスを作成するステップと、 (d)前記修正入り口点アドレスで前記マイクロコード
    メモリ手段をアドレスするステップと を有することを特徴とするマイクロコードシーケンスメ
    モリのアドレス方法。
  8. 【請求項8】前記修正入り口点アドレスを作成するステ
    ップは前記入り口点アドレスの選択されたビットをオフ
    セットで置き換えることを特徴とする特許請求の範囲第
    7項に記載のマイクロコードシーケンスメモリのアドレ
    ス方法。
  9. 【請求項9】プロセッサ、ディスプレイ,RAM、ディスク
    記憶装置、マイクロコード命令を格納するROM及びこのR
    OM内における命令コードアドレス位置を生成する回路を
    含むマイクロプログラム化されたコンピュータシステム
    であって、 ベースアドレス生成手段に結合され、命令コードを与え
    る第1の入力線を備えており、 前記ベースアドレス生成手段は更に命令コードオフセッ
    ト生成手段に結合されており、前記ROM内の位置のベー
    スアドレスを前記命令コードオフセット生成手段に与
    え、 更に、前記命令コードオフセット生成手段に結合され、
    この命令コードオフセット手段に前記命令コードの複数
    ビットを与える第2の入力線を備えており、 前記命令コードオフセット生成手段は前記ベースアドレ
    ス生成手段からの前記ベースアドレスの選択されたビッ
    トを前記第2の入力線からの前記複数ビットで置き換え
    て前記命令コードアドレス位置を作成する ことを特徴とするマイクロコード化されたコンピュータ
    システム。
  10. 【請求項10】(a)命令コードからメモリ手段に格納
    されたマイクロコード化された命令をアクセスする入り
    口点アドレスを生成する入り口点生成であって、 前記命令コードからベース入り口点アドレスを生成する
    ベース入り口点生成手段と、 前記命令コードから1ビット以上のビットを抽出する抽
    出手段と、 前記ベース入り口点アドレスからの所定数のビットを前
    記命令コードの前記1ビット以上のビットで置き換えて
    前記入り口点アドレスを与えるジャム手段と を備えた入り口点生成手段を備えており、 (b)前記メモリ手段は複数のブロック及び1つの命令
    オーバーフロー領域で構成されており、前記ブロックの
    それぞれはn個の連続したセグメントを有し、このn個
    の連続したセグメントのそれぞれは単一の命令コードに
    関するマイクロコード化された命令を連続して格納する
    m行を有し、前記命令オーバーフロー領域はm行より多
    い行数を必要とする命令コードに関する追加のマイクロ
    コード化された命令を格納し、 (c)更に、m行より多い行数を必要とする命令コード
    の最初のm行を有するセグメントを前記命令コードに関
    する追加のマイクロコード化された命令を含む前記命令
    オーバーフロー領域の部分と関連づける手段 を備えていることを特徴とするマイクロコード化された
    コンピュータシステム。
  11. 【請求項11】第1のフォーマットを有する命令コード
    の命令を受信する手段と、 前記命令コードの命令のそれぞれに関するマイクロコー
    ド命令を格納する第1のメモリ手段を備え、 前記第1のフォーマットを有する命令コードの命令を受
    信する前記手段に結合され、前記命令コードの命令に基
    づいて前記第1のメモリ手段に対する入り口アドレスを
    生成する入り口点生成手段を備え、この入り口点生成手
    段には、 前記第1のメモリ手段に対する入り口アドレスを格納す
    る第2のメモリ手段と、 前記第2のメモリ手段に結合され、前記第1のフォーマ
    ットを有する命令コードの命令から前記第2のメモリ手
    段に対するインデックスを生成するインデックス生成手
    段と、 前記インデックス生成手段に結合され、インデックスに
    基づいて前記第2のメモリ手段から入り口アドレスを検
    索する検索手段と、 前記検索手段に結合され、検索された入り口アドレスを
    前記命令コードの命令の少なくとも1ビットの関数とし
    て修正して前記第1のフォーマットを有する前記命令コ
    ードの命令について前記第1のメモリ手段に対する入り
    口アドレスを作成するジャム手段と とが設けられている を備えていることを特徴とするマイクロコード化された
    コンピュータシステム。
  12. 【請求項12】前記第1のフォーマットは命令コードビ
    ットのうちの第1のセットを有し、この第1のセットは
    命令コードビットのうちの第2のセットとは連続してい
    ないことを特徴とする特許請求の範囲第11項に記載のマ
    イクロコード化されたコンピュータシステム。
  13. 【請求項13】前記インデックス生成手段は命令コード
    ビットのうちの前記第1のセットの部分を命令コードビ
    ットのうちの前記第2のセットと組み合わせて前記第2
    のメモリ手段に対する前記インデックスを生成する手段
    を更に備えていることを特徴とする特許請求の範囲第12
    項に記載のマイクロコード化されたコンピュータシステ
    ム。
  14. 【請求項14】前記ジャム手段は検索された入り口アド
    レスの所定の部分を命令コードビットのうちの前記第2
    のセットで置き換える手段を更に備えていることを特徴
    とする特許請求の範囲第12項に記載のマイクロコード化
    されたコンピュータシステム。
  15. 【請求項15】前記第1のフォーマットは命令コードビ
    ットのうちの少なくとも1バイトの第1フィールドと、
    N個の命令コードビット及び第1の命令コードオペラン
    ドデータを有する第2フィールドと、第2の命令コード
    オペランドデータを有する第3フィールドとを有するこ
    とを特徴とする特許請求の範囲第11項に記載のマイクロ
    コード化されたコンピュータシステム。
  16. 【請求項16】前記インデックス生成手段は前記第1フ
    ィールドの命令コードビットの1バイトと前記第2フィ
    ールドのN個の命令コードビットとを組み合わせる手段
    を更に有することを特徴とする特許請求の範囲第15項に
    記載のマイクロコード化されたコンピュータシステム。
  17. 【請求項17】前記ジャム手段は検索された入り口アド
    レスのうちのNビットを前記第2フィールドの前記Nビ
    ットで置き換える手段を更に有することを特徴とする特
    許請求の範囲第16項に記載のマイクロコード化されたコ
    ンピュータシステム。
JP2024586A 1989-02-08 1990-02-05 マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法 Expired - Lifetime JP3063006B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US30804189A 1989-02-08 1989-02-08
US308,041 1989-02-08

Publications (2)

Publication Number Publication Date
JPH02242334A JPH02242334A (ja) 1990-09-26
JP3063006B2 true JP3063006B2 (ja) 2000-07-12

Family

ID=23192281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024586A Expired - Lifetime JP3063006B2 (ja) 1989-02-08 1990-02-05 マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法

Country Status (2)

Country Link
US (1) US5390311A (ja)
JP (1) JP3063006B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69425310T2 (de) * 1993-10-18 2001-06-13 Via Cyrix Inc Mikrosteuereinheit für einen superpipeline-superskalaren Mikroprozessor
US5832534A (en) * 1994-01-04 1998-11-03 Intel Corporation Method and apparatus for maintaining cache coherency using a single controller for multiple cache memories
JPH07271662A (ja) * 1994-03-31 1995-10-20 Sony Corp メモリ回路およびそのアクセス方法、並びにメモリのデータ作成方法
US6202125B1 (en) 1996-11-25 2001-03-13 Intel Corporation Processor-cache protocol using simple commands to implement a range of cache configurations
US5870582A (en) * 1997-03-31 1999-02-09 International Business Machines Corporation Method and apparatus for completion of non-interruptible instructions before the instruction is dispatched
US5805849A (en) * 1997-03-31 1998-09-08 International Business Machines Corporation Data processing system and method for using an unique identifier to maintain an age relationship between executing instructions
US5887161A (en) * 1997-03-31 1999-03-23 International Business Machines Corporation Issuing instructions in a processor supporting out-of-order execution
US6098167A (en) * 1997-03-31 2000-08-01 International Business Machines Corporation Apparatus and method for fast unified interrupt recovery and branch recovery in processors supporting out-of-order execution
US5913048A (en) * 1997-03-31 1999-06-15 International Business Machines Corporation Dispatching instructions in a processor supporting out-of-order execution
US6209072B1 (en) 1997-05-06 2001-03-27 Intel Corporation Source synchronous interface between master and slave using a deskew latch
EP1622009A1 (en) 2004-07-27 2006-02-01 Texas Instruments Incorporated JSM architecture and systems
US7542046B1 (en) 2006-06-26 2009-06-02 Nvidia Corporation Programmable clipping engine for clipping graphics primitives
US10853074B2 (en) * 2014-05-01 2020-12-01 Netronome Systems, Inc. Table fetch processor instruction using table number to base address translation

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2256705A5 (ja) * 1973-12-27 1975-07-25 Cii
US3949370A (en) * 1974-06-06 1976-04-06 National Semiconductor Corporation Programmable logic array control section for data processing system
US3988717A (en) * 1975-08-06 1976-10-26 Litton Systems, Inc. General purpose computer or logic chip and system
US4171536A (en) * 1976-05-03 1979-10-16 International Business Machines Corporation Microprocessor system
US4363091A (en) * 1978-01-31 1982-12-07 Intel Corporation Extended address, single and multiple bit microprocessor
US4236206A (en) * 1978-10-25 1980-11-25 Digital Equipment Corporation Central processor unit for executing instructions of variable length
US4330823A (en) * 1978-12-06 1982-05-18 Data General Corporation High speed compact digital computer system with segmentally stored microinstructions
US4403284A (en) * 1980-11-24 1983-09-06 Texas Instruments Incorporated Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4450519A (en) * 1980-11-24 1984-05-22 Texas Instruments Incorporated Psuedo-microprogramming in microprocessor in single-chip microprocessor with alternate IR loading from internal or external program memories
US4484260A (en) * 1981-12-17 1984-11-20 At&T Bell Laboratories Stored-program control machine
US4542453A (en) * 1982-02-19 1985-09-17 Texas Instruments Incorporated Program patching in microcomputer
US4493029A (en) * 1982-05-14 1985-01-08 At&T Bell Laboratories Microprocessor with PLA adapted to implement subroutines
US4484274A (en) * 1982-09-07 1984-11-20 At&T Bell Laboratories Computer system with improved process switch routine
US4713750A (en) * 1983-03-31 1987-12-15 Fairchild Camera & Instrument Corporation Microprocessor with compact mapped programmable logic array
US4864535A (en) * 1985-12-06 1989-09-05 Texas Instruments Incorporated Entry point address circuit for microcode rom
US4876640A (en) * 1986-02-07 1989-10-24 Advanced Micro Devices, Inc. Logic controller having programmable logic "and" array using a programmable gray-code counter
US4751703A (en) * 1986-09-16 1988-06-14 International Business Machines Corp. Method for storing the control code of a processor allowing effective code modification and addressing circuit therefor
US5032983A (en) * 1987-04-10 1991-07-16 Tandem Computers Incorporated Entry point mapping and skipping method and apparatus
US4878174A (en) * 1987-11-03 1989-10-31 Lsi Logic Corporation Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions

Also Published As

Publication number Publication date
JPH02242334A (ja) 1990-09-26
US5390311A (en) 1995-02-14

Similar Documents

Publication Publication Date Title
US3725868A (en) Small reconfigurable processor for a variety of data processing applications
CA1109967A (en) Expandable microprogram memory
US4156925A (en) Overlapped and interleaved control store with address modifiers
JP3063006B2 (ja) マイクロプログラムされるコンピュータ装置及びマイクロコードシーケンスメモリをアドレツシングする方法
US5931940A (en) Testing and string instructions for data stored on memory byte boundaries in a word oriented machine
JPS60151761A (ja) 10進演算用に連続したデ−タ装置をアクセスするためのニブルおよびワ−ド・アドレス指定可能なメモリ−
GB1353925A (en) Data processing system
US4701842A (en) Method and apparatus for avoiding excessive delay in a pipelined processor during the execution of a microbranch instruction
US4901235A (en) Data processing system having unique multilevel microcode architecture
EP0638868A2 (en) A variable accuracy indirect addressing scheme for SIMD multi-processors and apparatus implementing same
US5276891A (en) Alignment of sign, data, edit byte operand results for storage in memory
JP2002328804A (ja) データ処理装置、命令セット切換方法、データ処理アーキテクチャおよびデータ処理装置作動方法
AU623457B2 (en) Increasing options in locating rom in computer memory space
US4124893A (en) Microword address branching bit arrangement
GB2176918A (en) Memory management for microprocessor system
US4251862A (en) Control store organization in a microprogrammed data processing system
CA1099415A (en) Rom initializing apparatus
US4070703A (en) Control store organization in a microprogrammed data processing system
US4747044A (en) Direct execution of software on microprogrammable hardware
KR19990037572A (ko) 뱅크 어드레스 값을 공급하는 다중 소스를 구비하는 프로세서구조 설계 및 그 설계방법
US4812971A (en) Central processing unit for a digital computer
EP0073561B1 (en) High speed microinstruction execution apparatus
US5117487A (en) Method for accessing microprocessor and microinstruction control type microprocessor including pointer register
US4750108A (en) Data processor unit comprising a control section which comprises an address generator for generating addresses which are composed of characteristic address portions
US5784710A (en) Process and apparatus for address extension

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20090512

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090512

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100512

Year of fee payment: 10

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100512

Year of fee payment: 10