So in principle, if we were to use SRAM as memory, and FPGA as CPU at 100-ish MHz, would we still need a cache in the CPU core?
With SRAM u either
A: Literally don't need L1 Cache
or
B: It mostly doesn't matter.
When I studied SRAM chips they seemed to go at 100Mhz. If you get your CPU up to 120Mhz then u would lose a bit of speed.
But maybe they have 120Mhz SRAM nowadays? (I doubt it but its possible, or maybe its extra expensive.)
Oops I think u still need cache for max speed because think of this:
Your CPU needs to process instructions
and read or write results to/from memory. That is 2 operations that need to happen simultaneously. So u would still need at least 1 cache, the instruction cache in your previous example. With an instruction cache it seems like u could achieve maximum speed using SRAM, even without datacache. Hafta think about it some more tho... there could be tricks.
The kewlness of SRAM is why every Natami CPU card comes with a big bank of SRAM on it. It was intended to eventually be configured as an L2 cache to feed the 110 Mhz 060 at super maximum speeds.