JPS58203554A - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPS58203554A
JPS58203554A JP57085752A JP8575282A JPS58203554A JP S58203554 A JPS58203554 A JP S58203554A JP 57085752 A JP57085752 A JP 57085752A JP 8575282 A JP8575282 A JP 8575282A JP S58203554 A JPS58203554 A JP S58203554A
Authority
JP
Japan
Prior art keywords
instruction
instructions
function
function type
low
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP57085752A
Other languages
English (en)
Inventor
Takashi Rokutanda
六反田 喬
Hiroshi Nakamura
洋 中村
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP57085752A priority Critical patent/JPS58203554A/ja
Priority to US06/495,614 priority patent/US4550369A/en
Publication of JPS58203554A publication Critical patent/JPS58203554A/ja
Pending 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/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/30181Instruction operation extension or modification
    • 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/30181Instruction operation extension or modification
    • G06F9/30196Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3818Decoding for concurrent execution
    • G06F9/3822Parallel decoding, e.g. parallel decode units

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)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は主メモリに格納されているプログラムをマイク
ロプログラムレベルで実行する演算処理装置に関する。
〔発明の技術的背景〕
この種の演算処理装置は一般に第1図に示さするように
構成されてお9、主メモリ10には!ログラムPが置か
れる。このプログラムPはソフトウェアで使えるいわゆ
るユーザ命令の組み合わせで作成される。命令制御部2
0は命令レジスタ(以下、IRと称する)21、マイク
ロプログラムが格納されている制御記憶22、コントロ
ールデータレジスタ(以下、CDRト称する)23、お
よびマイクロシーケンサ24を有している。命令制御部
20は主メモリ10上のユーザ命令を取り出し、データ
バス30f介して命令制御部20内のIRjJに電数す
る。
制御記憶22はlR21の出力の所定フィールドの内容
(通常はユーザ命令のオペレージ、ンコード)をマイク
ロアドレスとしてアクセスされる。これにより制御記憶
22の指定アドレス位置に書き込まれているマイクロ命
令が読み出され、CDR2Jに置数される。このときの
マイクロ命令はlR21に置数されたユーザ命令の機能
の実現金図るために、各棟ハードウェア(レジスタ部4
0や命令実行部50など)が制御できるように作られて
いる。なお、1つのユーザ命令の機能を実現するのに複
数のマイクロ命令ヲ賛する場合があるが、このときには
マイクロシーケンサ24により次のマイクロ命令の格納
位置を示すマイクロアドレスが指定される。
CDR2jに置数されたマイクロ命令の所定フィールド
の内容はコントロールパス60を介してレジスタtri
 40や命令実行部50に転送され、これによりユーザ
