JP2008269067A - Vector processing device - Google Patents

Vector processing device Download PDF

Info

Publication number
JP2008269067A
JP2008269067A JP2007108256A JP2007108256A JP2008269067A JP 2008269067 A JP2008269067 A JP 2008269067A JP 2007108256 A JP2007108256 A JP 2007108256A JP 2007108256 A JP2007108256 A JP 2007108256A JP 2008269067 A JP2008269067 A JP 2008269067A
Authority
JP
Japan
Prior art keywords
instruction
issue
stage
resource
instructions
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
JP2007108256A
Other languages
Japanese (ja)
Other versions
JP5007860B2 (en
Inventor
Hideyuki Sato
秀之 佐藤
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2007108256A priority Critical patent/JP5007860B2/en
Publication of JP2008269067A publication Critical patent/JP2008269067A/en
Application granted granted Critical
Publication of JP5007860B2 publication Critical patent/JP5007860B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Advance Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a vector processing device allowing entry of the maximum possible number of instructions into issue stages for allowing overtaking issue of the maximum possible number of instructions. <P>SOLUTION: The vector processing device is provided with a plurality of issue stages 6 and 8 grouping instructions, a resource agreement detection circuit 4 detecting relation (agreement) between the instruction set to the issue stages 6 and 8 and following instructions set to a decode stage 3, and a means having order flags 5 and 7 storing a result of the resource agreement detection circuit 4 and allowing issue of an instruction when the order flags 5 and 7 for the issue stages 6 and 8 are not turned on and a busy flag 9 corresponding to a resource to be used is not turned on. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、ベクトル処理装置に関する。   The present invention relates to a vector processing device.

従来のベクトル処理装置を図3を参照して説明する。   A conventional vector processing apparatus will be described with reference to FIG.

図3において、901は命令デコードステージ1、902は命令デコーダ、903は命令デコードステージ2、904はリソース一致検出回路、905は命令発行ステージ0、906は命令発行ステージ1、907はビジーフラグ、908は発行チェック回路、909は発行ステージ0、1の発行指示、910は命令発行が命令発行ステージ0、1のどちらかを指示する命令指示フラグ、911は910の命令指示フラグでセレクトされた命令発行ステージ0、1の命令が格納される発行命令で構成される。901の命令デコードステージ1にセットされた命令は、902の命令デコーダで命令が使用するリソースのリクエストなどにデコードされ、903の命令デコードステージ2に格納される。発行ステージ905、906が空いていれば次クロックで発行ステージにセット可能だが空いていなければ空くまで待たされる。また、先行命令が905、906の発行ステージにある場合、903の命令デコードステージ2のリクエストと命令発行ステージ905、906の関係に一致があるかを904のリソース一致検出回路で検出する。一致が検出されると903の命令デコードステージ2に格納された命令リクエストは、一致が検出された先行命令が発行されるまで905の命令発行ステージ0、906の命令発行ステージ1のどちらかが空いていても命令をセットできず後続命令を待たせる課題があった。
特開平08−305567号公報 特開平09−006758号公報
In FIG. 3, 901 is an instruction decode stage 1, 902 is an instruction decoder, 903 is an instruction decode stage 2, 904 is a resource match detection circuit, 905 is an instruction issue stage 0, 906 is an instruction issue stage 1, 907 is a busy flag, and 908 is Issue check circuit, 909 is an issue instruction for issue stages 0 and 1, 910 is an instruction instruction flag for indicating whether instruction issue is instruction issue stage 0 or 1, and 911 is an instruction issue stage selected by the instruction indication flag 910 It consists of issued instructions that store 0 and 1 instructions. The instruction set in the instruction decode stage 1 901 is decoded into a request for resources used by the instruction in the instruction decoder 902 and stored in the instruction decode stage 2 903. If the issue stages 905 and 906 are free, they can be set to the issue stage at the next clock. If the preceding instruction is in the issue stage 905 or 906, the resource match detection circuit 904 detects whether there is a match between the request in the instruction decode stage 2 in 903 and the instruction issue stage 905 or 906. When a match is detected, the instruction request stored in the instruction decode stage 2 in 903 is free of either the instruction issue stage 0 in 905 or the instruction issue stage 1 in 906 until the preceding instruction in which a match is detected is issued. However, there was a problem that the instruction could not be set and the subsequent instruction was waited.
Japanese Patent Laid-Open No. 08-305567 Japanese Patent Laid-Open No. 09-006758

従来のベクトル処理装置の命令追越し発行は、先行2命令の命令間でリソースの一致がある場合、後続命令は先行命令が発行されるまで発行ステージにセットできず、先行2命令間とリソースが一致しなくても実行することができず処理が止まってしまい性能低下になっていた。   In the instruction overtaking issue of the conventional vector processing apparatus, when there is a resource match between the instructions of the preceding two instructions, the succeeding instruction cannot be set in the issue stage until the preceding instruction is issued, and the resource between the preceding two instructions is one. Even if it did not do it, it could not be executed and the processing stopped and the performance was degraded.

本発明の目的は発行ステージに出来るだけ多くの命令をエントリさせることによりできるだけ多くの命令が追い越し発行できるベクトル処理装置を提供することにある。   An object of the present invention is to provide a vector processing apparatus in which as many instructions as possible can be overtaken by entering as many instructions as possible in an issue stage.

命令をグループに分けた複数の発行ステージ(図1の6、8)と、発行ステージ(図1の6、8)にセットされた命令とデコードステージ(図1の3)にセットされている後続命令とのリソースの関係(一致)を検出するリソース一致検出回路(図1の4)と、リソース一致検出回路(図1の4)の結果を格納する順序フラグ(図1の5、7)を有し、発行ステージ(図1の6、8)の順序フラグ(図1の5、7)が点灯していないことと、使用するリソースに対応するビジーフラグ(図1の9)が点灯していないことが満たされれば命令発行を可能にする手段。   Multiple issue stages (6, 8 in FIG. 1) that divide the instructions into groups, instructions set in the issue stage (6, 8 in FIG. 1), and successors set in the decode stage (3 in FIG. 1) A resource match detection circuit (4 in FIG. 1) for detecting a resource relationship (match) with an instruction and an order flag (5, 7 in FIG. 1) for storing the result of the resource match detection circuit (4 in FIG. 1). The order flag (5, 7 in FIG. 1) of the issue stage (6, 8 in FIG. 1) is not lit, and the busy flag (9 in FIG. 1) corresponding to the resource to be used is not lit A means of enabling issuance of instructions if this is satisfied.

本発明の効果は命令の実行順序を保障すべき場合のみ順序を保障し、その必要がない場合は複数命令の追い越し実行が可能となり性能の向上が期待できることである。   The effect of the present invention is that the order is guaranteed only when the instruction execution order is to be guaranteed, and when it is not necessary, the overtaking execution of a plurality of instructions is possible and the improvement in performance can be expected.

以下、図面を参照して本発明を実施するための最良の形態について詳細に説明する。   The best mode for carrying out the present invention will be described below in detail with reference to the drawings.

本発明は、ベクトル処理装置の命令発行制御部において、命令の実行順序を保障すべき場合のみ順序を保障し、その必要がない場合は複数命令の追い越し実行を可能とすることを特徴としている。   The present invention is characterized in that the instruction issuance control unit of the vector processing apparatus guarantees the order only when the instruction execution order should be guaranteed, and allows the overtaking execution of a plurality of instructions when it is not necessary.

図1を参照すると、本発明の一実施形態としてのベクトル処理装置の発行制御部が示されている。図1において、1は命令デコードステージ1、2は命令デコーダ、3は命令デコードステージ2、4はリソース一致検出回路、5は6のA0発行ステージ(加算器系)にセットされた命令のA0発行ステージ(加算器系)順序フラグ、6はA0命令発行ステージ(加算器系)、7は8のM0発行ステージ(乗算器系)にセットされたM0発行ステージ(乗算器系)命令の順序フラグ、8はM0命令発行ステージ(乗算器系)、9はビジーフラグ、10はA0命令発行ステージの命令発行チェック回路、11はM0命令発行ステージの命令発行チェック回路、12はA0発行ステージの発行指示、13はM0発行ステージの発行指示で構成される。順序フラグとは、自命令が発行ステージにセットされる時点で、他の発行ステージに自命令より順序が先である命令が存在することを示すフラグである。順序フラグには他の発行ステージに対応したフラグがそれぞれあり、順序フラグに対応した発行ステージの命令が発行された時点でリセットされ、順序フラグが全てリセットになった時点で自命令のリクエストに対応したビジーフラグをチェックして発行可能になる。発行ステージにセットされている未発行の先行命令と後続命令間の発行順序はリソース一致がある場合は順序フラグで発行管理し、発行済みの命令はビジーフラグで後続命令を発行管理する。以下説明を容易にする為、順序フラグと発行ステージの組み合わせを5、6と7、8の2個で説明する。1の命令デコードステージ1にセットされた命令は、2の命令デコーダで命令が使用するリソースのリクエストにデコードされ、3の命令デコードステージ2に格納される。発行ステージ6、8が空いていれば次クロックで発行ステージにセット可能だが空いていなければ空くまで待たされる。先行命令が6、8の発行ステージにある場合、3の命令デコードステージ2のリクエストと命令発行ステージ6、8のリクエストの関係に一致があるかを4のリソース一致検出回路で検出する。検出結果は、命令発行ステージ6が空けば5のA0発行ステージ順序フラグにセットされ、命令発行ステージ8が空けば7のM0発行ステージ順序フラグにセットされる。3の命令デコードステージ2に格納された命令リクエストは、命令発行ステージ6が空けば命令発行ステージ6にセットされ、命令発行ステージ8が空けば命令発行ステージ8にセットされる。命令発行ステージ6、8が空いている場合は命令順や命令種別の規則に従ってセットされる。10のA0発行チェック回路は、6のA0命令発行ステージの命令リクエストに対応するリソースが空いているかを9のビジーフラグでチェックするのと、先行命令に順序を保障しなければならない命令があるかを5のA0順序フラグでチェックする。両チェックがOKになると12の命令発行指示が点灯し、6のA0命令発行ステージの命令リクエストに対応した9のビジーフラグがセットされ、7のM0発行ステージ順序フラグ内のA0命令発行ステージに対応した順序フラグがリセットされる。同様に11のM0発行チェック回路は、8のM0命令発行ステージの命令リクエストに対応するリソースが空いているかを9のビジーフラグでチェックするのと、先行命令に順序を保障しなければならない命令があるかを7のM0順序フラグでチェックする。両チェックがOKになると13の命令発行指示が点灯し、8のM0命令発行ステージの命令リクエストに対応した9のビジーフラグがセットされ、5のA0発行ステージ順序フラグ内のM0命令発行ステージに対応した順序フラグがリセットされる。上記の説明で発行ステージにセットされた時点での複数の発行ステージにセットされている先行命令との関係を順序フラグで示すことにより順序が保障され、順序フラグが全てリセットになった時点で発行が可能になり後続の命令でも先行命令とのリソースの一致がなければ先行命令を複数追い越しての発行が可能になる。   Referring to FIG. 1, an issue control unit of a vector processing apparatus as an embodiment of the present invention is shown. In FIG. 1, 1 is an instruction decode stage 1, 2 is an instruction decoder, 3 is an instruction decode stage 2, 4 is a resource match detection circuit, and 5 is an A0 issue of an instruction set in an A0 issue stage (adder system) 6 Stage (adder system) order flag, 6 is an A0 instruction issue stage (adder system), 7 is an M0 issue stage (multiplier system) instruction order flag set in 8 M0 issue stage (multiplier system), 8 is an M0 instruction issue stage (multiplier system), 9 is a busy flag, 10 is an instruction issue check circuit at the A0 instruction issue stage, 11 is an instruction issue check circuit at the M0 instruction issue stage, 12 is an issue instruction for the A0 issue stage, 13 Consists of an issue instruction for the M0 issue stage. The order flag is a flag indicating that an instruction whose order is ahead of its own instruction exists in another issue stage when the own instruction is set in the issue stage. Each order flag has a flag corresponding to the other issue stage. It is reset when the instruction of the issue stage corresponding to the order flag is issued, and responds to the request of its own instruction when all the order flags are reset. The busy flag can be checked and issued. When there is a resource match, the issue order between an unissued preceding instruction and subsequent instruction set in the issue stage is issued and managed with an order flag, and issued instructions are managed with a busy flag. In order to facilitate the explanation, the combination of the order flag and the issue stage will be described with two of 5, 6, 7, and 8. The instruction set in one instruction decode stage 1 is decoded into a request for resources used by the instruction in the two instruction decoders and stored in the three instruction decode stage 2. If issuance stages 6 and 8 are free, they can be set to the issuance stage at the next clock. When the preceding instruction is in the issue stages 6 and 8, the resource match detection circuit 4 detects whether or not there is a match between the request of the instruction decode stage 2 and the request of the instruction issue stages 6 and 8. The detection result is set to the A0 issue stage order flag of 5 if the instruction issue stage 6 is empty, and is set to the M0 issue stage order flag of 7 if the instruction issue stage 8 is empty. The instruction request stored in the instruction decode stage 2 is set to the instruction issue stage 6 if the instruction issue stage 6 is empty, and is set to the instruction issue stage 8 if the instruction issue stage 8 is empty. When the instruction issue stages 6 and 8 are vacant, they are set according to the instruction order and instruction type rules. The A0 issue check circuit of 10 checks whether the resource corresponding to the instruction request of the A0 instruction issue stage of 6 is free by the 9 busy flag and whether there is an instruction whose order must be guaranteed for the preceding instruction. Check with 5 A0 order flag. When both checks are OK, 12 instruction issue instructions light, 9 busy flags corresponding to 6 A0 instruction issue stage instruction requests are set, and 7 correspond to the A0 instruction issue stage in the M0 issue stage order flag. The order flag is reset. Similarly, the 11 M0 issue check circuit checks whether the resource corresponding to the instruction request in the 8 M0 instruction issue stage is free by the 9 busy flag, and there is an instruction that must guarantee the order of the preceding instructions. Check the 7 M0 order flag. When both checks are OK, 13 instruction issue instructions light up, 9 busy flags corresponding to 8 M0 instruction issue stage instruction requests are set, and 5 M0 instruction issue stages in the A0 issue stage order flag The order flag is reset. In the above explanation, the order is guaranteed by showing the relationship with the preceding instruction set in multiple issue stages at the time when it is set in the issue stage, and issued when all the order flags are reset. If there is no resource match with the preceding instruction even in the succeeding instruction, a plurality of preceding instructions can be issued.

次に図1のベクトル処理装置の下記命令列の動作を図2に示すタイムチャートを使用して説明する。
(1) V2 <− V0 + V1
(2) V3 <− V6 + V7
(3) V0 <− V4 * V5
図1、2において命令間でリソースの一致がないケースを従来技術と比較して説明する。
Next, the operation of the following instruction sequence of the vector processing apparatus of FIG. 1 will be described using the time chart shown in FIG.
(1) V2 <-V0 + V1
(2) V3 <-V6 + V7
(3) V0 <-V4 * V5
A case where there is no resource match between instructions in FIGS. 1 and 2 will be described in comparison with the prior art.

INから上記の命令順で図1−1の命令デコードステージ1に(1)がセットされる。次クロックで(1)の命令は図1−2の命令デコーダで命令が使用するリソースのリクエスト、READリクエストV0、V1、WriteリクエストV2、使用演算器A(加算器系)にデコードされ図1−3の命令デコードステージ2にセットされると同時に(2)の命令が図1−1の命令デコードステージ1にセットされる。次に図1−3の命令デコードステージ2にセットされた(1)の命令は加算器系命令なので図1−6のA0発行ステージにセットされるが図1−5のA0発行ステージ順序フラグには先行命令がない為何もセットされない。図1−1の命令デコードステージ1の(2)の命令は、図1−2の命令デコーダで命令が使用するリソースのリクエスト、READリクエストV6、V7、WriteリクエストV3、使用演算器A(加算器系)にデコードされ図1−3の命令デコードステージ2にセットされると同時に(3)の命令が図1−1の命令デコードステージ1にセットされる。図1−6のA0発行ステージにセットされた(1)の命令はREADリクエストV0、V1、WriteリクエストV2、使用演算器A(加算器系)に対応する図1−9のビジーフラグが点灯してないことと図1−5のA0発行ステージ順序フラグが全てリセットされていることをチェックして図1−12の命令発行指示を点灯する。次クロックで図1−12の命令発行指示によりの命令のREADリクエストV0、V1、WriteリクエストV2、使用演算器A(加算器系)に対応する図1−9のビジーフラグをセットすると同時に図1−3の命令デコードステージ2にセットされている(2)の命令が図1−6のA0発行ステージにセットされる。この時図1−5のA0発行ステージ順序フラグは再セットされる。図1−1の命令デコードステージ1の(3)命令は図1−2の命令デコーダで命令が使用するリソースのリクエスト、READリクエストV4、V5、WriteリクエストV0、使用演算器M(乗算器系)にデコードされ図1−3の命令デコードステージ2にセットされる。(1)命令の発行で使用演算器Aのビジーを示す図2のビジーフラグAがセットされ図1−6のA0発行ステージの後続(2)命令はビジーフラグAがリセットされるまで発行は抑止される。ここで従来動作では図1−6のA0発行ステージ、図1−8のM0発行ステージに値する発行ステージは1個のみだった為、図2の従来動作参照、先行命令(2)が発行されるまで図1−3の命令デコードステージ2の(3)命令は発行ステージが空くまで待たされることになる。図2の本発明動作では、順序フラグを発行ステージに設置することにより、図1−6のA0発行ステージ、図1−8のM0発行ステージの発行ステージを複数増設することが可能になり、図1−3の(3)命令は待つことなく空いている図1−8のM0発行ステージにセット可能になり、リソースの一致がない為即座に発行される。   (1) is set in the instruction decode stage 1 in FIG. In the next clock, the instruction (1) is decoded by the instruction decoder shown in FIG. 1-2 into a request for resources used by the instruction, a READ request V0, V1, a Write request V2, and a computing unit A (adder system). At the same time, the instruction (2) is set in the instruction decode stage 1 in FIG. Next, since the instruction (1) set in the instruction decode stage 2 in FIG. 1-3 is an adder system instruction, it is set in the A0 issue stage in FIG. 1-6, but in the A0 issue stage order flag in FIG. 1-5. Is not set because there is no preceding instruction. The instruction (2) in the instruction decode stage 1 in FIG. 1-1 includes a request for resources used by the instruction in the instruction decoder in FIG. 1-2, a READ request V6, V7, a Write request V3, and a computing unit A (adder). And the instruction (3) is set at the instruction decode stage 1 of FIG. 1-1. In the instruction (1) set in the A0 issue stage in FIG. 1-6, the READ request V0, V1, Write request V2, and the busy flag in FIG. 1-9 corresponding to the used arithmetic unit A (adder system) are lit. It is checked that all the A0 issue stage order flags in FIG. 1-5 are reset, and the instruction issue instruction in FIG. 1-12 is turned on. In the next clock, the READ request V0, V1, Write request V2 of the instruction according to the instruction issuance instruction of FIG. 1-12, and the busy flag of FIG. 1-9 corresponding to the used arithmetic unit A (adder system) are set at the same time. The instruction (2) set in the instruction decode stage 2 of No. 3 is set in the A0 issue stage of FIG. 1-6. At this time, the A0 issue stage order flag in FIG. 1-5 is reset. The instruction decode stage 1 (3) in FIG. 1-1 is a request for resources used by the instruction in the instruction decoder in FIG. 1-2, a READ request V4, V5, a Write request V0, and a computing unit M (multiplier system). And set to the instruction decode stage 2 in FIG. (1) The busy flag A shown in FIG. 2 indicating busy of the used arithmetic unit A is set by issuing an instruction, and subsequent (2) instructions in the A0 issue stage of FIG. 1-6 are inhibited from being issued until the busy flag A is reset. . Here, in the conventional operation, since there is only one issue stage worth the A0 issue stage in FIG. 1-6 and the M0 issue stage in FIG. 1-8, the conventional operation reference in FIG. 2 and the preceding instruction (2) are issued. Until this time, the instruction (3) in the instruction decode stage 2 in FIG. In the operation of the present invention shown in FIG. 2, it is possible to add a plurality of issue stages of the A0 issue stage of FIG. 1-6 and the M0 issue stage of FIG. The 1-3 (3) instruction can be set in the free M0 issue stage of FIG. 1-8 without waiting, and is issued immediately because there is no resource match.

引用文献1については段落0028〜0029で競合検査において処理中のリソースと後続のリソースが一致した時に命令の発行を抑止するとありますが、本発明では修理中(演算実行)の命令と後続未発行の命令はBUSY FLAGで抑止する点で相違する。   Regarding the cited document 1, in the paragraphs 0028 to 0029, it is said that the issue of an instruction is suppressed when the resource being processed and the subsequent resource match in the contention check. The instruction is different in that it is inhibited by BUSY FLAG.

引用文献2については第0012〜0014に記載の実行制御手段に命令順でセットされ、命令セット順で実行され、ビジー状態をチェックする事なく演算の終了をみて後続命令を発行すると言う動作よりも、本発明のBUSY FLAGで後続命令の発行タイミングを調整したほうが命令発行の前倒しができる。   For the cited document 2, it is set in the execution control means described in Nos. 0012 to 0014 in the order of instructions, executed in the order of instruction set, and the subsequent instruction is issued after checking the completion of the operation without checking the busy state. If the issue timing of the subsequent instruction is adjusted by the BUSY FLAG of the present invention, the instruction issuance can be advanced.

本発明によれば、複数のフラグを用いて複数命令の追い越し実行を可能とする命令発行制御部を備える。   According to the present invention, an instruction issuance control unit that enables overtaking execution of a plurality of instructions using a plurality of flags is provided.

命令発行とパイプライン処理中の取り方で変わってくるが、本発明の命令発行とは演算の実行を示し、命令発行と同時にリソースに対するBUSY FLAGをSETしBUSY FLAG点灯中は後続命令の発行(演算実行)を抑止します。BUSY FLAGには演算ラテンシ(レイテンシ)に合わせて数種類用意しリソースの使用に隙間ができない様にしている。   Depending on how the instruction is issued and how it is taken during pipeline processing, the instruction issuance according to the present invention indicates the execution of an operation. (Calculation execution) is suppressed. Several types of BUSY FLAG are prepared in accordance with the operation latency (latency) so that there is no gap in the use of resources.

本発明の順序FLAGとは発行(演算実行)する前の順序を示す手段でDATAを壊さない様に順序を決める。命令を発行するステージを発行ステージと呼んでいるが、発行ステージにある命令は未発行であり、後続の命令が発行ステージにSETされる時には自分よりも前に発行ステージにSETされた命令との関係を知る必要がありリソースの一致が検出された場合は相手に対応する順序FLAGを発行ステージSETと同時にSETする。SETされた順序FLAGは順序FLAGに対応する発行ステージの命令が発行(演算実行)と同時にRESETされる。後続命令は順序FLAGが全てRESETされて発行の権利を得ることができる。次に発行の権利を得た発行ステージの命令は自分のリソースに対応するBUSY FLAGをチェックする。対応するBUSY FLAGが全てRESETされたことをチェックして発行(演算実行)する。   The order FLAG of the present invention is a means for indicating the order before issuance (calculation execution) and determines the order so as not to break DATA. The stage that issues an instruction is called the issue stage, but the instruction in the issue stage has not been issued, and when a subsequent instruction is set in the issue stage, the instruction set in the issue stage before itself is If it is necessary to know the relationship and a resource match is detected, the order FLAG corresponding to the partner is set simultaneously with the issue stage SET. The set order FLAG is reset simultaneously with the issuance (operation execution) of the instruction at the issue stage corresponding to the order FLAG. Subsequent instructions can be issued with all sequence FLAGs being reset. Next, the instruction of the issue stage that has obtained the issue right checks the BUSY FLAG corresponding to its own resource. Check that all corresponding BUSY FLAGs have been reset and issue (calculate).

発行ステージをハードウェア量が許す限り増やせば後続命令が先行命令を追い越すケースを増やすことができリソースを有効に使用できる。また、デコードステージに滞留するTOTAL時間を短くできる。   If the issue stage is increased as much as the hardware amount permits, the number of cases where the subsequent instruction overtakes the preceding instruction can be increased, and resources can be used effectively. Further, the TOTAL time staying in the decode stage can be shortened.

本発明の実施形態によるベクトル処理装置の構成を示す図である。It is a figure which shows the structure of the vector processing apparatus by embodiment of this invention. 本発明の実施形態によるベクトル処理装置の動作と従来例によるベクトル処理装置の動作とを示すタイミング図である。It is a timing diagram which shows operation | movement of the vector processing apparatus by embodiment of this invention, and operation | movement of the vector processing apparatus by a prior art example. 従来例によるベクトル処理装置の構成を示す図である。It is a figure which shows the structure of the vector processing apparatus by a prior art example.

符号の説明Explanation of symbols

1 デコードステージ1
2 命令デコーダ
3 命令デコードステージ2
4 リソース一致検出回路
5 A0発行ステージ(加算器系)にセットされた命令のA0発行ステージ(加算器系)順序フラグ
6 A0命令発行ステージ(加算器系)
7 8のM0発行ステージ(乗算器系)にセットされたM0発行ステージ(乗算器系)命令の順序フラグ
8 M0命令発行ステージ(乗算器系)
9 ビジーフラグ
10 A0命令発行ステージの命令発行チェック回路
11 M0命令発行ステージの命令発行チェック回路
12 A0発行ステージの発行指示
13 M0発行ステージの発行指示
1 Decode stage 1
2 Instruction decoder 3 Instruction decode stage 2
4 Resource match detection circuit 5 A0 issue stage (adder system) order flag of instruction set in A0 issue stage (adder system) 6 A0 instruction issue stage (adder system)
7 M0 issue stage (multiplier system) instruction sequence flag set in 8 M0 issue stages (multiplier system) 8 M0 instruction issue stage (multiplier system)
9 Busy flag 10 A0 instruction issue stage instruction issue check circuit 11 M0 instruction issue stage instruction issue check circuit 12 A0 issue stage issue instruction 13 M0 issue stage issue instruction

Claims (4)

命令の実行順序を保障すべき場合のみ順序を保障し、その必要がない場合は複数命令の追い越し実行を可能とする命令発行制御部を具備するベクトル処理装置。   A vector processing apparatus comprising an instruction issue control unit that guarantees the order only when the instruction execution order should be guaranteed, and allows the overtaking execution of a plurality of instructions when it is not necessary. 命令をグループに分けた複数の発行ステージ(6、8)と、発行ステージ(6、8)にセットされた命令とデコードステージ(3)にセットされている後続命令とのリソースの関係(一致)を検出するリソース一致検出回路(4)と、リソース一致検出回路(4)の結果を格納する順序フラグ(5、7)を有し、発行ステージ(6、8)の順序フラグ(5、7)が点灯していないことと、使用するリソースに対応するビジーフラグ(9)が点灯していないことが満たされれば命令発行を可能にする手段を備えることを特徴とするベクトル処理装置。   Resource relationship (match) between a plurality of issue stages (6, 8) in which instructions are grouped, an instruction set in the issue stage (6, 8), and a subsequent instruction set in the decode stage (3) And a sequence flag (5, 7) of the issue stage (6, 8), and a sequence flag (5, 7) for storing the result of the resource match detection circuit (4). A vector processing apparatus comprising: means for issuing an instruction if it is satisfied that is not lit and that the busy flag (9) corresponding to the resource to be used is not lit. 命令の実行順序を保障すべき場合のみ順序を保障し、その必要がない場合は複数命令の追い越し実行を可能とする命令発行制御部を具備するベクトル処理方法。   A vector processing method comprising an instruction issuance control unit that guarantees the order only when the instruction execution order should be guaranteed, and enables the overtaking execution of a plurality of instructions when it is not necessary. 命令をグループに分けた複数の発行ステージ(6、8)と、発行ステージ(6、8)にセットされた命令とデコードステージ(3)にセットされている後続命令とのリソースの関係(一致)を検出するリソース一致検出回路(4)と、リソース一致検出回路(4)の結果を格納する順序フラグ(5、7)を有するベクトル処理装置におけるベクトル処理方法において、発行ステージ(6、8)の順序フラグ(5、7)が点灯していないことと、使用するリソースに対応するビジーフラグ(9)が点灯していないことが満たされれば命令発行を可能にする手順を備えることを特徴とするベクトル処理方法。   Resource relationship (match) between a plurality of issue stages (6, 8) in which instructions are grouped, an instruction set in the issue stage (6, 8), and a subsequent instruction set in the decode stage (3) In the vector processing method in the vector processing apparatus having the resource match detection circuit (4) for detecting the result and the order flag (5, 7) for storing the result of the resource match detection circuit (4), the issue stage (6, 8) A vector comprising a procedure for enabling instruction issuance if it is satisfied that the order flag (5, 7) is not lit and the busy flag (9) corresponding to the resource to be used is not lit Processing method.
JP2007108256A 2007-04-17 2007-04-17 Vector processing equipment Active JP5007860B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007108256A JP5007860B2 (en) 2007-04-17 2007-04-17 Vector processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007108256A JP5007860B2 (en) 2007-04-17 2007-04-17 Vector processing equipment

Publications (2)

Publication Number Publication Date
JP2008269067A true JP2008269067A (en) 2008-11-06
JP5007860B2 JP5007860B2 (en) 2012-08-22

Family

ID=40048518

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007108256A Active JP5007860B2 (en) 2007-04-17 2007-04-17 Vector processing equipment

Country Status (1)

Country Link
JP (1) JP5007860B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193378A (en) * 2008-02-14 2009-08-27 Nec Computertechno Ltd Vector processing device
JP2011060048A (en) * 2009-09-10 2011-03-24 Nec Computertechno Ltd Apparatus, method and program for processing information

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5729153A (en) * 1980-07-29 1982-02-17 Fujitsu Ltd Control system for instruction processing order
JPS6116335A (en) * 1984-07-02 1986-01-24 Nec Corp Information processor
JPH03263265A (en) * 1990-03-14 1991-11-22 Koufu Nippon Denki Kk Vector processor
JPH07182160A (en) * 1993-10-29 1995-07-21 Advanced Micro Devicds Inc Superscalar microprocessor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5729153A (en) * 1980-07-29 1982-02-17 Fujitsu Ltd Control system for instruction processing order
JPS6116335A (en) * 1984-07-02 1986-01-24 Nec Corp Information processor
JPH03263265A (en) * 1990-03-14 1991-11-22 Koufu Nippon Denki Kk Vector processor
JPH07182160A (en) * 1993-10-29 1995-07-21 Advanced Micro Devicds Inc Superscalar microprocessor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193378A (en) * 2008-02-14 2009-08-27 Nec Computertechno Ltd Vector processing device
JP2011060048A (en) * 2009-09-10 2011-03-24 Nec Computertechno Ltd Apparatus, method and program for processing information

Also Published As

Publication number Publication date
JP5007860B2 (en) 2012-08-22

Similar Documents

Publication Publication Date Title
EP3230861B1 (en) Technologies for fast synchronization barriers for many-core processing
US8479207B2 (en) Priority inheritance in multithreaded systems
US8555256B2 (en) Pass-by breakpoint setting and debugging method and device
CN110648136B (en) Consensus and transaction synchronous parallel processing method and device and electronic equipment
US9760411B2 (en) Switching a locking mode of an object in a multi-thread program
US11182318B2 (en) Processor and interrupt controller
US11868780B2 (en) Central processor-coprocessor synchronization
KR100983135B1 (en) Processor and method of grouping and executing dependent instructions in a packet
CN114201219B (en) Instruction scheduling method, instruction scheduling device, processor and storage medium
JP2005235135A (en) Vector processor and passing control circuit
JP2008522277A (en) Efficient switching between prioritized tasks
JP5007860B2 (en) Vector processing equipment
JP4985452B2 (en) Vector processing equipment
JP5195408B2 (en) Multi-core system
JP4420055B2 (en) Multi-thread processor and inter-thread synchronous operation method used therefor
EP3591518A1 (en) Processor and instruction scheduling method
US20100211759A1 (en) Apparatus and method for generating vliw, and processor and method for processing vliw
WO2016201699A1 (en) Instruction processing method and device
US10671399B2 (en) Low-overhead, low-latency operand dependency tracking for instructions operating on register pairs in a processor core
US9378023B2 (en) Cross-pipe serialization for multi-pipeline processor
JP2011107939A (en) Redundant system information processor
JP2007193744A (en) Information processing device, program and scheduling method
CN112445587A (en) Task processing method and task processing device
JP2004127154A (en) Information processor, instruction emulation device and instruction emulation processing/execution method
US7941638B2 (en) Facilitating fast scanning for control transfer instructions in an instruction fetch unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080917

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100902

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101215

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120507

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120516

R150 Certificate of patent or registration of utility model

Ref document number: 5007860

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150608

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350