Method for storing prioritized memory or I/O transactions in queues having one priority level less without changing the priority when space available in the corresponding queues exceed
DCFirst Claim
1. A method for limiting admission of prioritized memory or I/O transactions for storage in a memory comprising:
- (a) dividing the memory into a plurality of queues having unique priority levels;
(b) channeling said prioritized memory or I/O transactions to the ones of said queues having its unique priority level corresponding to said prioritized memory or I/O transactions;
(c) storing said prioritized memory or I/O transactions in the corresponding queues when space is available therein; and
(d) storing said prioritized memory or I/O transactions in one of said queues having a priority level which is one priority level less than the unique priority level corresponding to said prioritized memory or I/O transactions channeled at said step (b), without changing the priority of said prioritized memory or I/O transactions, when the space available in the queues corresponding to said prioritized memory or I/O transactions is exceeded, wherein said plurality of queues provides for the execution of prioritized memory or I/O transactions on a non-FIFO basis and order of priority.
0 Assignments
Litigations
0 Petitions
Reexamination
Accused Products
Abstract
A non-blocking load buffer is provided for use in a high-speed microprocessor and memory system. The non-blocking load buffer interfaces a high-speed processor/cache bus, which connects a processor and a cache to the non-blocking load buffer, with a lower speed peripheral bus, which connects to peripheral devices. The non-blocking load buffer allows data to be retrieved from relatively low bandwidth peripheral devices directly from programmed I/O of the processor at the maximum rate of the peripherals so that the data may be processed and stored without unnecessarily idling the processor. I/O requests from several processors within a multiprocessor may simultaneously be buffered so that a plurality of non-blocking loads may be processed during the latency period of the device. As a result, a continuous maximum throughput from multiple I/O devices by the programmed I/O of the processor is achieved and the time required for completing tasks and processing data may be reduced. Also, a multiple priority non-blocking load buffer is provided for serving a multiprocessor running real-time processes of varying deadlines by prioritization-based scheduling of memory and peripheral accesses.
59 Citations
5 Claims
-
1. A method for limiting admission of prioritized memory or I/O transactions for storage in a memory comprising:
-
(a) dividing the memory into a plurality of queues having unique priority levels; (b) channeling said prioritized memory or I/O transactions to the ones of said queues having its unique priority level corresponding to said prioritized memory or I/O transactions; (c) storing said prioritized memory or I/O transactions in the corresponding queues when space is available therein; and (d) storing said prioritized memory or I/O transactions in one of said queues having a priority level which is one priority level less than the unique priority level corresponding to said prioritized memory or I/O transactions channeled at said step (b), without changing the priority of said prioritized memory or I/O transactions, when the space available in the queues corresponding to said prioritized memory or I/O transactions is exceeded, wherein said plurality of queues provides for the execution of prioritized memory or I/O transactions on a non-FIFO basis and order of priority. - View Dependent Claims (2, 3, 4, 5)
-
Specification