components and design techniques for digital system 372