The 26-year-old originally joined the Rams in October on a three-month loan deal and has since scored three goals in 13 appearances.
Derby manager Steve McClaren said: "He's a player we like and I think he brings a lot to the team.
"He can create goals and, as we've seen, he can score them himself."
He made his Premier League debut last season during a four-match loan spell with Aston Villa.
"Simon has done really well whilst on loan with us and he's made himself a regular fixture in our attacking line-up," added McClaren.
"During his three months with us Simon has proved his worth and we're delighted he's agreed to join us on a permanent basis."
"We think he'll only improve as he continues to play games and after just turning 26 we think his best years remain ahead of him."