Memory Attribute Structure for Priority-Based Transaction Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In processing systems, the dependency of memory access transactions on each other can lead to delays, particularly when a transaction requires a component of the execution path or a buffer that is currently in use by another transaction, which is problematic for time-sensitive operations like safety-critical systems.
Innovation Solution
The use of a memory attribute structure to specify certain memory regions as high priority, allowing for prioritization of transactions that require these regions by associating them with higher priority levels and reserving buffer space accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If memory access transactions are processed through a shared execution path with shared buffers, then device complexity is reduced, but processing delays occur when transactions depend on each other
Solution Approach 1:
The system performs preliminary actions by checking buffer availability before committing a memory access transaction. If the required buffer is not available, the transaction is held in a transaction buffer until the buffer becomes available. This prevents processing delays by proactively managing buffer allocation rather than reacting to conflicts when they occur.
2Ease of operation
If a single shared execution path is used for all memory transactions, then ease of operation is improved, but reliability of time-critical transactions deteriorates
Solution Approach 1:
The system applies local quality by providing different service levels to different transactions based on their requirements. Time-critical transactions receive priority handling with dedicated buffer allocation and expedited processing, while non-time-critical transactions use the shared execution path. This allows the system to maintain simplicity overall while providing guaranteed reliability for specific time-critical operations.
Data Source
AI summary
A memory attribute structure comprises one or more memory address entries. Each memory address entry comprising a respective memory address range mapped to a respective priority level. The memory attribute table is used when processing a memory access transaction through an execution path of a processing system. During said processing, a memory address of the memory access transaction is determined. The memory attribute structure is used to determine a priority level mapped to the determined memory address, and the memory access transaction is processed based on the determined priority level.


