Senior Software Engineer II - Microchip Technology Inc
03/2025 - Present, Toronto, Canada
Designed and implemented a fully streaming CLAHE IP core in HLS C++ for real-time image and video processing
Engineered a CoaXPress-based video streaming solution, integrating HLS C++ processing cores with a Verilog CoaXPress-to-AXI adapter and validating the end-to-end flow in a SystemVerilog testbench
Implemented interrupt-driven SoC: RTL/HLS cores interrupt the RISC-V MSS, handled by C ISRs
Added reusable HLS C++ functions for vision, DSP, and motor control to the fpga-hls-libraries repo
Crafted and debugged firmware for RISC-V softcore microprocessors on PolarFire FPGA platforms
Contributed the automated SoC flow feature for the RV32 RISC-V MSS in SmartHLS2025.1
Led IP integration and system-level verification of mixed RTL and HLS designs using UVM
Senior Software Engineer I - Microchip Technology Inc
06/2023 - 03/2025, Toronto, Canada
Engineered high-performance C++ accelerator drivers for FPGA IPs in both bare-metal and Linux environments
Prototyped FPGA architectures in HLS C++, including optimized DSP filter implementations
Streamlined Python-based HLS IP generation and integration for BeagleV-Fire on Microchip FPGAs
Built Device Tree bindings and a DMA Linux driver for FPGA‐DDR data transfers
Executed on-chip debugging of FPGA-based SoC applications using OpenOCD, GDB, and hardware instrumentation
Developed a Python-based framework for heterogeneous FPGA device management across multiple platforms
Enhanced HLS toolchain throughput with Python and C++ extensions, significantly reducing synthesis times
Contributed C++ system software libraries for standardized SoC IP interfacing and control