0
\$\begingroup\$

ReRAM-based IMC techniques are promising for ML inference. Many research papers propose ReRAM IMC techniques for accelerating NN operations. However, they do not discuss the system integration of the ReRAM platform.

In contrast, consider hardware acceleration using conventional platforms, e.g., FPGA. Applications can run on an ordinary CPU and use the FPGA to speed up specific kernels. Data exchange happens using PCIe, ethernet, or serial interfaces.

If ReRAM-based IMC has to be used in practice applications, how would software applications interact with the ReRAM-based IMC accelerator? For example, a software application might have an image and want to know if it is a cat or a dog, using the ReRAM-based NN processor.

\$\endgroup\$
1
  • \$\begingroup\$ AFAIK today's NPUs have additional "raw" periphery that send out the data to the A/D converters to interface in/out w/ their analog IMC unit. You can do this easily with any FPGA or even Arduino to say. In the future perhaps it wouldn't be hard to imagine CPU dedicated instructions to call the NPU, or SW drivers pretty much like you do today to dispatch to GPU. \$\endgroup\$ Commented Aug 6, 2024 at 14:56

2 Answers 2

0
\$\begingroup\$

Can't speak for ReRam specifically, but for other hardware systems that carry out the computations on the hardware level, the electronic interfaces are usually a large vector of analog signals and the outputs are also large vectors of analog signals.

If your target system is a digital computer software, then you will have to make sure, that this software writes values to the DACs and reads backs values from the ADCs.

Of course it is possible that the neuronal hardware is trained such, that it will accept a vector of simple HI/LO digital logic level signals instead and will output at a digital logic level. In that case the software task will be writing and reading these digital bits instead.

\$\endgroup\$
0
\$\begingroup\$

If ReRAM-based IMC has to be used in practice applications, how would software applications interact with the ReRAM-based IMC accelerator?

ReRAM can be used as a memristor or setup as a phase change material used in a binary configuration. There are some research applications seeking to replace NOR ram with ReRAM cells in a similar configuration. In these applications you would read a low or a high voltage with a comparator.

If used as a memristor, you would need some kind of ADC at the end of the cell (or chain of cells) to measure the exact voltage. In these types of applications, you would probably use the cell to store the memory of the neural network, which can have a range of values.

Neural networks are trained on data to give a certain output based on certain inputs. The values of the neural network don't mean anything, it is a black box (although there is currently research on trying to understand how neural networks store information). So the software would be the same as training any other neural network.

\$\endgroup\$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.