Hardware Validation PVT Characterization Signal Integrity Embedded Systems

Athish
Vikraman

I validate and characterize hardware at the bench — from PVT corner sweeps and signal integrity analysis to bare-metal firmware on STM32 with statistical methodology and oscilloscope-driven debug. Currently seeking summer internship, co-op, or full-time roles in hardware validation, platform validation, or characterization engineering.

M.S. EE
Case Western Reserve University
2
Engineering Internships
25+
Oscilloscope Captures & RCAs
F-1 CPT
Work Authorized for Internship/Co-op
01 — About

A bit about me.

I'm Athish — M.S. Electrical Engineering at Case Western Reserve University. I validate and characterize hardware using oscilloscopes, DMMs, logic analyzers, and bare-metal firmware written at the register level. My work follows semiconductor-industry PVT methodology — every measurement includes sample count, mean, and standard deviation.

Right now I'm running a full platform validation campaign on an STM32F446RE — characterizing GPIO timing determinism, power rail integrity, and communication bus signal quality across voltage corners from 2.8V to 3.6V. I've also built a 5-stage pipelined RISC-V CPU with a custom systolic array coprocessor, hardware-validated on Zynq UltraScale+ at 138 MHz with 36/36 tests passing. Before grad school, I was debugging live transducer signals in a petroleum plant at ONGC — oscilloscope on noisy lines, root-causing grounding faults, calibrating field instruments. That hands-on instinct carries into every bench session.

Looking for a summer internship, Fall 2026 co-op, or full-time role in hardware validation, platform validation, characterization engineering, or system-level test.

2025 — Present

Case Western Reserve University

M.S. Electrical Engineering · GPA: 3.57/4.0

2021 — 2025

Manipal Institute of Technology

B.Tech Electronics & Instrumentation · GPA: 3.30/4.0

Seeking

Internship · Co-op · Full-Time

Hardware Validation · Characterization · Platform Test

02 — Projects

What I've built.

Every project below is verified, synthesized, or deployed. The results are real.

Graduate

Graduate-Level Work

★ Featured Project
C · FreeRTOS · STM32F446RE · In Progress

STM32 Multi-Sensor Data Acquisition System

A bare-metal multi-sensor data-acquisition platform on the STM32F446RE — a register-level I²C driver for the BME280, a register-level SPI driver for the ADXL345 accelerometer, and CAN 2.0B uplink over an SN65HVD230 transceiver, with a Python host-side visualizer reading telemetry over UART.

STM32FreeRTOSCI²CSPICANARM Cortex-M4
Approach: No HAL, no Arduino — every driver is written at the register level straight from the STM32F446RE reference manual. FreeRTOS schedules four concurrent tasks, with queues and mutexes coordinating sensor acquisition, CAN transmission, and UART telemetry so there are no shared-state races.

Status: In active development on the Nucleo board.
★ Featured
Hardware Validation · RCA · STM32F446RE

Root-Cause Analysis — UART Baud-Rate Defect

A full bench root-cause analysis of an STM32F446RE (Nucleo) transmitting UART at ≈9,800 baud instead of the configured 115,200. On a Keysight InfiniiVision MSO-X 2002A, I cursor-measured the bit period at 102 µs (→ 9,804 baud) and confirmed the line was electrically clean — 3.3 V CMOS, sharp edges, DC-RMS consistent with the 0x55 test pattern — isolating the fault to bit rate rather than signal integrity. Working backward through the USART baud-divider relation, I reverse-engineered the loaded BRR as 0x0683 (the 9,600-baud divisor at a 16 MHz APB2 clock), not the 0x008B required for 115,200 — a firmware constant error, not a silicon defect.

Fix & verification: corrected USART1→BRR from 0x0683 to 0x008B (0.08% theoretical error) with an inline derivation comment to kill the magic-number recurrence. Re-measured under identical probe and scope settings, the bit period dropped 102 µs → 9.00 µs — within 3.7% of the theoretical 8.68 µs at 115,200 baud — and the symptom cleared; RCA closed, fix verified. Takeaway: a clean wire is not a correct wire — signal integrity and protocol correctness are independent, and the wire is the source of truth.
STM32F446REBare-metal CUART / USARTOscilloscopeSignal IntegrityRoot-Cause AnalysisRegister-Level Debug
★ Featured
Hardware Validation · RCA · STM32F446RE

