Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS6032207B2 - 分岐制御回路 - Google Patents
[go: Go Back, main page]

JPS6032207B2 - 分岐制御回路 - Google Patents

分岐制御回路

Info

Publication number
JPS6032207B2
JPS6032207B2 JP55112070A JP11207080A JPS6032207B2 JP S6032207 B2 JPS6032207 B2 JP S6032207B2 JP 55112070 A JP55112070 A JP 55112070A JP 11207080 A JP11207080 A JP 11207080A JP S6032207 B2 JPS6032207 B2 JP S6032207B2
Authority
JP
Japan
Prior art keywords
branch
data
instruction
processing
program
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
JP55112070A
Other languages
English (en)
Other versions
JPS5736348A (en
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.)
Toshiba Corp
Original Assignee
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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP55112070A priority Critical patent/JPS6032207B2/ja
Publication of JPS5736348A publication Critical patent/JPS5736348A/ja
Publication of JPS6032207B2 publication Critical patent/JPS6032207B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30054Unconditional branch instructions

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

【発明の詳細な説明】 本発明は、例えばマイクロコンピュータに内蔵される分
岐制御回路に関する。
従来、マイクロコンピュータに内蔵された分岐制御回路
において、分岐制御動作を行なわせるには、分岐動作毎
にプログラム中に分岐命令を必ず入れる必要がある。
例えば、プログラム上で基本的な処理は同一であるが、
目的動作によりその処理のためにデータをいくつか変え
る必要がある場合には、データ1個ごとに共通ルーチン
に行かせるための分岐命令を必要とする。またプログラ
ム上で共通ルーチンがいくつかあり、その共通ルーチン
の間で目的動作により処理内容が異なる場合に、これら
異なる処理への分岐条件コードを1つ1つプログラムす
る必要があるとともにその分岐条件コード設定ごとに分
岐命令を入れる必要があった。したがって従来の分岐制
御回路では、プログラムワード数(ステップ数)が増大
するといった欠点を有していた。本発明は上記の欠点を
解消するためになされたもので、所定の命令を連続して
プログラムすることにより、自動的に必要なデータある
いは分岐条件コードを生成して目的の処理ルーチンヘプ
ロセッサの処理を移させる手段も設けることによって、
上記データ毎あるし、分岐条件コード毎の分岐命令をな
くし、プログラムのワード数(ステップ数)を大幅に節
減できる分岐制御回路を提供することを目的とする。
以下、図面を参照して本発明の一実施例を説明する。
第1図は本発明の分岐制御回路を示しており、11a,
11bは命令入力端子で、入力様子11aは後述するN
レジスタヘデータをセットするためのNSET命令が加
えられ、入力端子11bはデータをインクリメントする
ためのDINC命令が加えられる。12はゲート制御回
路で、このゲート制御回路12は前記NSET命令と第
2基本同期宿号め2とのァンドをとるアンド回路13、
第2基本同期信号?2とィンバ−夕14により反転され
たNSET命令とのアンドをとるアンド回路15、およ
び前記アンド回路13の出力によりセットされ、アンド
回路15の出力によりセットされるフリップフロップ1
6とで構成されており、NSET命令が伝達されると第
2基本同期信号少2の立ち上りでフリツプフロツプ16
からセット出力が送出する。
17はカウンタ制御回路で、このカウンタ制御回路17
は前記PINC命令と第1基本同期信号?,とのアンド
をとるアンド回路18、前記第1基本同期信号ぐ,とィ
ンバータ19により反転されたDINC命令とのアンド
をとるアンド回路20で構成され、アンド回路18から
は後述するカウンタ21へのカウントデータを送出し、
アンド回路20からはカウンタ21をクリアするための
信号が送出される。
21はカウン夕で、この力ゥンタ21は前言印INC命
令時に力ゥンタ内容をインクリメントされ、DINC命
令以外の時はクリアされる。
22はセレクタで、このセレクタ22は前記PINC命
令時にカウンタ2 1からの出力データを選択し、DI
NC命令以外の時はデータバス23上のデータを選択す
る。
また、24はラツチパルスを作るためのゲート回路で、
このゲート回路24は前記NSET命令、フリツプフロ
ップ16の出力および第1基本同期信号少,のアンドを
とるアンド回路25と、前記DINC命令および第2基
本同期信号?2のアンドをとるアンド回路26と、これ
ら両アンド回路25,26の出力のオアをとるオア回路
27とで構成されている。さらに、28はNレジスタで
、このレジスタ28は前記ゲート回路24からラツチパ
ルスによってセレクタ22から出力データを格納する。
すなわち、NSET命令以外の命令を実行した後、最初
のNSET命令時のみセレクタ22で選択されたデータ
バス23上にデータをラッチし、DINC命令時にセレ
クタ22で選択されたカウンタ21の内容がラッチされ
る。なお、このNSET命令が連続した場合には、最初
のNSET命令でラッチされたデータがNレジスタ28
に格納される。また、29はNレジスタ28の内容であ
る分岐条件コ−ドを判定して所定の処理先へ指示するた
めの分岐条件判定回路である。ここで、前記NSET命
令およびDINC命令のコードは、それぞれNSET命
令がオペレーションコードとnビットのオペランドで構
成され、DmC命令はオペレーションコードのみで構成
されている。
各命令と同期信号の関係は、第2図に示すように各命令
を実行するたの1命令サイクル中に第1の基本同期信号
?,と第2の基本同期信号?2とが発生し、第1の基本
同期信号◇,は第2の基本同期信号ふ2 よりタイミン
グ的に先行している。次に、本分岐制御回路の特作を具
体的なプログラムに沿って説明する。
第3図はプログラム上で基本的な処理は同一であるが、
目的によりその処理のためのデータをいくつか変える必
要がある場合におけるプログラムのフローチャートを示
している。このプログラムでは、いくつかのデータを連
続的にプログラムすることにより自動的に共通ルーチン
に入るので、データ1個ごとに共通ルーチンに行く為の
分岐命令を入れる必要がなくなっている。すなわち、第
1図のNレジスタ28にラッチされる値を上記処理のた
めのデータとして使用している。このようなデータをる
ために前記たNSET命令を、例えばステップS,,S
2,S3のように連続してプログラムしており、これら
のステップS,,S2,S3で得られたデータをもとに
ステップS4以降の共通ルーチンで目的処理を行なうよ
うにしている。なお、図中a,b,cはメインプログラ
ムの分岐命令に使用される他の処理ルーチンから目的の
データにもとづく共通ルーチンの処理を実行させるため
の飛び先指標である。例えば今、マイクロコンピュータ
のプロセッサの処理がメインプログラムの他のルーチン
から飛び先指標Cに移行すると、NSET命令が第1図
の入力端子11aに加えられるので、セットされている
フリツプフロツプ16のセット出力とこのNSET命令
によって第1の基本同期信号?・のタイミングでアンド
回路25から“1”レベルの信号が出力され、この“1
”レベルの信号はオア回路27を介してNレジスタ28
にラッチパルスとして伝達される。このラツチパルスに
よってデータバス23上にあるデータ比がセレクタ22
を通じてレジスタ28にラツチされる。したがって、こ
のデータn3はバスAを通じてデータバス23に伝達さ
れる。この時、プロセッサの処理はステップS4に入っ
ているので、データバス23上に伝送されてきたデータ
〜を呼び込んだ後、共通ルーチンの処理を実行する。同
様にプロセッサのプログラム処理が飛び先指標aに移行
した時は、NSET命令によってステップS,でNレジ
スタ28にデータn,がラツチされる。ステップS2、
ステップS3におけるNSET命令はアンド回路16に
て“0”レベルの出力となり、フリツプフロツプ16は
リセットされず夕(すなわちNSET命令が連続的に入
っている限りフリツプフロツプ16はリセットされない
)、ゲート回路24からはラツチパルスは出力されない
のでNレジスタ28は最初にステップS,でのNSET
命令によってラッチされたデータn,を保持Zする。そ
して、プロセッサの処理は次のステップS4に進むと、
ここで前述同様データn,をもとに共通ルーチンを実行
する。プロセッサのプログラム処理が飛び先指標bに移
行した時は前述同様Nレジスタ28はデータ比を保持し
、このデータn2をZもとに共通ルーチンの実行処理を
行なう。上記の第3図のプログラムでは、従来の場合に
はステップS,,S2の間にそれぞれ共通ルーチンに無
条件ジャンプさせるための分岐命令が必要であったが、
本回路を用いることによつりこのデータ2毎の分岐命令
をなくすることができ、処理データが多数になるほど従
来に比べプログラムのワード数を大幅に減らすことがで
きる。
第4図はプログラム上で共通ルーチンがいくつかあり、
その共通ルーチソの間で目的により処理内容が異なる場
合におけるプログラムのフローチャートを示している。
このプログラムでは、所定の命令コードを連続的に入れ
ることにより分岐条件コードを自動的に生成し、異なる
処理への分岐条件コードを1つ1つプログラムする必要
がなく、しかもそのコード設定命令(この場合DmC命
令)ごとに分岐命令を入れる必要がなくなっている。す
なわち、第1図のNレジスタ28にラツチされる値を分
岐条件コードとして前記異なる処理のために使用してい
る。このような分岐条件コードを得るために、例えば異
なる処理が3つある場合には前記したDINC命令をス
テップS,,S2,S3のように連続してプログラムし
ており、これらのステップS,,S2,S3で得られた
分岐条件コードをもとに判定回路29で判定れた判定条
件に従って異なる処理(処理A,B,C,D)を実行す
るようにしている。なお、プログラム中のa,b,c,
dは前述同様のメインプログラムからの飛び先指標であ
る。プロセッサの処理が飛び先指標dに移行すると、第
1図の入力端子11bにはDINC命令が到釆せず、し
たがってカウンタ21の内容は“0”であるのでNレジ
スタ28には第2の基本同期信号少2のタイミングで“
0”がラツチされる。このNレジスタ28の値が“0”
の場合には、判定回路29は共通ルーチンの処理Dのみ
でそれ以外の処理をプロセッサが実行しなおように指示
する。プロセッサの処理が飛び先指定cに移るとステッ
プS3にてDINC命令を実行する。すなわち、第1図
の入力端子11bにDINC命令が加えられるので、カ
ウンタ制御回路17のアンド回路18から第1基の本同
期信号?,のタイミングでカウンタデータが出力され、
カウンタ21はこれをカウンタしてその内容を“1”と
する。このカウンタ21の内容“1”はセレクタ22に
より選択されてNレジスタ28に格納される。ステップ
S5にてこのレジスタ28の内容は判定回路29で判定
され、例えば“1”の場合には処理Cが指定されるので
、マイクロプロセッサの処理は共通ルーチンの処理Dを
実行した後ステップS8の処理Cに移行する。同様に飛
び先指標bにプロセッサの処理が移行すると、ステップ
S2,S3における2つのDINC命令によってカウン
タ21の内容は“2”となっており、このカウンタ21
の内容“2”に応じてプロセッサ処理は共通ルーチンの
処理DからステップS6の処理Bに移行する。同様にプ
ロセッサ処理が飛び先指標aに移行すると、ステップS
,,S2,S3の3回のDINC命令によってカウンタ
21の内容は“3”となり、NOレジスタ28には“3
”がラッチされ、この内容“3”に応じてプロセッサは
共通ルーチンの処理DからのステップS7の処理Aを実
行する。なお、これらの処理A,B,C,Dを実行した
後、プロセッサはステップS9の共通ルーチンを実行し
てメタィンプログラムに復帰する。上記第4図のプログ
ラムでは、分岐条件コードを1つ1つセットする必要が
なく、DmC命令を連続して入れることにより自動的に
分岐条件コードを発生べき、しかもこの本発明毎に共通
ルーチ0ンへの分岐命令が不要となるので、大幅なプロ
グラムのワード数の節減が可能となる。
以上説明したように本発明によれば、共通ルーチンに必
要な異なるデータを所定の命令を連続してプログラムす
ることにより自働的に発生させる手段と、異なる共通ル
ーチン間での異なる処理を実行させるための分岐条件コ
ードを所定の命令を連続してプログラムすることにより
自動的に生成させる手段とを設けることによって、連続
したプログラムの任意の個所からスタートして自動的に
生成されたデータあるいは分岐条件コードに従って自動
的にプロセッサの処理を共通ルーチンあるいは異なる処
理へ移行し得るようにしているので、データ毎にあるい
は分岐条件コード設定毎に分岐命令を入れる必要がなく
プログラムのワ−ド数(ステップ数)を大幅に減少し得
、プロセッサの効率を向上できる分岐制御回路を提供で
きる。
【図面の簡単な説明】
第1図は本発明の一実施例に係る分岐制御回路図、第2
図は第1図の回路における命令と同期信号の関係を示す
タイムチャート、第3図および第4図はそれぞれ本回路
の具体的なプログラムのフローチャートである。 11a,11b・・・・・・入力端子、12…・・・ゲ
ート制御回路、16・・・・・・フリップフロップ、1
7・・・・・・カウンタ制御回路、21・・・…カゥン
タ、22・・.・・・セレク夕、23・・・・・・デー
タバス、24・・・・・・ゲート回路、28・・・・・
・Nレジスタ、29・・・・・・分岐制御回路。 第1図 第2図 第3図 第4図

