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 (13 February and 7 March)
Basel v Manchester City (13 February and 7 March)
Porto v Liverpool (14 February and 6 March)
Sevilla v Manchester United (21 February and 13 March)
Real Madrid v PSG (14 February and 6 March)
Shakhtar Donetsk v Roma (21 February and 13 March)
Chelsea v Barcelona (20 February and 14 March)
Bayern Munich v Besiktas (20 February and 14 March)