EE 7700-1             
Fall 2001             
Call No.: 1735
Software Optimizations and High-Level Synthesis
| Instructor: | J. Ramanujam, 345 EE Bldg., 578-5628 (Email: jxr@ece.lsu.edu) |
| Time: | 10:40 - 11:30 MWF |
| Reference: |
1.  Synthesis and Optimization of Digital Circuits, |
| |         Giovanni DeMicheli, McGraw-Hill, 1994. |
| | 2.  Class notes and recent papers from the literature. |
| Prerequisites: | Graduate standing |
The course deals with four aspects:
- high-level compiler
optimizations and behavioral transformations;
- software
optimizations aimed at reducing power consumption;
- synthesis and
optimization of large scale digital systems primarily from high-level
specification, with coverage of topics such as custom logic synthesis,
design space exploration, optimizing for low power, and system-level
hardware/software co-design; and
- memory optimization and synthesis.
The design automation, architecture and compiler issues in
system-on-chip (SOC) design will also be discussed. Configurable
computing including FPGAs and system-level (hardware and software)
design issues will also be discussed. This course covers topics in an
important emerging area in digital design.
- Introduction: digital synthesis, application-specific ICs.
- Brief look at hardware description languages (VHDL, Verilog).
- high-level compiler optimizations.
- behavioral transformations.
- high-level synthesis of hardware:
algorithms for clock selection, scheduling, module selection and binding.
- system-level synthesis: hardware-software co-design.
- system-on-chip design: memory synthesis, design space exploration.
- design and optimization for low power applications.
- configurable computing: architectures, software, FPGAs.
- Homework and Programs 20%
- Project and Presentation 25%
- One test 25%
- Final 30%