EP4689960A1 - Gerät mit flexibler kommunikationsstruktur für echtzeitfähige netzwerkanwendungen mit hoher datensicherheit, insbesondere automatisierungsgerät, und verfahren zu dessen konfiguration - Google Patents

Gerät mit flexibler kommunikationsstruktur für echtzeitfähige netzwerkanwendungen mit hoher datensicherheit, insbesondere automatisierungsgerät, und verfahren zu dessen konfiguration

Info

Publication number
EP4689960A1
EP4689960A1 EP24721859.7A EP24721859A EP4689960A1 EP 4689960 A1 EP4689960 A1 EP 4689960A1 EP 24721859 A EP24721859 A EP 24721859A EP 4689960 A1 EP4689960 A1 EP 4689960A1
Authority
EP
European Patent Office
Prior art keywords
data
communication
controller
processor
flexible
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP24721859.7A
Other languages
English (en)
French (fr)
Inventor
Sven Fiedrich
Nico Mäding
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hilscher Gesellschaft fur Systemautomation mbH
Original Assignee
Hilscher Gesellschaft fur Systemautomation mbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hilscher Gesellschaft fur Systemautomation mbH filed Critical Hilscher Gesellschaft fur Systemautomation mbH
Publication of EP4689960A1 publication Critical patent/EP4689960A1/de
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40221Profibus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40228Modbus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/4026Bus for use in automation systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Definitions

  • Device with flexible communication structure for real-time network applications with high data security in particular automation device, and method for its configuration
  • the invention relates, according to patent claim 1, to a device and, according to patent claim 7, to a method for configuring the device.
  • fieldbuses and Ethernet especially the extension to Real-Time Ethernet, for data communication between individual units involved in the control of a process.
  • Examples of classic fieldbuses are CANopen, PROFIBUS, Modbus, DeviceNet or CC-Link.
  • Examples of well-known Real-Time Ethernet systems are PROFINET, EtherNet/IP, EtherCAT, Sercos, POWERLINK or CC-Link IE.
  • Examples of future gigabit-capable Real-Time Ethernet systems are PROFINET via TSN, EtherCAT-G or OPC UA via TSN.
  • the units communicate on the fieldbus/Ethernet using specified protocols.
  • REPLACEMENT BLADE (RULE 26) and a method for transmitting data between data networks is described.
  • the applicant's EP 1 894 113 B1 discloses a method for data communication/coupling of bus participants of an open automation system with distributed control that communicate with each other via a serial data bus and that cooperate with a higher-level control device via at least two communication controllers, in which:
  • each communication controller is composed of at least three freely programmable communication ALUs, which are called the first communication ALU, the second communication ALU and the third communication ALU,
  • a command code of the first and second communication ALU of the communication ALUs has several commands encoded therein, the method being characterized in that for each communication controller:
  • the first communication ALU receives and decodes a bit or
  • the second communication ALU converts byte, word or double word
  • the third communication ALU the transmission and reception history of an associated data packets, whereby the communication functions are not fixed, but are implemented by means of the freely programmable communication ALUs, whereby each communication controller is suitably configured by reading in an identification code in the start-up phase and then each associated communication ALU, and whereby transitions between networks are realized by means of the higher-level control device and each communication controller.
  • the higher-level control device is integrated together with the communication ALU(s) in a circuit which contains a dual-port memory for coupling to an external control device (host system), or the higher-level control device of the circuit executes the entire application, whereby this then leads out the internal system bus as an extension bus for connecting external memory and peripheral components and whereby the same signals are used for both operating modes and these are switched via software.
  • At least two communication controllers which cooperate with a higher-level control device and which have at least three freely programmable communication ALUs, namely the first communication ALU, the second communication ALU and the third communication ALU,
  • the first communication ALU receives and decodes a bit or nibble-oriented serial data stream and converts it into serial/parallel byte, word or double word representation
  • the second communication ALU performs the conversion of byte, word or double word representation into bit or nibble-oriented serial data and the encoding and transmission of this serial data stream and
  • the third communication ALU has a monitoring logic which monitors a large number of events simultaneously and which, in the event of an event, starts the associated program code within a system clock, whereby several commands are executed in one system clock, and the third communication ALU controls the transmission and reception process of an associated data packet,
  • each communication controller is configured by reading in an identification code in the start-up phase and then each associated communication ALU is configured accordingly, and whereby transitions between networks are implemented by means of the higher-level control device and two communication controllers.
  • EP 1 894 113 B1 In comparison to the construction of a dedicated communication controller by programming FPGAs (Field Programmable Gate Array) or parts thereof according to the prior art, which also correspond to hard-wired logic, the subject matter of EP 1 894 113 B1 of the applicant enables the construction of a "quasi-dedicated" communication controller in a simple manner by constructing it as one or more freely programmable communication ALUs (Arithmetic and Logical Unit), which has an instruction set and hardware architecture optimized for the communication tasks.
  • This solution therefore has the following advantages:
  • the respective fieldbus/Ethernet systems are defined by loading the software and can therefore be combined completely flexibly.
  • the commands are executed in parallel in one cycle.
  • the associated logic function blocks in the ALUs are arranged in parallel and can process the command code at the same time, which means that the necessary functions can be implemented even at high baud rates, e.g. 100/1000 Mbps Ethernet.
  • an exchangeable, physical interface without its own intelligence or controller function is provided, which is connected to the communication controller via four signal line groups for transmitting an identification code, control data, received data and transmitted data.
  • This interface registers itself with the freely programmable communication controller using an identification code in the start-up phase, so that the physical interface is exchangeable and extensions within a fieldbus specification or implementations of completely new fieldbus systems can be carried out via software update.
  • the physical interface is designed as a printed circuit with a connector of a communication network or with a connector of a communication network as an integrated unit and the communication processor processes both an application and a transmission protocol.
  • the method for synchronizing bus participants of an open automation system with distributed control, which communicate with each other via a serial data bus is designed in such a way that automatic and highly precise synchronization is made possible by one of the bus participants having at least one communication controller, that one of the at least one communication controller, which is referred to as the communication controller in the following text, has three freely programmable communication ALUs, namely the first communication ALU, the second communication ALU and the third communication ALU, cooperate with a downstream control device, and that the method comprises the following steps:
  • the communication controller detects the occurrence of a specific date or event
  • the communication ALUs carry out synchronous control functions independently, completely deterministically and without the downstream control device, in that the first communication ALU decodes the received bit or nibble serial data stream according to the transmission rate and converts it into a parallel representation, the second communication ALU encodes data from a parallel representation into bit or nibble serial data stream and sends it to the line at the correct transmission rate and the third communication ALU controls the transmission and reception process of a related data packet, and
  • the measurement and control values are exchanged between the communication controller and the control device, whereby the communication controller, the three communication ALUs and the control device are adapted in such a way that the interrupt latency times of the downstream control device are not included in the synchronization.
  • a method is known from EP 2 110754 B1 of the applicants, wherein the method is characterized in that one of the bus participants has at least one communication controller, and that one of the at least one communication controller, which is referred to as the communication controller in the following text, cooperates with a downstream control device via three freely programmable communication ALUs, which are called the first communication ALU, the second communication ALU and the third communication ALU, and that the method comprises the following steps:
  • the programmable communication ALUs carry out synchronous control functions independently, completely deterministically and without the downstream control device, in that the first communication ALU decodes the received bit or nibble serial data stream according to the transmission rate and converts it into a parallel representation, the second communication ALU receives data from a parallel Representation is encoded in bit or nibble serial data stream and sent to the line at the correct transmission rate, the third communication ALU controls the transmission and reception of a related data packet,
  • a synchronized local time is stored in a latch at the start time of the cyclical control functions
  • the cycle time is measured by forming the difference with a time stored as a synchronized local time at the last start time based on a local time of a local clock, and a current cycle time is kept constant and in a fixed phase relationship with respect to the local time by increasing or decreasing the current cycle time by means of a communication controller, and
  • the entire cycle is synchronized to the local time both in its cycle time and in its phase position, whereby the communication controller, the three communication ALUs and the control device are adapted to this so that the interrupt latency times of the downstream control device are not included in the synchronization.
  • the synchronization in the method according to the alternative method is carried out in accordance with a stored local time with each start of a control function, which requires a somewhat higher hardware outlay for maintaining a local time.
  • a device for automatic and highly precise synchronization which is characterized in that the bus participant has a communication processor with at least one communication controller, one of the at least one communication controller being referred to in the following text as the communication controller, and a control device connected downstream of the communication controller, the communication controller having three freely programmable communication ALUs, namely the first communication ALU, the second Communication ALU and the third communication ALU, the communication ALUs being adapted to carry out synchronous control functions independently, completely deterministically and without the downstream control device, in that the first communication ALU decodes the received bit or nibble serial data stream according to the transmission rate and converts it into a parallel representation, the second communication ALU encodes data from a parallel representation into a bit or nibble serial data stream and sends it to the line at the correct transmission rate, the third communication ALU controls the transmission and reception process of a related data packet, the communication controller being adapted to detect the occurrence of a specific date or event, the device having
  • a device for data communication and for coupling bus participants of an open automation system with distributed control that communicate with each other via a serial data bus is known from the applicant's EP 1 894 113 B1. Furthermore, a method and a device for automatic and highly precise synchronization are known from the applicant's EP 2 110754 B1, in which the interrupt latency times of the control device are not included in the synchronization.
  • the method has as method steps a negotiation of at least one cryptographic parameter between the communicating devices in the first network for use in subsequent communication.
  • a transmission structure in at least one of the devices which at least partially contains the negotiated cryptographic parameters, is generated and transmitted within the first network.
  • the transmission data structure is listened to by a one-way transmission device and transmitted to the second network.
  • the transmission data structure is transmitted protected by a configurable cryptographic transmission key. This ensures in particular that the cryptographic parameters can only be read by an authorized person with whom the transmission key was agreed.
  • the device for carrying out cryptographically protected communication comprises a negotiation unit which is designed to negotiate cryptographic parameters for carrying out cryptographically protected communication with a communication partner.
  • the device further comprises a generation unit which is designed to generate a transmission data structure in which the negotiated cryptographic parameters are at least partially contained and to transmit this to the first network.
  • the device can also have a generation device which generates a configurable cryptographic transmission key and is designed to output the transmission data structure to the first network protected by the cryptographic transmission key. This ensures that only authorized persons can evaluate the transmission data structure and can use it to decrypt the data transmitted in the first network. This can also be used to configure who can evaluate which messages.
  • cryptographic parameters for control messages can be encrypted using a first cryptographic transmission key and, for example, cryptographic parameters for the encryption of diagnostic data can be encrypted using a second transmission key.
  • the first transmission key is only known to the evaluation unit, the first one-way transmission unit can decrypt the control messages but not the diagnostic data.
  • a listening unit can be provided which is designed to listen in on cryptographic parameters between devices in a first network and a storage unit which is designed to store the cryptographic parameters and transmit them to a second network.
  • the one-way transmission device can have a decryption unit which is designed to decrypt cryptographically protected data transmitted from the first network using the cryptographic parameters.
  • the decryption device can be designed in such a way that only successfully cryptographically verified intercepted data is forwarded to the second network.
  • a framework application for device access software is known from DE 10 2016 120 972 A1.
  • the framework application can be installed on a host, wherein at least one driver can be integrated into the framework application, which is designed for access to an associated fieldbus component of a fieldbus network.
  • the framework application has at least one standard interface for each integrated driver, via which data can be exchanged between the driver and the framework application.
  • the framework application has one or more proprietary interfaces for at least some of the integrated drivers, via which data can be exchanged between the respective driver and the framework application, wherein information on additional functionalities supported by the driver or an associated fieldbus component can be transmitted from the driver to the framework application via at least one of the proprietary interfaces.
  • one or more proprietary interfaces are provided between the framework application and at least some of the integrated drivers. For example, merging information on additional functionalities on the framework application side is particularly advantageous if the framework application can be connected to a cloud. The information on supported additional functionalities can, for example, be uploaded to the cloud together with other data so that an overall overview of the system is available from the cloud.
  • the device access software requires information about the properties and parameters of the field devices, gateways, remote I/Os, etc. of the fieldbus network. This information is usually provided by the manufacturers of the various devices in the form of device description files or device drivers.
  • the fieldbus protocols Profibus-DP, Profibus-PA, Fieldbus Foundation and HART use device descriptions in accordance with the DTM (Device Type Manager), DD (Device Description), EDD (Enhanced Device Description) and FDI Device Packages standards.
  • DTM Device Type Manager
  • DD Device Description
  • EDD Enhanced Device Description
  • FDI Device Packages FDI Device Packages
  • the DTMs (Device Type Manager) are made available in the form of dynamically loadable libraries (DLLs) or in the form of executable files (executables).
  • DLLs dynamically loadable libraries
  • a DTM also includes the graphic features mentioned.
  • the various DTMs for the various components of the fieldbus network are integrated into a common FDT framework application, where FDT stands for “Field Device Tool”. This provides a common framework application into which the DTMs for different devices and from different manufacturers are integrated. can.
  • the FDT standard is increasingly being supplemented by the FDI Device Packages standard and may later be replaced.
  • the EtherNet/IP fieldbus protocol provides a device description file in accordance with the EDS (Electronic Data Sheet) standard to describe both cyclic and acyclic data exchange.
  • EDS Electronic Data Sheet
  • a first possible additional functionality that can be activated for a fee is connectivity to the cloud, which is also known as the "Internet of Things", or IoT for short. This functionality makes it possible to upload data from a DTM to the cloud via the FDT framework application. There, the data can be archived and linked to other data.
  • IoT connectivity is enabled on the DTM side.
  • Another additional functionality that can be enabled is the ability to perform device function tests and self-tests.
  • DE 10 2016 215 742 A1 discloses a gateway and a method for connecting a data source system to an IT system, whereby the gateway has a real-time capable middleware and a non-real-time capable middleware on a common operating system.
  • An application for communicating via a network protocol, such as TCP/IP, OPC-UA or http(s) is executed on the non-real-time capable middleware, and the non-real-time capable middleware comprises a framework.
  • Real-time capable means that individual calculation steps are completed within defined time periods. In real-time capable environments, it can be guaranteed that a calculation result is available in good time, so that the movements of different units also run synchronously, particularly in industrial machines.
  • data source systems having at least one data source, such as a computing unit (e.g. programmable logic controller (PLC), numerical control (NC) or CNC control (Computerized Numerical Control)) or a sensor, in particular already existing ones, are made "Internet-capable" in a particularly simple manner.
  • a computing unit e.g. programmable logic controller (PLC), numerical control (NC) or CNC control (Computerized Numerical Control)
  • PLC programmable logic controller
  • NC numerical control
  • CNC control Computerized Numerical Control
  • Sensorized Numerical Control Computerized Numerical Control
  • PLC functions do not have to be available on the gateway, but can be additionally provided in order to connect any other components for the data source system directly to the gateway.
  • the gateway can also be used as a PLC from the start, so that an initial connection of the data source system to the IT system can be provided.
  • trust zone support with a security enclave processor SEP is known for a system on chip SOC from US 8,775,757 B2.
  • the system on chip SOC implements a security enclave processor SEP.
  • the SEP can contain a processor and one or more security peripherals.
  • the SEP can be isolated from the rest of the system on chip SOC (e.g. one or more central processing units (CPUs) in the SOC or application processors (APs) in the SOC). Access to the security enclave processor SEP can be strictly controlled by hardware. For example, a mechanism is described in which the central processing units CPUs or the application processors (APs) can only access a mailbox in the security enclave processor SEP.
  • the CPU/AP can write a message to the mailbox, which the security enclave processor SEP can read and respond to.
  • the SEP may, in some embodiments, include one or more of the following components: secure key management using wrapping keys, SEP control of boot and/or power management, and separate trust zones in memory.
  • a device may include a security circuit, a processor, and an interface controller.
  • the security circuit may be configured to generate a keyword.
  • the processor may be configured to determine one or more policies to apply to use of the keyword and to generate a policy value.
  • the policy value may include one or more data bits indicating the determined one or more policies.
  • the interface controller may be configured to generate a message including the keyword and the policy value.
  • the interface controller may also be configured to: send the message.
  • the one or more policies may include an indication of one or more of a plurality of functional units that are permitted to use the keyword.
  • the one or more policies may include an allowable size for the keyword.
  • the one or more policies may include an indication that the keyword may be used to encrypt data and an indication that the keyword may be used to decrypt data. In another embodiment, the one or more policies include an indication of a period of time for which the keyword may be used. In one embodiment, the security circuit may be further configured to encrypt the keyword. In another embodiment, the one or more policies may include an indication of one or more additional operations required to be performed on the message to decrypt the keyword.
  • Modern processor architectures now have a Secure Enclave that takes on security-relevant tasks depending on the product life cycle. Examples of product life cycles are: During the production of the chip, it must be possible to test the chip extensively. When the chip leaves the factory, the life cycle is switched "on" and the interfaces for testing the chip's interior are switched off. When the finished device is installed on site in a system, the interfaces required for developing the device software are switched off.
  • the software that runs on the automation device enables additional security functions to be used for the end application, such as secure booting, key management, certificate handling, etc.
  • Real-time Ethernet as used in automation, differs from conventional Ethernet in other industries. For this reason, new concepts must be developed that are not found in classic processor architectures.
  • Real-time Ethernet in automation technology refers to cyclical data communication between devices. In the future, for devices with transmission rates of 1 Gbps, cycle times will be in the microsecond range. The data will no longer be transmitted in plain text, but encrypted.
  • An edge network can be implemented as any type of network that provides edge data processing and/or storage resources that are located in the vicinity of radio access network or RAN-capable endpoint devices (e.g. mobile data processing devices, Internet of Things (loT) devices, intelligent devices, etc.).
  • RAN-capable endpoint devices e.g. mobile data processing devices, Internet of Things (loT) devices, intelligent devices, etc.
  • LoT Internet of Things
  • a method and device for providing dynamic selection of edge and local accelerator resources is known, wherein the device has circuits for identifying a function of an application to be accelerated, determining one or more properties of the accelerator resource available at the edge of a network on which the device is located, and determining one or more properties of an accelerator resource available in the device.
  • edge devices in some ways comparable to industrial PCs, extend the functionality to provide local accelerators for various tasks such as artificial intelligence, cryptography, (FPGA) etc.
  • the expansion via I/O cards is carried out, for example, via PCIe (Peripheral Component Interconnect Express, usually abbreviated to PCIe, is a bus standard for connecting peripheral devices to the chipset of a processor) based plug-in card slots.
  • PCIe Peripheral Component Interconnect Express, usually abbreviated to PCIe, is a bus standard for connecting peripheral devices to the chipset of a processor
  • the accelerator device is thus a type of device expansion comparable to the way desktop PCs were expanded via slots in the motherboard, for example by plugging in a graphics card or network card. Windows as the operating system was able to recognize the card, install the driver and make it usable for the application.
  • the secure data transmission system has:
  • main security module coupled to the host processor for sending encrypted private keys of an asymmetric private and public key encryption scheme, wherein the private keys have been encrypted using at least one key encryption key, the main security module further configured to send the encrypted private keys over the data channel and send the key encryption key over the secure channel, and the main security module comprising a security module configured to control key generation operations and an associated data store.
  • the secure data transmission system according to DE 603 14 060 T2 is characterized by:
  • the satellite security module comprising a cryptography accelerator having a key manager, initial parsing units (IPUs), cipher engines and a non-volatile data memory, EEPROM.
  • the secure data transmission system according to DE 603 14060 T2 is characterized in that the secure channel is set up by the host processor and is designed to be used to initialize and control the at least one satellite security module and to facilitate the secure transmission of the key encryption key and management information.
  • the cryptography accelerator of the secure data transmission system according to DE 603 14060 T2 comprises one or more initial parsing units (IPU), encryption engines and a key manager.
  • the IPUs parse (analyze) security association data from the encrypted/unencrypted packets in order to decrypt the encrypted security associations.
  • the encryption engines are processors which decrypt the encrypted packets and/or encrypt the unencrypted packets.
  • a command context stored in a cache would be invoked using a packet descriptor with a null command context pointer.
  • a device and a method for handling key encryption are known from US 11,070,375 B2.
  • the device comprises an encryption key generator for generating a media encryption key for encrypting data in a number of storage components, the encryption key generator being configured to enclose the media encryption key to generate an encrypted media encryption key.
  • the encrypted media encryption key is stored in a non-volatile memory.
  • the device comprises firmware with instructions for transferring the device into and out of a secure state using the encrypted media encryption key.
  • the solution known from US 11,070,375 B2 describes, in the broadest sense, a type of inline encryption for storage.
  • the memory chips are connected to a communications processor, for example. This is intended to prevent third parties from reading the memory contents and thus from releasing secrets.
  • CPU central processing unit
  • - a memory that stores instructions that, when executed by the CPU, cause the CPU to perform operations involving: obtaining cryptographic data, the cryptographic data identifying a specific cryptographic process to be performed on the cryptographic data;
  • the cryptography accelerator features:
  • an interface configured to receive cryptographic data, the cryptographic data identifying a specific cryptographic process to be performed on the cryptographic data;
  • transformation logic configured to perform a cryptographic operation on the cryptographic data according to the cryptographic process, wherein the transformation logic comprises logic for performing cryptographic operations for a plurality of different cryptographic processes;
  • - a state register configured to store a result of the cryptographic operation.
  • the Secure Enclave provides the basis for establishing secure communication.
  • automation devices with transmission rates in the range of 10 Mbps to 1 Gbps, a further development of the solution concepts known from the state of the art is therefore necessary.
  • the applicant's DE 102018 008 674 A1 describes the automation device being designed in such a way that an analysis and cloud unit is integrated as an independent module in an AS IC of the automation device and/or that an Ethernet network controller with an interface for lossless reading of all received data of the network on the device-internal side of Ethernet transmitters of all existing Ethernet ports is connected to the analysis and cloud unit.
  • an analysis and cloud unit is integrated as an independent module in the automation device and/or that an Ethernet network controller with an interface in the form of a UART, SPI, SDIO, MAC, PCIe, dual-port memory, FIFO or similar for exchanging an Ethernet frame with the automation device and/or the internal Ethernet switch of the network controller.
  • the applicant's DE 10 2006 019 451 A1 discloses a device with a flexible communication and control structure which, for coupling to other devices or a higher-level control device of an automation system via a serial data bus, has: at least two or more communication interfaces and at least one programmable logic controller, so that the programmable logic controller is designed as an exchangeable unit and the data is transferred between the communication interfaces completely transparently and/or further processed via the internal programmable logic controller.
  • the exchangeable communication interface is extended by a PLC function in order to couple devices of an automation system that communicate with each other via a serial data bus. This is integrated into the communication path and works completely transparently, both for the device and for a higher-level control device.
  • EP 0 982 641 B1 discloses a bus connection with a memory area combined in one module, a communication module and a functional unit with its own program memory space, both of which access the same memory area, whereby blocks of variable size can be formed in the memory area.
  • the size of the first block increases, the size of the second block decreases and vice versa, whereby communication buffers can be set up in the variable-size second block.
  • the first block is Switching to the program memory space of the functional unit can be displayed.
  • a physics unit with an asynchronous interface and a synchronous interface is provided for coupling to the bus physics.
  • the communication module known from DE 10 2009 008 957 A1 comprises a processing unit, preferably designed as a microprocessor, a zero-voltage-safe memory unit interacting with it for storing a user program and at least two independent, configurable, galvanically isolated serial interfaces.
  • the serial interfaces can be configured using the user programs stored in the memory unit and are intended to take over functions of the interfaces of a central control unit connected to the communication module if these are not sufficient.
  • DE 10 2004 035 843 discloses a network processor with a plurality of programmable processor elements, in which
  • each processor element of the plurality of processor elements is configured to provide basic communication network protocol functions
  • a first part of the plurality of processor elements are configured as communication network processor elements
  • a second part of the plurality of processor elements is configured as interface processor elements which are configured to provide an output communication interface and/or an input communication interface for the network processor according to a communication protocol.
  • the invention is based on the object of developing a device and a To further develop a process that supports all market-relevant communication protocols in automation technology and enables preprocessing, securing and forwarding of high-priority real-time data in the range of up to 1 Gbps.
  • a device with a flexible communication structure for real-time network applications with high data security with a communication processor which has:
  • At least one flexible data processing structure integrated in the data controller with a cryptography accelerator and with an exchangeable physical interface arranged in the device and connected to the communication controller arranged in the communication processor via signal lines for transmitting an identification code, control data, received data and transmitted data, such that processing, filtering and distribution of data streams with transmission rates in the range of 10 Mbps to 1 Gbps is realized.
  • this object is achieved, according to claim 7, by a method for configuring a device with a flexible communication structure for real-time capable network applications with high data security, which has communication controllers, data controllers, dual-port RAM memory, secure enclave and host interface arranged in a communication processor, in which:
  • the communication controller and the data controller are freely programmable
  • At least one flexible communication structure integrated in the communication controller, consisting of application-dependent programmable processor cores, is provided,
  • At least one flexible data processing structure with cryptography accelerator consisting of application-dependent programmable processor cores, is provided, integrated in the data controller,
  • the Secure Enclave takes on security-relevant tasks depending on the respective product life cycle and makes additional security functions available for the end application, including secure booting, key management and certificate handling.
  • the device according to the invention in particular an automation device, supports all market-relevant communication protocols of the
  • the data controller comprises:
  • the communication processor has a secure enclave, also called a secure enclave, with a secure enclave processor and a secure non-volatile memory connected to it via a bus, wherein the secure enclave takes on security-relevant tasks depending on a respective product life cycle and makes further security functions usable for the end application, including secure booting, key management, certificate handling.
  • a secure enclave also called a secure enclave
  • the secure enclave takes on security-relevant tasks depending on a respective product life cycle and makes further security functions usable for the end application, including secure booting, key management, certificate handling.
  • This embodiment of the invention has the advantage that only the Secure Enclave can access the secure non-volatile memory via the bus. All keys used to encrypt user data originate from an entropy that is stored in the non-volatile memory of the Secure Enclave.
  • the Secure Enclave lays the foundation for secure communication by managing secret keys. Using these keys and special certificates, a session key is negotiated between devices, on the basis of which the cyclic data is encrypted and decrypted. Conventionally, the session key is valid as long as the connection is active. In automation, in the cyclic context, the connection is maintained as long as the system is running. Therefore, according to the invention, it is possible to renew the negotiated session keys during an active connection.
  • Fig. 1 shows the block diagram of a communication processor with freely programmable communication controller based on EP 1 894 113 B 1 and EP 2 110 754 B Ithe applicant,
  • Fig. 2 shows the block diagram of the data controller according to the invention and Fig. 3 shows the data flow in the device according to the invention with flexible communication structure according to Fig. 1 in detail.
  • the inventive solution of the device with a flexible communication structure, in particular an automation device, shown in Fig. 1 is a further development of the methods and devices for data communication described in EP 1 894 113 B1 and EP 2 HO 754 B1 of the applicants, for coupling bus participants of an open automation system with distributed control that communicate with each other via a serial data bus.
  • the same reference numerals are used here so that - by reference to them - the detailed description of the components and their connection to each other can be declared to be part of the content of the description of the inventive further development in this patent application.
  • An intelligent system is a machine with an embedded computer connected to the Internet that is able to collect and analyze data and communicate with other systems.
  • the next evolutionary stage is the connection of automation devices to a so-called higher-level cloud. Diagnostic data that the device records about itself or from its environment can be used for topics such as predictive maintenance, etc.
  • a representation of the device as a digital twin in the cloud makes it possible, for example, to optimize processes in production plants, etc.
  • the cloud can be on-premise or remote. Plant operators can also access a cloud on site in the plant without an Internet connection.
  • the automation device AG of the present invention is a device that is now referred to in technical terms as an intelligent device or smart device.
  • EP 1 894 113 Bl and EP 2 110 754 Bl is intended to distinguish devices with a fixed scope of programming by means of a function or a script With the help of a programming language, application-specific tasks and functions can be freely implemented.
  • Ethernet MACs the abbreviation MAC stands for Media Access Controller and refers to the unique identification and access control of electronic media within a network (Ethernet, Token Ring, Bluetooth or WLAN)
  • the MAC address refers to the specific physical address for the network adapter with a fixed range of functions, which is colloquially programmed via registers. In the end, it is primarily a configuration. This does not allow multi-protocol support to be implemented.
  • MACs Media Access Controllers
  • MACs Media Access Controllers
  • the block diagram shown in Fig.l shows a device, referred to below as automation device AG, with a flexible communication structure for real-time network applications with high data security.
  • the automation device AG contains a communication processor KP, which has:
  • gMAC application-dependent programmable processor cores PK (RPA, TPA, PEA, see EP 1 894 113 Bl and EP 2 110754 Bl of the applicant and hereinafter referred to as gMAC: RPU, TPU, and
  • the automation device AG contains a signal line or Signal line groups for transmitting an identification code ID, control data ST, received data ED and transmitted data SD are connected to the exchangeable physical interface PYS arranged in the communications controller KC in the communications processor KP, so that processing, filtering and distribution of data streams with transmission rates in the range of 10 Mbps to 1 Gbps is realized.
  • FIG. 2 shows a data controller DC, which has:
  • CPU Central Processing Unit
  • main processor is the central unit that interacts with distributed systems (also called subsystems).
  • subsystems also called subsystems.
  • processor cores PK of the subsystems are referred to below as application-specific processor cores PK.
  • the processor core consists primarily of the control unit, the arithmetic unit and the registers.
  • the arithmetic unit is also called the arithmetic and logical unit (ALU).
  • the application-specific processor cores PK are equipped with tightly coupled memory (TCM) for the real-time execution of program code.
  • TCM tightly coupled memory
  • the technical term used for "tightly coupled" memory is TCM (Tightly Coupled Memory), which is defined by the architecture of the processor core PK used. Ultimately, it is about optimizing performance due to physical limits that arise from the semiconductor process and the system architecture of the chip.
  • the processor core PK has, among other things, a system interface and a dedicated TCM interface, divided into a data bus and program bus. Physically speaking, in the layout of the chips, the TMCs are placed near the processor core PK and connected directly. High-speed memory cells are used for this, which usually have a higher power dissipation.
  • the design goal is to keep latency as low as possible, ideally enabling single-cycle access.
  • the system response is thus deterministic and the real-time capability of the overall system is improved. In hard real time, exceeding a fixed response time of the application-dependent programmable processor cores PK is considered a failure.
  • the application-dependent programmable PK does nothing other than wait for data access.
  • the DMA controller DMA Direct Memory Access
  • the DMA controller DMA carries out the memory accesses in the system.
  • the application-dependent programmable processor core PK does not waste clock cycles waiting, but instead executes program instructions.
  • each communication controller KC consists of several, in particular ten or more application-dependent programmable PKs with communication ALUs
  • the number of freely programmable communication controllers KC depends on the expansion level of the device AG for the respective application:
  • Process automation end devices sometimes have only one communication port (i.e. a KC communication controller is used). This is usually due to a star-shaped network topology.
  • Factory automation terminals have at least two communication ports (i.e. two KC communication controllers are used). This is usually due to a ring-shaped network topology.
  • Control devices can have up to 4 communication ports (i.e. four KC communication controllers are used). This is usually independent of the implementation of the respective network topology.
  • the data controller DC according to the invention with integrated cryptographic accelerator KB meets the requirements of devices with transmission rates of 1 Gbps, where the cycle times are in the microsecond range and where the data is transmitted in encrypted form.
  • the Interconnect IC is a key component that connects the various functional blocks to one another.
  • the Interconnect IC manages the data flow between these components and ensures that they work together efficiently and effectively.
  • the IC thus provides an internal communication connection for data and control signals.
  • initiator INT and target TRG see Fig. 1. This means that an initiator INT is able to carry out write and read access to a target TRG. In Fig. 3, the access path through the IC is shown from top to bottom.
  • a special feature is the Secure Enclave SE, which is both an initiator INT and a target TRG.
  • the Secure Enclave SE accesses the memory SP and the external memories via the external memory interface ES, e.g. for secure boot, etc.
  • the Secure Enclave SE provides special services to the higher-level system, e.g. for key management, etc.
  • the dual-port RAM DPM for the host interface HS is a volatile memory with arbitration, triple buffering and handshake mechanisms for synchronization so that two sides can access memory contents in the dual-port RAM DPM separately and thus exchange cyclic and acyclic data with each other. It therefore represents a physical separation between the real-time protocol communication and the higher-level control device of the end application, which is connected to an external host interface EHS and is therefore interchangeable.
  • the higher-level control device with the corresponding host application can be any device class of factory or process automation, such as an industrial PC, a machine, a drive, an actuator, an I/O system, a sensor, etc.
  • the end application is implemented on commercially available microprocessors or microcontrollers or on application-specific FPGA or ASIC solutions (FPGA stands for Field Programmable Gate Array and ASIC stands for Application Specific Integrated Circuit).
  • FPGA Field Programmable Gate Array
  • ASIC Application Specific Integrated Circuit
  • the communication processor KP is extended by a complete application system with main processor and thus becomes a system-on-chip (SOC) that can be used as a single-chip solution for end applications.
  • SOC system-on-chip
  • Symmetric cryptography In symmetric cryptography, a single key is used to encrypt and decrypt a message.
  • AES Advanced Encryption Standard
  • Salsa20 also Snuffle 2005
  • Salsa20/20 is a family of 256-bit stream ciphers.
  • Salsa20/20 with 20 rounds is intended as the standard.
  • XSalsa20 is a variant with an extended nonce (192 bits instead of 64 bits).
  • ChaCha or Snuffle 2008 are variants of Salsa20.
  • ChaCha20-Polyl305 is an Authenticated Encryption Algorithm with Additional Data (AEAD) that combines the ChaCha20 stream cipher with the Polyl 305 message authentication code. Its use in lETF protocols is standardized in RFC 8439.
  • the ChaCha20-Polyl305 algorithm described in RFC 8439 takes as input a 256-bit key and a 96-bit nonce to encrypt a plaintext with a ciphertext extension of 128 bits (the tag size).
  • ChaCha20 is used in counter mode to derive a keystream that is XORed with the plaintext.
  • the ciphertext and associated data are then authenticated using a variant of Polyl 305 that first encodes the two strings into one.
  • the XChaCha20-Polyl305 construction is an extended 192-bit nonce variant of the ChaCha20-Polyl305 construction that uses XChaCha20 instead of ChaCha20. When randomly selecting nonces, the XChaCha20-Polyl305 construction provides better security than the original construction.
  • the data processing structure of the data controller DC depends on the respective software that the processor core PK executes.
  • the respective software is determined by the data model of the higher-level communication protocol, which can differ depending on the communication standard. This also applies, among other things, to the use of the respective encryption algorithm.
  • Communication standard A for example, prescribes ASE as the algorithm
  • communication standard B for example, prescribes ChaCha as the algorithm.
  • task-related data models that differ from one another run on the data controllers DC.
  • a purely hardware-based cryptography accelerator KB would be disadvantageous.
  • the algorithms are accelerated using a combination of software and hardware.
  • the software in the tightly coupled memory (TCM), which the processor core PK executes, ensures that the data in the tightly coupled memory is processed according to the data model using the hardware accelerator.
  • the method according to the invention for configuring the device AG with a flexible communication structure for real-time capable network applications with high data security which has communication controller KC, data controller DC, dual-port RAM memory DPM, secure enclave SE and host interface HS arranged in the communication processor KP, is characterized by:
  • Communication controller KC and data controller DC work together with a higher-level control device via the host interface HS, which makes the higher-level control device interchangeable, • for processing, filtering and distribution of data streams with transmission rates in the range of 10 Mbps to 1 Gbps, at least one flexible communication structure integrated in the communication controller KC, consisting of application-dependent programmable processor cores PK, is provided,
  • At least one flexible data processing structure with cryptography accelerator KB consisting of application-dependent programmable processor cores PK, is provided, integrated in the data controller DC,
  • the Secure Enclave SE takes on security-relevant tasks depending on the respective product life cycle and makes additional security functions available for the end application, including secure booting, key management and certificate handling.
  • the Secure Enclave SE manages secret keys, which are used to negotiate a session key between the devices using these keys and special certificates, on the basis of which the cyclic data is encrypted and decrypted.
  • the session key is valid as long as the connection is active; in particular, the negotiated session key can be renewed during an active connection.
  • the software structure of the cryptography accelerator KB is changed to realize the multi-protocol capability of the device AG and to divide the workload.
  • CPU Central Processing Unit
  • FIFO First In First Out data buffer
  • gMAC gigabit media access controller
  • HS host interface
  • IHS Internal host system
  • RPU Receive Processing Unit
  • TPU Transmit Processing Unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Programmable Controllers (AREA)

Abstract

1. Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, insbesondere Automatisierungsgerät, und Verfahren zu dessen Konfiguration. 2.1 Um alle marktrelevanten Kommunikationsprotokolle der Automatisierungstechnik zu unterstützen, weist das Gerät (AG) einen Kommunikationsprozessor (KP) auf, welcher aufweist: - mindestens einen frei programmierbaren Kommunikationscontroller (KC), mindestens einen frei programmierbaren Datencontroller (DC) und mindestens einen interaktiven Dual-Port -RAM Speicher (DPM), wobei der Kommunikationsprozessor (KP)-mit einer übergeordneten Steuereinrichtung über eine Hostschnittstelle (HS) zusammenarbeitet, wodurch die übergeordnete Steuereinrichtung austauschbar ist, - mindestens eine im Kommunikationscontroller (KC) integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängig programmierbaren Prozessorkernen (gMAC: RPU, TPU; gPECs), - mindestens eine im Datencontroller (DC) integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger (KB) und mit einer im Gerät (AG) angeordneten und über Signalleitungen zur Übertragung eines Identifizierungscodes (ID), Steuerdaten (ST), Empfangsdaten (ED) und Sendedaten (SD) mit dem im Kommunikationsprozessor (KP) angeordneten Kommunikationscontroller (KC) verbundene, austauschbare physikalische Schnittstelle (PYS), derart, dass eine Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps realisiert ist. 2.2 Die Erfindung liegt auf dem Gebiet der Geräte mit flexibler Kommunikationsstruktur, insbesondere Automatisierungsgeräte.

Description

Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, insbesondere Automatisierungsgerät, und Verfahren zu dessen Konfiguration
Beschreibung
Die Erfindung betrifft, gemäß Patentanspruch 1 ein Gerät und gemäß Patentanspruch 7 ein Verfahren zu dessen Konfiguration.
In der Steuer- und Automatisierungstechnik ist es bekannt Feldbusse und Ethernet, insbesondere die Erweiterung bezüglich Real-Time Ethernet zur Datenkommunikation zwischen einzelnen, an der Steuerung eines Prozesses beteiligten Einheiten zu verwenden. Beispiele für klassische Feldbusse sind CANopen, PROFIBUS, Modbus, DeviceNet oder CC-Link. Beispiele für bekannte Real-Time Ethernet Systeme sind PROFINET, EtherNet/IP, EtherCAT, Sercos, POWERLINK oder CC-Link IE. Beispiele für zukünftige gigabitfähige Real-Time Ethernet Systeme sind PROFINET über TSN, EtherCAT-G oder OPC UA über TSN. Die Kommunikation der Einheiten erfolgt auf dem Feldbus/Ethemet anhand von spezifizierten Protokollen. Um der Forderung nach offenen Systemen zur Vernetzung entsprechen zu können, besteht die Notwendigkeit, einfache und kostengünstige Kommunikationsmechanismen zur Verfügung zu stellen, um industrielle Geräte netzwerkfähig zu machen. Diese Forderung besteht vor allem auch im Zusammenhang mit der Kopplung von Antriebskomponenten, wie zwischen Antriebsregelungen, Leistungsteilen und Gebern bei numerisch gesteuerten Werkzeugmaschinen und Robotern, bei denen eine Mehrzahl interpolierender Achsen synchron betrieben werden müssen. Bei der zunehmenden Vernetzung verschiedenster technischer Systeme wächst deshalb die Forderung nach standardisierten Strukturen in der Industrie.
In verteilten Automatisierungssystemen, beispielsweise im Bereich Antriebstechnik, müssen bestimmte Daten zu bestimmten Zeiten (d.h. echtzeitkritische Daten) bei den dafür bestimmten Teilnehmern eintreffen und von den Empfängern verarbeitet werden. Gemäß IEC 61491, EN61491 SERCOS interface - Technische Kurzbeschreibung kann ein erfolgreicher echtzeitkritischer Datenverkehr der genannten Art in verteilten Automatisierungssystemen gewährleistet werden. Weiterhin sind aus der Automatisierungstechnik synchrone, getaktete Kommunikationssysteme mit Äquidistanz- Eigenschaften bekannt, wie dies beispielsweise in der DE 101 40 861 Al für ein System
ERSATZBLATT (REGEL 26) und ein Verfahren zur Übertragung von Daten zwischen Datennetzen beschrieben ist.
Um ein Verfahren und eine Vorrichtung zur Datenkommunikation und Konfiguration von Busteilnehmern eines offenen Automatisierungssystems derart auszugestalten, dass der Anschluss beliebiger Busteilnehmer mit individueller, interaktiver Kommunikation und die Austauschbarkeit von Teilen der Vorrichtung ermöglicht wird, ist aus dem EP 1 894 113 Bl der Anmelder ein Verfahren zur Datenkommunikation/ Kopplung von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines offenen Automatisierungssystems mit verteilter Steuerung, welche über mindestens zwei Kommunikations-Controller mit einer übergeordneten Steuereinrichtung Zusammenarbeiten bekannt, bei dem:
- jeder Kommunikations-Controller aus mindestens drei frei programmierbaren Kommunikations -ALU aufgebaut ist, die nämlich die erste Kommunikations -ALU, die zweite Kommunikations- ALU und die dritte Kommunikations -ALU genannt werden,
- für jeden Kommunikations-Controller einem Befehlscode der ersten und zweiten Kommunikations -ALU der Kommunikations-ALUs mehrere Befehle kodiert sind, wobei das Verfahren dadurch gekennzeichnet wird, dass für jeden Kommunikations -Controller :
- in der ersten und zweiten Kommunikations -ALU Logikfunktionsblöcke parallel zueinander angeordnet sind und gleichzeitig den Befehlscode verarbeiten, welche die Kommunikationsfunktionen ausführen,
- die erste Kommunikations -ALU den Empfang und die Dekodierung eines Bit oder
Nibble-orientierten, seriellen Datenstroms und dessen Seriell/Parallelwandlung in Byte, Wort oder Doppelwort Darstellung durchführt,
- die zweite Kommunikations -ALU die Wandlung von Byte, Wort oder Doppelwort-
Darstellung in Bit oder Nibble-orientierten serielle Daten und das Kodieren und Senden dieses seriellen Datenstroms durchführt und die dritte Kommunikations -ALU über eine Überwachungslogik verfügt, welche eine Vielzahl von Ereignissen gleichzeitig überwacht und welche im Ereignisfall innerhalb eines Systemtaktes mit dem zugehörigen Programmcode startet, wobei in einem Systemtakt mehrere Befehle ausgeführt werden und
- die dritte Kommunikations-ALU den Sende- und Empfangsverlauf eines zugehörigen Datenpakets steuert, wodurch die Kommunikationsfunktionen nicht fest vorgegeben sind, sondern mittels der frei programmierbaren Kommunikations -ALUs ausgebildet sind, wobei jeder Kommunikations-Controller durch Einlesen eines Identifizierungscodes in der Startphase und danach jede zugehörige Kommunikations-ALU passend konfiguriert und wodurch mittels der übergeordneten Steuereinrichtung und jedem Kommunikations-Controller Übergänge zwischen Netzwerken realisiert werden.
Für jeden Kommunikations-Controller sind die übergeordnete Steuereinrichtung zusammen mit der oder den Kommunikations -ALUs in einem Schaltkreis integriert, welcher zur Ankopplung an eine externe Steuereinrichtung (Hostsystem) ein Dual-Port Memory enthält, oder die übergeordnete Steuereinrichtung des Schaltkreises führt die gesamte Applikation aus, wobei diese dann zum Anschluss von externem Speicher und Peripheriebausteinen den internen Systembus als Extension Bus rausführt und wobei für beide Betriebsarten die gleichen Signale benutzt und diese per Software umgeschaltet werden
Weiterhin ist aus dem EP 1 894 113 Bl der Anmelder eine Vorrichtung zur Datenkommunikation, zur Kopplung von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines offenen Automatisierungssystems mit verteilter Steuerung, mit:
- mindestens zwei Kommunikations-Controllern, welche mit einer übergeordneten Steuereinrichtung Zusammenarbeiten und welche mindestens drei frei programmierbare Kommunikations-ALU aufweisen, die nämlich die erste Kommunikations-ALU, die zweite Kommunikations-ALU und die dritte Kommunikations-ALU genannt werden,
• einem Befehlscode, in welchem mehrere Befehle kodiert sind, wobei die Vorrichtung durch folgende Merkmale gekennzeichnet wird:
• einer parallelen Anordnung von mindestens zwei Logikfunktionsblöcken, die gleichzeitig den Befehlscode verarbeiten, in den ersten und zweiten Kommunikations-ALU, welche die Kommunikationsfunktionen ausführen,
• die erste Kommunikations-ALU den Empfang und die Dekodierung eines Bit oder Nibble-orientierten, seriellen Datenstroms und dessen Seriell/Paral lei Wandlung in Byte, Wort oder Doppelwort Darstellung durchführt,
• die zweite Kommunikations -ALU die Wandlung von Byte, Wort oder Doppelwort Darstellung in Bit oder Nibble-orientierten serielle Daten und das Kodieren und Senden dieses seriellen Datenstroms durchführt und
• die dritte Kommunikations -ALU über eine Überwachungslogik verfügt, welche eine Vielzahl von Ereignissen gleichzeitig überwacht und welche im Ereignisfall innerhalb eines Systemtaktes mit dem zugehörigen Programmcode startet, wobei in einem Systemtakt mehrere Befehle ausgeführt werden, und die dritte Kommunikations -ALU den Sende- und Empfangsverlauf eines zugehörigen Datenpakets steuert,
- wodurch die Kommunikationsfunktionen nicht fest vorgegeben sind, sondern mittels der frei programmierbaren Kommunikations -ALUs ausgebildet sind, wobei jeder Kommunikations-Controller durch Einlesen eines Identifizierungscodes in der Startphase und danach jede zugehörige Kommunikations-ALU passend konfiguriert, und wodurch mittels der übergeordneten Steuereinrichtung und zweier Kommunikations -Controller Übergänge zwischen Netzwerken realisiert werden.
Im Vergleich zum Aufbau eines dedizierten Kommunikations -Controller durch Programmierung von FPGAs (Field Programmable Gate Array) oder Teile davon nach dem Stand der Technik, welcher ebenfalls einer fest verdrahteten Logik entsprechen, wird beim Gegenstand der EP 1 894 113 Bl der Anmelderin auf einfache Art und Weise der Aufbau eines „quasi dezidierten" Kommunikations -Controllers ermöglicht, indem dieser als eine oder mehrere frei programmierbare Kommunikations- ALUs (Arithmetic and Logical Unit) aufgebaut wird, welche einen auf die Kommunikationsaufgaben optimierten Befehlssatz und Hardwarearchitektur besitzt. Damit ergeben sich bei dieser Lösung folgende Vorteile:
- Die Entwicklung, Produktion und Vertrieb eines solchen Schaltkreises kann unabhängig von einem speziellen Feldbussystem/Ethernet erfolgen.
- Erweiterungen innerhalb der Feldbus/Ethemet- und in der Real-Time - Ethernetspezifikation oder Implementierungen komplett neuer Feldbussysteme können per Softwareupdate erfolgen und benötigen keinen neuen Schaltkreis.
- Besonders bei zwei oder mehreren Kommunikationsschnittstellen innerhalb eines Schaltkreises werden die jeweiligen Feldbus -/Ethemetsysteme durch Laden der Software festgelegt und sind damit völlig flexibel kombinierbar.
Weiterhin werden beim Gegenstand der EP 1 894 113 Bl der Anmelder im Gegensatz zu herkömmlichen ALUs die Befehle in einem Takt parallel ausgeführt. Dazu sind die zugehörigen Logikfunktionsblöcke in den ALUs parallel angeordnet und können gleichzeitig den Befehlscode verarbeiten, wodurch auch bei hohen Baudraten, z.B. 100/1000 Mbps Ethernet, die notwendigen Funktionen realisiert werden können. Für jeden Kommunikations-Controller ist eine über vier Signalleitungsgruppen zur Übertragung jeweils eines Identifizierungscodes, Steuerdaten, Empfangsdaten und Sendedaten mit dem Kommunikations -Controller verbundene, austauschbare, physikalische Schnittstelle ohne eigene Intelligenz oder Controllerfunktion vorgesehen, welche sich durch einen Identifizierungscode in der Startphase beim frei programmierbaren Kommunikations-Controller anmeldet, so dass die physikalische Schnittstelle austauschbar ist und Erweiterungen innerhalb einer Feldbusspezifikation oder Implementierungen komplett neuer Feldbussysteme per Software update erfolgen. Schließlich ist für jeden Kommunikations-Controller die physikalische Schnittstelle als gedruckte Schaltung mit einem Anschlussstecker eines Kommunikationsnetzwerkes oder mit einem Anschlussstecker eines Kommunikationsnetzwerkes als eine integrierte Einheit ausgestaltet und der Kommunikations -Prozessor arbeitet sowohl eine Applikation als auch ein Übertragungsprotokoll ab.
Weiterhin ist aus der EP 2 110 754 Bl der Anmelder ein Verfahren und eine Vorrichtung zur Synchronisation von Busteilnehmern eines offenen Automatisierungssystems bekannt. Dabei ist das Verfahren zur Synchronisation von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines offenen Automatisierungssystems mit verteilter Steuerung, derart ausgestaltet, dass eine automatische und hochgenaue Synchronisation ermöglicht wird, indem einer der Busteilnehmer mindestens einen Kommunikations -Controller aufweist, dass einer der mindestens einen Kommunikations -Controller, der im folgenden Text als der Kommunikations-Controller genannt wird, über drei frei programmierbare Kommunikations-ALUs, die nämlich die erste Kommunikations -ALU , die zweite Kommunikations-ALU und die dritte Kommunikations-ALU genannt werden, mit einer nachgeschalteten Steuereinrichtung zusammenarbeitet, und dass das Verfahren die folgenden Schritte aufweist:
- der Kommunikations-Controller detektiert das Auftreten eines bestimmten Datums oder Ereignisses,
- die Kommunikations-ALUs führen völlig deterministisch und ohne die nachgeschaltete Steuereinrichtung synchrone Steuerungsfunktionen selbständig aus, indem die erste Kommunikations-ALU entsprechend der Übertragungsrate den empfangenen Bit- bzw. Nibble- seriellen Datenstrom dekodiert und in eine parallele Darstellung konvertiert, die zweite Kommunikations-ALU Daten aus einer parallelen Darstellung in Bit- bzw. Nibble-seriellen Datenstrom kodiert und mit der richtigen Übertragungsrate auf die Leitung gibt und die dritte Kommunikations-ALU den Sende- und Empfangsverlauf eines zusammengehörigen Datenpakets steuert, und
- zwischen den Synchronisationszeitpunkten werden die Mess- und Stellwerte zwischen dem Kommunikations-Controller und der Steuereinrichtung ausgetauscht, wobei der Kommunikations-Controller, die drei Kommunikations -ALUs und die Steuereinrichtung derart angepasst sind, dass die Interrupt Latenzzeiten der nachgeschalteten Steuereinrichtung nicht in die Synchronisation eingehen.
Alternativ ist ein Verfahren aus der EP 2 110754 Bl der Anmelder bekannt, wobei das Verfahren darin gekennzeichnet ist, dass einer der Busteilnehmer mindestens einen Kommunikations-Controller aufweist, und dass einer der mindestens einen Kommunikations-Controller, der im folgenden Text als der Kommunikations-Controller genannt wird, über drei frei programmierbare Kommunikations-ALUs, die nämlich die erste Kommunikations-ALU, die zweite Kommunikations-ALU und die dritte Kommunikations-ALU genannt werden, mit einer nachgeschalteten Steuereinrichtung zusammenarbeitet, und dass das Verfahren die folgenden Schritte aufweist:
- die programmierbaren Kommunikations-ALUs führen völlig deterministisch und ohne die nachgeschaltete Steuereinrichtung synchrone Steuerungsfunktionen selbständig aus, indem die erste Kommunikations-ALU entsprechend der Übertragungsrate den empfangenen Bit- bzw. Nibble- seriellen Datenstrom dekodiert und in eine parallele Darstellung konvertiert, die zweite Kommunikations-ALU Daten aus einer parallelen Darstellung in Bit- bzw. Nibble-seriellen Datenstrom kodiert und mit der richtigen Übertragungsrate auf die Leitung gibt, die dritte Kommunikations -ALU den Sende - und Empfangs verlauf eines zusammengehörigen Datenpakets steuert,
- da die Steuerungsfunktionen zyklisch ablaufend sind und eine Zykluszeit haben, eine synchronisierte lokale Zeit wird zum Startzeitpunkt von den zyklisch ablaufenden Steuerungsfunktionen in einem Latch abgespeichert,
- die Zykluszeit wird durch Differenzbildung mit einer zum letzten Startzeitpunkt als synchronisierte lokale Zeit gespeicherten Zeit auf Basis einer lokalen Zeit einer lokalen Uhr gemessen, und eine aktuelle Zykluszeit wird durch Vergrößern oder Verkleinern der aktuellen Zykluszeit mittels Kommunikations -Controller in Bezug auf die lokale Zeit konstant gehalten und in einer festen Phasenbeziehung gehalten, und
- der gesamte Zyklus wird sowohl in seiner Zykluszeit als auch in seiner Phasenlage auf die lokale Zeit synchronisiert, wobei der Kommunikations -Controller, die drei Kommunikations-ALUs und die Steuereinrichtung daran angepasst sind, so dass die Interrupt-Latenzzeiten der nachgeschalteten Steuereinrichtung nicht in die Synchronisation eingehen.
Im Vergleich zum erst genannten Verfahren der EP 2 110754 Bl der Anmelder, bei dem mittels des „quasi dezidierten“ Kommunikations -Controller eine direkte Synchronisation der Steuerungsfunktionen ohne die nachgeschaltete Steuereinrichtung erfolgt, wird die Synchronisation beim Verfahren gemäß dem alternativen Verfahren nach Maßgabe einer gespeicherten lokalen Zeit mit jedem Start einer Steuerungsfunktion durchgeführt, was einen etwas höheren Hardwareaufwand für das Führen einer lokalen Zeit erfordert.
Weiterhin ist aus der EP 2 110 754 B 1 der Anmelder eine Vorrichtung zur automatischen und hochgenauen Synchronisation bekannt, welche darin gekennzeichnet ist, dass der Busteilnehmer einen Kommunikations-Prozessor mit mindestens einem Kommunikations-Controller, wobei einer der mindestens einen Kommunikations - Controller im folgenden Text als der Kommunikations -Controller genannt wird, und einer dem Kommunikations -Controller nachgeschalteten Steuereinrichtung aufweist, wobei der Kommunikations -Controller drei frei programmierbare Kommunikations- ALUs aufweist, die nämlich die erste Kommunikations-ALU, die zweite Kommunikations-ALU und die dritte Kommunikations -ALU genannt werden, wobei die Kommunikations-ALUs daran angepasst sind, völlig deterministisch und ohne die nachgeschaltete Steuereinrichtung synchrone Steuerungsfunktionen selbständig auszuführen, indem die erste Kommunikations-ALU entsprechend der Übertragungsrate den empfangenen Bit- bzw. Nibble- seriellen Datenstrom dekodiert und in eine parallele Darstellung konvertiert, die zweite Kommunikations-ALU Daten aus einer parallelen Darstellung in Bit- bzw. Nibble-seriellen Datenstrom kodiert und mit der richtigen Übertragungsrate auf die Leitung gibt, die dritte Kommunikations-ALU den Sende- und Empfangs verlauf eines zusammengehörigen Datenpakets steuert, wobei der Kommunikations-Controller daran angepasst ist, das Auftreten eines bestimmten Datums oder Ereignisses zu detektieren, wobei die Vorrichtung einen Logikfunktionsblock des Kommunikations-Prozessors mit Mitteln zur Messung und Speicherung von Zeiten in der Kommunikations-ALUs aufweist, und wobei der Kommunikations-Controller, die drei Kommunikations-ALUs und die Steuereinrichtung daran angepasst sind, so dass die Interrupt-Latenzzeiten der nachgeschalteten Steuereinrichtung nicht in die Synchronisation eingehen.
Wie die vorstehende Würdigung des Standes der Technik aufzeigt, ist aus dem EP 1 894 113 Bl der Anmelder eine Vorrichtung zur Datenkommunikation und zur Kopplung von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines offenen Automatisierungssystems mit verteilter Steuerung bekannt. Weiterhin ist aus der EP 2 110754 B1 der Anmelder ein Verfahren und eine Vorrichtung zur automatischen und hochgenauen Synchronisation bekannt, bei der die Interrupt-Latenzzeiten der Steuereinrichtung nicht in die Synchronisation eingehen.
Die kontinuierliche voranschreitende Vernetzung der Produktion führt dazu, dass Maschinen mit immer mehr Sensoren ausgerüstet werden. Der Anstieg an Sensoren und Aktoren und dem daraus resultierenden Anstieg an Verkabelung führt jedoch zum Problem, dass die Wartung, Fehleranalyse und Installation von kabelgebundenen Sensoren immer komplizierter wird. Mit der Einführung von Industrie 4.0 kommt der Erfassung von Geräte- und Sensordaten und deren Übertragung auf eine Cloud Plattform eine zentrale Bedeutung zu. Um auch kryptographisch geschützte, in einem ersten Netzwerk übertragene Daten in ein weniger sicheres zweites Netzwerk zu übertragen und dort auswerten zu können, ist aus der DE 10 2015 200279 Al eine Vorrichtung zur Durchführung einer kryptographisch geschützten Kommunikation sowie ein Verfahren zur rückwirkungsfreien Erfassung von Daten, die zwischen Vorrichtungen in einem ersten Netzwerk kryptographisch geschützt übertragen werden und durch die Einwegübertragungseinrichtung in einem zweiten Netzwerk mitgehört werden, bekannt. Das Verfahren weist als Verfahrensschritte ein Aushandeln von mindestens einem kryptographischen Parameter zwischen den kommunizierenden Vorrichtungen im ersten Netzwerk zur Verwendung in einer nachfolgenden Kommunikation auf. Im nächsten Verfahrensschritt wird eine Übertrag ungs Struktur in mindestens einer der Vorrichtungen, in der zumindest teilweise die ausgehandelten kryptographischen Parameter enthalten sind, erzeugt und innerhalb des ersten Netzwerks übertragen. Im darauffolgenden Verfahrensschritt wird die Übertragungsdatenstruktur durch eine Einwegübertragungseinrichtung mitgehört und in das zweite Netzwerk übermittelt. In einem vorteilhaften Ausführungsbeispiel des Verfahrens wird die Übertragungsdatenstruktur durch einen konfigurierbaren kryptographischen Übertragungsschlüssel geschützt übertragen. Dies stellt insbesondere sicher, dass die kryptographischen Parameter ausschließlich von einem Berechtigten, mit dem der Übertragungsschlüssel vereinbart wurde, ausgelesen werden können. Die beim Gegenstand der DE 10 2015 200 279 Al vorgesehene Vorrichtung zur Durchführung einer kryptographisch geschützten Kommunikation umfasst eine Aushandlungseinheit, die derart aus gebildet ist, kryptographische Parameter zur Durchführung einer kryptographisch geschützten Kommunikation mit einem Kommunikationspartner auszuhandeln. Die Vorrichtung umfasst weiterhin eine Erzeugungseinheit, die derart ausgebildet ist, eine Übertragungsdatenstruktur zu erzeugen, in der zumindest teilweise die ausgehandelten kryptographischen Parameter enthalten sind, und diese in das erste Netzwerk zu übermitteln. Weiterhin kann die Vorrichtung eine Erzeugungseinrichtung aufweisen, welche einen konfigurierbaren kryptographischen Übertragungsschlüssel erzeugt und derart ausgebildet ist, die Übertragungsdatenstruktur durch den kryptographischen Übertragungsschlüssel geschützt in das erste Netzwerk auszugeben. Damit ist sichergestellt, dass nur Berechtigte die Übertragungsdatenstruktur auswerten und zur Entschlüsselung der im ersten Netzwerk übertragenen Daten verwenden können. Damit kann auch konfiguriert werden, wer welche Nachrichten auswerten kann. So können beispielsweise kryptographische Parameter für Steuerungsnachrichten durch einen ersten kryptographischen Übertragungsschlüssel verschlüsselt werden und beispielsweise kryptographische Parameter für die Verschlüsselung von Diagnosedaten durch einen zweiten Übertragungsschlüssel, verschlüsselt werden. Ist der erste Übertragungsschlüssel nur der Auswerteeinheit bekannt, so kann die erste Einwegübertragungseinheit zwar die Steuerung s nachrichten, nicht aber die Diagnosedaten entschlüsseln. Weiterhin kann eine Mithöreinheit vorgesehen werden, die derart ausgebildet ist, kryptographische Parameter zwischen Vorrichtungen in einem ersten Netz mitzuhören und eine Speichereinheit, die derart ausgebildet ist, die kryptographischen Parameter zu speichern und in ein zweites Netz zu übermitteln. Die Einwegübertragungseinrichtung kann eine Entschlüsselungseinheit aufweisen, die derart ausgebildet ist, aus dem ersten Netzwerk übertragene kryptographisch geschützte Daten mit Hilfe der kryptographischen Parameter zu entschlüsseln. Weiterhin kann die Entschlüsselungseinrichtung derart ausgebildet sein, dass nur erfolgreich kryptographisch geprüfte mitgehörte Daten in das zweite Netzwerk weitergeleitet werden.
Um auf Seiten einer Rahmenapp likation eine bessere Übersicht über ein Feldbus netzwerk und dessen Komponenten zu ermöglichen, ist aus der DE 10 2016 120 972 Al eine Rahmenapplikation für eine Gerätezugriffssoftware bekannt. Die Rahmenapplikation ist auf einem Host installierbar, wobei in die Rahmenapplikation mindestens ein Treiber einbindbar ist, der für einen Zugriff auf eine zugehörige Feldbuskomponente eines Feldbusnetzwerks ausgelegt ist. Die Rahmenapplikation weist zu jedem eingebundenen Treiber mindestens eine Standardschnittstelle auf, über die ein Datenaustausch zwischen dem Treiber und der Rahmenapplikation erfolgen kann. Die Rahmenapplikation weist zu zumindest einigen der eingebundenen Treiber zusätzlich zu der mindestens einen Standardschnittstelle eine oder mehrere proprietäre Schnittstellen auf, über die ein Datenaustausch zwischen dem jeweiligen Treiber und der Rahmenapplikation erfolgen kann, wobei Informationen zu Zusatzfunktionalitäten, die von dem Treiber oder einer zugehörigen Feldbuskomponente unterstützt werden, über zumindest eine der proprietären Schnittstellen von dem Treiber zur Rahmenapplikation übermittelbar sind. Zwischen der Rahmenapplikation und zumindest einigen der eingebundenen Treiber sind zusätzlich zur mindestens eine Standardschnittstelle eine oder mehrere proprietäre Schnittstellen vorgesehen. Beispielsweise ist das Zusammenführen von Informationen zu Zusatzfunktionalitäten auf Seiten der Rahmenapplikation insbesondere dann von Vorteil, wenn die Rahmenapplikation mit einer Cloud verbindbar ist. Die Informationen zu unterstützten Zusatzfunktionalitäten können beispielsweise zusammen mit anderen Daten in die Cloud hochgeladen werden, so dass von der Cloud aus eine Gesamtübersicht über das System verfügbar ist. Von der Cloud aus kann dann beispielsweise auch eine Freischaltung zusätzlicher Funktionalitäten erfolgen. Dadurch kann die zeitaufwändige Freischaltung von Zusatzfunktionalitäten vor Ort, also am Ort des Feldgeräts, durch eine Freischaltung von der Cloud aus ersetzt werden. Um die verschiedenen Komponenten des Feldbusnetzwerks korrekt ansprechen zu können, benötigt die Gerätezugriffssoftware Informationen über die Eigenschaften und Parameter der Feldgeräte, Gateways, Remote I/Os etc. des Feldbus netzwerks. Diese Informationen werden von den Herstellern der unterschiedlichen Geräte in der Regel in Form von Gerätebeschreibungsdateien oder Gerätetreibern zur Verfügung gestellt. Zur Gerätebeschreibung für den azyklischen Datenaustausch werden bei den Feldbusprotokollen Profibus-DP, Profibus-PA, Fieldbus Foundation und HART Gerätebeschreibungen gemäß den Standards DTM (Device Type Manager), DD (Device Description), EDD (Enhanced Device Description) sowie FDI Device Packages verwendet. Insbesondere bei den Standards EDD und DTM werden zusätzlich zu Geräteparametern, Gerätefunktionalität und Adressraumbelegung auch Grafikfeatures und grafische Benutzeroberflächen spezifiziert, die die Parametrierung und Konfigurierung des jeweiligen Feldgeräts erleichtern sollen. Zur Erzeugung dieser grafischen Oberflächen sind im Standard EDD spezielle Grafikbefehle vorgesehen, die nach Art einer Interpreter-Sprache abgearbeitet werden. Im Standard FDT/DTM werden die DTMs (Device Type Manager) in Form von dynamisch ladbaren Bibliotheken (DLLs) oder in Form von ausführbaren Dateien (Executables) zur Verfügung gestellt. Ein DTM umfasst auch die genannten Grafikfeatures. Die verschiedenen DTMs zu den verschiedenen Komponenten des Feldbusnetzwerks werden in eine gemeinsame FDT- Rahmenapplikation eingebunden, wobei FDT für „Field Device Tool“ steht. Dadurch wird eine gemeinsame Rahmenapplikation zur Verfügung gestellt, in die die DTMs zu verschiedenen Geräten und von unterschiedlichen Herstellern eingebunden werden können. Der FDT-Standard wird zunehmend durch den Standard FDI Device Packages ergänzt und später eventuell ersetzt. Neben den bisher diskutierten Feldbusprotokollen Profibus, Fieldbus Foundation und HART gewinnen die sogenannten Industrial Ethernet - Protokolle an Bedeutung, zu denen u.a. die Feldbusprotokolle EtherNet/IP, ProfiNet und EtherCAT gehören. Beim Feldbusprotokoll EtherNet/IP ist eine Gerätebeschreibungsdatei entsprechend dem Standard EDS (Electronic Data Sheet) zur Beschreibung sowohl des zyklischen als auch des azyklischen Datenaustauschs vorgesehen. Eine erste mögliche Zusatzfunktionalität, die gegen Bezahlung freigeschaltet werden kann, ist die Konnektivität zur Cloud, die auch als „Internet of Things“, abgekürzt loT, bezeichnet wird. Diese Funktionalität ermöglicht es, Daten von einem DTM aus über die FDT-Rahmenapplikation in die Cloud hochzuladen. Dort könne die Daten archiviert und mit anderen Daten verknüpft werden. Beispielsweise ist es möglich, Daten zur Durchflussmessung in die Cloud hochzuladen und als Basis für Nachbestellungen und Lagerhaltung zu verwenden. Die Nutzung der loT- Konnektivität wird auf Seiten des DTM freigeschaltet. Eine weitere freischaltbare Zusatzfunktionalität ist die Fähigkeit zur Durchführung von Gerätefunktionsprüfungen und Selbsttests.
Weiterhin ist aus der DE 10 2016 215 742 Al ein Gateway und ein Verfahren zur Anbindung eines Datenquellensystems an ein IT-System bekannt, wobei der Gateway eine echtzeitfähige Middleware und eine nicht -echtzeitfähige Middleware auf einem gemeinsamen Betriebssystem aufweist. Dabei wird auf der nicht -echtzeitfähigen Middleware eine Anwendung zum Kommunizieren über ein Netzwerkprotokoll, beispielsweise TCP/IP, OPC-UA oder http(s), ausgeführt und die nicht-echtzeitfähige Middleware umfasst ein Framework. Echtzeitfähig bedeutet dabei, dass einzelne Rechenschritte innerhalb definierter Zeitspannen abgeschlossen sind. In echtzeitfähigen Umgebungen kann garantiert werden, dass ein Rechenergebnis rechtzeitig vorliegt, so dass insbesondere in Industriemaschinen die Bewegungen unterschiedlicher Aggregate auch synchron ablaufen. Beim Gegenstand der DE 10 2016 215 742 Al werden Datenquellensysteme aufweisend wenigstens eine Datenquelle, wie z.B. eine Recheneinheit (z.B. speicherprogrammierbare Steuerung (SPS), numerischen Steuerung (NC) oder CNC-Steuerung (Computerized Numerical Control)) oder einen Sensor, insbesondere bereits existierende, auf besonders einfache Weise "internetfähig" gemacht. Es handelt sich dabei um einen skalierbaren Ansatz, um Bestandsmaschinen ohne Programmierung nur mittels webbasierter Konfiguration nachzurüsten. Die Lösung bietet eine modulare Erweiterbarkeit um weitere Sensoren, Logiken und Provider und eine automatische Bereitstellung der dazugehörigen webbasierten Oberflächen. Vorhandene SPS des Datenquellensystems können über das Gateway als zusätzliche Komponente an das Datenquellensystem angebunden wird. Dies ermöglicht eine einfache nachträgliche Anbindung, ohne ein bereits vorhandenes Datenquellensystem zu verändern. SPS- Funktionalitäten müssen in diesem Fall nicht auf dem Gateway vorhanden sein, können jedoch zusätzlich vorgesehen sein, um etwaige weitere Komponenten für das Datenquellensystem direkt an den Gateway anzubinden. Bei gänzlich neu zu installierenden Datenquellensystemen kann das Gateway zudem von Anfang an als SPS verwendet werden, so dass hier initial eine Anbindung des Datenquellensystems an das IT-System bereitgestellt werden kann.
Weiterhin ist für ein System on Chip SOC aus der US 8,775,757 B2 eine Vertrauenszonenunterstützung mit einem Sicherheitsenklavenprozessor SEP bekannt. Das System on Chip SOC implementiert einen Sicherheitsenklavenprozessor SEP. Der SEP kann einen Prozessor und ein oder mehrere Sicherheitsperipheriegeräte enthalten. Der SEP kann vom Rest des System on Chip SOC (z. B. einer oder mehreren zentralen Verarbeitungseinheiten (CPUs) im SOC oder Anwendungsprozessoren (APs) im SOC) isoliert sein. Der Zugriff auf den Sicherheitsenklavenprozessor SEP kann durch Hardware streng kontrolliert werden. Beispielsweise wird ein Mechanismus beschrieben, bei dem die zentralen Verarbeitungseinheiten CPUs oder die Anwendungsprozessoren (APs) nur auf einen Postfach im Sicherheitsenklavenprozessor SEP zugreifen können. Die CPU/ AP kann eine Nachricht an die Mailbox schreiben, die der Sicherheitsenklavenprozessor SEP lesen und darauf antworten kann. Der SEP kann in einigen Ausführungsformen eines oder mehrere der Komponenten umfassen: sichere Schlüsselverwaltung unter Verwendung von Wrapping-Schlüsseln, SEP-Steuerung des Bootens und/oder Energieverwaltung und separate Vertrauenszonen im Speicher.
In Weiterbildung hierzu ist aus der US 9,747,435 B2 eine Vielzahl verschiedener
Ausführungsformen zur Authentifizierung und Steuern von Verschlüsselungsschlüsseln bekannt. Allgemein gesagt kann eine Vorrichtung eine Sicherheitsschaltung, einen Prozessor und eine Schnittstellensteuerung umfassen. Die Sicherheitsschaltung kann konfiguriert sein, um ein Schlüsselwort zu erzeugen. Der Prozessor kann konfiguriert sein, um eine oder mehrere Richtlinien zu bestimmen, die auf die Verwendung des Schlüsselworts anzuwenden sind, und um einen Richtlinienwert zu erzeugen. Der Richtlinienwert kann ein oder mehrere Datenbits enthalten, die die bestimmte eine oder mehreren Richtlinien angeben. Der Schnittstellencontroller kann so konfiguriert sein, dass er eine Nachricht generiert, die das Schlüsselwort und den Richtlinienwert enthält. Der Schnittstellencontroller kann auch dazu konfiguriert sein: Senden Sie die Nachricht. In einer anderen Ausführungsform können die eine oder mehreren Richtlinien einen Hinweis auf eine oder mehrere Funktionseinheiten einer Vielzahl von Funktionseinheiten enthalten, denen es erlaubt ist, das Schlüsselwort zu verwenden. In einer weiteren Ausführungsform können die eine oder mehreren Richtlinien eine zulässige Größe für das Schlüsselwort enthalten. In einer weiteren Ausführungsform können die eine oder mehreren Richtlinien eine Angabe enthalten, dass das Schlüsselwort zum Verschlüsseln von Daten verwendet werden darf, und eine Angabe, dass das Schlüsselwort zum Entschlüsseln von Daten verwendet werden darf. In einer anderen Ausführungsform umfassen die eine oder mehreren Richtlinien eine Angabe einer Zeitdauer, für die das Schlüsselwort verwendet werden kann. In einer Ausführungsform kann die Sicherheitsschaltung ferner konfiguriert sein, um das Schlüsselwort zu verschlüsseln. In einer weiteren Ausführungsform können die eine oder mehreren Richtlinien einen Hinweis auf eine oder mehrere zusätzliche Operationen enthalten, die erforderlich sind, um an der Nachricht durchgeführt zu werden, um das Schlüsselwort zu entschlüsseln.
Moderne Prozessorarchitekturen verfügen heutzutage über eine Secure Enclave, die in Abhängigkeit des Produktlebenszyklus sicherheitsrelevante Aufgaben übernimmt. Beispiele für Produktlebenszyklen sind: Während der Herstellung des Chips muss es möglich sein den Chip ausgiebig zu testen. Wenn der Chip das Werk verlässt, wird der Lebenszyklus "weiter" geschaltet und die Schnittstellen zum Testen des Chipinneren abgeschaltet. Wenn das fertigproduzierte Endgerät vor Ort in einer Anlage installiert wird, sind die Schnittstellen, die für die Entwicklung der Gerätesoftware notwendig sind, abgeschaltet. Durch die Software, die auf dem Automatisierungsgerät läuft, werden weitere Sicherheitsfunktionen für die Endanwendung nutzbar, wie z.B. sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, etc.
Echtzeitethernet, wie in der Automatisierung angewandt, unterscheidet sich vom konventionellen Ethernet anderer Industrien. Aus diesem Grund sind neue Konzepte zu erarbeiten, die man in klassischen Prozessorarchitekturen nicht findet.
Unter Echtzeitethernet in der Automatisierungstechnik versteht man eine zyklische Datenkommunikation zwischen Geräten. In Zukunft für Geräte mit Übertragungsraten von 1 Gbps liegen die Zykluszeiten bis im Mikrosekundenbereich. Die Daten werden nicht mehr im Klartext, sondern verschlüsselt übertragen.
In diesem Zusammenhang ist die Kryptographiebeschleunigung von Bedeutung. Ein Edge-Netzwerk kann als eine beliebige Art von Netzwerk realisiert sein, das Edge- Datenverarbeitungs- und/oder -Speicherungsressourcen bereitstellt, die sich in der Nähe von Funkzugangsnetz- bzw. RAN -fähigen Endpunktvorrichtungen (z.B. mobilen Datenverarbeitungsvorrichtungen, Vorrichtungen des Internet der Dinge (loT), intelligenten Vorrichtungen usw.) befinden. Aus der DE 102019 130 686 Al ist ein Verfahren und eine Vorrichtung zur Bereitstellung dynamischer Auswahl von Edge- und lokalen Beschleunigerressourcen bekannt, wobei die Vorrichtung Schaltkreise zum Identifizieren einer Funktion einer Anwendung, die zu beschleunigen ist, Bestimmen einer oder mehrerer Eigenschaften der am Rand eines Netzwerks, an dem sich die Vorrichtung befindet, verfügbaren Beschleunigerressource und Bestimmen einer oder mehrerer Eigenschaften einer in der Vorrichtung verfügbaren Beschleunigerressource aufweist. Die sogenannten Edge Devices, in gewisser Weise vergleichbar zu Industrie PCs, erweitern die Funktionalität, um lokale Beschleuniger für diverse Aufgaben wie künstliche Intelligenz, Kryptografie, (FPGA) etc. einzubinden. Die Erweiterung über E/A-Karten erfolgt beispielsweise über PCIe (Peripheral Component Interconnect Express, meist PCIe abgekürzt, ist ein Bus-Standard zur Verbindung von Peripheriegeräten mit dem Chipsatz eines Prozessors) basierte Steckkartenplätze. Die Beschleunigervorrichtung ist somit eine Art Geräteerweiterung vergleichbar wie man über Steckplätze im Motherboard Desktop PCs erweitert hat, indem man z.B. eine Grafikkarte oder Netzwerkkarte eingesteckt hat. Windows als Betriebssystem war in der Lage die Karte zu erkennen, den Treiber zu installieren und für die Anwendung nutzbar zu machen.
Weiterhin ist aus der DE 603 14 060 T2 ein Verfahren und eine zur Schlüsselverwaltung für gesicherte Datenübertragung bekannt. Das gesicherte Datenübertragungssystem weist auf:
- einen sicheren Kanal, der über wenigstens einen Datenkanal eingerichtet wird,
- einen Host-Prozessor, der an ein Netzwerk angeschlossen ist, um Benutzeranwendungen zu kommunizieren, die über andere an das Netzwerk angeschlossene Prozessoren laufen,
- ein mit dem Host-Prozessor verbundenes Hauptsicherheitsmodul zum Senden von verschlüsselten privaten Schlüsseln eines asymmetrischen Verschlüsselungsschemas mit privaten und öffentlichen Schlüsseln, bei dem die privaten Schlüssel unter Verwendung wenigstens eines Schlüsselverschlüsselungsschlüssels verschlüsselt worden sind, wobei das Hauptsicherheitsmodul ferner dafür ausgelegt ist, die verschlüsselten privaten Schlüssel über den Datenkanal zu senden und den Schlüsselverschlüsselungsschlüssel über den sicheren Kanal zu senden, und wobei das Hauptsicherheitsmodul ein Sicherheitsmodul umfasst, das dafür ausgelegt ist, Schlüsselerzeugungsoperationen und einen zugeordneten Datenspeicher zu steuern.
Insbesondere ist das gesicherte Datenübertragungssystem gemäß der DE 603 14 060 T2 gekennzeichnet durch:
- wenigstens ein mit dem Host-Prozessor verbundenes Satellitenmodul zum Empfangen des wenigstens einen Schlüsselverschlüsselungsschlüssels nach der Übertragung über den sicheren Kanal, zum Empfangen der verschlüsselten privaten Schlüssel nach der Übertragung über den Datenkanal, zum Entschlüsseln der privaten Schlüssel unter Verwendung des empfangenen Schlüsselverschlüsselungsschlüssels und zum Ver- oder Entschlüsseln von Daten unter Verwendung der entschlüsselten privaten Schlüssel, wobei das Satellitensicherheitsmodul einen Kryptographiebeschleuniger umfasst, der einen Schlüssel-Manager Anfangs -Parser-Einheiten (Initial Parsing Units - IPUs), Chiffriermaschinen und einen nichtflüchtigen Datenspeicher, EEPROM, aufweist.
Weiterhin ist das gesicherte Datenübertragungssystem gemäß der DE 603 14060 T2 dadurch gekennzeichnet, dass der sichere Kanal durch den Host-Prozessor eingerichtet wird und dafür ausgelegt ist, dazu verwendet zu werden, das wenigstens eine Satellitensicherheitsmodul zu initialisieren und zu steuern und die sichere Übertragung des Schlüsselverschlüsselungsschlüssels und von Management-Informationen zu erleichtern. Der Kryptographiebeschleuniger des gesicherten Datenübertragungssystem gemäß der DE 603 14060 T2 umfasst eine oder mehrere Anfangs -Parser-Einheiten (IPU -Initial Parsing Unit), Chiffriermaschinen und einen Schlüssel-Manager. Die IPUs parsen (analysieren) Sicherheitsassoziationsdaten aus den verschlüsselten/unverschlüsselten Paketen, um die verschlüsselten Sicherheitsassoziationen zu entschlüsseln. Die Chiffriermaschinen sind Prozessoren, welche die verschlüsselten Pakete entschlüsseln und/oder die unverschlüsselten Paket verschlüsseln. Bei dieser Ausführungsform sind die Chiffriermaschinen spezifische Prozessoren, welche die entschlüsselten Sicherheitsassoziationen von den Initial Parsing Unit IPUs zum Ver- oder Entschlüsseln von Paketen verwenden. Der Schlüssel-Manager verwaltet die Schlüsselverschlüsselungsschlüssel KEKs, die zum Entschlüsseln der Sicherheitsassoziationen verwendet werden. Der Kryptographiebeschleuniger kann einen auf dem Chip befindlichen Speicher für den Cache bereitstellen, und zwar jeweils einen für jeden MCR-Typ (z.B. 96 Bytes für MCR1 und 648 Bytes für MCR2, genug für den AES-256Bit-Schlüssel-IPsec-Kontext oder den RSA-2048Bit-Privat-Schlüssel-Kontext). Der Kryptographiebeschleuniger kann einen zusätzlichen Befehlscode zum Laden und Entschlüsseln eines Befehlskontextes aufweisen. Der zu verwendende Cache und KEK würden durch das MCR bestimmt werden, über das der Befehl ausgegeben wurde. Ein in einem Cache gespeicherter Befehlskontext würde unter Verwendung eines Paket- Deskriptors mit einem Null-Befehlskontextzeiger aufgerufen werden. Weiterhin ist aus der US 11,070,375 B2 eine Vorrichtung und ein Verfahren zur Handhabung der Schlüsselverschlüsselung bekannt. Die Vorrichtung umfasst einen Verschlüsselungsschlüsselgenerator zum Erzeugen eines Medienverschlüsselungsschlüssels zum Verschlüsseln von Daten in einer Anzahl von Speicherkomponenten, wobei der Verschlüsselungsschlüsselgenerator so konfiguriert ist, dass er den Medienverschlüsselungsschlüssel umschließt, um einen verschlüsselten Medienverschlüsselungsschlüssel zu erzeugen. Der verschlüsselte Medienverschlüsselungsschlüssel wird in einem nichtflüchtigen Speicher gespeichert. Die Vorrichtung umfasst Firmware mit Anweisungen zum Überführen der Vorrichtung in und aus einem sicheren Zustand unter Verwendung des verschlüsselten Medienverschlüsselungsschlüssels. Die aus der US 11,070,375 B2 bekannte Lösung beschreibt im weitesten Sinne eine Art Inline Encryption für Speicher. Es geht darum Daten oder Programmcode verschlüsselt im Speichermedium abzulegen, d.h. beim Schreiben in den Speicher werden die Daten verschlüsselt und beim Lesen aus dem Speicher werden die Daten entschlüsselt. Primär geht es um die Anwendung von Speicherchips. Die Speicherchips werden z.B. an einen Kommunikationsprozessor angeschlossen. Damit soll ein Auslesen der Speicherinhalte durch Dritte und somit eine Freigabe von Geheimnissen verhindert werden.
Schließlich ist aus der DE 102017 215 331 Al ein kostengünstiger Kryptographiebeschleuniger bekannt. Das System weist auf:
- eine zentrale Recheneinheit CPU;
- einen Speicher, der Befehle speichert, die bei Ausführung durch die CPU die CPU veranlassen, Operationen auszuführen, mit: Erhalten von kryptografischen Daten, wobei die kryptografischen Daten einen speziellen kryptografischen Prozess kennzeichnen, der an den kryptografischen Daten auszuführen ist;
- Ausführen einer ersten kryptografischen Operation an den kryptografischen Daten gemäß dem kryptografischen Prozess;
- Senden der kryptografischen Daten zu einem Hardware -Beschleuniger; und Empfangen, aus dem Hardware-Beschleuniger, von kryptografischen Daten, die von dem Hardware-Beschleuniger unter Anwendung einer zweiten kryptografischen Operation gemäß dem kryptografischen Prozess, der sich von der ersten kryptografischen Operation unterscheidet, transformiert sind.
Der Kryptographiebeschleuniger, weist auf:
- eine Schnittstelle, die ausgebildet ist, kryptografische Daten zu empfangen, wobei die kryptografischen Daten einen speziellen kryptografischen Prozess kennzeichnen, der an den kryptografischen Daten auszuführen ist;
- eine Transformationslogik, die ausgebildet ist, eine kryptografische Operation an den kryptografischen Daten gemäß dem kryptografischen Prozess auszuführen, wobei die Transformationslogik eine Logik zur Ausführung von kryptografischen Operationen für mehrere unterschiedliche kryptografische Prozesse aufweist; und
- ein Zustandsregister, das ausgebildet ist, ein Ergebnis der kryptografischen Operation zu speichern.
Die sichere Kommunikation zwischen Endgeräten in der Automatisierungstechnik wird sich in Zukunft von anderen Industrien weiter absondern. Die Basis eine sichere Kommunikation aufzubauen legt die Secure Enclave. Um ein intelligentes Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, insbesondere Automatisierungsgeräte mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps zu realisieren, ist somit eine Weiterentwicklung der aus dem Stand der Technik bekannten Lösungskonzepte erforderlich.
Um ein Automatisierungsgerät mit einem Modul zur Netzwerk -Analyse und einem Modul zur Cloud-Anbindung derart auszugestalten, dass auf ein dediziertes Gateway verzichtet werden kann, ist aus der DE 102018 008 674 Al der Anmelderin das Automatisierungsgerät derart ausgestaltet, dass eine Analyse- und Cloud-Einheit als eigenständiges Modul in einem AS IC des Automatisierungsgeräts integriert ist und/oder dass ein Ethernet Netzwerk-Controller mit einer Schnittstelle zum verlustfreien Einlesen aller Empfangsdaten des Netzwerkes an der geräteintemen Seite von Ethernet- Übertragern aller vorhandenen Ethernet Ports mit der Analyse- und Cloud-Einheit verbunden ist. Alternativ ist eine Analyse- und Cloud-Einheit als eigenständiges Modul in dem Automatisierungsgerät integriert und/oder dass ein Ethernet Netzwerk-Controller mit einer Schnittstelle in Form eines UART-, SPI-, SDIO-, MAC-, PCIe-, Dual-Port- Memory, FIFO oder Vergleichbarem zum Austauschen eines Ethernet-Frames mit dem Automatisierungsgerät und/oder dem internen Ethernet Switch des Netzwerk-Controllers ausgestaltet ist.
Um ein Gerät mit flexibler Kommunikations- und Steuerungsstruktur und ein Verfahren hierzu derart auszugestalten, dass eine Austauschbarkeit von Teilen des Geräts ermöglicht wird ist aus der DE 10 2006 019 451 Al der Anmelderin ein Gerät mit flexibler Kommunikations- und Steuerungsstruktur bekannt, welches zur Kopplung mit anderen Geräten oder einer übergeordneten Steuereinrichtung eines Automatisierungssystems über einen seriellen Datenbus aufweist: mindestens zwei oder mehrere Kommunikationsschnittstellen und mindestens eine Speicherprogrammierbare Steuerung, so dass die Speicherprogrammierbare Steuerung als austauschbare Einheit ausgestaltet ist und die Daten völlig transparent und/oder über die interne Speicherprogrammierbare Steuerung weiterverarbeitet zwischen den Kommunikationsschnittstellen übertragen werden. Bei dem in der DE 10 2006 019 451 Al der Anmelderin beschriebenen Verfahren zur Konfiguration eines Geräts mit zwei oder mehreren Kommunikationsschnittstellen und einer Speicherprogrammierbaren Steuerung, wird zur Kopplung von untereinander über einen seriellen Datenbus kommunizierenden Geräten eines Automatisierungssystems, die austauschbare Kommunikationsschnittstelle um eine SPS -Funktion erweitert und ist diese in den Kommunikationspfad eingebunden und arbeitet völlig transparent, sowohl für das Gerät als auch für eine übergeordnete Steuereinrichtung
Weiterhin ist aus der EP 0 982 641 Bl eine Busanschaltung mit einem in einem Baustein zusammengefassten Speicherbereich, einem Kommunikationsmodul sowie einer Funktionseinheit mit einem eigenen Programmspeicherraum bekannt, die beide auf denselben Speicherbereich zugreifen, wobei im Speicherbereich Blöcke variabler Größe bildbar sind. Bei zunehmender Größe des ersten Block nimmt die Größe des zweiten Blocks ab und umgekehrt, wobei in dem größenveränderlichen zweiten Block Kommunikationspuffer einrichtbar sind. Im Einzelnen ist der erste Block durch eine Umschaltung in den Programmspeicherraum der Funktionseinheit einblendbar. Zur Ankopplung an die Busphysik ist eine Physik-Unit mit einem asynchronen Interface und einer synchronen Schnittstelle vorgesehen.
Um ein Kommunikationsmodul für ein modular aufgebautes Automatisierungssystem anzugeben, welches die zentrale Steuereinheit des Automatisierungssystems entlastet und insbesondere dafür geeignet ist, ein Anwenderprogramm direkt von der an das Kommunikationsmodul angeschlossen Zentraleinheit in das Kommunikationsmodul zu übertragen und zu programmieren, umfasst das aus der DE 10 2009 008 957 Al bekannte Kommunikationsmodul eine vorzugsweise als Mikroprozessor ausgeführte Verarbeitungseinheit, eine damit zusammenwirkende nullspannungssichere Speichereinheit zur Ablage eines Anwenderprogramms und wenigstens zwei voneinander unabhängige, konfigurierbare, galvanisch getrennte serielle Schnittstellen. Die seriellen Schnittstellen sind durch die in der Speichereinheit abgelegte Anwenderprogramme konfigurierbar und dafür vorgesehen, Funktionen der Schnittstellen einer mit dem Kommunikationsmodul verbundenen zentralen Steuereinheit mit zu übernehmen, wenn diese nicht ausreichen.
Schließlich ist aus der DE 10 2004 035 843 ein Netzwerkprozessor mit einer Mehrzahl von programmierbaren Prozessorelementen bekannt, bei dem
- jedes Prozessorelement der Mehrzahl von Prozessorelementen zum Bereitstellen von Kommunikationsnetzwerkprotokoll-Grundfunktionen eingerichtet ist;
- ein erster Teil der Mehrzahl von Prozessorelementen als Kommunikationsnetzwerk - Prozessorelemente eingerichtet sind; und
- ein zweiter Teil der Mehrzahl von Prozessorelementen als Schnittstellenprozessorelemente eingerichtet ist, die eingerichtet sind, gemäß einem Kommunikationsprotokoll für den Netzwerkprozessor eine Ausgangskommunikationsschnittstelle und/oder eine Eingangskommunikationsschnittstelle bereitzustellen.
Der Erfindung liegt die Aufgabe zugrunde, ausgehend von den aus der EP 1 894 113 Bl und der EP 2 HO 754 Bl der Anmelderin bekannten Lösungen eine Vorrichtung und ein Verfahren weiterzuentwickeln, welches alle marktrelevanten Kommunikationsprotokolle der Automatisierungstechnik unterstützt und eine Vorverarbeitung, Sicherstellung und Weiterleitung hochpriorer Echtzeitdaten im Bereich bis zu 1 Gbps ermöglicht.
Diese Aufgabe wird, gemäß Patentanspruch 1 , durch ein Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit gelöst, mit einem Kommunikationsprozessor, welcher aufweist:
- mindestens einen frei programmierbaren Kommunikationscontroller, mindestens einen frei programmierbaren Datencontroller und mindestens einen interaktive Dual-Port-RAM Speicher, wobei der Kommunikationsprozessor mit einer übergeordneten Steuereinrichtung über eine Hostschnittstelle zusammenarbeitet, wodurch die übergeordnete Steuereinrichtung austauschbar ist,
- mindestens eine im Kommunikationscontroller integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen,
- mindestens eine im Datencontroller integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger und mit einer im Gerät angeordneten und über Signalleitungen zur Übertragung eines Identifizierungscodes, Steuerdaten, Empfangsdaten und Sendedaten mit dem im Kommunikationsprozessor angeordneten Kommunikationscontroller verbundene, austauschbare physikalische Schnittstelle, derart, dass eine Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps realisiert ist.
Weiterhin wird diese Aufgabe, gemäß Patentanspruch 7, durch ein Verfahren zur Konfiguration eines Geräts mit flexibler Kommunikations Struktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, welches in einem Kommunikationsprozessor angeordnete Kommunikationscontroller, Datencontroller, Dual-Port-RAM Speicher, Secure Enclave und Hostschnittstelle aufweist, gelöst, bei dem:
- der Kommunikationscontroller und der Datencontroller frei programmierbar sind,
- Kommunikationscontroller und Datencontroller mit einer übergeordneten Steuereinrichtung über die Hostschnittstelle Zusammenarbeiten, wodurch die übergeordnete Steuereinrichtung austauschbar ist,
- zur Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps mindestens eine im Kommunikationscontroller integrierte flexible Kommunikations Struktur, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen vorgesehen ist,
- zur Vorverarbeitung, Sicherstellung und Weiterleitung hochpriorer Echtzeitdaten mindestens eine im Datencontroller integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen vorgesehen ist,
- eine im Gerät mit dem Kommunikationscontroller verbundene, austauschbare physikalische Schnittstelle vorgesehen ist und
- die Secure Enclave in Abhängigkeit eines jeweiligen Produktlebenszyklus sicherheitsrelevante Aufgaben übernimmt und weitere Sicherheitsfunktionen für die Endanwendung, umfassend sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, nutzbar macht.
Das erfmdungsgemäße Gerät, insbesondere ein Automatisierungsgerät unterstützt durch die Multiprotokollfähigkeit des Systems und Aufteilung der Arbeitslast auf überraschend einfache Art und Weise alle marktrelevanten Kommunikationsprotokolle der
Auto mat is ier ung ste chnik .
In Weiterbildung der Erfindung weist, gemäß Patentanspruch 2, der Datencontroller auf:
- ein anwendungsspezifischer Prozessorkern für die dedizierte Verarbeitung hochpriorer Echtzeitdaten,
- einen eng gekoppelten Speicher mit niedriger Latenz aufgeteilt in Programmspeicher und Datenspeicher,
- den Kryptographiebeschleuniger für Ha shfunktionen, Authentisierung und Ver- und Entschlüsselung von Daten und
- einen Direct-Memory- Access Controller für die interaktive Datenübertragung zur Entlastung des Prozessorkerns. Diese Weiterbildung der Erfindung weist den Vorteil auf, dass sich eine Performanzoptimierung aus der Größe und Geschwindigkeit, optimiert für die jeweilige Anwendung ergibt. Dadurch, dass bestenfalls Single-Cycle Zugriffe ermöglicht werden wird die Latenz geringgehalten, die Antwort des Systems wird dadurch deterministisch und die Echtzeitfähigkeit des Gesamtsystems verbessert.
Bei einer bevorzugten Ausgestaltung der Erfindung weist, gemäß Patentanspruch 3, der Kommunikationsprozessor eine Secure Enclave, auch sichere Enklave genannt, mit einem Secure Enclave -Prozess or und einen an diesen über einen Bus angeschlossenen sicheren nicht-flüchtigen Speicher auf, wobei die Secure Enclave in Abhängigkeit eines jeweiligen Produktlebenszyklus sicherheitsrelevante Aufgaben übernimmt und weitere Sicherheitsfunktionen für die Endanwendung, umfassend sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, nutzbar macht.
Diese Ausgestaltung der Erfindung weist den Vorteil auf, dass auf den sicheren nichtflüchtigen Speicher nur die Secure Enclave über den Bus auf ihn zugreifen kann. Alle für die Verschlüsselung von Benutzerdaten eingesetzten Schlüssel haben ihren Ursprung in einer Entropie, die im nichtflüchtigen Speicher der Secure Enclave gespeichert ist. Die Basis einer sicheren Kommunikation legt die Secure Enclave durch die Verwaltung geheimer Schlüssel. Mithilfe dieser Schlüssel und spezieller Zertifikate wird ein Sitzungsschlüssel zwischen Geräten ausgehandelt, auf dessen Basis die zyklischen Daten ver- und entschlüsselt werden. Konventionell ist der Sitzungsschlüssel solange die Verbindung aktiv ist gültig. In der Automatisierung, im zyklischen Kontext, wird die Verbindung solange die Anlage läuft aufrechterhalten. Deshalb ist es erfindungsgemäß möglich, während einer aktiven Verbindung die ausgehandelten Sitzungsschlüssel zu erneuern.
Weitere Vorteile und Einzelheiten lassen sich der nachfolgenden Beschreibung von bevorzugten Ausführungsformen der Erfindung unter Bezugnahme auf die Zeichnungen entnehmen. In der Zeichnung zeigt:
Fig. 1 das Blockschaltbild eines Kommunikationsprozessors mit frei programmierbaren Kommunikations-Controller auf der Basis der EP 1 894 113 B 1 und der EP 2 110 754 B Ider Anmelder,
Fig. 2 das Blockschaltbild des erfindungsgemäßen Datencontrollers und Fig. 3 den Datenfluss im erfindungsgemäßen Gerät mit flexibler Kommunikationsstruktur nach Fig. 1 im Detail.
Die in Fig. 1 dargestellte erfindungsgemäße Lösung des Geräts mit flexibler Kommunikationsstruktur, insbesondere Automatisierungsgerät ist eine Weiterentwicklung der in den EP 1 894 113 Bl und der EP 2 HO 754 Bl der Anmelder beschriebenen Verfahren und Vorrichtungen zur Datenkommunikation, zur Kopplung von untereinander über einen seriellen Datenbus kommunizierenden Busteilnehmern eines offenen Automatisierungssystems mit verteilter Steuerung. Dabei werden vorliegend die gleichen Bezugszeichen benutzt, so dass - durch die Bezugnahme hierauf - die detaillierte Beschreibung der Komponenten und deren Verbindung miteinander zum Inhalt der Beschreibung der erfindungsgemäßen Weiterentwicklung in dieser Patentanmeldung erklärt werden kann.
Ein intelligentes System ist eine Maschine mit einem eingebetteten, mit dem Internet verbundenen Computer, der in der Lage ist, Daten zu sammeln und zu analysieren und mit anderen Systemen zu kommunizieren. Die nächste Evolutionsstufe ist die Anbindung von Automatisierungsgeräten an eine sogenannte übergeordnete Cloud. Diagnosedaten, die das Gerät über sich selbst oder von seiner Umgebung aufnimmt, können beispielsweise für Themen wie vorausschauende Wartung, etc. genutzt werden. Eine Repräsentation des Gerätes als digitaler Zwilling in der Cloud ermöglicht beispielsweise Prozesse in Fertigungsanlagen zu optimieren, etc. Die Cloud kann On-Premise oder Remote sein. Anlagenbetreiber können auch auf eine Cloud vor Ort in der Anlage ohne Internetverbindung zurückgreifen. Beim Automatisierungsgerät AG der vorliegenden Erfindung handelt es sich um ein im technischen Sprachgebrauch heutzutage als intelligentes Gerät bzw. Smart Device bezeichnetes Gerät.
Die in den EP 1 894 113 Bl und der EP 2 110 754 Bl der Anmelder benutzte Terminologie „frei programmierbar“ soll eine Abgrenzung zu Geräten mit einem fest vorgegeben Umfang der Programmierung durch eine Funktion oder ein Skript ermöglichen. Mithilfe einer Programmiersprache lassen sich anwendungsspezifische Aufgaben und Funktion frei umsetzen und implementieren.
Es gibt beispielsweise Ethernet MACs (Die Abkürzung MAC steht für Media Access Controller und bezeichnet die eindeutige Identifikation und Zugriffssteuerung von elektronischen Medien innerhalb eines Netzwerkes (Ethernet, Token Ring, Bluetooth oder WLAN)). Die MAC-Adresse bezeichnet dabei die spezifische physische Adresse für den Netzwerkadapter mit festem Funktionsumfang, die umgangssprachlich über Register programmiert werden. Im Endeffekt handelt es sich primär um eine Konfiguration. Damit lässt sich keine Multiprotokollunterstützung umsetzen. Bei der erfindungsgemäßen Lösung sind MACs (Media Access Controller) im Kommunikationscontroller KC programmierbar, um z.B. Ausprägungen unterschiedlicher Echtzeit-Ethernetverfahren zu unterstützen, indem eine andere Software aufgespielt wird.
Das in Fig.l dargestellte Blockschaltbild zeigt ein Gerät im folgenden Automatisierungsgerät AG genannt mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit. Das Automatisierungsgerät AG enthält einen Kommunikationsprozessor KP, welcher aufweist:
- mindestens einen frei programmierbaren Kommunikationscontroller KC, mindestens einen frei programmierbaren Datencontroller DC und mindestens einen interaktiven Dual-Port-RAM Speicher DPM, wobei der Kommunikationsprozessor (KP) mit einer übergeordneten Steuereinrichtung über eine Hostschnittstelle HS zusammenarbeitet, wodurch die übergeordnete Steuereinrichtung austauschbar ist,
- mindestens eine im Kommunikationscontroller KC integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen PK (RPA, TPA, PEA, siehe EP 1 894 113 Bl und der EP 2 110754 Bl der Anmelderin und nachfolgend als gMAC: RPU, TPU, bezeichnet und
- mindestens eine im Datencontroller DC integrierte flexible Datenverarbeitungsstruktur mit Kryp to graphiebeschleuniger KB.
Weiterhin enthält das Automatisierung sgerät AG eine über Signalleitungen bzw. Signalleitungsgruppen zur Übertragung eines Identifizierungscodes ID, Steuerdaten ST, Empfangsdaten ED und Sendedaten SD mit dem im Kommunikationsprozessor KP angeordneten Kommunikationscontroller KC verbundene, austauschbare physikalische Schnittstelle PYS, so dass eine Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps realisiert ist.
Das in Fig. 2 dargestellte Blockschaltbild zeigt einen Datencontroller DC, welcher aufweist:
- mindestens einen anwendungsabhängig programmierbaren Prozessorkern PK für die dedizierte Verarbeitung hochpriorer Echtzeitdaten,
- einen eng gekoppelten Speicher mit niedriger Latenz aufgeteilt in Programmspeicher PS und Datenspeicher DS,
- den Kryptographiebeschleuniger KB für Hashfunktionen, Authentisierung und Ver- und Entschlüsselung von Daten und
- einen Direct-Memory- Access DMA Controller für die interaktive Datenübertragung zur Entlastung des Prozessorkerns PK.
Viele moderne Prozessorarchitekturen sind heutzutage sogenannte heterogene Mehrkernprozessorsysteme. Die CPU (Die Abkürzung CPU steht für Central Processing Unit) als Hauptprozessor ist die Zentraleinheit, die mit verteilten Systemen (auch Subsysteme genannt) interagiert. Als Abgrenzung zur CPU werden im Folgenden die Prozessorkerne PK der Subsysteme als anwendungsspezifische Prozessorkerne PK bezeichnet.
In der Mikrorechentechnik besteht der Prozessorkern in erster Linie aus dem Steuerwerk, dem Rechenwerk, sowie den Registern. Das Rechenwerk wird auch als arithmetisch - logische Einheit (Englisch für Arithmetic and Logical Unit, daher abgekürzt ALU) bezeichnet.
Die anwendungsspezifischen Prozessorkerne PK sind mit eng gekoppelten Speicher (Englisch für Tightly-Coupled Memory, daher abgekürzt TCM) für die echtzeitfähige Ausführung von Programmcode ausgestattet. Der für „eng gekoppelter“ Speicher gebräuchliche Fachausdruck ist TCM (Tightly- Coupled Memory), der sich durch die eingesetzte Architektur des Prozessorkerns PK definiert. Im Endeffekt geht es um eine Performanzoptimierung, aufgrund physikalischer Grenzen, die sich aus dem Halbleiterprozess und der Systemarchitektur des Chips ergeben. Der Prozessorkern PK besitzt u.a. ein Systeminterface und ein dediziertes TCM- Interface, unterteilt in einen Datenbus und Programmbus. Physikalisch gesehen, im Layout der Chips, werden die TMCs in der Nähe des Prozessorkerns PK platziert und direkt angeschlossen. Dafür kommen High-Speed Speicherzellen zum Einsatz, die für gewöhnlich eine höhere Verlustleistung aufweisen. Die Balance zwischen Größe und Geschwindigkeit, optimiert für die jeweilige Anwendung, definiert die Performanz. Das Designziel ist die Latenz so gering wie möglich zu halten, bestenfalls Single-Cycle Zugriffe zu ermöglichen. Die Antwort des Systems wird dadurch deterministisch und die Echtzeitfähigkeit des Gesamtsystems verbessert. Bei harter Echtzeit wird das Überschreiten einer fest vorgegeben Antwortzeit von den anwendungsabhängigen programmierbaren Prozessorkernen PK als ein Versagen gewertet.
Im Vergleich zu traditionellen Speicherzugriffen im System spricht man deshalb von einem eng gekoppelten Speicher mit niedriger Latenz. Greift einer der Datencontroller DC über den Systembus in den Systemspeicher (außerhalb des DCs), ist mit höheren Latenzen zu rechnen, die von mehrerer Faktoren abhängen, z.B. die Anzahl der Busteilnehmer, die auf den Systemspeicher arbeiten, der jeweilige Datenverkehr auf dem Systembus, interne Synchronisationsstufen, etc., d.h. Latenzen, gemessen an der Anzahl der Prozessortakte, können u.a. bis im zweistelligen Bereich liegen. Während dieser Zeit macht der anwendungsabhängig programmierbare PK nichts Anderes als auf den Datenzugriff zu warten. Der DMA-Controller DMA (Direct-Memory- Access) dient zur Entlastung des anwendungsabhängigen programmierbaren Prozessorkerns PK. Der DMA-Controller DMA führt die Speicherzugriffe ins System aus. Der anwendungsabhängig programmierbare Prozessorkern PK vergeudet keine Taktzyklen mit Warten, sondern führt stattdessen Programmbefehle aus.
Im Rahmen der Weiterentwicklung der Lösung gemäß der EP 1 894 113 B 1 der Anmelder erfolgte eine Erweiterung des Kommunikationscontrollers KC, um zukünftigen Kommunikationsprotokollanforderungen und Netzwerkübertragungsanforderungen gerecht zu werden, wie folgt und wie im Detail in Fig. 3 dargestellt ist:
• jeder Kommunikationscontroller KC besteht aus mehreren, insbesondere zehn oder mehr anwendungsabhängigen programmierbaren PK mit Kommunikations- ALUs
• die parallel angeordneten Prozessorkerne PK bezeichnet als RPU (Receive Processing Unit) und TPU (Transmit Processing Unit) bilden den gMAC (gigabit MAC)
• die Steuerung des Sende- und Empfangs Verlaufes zugehöriger Datenpakete erfolgt durch die jeweils mehrere, insbesondere zwei mal vier gPECs (gigabit Protocol Execution Controller) wodurch die integrierte flexible Kommunikationsstruktur mittels der anwendungsabhängig programmierbaren PK mit Kommunikations -ALUs ausgebildet wird und nicht fest vorgeben ist.
Die Anzahl der frei programmierbaren Kommunikationscontroller KC hängt von der Ausbaustufe des Gerätes AG für den jeweiligen Einsatz ab:
1) Endgeräte für die Prozessautomation haben gelegentlich nur ein Kommunikationsport (d.h. ein Kommunikationscontroller KC ist im Einsatz). Das ist für gewöhnlich auf eine sternförmige Ausführung der Netzwerktopologie zurückzuführen.
2) Endgeräte für die Fabrikautomation haben mindestens zwei Kommunikationsports (d.h. zwei Kommunikationscontroller KC sind im Einsatz). Das ist für gewöhnlich auf eine ringförmige Ausführung der Netzwerktopologie zurückzuführen.
4) Geräte für Steuerungen können bis zu 4 Kommunikationsports aufweisen (d.h. vier Kommunikationscontroller KC sind im Einsatz). Das ist für gewöhnlich unabhängig von der Ausführung der jeweiligen Netzwerktopologie.
Der erfindungsgemäße Datencontroller DC mit integriertem Kryptographiebeschleuniger KB erfüllt die Anforderungen bei Geräten mit Übertragungsraten von 1 Gbps, bei denen die Zykluszeiten bis im Mikrosekundenbereich liegen und wobei die Daten verschlüsselt übertragen werden. Dabei wird zwischen zyklischen Empfangsdaten, zyklischen Sendedaten und azyklischen Daten unterschieden.
Der Interconnect IC ist eine Schlüsselkomponente, der die verschiedenen Funktionsblöcke miteinander verbindet. Der Interconnect IC verwaltet den Datenfluss zwischen diesen Komponenten und stellt sicher, dass diese effizient und effektiv Zusammenarbeiten. Der IC stellt damit eine interne Kommunikationsverbindung für Daten- und Steuersignale bereit. Dabei wird zwischen Initiator INT und Target TRG (siehe Fig. 1) unterschieden. Das heißt, ein Initiator INT ist in der Lage ein Schreibe- und Lesezugriff auf ein Target TRG auszuführen. Im Fig. 3 ist der Zugriffspfad durch den IC von oben nach unten dargestellt. Eine Besonderheit nimmt die Secure Enclave SE ein, welche gleichermaßen ein Initiator INT und ein Target TRG ist. Während der Bootphase greift die Secure Enclave SE auf den Speicher SP und die externen Speicher über die externe Speicherschnittstelle ES zu, z.B. für Secure Boot, etc. Während der Laufzeit stellt die Secure Enclave SE spezielle Dienste an das übergeordnete System bereit, z.B. für die Schlüsselverwaltung, etc.
Das Dual-Port -RAM DPM für die Hostschnittstelle HS ist ein flüchtiger Speicher mit Arbitrierung, Dreifachpufferung und Handshakemechanismen zur Synchronisation, damit zwei Seiten getrennt voneinander auf Speicherinhalte im Dual-Port -RAM DPM zugreifen und somit zyklische und azyklische Daten miteinander austauschen können. Es stellt somit eine physische Trennung zwischen der Echtzeitprotokollkommunikation und der übergeordneten Steuereinrichtung der Endanwendung dar, welche an einer externen Ho stschnitt stelle EHS angeschlossen und demgemäß austauschbar ist.
Die übergeordnete Steuereinrichtung mit der entsprechenden Hostanwendung kann eine beliebige Geräteklasse der Fabrik- oder Prozessautomation sein, wie z.B. ein IndustriePC, eine Maschine, ein Antrieb, ein Stellglied, ein E/A-System, eine Sensorik, etc.
Im Fall einer externen Hostschnittstelle EHS erfolgt die Implementierung der Endanwendung auf marktüblichen Mikroprozessoren oder Mikrocontrollern oder auf anwendungsspezifischen FPGA- oder ASIC -Lösungen (FPGA steht für Field Programmable Gate Array und ASIC steht für Application Specific Integrated Circuit). Mithilfe der Hostschnittstelle HS dockt sich die Steuereinrichtung der Endanwendung (auch Hostsystem genannt) an den Kommunikationsprozessor KP an.
Im Fall einer internen Hostschnittstelle IHS wird der Kommunikationsprozessor KP um ein komplettes App likatio ns system mit Hauptprozessor erweitert und wird damit zum System -on -Chip (SOC) der als Einzelchiplösung für Endanwendungen einsetzbar ist.
Die heutige Kryptographie beinhaltet vier große Ziele zum Schutz von Informationen: Vertraulichkeit/ Zugriffsschutz, Integrität/ Änderungsschutz, Authentizität/
Fälschungs schütz, Verbindlichkeit/ Nichtabstreitbarkeit. In der modernen Kryptographie werden hauptsächlich drei Verschlüsselungsverfahren unterschieden:
• Symmetrische Kryptographie. Bei der symmetrischen Kryptographie wird ein einziger Schlüssel zum Ver- und Entschlüsseln einer Nachricht benutzt.
• Asymmetrische Kryptographie.
• Hybride Kryptographie.
Im Rahmen der Erfindung können folgende kryptografische Algorithmen benutzt werden,
- Hash / HMAC o MD5
O SHA1
O SHA2
■ SHA-224
■ SHA-256
■ SHA-384
■ SHA-512
- AES o Schlüssellängen
■ AES- 128
■ AES- 192
■ AES-256 o Betriebsarten ■ ECB
■ CBC
■ CTR
■ GCM
- ChaCha20 o Ohne Authentifizierung o Kombiniert mit Poly 1305 O Polyl 305 ohne ChaCha20
Wenn es um Datenverschlüsselung geht, bleibt die AES-Verschlüsselung (Advanced Encryption Standard) unbestreitbar eines der sichersten und am weitesten verbreiteten Systeme der Welt.
Weitere Verschlüsselungen sind: Salsa20 (auch Snuffle 2005) ist eine Stromverschlüsselung, die 2005 von Daniel J. Bernstein entwickelt wurde und ist eine Familie von 256-Bit-Stromverschlüsselungen. Salsa20/20 mit 20 Runden ist als Standard vorgesehen. XSalsa20 ist eine Variante mit erweiterter Nonce (192 Bit statt 64 Bit). ChaCha oder Snuffle 2008 sind Varianten von Salsa20. ChaCha20-Polyl305 ist ein Authentifizierter Verschlüsselungsalgorithmus mit zusätzlichen Daten (AEAD), der die ChaCha20-Stream-Chiffre mit dem Polyl 305 -Nachrichtenauthentifizierungscode kombiniert. Seine Verwendung in lETF-Protokollen ist in RFC 8439 standardisiert. Es hat eine schnelle Softwareleistung und ist ohne Hardwarebeschleunigung normalerweise schneller als AES-GCM. Der in RFC 8439 beschriebene ChaCha20-Polyl305- Algorithmus verwendet als Eingabe einen 256-Bit-Schlüssel und eine 96-Bit-Nonce, um einen Klartext mit einer Chiffretext -Erweiterung von 128 Bit (der Tag -Größe) zu verschlüsseln. In der ChaCha20-Polyl305-Konstruktion wird ChaCha20 im Zählermodus verwendet, um einen Schlüsselstrom abzuleiten, der mit dem Klartext XOR- verknüpft wird. Der Chiffretext und die zugehörigen Daten werden dann mit einer Variante von Polyl 305 authentifiziert, die die beiden Zeichenfolgen zunächst zu einer codiert. Die XChaCha20-Polyl305-Konstruktion ist eine erweiterte 192-Bit-Nonce-Variante der ChaCha20-Polyl305-Konstruktion, die XChaCha20 anstelle von ChaCha20 verwendet. Bei der zufälligen Auswahl von Nonces ermöglicht die XChaCha20-Polyl305- Konstruktion eine bessere Sicherheit als die ursprüngliche Konstruktion.
Die Datenverarbeitungsstruktur des Datencontroller DC hängt von der jeweiligen Software ab die der Prozessorkern PK ausführt. Die jeweilige Software wird vom Datenmodell des übergeordneten Kommunikationsprotokolls bestimmt, die sich je nach Kommunikationsstandard unterscheiden kann. Das gilt u.a. auch für den Einsatz des jeweiligen Verschlüsselungsalgorithmus. Kommunikationsstandard A schreibt beispielsweise ASE als Algorithmus vor und Kommunikations Standard B schreibt beispielsweise ChaCha als Algorithmus vor. Ferner laufen auf den Datencontrollern DC aufgabenbezogene Datenmodelle, die sich voneinander unterscheiden. Es wird zwischen zyklischen Empfangsdaten, zyklischen Sendedaten und azyklischen Daten unterschieden. Deshalb sind bei der erfindungsgemäßen Lösung mehrere (mindestens drei) Datencontroller DC im System implementiert. Ein reiner in Hardware aufgebauter Kryptographiebeschleuniger KB wäre unvorteilhaft. Damit würde sich keine Multiprotokollfähigkeit des Systems und Aufteilung der Arbeitslast realisieren lassen. Die Beschleunigung der Algorithmen erfolgt unter Anwendung einer Kombination aus Software und Hardware. Die Software im eng gekoppelten Speicher TCM (Tightly- Coupled Memory), die der Prozessorkern PK ausführt, sorgt dafür, dass die Daten im eng gekoppelten Speicher mithilfe des Hardwarebeschleunigers gemäß Datenmodell prozessiert werden.
Zusammenfassend ist das erfindungsgemäße Verfahren zur Konfiguration des Geräts AG mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, welches im Kommunikationsprozessor KP angeordnete Kommunikationscontroller KC, Datencontroller DC, Dual -Port-RAM Speicher DPM, Secure Enclave SE und Hostschnittstelle HS aufweist, dadurch gekennzeichnet:
• der Kommunikationscontroller KC und der Datencontroller DC sind frei programmierbar,
• Kommunikationscontroller KC und Datencontroller DC arbeiten mit einer übergeordneten Steuereinrichtung über die Hostschnittstelle HS zusammen, wodurch die übergeordnete Steuereinrichtung austauschbar ist, • zur Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps ist mindestens eine im Kommunikationscontroller KC integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen PK vorgesehen,
• zur Vor Verarbeitung, Sicherstellung und Weiterleitung hochpriorer Echtzeitdaten ist mindestens eine im Datencontroller DC integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger KB, bestehend aus anwendungsabhängigen programmierbaren Prozessorkernen PK vorgesehen,
• eine im Gerät AG mit dem Kommunikationscontroller KC verbundene, austauschbare physikalische Schnittstelle PYS vorgesehen ist und
• die Secure Enclave SE übernimmt in Abhängigkeit eines jeweiligen Produktlebenszyklus sicherheitsrelevante Aufgaben und macht weitere Sicherheitsfunktionen für die Endanwendung, umfassend sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, nutzbar.
Vorzugsweise verwaltet die Secure Enclave SE geheime Schlüssel, womit mithilfe dieser Schlüssel und spezieller Zertifikate ein Sitzungsschlüssel zwischen den Geräten ausgehandelt wird, auf dessen Basis die zyklischen Daten ver- und entschlüsselt werden. Der Sitzungsschlüssel ist solange die Verbindung aktiv ist gültig; insbesondere ist während einer aktiven Verbindung der ausgehandelte Sitzungsschlüssel erneuerbar.
Weiterhin wird erfindungsgemäß in Bezug auf die vom Datenmodell eines übergeordneten Kommunikationsprotokolls bestimmten kryptografischen Algorithmen die Softwarestruktur des Kryptographiebeschleuniger KB zur Realisierung der Multiprotokollfähigkeit des Geräts AG und Aufteilung der Arbeitslast verändert.
Die Erfindung ist nicht auf die dargestellten und beschriebenen Ausführungsbeispiele beschränkt, sondern umfasst auch alle im Sinne der Erfindung gleichwirkenden Ausführungen und ist insbesondere nur durch die Patentansprüche beschränkt. Bezugszeichenliste:
AG: Automatisierungsgerät
CPU: Central Processing Unit
DC: Datencontroller
DPM: Dual-Port-RAM
DS: Datenspeicher
DMA: Direct-Memory-Access Controller
ED: Empfangsdaten
EHS: Externes Hostsystem
ES: externe Speicherschnittstelle
FIFO: First In First Out Datenpuffer gMAC: gigabit Media Access Controller HS: Hostschnittstelle
ID: Identifizierungscode
IC: Interconnect
IHS: Internes Hostsystem
INT: Initiator
KB : Kryptographiebeschleuniger
KC: Kommunikationscontroller
KP: Kommunikationsprozessor
PE: Peripherien
PK: Prozessorkern
PS: physikalische Schnittstelle
PSP: Programmspeicher
RPU: Receive Processing Unit
SD: Sendedaten
SE: Secure Enclave
SP: Speicher
SR: Shared Register
ST: Steuerdaten
TPU: Transmit Processing Unit
TRG: Target

