Patent ID: 8296480

Claim:
A media controller for processing one or more data transfer requests received from at least one host device coupled to the media controller, each data transfer request comprising at least one of a command and data, the media controller comprising: a multi-layer buffer configured to receive data of a data transfer request from a communication link, wherein the multi-layer buffer separately processes higher level buffer operations and lower level buffer operations; a buffer allocation manager, having a first control sequencer for host command and context processing and a second control sequencer for buffer command and context processing; an infrastructure subsystem to serve as an operating system for the media controller with a multi-layer infrastructure to separately perform higher level processing operations and lower level operating system operations; a command parser configured to (i) generate, in parallel, one or more contexts corresponding to the received data transfer request, the one or more contexts stored in one or more of a plurality of parallel context registers in the buffer, (ii) track read and write pointers of an active command queue, wherein the read pointers and the write pointers correspond to a linked list in the buffer subsystem, and (iii) automatically load a next command when the read and write pointers are not equal; at least one queue comprising a regular context queue for queuing regular-priority contexts, and a high-priority context queue for queuing high-priority contexts; a context manager configured to coordinate processing of regular-priority contexts and high-priority contexts of the at least one queue based on context boundaries, wherein, when a context is processed at a context boundary, data corresponding to the processed context is data is transferred between the communication link and at least one of the buffer and the at least one storage media.