JPS6230650B2 - - Google Patents

Info

Publication number
JPS6230650B2
JPS6230650B2 JP56179372A JP17937281A JPS6230650B2 JP S6230650 B2 JPS6230650 B2 JP S6230650B2 JP 56179372 A JP56179372 A JP 56179372A JP 17937281 A JP17937281 A JP 17937281A JP S6230650 B2 JPS6230650 B2 JP S6230650B2
Authority
JP
Japan
Prior art keywords
microprogram
memory
register
external inputs
area
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
Application number
JP56179372A
Other languages
English (en)
Other versions
JPS5880742A (ja
Inventor
Takanori Takei
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom 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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP17937281A priority Critical patent/JPS5880742A/ja
Publication of JPS5880742A publication Critical patent/JPS5880742A/ja
Publication of JPS6230650B2 publication Critical patent/JPS6230650B2/ja
Granted 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/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format

Landscapes

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

Description

【発明の詳細な説明】 本発明はマイクロプログラム制御方式により、
複数の外部入力に対して同一の処理を行なう際、
マイクロプログラム量を少ないものとすることが
できるマイクロプログラム制御方式に関するもの
である。
マイクロプログラム制御方式は、現在計算機、
コントローラ等の中央処理部へ適用を主体に広く
利用されているが、制御部に高い融通性を与える
ことができる為、各種のインテリジエンス入出力
装置や機能モジユールへの利用も進んでいる。
ところで、インテリジエンス入出力装置や機能
モジユール等に於いては、例えば、複数のパルス
列のパルス数を各パルス列毎に計数するというよ
うに、複数の外部入力に対して同一の処理を行う
場合がある。このような場合、従来は、ハードウ
エア量を少なくするために、外部入力に対する処
理をマイクロプログラムで記述しておき、外部入
力が発生した場合、その外部入力対応の処理プロ
グラムを実行させるようにしているが、外部入力
対応に処理プログラムを設けなければならない
為、マイクロプログラム量が外部入力の数に比例
して増大し、プログラム構成が複雑になる欠点が
あつた。
第1図は従来方式を説明する為のブロツク線図
であり、複数のパルス列それぞれのパルス数を計
数する場合についてのものである。同図に於い
て、1はマイクロシーケンサ2、マイクロ命令が
格納されているマイクロプログラムメモリ3、パ
イプラインレジスタ4、分岐制御回路5、テスト
条件選択回路6から成るマイクロプログラム制御
部、7は演算回路8、演算レジスタ9、メモリ1
0から成る演算制御部、11X,11Y,11Z
はそれぞれパルス列X,Y,Zの入力端子であ
る。又、第2図はマイクロプログラムメモリ3に
格納されているマイクロ命令のフオーマツトの一
例を示し、BOPはマイクロプログラム制御部1
の動作モードを指定する分岐制御フイールド、
TCSはテスト条件選択回路6に加えられるパル
ス列X,Y,Z、演算回路8の出力信号AL(例
えばオーバーフロー等を示す信号)のうちの何れ
を分岐制御回路5に加えるのかを示すテスト条件
選択フイールド、BADは分岐先のアドレスを示
す分岐アドレスフイールド、MADはメモリ10
のアドレスを指定するメモリアドレスフイール
ド、AOPは演算制御部制御フイールドである。
又、第3図はマイクロプログラムメモリ3に格納
されている計数処理の為のマイクロプログラムの
一例を示した図である。
先ず、第1図各部の機能について説明する。マ
イクロシーケンサ2はマイクロプログラムメモリ
3のアドレスを指定し、該アドレスに書込まれて
いるマイクロ命令を読出すものであり、読出され
たマイクロ命令はパイプラインレジスタ4に加え
られる。又、パイプラインレジスタ4はセツトさ
れたマイクロ命令の分岐制御フイールドBOP、
テスト条件選択フイールドTCS、演算制御部制
御フイールドAOP、メモリアドレスフイールド
MAD、分岐アドレスフイールドBADをそれぞれ
分岐制御回路5、テスト条件選択回路6、演算レ
ジスタ9、メモリ10、マイクロシーケンサ2に
加えるものである。
又、テスト条件選択回路6は、テスト条件選択
フイールドTCSの内容に従つて、パルス列X,
Y,Z、演算回路8の出力信号のうちの何れかを
選択して分岐制御回路5に加えるものである。
又、分岐制御回路5は分岐制御フイールドBOP
の内容を解読し、解読結果に基づいてマイクロシ
ーケンサ2の動作を制御する制御信号を作成する
ものであり、分岐制御フイールドBOPがPC+1
モードの場合は順次歩進させる制御信号を、分岐
モードの場合は分岐アドレスフイールドBADの
内容をそのまま出力させる制御信号を、条件分岐
モードの場合はテスト条件選択回路6を介して加
えられる信号が“1”になつた時点に於いて、分
岐アドレスフイールドBADの内容をそのまま出
力させる制御信号をマイクロシーケンサ2に加え
るものである。
又、パイプラインレジスタ4からメモリアドレ
スフイールドMADが加えられているメモリ10
には、パルス列X,Y,Zの入力パルス数を記憶
する領域CTX,CTY,CTZ、及び停止フラグを
セツトする領域STOPが設けられており、メモリ
アドレスフイールドMADにより、領域CTX,
CTY,CTZの何れかが指定されると指定された
領域に記憶されている数値(入力パルス)を演算
回路8の一方の入力端子に加え、演算回路8はこ
のメモリ10からの数値と演算レジスタ9からの
数値とを加算し、加算結果をメモリ10の前記指
定された領域に再び記憶させるものである。尚、
通常は、演算レジスタ9から演算回路8に加える
数値を「1」とし、各領域CTX,CTY,CTZに
記憶される数値と実際の入力パルス数とを等しく
するものであるが、演算レジスタ9から演算回路
8に加える数値は、演算制御部制御フイールド
AOPの内容により自由に設定することができる
ものであるから、演算回路8に加える数値を例え
ば「N」(Nは整数)とし、各領域CTX,CTY,
CTZに記憶される数値を実際の入力パルス数の
N倍とすることもできる。
また、X、Y、Z軸のいずれかの入力パルス数
のカウントアツプ時にカウンタのオーバーフロー
が発生すると、演算回路8より信号ALが出力さ
れ、この信号によりメモリアドレスフイールド
MADによつて指定された領域STOPに演算回路
8より“1”が停止フラグとしてセツトされる。
この停止フラグは、マイクロプログラムの異常処
理ルーチンで停止フラグが“1”であることを外
部に表示したり、カウント動作を停止させたりす
る場合に用いられる。
次に第3図を参照してマイクロプログラムメモ
リ3に格納されている計数処理の為のマイクロプ
ログラムと、第1図に示した装置の動作とを関連
づけて説明する。尚、同図に於いて、A,B,C
はそれぞれ、パルス列X,Y,Zのパルスが加え
られたか否かをチエツクするマイクロプログラム
であり、又、D,E,Fはそれぞれ、メモリ10
の領域CTX,CTY,CTZに記憶されている入力
パルス数をカウントアツプすると共に、オーバー
フロー等の異常を検出するサブルーチンである。
マイクロプログラム制御部1は、マイクロプロ
グラムメモリ3から同図に示すマイクロプログラ
ムA,B,Cを順次読出し、パルス列X,Y,Z
のパルスが加えられたか否かをチエツクする。
今、例えば、パルス列Xのパルスが加えられたと
すると、マイクロプログラムAによりサブルーチ
ンDが読出される。尚、マイクロプログラムAは
分岐制御フイールドBOP=“条件分岐モード”、
テスト条件選択フイールドTCS=“パルス列Xを
選択”、分岐アドレスフイールドBAD=“サブル
ーチンDの先頭アドレス”となつているものであ
る。即ち、分岐制御回路5は前述したように、分
岐制御フイールドBOP=“条件分岐モード”の場
合は、テスト条件選択回路6を介して加えられる
信号が“1”になつた時、マイクロシーケンサ2
に分岐アドレスフイールドBADの内容をそのま
ま出力させる制御信号を加えるものであるから、
マイクロプログラムAの各フイールドを上述した
ように設定しておけば、パルス列Xのパルスが加
えられた場合、マイクロプログラムAの分岐アド
レスフイールドBAD、即ち、サブルーチンDの
先頭アドレスがマイクロシーケンサ2からマイク
ロプログラムメモリ3に加えられるので、サブル
ーチンDを読出すことができる。
サブルーチンDが読出されると、メモリ10
は、このサブルーチンDのメモリアドレスフイー
ルドMADによつて指定された領域(この場合
MAD=“領域CTX”としておく)に記憶されて
いる入力パルス数を前述したように演算回路8に
加えて演算レジスタ9からの数値(通常は
「1」)と加算し、加算結果を入力パルス数として
再び領域CTXに記憶するものである。そして次
に、オーバーフロー等の異常を検出する為のマイ
クロ命令が読出され、異常の有無が検出される。
この異常の有無の検出は次のようにして行なわれ
る。まず、カウンタのカウントアツプが行なわれ
ると、信号ALが加えられたかをチエツクするマ
イクロ命令が読み出される。このマイクロ命令
は、分岐制御フイールドBOP=“条件分岐モー
ド”、テスト条件選択フイールドICS=“ALを選
択”、となつており、テスト条件選択回路6を介
して加えられる信号ALが“1”であると停止フ
ラグセツトのマイクロ命令が読み出される。も
し、信号ALが“0”であるとRETURNに分岐す
る。このマイクロ命令は演算制御部制御フイール
ドAOPが“1”となつており、またメモリアド
レスフイールドMAD=“領域STOP”となつてお
り、演算レジスタ9に“1”を設定したのち、演
算回路8を介してメモリ10の領域STOPに停止
フラグをセツトする。そしてこの後、リターン命
令(RETURN)が実行され、マイクロプログラ
ムBがマイクロプログラムメモリ3から読出され
る。
又、マイクロプログラムB,Cによりパルス入
力がパルス列Y,Zのものであると検出された場
合も、前述したと同様にパルス列Y,Z対応のサ
ブルーチンE,Fが読出され、メモリ10の領域
CTY,CTZに記憶されている入力パルス数がカ
ウントアツプされると共にオーバーフロー等の異
常の有無が検出される。
このように、従来方式は、複数の外部入力(従
来例の説明に於いてはパルス列X,Y,Z)に対
して同一の処理を行なう場合でも外部入力対応に
処理プログラム(従来例の説明に於いてはサブル
ーチンD,E,F)を設けておくものであるか
ら、マイクロプログラム量が外部入力の数に比例
して増加し、マイクロプログラムの記述が複雑に
なる欠点があつた。
本発明は前述の如き欠点を改善したものであ
り、その目的は複数の外部入力に対して同一の処
理を行なう場合、1つの処理プログラムで複数の
外部入力に対する処理を行なうことができるよう
にすることにより、マイクロプログラム量の増加
を防止し、且つ単純なマイクロプログラム記述を
可能にすることにある。以下実施例について詳細
に説明する。
第4図は本発明の実施例のブロツク線図であ
り、11は2ビツトのレジスタ、12a,12b
はスリーステートバツフア、13a,13bはプ
ルアツプ抵抗であり、他の第1図と同一符号は同
一部分を表わしている。又、第5図はマイクロプ
ログラムメモリ3に格納されたマイクロ命令のフ
オーマツトの一例を示しており、REはスリース
テートバツフア12a,12bを制御するレジス
タイネーブルビツトであり、他の第2図と同一符
号は同一部分を表わしている。尚、スリーステー
トバツフア12a,12bはレジスタイネーブル
ビツトREが“1”の時、ハイインピーダンスと
なるものである。又、第6図はマイクロプログラ
ムメモリ3に格納されている計数処理の為のマイ
クロプログラムの一例を示した図である。
マイクロプログラム制御部1は第6図に示すマ
イクロプログラムA,B,Cを順次マイクロプロ
グラムメモリ3から読出してパルス列X,Y,Z
のパルスが加えられたか否かをチエツクし、パル
ス列Xのパルスを検出した場合はレジスタ11に
軸番号“0”、“0”をセツトした後に、サブルー
チンDをコールし、パルス列Yのパルスを検出し
た場合は軸番号“0”、“1”をセツトした後に、
サブルーチンDをコールし、又、パルス列Zのパ
ルスを検出した場合は、軸番号“1”、“0”をセ
ツトした後にサブルーチンDをコールするもので
ある。尚、レジスタ11にセツトされたデータ
は、メモリアドレスフイールドMADの最上位デ
ジツト側に付加された形で、スリーステートバツ
フア12a,12bを介してメモリ10に加えら
れるものである。また、レジスタ11に各軸番号
をセツトするために、演算レジスタ9に“0”
“0”、“0”“1”、“1”“0”の3種の定数を用
意しておき、例えばパルス列Xのパルスを検出し
てX=1となつたときには“0”“0”を演算レ
ジスタ9からレジスタ11にセツトする。
サブルーチンDが読出されると、メモリ10
は、このサブルーチンDのメモリアドレスフイー
ルドMAD及びスリーステートバツフア12a,
12bを介してレジスタ11から加えられるデー
タとによつて決定されたアドレスに記憶されてい
るデータ(入力パルス数)を読出し、演算回路8
の一方の入力端子に加えるものである。そして、
演算回路8に於いて、前述したと同様に、メモリ
10からの入力パルス数と演算レジスタ9からの
数値とが加算され、加算結果が再びメモリアドレ
スフイールドMAD及びレジスタ11の出力デー
タによつて決定されたアドレスに格納されるもの
である。尚、この場合はレジスタイネーブルビツ
トREを“0”とし、レジスタ11の出力データ
が有効になるようにしておくものである。
そして、次に、オーバフロー等の異常を検出す
る為のマイクロ命令が読出され、前述したと同様
にして異常の有無が検出される。
異常が無い場合はか、リターン命令RETURN
が実行され、又、異常が検出された場合は、停止
フラグをセツトする為のマイクロ命令が読出さ
れ、メモリ10の領域STOPに停止フラグがセツ
トされる。尚、停止フラグをセツトする為のマイ
クロ命令はレジスタイネーブルビツトRE=“1”
とし、スリーステートバツフア12a,12bが
ハイインピーダンスとなるようにしておくもので
あり、従つて、この場合、メモリアドレスフイー
ルドMADの最上位デイジツト側に付加されるデ
ータはプロアツプ抵抗13a,13bによる
“1”、“1”となり、領域STOPが指定され、該
領域STOPに停止フラグが前述したと同様にして
セツトされることになる。
本実施例は上述したようにレジスタ11にセツ
トしたデータとメモリアドレスフイールドMAD
とによつて決定されたアドレスに処理結果(入力
パルス数)を記憶させるようにしているものであ
るから、従来方式のようにパルス列X,Y,Z対
応にサブルーチンD,E,Fを設ける必要はな
く、第6図に示すように1個のサブルーチンDを
設ければ良く、従つてマイクロプログラム量を従
来方式より少なくすることができる。又、本実施
例は、マイクロプログラムによりレジスタ11の
出力データを無効にし、所定の領域(領域
STOP)を指定することができるものであるか
ら、X、Y、Z軸のいずれかのカウンタでオーバ
ーフローが発生した場合に同一の領域に停止フラ
グをセツトすることができる。
尚、第6図のサブルーチンDに於いて、Δは
X,Y,Zの何れかを示すものであり、レジスタ
11の出力データによつて、X,Y,Zのうちの
何れかが自動的に設定されるものである。
尚、実施例に於いては、複数の外部入力に対し
て同一の処理を行なう場合について説明したが、
同一の処理を行なう外部入力の組が複数組あり、
且つ各組の処理内容が異なる場合にも本発明を適
用できることは勿論である。
以上説明したように、本発明は、複数の外部入
力のうちの何れが発生したのかを示す識別データ
がセツトされるレジスタを備え、外部入力が発生
した場合、前記レジスタの出力データに基づいて
処理結果をメモリの所定の領域に格納するように
しているものであり、複数の外部入力に対する同
一の処理を1つのサブルーチンプログラムで行な
うことができるので、従来方式に比べてマイクロ
プログラム量を少ないものとすることができる利
点がある。又、本発明はスリーステートバツフア
12a,12b、プルアツプ抵抗13a,13b
等から成り、マイクロプログラムの制御により、
前記レジスタの出力データを無効にすることがで
きるアクセス手段を備えたものであるので、例え
ば、X、Y、Z軸の何れかのカウンタでオーバフ
ローが発生した場合でも、同一の領域STOPに停
止フラグをセツトすることができ、従つて、何れ
かのカウンタがオーバフローしたことを停止フラ
グが“1”になつていることにより判別できる利
点がある。即ち、軸毎に停止フラグを有する場合
は、異常処理ルーチンで軸毎に停止フラグが
“1”になつているか否かを判定しなければなら
ないが、本発明によれば領域STOPのみを参照す
れば何れかのカウンタがオーバフローしているか
否かを判別できる利点がある。
【図面の簡単な説明】
第1図は従来例のブロツク線図、第2図は従来
方式のマイクロ命令のフオーマツトを例示した
図、第3図は従来方式のマイクロプログラムを例
示した図、第4図は本発明の実施例のブロツク線
図、第5図は本発明方式のマイクロ命令のフオー
マツトの一例を示した図、第6図は本発明方式の
マイクロプログラムの一例を示した図である。 1はマイクロプログラム制御部、2はマイクロ
シーケンサ、3はマイクロプログラムメモリ、4
はパイプラインレジスタ、5は分岐制御回路、6
はテスト条件選択回路、7は演算制御部、8は演
算回路、9は演算レジスタ、10はメモリ、11
X〜11Zは入力端子、12a,12bはスリー
ステートバツフア、13a,13bはプルアツプ
抵抗である。

Claims (1)

    【特許請求の範囲】
  1. 1 複数の外部入力に対して、それぞれ同一の処
    理をマイクロプログラムに従つて実行するマイク
    ロプログラム制御方式に於いて、前記複数の外部
    入力対応の処理結果を格納する前記複数の外部入
    力対応の領域と前記複数の外部入力に共通して割
    当てられた共通領域とが設けられたメモリと、前
    記複数の外部入力に対してそれぞれ同一の処理を
    実行する為の1個のサブルーチンプログラムを含
    むマイクロプログラムを格納したマイクロプログ
    ラムメモリと、前記複数の外部入力のうちの何れ
    が発生したかを示す識別データがセツトされるレ
    ジスタと、該レジスタの出力データを無効にする
    と共に、前記メモリの共通領域をアクセスするア
    クセス手段とを備え、マイクロプログラムにより
    前記アクセス手段を制御して前記メモリの共通領
    域をアクセスできるようにし、且つ、前記外部入
    力が発生した場合、マイクロプログラムにより前
    記複数の外部入力のうちの何れが発生したのかを
    識別して識別データを前記レジスタにセツトし、
    前記マイクロプログラムメモリから前記サブルー
    チンプログラムを読出して前記外部入力に対する
    処理を実行し、前記レジスタにセツトされた識別
    データを前記メモリのアドレス信号の一部とし
    て、処理結果を前記メモリの前記外部入力対応の
    領域に格納することを特徴とするマイクロプログ
    ラム制御方式。
JP17937281A 1981-11-09 1981-11-09 マイクロプログラム制御方式 Granted JPS5880742A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17937281A JPS5880742A (ja) 1981-11-09 1981-11-09 マイクロプログラム制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17937281A JPS5880742A (ja) 1981-11-09 1981-11-09 マイクロプログラム制御方式

Publications (2)

Publication Number Publication Date
JPS5880742A JPS5880742A (ja) 1983-05-14
JPS6230650B2 true JPS6230650B2 (ja) 1987-07-03

Family

ID=16064695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17937281A Granted JPS5880742A (ja) 1981-11-09 1981-11-09 マイクロプログラム制御方式

Country Status (1)

Country Link
JP (1) JPS5880742A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5533236A (en) * 1978-08-30 1980-03-08 Toshiba Corp Parameter control system
JPS5592950A (en) * 1978-12-30 1980-07-14 Ricoh Co Ltd Interruption control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5533236A (en) * 1978-08-30 1980-03-08 Toshiba Corp Parameter control system
JPS5592950A (en) * 1978-12-30 1980-07-14 Ricoh Co Ltd Interruption control system

Also Published As

Publication number Publication date
JPS5880742A (ja) 1983-05-14

Similar Documents

Publication Publication Date Title
US3518413A (en) Apparatus for checking the sequencing of a data processing system
EP0155211A2 (en) System for by-pass control in pipeline operation of computer
US4742466A (en) System for measuring path coverage represented by the degree of passage of execution paths in a program
US4019033A (en) Control store checking system and method
WO1986000434A1 (en) Method and apparatus for a compare and swap instruction
JPH0574099B2 (ja)
JPH0332818B2 (ja)
US5070476A (en) Sequence controller
US4270184A (en) Microprocessor-based programmable logic controller
EP0010196A1 (en) Control circuit and process for digital storage devices
CA2060137C (en) Circuit for executing conditional branch instructions in pipeline process
EP0081336B1 (en) Shifting apparatus
US6832334B2 (en) Computer register watch
EP0059758A1 (en) Numerical control unit
CA1119307A (en) Microcomputer having separate bit and word accumulators and separate bit and word instruction sets
US5287522A (en) External procedure invocation apparatus utilizing internal branch vector interrupts and vector address generation, in a RISC chip
JPS6230650B2 (ja)
US4410988A (en) Out of cycle error correction apparatus
EP0297890B1 (en) Apparatus and method for data induced condition signaling
US3363236A (en) Digital computer having linked test operation
JP2525492B2 (ja) プログラマブルコントロ―ラ
US4914581A (en) Method and apparatus for explicitly evaluating conditions in a data processor
JP2990800B2 (ja) 割込み処理装置
US4271484A (en) Condition code accumulator apparatus for a data processing system
JPH0427572B2 (ja)