Trivia: Calculating bus bandwidth

bongasaur

Senior member
Nov 30, 2000
242
0
0
Calculate the bus bandwidth needed to display a VGA (640x480) true-color movie at 30 frames/sec. Assume that the data must pass over the bus twice - once from the CD-ROM to memory, and once from the memory to the screen.
 

BurntKooshie

Diamond Member
Oct 9, 1999
4,204
0
0
I'm not sure if it's HW or not (sounds odd to be a HW assignment)...so I'll just be vague.

Calculate the number of pixels you have (you gave that value already), do you know what true-color represents? The number of bits per pixel is likely to be either 24 or 32-bits (just stick with 32-bits, as that's easier to deal with). Well, if you're passing it over twice, what do you think you'll have to do to the numbers? I don't think this is entirely accurate though, as I think that it takes more than two trips 'round.
 

bongasaur

Senior member
Nov 30, 2000
242
0
0
24-bits is "true color" for this problem.
24 bits per pixel for 650x480 is 7,372,800 bits per frame = 921,600 bytes per frame.
at 30 frames/second thats 27,648,000 bytes per second.
but, how does the cd-rom to memory and memory to screen have to do with anything?
Thanks for the help!
 

Fandu

Golden Member
Oct 9, 1999
1,341
0
0
This is all going to depend on your bus topology, but assuming a non 'hub' design, it would go something like this.

1) CD-ROM to RAM via PCI 33MHz, 32bits wide, SDR. to memory bus 100/133MHz, 64/128bits wide, SDR/DDR
2) RAM to CPU via system bus 100/133MHz, 64/128bits wide, SDR/DDR/QDR
3) CPU to Video RAM via System to AGP bus 66MHz, 64bits wide, SDR
4) Video RAM to RAMDAC

 

Fandu

Golden Member
Oct 9, 1999
1,341
0
0
Of course there are overheads..... calculating those is the hard part. If you start getting into ECC and single bit error correction it could take you a few years to read through all the white sheets to locate that information.
 

Damascus

Golden Member
Jul 15, 2001
1,434
0
0
Just wondering, how would compression fit into all of this?
It'd have to go through the CPU no?