JPS60138652A - Memory bank switching system - Google Patents

Memory bank switching system

Info

Publication number
JPS60138652A
JPS60138652A JP24684383A JP24684383A JPS60138652A JP S60138652 A JPS60138652 A JP S60138652A JP 24684383 A JP24684383 A JP 24684383A JP 24684383 A JP24684383 A JP 24684383A JP S60138652 A JPS60138652 A JP S60138652A
Authority
JP
Japan
Prior art keywords
address
bank
decoder
switching
entry
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
JP24684383A
Other languages
Japanese (ja)
Inventor
Yukiteru Nishida
西田 行輝
Takeshi Yumura
湯村 武
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.)
Sanyo Electric Co Ltd
Sanyo Denki Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Sanyo Denki 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 Sanyo Electric Co Ltd, Sanyo Denki Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP24684383A priority Critical patent/JPS60138652A/en
Publication of JPS60138652A publication Critical patent/JPS60138652A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication

Abstract

PURPOSE:To transfer the control between to plural banks without changing a program so far produced by providing an address decoder and a calculating circuit which outputs the bank data and the entry data. CONSTITUTION:An address bus 12 supplies the address signal produced by a CPU11 to an address decoder 13. This decoder 13 is provided to discriminate a specific address range, and this address range is prescribed by a decoder control circuit 14 at 100-400 for example. The decoder 13 produces an interruption signal INT with input of an address signal set within said address range. This address signal is also supplied to a calculating circuit 15. The circuit 15 calculates from the input address and outputs the bank data BKD showing the difference between memory banks A and B at the switching destinations and the entry data ETD related to an entry address of the switching bank.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピュータのメモリ空間を拡大するために複
数のメモリバンクを設ける場合のメモリバンク切替方式
に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a memory bank switching system when a plurality of memory banks are provided in order to expand the memory space of a computer.

〔従来技術〕[Prior art]

cp’u (中央処理装置)からみた場合に同一のアド
レスを有する複数のメモリ空間を切替えて使用すること
により、実質的なメモリ空間の拡大を図ることを可能と
したメモリバンク切替手法は従来から使用されている。
The memory bank switching method that makes it possible to effectively expand the memory space by switching and using multiple memory spaces that have the same address when viewed from the cp'u (central processing unit) has been around for a long time. It is used.

しかしながらこのようなメモリ空間を利用せんとする場
合、ソフトウェア作成上、種々の煩わしさがある。即ち
異なったメモリバンクにあるプログラムは直接アクセス
できないので、予めそのメモリバンクk=制御を移すた
めの手段をプログラム中に用意しておく必要がある。
However, when attempting to utilize such a memory space, there are various troubles in creating software. That is, since programs located in different memory banks cannot be directly accessed, it is necessary to prepare in advance a means for transferring control of the memory bank k in the program.

これは複数のメモリバンクにのせられる各プログラムの
配置を予め定めておくことを意味し、プログラム開発上
の障害となっていた。
This means that the arrangement of each program to be loaded on a plurality of memory banks must be determined in advance, which has been an obstacle in program development.

〔目 的〕〔the purpose〕

本発明はこのような従来技術の欠点を解消するためにな
されたものであり、ハードウェアの工夫等によりプログ
ラム作成上はバンク切替を全く考慮することなく、恰も
同一バンク内でのプログラミングと同様に行え、複数の
バンクへの各プログラムの配置はプログラミング終了後
に行えばよいようにしてあり、またこの際に、それまで
作成したプログラムを変更することなく異バンク間へ制
御を移すことを可能としたメモリバンク切替方式を提供
することを目的とする。
The present invention was made in order to eliminate such drawbacks of the conventional technology, and by using hardware innovations, bank switching is not considered at all when creating a program, and it is possible to program in the same way as programming within the same bank. Programs can be placed in multiple banks after programming is completed, and in this case, control can be transferred between different banks without changing the programs created up to that point. The purpose is to provide a memory bank switching method.

