Abstract:
A method and apparatus for controlling power consumption in a multi-threaded processor. In one embodiment, the processor includes at least one logic unit for processing instructions. The logic unit includes a plurality of positions, wherein each of the plurality of positions corresponds to at least one instruction thread. Clock signals may be provided to the logic unit via a clock gating unit. The clock gating unit is configured to inhibit a clock signal from being provided to a corresponding one of the thread positions when no instruction thread is active for that position. The inhibiting of the clock signal for an inactive thread position may reduce power consumption by the processor.
Abstract:
In one embodiment, a multithreaded processor includes a plurality of buffers, each configured to store instructions corresponding to a respective thread. The multithreaded processor also includes a pick unit coupled to the plurality of buffers. The pick unit may pick from at least one of the buffers in a given cycle, a valid instruction based upon a thread selection algorithm. The pick unit may further cancel, in the given cycle, the picking of the valid instruction in response to receiving a cancel indication.
Abstract:
In one embodiment, a multithreaded processor includes a plurality of buffers, each configured to store instructions corresponding to a respective thread. The multithreaded processor also includes a pick unit coupled to the plurality of buffers. The pick unit may pick from at least one of the buffers in a given cycle, a valid instruction based upon a thread selection algorithm. The pick unit may further cancel, in the given cycle, the picking of the valid instruction in response to receiving a cancel indication.
Abstract:
A method and apparatus for controlling power consumption in a processor. In one embodiment, a processor includes a pipeline. The pipeline includes logic for fetching instructions, issuing instructions, and executing instructions. The processor also includes a power management unit. The power management unit is configured to input M stalls into the pipeline every N instruction cycles (where M and N are integer value and wherein M is less than N).
Abstract:
A method and apparatus for controlling power consumption in a multi-threaded processor. In one embodiment, the processor includes at least one logic unit for processing instructions. The logic unit includes a plurality of positions, wherein each of the plurality of positions corresponds to at least one instruction thread. Clock signals may be provided to the logic unit via a clock gating unit. The clock gating unit is configured to inhibit a clock signal from being provided to a corresponding one of the thread positions when no instruction thread is active for that position. The inhibiting of the clock signal for an inactive thread position may reduce power consumption by the processor.
Abstract:
An apparatus and method for fine-grained multithreading in a multipipelined processor core. According to one embodiment, a processor may include instruction fetch logic configured to assign a given one of a plurality of threads to a corresponding one of a plurality of thread groups, where each of the plurality of thread groups may comprise a subset of the plurality of threads, to issue a first instruction from one of the plurality of threads during one execution cycle, and to issue a second instruction from another one of the plurality of threads during a successive execution cycle. The processor may further include a plurality of execution units, each configured to execute instructions issued from a respective thread group.
Abstract:
An apparatus and method for fine-grained multithreading in a multipipelined processor core. According to one embodiment, a processor may include instruction fetch logic configured to assign a given one of a plurality of threads to a corresponding one of a plurality of thread groups, where each of the plurality of thread groups may comprise a subset of the plurality of threads, to issue a first instruction from one of the plurality of threads during one execution cycle, and to issue a second instruction from another one of the plurality of threads during a successive execution cycle. The processor may further include a plurality of execution units, each configured to execute instructions issued from a respective thread group.
Abstract:
A high-speed, noise-safe, non-inverting flip-flop is provided. In the flip-flop, a buffer (103) is used to isolate a data input terminal (101) from the remainder of the flip-flop circuitry to prevent erroneous operation of the flip-flop circuitry. Also, a slave node (slave) is connected to a master node (master) to avoid the need for an additional buffer on a data signal critical path, thus preserving the high-speed of the flip-flop circuitry. Overlapped clock signals are used to control data signal transmission to the master node (master) and the slave node (slave). The overlapped clock signals allow the buffer (103) used to isolate the data input terminal (101) to also be used to drive the data signal through the master node (master) to the slave node (slave).
Abstract:
A high-speed, noise-safe, non-inverting flip-flop is provided. In the flip-flop, a buffer (103) is used to isolate a data input terminal (101) from the remainder of the flip-flop circuitry to prevent erroneous operation of the flip-flop circuitry. Also, a slave node (slave) is connected to a master node (master) to avoid the need for an additional buffer on a data signal critical path, thus preserving the high-speed of the flip-flop circuitry. Overlapped clock signals are used to control data signal transmission to the master node (master) and the slave node (slave). The overlapped clock signals allow the buffer (103) used to isolate the data input terminal (101) to also be used to drive the data signal through the master node (master) to the slave node (slave).