A USB 2.0 Device Controller in SystemC TLM (Part 1): Architecture and Enumeration 17th August, 2026
The first part of a series documenting my open-source USB 2.0 device controller written in SystemC TLM. Architecture, the state machines, and exactly what the model can do today: GET_DESCRIPTOR, SET_ADDRESS, and re-enumerating from the new address.
An Introduction to PCIe Device Emulation With QEMU 3rd January, 2026
Diving into the world of emulating PCIe devices with QEMU for early and continuous testing and verification in a semiconductor's lifecycle. Here, I give an overview of what the process of PCIe emulation looks like, briefly.
QEMU for Dummies (Me) 2nd September, 2025
I've always been afraid of QEMU, since it has a million options you can configure and break. However, it dawned on me (at my job) that you can do stuff on QEMU that you can't do with other things. In fact, at times, you can ONLY use QEMU. Therefore, I finally decided to face my fears, learn a bit of QEMU, and make sure that you don't have to go through million lines of documentation like I had to. This is a very simple guide for very simple people.
An Introduction to Remote Direct Memory Access. 18th July, 2025
Exploring the concept behind low-latency, high-throughput networking in modern data centers, and how it compares against the traditional networking stack.