JPS581245A - Branch address producing method - Google Patents

Branch address producing method

Info

Publication number
JPS581245A
JPS581245A JP9920481A JP9920481A JPS581245A JP S581245 A JPS581245 A JP S581245A JP 9920481 A JP9920481 A JP 9920481A JP 9920481 A JP9920481 A JP 9920481A JP S581245 A JPS581245 A JP S581245A
Authority
JP
Japan
Prior art keywords
address
program
instruction
branch
memory
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.)
Granted
Application number
JP9920481A
Other languages
Japanese (ja)
Other versions
JPH0323938B2 (en
Inventor
Takao Kobayashi
隆夫 小林
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP9920481A priority Critical patent/JPS581245A/en
Publication of JPS581245A publication Critical patent/JPS581245A/en
Publication of JPH0323938B2 publication Critical patent/JPH0323938B2/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/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)

Abstract

PURPOSE:To branch to an optional program easy, by constituting a sub-memory block to a form modified accessibly at an address section of the instruction of a branch section fetching the loading information when the sub-memory block is loaded. CONSTITUTION:A memory MEM stores various programs and consists of blocks BL0, BL1... and each block is formed on a different printed board. An instruction read out from any block of the memory MEM is fetched to an instruction register REG1, and its address is used for the address of the memory MEM again through an address producing circuit CONV, a produced address register REG2, and an instruction address register REG3. When this address is not branched to the optional program, it passes through the circuit CONV. When this address is the branched address, the address is modified with loading information C1, C2... of blocks BL1, BL2....

Description

【発明の詳細な説明】 本発明は、追加されたオプションプログラムに対する分
岐アドレスを処理プログラムを要することなく動的に生
成する分岐アドレス生成方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a branch address generation method that dynamically generates a branch address for an added option program without requiring a processing program.

I10制御関係、言語関係等のプログラムはオプション
とすることが多く、か\るオプションプログラムを基本
プログラムに結合するには、基本プログラムの該オプシ
ョンプログラムの分岐部分の次の命令はプ勧りラ五例外
としでおき、該分岐部分の命令が読出されたと−、オプ
ションプログラムが追加されているなら、次は該オプシ
ョンプログラムの先頭領域を指示する様にアドレスヲ賓
更する。この変更処理を従来は、リンケージ等と呼ばれ
る処理プログラムを用意してこれKより行なうため、オ
プションプログラム追加の操作が煩雑になる欠点があっ
た。
I10 Control-related programs, language-related programs, etc. are often made optional, and in order to combine such optional programs with the basic program, it is recommended that the next instruction of the branch part of the optional program in the basic program be As an exception, if the instruction in the branch part is read and an optional program has been added, the address is then changed to point to the top area of the optional program. Conventionally, this changing process has been performed by preparing a processing program called linkage or the like, which has the disadvantage that adding an optional program becomes complicated.

本発明は、オプションプログラムに対する分岐アドレス
を処理プログラムを要することなく簡易に生成しようと
するものでちる。本発明は基本プログラムを格納した主
メモリブロックを備えそし□てオプションプログラムを
格納した副メモリブロックを必要に応じて追加されるメ
モリを備え得る電算機システムでの基本プログラムにお
ける分岐アドレス生成方式において、基本プログラムか
らオプションプログラムへの分岐命令の分岐先は、対応
する副メモリプロ、りが未実装のものは主メモリープロ
、り内の所定位置とし、該副メモリプロ、りが実装され
た状態である場合は、その実装情報を取り入れて前記分
岐部の命令のアドレス部を、皺副メモリブロックをアク
セス可能に修飾された形態とすることを特徴とするが、
以下図示の実施例を参照しながらこれを詳細に説明する
The present invention aims to easily generate a branch address for an option program without requiring a processing program. The present invention provides a branch address generation method for a basic program in a computer system that is equipped with a main memory block storing a basic program, a sub memory block storing an optional program, and additional memory as necessary. The branch destination of a branch instruction from a basic program to an optional program is a specified location in the main memory program if the corresponding sub-memory program is not implemented. In some cases, the implementation information is incorporated to make the address part of the instruction of the branch part modified so that the wrinkled submemory block can be accessed.
This will be explained in detail below with reference to the illustrated embodiments.

