JPS5999550A - マイクロプログラム制御装置 - Google Patents

マイクロプログラム制御装置

Info

Publication number
JPS5999550A
JPS5999550A JP20904982A JP20904982A JPS5999550A JP S5999550 A JPS5999550 A JP S5999550A JP 20904982 A JP20904982 A JP 20904982A JP 20904982 A JP20904982 A JP 20904982A JP S5999550 A JPS5999550 A JP S5999550A
Authority
JP
Japan
Prior art keywords
microinstruction
address
branch destination
microprogram
branch
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
JP20904982A
Other languages
English (en)
Inventor
Tsutomu Sakamoto
務 坂本
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
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 filed Critical Toshiba Corp
Priority to JP20904982A priority Critical patent/JPS5999550A/ja
Publication of JPS5999550A publication Critical patent/JPS5999550A/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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/261Microinstruction address formation
    • 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
    • G06F9/265Microinstruction selection based on results of processing by address selection on input of storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明はマイクログロダラム制御万式ノデータ処理装匝
に係り、特にビット列処理命令を行なう際に必要となる
ビット・クターンの生成に好適するマイクロプログラム
制御装置に関する。
〔発明の技術的前景〕
この独のデータ処理装置で取シ扱ゎれる命令の一つにビ
ット列処理命令がある。このビット列処理命令には、ビ
ットアドレスから連続したA+1ビットのビット列を操
作する命令がある。
この命令は次のように処理される。まず、当該命令で指
定されるビットアドレスからオペランドが読み出される
。次に、このオペランドが長さtから生成したビットパ
ターンにょシマスフされ、これにより必要とするビット
列が抽出される。
従来、上記ビット・母ターンの生成を行なうのに次の2
棟の手段が用いられていた。
■ 第1図に示はれるように各種のビットパターンが格
納されているROM 11を設け、長さt−qアト9レ
スとしてROM 11 fアクセスすることによシJカ
望のビット・やターン全発生きせる手段。
■ シブト処理と論理演葬等とを組み合わせテヒット・
ゼターンを発生させる手段。
〔背景技術の問題点〕
しかし、これら従来技術ではハード量が増大し、〃)つ
命令の処理速度が低下する欠点があった。
〔ヴし明の目けり〕
本づ6明は上記事情に瀝みてなされたものでその目的は
、j4単なハード構成であ)ながら、特にビット列処理
に関する命令を高速に処理できるマイクロプログラムt
tilJ仰装前を提供することにるる。
〔づ6明の概要〕 本発明は多方向分岐条件が1σ数される条件レジスタと
、iu”J併4島己1意から読み出されるマイクロ命令
が特定のサブルーチンコール’fil令である場合に当
該命令のアドレスフィールドの一部を上記条件レジスタ
の内容に置き換えることによシ分岐先アドレスを生成す
る多方向分岐先アドレス生成手段とを設け、上記条件レ
ジスタの内容によって多方向に分岐させることにより、
上記多方向分岐条件として特にビット列の長さを与える
ことでこの長さに対応した分岐かり能となりその分岐先
で所望のビットパターンが得られるようにしたものであ
る。
〔発り」の実施例〕
以下、本発明の一実施例を図面を参照して説明する。第
2図はマイクロプログラム制御装置の構成を示すもので
ある。図中、21は外部から与えられる(ユーザ命令や
割込みによる)マイクロプログラムアドレスが置数され
るマイクロプログラムアドレスレジスタ(以下、MPA
Rと称する)、22はBAL (Branch And
 Link )マイクロ命令実行時、戻り番地が格納(
スタック)される置数レベルのスタックレジスタファイ
ル(以下、SRFと称する)である。SRF 22にス
タックされた戻シ番地はRTN (Return )マ
イクロ命令実行時に読み出される。23はインクリメン
タとしての加算器、24は現在実行中のマイクロプログ
ラムアドレスにli加えた値を保持するマイクロプログ
ラムカウンタ(以下、MPCと称する)である。25は
各踵マイクロプログラムが格納されている制御記憶(以
下、csと称する)、26はC825から読み出された
マイクロ命令が置数されるマイクロ命令レジスタ(以下
、Iv’lIRと称する)である。
ここで本実施例で適用されるマイクロ命令のフォーマッ
トについて第3図を参照して説明する。第3図において
(a)は分岐製のマイクロ命令のフォーマットを−示し
、(b)はイミディエートデータ(immediate
 data 、  即値データ)を定義するマイクロ命
