Norman, who has yet to make his league debut for the Cottagers after progressing through their academy, will stay at the club until at least the summer of 2019.
‘I’m really happy,’ the 21-year-old former England Under-18 international told the club’s official website.
‘I’ve been here since I was nine so it’s great to extend my contract by another year, and hopefully I can push on and potentially make my debut.
‘I love it here. I know everyone throughout the club, and being with the first team this year has been a good experience.’
Cardiff remain unhappy with Derby's decision to postpone Sunday's Sky Bet Championship game at Pride Park.
Dundee United boss Csaba Laszlo has been left hoping for St Mirren to slip up in the race to seal promotion to the Ladbrokes Premiership.
Crewe will consider starting Chris Dagnall when they host Forest Green on Tuesday.