Overview

This updated version of SciCompiler includes the SciSDK library for interfacing with your hardware.

SciSDK is a modern library compatible with most popular programming languages, designed to act as a middleware between low-level board SDKs and user software.

Migration to SciSDK

Soon, SciCompiler will stop generating custom software support for specific designs and move towards the use of SciSDK.

Currently, for board X5560 and SciSDK you can find the legacy generated code in the library/legacy folder, but we discourage its use in new projects.

The DT5550X, X2495 families are not yet supported in SciSDK; they continue to use the legacy generated code.

How SciSDK Works

SciSDK code should not be generated or compiled each time the SciCompiler project is modified. It uses the RegisterFile.json (found in the project/library folder) to detect the IPs in your design and provides easy direct access to each one.

The SciSDK library is completely independent of the board you generated your project for and can manage multiple boards of different models simultaneously.

RegisterFile.json

RegisterFile.json is a file generated in the project library folder that describes the IP cores included in your design.

This file is used by:

  • SciSDK
  • Resource Explorer
  • Other SciCompatible software

The RegisterFile.json points the driver to the correct elements inside your design.

Documentation

Complete SciSDK documentation is available at:

https://nuclearinstruments.github.io/SCISDK/

Download

Windows

Pre-installed in C:\OpenHardware\SciSDK on Windows.

Latest version can be downloaded from:

https://github.com/NuclearInstruments/SCISDK/releases

Linux

At present, the Linux library must be downloaded as source code and compiled.

The source code is available on:

https://github.com/NuclearInstruments/SCISDK

Note: You must also compile and install all the low-level SDKs for all instruments you want to connect to. SciSDK is only a middleware and needs the SDK to interface with the hardware.

Soon, a repository for Ubuntu, Centos, and Scientific Linux will be available with pre-compiled libraries.

Python Support

Once the library is installed on your system (Windows with the installer, Linux: ./configure && make && make install) you can install the library from the official PyPI repository:

bash
  pip install scisdk
  

Examples

Several examples are already installed in C:\OpenHardware\SciSDK\examples for Windows.

For Linux, examples are available at:

https://github.com/NuclearInstruments/SCISDK/tree/master/examples