JPH0259945A - Memory control circuit - Google Patents

Memory control circuit

Info

Publication number
JPH0259945A
JPH0259945A JP21182388A JP21182388A JPH0259945A JP H0259945 A JPH0259945 A JP H0259945A JP 21182388 A JP21182388 A JP 21182388A JP 21182388 A JP21182388 A JP 21182388A JP H0259945 A JPH0259945 A JP H0259945A
Authority
JP
Japan
Prior art keywords
instruction
bank switching
rom
interrupt
bank
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
JP21182388A
Other languages
Japanese (ja)
Inventor
Koji Shitanda
四反田 浩二
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
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP21182388A priority Critical patent/JPH0259945A/en
Publication of JPH0259945A publication Critical patent/JPH0259945A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To reduce the load of program structure by storing a jump instruction following a bank switching instruction in plural program ROMs. CONSTITUTION:The jump instruction following the bank switching instruction is stored in each of plural program ROMs 2a, 2b,.... At the time of recognizing the access of a next instruction, a next instruction detecting circuit 102 outputs its detecting signal, and when a ROM chip select signal(ROMCS) is outputted, a ROM address count circuit 103 applies an authorized signal to a bank switching instructing circuit 104 and bank instructing data for determining a specified ROM is outputted from a bank specifying port 6. Since a jumped address of a newly specified ROM is already outputted to an address bus 4 at the time of executing bank switching, the load of software construction for providing a bunk switching function can be reduced.

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、各種の電子装置に用いられるマイクロプロ
セッサに適用されるメモリ制御回路に関する。
DETAILED DESCRIPTION OF THE INVENTION [Object of the Invention] (Industrial Application Field) The present invention relates to a memory control circuit applied to microprocessors used in various electronic devices.

(従来の技術) 近年、各種の分野の製品でマイクロコンピュータが使わ
れており、そのプログラム容量は増大する傾向にある。
(Prior Art) In recent years, microcomputers have been used in products in various fields, and their program capacities have tended to increase.

マイクロコンピュータも4ビツト、8ビツト、16ビツ
ト、更には32ビツトと処理能力が向上しているが、特
に民生機器等ではできるだけ安価なマイクロコンピュー
タを用い、比較的大きな容量のプログラムを効率よく運
用することが望まれる。
Although the processing power of microcomputers has improved from 4 bits, 8 bits, 16 bits, and even 32 bits, it is especially important for consumer devices to use microcomputers that are as inexpensive as possible to efficiently run relatively large programs. It is hoped that

マイクロコンピュータは、それ自体が直接扱うことので
きるメモリ領域が定義されているのに対して、プログラ
ムの増大化にともないROM容量あるいはRAM容量が
システムとして不足し、複数のプログラムROMが要求
されることがある。
Although a microcomputer has a defined memory area that it can directly handle, as the number of programs increases, the ROM or RAM capacity becomes insufficient as a system, and multiple program ROMs are required. There is.

このような場合には、マイクロコンピュータのプログラ
ムアドレス空間を拡大するために、バンク切換え手段が
採用される。
In such cases, bank switching means is employed to expand the program address space of the microcomputer.

