How to Design Circuits Using Semiconductors