Real-Time Controller for Shared Data Bus Rate Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Real-time computing systems face challenges in managing data rate over a shared data bus, particularly during bursty data transfer, which can lead to system instability and missed deadlines due to uncontrolled data flow, impacting performance and reliability.
Innovation Solution
A controller is implemented to regulate the maximum data rate by dividing data into blocks and allocating intervals for transmission, allowing for an impeded rate that is less than the maximum capable rate, thereby controlling data bus usage and ensuring predictable task completion times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is transmitted at maximum rate without control, then data transfer speed is improved, but system stability deteriorates due to bursty behavior and missed deadlines
Solution Approach 1:
The controller implements periodic action by dividing data transmission into scheduled intervals with predetermined task output times. Data is transmitted in periodic blocks rather than continuous bursts, with the controller allocating specific time windows for data output. This periodic transmission pattern prevents uncontrolled bursty behavior while maintaining reliable system operation and meeting deadlines.
Solution Approach 2:
The system applies dynamics by adjusting the data transmission rate based on real-time system conditions. The controller dynamically switches between impeded rate (when bus is congested or near deadline) and unimpeded rate (when bus is available and time remains), making the transmission rate adaptive rather than fixed. This dynamic rate adjustment optimizes both speed and reliability based on current system state.
2Productivity
If data is transmitted at unimpeded rate, then productivity is improved, but system reliability worsens due to stress on shared resources and missed deadlines
Solution Approach 1:
The controller changes the data transmission rate parameter based on system conditions and task timing. It transitions between two distinct rate states: impeded rate (when the data bus is congested or the task output time is approaching the deadline) and unimpeded rate (when the bus is available and sufficient time remains). This parameter switching ensures high productivity when possible while maintaining reliability by reducing stress on shared resources when needed.
Solution Approach 2:
The system implements feedback by continuously monitoring the current data transmission rate, bus availability, and remaining task output time. The controller uses this feedback information to determine whether to switch between impeded and unimpeded rates, creating a closed-loop control system that adapts to changing conditions and ensures deadlines are met while maximizing throughput when feasible.
3Productivity
If maximum data rate is allowed, then data bus utilization is improved, but system performance deteriorates due to bursty behavior and resource stress
Solution Approach 1:
The controller enforces periodic action by scheduling data transmission in predetermined intervals rather than allowing continuous maximum-rate transmission. Data blocks are transmitted in organized periods with controlled spacing, preventing bursty behavior that stresses shared resources. This periodic approach maintains good data bus utilization while ensuring predictable system performance and avoiding resource overload.
Data Source
Figure 1~2
Figure 3~4
AI summary
An apparatus comprising: a plurality of processors, a data bus, shared by the plurality of processors, and configured to at least receive data processed by each of the plurality of processors when performing predetermined tasks, the plurality of processors and data bus comprising at least part of a hardware based real-time computing system; a controller configured to provide for control of a maximum data rate at which data is provided to the data bus for transmission thereover by at least one of the plurality of processors in performing at least one of the predetermined tasks, wherein the controller is configured to provide for a maximum data rate at least comprising an impeded rate for the at least one predetermined tasks and an unimpeded rate wherein the impeded rate is less than the unimpeded rate.