About Me

I am a student of Digital Electronics at the University of Tehran. I have been working on my skills for four years. In the future, I want to be a professional engineer in the field of electronics. Nowadays I'm looking for an internship that will allow me to improve myself even further, while also developing new skills and gaining knowledge in different areas. My goal is to develop my career even more in this field.

Education

  • B.Sc. Degree

    B.Sc. in Electrical Engineering, University of Science and Culture, Tehran, Iran.
    2020 - 2023

  • M.Sc. Degree

    M.Sc. in Electrical Engineering-Digital Electronic Systems, University of Tehran, Tehran, Iran.
    2023 – Present

Skills

Tools and languages I use for digital design, embedded systems, and engineering workflows.

Programming Languages

  • C
  • C++
  • Python
  • Verilog
  • VHDL
  • SystemC

Engineering

  • Catapult
  • Quartus
  • ModelSim
  • Cadence SoC Encounter
  • Factory I/O
  • Altium Designer
  • NI Multisim
  • SPICE
  • STM32 Cube IDE
  • AVR Microcontroller Programming
  • Git

Projects

TS Packet Analyzer

TS-Packet-Analyser is a tool for analyzing MPEG-2 Transport Stream (TS) packets. This tool provides detailed insights into the structure and content of TS packets, including PAT, PMT, and other tables, making it useful for debugging and learning about MPEG-2 TS streams. This project was developed as part of an internship.

Simple CNN Pattern Finder in SystemC (RTL)

A very small CNN-style hardware design in SystemC that detects specific patterns inside a 4×4 input image. The “Pattern Finder Circuit” contains three convolution blocks (each using a 3×3 kernel), followed by ReLU and 2×2 max pooling, then a final logic stage that outputs which pattern was found. The design includes a small RAM to store the image and a start/done control flow, with the convolution blocks running concurrently.

Simple MacroPad

A custom STM32-based MacroPad with a PyQt5 desktop configurator that lets you assign each of the 12 keys to either a key-combination (up to 3 keys), a text macro, an audio trigger (mp3), or launching an executable. All settings are saved per-button in a config.ini file, and the UI includes live button preview with customizable background/font/hover colors plus quick reset-to-default options.

LM741 Op-Amp (BJT) in HSPICE

A transistor-level implementation of the classic LM741 operational amplifier using BJT devices, simulated in HSPICE. The project focuses on building the internal stages from discrete transistors and validating the design through SPICE simulations (e.g., operating point and time-domain behavior) to study how the 741 works under the hood.