[e2e] TOEs and DVDs
David P. Reed
dpreed at reed.com
Sat Apr 10 10:39:04 PDT 2004
The early PC DVD players used DVD decoder chips that had direct access to
the video frame buffer. These chips primarily accelerated two inner loop
aspects of MPEG decoding: expanding the DCT data, and implementing the
motion compensation (which amounted to memory-to-memory BLTs in the frame
buffer). The CPU read data into primary memory buffers, then sent that
data to the DVD decoder chips in the form of commands to do various
operations. Memory bandwidth was not a problem, even with early PCI buses.
There were MPEG software decoders, of course, but there was a period when
the bulk of the installed computing base did not have sufficient processor
power to do the work, and the video frame buffers (being dual ported
memories) were not on a fast enough bus for the processor to read and write
back for the motion compensation code. The solution for cheap systems was
to make the frame buffer access from the CPU faster (Intel did this as part
of the sequence of changes including AGP), and the SIMD Intel architecture
extensions were designed to do stuff like the DCT better.
Today it is still the case that DVD decoding may be offloaded, but now
to "3D accelerator" chips where possible, and the GPU is now a full
vector/matrix piplelined signal processor with its own frame buffer (at
Stanford I hear that they are using GPUs for general numerical algorithm
Don't know what this has to do with a TOE, exactly. The main point is that
better buses and additional processors eventually evolve away from
specialization to be general purpose resources. There's very little reason
to assume a task is so specialized that its acceleration can't be achieved
as part of a more general solution.
At 02:29 PM 4/8/2004, Craig Partridge wrote:
>I was rethinking the TOE discussion in my head earlier this week and hit
>a question that I thought someone here might know the answer to.
>It seems to me that playing a DVD on a computer is a very similar problem
>to sending or receiving networking data, in the sense that typically the
>data is going from one peripheral to another with the processor mediating.
>And one of our problems is that the stuff (memory infrastructure) around
>mediating processor is slow relative to the data rates we wish to achieve
>Now, today, I suspect that DVD bandwidth doesn't stress a memory system.
>But it surely did a few years ago. What did the video crowd interested
>in making general puropse computers into competent DVD players do in
>response? Something like a TOE -- something else?
>E-mail: craig at aland.bbn.com or craig at bbn.com
More information about the end2end-interest