Um yeah unless I'm terribly mistaken I was sure both cards had all the same data in memory, so two 640s in SLi would only have 640 to work with. But I also thought Tweaktown was reputable... this is disturbing.
edit: After looking at their tests, I think the author is just a moron. You can see in the CoH test, the 320mb SLi gets killed by the 640. Absolutely destroyed. This must be due to its memory being overflowed, and I doubt total 640mb could be overflowed currently.
On the nvidia homepage, madmodmike, who I believe is the guru over there, said in a post about 2 6000 series cards that sli only uses one cards worth of vram. But it is interesting that nvidia markets quad sli with 2 7950gx2 as having 2g of total vram. This seems to contradict what is being otherwise stated. However, I believe this is nothing more than marketing and sli'ed cards still mirror the info to both cards. If someone has some recent/differing news on this it would be awesome to here it as I have a 8800gts 320 and would seriously think about running sli (I have the mobo for it) if I can get total vram. I think trying to run a pair of 8800's with only 320mb would probably be quite limiting.
It allows the exchange of timings and framebuffer info, along with 'list' requests (raw polygon and geometry data for each frame) so that the cards don't "step on each other's toes". Hence the cards incur a penalty in rendering the same data (though different frames) due to the nessesary exchange of data and timings.
Thus SLI is not 'purely' twice as fast as a single card.