CN108228236A - A kind of powerful instruction for supporting flowing water emits processing circuit - Google Patents
A kind of powerful instruction for supporting flowing water emits processing circuit Download PDFInfo
- Publication number
- CN108228236A CN108228236A CN201711281038.0A CN201711281038A CN108228236A CN 108228236 A CN108228236 A CN 108228236A CN 201711281038 A CN201711281038 A CN 201711281038A CN 108228236 A CN108228236 A CN 108228236A
- Authority
- CN
- China
- Prior art keywords
- instruction
- module
- decode
- decoding
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
The invention belongs to technical field of integrated circuits, are related to a kind of powerful instruction for supporting flowing water and emit processing circuit, including pre-decode module 1, decoding module 2;The present invention can reach following effect:1st, pretreatment of the pre-decode to latch instruction saves the decoding time of the 1st or the 2nd article of instruction, reduces the invalid overturning number of decoding circuit level;As long as the 2, there is instruction in the buffer of fetching module always, instruction that scoreboard is given can emit signal the decoding period effectively and double firing orders of pre-decode are uncorrelated, can be achieved with 3 grades of most fast flowing water;3rd, instruction issue series is few, and emission effciency is high, and circuit is simple.
Description
Technical field
The invention belongs to technical field of integrated circuits, are related to a kind of powerful instruction for supporting flowing water and emit processing circuit.
Background technology
In superscalar processor, due to there are data, structure, control are related, leading to instruction below between instruction not
It can be immediately performed, assembly line must pause the instruction that can just continue to execute after several periods below, cause pipelining delay.It will
Make assembly line that there is good performance, it is necessary to try to enable the unimpeded flowing of assembly line.Therefore, to improve cpu busy percentage, accelerate to hold
Instruction is divided into several stages by scanning frequency degree, can perform the different phase of different instruction parallel, so as to which multiple instruction can be held simultaneously
Row.In the case where having efficiently controlled pipeline blocking, assembly line is greatly improved instruction execution speed.
Invention content
The object of the present invention is to provide a kind of powerful instructions for supporting flowing water to emit processing circuit, effectively raises transmitting
The efficiency of instruction, improves cpu busy percentage.
The present invention technical solution be:
A kind of powerful instruction for supporting flowing water emits processing circuit, including pre-decode module 1, decoding module 2;
Pre-decode module 1 is connect with decoding module 2, fetching module 3, Scoreboard module 4, is translated in advance according to pre-decode module 1
The command related signal of code, the instruction that the buffer of fetching module 3 has a command signal and Scoreboard module 4 provides can emission states
Signal takes out 2 instructions a, b from the buffer of fetching module 3, carries out pre-decode according to instruction encoding rule, this 2 are referred to
Data, structure and the control dependence of order are detected, and 2 instructions and command related signal are exported to decoding module 2, and will
Source operand address, the destination address used is instructed, functional unit status information is exported to Scoreboard module 4;
Decoding module 2 and pre-decode module 1, fetching module 3, Scoreboard module 4, RF modules 5,6 phase of performance unit module
Connection instructs 2 that pre-decode module 1 provides into row decoding, and the command information after decoding includes reading RF addresses, RF enables letter
Number, command control signal, destination address, 2 commanded state informations emitted and transmitting jump instruction status information;It will
It reads RF addresses and RF enable signals is exported to RF modules 5;The instruction source operand that RF modules 5 provide is exported and gives execution unit mould
Block 6;The instruction that 2 command related signals and Scoreboard module 4 provided according to pre-decode module 1 provide can emission state signal
Command control signal after decoding and destination address are selected, and by the defeated of command control signal after selection and destination address
Go out to performance unit module 6;Emitting 2 commanded state informations are exported to Scoreboard module 4 simultaneously, and by transmitting
Jump instruction status information is exported to fetching module 3.
Pre-decode module 1 reads the enabled condition for validity of buffer from the buffer of fetching module 3, comprising as follows:
21) there is instruction in buffer always, 2 instructions a, b of pre-decode are uncorrelated, and 2 instructions a, b of scoreboard can be simultaneously
Transmitting;
22) there is instruction in buffer always, 2 instructions a, b of pre-decode are related, and instruction a transmittings are completed and the finger of scoreboard
Enable b that can emit;
23) from without instruction, to when having instruction, relevant 2 instructions a, the b of pre-decode emits completion in buffer;
24) from without instruction, to when having instruction, incoherent 2 instructions a, b transmitting of pre-decode is completed in buffer.
2 instructions are taken out from the buffer of fetching module 3 to further include later:
Pre-decode module 1 to the instruction from the buffer of fetching module 3 taking-up according to read buffer enable useful signal into
Row latches, and then the instruction of latch is pre-processed;
Preprocess method is as follows:
31) when the position that instruction a is the jump instruction of unconditional and 2 firing orders start to perform is instruction a, b is instructed
It is constant to replace with instruction nop, instruction a;
32) when 2 firing orders start the position performed as instruction b, it is constant that instruction a replaces with instruction nop, instruction b.
When 2 instructions of pre-decode are related in decoding module 2, decoding instruction needs to split, and the sequence sent after fractionation is first
A is instructed, instructs b afterwards;When uncorrelated, do not need to split.
It is conditional jump instructions that a is instructed in decoding module 2, and when redirecting successfully, instruction b instructions can emit;It redirects unsuccessful
When, instruction b does not emit.
The solution have the advantages that:
1st, pretreatment of the pre-decode to latch instruction saves the decoding time of the 1st or the 2nd article of instruction, reduces decoding
The invalid overturning number of circuit level;
As long as the 2, there is instruction in the buffer of fetching module always, the instruction that scoreboard is given can emit signal in the decoding period
Effectively and double firing orders of pre-decode are uncorrelated, can be achieved with 3 grades of most fast flowing water;
3rd, instruction issue series is few, and emission effciency is high, and circuit is simple.
Description of the drawings
Fig. 1 is the instruction issue processing circuit figure of the present invention.
Specific embodiment
In the following with reference to the drawings and specific embodiments, technical scheme of the present invention is clearly and completely stated.Obviously,
The embodiment stated only is part of the embodiment of the present invention, instead of all the embodiments, based on the embodiments of the present invention,
Those skilled in the art are not making creative work premise all other embodiments obtained, belong to the guarantor of the present invention
Protect range.
As shown in Figure 1, a kind of powerful instruction for supporting flowing water emits processing circuit, inside includes pre-decode module 1, decoding
Module 2.Its function of mainly completing 2 instructions (instruction a and instruction b) while emit processing, instruction issue are divided into fetching, translate in advance
3 grades of code/decoding and transmitting.
The concrete structure and function of each module are discussed in detail separately below:
Pre-decode module 1 is connect with decoding module 2, fetching module 3, Scoreboard module 4, according to this module pre-decode
Command related signal, fetching module 3 buffer have a command signal and instruction that Scoreboard module 4 provides can emission state signal
2 instructions are taken out from the buffer of fetching module 3, pre-decode are carried out according to instruction encoding rule, to the number of this 2 instructions
It is detected according to, structure and control dependence, 2 instructions and command related signal is exported to decoding module 2, and instruction is made
Source operand address, destination address, functional unit status information are exported to Scoreboard module 4;
Pre-decode module 1 reads the enabled condition for validity of buffer from the buffer of fetching module 3, including following 4 kinds:
1) there is instruction in buffer always, 2 instructions a, b of pre-decode are uncorrelated, and 2 instructions a, b of scoreboard can be simultaneously
Transmitting;
2) there is instruction in buffer always, 2 instructions a, b of pre-decode are related, and instruction a transmittings are completed and the instruction of scoreboard
B can emit;
3) from without instruction, to when having instruction, relevant 2 instructions a, the b of pre-decode emits completion in buffer;
4) from without instruction, to when having instruction, incoherent 2 instructions a, b transmitting of pre-decode is completed in buffer.
Pre-decode module 1 according to read buffer enable useful signal to the instruction from the buffer of fetching module 3 taking-up into
Row latches, and then the instruction of latch is pre-processed, processing method is as follows:
1) when the position that instruction a is the jump instruction of unconditional and 2 firing orders start to perform is instruction a, instruction b is replaced
It is constant to be changed to instruction nop, instruction a;
2) when 2 firing orders start the position performed as instruction b, it is constant that instruction a replaces with instruction nop, instruction b.
Decoding module 2 mainly realizes 2 decodings instructed and emission function, 2 instructions provided to pre-decode module 1
Into row decoding, the command information after decoding includes reading RF file addresses, RF files enable signal, command control signal, destination
The jump instruction status information of location, 2 emitted commanded state information and transmitting;It will read RF file addresses and enable signal
It exports to RF file modules 5;The instruction source operand that RF file modules 5 provide is exported to performance unit module 6;According to translating in advance
The instruction that 2 command related signals providing of code module 1 and Scoreboard module 4 provide can emission state signal to the finger after decoding
Control signal and destination address is enabled to be selected, and exporting command control signal after selection and destination address to execution unit
Module 6;Emitting 2 commanded state informations are exported to Scoreboard module 4 simultaneously, and by the jump instruction state of transmitting
Information is exported to fetching module 3.
In decoding module 2 when 2 instructions of pre-decode are related, 2 instructions need to split, and the sequence sent after fractionation is first
A is instructed, instructs b afterwards;When uncorrelated, do not need to split;
Wherein, instruction a is conditional jump instructions, needs to split;When instruction a is redirected successfully, instruction b instructions can emit;Instruct a
When redirecting unsuccessful, instruction b does not emit.
The condition of decoding instruction selection transmitting in decoding module 2, comprising as follows:
1) when 2 instructions of pre-decode module 1 are related, the instruction a of Scoreboard module 4 can emit signal effectively and transmitting refers to
When enabling a marks effective, emit the instruction a of decoding;The instruction b of Scoreboard module 4 can emit signal effectively and firing order b indicates
When effective, emit the instruction b of decoding;Wherein, firing order b marks are when firing order a marks are effective, just effectively, are being sent out
When penetrating instruction b completions, in vain.
2) when 2 of pre-decode module 1 instructions are uncorrelated, it is effective that 2 instructions of Scoreboard module 4 can emit signal simultaneously
When, emit 2 instructions of decoding.
It supports the powerful instruction transmitting process flow of flowing water, includes following steps:
1) command signal had according to the buffer of the command related signal of pre-decode module 1, fetching module 3 and a template die of scoring
The instruction that block 4 provides can the generation of emission state signal the reading buffer of instruction read from the buffer of fetching module 3 enabled
Imitate signal;
2) useful signal is enabled according to reading buffer, 2 instructions is taken out from the buffer of fetching module 3, and to this 2
Instruction is latched;
3) instruction of latch is pre-processed;
4) to treated, 2 instructions carry out pre-decode and decoding;Wherein, pre-decode and decoding are all according to instruction encoding
What rule carried out.
Finally it should be noted that the above embodiments are merely illustrative of the technical solutions of the present invention, rather than its limitations;Although
The present invention is described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that;It still may be used
To modify to the technical solution that foregoing embodiments are recorded or carry out equivalent replacement to which part technical characteristic;And
These modifications are replaced, the spirit and model of various embodiments of the present invention technical solution that it does not separate the essence of the corresponding technical solution
It encloses.
Claims (5)
1. a kind of powerful instruction for supporting flowing water emits processing circuit, it is characterised in that:Including pre-decode module (1), decoding mould
Block (2);
Pre-decode module (1) is connect with decoding module (2), fetching module (3), Scoreboard module (4), according to pre-decode module
(1) command related signal of pre-decode, fetching module (3) buffer have a command signal and a finger that Scoreboard module (4) provides
Enable can emission state signal is taken out from the buffer of fetching module (3) 2 instruction a, b, according to instruction encoding rule carry out in advance
Decoding, to this 2 instruction data, structure and control dependence be detected, by 2 instruction and command related signal export to
Decoding module (2), and source operand address, the destination address used will be instructed, functional unit status information is exported to scoreboard
Module (4);
Decoding module (2) and pre-decode module (1), fetching module (3), Scoreboard module (4), RF modules (5), execution unit mould
Block (6) is connected, and 2 that pre-decode module (1) provides is instructed into row decoding, the command information after decoding is included with reading RF
Location, RF enable signals, command control signal, destination address, 2 commanded state informations emitted and transmitting jump instruction
Status information;It will read RF addresses and RF enable signals export and give RF modules (5);The instruction source operand that RF modules (5) are provided
It exports and gives performance unit module (6);2 command related signals and Scoreboard module (4) provided according to pre-decode module (1) to
Go out instruction can emission state signal the command control signal after decoding and destination address are selected, and will be instructed after selection
Control signal and exporting for destination address give performance unit module (6);Emitting 2 commanded state informations are exported simultaneously
Scoreboard module (4) is given, and the jump instruction status information of transmitting is exported and gives fetching module (3).
2. a kind of powerful instruction for supporting flowing water according to claim 1 emits processing circuit, it is characterised in that:Pre-decode
Module (1) reads the enabled condition for validity of buffer from the buffer of fetching module (3), comprising as follows:
21) there is instruction in buffer always, 2 instructions a, b of pre-decode are uncorrelated, and 2 instructions a, b of scoreboard can be sent out simultaneously
It penetrates;
22) there is instruction in buffer always, 2 instructions a, b of pre-decode are related, and instruction a transmittings are completed and the instruction b of scoreboard can
Transmitting;
23) from without instruction, to when having instruction, relevant 2 instructions a, the b of pre-decode emits completion in buffer;
24) from without instruction, to when having instruction, incoherent 2 instructions a, b transmitting of pre-decode is completed in buffer.
3. a kind of powerful instruction for supporting flowing water according to claim 1 emits processing circuit, it is characterised in that:From fetching
2 instructions are taken out in the buffer of module (3) to further include later:
Pre-decode module (1) to the instruction from the buffer of fetching module (3) taking-up according to read buffer enable useful signal into
Row latches, and then the instruction of latch is pre-processed;
Preprocess method is as follows:
31) when the position that instruction a is the jump instruction of unconditional and 2 firing orders start to perform is instruction a, instruction b is replaced
To instruct nop, instruction a is constant;
32) when 2 firing orders start the position performed as instruction b, it is constant that instruction a replaces with instruction nop, instruction b.
4. a kind of powerful instruction for supporting flowing water according to claim 1 emits processing circuit, it is characterised in that:Decode mould
When 2 instructions of pre-decode are related in block (2), decoding instruction needs to split, and the sequence sent after fractionation is first to instruct a, rear to instruct
b;When uncorrelated, do not need to split.
5. a kind of powerful instruction for supporting flowing water according to claim 1 emits processing circuit, it is characterised in that:Decode mould
Instruction a is conditional jump instructions in block (2), and when redirecting successfully, instruction b instructions can emit;When redirecting unsuccessful, instruction b is not sent out
It penetrates.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711281038.0A CN108228236A (en) | 2017-12-06 | 2017-12-06 | A kind of powerful instruction for supporting flowing water emits processing circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711281038.0A CN108228236A (en) | 2017-12-06 | 2017-12-06 | A kind of powerful instruction for supporting flowing water emits processing circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108228236A true CN108228236A (en) | 2018-06-29 |
Family
ID=62653370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711281038.0A Pending CN108228236A (en) | 2017-12-06 | 2017-12-06 | A kind of powerful instruction for supporting flowing water emits processing circuit |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108228236A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110941450A (en) * | 2019-11-21 | 2020-03-31 | 中国航空工业集团公司西安航空计算技术研究所 | Instruction emission processing circuit of RISC processor |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5251306A (en) * | 1990-01-16 | 1993-10-05 | Advanced Micro Devices, Inc. | Apparatus for controlling execution of a program in a computing device |
CN102214084A (en) * | 2011-06-17 | 2011-10-12 | 哈尔滨理工大学 | Eight-bit high-speed microcontroller IP soft core |
CN102662637A (en) * | 2012-03-30 | 2012-09-12 | 中国人民解放军国防科学技术大学 | Instruction transmitting method for very-long instruction word processor |
CN102750133A (en) * | 2012-06-20 | 2012-10-24 | 中国电子科技集团公司第五十八研究所 | 32-Bit triple-emission digital signal processor supporting SIMD |
CN105513003A (en) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic process unit unified stainer array system structure |
-
2017
- 2017-12-06 CN CN201711281038.0A patent/CN108228236A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5251306A (en) * | 1990-01-16 | 1993-10-05 | Advanced Micro Devices, Inc. | Apparatus for controlling execution of a program in a computing device |
CN102214084A (en) * | 2011-06-17 | 2011-10-12 | 哈尔滨理工大学 | Eight-bit high-speed microcontroller IP soft core |
CN102662637A (en) * | 2012-03-30 | 2012-09-12 | 中国人民解放军国防科学技术大学 | Instruction transmitting method for very-long instruction word processor |
CN102750133A (en) * | 2012-06-20 | 2012-10-24 | 中国电子科技集团公司第五十八研究所 | 32-Bit triple-emission digital signal processor supporting SIMD |
CN105513003A (en) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic process unit unified stainer array system structure |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110941450A (en) * | 2019-11-21 | 2020-03-31 | 中国航空工业集团公司西安航空计算技术研究所 | Instruction emission processing circuit of RISC processor |
CN110941450B (en) * | 2019-11-21 | 2022-12-06 | 中国航空工业集团公司西安航空计算技术研究所 | Instruction emission processing circuit of RISC processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2417407C2 (en) | Methods and apparatus for emulating branch prediction behaviour of explicit subroutine call | |
US7956776B2 (en) | Arithmetic decoding apparatus | |
CN105975252B (en) | A kind of implementation method, device and the processor of the assembly line of process instruction | |
US11231933B2 (en) | Processor with variable pre-fetch threshold | |
JP5941488B2 (en) | Convert conditional short forward branch to computationally equivalent predicate instruction | |
US7814302B2 (en) | Address calculation instruction within data processing systems | |
CN108133452A (en) | A kind of instruction issue processing circuit of unified stainer array | |
CN110941450B (en) | Instruction emission processing circuit of RISC processor | |
CN108228236A (en) | A kind of powerful instruction for supporting flowing water emits processing circuit | |
CN115525344B (en) | Decoding method, processor, chip and electronic equipment | |
US20040181654A1 (en) | Low power branch prediction target buffer | |
CN101884025A (en) | Method and a system for accelerating procedure return sequences | |
JP2009059246A (en) | Microprocessor | |
JP2008052750A5 (en) | ||
CN105892995B (en) | Search the method, apparatus and processor of negative | |
CN116521236A (en) | Pipelined decoding method based on RISC-V instruction set | |
US9135011B2 (en) | Next branch table for use with a branch predictor | |
CN100409180C (en) | Method and system for processing a loop of instructions | |
CN102426516A (en) | Variable length command set pre-decoding device based on two-level on-chip caches | |
CN203164952U (en) | Single transmitting assembly line processor | |
US10203960B2 (en) | Reconfigurable processor and conditional execution method for the same | |
JP7506718B2 (en) | Processor and program for controlling pipeline processing based on jump instructions | |
CN109614146B (en) | Local jump instruction fetch method and device | |
CN1100290C (en) | Method and device for instruction control delay | |
JP4601624B2 (en) | Direct memory access unit with instruction predecoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |