Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020197971 - PROCESSOR, DEVICE, AND METHOD FOR EXECUTING INSTRUCTIONS

Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

[ EN ]

CLAIMS

1. A method for executing a data storage instruction in a processor, comprising:

splitting the data storage instruction into a first split instruction and a second split instruction, wherein the first split instruction is associated with an address operand of the data storage instruction, and the second split instruction is associated with a data operand of the data storage instruction;

executing the first split instruction to determine a data storage address corresponding to the address operand;

executing the second split instruction to acquire data content corresponding to the data operand; and

storing the acquired data content to the determined data storage address in a data storage region.

2. The method of claim 1, further comprising:

after determining the data storage address, storing the first split instruction and the data storage address; and

after acquiring the data content, correlating the acquired data content and the stored data storage address according to a correspondence between the first split instruction and the second split instruction, so as to store the acquired data content to the determined data storage address.

3. The method of claim 1, further comprising:

storing the first split instruction and a data loading instruction in a first issue queue; and storing the second split instruction in a second issue queue different from the first issue queue;

wherein executing the first split instruction to determine the data storage address comprises: issuing the first split instruction from the first issue queue, and

wherein executing the second split instruction to acquire the data content comprises: issuing the second split instruction from the second issue queue.

4. The method of claim 1, further comprising:

acquiring the data storage instruction and decoding the data storage instruction to determine the data operand and the address operand in the data storage instruction.

5. The method of claim 1, wherein the data content comprises any one or more of:

a register value, an operation result of an arithmetic unit, or data from the data storage region.

6. An instruction execution device in a processor, comprising:

an instruction splitting unit including circuitry configured to split a data storage instruction into a first split instruction and a second split instruction, wherein the first split instruction is associated with an address operand of the data storage instruction, and the second split instruction is associated with a data operand of the data storage instruction;

an instruction address generation unit including circuitry configured to execute the first split instruction to determine a data storage address corresponding to the address operand;

a storage data acquisition unit including circuitry configured to execute the second split instruction to acquire data content corresponding to the data operand; and

a memory operation unit including circuitry configured to store the acquired data content to the determined data storage address in a data storage region.

7. The instruction execution device of claim 6, further comprising:

a storage instruction buffer communicatively coupled to the instruction address generation unit and configured to store the first split instruction and the determined data storage address,

wherein the storage instruction buffer is further configured to, after the storage data acquisition unit acquires the data content, correlate the acquired data content and the stored data storage address according to a correspondence between the first split instruction and the second split instruction, so that the acquired data content is stored to the determined data storage address by the memory operation unit.

8. The instruction execution device according to claim 6, further comprising:

a first storage unit communicatively coupled to the instruction splitting unit and configured to receive and store the first split instruction for issuing and execution; and

a second storage unit communicatively coupled to the instruction splitting unit and configured to receive and store the second split instruction for issuing and execution;

wherein:

the first storage unit is communicatively coupled to the instruction address generation unit and configured to issue the first split instruction to the instruction address generation unit to determine the data storage address, and

the second storage unit is communicatively coupled to the storage data acquisition unit and configured to issue the second split instruction to the storage data acquisition unit to acquire the data content corresponding to the data operand.

9. The instruction execution device of claim 6, further comprising:

an instruction fetch unit including circuitry configured to acquire a data operation instruction including a data loading instruction and the data storage instruction; and

an instruction decoding unit including circuitry configured to:

decode the acquired data operation instruction to determine the data storage instruction in the data operation instruction;

determine the data operand and the address operand in the data storage instruction; and

send the data storage instruction to the instruction splitting unit.

10. The instruction execution device of claim 6, wherein the storage data acquisition unit is further configured to acquire the data content via the memory operation unit.

11. The instruction execution device of claim 6, further comprising an arithmetic unit, wherein the storage data acquisition unit is further configured to acquire an operation result from the arithmetic unit as the data content.

12. The instruction execution device of claim 6, wherein the storage data acquisition unit is further configured to acquire a register value as the data content.

13. The instruction execution device of claim 6, wherein the storage data acquisition unit is further configured to acquire the data content for one second split instruction at a time.

14. A processor, comprising: an instruction execution device comprising:

an instruction splitting unit including circuitry configured to split a data storage instruction into a first split instruction and a second split instruction, wherein the first split instruction is associated with an address operand of the data storage instruction, and the second split instruction is associated with a data operand of the data storage instruction;

an instruction address generation unit including circuitry configured to execute the first split instruction to determine a data storage address corresponding to the address operand;

a storage data acquisition unit including circuitry configured to execute the second split instruction to acquire data content corresponding to the data operand; and

