JPS58107963A - Interruption processor - Google Patents
Interruption processorInfo
- Publication number
- JPS58107963A JPS58107963A JP20873581A JP20873581A JPS58107963A JP S58107963 A JPS58107963 A JP S58107963A JP 20873581 A JP20873581 A JP 20873581A JP 20873581 A JP20873581 A JP 20873581A JP S58107963 A JPS58107963 A JP S58107963A
- Authority
- JP
- Japan
- Prior art keywords
- bank number
- program
- interrupt
- instruction code
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/462—Saving or restoring of program or task context with multiple register sets
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
Description
【発明の詳細な説明】
、本発明は、マイクロコンピュータ(以下MPUと称す
)において、割込要因毎に割込処理プログラムを実行し
得る割込処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an interrupt processing device capable of executing an interrupt processing program for each interrupt factor in a microcomputer (hereinafter referred to as MPU).
従来、MPUにおける割込要因別の処理プログラムは、
MPU直接アクセスのメモリアドレス領域内にレイアウ
トされており、割込要因別に格納アドレスを振り当てて
いる。そして、割込発生によりその必要な割込処理プロ
グラムへ移行させていた。Conventionally, the processing program for each interrupt factor in the MPU is
It is laid out in the memory address area for direct access by the MPU, and storage addresses are assigned to each interrupt factor. Then, when an interrupt occurs, a transition is made to the necessary interrupt processing program.
ところが、MPU使用機器は、近年、高度な機能、複雑
な処理を要求されてきており、割込要因の数が多く、そ
の割込処理プログラム量も益々多くなる傾向にある。こ
のため、従来の割込処理方式では、割込処理プログラム
量が多くなる程に、その格納領域の、MPU直接アクセ
スメモリ領域に対する比率が大きくなり、通常の処理プ
ログラム領域を圧迫し、時にはMPU直接アクセスメモ
リ領域内に格納できなくなることもあった。However, in recent years, devices using MPUs have been required to have advanced functions and complicated processing, and the number of interrupt factors has increased, and the amount of interrupt processing programs has also tended to increase. For this reason, in conventional interrupt processing methods, as the amount of interrupt processing programs increases, the ratio of the storage area to the MPU direct access memory area increases, putting pressure on the normal processing program area, and sometimes causing the MPU direct access memory Sometimes it became impossible to store data within the area.
このように、必要とされるメモリ容量がMPU直接アク
セスのメモリアドレス領域内に格納しきれない場合、メ
モリをバンクと言う概念で切替えることか行なわれてい
る。しかし1、通常処理プログラムを実行中にバンクを
切替えることは、バンク切替えプログラムを通常処理プ
ログラムの随所に挿入する必要が生じ、プログラム構成
が非常に炉外になる。As described above, when the required memory capacity cannot be stored in the memory address area directly accessed by the MPU, memory is switched using the concept of banks. However, 1. Switching banks while the normal processing program is being executed requires inserting the bank switching program at various places in the normal processing program, which makes the program configuration very unconventional.
そこで、本発明は、通常処理プログラムのプログラム構
成の煩雑化を防止すると共に、メモリアドレス領域を効
率よく利用できるようにした割込処理装置を提供するこ
とを目的とする。SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide an interrupt processing device that can prevent the program configuration of a normal processing program from becoming complicated and can efficiently utilize a memory address area.
この目的を達成するため、本発明においては、メモリア
ドレス領域の一部を重複させ、重複したメモリアドレス
領域をバンク番号で切替えることとし、重複したメモリ
アドレス領域のバンク番号毎に割込要因別の処理プログ
ラムを格納する。通常処理プログラムは、MPU直接ア
クセスのメモリアドレス領域内にレイアウトされて、バ
ンク番号Oで動作しているか、割込が発生すると発生要
因に従ってバンク番号を切替え、割込処理プログラムへ
移行させる。これにより、通常処理プログラムのプログ
ラム構成の煩雑化を避け、メモリアドレス領域を効率よ
く有効に使用する“ことが可能となった。In order to achieve this objective, in the present invention, a part of the memory address area is overlapped, and the overlapped memory address area is switched by bank number, and the interrupt factor is specified for each bank number of the overlapped memory address area. Stores the processing program. The normal processing program is laid out in a memory address area directly accessed by the MPU, and operates at bank number O, or when an interrupt occurs, the bank number is switched according to the cause of the interrupt, and the program moves to the interrupt processing program. This makes it possible to avoid complicating the program structure of the normal processing program and to use the memory address area efficiently and effectively.
第1図は本発明に係る割込処理装置のブロック図である
。図において、1はMPUである。このM P U’
lは通常処理プログラムの実行中は、バンク番号を0と
し、MPU直接アクセスのメモリ領域を使用して動作し
ている。MPU直接アクセスのメモリアドレス領域の一
部は、重ネ(シたメモリアドレス領域を有する。例えば
第2図Jこ示すように、64にバイトのMPU直接アク
セスメモリにおいて、メモリアドレス0800H〜0F
FFHに割込要因1の処理プログラム、割込要因2の処
理プログラム103.のメモリ領域を重複させ、この各
々のメモリ領域にバンク番号1.2110.を振り当て
る。そして、このバンク番号1.2111.によって各
メモリ領域の切替えを行なうのである。FIG. 1 is a block diagram of an interrupt processing device according to the present invention. In the figure, 1 is an MPU. This MPU'
During the execution of the normal processing program, I sets the bank number to 0 and operates using the memory area directly accessed by the MPU. A part of the memory address area for MPU direct access has a double memory address area. For example, as shown in FIG.
A processing program for interrupt factor 1 and a processing program for interrupt factor 2 are placed in FFH. The memory areas of 1.2110. Allocate. And this bank number 1.2111. The switching of each memory area is performed by the following.
2はバンク番号を発生するバンク番号発生回路である。2 is a bank number generation circuit that generates a bank number.
このバンク番号発生回路2はプライオリティ拳エンコー
ダ3、ラッチ回路4及びデコーダ5を備えて構成されて
いる。プライオリティ・エンコーダ3は予め定められた
優先順位で割込要因1(i=1〜n)を選択し、割込要
因iのバイナリ−コードを出力する。ラッチ回路4及び
デコーダ5は前記プライオリティ会エンコーダ3によっ
てコード化された割込要因iをバンク番号としてラッチ
し、かつデコードする。The bank number generation circuit 2 includes a priority encoder 3, a latch circuit 4, and a decoder 5. The priority encoder 3 selects interrupt factor 1 (i=1 to n) in a predetermined priority order and outputs the binary code of interrupt factor i. The latch circuit 4 and decoder 5 latch the interrupt factor i encoded by the priority encoder 3 as a bank number, and decode it.
6はMPU直接アクセス可能なメモリであり、6.0〜
6.nは互いに重複するバンク番号0〜nの各メモリア
ドレス領域を示している。6 is memory that can be directly accessed by the MPU, and is 6.0~
6. n indicates each memory address area of bank numbers 0 to n that overlap with each other.
7は割込処理プログラムへ移行させる移行命令を発生す
る移行命令コード発生回路、8は復帰命令コード判定回
路である。第3図は前記移行命令コード発生回路7の具
体的なブロック図を示し、MPU 1から与えられる割
込応答信号I NTA及び命令フェッチサイクル信号の
論理積をとるアンド回路7a、命令コード設定回路7b
等を備えて構成される。7 is a transition instruction code generation circuit that generates a transition instruction for transitioning to the interrupt processing program; 8 is a return instruction code determination circuit. FIG. 3 shows a concrete block diagram of the transition instruction code generation circuit 7, including an AND circuit 7a which takes the AND of the interrupt response signal INTA applied from the MPU 1 and the instruction fetch cycle signal, and an instruction code setting circuit 7b.
It is composed of the following.
復帰命令コード判定回路8はMPU 1の命令フェッチ
サイクル時、データバス9tの命令コードと復帰命令コ
ードとを比較判定し、両信号が一致したとき、前記ラッ
チ回路4のラッチをクリアする。第4図はこの復帰命令
コード判定回路8の具体的なブロック図を示している。A return instruction code determination circuit 8 compares and determines the instruction code on the data bus 9t and the return instruction code during an instruction fetch cycle of the MPU 1, and when the two signals match, clears the latch of the latch circuit 4. FIG. 4 shows a concrete block diagram of this return instruction code determination circuit 8.
この実施例においては、命令コード設定回路8aからの
復帰命令コードとデータバス9からの命令コードとを比
較回路8bで比較し、その一致信号をアンド回路8cに
入力してMPU 1からの命令フェッチサイクル信号と
の論理積をとり、論理積条件が整ったとき、バンク番号
発生回路2のラッチ回路4にリセッI=信号を送り、ラ
ッチ回路4のラッチをクリアする構成となっている。In this embodiment, the return instruction code from the instruction code setting circuit 8a and the instruction code from the data bus 9 are compared in the comparison circuit 8b, and the match signal is input to the AND circuit 8c to fetch the instruction from the MPU 1. The configuration is such that an AND with the cycle signal is taken, and when the AND conditions are met, a reset I= signal is sent to the latch circuit 4 of the bank number generation circuit 2, and the latch of the latch circuit 4 is cleared.
上記の構成において、割込要因iが発生すると、オア回
路lOを介して割込信号INTがMPU1に入力される
。この割込信号INTの入力によりMPU 1が割込発
生を認知し、割込処理プログラムへ移行する時、MPU
1から前記バンク番号発生回路2及び移行命令コード
発生回路7に対して割込応答信号I NTAが入力され
る。この割込応答信号I NTAが移行命令コード発生
回路7に与えられると、移行命令コード発生回路7より
MPUIに対1〜て重複されたメモリアドレス領域内の
特定アドレスへ処理プログラムを移行させる命令、例え
ば再スタート命令やコール命令等が与えられる。一方、
バンク番号発生回路2のう・ソチ回路4において、割込
応答信号I NTAの後縁で割込要因iによるバンク番
号iをラッチする。In the above configuration, when an interrupt factor i occurs, an interrupt signal INT is input to the MPU 1 via an OR circuit IO. When MPU 1 recognizes the occurrence of an interrupt by inputting this interrupt signal INT and moves to the interrupt processing program, MPU 1
1, an interrupt response signal INTA is inputted to the bank number generation circuit 2 and transfer instruction code generation circuit 7. When this interrupt response signal INTA is given to the transfer instruction code generation circuit 7, an instruction is issued from the transfer instruction code generation circuit 7 to transfer the processing program to a specific address in the memory address area overlapped with respect to MPUI. For example, a restart command, a call command, etc. are given. on the other hand,
In the circuit 4 of the bank number generation circuit 2, the bank number i due to the interrupt factor i is latched at the trailing edge of the interrupt response signal INTA.
ラッチされたパンク番号iはデコーダ5で解読され、重
複されたメモリアドレス領域から、パンク番号iのメモ
リアドレス領域6.iを選択する。そして、MPUIよ
りデータバス9を介してそのメモリアドレス領域6.i
内の特定アドレスへ処理プログラムを移行し、該当する
処理プログラムを実行する。The latched puncture number i is decoded by the decoder 5, and the memory address area 6. of the puncture number i is decoded from the duplicated memory address area. Select i. Then, the memory address area 6. is sent from the MPUI via the data bus 9. i
The processing program is migrated to a specific address within, and the corresponding processing program is executed.
割込処理プログラムの実行処理時、通常処理プログラム
へ復帰させるため、割込処理プログラムの最後に復帰命
令等を挿入しておき、この復帰命令をMPUIで読出し
、その復帰命令コードとデータバス9上の命令コードと
を復帰命令コード判定回路8で比較判定し、両コードが
一致したときバンク番号発生回路2を構成するラッチ回
路4のラッチをクリアする。これにより、パンク番号か
0となり、パンク番号Oのメモリア・ドレス領域がセレ
クi・され、MPU 1は、中断していた通常処理プロ
グラムへと復帰する。When executing an interrupt processing program, in order to return to the normal processing program, insert a return instruction at the end of the interrupt processing program, read this return instruction with MPUI, and read the return instruction code and data bus 9. The return instruction code determination circuit 8 compares and determines the instruction code of the bank number generation circuit 2 with the instruction code of the bank number generation circuit 2 when the two codes match. As a result, the puncture number becomes 0, the memory address area with the puncture number O is selected, and the MPU 1 returns to the interrupted normal processing program.
以−ヒ述べたように、本発明によれば、割込処理プログ
ラムをMPU直接アクセスメモリアドレス領域から削除
してバンクアドレス領域内に格納し、割込要因によりバ
ンクアドレスを切替えてアクセスさせることにより、通
常処理プログラムのプログラム構成の煩雑化を避け、メ
モリアドレス領域を効率良く使用することの可能な割込
処理装置を提供することができる。As described below, according to the present invention, the interrupt processing program is deleted from the MPU direct access memory address area, stored in the bank address area, and accessed by switching the bank address depending on the interrupt factor. It is possible to provide an interrupt processing device that can avoid complicating the program configuration of a normal processing program and efficiently use a memory address area.
第1図は本発明に係る割込処理装置のブロック図、第2
図はメモリマツプの一例を示す図、第3図は移行命令コ
ード発生回路の具体的なブロック図、第4図は復帰命令
コード判定回路の具体的なブロック図をそれぞれ示して
いる。
l・−−MPU
2・・・バンク番号発生回路
3・−串プライオリティ・エンコーダ
4書會・ラッチ回路
5・・・デコーダ
7・φ・移行命令コード発生回路
8Φ・・復帰命令コード判定回路
−31FIG. 1 is a block diagram of an interrupt processing device according to the present invention, and FIG.
3 shows an example of a memory map, FIG. 3 shows a specific block diagram of a transfer instruction code generation circuit, and FIG. 4 shows a specific block diagram of a return instruction code determination circuit. l・--MPU 2...Bank number generation circuit 3--Skew priority encoder 4 Library/latch circuit 5...Decoder 7・φ・Transition instruction code generation circuit 8φ...Return instruction code determination circuit-31
Claims (1)
モリの一部に複数個のメモリ領域を重複させ、その各々
のメモリ領域にメモリバンク番号を振り当てたメモリ構
成と、割込要因によりメモリバンク番号を発生させるバ
ンク番号発生回路と、割込によりプログラム処理を特定
アドレスに移行させる移行命令コード発生回路と、割込
処理から復帰したことを判定する復帰命令コード判定回
路とを備え、割込発生時にその割込要因により前記メモ
リバンク番号を変え、該当メモリエリアの特定アドレス
に移行させて割込処理を行なうと共に、割込処理復帰時
には割込処理移行前のメモリエリア及び該当アドレスに
復帰させることを特徴とする割込処理装置。(1) A memory configuration in which multiple memory areas are overlapped in a part of the directly accessible memory of a microcomputer and a memory bank number is assigned to each memory area, and a memory bank number is generated based on an interrupt factor. It is equipped with a bank number generation circuit, a transition instruction code generation circuit that shifts program processing to a specific address by an interrupt, and a return instruction code determination circuit that determines that the program has returned from interrupt processing. The memory bank number is changed depending on a factor, and the interrupt processing is performed by moving to a specific address of the corresponding memory area, and when returning to the interrupt processing, the memory bank number is returned to the memory area and the corresponding address before the transition to the interrupt processing. Interrupt processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20873581A JPS58107963A (en) | 1981-12-22 | 1981-12-22 | Interruption processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20873581A JPS58107963A (en) | 1981-12-22 | 1981-12-22 | Interruption processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS58107963A true JPS58107963A (en) | 1983-06-27 |
Family
ID=16561206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20873581A Pending JPS58107963A (en) | 1981-12-22 | 1981-12-22 | Interruption processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS58107963A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01131938A (en) * | 1987-11-17 | 1989-05-24 | Pfu Ltd | Memory extension control system |
JPH01161541A (en) * | 1987-12-18 | 1989-06-26 | Nec Corp | Single-chip microcomputer for evaluation |
JPH02126347A (en) * | 1988-11-04 | 1990-05-15 | Toyo Commun Equip Co Ltd | Memory access system |
-
1981
- 1981-12-22 JP JP20873581A patent/JPS58107963A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01131938A (en) * | 1987-11-17 | 1989-05-24 | Pfu Ltd | Memory extension control system |
JPH01161541A (en) * | 1987-12-18 | 1989-06-26 | Nec Corp | Single-chip microcomputer for evaluation |
JPH02126347A (en) * | 1988-11-04 | 1990-05-15 | Toyo Commun Equip Co Ltd | Memory access system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5305460A (en) | Data processor | |
US4937738A (en) | Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction | |
US5751988A (en) | Microcomputer with memory bank configuration and register bank configuration | |
US4057850A (en) | Processing link control device for a data processing system processing data by executing a main routine and a sub-routine | |
EP0240606B1 (en) | Pipe-line processing system and microprocessor using the system | |
JPS58107963A (en) | Interruption processor | |
IE61306B1 (en) | Method and device to execute two instruction sequences in an order determined in advance | |
US6134577A (en) | Method and apparatus for enabling address lines to access the high memory area | |
JPH01177145A (en) | Information processor | |
JPH01216429A (en) | Microcomputer | |
KR900015005A (en) | Ring Reduction Logic Mechanism | |
JPH0512107A (en) | Program execution system | |
JPS6410853B2 (en) | ||
JPS5958550A (en) | Instruction fetch trap control system | |
JPS6126701B2 (en) | ||
JPH0683986A (en) | Single chip microcomputer | |
JPS6226738B2 (en) | ||
JPS61202234A (en) | Address control circuit | |
JPS62151936A (en) | Cache circuit built in microprocessor | |
JPS60105048A (en) | Microprogram control system | |
JPS62264345A (en) | Processing system in address conversion exception mode of vector processor | |
JPS6218937B2 (en) | ||
JPS61264444A (en) | Data processing system for central processing unit | |
JPH0810429B2 (en) | Micro program controller | |
JPS5852261B2 (en) | Program processing method |