第1図は本発明の一実施例を示す説明図である。FIG. 1 is an explanatory diagram showing one embodiment of the present invention.

MgMは各種プログラムを格納するメモリで、複数のプ
ロ、りBL・e B Ll m・・−・・・・・からな
る。これら複数のメモリブロックBL・* B IJI
 +・・・・・・ はそれぞれが異なるプリント基板上
に形成され、少なくとも基本プログラムを格納した主メ
モリブロックBL@が実装されていれば情報処理装置と
しての一般的な機能は果される。これに対し、BLI、
BI、、、・・・・・・は例えばフォートランのコンパ
イラ等、基本プログラムと結合して使用されるオプショ
ンプログラムを格納した副メモリブロックで、必要に応
じて実装される。主メモリプロ、りBI4の基本プログ
ラムでは、副メ屯リブ−2りBL、が未実装である場合
、領域AR,から読出した命令(この命令の次はBLI
のプログラムへ移る)のネクストアドレス部は同じ主メ
モリプロ、りBLe内の他の領域AR。
MgM is a memory that stores various programs, and consists of a plurality of programs. These multiple memory blocks BL・*B IJI
+ . On the other hand, BLI,
BI, . . . are sub-memory blocks that store optional programs used in combination with the basic program, such as a Fortran compiler, and are implemented as necessary. In the main memory pro-BI4 basic program, if the secondary memory pro-2 BL is not implemented, the instruction read from area AR (the next instruction is BLI).
The next address part of the program (moving to the next program) is another area AR in the same main memory processor or BLe.

を指示する。この領域AR翼は「プログラム例外」を格
納しており、こ\で基本プログラムの実行は中断してオ
ペレータ等による然るべき処理待ちとなる。
instruct. This area AR wing stores a "program exception", at which the execution of the basic program is interrupted and waits for appropriate processing by an operator or the like.

これに対し、副メモリプロ、りBL、が実装されたとき
には、主メモリプロ、りBI4の領域AR,から読み出
した命令のネクストアドレス部が副メモリブロックBL
、のオプションプログラムの先頭領域ARst指示する
ように修飾することができれば、リンケージ等の処理プ
ログラムを要することなく紋オプシ、ンプログラムは基
本プログラムのAR。
On the other hand, when the secondary memory block BL is implemented, the next address part of the instruction read from the area AR of the main memory block BI4 is the sub memory block BL.
If it is possible to modify the start area ARst of the option program of , without the need for a processing program such as linkage, the option program can be modified to indicate the AR of the basic program.

領域の命令に続いて自動的に実行されることになる。本
例ではこの分岐アドレス生成(修飾)′fIニアドレス
生成回路C0NVで簡易に行なおうとするものである。
It will be automatically executed following the area instruction. In this example, this branch address generation (modification) is attempted to be easily performed using the 'fI near address generation circuit C0NV.

第1図でメモIJ MgMのいずれかのプロ、りから読
出された命令は命令レジスタREGIに取り出され、そ
のうちのアドレスはアドレス生成回路C0NV、生成ア
ドレスレジスタRIG、、命令アドレスレジスタREG
、を通して再びメモリMEMのアクセスに用いられる。
In Fig. 1, an instruction read from any of the memory IJ MgM processors is taken out to the instruction register REGI, and the addresses of these are address generation circuit C0NV, generation address register RIG, instruction address register REG.
, is used again to access the memory MEM.

該アドレスがオプションプログラムへの分岐アドレスで
ないときはアドレス生成回路C0NVi素通シする。こ
れに対し鋏分岐アドレスであるときは副メモリプロ。
If the address is not a branch address to the option program, address generation circuit C0NVi is passed through. On the other hand, when it is a scissors branch address, it is a secondary memory processor.

