From the years I've been dealing with AT&T/Cingular, I'm pretty sure it works like this.
If you're a new subscriber, no problem.
If you already have a plan with them, then you must be almost 2 years since you received your last discounted phone. If you're not, they will charge you an early termination fee and then you can still get the upgrade price ($199/$299). The ETF is about $170 or $150 and goes down $10/month from when you last re-upped.
For instance, I bought a refurb iPhone in April about 16 months after I got a Razr free for signing a new contract. I had to sign a new 2-year deal with AT&T from that point (2 years from April), but I didn't get any discount. I think my previous 2 years just ended, so I can get an iPhone 3G at $199/$299 if I want at any point.
Confusing? A little. But there should be a link on your account page at wireless.att.com that tells you when each phone you have (if you have more than 1) is eligible for "discount upgrades" or whatever they call it.