第5図は、従来のマイクロコンピュータのプログラムR
OM制御手段を示している。中央演算処理装置(以下C
PUと称する)1は、複数のプログラムROM2a、2
b、2cm・・にデータバス3、アドレスバス4を介し
て接続されている。アドレスバス4は、更に、バンク切
換え手段を構成するアドレスデコーダ5に接続される。
Figure 5 shows a conventional microcomputer program R.
OM control means is shown. Central processing unit (C
(referred to as PU) 1 includes a plurality of program ROMs 2a, 2
b, 2cm, etc. via a data bus 3 and an address bus 4. The address bus 4 is further connected to an address decoder 5 constituting bank switching means.

アドレスデコーダ5は、アドレスバス4からのアドレス
と。
The address decoder 5 receives the address from the address bus 4.

CPUIからのメモリリクエスト信号(MRE Q)と
、入出力リクエスト信号(IOREQ)とをデコードし
て、ROMをアクティブ状態にするタイミングとなるチ
ップセレクト信号(ROMC8)を発生する。一方、デ
ータバス3は、バンク指定ポート6にも接続されている
。バンク指定ポート6は、CPUIから出力されたバン
ク指定データを格納しており、このバンク指定データに
よりプログラムROM 2 a 、  2 b 、  
2 c・・・にうちいずれかを指定している。
It decodes the memory request signal (MREQ) from the CPUI and the input/output request signal (IOREQ) to generate a chip select signal (ROMC8) that is the timing to activate the ROM. On the other hand, the data bus 3 is also connected to the bank designation port 6. The bank designation port 6 stores bank designation data output from the CPUI, and this bank designation data allows the program ROMs 2a, 2b,
2 One of these is specified in c...

今、例えばプログラムROM2aが指定されている状況
下で、チップセレクト信号(ROMC8)が出力される
と、このタイミングでプログラムROM 2 aは、ア
クティブ状態になる。読出し状態は、CPUIからの読
出しあるいは書込み信号(RD)により決定される。
For example, when the chip select signal (ROMC8) is output under a situation where the program ROM 2a is specified, the program ROM 2a becomes active at this timing. The read state is determined by a read or write signal (RD) from the CPUI.

尚、C0UIに対しては、クロック生成回路7からのシ
ステムクロックが供給され、また割込みソース回路8か
らは割込み信号が供給されている。
Note that the system clock is supplied from the clock generation circuit 7 and the interrupt signal is supplied from the interrupt source circuit 8 to C0UI.

CPUIは、割込み信号が入力すると、現在アクセス中
のROMの割込みシーケンス領域をアクセスして割込み
プログラムを実行することになる。
When an interrupt signal is input, the CPUI accesses the interrupt sequence area of the ROM that is currently being accessed and executes the interrupt program.

上記のメモリ制御回路の動作例を第6図に示して説明す
る。
An example of the operation of the above memory control circuit will be described with reference to FIG.

今、第6図に示すように、プログラムROM2a、2b
、2cのメモリ空間の各シーケンス命令が図に示すよう
になっていたとする。
Now, as shown in FIG. 6, the program ROMs 2a, 2b
, 2c, each sequence instruction in the memory space is as shown in the figure.

図において(X−2)、(X)、・・・(Y+2)。In the figure, (X-2), (X), ... (Y+2).

(Y)、(W)、(Z)はそれぞれ各ROMのアドレス
である。また rLD  A、OIJはAレジスタに“1″をロドせよ
と言う命令。
(Y), (W), and (Z) are addresses of each ROM. Also, rLDA, OIJ is an instruction to load "1" into the A register.

rOUT  (n)、ALJは、Aレジスタの内容nを
出力せよと言う命令。
rOUT (n), ALJ is an instruction to output the contents n of the A register.

rJP  ZJは、このステップでZ番地にジャンプせ
よと言う命令。
rJP ZJ is an instruction to jump to address Z at this step.

IMP  WJは、このステップでW番地にジャンプせ
よと言う命令。
IMP WJ is an instruction to jump to address W at this step.

である。It is.

今、ROM2aが指定されており、アドレス(X−2)
番地の命令が実行されるとすると、Aレジスタに“1”
、つまりROM2bを指定する指定データが格納され、
バンク指定ポート6に送られる。次にCPUIのアドレ
スカウンタがインクリメントされると、rOUT  (
n)、ALJが実行され、同時に入出力リクエスト信号
(IOREQ)が出力される。これにより、アドレスデ
コーダ5からバンク指定ポート6にタイミング信号が供
給されるとともに、ROM2bがアクティブ状態となる
Now, ROM2a is specified and address (X-2)
If the instruction at the address is executed, “1” is written in the A register.
, that is, the specification data specifying ROM2b is stored,
It is sent to bank designated port 6. Next, when the CPUI address counter is incremented, rOUT (
n), ALJ is executed and an input/output request signal (IOREQ) is output at the same time. As a result, a timing signal is supplied from the address decoder 5 to the bank designation port 6, and the ROM 2b becomes active.

このとき、CPUIのプログラムカウンタは自動的にイ
ンクリメントされるので、ROM2bのアドレスとして
は(X+2)番地が指定されることになる。ここで注意
すべきことは、ROM2bの(X+2)番地に、今まで
実行していたプログラム命令に続く次の命令が格納され
ていれば問題ないのであるが、これでは、ROM2bの
プログラム格納に制限が生じてしまう。そこで、通常は
ROM2bの(X+2)番地(バンク切換え時に前の指
定ROMアドレスに続く次の指定ROMアドレス)に、
次に実行すべき命令が格納されているアドレスにジャン
プするためのジャンプ命令が格納されている。第6図は
、矢印■の経路と■の経路の2つの例を示している。
At this time, since the CPU program counter is automatically incremented, the address (X+2) is designated as the address of the ROM 2b. What should be noted here is that there is no problem if the next instruction following the program instruction that has been executed so far is stored at address (X+2) in ROM2b, but this limits the program storage to ROM2b. will occur. Therefore, normally, at address (X+2) of ROM2b (the next specified ROM address following the previous specified ROM address when switching banks),
A jump instruction for jumping to the address where the next instruction to be executed is stored is stored. FIG. 6 shows two examples of the route indicated by the arrows ■ and the route indicated by the arrow ■.

このように従来のメモリ制御回路においては、例えばR
OM 2 aの(X)番地にバンク切換え命令が有った
とすると、これにより選択されるROM (例えばRO
M2b)の(x+2)番地には必ず、次の命令、若しく
は次の命令が格納されているジャンプ先を示すジャンプ
命令を格納しなければならない。
In this way, in the conventional memory control circuit, for example, R
If there is a bank switching command at address (X) of OM2a, the selected ROM (for example, RO
The next instruction or a jump instruction indicating a jump destination where the next instruction is stored must be stored at address (x+2) of M2b).

このようなプログラム格納の制約があると、複数のRO
Mを用いて大容量のプログラムを格納する場合、ソフト
ウェアの大きな負担となり、またソフトウェアを構築す
る場合にもミスを生じやすい。
With such program storage constraints, multiple ROs
When storing a large-capacity program using M, it places a heavy burden on the software, and mistakes are likely to occur when building the software.

次に、従来のメモリ制御回路の場合、CPUIがいずれ
のROMのプログラムで動作していても、割込み信号を
受付けるように構成されていた場合、CPUIは、割込
み処理を受付けたときにベクタアドレスからの命令を実
行することになる。このために、いずれのROMにおい
ても同一の対応領域に全く同じ割込み領域を確保してお
かなければならない。これは各ROMの割込み領域のプ
ログラムが重複することであり、無駄を生じることであ
る。
Next, in the case of a conventional memory control circuit, no matter which ROM program the CPU is operating on, if it is configured to accept interrupt signals, the CPU will execute the command. For this reason, it is necessary to reserve exactly the same interrupt area in the same corresponding area in each ROM. This means that the programs in the interrupt areas of each ROM are duplicated, resulting in waste.

更に、従来のメモリ制御回路の場合、ジャンプ命令は同
一バンク上のみしか有効に利用できない。
Furthermore, in the case of conventional memory control circuits, jump instructions can only be effectively used on the same bank.

ツマリ、各バンク(ROM)のアドレスとしての領域は
同じであり、ジャンプは同一バンク上でしかできず、R
OM 2 cの(Y)番地からROM2aの(W)番地
に移りたいときは、−旦、ROM 2 aの(Y+2)
番地に移って(バンク切換えを実行して)次に、ジャン
プ命令によりROM2 aの(W)番地にジャンプする
しか方法がない。
The address area of each bank (ROM) is the same, jumps can only be made on the same bank, and R
If you want to move from address (Y) of OM2c to address (W) of ROM2a, move to (Y+2) of ROM2a on -d.
There is no other way than to move to address (by executing bank switching) and then jump to address (W) of ROM2a using a jump command.

(発明が解決しようとする課題) 上記した従来のメモリ制御回路によると、まず、バンク
切換えに伴って次の命令を実行するために、今まで指定
していたROMのアドレスの1ステツプ後に続く次に指
定したROMのアドレスにジャンプ命令を格納して、次
の命令に移る必要があり、ソフトウェアを構築するのに
大きな負担がある。また、割込み処理のための領域を、
各ROMに全く同様な内容で確保する必要がありROM
の領域が無駄に使用されている。さらにまた、異なるR
OMの任意のアドレスにジャンプする場合、CPUのア
ドレスインクリメントのために、−旦、バンク切換えを
行なって、新たに指定したROMのジャンプ命令を利用
してジャンプしなければ成らず、ソフトウェアを構築す
る負担が大きい。
(Problem to be Solved by the Invention) According to the conventional memory control circuit described above, first, in order to execute the next instruction in conjunction with bank switching, the next instruction that follows one step after the previously specified ROM address is It is necessary to store the jump instruction in the ROM address specified by the jump instruction and move on to the next instruction, which puts a heavy burden on software construction. Also, the area for interrupt processing is
It is necessary to ensure that each ROM has exactly the same content.
area is wasted. Furthermore, different R
When jumping to an arbitrary address in OM, in order to increment the address of the CPU, it is necessary to switch the bank and jump using the newly specified ROM jump instruction, which requires building software. It's a big burden.

そこでこの発明は、バンク切換え機能を持たせるための
ソフトウェア構築を得るのに、プログラマ負担を軽減す
るとともに、割込み処理を行なう機能を持たせた場合、
ROMの領域使用効率を向上させることができるメモリ
制御回路を提供することを目的とする。
Therefore, this invention reduces the burden on the programmer when constructing software to provide a bank switching function, and also provides a function for interrupt processing.
An object of the present invention is to provide a memory control circuit that can improve the area usage efficiency of a ROM.

[発明の構成] (課題を解決するための手段) この発明は、複数のプログラムROMに対して共通のア
ドレスを与えるアドレス指定手段と、このアドレス指定
手段によりいずれかの前記プログラムROMから読み出
されたシーケンス命令を読取り、この命令に基づいて動
作するシーケンス処理手段と、このシーケンス処理手段
で判断される命令に、上記プログラムRAMの内いずれ
かを指定するバンク切換え命令が処理されたことに応答
して、該複数のROMのうち指定されたROMをアクテ
ィブ状態に切換えるバンク切換え手段とを具備したメモ
リ制御装置において、 上記複数のプログラムROMにはバンク切換え命令に続
きジャンプ命令を格納しておき、前記シーケンス処理手
段によって前記バンク切換え手段へ前記バンク切換え命
令が出力され、続いて前記次のジャンプ命令が判定され
るまで待ち、このジャンプ命令に基づ(アドレスが上記
アドレス指定手段からバスに導出されている段階で、上
記バンク切換え手段のバンク切換え命令を実行せしめる
バンク切換えタイミング制御手段を備えるものである。
[Structure of the Invention] (Means for Solving the Problems) The present invention includes an addressing means for giving a common address to a plurality of program ROMs, and a method for reading data from any of the program ROMs by the addressing means. a sequence processing means that reads a sequence command and operates based on this command; and a sequence processing means that operates based on this command; and a bank switching means for switching a designated ROM among the plurality of ROMs to an active state, wherein the plurality of program ROMs store a jump instruction following the bank switching instruction, and The sequence processing means outputs the bank switching command to the bank switching means, waits until the next jump command is determined, and based on this jump command (the address is derived from the addressing means to the bus). The present invention further includes bank switching timing control means for causing the bank switching means to execute a bank switching command at a certain stage.

またこの発明は、上記シー・ケンス処理手段に割込み処
理命令が入力したことを検出して、自動的に上記複数の
プログラムROMのうち特定のROMをアクティブ状態
にする特定バンク切換え命令を出力する割込み導入手段
と、この割込み導入手段により特定のROMが選択され
たときに。
The present invention also provides an interrupt processing unit that detects that an interrupt processing command is input to the sequence processing means and outputs a specific bank switching command that automatically activates a specific ROM among the plurality of program ROMs. introduction means and when a particular ROM is selected by this interrupt introduction means.

この選択以前に選択されていたROMを指定するバンク
切換え命令を格納しておき、前記前記シーケンス処理手
段が割込み処理を行っているシーケンス命令から割込み
処理終了を検出しときに、先に格納していたバンク切換
え命令を前記バンク切換え手段に与えて割込み前のRO
Mをアクセス状態に復帰せしめる割込み復帰手段とを備
えるものである。
A bank switching instruction that specifies the ROM that was selected before this selection is stored, and when the sequence processing means detects the end of interrupt processing from the sequence instruction that is processing the interrupt, the bank switching instruction that specifies the ROM that was selected before this selection is stored. A bank switching command is given to the bank switching means to control the RO before the interrupt.
and interrupt return means for returning M to an access state.

(作用) 上記の手段により、複数のプログラムROMに格納する
ジャンプ命令は、自動的にバンク切換え命令の次に格納
するという原則ができるので、プログラム構築の負担が
軽減される。
(Function) By the above means, it is possible to establish a principle in which jump instructions to be stored in a plurality of program ROMs are automatically stored next to a bank switching instruction, so that the burden of program construction is reduced.

また、分割処理のためのプログラムは、1つのROMに
格納しておけばよく、他のROMを効率的に使用できる
ものである。
Further, the program for division processing can be stored in one ROM, and other ROMs can be used efficiently.

(実施例) 以下、この発明の実施例を図面を参照して説明する。(Example) Embodiments of the present invention will be described below with reference to the drawings.

第1図はこの発明の一実施例であり、従来の回路と異な
る部分は、バンク切換えタイミング制御部100、割込
み導入部2001割込み復帰部300が新たに設けられ
ている。他の部分は、従来の回路と同じであるために第
4図と同一符号を付している。
FIG. 1 shows an embodiment of the present invention, which differs from the conventional circuit in that a bank switching timing control section 100, an interrupt introduction section 2001, and an interrupt recovery section 300 are newly provided. The other parts are the same as the conventional circuit, and are therefore given the same reference numerals as in FIG.

バンク切換えタイミング制御に付いて説明する。Bank switching timing control will be explained.

複数のプログラムROM2a、2b、2c、 川のいず
れを指定するかを決定するためのバンク指定データは、
データバス3、バンク切換えポート101を介してバン
ク指定ポルトロに与えられる。
Bank designation data for determining which of the multiple program ROMs 2a, 2b, 2c, and river to designate is as follows:
It is applied to the bank designated port via the data bus 3 and the bank switching port 101.

バンク指定ポート6は、バンク指定データを直ぐに出力
するのではなく、その出力タイミング端子0ut−Tに
タイミングパルスが供給されることにより始めてバンク
指定データを出力する。
The bank designation port 6 does not output the bank designation data immediately, but only outputs the bank designation data when a timing pulse is supplied to its output timing terminal 0ut-T.

出力タイミング端子0ut−Tへのタイミングパルスは
、バンク切換えタイミング制御部1ooのバンク切換え
指示回路104あるいは、割込み導入部20岬の次命令
検出バンク切換え指示回路202あるいは、割込み復帰
部300のバンク指定復帰指示回路303から与えられ
る。
The timing pulse to the output timing terminal 0ut-T is sent to the bank switching instruction circuit 104 of the bank switching timing control section 1oo, the next instruction detection bank switching instruction circuit 202 of the interrupt introduction section 20, or the bank specification return of the interrupt return section 300. It is given from the instruction circuit 303.

バンク切換え制御部100は、次命令検出回路102と
ROMアクセスカウント回路10Bと、バンク切換え指
示回路104により構成される。
The bank switching control section 100 includes a next instruction detection circuit 102, a ROM access count circuit 10B, and a bank switching instruction circuit 104.

次命令検出回路102は、アドレスデコーダ5及びバン
ク切換えポート101を介して入力されるメモリリクエ
スト信号(MRE Q)及び入出力リクエスト信号(I
OREQ)に基づいて次の命令があるか否かを検出する
待機状態となる。次の命令を検出するには、CPUIか
ら出力されるM1信号を監視すればよい。っまりCPU
1は、シーケンス処理が進む毎にフエツチマシンサイク
小信号(Ml信号)を出力するのでこの信号の状態が変
化したときに次の命令がロードされたものとして認識す
る。この実施例では、第2図でも詳述するようにバンク
切換え命令の次は必ずジャンプ命令が格納されている。
The next instruction detection circuit 102 receives a memory request signal (MRE Q) and an input/output request signal (I
A standby state is entered in which it is detected whether there is a next instruction based on OREQ). To detect the next command, it is sufficient to monitor the M1 signal output from the CPUI. A lot of CPU
1 outputs a fetch machine cycle small signal (M1 signal) each time sequence processing progresses, so when the state of this signal changes, it is recognized that the next instruction has been loaded. In this embodiment, as will be described in detail in FIG. 2, a jump instruction is always stored after a bank switching instruction.

このジャンプ命令は、現在アクセス中のROMのジャン
プ先ではなく、バンク切換えにより選択される次のRO
Mのジャンプ先である。次命令検出回路102は、次命
令がアクセスされたことを認識すると、その検出信号を
ROMアクセスカクント回路103に与える。このRO
Mアクセスカウント回路103は、ROMチップセレク
ト信号(ROM CS )が出力された時点で、つまり
ROMがアクティブ状態とされるのに同期して、次命令
が検出されている場合にバンク切換え指示回’1810
4に許可信号を与える。この動作が得られて始めて、バ
ンク指定ポート6から指定ROMを決定するためのバン
ク指定データが出力される。
This jump instruction does not jump to the ROM currently being accessed, but to the next ROM selected by bank switching.
This is M's jump destination. When the next instruction detection circuit 102 recognizes that the next instruction has been accessed, it provides the detection signal to the ROM access capacitor circuit 103. This R.O.
The M access count circuit 103 issues a bank switching instruction time when the next instruction is detected at the time when the ROM chip select signal (ROM CS ) is output, that is, in synchronization with the ROM being activated. 1810
Give a permission signal to 4. Only after this operation is obtained, bank designation data for determining the designated ROM is output from the bank designation port 6.

このようにバンク切換えが行われた場合、アドレスバス
4には既に、新しく指定されたROMのジャンプ先のア
ドレスが出力されていることになる。したがって、従来
とは異なり、新しく指定されるROMに次の命令のため
のジャンプ先命令を格納する必要はなく、プログラマは
ソフトウニアラ格納するROMのアドレスに付いてのみ
注意し、新しく指定するROMのジャンプ先を知ってお
ればよい。
When bank switching is performed in this manner, the newly specified jump destination address of the ROM has already been output to the address bus 4. Therefore, unlike in the past, there is no need to store the jump destination instruction for the next instruction in the newly specified ROM, and the programmer only needs to pay attention to the address of the ROM that stores the software programmer. You just need to know where to jump.

第2図を参照してバンク切換え動作について説明する。The bank switching operation will be explained with reference to FIG.

第2図において、今、ROM2aのアクセス状態から、
ROM2bのアクセス状態にバンク切換えが行われるも
のとする。ROM2 aの命令は、(X−2)番地にr
LD  A、0IJ(X)番地にrOUT  (n)、
ALJ(X+2)番地にrJP  ZJ が格納されている。ここで、(Z)は、ROM2bのジ
ャンプ先を示している。このようにプログラムした場合
、この実施例では、(X)番地がアクセスされたときに
は、バンク指定ポート6からは直ぐにはバンク切換え指
定データが出力されず、CPU1のアドレスインクリメ
ントにより(X+2)番地がアクセスされるまでラッチ
されることになる。そして、アドレスバス4にジャンプ
先アドレス(Z)が出力されたときに始めて、バンク切
換えタイミング制御回路100がバンク切換えを実行さ
せることになる。よって、バンク切換えが行われるとと
もにROM2bの(Z)番地(ジャンプ先)の命令がア
クセスされることになる。第2図には、シーケス経路■
と、■の2つの経路の例を示している。■経路は、RO
M 2 cがアクセスされている途中で、バンク切換え
命令があり、ROM 2 aへの切換えを指示している
例である。各命令の意味は、第6図で説明した通りであ
る。
In FIG. 2, from the access state of ROM2a,
It is assumed that bank switching is performed in the access state of the ROM 2b. The instruction of ROM2a is r at address (X-2).
LD A, rOUT (n) at address 0IJ (X),
rJP ZJ is stored at address ALJ(X+2). Here, (Z) indicates the jump destination of ROM2b. When programmed in this way, in this embodiment, when address (X) is accessed, bank switching designation data is not immediately output from bank designation port 6, and address (X+2) is accessed by the address increment of CPU1. It will be latched until the Then, the bank switching timing control circuit 100 executes bank switching only when the jump destination address (Z) is output to the address bus 4. Therefore, bank switching is performed and the instruction at address (Z) (jump destination) of the ROM 2b is accessed. Figure 2 shows the sequence route ■
Examples of two routes are shown. ■The route is RO
This is an example in which a bank switching command is issued while M 2 c is being accessed, instructing switching to ROM 2 a. The meaning of each command is as explained in FIG.

上記の動作をシーケンスフローにより示すと、第3図に
示すようになる。
The above operation is shown in a sequence flow as shown in FIG.

この実施例では、上記したようにバンク切換えが行われ
る。さらにこの回路には、割込み処理が行われた場合に
も、ROMを効率良く使用できるように対策が図られて
いる。即ち、割込み導入部200に付いて説明する。割
込み信号は、割込みソース回路8からCPUIに与えら
れるとともに、割込み導入部200を構成している割込
み検出回路201にも供給される。すると割込み検出回
路201は、その検出信号を次命令検出及びバンク切換
え指示回路202に与える。この結果、次命令検出及び
バンク切換え指示回路202は、次命令をM1信号によ
り検出すると、強制的にバンク指定ポート6を介して特
定のROMの指定状態に切換える。従って、割込み動作
時においては、必ず特定のROMの指定状態となるので
、割込み領域はこの特定のROMにのみ確保しておけば
良い。
In this embodiment, bank switching is performed as described above. Furthermore, this circuit is designed to allow efficient use of the ROM even when interrupt processing is performed. That is, the interrupt introducing section 200 will be explained. The interrupt signal is supplied from the interrupt source circuit 8 to the CPUI, and is also supplied to the interrupt detection circuit 201 that constitutes the interrupt introducing section 200. Then, the interrupt detection circuit 201 provides the detection signal to the next instruction detection and bank switching instruction circuit 202. As a result, when the next instruction detection and bank switching instruction circuit 202 detects the next instruction using the M1 signal, it forcibly switches to the specified state of a specific ROM via the bank specification port 6. Therefore, at the time of an interrupt operation, a specific ROM is always specified, so the interrupt area may be reserved only in this specific ROM.

また特定のROMが指定されるときには、同時に今まで
指定されていたROMのバンク指定データが、割込み前
バンク指定記憶回路304に格納される。
Further, when a specific ROM is designated, the bank designation data of the ROM that has been designated so far is simultaneously stored in the pre-interrupt bank designation storage circuit 304.

次に割込み復帰部300について説明する。Next, the interrupt recovery unit 300 will be explained.

割込み復帰部300は、割込み終了認識ポート301、
次命令検出回路302、バンク指定復帰指示回路303
により構成される。割込み処理が終了すると、例えば割
込み領域のアドレスの最終番地によりフラッグが得れ、
これがアドレスデコーダ5を介して得れる。このフラッ
グを割込み終了認識ポート301が検出すると、次命令
検出回路302は、次の命令が出力されるのを検出する
ために待機状態となる。次命令検出回路302が、M1
信号により次命令が出力されたのを検出すると、バンク
指定復帰指示回路303は、バンク指定ポート6にタイ
ミング信号を与える。このとき、バンク指定回路6は、
割込み前バンク指定記憶回路304に格納されているバ
ンク指定データを出力する。これにより、割込み処理終
了時には、割込み前に指定されていたROMに9ノ替わ
ることになる。
The interrupt return unit 300 includes an interrupt end recognition port 301,
Next instruction detection circuit 302, bank specified return instruction circuit 303
Consisted of. When the interrupt processing is finished, a flag can be obtained from the final address of the interrupt area, for example.
This is obtained via the address decoder 5. When the interrupt completion recognition port 301 detects this flag, the next instruction detection circuit 302 enters a standby state to detect the output of the next instruction. Next instruction detection circuit 302 detects M1
When detecting the output of the next instruction by the signal, the bank designation return instruction circuit 303 provides a timing signal to the bank designation port 6. At this time, the bank designation circuit 6
The bank designation data stored in the pre-interrupt bank designation storage circuit 304 is output. As a result, when the interrupt processing ends, the ROM specified before the interrupt is replaced by 9.

上記のように割込み導入部200と割込み復帰部300
が動作することにより、割込み命令があった場合には、
特定のROMの割込み領域アクセス状態に強制的に切替
わり、割込み処理が終了した場合には自動的の割込み前
にアクセス状態であったROMの指定状態に復帰するこ
とになる。よって、割込み領域を全てのROMに確保す
る必要はなく、特定のROMにのみ確保しておけばよく
ROMの使用効率を格段と向上できる。第4図は、上記
の割込み処理が行われた場合のフローチャートを示して
いる。
As described above, the interrupt introduction section 200 and the interrupt return section 300
By operating, if there is an interrupt instruction,
When the interrupt area access state of a specific ROM is forcibly switched, and the interrupt processing is completed, the state returns to the specified state of the ROM that was in the access state before the automatic interrupt. Therefore, it is not necessary to reserve the interrupt area in all ROMs, but it is sufficient to reserve the interrupt area only in a specific ROM, and the efficiency of ROM usage can be greatly improved. FIG. 4 shows a flowchart when the above interrupt processing is performed.

[発明の効果] 以上説明したようにこの発明によれば、バンク切換え機
能を持たせるためのソフトウェア構築を得るのに、プロ
グラマ負担を軽減するとともに、割込み処理を行なう機
能を持たせた場合、ROMの領域使用効率を向上させる
ことができる。
[Effects of the Invention] As explained above, according to the present invention, it is possible to reduce the burden on the programmer when constructing software for providing a bank switching function, and to provide a function for performing interrupt processing. The area usage efficiency can be improved.

【図面の簡単な説明】 第1図はこの発明の一実施例を示すブロック図、第2図
及び第3図は第1図の回路のバンク切換え動作を説明す
るために示した説明図、第4図は第1図の回路の割込み
処理時の動作を説明するために示した説明図、第5図は
従来のメモリ制御回路を示すブロック図、第6図は第5
図の回路のバンク切換え動作を説明するために示した説
明図である。 1・・・中央演算処理装置(CPU) 、2a、2b。 2C1・・・プログラムROM、3・・・データバス、
4・・・アドレスバス、5・・・アドレスデコーダ、6
・・・バンク指定ポート、7・・・クロック生成回路、
8・・・割込みソース回路、100・・・バンク切換え
タイミング制御部、200・・・割込み導入部、300
・・・割込み復帰部、101・・・バンク切換えポート
、102.302・・・次命令検出回路、103・・・
ROMアクセスカウンタ、104・・・バンク切換え指
示回路、201・・・割込み信号検出回路、202・・
・次命令検出及びバンク切換え指示回路、301・・・
割込み終了認識ボート、303・・・バンク復帰指示回
路、304・・・割込み前バンク指定記憶回路。 出願人代理人 弁理士 鈴江武彦 !I!!1  凶 第 図
[BRIEF DESCRIPTION OF THE DRAWINGS] FIG. 1 is a block diagram showing one embodiment of the present invention, FIGS. 2 and 3 are explanatory diagrams for explaining the bank switching operation of the circuit in FIG. 4 is an explanatory diagram shown to explain the operation of the circuit in FIG. 1 during interrupt processing, FIG. 5 is a block diagram showing a conventional memory control circuit, and FIG. 6 is a block diagram showing the conventional memory control circuit.
FIG. 3 is an explanatory diagram shown for explaining bank switching operation of the circuit shown in the figure. 1... Central processing unit (CPU), 2a, 2b. 2C1...Program ROM, 3...Data bus,
4...Address bus, 5...Address decoder, 6
...Bank designated port, 7...Clock generation circuit,
8... Interrupt source circuit, 100... Bank switching timing control section, 200... Interrupt introducing section, 300
...Interrupt return unit, 101...Bank switching port, 102.302...Next instruction detection circuit, 103...
ROM access counter, 104... Bank switching instruction circuit, 201... Interrupt signal detection circuit, 202...
・Next instruction detection and bank switching instruction circuit, 301...
Interrupt end recognition board, 303...bank return instruction circuit, 304...pre-interrupt bank designation storage circuit. Applicant's representative Patent attorney Takehiko Suzue! I! ! 1.

Claims (2)

【特許請求の範囲】[Claims] (1)複数のプログラムROMに対して共通のアドレス
を与えるアドレス指定手段と、このアドレス指定手段に
よりいずれかの前記プログラムROMから読み出された
シーケンス命令を読取り、この命令に基づいて動作する
シーケンス処理手段と、このシーケンス処理手段で判断
される命令に、上記プログラムRAMの内いずれかを指
定するバンク切換え命令が処理されたことに応答して、
該複数のROMのうち指定されたROMをアクティブ状
態に切換えるバンク切換え手段とを具備したメモリ制御
装置において、 上記複数のプログラムROMにはバンク切換え命令に続
きジャンプ命令を格納しておき、前記シーケンス処理手
段によって前記バンク切換え手段へ前記バンク切換え命
令が出力され、続いて前記次のジャンプ命令が出力され
るまで待ち、このジャンプ命令に基づくアドレスが上記
アドレス指定手段によりバスに導出されている段階で、
上記バンク切換え手段からのバンク切換え命令を実行せ
しめるバンク切換えタイミング制御手段を具備したこと
を特徴とするメモリ制御回路。
(1) Addressing means for giving a common address to a plurality of program ROMs, and a sequence process that reads a sequence instruction read out from one of the program ROMs by this addressing means and operates based on this instruction. and in response to processing of a bank switching command specifying one of the program RAMs in the command determined by the sequence processing means;
In a memory control device comprising bank switching means for switching a designated ROM among the plurality of ROMs to an active state, a jump instruction is stored in the plurality of program ROMs following a bank switching instruction, and the sequence processing The means outputs the bank switching command to the bank switching means, and then waits until the next jump command is output, and when the address based on this jump command is led out to the bus by the addressing means,
A memory control circuit comprising bank switching timing control means for executing a bank switching command from the bank switching means.
(2)複数のプログラムROMに対して共通のアドレス
を与えるアドレス指定手段と、このアドレス指定手段に
よりいずれかの前記プログラムROMから読み出された
シーケンス命令を読取り、この命令に基づいて動作する
シーケンス処理手段と、このシーケンス処理手段で判断
される命令に、上記プログラムRAMの内いずれかを指
定するバンク切換え命令が処理されたことに応答して、
該複数のROMのうち指定されたROMをアクティブ状
態に切換えるバンク切換え手段とを具備したメモリ制御
装置において、 上記シーケンス処理手段に割込み処理命令が入力したこ
とを検出して、自動的に上記複数のプログラムROMの
うち特定のROMをアクティブ状態にする特定バンク切
換え命令を出力する割込み導入手段と、 この割込み導入手段により特定のROMが選択されたと
きに、この選択以前に選択されていたROMを指定する
バンク切換え命令を格納しておき、前記前記シーケンス
処理手段が割込み処理を行っているシーケンス命令から
割込み処理終了を検出しときに、先に格納していたバン
ク切換え命令を前記バンク切換え手段に与えて割込み前
のROMをアクセス状態に復帰せしめる割込み復帰手段
とを具備したことを特徴とするメモリ制御回路。
(2) Addressing means for giving a common address to a plurality of program ROMs, and a sequence process that reads a sequence instruction read out from one of the program ROMs by this addressing means and operates based on this instruction. and in response to processing of a bank switching command specifying one of the program RAMs in the command determined by the sequence processing means;
In a memory control device comprising bank switching means for switching a designated ROM among the plurality of ROMs to an active state, it is detected that an interrupt processing command is input to the sequence processing means, and automatically switches the plurality of ROMs to an active state. an interrupt introducing means for outputting a specific bank switching instruction to activate a specific ROM among the program ROMs, and when a specific ROM is selected by the interrupt introducing means, a ROM that was selected before the selection is specified; A bank switching instruction to be executed is stored, and when the sequence processing means detects the end of interrupt processing from a sequence instruction that is processing an interrupt, the previously stored bank switching instruction is given to the bank switching means. 1. A memory control circuit comprising: interrupt recovery means for returning a ROM to an access state before the interrupt.
JP21182388A 1988-08-26 1988-08-26 Memory control circuit Pending JPH0259945A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21182388A JPH0259945A (en) 1988-08-26 1988-08-26 Memory control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21182388A JPH0259945A (en) 1988-08-26 1988-08-26 Memory control circuit

Publications (1)

Publication Number Publication Date
JPH0259945A true JPH0259945A (en) 1990-02-28

Family

ID=16612186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21182388A Pending JPH0259945A (en) 1988-08-26 1988-08-26 Memory control circuit

Country Status (1)

Country Link
JP (1) JPH0259945A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0609903A2 (en) * 1993-02-05 1994-08-10 Nec Corporation Program language compiling system
US5616446A (en) * 1994-09-29 1997-04-01 Konica Corporation Silver halide photographic light-sensitive material

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0609903A2 (en) * 1993-02-05 1994-08-10 Nec Corporation Program language compiling system
EP0609903A3 (en) * 1993-02-05 1997-05-02 Nec Corp Program language compiling system.
US5616446A (en) * 1994-09-29 1997-04-01 Konica Corporation Silver halide photographic light-sensitive material

Similar Documents

Publication Publication Date Title
EP0263886A1 (en) Interrupt control method in a multiprocessor system
US5600807A (en) Programmable controller capable of updating a user program during operation by switching between user program memories
EP0518479B1 (en) Processing system and method including memory selection
JP2513462B2 (en) Micro computer
JPH0259945A (en) Memory control circuit
CA2000245C (en) Multiprocessor system using communication register having processor-associated storage locations
US5524260A (en) Register access control device comprising a busy/free indicating unit for allowing and disallowing access of a processing unit to a parameter register
US6032173A (en) Synchronization of a computer system having a plurality of processors
JPH0246970B2 (en) MEMORIKA KUCHOHOSHIKI
JPH0916468A (en) Memory access system
JPH03202921A (en) Sequence controller
JP3190945B2 (en) Micro program control circuit
JPS6022250A (en) Computer equipment
JP3088285B2 (en) In-circuit emulator
JPH059815B2 (en)
JPS6336339A (en) Memory expanding circuit for cpu
JPH0731527B2 (en) Programmable controller
JP2506591B2 (en) Auxiliary processor
JPH059814B2 (en)
JPS59139199A (en) Protecting method of storage
JPH04242453A (en) Switch controller for storage device
JPS642971B2 (en)
JPH09106347A (en) Information processor and stack storing method for information processor
JPH10289149A (en) Memory access device
JPH10134013A (en) Multi-cpu system