Skip to content
View yeguns2's full-sized avatar

Block or report yeguns2

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
yeguns2/README.md

Hi, Iโ€™m Yegun Shim ๐Ÿ‘‹

Iโ€™m an Undergraduate Computer Engineering major at UIUC
(Expected Graduation: May 2027).

Iโ€™m passionate about Embedded Systems, System-on-Chip (SoC) design, FPGA development, and Deep Learning hardware.
I enjoy building systems end-to-end starting from RTL and microarchitecture, all the way to software control, debugging, and performance evaluation on real hardware.

Most of my work so far has been individually driven, focusing on learning how real hardware behaves under tight resource and performance constraints.


๐Ÿ”ง Technical Interests & Skills

  • RTL / Hardware Design: SystemVerilog, FSM-based microarchitecture, pipelining
  • SoC & Interconnects: AXI4-Lite & AXI4-Full, memory-mapped control, burst transfers
  • FPGA Platforms: MicroBlaze SoC, DDR-backed systems, Urbana FPGA board
  • Embedded Software: C/C++ (bare-metal), HW/SW co-design
  • ML Acceleration: CNN inference, quantization-aware design
  • Tools: Vivado, simulation & waveform debugging, HW/SW verification

๐Ÿš€ Featured Projects (Individual Work)

๐Ÿƒโ€โ™‚๏ธ School Run FPGA โ€” 2.5D Endless Runner Game

ECE 385 Final Project | Individual

A real-time 2.5D endless runner game implemented on FPGA using a MicroBlaze-based SoC and custom hardware IP.

Highlights

  • Designed a custom HDMI renderer IP (AXI-controlled, DDR-backed framebuffer)
  • Implemented double buffering with BRAM line buffers for smooth real-time output
  • Integrated keyboard input, audio output, sprites, and UI overlays
  • Full HW/SW co-design: game logic in software, rendering acceleration in hardware

Tech Stack

Area Details
CPU MicroBlaze
Interconnect AXI4-Lite (control), AXI4-Full (memory)
Memory External DDR + BRAM buffers
Output HDMI
Language SystemVerilog, C

๐Ÿ”— Repository: https://github.com/yeguns2/School_Run_FPGA


๐Ÿง  FPGA MNIST CNN Accelerator

Independent Project

A custom CNN inference accelerator implemented in SystemVerilog for MNIST classification.

Highlights

  • Built a full CNN pipeline with convolution, activation, and pooling hardware
  • Used line buffers and MAC arrays for streaming computation
  • Ran at 100 MHz on the Urbana FPGA board
  • Achieved ~3339ร— speedup compared to a MicroBlaze software (C) baseline
  • Designed under strict FPGA resource constraints

Performance Snapshot

Metric Value
Clock Frequency 100 MHz
Speedup ~3339ร— vs MicroBlaze (C)
Platform Urbana FPGA board
Scope Fully individual implementation

๐Ÿ”— Repository: https://github.com/yeguns2/FPGA_MNIST_Accelerator


๐Ÿค Team Projects

This section will include collaborative projects with clear descriptions of my individual technical contributions.


๐Ÿ“ซ Contact


๐ŸŒฑ Currently Enjoying

  • Designing AXI-based systems and understanding real memory bottlenecks
  • Comparing HLS vs handwritten RTL for accelerators
  • Learning how small microarchitectural choices affect real performance

I enjoy learning by building and iterating on real hardwareโ€”feel free to reach out!

Popular repositories Loading

  1. School_Run_FPGA School_Run_FPGA Public

    Temple Runโ€“style 2.5D endless runner implemented on an FPGA with a MicroBlaze SoC, custom renderer IP, and HDMI framebuffer controller.

    VHDL 1

  2. FPGA_MNIST_Accelerator FPGA_MNIST_Accelerator Public

    FPGA-based MNIST CNN Accelerator achieving 3339x speedup vs MicroBlaze soft-core. (HW/SW Co-design on Urbana Board)

    SystemVerilog 1

  3. yeguns2 yeguns2 Public

  4. yeguns2.github.io yeguns2.github.io Public

    JavaScript