1. A method of processing data comprising: processing a function using a processor operable to perform a plurality of functions, said processor having interrupts enabled; receiving an interrupt at said processor during processing of said function at a point at which a portion of said function has been processed; suspending processing of said function; accessing at least one control parameter, said at least one control parameter indicating whether processing of said function should be resumed from a point where it was interrupted or whether said function should be repeated from a start of said function and information on progress of said function is discarded if the function is re-started following said interrupt such that said portion of said function that has already been processed is processed again; following completion of said interrupt continuing processing of said function either at said start of said function or at said point at which it was interrupted dependent upon said control parameter.