A dynamic programming algorithm for simultaneous phase estimation and data decoding on random-phase channels | IEEE Journals & Magazine | IEEE Xplore