Kithara Real-Time Communication

Kithara RealTime Suite is a modular real-time extension for Windows operating systems. Real-time communication means that messages are transmitted from one component to another with a set maximum amount of time.

Real-time Ethernet—RealTime Sockets

Ethernet-based communication increasingly dominates industrial applications. However, the basic functions of the operating systems are not able to keep up with Ethernet-based communication when it comes to industrial standards. Thus, real-time mechanisms are required. By utilizing a real-time Ethernet environment, it is possible to solve industrial communication tasks via Ethernet-based protocols with hard real-time capabilities (including IP and the common TCP and UDP protocols).

Real-time communication: Intel-Pro/1000 Quad Adapter

The Network Module, as part of Kithara RealTime Suite, includes the necessary mechanisms for real-time communication via raw Ethernet as well as TCP and UDP. The real-time communication takes place via fast Ethernet boards as well as network interfaces with gigabit controllers by Intel and RealTek, so that fast measurement value logging or image processing is possible.

In order to achieve real-time capabilities, the network controllers are controlled directly. This way, the entire bandwidth of the connection is available and an immediate reaction to received data packets takes place in real-time. In contrast to common processes in operating systems during such implementations, copy operations are generally avoided. For data transfer as well as data reception the same memory as the network controller is used. This allows for the highest possible transfer rate at the shortest reaction time.

Functions for CRS calculation and Byteorder conversion are also provided. As usual, with the Kithara system the Socket application can be compiled by developers within the framework of the application in C/C++ or Delphi. Based on a DLL the real-time application can be embedded in a C#.NET application as well.

With this, the software goes far beyond the possibilities of what is achievable with a regular Windows OS. The Windows OS lacks real-time capabilities and therefore is not suitable for industrial solutions, as it does not meet the needs of the industry.


Real-time communication with the modular system of Kithara RealTime Suite consists of the following components:

Network Module

Native real-time driver for fast Ethernet communication

  • Common
  • Features
  • Supported Hardware

The Network Module provides native real-time Ethernet drivers for the supported network controller, for communication via raw ethernet as well as UDP and TCP.  By preempting all interferences of Windows mechanisms, high transmission rates and immediate reaction are possible. This leads to a high performance network communication. Allmost all network controller of Intel and RealTek are supported.

  • Ethernet communication up to 40 Gbit/s in real-time
  • Instantaneous transmission and reaction at receiving
  • Transmission and receiving straight from the real-time context possible
  • Any Ethernet protocols possible including IP, UDP and TCP
  • Request and event-based Ethernet communication
  • Supported hardware: Intel and RealTek, up to 40 Gbit/s
  • Jumbo-Frames up to 16128 bytes depends on NIC
  • IP and MAC Multicast, Broadcast, Promiscuos mode for receiving of all packets
  • Receiving of data packets either trough Callback functions or directly at the interrupt context or polling process
  • Up to 4 priority levels possible for transmission of data packets
  • Functions for CRS calculation and Byteorder conversion
  • Network Module Addons: Network Port Extension, Network NDIS Extension, Network 40 Gbit/s Extension, Network BroadR-Reach Extension

For the achievement of real-time capability the slow Windows driver of the network interface has to be replaced by the special developed real-time driver of Kithara RealTime Suite. The following network boards of Intel and RealTek are supported. The following list always refers to the latest version of our software:

Intel – Fast Ethernet controller (100 Mbit/s)

  • 8255x
  • 82562

Intel – Gigabit Ethernet controller (1 Gbit/s)

  • 82540, 82541, 82544, 82545, 82546, 82547
  • 82566, 82567
  • 82571, 82572, 82573, 82574
  • 82575, 82576
  • 82577, 82578, 82579
  • 82580, 82583, i350
  • i210, i211
  • i217, i219

Intel – 10 Gigabit Ethernet controller (10 Gbit/s)

  • 82598, 82599
  • x540, x550

RealTek – Fast Ethernet controller (100 Mbit/s)

  • 8139B, 8139C, 8139D

RealTek – Gigabit Ethernet controller (1 Gbit/s)

  • 8100E, 8101E, 8102E, 8110S
  • 8168B/8111B, 8168C/8111C, 8168CP/8111CP, 8168D/8111D+DL
  • 8168DP/8111DP, 8168E/8111E, 8168EVL/8111EVL
  • 8168F/8111F, 8168G/8111G, 8168H/8111H
  • 8168EP/8111EP
  • 8169, 8169S, 8169SB/8110SB, 8169SC/8110SC

ASIX – USB 3.0 Gigabit Ethernet controller (1 Gbit/s)

  • AX88179 (e. g. Digitus USB 3.0 Ethernet Adapter)

Beckhoff – Fast Ethernet controller (100 Mbit/s)

  • CX5000 CCAT(Beckhoff CX50xx, CX20xx, CX51xx Embedded PCs)

The correct functioning of the software in conjunction with specific components cannot be entirely guaranteed due to the large number of potential hardware variations. For questions regarding the com­pa­ti­bil­ity with individual hardware configurations, please contact us.

USB RealTime Module

USB 3.1 in real-time by direct access to XHCI

  • Common
  • Features
  • Supported Hardware

