03-20-2021, 03:08 AM
(03-20-2021, 12:26 AM)barray Wrote: Multiply that by four for quad SPI channels, so 12MB/s (or 96Mb/s) - still not great, but better. And yeah it's not ideal to share these with the USB interface too. We're also going to struggle to go much faster anyway if we're going through a header interface due to capacitance and interference.
Unfortunately, that multiplication doesn't apply. According to the feature list in the BL602 datasheet, the 40 Mbit/s limit applies to the general-purpose SPI interface that the SPI-to-USB bridge would be connected to. Thus, whatever happens inside the storage device cannot leave it faster than about 4 MB/s, which is slow. The datasheet actually provides no information about the maximum speed of the quad-SPI flash interface, but the general-purpose SPI already presents a bottleneck.
(03-20-2021, 12:26 AM)barray Wrote: I never thought it would be the final controller, it would be much better to have something that supports USB without need for an interface chip - and offers more SPI channels. The entire point of using the BL602 is that we could concentrate on building the flash storage hat, then swap out the base-board later. It allows for incremental development. We can move to a different RISC-V chip at a later date. I think there is already tonnes of risk in this project, so starting with something known is much better.
Anyway, I suspect we will have our hands full with just getting the hat off the ground and working correctly - there's a lot of unknowns, such as interfacing with the flash chips and speaking USB, as well as RAID and storage integrity reporting. More than enough stuff to keep us busy.
I agree on the risk, with all that requiring a lot of work, and with many things still unknown. The BL602 "baseboard" might be very well used as a stepping stone, with a clear intention to upgrade to a better "baseboard" down the road. However, my primary concern is that a lot of work would be poured into creating a storage device that would hardly be much more than a proof of concept, so it might be good to plot a clear path for the "baseboard" upgrade from the beginning.
Please, don't get me wrong. Crafting an open storage device that's built using open-source tools and provides about 4 MB/s through its USB interface is no small feat and I'd be happy to see it ticking. However, I'm pretty sure that not many other people would share the excitement about those 4 MB/s.