1. A method of context switching, the method comprising the steps of; applying, by a processing core, a data transformation to at least one portion of a received data stream; generating, by a processing core, i) corresponding current context data based on the data transformation of the at least one portion; and ii) a signal when the data transformation completes; storing, in a context memory, each context data for a corresponding data stream, the context data including transformation data and history information for each data transformation applied to one or more portions of the corresponding data stream; coordinating transfer, by a context control module based on the signal, current context data for the at least one portion of the received data stream between the processing core and the context memory; and when the processing core receives the data stream, coordinating transfer by the context control module of previous context data, if present, in the context memory for the data transformation.