Electrical – Fast write/read on NVRAM with Windows

memorypciesramusb

I am trying to find a solution to create a 4MBit NVRAM module (FRAM or SRAM, doesn't matter) with a standard PC with Windows.

I want to store up to 1MB of data in less than 1 second with 50-100 write commands.

Unfortunately, the USB has a high latency and so I need up to 3-4ms for each write access.

So my question is: is there a faster way to send the data to a NVRAM module than USB? I was thinking with a PCIe interface, but probably I need some signed drivers to do it over PCIe. I can't find any modules with NVRAM on the web.

Best Answer

Depending on the USB chipset that you are using, there are a couple of considerations...

  1. From an OS userland point of view, Windows/Linux/OSX will impose a form of ... latency with respect unique commands. Depending on the loading of the OS this could be between 5-10ms if direct driver access is used & upto 20ms if a virtualComms is used.

  2. Latency timers. USB expects certain sized payloads & if this is not reached there is usually a "latency timer" that permits a timeout to force flushing the RX buffer. This is beneficial if short data packets are being sent.

So... depending on how you are sending the data via USB be it bulk read/write or individual read/write & the size of the payload, you may be running foul of one of these limitations.