Root-Cause Analysis — Silent Clock-Tree Baud Failure

A bench RCA of a silent fault: USART2 on an STM32F446RE (Nucleo) emitted unreadable serial at 115,200 baud, yet the firmware raised no status flag, no fault exception, and the PA5 heartbeat kept toggling — so any register-based self-check would have passed. Probing MCO1 (SYSCLK/4) on a Keysight DSO-X 2002A, I measured 22.9 MHz against a 45 MHz baseline — an almost exact halving. With PLLM and PLLP confirmed correct, the SYSCLK relation (PLLN sits in the numerator) left only one suspect: RCC_PLLCFGR had PLLN = 180 instead of 360, halving the VCO, SYSCLK (90 vs 180 MHz), and PCLK1 (22.5 vs 45 MHz) — so the unchanged divisor yielded ≈57,600 baud.

Fix & verification: I cross-checked through a second, independent channel — re-tuning PuTTY to 57,600 baud recovered clean text with no firmware change, confirming the transmit clock had halved. Restoring PLLN 180→360 brought MCO1 back to ~45 MHz and 115,200-baud output back to readable, with no side effects. To turn this silent class of fault into a detectable one, I specified a boot-time clock self-check (read back RCC_PLLCFGR, recompute SYSCLK, halt on mismatch), a permanent MCO test point, and named clock constants. Resolved and verified — two measurements sharing no common circuitry agreed on the 0.5× factor.
STM32F446REBare-metal CClock Tree / PLLRCC_PLLCFGROscilloscopeRoot-Cause AnalysisCortex-M4
ECSE 417 · SystemVerilog

RV32IM Pipelined CPU + 4×4 INT8 Systolic Array

A complete SoC — 5-stage pipelined RISC-V processor with the full RV32IM instruction set, zero-penalty data forwarding, load-use stall detection, branch flush, and a custom md_result_captured latch that solves a tricky M-extension pipeline timing hazard.

Coprocessor: 16-PE weight-stationary systolic array with row-skewed activation input, INT32 accumulation, and 7-cycle compute latency. Controlled via 6 custom RoCC instructions.

Results: Hardware validated on AUP-ZU3 (Zynq UltraScale+ ZU3EG). 138 MHz achievable (WNS +2.754 ns at 100 MHz). 4,777 LUTs · 2,985 FFs · 10 DSPs. 36/36 verification checks passed across 12 test categories.
SystemVerilogVivadoZynq UltraScale+RISC-VRoCC ISA
ECSE 488 · C++ / OpenCV · Embedded Linux

Event-Driven Warehouse Video Surveillance

A real-time embedded surveillance system on Raspberry Pi 5, written in C++17 with OpenCV 4.10. The vision pipeline runs frame differencing plus background subtraction, Gaussian blur, morphological cleanup, and contour scoring to localize motion; a custom StableBox tracker (EMA smoothing α=0.15, 10 px deadzone, 15% per-frame size clamp, 3-frame confirmation) suppresses jitter from low-cost USB cameras. A Moore finite-state machine sorts activity into four severity levels and switches recording mode accordingly — idle logging, low-res JPEG, high-res JPEG, and MJPG video — with immediate escalation but hysteresis-delayed de-escalation to stop mode flicker.

Results: event-driven recording cut storage by ~97% versus continuous capture (2.5 GB/day vs 86.5 GB/day → ~25 days of retention on a 64 GB card instead of under one). The pipeline ran at 15.6 ms/frame (≈64 FPS, an 87% margin over the 143 ms real-time budget), all four modes classified correctly, and the system was demonstrated live on Raspberry Pi 5 with two USB cameras writing timestamped evidence into per-camera directories.
Raspberry Pi 5C++17OpenCVMoore FSMComputer VisionMJPGV4L2
ECSE 422 · Semiconductor Devices

HfO₂ Ferroelectric Devices for Memory & Logic

A research project exploring hafnium-oxide-based ferroelectric architectures — FeRAM, FeFET, and NCFET — for next-generation non-volatile memory and steep-slope logic applications. Covers material physics, phase transitions, polarization mechanisms, and CMOS fabrication compatibility.

