The team announced the extension on Saturday. Terms weren't disclosed.
The 6-foot-4, 252-pound Williams was signed by the Cardinals during the offseason after he spent his first four NFL seasons with the Baltimore Ravens. He has appeared in all 10 games this year, including five starts, and has 11 catches for 139 yards and a touchdown.
The 25-year-old was a second-round pick out of Minnesota in the 2015 NFL draft. He had 63 catches for 497 yards and three touchdowns over four seasons with the Ravens.