The 23-year-old joined the Premier League outfit from Crewe Alexandra in August 2012 and went on to make 30 appearances in his debut season in the English top flight.
|2/1||Aston Villa are 2/1 with BetVictor to finish in the top half of the Premier League
"This time last year I was still on pre-season with Crewe and now I'm signing another contract at Villa. It's a fantastic feeling for me," he told the club's official website.
"I love being here and I'm delighted to be part of a great football club. You look at the players the manager has brought to the club and they're all young and hungry. I just want to be part of that and hopefully we're building something special here.
"The fans stood with us last season, Villa Park was rocking and, over the second half of the season, we were able to make it into something of a fortress.
"The Sunderland game at Villa Park topped it off, an unbelievable night and we'll look to recreate some of that hopefully again this coming season."