Solid-State PhysicsFeRAMFeFETNCFETCMOS Scaling
ECSE 417 · Verilog · Lab 1

Parameterized Pipelined Arithmetic Datapath

Designed a streaming datapath computing y = (a×b) + (c×d) + e on signed 16-bit fixed-point inputs with a valid-ready handshake interface. Built both an unpipelined single-cycle version and a parameterized pipelined version with configurable depth (2–5 stages).

Results: Swept pipeline depths 2–5 and analyzed Fmax vs. resource tradeoffs. Peak 346 MHz at depth 4 (32 LUTs, 148 FFs, 2 DSPs). Unpipelined achieved 291 MHz. Verified with a self-checking testbench using 200+ seeded random vectors.
VerilogVivadoPipeliningTiming AnalysisValid-ReadyTestbench
ECSE 417 · Verilog · Lab 2

Dot-Product Accelerator with Multi-Mode FSM

Three compute modes — sequential MAC, 4-way parallel MAC with an adder tree, and early-exit with a magnitude comparator. Controlled by a 5-state hybrid Moore/Mealy FSM with stall handling, output backpressure, and built-in hardware performance counters.

Results: Synthesized at 121.4 MHz, 496 LUTs, 241 FFs, zero DSP blocks. Verified across 7 automated testcases including random stall injection and backpressure hold.
VerilogVivadoFSM DesignMAC UnitStall LogicPerf Counters
ECSE 422 · COMSOL Multiphysics · Report 1

1D Abrupt P-N Junction Simulation

Modeled a one-dimensional abrupt p-n junction using COMSOL Multiphysics. Simulated electrostatic potential, electron/hole concentration profiles, net charge density, and electric field under equilibrium, forward bias (0 to +0.5 V), and reverse bias (0 to −1.5 V). Parametric sweep over donor concentration ND ∈ {1, 2, 5} × 10¹⁶ cm⁻³.

Analysis: Analytically verified built-in voltage, depletion width (scales ∝ 1/√N), and peak electric field (scales ∝ √N). All COMSOL numerical results matched standard semiconductor theory exactly.
COMSOL MultiphysicsSemiconductor PhysicsP-N JunctionDevice ModelingParametric Sweep
ECSE 422 · COMSOL Multiphysics · Report 2

2D P-I-N Junction — Light Response & Quasi-Fermi Levels

Extended the 1D model to a full 2D p-i-n junction (12×6 µm) solved via coupled drift-diffusion PDEs in COMSOL. Studied photodetector and solar-cell behavior by sweeping optical generation rate G₀ under zero and −2 V reverse bias. Derived the logarithmic scaling of quasi-Fermi level splitting: ΔEf ≈ 2Vt · ln(G₀τ / nᵢ).

Results: Carrier concentration in the intrinsic region climbed from ~10¹⁰ cm⁻³ at G₀ = 0 to ~10¹⁶ cm⁻³ at peak generation. Under −2 V reverse bias, estimated electron transit time ≈ 0.46 ns — far below SRH recombination lifetime, explaining high quantum efficiency.
COMSOL Multiphysics2D Drift-DiffusionP-I-N JunctionQuasi-Fermi LevelsPhotodetectorSolar Cell
ECSE 489 · MATLAB · Robotics I

6-DOF Manipulator Kinematics — Intelledex Robot

MATLAB programming assignments on the kinematics of the 6-DOF Intelledex serial manipulator, built on screw theory and homogeneous transforms. PA 1 implements forward kinematics two independent ways — Product of Exponentials (matrix exponentials of se(3) twists) and Denavit–Hartenberg — which agree on end-effector position and both produce valid SE(3) transforms (orthonormal R, det ≈ +1). PA 2 solves analytical inverse kinematics by Paden–Kahan subproblem decomposition (subproblems 1–3), then verifies the recovered joint angles by feeding them back through the PoE forward model. PA 3 computes the spatial and body Jacobians via the adjoint map and uses the Jacobian rank and its null spaces to flag singular configurations — separating internal joint motions that don't move the tool from end-effector twists the arm can't produce.

MATLABForward KinematicsInverse KinematicsScrew Theory / PoEDenavit–HartenbergSE(3)Jacobian / Singularity
ECSE 417 · Vitis HLS · Lab 3

