The 28-year-old played his last game for Rovers on Sunday when he came off the bench in the game with West Brom.
The Axe has been with Rovers since June 2005, but has not been getting regular first team football of late at Ewood Park.
The World Cup is being staged in his country next year and Mokoena needs to be playing first team football to boost his chances of playing in the competition.
"I can leave in peace knowing that I've been honest to the team, I've been loyal, " he told Radio Rovers.
"I am going to Portsmouth, I am going there to play, it is what every player wants to do.
"I have decided it is time to move on for me. As we know we have a World Cup in South Africa and I have to play, I have to play week in, week out.
"So it is going to be a good challenge for me going to Portsmouth and we'll see how it goes.
"The good thing for me is that I have three years with Pompey and I'll be going there to do my job, as I did my job in Blackburn."