Claims

Patentansprüche
1. Gerät (AG) mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, mit einem Kommunikationsprozessor (KP), welcher aufweist:
- mindestens einen frei programmierbaren Kommunikationscontroller (KC), mindestens einen frei programmierbaren Datencontroller (DC) und mindestens einen interaktiven Dual-Port-RAM Speicher (DPM), wobei der Kommunikationsprozessor (KP)-mit einer übergeordneten Steuereinrichtung über eine Hostschnittstelle (HS) zusammenarbeitet, wodurch die übergeordnete Steuereinrichtung austauschbar ist,
- mindestens eine im Kommunikationscontroller (KC) integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängig programmierbaren Prozessorkernen (gMAC: RPU, TPU; gPECs),
- mindestens eine im Datencontroller (DC) integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger (KB) und mit einer im Gerät (AG) angeordneten und über Signalleitungen zur Übertragung eines Identifizierungscodes (ID), Steuerdaten (ST), Empfangsdaten (ED) und Sendedaten (SD) mit dem im
Kommunikationsprozessor (KP) angeordneten Kommunikationscontroller (KC) verbundene, austauschbare physikalische Schnittstelle (PYS), derart, dass eine Verarbeitung, Filterung und Verteilung von Datenströmen mit Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps realisiert ist.
2. Gerät (AG) nach Anspruch 1, wobei der Datencontroller (DC) aufweist:
- mindestens einen anwendungsabhängig programmierbaren Prozessorkem (PK) für die dedizierte Verarbeitung hochpriorer Echtzeitdaten, - einen eng gekoppelten Speicher mit niedriger Latenz aufgeteilt in Programmspeicher (PS) und Datenspeicher (DS),
- den Kryptographiebeschleuniger (KB) für Hashfunktionen, Authentisierung und Ver- und Entschlüsselung von Daten und
- einen Direct-Memory- Access (DMA) Controller für die interaktive Datenübertragung zur Entlastung des Prozessorkems (PK).
3. Gerät (AG) nach Anspruch loder 2, wobei der Kommunikationsprozessor (KP) eine Secure Enclave (SE), auch sichere Enklave genannt, mit einem Secure Enclave -Prozessor und einen an diesen über einen internen Bus angeschlossenen sicheren nicht-flüchtigen Speicher aufweist, wobei die Secure Enclave (SE) in Abhängigkeit eines jeweiligen Produktlebenszyklus sicherheitsrelevante Aufgaben übernimmt und weitere Sicherheitsfunktionen für die Endanwendung, umfassend sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, nutzbar macht.
4. Gerät (AG) nach Anspruch 1, wobei bei einer ringförmigen Ausführung der Netzwerktopologie das Gerät für eine Fabrikautomation mindestens zwei Kommunikationscontroller (KC) aufweist und dass unabhängig von der Netztopologie die Geräte bis zu vier Kommunikationscontroller (KC) aufweisen.
5. Gerät (AG) nach Anspruch 2, wobei der Kommunikationsprozessor (KP) zur Unterscheidung zwischen zyklischen Empfangsdaten, zyklischen Sendedaten und azyklischen Daten mindestens drei Datencontroller (DC) aufweist.
6. Gerät (AG) nach Anspruch 1 oder 2, wobei jeder Kommunikationscontroller (KC) aus mehreren anwendungsabhängig programmierbaren Prozessorkemen (PK) mit Kommunikations -ALUs (Arithmetic and Logical Units) besteht, • die parallel angeordneten Prozessorkeme (PK) bezeichnet als RPU (Receive Processing Unit) und TPU (Transmit Processing Unit) bilden einen gMAC (gigabit Media Access Controller),
• die Steuerung des Sende- und Empfangsverlaufes zugehöriger Datenpakete erfolgt durch jeweils mehreren gPECs (gigabit Protocol Execution Controller), wodurch eine integrierte flexible Kommunikationsstruktur mittels der anwendungsabhängig programmierbaren Prozessorkemen (PK) mit Kommunikations -ALUs ausgebildet ist.
7. Verfahren zur Konfiguration eines Geräts (AG) mit flexibler Kommunikation sstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, welches in einem Kommunikationsprozessor (KP) angeordnete Kommunikationscontroller (KC), Datencontroller (DC), Dual- Port-RAM Speicher (DPM), Secure Enclave (SE) und Hostschnittstelle (HS) aufweist, bei dem:
• der Kommunikationscontroller (KC) und der Datencontroller (DC) frei programmierbar sind,
• Kommunikationscontroller (KC) und Datencontroller (DC) mit einer übergeordneten Steuereinrichtung über die Hostschnittstelle (HS) Zusammenarbeiten, wodurch die übergeordnete Steuereinrichtung austauschbar ist,
• zur Verarbeitung, Filterung und Verteilung von Datenströmen mit
Übertragungsraten im Bereich von 10 Mbps bis 1 Gbps mindestens eine im Kommunikationscontroller (KC) integrierte flexible Kommunikationsstruktur, bestehend aus anwendungsabhängig programmierbaren Prozessorkernen (PK) vorgesehen ist,
• zur Vorverarbeitung, Sicherstellung und Weiterleitung hochpriorer • Echtzeitdaten mindestens eine im Datencontroller (DC) integrierte flexible Datenverarbeitungsstruktur mit Kryptographiebeschleuniger (KB), bestehend aus anwendungsabhängig programmierbaren Prozessorkernen vorgesehen ist
• eine im Gerät (AG) mit dem Kommunikationscontroller (KC) verbundene, austauschbare physikalische Schnittstelle (PYS) vorgesehen ist und
• die Secure Enclave (SE) in Abhängigkeit eines jeweiligen Produktlebenszyklus sicherheitsrelevante Aufgaben übernimmt und weitere Sicherheitsfunktionen für die Endanwendung, -umfas send sicheres Booten, Schlüsselverwaltung, Zertifikatehandling, nutzbar macht.
8. Verfahren nach Anspruch 7, bei dem zur zyklischen Datenkommunikation der Datencontroller (DC) zwischen zyklischen Empfangsdaten, zyklischen Sendedaten und azyklischen Daten unterscheidet.
9. Verfahren nach Anspruch 7 und/oder 8, bei dem die Secure Enclave (SE) geheime Schlüssel verwaltet, mithilfe dieser Schlüssel und spezieller Zertifikate ein Sitzungsschlüssel zwischen Geräten ausgehandelt wird, auf dessen Basis die zyklischen Daten ver- und entschlüsselt werden, der Sitzungsschlüssel solange die Verbindung aktiv ist gültig ist und während einer aktiven Verbindung der ausgehandelte Sitzungsschlüssel erneuerbar ist.
10. Verfahren nach einem oder mehreren der Ansprüche 7 bis 9, bei dem in Bezug auf die vom Daten modell eines übergeordneten Kommunikationsprotokolls bestimmten kryptografischen Algorithmen die Softwarestruktur für die Anwendung des Kryptographiebeschleunigers (KB) zur Realisierung der Multiprotokollfähigkeit des Geräts (AG) und Aufteilung der Arbeitslast verändert wird.
EP24721859.7A 2023-04-06 2024-03-27 Gerät mit flexibler kommunikationsstruktur für echtzeitfähige netzwerkanwendungen mit hoher datensicherheit, insbesondere automatisierungsgerät, und verfahren zu dessen konfiguration Pending EP4689960A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102023001381.1A DE102023001381B3 (de) 2023-04-06 2023-04-06 Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, insbesondere Automatisierungsgerät, und Verfahren zu dessen Konfiguration
PCT/EP2024/025137 WO2024208451A1 (de) 2023-04-06 2024-03-27 Gerät mit flexibler kommunikationsstruktur für echtzeitfähige netzwerkanwendungen mit hoher datensicherheit, insbesondere automatisierungsgerät, und verfahren zu dessen konfiguration