HLS Neural-Network Building Blocks — Linear & Conv2D Accelerators

Designed and optimized two fundamental neural-network layers — a fully-connected (linear) layer and a 2D convolution layer — in Xilinx Vitis HLS, using INT8 operands with INT32 accumulation on a Zynq UltraScale+ (xczu3eg) at 100 MHz. Benchmarked pragma-free baselines against variants tuned with PIPELINE, UNROLL, and ARRAY_PARTITION directives.

Results: Conv2D latency cut from 112,902 to 1,583 cycles — a 71.3× speedup (71.3 MACs/cycle, 40 DSPs); the linear layer reached 133 cycles, a 15.4× speedup at 8 DSPs. A Pareto design-space exploration showed that auto-unrolling without matched partitioning wastes silicon — baselines burned 32 DSPs at II=32, while a single pipelined variant matched throughput on just 1 DSP. All 10 variants verified bit-exact (zero error) against a C++ golden model over 25 random vectors; both layers proved compute-bound with all data resident in on-chip BRAM.
Vitis HLSC/C++HLS PragmasINT8 / INT32Zynq UltraScale+Conv2DPareto DSE
ECSE 417 · Vitis HLS · Final Project

BitNet-Style Ternary Transformer Block on FPGA

A complete Transformer block — multi-head self-attention, MLP, LayerNorm, and softmax — written in C++ and synthesized to RTL with Vitis HLS, then placed-and-routed and run on the Avnet AUP-ZU3 (Zynq UltraScale+ ZU3EG). Two variants share an identical activation datapath but differ in the six weight-projection layers: a 16-bit fixed-point baseline versus a BitNet-style ternary {−1,0,+1} design that replaces every weight multiply with a conditional add/subtract/zero, freeing the device's DSP slices for the activation-times-activation matmuls.

Results: against the 16-bit baseline, the ternary variant cut DSP by 38.5% (39→24), LUT by 25.0%, FF by 20.4%, and BRAM18K by 27.0% — at identical II=1 and identical 139.46 MHz estimated Fmax. Vivado closed timing on-board at a 50 MHz user clock (WNS +12.979 ns), verified bit-faithfully against a double-precision C++ golden model (0 sim errors) and on real silicon via an on-chip top-12-bit comparator. A 5-point bit-width design-space exploration surfaced the key finding: 8/4/2-bit ap_fixed weights all plateau at 33 DSPs because Vitis HLS maps any product fitting the DSP48E2's 27×18 multiplier onto a single DSP — so on FPGAs, precision narrowing buys BRAM but not DSP; only the ternary operator replacement releases DSP capacity.
Vitis HLSC++Zynq UltraScale+TransformerBitNet TernaryDSP48E2Design-Space Exploration
ECSE 422 · COMSOL Multiphysics · Report 3

2D MOS Capacitor & MOSFET — Electrostatic Modeling

Built a 2D electrostatic model of a MOS capacitor and an n-channel MOSFET in COMSOL's Electrostatics interface, solving Poisson's equation with Boltzmann carrier statistics and a hand-defined space-charge density. Part 1 sweeps gate voltage (−2 to +5 V), substrate doping (10¹⁵–10¹⁸ cm⁻³), and oxide thickness (10–100 nm), extracting depth profiles of potential, carrier concentration, electric field, and net charge. Part 2 adds n⁺ source/drain and maps the 2D potential and electron density across (VGS, VDS) bias points.

Results: the MOS-cap model reproduces all four regimes — accumulation, flat-band, depletion, and strong inversion (marked by the surface n/p crossover at VG = 5 V) — with a ~0.15 µm depletion width matching Wdep = √(2εSiψs/qNA). Heavier doping raises threshold voltage and narrows depletion as 1/√NA; in strong inversion the surface potential pins near 2φF, so silicon-side profiles converge regardless of oxide thickness. The MOSFET maps capture off-state isolation at VGS = 1 V, channel formation above threshold, and drain-end pinch-off in saturation at VGS = 5 V / VDS = 3 V. Scaling the solver potential to Vth was essential for Newton convergence.
COMSOL MultiphysicsMOS CapacitorMOSFETPoisson–BoltzmannThreshold Voltage2D Electrostatics
Undergrad

