Academic Staff
THEORY
This course presents the technology of Field-Programmable Gate Arrays (FPGA) by studying several representative architectures, their design tools, and their applications. The course presents also the design styles and methodology using modern Hardware Description Languages within the context of reconfigurable computing. A highlight of the increasingly prominent role FPGAs play in system-on-chip (SOC) design is also part of this course.
The aim is to provide an introductory course to give students a detailed understanding of FPGAs and a good hands-on experience in digital system design using both schematic and HDL design flows. Students learn to write RTL code in VHDL suitable for logic synthesis, simulate their designs at every step of development, and implement them in hardware where final testing is performed. Students will also gain experience in programming devices and tailoring their designs for optimal FPGA deployment.
Layout:
- FPGAs vs. CPLDs vs. ASICs vs. Microprocessors
- Modern FPGAs - Alternative Architectures and Fabrics
- Combinational circuits – design styles, schematics, HDL
- Hierarchical design, methodology, testing
- Sequential circuits, memory elements, FSMs
- VHDL Language Constructs
- Design considerations
- System Design using SysGen
Bibliography:
1. Wayne Wolf, FPGA-based System Design, Prentice Hall PTR
2. Volnei A. Pedroni, Circuit Design with VHDL (Hardcover), MIT PRESS, ISBN-13: 978-0262162241
3. Stephen Brown and Zvonko Vranesic, Fundamentals of Digital Logic with VHDL Design, McGraw-Hill © 2000 Edition: 1 ISBN: 0072355964
4. C. Hammacher, Z. Vranesic, S. Zaky, Computer Organization, McGraw Hill, ISBN: 0-07-112218-4.
5. D. Sima, T. Fountain and P. Kacsuk, Advanced Computer Architectures, A Design Space Approach, Addison-Wesley, ISBN: 0-201-42291-3