JPH09282165A - Information processor - Google Patents

Information processor

Info

Publication number
JPH09282165A
JPH09282165A JP8648696A JP8648696A JPH09282165A JP H09282165 A JPH09282165 A JP H09282165A JP 8648696 A JP8648696 A JP 8648696A JP 8648696 A JP8648696 A JP 8648696A JP H09282165 A JPH09282165 A JP H09282165A
Authority
JP
Japan
Prior art keywords
instruction
interrupt
information processing
processing apparatus
mask
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
JP8648696A
Other languages
Japanese (ja)
Other versions
JP3313969B2 (en
Inventor
Kosuke Yoshioka
康介 吉岡
Kozo Kimura
浩三 木村
Tokuzo Kiyohara
督三 清原
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP08648696A priority Critical patent/JP3313969B2/en
Publication of JPH09282165A publication Critical patent/JPH09282165A/en
Application granted granted Critical
Publication of JP3313969B2 publication Critical patent/JP3313969B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To perform the interruption masking control of a cycle unit without being accompanied by the increase of the resources of an instruction memory or the like and the deterioration of a processing speed in an information processor for parallelly executing processings in plural arithmetic circuits based on an LIW instruction or a VLIW(very long instruction word) instruction for specifying the parallelly executable plural processings. SOLUTION: This processor is provided with an interruption control part 1, the instruction memory 2, an instruction decoding part 3, a register part 4, the arithmetic circuit A5 and the arithmetic circuit B6 and bypasses the arithmetic result of the arithmetic circuit A5 to the arithmetic circuit 136 through a signal line 104 for bypassing. In this case, an the case that the instruction decoding part 3 judges that interruption masking is to be performed as the result of instruction decoding, masking signals are outputted through the signal line 101 to the interruption control part 1.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、並列実行可能な複
数の処理を指定するLIW命令又はVLIW命令に基づ
いて、複数の演算回路で処理を並列実行する情報処理装
置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus for executing processes in parallel by a plurality of arithmetic circuits based on a LIW instruction or a VLIW instruction designating a plurality of processes that can be executed in parallel.

【0002】[0002]

【従来の技術】近年、LIW(Long Instruction Wor
d)型や、VLIW(Very LongInstruction Word)型な
ど、並列実行可能な複数の処理の指定を、静的に命令コ
ード中に記述しておき、実行時に、複数の演算回路を用
いて、指定された処理を並列実行する情報処理装置が多
用されるようになっている。このような情報処理装置に
おける従来の動作について、以下に簡単に説明する。
2. Description of the Related Art In recent years, LIW (Long Instruction Worth)
d) type or VLIW (Very Long Instruction Word) type, etc., the specification of multiple processes that can be executed in parallel is statically described in the instruction code, and is specified by using multiple arithmetic circuits during execution. Information processing apparatuses that perform such processes in parallel have been widely used. The conventional operation of such an information processing apparatus will be briefly described below.

【0003】図7は、従来のLIW型情報処理装置の構
成の一例を示すブロック図である。同図に示される情報
処理装置は、割り込み制御部1、命令メモリ2、命令解
読部3、レジスタ部4、演算回路A5、演算回路B6を
備える。割り込み制御部1は、割り込み信号入力線10
0を通じて送られる外部からの割り込み信号を受け付け
て情報処理装置に対する割り込み制御を行う。
FIG. 7 is a block diagram showing an example of the configuration of a conventional LIW type information processing apparatus. The information processing apparatus shown in the figure includes an interrupt control unit 1, an instruction memory 2, an instruction decoding unit 3, a register unit 4, an arithmetic circuit A5, and an arithmetic circuit B6. The interrupt control unit 1 uses the interrupt signal input line 10
An interrupt signal from the outside sent through 0 is accepted and interrupt control for the information processing device is performed.

【0004】命令解読部3は、命令メモリ2に格納され
ている命令コード(以下「LIW命令」と呼ぶ)を解読
し、解読した結果に従って演算回路A5、演算回路B6
の制御及びレジスタ部4のリード・ライトの制御を行
う。レジスタ部4は、複数のレジスタから構成され、命
令解読部3に従い、データデータバス103を通じて演
算回路A5及び演算回路B6にデータを伝える。
The instruction decoding unit 3 decodes an instruction code (hereinafter referred to as "LIW instruction") stored in the instruction memory 2 and, according to the decoded result, an arithmetic circuit A5 and an arithmetic circuit B6.
Control and read / write control of the register unit 4 are performed. The register unit 4 is composed of a plurality of registers, and transmits data to the arithmetic circuits A5 and B6 through the data data bus 103 according to the instruction decoding unit 3.

【0005】演算回路A5及び演算回路B6は、データ
バス103から送られてきたデータに基づいて、演算を
実行する。演算結果は、データバス105を通じてレジ
スタ部4に書き戻される。演算回路A5と、演算回路B
6の入力側には、レジスタ部4から読み出されたデータ
をラッチするパイプラインラッチ201、202がそれ
ぞれ備えられており、また、演算回路A5と、演算回路
B6との間には、演算回路A5での演算結果を用いて演
算回路B6が演算を実行できるように、演算結果をバイ
パスして伝える信号線104が備えられている。パイプ
ラインラッチ202に、レジスタ部4からのデータと、
演算回路A5の演算結果とのどちらがラッチされるか
は、セレクタ203にて制御される。セレクタ203の
選択は、命令解読部3の解読結果に基づいて制御される
ように構成されている。
The arithmetic circuits A5 and B6 execute arithmetic operations based on the data sent from the data bus 103. The calculation result is written back to the register unit 4 through the data bus 105. Arithmetic circuit A5 and arithmetic circuit B
The input side of 6 is provided with pipeline latches 201 and 202 for latching the data read from the register unit 4, respectively, and between the arithmetic circuit A5 and the arithmetic circuit B6. A signal line 104 that bypasses and transmits the calculation result is provided so that the calculation circuit B6 can execute the calculation by using the calculation result in A5. In the pipeline latch 202, the data from the register unit 4,
Which of the calculation results of the calculation circuit A5 is latched is controlled by the selector 203. The selection of the selector 203 is configured to be controlled based on the decoding result of the instruction decoding unit 3.

【0006】以上のように構成された情報処理装置につ
いて、以下その動作を説明する。図8は、演算回路A
5、演算回路B6で実行されるLIW命令の一例を示
す。このLIW命令は上から順番に実行され、横一列の
命令は前記二つの演算回路で並列して実行される。add,
sub, mul, nopはそれぞれの演算回路で実行される命令
の演算種類である。なお、nopは演算回路において何も
実行されないことを示す。
The operation of the information processing apparatus configured as described above will be described below. FIG. 8 shows the arithmetic circuit A.
5 shows an example of the LIW instruction executed by the arithmetic circuit B6. The LIW instructions are executed in order from the top, and the horizontal row of instructions are executed in parallel by the two arithmetic circuits. add,
sub, mul, and nop are operation types of instructions executed by the respective operation circuits. Note that nop indicates that nothing is executed in the arithmetic circuit.

【0007】%g0〜%g7はレジスタ部4に備えられている
レジスタ名を示す。また、%pは演算回路A5の演算結果
が信号線104を介してパイプラインラッチ202に供
給されることを示している。即ち、このLIW命令にお
いて、例えば演算回路A5にて実行される"add %g0,%g
1,%p"という記述は、レジスタ%g0の値と、レジスタ%g1
の値とを加算し、演算結果をバイパスしてパイプライン
ラッチ202に供給する処理を表す。ここで、前記記述
における第1の記述子であるaddは、処理の種類を示す
コード(以下「オペコード」と呼ぶ)であり、第2、第
3の記述子である%g0及び%g1は、演算のソースレジスタ
を示し、第4の記述子%pは演算の結果を格納するディス
ティネーションレジスタを示している。この記述子の並
びによる意味付けは他の命令においても同様であるもの
とする。
% G0 to% g7 indicate register names provided in the register unit 4. Further,% p indicates that the calculation result of the calculation circuit A5 is supplied to the pipeline latch 202 via the signal line 104. That is, in this LIW instruction, for example, "add% g0,% g" executed by the arithmetic circuit A5 is executed.
"1,% p" means the value of register% g0 and the value of register% g1
And the value of 1 are added to bypass the operation result and supply it to the pipeline latch 202. Here, add, which is the first descriptor in the above description, is a code indicating the type of processing (hereinafter referred to as “opcode”), and the second and third descriptors% g0 and% g1 are The source register of the operation is shown, and the fourth descriptor% p shows the destination register for storing the result of the operation. The meaning given by the arrangement of the descriptors is the same in other instructions.

