QSPI-Interface¶
Quad-SPI controller with OBI bus attachment — developed for the hatch SoC (RISC-V) at Hochschule München, reusable as a standalone IP with two OBI subordinate ports. The controller maps external serial memories into the address space as execution and data memory (XIP) and additionally offers a register-driven indirect mode for arbitrary chip commands (init, status, JEDEC ID, …).
Supported/validated target devices:
Chip |
Type |
Access |
Profile |
|---|---|---|---|
Microchip 23LC1024 |
1 Mbit SRAM |
read and write |
SPI/SQI, 0/2 dummy clocks |
Winbond W25Q128JV |
128 Mbit NOR flash |
read |
0x03/0x0B/0x6B/0xEB, QE bit, 4–8 dummy clocks |
Status: Beta
Fully simulation-verified (6 self-checking testbenches + SoC system simulation) and FPGA-validated on Arty A7-100T boards, both the open-source flow (two-board run inside the complete hatch SoC) and, since 2026-07-16, a Vivado flow with real bidirectional QSPI pins (FPGA Test Setups (Arty A7) setup 3) — same two-board result, fewer wires. Not yet silicon-proven. Details: Verification Plan and Changelog & Versioning.
Contents¶
Quick links¶
Build and simulate in 5 minutes → Getting Started
Register map (generated from
docs/regs.yaml) → Register MapSoftware recipes + SoC integration → Programmer’s & Integrator’s Guide
Why things are the way they are → Design Rationale & Microarchitecture
SoC-level integration, simulation and FPGA flow of the hatch chip → hatch repository,
docs/(published as GitLab Pages of the hatch project)