hmm , informative (bites nail,indecision)
It's simple, if buying to play BF3 go ATI. If you're buying for overall performance, go nvidia.
Either a 6970 or a gtx 580 will run this game at ultra settings. No need to spend $700+. If anything, save that extra money and buy a better monitor.
6990s/gtx 590s and sli/crossfire solutions are meant for single monitors with resolutions of 2560x1600 or triple monitor setups with huge resolutions. You need a powerhouse for 1080p. I'd get the cheapest 6950/6970 or gtx570/580 and buy either 3 monitors or a really nice monitor. Then add a second card in the future when you get more cash.
But for one single 1080p. Go 6970 for cheapness or gtx 580 for overall performance(other than just bf3).