1. A method for processing data at a receiver unit in a multiple-input multiple-output (MIMO) communication system, comprising: processing a plurality of input signals having included therein one or more symbol streams corresponding to one or more data streams to provide a decoded data stream for one of the one or more symbol streams; deriving a plurality of modified signals based on the input signals and having components due to the decoded data stream approximately removed; performing the processing and selectively performing the deriving for each of one or more iterations, one iteration for each data stream to be decoded, and wherein the input signals for each iteration subsequent to a first iteration are the modified signals from a preceding iteration; and determining channel state information (CSI) indicative of characteristics of a MIMO channel used for transmitting the data steams, wherein the data streams are adaptively processed at a transmitter unit based in part on the CSI.