令のフォーマツトラ示している。
図中、ESは1数ある演算モノー−ル(第2図では省略
されている)の一つを指定するフィールド、Fは演算の
種顛を指定するフィールドである。また、D、B、Aは
それぞれデスティネーノヨ/r Bパス(第2図では省
j略されている9)−ス、Aパス(第2図で符号3vで
示されているうノースの各データの転送先、転送元を示
すフィールドである。MCは上記i、tl 1fflJ
 1坤フイールド、’rpは後述するようにマイクロ命
令の種’14 f示すフィールドである。また、cMD
は各種指令のためのフィールド、Jcは分岐制御i1ノ
イールト9である。このJCフィールドにハ、条件分岐
時の分岐条件の指定や、マスク条件、更にはマイクロノ
0ログラムのページ間分岐の指定などが含まれる。AD
R8は分岐先アドレスフィールド、DATAはイミディ
エートデータフィールドである。
TPフィールドFi、3ビツトで構成され、そのビット
の組み合わせによシ、下記表に示されるように8種類の
マイクロ命令(機能)を指定するものでめる。
この表において、BRUは無条件分岐、BRcは条件分
岐を示すものである。1だ、BALUはサブルーチンコ
ール、gTNはサブルーチンからのリターン、DTAは
マイクロ命令のビット32〜63がイミディエートデー
タであることを示す。
RTNDはイミディエートデータの指定とサブルーチン
からのリターンとを示し、BAIJ:  は条件付BA
Lマイクロ命令を示す。このBA、LCマイクロ命令ハ
BALマイクロ命令に多方向分岐の機能を持たせたもの
である。N1vlLはJ C、ADR8、DATAの各
ツイールドラ無効とし、CMDフィールドのみ有効とブ
るマイクロ命令を示す。
再び第2図を該照すると、27は多方向分岐条件が置数
される条件レノスタ(以下、CRと称する)、28はデ
ータセレクタ(以下、DSELと称する)である。DS
EL 2 BはMIR26に置数されているマイクロ命
令のADRSフィールドの一部をCR27の内容で置き
換える機能を有している。29はMPAR21の出力、
、 SRF z 2の出力、MPC24の出刃、MIR
26にf置数されているマイクロ命令のADRSフィー
ルドの内容、またはDSEL 2 Elの出力のいずれ
か一部を選択するDSEL(データセレクタ)である。
DSEL 29の選択出力はマイクロ命令耽み出しのた
めのマイクロプログラムアドレスとしてC825に導か
れる。
30はデータバスとしてのAパス(7′−タパスとして
のBパスについては省略されている)、31はマイクロ
命令パスである。
次に本発明の一実施例の動作をビット列処理の場合をセ
′すにとり紀4図のマイクロプログラム・峨念図を参照
してd発明する。1ず、ビット列処理命令に対応したマ
イクロノログラム開始アドレスがMPAR21に置数さ
れる。しかしてMPAR2ノに置数されたマイクロノロ
グラム開始アドレスがDSEL 29によって選択され
る。これによpcS25から対応するマイクロ命令がt
jノeみ出されると同時に、那算器23によって上記マ
イクロプログラム開始アドレスに1が加えられた内容が
MPC’24にセットされる。以後、分岐型命令が実行
協れない限シ、MpC24の内容が+1の更新を受けな
がら連続した番地のマイクロ命令を読み出すだめのカレ
ントなマイクロプログラムアドレスとして用いられる。
CS25から読み出されたマイクロ命令は一旦rνII
R26に置数され、マイクロ命令パス3ノ上に送出され
る。そして、マイクロ命令パス31上のマイクロ命令に
応じた処理が行庇われる。
ここで、ビットi4ターンを生成するプログラムが、第
4図に示されるように(C825の)P4♀地以降に格
納δれているものとする。本実施例において、P番地に
はBALCマイクロ命令が格納され、その分岐先がQ番
地以降に割り当てられている。今、上述したビット列処
理命令に対応したマイクロプログラム処理の過程におい
て、多方向分岐条件としてビット列の長さLがCR27
に置数されている状態で、C825からP番地のBAL
Cマイクロ命令が読み出されたものとする。このBAL
Cマイクロ命令はMIR26に置数され、マイクロ命令
パス31上に送出される。そして、このマイクロ命令に
より直接に、或いはデコーダやナノゾログラムなど周知
の手段により各部が制御される。
MIR26に置数された上記(P番地の) BALCマ
イクロ命令のADBSフィールドで指定されたアドレス
QはDSEL 28 、29に導かれる。DSEL28
にはCR27に置数されているビット列の長さtも導か
れている。今、Lの構成ビット数をnビットとすると、
DSEL28は12ビツトのアドレスQの下位nビット
をLに置き換え、分岐先アドレスを生成する。すなわち
DSEL 28は、12ビットの分岐先アドレスの上位
12−nビットについては、アドレスQの上位12−n
ビットを選択し、下位nビットについてはtを選択する
。例えば、tは5ビツトで表わされる2進数であり、Q
は12ビツトのビット長を有し、その下位5ビツトは′
0”に設定された値を持つものとする。1反にt=3、
Q−”100”16(添字の16は16進表現を示す)
であれば分岐先アドレスは”103i6となる。すなわ
ち、DSEL 2 Bで生成される分岐先アドレスはQ
+tとなる。このQ+Aの分岐先アドレスはDSEL 
29に導かれる。このDSEL 2.9にはMPAR2
ノの出力、SRF 22の出力、MPC24の出力(こ
の例ではP+1番地)、更には前述したようにMIR2
6に1直数されているマイクロ命令(この例ではBAL
Cマイクロ命令)のADRSフィールドの内容(この例
ではアビレフ9番地)も々4がれる。そして、MIR2
6に置数されているマイクロ命令がこの例のようにBA
LCマイクロ命令の場合、DSEL 29はDSEL 
2 Bの出力であるQ+tの分岐先アドレスを選択する
。これによ’)、cszsからQ+を番地のマイクロ命
令が読み出される。
このとき、MPC24に保持されていたカレントなアド
レスP+1番地は戻シ番地として5PF22にスタック
され、MPC24にはDSKL 29によって選択され
た分岐アドレスQ+4e(加算器23によって)+1し
た内容がセットされる。なお、MIR,?15に置数−
されたマイクロ命令がBALUマイクロ命令(通常のサ
グルーチンコール命令)である場合には、当該マイクロ
命令のADRSフィールドの内容がその址ま分岐先アド
レスとしてDSEL 29により選択されることは言う
迄もない。
きて、C825から読み出されたQ+A(t=0.1,
2.・・・)番地のマイクロ命令は、第4図に示されて
いるようにあらかじめ長さtに対応したビットパターン
ヲ(ビット32〜63の)DATAフィールドに定義し
たRTNDマイクロ命令である。したがって、とのRT
NDマイクロ命令を実行することによりイミディエート
データとじて即座に所望のビット・やターンを11する
こと力・できる。壕だ、、  1.t’rnoマイクロ
命令にし、イミディエートデータの指定のほかに前述し
たようにサブルーチンからのリターンを指定するもので
ある。
したかって、とのRTNDマイクロ1宿令を実行するこ
とによシ(実需のRTNマイクロ命令と同様に)SRF
 22に格納されていた戻シ番地てめるP+1番地が取
