Fundamentals of Communication Systems