I would definitely get at least 50% more backup space than what you need. So, for a full 320gb drive 50% more would be 480gb.. so 500gb is minimum drive size I would get.
Time machine will go back as far as it can depending on your backup drive space. When it is full, it will begin to over-write the oldest backup first. The more space you have, the further in the past it will allow you to recover from...
i am getting a 750gb external for my 250gb internal for time machine and other reasons. i'm not backing up my iTunes library which is basically half of my internal plus my other 300gb external. its very confusing and i havent explained it well.