Skip to content
View fkhaidari's full-sized avatar

Block or report fkhaidari

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.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
fkhaidari/README.md

C++ engineer working on the RISC-V debug toolchain (OpenOCD, GDB, the Spike simulator) and on debug info for hardware designs.

I designed uhdi, a debug-info format for Chisel designs, and built it into CIRCT. firtool --emit-uhdi emits it, and the converters in the repo turn it into hgdb, HGLDD (Tywaves) and ChiselTrace PDG.

Upstream

OpenOCD (riscv-openocd commits, openocd.org Gerrit): RISC-V memory access. One access path for reads and writes, an abstract-command cache, address-translation drivers, privilege and MPRV handling for program-buffer access, and hardware-translated virtual access through aamvirtual.

GDB (patches): analysing a RISC-V core file without the executable (ISA features from AT_HWCAP, FLEN from the NT_FPREGSET note size) and an arch= option for the RISC-V disassembler.

Spike (PRs): RISC-V Debug Spec. Abstract register and memory access that keeps hart state intact, mcontrol6 triggers, and fixes to Debug Mode entry and exit.

Pinned Loading

  1. uhdi uhdi Public

    Unified Hardware Debug Info: a debug-info format for Chisel/CIRCT, with converters to hgdb, HGLDD and PDG

    Python 3

  2. riscv-software-src/riscv-isa-sim riscv-software-src/riscv-isa-sim Public

    Spike, a RISC-V ISA Simulator

    C++ 3.3k 1.1k