Chelsea have been drawn against Barcelona in the last 16 of the Champions League, while Tottenham will face Italian champions Juventus.
Premier League leaders Manchester City will play Switzerland’s Basel, Manchester United face La Liga side Sevilla and Liverpool take on Portugal’s Porto.
Holders Real Madrid will face Paris St-Germain.
A record five English teams progressed from the group stage this season.
Chelsea were the only English team to make it through as runners-up, with the other four sides all topping their respective groups.
The Blues have arguably been handed the most difficult tie, and it comes days after boss Antonio Conte conceded that their Premier League title defence was over following their defeat by West Ham, which left them 14 points adrift of Manchester City.
However, Chelsea did beat Barcelona in the semi-finals before lifting the Champions League trophy in 2012.
Real Madrid, who are aiming for a 13th title and third in a row, were given a tough draw against big-spending PSG after finishing behind Tottenham in Group H.
The group winners will be away in the round of 16 first legs on 13/14 and 20/21 February, and at home in the return matches on 6/7 and 13/14 March.
The final will take place in Kiev on 26 May.
Champions League last-16 draw
Juventus v Tottenham
Basel v Manchester City
Porto v Liverpool
Sevilla v Manchester United
Real Madrid v PSG
Shakhtar Donetsk v Roma
Chelsea v Barcelona
Bayern Munich v Besiktas