Automatic Construction of Application-Optimized FPGA Memories, MIT
Advised by Prof. Joel Emer and Prof. Srini Devadas
- Built program introspection tools to analyze FPGA applications' runtime memory access characteristics
- Developed optimization algorithms to construct cache networks that minimize network latency impact and achieve good load balance cross multiple board-level memories
- Designed a complier (in Python) that automatically customizes the memory system tailored for a given application based on program introspection results and available hardware resources
- Extended optimized memory services to high-level-synthesis (HLS) applications
FPGA-based Shared Memory and Synchronization Primitives, MIT
Advised by Prof. Joel Emer and Prof. Srini Devadas
- Built a shared memory infrastructure for FPGA-based parallel programming algorithms
- Developed a shared-memory service that automatically manages multiple coherent caches and coherence domains across multiple FPGAs
- Built novel lock and barrier primitives outside of shared memory to leverage native FPGA communication capabilities
Authenticated Storage Using Small Trusted Hardware, MIT
Advised by Prof. Nickolai Zeldovich and Prof. Srini Devadas
- Built an authenticated cloud storage system that efficiently ensures data integrity and freshness by attaching a small piece of high-performance trusted hardware to an untrusted server
- Designed security mechanisms for trusted storage, including memory authentication, system state protection against power loss, access control, and crash recovery
- Implemented the trusted hardware on FPGA (using Verilog), the untrusted server on a Linux machine (using C++ and Ruby), and a client model with filesystem support
- Partitioned the functionality across software and hardware to improve system performance
Hybrid Color Calibration for Multiview View Synthesis, NTU
Advised by Prof. Liang-Gee Chen
- Proposed a hybrid color calibration algorithm for the virtual view synthesis and tested it using C++
- Conducted hardware architectural analysis and implemented the hardware-oriented algorithm (in Verilog)
- Assisted a tape-out work for the view-synthesis chip in 45nm technology