りB Ll e B Lm e−一の実装情報C1e 
C1e・・−・−に応じて修飾される。メモリMKMか
ら取り出し友アドレスがオプションプログラムへの分岐
アドレスであるか否かおよびどのオプションプログラム
への分岐アドレスであるかは命令レジスタREG、内の
オペレージ、ンコー)’OPt命令デコード回路DEC
でデコードして見れば分かる。そして、該分岐アドレス
であることが分ったときは、当該側メモリブロックへジ
ャンプの九めのアドレス修飾を行なう。この目的で命令
のアドレス部にはオプションプログラムのためのアドレ
ス部opt f設ける。領斌ムR1から取出し友命令の
aptllltf例えば0としておき、このアドレス*
pt=Oがオプシ。
Implementation information for B Ll e B Lm e-1 C1e
Modified according to C1e...-. Whether the address taken out from memory MKM is a branch address to an option program and which option program it is is determined by the operation code in the instruction register REG.'OPt instruction decode circuit DEC.
You can see it by decoding it. When it is determined that the branch address is the branch address, the ninth address modification for jumping to the memory block on the corresponding side is performed. For this purpose, an address section optf for an option program is provided in the address section of the instruction. For example, set the aptlllltf of the friend command to be fetched from the domain R1 to 0, and use this address *
pt=O is optional.

ンプログラム実装有抄により変更されるようにする。Changes may be made depending on the implementation of the program.

第2図はアドレス生成回路C0NVの具体例である。命
令レジスタREGIはオペレージ、ンコードOPが書込
まれる部分とネタストアドレスが書込まれる部分との間
に1〜数ビツトの余剰ビットを有し、実際にメモリMi
l:Mから読み出し友命令の前記アドレス部tを格納す
る。本例ではネタストアドレスは4ビy)b・〜b3、
追加される關メモリプロ、り数を5として、5ビツトの
アドレスビット(・pt)ba〜b@t’用意する。こ
の付加ビットb4〜b−はオアゲートOR,〜OR,’
i通して生成アドレスレジスタREGmK入力する様に
する。これに対し本来のネクストアドレスb・〜bsは
スルーでVジスタRKGmeC入力する様にする。オア
ゲートORI〜OR,の他方の入力はアントゲ−トムN
D、〜ムND、の出力である。このアンドゲートAND
1〜AND3はオペレージ、ンコードOPが分岐命令で
ないときはデコード回路DECKよりて全て閉じている
ので、レジスタRBG、への入力b4〜b−はオール@
0“である。つまり、レジスタRIG、内のアドレスが
分岐アドレスでないとき該アドレスは、このアドレス生
成回路C0NVにおいて何ら修飾されない。
FIG. 2 shows a specific example of the address generation circuit C0NV. The instruction register REGI has one to several extra bits between the part where the operation/encode OP is written and the part where the netast address is written, and the memory Mi
l: Stores the address part t of the read friend instruction from M. In this example, the netast address is 4bit y) b・~b3,
Assuming that the number of memory processors to be added is 5, 5 address bits (pt) ba to b@t' are prepared. These additional bits b4 to b- are OR gates OR, ~OR,'
The generated address register REGmK is input through i. On the other hand, the original next address b.about.bs is input through the V register RKGmeC. The other input of the OR gate ORI~OR is the antgame N
This is the output of D, ~ ND. This and gate AND
1 to AND3 are all closed by the decode circuit DECK when the operation code OP is not a branch instruction, so the inputs b4 to b- to the register RBG are all @
0". In other words, when the address in register RIG is not a branch address, the address is not modified in any way by this address generation circuit C0NV.