〔発明の構成〕[Structure of the invention]

本発明に係るメモリバンク切替方式は、予め設定しであ
るアドレスが与えられた場合に割込信号を発するアドレ
スデコーダと、前記アドレスが与えられた場合に切替先
バンクを特定するバンクデータ及び切替先バンクのエン
トリアドレスに関連するエントリデータを出力する計算
回路とを設け、バンク切替を要する場合には前記アドレ
スをアドレスデコーダに与え、また計算回路にて得られ
たバンクデータに従い切替先バンクを定め、更にエント
リデータに基づき切替バンクのエントリアドレスをアク
セスすることを特徴とする。
The memory bank switching method according to the present invention includes an address decoder that issues an interrupt signal when a preset address is given, and bank data and a switching destination that specify the switching destination bank when the address is given. a calculation circuit that outputs entry data related to the entry address of the bank; when bank switching is required, the address is given to an address decoder; and a switching destination bank is determined according to the bank data obtained by the calculation circuit; Furthermore, the present invention is characterized in that the entry address of the switching bank is accessed based on the entry data.

〔実施例〕〔Example〕

以下本発明を切替えるべきメモリバンクが2(μmであ
る場合についてその実施例を示す図面に基づき説明する
Hereinafter, the present invention will be described based on drawings showing an embodiment of the case where the number of memory banks to be switched is 2 (μm).

12はアドレスバスであってcpu itが発すタアト
レス信号をアドレスデコーダ13に与える。このアドレ
スデコーダ13ば特定のアドレス範囲を識別するために
設けたものであり、上記アドレス範囲はデコーダ制御回
路14にて規定される。このアドレス範囲は例えば10
0〜400の範囲として規定されており、アドレスデコ
ーダ13ばこの範囲内のアドレス信号が人力されると割
込信号INTを発する。
Reference numeral 12 denotes an address bus which supplies address signals issued by the CPU IT to the address decoder 13. This address decoder 13 is provided to identify a specific address range, and the address range is defined by a decoder control circuit 14. For example, this address range is 10
It is defined as a range from 0 to 400, and when an address signal within the range is manually input to the address decoder 13, an interrupt signal INT is generated.

またこの範囲のアドレス信号が入力されるとそれを計算
回路15へ与える。計算回路15はこの入力アドレスか
ら切替先のメモリバンクA、Hの別を表ずバンクデータ
BKD及び切替先バンクのエン1−リアドレスに関連す
るエントリデータETDを計算して出力する。バンクデ
ータBKDは例えばアドレス信号が100〜300であ
る場合はメモリバンクAを表す内容”A″、301〜4
00である場合はメモリバンクBを表す内容”B”とな
る。そしてエントリデータETDは、例えばアドレス信
号が102である場合は102から切替先バンクA側の
最小値100を引いた“′2”、またアドレス信号が3
11である場合は切替先バンクB側の最小値301を引
いた“lO”となる。このようなバンクデータBKD 
、エントリデータETDの計算の条件は計算回路制御部
16にて規定される。これらの割込信号INT 、バン
クデータBKII 、エントリデータETDはCPU 
11へ与えられる。
Further, when an address signal in this range is input, it is applied to the calculation circuit 15. From this input address, the calculation circuit 15 calculates and outputs bank data BKD and entry data ETD related to the En1-Rear address of the switching destination bank, without indicating whether the switching destination memory banks A or H are selected. For example, when the address signal is 100 to 300, the bank data BKD is the content "A" representing memory bank A, 301 to 4.
If it is 00, the content is "B" representing memory bank B. For example, when the address signal is 102, the entry data ETD is "'2", which is 102 minus the minimum value 100 on the switching destination bank A side, and when the address signal is 3.
If it is 11, it becomes "lO", which is obtained by subtracting the minimum value 301 on the switching destination bank B side. Bank data BKD like this
, the conditions for calculating the entry data ETD are defined by the calculation circuit control section 16. These interrupt signal INT, bank data BKII, and entry data ETD are sent to the CPU.
given to 11.

18は命令デコーダであり、データバス17を介して与
冬られた”CALL”JUMP”等のプログラム制御命
令をデコードして出力する。前述のようにして規定され
ているアドレスの範囲100〜400はバンク切替用の
領域として設定されたものであり、” CALL”JU
肝”の命令によってこの領域がアクセスされると割込信
号INTが発せられてメモリバンクの切替を行うのであ
る。
Reference numeral 18 denotes an instruction decoder, which decodes and outputs program control instructions such as "CALL" and "JUMP" applied via the data bus 17.The address range 100 to 400 defined as described above is This is set as an area for bank switching, and "CALL" JU
When this area is accessed by a key command, an interrupt signal INT is generated and the memory bank is switched.

次に本発明におけるソフトウェアの動作の概要につき説
明する。他のメモリバンクに分岐する場合にはアドレス
デコーダ13.計算回路15が識別する領域に分岐する
。即ぢこの領域は他のメモリバンクにあるプログラムに
分岐する際のエントリーとなる。そしてこの領域に分岐
すると前記割込信号INTが発止するが、これに対する
割込処理にあっては命令デコーダ18出力を調べ、命令
”CALL”である場合はこの分岐の後に元のバンクへ
戻る命令であるので、現在のメモリバンクを特定するデ
ータを記憶し、次いで計算回路15のバンクデータBK
I)の内容に従い、メモリバンクの切替を行う。
Next, an overview of the operation of the software in the present invention will be explained. When branching to another memory bank, the address decoder 13. The calculation circuit 15 branches to the area identified. Immediately, this area becomes an entry when branching to a program in another memory bank. When branching to this area, the interrupt signal INT is generated, but in the interrupt processing for this, the output of the instruction decoder 18 is checked, and if the instruction is "CALL", the return is made to the original bank after this branch. Since it is a command, data specifying the current memory bank is stored, and then bank data BK of the calculation circuit 15 is stored.
Switch the memory bank according to the contents of I).

