My current research interests are developing domain specific languages, compilers, and design automation tools for computer architecture and embedded systems applications.
Here are some of my explorations and research into Domain Specific Languages (DSLs):
Cornell Computer Systems Lab (Zhang Research Group):
I helped develop and look into design options for a domain specific language to create customized RISC-V microprocessor designs in Chisel Hardware Description Language. I Co-Authored a paper on this subject that was accepted to the 2019 Design Automation Conference: Paper
I also worked on an open source tool called HeteroCL that is used for compiling a high level language to run on heterogeneous computing platforms.
Summer 2019 (Octeon Team): I developed a domain specific language compiler to compile a high level description of a finite state machine to a low level hardware configuration for a particular functional block (On Chip Logic Analyzer) on a chip. I also wrote accompanying user space device drivers to configure the functional block.
Summer 2020 (SSD Firmware Team): I worked on improvements to a microcode compiler for a NAND flash controller chip that compiles a custom domain specific language I helped design to microcode that can be used within the flash firmware.