【0008】なお、以下の説明のために、前記第1〜第
4の記述子からなる記述を「命令」と称することとし、
addから始まる命令をadd命令、subから始まる命令をsub
命令、mulから始まる命令をmul命令、nopをnop命令と呼
ぶこととする。ただし、nop命令は演算が行われないこ
とを示す命令であるので、ソースレジスタもディスティ
ネーションレジスタも存在しない。
For the following description, the description consisting of the first to fourth descriptors will be referred to as "instruction",
Instructions that start with add are add instructions, and instructions that start with sub are sub
An instruction, an instruction starting with mul, is called a mul instruction, and a nop is called a nop instruction. However, since the nop instruction is an instruction indicating that the operation is not performed, neither the source register nor the destination register exists.

【0009】図9は、図8に示されるLIW命令を実行
する際に各々のパイプラインサイクルで実行される処理
を示すタイムチャートである。同図のサイクル1では、
命令解読部3において、add命令、nop命令が解読され
る。このサイクルにおいて、add命令はレジスタ部4よ
り%g0,%g1のレジスタのデータを読み出す。またnop命令
はレジスタの読み出しを行わない。
FIG. 9 is a time chart showing a process executed in each pipeline cycle when the LIW instruction shown in FIG. 8 is executed. In cycle 1 of the figure,
The instruction decoding unit 3 decodes the add instruction and the nop instruction. In this cycle, the add instruction reads the data of the registers% g0 and% g1 from the register unit 4. The nop instruction does not read the register.

【0010】サイクル2では、サイクル1でデータバス
103を通じて伝えられたデータをパイプラインラッチ
201、202にラッチし演算回路A5、及び演算回路
B6において演算を行う。この例においては、演算回路
A5においてはadd命令が実行されるが、演算回路B6
では実行すべき演算が存在しない。また、サイクル2に
おいては、次の命令であるsub命令、mul命令の解読も行
われる。図8に示されるようにmul命令のソースレジス
タは%pであるので、セレクタ203の制御によりバイパ
ス用の信号線104を通じて供給された演算回路A5の
演算結果がパイプラインラッチ202にラッチされる。
In the cycle 2, the data transmitted through the data bus 103 in the cycle 1 is latched in the pipeline latches 201 and 202, and the arithmetic circuits A5 and B6 perform arithmetic operations. In this example, the add instruction is executed in the arithmetic circuit A5, but the arithmetic circuit B6 is executed.
Then there is no operation to perform. In cycle 2, the next instruction, the sub instruction or the mul instruction, is also decoded. As shown in FIG. 8, since the source register of the mul instruction is% p, the operation result of the operation circuit A5 supplied through the bypass signal line 104 is latched by the pipeline latch 202 under the control of the selector 203.

【0011】サイクル3では、sub命令、mul命令が演算
回路A5及び演算回路B6で実行される。サイクル4
は、sub命令の演算結果をレジスタ部4のレジスタ%g7に
実際に書き戻す。以上のようなLIW命令の実行中に、
割り込みが発生した場合の処理について以下に説明す
る。
In cycle 3, the sub instruction and the mul instruction are executed by the arithmetic circuits A5 and B6. Cycle 4
Actually writes back the operation result of the sub instruction to the register% g7 of the register unit 4. While executing the LIW instruction as above,
The processing when an interrupt occurs will be described below.

