The present invention provides a data processing apparatus and method for
merging secure and non-secure data. The apparatus comprises at least one
processor operable to execute a non-secure process to produce non-secure
data to be included in an output data stream, and to execute a secure
process to produce secure data to be included in the output data stream.
A non-secure buffer is provided for receiving the non-secure data
produced by the non-secure process, and in addition a secure buffer is
provided for receiving the secure data produced by the secure process,
the secure buffer not being accessible by the non-secure process. An
output controller is then arranged to read the non-secure data from the
non-secure buffer and the secure data from the secure buffer, and to
merge the non-secure data and the secure data in order to produce a
combined data stream, the output data stream then being derivable from
the combined data stream. It has been found that such an approach assists
in improving the security of the secure data, and in reducing memory
bandwidth requirements and the processing requirements of the processor.