Back to results
US 11,829,767 B2Granted
Register scoreboard for a microprocessor with a time counter for statically dispatching instructions
AssigneeSimplex Micro, Inc.
InventorThang Minh Tran
Life of this patent
Estimating the term…
Abstract
A processor includes a time counter and a register scoreboard and operates to statically dispatch instructions with preset execution times based on a write time of a register in the register scoreboard and a time count of the time counter provided to an execution pipeline.
Claims27
A processor comprising:
- a time counter storing a time count representing a current time of the processor, wherein the time count is incremented periodically;
- a register scoreboard coupled to the time counter to record a write back time of a destination register referenced by a first instruction;
- and
- an instruction issue unit coupled to the register scoreboard for receiving a second instruction, wherein a source register referenced by the second instruction is the same as the destination register referenced by the first instruction, and the instruction issue unit issues the second instruction with a preset execution time based on the write back time of the destination register referenced by the first instruction;
- and
- an execution queue coupled to the time counter and the instruction issue unit to receive the second instruction from the instruction issue unit, and dispatch the second instruction to a functional unit when the preset execution time corresponds to the time count.
3 more elements
A processor comprising:
- a clock circuit;
- a time counter storing a time count representing a current time of the processor, wherein the time count is incremented with each cycle of the clock circuit;
- an instruction issue unit coupled to the time counter for receiving a first instruction, and issuing a first instruction with a preset execution time based on the time count;
- and
- a register scoreboard storing a write time of a selected register from a plurality of registers in a register file, wherein the write time represents a future time relative to the time count;
- an instruction decode unit coupled to the register scoreboard, the instruction decode unit reading a write time for each source operand of the first instruction from the register scoreboard, and using the write times corresponding to the first instruction to determine an execution time for the first instruction;
- a time-resource matrix coupled to the register scoreboard and the time counter for storing information relating to available resources for each time count of the time counter, and
- an execution queue coupled to the time counter and the instruction issue unit to receive the first instruction from the instruction decode unit, and dispatch the first instruction to a functional unit when the preset execution time is correlated to the time count and source register associated with the first instruction is indicated by the register scoreboard as being valid or replay the first instruction if the write time of the source register in the register scoreboard is no longer correlated with the time count;
- wherein the available resources include at least one of:
- a plurality of read buses, a plurality of write buses, and a plurality of functional units.
7 more elements
A method executed within a processor for reading a register scoreboard for write times of registers in a register file comprising:
- determining an execution time of an instruction;
- issuing the instruction to an execution queue in a processor to execute at the execution time wherein the write time is obtained from the register scoreboard;
- wherein the execution time represents a time duration based on a time count from a time counter which is periodically incremented.
Dependencies are inferred from the claim text.