The Xentara Timing Model

At the heart of Xentara lies the unique Real-Time Core and Scheduler. Taking roughly ten person years to fully develop and implement, these powerful components enable users an unprecedented level of fine control over the timing of processes in both monolithic and distributed systems.

stopwatch icon

One Clock to Rule Them All​

stopwatch icon

Xentara uses a highly advanced protocol to synchronize all clocks across distributed systems. These ensures that no matter which system a task is running on, it stays perfectly in sync with all others.

For the technology enthusiasts: the method is based on PTP (based on IEEE 1588 or TSN IEEE-802.1AS).

Timers and Triggers and Interrupts, Oh My

Triggers are the central activation element in Xentara. They can be set off either cyclically by a high precision timer or by configured events (I/O, Applications, Data Point changes, system interrupts, Xentara Functions).

These triggers activate processes:

  • I/O tasks
  • Controls
  • Microservices
  • Xentara functions
icon of stacked cubes with mixed colored sides

Mix and Match Seamlessly

icon of stacked cubes with mixed colored sides

While classical OT (Operations Technology) communication happens in cycles, requiring exact precision timing, IT communication (including most IoT / IIoT implementations) is almost always message or event based. Xentara resolves that dichotomy!

The Timing Model allows for free mixing of and interaction between real-time and non-real-time processes, allowing you to switch from fieldbus to machine learning to processing to movement controls to fieldbus (etc)…  without changing context.

Control with Unparalleled Flexibility

indicator pointing in various possible directions

The Timing Model has all the building blocks you need to create any kind of schedule you can imagine.

  • Organize processes in pipelines and tracks
  • Launch processes by events or timers
  • Run unlimited tracks sequentially or in parallel
  • Use checkpoints to ensure processes are finished before launching followups
  • Mix and match realtime and non-realtime processes
indicator pointing in various possible directions
icon of a high precision target

Enjoy Unmatched Precision

icon of a high precision target

The Xentara Timing Model supports cycle speeds of up to 10 kHz, allowing for cycle times as low as 100 microseconds. 

To demonstrate the small resource footprint of the software, a test setup on an Intel Atom processor using only one core with a load of 20% showed a maximum deviation of 4 microseconds on a 250 microsecond cycle (1.6%). Switching reactions achieved +-5 nanosecond accuracy.

Nerd Stuff: Different Ways to Configure Multicore Environments

Diagram showing how RT priority tasks are distributed by the Linux kernel over four available cores
click to enlarge

Realtime Priority

  • Tasks with real-time priority can not be interrupted
  • Tasks with real-time priority will be started on time on any available free core
  • If there is no free core at that moment, the lowest prioritized process will be interrupted
click to enlarge

Core Affinity

  • One core is preferred for kernel, kernel tasks, hard- and software interrupts
  • One core is reserved exclusively for timing critical real-time tasks
  • User space interrupts used for tasks with non-RT priority on any available core
click to enlarge

Bare Metal Tasks

  • Dedicated Xentara cores (with minimal CPU space for Cache Management) are no longer available to kernel
  • Bare metal tasks with only physical memory access
  • Nanosecond resolution
  • Full Xentara data- and timing model connectivity 

Configuring the Timing Model

The Timing Model is very versatile, making it look complex, maybe even intimidating. The Xentara Workbench allows easy configuration of all of its elements in a graphical environment.

Skip to content