Developer Tools

hardware-software codesign made easy

>>Developer Tools
Developer Tools 2017-10-25T14:52:29+00:00

Modern business as well as science is complex and challenging. The necessity for teamwork is obvious and we would like to embrace a cooperative development-approach – no matter if you are a customer, cooperation partner or simply interested in next generation computing architectures.

Developers of all kinds – from software to computing-hardware and instruments or even new types of scientific approaches and services – are important to SciEngines. We would like to support creative and innovative approaches that are compatible with our reconfigurable high-performance computers. Therefore, you can find a variety of resources in this section, that may be able to provide assistance. If not, please do not hesitate to contact us.

SciEngines Machine Monitor (se_mon)

The SciEngines monitoring tool se_mon helps you to test your HDL designs on the fly. It gives you the powerful possibility to execute all API functions as shell commands. Without the need to write any special host software you are able to test your FPGA code for proper functioning. Any API functionality can be tested simply via a command-line interface. These commands include, of course, the configuration of FPGAs with generated bitfiles, writing arbitrary data in binary, hexadecimal, decimal or ASCII representation to FPGAs, reading back results generated by FPGAs and displaying the received values in all the above representations as well. You may also create test cases when writing often used commands to a batch file, which helps save lots of time. se_mon also includes a history of previously invoked commands just as any shell would.

Please find additional documentation for download below.

SciEngines Machine Monitor (se_mon)
Download se_mon Application User Guide

SciEngines Cluster Management Tool (se_cluster)

SciEngines Cluster Management Tool (se_cluster)

The primary task of se_cluster is to enable easy scalability also for large installations. It allows the administration and use of a cluster of SciEngines RIVYERA computers from a central node without additional complexity. While the term FPGA computer refers to a single RIVYERA computer (multiple FPGAs – usually 16 to 128 – interconnected inside one chassis), the term RIVYERA cluster refers to multiple RIVYERA computers interconnected by network with FPGA-counts going into the thousands or even higher.
The SciEngines cluster management utility, se_cluster allows the configuring of multiple RIVYERA computers to a RIVYERA cluster. It makes these RIVYERA computers available for applications from a single point of use and as easily manageable as a single machine would be.

Please find additional documentation for download below.

Download se_cluster Application User Guide

SciEngines RIVYERA Management Tool (se_dashboard)

se_dashboard is a versatile centralized management tool. The most common fields of application for this valuable tool are:

  • Configure your RIVYERA system by customizing driver settings as well as output verbosity, debug settings and path configurations for both local user and global system level.

  • Access the powerful machine monitor application, se_mon through the graphical interface of se_dashboard and profit from simplified file interaction and command selection.

  • Generate new projects either based on built-in example projects or clean empty projects. Regardless of which approach you choose, the Project Compass plugin will allow you to set up both hostside and FPGAside projects, at the same time with just a few clicks.

Please find the complete information for download below.

SciEngines RIVYERA Management Tool (se_dashboard)
Download se_dashboard Application User Guide

Code Examples


PingPong is a very simple communication example to get in touch with SciEngines RIVYERA platform. It follows the basic functionality of the commonly known. In general, ping is executed on one system, triggers a communication partner and waits for its reply.
To stress the asynchronity of the system, which is an important factor in algorithmic design, the autonomous write feature of the Machine API is used.

Please find a full description for download below:

Download PingPong Example Guide


ActiveRead is a simple communication example to get experience with the active read mechanism of the API. The active read is used for requesting a number of words to an FPGA, waiting for the reply and reading it. In this example, the FPGA may be asked to write an arbitrary number of words to the requester.
It might be a good idea to have a look at the PingPong example first, before trying to understand this example.

Download ActiveRead Example Guide