JPH08305586A - Microcomputer - Google Patents
MicrocomputerInfo
- Publication number
- JPH08305586A JPH08305586A JP7105414A JP10541495A JPH08305586A JP H08305586 A JPH08305586 A JP H08305586A JP 7105414 A JP7105414 A JP 7105414A JP 10541495 A JP10541495 A JP 10541495A JP H08305586 A JPH08305586 A JP H08305586A
- Authority
- JP
- Japan
- Prior art keywords
- register
- data
- microcomputer
- memory
- logic unit
- 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
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、割り込み処理を効率よ
く実行するのに好適なマイクロコンピュータの構成に関
する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microcomputer configuration suitable for efficiently executing interrupt processing.
【0002】[0002]
【従来の技術】図3は、従来のマイクロコンピュータの
構成を示す図である。図3において、(1)はROMで
あり、該ROM(1)の記憶領域に割り振られた複数の
アドレスに、マイクロコンピュータの動作を制御する為
の複数のプログラムデータDATAが事前に記憶された
ものである。(2)は制御回路であり、各場合に応じた
前記ROM(1)のアドレスをアクセスするアドレスデ
ータADDを出力し、該アドレスデータADDに対応す
る前記ROM(1)のアドレスから読み出されたプログ
ラムデータDATAを取り込んで解読し、この解読結果
に基づきマイクロコンピュータの動作制御を行うもので
ある。(3)(4)は各々nビットのレジスタであり、
制御回路(2)の制御出力により、データの保持動作を
行える状態に制御される。例えば、レジスタ(3)及び
レジスタ(4)には、各々所定の計数値となっているカ
ウンタCTR1及びCTR2のnビットデータがデータ
バス(5)を介して保持されるものとする。尚、レジス
タ(3)(4)にセットされるデータは前記カウンタC
TR1及びCTR2の計数値に限定されず、演算を行い
たい2種類のnビットデータを入力ポート(図示せず)
を介してマイクロコンピュータ内部に取り込み、前記2
種類のnビットデータをデータバス(5)を介してレジ
スタ(3)(4)に保持したりしてもよく、即ちレジス
タ(3)(4)へのセットが可能であれば如何なるデー
タであっても対象となる。(6)は演算論理ユニットで
あり、レジスタ(3)(4)に保持された各nビットデ
ータに対して所定の論理演算(加算、減算等)を行い、
この結果得られたnビットデータを再び一方のレジスタ
(3)に保持させるものである。2. Description of the Related Art FIG. 3 is a diagram showing a configuration of a conventional microcomputer. In FIG. 3, (1) is a ROM, and a plurality of program data DATA for controlling the operation of the microcomputer are stored in advance at a plurality of addresses assigned to the storage area of the ROM (1). Is. Reference numeral (2) is a control circuit, which outputs address data ADD for accessing the address of the ROM (1) corresponding to each case, and is read from the address of the ROM (1) corresponding to the address data ADD. The program data DATA is fetched and decoded, and the operation of the microcomputer is controlled based on the decoding result. (3) and (4) are n-bit registers,
The control output of the control circuit (2) controls the data holding operation. For example, it is assumed that the register (3) and the register (4) hold n-bit data of the counters CTR1 and CTR2, each of which has a predetermined count value, via the data bus (5). The data set in the registers (3) and (4) is the counter C.
Not limited to the count values of TR1 and CTR2, but two types of n-bit data to be operated are input ports (not shown)
Via the computer to the inside of the microcomputer,
The n-bit data of a kind may be held in the registers (3) and (4) via the data bus (5), that is, any data can be set in the registers (3) and (4). Even the target. (6) is an arithmetic logic unit, which performs a predetermined logical operation (addition, subtraction, etc.) on each n-bit data held in the registers (3) and (4),
The n-bit data obtained as a result is held in one register (3) again.
【0003】マイクロコンピュータは一般に上記の如く
構成されているが、ここで、レジスタ(3)(4)の内
容に論理演算を施すメインプログラムの実行中に、何ら
かの要因により割り込み要求が発生した場合、前記メイ
ンプログラムの実行に代わり前記割り込み要求に基づく
サブルーチンプログラムを実行しなければならない。そ
の為に、前記メインプログラムは実行された時点までの
状態で処理を一旦中断され、前記サブルーチンプログラ
ムが終了するまで前記メインプログラムに基づく処理デ
ータを一時待避させておく必要がある。具体的には、ス
タックメモリ(7)が設けられており、前記割り込み要
求が発生すると、スタックメモリ(7)が制御回路
(2)の制御信号で制御され、スタックメモリ(7)の
スタック領域STACK1及びSTACK2に各々メイ
ンプログラム中断時におけるレジスタ(3)(4)の値
がデータバス(5)を介して一時待避される。こうし
て、レジスタ(3)(4)及び演算論理ユニット(6)
を用いてサブルーチン処理が実行可能となる。尚、サブ
ルーチン処理は、制御回路(2)が割り込み要求により
特定されるROM(1)のアドレスをアクセスし、即ち
メインプログラム実行時のアドレスからサブルーチンプ
ログラム処理を行うアドレスにジャンプすることにより
実行される。The microcomputer is generally constructed as described above. Here, if an interrupt request occurs due to some factor during the execution of the main program for performing a logical operation on the contents of the registers (3) and (4), Instead of executing the main program, a subroutine program based on the interrupt request must be executed. Therefore, it is necessary to suspend the processing of the main program until it is executed, and temporarily save the processing data based on the main program until the subroutine program ends. Specifically, a stack memory (7) is provided, and when the interrupt request occurs, the stack memory (7) is controlled by the control signal of the control circuit (2), and the stack area STACK1 of the stack memory (7) is controlled. In STACK2 and STACK2, the values of the registers (3) and (4) at the time of interruption of the main program are temporarily saved via the data bus (5). Thus, the registers (3) (4) and the arithmetic logic unit (6)
Subroutine processing can be executed using. The subroutine processing is executed by the control circuit (2) accessing the address of the ROM (1) specified by the interrupt request, that is, jumping from the address at the time of executing the main program to the address at which the subroutine program processing is performed. .
【0004】[0004]
【発明が解決しようとする課題】しかしながら、割り込
み要求に基づくメインプログラムからサブルーチンプロ
グラムへの移行時に、レジスタ(3)(4)の両方の内
容をスタックメモリ(7)のスタック領域に一時待避さ
せる必要がある為、一時待避に時間がかかり、その結
果、割り込み処理時間が長くなる問題があった。However, it is necessary to temporarily save the contents of both the registers (3) and (4) in the stack area of the stack memory (7) at the time of transition from the main program to the subroutine program based on the interrupt request. Therefore, there is a problem that it takes a long time to temporarily save, and as a result, the interrupt processing time becomes long.
【0005】そこで、本発明は、割り込み要求に基づく
プログラム処理への移行時間を短縮できるマイクロコン
ピュータを提供することを目的とする。Therefore, an object of the present invention is to provide a microcomputer capable of shortening the transition time to program processing based on an interrupt request.
【0006】[0006]
【課題を解決するための手段】本発明は、前記問題点を
解決する為に成されたものであり、その特徴とするとこ
ろは、プログラム命令に従って2つの被演算データに所
定の演算を施すマイクロコンピュータにおいて、一方の
被演算データが保持される一時待避メモリと、他方の被
演算データが保持されるレジスタと、一方の入力に前記
一時待避メモリに保持された一方の被演算データが印加
されると共に他方の入力に前記レジスタに保持された他
方の被演算データが印加され、両方の被演算データに対
して所定の演算を施した結果を前記レジスタに再び保持
させる演算論理ユニットと、を備え、割り込み要求発生
時、前記レジスタの保持内容のみを前記一時待避メモリ
に一時待避させ、前記割り込み要求に基づくプログラム
処理を実行可能とした点である。SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and is characterized in that a micro-processor for performing a predetermined operation on two operand data according to a program instruction. In a computer, a temporary save memory holding one operated data, a register holding the other operated data, and one operated data held in the temporary saved memory are applied to one input. Along with the other input, the other operated data held in the register is applied, and an arithmetic logic unit for holding again the result of performing a predetermined operation on both operated data in the register, When an interrupt request occurs, only the contents held in the register are temporarily saved in the temporary save memory, and the program processing based on the interrupt request can be executed. Was the point.
【0007】[0007]
【作用】本発明によれば、演算論理ユニットの一方の入
力には、一時待避メモリに保持された一方の被演算デー
タが印加され、前記演算論理ユニットの他方の入力に
は、レジスタに保持された他方の被演算データが印加さ
れ、演算論理ユニットの演算出力が再びレジスタに保持
される構成とした。従って、割り込み要求が発生したと
しても、レジスタの内容のみを一時待避メモリに一時待
避させるだけで済み、割り込み処理に移行する際の時間
を短縮できる。According to the present invention, one input of the operation logic unit held in the temporary save memory is applied to one input of the operation logic unit, and the other input of the operation logic unit is held in the register. The other processed data is applied, and the operation output of the operation logic unit is held in the register again. Therefore, even if an interrupt request occurs, only the contents of the register need only be temporarily saved in the temporary save memory, and the time required to shift to interrupt processing can be shortened.
【0008】[0008]
【実施例】本発明の詳細を図面に従って具体的に説明す
る。図1は本発明のマイクロコンピュータの第1の実施
例を示す図である。図1において、(8)はROM(メ
モリ)であり、マイクロコンピュータをメインルーチン
又はサブルーチンで動作させる為のプログラム命令が記
憶されている。(9)は制御回路であり、ROM(8)
と制御回路(9)との間では、制御回路(9)からアド
レスデータADDが出力されると、ROM(8)の該当
するアドレスがアクセスされ、ROM(9)の該当アド
レスから読み出されたプログラムデータDATAが制御
回路(9)で解読され、この解読結果に基づきマイクロ
コンピュータの動作が制御される。(10)はスタック
メモリ(一時待避メモリ)であり、後述する演算論理ユ
ニットで演算されるべき一方の被演算データが保持され
る機能を有している。該スタックメモリ(10)は、制
御回路(9)の制御出力で一時待避動作を制御され、メ
インプログラムを中断した直後のアドレス情報がスタッ
ク領域の所定の階層に一時待避される機能を有してい
る。(11)はnビット構成のレジスタであり、前記演
算論理ユニットで演算されるべき他方の被演算データを
保持するものである。該レジスタ(11)は制御回路
(9)の制御出力でデータの保持動作を行える状態とな
る。BRIEF DESCRIPTION OF THE DRAWINGS FIG. FIG. 1 is a diagram showing a first embodiment of the microcomputer of the present invention. In FIG. 1, (8) is a ROM (memory) in which program instructions for operating the microcomputer in a main routine or a subroutine are stored. (9) is a control circuit, ROM (8)
Between the control circuit (9) and the control circuit (9), when the control circuit (9) outputs the address data ADD, the corresponding address of the ROM (8) is accessed and read from the corresponding address of the ROM (9). The program data DATA is decoded by the control circuit (9), and the operation of the microcomputer is controlled based on the decoding result. Reference numeral (10) is a stack memory (temporary save memory), which has a function of holding one processed data to be operated by an operation logic unit described later. The stack memory (10) has a function of temporarily saving the temporary save operation by the control output of the control circuit (9) and temporarily saving the address information immediately after the main program is interrupted in a predetermined hierarchy of the stack area. There is. Reference numeral (11) is an n-bit register, which holds the other operated data to be operated by the operation logic unit. The register (11) is in a state where the data holding operation can be performed by the control output of the control circuit (9).
【0009】ここで、スタックメモリ(10)のスタッ
ク領域STACK1及びレジスタ(11)には、各々所
定の計数値となっているカウンタCTR1及びCTR2
のnビットデータがデータバス(12)を介して保持さ
れるものとする。尚、両者に保持されるデータは前記カ
ウンタCTR1及びCTR2の計数値に限定されず、演
算を行いたい2種類のnビットデータを入力ポート(図
示せず)を介してマイクロコンピュータ内部に取り込
み、前記2種類のnビットデータをデータバス(12)
を介して両者に保持したりしてもよく、即ち両者への保
持が可能であれば如何なるデータであっても対象とな
る。Here, in the stack area STACK1 of the stack memory (10) and the register (11), counters CTR1 and CTR2 having predetermined count values are provided.
It is assumed that the n-bit data of is held via the data bus (12). The data held in both are not limited to the count values of the counters CTR1 and CTR2, and two types of n-bit data to be calculated are fetched into the microcomputer via an input port (not shown), Data bus for two types of n-bit data (12)
May be held in both sides via, ie any data can be held as long as it can be held in both sides.
【0010】(13)は演算論理ユニットであり、一方
の入力はスタックメモリ(10)と直接接続され即ち一
方の入力には一方の被演算データが直接印加される。ま
た、演算論理ユニット(13)の他方の入力はレジスタ
(11)の出力と直接接続されて他方の被演算データが
直接印加される。また、演算論理ユニット(13)が両
方の被演算データに対して行ったnビットの演算結果
(加算、減算等)はレジスタ(11)に再び保持され
る。Numeral (13) is an arithmetic logic unit, one input of which is directly connected to the stack memory (10), that is, one operand data is directly applied to one input. Further, the other input of the arithmetic logic unit (13) is directly connected to the output of the register (11) so that the other operated data is directly applied. Further, the n-bit operation result (addition, subtraction, etc.) performed by the operation logic unit (13) on both operand data is held in the register (11) again.
【0011】以上の如く構成されたマイクロコンピュー
タにおいて、メインプログラムの実行中、特にレジスタ
(11)の値を使用して演算論理ユニット(13)で演
算処理を行っている最中に、何らかの要因により割り込
み要求が発生した場合、レジスタ(11)の値のみをス
タックメモリ(10)に一時待避させ、メインプログラ
ムを一旦中断して割り込み要求に基づくサブルーチン処
理の実行に移行できる。具体的には、一方の被演算デー
タが既にスタックメモリ(10)から読み出されている
為、レジスタ(11)に保持された演算結果をスタック
メモリ(10)のスタック領域STACK1に一時待避
させればよい。即ち、1個のレジスタ(11)の値のみ
を一時待避するだけで済む。In the microcomputer configured as described above, during execution of the main program, particularly during execution of arithmetic processing in the arithmetic logic unit (13) by using the value of the register (11), it is caused by some factor. When an interrupt request occurs, only the value of the register (11) is temporarily saved in the stack memory (10), the main program is temporarily interrupted, and execution of subroutine processing based on the interrupt request can be performed. Specifically, since one of the operated data has already been read from the stack memory (10), the operation result held in the register (11) is temporarily saved in the stack area STACK1 of the stack memory (10). Good. That is, only the value of one register (11) needs to be temporarily saved.
【0012】尚、割り込み要求に基づくサブルーチン処
理が何重にも重なった場合でも、レジスタ(11)の値
のみをスタックメモリ(10)に一時待避するだけで済
み、各サブルーチン処理を従来に比べて速く実行でき
る。また、図2は本発明の第2の実施例を示す図であ
る。図1及び図2の間で同一構成については同一番号を
記し、その説明を省略するものとする。図1と構成上で
異なる点は、演算論理ユニット(14)が両方の入力に
ラッチ機能を有するテンポラリレジスタT1及びT2を
有している点である。これにより、図1及び図2では動
作的に以下の点で異なる。即ち、図1の場合は、スタッ
クメモリ(10)のスタック領域STACK1及びレジ
スタ(11)に保持された両方の被演算データを演算論
理ユニット(13)に直接印加させる構成とし、更に演
算論理ユニット(13)の演算結果を直接レジスタ(1
1)に保持させる構成としているが、これに対し、図2
では、スタックメモリ(10)のスタック領域STAC
K1及びレジスタ(11)に保持された両方の被演算デ
ータを、各々データバス(12)を介して演算論理ユニ
ット(14)のテンポラリレジスタT1及びT2に一旦
保持し、その後演算を行いこの結果得られた演算結果を
再びデータバス(12)を介してレジスタ(11)に保
持させる構成としている。図1では、スタックメモリ
(10)及びレジスタ(11)を演算論理ユニット(1
3)と直接接続していることから、演算速度が速まる利
点があり、図2では、各構成とデータバス(12)との
接続線を短くできる利点がある。Even if a number of sub-routine processes based on interrupt requests are overlapped, only the value of the register (11) needs to be temporarily saved in the stack memory (10). It can run fast. 2 is a diagram showing a second embodiment of the present invention. 1 and 2, the same components are designated by the same reference numerals, and the description thereof will be omitted. A structural difference from FIG. 1 is that the arithmetic logic unit (14) has temporary registers T1 and T2 having a latch function at both inputs. As a result, the operation of FIGS. 1 and 2 differs in the following points. That is, in the case of FIG. 1, both the processed data held in the stack area STACK1 of the stack memory (10) and the register (11) are directly applied to the arithmetic logic unit (13), and further the arithmetic logic unit ( The calculation result of 13) is directly registered in the register (1
1), but the structure shown in FIG.
Then, the stack area STAC of the stack memory (10)
Both the data to be operated held in K1 and the register (11) are once held in the temporary registers T1 and T2 of the operation logic unit (14) via the data bus (12), and then the operation is performed to obtain the result. The calculation result thus obtained is again held in the register (11) via the data bus (12). In FIG. 1, the stack memory (10) and the register (11) are shown as arithmetic logic units (1
Since it is directly connected to 3), there is an advantage that the calculation speed is increased, and in FIG. 2, there is an advantage that the connection line between each configuration and the data bus (12) can be shortened.
【0013】[0013]
【発明の効果】本発明によれば、一方の被演算データ
を、一時待避メモリに保持させ演算論理ユニットに印加
させる構成とした為、割り込み要求が発生した場合で
も、他方の被演算データ又は演算処理データを保持する
1個のレジスタの値のみを一時待避メモリに待避させる
だけで済み、割り込み要求に基づくプログラム処理への
移行時間を短縮できる利点が得られる。According to the present invention, one operated data is held in the temporary save memory and applied to the arithmetic logic unit. Therefore, even when an interrupt request occurs, the other operated data or operation is performed. Only the value of the one register that holds the processed data need only be saved in the temporary save memory, and there is an advantage that the transition time to the program processing based on the interrupt request can be shortened.
【図1】本発明のマイクロコンピュータの第1の実施例
を示す図である。FIG. 1 is a diagram showing a first embodiment of a microcomputer of the present invention.
【図2】本発明のマイクロコンピュータの第2の実施例
を示す図である。FIG. 2 is a diagram showing a second embodiment of the microcomputer of the present invention.
【図3】従来のマイクロコンピュータの構成を示す図で
ある。FIG. 3 is a diagram showing a configuration of a conventional microcomputer.
(10) スタックメモリ (11) レジスタ (13) 演算論理ユニット (10) Stack memory (11) Register (13) Arithmetic logic unit
Claims (2)
ータに所定の演算を施すマイクロコンピュータにおい
て、 一方の被演算データが保持される一時待避メモリと、 他方の被演算データが保持されるレジスタと、 一方の入力に前記一時待避メモリに保持された一方の被
演算データが印加されると共に他方の入力に前記レジス
タに保持された他方の被演算データが印加され、両方の
被演算データに対して所定の演算を施した結果を前記レ
ジスタに再び保持させる演算論理ユニットと、を備え、 割り込み要求発生時、前記レジスタの保持内容のみを前
記一時待避メモリに一時待避させ、前記割り込み要求に
基づくプログラム処理を実行可能としたことを特徴とす
るマイクロコンピュータ。1. A microcomputer for performing a predetermined operation on two operand data according to a program instruction, a temporary save memory for retaining one operand data, a register for retaining the other operand data, and One of the operated data held in the temporary saving memory is applied to the input of the other and the other operated data held in the register is applied to the other input, and a predetermined value is applied to both of the operated data. An arithmetic logic unit for holding the result of the operation again in the register, when an interrupt request occurs, only the contents held in the register are temporarily saved in the temporary save memory, and the program processing based on the interrupt request is executed. A microcomputer characterized in that it is possible.
セスし該メモリから読み出されたプログラム命令を解読
する制御回路を備え、前記制御回路の前記プログラム命
令の解読結果に基づき、前記一時待避メモリ、前記レジ
スタ及び前記演算論理ユニットの動作を制御することを
特徴とする請求項1記載のマイクロコンピュータ。2. A control circuit for accessing a memory storing a program command to decode the program command read from the memory, wherein the temporary save memory, the control circuit, based on the decoding result of the program command of the control circuit. 2. The microcomputer according to claim 1, which controls operations of a register and the arithmetic logic unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10541495A JP3239042B2 (en) | 1995-04-28 | 1995-04-28 | Microcomputer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10541495A JP3239042B2 (en) | 1995-04-28 | 1995-04-28 | Microcomputer |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08305586A true JPH08305586A (en) | 1996-11-22 |
JP3239042B2 JP3239042B2 (en) | 2001-12-17 |
Family
ID=14406956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10541495A Expired - Fee Related JP3239042B2 (en) | 1995-04-28 | 1995-04-28 | Microcomputer |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3239042B2 (en) |
-
1995
- 1995-04-28 JP JP10541495A patent/JP3239042B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3239042B2 (en) | 2001-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4274138A (en) | Stored program control system with switching between instruction word systems | |
US5757685A (en) | Data processing system capable of processing long word data | |
JP3790626B2 (en) | Method and apparatus for fetching and issuing dual word or multiple instructions | |
JP3180175B2 (en) | Instruction level parallel processing control method and processor | |
KR100206350B1 (en) | Central processor | |
JP3239042B2 (en) | Microcomputer | |
JPH08305564A (en) | Microcomputer | |
US6233675B1 (en) | Facility to allow fast execution of and, or, and test instructions | |
JPH08305587A (en) | Microcomputer | |
JP3520372B2 (en) | Elimination of critical path in operation of memory control unit and input / output control unit | |
JPH08305588A (en) | Microcomputer | |
US20050216708A1 (en) | Processor for performing context switching, a method for performing context switching, a computer program for perform context switching | |
JPH04280334A (en) | One chip microcomputer | |
JPS59218569A (en) | Microcomputer | |
JP2000029696A (en) | Processor, and pipeline process control method | |
JPS6242301B2 (en) | ||
US6289439B1 (en) | Method, device and microprocessor for performing an XOR clear without executing an XOR instruction | |
JP3147884B2 (en) | Storage device and information processing device | |
JPH05250161A (en) | Microcomputer device | |
JPH0258648B2 (en) | ||
JP2629479B2 (en) | Information processing device | |
JPH11249907A (en) | Microcomputer | |
JP2001166918A (en) | Processor system | |
JPS63263536A (en) | Information processor | |
JPS5942331B2 (en) | Prosetsusasouchinoseigiohoshiki |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |