With the increasing importance of IoT and Industry 4.0 communication stacks and drivers are not sufficient any longer as a tool for firmware developers. Due to increased demands on performance, complexity, and flexibility, a middleware is mandatory to fulfill future communication tasks between Real-Time and IT.
Generic Open Abstraction Layer – An Industrial Communication Middleware
Industrial Ethernet – for example, PROFINET, EtherNet/IP, EtherCAT or POWERLINK need a system that cannot be adequately addressed by simply retrofitting a protocol library. This means, for example, that various protocols require an integrated switch and resource management.
Furthermore, the combination of industrial real-time communication in conjunction with the well-known Fieldbus systems such as CANopen, MODBUS or PROFIBUS is arbitrarily difficult, since physically a fundamentally different transmission medium is deployed here.
Industrial Ethernet networking is a development philosophy that is already influencing hardware and software architecture. The protocol library is an important element but requires system-wide assistance to work efficiently. The GOAL technology (middleware) is aimed to solve this problem and to ensure the highest level of availability through modular scalability.
The development objectives of the GOAL technology
- One hardware – many available communication options
- Ready-to-use modules for performance, switch and resources management
- Central configuration management
- Powerful socket for Fieldbus protocols & multi-protocol capability
- Portability to new applications (e.g. exchanging the CPU or migration between CPU/MCU families)
- Modularity and scalability
- Sustainability (e.g. TSN, OPC UA)
- Open for the integration of additional modules
- Core-to-core communication
- Marked reduction in development costs (Software)
- Substantial reduction in hardware costs
- Significant reduction in maintenance for different communication technologies
Already the basic GOAL version offers extensive contents that are optimally adapted to the individual requirements: (Figure 1)
Figure 1: GOAL structure interface to the operating system
These are basically divided into three core areas which can be summarised under the terms network management, access/list management, and configuration management respectively.
The network management already contains extensive functions:
- PHY management: Generic functions for the handling of Phys such as duplex/link management, auto-negotiation, etc.
- Ethernet Frame Sending/Receiving: Interfaces for sending and receiving Ethernet data on each layer of the ISO-OSI model
- Switch Management: Generic functions for handling switches such as reading SNMP statistics, setting QoS functions, etc.
- Interface management: Handling of individual network interfaces such as enable/disable, statistics, etc.
- IP Address Management: Flexible handling of IP address assignment depending on the protocol (e.g. DCP with PROFINET or DHCP)
- HTTP Server: Built-in web server with template support
- Command Line Interface: Integrated and expandable CLI for controlling e.g. the switch functionalities.
In the area “Access and List Management, Threads” the following contents are available by default:
- Binary & counting semaphore
- Linked Lists
- Thread Creation & Control
The configuration management area plays a central role in configuring the necessary parameters within the respective CPU/MCU environment. This includes the central administration of configuration variables, identification of variables by modules and IDs, callbacks for value checks and value changes as well as the loading/saving of variables. In addition, variables can be marked as temporary and locked. Another major advantage is the possibility of integrating customer storage systems.
Net protocols such as PTP, DLR, SNMP, IEEE802.1x, and RSP are supported extensively.
Often CPU/MCUs are used, which are not able to meet the requirements of modern communication technologies but are ideally suited for the respective application. Development engineers feel at home with existing platforms and may not want to switch to completely new platforms. For such a case GOAL offers the Core-to-Core communication module. (Figure 2)
Figure 2: GOAL – Core-to-Core communication
On this basis and depending on the availability of the MCU communication protocols such as CANopen, EtherCAT, PROFINET, EtherNetIP, POWERLINK, MODBUS TCP can be used individually or as a multi-protocol solution.
The configuration management module included in GOAL is supported by an extensive optional toolchain. The toolchain ensures easy connection of the protocols to the respective application (EDS, GSD, and ESI).
Today, the decision for a microcontroller or CPU platform (possibly also MCU/CPU families) is significantly influenced by the available software support.
The industrial communication middleware takes over the handling of Ethernet communication in the network and addresses industrial Ethernet-specific peculiarities, such as the handling of the system with the PROFINET network load tests.
Towards the application, the industrial communication middleware offers interfaces for docking the protocol libraries and thus for simple handling of multi-protocol solutions out of a project.
The handling of the multi-protocol approach becomes really effective through an own variable management in the industrial communication middleware. This allows different applications and not only protocol libraries to access the pool of variables.
Industrial communication middleware is not intended to replace an RTOS (or OS) but rather as an OS supplement and thus as a functional extension for industrial Ethernet and the necessary specifics. In combination with bare metal systems, industrial communication middleware is a valuable cornerstone for the system.
The savings in time and the gains in the system security are considerable. In particular, on embedded systems only the use of an industrial communication middleware can make the implementation possible.
Industrial communication middleware is not limited to the communication only – the actual application on the entire platform also benefits from the middleware. The greatest added value is achieved when the industrial communication middleware offers its inherent additional value right from the start during the entire development phase in order to be prepared for future requirements and extensions.
The R-IN-Engine Product Family – performance plus energy efficiency
The GOAL middleware has already been adapted and implemented in the new Renesas RZ/N1 family. With the introduction of this product family, Renesas provides increased computing power to typical industrial communication applications. The high level of integration combines an application core based on an Arm Cortex-A7 with a real-time communication engine on a single chip. Existing multi-chip solutions in industrial controllers, industrial network switches and operator terminals can now be replaced by a single power-saving SoC (System on Chip). In addition, RZ/N1 delivers advanced industrial network performance with a powerful five-port real-time embedded switch and provides all the necessary TSN endpoint features such as traffic shaping, time synchronization, and frame classification/ prioritization.
Figure 3: RZ/N1D Block Diagram
The RZ/N1 family consists of three products: RZ/N1D, RZ/N1Sand RZ/N1L. Both the RZ/N1D and the RZ/N1S have an application block, and a communication block integrated on the same die. The application block of the RZ/N1DSoC comprises two ARM Cortex -A7 and is suitable for high-end applications such as network switches, PLC and gateways. The SoC is available in two package types, 400 BGA and 324 BGA. The application block of the RZ/N1SSoC contains an ARM Cortex -A7 and was designed for midrange applications such as Nano PLC and graphical operator terminals. The RZ/N1S also comes in two packages as 324 BGA and 196 BGA. The communication blocks of the RZ/N1D and RZ/N1S are almost identical and, depending on the product option, offer three Ethernet ports in the smaller and five Ethernet ports in the larger package. Whereas the RZ/N1D has 2 MB internal memory and an external DDR interface, the RZ/N1D with 6 MB internal memory targets compact products with few external components.
The RZ/N1L has no dedicated application block, as it contains only one Cortex -M3 CPU. The idea behind this SoC is to offer a simple communication component comparable to the R-IN32M3 for customers who want to add a network function to their existing devices. The RZ/N1L is available in a 196 BGA package.
The GOAL platform provides either connectivity between a multi-protocol communication processor (such as RZ/N1L or R-IN32M3) and a traditional host MCU or, in the highly integrated RZ/N1D and RZ/N1S SoCs, communication between the communication and application blocks. As the GOAL target interface is available for all platforms based on the R-IN Engine, developers can use the same software on multiple SoCs based on the R-IN Engine – the R-IN32M3, the RZ/T1 or the RZ/N1 product family.
A solution kit based on RZ/N1D or RZ/N1S and GOAL is already available and can be obtained from distribution partners. The solution kit for the RZ/N1L will be available soon.
Further information is available at: www.renesas.com/rzn