From: Dale_Adams@gateway.qm.apple.com (Dale Adams)
Subject: Re: Comdex/Quicktime released for the PC
Date: Fri, 18 Dec 1992 14:20:14 GMT
Organization: Apple Computer Inc.

In article <1992Dec17.105433.4665@memstvx1.memst.edu> 
cse_stu@memstvx1.memst.edu writes:
> The video is slower than main memory. This burst thing of 40 MB/sec is 
> what the bus might be able to do in a space but not on earth. If everything 
> in the machine is shut of a program could move about 30 MB/sec but that is 
> without compression and without the operating system being up and that is 
> provided that the video ram is zero wait state which for a 33mhz 040' is 
> something in the range of 40ns ram or maybe lower.

Sheeesshh - do you actually read my posts before you reply, or do you just 
start blathering on about things you don't know anything about?  I 
designed the Quadra video hardware.  I _know_ how fast it is (or isn't) 
and how many wait states the frame buffer VRAM and main memory DRAM 
requires.  You don't - this is well evidenced by your above post.  Video 
memory on the Quadra is _not_ slower than main memory.  It can actually 
burst faster than main memory (see below).  However, Quadra VRAM does not 
run zero wait states.  It's not necessary to have zero wait states to 
support the data rates I quote above.  Zero wait state bursting would give 
you a memory bandwidth of over 100 MB/sec. on a 33 MHz machine.  Let's do 
a little simple math -  I'll take it nice and slow so you can follow it.  

The Q950 VRAM does 3/2/2/2 write bursts.  (2/1/1/1 is zero wait state, so 
this is clearly not that.  OK?)  The initial access time is low because 
the VRAM is always run in fast page mode.  This is a very definite 
performance advantage for large data block transfers which tend to 
sequentially access VRAM.  Yes, sometimes you get page misses - 3/2/2/2 is 
best case.  This totals to 9 clock cyles per burst, at 30 ns per clock 
cycle on a 33 MHz machine, with 16 bytes of data moved per burst.  16bytes 
/ (9 * 30 nS) = 59.26 MB/sec.  Practical inefficiencies (VRAM refresh, 
read transfer cycles, page misses, etc.) reduce this somewhat, but 
certainly not by the 33% or so it would take to get down to 40 MB/sec.  40 
MB/sec. is actually a conservative number.

> The last data I heard on the 4000 was that in burst mode the ram does 
> run zero wait state and since some of the amiga anim. programs do turn off
> the operating system it is possible to move some data. 

So, the person from Commodore who posted that the A4000 uses 80 nS RAM and 
runs 5/2/2/2 burst cycles was wrong?  By your own argument, this would 
mean that the A4000 uses 40 nS or faster RAM.  Doesn't this get a little 
expensive?

> The other face is that the Quardra has a 10mhz nubus with a 20mhz burst mode 
> while the 4000's bus is capable of 100mhz plus speed provided you have a CPU 
> that is fast enough.

What is your fascination with NuBus?  I've already explained that the 
Quadra frame buffer sits on the processor bus, not NuBus.

> >> The only board that I have heard that is fast enough for animation is 
> >> the targa card which is real expensive and it runs on the bus that is 
> >> 10mhz.
> > 
> > Now wait a minute.  Why is the 10 MHz bus fast enough for animation 
> > now, 
> > but it wasn't earlier in your post?
> It is the only card out for the mac that has video quailty.

I see.  The high video output quality makes it fast.  Hmmm.   So for good 
animation performance it doesn't matter what speed the board runs at, just 
what that signal quality of the video output is?  Interesting theory.

> One more point if you can do all these neat things what programs are you 
> using?
> =======
> video man

Standard off-the-shelf stuff, like I mentioned in my first post.  I've got 
a MacroMind Accelerator animation (the frames of which were generated in 
Infini-D) which is 4.2 MB and runs on a 640 x 480 8-bit screen.  It has 36 
frames and plays back at an average frame rate of 77 fps.  Allowing for an 
initial background screen (300KB), this translates into an average data 
update of about 116 kB per frame.  At 77 fps this is a data transfer rate 
of just under 9 MB/sec.  (Note: MacroMind Accelerator does not use the 
'040's MOVE16 instruction, and so does not do burst cycles to VRAM, only 
longword transfers.  The data transfer rate could probably be doubled if 
bursts were used.)  

This is with off-the-shelf applications which don't take full advantage of 
the hardware.  Interestingly enough, 9 MB/s is just the data rate you need 
to support a 640 x 480 8-bit animation at 30 fps (640 * 480 * 30 = 
9,216,000 bytes/sec = 8.789 MB/sec).  So, using off-the-shelf software, I 
can do 640 x 480 8-bit animation at 30 fps where the entire screen is 
completely updated every frame.

- Dale Adams