How to Synchronize Multiple Neural Signal Processors

How to Synchronize Multiple Neural Signal Processors

Introduction

Neural Signal Processors can be synchronized to achieve higher channel counts on the combined system. 

Hardware Requirements

Neural Signal Processors with PN 4176 were not all synchronization capable. To check whether your unit is capable, look for two DB9 ports on the rear, right side of the unit. If your unit is sync capable, the synchronization port is the one furthest to the right side/outside of the case.
Sync is only possible when using File Specification 2.3 or later.
To get started, all you need is two (or more) sync capable Neural Signal Processors running the same firmware (6.05 and above) and a Blackrock sync cable. Note that the cable should be provided by Blackrock as a standard null modem cable or serial cable will not work. To purchase a cable contact Blackrock Sales at sales@blackrockneuro.com for more information.

The cable pin-out below is provided for your reference only. We provide no guarantee or assistance in building your own cable.
DB9 Master
DB9 Slave
2
3
3
2
4
9
5
5

Synchronization Specifics

When considering synchronization between two sampling devices, there are two characteristics for synchronization: Clock Sync (Avoiding Drift) and Timestamp Sync (Associating Timestamps between files). When one synchronizes two neural signal processors, both methods of synchronization are in effect. When synchronizing three or more devices, only clock synchronization is in effect. Each of these are discussed in more detail below.

Clock Synchronization

Any sampling system requires a hardware oscillator to generate the timed voltage that serves as the clock of the system. In the case of the NSP, this clock generates a master signal that is used to create the 30,000 Hz oscillator that drives the sampling rate of the device. Every hardware oscillator has very slight deviations that cause it to run slightly faster or slightly slower than its intended speed; no oscillator is perfect. This is what causes some clocks to "run fast" or "run slow". 

If the hardware oscillators of the devices were not synchronized, then you can end up with something known as clock drift. Much like your watch and the clock in your car moving out of sync, this is possible with the Neural Signal Processors. Imagine, for example, that one NSP sampled at 30,000 Hz and one sampled at 30,000.1 Hz, now every 10 seconds, the second NSP will have an extra sample in it. Over a long experiment, this could become troublesome as you will not be able to easily compare sample to sample between the two data streams. 

The Blackrock Sync cable takes the oscillator from one Neural Signal Processor and uses it to override the oscillator of the other so that clock drift is avoided and clock synchronization is guaranteed.

Timestamp Synchronization

Another method of synchronization that allows one to compare data streams from one system to the other is identical timestamp assignment. Supposing that you had handled the clock drift above, but did not synchronize timestamps, you could end up with a situation where an event that happened at the same time in the real world would show up as a different timestamp on each NSP. 

Given that the clocks of the devices would be fixed, then this is not such a big problem since the difference between those event timestamps would be fixed. This means that you could adjust the timestamp values in one data file to properly allow yourself to refer between the data files seamlessly. That said, this is an inconvenience that can be avoided. To avoid this, a pair of synchronized NSPs will restart each others timestamp clocks and then start their recording. This allows the timestamps to also be synced and allows you to refer from events in one data file to events in the other data file without issue. 

This timestamp synchronization does not occur when syncing three or more NSPs together. This is due to the communication being based on two-directional serial communication, which can only occur between two devices. To overcome this, one simple needs to create a common event that can be referred to on each device so that the difference in timestamps can be calculated for the analysis session. This is discussed below.

Installation

Setup is quite simple. Connect each NSP's sync port on the rear of the device using the Blackrock Sync Cable. Turn on all devices and open each instance of Central. If using just two Neural Signal Processors, then the displays should say 'Synchronized', but if using three or more devices, this status will not be displayed. 

It is common to run all instances of Central on the same PC when using multiple Neural Signal Processors; find our knowledgebase article on this to find instructions on how to do it.

It is also common to run a common signal into each Neural Signal Processor as a fail safe. This can be done by connecting a BNC cable from the Digital Output 1 connector of one NSP and connect it to an analog input of every NSP (including itself). Then, go to File Storage -> View -> Options and select the 'Enable Sync' box. Finally, make sure that each NSP is recording this analog input at 30 ksp/s. This will send a rarely repeating squire wave pulse train into each NSP so that they can be checked against the common signal.

Interpreting Synchronized Data

When using two Neural Signal Processors, it is important to note that their method of synchronizing timestamps will create a small segment in the continuous data files before recording actually begins. This is the bit that is recorded before they reset their clocks to align their timestamps. This first segment of data can, effectively, be discarded. It is very short, so generally doesn't present an issue. From there, values in each data file can be referred to between each other directly. 

In the case of using three or more Neural Signal Processors, no reset will occur, but one must use the common signal between the systems to align them. This usually occurs by establishing one file as the golden standard (usually the NSP that started recording last) and then trimming continuous data points from the other files so that their data streams represent the same starting time and subtracting an equivalent number of data points from the event timestamps so that they can be referred to between files. For help with this, feel free to contact support@blackrockneuro.com 
    • Related Articles

    • Neural Signal Processor Input Maximum Input Characteristics

      Defining MaximumsThe maximum input characteristics information provided below is directly extracted from the Maximum Ratings which is normally mentioned inside the technical datasheets associated with the installed electronics behind the Analog and ...
    • Signal Processing Flow Diagram

      The attached document shows how various signal processing steps and Central signal processing features are applied to the neural data stream from Blackrock analog and digital (CerePlex) systems.
    • Multiple Instances of Central on the Same Host PC

      NOTICE: This feature has been removed as of Central version 7.5.0. 7.5.0 and later supports running two NSPs in one instance of Central, but cannot run 3 or more in one instance. If you prefer having separate instances for each NSP connected to your ...
    • NSP Gets Stuck in Initializing Step 2

      There is a known bug with NSPs with PNs 7530, 9650, and 10411 where their LCD screen shows "Initializing Step 2" and it gets stuck. This is a known issue associated with the NSPIF board (i.e. the PCI board that the fiber optic cable attaches to) that ...
    • Broadcasting Data from the CerePlex Direct to Multiple Computers

      Introduction Unlike the Neural Signal Processor, the CerePlex Direct can normally only interact with one computer at a time through its USB connection. This article covers a method that allows data from a CerePlex Direct to be sent to multiple ...