IP Library Granted Patent US 6,990,571
Granted Patent B2
US 6,990,571 · App. 09/842,536 · Granted Jan 24, 2006

Method for memory optimization in a digital signal processor

Assignee: Intel Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,990,571
App. No.
09/842,536
Granted
Jan 24, 2006
Kind
B2
Abstract

According to one embodiment, a processing element is disclosed. The processing element includes an instruction buffer, a first most often (MO) buffer coupled to the instruction buffer and an execution unit coupled to the instruction buffer and the first MO buffer. The execution unit is adaptable to execute instructions stored within the first MO buffer based upon a first predetermined profile.

Claims (57)

1. A processing element comprising:

an instruction buffer;

a first most often (MO) buffer coupled to the instruction buffer;

an execution unit coupled to the instruction buffer to execute instructions stored within the first MO buffer based upon a first predetermined profile;

a decode module, coupled to the instruction buffer, the first MO buffer, and the execution unit, to decode an instruction to determine whether the instruction is to be stored in the first MO buffer;

a second MO buffer coupled to the instruction buffer and the decode module;

first profile buffer coupled to the first MO buffer to store the first predetermined profile; and

a second profile buffer coupled to the second MO buffer to store the second predetermined profile.

2. The processing element of claim 1 wherein the execution unit executes instructions stored within the second MO buffer based upon a second predetermined profile.

3. The processing element of claim 2 wherein the decode module decodes an instruction to determine whether the instruction is to be stored in the first MO buffer or the second MO buffer.

4. The processing element of claim 2 wherein the first and second predetermined profiles each include a plurality of profile bits, each profile bit indicating whether a corresponding instruction is to be executed at the execution unit during a particular instruction fetch cycle.

5. The processing element of claim 4 further comprising:

a first profile pointer coupled to the first profile buffer; and

a second profile pointer coupled to the second profile buffer.

6. The processing element of claim 5 wherein the first profile pointer points to a first profile bit of the first predetermined profile during a first instruction fetch cycle.

7. The processing element of claim 6 wherein an instruction stored in the first MO buffer is executed at the execution unit during the first instruction fetch cycle if the first profile bit is active.

8. The processing element of claim 6 wherein an instruction stored in the instruction buffer is executed at the execution unit during the first instruction fetch cycle if the first profile bit is inactive.

9. A digital signal processor (DSP) comprising:

a plurality of processing elements, wherein each of the processing elements comprises:

an instruction buffer;

a first most often (MO) buffer coupled to the instruction buffer;

a second most often (MO) buffer coupled to the instruction buffer;

an execution unit coupled to the instruction buffer to execute instructions stored within the first MO buffer based upon a first predetermined profile and to execute instructions stored within the second MO buffer based upon a second predetermined profile;

a decode module, coupled to the instruction buffer, the first MO buffer, the second MO buffer and the execution unit, to decode an instruction to determine whether the instruction is to be stored in the first MO buffer or the second MO buffer; and

a first profile buffer coupled to the first MO buffer to store the first predetermined profile; and

a second profile buffer coupled to the second MO buffer to store the second predetermined profile.

10. The DSP of claim 9 wherein the first and second predetermined profiles each include a plurality of profile bits, each profile bit indicating whether a corresponding instruction is to be executed at the execution unit during a particular instruction fetch cycle.

11. The DSP of claim 10 wherein each processing element further comprises:

a first profile pointer coupled to the first profile buffer; and

a second profile pointer coupled to the second profile buffer.

12. The DSP of claim 11 wherein the first profile pointer points to a first profile bit of the first predetermined profile during a first instruction fetch cycle.

13. A method comprising:

receiving a first instruction from an instruction buffer;

examining a bit within the first instruction to determine if the first instruction is to be stored in a first buffer;

determining whether the first instruction includes a command to load a profile if the first instruction has not been designated to be stored in the first buffer; and

loading the profile in a second buffer if the first instruction has not been designated to be stored in the first buffer.

14. The method of claim 13 further comprising executing the first instruction.

15. The method of claim 13 further comprising:

storing the first instruction in the first buffer if it is determined that the first instruction is to be stored in the first buffer; and

executing the first instruction from the instruction buffer.

16. The method of claim 13 further comprising:

retrieving the first instruction from the first buffer if the bit indicates that the first instruction is to be retrieved from the first buffer; and

executing the first instruction after it has been retrieved from the first buffer.

17. The method of claim 16 further comprising executing the first instruction after it has been retrieved from the second buffer if it is determined that the first instruction does not include a command to load a profile and if the first instruction has not been designated to be stored in the first buffer.

18. An article of manufacture including one or more computer readable media that embody a program of instructions, wherein the program of instructions, when executed by a processing unit, causes the processing unit to:

receive a first instruction from an instruction buffer;

examine a bit within the first instruction to determine if the first instruction is to be stored in a first buffer;

determine whether the first instruction includes a command to load a profile if the first instruction has not been designated to be stored in the first buffer; and

load the profile in a second buffer if the first instruction has not been designated to be stored in the first buffer.

19. The article of claim 18 wherein the program of instructions, when executed by a processing unit, further causes the processing unit to execute the first instruction.

20. The article of claim 18 wherein the program of instructions, when executed by a processing unit, further causes the processing unit to:

store the first instruction in the first buffer if it is determined that the first instruction is to be stored in the first buffer; and

execute the first instruction from the instruction buffer.

21. The article of claim 18 wherein the program of instructions, when executed by a processing unit, further causes the processing unit to:

retrieve the first instruction from the first buffer if the bit indicates that the first instruction is to be retrieved from the first buffer; and

execute the first instruction after it has been retrieved from the first buffer.

22. The article of claim 21 wherein the program of instructions, when executed by a processing unit, further causes the processing unit to execute the first instruction after it has been retrieved from the second buffer if it is determined that the first instruction does not include a command to load a profile and if the first instruction has not been designated to be stored in the first buffer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2002
From: VAVRO, DAVID K.
To: INTEL CORPORATION
Reel/Frame 013242/0950 →
Continuity (1)
Related Publication 20020188835A1 · Dec 12, 2002