これに対し、オペレージ、ンコードOPが分岐命令であ
るとデコード回路DECはそれがどのオプションプログ
ラムに関するものかを解読し、アントゲ−)ANDs〜
ANDIのいずれか1つだけt開とする。アントゲ−ト
ムNDI〜ANDIの他方の入力には異なるオプシ、l
/プログラムを格納し九副メモリブロックRLI〜BL
Iの実装情報C1〜CIが導びかれる。この実装情報C
1〜Csは副メモリプロ、りBLI〜BLst実装し九
ときにプリント基板とコネクタの結合状態で発生される
信号、或いはプリント基板に予め設けられた識別信号発
生部からの信号(プリント板を挿込むことによシこの信
号が送出される)であシ、例えば未実装時には“0”、
実装時に@1′となる様に定めておく。この様にすれば
副メモリプロ、りBL、が実装されるとCI=1となる
ので、レジスタREG、内にオプションプログラム1に
対する分岐命令が取り込まれたときはアンドゲートAN
DIが開となって付加ビットb4〜b6のうちb4が“
1″になる。同様にして副メモリブロックBL、が実装
されている場合には0s−1となるので、レジスタRI
G、にオプションプログラム2に対する分岐命令が取り
込まれた時はアントゲ−)AND、が開となってす、=
1となる。下表はこのアドレス生成回路C0NVによる
分岐アドレスの修飾状態を示すものである。
On the other hand, if the operation, code OP is a branch instruction, the decoding circuit DEC decodes which option program it relates to, and
Only one of ANDI is left open. The other input of Antogame NDI to ANDI has different options, l
/Nine secondary memory blocks RLI to BL for storing programs
Implementation information C1 to CI of I is derived. This implementation information C
1 to Cs are sub-memory processors, and signals generated when the printed circuit board and connector are connected when BLI to BLst are mounted, or signals from the identification signal generator provided in advance on the printed circuit board (when the printed circuit board is inserted). (This signal is sent by inserting the
Set it to be @1' during implementation. In this way, when the sub-memory program, BL, is implemented, CI=1, so when the branch instruction for option program 1 is taken into the register REG, the AND gate AN
DI is open and b4 of additional bits b4 to b6 becomes “
Similarly, if the secondary memory block BL is installed, it becomes 0s-1, so the register RI
When the branch instruction for option program 2 is taken into G, the Android ()AND is open.=
It becomes 1. The table below shows the modification state of branch addresses by this address generation circuit C0NV.

上表に示されるように基本プログラムは、アドレスの上
位3ビ、トは000に固定され下位4ビ、トを0000
から1111まで変えて主メモリプロ、りBLIIをア
クセスして得られる。これに対しオプションプログラム
1はアドレスの上位3ビ、トを001に固定し、下位4
ビ、トを0000〜1111内で変えて副メモリブロッ
クBL1fアクセスして得られ、多グシ、ンプログラム
2はアドレスの上位5ビ、トt−010にし、下位4ピ
ツ)t−0000へ1111内で変えて副メモリプロ、
りBL、全アクセスして得られ、上記表には示さないが
オプションプレグラム3などもこれに準する。
As shown in the table above, the basic program sets the upper 3 bits of the address to 000, and the lower 4 bits to 0000.
to 1111 and access the main memory program, BLII. On the other hand, option program 1 fixes the upper 3 bits of the address to 001 and the lower 4 bits.
It is obtained by accessing the sub memory block BL1f by changing the bits and bits within 0000 to 1111, and the multi-sign program 2 sets the upper 5 bits of the address to t-010, and the lower 4 bits) to t-0000 to 1111. Change it with Vice Memory Pro,
This is obtained by fully accessing the BL, and although not shown in the table above, option program 3 and the like also apply.

かかるアドレス生成回路C0NVi用いれば、第1図で
主メモリブロックBL・の例えば領域Actアクセスす
る分岐アドレスを、副メモリプロ、りBL、を実装し九
ときはそのオプシ、ンプ四グラムの先頭領域AR*tア
クセスする様に修飾することがでキ(他のオプションプ
ログラムについても同様)、オプションプログラムを基
本プログラムに結合する際に別途に処理プログラムを必
要と1.ない。
If such an address generation circuit C0NVi is used, the branch address to be accessed, for example, the area Act of the main memory block BL in FIG. *It is possible to modify the program so that it is accessed (the same applies to other optional programs), and a separate processing program is required when connecting the optional program to the basic program.1. do not have.

以上述べたように本発明によれば、オプシ、/プログ2
ムへの分岐アドレスを処理プログラムケ要することなく
簡易に生成できる利点がある。
As described above, according to the present invention, the option, /prog2
This has the advantage that a branch address to a system can be easily generated without requiring a processing program.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例を示す概略ブロック図、第2
図はアドレス生成回路の具体例を示す構成図である。 図中、BLoは主メモリプロ、り、BL鳳IBL!は副
メモリブロック、C0Nvはアドレス生成回路、CI 
+ CBは実装情報である。 出願人 富士通株式会社 代理人弁理士  青  柳     稔第1図 ¥EM 第2図
FIG. 1 is a schematic block diagram showing one embodiment of the present invention, and FIG.
The figure is a configuration diagram showing a specific example of an address generation circuit. In the figure, BLo is the main memory pro, BL Otori IBL! is the sub memory block, C0Nv is the address generation circuit, CI
+ CB is implementation information. Applicant Fujitsu Ltd. Representative Patent Attorney Minoru Aoyagi Figure 1¥EM Figure 2

