Barcelona will face Paris St Germain while title holders Bayern Munich are up against Italy’s Lazio in the last 16 of the Champions League after Uefa’s draw was held on Monday.
Premier League champions Liverpool will play last year’s semifinalists RB Leipzig.
Atletico Madrid will face Chelsea and Manchester City will take on Borussia Moenchengladbach.
Italian champions Juventus will face Porto, Sevilla play Borussia Dortmund and Serie A club Atalanta take on Real Madrid.
All three Premier League teams will be away for the first leg before having home advantage for the return matches.
The first legs will be spread across two midweeks, taking place on 16, 17, 23 and 24 February, with the second legs on 9, 10, 16 and 17 March.
Champions League last-16 draw
Borussia Monchengladbach v Manchester City
Lazio v Bayern Munich
Atletico Madrid v Chelsea
RB Leipzig v Liverpool
Porto v Juventus
Barcelona v Paris St-Germain
Sevilla v Borussia Dortmund
Atalanta v Real Madrid