One embodiment of the present invention provides an apparatus that facilitates
compression of video data in a computer system by performing the time-consuming
task of computing the difference between successive frames of video data. This
frees the often-overburdened central processing unit from this time-consuming compression
operation and can thereby improve the handling of video data. Thus, one embodiment
of the present invention can be characterized as an apparatus for compressing video
data. This apparatus includes a video input port, for receiving video data for
a current video frame, and a video input buffer, for storing video data from the
video input port. The apparatus additionally includes a previous frame buffer,
for storing at least a portion of a previous video frame, as well as an operation
unit, for performing an operation between video data from the video input buffer
and video data from the previous frame buffer. The embodiment also includes a result
buffer coupled to the operation unit, for storing the result of an operation from
the operation unit.