ES611: FPGA-based System Design