Digital signal processing lecture notes