Publications (1)

Publication Number Publication Date
EP4689960A1 true EP4689960A1 (de) 2026-02-11

Family

ID=91435021

Family Applications (1)

Application Number Title Priority Date Filing Date
EP24721859.7A Pending EP4689960A1 (de) 2023-04-06 2024-03-27 Gerät mit flexibler kommunikationsstruktur für echtzeitfähige netzwerkanwendungen mit hoher datensicherheit, insbesondere automatisierungsgerät, und verfahren zu dessen konfiguration

Country Status (5)

Country Link
EP (1) EP4689960A1 (de)
KR (1) KR20250171347A (de)
CN (1) CN120981806A (de)
DE (1) DE102023001381B3 (de)
WO (1) WO2024208451A1 (de)

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2293704T3 (es) 1998-08-21 2008-03-16 Siemens Aktiengesellschaft Interfaz de bus.
DE10140861A1 (de) 2001-03-16 2002-10-02 Siemens Ag Verfahren und System zur Kopplung von Datennetzen
US7194766B2 (en) * 2001-06-12 2007-03-20 Corrent Corporation Method and system for high-speed processing IPSec security protocol packets
US7773754B2 (en) 2002-07-08 2010-08-10 Broadcom Corporation Key management system and method
US9015467B2 (en) * 2002-12-05 2015-04-21 Broadcom Corporation Tagging mechanism for data path security processing
DE102004035843B4 (de) 2004-07-23 2010-04-15 Infineon Technologies Ag Router-Netzwerkprozessor
CN101208674B (zh) 2005-06-23 2012-07-04 赫优讯自动化系统有限公司 用于开放式自动化系统的总线用户的数据通信的方法和装置
DE102006019451A1 (de) 2006-04-24 2007-10-25 Hilscher Gesellschaft für Systemautomation mbH Austauschbares Kommunikations- und Steuerungsgerät zur transparenten Verarbeitung der Daten im laufenden Datenaustausch
DE102009008957A1 (de) 2009-02-13 2010-08-19 Abb Ag Kommunikationsmodul für ein Automatisierungssystem
US8775757B2 (en) 2012-09-25 2014-07-08 Apple Inc. Trust zone support in system on a chip having security enclave processor
DE102015200279A1 (de) 2015-01-12 2016-07-14 Siemens Aktiengesellschaft Einwegübertragungseinrichtung, Vorrichtung undVerfahren zum rückwirkungsfreien Erfassen von Daten
US9747435B2 (en) 2015-04-27 2017-08-29 Apple Inc. Authentication and control of encryption keys
DE102016215742A1 (de) 2016-08-23 2018-03-01 Robert Bosch Gmbh Gateway und Verfahren zur Anbindung eines Datenquellensystems an ein IT-System
US10783279B2 (en) 2016-09-01 2020-09-22 Atmel Corporation Low cost cryptographic accelerator
DE102016120972A1 (de) 2016-11-03 2018-05-03 Endress+Hauser Process Solutions Ag Bereitstellung von Informationen zu Zusatzfunktionalitäten von Feldbuskomponenten
US11070375B2 (en) 2018-02-08 2021-07-20 Micron Technology, Inc. Key encryption handling
DE102018008674A1 (de) 2018-11-05 2020-05-07 Hilscher Gesellschaft für Systemautomation mbH Automatisierungsgerät mit integrierter Netzwerk-Analyse und Cloud-Anbindung
US11169853B2 (en) 2018-12-28 2021-11-09 Intel Corporation Technologies for providing dynamic selection of edge and local accelerator resources
US12170624B2 (en) * 2020-12-08 2024-12-17 Intel Corporation Technologies that provide policy enforcement for resource access

