Pompey have signed left-back Lee Brown on a two-year deal.
The 27-year-old will officially become a Blues player on July 1 when his contract with Bristol Rovers expires.
Blues boss Kenny Jackett said: “Lee brings an awful lot of experience to our side and yet he probably still has his best years in front of him.
“I felt we gave away too many goals last season and he can certainly help with that, but he’s also a full-back that likes to attack and create goals.
“We’re really pleased to bring someone of his character to the club and I believe he’ll really add to our group.”
Brown started his career at QPR and had a couple of loan spells with non-league clubs before joining Rovers in the summer of 2011.
He made 319 appearances for the Pirates – scoring 22 goals – and was part of the side that secured back-to-back promotions into League One.