Tightly integrating reconfigurable logic alongside a microprocessor presents some unique opportunities and challenges. The eMIPS project looks at how a dynamically extensible processor can be built, what support structure is necessary for them to be efficient and practical, and what new capabilities they can offer.
- System Architecture and Implementation
- Operating System Support
- Hardware Generation from Software Binaries
- Case Studies and Applications
- System Verification and Debugging
- Extensible and Configurable Peripherals
- Power management for FPGA devices
Developing and executing applications on FPGAs is very different compared to traditional software running on a microprocessor. We investigate ways to make FPGA applications easier to develop/run and more reliable.
- Application Specification and Verification
- Hardware/Software Communication API
- Tools and Systems for Partial Reconfiguration
- Security Concerns
There is a wide variety of computationally-difficult business and datacenter applications that can be accelerated with the help of FPGAs.
- Offloading Communication Protocol Processing
- Spam Filtering
- Quantifying Speedup and Characterizing FPGA-Appropriate Applications