JPH0323938B2 - - Google Patents
Info
- Publication number
- JPH0323938B2 JPH0323938B2 JP56099204A JP9920481A JPH0323938B2 JP H0323938 B2 JPH0323938 B2 JP H0323938B2 JP 56099204 A JP56099204 A JP 56099204A JP 9920481 A JP9920481 A JP 9920481A JP H0323938 B2 JPH0323938 B2 JP H0323938B2
- Authority
- JP
- Japan
- Prior art keywords
- branch
- instruction
- address
- memory block
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
- G06F9/323—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for indirect 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
本発明は、追加されたオプシヨンプログラムに
対する分岐アドレスを処理プログラムを要するこ
となく動的に生成する分岐アドレス生成方式に関
する。 I/O制御関係、言語関係等のプログラムはオ
プシヨンとすることが多く、かゝるオプシヨンプ
ログラムを基本プログラムに結合するには、基本
プログラムの該オプシヨンプログラムの分岐部分
の次の命令はプログラム例外としておき、該分岐
部分の命令が読出されたとき、オプシヨンプログ
ラムが追加されているなら、次は該オプシヨンプ
ログラムの先頭領域を指示する様にアドレスを変
更する。この変更処理を従来は、リンケージ等と
呼ばれる処理プログラムを用意してこれにより行
なうため、オプシヨンプログラム追加の操作が煩
雑になる欠点があつた。 本発明は、オプシヨンプログラムに対する分岐
アドレスを処理プログラムを要することなく簡易
に生成しようとするものである。本発明は基本プ
ログラムを格納した主メモリブロツクを備え、そ
してオプシヨンプログラムを格納した副メモリブ
ロツクを必要に応じて追加される電算機システム
での基本プログラムにおける分岐アドレス生成方
式において、主メモリブロツクに格納された基本
プログラムからオプシヨンプログラムへの分岐命
令の分岐先アドレスは主メモリブロツク内の所定
位置とし、且つ該所定位置には予め定められた所
定の命令を格納しておき、該分岐命令の実行に際
しては、該分岐命令のデコード結果と上記副メモ
リブロツク各々の実装状態を示す信号とのアンド
条件を調べ、該アンド条件が不成立の場合には前
記所定の命令を実行し、該アンド条件が成立の場
合にはその実装情報を取り入れて前記分岐命令の
有する前記分岐先アドレス部を、当該分岐命令が
示す副メモリブロツクをアクセスするように修飾
された形態とすることを特徴とするが、以下図示
の実施例を参照しながらこれを詳細に説明する。 第1図は本発明の一実施例を示す説明図であ
る。MEMは各種プログラムを格納するメモリ
で、複数のブロツクBL0,BL1……からなる。こ
れら複数のメモリブロツクBL0,BL1……はそれ
ぞれが異なるプリント基板上に形成され、少なく
とも基本プログラムを格納した主メモリブロツク
BL0が実装されていれば情報処理装置としての一
般的は機能は果される。これに対し、BL1,
BL2,……は例えばフオートランのコンパイラ
等、基本プログラムと結合して使用されるオプシ
ヨンプログラムを格納した副メモリブロツクで、
必要に応じて実装される。主メモリブロツクBL0
の基本プログラムでは、副メモリブロツクBL1が
未実装である場合、領域AR1から読出した命令
(この命令の次はBL1のプログラムへ移る)のネ
クストアドレス部は同じ主メモリブロツクBL0内
の他の領域AR2を指示する。この領域AR2は「プ
ログラム例外」を格納しており、こゝで基本プロ
グラムの実行は中断してオペレータ等による然る
べき処理待ちとなる。 これに対し、副メモリブロツクBL1が実装され
たときには、主メモリブロツクBL0の領域AR1か
ら読み出した命令のネクストドレス部が副メモリ
ブロツクBL1のオプシヨンプログラムの先頭領域
AR3を指示するように修飾することができれば、
リンケージ等の処理プログラムを要することなく
該オプシヨンプログラムは基本プログラムのAR1
領域の命令に続いて自動的に実行されることにな
る。本例ではこの分岐アドレス生成(修飾)をア
ドレス生成回路CONVで簡易に行なおうとする
ものである。第1図でメモリMEMのいずれかの
ブロツクから読出された命令は命令レジスタ
REG1に取り出され、そのうちのアドレスはアド
レス生成回路CONV、生成アドレスレジスタ
REG2、命令アドレスレジスタREG3を通して再
びメモリMEMのアクセスに用いられる。該アド
レスがオプシヨンプログラムへの分岐アドレスで
ないときはアドレス生成回路CONVを素通りす
る。これに対し該分岐アドレスであるときは副メ
モリブロツクBL1,BL2,……の実装情報C1,
C2,……に応じて修飾される。メモリMEMから
取り出したアドレスがオプシヨンプログラムへの
分岐アドレスであるか否かおよびどのオプシヨン
プログラムへの分岐アドレスであるかは命令レジ
スタREG1内のオペレーシヨンコードOPを命令
デコード回路DECでデコードして見れば分かる。
そして、該分岐アドレスであることが分つたとき
は、当該副メモリブロツクへジヤンプのためのア
ドレス修飾を行なう。この目的で命令のアドレス
部にはオプシヨンプログラムのためのアドレス部
optを設ける。領域AR1から取出した命令のopt部
は例えば0としておき、このアドレスopt=0が
オプシヨンプログラム実装有りにより変更される
ようにする。 第2図はアドレス生成回路CONVの具体例で
ある。命令レジスタREG1はオペレーシヨンコー
ドOPが書込まれる部分とネクストアドレスが書
込まれる部分との間に1〜数ビツトの余剰ビツト
を有し、実際にメモリMEMから読み出した命令
の前記アドレスoptを格納する。本例ではネクス
トアドレスは4ビツトb0〜b3、追加される副メモ
リブロツク数を3として、3ビツトのアドレスビ
ツト(opt)b4〜b6を用意する。この付加ビツト
b4〜b6はオアゲートOR1〜OR3を通して生成アド
レスレジスタREG2に入力する様にする。これに
対し本来のネクストアドレスb0〜b3はスルーでレ
ジスタREG2に入力する様にする。オアゲート
OR1〜OR3の他方の入力はアンドゲートAND1〜
AND3の出力である。このアンドゲートAND1〜
AND3はオペレーシヨンコードOPが、オプシヨ
ンプログラム分岐命令でないとき(即ち一般命令
や基本プログラム内への分岐命令のときはデコー
ド回路DECによつて全て閉じているので、レジ
スタREG2への入力b4〜b6はオール〓0”である。
つまり、レジスタREG1内のアドレスが分岐アド
レスでないとき該アドレスは、このアドレス生成
回路CONVにおいて何ら修飾されない。 これに対し、オペレーシヨンコードOPがオプ
シヨンプログラムの分岐命令であるとデコード回
路DECはそれがどのオプシヨンプログラムに関
するものかを解読し、アンドゲートAND1〜
AND3のいずれか1つだけを開とする。アンドゲ
ートAND1〜AND3の他方の入力には異なるオプ
シヨンプログラムを格納した副メモリブロツク
BL1〜BL3の実装情報C1〜C3が導びかれる。この
実装情報C1〜C3は副メモリブロツクBL1〜BL3を
実装したときにプリント基板とコネクタの結合状
態で発生される信号、或いはプリント基板に予め
設けられた識別信号発生部からの信号(プリント
板を挿込むことによりこの信号が送出される)で
あり、例えば未実装時には〓0”、実装時に〓1”
となる様に定めておく。この様にすれば副メモリ
ブロツクBL1が実装されるとC1=1となるので、
レジスタREG内にオプシヨンプログラム1に対
する分岐命令が取り込まれたときはアンドゲート
AND1が開となつて付加ビツトb4〜b6のうちb4が
〓1”になる。同様にして副メモリブロツクBL2
が実装されている場合にはC2=1となるので、
レジスタREG1にオプシヨンプログラム2に対す
る分岐命令が取り込まれた時はアンドゲート
AND2が開となつてb5=1となる。下表はこのア
ドレス生成回路CONVによる分岐アドレスの修
飾状態を示すものである。
対する分岐アドレスを処理プログラムを要するこ
となく動的に生成する分岐アドレス生成方式に関
する。 I/O制御関係、言語関係等のプログラムはオ
プシヨンとすることが多く、かゝるオプシヨンプ
ログラムを基本プログラムに結合するには、基本
プログラムの該オプシヨンプログラムの分岐部分
の次の命令はプログラム例外としておき、該分岐
部分の命令が読出されたとき、オプシヨンプログ
ラムが追加されているなら、次は該オプシヨンプ
ログラムの先頭領域を指示する様にアドレスを変
更する。この変更処理を従来は、リンケージ等と
呼ばれる処理プログラムを用意してこれにより行
なうため、オプシヨンプログラム追加の操作が煩
雑になる欠点があつた。 本発明は、オプシヨンプログラムに対する分岐
アドレスを処理プログラムを要することなく簡易
に生成しようとするものである。本発明は基本プ
ログラムを格納した主メモリブロツクを備え、そ
してオプシヨンプログラムを格納した副メモリブ
ロツクを必要に応じて追加される電算機システム
での基本プログラムにおける分岐アドレス生成方
式において、主メモリブロツクに格納された基本
プログラムからオプシヨンプログラムへの分岐命
令の分岐先アドレスは主メモリブロツク内の所定
位置とし、且つ該所定位置には予め定められた所
定の命令を格納しておき、該分岐命令の実行に際
しては、該分岐命令のデコード結果と上記副メモ
リブロツク各々の実装状態を示す信号とのアンド
条件を調べ、該アンド条件が不成立の場合には前
記所定の命令を実行し、該アンド条件が成立の場
合にはその実装情報を取り入れて前記分岐命令の
有する前記分岐先アドレス部を、当該分岐命令が
示す副メモリブロツクをアクセスするように修飾
された形態とすることを特徴とするが、以下図示
の実施例を参照しながらこれを詳細に説明する。 第1図は本発明の一実施例を示す説明図であ
る。MEMは各種プログラムを格納するメモリ
で、複数のブロツクBL0,BL1……からなる。こ
れら複数のメモリブロツクBL0,BL1……はそれ
ぞれが異なるプリント基板上に形成され、少なく
とも基本プログラムを格納した主メモリブロツク
BL0が実装されていれば情報処理装置としての一
般的は機能は果される。これに対し、BL1,
BL2,……は例えばフオートランのコンパイラ
等、基本プログラムと結合して使用されるオプシ
ヨンプログラムを格納した副メモリブロツクで、
必要に応じて実装される。主メモリブロツクBL0
の基本プログラムでは、副メモリブロツクBL1が
未実装である場合、領域AR1から読出した命令
(この命令の次はBL1のプログラムへ移る)のネ
クストアドレス部は同じ主メモリブロツクBL0内
の他の領域AR2を指示する。この領域AR2は「プ
ログラム例外」を格納しており、こゝで基本プロ
グラムの実行は中断してオペレータ等による然る
べき処理待ちとなる。 これに対し、副メモリブロツクBL1が実装され
たときには、主メモリブロツクBL0の領域AR1か
ら読み出した命令のネクストドレス部が副メモリ
ブロツクBL1のオプシヨンプログラムの先頭領域
AR3を指示するように修飾することができれば、
リンケージ等の処理プログラムを要することなく
該オプシヨンプログラムは基本プログラムのAR1
領域の命令に続いて自動的に実行されることにな
る。本例ではこの分岐アドレス生成(修飾)をア
ドレス生成回路CONVで簡易に行なおうとする
ものである。第1図でメモリMEMのいずれかの
ブロツクから読出された命令は命令レジスタ
REG1に取り出され、そのうちのアドレスはアド
レス生成回路CONV、生成アドレスレジスタ
REG2、命令アドレスレジスタREG3を通して再
びメモリMEMのアクセスに用いられる。該アド
レスがオプシヨンプログラムへの分岐アドレスで
ないときはアドレス生成回路CONVを素通りす
る。これに対し該分岐アドレスであるときは副メ
モリブロツクBL1,BL2,……の実装情報C1,
C2,……に応じて修飾される。メモリMEMから
取り出したアドレスがオプシヨンプログラムへの
分岐アドレスであるか否かおよびどのオプシヨン
プログラムへの分岐アドレスであるかは命令レジ
スタREG1内のオペレーシヨンコードOPを命令
デコード回路DECでデコードして見れば分かる。
そして、該分岐アドレスであることが分つたとき
は、当該副メモリブロツクへジヤンプのためのア
ドレス修飾を行なう。この目的で命令のアドレス
部にはオプシヨンプログラムのためのアドレス部
optを設ける。領域AR1から取出した命令のopt部
は例えば0としておき、このアドレスopt=0が
オプシヨンプログラム実装有りにより変更される
ようにする。 第2図はアドレス生成回路CONVの具体例で
ある。命令レジスタREG1はオペレーシヨンコー
ドOPが書込まれる部分とネクストアドレスが書
込まれる部分との間に1〜数ビツトの余剰ビツト
を有し、実際にメモリMEMから読み出した命令
の前記アドレスoptを格納する。本例ではネクス
トアドレスは4ビツトb0〜b3、追加される副メモ
リブロツク数を3として、3ビツトのアドレスビ
ツト(opt)b4〜b6を用意する。この付加ビツト
b4〜b6はオアゲートOR1〜OR3を通して生成アド
レスレジスタREG2に入力する様にする。これに
対し本来のネクストアドレスb0〜b3はスルーでレ
ジスタREG2に入力する様にする。オアゲート
OR1〜OR3の他方の入力はアンドゲートAND1〜
AND3の出力である。このアンドゲートAND1〜
AND3はオペレーシヨンコードOPが、オプシヨ
ンプログラム分岐命令でないとき(即ち一般命令
や基本プログラム内への分岐命令のときはデコー
ド回路DECによつて全て閉じているので、レジ
スタREG2への入力b4〜b6はオール〓0”である。
つまり、レジスタREG1内のアドレスが分岐アド
レスでないとき該アドレスは、このアドレス生成
回路CONVにおいて何ら修飾されない。 これに対し、オペレーシヨンコードOPがオプ
シヨンプログラムの分岐命令であるとデコード回
路DECはそれがどのオプシヨンプログラムに関
するものかを解読し、アンドゲートAND1〜
AND3のいずれか1つだけを開とする。アンドゲ
ートAND1〜AND3の他方の入力には異なるオプ
シヨンプログラムを格納した副メモリブロツク
BL1〜BL3の実装情報C1〜C3が導びかれる。この
実装情報C1〜C3は副メモリブロツクBL1〜BL3を
実装したときにプリント基板とコネクタの結合状
態で発生される信号、或いはプリント基板に予め
設けられた識別信号発生部からの信号(プリント
板を挿込むことによりこの信号が送出される)で
あり、例えば未実装時には〓0”、実装時に〓1”
となる様に定めておく。この様にすれば副メモリ
ブロツクBL1が実装されるとC1=1となるので、
レジスタREG内にオプシヨンプログラム1に対
する分岐命令が取り込まれたときはアンドゲート
AND1が開となつて付加ビツトb4〜b6のうちb4が
〓1”になる。同様にして副メモリブロツクBL2
が実装されている場合にはC2=1となるので、
レジスタREG1にオプシヨンプログラム2に対す
る分岐命令が取り込まれた時はアンドゲート
AND2が開となつてb5=1となる。下表はこのア
ドレス生成回路CONVによる分岐アドレスの修
飾状態を示すものである。
【表】
Claims (1)
- 【特許請求の範囲】 1 基本プログラムを格納した主メモリブロツク
を備え、そしてオプシヨンプログラムを格納した
副メモリブロツクを必要に応じて追加される電算
機システムでの基本プログラムにおける分岐アド
レス生成方式において、 主メモリブロツクに格納された基本プログラム
からオプシヨンプログラムへの分岐命令の分岐先
アドレスは主メモリブロツク内の所定位置とし、
且つ該所定位置には予め定められた所定の命令を
格納しておき、該分岐命令の実行に際しては、該
分岐命令のデコード結果と上記副メモリブロツク
各々の実装状態を示す信号とのアンド条件を調
べ、該アンド条件が不成立の場合には前記所定の
命令を実行し、該アンド条件が成立の場合にはそ
の実装情報を取り入れて前記分岐命令の有する前
記分岐先アドレス部を、当該分岐命令が示す副メ
モリブロツクをアクセスするように修飾された形
態とすることを特徴とする分岐アドレス生成方
式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56099204A JPS581245A (ja) | 1981-06-26 | 1981-06-26 | 分岐アドレス生成方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56099204A JPS581245A (ja) | 1981-06-26 | 1981-06-26 | 分岐アドレス生成方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS581245A JPS581245A (ja) | 1983-01-06 |
| JPH0323938B2 true JPH0323938B2 (ja) | 1991-04-02 |
Family
ID=14241114
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP56099204A Granted JPS581245A (ja) | 1981-06-26 | 1981-06-26 | 分岐アドレス生成方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS581245A (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19923517C1 (de) * | 1999-05-21 | 2000-06-15 | Siemens Ag | Verfahren und Vorrichtung zum Verzweigen bei der Abarbeitung eines Programms durch einen Prozessor |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6020769B2 (ja) * | 1976-05-11 | 1985-05-23 | 三洋電機株式会社 | マイクロプログラム制御方式 |
| JPS5330843A (en) * | 1976-09-03 | 1978-03-23 | Hitachi Ltd | Execution address control unit |
| JPS5468133A (en) * | 1977-11-11 | 1979-06-01 | Hitachi Ltd | Address self restoration unit of computer system |
| JPS5583945A (en) * | 1978-12-19 | 1980-06-24 | Ricoh Co Ltd | Abnormal action preventing system for unit controlled by microcomputer |
-
1981
- 1981-06-26 JP JP56099204A patent/JPS581245A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS581245A (ja) | 1983-01-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0213843A2 (en) | Digital processor control | |
| KR860007589A (ko) | 데이터 처리장치 | |
| JPH0248931B2 (ja) | ||
| KR920004279B1 (ko) | 포인터레지스터를 구비한 마이크로프로세서 | |
| JPH08339298A (ja) | マイクロプロセッサにおける命令追加方法及びそれを用いたマイクロプロセッサ | |
| JPH0323938B2 (ja) | ||
| JPS5826584B2 (ja) | デ−タ処理装置 | |
| KR940007675A (ko) | 데이타프로세서 및 이것을 사용하는 디버그장치 | |
| JPH0831033B2 (ja) | データ処理装置 | |
| JPS622332B2 (ja) | ||
| JPS6286442A (ja) | デ−タ処理装置 | |
| KR960029969A (ko) | 파이프라인 처리기능을 갖는 데이타프로세서 | |
| JPS6020769B2 (ja) | マイクロプログラム制御方式 | |
| JPH05274341A (ja) | ベクトル命令処理装置 | |
| JP3428253B2 (ja) | シーケンサ | |
| JPH07191879A (ja) | デバッグ用命令の実行機能を有するマイクロプロセッサおよびデバッグ方法 | |
| JPS63265332A (ja) | プログラムジヤンプ方式 | |
| JPH0319570B2 (ja) | ||
| JPH0795288B2 (ja) | マイクロコンピュータ | |
| JPS595931B2 (ja) | 演算処理システムのアドレス停止方式 | |
| JPS6149695B2 (ja) | ||
| JPH02110636A (ja) | タグ・アーキテクチャマシンのデバッグ装置とそのコンパイラ | |
| JPS6031646A (ja) | デ−タ処理装置 | |
| JPH03164945A (ja) | データ処理装置 | |
| JPS61217833A (ja) | 演算処理装置 |