1. A system for dispatching commands for execution by a processing engine, comprising: one or more target processing engines; a command FIFO memory configured to store one or more commands, wherein each of the one or more commands is associated with a channel and a target processing engine; an engine interface coupled to the one or more target processing engines; and a dispatcher coupled to the command FIFO memory and the engine interface and configured to: receive a first in-flight command associated with a first channel from the command FIFO memory that is a copy of a first command associated with the first channel stored in the command FIFO memory when the first channel is selected for processing, push the first in-flight command to the engine interface for storage until the first in-flight command is transmitted to the target processing engine associated with the first command or is rescinded, and rescind the first in-flight command when a second channel is selected for processing, wherein the command FIFO memory maintains a first command pointer that indicates a location of the first command within the command FIFO memory and a second command pointer that indicates a location of a next command associated with the first channel within the command FIFO memory that is to be transmitted to the target processing engine associated with the next command for execution, and wherein the second command pointer is updated to indicate the location of the first command as indicated by the first command pointer when the first in-flight command is rescinded.