Issue Queue Control Circuitry for Wide Operand Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The issue queue in data processing apparatuses faces significant size and power consumption challenges when accommodating wide operand execution units, as traditional methods require increasing the queue's size to store operand data, which is costly and inefficient, especially since not all instructions utilize wider operand data.
Innovation Solution
The solution involves generating re-combinable control data blocks for instructions suitable for wide operand execution units, allowing these blocks to be stored in multiple slots of the issue queue, where each slot holds up to M bits of operand data, and then recombining them into a single combined control data block for processing by the wide operand execution unit, thereby reducing the need for increased queue size.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the issue queue is extended to store full N bits of operand data for wide operand execution units, then the execution capability for wide operand instructions is improved, but the size and power consumption of the issue queue increases significantly
Solution Approach 1:
The operand data storage is segmented across multiple issue queue slots. Instead of requiring each slot to store the full N bits, the operand data is divided and distributed across multiple slots, each storing only M bits. This segmentation allows the issue queue to support wide operand instructions while maintaining a compact slot size.
Solution Approach 2:
Multiple control data blocks from different slots are merged together to form a complete wide operand instruction. The issue queue combines the control data blocks and their associated operand data from multiple slots, reconstructing the original wide operand instruction for execution by the wide operand execution unit.
2Adaptability or versatility
If the issue queue size is increased to accommodate wide operand data, then wide operand execution is enabled, but power consumption increases
Solution Approach 1:
By segmenting the operand data storage across multiple slots, the issue queue avoids allocating excessive resources in each slot. This segmentation enables the queue to support wide operand execution while keeping the per-slot storage compact, thereby reducing overall power consumption.
Solution Approach 2:
The system changes the parameter of operand data width that each slot stores from N bits to M bits. This parameter change allows the issue queue to support wide operand instructions through combination of multiple slots while maintaining lower power consumption associated with smaller storage width per slot.
3Area of stationary object
If each slot stores only M bits of operand data, then the issue queue size is reduced, but the ability to store complete wide operand instructions is compromised
Solution Approach 1:
The system merges control data blocks from multiple slots to reconstruct the complete wide operand instruction. By combining the M bits of operand data from each slot along with their associated control data blocks, the system recovers the full N bits of operand information needed for wide operand execution.
Solution Approach 2:
The control data block acts as an intermediary that links multiple operand data segments. Each control data block contains information that identifies and connects to other control data blocks, enabling the system to reconstruct the complete instruction by following these intermediary links across multiple slots.
Data Source
AI summary
An apparatus and method includes execution circuitry including a wide operand execution unit configured to allow up to N bits of operand data to be processed during execution of a single instruction. Decoder circuitry decodes and generates, for each instruction, at least one control data block identifying an operation to be performed by the execution circuitry and at least two re-combineable control data blocks for the instruction. Issue queue control circuitry then allocates a slot in the issue queue for each of the at least two data blocks and up to M bits of associated operand data, and marks those allocated slots to identify that they contain re-combineable control data blocks. The issue queue control circuitry issues the combined block to said wide operand execution unit along with the operand data contained in each of the allocated slots for said at least two control data blocks.