Claims (1)

【特許請求の範囲】[Claims] 基本フログラムを格納した主メモリプロ、クラ備えそし
てオプションプログラムを格納しり副メモリブロックを
必要に応じて追加されるメモリを備え得る電算機システ
ムでの基本プログラムにおける分岐アドレス生成方式に
おいて、基本プログラムからオプションプログラムへの
分岐命令の分岐先は、対応する副メモリプロ、りが未実
装のものは主メモリーブロック内の所定位置とし、該副
メモリプロ、りが実装された状態である場合はその実装
情報t−皐す入れて前記分岐部の命令のアドレス部ヲ、
核副メモリプロ、りをアクセス可能ニ修飾され友形態と
することを特徴とする分岐アドレス生成方式。
In the branch address generation method in the basic program of a computer system, the main memory block that stores the basic program, the main memory block that stores the program, and the sub-memory block that stores the optional program can be added as needed. The branch destination of a branch instruction to a program is a specified location in the main memory block if the corresponding sub-memory program is not implemented, and if the sub-memory program is installed, its implementation information Insert the address part of the branch instruction,
A branch address generation method characterized in that a core sub-memory processor is made accessible and in a friend form.
JP9920481A 1981-06-26 1981-06-26 Branch address producing method Granted JPS581245A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9920481A JPS581245A (en) 1981-06-26 1981-06-26 Branch address producing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9920481A JPS581245A (en) 1981-06-26 1981-06-26 Branch address producing method

Publications (2)

Publication Number Publication Date
JPS581245A true JPS581245A (en) 1983-01-06
JPH0323938B2 JPH0323938B2 (en) 1991-04-02

Family

ID=14241114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9920481A Granted JPS581245A (en) 1981-06-26 1981-06-26 Branch address producing method

Country Status (1)

Country Link
JP (1) JPS581245A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000072311A3 (en) * 1999-05-21 2001-05-31 Infineon Technologies Ag Method and device for branching during the processing of a program by a processor

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52136535A (en) * 1976-05-11 1977-11-15 Sanyo Electric Co Ltd Microprogram control system
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52136535A (en) * 1976-05-11 1977-11-15 Sanyo Electric Co Ltd Microprogram control system
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000072311A3 (en) * 1999-05-21 2001-05-31 Infineon Technologies Ag Method and device for branching during the processing of a program by a processor

Also Published As

Publication number Publication date
JPH0323938B2 (en) 1991-04-02

Similar Documents

Publication Publication Date Title
US4616313A (en) High speed address calculation circuit for a pipeline-control-system data-processor
JPH0248931B2 (en)
EP0125855A2 (en) Buffer-storage control system
CA1037159A (en) Processing link control system for data processing equipment
US5125097A (en) Data flow type information processors where data packets pass through plurality of merging and branching portions of the internal path
KR920004279B1 (en) Microprocessor with pointer register
JPS6042966B2 (en) data processing system
JPS581245A (en) Branch address producing method
JPS6049340B2 (en) Branch instruction prefetch method
JPH01183736A (en) Information processor
JPS6217773B2 (en)
JPS58181152A (en) Debugging system of data processing device
JPS6116334A (en) Data processor
JPS6112579B2 (en)
JPS6286442A (en) Data processor
JPH0546389A (en) Parallel processor
JPS6047617B2 (en) information processing equipment
JPS59167764A (en) Memory access system
JPH02249027A (en) Instruction fetch decoder
JPS5998253A (en) Microprogram controller
JPH0128965B2 (en)
JPS6158042A (en) Microprogram control system
JPS6031646A (en) Data processor
JPS63317857A (en) Memory access circuit
JPH0553804A (en) Parallel processor