Bus Arbitration for Unscheduled Peripheral Access in Real-Time Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In real-time computer systems, unscheduled access by peripheral devices to shared resources like buses can disrupt the execution schedule of tasks, leading to errors and skewing of timing constraints due to unpredictable access times.
Innovation Solution
Implementing arbitration methods such as dynamic arbitration, time-based arbitration, and dynamic priority assignment to control and manage bus access by unscheduled devices, ensuring they access the bus only during specific times or with adjusted priority levels that do not interfere with scheduled tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If unscheduled devices are allowed to access the bus at any time, then device functionality and data reception are improved, but task execution timing precision deteriorates
Solution Approach 1:
The bus access rights for unscheduled devices are made dynamic rather than static. The arbitration mechanism dynamically adjusts bus access permissions based on the current execution state of scheduled tasks, allowing devices to access the bus only during time windows when no scheduled tasks are active, thus adapting to real-time system conditions while preserving task timing precision
Solution Approach 2:
The system implements periodic arbitration cycles that check both the task execution schedule and device bus access requests at regular intervals. This periodic mechanism creates structured time windows where unscheduled devices can access the bus without interfering with scheduled tasks, converting the continuous access problem into a periodic, controlled process
2Manufacturing precision
If bus access for unscheduled devices is controlled strictly according to task schedule, then task timing precision is maintained, but device access flexibility and responsiveness deteriorate
Solution Approach 1:
An arbitration mechanism is introduced as an intermediary between scheduled tasks and unscheduled devices. This mediator receives bus access requests from unscheduled devices, checks the current task execution state, and makes intelligent decisions about granting or denying access. This intermediary layer preserves task timing precision while providing devices with flexible, responsive access capability
Solution Approach 2:
The system changes the parameter of bus access control from a fixed static configuration to a dynamic parameter that adjusts based on system state. The arbitration mechanism monitors task execution progress and adjusts device access permissions in real-time, changing access parameters such as allowed time windows and priority levels to balance task precision requirements with device flexibility needs
3Device complexity
If multiple devices share bus access without arbitration, then system complexity is reduced, but task execution reliability deteriorates due to schedule skewing
Solution Approach 1:
The system performs preliminary actions by pre-calculating and publishing the task execution schedule before runtime. The arbitration mechanism uses this pre-established schedule to make real-time access decisions, checking against the known task timing requirements before granting any bus access to unscheduled devices. This preliminary scheduling action ensures task execution reliability while allowing multiple devices to share the bus through controlled arbitration
Data Source
AI summary
In a real-time application, one or more computational tasks execute according to a time schedule and use input data from input devices and/or output data from output devices. One or more of the input devices or output devices may be unscheduled devices that attempt to access the peripheral bus at unscheduled times. Such unscheduled bus access can cause the time schedule to become comprised. Various methods for arbitrating access to the bus to better integrate the bus access with the time schedule followed by the application are described.


