Designing and Simulating Neuromorphic Circuits using PySpice and ngspice

Did you know that you can use Python to simulate neuromorphic circuits completely? I discovered this recently in my current job as a researcher in neuromorphic computing.

A few months ago, after doing some state-of-the-art reading regarding neuromorphic circuits, I planned to experiment with designing and simulating neuromorphic circuits. The easiest way to start was from where I already had some knowledge: Python.

I discovered that by using PySpice (a Python module that provides a Python interface to a SPICE circuit simulator) and ngspice (an open-source SPICE circuit simulator), I could design and simulate neuromorphic circuits. PySpice excels in providing comprehensive circuit definition through netlists (a SPICE netlist is a text-based representation of a circuit), robust simulation with Ngspice (and Xyce), and powerful output analysis using Numpy and Matplotlib, making it a very good tool for electrical and electronic circuit simulation.

More precisely, I was able to implement Spiking Neural Networks (SNNs) for pattern classification that can run inference using ex-situ training (using a custom app, which I will reveal later once the paper gets published) and also learn using in-situ training.

I will provide more details about the 3 research papers I am working on right now and where I’m the first author once they are accepted and published in the next few months.

 

 

Leave a Comment

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie mehr darüber, wie Ihre Kommentardaten verarbeitet werden .