Design of Integrated Circuits for Optical Communications