Digital Logic Simulation and CPLD Programming - Steve Waterman