一、課程說明(Course Description)
Field programmable gate arrays (FPGAs) are computer logic chips whose function
and wiring can be re-programmed. FPGAs enable the creation of custom computing
engines with higher efficiency than conventional software-programmed
processors. FPGA-based electronic designs are found everywhere such as
consumer gadgets, wired and wireless communication, automotive, industrial,
medical, scientific, aerospace, military, etc. FPGAs are one of the first
commercially available 3D/2.5D ICs. FPGAs are highly power-efficient for
implementing neural networks for accelerating AI applications. Cloud service
providers are offering customers the ability to use FPGAs as accelerators.
Increasingly, FPGAs are displacing ASICs and ASSPs as IC design complexity and
manufacturing costs continue to rise.
This course first introduces the characteristics, evolution and usage of
field-programmable technologies, and then continues to look into some advanced
researches related to FPGA architecture and CAD. On the hardware side, we will
investigate the tradeoff involved in finding a balanced FPGA architecture and
study some recent commercial FPGA architectures as examples. On the software
side, we will look at the FPGA design flow and study the design of efficient
FPGA CAD tools for technology mapping, placement, and routing, etc. to
optimize power and performance. New directions of architecture & CAD research
will be explored together at the end.
二、指定用書(Text Books)
No required textbook
Lecture notes will be provided at the class.
Selected readings will be posted at the e-learning class webpage.
三、參考書籍(References)
1. Field-Programmable Gate Arrays, by S.D. Brown, R.J. Francis, J. Rose, and
Z.G. Vranesic, Kluwer Academic Publishers.
2. FPGA-based System Design, by W. Wolf, Prentice Hall.
3. Application-Specific Integrated Circuits, by M.J.S. Smith, Addison
Wesley.
四、教學方式(Teaching Method)
Lectures, student presentation
五、教學進度(Syllabus)
Part I. FPGA Technology & Architecture
1. Why FPLDs?
2. Classification and Evolution of FPLDs
3. Programming Technologies and Logic Element Design
4. Routing Architecture Design
5. Commercial Examples
6. Circuit Design and Architecture Issues
Part II. FPGA CAD
1. Technology Mapping for FPGA
2. Placement for FPGA
3. Floorplanning for FPGA
4. Routing for FPGA
5. Timing Optimization Techniques for FPGA
6. Power Optimization Techniques for FPGA
7. Pin Assignment for FPGA
8. CAD for 2.5D FPGAs
六、成績考核(Evaluation)
Assignments: 50%
Literature review & presentation: 20%
Quizzes: 30%
七、可連結之網頁位址
NTHU eeclass