Fundamentals of Digital Signal Processing