シ出され、マイクロプログラムアドレスとしてDSEL
 29 ’fz介してC825に導かれる。
これによI)C82sからP +1 番地のマイクロ命
令が読み出され、元のルーチンに戻る準備が整う。この
とさ、MPC24にはC825に対するマイクロプログ
ラムアドレス(P +14地)に1がカロ算されたP 
+2 Mi地がセットされる。
そして、MPC24の内容が伎述づ−るマイクロ命令を
読み出すためのマイクロプログラムアドレスとして用い
られることになる。
このように本実施例によれば、多方向分岐条件としての
ビット列の長さtにJbじて多方向分岐か行なえ、その
分岐先(マイクロ命令)にて対応するビットパターンを
生成することがアきる。しかも、上記多方向分岐にシに
件分岐(BRC)マイクロ命令などを使わすBALマイ
クロ命令(サブルーチンコール命令)に多方向分岐機能
を持たせたBALCマイクロ命令全使用しているため次
のような作用効果をメすることができる。
すなわち、BALマイクロ命艙を実行し7′ζ場合、元
のルーチンに戻れるように戻り番地が5RF2.?にス
タック寧れるので、RTNマイクロ命令(ザブルーチン
リターン命令)では、戻’り誉地金指定する心安がない
。このため、CΔ■フィールドやJCフィールドk t
hに必要としないRTNマイクロ命令の場合には、ビッ
ト32〜63をDATAフィールドとして用い、−(ミ
ディエート。データを定義することが可能である。これ
がRTNDマイクロ命令であシ、前述したように当該1
マイクロ命令でピッ) ノ4ターンの生成と元のルーチ
ンへのリターンの両4戊能を発」軍させることができる
。これに対し、たとえ多方向分岐を用いてビット列の長
さLに応じたビットパターンを生成することが考えられ
たとしても、従来のように条件分岐(BRC)マイクロ
命令で多方向分岐する方式では、処理速度の点で間違が
ある。これは、この方式で多方向分岐した場合に元のル
ーチンに戻るためには、ADRSフィールドでその戻9
番地〒分岐先アドレスとして指定した無条件分肢(IU
 )マイクロ命令を実行する必要があるため、イミrイ
