The 27-year-old, who began his career with the Royals before leaving for Swindon Town in 2008, has returned to the Championship outfit after spending two years at Forest.
"I'm very lucky to have played once for this football club and signing the second time feels just as good," said Cox. "I still know a lot of the players here so bedding in shouldn't be too hard for me! I'm delighted to be here and I can't wait to get started again."
Manager Nigel Adkins added: "I'd like to welcome Simon to Reading Football Club. He is a player who has experience of playing in the Championship, the Premier League and at international level.
"I'm sure having met him that he will provide a positivity, a hunger and a desire to work hard with a group of players who have a fantastic team spirit."
Cox also has three years experience playing for West Bromwich Albion, who sold the forward to Forest back in 2012.