Also Published As

Publication number Publication date
KR20250171347A (ko) 2025-12-08
CN120981806A (zh) 2025-11-18
DE102023001381B3 (de) 2024-06-27
WO2024208451A1 (de) 2024-10-10

Similar Documents

Publication Publication Date Title
EP3353610B2 (de) Verbindungseinheit, überwachungssystem und verfahren zum betreiben eines automatisierungssystems
EP1894113B1 (de) Verfahren zur datenkommunikation von busteilnehmern eines offenen automatisierungssystems
DE102021123538A1 (de) Sicherheitssysteme zum einsatz beim implementieren von sehr vielseitigen feldgeräten und kommunikationsnetzwerken in steuerungs- und automationssystemen
DE102021123548A1 (de) Netzwerkressourcenverwaltung in einem kommunikationsnetzwerk für steuerungs- und automationssysteme
EP2553590B1 (de) Verfahren zur übertragung von daten über einen canopen-bus
DE102021123544A1 (de) Knotenverwaltung von knotenbasierten kommunikationsnetzwerken für sehr vielseitige feldgeräte in steuerungs- und automationssystemen
CN101843033A (zh) 针对自动化网络的实时通信安全性
EP3595267A1 (de) Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
DE102018008674A1 (de) Automatisierungsgerät mit integrierter Netzwerk-Analyse und Cloud-Anbindung
DE102023001381B3 (de) Gerät mit flexibler Kommunikationsstruktur für echtzeitfähige Netzwerkanwendungen mit hoher Datensicherheit, insbesondere Automatisierungsgerät, und Verfahren zu dessen Konfiguration
EP3418832B1 (de) Sichere echtzeitbasierte datenübertragung
WO2022022997A1 (de) Kanalbasierte kommunikation in einem iot-netzwerk
EP4014424B1 (de) Verfahren zum verarbeiten von telegrammen in einem automatisierungsnetzwerk, automatisierungsnetzwerk, masterteilnehmer und slaveteilnehmer
WO2014206451A1 (de) Verfahren und vorrichtung zum sicheren übertragen von signaldaten in einer anlage
EP3520351B1 (de) Vorrichtung und verfahren zur durchgängigen und medienübergreifenden übertragung von kommunikationsprotokollen ohne protokollumsetzung
EP2506503B1 (de) Automatisierungsnetzwerk mit Leitsystemkomponente
EP3963839B1 (de) Netzwerkverteiler, automatisierungsnetzwerk und verfahren zur datenübertragung in einem automatisierungsnetzwerk
WO2024104720A1 (de) Verfahren und system zum dokumentieren von logbuchdaten von einem oder mehreren ersten feldgeräten
EP3584734A1 (de) Hardware-sicherheitsmodul
HK40127182A (zh) 用於高数据安全性的实时网络应用的具有灵活通信结构的设备,特别是自动化设备,及其配置方法
WO2021254842A1 (de) Gerät zum einsatz im internet der dinge
EP1593235B1 (de) Deterministisches kommunikationssystem
WO2022037969A1 (de) Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
DE102005029656B3 (de) Verfahren zur Kopplung von Busteilnehmern eines Automatisierungssystems und frei programmierbarer Kommunikations-Prozessor hierfür
DE102024112125A1 (de) Verfahren zum Verbinden eines Edge Devices mit einem Sub-Edge Device

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20251101

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR