USB design by example : a practical guide to building I/O devices - Hyde, John (Intel, 2001)