I’ve written code that successfully reads the vendor/device ID and serial number from a Ramtron FM25VN10 SPI FRAM chip. I haven’t yet read or written data. The code is currently using GPIO bit-banging, but the hardware is designed to allow the USART to be used in SPI mode, so I may switch to that in the future.
This is on the DIYRPN 4 hardware, which is a calculator using an Energy Micro EFM32G280F128 microcontroller based on an ARM Cortex-M3 core. The calculator is running a microcode-level simulation of an HP-41C. At a CPU clock of approximately 14 MHz (using an uncalibrated internal RC oscillator), it runs roughly 14 times faster than an actual HP-41C. There is a lot of room for optimization of the simulator code. It is also possible to run the chip at 21 MHz or 28 MHz, though that introduces a wait state for the internal flash memory.