a memory operation unit including circuitry configured to store the acquired data content to the determined data storage address in a data storage region.

15. The processor of claim 14, wherein the instruction execution device further comprises: a storage instruction buffer communicatively coupled to the instruction address generation unit and configured to store the first split instruction and the determined data storage address,

wherein the storage instruction buffer is further configured to, after the storage data acquisition unit acquires the data content, correlate the acquired data content and the stored data storage address according to a correspondence between the first split instruction and the second split instruction, so that the acquired data content is stored to the determined data storage address by the memory operation unit.

16. The processor of claim 14, wherein the instruction execution device further comprises: a first storage unit communicatively coupled to the instruction splitting unit and configured to receive and store the first split instruction for issuing and execution; and

a second storage unit communicatively coupled to the instruction splitting unit and configured to receive and store the second split instruction for issuing and execution;

wherein:

the first storage unit is communicatively coupled to the instruction address generation unit and configured to issue the first split instruction to the instruction address generation unit to determine the data storage address; and

the second storage unit is communicatively coupled to the storage data acquisition unit and configured to issue the second split instruction to the storage data acquisition unit to acquire the data content corresponding to the data operand.

17. The processor of claim 14, wherein the instruction execution device further comprises: an instruction fetch unit including circuitry configured to acquire a data operation instruction including a data loading instruction and the data storage instruction; and

an instruction decoding unit including circuitry configured to:

decode the acquired data operation instruction to determine the data storage instruction in the data operation instruction;

determine the data operand and the address operand in the data storage instruction; and send the data storage instruction to the instruction splitting unit.

18. The processor of claim 14, wherein the storage data acquisition unit is further configured to acquire the data content from at least one of: the data storage region via the memory operation unit, an operation result from an arithmetic unit, or a register value, and

wherein the storage data acquisition unit is further configured to acquire the data content for one second split instruction at a time.

19. The processor of claim 14, further comprising a processor resource communicatively coupled to the instruction execution device, the processor resource including a register or a cache.

20. A processor, comprising:

an instruction fetch unit including circuitry configured to acquire an instruction to be executed; an instruction decoding unit including circuitry configured to decode the acquired instruction to determine a type and an operand of the instruction, the instruction comprising a data loading instruction of the type of data loading and a data storage instruction of the type of data storage; an instruction splitting unit including circuitry configured to split the data storage instruction into a first split instruction and a second split instruction, wherein the first split instruction is associated with an address operand of the data storage instruction, and the second split instruction is associated with a data operand of the data storage instruction;

an instruction issue unit including circuitry configured to store the decoded instruction for issuing and execution, wherein the instruction issue unit comprises:

a first storage unit communicatively coupled to the instruction decoding unit and the instruction splitting unit and configured to receive and store the decoded data loading instruction and the first split instruction for issuing and execution; and

a second storage unit communicatively coupled to the instruction splitting unit and configured to receive and store the second split instruction for issuing and execution; and

an instruction execution unit including circuitry configured to execute the instruction issued from the instruction issue unit, the instruction execution unit configured to execute data loading and storing operation, wherein the instruction execution unit comprises:

an instruction address generation unit including circuitry configured to receive an instruction issued by the first storage unit and execute the data loading instruction and the first split instruction to determine a data storage address corresponding to the address operand;

a storage data acquisition unit including circuitry configured to receive an instruction issued by the second storage unit and execute the second split instruction to acquire data content corresponding to the data operand;

a storage instruction buffer communicatively coupled to the instruction address generation unit and configured to store the the first split instruction and the determined data storage address, wherein the storage instruction buffer is configured to, after the storage data acquisition unit acquires the data content, correlate the acquired data content and the stored data storage address according to a correspondence between the first split instruction and the second split instruction; and

a memory operation unit including circuitiy configured to store the acquired data content to the determined data storage address in a data storage region.

21. A system on chip, comprising:

a processor including an instruction execution device comprising:

an instruction splitting unit including circuitiy configured to split a data storage instruction into a first split instruction and a second split instruction, wherein the first split instruction is associated with an address operand of the data storage instruction, and the second split instruction is associated with a data operand of the data storage instruction;

an instruction address generation unit including circuitry configured to execute the first split instruction to determine a data storage address corresponding to the address operand;

a storage data acquisition unit including circuitiy configured to execute the second split instruction to acquire data content corresponding to the data operand; and

a memory operation unit including circuitry configured to store the acquired data content to the determined data storage address in a data storage region.

22. The system on chip, further comprising:

an instruction storage space communicatively coupled to the instruction execution device and configured to provide the data storage instruction to the instruction execution device; and

an external storage space communicatively coupled to the instruction execution device and configured to store the acquired data content.