The USB RealTime Module of Kithara RealTime Suite provides fast reaction times and the highest possible throughput for all USB-based interfaces and devices. For this purpose, Kithara RealTime Suite provides a specially developed and easy-to-apply gateway to the Extensible Host Controller Interface (XHCI). The basic operating principle is to directly access the XHCI controller exclusively within the real-time context.

  • Real-time communication with USB 3.1 devices via XHCI access
  • Exclusive use of the XHCI controller
  • Direct access from the real-time multitasking context
  • Lowest possible data rate
  • Reliable prevention of data due to customizable puffer sizes
  • Low-, full-, high-speed and super-speed
  • Control-, bulk-, interrupt- and isochron-transfer
  • Response to all plug and play as well as power management events

In connection with the USB RealTime module all USB 3.1 host controller can be used, that are compatible to the XHCI 1.1 specification.

XHCI controller of following vendors are currently supported with Kithara RealTime Suite. This list always refers to the latest version of our software:

  • Intel
  • AMD
  • Renesas
  • Etron
  • NEC
  • VIA

The correct functioning of the software in conjunction with specific components cannot be entirely guaranteed due to the large number of potential hardware variations. For questions regarding the com­pa­ti­bil­ity with individual hardware configurations, please contact us.

USB Driver Module

Communication with USB devices via Windows driver stack

  • Common
  • Features

The USB Driver Module of Kithara RealTime Suite enables the communication with USB devices over simple adaptable functions. It is based on the Windows USB driver stack with only limited real-time capabilities. For “hard” real-time, we recommend the USB RealTime Module. All USB devices are supported, including USB 3.1.

  • Development of USB device drivers
  • Access to USB devices (including USB 3.1) from application or kernel level
  • Low-, full-, high-speed
  • Control-, bulk-, interrupt- and isochron-transfer
  • Response to all plug and play- and power management events

Serial/UART Module

Simple applicable functions for fast communication

  • Common
  • Features
  • Supported Hardware

The Serial Module of Kithara RealTime Suite provides easy-to-apply functions for fast communication via the serial UART as well as COM interfaces. The UART functions require appropriate UART-16550-compatible hardware as well as a real-time driver to be present. In real-time mode, the UART functions can also be used from real-time tasks as well as on dedicated CPUs.

For COM communication, any interface for which a Windows driver is installed, is supported. In this case the COM functions run via Windows mechanisms, which means real-time capabilities cannot be applied.

  • Serial communication in real-time at kernel level by utilizing a special hardware driver
  • Handshake lines and signal lines directly controllable
  • Handler for all interface events can also be registered in a real-time context and on dedicated CPUs
  • Regarding UART functions, UART-16550 compatible hardware is necessary
  • Regarding COMM functions, serial communication on application level allows for using all COM interfaces in the system

To achieve real-time capabilities, special real-time drivers of Kithara RealTime Suite are required for applied serial interfaces. The following interface cards are currently supported. This list always refers to the latest version of our software:

  • Standard COM Interface (PNP0501)

PCIe

  • StarTech PEX2S952, 2 x RS232
  • Longshine LCS6321O, 2 x RS232
  • Delock 89220, 2 x RS232
  • Delock 89236, 1 x RS232
  • ADDI-DATA APCIe-7300, 1 x serial
  • ADDI-DATA APCIe-7420, 2 x serial
  • ADDI-DATA APCIe-7500, 4 x serial
  • ADDI-DATA APCIe-7800, 8 x serial

ExpressCard

  • i-tec EXRS232, 1 x RS-232
  • StarTech EC1S1P55254, 1 x Serial, 1 x Parallel (Netmos 9912 Chipset)

PCI

  • MOXA 4-port RS-232 C104H/PCI
  • MOXA 8-port RS-232 C168H/PCI
  • MOXA 2-port RS-422/485 CP132/PCI
  • MOXA 4-port RS-422/485
  • EXSYS 41052 serial card
  • EXSYS 43092 serial card
  • Oxford serial card Quad Port
  • SUNIX 2-port RS-232 parallel
  • SUN 2-port RS-232 PCI
  • Meilhaus ME9000 8-port RS-485
  • EXAR (XR17C152) 2-port UART PCI
  • ADDI-DATA APCI-7300-3, 1 x serial
  • ADDI-DATA APCI-7420-3, 2 x serial
  • ADDI-DATA APCI-7500-3, 4 x serial
  • ADDI-DATA APCI-7800-3, 8 x serial

CardBus

  • Socket PCMCIA serial card
  • Delock PCMCIA serial card

The correct functioning of the software in conjunction with specific components cannot be entirely guaranteed due to the large number of potential hardware variations. For questions regarding the com­pa­ti­bil­ity with individual hardware configurations, please contact us.

Device Module

Generation of virtual interfaces

  • Common
  • Features

The Device Module of Kithara RealTime Suite provides the end-user with an API for device drivers over operating system functions. The Device Module allows for the handling of such function calls at kernel level in the context of the device driver.

The Device Module also allows for the generating of virtual interfaces–in a special case even as virtual COM interface.

  • Provides a Windows API for device communication (ReadFile, WriteFile, DeviceIoControl)
  • arbitrary virtual interfaces