命令が実行される。
ところで、このように主メモリに格納されている10グ
ラムtマイクログロダラムレベルで実行するためのいわ
ゆるマイクロプログラミング技術は、制御記憶に適用さ
れるI C(Int@gratedC1r@uit)メ
モリがLSI  (Larg@5cale  Inte
gration)技術の発達により高速かつ大容量化さ
れるのに伴い、様々な面に応用されるようになってきて
いる。この応用例の一つとしてオペレーティングシステ
ム(以下、O8と称する)のファームウェア化が考えら
れる。これは、O8が処理する各種の機能(この機能は
一般にソフトウェアで実現されている)、例えばサブル
ーチンの形で用意されているす−ビスグログラムの処理
機能【ファームウェア(すなわちマイクロプログラムレ
ベル)で実現することにより処理効率を^めようという
−のである。このためには、例、ttfosのサービス
ゾログラムを実行する機能を有するユーザ命令(この命
令を高機能型命令と称する)t−新設し、@1図に示さ
れる演算処理装置において当該命令に対応した複数ステ
ツブのマイクロ命令群で構成されるマイクロプログラム
を実行することが考えられる。
〔背景技術の問題点〕
しかし、高機能型命令を実現(新設)するためには、尚
該命令で置き換え゛られる(サービスプログラムなどの
)ソフトウェアゾログラムを構成している命令列を各命
令毎に1または複数のマイクロ命令に変換し、これらの
マイクロ命令で構成されるマイクロプログラムを作成し
なければならずファームウェア設計が極めて煩雑となる
ため問題であった。
〔発明の目的〕
本発明は上記事情に鑑みてなされたものでその目的は、
高機能型命令の実現が極めて簡単に図れ、かつ処理効率
が向上する演算処理装置を提供することにある。
〔発明のa要〕
本発明では主メモリに置かれるプログラムをTfiI機
能型命令とそうでない命令(これを低機能型、k 、/
?rと称する)との組み合せで構成し、高機能型命令を
実行する仁とにより、実質的に複数の低機能型命令の列
が実行されるようにしている。そこで本発明ではソフト
ウェアのサラルーチンプログラムなど1i−1つの高機
能型命令に置き換える一方、上記サラルーチンプログラ
ムが格納される第1制御記憶、すなわち低機能型命令と
同じ形式でかつ同一機能を有するマイクロ命令の列から
成るマイクロプログラムが格納される第1制御記憶、低
機能型命令を実現するためのマイクロ命令の列から成る
マイクロプログラムが格納される従来の制御記憶と同様
の第2制御記憶、命令タイプ判別手段を設けている。
この命令タイ!判別手段は主メモリから取シ出される命
令が高機能型命令であるか低機能型命令であるかを判別
し、高機能型命令であれば当該命令1r第1制御記憶に
導き、低機能型命令であれば当該命令を第2制御記憶に
導く機能を有している。そして、本発明では、高機能型
命令が第1制#記憶に導かれることによって当該第1制
御記憶から順に読み出されるマイクロ命令(すなわち低
機能型命令)を第2制御紀憶に導くようにしており、こ
うすることにより第2制御記憶は第1制御記憶から与え
られるマイクロ命令が低機能型命令であるかのように動
作する。
〔発明の実施例〕
以下、本発明の一実施例を図面を参照して説明する。第
2図は演算処理装置の構成を示すもので100は主メモ
リである。主メモリ100の一部領域には前述した高機
能型命令と低機能型命令との組み合せで構成されたプロ
グラムP′が置かれている。200は命令制御部である
命令制御5200はIR(命令レジスタ) 2Oハタイ
!判別部202、制(財)記憶(第1制御記憶)203
、マイクロシーケンサ204、lR2O5、制御記憶(
第2制@8ピ憶)2o6、マイクロシーケンサ207、
およびCDR(コントロールデータレジスタ)208を
有している。命令制御部200は主メモIJ J o 
o上の命令を取シ出し、データバス300を介して命令
制御5200内のlR201に置数する。lR201の
出力はタイプ判別5202に供給される。タイプ判別5
202はxnxoiに置数された命令が高機能型命令で
あるか或いは低機能型命令であるかを命令の特定フィー
ルドを参照することによって判別する機能を有している
。タイプ判別部202はlR201に置数された命令が
低機能型命令の場合、当該命令をIRJ05に出力する
。しかして低機能型命令はlR2O5に置数される。制
#記憶206はlR2O5の出力の所定フィールドの内
容、例えばオペレージ、ンコードtマイクロアドレスと
してアクセスされる。制#記憶206は低機能型命令を
実現するためのマイクロ命令の列で成るマイクロプログ
ラム(第21[マイクロプログラム)が格納されている
メモリである。したがってIR;105の出力の所定フ
ィールドの内容が上述のようにマイクロアドレスとして
与えられることにより、劃I11に2憶206の指定ア
ドレス位置に書き込まれているマイクロ命令が絖み出さ
れる。制御記憶206から読み出されたマイクロ命令は
CDRgosに置数される。CDR20# K置数され
たマイクロ命令の所定フィールドの内容はコントロール
パス4o o (g l 図のコントロールパス60に
相当)を介してレジスタu500や命令実行部600(
第1図のレジスタ部40.命令実行f1i1soにそれ
ぞれ相当)に転送され、これにより命令実行が行なわれ
る。なお、1つの低機能型命令の機能を実状するのに複
数の1イクロ命令を要する一部には、マイクロシーケン
サ207(第1図のマイクロシーケンサ24に相当)に
より次のマイクロ命令の格納位置を示すマイクロアドレ
スが制御記憶206に対して指定される。このようにl
R201に置数された命令が低機能型命令の場合には、
当該命令がlR2O5に置数された後の動作は、従来例
において命令がlR21(第1図ε照)にtitaされ
九後の動作と同様である。
一方、lR201に置数された命令が高機能型命令の場
合、タイプ判別部202Fi尚絨命令を制御記憶203
に出力する。制御記憶gosはタイプ判別部202から
出力され念高機能型命令の所定フィールドの内容、例え
ばオ(レージ、ンコードをマイクロアドレスとしてアク
セスされる。制御記憶gosは低機能型命令と同一形式
でかつ同一機能を有するマイクロ命令で構成されている
マイクロプログラムであって、高機能型命令を実現する
ためのマイクロプログラム(第1棟マイクロプログラム
)が格納されているメモリである。このマイクロプログ
ラムは高機能型命令を実現するために、従来ソフトウェ
アで作成していた場合と同じアルゴリズムによシ低機能
型命令列で構成されているプログラムである。すなわち
制御記憶gosに格納されているマイクロプログラムは
、例えば従来サブルーチンの形で主メモリ上に用意され
ていたO8のサービスプログラムである。そして、この
サービスプログラムなどを実行するための命令が高機能
型命令であり、当該高機能型命令の所定フィールドの内
容は、制御#配憶203において対応するマイクロプロ
グラム(すなわち従末生メモリ上に用意されていたサー
ビスグログラムを構成する低機能型命令列と同一形式で
かつ同一機能を有するマイクロ命令列)が格納されてい
る領域の先頭位*1示すようにあらかじめ考慮されてい
る。したがって、タイプ判別部202によって高機能型
命令の所定フィールドの内容が上述のように制御記憶2
osに対するアドレスとして与えられることにより、対
応すするマイクロプログラムの先頭マイクロ命令が制御
記憶203から読み出される。
制御記憶203から読み出されたマイクロ命令すなわち
低機能型命令は、IFt205に置数される。以後の動
作は、タイプ判別g Z o zによって低機能型命令
と判別され、当該命令が直接lR2O5に置数された場
合と同様である。
明らかなように高機能型命令は複数の低機能型命令すな
わち制御記憶203に格納されている複数のマイクロ命
令により実現されておシ、そのための実行?till 
@はマイクロシーケンサ204によって行なわれる。す
々わち、サービスグログラムなどのソフトウェアプログ
ラムに代えて主メモIJ 100に置かれた1つの高機
能型命令が命令制御部200に取シ出されると、従来は
主メモリ内に置かれていた対応する低機能型命令列と同
じマイクロ命令列が先頭より1マイクロ命令ずつ制御記
憶203から読み出される。
そして、制御記憶203から読み出されたマイクロ命令
としての低機能型命令が制御記憶206に与えられるこ
とにより、通常の低機能型命令が主メモリ100から取
シ出されて制御記憶206に与えられた場合と同様に、
対応するマイクロ命令またはマイクロ命令列が制御記憶
206から読み出され指定された動作が行なわれる。こ
れらの動作が、制御記憶203から読み出される全マイ
クロ命令(すなわちソフトウェアプログラムを構成して
いた低機能型命令列)について行なわれることにより、
高機能型命令が実行される。
〔発明の効果〕
以上の説明から明らかなように本発明の演算処理装置に
よれば以下に示す作用効果を奏することができる。
■ 複数の命令(低機能型命令)で構成されていた従来
のサービスグログラムなどのソフトウェアプログラムに
代えて1つの高機能型命令を主メモリに置き、当該高機
能型命令の実行をマイクロプログラムレベル(ファーム
ウェア)で行なえるようにしたので、主、メモリに対す
る命令取り出し時のメモリアクセス時間が著しく短縮さ
れ、処理効率が向上する。
■ 高機能型命令で置き換えられるサービスプログラム
などのソフトウェアプログラムを構成していた低機能型
命令列をそのままの形でマイクロ命令列として1段目の
制御記憶(第11J#記憶)に格納し、この1段目の制
御記憶から読み出されるマイクロ命令列としての低機能
型命令列を2段目の制御記憶(第2制御記憶)に導き、
この2段目の制御記憶から読み出されるマイクロ命令を
従来例と同様に実行するようにしているので、上記サー
ビスグログラムなどのソフトウェアプログラムを構成し
ていた低機能型命令列を各命令毎に1または複数のマイ
クロ命令にわざわざ変換する会費がなくなり、高機能型
命令の実現が極めて簡単に図れる。
【図面の簡単な説明】
論1図は従来例を示すブロック図、第2図は本発明の一
実施例を示すブロック図である。 10.100・・・主メモリ、20.200・・・命令
制御41M、22,203,206−・・制御記憶、5
0.600・・・命令実行部、202・・・タイプ判別
部。

Claims (1)

    【特許請求の範囲】
  1. 高機能型命令および低機能型命令の2種の命令タイプの
    命令群で構成されるプログラムが格納されている主メモ
    リと、上記低機能型命令と同一形式でかつ同一機能を有
    するマイクロ命令で構成され上記高機能型命令を実現す
    るための第1禎マイクロプログラムが格納されている第
    1制御記憶と、上記低機能型命令を実現するための第2
    棟マイクロ10グラムが格納されている第2制御記憶と
    、上記主メモリから取り出された命令の上記命令タイプ
    を判別し、当該命令が上記高機能型命令である場合に当
    該命令を上記第1制御記憶に導く一方、当該命令が上記
    低機能型命令である場合に、当該命令を上記m2制御記
    憶に尋〈手段と、この手段によって上記高機能型命令が
    上記第1制御記憶に導かれることにより当該第1制御記
    憶から読み出される上記マイクロ命令を上記第2制御記
    憶に導く手段じて命令実行を行なう命令実行部とt−A
    偏することを特徴とする演算処理装置。
JP57085752A 1982-05-21 1982-05-21 演算処理装置 Pending JPS58203554A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP57085752A JPS58203554A (ja) 1982-05-21 1982-05-21 演算処理装置
US06/495,614 US4550369A (en) 1982-05-21 1983-05-18 Apparatus and method for processing macroinstructions and microinstructions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57085752A JPS58203554A (ja) 1982-05-21 1982-05-21 演算処理装置

Publications (1)

Publication Number Publication Date
JPS58203554A true JPS58203554A (ja) 1983-11-28

Family

ID=13867583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57085752A Pending JPS58203554A (ja) 1982-05-21 1982-05-21 演算処理装置

Country Status (2)

Country Link
US (1) US4550369A (ja)
JP (1) JPS58203554A (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975837A (en) * 1984-10-01 1990-12-04 Unisys Corporation 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
DE3750171T2 (de) * 1986-08-28 1995-02-02 Nec Corp Multiaufgabenverarbeitungsgerät.
US4812989A (en) * 1986-10-15 1989-03-14 Amdahl Corporation Method for executing machine language instructions
EP0279953B1 (en) * 1987-02-24 1994-11-02 Texas Instruments Incorporated Computer system having mixed macrocode and microcode instruction execution
US5235686A (en) * 1987-02-24 1993-08-10 Texas Instruments Incorporated Computer system having mixed macrocode and microcode
US5005118A (en) * 1987-04-10 1991-04-02 Tandem Computers Incorporated Method and apparatus for modifying micro-instructions using a macro-instruction pipeline
US5185870A (en) * 1987-04-10 1993-02-09 Tandem Computers, Inc, System to determine if modification of first macroinstruction to execute in fewer clock cycles
AU632493B2 (en) * 1988-05-03 1993-01-07 Lg Electronics Inc. Microprocessor having external control store
US5333287A (en) * 1988-12-21 1994-07-26 International Business Machines Corporation System for executing microinstruction routines by using hardware to calculate initialization parameters required therefore based upon processor status and control parameters
JPH0810428B2 (ja) * 1988-12-26 1996-01-31 三菱電機株式会社 データ処理装置
US7114086B2 (en) * 2002-01-04 2006-09-26 Ati Technologies, Inc. System for reduced power consumption by monitoring instruction buffer and method thereof
US8862924B2 (en) 2011-11-15 2014-10-14 Advanced Micro Devices, Inc. Processor with power control via instruction issuance

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5475253A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Information process system
JPS5622137A (en) * 1979-07-31 1981-03-02 Nec Corp Hierarchical microprogram control unit

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4179736A (en) * 1977-11-22 1979-12-18 Honeywell Information Systems Inc. Microprogrammed computer control unit capable of efficiently executing a large repertoire of instructions for a high performance data processing unit
US4225922A (en) * 1978-12-11 1980-09-30 Honeywell Information Systems Inc. Command queue apparatus included within a cache unit for facilitating command sequencing
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5475253A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Information process system
JPS5622137A (en) * 1979-07-31 1981-03-02 Nec Corp Hierarchical microprogram control unit

Also Published As

Publication number Publication date
US4550369A (en) 1985-10-29

Similar Documents

Publication Publication Date Title
US4439828A (en) Instruction substitution mechanism in an instruction handling unit of a data processing system
US4897787A (en) Data processing system
JPS5911943B2 (ja) デ−タ処理装置の為のトラツプ機構
JPS58203554A (ja) 演算処理装置
JPS645330B2 (ja)
US3344404A (en) Multiple mode data processing system controlled by information bits or special characters
JPH0391029A (ja) データ処理装置
JPS6212529B2 (ja)
US4419726A (en) Instruction decoding in data processing apparatus
CA1302579C (en) Apparatus and method for providing an extended processing environment on nonmicrocoded data processing system
JPS6160459B2 (ja)
JPH0574096B2 (ja)
US5187782A (en) Data processing system
JPH04268928A (ja) エミュレーション装置及び半導体装置
US4511983A (en) Apparatus for controlling microinstructions stored in a data processing unit memory
JPS5931733B2 (ja) 可変長さの命令を実行する中央処理装置
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
JPS5960650A (ja) タスク間交信方式
JPH0279122A (ja) 浮動小数点演算機構
JPS6232502B2 (ja)
JPH0192840A (ja) データ処理装置
JPS6148737B2 (ja)
JPS5922588Y2 (ja) マイクロプログラムプロセツサ
JPH1011320A (ja) 計算機等の処理装置におけるromプログラムモニタ装置
JPS604492B2 (ja) 計算機