【0012】割り込み発生時には、割り込みとともに通
常のプログラムの実行を一旦停止させ、割り込みの種類
に対応した所定の割り込みルーチンの実行を行う。この
際、割り込み終了時に、割り込みが発生した時点からの
実行再開を可能とするために、割り込みが発生した時点
のプロセッサの状態(以下「コンテキスト」と呼ぶ)を
退避する必要がある。一般的には、PCやプロセッサの
状態を示すプロセッサステータスレジスタ(以下「PS
R」と略称する)を割り込み処理により更新されない格
納場所に退避し、割り込み処理終了後にこれらを元の状
態に戻すという処理が必要となる。
When an interrupt occurs, the normal program execution is temporarily stopped together with the interrupt, and a predetermined interrupt routine corresponding to the type of interrupt is executed. At this time, at the end of the interrupt, it is necessary to save the state of the processor (hereinafter referred to as “context”) at the time of the interrupt so that the execution can be restarted from the time of the interrupt. Generally, a processor status register (hereinafter referred to as “PS
(Abbreviated as “R”) is saved in a storage location that is not updated by the interrupt processing, and after the interrupt processing is completed, it is necessary to restore these to the original state.

【0013】さらに、割り込み処理においてレジスタを
用いた演算を行う場合には、割り込み処理において使用
されるレジスタについても退避を行う必要が生じる。こ
こで、図9のようなパイプライン処理において、例えば
サイクル1において割り込みが発生したとする。前述の
とおり、サイクル1においては、add命令、nop命令が命
令解読部3において解読されている段階であり、演算回
路上では、両命令はまだ実行されていない状態にある。
従って、これらの命令は割り込みルーチンの終了後に再
度命令解読部3にて解読され、演算回路A5及び演算回
路B6において実行されることになる。
Further, when performing an operation using a register in the interrupt process, it is necessary to save the register used in the interrupt process. Here, in the pipeline processing as shown in FIG. 9, it is assumed that an interrupt occurs in cycle 1, for example. As described above, in the cycle 1, the add instruction and the nop instruction are being decoded by the instruction decoding unit 3, and both the instructions are not yet executed on the arithmetic circuit.
Therefore, these instructions are decoded again by the instruction decoding unit 3 after the completion of the interrupt routine, and are executed by the arithmetic circuits A5 and B6.

【0014】一方、サイクル2において割り込みが発生
したとすると、sub命令、mul命令については、割り込み
ルーチン終了後再度命令解読部3により解読を行い、演
算回路A5及び演算回路B6にて演算処理を行えばよい
が、サイクル1にて解読の行われたadd命令について
は、割り込みルーチン終了後に再度演算処理は行われな
いため、命令の演算結果を退避しておく必要が生じる。
これは、add命令の演算結果を退避しておかないと、割
り込みルーチン終了後にmul命令を実行するときにソー
スレジスタの値が消失してしまうからである。このよう
な場合に対処するため、図7の情報処理装置においては
パイプラインラッチ202を二重化し、割り込み発生時
に切り替えて使用できるように構成してある。
On the other hand, if an interrupt occurs in cycle 2, the sub instruction and the mul instruction are decoded again by the instruction decoding unit 3 after the interrupt routine is completed, and the arithmetic circuits A5 and B6 perform arithmetic processing. However, since the add instruction decoded in cycle 1 is not processed again after the interrupt routine is completed, it is necessary to save the operation result of the instruction.
This is because the value of the source register will be lost when the mul instruction is executed after the interrupt routine ends unless the operation result of the add instruction is saved. In order to deal with such a case, the information processing apparatus of FIG. 7 is configured so that the pipeline latch 202 is duplicated and can be switched and used when an interrupt occurs.

【0015】また、割り込み発生時の退避処理のオーバ
ーヘッドを削減し、かつ退避に必要な資源の増大を抑制
するため、特に演算装置が一つしかない情報処理装置に
おいて、割り込みマスクを使用する方法が用いられてい
る。この方法では、命令メモリ2に格納されるLIW命
令の中に、割り込みマスクの設定及び解除を行う命令を
記述しておくことにより、資源の退避が不要な状況での
み割り込みを受け付けるように制御する。このような方
法を用いた、LIW型情報処理装置の構成の一例を図1
0に示す。
Further, in order to reduce the overhead of save processing when an interrupt occurs and suppress the increase in resources required for save, there is a method of using an interrupt mask especially in an information processing apparatus having only one arithmetic unit. It is used. In this method, an instruction for setting and canceling an interrupt mask is described in the LIW instruction stored in the instruction memory 2 so that the interrupt is controlled only when the resource saving is unnecessary. . An example of the configuration of a LIW type information processing apparatus using such a method is shown in FIG.
0 is shown.

【0016】同図の情報処理装置の構成は図7に示した
ものとほとんど同一であるが、パイプラインラッチ20
2が二重化されていない点、データバス103から信号
線106を介して、割り込み制御部1に備えられた制御
レジスタ11に割り込み制御信号が送られている点が異
なっている。即ち、命令解読部3において、割り込みマ
スクの設定命令が解読されると、割り込み制御部1に備
えられている制御レジスタ11に割り込みマスクを設定
する旨の指示がなされ、制御レジスタ11のマスクビッ
トがオンとなる。その後、命令解読部3において割り込
みマスク解除の命令が解読されると前記制御レジスタ1
1のマスクビットがオフとなり、割り込みマスクが解除
される。
The configuration of the information processing apparatus shown in FIG. 3 is almost the same as that shown in FIG.
2 is not duplicated, and is different in that an interrupt control signal is sent from the data bus 103 to the control register 11 provided in the interrupt control unit 1 via the signal line 106. That is, when the instruction decoding unit 3 decodes the interrupt mask setting instruction, the control register 11 provided in the interrupt control unit 1 is instructed to set the interrupt mask, and the mask bit of the control register 11 is changed. It turns on. After that, when the instruction decoding unit 3 decodes the interrupt mask release instruction, the control register 1
The mask bit of 1 is turned off and the interrupt mask is released.

【0017】以上のような制御を行うことにより、PS
R及びパイプラインラッチの内容等の退避に必要な資源
の増大を伴うことなく、割り込みに対処することが可能
である。
By performing the above control, PS
It is possible to deal with the interrupt without increasing the resources necessary for saving the contents of R and the pipeline latch.

【0018】[0018]

【発明が解決しようとする課題】しかしながら、上記従
来の技術において、割り込み発生時に必要な情報を退避
する方法を使用すると、前述の如く、並列実行可能な演
算回路が増加するに従って、切り換えを行うためのパイ
プラインラッチも増加させる必要があり、パイプライン
ラッチ等の情報の退避に必要な資源の量が膨大になると
いう問題点が生じる。一方、資源の増大を防止するため
に割り込みマスクを利用する方法は、LIW型やVLI
W型の情報処理装置においてパイプライン処理のサイク
ル単位で割り込みマスクの制御を行うとすると、頻繁に
割り込みマスクの設定命令、解除命令を実行しなければ
ならず、命令量が増大するため命令メモリ2のサイズを
大きくしなければならなくなる他、割り込みマスクの制
御命令実行のためのオーバーヘッドも無視できず、演算
処理の実行速度に悪影響を与える場合があるという問題
点を有していた。
However, in the above-mentioned conventional technique, if the method of saving necessary information when an interrupt occurs is used, switching is performed as the number of arithmetic circuits that can be executed in parallel increases as described above. It is also necessary to increase the number of pipeline latches, which causes a problem that the amount of resources necessary for saving information such as pipeline latches becomes enormous. On the other hand, the method of using the interrupt mask to prevent the increase of resources is LIW type or VLI.
In the W-type information processing apparatus, if the interrupt mask is controlled in the cycle unit of pipeline processing, the interrupt mask setting instruction and the cancel instruction must be frequently executed, and the instruction amount increases, so the instruction memory 2 In addition to the need to increase the size of, the overhead for executing the control instruction of the interrupt mask cannot be ignored, and there is a problem that the execution speed of the arithmetic processing may be adversely affected.

【0019】本発明は上記の問題点に鑑み、資源の増加
を伴うことなく、また、実行速度に影響を与えることな
く、サイクル単位の割り込みマスク制御を行うことが可
能な情報処理装置を提供することを目的とする。
In view of the above problems, the present invention provides an information processing apparatus capable of performing interrupt mask control in cycle units without increasing resources and affecting execution speed. The purpose is to

【0020】[0020]

【課題を解決するための手段】上記の問題点を解決する
目的で、本発明に係る情報処理装置は、並列実行可能な
複数の処理の指定を含む命令に基づいて、複数の演算回
路で処理を並列実行する情報処理装置において、前記命
令を解読して、前記複数の処理を実現する制御信号を出
力するとともに、解読結果に基づいて割り込みマスクを
行うか否かを指示するマスク信号を出力する命令解読手
段と、前記マスク信号に従って、外部からの割り込みを
受け付けるか否かを制御する割り込み制御手段とを備え
る。
In order to solve the above-mentioned problems, an information processing apparatus according to the present invention processes in a plurality of arithmetic circuits based on an instruction including designation of a plurality of processes which can be executed in parallel. In an information processing device that executes the above in parallel, outputs a control signal that decodes the instruction and realizes the plurality of processes, and outputs a mask signal that indicates whether to perform interrupt masking based on the decoding result. An instruction decoding means and an interrupt control means for controlling whether or not to accept an external interrupt according to the mask signal are provided.

【0021】前記命令は、前記複数の処理の指定とは独
立して、割り込みマスクを行うか否かを指示する指示ビ
ットを含み、前記命令解読手段は、前記指示ビットの状
態に基づいて、前記マスク信号を出力することも可能で
ある。前記命令解読手段は、前記命令により指定される
複数の処理の内容に基づいて、割り込みマスクを行うか
否かを判定する判定部を有し、前記判定部の判定に従っ
て、前記マスク信号を出力することもできる。
The instruction includes an instruction bit for instructing whether or not to perform interrupt masking independently of designation of the plurality of processes, and the instruction decoding means is based on the state of the instruction bit. It is also possible to output a mask signal. The instruction decoding unit has a determination unit that determines whether or not to perform interrupt masking based on the contents of a plurality of processes designated by the instruction, and outputs the mask signal according to the determination of the determination unit. You can also

【0022】前記情報処理装置は、一の演算回路の演算
結果をラッチし、他の演算回路の入力とするバイパスラ
ッチを少なくとも一つ有しており、前記判定部は、前記
複数の処理に含まれる少なくとも一つの処理において、
前記バイパスラッチに演算結果をラッチすべき指定がな
されている場合に、前記バイパスラッチを用いる処理を
実行する間、割り込みマスクを行うと判定することもで
きる。
The information processing apparatus has at least one bypass latch for latching the calculation result of one arithmetic circuit and inputting it to another arithmetic circuit, and the judging section is included in the plurality of processes. In at least one process
When the bypass latch is designated to latch the operation result, it may be determined that the interrupt mask is performed while the process using the bypass latch is executed.

【0023】前記割り込み制御手段は、外部からの割り
込み信号と、前記マスク信号との論理積をとり、割り込
み制御信号として出力する論理積回路を含むことが可能
である。前記割り込み制御手段はさらに、前記マスク信
号を無効とするか否かを指示する制御レジスタと、前記
制御レジスタの出力と、前記マスク信号との論理積をと
り、前記論理積回路に対して出力する第2の論理積回路
とを備え、前記命令解読手段はさらに、前記命令の解読
の結果、マスク信号を無効とする処理の指定を検出した
場合に、マスク信号の無効を解除する処理の指定が検出
されるまでの間、マスク信号を無効とするように前記制
御レジスタの設定を行うこともできる。
The interrupt control means may include a logical product circuit which takes a logical product of an external interrupt signal and the mask signal and outputs the logical product as an interrupt control signal. The interrupt control means further performs a logical product of a control register for instructing whether to invalidate the mask signal, an output of the control register and the mask signal, and outputs the logical product to the AND circuit. A second AND circuit, wherein the instruction decoding means further specifies the processing for canceling the invalidation of the mask signal when the instruction for decoding the instruction detects the processing for invalidating the mask signal. The control register may be set so that the mask signal is invalid until the detection.

【0024】前記情報処理装置はさらに、連続して割り
込みマスクが行われるであろう期間を計測し、計測され
た期間が所定の期間を超える場合に、割り込みマスクが
行われない処理の指定を前記命令からなるプログラムの
間に挿入する命令アセンブラを備え、前記命令解読手段
は、前記プログラムに含まれる命令を解読することも可
能である。
The information processing apparatus further measures a period during which interrupt masking will be continuously performed, and when the measured period exceeds a predetermined period, the process of not performing interrupt masking is designated. An instruction assembler inserted between programs of instructions is provided, and the instruction decoding means can also decode the instructions included in the program.

【0025】前記情報処理装置はさらに、前記複数の処
理に含まれる少なくとも一つの処理において、前記バイ
パスラッチに演算結果をラッチすべき指定がなされてい
る場合に、前記バイパスラッチを用いる処理を実行する
期間を計測する計測手段と、前記計測手段により計測さ
れた期間が所定の期間以上であるか否かを判定する期間
判定手段と、前記期間判定手段により、所定の期間以上
であると判定された場合に、割り込みマスクが行われな
い処理の指定を、前記命令からなるプログラムの間に挿
入する挿入手段とを有する命令アセンブラを備え、前記
命令解読手段は、前記プログラムに含まれる命令を解読
することもできる。
The information processing apparatus further executes a process using the bypass latch when at least one process included in the plurality of processes is designated to latch the operation result in the bypass latch. A measuring unit that measures a period, a period determining unit that determines whether the period measured by the measuring unit is a predetermined period or more, and a period determining unit determines that the period is a predetermined period or more. In this case, an instruction assembler having an inserting means for inserting a designation of a process in which an interrupt mask is not performed between programs consisting of the instructions, wherein the instruction decoding means decodes the instructions included in the program. You can also

【0026】[0026]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照しながら説明する。 (実施の形態1)図1は、本実施の形態の情報処理装置
の構成を示すブロック図である。同図の情報処理装置
は、割り込み制御部1、命令メモリ2、命令解読部3、
レジスタ部4、演算回路A5、演算回路B6、AND回
路7を備える。演算回路A5、演算回路B6には、それ
ぞれパイプラインラッチ201、202が接続されてお
り、パイプラインラッチ202にはセレクタ203が接
続されている。
Embodiments of the present invention will be described below with reference to the drawings. (Embodiment 1) FIG. 1 is a block diagram showing a configuration of an information processing apparatus of this embodiment. The information processing apparatus of FIG. 1 includes an interrupt control unit 1, an instruction memory 2, an instruction decoding unit 3,
The register unit 4, the arithmetic circuit A5, the arithmetic circuit B6, and the AND circuit 7 are provided. The arithmetic circuit A5 and the arithmetic circuit B6 are connected to pipeline latches 201 and 202, respectively, and the pipeline latch 202 is connected to a selector 203.

【0027】また、図中の100は、外部からの割り込
み信号が入力される割り込み信号入力線、101は、命
令解読部3が出力するマスク信号を伝える信号線、10
2は命令解読部3の解読結果をレジスタ部4に送る信号
線、103、105はデータバス、104は、演算回路
A5の演算結果を演算回路B6に接続されているパイプ
ラインラッチ202に送るための信号線である。
Reference numeral 100 in the drawing denotes an interrupt signal input line to which an interrupt signal from the outside is input, 101 denotes a signal line for transmitting a mask signal output from the instruction decoding unit 3, and 10
Reference numeral 2 is a signal line for sending the decoding result of the instruction decoding unit 3 to the register unit 4, 103 and 105 are data buses, and 104 is for sending the operation result of the arithmetic circuit A5 to the pipeline latch 202 connected to the arithmetic circuit B6. Signal line.

【0028】割り込み制御部1は、AND回路7の出力
に基づいて情報処理装置に対する割り込み制御を行う。
具体的には、AND回路7の出力信号がオンの時に情報
処理装置に対する割り込み信号が発生したと検知する。
即ち、割り込み信号入力線100を通じて送られる割り
込み信号がオンとなっても、信号線101を通じて送ら
れる命令解読部3からのマスク信号がオンとなっていれ
ば情報処理装置に対する割り込み要求を受け付けないこ
とになる。
The interrupt controller 1 controls interrupts to the information processing device based on the output of the AND circuit 7.
Specifically, when the output signal of the AND circuit 7 is on, it is detected that an interrupt signal to the information processing device is generated.
That is, even if the interrupt signal sent through the interrupt signal input line 100 is turned on, if the mask signal from the instruction decoding unit 3 sent through the signal line 101 is turned on, the interrupt request to the information processing device is not accepted. become.

【0029】命令解読部3は、命令メモリ2に格納され
ているLIW命令を解読し、解読した結果を信号線10
2を通じてレジスタ部4に送るほか、解読された命令の
内容に基づいて、割り込みマスクを行う旨を指示するマ
スク信号を、信号線101を通じてAND回路7に送
る。同図の命令解読部3は、割り込みマスクを行う場合
にマスク信号をオンとするように構成されている。
The instruction decoding unit 3 decodes the LIW instruction stored in the instruction memory 2 and outputs the decoded result to the signal line 10.
In addition to being sent to the register unit 4 via 2, the mask signal for instructing to perform interrupt masking is sent to the AND circuit 7 via the signal line 101 based on the content of the decoded instruction. The instruction decoding unit 3 in the figure is configured to turn on a mask signal when performing interrupt masking.

【0030】レジスタ部4は、複数のレジスタから構成
され、信号線102を通じて送られてきた命令解読情報
に従い、データバス103を通じて、演算回路A5及び
演算回路B6にデータを伝える。演算回路A5及び演算
回路B6は、データバス103、信号線104を通じて
送られてきたデータに基づいて、演算を実行し、演算結
果をデータバス105を通じてレジスタ部4に書き戻
す。演算回路A5と、演算回路B6の入力側には、レジ
スタ部4から読み出されたデータをラッチするパイプラ
インラッチ201、202がそれぞれ備えられている。
また、演算回路A5、演算回路B6との間には、演算回
路A5での演算結果を用いて演算回路B6が演算を実行
できるように、演算結果をバイパスして伝える信号線1
04が備えられている。パイプラインラッチ202に、
レジスタ部4からのデータと、演算回路A5の演算結果
とのどちらがラッチされるかは、セレクタ203にて制
御されるように構成されている。セレクタ203の選択
は、命令解読部3の解読結果に基づいて行われる。
The register section 4 is composed of a plurality of registers, and transmits data to the arithmetic circuits A5 and B6 via the data bus 103 according to the instruction decoding information sent through the signal line 102. The arithmetic circuits A5 and B6 execute arithmetic operations based on the data sent through the data bus 103 and the signal line 104, and write the arithmetic results back to the register unit 4 through the data bus 105. The input sides of the arithmetic circuit A5 and the arithmetic circuit B6 are provided with pipeline latches 201 and 202 for latching the data read from the register unit 4, respectively.
Further, between the arithmetic circuit A5 and the arithmetic circuit B6, the signal line 1 for transmitting the arithmetic result by bypass so that the arithmetic circuit B6 can execute the arithmetic operation using the arithmetic result of the arithmetic circuit A5.
04 is provided. In the pipeline latch 202,
Which of the data from the register unit 4 and the calculation result of the calculation circuit A5 is latched is controlled by the selector 203. The selection of the selector 203 is performed based on the decoding result of the instruction decoding unit 3.

【0031】以上のように構成された情報処理装置につ
いて、以下その動作を説明する。図8に示すようなLI
W命令を実行する場合に、図2に示すようにLIW命令
に割り込みマスクを行うか否かを示す1ビットの指示ビ
ットを加えておく。例えば、LIW命令ごとの指示ビッ
トとして、当該命令の実行時に割り込みマスクを行う必
要がある場合には、指示ビットを「1」としておき、割
り込みを許容する命令であれば、指示ビットを「0」と
しておいて、命令アセンブラにより指示ビットを含む機
械語プログラムに変換する。
The operation of the information processing apparatus configured as described above will be described below. LI as shown in FIG.
When executing the W instruction, as shown in FIG. 2, a 1-bit instruction bit indicating whether or not to perform interrupt masking is added to the LIW instruction. For example, as an instruction bit for each LIW instruction, if it is necessary to mask an interrupt when the instruction is executed, the instruction bit is set to "1", and if the instruction allows interrupts, the instruction bit is "0". Then, it is converted into a machine language program including instruction bits by the instruction assembler.

【0032】そして、実行時に命令解読部3において命
令の解読を行う際、即ち、各々のLIW命令のDECODEフ
ェーズにおいて、前記指示ビットが「1」であれば、信
号線101に出力するマスク信号をオンとし、指示ビッ
トが「0」であれば、前記マスク信号をオフとする。こ
こで、指示ビットの設定についてより具体的に説明する
と、例えば、演算回路A5の演算結果を演算回路B6で
使用するためにバイパスを行う場合、即ち命令シーケン
スにおいてディスティネーションレジスタとして%pが指
定されている場合に指示ビットを「1」とし、以後、バ
イパスされたデータを用いた演算回路B6における演算
が終了するまで、制御ビットを「1」としておき、演算
回路B6における当該演算が終了すると指示ビットを
「0」とするようにプログラミングの段階で考慮してL
IW命令を作成する。指示ビットの設定は任意の位置に
行うことが可能であり、バイパスによる演算の実行時以
外に割り込みマスクを行うこともできる。
When the instruction decoding unit 3 decodes the instruction at the time of execution, that is, in the DECODE phase of each LIW instruction, if the instruction bit is "1", the mask signal output to the signal line 101 is output. It is turned on, and if the instruction bit is "0", the mask signal is turned off. Here, the setting of the instruction bit will be described more specifically. For example, when bypassing the calculation result of the calculation circuit A5 for use in the calculation circuit B6, that is,% p is designated as the destination register in the instruction sequence. In this case, the instruction bit is set to "1", and thereafter, the control bit is set to "1" until the operation in the arithmetic circuit B6 using the bypassed data is completed, and the operation circuit B6 is instructed to end the arithmetic operation. Consider the bit to be "0" at the programming stage and L
Create an IW instruction. The instruction bit can be set at an arbitrary position, and the interrupt mask can be set at the time other than the execution of the operation by bypass.

【0033】以上のような処理を行うことにより、例え
ば無制限に割り込みを認める場合において、演算回路の
増加に伴いバイパス用パイプラインラッチを増加させる
ことによる情報退避用資源の増大を抑制することができ
るとともに、割り込み制御命令をLIW命令中に記述す
ることによる命令メモリ2のサイズの膨張を防ぐことが
でき、かつ、パイプラインサイクルごとの細かい処理単
位における割り込み制御が可能となる。 (実施の形態2)図3は、本発明の第2の実施の形態に
おける情報処理装置の構成を示すブロック図である。
By performing the above processing, for example, in the case where an unlimited number of interrupts are acknowledged, it is possible to suppress an increase in information saving resources due to an increase in the number of bypass pipeline latches as the number of arithmetic circuits increases. At the same time, it is possible to prevent the size of the instruction memory 2 from expanding due to the description of the interrupt control instruction in the LIW instruction, and it is possible to perform interrupt control in a fine processing unit for each pipeline cycle. (Second Embodiment) FIG. 3 is a block diagram showing a configuration of an information processing apparatus according to a second embodiment of the present invention.

【0034】同図の情報処理装置の構成は、実施の形態
1で説明したものとほぼ同一であるが、命令解読部3に
中に、判定部31が備えられているところが異なってい
る。以下、異なっている部分を中心にして説明を行う。
実施の形態1においては、LIW命令の中に指示ビット
を記述したが、本実施の形態では指示ビットは設けな
い。代わりに判定部31において、例えば、信号線10
4を用いたバイパス処理を行うか否かを判定し、判定結
果に基づいて、割り込みマスクを行うか否かを指示する
マスク信号を信号線101に出力する。
The configuration of the information processing apparatus shown in the figure is almost the same as that described in the first embodiment, except that the instruction decoding section 3 is provided with a judging section 31. Hereinafter, description will be made focusing on the different parts.
Although the instruction bit is described in the LIW instruction in the first embodiment, the instruction bit is not provided in the present embodiment. Instead, in the determination unit 31, for example, the signal line 10
It is determined whether or not the bypass process using 4 is to be performed, and based on the determination result, a mask signal that indicates whether or not to perform interrupt masking is output to the signal line 101.

【0035】例えば図8に示すようなLIW命令であれ
ば、ディスティネーションレジスタとして、%pが指定さ
れたことが判定部31において検出された場合に、信号
線101に出力するマスク信号をオンとし、その後、バ
イパスされたデータを用いた演算の終了まで割り込みマ
スクを行う。なお、判定部31による判定の基準として
は、上記のようにディスティネーションレジスタの指定
を参照して、バイパス処理を行うか否かにより判定を行
う他にも、オペコードの種類により判定しても良いし、
また、オペコードとオペランドとを複合して判定に用い
ることも可能である。
For example, in the case of the LIW instruction as shown in FIG. 8, the mask signal output to the signal line 101 is turned on when the determination unit 31 detects that% p is designated as the destination register. After that, interrupt masking is performed until the end of the operation using the bypassed data. It should be noted that, as a criterion for the determination by the determination unit 31, other than the determination based on whether or not the bypass process is performed with reference to the designation of the destination register as described above, the determination may be performed based on the type of the operation code. Then
It is also possible to combine the operation code and the operand and use them for the determination.

【0036】以上のような構成をとることにより、命令
ごとに指示ビットの設定を行うことなく、パイプライン
サイクルごとに割り込み制御を行うことが可能となる。 (実施の形態3)図4は、本発明の第3の実施の形態に
おける情報処理装置の構成を示すブロック図である。
With the above configuration, it is possible to perform interrupt control for each pipeline cycle without setting the instruction bit for each instruction. (Third Embodiment) FIG. 4 is a block diagram showing the configuration of an information processing apparatus according to the third embodiment of the present invention.

【0037】同図の情報処理装置の構成は、実施の形態
2で説明したものとほぼ同一であるが、制御レジスタ8
及びAND回路9が設けられている点と、データバス1
03から制御レジスタ8に制御信号を出力する信号線1
06が備えられているところが異なっている。以下、異
なっている部分を中心にして説明を行う。実施の形態2
において、判定部31による判定の結果に基づいて制御
信号を出力する方法を用いたが、処理の内容によって
は、同種の処理であっても、割り込みマスクを行うべき
場合と、行わなくてもよい場合とが混在するものが有り
得る。例えば、バイパスを用いた演算であっても必ずし
も割り込みマスクを行う必要がない場合も考えられるこ
とから、本実施の形態の情報処理装置では、そのような
場合に割り込みマスクを行わない旨の指定を行う命令の
使用を可能としている。即ち、制御レジスタ8を設置
し、命令解読部3において、判定部31の出力するマス
ク信号を無効とする旨の指示を行う命令が検出された場
合は、前記制御レジスタ8に含まれる制御ビット8aに
「0」を設定する。そしてAND回路9の出力をAND
回路7への入力とすることにより、判定部31の判定に
関係なく割り込みマスクを禁止することが可能となる。
以後、マスク信号の無効を解除する命令が検出され、前
記制御ビット8aに「1」が設定されると、再び判定部
31の判定により割り込みマスクの制御が行われるよう
になる。
The configuration of the information processing apparatus shown in FIG. 11 is almost the same as that described in the second embodiment, but the control register 8
And the point that the AND circuit 9 is provided, and the data bus 1
Signal line 1 for outputting a control signal from 03 to the control register 8
The difference is that 06 is provided. Hereinafter, description will be made focusing on the different parts. Embodiment 2
In the above, the method of outputting the control signal based on the result of the determination by the determination unit 31 is used. However, depending on the content of the processing, even if the same kind of processing is performed, the interrupt mask may or may not be performed. There can be mixed cases. For example, since it may be possible that the interrupt mask does not necessarily have to be performed even in the case of the calculation using the bypass, the information processing apparatus according to the present embodiment specifies that the interrupt mask should not be performed in such a case. It is possible to use the instruction to perform. That is, when the control register 8 is installed and the instruction decoding unit 3 detects an instruction to instruct the mask signal output from the determination unit 31 to be invalid, the control bit 8a included in the control register 8 is detected. Is set to "0". The output of the AND circuit 9 is ANDed
By inputting to the circuit 7, the interrupt mask can be prohibited regardless of the determination of the determination unit 31.
After that, when an instruction for canceling the invalidation of the mask signal is detected and "1" is set in the control bit 8a, the interrupt mask is controlled again by the determination of the determination unit 31.

【0038】以上のような処理を行うことにより、例え
ば、通常の状態であれば割り込みマスクを行うべき命令
であるが、処理内容の全体から判断した場合に割り込み
マスクを行う必要がないというような場合にも対処する
ことが可能となる。 (実施の形態4)本実施の形態の情報処理装置の処理内
容は、実施の形態1〜実施の形態3において既に説明し
た情報処理装置の構成の何れにおいても適用可能な内容
である。即ち、本実施の形態の情報処理装置において
は、情報処理装置に備えられた命令アセンブラにより、
割り込みマスクが連続して所定の期間に渡って行われる
であろうことが検知された場合に、割り込みを許容する
ための命令を自動的に挿入することにより、LIW命令
から生成される機械語プログラムに修正を加える。
By performing the above-described processing, for example, the instruction should be interrupt masked in the normal state, but it is not necessary to perform the interrupt masking when judging from the entire processing contents. It is possible to deal with the case. (Embodiment 4) The processing contents of the information processing apparatus according to the present embodiment are applicable to any of the configurations of the information processing apparatus described in Embodiments 1 to 3. That is, in the information processing device of the present embodiment, the instruction assembler provided in the information processing device
A machine language program generated from a LIW instruction by automatically inserting an instruction to allow an interrupt when it is detected that the interrupt mask will be continuously performed for a predetermined period. Make a correction to.

【0039】以下、本実施の形態の情報処理装置に備え
られる命令アセンブラの処理内容について説明する。図
5は、本実施の形態の情報処理装置に備えられる命令ア
センブラの処理内容を示すフロ−チャ−トである。ま
ず、命令アセンブラは割り込みマスクが行われる期間を
計測するためのカウンタをリセットし(S501)、L
IW命令を読む(S502)。ここで、全てのLIW命
令について処理を終了していれば命令アセンブラの処理
を終了する(S503:Yes)。終了していなければ
命令アセンブラは、読み取ったLIW命令が、割り込み
マスクを必要とする命令か否かを判定し(S504)、
割り込みマスクを必要としない命令であればステップS
501へと戻る。割り込みマスクが必要な命令であれ
ば、カウンタの値に1を加算する(S505)。割り込
みマスクが必要であるか否かの判定は、機械語プログラ
ムへの変換後、情報処理装置において処理を実行する際
の命令解読回路3の処理内容に基づいて行う。
The processing contents of the instruction assembler provided in the information processing apparatus of this embodiment will be described below. FIG. 5 is a flow chart showing the processing contents of the instruction assembler provided in the information processing apparatus of this embodiment. First, the instruction assembler resets a counter for measuring the period during which the interrupt mask is performed (S501), and L
Read the IW command (S502). If the processing has been completed for all LIW instructions, the processing of the instruction assembler is completed (S503: Yes). If not completed, the instruction assembler determines whether the read LIW instruction is an instruction requiring an interrupt mask (S504),
If the instruction does not require an interrupt mask, step S
Return to 501. If the instruction requires an interrupt mask, 1 is added to the counter value (S505). Whether or not the interrupt mask is necessary is determined based on the processing content of the instruction decoding circuit 3 when executing the processing in the information processing device after the conversion into the machine language program.

【0040】ステップS505でカウンタの値の加算を
行った後、カウンタの値が所定の値を超えたか否かを判
定し(S506)、所定の値を超えていない場合は、次
の命令を読むべくステップS502へと戻るが、所定の
値を超えている場合は、割り込みマスクを許容する命令
を挿入する(S507)。具体的には割り込みマスクが
行われないような形でnop命令を挿入する。
After the counter value is added in step S505, it is determined whether the counter value exceeds a predetermined value (S506). If the counter value is not exceeded, the next instruction is read. Therefore, the process returns to step S502, but if it exceeds the predetermined value, an instruction permitting the interrupt mask is inserted (S507). Specifically, insert the nop instruction in such a way that interrupt mask is not performed.

【0041】以上のような処理を行う命令アセンブラに
ついて、以下、その動作を具体例を用いて説明する。図
6(a)のようなLIW命令を本実施の形態の命令アセ
ンブラを用いて機械語プログラムに変換する場合に、以
下のような条件で変換を行うものとする。即ち、LIW
命令に含まれる中の少なくとも一つの処理で、演算結果
のバイパスを行う処理(ディスティネーションレジスタ
として%pが指定されている場合)に、割り込みマスクが
必要な命令であると判定してカウンタの加算を行い、カ
ウンタの値が3を超えるとnop命令を挿入するものとす
る。
The operation of the instruction assembler which performs the above processing will be described below with reference to a specific example. When converting an LIW instruction as shown in FIG. 6A into a machine language program using the instruction assembler of this embodiment, the conversion is performed under the following conditions. That is, LIW
In at least one of the processes included in the instruction, the counter is incremented when it is determined that the interrupt mask is required for the process that bypasses the operation result (when% p is specified as the destination register). When the counter value exceeds 3, a nop instruction is inserted.

【0042】この場合、図6(a)のLIW命令から出
力される機械語プログラムの処理内容は図6(b)に示
すようなものとなる。即ち、行(d)のLIW命令を読
み取った際に、カウンタの値が3を超えるので、図6
(b)の行(d’)と行(d”)とに示されるような形
でnop命令の挿入が行われる。以上のような処理を行う
ことにより、例えば、機器の制御のための命令を実行す
る場合等、どうしても割り込みを行う必要があるような
処理が、長時間の割り込みマスクのために実行できない
という事態の発生を回避することができる。
In this case, the processing contents of the machine language program output from the LIW instruction of FIG. 6 (a) are as shown in FIG. 6 (b). That is, when the LIW instruction in line (d) is read, the value of the counter exceeds 3.
The nop instruction is inserted in the form shown in the line (d ′) and line (d ″) of (b). By performing the above processing, for example, an instruction for controlling the device It is possible to avoid the occurrence of a situation in which a process that must be interrupted, such as when executing, is unable to be executed due to a long interrupt mask.

【0043】なお、本実施の形態の説明では、演算回路
が二つであるLIW型の情報処理装置への適用例につい
て説明したが、演算回路がさらに増加したVLIW型の
装置においても同様の適用が可能である。また、本実施
の形態では二つのAND回路を用いて割り込みマスクの
制御を実現したが、割り込みマスク制御の方法はこれに
限定されるものではない。
In the description of the present embodiment, an example of application to an LIW type information processing device having two arithmetic circuits has been described, but the same application is applied to a VLIW type device in which the number of arithmetic circuits is further increased. Is possible. Further, in this embodiment, the interrupt mask control is realized by using two AND circuits, but the interrupt mask control method is not limited to this.

【0044】[0044]

【発明の効果】以上の説明から明らかなように、本発明
に係る情報処理装置は、並列実行可能な複数の処理の指
定を含む命令に基づいて、複数の演算回路で処理を並列
実行する情報処理装置において、前記命令を解読して、
前記複数の処理を実現する制御信号を出力するととも
に、解読結果に基づいて割り込みマスクを行うか否かを
指示するマスク信号を出力する命令解読手段と、前記マ
スク信号に従って、外部からの割り込みを受け付けるか
否かを制御する割り込み制御手段とを備え、命令解読手
段が、命令により指定される処理を実現するための制御
信号とは別に、割り込み制御手段に対して割り込みマス
クを行うか否かを指示するマスク信号を出力することに
より、プログラムの中に割り込みマスクの制御を行う命
令を特に記述することなく、命令単位で割り込みマスク
の制御を行うことができるので、命令メモリ2のサイズ
の増加や、実行速度への影響を伴うことなく、パイプラ
インサイクル単位の割り込みマスク制御が可能になると
いう効果を奏する。
As is apparent from the above description, the information processing apparatus according to the present invention is information for executing processing in parallel by a plurality of arithmetic circuits based on an instruction including designation of a plurality of processing that can be executed in parallel. The processor decodes the instruction,
An instruction decoding unit that outputs a control signal that realizes the plurality of processes and outputs a mask signal that indicates whether or not to perform interrupt masking based on the decoding result, and accepts an external interrupt according to the mask signal. Interrupt control means for controlling whether or not the instruction decoding means instructs the interrupt control means whether or not to perform interrupt masking separately from the control signal for realizing the processing specified by the instruction. By outputting a mask signal for controlling the interrupt mask, it is possible to control the interrupt mask on an instruction-by-instruction basis without writing an instruction for controlling the interrupt mask in the program. The effect is that interrupt mask control can be performed in pipeline cycle units without affecting the execution speed.

【0045】また、前記命令は、前記複数の処理の指定
とは独立して、割り込みマスクを行うか否かを指示する
指示ビットを含み、前記命令解読手段は、前記指示ビッ
トの状態に基づいて、前記マスク信号を出力することが
可能である。この場合には、命令中に、処理の指定とは
独立して指示ビットを設け、プログラミングの段階で指
示ビットの設定を行うため、細かい処理単位で割り込み
マスクの制御を行うことが可能であるという効果があ
る。
Further, the instruction includes an instruction bit for instructing whether or not to perform interrupt masking independently of designation of the plurality of processes, and the instruction decoding means is based on the state of the instruction bit. It is possible to output the mask signal. In this case, since an instruction bit is provided in the instruction independently of the processing designation and the instruction bit is set at the programming stage, it is possible to control the interrupt mask in small processing units. effective.

【0046】また、前記命令解読手段は、前記命令によ
り指定される複数の処理の内容に基づいて、割り込みマ
スクを行うか否かを判定する判定部を有し、前記判定部
の判定に従って、前記マスク信号を出力することもでき
る。この場合には、判定部が処理の内容に基づいて割り
込みマスクを行うか否かを判定するため、制御ビットを
設定することなく割り込みマスク制御を行うことが可能
となるという効果を奏する。
Further, the instruction decoding means has a judging section for judging whether or not to carry out an interrupt mask based on the contents of a plurality of processes designated by the instruction, and according to the judgment of the judging section, It is also possible to output a mask signal. In this case, since the determination unit determines whether or not to perform the interrupt mask based on the content of the process, it is possible to perform the interrupt mask control without setting the control bit.

【0047】さらに、前記情報処理装置が、一の演算回
路の演算結果をラッチし、他の演算回路の入力とするバ
イパスラッチを少なくとも一つ有している場合に、前記
判定部は、前記複数の処理に含まれる少なくとも一つの
処理において、前記バイパスラッチに演算結果をラッチ
すべき指定がなされている場合に、前記バイパスラッチ
を用いる処理を実行する間、割り込みマスクを行うと判
定することが可能である。このようにすることにより、
バイパスラッチを用いた演算処理を実行しているときに
割り込みが発生する可能性がある場合でも、バイパスラ
ッチの内容を退避する必要がなくなるという効果があ
る。
Further, when the information processing device has at least one bypass latch for latching the operation result of one arithmetic circuit and inputting it to another arithmetic circuit, the judging section is configured to operate the plurality of the plurality of arithmetic circuits. In at least one of the processes included in the process 1, it is possible to determine that the interrupt mask is performed while the process using the bypass latch is executed when the operation result is designated to be latched in the bypass latch. Is. By doing this,
Even if an interrupt may occur while executing the arithmetic processing using the bypass latch, it is not necessary to save the contents of the bypass latch.

【0048】また、前記割り込み制御手段は、外部から
の割り込み信号と、前記マスク信号との論理積をとり、
割り込み制御信号として出力する論理積回路を含むもの
とすることが可能である。このような構成をとることに
より、簡易な回路で本発明の実施を行うことが可能とな
る。さらに、前記割り込み制御手段はさらに、前記マス
ク信号を無効とするか否かを指示する制御レジスタと、
前記制御レジスタの出力と、前記マスク信号との論理積
をとり、前記論理積回路に対して出力する第2の論理積
回路とを備え、前記命令解読手段はさらに、前記命令の
解読の結果、マスク信号を無効とする処理の指定を検出
した場合に、マスク信号の無効を解除する処理の指定が
検出されるまでの間、マスク信号を無効とするように前
記制御レジスタの設定を行うことが可能である。このよ
うな構成とすることにより、特に、判定部を備え、命令
によって指定される処理の内容に基づいて、割り込みマ
スクを行うか否かを制御する方法をとる場合に、処理の
内容は同一であっても、割り込みマスクを行うべき場合
と、行う必要のない場合とが有り得るような処理におい
て、より効率的な割り込みマスク制御を行うことができ
るという効果がある。
The interrupt control means calculates a logical product of an interrupt signal from the outside and the mask signal,
It is possible to include an AND circuit that outputs as an interrupt control signal. With such a configuration, the present invention can be implemented with a simple circuit. Further, the interrupt control means further includes a control register for instructing whether to invalidate the mask signal,
The instruction decoding means further comprises a second logical product circuit that takes a logical product of the output of the control register and the mask signal and outputs the logical product to the logical product circuit. When the designation of the process for invalidating the mask signal is detected, the control register can be set to invalidate the mask signal until the designation of the process for canceling the invalidation of the mask signal is detected. It is possible. With such a configuration, particularly when the determination unit is provided and the method of controlling whether or not the interrupt mask is performed based on the content of the processing specified by the instruction, the content of the processing is the same. Even if there is, there is an effect that more efficient interrupt mask control can be performed in the processing in which the interrupt mask should be performed and the interrupt mask need not be performed.

【0049】また、前記情報処理装置はさらに、連続し
て割り込みマスクが行われるであろう期間を計測し、計
測された期間が所定の期間を超える場合に、割り込みマ
スクが行われない処理の指定を前記命令からなるプログ
ラムの間に挿入する命令アセンブラを備え、前記命令解
読手段は、前記プログラムに含まれる命令を解読するこ
とが可能である。以上のように、命令アセンブラによっ
て、プログラム実行時の命令解読手段の判定内容をシミ
ュレートし、長期間に渡って割り込みマスクが行われる
と判定されたときに割り込みマスクが行われない命令を
プログラムに挿入することにより、どうしても行う必要
のある割り込み処理が割り込みマスクによって妨げられ
るということがなくなるという効果が得られる。
Further, the information processing apparatus further measures a period during which interrupt masking will be continuously performed, and when the measured period exceeds a predetermined period, designation of processing in which interrupt masking is not performed is performed. And an instruction assembler which inserts between the programs including the instructions, and the instruction decoding means can decode the instructions included in the program. As described above, the instruction assembler simulates the determination contents of the instruction decoding means at the time of program execution, and if the interrupt mask is determined to be performed for a long period of time, the instruction is not interrupt masked in the program. By the insertion, the effect that the interrupt processing that is absolutely necessary is not disturbed by the interrupt mask is obtained.

【0050】前記情報処理装置はさらに、前記複数の処
理に含まれる少なくとも一つの処理において、前記バイ
パスラッチに演算結果をラッチすべき指定がなされてい
る場合に、前記バイパスラッチを用いる処理を実行する
期間を計測する計測手段と、前記計測手段により計測さ
れた期間が所定の期間以上であるか否かを判定する期間
判定手段と、前記期間判定手段により、所定の期間以上
であると判定された場合に、割り込みマスクが行われな
い処理の指定を、前記命令からなるプログラムの間に挿
入する挿入手段とを有する命令アセンブラを備え、前記
命令解読手段は、前記プログラムに含まれる命令を解読
することも可能である。このような構成をとることによ
り、特にバイパスラッチを用いた演算処理を行う情報処
理装置において、必要な割り込み処理が割り込みマスク
によって妨げられるという事態を回避することができる
という効果がある。
The information processing apparatus further executes a process using the bypass latch when at least one process included in the plurality of processes is designated to latch the operation result in the bypass latch. A measuring unit that measures a period, a period determining unit that determines whether the period measured by the measuring unit is a predetermined period or more, and a period determining unit determines that the period is a predetermined period or more. In this case, an instruction assembler having an inserting means for inserting a designation of a process in which an interrupt mask is not performed between programs consisting of the instructions, wherein the instruction decoding means decodes the instructions included in the program. Is also possible. With such a configuration, it is possible to avoid a situation in which an interrupt mask interferes with necessary interrupt processing, particularly in an information processing device that performs arithmetic processing using a bypass latch.

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

【図1】本発明の第1の実施の形態に係る情報処理装置
の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an information processing device according to a first embodiment of the present invention.

【図2】本発明の第1の実施の形態で用いられるLIW
命令の一例を示す図である。
FIG. 2 is a LIW used in the first embodiment of the present invention.
It is a figure which shows an example of an instruction.

【図3】本発明の第2の実施の形態に係る情報処理装置
の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of an information processing device according to a second embodiment of the present invention.

【図4】本発明の第3の実施の形態に係る情報処理装置
の構成を示すブロック図である。
FIG. 4 is a block diagram showing a configuration of an information processing device according to a third embodiment of the present invention.

【図5】本発明の第4の実施の形態に係る情報処理装置
に備えられる命令アセンブラの処理内容を示すフロ−チ
ャ−トである。
FIG. 5 is a flowchart showing the processing contents of an instruction assembler provided in the information processing apparatus according to the fourth embodiment of the present invention.

【図6】(a) 本発明の第4の実施の形態で用いられ
る命令アセンブラに入力されるLIW命令の一例を示す
図である。 (b) 図6(a)に示されるLIW命令を、第4の実
施の形態の命令アセンブラにより処理した場合に出力さ
れる機械語プログラムの処理内容の一例を示す図であ
る。
FIG. 6A is a diagram showing an example of a LIW instruction input to the instruction assembler used in the fourth embodiment of the present invention. 7B is a diagram showing an example of processing contents of a machine language program output when the LIW instruction shown in FIG. 6A is processed by the instruction assembler of the fourth embodiment.

【図7】従来の情報処理装置において、パイプラインラ
ッチを二重化した場合の構成を示すブロック図である。
FIG. 7 is a block diagram showing a configuration in a case where the pipeline latch is duplicated in the conventional information processing apparatus.

【図8】LIW命令の一例を示す図である。FIG. 8 is a diagram showing an example of a LIW instruction.

【図9】図8に示されるLIW命令を実行した場合に、
それぞれのパイプラインサイクルで実行される命令を示
すタイムチャートである。
9 is a diagram showing a case where the LIW instruction shown in FIG. 8 is executed,
6 is a time chart showing instructions executed in each pipeline cycle.

【図10】従来の情報処理装置において、制御レジスタ
を使用する場合の構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration when a control register is used in a conventional information processing device.

【符号の説明】[Explanation of symbols]

1 割り込み制御部 2 命令メモリ 3 命令解読部 31 判定部 4 レジスタ部 5 演算回路A 6 演算回路B 7 AND回路 8 制御レジスタ 8a 制御ビット 9 AND回路 100 割り込み信号入力線 101〜102 信号線 103、105 データバス 104、106 信号線 201〜202 パイプラインラッチ 203 セレクタ DESCRIPTION OF SYMBOLS 1 interrupt control part 2 instruction memory 3 instruction decoding part 31 determination part 4 register part 5 arithmetic circuit A 6 arithmetic circuit B 7 AND circuit 8 control register 8a control bit 9 AND circuit 100 interrupt signal input lines 101 to 102 signal lines 103, 105 Data bus 104, 106 Signal line 201-202 Pipeline latch 203 Selector

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 並列実行可能な複数の処理の指定を含む
命令に基づいて、複数の演算回路で処理を並列実行する
情報処理装置において、 前記命令を解読して、前記複数の処理を実現する制御信
号を出力するとともに、解読結果に基づいて割り込みマ
スクを行うか否かを指示するマスク信号を出力する命令
解読手段と、 前記マスク信号に従って、外部からの割り込みを受け付
けるか否かを制御する割り込み制御手段とを備えること
を特徴とする情報処理装置。
1. An information processing apparatus that executes a process in parallel by a plurality of arithmetic circuits based on an instruction including designation of a plurality of processes that can be executed in parallel, and decodes the command to realize the plurality of processes. An instruction decoding unit that outputs a control signal and outputs a mask signal that indicates whether or not to perform interrupt masking based on the decoding result, and an interrupt that controls whether or not to accept an external interrupt according to the mask signal. An information processing apparatus comprising: a control unit.
【請求項2】 前記命令は、 前記複数の処理の指定とは独立して、割り込みマスクを
行うか否かを指示する指示ビットを含み、 前記命令解読手段は、 前記指示ビットの状態に基づいて、前記マスク信号を出
力することを特徴とする請求項1記載の情報処理装置。
2. The instruction includes an instruction bit for instructing whether or not to perform interrupt masking independently of designation of the plurality of processes, and the instruction decoding means is based on a state of the instruction bit. The information processing apparatus according to claim 1, wherein the mask signal is output.
【請求項3】 前記命令解読手段は、 前記命令により指定される複数の処理の内容に基づい
て、割り込みマスクを行うか否かを判定する判定部を有
し、 前記判定部の判定に従って、前記マスク信号を出力する
ことを特徴とする請求項1記載の情報処理装置。
3. The instruction decoding means includes a determination unit that determines whether or not to perform interrupt masking based on the contents of a plurality of processes designated by the instruction, and according to the determination of the determination unit, the determination unit The information processing apparatus according to claim 1, wherein the information processing apparatus outputs a mask signal.
【請求項4】 前記情報処理装置は、 一の演算回路の演算結果をラッチし、他の演算回路の入
力とするバイパスラッチを少なくとも一つ有しており、 前記判定部は、 前記複数の処理に含まれる少なくとも一つの処理におい
て、前記バイパスラッチに演算結果をラッチすべき指定
がなされている場合に、前記バイパスラッチを用いる処
理を実行する間、割り込みマスクを行うと判定すること
を特徴とする請求項3記載の情報処理装置。
4. The information processing device has at least one bypass latch for latching a calculation result of one calculation circuit and inputting the calculation result to another calculation circuit. In at least one process included in the above, when it is specified that the operation result should be latched in the bypass latch, it is determined that the interrupt mask is performed while the process using the bypass latch is executed. The information processing apparatus according to claim 3.
【請求項5】 前記割り込み制御手段は、 外部からの割り込み信号と、前記マスク信号との論理積
をとり、割り込み制御信号として出力する論理積回路を
含むことを特徴とする請求項1乃至4の何れかに記載の
情報処理装置。
5. The interrupt control means includes a logical product circuit for calculating a logical product of an interrupt signal from the outside and the mask signal and outputting the logical product as an interrupt control signal. The information processing device according to any one of claims.
【請求項6】 前記割り込み制御手段はさらに、 前記マスク信号を無効とするか否かを指示する制御レジ
スタと、 前記制御レジスタの出力と、前記マスク信号との論理積
をとり、前記論理積回路に対して出力する第2の論理積
回路とを備え、 前記命令解読手段はさらに、 前記命令の解読の結果、マスク信号を無効とする処理の
指定を検出した場合に、マスク信号の無効を解除する処
理の指定が検出されるまでの間、マスク信号を無効とす
るように前記制御レジスタの設定を行うことを特徴とす
る請求項5記載の情報処理装置。
6. The AND control circuit further calculates a logical product of a control register for instructing whether to invalidate the mask signal, an output of the control register and the mask signal, and the AND circuit. A second AND circuit for outputting the mask signal, and the instruction decoding unit further cancels the invalidation of the mask signal when the instruction of decoding the instruction detects the designation of the processing for invalidating the mask signal. The information processing apparatus according to claim 5, wherein the control register is set so as to invalidate the mask signal until the designation of the processing to be performed is detected.
【請求項7】 前記情報処理装置はさらに、 連続して割り込みマスクが行われるであろう期間を計測
し、計測された期間が所定の期間を超える場合に、割り
込みマスクが行われない処理の指定を前記命令からなる
プログラムの間に挿入する命令アセンブラを備え、 前記命令解読手段は、 前記プログラムに含まれる命令を解読することを特徴と
する請求項1乃至6の何れかに記載の情報処理装置。
7. The information processing apparatus further measures a period during which interrupt masking will be performed continuously, and specifies a process in which interrupt masking is not performed when the measured period exceeds a predetermined period. 7. The information processing apparatus according to claim 1, further comprising: an instruction assembler for inserting a program including the instruction into the program, wherein the instruction decoding unit decodes the instruction included in the program. .
【請求項8】 前記情報処理装置はさらに、 前記複数の処理に含まれる少なくとも一つの処理におい
て、前記バイパスラッチに演算結果をラッチすべき指定
がなされている場合に、前記バイパスラッチを用いる処
理を実行する期間を計測する計測手段と、 前記計測手段により計測された期間が所定の期間以上で
あるか否かを判定する期間判定手段と、 前記期間判定手段により、所定の期間以上であると判定
された場合に、割り込みマスクが行われない処理の指定
を、前記命令からなるプログラムの間に挿入する挿入手
段とを有する命令アセンブラを備え、 前記命令解読手段は、 前記プログラムに含まれる命令を解読することを特徴と
する請求項4記載の情報処理装置。
8. The information processing apparatus further performs a process of using the bypass latch when at least one process included in the plurality of processes is designated to latch an operation result in the bypass latch. A measuring unit that measures a period to be executed, a period determining unit that determines whether or not the period measured by the measuring unit is a predetermined period or more, and the period determining unit determines that the period is a predetermined period or more. An instruction assembler having an inserting unit that inserts a designation of a process in which the interrupt mask is not performed between the programs including the instruction, the instruction decoding unit decoding the instruction included in the program. The information processing apparatus according to claim 4, wherein the information processing apparatus comprises:
JP08648696A 1996-04-09 1996-04-09 Information processing device Expired - Lifetime JP3313969B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP08648696A JP3313969B2 (en) 1996-04-09 1996-04-09 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08648696A JP3313969B2 (en) 1996-04-09 1996-04-09 Information processing device

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2002084051A Division JP3540802B2 (en) 2002-03-25 2002-03-25 Instruction generation method, instruction generation method, and information processing apparatus
JP2002084052A Division JP2002287984A (en) 2002-03-25 2002-03-25 Information processing device

Publications (2)

Publication Number Publication Date
JPH09282165A true JPH09282165A (en) 1997-10-31
JP3313969B2 JP3313969B2 (en) 2002-08-12

Family

ID=13888321

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08648696A Expired - Lifetime JP3313969B2 (en) 1996-04-09 1996-04-09 Information processing device

Country Status (1)

Country Link
JP (1) JP3313969B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6606677B1 (en) 2000-03-07 2003-08-12 International Business Machines Corporation High speed interrupt controller
JP2013196395A (en) * 2012-03-19 2013-09-30 Fujitsu Ltd Processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6606677B1 (en) 2000-03-07 2003-08-12 International Business Machines Corporation High speed interrupt controller
JP2013196395A (en) * 2012-03-19 2013-09-30 Fujitsu Ltd Processor

Also Published As

Publication number Publication date
JP3313969B2 (en) 2002-08-12

Similar Documents

Publication Publication Date Title
US4774688A (en) Data processing system for determining min/max in a single operation cycle as a result of a single instruction
EP0740249A1 (en) Data processing device with coprocessor
US5757685A (en) Data processing system capable of processing long word data
JP3756410B2 (en) System that provides predicate data
KR880001418B1 (en) Data processor
EP0140299B1 (en) Vector mask control system
JPH10161871A (en) Processor
JPS63253433A (en) Arithmetic processor
JPH09282165A (en) Information processor
JP3540802B2 (en) Instruction generation method, instruction generation method, and information processing apparatus
JP2003058381A (en) Processor realizing exception processing setting by program
JP2002287984A (en) Information processing device
JP2577023B2 (en) Address extension control method for information processing equipment
JPH0414376B2 (en)
JP2557629B2 (en) Interrupt method
US20050216708A1 (en) Processor for performing context switching, a method for performing context switching, a computer program for perform context switching
JPH04338825A (en) Arithmetic processor
JP3601758B2 (en) Information processing apparatus and processing method thereof
JPS59218569A (en) Microcomputer
JPS6149695B2 (en)
JP3197045B2 (en) Extended central processing unit
JPS5839347A (en) Processor
JP3206394B2 (en) Programmable controller with 5-stage pipeline structure
JP2000305782A (en) Arithmetic unit
JP2622026B2 (en) Register writing control method in central processing unit

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090531

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100531

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110531

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110531

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120531

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120531

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130531

Year of fee payment: 11

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130531

Year of fee payment: 11

EXPY Cancellation because of completion of term