Digital Integrated Circuits A Design Perspective