Fixed-point LIF ProcModel not bit-accurate to Loihi after spike
Objective of issue: The "bit-accurate" ProcessModel of the LIF Process is not actually bit-accurate with respect to the hardware implementation on Loihi. After a spike, the voltage is reset to 0, whereas on the hardware it is reset to 128.
Lava version:
- [x] 0.4.0 (current version)
I'm submitting a ...
- [x] bug report
- [ ] feature request
- [ ] documentation request
Current behavior:
- Voltage is reset to 0 after spike.
Expected behavior:
- Voltage is reset to 128 after spike.
Steps to reproduce:
Related code:
insert short code snippets here
Other information:
insert the output from lava debug here
I believe that this is just a reporting difference. The internal (hidden) states should be the same. You can confirm this by looking at when subsequent spikes occur.
The state of the voltage on Loihi is in fact 128 after a spike. As you are correctly pointing out, that initial voltage does not have an impact on its later evolution.
I think this behavior should still be reflected in the Python ProcessModel to enable easy comparison between results from hardware and simulation.