例えばメモリバンクAがアクセスされている状態下で命
令“CALL”が与えられアドレス信号が311となワ
た場合に、メモリバンクAを特定するデータを記憶し、
メモリバンクBへ切換える。
For example, if the command "CALL" is given while memory bank A is being accessed and the address signal is 311, the data specifying memory bank A is stored;
Switch to memory bank B.

メモリバンクA、Bの夫々には同一の割込処理をソフト
ウェアで構成しておき、エントリデータETI)とエン
トリアドレスとの対応表をソフトウェアで用意しておく
。そして上述のようにしてメモリバンクBへの切換を行
うと共にエントリデータETD (この場合ばパ10”
)を調べ、これに対応するエントリアドレスに分岐する
The same interrupt processing is configured in software for each of memory banks A and B, and a correspondence table between entry data (ETI) and entry addresses is prepared in software. Then, as described above, switching to memory bank B is performed, and the entry data ETD (in this case,
) and branches to the corresponding entry address.

〔効 果〕〔effect〕

以上のように本発明による場合はプログラミング上はメ
モリバンク切替の為の特別なコーディングを必要とせず
、同一メモリバンク内で動作するプログラムと全く同様
にしてプログラムを作成することができる。そして全プ
ログラムが完成してから各メモリバンクに適当に分配し
、デコーダ制御回路I4によるアドレスデコーダ13の
範囲規定、及び計算回路制御部16による計算回路15
の条件規定等を行い、更にエントリデータETDとエン
トリアドレスとの対応表を追加するだけでよい。これに
よって複数のメモリバンクに跨プログラムを容易に作成
することが可能となるのでプログラムのコーティング時
だけではなくプログラム開発の際のデバッグ時にもこの
利点を享受できる。
As described above, according to the present invention, there is no need for special coding for switching memory banks in terms of programming, and a program can be created in exactly the same way as a program that operates within the same memory bank. After the entire program is completed, it is distributed appropriately to each memory bank, the range of the address decoder 13 is defined by the decoder control circuit I4, and the calculation circuit 15 is controlled by the calculation circuit control section 16.
It is only necessary to define the conditions and add a correspondence table between entry data ETD and entry addresses. This makes it possible to easily create a program that spans multiple memory banks, so this advantage can be enjoyed not only during program coding but also during debugging during program development.

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

