Brown, the fifth overall draft pick in 2007, was cut loose because he would count nearly $17 million on this year's salary cap.
Brown has been a starter since his rookie season, moving from right to left tackle in 2010. While he has struggled at times, he was praised by coach Ken Whisenhunt for improvement as Arizona finished last season 7-2.
He is the second offensive lineman to agree to terms with the Cardinals this week. Free agent guard-tackle Adam Snyder did so on Wednesday.