neuroscientists.
The Low Entropy Model Specification
(LEMS) (Gleeson et al., 2011) is a language
used to describe neuron models and neural networks
functionally. LEMS is a declarative language which is
amenable to use by persons not trained in electronic
engineering, computer science or information
technology. A large library of complex and diverse
LEMS neuron models exists and forms the basis of
the NeuroML 2 neural network description language.
LEMS descriptions are often exported to various
software simulators for optimised execution with the
NEURON and BRIAN simulators already supported.
VHDL is also a declarative language which is
commonly used to describe synthesisable digital
logic. It is possible to manually describe any
time step simulated neuron model using VHDL.
However, the hardware design process, VHDL
capture and typical tool flow is arguably more difficult
than the development of software neuron models
or the mathematical descriptions underlying neural
computations through LEMS. The provision of an
appropriate high level neuron modelling language
and automated generation of synthesisable HDL and
automated FPGA implementation and interaction can
offer a viable route for neuroscientists to achieve
hardware neuron simulations.
The LEMS2HDL toolsuite automatically converts
flexible high level LEMS functional descriptions
of neuron models to synthesizable VHDL designs.
The paper presents simulation results of three
LEMS models and the LEMS2HDL generated VHDL
models. Results demonstrate agreement between
LEMS and VHDL simulations within the limits of
fixed point logic.
The three LEMS models chosen for conversion
are the iafTauCell, the iafTauRefCell and
the iafRefCell with two synapses of type
expOneSynapse. These models were chosen as
they are standard NeuroML2 models and express
many standard neuron model features. These models
also use a wide range of behavioural descriptions
representing the majority of LEMS algorithms. All
three models are leaky integrate and fire neurons
with both iafTauCell and iafTauRefCell returning to
their leak reversal potential with a time course tau.
In addition to this decay the iafTauRefCell describes
a refractory period after a spike where membrane
potential integration is halted. In this paper the
iafTauCell and the iafTauRefCell are used without
synaptic inputs, instead the leak reversal potential
is set above the threshold potential. The iafRefCell
is a leaky integrate and fire cell with membrane
capacitance, a leakConductance, a leakReversal and
a refractory period. The iafRefCell is converted here
together with two synapses of type expOneSynapse.
The expOneSynapse is an ohmic synapse model
whose conductance rises instantaneously on receiving
a spike event, and which decays exponentially to zero
with time course tau. The example LEMS models
and the LEMS2HDL program are available as part
of the org.neuroml.neuroml2 and org.neuroml.export
libraries at https://github.com/NeuroML/.
The vicilogic (Morgan et al., 2014) user design
wrapper automates the integration of the LEMS2HDL
exported HDL neuron model with the vicilogic core
hardware and FPGA device pinout, and creates the
FPGA configuration bitstream file. vicilogic provides
a local and remote FPGA configuration, ethernet-
based neuron model parameter configuration and
signal readback. Additionally, a UI Console toolsuite
enables real-time monitoring and visualisation of
internal neuron behaviour.
The structure of the remainder of the paper is
as follows: Section 2 outlines the LEMS2HDL
conversion process and VHDL fixed point modelling
considerations. Section 3 compares the simulation
accuracy of three example LEMS software and FPGA
hardware models, and presents FPGA resource usage
for each model. Section 4 concludes the paper and
highlights future work.
2 METHODS
This section outlines the LEMS to HDL conversion
process and the LEMS features currently supported
by the LEMS2HDL application. Considerations for
the support of synthesisable fixed point logic and
neural computation model time derivative solvers in
VHDL are also described.
2.1 LEMS to VHDL Conversion
The LEMS2HDL conversion process aims to
map all features of the LEMS language to
synthesisable VHDL descriptions. Many LEMS
features are converted directly through the use
of VHDL templates described in the Apache
Velocity (Foundation, 2007) templating language.
While LEMS is used to specify neurons, synapses,
connections and simulation parameters, the
LEMS2HDL process converts only the LEMS neuron
and synapse models to VHDL. The vicilogic server
and FPGA IP core provide hardware simulation
control, neuron synaptic input stimulus application
and readback of all neuron model internal signals.
NEUROTECHNIX2014-InternationalCongressonNeurotechnology,ElectronicsandInformatics
178