Claims (1)

    【特許請求の範囲】
  1. 1 マイクロコンピユータに内蔵され、分岐命令に基づ
    いて所定の処理ルーチンへプログラムの処理を分岐させ
    る分岐制御回路において、共通ルーチンに必要な異なる
    データを所定の第1の命令を連続してプログラムするこ
    とにより自動的に生成する手段と、異なる共通ルーチン
    間での異なる処理を実行させるための分岐条件コードを
    所定の第2の命令を連続してプログラムすることにより
    自動的に生成する手段とを具備し、上記連続したプログ
    ラムの任意の命令個所からスタートして前記生成手段に
    より生成されたデータあるいは分岐条件コードに従つて
    自動的に前記マイクロプロセツサの処理を共通ルーチン
    あるいは異なる処理へ分岐させるようにし、前記データ
    毎あるいは分岐条件コード設定毎に分岐命令をプログラ
    ム中に入れることを不要としたことを特徴とする分岐制
    御回路。
JP55112070A 1980-08-14 1980-08-14 分岐制御回路 Expired JPS6032207B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55112070A JPS6032207B2 (ja) 1980-08-14 1980-08-14 分岐制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55112070A JPS6032207B2 (ja) 1980-08-14 1980-08-14 分岐制御回路

Publications (2)

