Digital Vlsi Design With Verilog by John Williams