Pompey moved one step closer to a Wembley return after beating Walsall to reach the quarter-finals of the Leasing.com Trophy.
John Marquis opened the scoring at the Bescot Stadium with a close-range finish and Craig MacGillivray saved Elijah Adebayo's penalty to ensure they led at the break.
Ellis Harrison then came off the bench to head Kenny Jackett's side further in front, while Caolan Lavery's late spot-kick ensured the tie finished 2-1 in the visitors' favour.