1. A method for synchronization between and among a plurality of data processing tasks, the method comprising: configuring one or more integrated circuits to perform an operation, comprising: (a) selecting one of the plurality of data processing tasks, each of which performs operations on a data stream; (b) determining a boundary condition that indicates a location in the data stream where the selected data processing task is to commence operations; (c) generating a timing marker comprising a buffer marker designating a selected data buffer unit that corresponds to a portion of the data stream and a sample marker designating an offset location within the selected buffer unit that corresponds to the location in the data stream indicated by the boundary condition; (d) communicating the timing marker to the selected data processing task; and (e) commencing data processing by the selected data processing task at the location in the data stream designated by the timing marker.