| Inside Pentium 4 Architecture |
|
|
Real-time pricing for Intel BX80623G620 |
| Intel Pentium G620 Dual Core 2.6 GHz HD Graphics Retail LGA 1155 Processor BX80623G620 S735858220149 Electronics |
|
|
|
| Allocator and Register Renamer |
What the allocator does:
- Reserves one of the 126 reorder buffers (ROB) to the current microinstruction, in order to keep track of the microinstruction completion status. This allows the microinstructions to be executed out-of-order, since the CPU will be able to put them in order again by using this table.
- Reserves on of the 128 register files (RF) in order to store there the data resulted from the microinstruction processing.
- If the microinstruction is a load or a store, i.e., it will read (load) or write (store) data from/to RAM memory, it will reserve one of the 48 load buffers or one of the 24 store buffers according.
- Reserves an entry on the memory or general queue, depending on the kind of microinstruction it is.
After that the microinstruction goes to the register renaming stage. CISC x86 architecture has only eight 32-bit registers (EAX, EBX, ECX, EDX, EBP, ESI, EDI and ESP). This number is simply too low, especially because modern CPUs can execute code out-of-order, what would ”kill“ the contents of a given register, crashing the program.
So, at this stage, the processor changes the name and contents of the registers used by the program into one of the 128 internal registers available, allowing the instruction to run at the same time of another instruction that uses the exact same standard register, or even out-of-order, i.e., this allows the second instruction to run before the first instruction even if they mess with the same register. It is interesting to note that Pentium 4 has actually 256 internal registers, 128 registers for integer instructions and 128 registers for floating point and SSE instructions.
Pentium 4 renamer is capable of processing three microinstructions per clock cycle.
From the renamer the microinstructions go to a queue, according to its type: memory queue, for memory-related microinstructions, or Integer/Floating Point Queue, for all other instruction types.
 click to enlarge Figure 4: Allocator and Register Renamer.
|
| « Previous | Page 5 of 7 | Next » |
| Print Version | Send to Friend |
Bookmark Article
| Comments (0)
|
|
|
|
Recommended Deal |
 | Zalman CNPS10XEXTREME
Copper/aluminum Cpu Cooler Zalman CNPS10XEXTREME 35554 Electronics Usually ships in 24 hours
|
|
 Latest News
February 10, 2012 - 8:20 AM PST
February 9, 2012 - 8:06 AM PST
February 8, 2012 - 7:50 AM PST
February 7, 2012 - 8:31 AM PST
February 6, 2012 - 7:40 AM PST
February 3, 2012 - 8:19 AM PST
February 2, 2012 - 8:42 AM PST
February 2, 2012 - 8:41 AM PST
February 1, 2012 - 4:50 PM PST
February 1, 2012 - 7:55 AM PST
 Latest Content
Our Most Popular Articles
1,613,043 views
1,414,152 views
1,158,094 views
1,117,274 views
1,043,868 views
943,861 views
742,080 views
669,335 views
652,574 views
622,942 views
Latest Threads in Our Forums
by c.hegge
by RayBay
by RayBay
by WreakingHavoc
by dlb
by loonicy
by Hardware Secrets Team
by Gabriel Torres
by Hardware Secrets Team
by Gabriel Torres
|