Practical applications of advanced digital design concepts. Topics will be related to design with embedded processors, FPGAs and ASICs. The course is focused around significant projects to be implemented on FPGAs.
Lectures will cover topics such as design flows, design with HDLs, good design practices, timing, clock domains, high-speed data links, ASIC and FPGA technologies. Some lectures will also be devoted to issues in the lab and design reviews of some projects.
Labs and projects will be implemented on the Xilinx Multimedia board.
The goal of the project is to provide a real design opportunity using state-of-the-art tools and technology.
The learning from the project is about how to implement complex designs, specifically in the approaches for large digital systems encompassing a lot of gates and a lot of software.
Anyone can use tools if they work all the time by pushing the right buttons. Understanding what the tools are trying to do means that when things inevitably break, you will know where to look to find the problem, and how to get around it.
The reality of being a good designer is knowing how to debug, whether it is your own design, or the tools.