図面は本発明のメモリバンク切替方式を実施するだめの
回路の要部を略示するブロック図である。 A、B・・・メモリバンク 11・・・CPIJ 13
・・・アドレスデコーダ 15・・・計算回路 18・
・・命令デコーダ代理人 弁理士 河 野 登 夫
The drawing is a block diagram schematically showing the main parts of a circuit for implementing the memory bank switching method of the present invention. A, B...Memory bank 11...CPIJ 13
...Address decoder 15...Calculation circuit 18.
...Instruction decoder agent Patent attorney Noboru Kono

Claims (1)

【特許請求の範囲】[Claims] 1、複数のメモリバンクを切替えて使用するコンピュー
タにおいて、予め設定しであるアドレスが与えられた場
合に割込信号を発するアドレスデコーダと、前記アドレ
スが与えられた場合に切替先ハングを特定するバンクデ
ータ及び切替先バンクのエントリアドレスに関連するエ
ントリデータを出力する計算回路とを設け、バンク切替
を要する場合には前記アドレスをアドレスデコーダに与
え、また計算回路にて得られたバンクデータに従い切替
先バンクを定め、更にエントリデータに基づき切替バン
クのエントリアドレスをアクセスすることを特徴とする
メモリバンク切替方式。
1. In a computer that switches between multiple memory banks, an address decoder that issues an interrupt signal when a preset address is given, and a bank that identifies the hang destination to switch to when the address is given. data and a calculation circuit that outputs entry data related to the entry address of the switching destination bank, and when bank switching is required, the address is given to the address decoder, and the switching destination is provided according to the bank data obtained by the calculation circuit. A memory bank switching method characterized by determining a bank and further accessing an entry address of a switching bank based on entry data.
JP24684383A 1983-12-27 1983-12-27 Memory bank switching system Pending JPS60138652A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24684383A JPS60138652A (en) 1983-12-27 1983-12-27 Memory bank switching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24684383A JPS60138652A (en) 1983-12-27 1983-12-27 Memory bank switching system

Publications (1)

Publication Number Publication Date
JPS60138652A true JPS60138652A (en) 1985-07-23

Family

ID=17154527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24684383A Pending JPS60138652A (en) 1983-12-27 1983-12-27 Memory bank switching system

Country Status (1)

Country Link
JP (1) JPS60138652A (en)

Similar Documents

Publication Publication Date Title
EP0106572B1 (en) Data processing system with virtual machines
US5600807A (en) Programmable controller capable of updating a user program during operation by switching between user program memories
US4212060A (en) Method and apparatus for controlling the sequence of instructions in stored-program computers
JPS60138652A (en) Memory bank switching system
JPH03219360A (en) Multiprocessor control system
JPH03288228A (en) Information processor
JP2506591B2 (en) Auxiliary processor
JPS6232745A (en) Circuit processing system
JPS6116334A (en) Data processor
JPS6219935A (en) Changing system for microprogram
JPS6031646A (en) Data processor
JPH064469A (en) Input/output device control system
JPH0442328A (en) Interruption control system for information processor
JPS60140450A (en) Duplicated memory operating system of information processing unit
JPH0883188A (en) Multitask processing computer
JPS6244836A (en) Microaddress stack control system
JPS5943444A (en) Method and device for microprogram control
JPS6386054A (en) Memory system
JPH0323938B2 (en)
JPH0644066A (en) Information processor
JPH056215B2 (en)
JPS60262244A (en) Data processor
JPH01229350A (en) System for deciding output device
JPH0427574B2 (en)
JPH0812600B2 (en) Parallel data processing control method