Discrete Time Signal Processing - Alan V. Oppenheim and Ronald W. Schafer