|Publication number||US8006022 B2|
|Application number||US 12/412,660|
|Publication date||Aug 23, 2011|
|Filing date||Mar 27, 2009|
|Priority date||Apr 16, 2008|
|Also published as||DE102008019277A1, DE102008019277B4, EP2110995A1, US20090265492|
|Publication number||12412660, 412660, US 8006022 B2, US 8006022B2, US-B2-8006022, US8006022 B2, US8006022B2|
|Original Assignee||Phoenix Contact Gmbh & Co. Kg|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (13), Non-Patent Citations (4), Classifications (8), Legal Events (2)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present invention relates to the field of data transmission between bus systems.
In modern communications and control systems, control systems can be used for data transmission or for the control of various field-bus systems that often must be coupled to each other, wherein a difference can be defined between a higher-level bus system and a lower-level bus-system. The higher-level bus system is a bus system that is connected to a control system. In contrast, the lower-level bus system is a bus system that must be coupled to a higher-level bus system. In this context, the problem arises of receiving or transmitting data from one bus system to the other bus system without time losses as much as possible. In addition, the data also often must be output in a different sequence and control data often must be added to the data. Typically, memories, so-called buffers, are used for these purposes that are rearranged by a CPU (CPU: Central Processing Unit). This method, however, is time intensive and leads to a large load on the processor.
The problem of the present invention is to create an efficient design for data transmission between bus systems.
This problem is solved by the features of the independent claims.
The invention is based on the knowledge that, for a coupling of known buses, the output sequence of data is already known in advance, so that for bypassing a CPU, for example, a copy table and a transmission device that is, for example, a hard-wired or fixed-program device can be used for coupling. For this purpose, the data is suitably rearranged and fed to the second, lower-level bus in the sequence required on the side of this bus.
The transmission device is, for example, a transmission device that is adapted to the requirements of the bus coupling and that can process time-optimized data from various memory locations in parallel. The transmission device thus always has the same configuration for the same bus systems and is therefore faster than a universal CPU.
The copy table is created such that different information can be retrieved, for example, with only one memory access. The information includes, for example, the offset address of a memory of one of the buses, for example, an offset address of a PD memory (PD: process data) of a Profinet, which can be, for example, one of the bus systems. Furthermore, the information can relate to the data type and can specify, in particular, how large the optional PD data is. Furthermore, the information can specify the byte position, for example, in a lower-level field-bus object. The data mentioned above can also be further processed by the transmission device, for example, in parallel.
Thus, according to the invention, process data can be sorted suitably at runtime without the use of a CPU, so that the coupling of the bus systems can be performed in an accelerated manner. In this way, in particular, the features and characteristics of the bus systems can be taken into account.
The lower-level bus system can have, for example, a configuration that can change and require intervention by the CPU only when there are interruptions in the data flow. Under this assumption, a data memory can be recoded according to certain rules into a different data memory in which the transmission device can process the copy table, for example, in the form of a correspondingly coded table that can be stored in a RAM memory (RAM: Random Access Memory). The copy table includes, for example, the source address of the corresponding data stored in the memory. Through additional expansions of the copy table, additional characteristics of the bus systems can be taken into account that relate to, for example, the display of a device capture or a data set. If necessary, the transmission device can combine data from different memory locations.
The invention relates to a data transmission device for transmitting data between a first bus system and a second bus system with a copy table for providing an output sequence of data of the first bus system and a transmission device for transmitting the data between the first bus system and the second bus system according to the output sequence.
According to one embodiment, the data of the first bus system can be stored in one memory, wherein the transmission device is formed to read the data from the memory according to the output sequence and to supply this data to the second bus system.
According to one embodiment, the transmission device includes a control unit, in particular, a hard-wired or a non-programmable or a fixed-program control unit for accesses to the copy table.
According to one embodiment, the transmission device includes a memory, a control unit, and a multiplexer, wherein the memory is provided for storing the data of the first bus system, wherein an output of the memory is connected to the multiplexer and wherein an output signal of the multiplexer can be coupled to the second bus system.
According to one embodiment, the copy table is further used for providing an offset address or a data type or a byte position.
According to one embodiment, the transmission device further includes a second memory for storing additional data, for example, management data or status information, wherein the transmission device is formed to link the data with the additional data, in order to obtain linked data, and to supply the linked data to the second bus system.
The invention further relates to a communications system with a memory that is assigned to a first bus system and with the data transmission device according to the invention for transmitting data between the first memory of the first bus system and the second bus system.
The invention further relates to a data transmission method for transmitting data between a first bus system and a second bus system: preparation of an output sequence of data of the first bus system and transmission of data between the first bus system and the second bus system according to the output sequence.
The invention further relates to a communications method with the storage of data assigned to a first bus system and transmission of the stored data between the first bus system and the second bus system according to the method for transmitting data.
The invention further relates to a program-specific device with a computer program for executing one of the methods according to the invention.
The invention further relates to a computer program for executing one of the methods when the computer program runs on a computer.
Other embodiments of the invention will be explained in greater detail with reference to the accompanying drawings. Shown are:
The data transmission device shown in
The lower-level bus 207 further requires, for example, management data for each subscriber, wherein the Profinet status can be transmitted with the management data.
For each subscriber of the lower-level bus system, for example, a management buffer (MM) is initialized with management bytes, wherein the copy table is initialized with offset addresses, as well as, for example, with extended bits that are optional and that can include additional information. The transmission device or its control unit generates, for example, the address for respective control data that is increased linearly beginning with 0x0 up to the end of the initialized range. Here, one data unit is needed as an address for the process data memory of the Profinet. The extended bits, for example, Byte 1, Byte 2, and the data type with the output sequence 8 to 14 and also in the associated locations from
The control unit 505 defines the process data addresses and the management addresses, wherein the correspondingly addressed locations are stored in the memory 507. One output of the memory 507 and also the Profinet bus 503 are connected to inputs of the multiplexer 509 that provides an output signal Out. The control unit 505 is provided for controlling the multiplexer, for example, as a function of control data provided by the copy table 511 and to activate one of its outputs. The multiplexer 509 is thus used as a controlled switch.
Access to the copy table 511 begins, for example, at address 0 that is then increased, for example, by 1. The copy table contains, for example, two different data fields and is provided, for example, for providing the offset address for the process data buffer Profinet 503, the data type, and the byte position. After, for example, one cycle, all of the data is present, so that the control unit 505 generates the process data address from the offset address. Simultaneously, the control unit 505 generates the management address that sets a management byte for the lower-level field-bus system 503 from the byte positions Byte 1 and Byte 2. The control data SteuerMux that controls the multiplexer 509 is generated in parallel from Byte 1 and Byte 2. In this way, after one cycle, the two RAM buffers PD buffer Profinet 503 and MM buffer field-bus 501 deliver data that can be linked by means of a logic unit of the memory 507. The status from the PD buffer IOPS or IOCS is here masked, for example, into the management byte, wherein the data can be output by means of the multiplexer 509. This method is executed again with an address increased by 1.
The buffer 507 (MM: Management data) initially contains management data for the lower-level bus system. The data IOxS is transmitted in the Profinet system as the IO Status and should be transmitted in the lower-level system in the management word. Furthermore, it is distinguished between IOCS and IOPS, wherein with IOxS both IOCS and also IOPS are meant.
In the multiplexer 509, the data flow for the lower-level bus system is assembled, for example, as shown in
In the multiplexer (MUX) 509, the data flow for the lower-level bus system is assembled, in order to assume, for example, the form shown in
As the first data, the MM of TN1 can be output with the IOPS TN1. For this purpose, the data is retrieved from the two buffers and linked in the block MM. The MUX 509 is connected so that the data is output via the OUT output. Then the data MM TN1 (address 1) is linked with the IOCS TN1 and output via the OUT output.
As the next byte, the byte PD Byte 1 TN1 (address 8) can be retrieved from the PD Buffer and output by means of the MUX 509 via the OUT output. The sequence is set in the copy table that is processed, for example, upward starting from address 0.
The embodiment shown in
The data transmission device thus allows a coupling of different field-bus systems, wherein data of one system can be sorted suitably into the other system. The data transmission device can be implemented, for example, in hardware, so that for matching two bus systems, process data can be received from one system into the other system efficiently and quickly when corresponding buffers are pre-initialized. Furthermore, data from the process data memory can be combined with management data, wherein the combination can be performed freely and wherein the characteristics of the bus systems can be taken into account. Furthermore, the extended bits can be expanded, so that other functions can also be installed for coupling the two systems. Preferably, the copy process takes place without a processor after an initialization.
The copy unit according to the invention from
The coupling concept according to the invention can be used for different field-bus bus systems, e.g., for Profinet as a higher-level system and Interbus as a lower-level system. Coupling consists in that, for example, data transmitted, for example, in the Profinet system can be output or read on a lower-level system. The copy unit according to the invention completes this task, wherein the data of the higher-level system from
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5522050 *||May 28, 1993||May 28, 1996||International Business Machines Corporation||Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus|
|US7370112||Nov 28, 2003||May 6, 2008||Kabushiki Kaisha Toshiba||Communication scheme using outside DTCP bridge for realizing copyright protection|
|US20040158634 *||Nov 28, 2003||Aug 12, 2004||Kabushiki Kaisha Toshiba||Communication scheme using outside DTCP bridge for realizing copyright protection|
|US20050254518 *||May 10, 2005||Nov 17, 2005||Nec Electronics Corporation||Communication message conversion device, communication method and communication system|
|US20060026327 *||Jul 29, 2004||Feb 2, 2006||International Business Machines Corporation||Isolation of input/output adapter traffic class/virtual channel and input/output ordering domains|
|US20060045135 *||Aug 26, 2005||Mar 2, 2006||Herbert Hetzel||Synchronous multi-cluster network architecture|
|US20060212661 *||Jul 25, 2005||Sep 21, 2006||Fujitsu Limited||Data transfer device|
|US20060218334 *||Mar 22, 2005||Sep 28, 2006||Spry Bryan L||System and method to reduce memory latency in microprocessor systems connected with a bus|
|DE102005021820A1||May 11, 2005||Feb 23, 2006||Nec Electronics Corp., Kawasaki||Kommunikationsmitteilungs-Konvertierungseinrichtung, Kommunikationsverfahren und Kommunikationssystem|
|EP0998081A1||Sep 23, 1999||May 3, 2000||Hewlett-Packard Company||Method and apparatus for bridging between networks|
|EP1079569A1||Aug 26, 1999||Feb 28, 2001||Siemens Aktiengesellschaft||Method for transmission of an additional information in a data packet transmission|
|WO2004077771A1||Feb 26, 2004||Sep 10, 2004||Oasis Silicon Systems Ag||Synchronous multi-cluster network architecture|
|WO2007134955A1||May 3, 2007||Nov 29, 2007||Robert Bosch Gmbh||Communication component|
|1||*||"The Free On-Line Dictionary of Computing". Entry 'hard-wired'. Online Oct. 18, 1998. Retrieved from Internet Oct. 6, 2010. .|
|2||*||"The Free On-Line Dictionary of Computing". Entry ‘hard-wired’. Online Oct. 18, 1998. Retrieved from Internet Oct. 6, 2010. <http://foldoc.org/hard-wired>.|
|3||Athanasios Mariggis, "EP Patent Application: EP 09 00 4526 Search Report", Jul. 7, 2009, Publisher: EPO, Published in: EP.|
|4||German Office Action dated Nov. 6, 2008, Application 10 2008 019 277.5, German Patent Office.|
|U.S. Classification||710/306, 710/310, 710/311|
|Cooperative Classification||H04L12/4625, H04L2012/40221, H04L2012/4026|
|May 21, 2009||AS||Assignment|
Owner name: PHOENIX CONTACT GMBH & CO. KG, GERMANY
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HOFFMANN, MICHAEL;REEL/FRAME:022720/0467
Effective date: 20090511
|Jan 22, 2015||FPAY||Fee payment|
Year of fee payment: 4