Undergraduate Work

Hardware · 8051 Microcontroller

Blood Level Monitoring System

A hand-soldered analog signal conditioning circuit — op-amp gain stage plus LDR voltage divider — interfaced to an 8051 microcontroller via ADC. Built for fluid-level detection in medical IV bottles.

How I verified it: Oscilloscope for waveform analysis, DMM for DC bias measurements. Components selected from datasheets. Fixed noise issues with bypass capacitors.
8051Op-AmpSolderingOscilloscopeDMM
IoT Platform · ESP32

Cloud Control Hub

A remote monitoring system that publishes sensor data over MQTT with TLS encryption to AWS IoT. Supports actuator control through cloud-triggered GPIO callbacks and I²C sensor interfacing.

ESP32AWS IoTMQTT/TLSI²CGPIO
IoT · ESP8266

E-Smart Board

A Wi-Fi-enabled notice board that receives messages through a web interface and displays them on an LCD screen in real time. Uses ThingSpeak for cloud-based logging.

ESP8266ThingSpeakLCDWi-Fi
Embedded Control · Arduino

Temperature-Controlled Fan

A closed-loop fan speed controller built with an Arduino and an LM35 temperature sensor. PWM-regulated. Hand-soldered on a breadboard.

ArduinoLM35PWMSoldering
03 — Skills

Technical toolkit.

The tools, languages, and platforms I use to design, simulate, build, and debug.

Languages
  • C / C++
  • Python
  • SystemVerilog / Verilog / VHDL
  • RISC-V Assembly
  • Assembly (8051, ARM)
FPGA & EDA
  • Xilinx Vivado
  • XSim (simulation)
  • Zynq UltraScale+ / 7-series
  • COMSOL Multiphysics
  • LTSpice / Multisim
  • MATLAB / Simulink
Architecture
  • RISC-V RV32IM pipeline
  • Systolic arrays
  • Custom ISA (RoCC)
  • Forwarding / hazard logic
  • FSM design
Embedded
  • STM32 (Cortex-M4)
  • 8051 / LPC2148 (ARM7)
  • Arduino / ESP32 / ESP8266
  • Raspberry Pi
Protocols
  • I²C, SPI, UART, CAN 2.0B
  • AXI4-Lite, GPIO / ADC / PWM
  • MQTT / TLS
Lab & Fabrication
  • Oscilloscopes / Logic Analyzers
  • Digital Multimeters
  • SMD & through-hole soldering
  • Breadboard / PCB prototyping
04 — Coursework

Academic foundation.

Graduate — CWRU

M.S. Electrical Engineering

Computer Design — FPGAs (A)Embedded System Design (A)Solid-State Electronics II (A)Robotics I

Undergraduate — MIT Manipal

B.Tech Electronics & Instrumentation

MicrocontrollersAnalog CircuitsDigital CircuitsSensors & TransducersControl SystemsDSPLinear ICsIndustrial AutomationCyber-Physical SystemsIndustrial IoT
05 — Experience

Professional path.

Jun — Jul 2023

Instrumentation & Control Engineering Intern

Oil and Natural Gas Corporation (ONGC) — Karaikal, India

  • Designed industrial control circuits in Multisim and selected components through datasheet analysis
  • Troubleshot live instrumentation using oscilloscopes and DMMs in an active petroleum plant
  • Calibrated temperature and pressure transducers; performed analog signal conditioning
Dec 2024 — Apr 2025

Automation Engineering Intern

Hiranya Pathaye Technologies — Coimbatore, India

  • Wrote Python scripts that automated backend data validation across 500+ records — cut manual QA time in half
Jan 2023

PLC Workshop Instructor

Manipal Institute of Technology

  • Led a 3-day hands-on workshop on Programmable Logic Controllers for 30+ undergraduates
2023

CISCON 2023 — Key Speaker

Control Instrumentation Systems Conference

  • Presented research on power IC applications; paper currently in review
06 — Contact

Let's connect.

I'm actively looking for summer internship, co-op, or full-time opportunities in hardware validation, platform validation, characterization engineering, or system-level test. Based in Cleveland, OH — happy to chat about any role that involves bench work, oscilloscopes, and quantitative hardware characterization.