Keywords

1 Introduction

A digital spike map (DSmap) is a simple digital dynamical system defined on a set of points [1,2,3,4]. The DSmap is regarded as a digital version of analog one-dimensional maps such as the logistic map [5] and is relevant to several digital systems such as cellular automata [6]. The DSmap can describe various periodic/transient spike-trains. Spike-trains have been used in many engineering applications including image processing [7], spike-based communication [8, 9], and spike-based time series approximation [10]. In such applications, synchronization of multiple spike-trains plays a key role. Implementation/realization of desired spike-trains and their synchronization phenomena are important not only in fundamental study of nonlinear dynamics but also in engineering applications.

This paper studies implementation of the DSmaps in the digital spiking neurons (DSNs [9,10,11]). First, we show that the DSmap is represented by a characteristic vector and can describe various spike-trains. Based on the DSmap, we define super-stable periodic spike-train such that all the initial points fall rapidly into the spike-train. Such spike-trains are well suited for robust operation of engineering systems such as spike-based encoders [9]. Second, we consider the DSNs inspired by integrate-and-fire neuron models [12,13,14]. The DSN is constructed by two shift registers [15] connected by a wiring [10]. Depending on the wiring pattern and initial condition, the DSN can generate various periodic spike-trains. The dynamics of DSN is represented by a wiring vector. We give a simple formula that clarifies relation between wiring vectors of DSNs and characteristic vectors of DSmaps. Using the formula, desired DSmaps can be implemented in the DSNs. As a typical phenomenon, a super-stable periodic spike-train is demonstrated in Verilog simulation. Third, we present a simple ring-coupled system of the DSNs based on a digital delayed connection. As a typical phenomenon, multi-phase synchronization of periodic spike-trains is demonstrated in Verilog simulation.

The Verilog simulation and ring-coupled system will be developed into FPGA hardware implementation of large-scale networks of DSNs. It should be noted that the implementation of DSmaps in the DSNs and the ring-coupled system have not discussed in previous publications [1,2,3,4, 10, 11].

Fig. 1.
figure 1

Digital spike-train and digital spike map (\(N=9\)). (a) Periodic spike-train with period 3N. (b) DSmap of \(d=(6, 8, 1, 5, 2, 7, 4, 5, 2)\) and complete-stable periodic orbit with period 3. (c) DSmap of \(d=(8, 8, 8, 2, 2, 2, 5, 5, 5)\) and super-stable periodic orbit with period 3.

2 Digital Spike Maps and Periodic Spike-Trains

Figure 1(a) shows a digital spike-train where N denotes basic period and \(\theta _n\) denotes the n-th spike-phase. Let such spike-trains be described by the DSmap

$$\begin{aligned} \theta _{n+1} = F(\theta _n), \ \theta _n \in \{1, \cdots , N \} \equiv L_N \end{aligned}$$
(1)

As an initial spike-phase \(\theta _1 \in [0, N)\) is given, the DSmap outputs a sequence of spike-phases \(\{ \theta _n \}\). The sequence gives a spike-train

