Digital Design: Principles and Practices (With CD-ROM)