EE8301, Sec 001: Reconfigurable Computing

Spring 2006

Instructor: Kia Bazargan

Class: TTh 12:45-2:00pm, EE/CSci 3-125
http://www.ece.umn.edu/users/kia/Courses/EE8301/index.html

What is Reconfigurable Computing?

A. DeHon and J. Wawrzynek, “Embedded Tutorial: Reconfigurable Computing: What, Why, and Implications for Design Automation”, Design Automation Conference (DAC), pp. 610 – 615, 1999.

Course Description

This course covers the concept, hardware platforms and software support systems for reconfigurable computing (RC) using field programmable gate arrays (FPGAs). An FPGA device is made of an array of programmable logic blocks and programmable switches that connect the blocks. Reconfigurable computing takes advantage of the programmability of FPGAs and modifies the configuration of the logic blocks and switches on the FPGA to build new functional units that better match application hardware requirements.

Topics covered in the course include computer aided design tools for FPGAs (compiler, high-level synthesis and physical design), the basic concept of reconfigurable computing and its modes of operation (static vs. dynamic reconfiguration), examples of successful RC applications, existing architectures, operating system (OS) support, new architectures and future trends.

A significant part of the course will be spent on discussing papers from the literature. Students will present the progress in their projects during the semester.

Prerequisite

General knowledge of algorithms and computer systems. Knowledge of computer-aided design (CAD), computer architecture and operating systems a plus, but not a necessity.

Workload and Grading

10% lecture, 40% discussion, 50% student presentations

20 pages of writing per semester (double-spaced), 20 papers during the semester, 2-3cr worth projects

grade: 70% project, 10% quizzes, 20% presentations

 

Papers

Citations only (no download)

Download papers (password protected).