Creating Assertion-Based Ip by Harry D. Foster & Adam C. Krolnik