A method for rake-finger processing, comprising: loading samples from a register into an execution unit; performing a rake-finger operation on the samples from the register in the execution unit, wherein performing the rake-finger operation comprises: performing a rotation operation on the samples from the register to generate rotated samples; performing a finite impulse response, FIR, filter operation on the rotated samples to produce first filtered samples and second filtered samples, the first filtered samples being offset in time from the second filtered samples; and performing a despread operation on the first filtered samples and the second filtered samples, wherein the first filtered samples and the second filtered samples from the FIR filter operation are input to the despread operation without going through the register, and performing the despread operation comprises: despreading the first filtered samples with a first code into first despreaded samples; and despreading the second filtered samples with a time-shifted version of the first code into second despreaded samples; and writing results from the rake-finger operation to the register. loading samples from a register into an execution unit; performing a rake-finger operation on the samples from the register in the execution unit, wherein performing the rake-finger operation comprises: performing a rotation operation on the samples from the register to generate rotated samples; performing a finite impulse response, FIR, filter operation on the rotated samples to produce first filtered samples and second filtered samples, the first filtered samples being offset in time from the second filtered samples; and performing a despread operation on the first filtered samples and the second filtered samples, wherein the first filtered samples and the second filtered samples from the FIR filter operation are input to the despread operation without going through the register, and performing the despread operation comprises: despreading the first filtered samples with a first code into first despreaded samples; and despreading the second filtered samples with a time-shifted version of the first code into second despreaded samples; and writing results from the rake-finger operation to the register. performing a rotation operation on the samples from the register to generate rotated samples; performing a finite impulse response, FIR, filter operation on the rotated samples to produce first filtered samples and second filtered samples, the first filtered samples being offset in time from the second filtered samples; and performing a despread operation on the first filtered samples and the second filtered samples, wherein the first filtered samples and the second filtered samples from the FIR filter operation are input to the despread operation without going through the register, and performing the despread operation comprises: despreading the first filtered samples with a first code into first despreaded samples; and despreading the second filtered samples with a time-shifted version of the first code into second despreaded samples; and despreading the first filtered samples with a first code into first despreaded samples; and despreading the second filtered samples with a time-shifted version of the first code into second despreaded samples; and writing results from the rake-finger operation to the register.