In this paper we propose an iterative carrier phase recovery method to be used in conjunction with a turbo-decoder based on the BCJR (Bahl-Cocke-JeIinek-Raviv) algorithm. The basic idea consists in: i) exploiting the forward recursion of only one SISIO decoder in order to calculate a sort of expectation of the transmitted symbols; ii) using such soft decision symbols in a modified Costas loop to update the (time-variant) carrier phase offset. The simulation results show that the proposed estimation scheme shows itself quite robust even with a severe frequency offset.