エートデータを定義するDTAマイ、クロ命令とBRU
マイクロ命令との両命令を実行し力ければならないから
である。すなわち、本実施例によれば、外部にROMな
どのノ・−ド構成を追加することなく、高速に任意のビ
ットノぐターンを得ることができる。
なお、前記実施例ではDEJi:L 2 Bを用い、B
ALCマイクロ命令のAJ)RSフィールドで指定され
たアドレスQの一部をビット列の長さLに置き換えて分
岐先アドレスを生成するものとして説明したが、例えば
加算器を用いてQ+tを求めこれを分岐先アドレスとす
るようにしてもよい。また、前記実施例では、ビットツ
クターンとして、ビット列の長さtに対応した、最上位
ビットから連続したt+1ビットの°゛1”のビットパ
ターンを示した(第4図参照)が、他の任意のビットパ
ターンであっても構わない。
更に前記実施例では、ビット列処理命令に関する処理動
作について説明したが、cR27にビット列の長さtで
なく他の多方向分岐条件をセット、することによシ、他
の命令に関しても有効に利用できることは明らかである
。これは、例えば複数のプログラム処理で使用するサブ
ルーチンが一部異なる場合に、C825の効率的運用を
図るために共通のサブルーチンを構成し、プログラムに
よシ当該サブルーチンの実行経路を変えるようにして実
質的に異なるサブルーチンを実行する場合などに有効で
ある。これは、上記実行経路を変えるためにサブルーチ
ンコール前に必要な条件をプリセットしておき、との条
件を判定して対応する飛び先に飛んだシ、サブルーチン
の中で条件判定を行なって対応する飛び先に飛んだ9す
る従来方式と比べれば明らかである。
〔発明の効果〕
以、、)、詳述したように本発明によれは、1廼単なハ
ード構成であシながら、特にビット列処理に関する命令
を高速に処理することができる。
【図面の簡単な説明】
第1図は従来例を示すブロック図、第2図は本発明のマ
イクロプログラム制#装置の一実施例を示すブロック図
、第3図は上記実施例で適用されるマイクロ命令のフォ
ーマツトラ示ス図、第41.qVi上記実施例で適用さ
れるマイクロノログラムの一部を示す概念図。 21・・マイクロプログラムフドレスレソスタ(jVI
PAR) 、22・・・スタックレソスタファイル(S
RF ) %−2,5−,1+4御記憶(cs)、26
−?イクロ命令しソスタ(1νIIIR)、27・・・
条件レソスタ(CR)、28 、29・・・データセレ
クタ(DSEL )。 出願人代理人  弁理士 鈴 工 武 彦第1図 θ (b) 第2図 第3 図 第4図 331

