Applied Assertion-Based Verification by Harry Forster