In this paper we derive and implement a maximum-likelyhood deconvolution (MLD) algorithm, based on the same channel and statistical models used by Kormylo and Medel (1983a), that leads to many fewer computations than their MLD algorithm. Both algorithms can simultaneously estimate a nonminimum phase wavelet and statistical parameters, detect locations of significant reflectors, and deconvolve the data. Our MLD algorithm is implemented by a two-phase block component method (BCM). The phase-1 block functions like a coarse adjustment of unkown quantities and provides a set of initial conditions for the phase-2 block, which functions like a fine adjustment of unknown quantities. We demonstrate good performance of our algorithm for both synthetic and real data.--Modified journal abstract.