EP4242897A1 - Interconnect bus safety - Google Patents
Interconnect bus safety Download PDFInfo
- Publication number
- EP4242897A1 EP4242897A1 EP22020100.8A EP22020100A EP4242897A1 EP 4242897 A1 EP4242897 A1 EP 4242897A1 EP 22020100 A EP22020100 A EP 22020100A EP 4242897 A1 EP4242897 A1 EP 4242897A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- safety
- data
- application
- interface
- relevant data
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/40—Bus coupling
Definitions
- the invention relates to a system including first and second devices connected by an interconnect bus, and in particular to such a system addressing safety concerns.
- PCIe Peripheral Component Interconnect Express
- CRC cyclic redundancy checks
- a system comprising a first device, comprising: a first processor for running a first application; a first interface for transmitting and receiving data along a two-way communication channel, and a safety guard consisting of a hardware block between the processor and the interface; a second device comprising: a second processor for running a second application; a second interface connected to the second processor for transmitting and receiving data along the two-way communication channel with the first interface; wherein the system is arranged to send safety relevant data from the first application to the second application by: in the safety guard, adding safety information to the safety relevant data to create safety marked data; transmitting the safety marked data through the first interface and the two-way communication channel to the second interface; extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application; retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data; in the safety guard, checking the loop back data using the safety information in the loop back data, and if
- the inventors have realized that in many applications the full duplex bandwidth offered by the interconnect bus may not be used. In many cases, the data streams mostly from one device to another. It is therefore possible to use unused bandwidth, which may be considered spare bandwidth, to enhance safety.
- embodiments of the invention provide a first device with a safety guard system which can communicate in a safety compliant way with a variety of devices, even devices without sufficient resource to carry out complex calculations.
- Examples provide a device which is capable of a number of different modes of operation, including the mode of operation described above, to increase flexibility.
- a safety device comprising
- a method of transmitting data between a first device and a second device along a two-way communications interface wherein the first device has a first processor running a first application, a first interface for transmitting and receiving data and a safety guard between the first processor and the first interface, and the second device has a second processor running a second application, and a second interface for transmitting and receiving data, the method comprising sending safety relevant data from the first application to the second application by:
- the interface bus 110 is a two-way communication channel 110 capable of transmitting in both directions, as illustrated with a first transmission channel 112 from the first device 100 to the second device 200 and a second transmission channel 114 from the second device 200 to the first device 100.
- the two-way communication channel 110 is a Peripheral Component Interconnect Express, PCIe, bus but alternative and/or multiple buses may be used. In an alternative example case, monodirectional buses in each direction may together make up the two-way communication channel 110.
- the first device 100 may be for example a microprocessor, a microcontroller or other chip with the capability of executing programmed instructions.
- a processor core 160 is provided which is capable of running an application 180.
- the first device 100 will also contain registers, memory access and a large number of components that support the running of the application 180 on the processor core 160 but which are known and will not be described further.
- the first device 100 also contains an interface 120 for connection to the two-way communication channel 110 for controlling communication along the bus 110.
- the interface 120 may be divided into layers, including a physical layer 122 for delivering the physical packets onto the bus 110 and taking the incoming packets, and then passing the packets to a data link layer 124 from which the packets get passed to an upper layer 126, for example a transactional layer, from which the packets get transferred into and out of the interface 120 towards the processor core 160.
- the first device 100 also contains a safety guard 140 which is connected between the interface 120 on the one hand and the processor 160 and the application 180 running on the processor 160 on the other hand.
- the safety guard 140 is connected to the interface 120 by a first bidirectional interconnect 130 and to the processor 160 by a second bidirectional interconnect 150.
- Such interconnects 130, 150 may be, for example, an serial peripheral interconnect, SPI.
- the safety guard 140 is a separate hardware block to the processor core 160 and to the interface 120.
- the second device 200 is a device which does not have a safety guard 140.
- the second device 200 may be for example a microprocessor, a microcontroller or other chip with the capability of executing programmed instructions, such as a power management integrated circuit, PMIC, system on chip SOC, or other device.
- a second processor core 260 is provided which is capable of running an application 280.
- the second device 200 will also contain registers, memory access and a large number of components that support the running of the application 280 on the processor core 260 but which are known and will not be described further.
- the second device 200 also contains a second interface 220 for connection to the two-way communication channel 110 for controlling communication along the bus 110.
- the second interface 220 may be divided into layers, including a physical layer 222 for delivering the physical packets onto the bus 110 and taking the incoming packets, and then passing the packets to a data link layer 224 from which the packets get passed to an upper layer 226, for example a transactional layer, from which the packets get transferred into and out of the second interface 220 to the processor core 260.
- the second device 260 does not contain a safety guard 140 and may accordingly be a standard component.
- the safety relevant data 50 may pass directly between second interface 220 and second processor core 260 along a third bidirectional interconnect 230.
- first, second and third bidirectional interconnects 130, 150, 230 may be shown as single interconnects, each of the interconnects 130, 150, 230 may in reality be formed of a plurality of interconnects with bridges or links between the interconnects. Some components of the first and second bidirectional interconnects 130, 150 may be shared.
- safety relevant data 50 needs to be transmitted from the first application 180 in the first device 100 to the second application 280 in the second device 200.
- the safety relevant data 50 is first transmitted through second bidirectional interface 150 to the safety guard 140, which contains a safety unit 142 which adds safety information 62 to the safety relevant data 50 to create safety marked data 52. How this is done will be described in more detail below.
- the safety marked data 52 is then transmitted through first bidirectional interface 130 to interface 120 which transmits the safety marked data 52 through the two-way communication channel 110 to the second interface 220 in the second device 200.
- a data handling application 270 then takes the safety marked data 52, extracts the original safety relevant data 50 from the safety marked data 52 by stripping the safety information 62 and forwards the extracted safety relevant data 50 to the second application 280.
- the data handling application 270 also retransmits the safety marked data 52 including the safety information 54 back through the second interface 220 and the two way communication channel 110 to the first interface 120 as loop back data 56.
- the data handling application 270 runs on the same core 260 as the second application 280 but in alternative embodiments the data handling application may run on a different core or be implemented in hardware.
- the first interface 120 then passes the loop back data 56 to the safety guard 140.
- the safety unit 142 checks the loop back data 56 using the safety information 62 in the loop back data 56, and if the checking indicates an error, transmits an error notification signal to the first application 180 and the second application 280.
- a separate notification channel 190 separate from the two-way communication channel 110 is provided between the first device 100 and the second device 200 for transmitting the error notification signal from the safety guard 140 to the second device 200. This allows for communication in case there is an ongoing problem with communication along the two-way communication channel 110.
- the error notification signal may be transmitted along the two-way communication channel 110.
- the data-handling application 270 and the second device 200 do not need to carry out complex calculations relating to the safety information 54 and so the second device 200 may be a lower power or simpler device than the first device 100.
- the system may deliver improved safety using the first device 100 with the hardware safety guard 140 without the need for complex or expensive hardware in the second device 200..
- the safety information 54 will now be described in more detail.
- the safety unit 142 creates a header including check data as the safety information 54 and adds this header to the safety relevant data 50 to create the safety marked data 52.
- the safety information 54 is not added as header but elsewhere.
- the safety unit 142 may calculate cyclic redundancy check, CRC; data as the safety information 54.
- CRC cyclic redundancy check
- the first device 100 is arranged to transmit the safety relevant data 50 by first splitting the safety relevant data 50 into a plurality of unprotected frames 60, each frame having a respective sequence number A.
- the safety unit 142 then processes each unprotected frame 60 by calculating a CRC 62 corresponding to the unprotected frame 60, appending the CRC 62 and the sequence number A to the unprotected frame 60 to form a protected frame. Each protected frame is then passed in sequence to the first interface 120.
- sequence number A can first be added to the unprotected frame 60 and then the CRC 62 calculated based on both the unprotected frame 60 and the sequence number. In this way, also the sequence number is checked and controlled by the CRC 62.
- the same first device 100 may also operate with an alternative second device 300 which in this example is arranged to transmit data from the second application 280 running in second device 300 to the first application 180 running in the first device 100.
- the second device 300 is a device with sufficient processing capability in processor 260 or in additional processor capacity to calculate safety information 54 with sufficient speed.
- safety relevant data 50 from the second application 280 is passed to the data-handling application 270 which unlike safety guard 140 is not a dedicated hardware unit but an application 280 running on processor 260.
- the data-handling application 270 adds safety information 54 to the safety relevant data 50 to create safety marked data 52.
- This data is then passed to second interface 220 which transmits the safety marked data 52 through the two-way communication channel 110 to the first interface 120.
- the safety relevant data 50 is passed to safety guard 140 which extracts the safety information 54 from the received safety marked data 52.
- the safety information 54 is checked and if the safety information 54 indicates that the safety relevant data 50 has been safely received, the safety relevant data 50 is extracted from the safety marked data 52 and forwarded to the first application 180.
- the safety guard 140 transmits an error notification signal to the first application 180 and/or the second application 280 in a similar manner to the notification described above with reference to Figure 1 , except that in this case the error notification signal relates to data transfer from the second device 200 to the first device 100 instead of from the first device 100 to the second device 200.
- the same first device 100 may also operate with a further alternative second device 400 which in this example is arranged to transmit data from the second device 400 to the first device 100.
- the second device 400 does not have sufficient processing power to rapidly calculate safety information 54.
- safety relevant data 50 is taken from the second application 280 and passed to the first application 180 in a second alternative operation mode by first transmitting the safety relevant data 50 through the second interface 220 and the two-way communication channel 110 to the first interface 120.
- the safety relevant data 50 is then passed to the safety guard 140 which forwards the safety relevant data 50 to the first application.
- the safety guard 140 also retransmits the safety relevant data 50 by passing the safety relevant data 50 to the first interface 120 as a second loop back data 58.
- the first interface 120 then transmits the second loop back data 58 through the two-way communications channel 110 to the second interface 220.
- the data-handling application 270 then checks whether the second looped back data 58 differs from the safety relevant data 50 originally transmitted, and if the looped back data 58 differs, transmits an error notification signal to the first application 180 and/or the second application 280.
- a hardware first device 100 which may communicate in a variety of different ways with a variety of different second devices 200, 300, 400 depending on the need or application.
- the provision of the hardware safety guard 140 in the first device 100 with the functionality described above allows the second device 200, 300, 400 to be simpler than first device 100 and the second device 200, 300, 400 can be run with low-power consumption.
- first 100 and second devices 200, 300, 400 may be any form of device with sufficient computing power in hardware and/or software to carry out the method.
- the various functions can be implemented in a variety of ways, for example using hard wired circuitry, logic circuitry, a processor executing firmware stored in the processor or in a separate memory, or a processor executing code stored or delivered from an external memory, or a device, or combinations thereof.
- the devices may be implemented in any convenient semiconductor technology at any suitable scale.
- the description of the method includes a number of operation modes. Those skilled in the art will realize that many additional operation modes are possible, and that devices may be provided that run in one, some or all of the above operation modes.
- Adding safety information may include adding a header to the data including check data.
- the check data may be a header including a cyclic redundancy check, CRC.
- the first device may be arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number, and
- a separate notification channel may be provided between the first device and the second device for transmitting the error notification signal.
- the first device may be arranged to transmit the error notification signal to the second device through the two-way communication channel.
- the system may be arranged to send safety relevant data from the second application to the first application in a first alternative operation mode by:
- the system may further be arranged to send safety relevant data from the second application to the first application in a second alternative operation mode by:
- a safety device may comprise:
- the first device may be arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number, and
- a method of transmitting data between a first device and a second device along a two-way communications interface may have a first device with a first processor running a first application, a first interface for transmitting and receiving data and a safety guard between the first processor and the first interface, and a second device with a second processor running a second application, and a second interface for transmitting and receiving data.
- the method may include sending safety relevant data from the first application to the second application by:
- Adding safety information to the safety relevant data may include adding a header to the safety relevant data including check data.
- Adding safety relevant data may include:
- the method may further include sending safety relevant data from the second application to the first application in a first alternative operation mode by:
- the method may further include sending safety relevant data from the second application to the first application in a second alternative operation mode by:
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
- The invention relates to a system including first and second devices connected by an interconnect bus, and in particular to such a system addressing safety concerns.
- A number of interconnect buses have been proposed for various applications. One such interconnect bus is the Peripheral Component Interconnect Express, PCIe, bus which represents a full duplex serial interface widely applied in computers, including servers, and mobile devices.
- Systems using such an interconnect bus are increasingly in use in vehicles, for example in automotive applications, and many applications in vehicles require functional safety, i.e. to transmit data in such a way that errors occurring during data transmission are detected and dealt with appropriately. In this way, errors will not lead to dangerous conditions when driving the vehicles concerned. For example, there may be a need to deliver a system using a particular Automotive Safety Integrity Level, ASIL, such as ASIL-B or ASIL-D. These ASIL levels are defined in the international standard ISO 26262. Functional safety may also be required in other applications, not just in automotive.
- In order to achieve functional safety data may be checked using cyclic redundancy checks, CRC. However, calculating such CRCs using software is slow and inefficient.
- There is accordingly a need to address safety in interconnect connected systems
- According to an aspect, there is provided a system comprising a first device, comprising: a first processor for running a first application; a first interface for transmitting and receiving data along a two-way communication channel, and a safety guard consisting of a hardware block between the processor and the interface; a second device comprising: a second processor for running a second application; a second interface connected to the second processor for transmitting and receiving data along the two-way communication channel with the first interface; wherein the system is arranged to send safety relevant data from the first application to the second application by: in the safety guard, adding safety information to the safety relevant data to create safety marked data; transmitting the safety marked data through the first interface and the two-way communication channel to the second interface; extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application; retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data; in the safety guard, checking the loop back data using the safety information in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- By providing a safety guard system, functional safety may be enhanced without requiring all interconnected devices to be complex devices with advanced hardware for CRC calculation.
- The inventors have realized that in many applications the full duplex bandwidth offered by the interconnect bus may not be used. In many cases, the data streams mostly from one device to another. It is therefore possible to use unused bandwidth, which may be considered spare bandwidth, to enhance safety.
- In an alternative system, complex calculations would need to be carried out at both ends of the interface: the CRC must be calculated in the sending device and then checked in the receiving device. Such calculations may be viable in high-end microprocessors but in automotive applications it is very common that either the receiving or the sending device is not capable of such calculations.
- In contrast to such an alternative system, embodiments of the invention provide a first device with a safety guard system which can communicate in a safety compliant way with a variety of devices, even devices without sufficient resource to carry out complex calculations.
- Examples provide a device which is capable of a number of different modes of operation, including the mode of operation described above, to increase flexibility.
- In another aspect of the invention, there is provided a safety device comprising
- a first processor for running a first application;
- a first interface for transmitting and receiving data along a two-way communication channel to a second device having a second interface and having a second processor for running a second application, and
- a safety guard consisting of a hardware block between the processor and the interface;
- wherein the safety device is arranged to send safety relevant data from the first application to the second application by:
- in the safety guard, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;
- receiving in the first interface safety marked data as looped back data looped from the second device back through the two-way communication channel to the first interface as loop back data;
- in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- In another aspect of the invention, there is provided a method of transmitting data between a first device and a second device along a two-way communications interface, wherein the first device has a first processor running a first application, a first interface for transmitting and receiving data and a safety guard between the first processor and the first interface, and the second device has a second processor running a second application, and a second interface for transmitting and receiving data, the method comprising sending safety relevant data from the first application to the second application by:
- in the safety guard, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;
- extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application;
- retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data;
- in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- Examples will now be described, purely by way of example, with reference to the accompanying drawings, in which:
-
Figure 1 is a schematic drawing of a system with a first and a second device, according to an example. -
Figure 2 is a schematic drawing of the frame structure of data used in the example ofFigure 1 . -
Figure 3 is a schematic drawing of a system according to an example, having the same first device as the example ofFigure 1 but a different second device. -
Figure 4 is a schematic drawing of a further system according to an example, having the same first device as the example ofFigure 1 but a different second device. - The accompanying drawings are schematic and not to scale. Like components may be referenced by the same reference number in different figures.
- As shown in
Figure 1 an interconnected system is shown with afirst device 100 and asecond device 200 connected together byinterface bus 110. Theinterface bus 110 is a two-way communication channel 110 capable of transmitting in both directions, as illustrated with afirst transmission channel 112 from thefirst device 100 to thesecond device 200 and asecond transmission channel 114 from thesecond device 200 to thefirst device 100. In the example the two-way communication channel 110 is a Peripheral Component Interconnect Express, PCIe, bus but alternative and/or multiple buses may be used. In an alternative example case, monodirectional buses in each direction may together make up the two-way communication channel 110. - The
first device 100 may be for example a microprocessor, a microcontroller or other chip with the capability of executing programmed instructions. Aprocessor core 160 is provided which is capable of running anapplication 180. Those skilled in the art will appreciate that thefirst device 100 will also contain registers, memory access and a large number of components that support the running of theapplication 180 on theprocessor core 160 but which are known and will not be described further. - The
first device 100 also contains aninterface 120 for connection to the two-way communication channel 110 for controlling communication along thebus 110. Theinterface 120 may be divided into layers, including aphysical layer 122 for delivering the physical packets onto thebus 110 and taking the incoming packets, and then passing the packets to adata link layer 124 from which the packets get passed to anupper layer 126, for example a transactional layer, from which the packets get transferred into and out of theinterface 120 towards theprocessor core 160. - In addition to the above components the
first device 100 also contains asafety guard 140 which is connected between theinterface 120 on the one hand and theprocessor 160 and theapplication 180 running on theprocessor 160 on the other hand. Thesafety guard 140 is connected to theinterface 120 by a firstbidirectional interconnect 130 and to theprocessor 160 by a secondbidirectional interconnect 150. 130, 150 may be, for example, an serial peripheral interconnect, SPI.Such interconnects - The
safety guard 140 is a separate hardware block to theprocessor core 160 and to theinterface 120. - In this example the
second device 200 is a device which does not have asafety guard 140. Thesecond device 200 may be for example a microprocessor, a microcontroller or other chip with the capability of executing programmed instructions, such as a power management integrated circuit, PMIC, system on chip SOC, or other device. - A
second processor core 260 is provided which is capable of running anapplication 280. Those skilled in the art will appreciate that thesecond device 200 will also contain registers, memory access and a large number of components that support the running of theapplication 280 on theprocessor core 260 but which are known and will not be described further. - The
second device 200 also contains asecond interface 220 for connection to the two-way communication channel 110 for controlling communication along thebus 110. Thesecond interface 220 may be divided into layers, including aphysical layer 222 for delivering the physical packets onto thebus 110 and taking the incoming packets, and then passing the packets to adata link layer 224 from which the packets get passed to anupper layer 226, for example a transactional layer, from which the packets get transferred into and out of thesecond interface 220 to theprocessor core 260. - The
second device 260 does not contain asafety guard 140 and may accordingly be a standard component. The safetyrelevant data 50 may pass directly betweensecond interface 220 andsecond processor core 260 along a thirdbidirectional interconnect 230. - Those skilled in the art will realize that although the first, second and third
130, 150, 230 may be shown as single interconnects, each of thebidirectional interconnects 130, 150, 230 may in reality be formed of a plurality of interconnects with bridges or links between the interconnects. Some components of the first and secondinterconnects 130, 150 may be shared.bidirectional interconnects - The operation of the system will now be described, purely by way of example.
- Consider the case that safety
relevant data 50 needs to be transmitted from thefirst application 180 in thefirst device 100 to thesecond application 280 in thesecond device 200. - The safety
relevant data 50 is first transmitted through secondbidirectional interface 150 to thesafety guard 140, which contains asafety unit 142 which addssafety information 62 to the safetyrelevant data 50 to create safety markeddata 52. How this is done will be described in more detail below. - The safety marked
data 52 is then transmitted through firstbidirectional interface 130 to interface 120 which transmits the safety markeddata 52 through the two-way communication channel 110 to thesecond interface 220 in thesecond device 200. - A
data handling application 270, then takes the safety markeddata 52, extracts the original safetyrelevant data 50 from the safety markeddata 52 by stripping thesafety information 62 and forwards the extracted safetyrelevant data 50 to thesecond application 280. Thedata handling application 270 also retransmits the safety markeddata 52 including the safety information 54 back through thesecond interface 220 and the twoway communication channel 110 to thefirst interface 120 as loop backdata 56. In the example thedata handling application 270 runs on thesame core 260 as thesecond application 280 but in alternative embodiments the data handling application may run on a different core or be implemented in hardware. - The
first interface 120 then passes the loop backdata 56 to thesafety guard 140. Thesafety unit 142 checks the loop backdata 56 using thesafety information 62 in the loop backdata 56, and if the checking indicates an error, transmits an error notification signal to thefirst application 180 and thesecond application 280. - In the example of
Figure 1 , aseparate notification channel 190, separate from the two-way communication channel 110 is provided between thefirst device 100 and thesecond device 200 for transmitting the error notification signal from thesafety guard 140 to thesecond device 200. This allows for communication in case there is an ongoing problem with communication along the two-way communication channel 110. In other examples, the error notification signal may be transmitted along the two-way communication channel 110. - Note that the data-
handling application 270 and thesecond device 200 do not need to carry out complex calculations relating to the safety information 54 and so thesecond device 200 may be a lower power or simpler device than thefirst device 100. Thus, the system may deliver improved safety using thefirst device 100 with thehardware safety guard 140 without the need for complex or expensive hardware in thesecond device 200.. - The safety information 54 will now be described in more detail.
- In an example, the
safety unit 142 creates a header including check data as the safety information 54 and adds this header to the safetyrelevant data 50 to create the safety markeddata 52. In other examples, the safety information 54 is not added as header but elsewhere. - In particular, the
safety unit 142 may calculate cyclic redundancy check, CRC; data as the safety information 54. The calculation of a CRC from data is known and will not be described further. - In a particular example, with reference to
Figure 2 , thefirst device 100 is arranged to transmit the safetyrelevant data 50 by first splitting the safetyrelevant data 50 into a plurality ofunprotected frames 60, each frame having a respective sequence number A. - The
safety unit 142 then processes eachunprotected frame 60 by calculating aCRC 62 corresponding to theunprotected frame 60, appending theCRC 62 and the sequence number A to theunprotected frame 60 to form a protected frame. Each protected frame is then passed in sequence to thefirst interface 120. - Alternatively, the sequence number A can first be added to the
unprotected frame 60 and then theCRC 62 calculated based on both theunprotected frame 60 and the sequence number. In this way, also the sequence number is checked and controlled by theCRC 62. - Referring to
Figure 3 , the samefirst device 100 may also operate with an alternativesecond device 300 which in this example is arranged to transmit data from thesecond application 280 running insecond device 300 to thefirst application 180 running in thefirst device 100. In this example, thesecond device 300 is a device with sufficient processing capability inprocessor 260 or in additional processor capacity to calculate safety information 54 with sufficient speed. - In this alternative operation mode safety
relevant data 50 from thesecond application 280 is passed to the data-handling application 270 which unlikesafety guard 140 is not a dedicated hardware unit but anapplication 280 running onprocessor 260. The data-handling application 270 adds safety information 54 to the safetyrelevant data 50 to create safety markeddata 52. - This data is then passed to
second interface 220 which transmits the safety markeddata 52 through the two-way communication channel 110 to thefirst interface 120. The safetyrelevant data 50 is passed tosafety guard 140 which extracts the safety information 54 from the received safety markeddata 52. The safety information 54 is checked and if the safety information 54 indicates that the safetyrelevant data 50 has been safely received, the safetyrelevant data 50 is extracted from the safety markeddata 52 and forwarded to thefirst application 180. - In contrast, if the safety information 54 indicates that the safety
relevant data 50 has not been safely received, thesafety guard 140 transmits an error notification signal to thefirst application 180 and/or thesecond application 280 in a similar manner to the notification described above with reference toFigure 1 , except that in this case the error notification signal relates to data transfer from thesecond device 200 to thefirst device 100 instead of from thefirst device 100 to thesecond device 200. - Referring to
Figure 4 , the samefirst device 100 may also operate with a further alternativesecond device 400 which in this example is arranged to transmit data from thesecond device 400 to thefirst device 100. In this example, unlike in the example described above with respect toFigure 3 , thesecond device 400 does not have sufficient processing power to rapidly calculate safety information 54. - In this case safety
relevant data 50 is taken from thesecond application 280 and passed to thefirst application 180 in a second alternative operation mode by first transmitting the safetyrelevant data 50 through thesecond interface 220 and the two-way communication channel 110 to thefirst interface 120. - The safety
relevant data 50 is then passed to thesafety guard 140 which forwards the safetyrelevant data 50 to the first application. Thesafety guard 140 also retransmits the safetyrelevant data 50 by passing the safetyrelevant data 50 to thefirst interface 120 as a second loop back data 58. - The
first interface 120 then transmits the second loop back data 58 through the two-way communications channel 110 to thesecond interface 220. - The data-
handling application 270 then checks whether the second looped back data 58 differs from the safetyrelevant data 50 originally transmitted, and if the looped back data 58 differs, transmits an error notification signal to thefirst application 180 and/or thesecond application 280. - Thus, a hardware
first device 100 is provided which may communicate in a variety of different ways with a variety of different 200, 300, 400 depending on the need or application. The provision of thesecond devices hardware safety guard 140 in thefirst device 100 with the functionality described above allows the 200, 300, 400 to be simpler thansecond device first device 100 and the 200, 300, 400 can be run with low-power consumption.second device - The invention has been described above with reference to examples, but those skilled in the art will realize that the details in the examples may be modified, combined together in different ways or adapted.
- In particular, the first 100 and
200, 300, 400 may be any form of device with sufficient computing power in hardware and/or software to carry out the method. The various functions can be implemented in a variety of ways, for example using hard wired circuitry, logic circuitry, a processor executing firmware stored in the processor or in a separate memory, or a processor executing code stored or delivered from an external memory, or a device, or combinations thereof.second devices - The devices may be implemented in any convenient semiconductor technology at any suitable scale.
- The description of the method includes a number of operation modes. Those skilled in the art will realize that many additional operation modes are possible, and that devices may be provided that run in one, some or all of the above operation modes.
- There may be provided a system comprising
- a first device, comprising:
- a first processor for running a first application;
- a first interface for transmitting and receiving data along a two-way communication channel; and
- a safety guard consisting of a hardware block between the processor and the interface;
- a second device comprising:
- a second processor for running a second application;
- a second interface connected to the second processor for transmitting and receiving data along the two-way communication channel with the first interface;
- wherein the system is arranged to send safety relevant data from the first application to the second application by:
- in the safety guard, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;
- extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application;
- retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data;
- in the safety guard, checking the loop back data using the safety information in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and the second application.
- Adding safety information may include adding a header to the data including check data.
- The check data may be a header including a cyclic redundancy check, CRC.
- The first device may be arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number, and
- the safety guard may be arranged to process an unprotected frame by
- calculating a CRC corresponding to the unprotected frame;
- appending the CRC and the sequence number A to the unprotected frame to form a protected frame; and
- passing the protected frame to the first interface.
- A separate notification channel may be provided between the first device and the second device for transmitting the error notification signal.
- The first device may be arranged to transmit the error notification signal to the second device through the two-way communication channel.
- The system may be arranged to send safety relevant data from the second application to the first application in a first alternative operation mode by:
- in the second device, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the second interface and the two-way communication channel to the first interface;
- in the safety guard, extracting the safety information from the received safety marked data, checking the safety information; and
- if the safety information indicates that the safety relevant data has been safely received, extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the first application; or
- if the safety information indicates that the safety relevant data has not been safely received, transmitting an error notification signal to the first application and/or the second application.
- The system may further be arranged to send safety relevant data from the second application to the first application in a second alternative operation mode by:
- transmitting the safety relevant data through the second interface and the two-way communication channel to the first interface;
- in the safety guard, forwarding the safety relevant data to the first application and also looping back the safety relevant data to the first interface;
- retransmitted the looped back safety relevant data through the two-way communications channel to the second interface; and
- in the second device, checking whether the looped back data differs from the safety relevant data originally transmitted, and if the looped back data differs, transmitting an error notification signal to the first application and/or the second application.
- A safety device may comprise:
- a first processor for running a first application;
- a first interface for transmitting and receiving data along a two-way communication channel to a second device having a second interface and having a second processor for running a second application, and
- a safety guard consisting of a hardware block between the processor and the interface;
- wherein the safety guard may be arranged to send safety relevant data from the first application to the second application by:
- in the safety guard, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;
- receiving in the first interface safety marked data as looped back data looped from the second device back through the two-way communication channel to the first interface as loop back data;
- in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- The first device may be arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number, and
- the safety guard may be arranged to process an unprotected frame by:
- calculating a CRC corresponding to the unprotected frame;
- appending the CRC and the sequence number A to the unprotected frame to form a protected frame; and
- passing the protected frame to the first interface.
- A method of transmitting data between a first device and a second device along a two-way communications interface may have a first device with a first processor running a first application, a first interface for transmitting and receiving data and a safety guard between the first processor and the first interface, and a second device with a second processor running a second application, and a second interface for transmitting and receiving data. The method may include sending safety relevant data from the first application to the second application by:
- in the safety guard, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;
- extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application;
- retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data;
- in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- Adding safety information to the safety relevant data may include adding a header to the safety relevant data including check data.
- Adding safety relevant data may include:
- splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number;
- calculating a CRC corresponding to the unprotected frame or corresponding to the unprotected frame together with the sequence number; and
- appending the CRC and the sequence number to the unprotected frame to form a protected frame.
- The method may further include sending safety relevant data from the second application to the first application in a first alternative operation mode by:
- in the second device, adding safety information to the safety relevant data to create safety marked data;
- transmitting the safety marked data through the second interface and the two-way communication channel to the first interface;
- in the safety guard, extracting the safety information from the received safety marked data, checking the safety information; and
- if the safety information indicates that the safety relevant data has been safely received, extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the first application; or
- if the safety information indicates that the safety relevant data has not been safely received, transmitting an error notification signal to the first application and/or the second application.
- The method may further include sending safety relevant data from the second application to the first application in a second alternative operation mode by:
- transmitting the safety relevant data through the second interface and the two-way communication channel to the first interface;
- in the safety guard, forwarding the safety relevant data to the first application and also looping back the safety relevant data to the first interface;
- retransmitted the looped back safety relevant data through the communications two-way channel to the second interface; and
- in the second device, checking whether the looped back data differs from the safety relevant data originally transmitted, and if the looped back data differs, transmitting an error notification signal to the first application and/or the second application.
Claims (15)
- A system comprisinga first device, comprising:a first processor for running a first application;a first interface for transmitting and receiving data along a two-way communication channel, anda safety guard consisting of a hardware block between the processor and the interface;a second device comprising:a second processor for running a second application;a second interface connected to the second processor for transmitting and receiving data along the two-way communication channel with the first interface;wherein the system is arranged to send safety relevant data from the first application to the second application by:in the safety guard, adding safety information to the safety relevant data to create safety marked data;transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application;retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data;in the safety guard, checking the loop back data using the safety information in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- A system according to claim 1, wherein adding safety information includes adding a header to the safety relevant data including check data.
- A system according to claim 2 wherein the check data is a header including a cyclic redundancy check.
- A system according to any preceding claim, whereinthe first device is arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number, andthe safety guard is arranged to process an unprotected frame by:calculating a CRC corresponding to the unprotected frame;appending the CRC and the sequence number A to the unprotected frame to form a protected frame; andpassing the protected frame to the first interface.
- A system according to any preceding claim, further comprising a separate notification channel between the first device and the second device for transmitting the error notification signal.
- A system according to any of claims 1 to 4, wherein the first device is arranged to transmit the error notification signal to the second device through the two-way communication channel.
- A system according to any preceding claim, wherein the system is arranged to send safety relevant data from the second application to the first application in a first alternative operation mode by:in the second device, adding safety information to the safety relevant data to create safety marked data;transmitting the safety marked data through the second interface and the two-way communication channel to the first interface;in the safety guard, extracting the safety information from the received safety marked data, checking the safety information; andif the safety information indicates that the safety relevant data has been safely received, extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the first application; orif the safety information indicates that the safety relevant data has not been safely received, transmitting an error notification signal to the first application and/or the second application.
- A system according to any preceding claim, wherein the system is arranged to send safety relevant data from the second application to the first application in a second alternative operation mode by:transmitting the safety relevant data through the second interface and the two-way communication channel to the first interface;in the safety guard, forwarding the safety relevant data to the first application and also looping back the safety relevant data to the first interface;retransmitted the looped back safety relevant data through the two-way communications channel to the second interface; andin the second device, checking whether the looped back data differs from the safety relevant data originally transmitted, and if the looped back data differs, transmitting an error notification signal to the first application and/or the second application.
- A safety device comprisinga first processor for running a first application;a first interface for transmitting and receiving data along a two-way communication channel to a second device having a second interface and having a second processor for running a second application, anda safety guard consisting of a hardware block between the processor and the interface;wherein the safety device is arranged to send safety relevant data from the first application to the second application by:in the safety guard, adding safety information to the safety relevant data to create safety marked data;transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;receiving in the first interface safety marked data as looped back data looped from the second device back through the two-way communication channel to the first interface as loop back data;in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- A safety device according to claim 9, whereinthe first device is arranged to transmit the safety relevant data by splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number; andthe safety guard is arranged to process an unprotected frame by:calculating a CRC corresponding to the unprotected frame;appending the CRC and the sequence number A to the unprotected frame to form a protected frame; andpassing the protected frame to the first interface.
- A method of transmitting data between a first device and a second device along a two-way communications interface, wherein the first device has a first processor running a first application, a first interface for transmitting and receiving data and a safety guard between the first processor and the first interface, and the second device has a second processor running a second application, and a second interface for transmitting and receiving data, the method comprising sending safety relevant data from the first application to the second application by:in the safety guard, adding safety information to the safety relevant data to create safety marked data;transmitting the safety marked data through the first interface and the two-way communication channel to the second interface;extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the second application;retransmitting the safety marked data from the second interface back through the two-way communication channel to the first interface as loop back data;in the safety guard, checking the loop back data using the safety header in the loop back data, and if the checking indicates an error, transmitting an error notification signal to the first application and/or the second application.
- A method according to claim 11, wherein adding safety information to the safety relevant data includes adding a header to the safety relevant data including check data.
- A method according to claim 11 or claim 12, wherein adding safety relevant data comprises:splitting the safety relevant data into a plurality of unprotected frames each frame having a respective sequence number;calculating a CRC corresponding to the unprotected frame or corresponding to the unprotected frame together with the sequence number; andappending the CRC and the sequence number to the unprotected frame to form a protected frame.
- A method according to claim 11, 12 or 13, further comprising sending safety relevant data from the second application to the first application in a first alternative operation mode by:in the second device, adding safety information to the safety relevant data to create safety marked data;transmitting the safety marked data through the second interface and the two-way communication channel to the first interface;in the safety guard, extracting the safety information from the received safety marked data, checking the safety information; andif the safety information indicates that the safety relevant data has been safely received, extracting the safety relevant data from the safety marked data and forwarding the extracted safety relevant data to the first application; orif the safety information indicates that the safety relevant data has not been safely received, transmitting an error notification signal to the first application and/or the second application.
- A method according to claim 11, 12, 13 or 14, further comprising sending safety relevant data from the second application to the first application in a second alternative operation mode by:transmitting the safety relevant data through the second interface and the two-way communication channel to the first interface;in the safety guard, forwarding the safety relevant data to the first application and also looping back the safety relevant data to the first interface;retransmitted the looped back safety relevant data through the two-way communications channel to the second interface; andin the second device, checking whether the looped back data differs from the safety relevant data originally transmitted, and if the looped back data differs, transmitting an error notification signal to the first application and/or the second application.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP22020100.8A EP4242897B1 (en) | 2022-03-10 | 2022-03-10 | Interconnect bus safety |
| US18/178,803 US12360936B2 (en) | 2022-03-10 | 2023-03-06 | Interconnect bus safety |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP22020100.8A EP4242897B1 (en) | 2022-03-10 | 2022-03-10 | Interconnect bus safety |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP4242897A1 true EP4242897A1 (en) | 2023-09-13 |
| EP4242897B1 EP4242897B1 (en) | 2025-07-23 |
Family
ID=80775042
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP22020100.8A Active EP4242897B1 (en) | 2022-03-10 | 2022-03-10 | Interconnect bus safety |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US12360936B2 (en) |
| EP (1) | EP4242897B1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200081765A1 (en) * | 2017-03-06 | 2020-03-12 | Tttech Auto Ag | Method and computer system for fault tolerant data integrity verification of safety-related data |
| US20210385010A1 (en) * | 2019-04-16 | 2021-12-09 | Mitsubishi Electric Corporation | Safety communication device, safety communication system, safety communication method, and computer readable medium |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4138693B2 (en) * | 2004-03-31 | 2008-08-27 | 株式会社東芝 | Flow control initialization method and information processing apparatus |
| WO2006137029A1 (en) * | 2005-06-21 | 2006-12-28 | Nxp B.V. | Method for parallel data integrity checking of pci express devices |
| EP2814193B1 (en) * | 2013-06-14 | 2016-11-16 | Siemens Aktiengesellschaft | Method and system for detecting errors in the transmission of data from a transmitter to at least one receiver |
| DE102014111361A1 (en) * | 2014-08-08 | 2016-02-11 | Beckhoff Automation Gmbh | Method for operating a safety control and automation network with such a safety control |
| US11711320B2 (en) * | 2021-07-12 | 2023-07-25 | Mellanox Technologies, Ltd. | Network device safety protocol |
-
2022
- 2022-03-10 EP EP22020100.8A patent/EP4242897B1/en active Active
-
2023
- 2023-03-06 US US18/178,803 patent/US12360936B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200081765A1 (en) * | 2017-03-06 | 2020-03-12 | Tttech Auto Ag | Method and computer system for fault tolerant data integrity verification of safety-related data |
| US20210385010A1 (en) * | 2019-04-16 | 2021-12-09 | Mitsubishi Electric Corporation | Safety communication device, safety communication system, safety communication method, and computer readable medium |
Non-Patent Citations (1)
| Title |
|---|
| SHREEJITH SHANKER: "Enhancing Automotive Embedded Systems with FPGAs", 30 April 2016 (2016-04-30), XP055597224, Retrieved from the Internet <URL:https://warwick.ac.uk/fac/sci/eng/staff/saf/publications/shreejith-phdthesis2016.pdf> [retrieved on 20190617], DOI: 10.13140/RG.2.1.4001.1768 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20230289313A1 (en) | 2023-09-14 |
| US12360936B2 (en) | 2025-07-15 |
| EP4242897B1 (en) | 2025-07-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7821919B2 (en) | Data processing apparatus and data processing method | |
| US7106742B1 (en) | Method and system for link fabric error detection and message flow control | |
| US5687314A (en) | Method and apparatus for assisting data bus transfer protocol | |
| US20100138573A1 (en) | System including transmitter and receiver | |
| US20100180163A1 (en) | Method and device for switching between agents | |
| US9979566B2 (en) | Hybrid forward error correction and replay technique for low latency | |
| US12001375B2 (en) | Interconnect system | |
| EP1897333B1 (en) | Method for parallel data integrity checking of pci express devices | |
| CN102349059A (en) | TLP processing circuit for PCI Express and relay device equipped with the same | |
| US20160255008A1 (en) | Separable transport layer in cache coherent multiple component microelectronic systems | |
| CN117539824A (en) | Core particle, data transmission processing method, system on chip and computer equipment | |
| US8909843B1 (en) | Peripheral component interconnect express switch apparatus and method of controlling connection thereof | |
| EP4242897A1 (en) | Interconnect bus safety | |
| CN116185936A (en) | SPI communication data receiving and transmitting abnormity detection control system and detection method | |
| JP3996928B2 (en) | How to handle corrupted data | |
| CN113411198B (en) | Communication method, device, electronic device and storage medium based on dual channel and RSSP-I | |
| CN100571108C (en) | Be used between computing node, carrying out data communications system and method | |
| US11636061B2 (en) | On-demand packetization for a chip-to-chip interface | |
| US7596653B2 (en) | Technique for broadcasting messages on a point-to-point interconnect | |
| EP1988469B1 (en) | Error control device | |
| US7471623B2 (en) | Systems and methods for a unified computer system fabric | |
| CN115174159B (en) | Communication model, data transmission method and device and communication model configuration method | |
| CN110928828A (en) | Inter-processor service processing system | |
| JP2000165424A (en) | Loop type data transmission device | |
| US8924590B2 (en) | System and method for communicating in a networked system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 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: THE APPLICATION HAS BEEN PUBLISHED |
|
| 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 MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| 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: 20240205 |
|
| RBV | Designated contracting states (corrected) |
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 MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 21/71 20130101ALI20250317BHEP Ipc: G06F 21/64 20130101AFI20250317BHEP |
|
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
| INTG | Intention to grant announced |
Effective date: 20250508 |
|
| GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
| P01 | Opt-out of the competence of the unified patent court (upc) registered |
Free format text: CASE NUMBER: APP_26229/2025 Effective date: 20250603 |
|
| AK | Designated contracting states |
Kind code of ref document: B1 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 MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602022017859 Country of ref document: DE |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
| REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20251124 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1817168 Country of ref document: AT Kind code of ref document: T Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20251123 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20251023 |
|
| REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20251024 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20251023 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20250723 |