An Introduction to Semiconductor Devices