Silicon Photonic Devices for Optical Computing