The 40-year-old woman was travelling south when the accident happened about a mile north of the Trinafour junction, at about 0840 BST.
The woman was treated at the scene by paramedics, before being taken to Ninewells Hospital by helicopter.
The road was closed for investigations to take place and police have appealed for witnesses to come forward.