Publication Number Publication Date
JPS5736348A JPS5736348A (en) 1982-02-27
JPS6032207B2 true JPS6032207B2 (ja) 1985-07-26

Family

ID=14577305

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55112070A Expired JPS6032207B2 (ja) 1980-08-14 1980-08-14 分岐制御回路

Country Status (1)

Country Link
JP (1) JPS6032207B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6041767B2 (ja) * 1978-06-15 1985-09-18 松下電器産業株式会社 命令実行方式
JPS553043A (en) * 1978-06-20 1980-01-10 Matsushita Electric Ind Co Ltd Microcomputer control circuit

Also Published As

Publication number Publication date
JPS5736348A (en) 1982-02-27

Similar Documents

Publication Publication Date Title
EP0045634B1 (en) Programmable digital data processing apparatus arranged for the execution of instructions in overlap
EP0149213A2 (en) Vector processor
US4833640A (en) Register bank change including register to register transfer in a data processing system
US5185880A (en) Stored instructions executing type timing signal generating system
EP0240606A2 (en) Pipe-line processing system and microprocessor using the system
EP0164418B1 (en) Microprogram control system
JPS6032207B2 (ja) 分岐制御回路
JPS62145435A (ja) コンカレント処理命令を有するマイクロプロセツサ
JPS5896345A (ja) 階層型演算方式
US5170339A (en) Control system for programmable control device
JPS6242301B2 (ja)
JPS63141131A (ja) パイプライン制御方式
JPS6116334A (ja) デ−タ処理装置
JPH0531193B2 (ja)
JPS5854404B2 (ja) シ−ケンス制御装置
JP2747353B2 (ja) アドレス発生装置
JPS6297031A (ja) 仮数部のビツト数整合方式
JPS6318222B2 (ja)
JPH0557615B2 (ja)
JPH06100965B2 (ja) マイクロプログラム制御装置
JPS59105110A (ja) プログラマブルコントロ−ラ
JPH0194437A (ja) 情報処理装置
JPS6186806A (ja) デジタル制御演算方式
JPH05334098A (ja) 割込み制御方法及び割込み制御装置
JPH08328879A (ja) タスク管理方式