Hardware Arbiter Microprocessor Memory Request Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional microprocessor systems experience inefficiencies and increased power consumption due to stalls while waiting for memory reads to complete, especially when dealing with variable latency memory access, which limits throughput and power efficiency in performing computational array operations for machine learning applications.
Innovation Solution
A microprocessor system with a hardware arbiter that manages memory requests and a control queue to synchronize computational operations with memory access, allowing data and control operations to be queued and synchronized, reducing the need for processor stalls and improving efficiency by handling variable latency memory access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a generic microprocessor system is used to perform computational array operations, then the system can execute machine learning applications, but the processor sits idle during memory loading causing reduced throughput and increased power consumption
Solution Approach 1:
The hardware arbiter pre-queues memory read requests and control operations in synchronized queues before the computational array is ready to process. This preliminary queving eliminates idle time by ensuring data and control signals are prepared in advance, allowing the processor to continuously execute operations without stalls.
Solution Approach 2:
The hardware arbiter acts as an intermediary component between the software platform and the computational array. It manages the queving and synchronization of memory requests and control operations, decoupling the processor from memory latency variations and preventing idle stalls while maintaining throughput.
2Adaptability or versatility
If variable latency memory access is used to retrieve data, then memory flexibility is improved, but synchronization time increases causing processor stalls
Solution Approach 1:
Memory read requests are queued in advance in the hardware arbiter's request queue, and control operations are queued in the control queue before needed. This preliminary queving handles variable memory latency by preparing all necessary operations ahead of time, eliminating synchronization stalls while maintaining memory access flexibility.
Solution Approach 2:
The hardware arbiter monitors the status of memory requests and control operations through feedback signals, dynamically adjusting the queving and release timing. This feedback mechanism ensures that data and control operations are synchronized precisely when needed, reducing synchronization time while accommodating variable memory latency.
3Device complexity
If software platform synchronization is used to coordinate memory loading and computation, then system simplicity is maintained, but power consumption increases due to frequent stalls
Solution Approach 1:
The hardware arbiter serves as a dedicated intermediary component that handles synchronization tasks in hardware rather than software. This adds a specific hardware element but eliminates the need for complex software synchronization logic and reduces power consumption by preventing processor stalls through efficient hardware-managed queving and coordination.
Data Source
AI summary
A microprocessor system comprises a computational array and a hardware arbiter. The computational array includes a plurality of computation units. Each of the plurality of computation units operates on a corresponding value addressed from memory. The hardware arbiter is configured to control issuing of at least one memory request for one or more of the corresponding values addressed from the memory for the computation units. The hardware arbiter is also configured to schedule a control signal to be issued based on the issuing of the memory requests.