$$\begin{aligned} Y(\tau ) = \left\{ \begin{array}{ll} 1 &{} \text{ for } \tau = \tau _n\\ 0 &{} \text{ for } \tau \ne \tau _n \end{array} \right. \ \ \ \tau _n = \theta _n + N(n-1). \end{aligned}$$
(2)

where \(\tau _n\) denote the n-th spike-position. The n-th spike appears in the n-th interval: \(\tau _n \in [(n-1)N, nN)\). The DSmap is represented by the characteristic vector

$$\begin{aligned} \varvec{d} \equiv (d_1, \cdots , d_N), \ \ F(i) = d_i \in \{ 1, \cdots , N \} \end{aligned}$$
(3)

Since the domain \(L_N\) of the DSmap consists of a finite number of points, the steady state must be a periodic spike-rain. Here we give basic definitions.

Definition 1

A point \(p \in L_N\) is said to be a periodic point with period k if \(p = F^k(p)\) and F(p) to \(f^k(p)\) are all different where \(F^k\) is the k-fold composition of F. A sequence of the periodic points \(\{ F(p), \cdots , F^k(p) \}\) is said to be a periodic orbit. A periodic orbit with period k is equivalent to a periodic spike-train with period kN. For example, the periodic orbit with period 3 in Fig. 1 is equivalent to periodic spike-train with period \(3 \times 9\).

Definition 2

A point \(q \in L_N\) is said to be an eventually periodic point with step k if the q is not a periodic point but falls into some periodic point p after k steps: \(F^k(q) = p\). The eventually periodic points represent transient phenomena.

Definition 3

A periodic orbit (and corresponding periodic spike-train) is said to be complete-stable if all the eventually periodic points fall into the periodic orbit. A periodic orbit (and corresponding periodic spike-train) is said to be a super-stable if all the eventually periodic points fall into the periodic orbit after 1 step.

Figure 1(c) shows a super-stable periodic orbit. All the initial points fall rapidly into the periodic orbit (and corresponding periodic spike-train). Super-stable spike-trains are well suited for robust operation of engineering systems such as spike-based encoders in multiplex communication [9].

3 Digital Spiking Neurons

In order to implement the DSmap, we introduce the DSN. Applying a wiring between two shift registers, a DSN is constructed as shown in Fig. 2(a) The left and right shift resistors are referred to as P-cells and X-cells, respectively. The P-cells consist of \(N_p\) elements and operate as a pacemaker. Only one element can be 1 (with period \(N_p\)) and all the other elements are 0:

$$\begin{aligned} P(\tau ) = (P_1(\tau ), \cdots , P_{N_p}(\tau )), \ P_i = 1 \text{ iff } \tau \text{ mod } N_p = i, \ i \in \{ 1, 2, \cdots , N_p \} \end{aligned}$$
(4)

where \(\tau \) denotes discrete time and is represented by a positive integer.

The X-cells consist of \(N_x\) elements and construct a state variable vector corresponding to the membrane potential in analog neuron models. Only one element can be 1 and all the other elements are 0.

$$\begin{aligned} X(\tau ) = (X_1(\tau ), \cdots , X_{N_x}(\tau )) \end{aligned}$$
(5)

The P- and X-cells are connected by a wiring represented by the wiring vector

$$\begin{aligned} \varvec{a} = ( a_1, \cdots , a_{N_p} ), \ a_i = j \text{ iff } P_i \text{ is } \text{ connected } \text{ to } X_j \end{aligned}$$
(6)

For example, the DSN in Fig. 2 is represented by the wiring vector

$$ \varvec{a}=(4, 3, 11, 8, 12, 8, 12, 12, 16) $$

Each branch of the wiring activates either element of the X-cells. The activated elements construct a base signal where only one element can be 1 and all the other elements are 0:

$$\begin{aligned} B(\tau ) = (B_1(\tau ), \cdots , B_{N_x}(\tau )), \ B_j(\tau ) = 1 \text{ iff } P_i(\tau )=1 \text{ and } a_i = j \end{aligned}$$
(7)

where \(j \in \{1, 2, \cdots , N_x-1 \}\). In the DSN, X-cells are initialized such that \(X_k(1)=1\) at \(\tau =1\) for some k. For \(\tau \ge 2\), the dynamics is defined as the following:

  • If \(X_j(\tau )=1\) then \(X_{j+1}(\tau +1)=1\) where \(j \in \{ 1, 2, \cdots , N_x-1 \}\).

  • If \(X_{N_x}(\tau )=1\) and \(B_j(\tau )=1\) then \(Y(\tau )=1\) and \(X_j(\tau +1)=1\) where \(j \in \{ 1, 2, \cdots , N_x-1 \}\).

As illustrated in Fig. 2, the DSN generates a spike-train:

$$\begin{aligned} Y(\tau ) = \left\{ \begin{array}{ll} 1 &{} \text{ if } X_{N_x}(\tau ) = 1\\ 0 &{} \text{ otherwise } \end{array}\right. \end{aligned}$$
(8)

Since the n-th spike determines the \((n+1)\)-th spike, a DSmap can be defined:

$$\begin{aligned} \theta _{n+1} = F(\theta _n), \ \theta _n \in \{1, 2, \cdots N_p \} \end{aligned}$$
(9)

where \(\theta _n\) is the n-th spike phase, \(\tau _n\) is the n-th spike-position, and \(N_p\) is the basic period. For simplicity, we set

$$\begin{aligned} N_x = 2N_p-1, \ 0 \le a_i - i \le N_p, \ i \in \{ 1, 2, \cdots , N_p \} \end{aligned}$$
(10)

In this case, one spike appears once per one basic period \(N_p\) and the n-th spike appears in the n-th interval \(\tau _n \in \{ (n-1)N_p, \cdots , nN_p \}\).

Here we show an important result. If a characteristic vector \(\varvec{d} = (d_1, \cdots , d_{N_p} )\) of a DSmap is given, the corresponding wiring vector of a DSN is given by

$$\begin{aligned} \varvec{a} = (a_1, \cdots , a_{N_p} ), \ a_i = N_p - (d_i - i ), \ i \in \{ 1, \cdots , N_p \} \end{aligned}$$
(11)

Using Eq. (11), any DSmap can be implemented in the DSN. For example, the DSmap in Fig. 1(c) has super-stable periodic orbit and is implemented in the DSN of the wiring vector

$$ \varvec{a} = (2, 3, 4, 11, 12, 13, 11, 12, 13) \leftarrow \varvec{d}=(8, 8, 8, 2, 2, 2, 5, 5, 5) $$

That is, the super-stable periodic orbit of the DSmap in Fig. 1(c) is realized by the super-stable spike-train of DSN in Fig. 3.

Fig. 2.
figure 2

Digital spiking neuron for \(N_p=9\) and \(N_x=17\). The wiring vector \(a=(4, 3, 11, 8, 12, 8, 12, 12, 16)\). (a) P-cells, X-cells, and wiring. (b) Complete-stable periodic spike-train with period \(3N_p\). It corresponds to complete-stable periodic orbit with period 3 of DSmap in Fig. 1(b)

Fig. 3.
figure 3

Digital spiking neuron for \(N_p=9\) and \(N_x=17\). Wiring vector \(a=(2, 3, 4, 11, 12, 13, 11, 12, 13)\). (a) P-cells, X-cells, and wiring. (b) Super-stable periodic spike-train with period \(3N_p\). It corresponds to super-stable periodic orbit with period 3 of DSmap in Fig. 1(c). (c) Verilog simulation of super-stable periodic spike-train with period \(3N_p\).

4 Ring-Coupled Digital Spiking Neurons and Multi-phase Synchronization

Here we present a ring-coupled system of DSNs. First, we prepare M pieces of DSNs with a common base signal as illustrated in Fig. 4:

$$\begin{aligned} X^1 \equiv (X^1_1, \cdots , X^1_{N_x}), \cdots , X^M \equiv (X^M_1, \cdots , X^M_{N_x}) \end{aligned}$$
(12)

The ring-coupled-DSN is defined by the following two kinds of firing.

  1. 1.

    Self-firing. If \(X^i_j(\tau )=1\) then \(X^i_{j+1}(\tau +1)=1\) for \(j \in \{ 1, \cdots , N_x-1 \}\) and \(i \in \{1, \cdots , M \}\). If \(X^i_{N_x}(\tau )=1\) and \(B_j(\tau )=1\) then \(Y^i(\tau )=1\) and \(X^i_j(\tau +1)=1\). The common base signal is determined by Eq. (7).

  2. 2.

    Propagate-firing. If \(X^i_{N_x}(\tau )=1\) and \(X^{i+1}_k(\tau )=1\) for \(k \in \{1, \cdots , N_x - N_p \}\) then \(X^{i+1}_{N_x - N_p + 1}(\tau +1)=1\) where \(i \in \{1, \cdots , M \}\) and \((X^{M+1} \equiv X^1)\).

For example, in the case \(M=3\), \(N_x=17\), and \(N_p=9\), the propagate-coupling is described by

If \(X^1_{17}(\tau )=1\) and \(X^2_k(\tau )=1\) for \(k < 9\) then \(X^2_9(\tau +1)=1\).

If \(X^2_{17}(\tau )=1\) and \(X^3_k(\tau )=1\) for \(k < 9\) then \(X^3_9(\tau +1)=1\).

If \(X^3_{17}(\tau )=1\) and \(X^1_k(\tau )=1\) for \(k < 9\) then \(X^1_9(\tau +1)=1\).

The firings are illustrated in Fig. 4. In the ring-coupled-DSN, the i-th DSN outputs a spike-train

$$\begin{aligned} Y^i(\tau ) = \left\{ \begin{array}{ll} 1 &{} \text{ if } X^i_{N_x}(\tau ) = 1\\ 0 &{} \text{ otherwise } \end{array}\right. \ \ \ i \in \{1, \cdots , M \} \end{aligned}$$
(13)

We have constructed ring-coupled DSNs for \(M=3\), \(N_x=17\), and \(N_p=9\) as shown in Fig. 4. When each of the 3 DSNs outputs a periodic spike-train with period \(3N_p\) before the ring-coupling, the ring-coupled DSN can exhibit 3-phase synchronization such that

$$\begin{aligned} \begin{array}{lll} Y^1(\tau ) = Y^3(\tau - N_p), &{} Y^2(\tau ) = Y^1(\tau - N_p), &{} Y^3(\tau ) = Y^2(\tau - N_p)\\ X^1(\tau ) = X^3(\tau - N_p), &{} X^2(\tau ) = X^1(\tau - N_p), &{} X^3(\tau ) = X^2(\tau - N_p)\\ \end{array} \end{aligned}$$
(14)

where \(X^i(\tau - 3N_p) = X^i(\tau )\) for \(i \in \{1, 2, 3\}\). Performing Verilog simulation, we have confirmed 3-phase synchronization phenomenon of periodic spike-trains with period \(3N_p\) as shown in Fig. 5. The periodic spike-train is super-stable before the coupling as shown in Fig. 3 and the 3-phase synchronization is complete-stable. This ring-coupled-DSN and its Verilog simulations will be developed into FPGA hardware implementation of large-scale networks of DSNs and its applications.

Fig. 4.
figure 4

Ring-coupled digital spiking neurons and M-phase synchronization for \(M=3\).

Fig. 5.
figure 5

M-phase synchronization with period \(3N_p\) for \(M=3\), \(N_p=9\) and \(N_x=17\) in Verilog simulation. Before the coupling, each DSN outputs super-stable periodic spike-train with period \(3 \times 9\) in Fig. 3. Parameters of the DSN are as in Fig. 3.

5 Conclusions

Realization of desired periodic spike-trains and multi-phase synchronization of them are studied in this paper. As a DSmap of desired spike-train dynamics is given, a suitable wiring vector is determined and the DSmap is implemented in the DSN. A simple ring-coupled system of DSNs is presented and multi-phase synchronization of periodic spike-trains is demonstrated.

Future problems include classification of various periodic spike-trains, stability analysis of the periodic spike-rains and synchronization phenomena, consideration of various coupling methods of DSNs, and hardware implementation for engineering applications.