dude, i have to say one thing only, that if you are looking for a 1080p gaming card, specially to play BF3 at ultra, AMD 6870 can handle it like hell.... it delivers superb performance and will give you 40+ frames providing you have got good processor and ram. so if you don't want to spend extra bucks then surely go for it...
also, buy corsair gs600 psu if you have plans to buy psu too..
but make sure that you have got rest of hardware up to date...
i have got a weak processor core2duo e7400 which makes me unable to play it at ultra,