A variable step size constant modulus algorithm based on l0-norm for sparse channel equalization