Claims (1)

  1. 【特許請求の範囲】 (1)  各種マイクロプログラムが格納されている制
    御記憶を備えたマイクロプログラム制御装置におい”て
    、′多方向分岐条件が置数される条件レソスタと、上記
    制御記憶から読み出されるマイクロ命令が特定のサブル
    ーチンコール命令である場合に当該命令のアドレスフィ
    ールドの内容と上記条件レジスタの内容とによ多分岐先
    アドレスを生成する多方向分岐先アドレス生成手段とを
    具備し、この手段によって生成された上記分岐先アドレ
    スを上記制御記憶に対するマイクロプログラムアドレス
    とすることによシ多方向に分岐することを特徴とするマ
    イクロプログラム、「0御装置。 (2)上記多方向分岐先アドレス生成手段は、上記特定
    のサブルーチンコール命令のアドレスフィールドの一部
    を上記条件レノスタの内容に置き侯えることによシ上記
    分岐先アドレスを生成・すること乞特徴とする特許請求
    の範囲第1項6旧取のマイクロプログラム1間御装装置
    。 (3)上記多方向分岐条件かビット列の長さであること
    を特徴とする特許請求の範囲第1項または第2項記載の
    マイクロプログラム制御装置。 玉4)上記多方向分岐先アドレス生成手段によって生成
    された上記分岐先アドレスを上記制御記憶に対するマイ
    クロプログラムアドレスとすることにより上記制御記憶
    から読み出される分岐先マイクロ命令が、上記ビット列
    の長さに対応するビットハターンとなっているイミディ
    エートデータを定義したマイクロ命令であることを特徴
    とする特許請求の範囲第3項記載のマイクロプログラム
    制御装置。 (5)  上記イミディエートデータを定義したマイク
    ロ命令がサブルーチンからのリターンをも示すマイクロ
    命令であることを特徴とする特許請求の範囲第4項記載
    のマイクロプログラム制御装置。
JP20904982A 1982-11-29 1982-11-29 マイクロプログラム制御装置 Pending JPS5999550A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20904982A JPS5999550A (ja) 1982-11-29 1982-11-29 マイクロプログラム制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20904982A JPS5999550A (ja) 1982-11-29 1982-11-29 マイクロプログラム制御装置

Publications (1)

Publication Number Publication Date
JPS5999550A true JPS5999550A (ja) 1984-06-08

Family

ID=16566399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20904982A Pending JPS5999550A (ja) 1982-11-29 1982-11-29 マイクロプログラム制御装置

Country Status (1)

Country Link
JP (1) JPS5999550A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0514092A2 (en) * 1991-05-08 1992-11-19 Fujitsu Limited Information processing system
US5996070A (en) * 1996-07-30 1999-11-30 Mitsubishi Denki Kabushiki Kaisha Microprocessor capable of executing condition execution instructions using encoded condition execution field in the instructions

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0514092A2 (en) * 1991-05-08 1992-11-19 Fujitsu Limited Information processing system
US5404554A (en) * 1991-05-08 1995-04-04 Fujitsu Limited Information processing system which converts specific instruction codes to non-user defined instruction codes
US5996070A (en) * 1996-07-30 1999-11-30 Mitsubishi Denki Kabushiki Kaisha Microprocessor capable of executing condition execution instructions using encoded condition execution field in the instructions

Similar Documents

Publication Publication Date Title
JPS5999550A (ja) マイクロプログラム制御装置
US4799151A (en) Microprogram control circuit
JPS6217773B2 (ja)
JPH0218729B2 (ja)
JPS6339928B2 (ja)
JPS58200349A (ja) マイクロプログラム制御装置
JPS6049935B2 (ja) マイクロプログラム制御方式
JPS58200348A (ja) マイクロプログラム制御装置
JPS6053334B2 (ja) マイクロプログラム制御方式
JPS62115541A (ja) マイクロ命令分岐アドレス生成方式
JPH0636161B2 (ja) 情報処理装置
JPS6227827A (ja) マイクロプログラムの分岐制御方式
JPS6158042A (ja) マイクロプログラム制御方式
JPS6136657B2 (ja)
JPS59153242A (ja) マイクロプログラム制御装置
JPH0557614B2 (ja)
JPS608943A (ja) 多岐分岐制御方式
JPH02213937A (ja) データ処理装置
JPS5497341A (en) Microprogram control system
JPS61235946A (ja) デ−タ処理装置
JPS58195963A (ja) デ−タ処理装置
JPS6127775B2 (ja)
JPH0198023A (ja) 条件付きサブルーチン呼出し方式
JPS62121543A (ja) マイクロプログラム制御装置
JPS62123529A (ja) マイクロプログラム制御方式