1. A data processing system comprising: a data processor operable to process input blocks of data and to yield corresponding processed output blocks of data, wherein the processed output blocks of data are output from the data processor in an order in which their processing is completed; a scheduler operable to receive processing priority requests for the input blocks of data and to assign processing resources in the data processor according to the priority requests.