DE3937021A1 - Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols - Google Patents

Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols

Info

Publication number
DE3937021A1
DE3937021A1 DE19893937021 DE3937021A DE3937021A1 DE 3937021 A1 DE3937021 A1 DE 3937021A1 DE 19893937021 DE19893937021 DE 19893937021 DE 3937021 A DE3937021 A DE 3937021A DE 3937021 A1 DE3937021 A1 DE 3937021A1
Authority
DE
Germany
Prior art keywords
memory
central unit
dual
telegrams
subscribers
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
Application number
DE19893937021
Other languages
German (de)
Other versions
DE3937021C2 (en
Inventor
Heinz Schaffner
Edgar Polly
Berthold Zeyer
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.)
Schneider Automation GmbH
Original Assignee
Licentia Patent Verwaltungs GmbH
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 Licentia Patent Verwaltungs GmbH filed Critical Licentia Patent Verwaltungs GmbH
Priority to DE19893937021 priority Critical patent/DE3937021A1/en
Publication of DE3937021A1 publication Critical patent/DE3937021A1/en
Application granted granted Critical
Publication of DE3937021C2 publication Critical patent/DE3937021C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

An arrangement for data transfer between a central unit or CU and subscribers connected via a serial bus exchanges data via a dual-port memory (11) connected to the CU via a parallel bus and to the subscribers via a serial bus. The memory address space (12,13) is divided into two regions each associated with a subscriber interface and a corresp. bus protocol. One region contains a special area for telegrams with a CU controlled pointer and an interface identification memory (14) set by the CU to release or block telegrams. A status memory (15) is set by the CU to control transmission. ADVANTAGE - Enables subscribers with different protocols to be connected.

Description

Die Erfindung bezieht sich auf eine Anordnung zur Datenübertragung zwischen einer zentralen Einheit und an diese über einen seriellen Bus angeschlossenen Teilnehmern, wobei der Datenaustausch über einen Dual-Port- Speicher abgewickelt wird, der über einen parallelen Bus mit der zentralen Einheit und über den seriellen Bus mit den Teilnehmern verbunden ist.The invention relates to an arrangement for data transmission between a central unit and to this via a serial bus connected participants, whereby the data exchange via a dual-port Memory is handled by a parallel bus with the central one Unit and connected to the participants via the serial bus.

Aus der Zeitschrift "Electronics", Sept. 11, 1980, Seiten 131 bis 135 ist eine Einrichtung zur Datenübertragung zwischen einem Rechner und externen Teilnehmern bekannt, bei welcher eine Eingabe/Ausgabesteuereinheit und Koppelspeicher verwendet wird, die mit dem parallelen Datenbus des Rechners und einem Bus der Eingabe/Ausgabesteuereinheit verbunden sind, welcher unter Zwischenschaltung von Serien/Parallel- beziehungsweise Parallel/Serienwandlern an Übertragungsleitungen für die externen Teilnehmer angeschlossen ist. Bei den Koppelspeichern werden die Daten nacheinander in Speicherzellen eingegeben, die in einer bestimmten Reihenfolge geordnet sind, und in umgekehrter Reihenfolge aus den Speicherzellen ausgelesen.From the magazine "Electronics", Sept. 11, 1980, pages 131 to 135 a device for data transmission between a computer and external Known participants in which an input / output control unit and Coupling memory is used with the parallel data bus of the computer and a bus of the input / output control unit which is connected under Interposition of series / parallel respectively Parallel / serial converters on transmission lines for the external participants connected. In the coupling memories, the data are successively in Memory cells entered, ordered in a specific order are read out from the memory cells in reverse order.

Die direkte Verbindung der Teilnehmer über den Bus erfordert busspezifische Übertragungsregeln, damit nicht mehrere Teilnehmer gleichzeitig Nachrichten aussenden, die sich auf dem Bus überlagern. Die Abwicklung von Übertragungen zwischen den Teilnehmern und der Zentrale wird deshalb zeitmultiplex abgewickelt. Es gibt verschiedene Zeitmultiplexverfahren, nach denen der Bus den Teilnehmern zugeteilt wird. Die Zuteilungsverfahren unterscheiden sich vorwiegend durch die Zuteilung eines festen Zeitrasters und eines bedarfsabhängigen Zeitrasters.The direct connection of the participants via the bus requires bus-specific Transmission rules so that not several participants send messages at the same time send out that overlap on the bus. Processing transfers time multiplexing is therefore between the participants and the headquarters handled. There are different time-division multiplexing methods according to which the bus is allocated to the participants. The allocation procedures differ mainly by assigning a fixed time grid and one demand-dependent time grid.

An einem Bus können unterschiedliche Teilnehmer angeschlossen sein. Teilnehmer können zum Beispiel Anzeigeeinheiten, Eingabe-, Ausgabeeinheiten, Speichereinheiten, speicherprogammierbare Steuerungen oder Rechner sein. Neben der Buszuteilung ist für die Arbeitsweise eines Busses die Synchronisierung, die Fehlerbehandlung und die Alarmverarbeitung von Bedeutung. Die vorstehend erwähnten Funktionen müssen für die verschiedenen Teilnehmer festgelegt werden. Dabei ist die Einhaltung fest vereinbarter Vorschriften notwendig, das heißt die Bedeutung bestimmter Bussignale und Signalsequenzen und ihre Verwendung in Verbindung mit anderen Signalen muß einheitlich für alle Teilnehmer festgelegt sein. Diese Vereinbarungen beziehen sich auf den Informationsgehalt der Signale unabhängig von der physikalischen Realisierung des Busses. Wenn die Hardwarekonfiguration, das heißt die Leitungen des Busses mit der elektrischen Ankopplung als unterste Betrachtungsebene eines Busses angesehen werden, stellen die vorstehend erwähnten Vereinbarungen eine höhere Ebene dar. Die Komplexität der Übertragung zwischen den Teilnehmern bestimmt die Anzahl der notwendigen Ebenen. Ein vollständiger Satz von Regeln für eine Übertragungsebene wird als Protokoll bezeichnet.Different participants can be connected to one bus. Participants can, for example, display units, input, output units, Storage units, programmable logic controllers or computers. In addition to the bus allocation, the operating principle of a bus is the Synchronization, error handling and alarm processing from Importance. The functions mentioned above must be for the different Participants are determined. Compliance is more firmly agreed  Regulations necessary, i.e. the meaning of certain bus signals and Signal sequences and their use in connection with other signals must be set uniformly for all participants. These agreements relate to the information content of the signals regardless of the physical realization of the bus. If the hardware configuration, that is called the lines of the bus with the electrical coupling as the lowest Viewing plane of a bus, the above agreements mentioned represent a higher level. The complexity of the Transmission between the participants determines the number of necessary Levels. A complete set of rules for a transmission level will referred to as the protocol.

Es kann erwünscht sein, an den gleichen Bus Teilnehmer anzuschließen, die nach verschiedenen Protokollen arbeiten, um die Verlegung zusätzlicher Busse einzusparen. Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Anordnung der eingangs beschriebenen Gattung derart weiterzuentwickeln, das unter Kontrolle der zentralen Einheit Teilnehmer mit unterschiedlichen Busprotokollen mit der zentralen Einheit Daten uni- oder bidirektional austauschen können.It may be desirable to connect participants to the same bus that work according to various protocols to relocate additional buses save. The invention is therefore based on the object To further develop the arrangement of the type described at the outset in such a way that under control of the central unit participants with different Bus protocols with the central unit data unidirectional or bidirectional can exchange.

Die Aufgabe wird erfindungsgemäß dadurch gelöst, daß der Adreßraum des Dual-Port-Speichers mindestens in einen ersten und einen zweiten, je einer Schnittstelle zu den Teilnehmern mit übereinstimmendem Busprotokoll zugeordneten Adreßraum aufgeteilt ist, und daß im ersten oder zweiten Adreßraum für die in Form von Telegrammen übertragenen und im Dual-Port- Speicher zwischengespeicherten Daten ein gesonderter Speicherbereich mit einem von der zentralen Einheit einstellbaren, auf jeweils ein Telegramm gerichteten Zeiger in Verbindung mit einem von der zentralen Einheit einstellbaren Schnittstellenkennungsspeicher, der zur Freigabe oder Sperrung des Telegramms für eine Schnittstelle von der zentralen Einheit entsprechend eingestellt wird, und mit einem Statusspeicher vorgesehen ist, der von der zentralen Einheit zur Mitteilung eines Sendeauftrags eingestellt wird. Mit Hilfe des Schnittstellenkennungsspeichers und des Statusspeichers kann vorgegeben werden, welche der beiden Schnittstellen von der zentralen Einheit bearbeitet wird.The object is achieved in that the address space of the Dual-port memory at least in a first and a second, one each Interface to the participants with a matching bus protocol assigned address space is divided, and that in the first or second Address space for those transmitted in the form of telegrams and in the dual-port Memory cached data with a separate memory area one that can be set by the central unit, on one telegram each directional pointer in conjunction with one from the central unit adjustable interface identifier memory, which can be used to release or lock of the telegram for an interface from the central unit accordingly is set, and is provided with a status memory that of the central unit for the notification of a send order is set. With With the help of the interface identifier memory and the status memory which of the two interfaces from the central Unit is processed.

Bei einer bevorzugten Ausführungsform sind im ersten oder zweiten Adreßraum ein zirkularer Pufferspeicher für zu sendende Telegramme und ein zirkularer Pufferspeicher für empfangene Telegramme vorgesehen, wobei die Telegramme durch ein Merkerbyte voneinander getrennt sind, das von der zentralen Einheit einstellbare Informationen über einen Sendeauftrag oder keinen Sendeauftrag und von der Übertragungssteuerung einstellbare Informationen über die vollzogene oder nicht vollzogene Übertragung sowie über die fehlerfreie oder fehlerhafte Übertragung aufweist. Durch eine derartige Speicherorganisation steht für die Telegramme ein großer Bereich zur Verfügung.In a preferred embodiment are in the first or second address space a circular buffer memory for telegrams to be sent and a circular one  Buffer memory provided for received telegrams, the telegrams are separated from each other by a flag byte that is separated from the central one Unit adjustable information about a send job or none Send job and information adjustable by the transmission control about the completed or not completed transfer as well as about the has flawless or faulty transmission. By such Memory organization has a large area for the telegrams Available.

Zweckmäßigerweise ist im ersten oder zweiten Adreßraum ein Speicher für einen den Füllstand des ersten und zweiten Pufferspeichers angebenden Zeiger vorgesehen. Der Zeiger wird zum Beispiel nach dem Einlesen eines Telegramms auf die in der zikularen Reihenfolge nächste Speicherstelle für ein Telegramm eingestellt. Im Pufferspeicher für das Senden bedeutet dies die nächste noch freie Speicherstelle. Die zu sendenden Telegramme werden sequentiell im Puffer abgelegt. Ist das Pufferende erreicht, so wird am Pufferanfang mit dem Eintragen der weiteren zu sendenden Telegramme fortgefahren.A memory for is expediently in the first or second address space a pointer indicating the fill level of the first and second buffer memories intended. The pointer becomes, for example, after reading in a telegram to the next storage location for a Telegram set. In the buffer for sending, this means the next free location. The telegrams to be sent are stored sequentially in the buffer. When the end of the buffer is reached, on Start of the buffer by entering the further telegrams to be sent continued.

Es ist günstig, wenn jedes Telegramm im Pufferspeicher für den Empfang ein Merkerbyte aufweist, das vom Teilnehmer und von der zentralen Einheit einstellbare Informationen über die Abholbereitschaft oder Sperrung des Telegramms und die vollzogene oder noch nicht vollzogene Abholung durch die zentrale Einheit aufweist.It is convenient if each telegram is received in the buffer for reception Has flag byte, that of the participant and the central unit adjustable information about the readiness for collection or blocking of the Telegram and the completed or not yet completed collection by the central unit.

Die oben erläuterte Organisation des Dual-Port-Speichers eignet sich insbesondere für die Datenübertragung zwischen der zentralen Einheit und Eingabe-, Ausgabeeinheiten.The organization of the dual-port memory explained above is suitable especially for data transmission between the central unit and Input, output units.

Für den anderen Adreßraum ist folgende Koppelspeicherorganisation günstig:The following shared storage organization is favorable for the other address space:

Der zweite Adreßraum des Dual-Port-Speichers ist in Bereiche für Sendedaten und Bereiche für Empfangsdaten unterteilt ist, wobei sowohl der Bereich für Sendedaten als auch der Bereich für Empfangsdaten in Abschnitte entsprechend der Zahl der Teilnehmer aufgeteilt ist.The second address space of the dual-port memory is in areas for Send data and areas for receive data is divided, with both the Area for send data as well as the area for receive data in sections is divided according to the number of participants.

Die von der zentralen Einheit an die Teilnehmer auszusenden Daten sind jeweils in ersten Blöcken der Bereiche für die Sendedaten und die Adressen der ersten Wörter jedes ersten Blocks sind in einer ersten Adressenliste des Dual-Port-Speichers abspeicherbar.The data to be sent from the central unit to the participants are in each case in the first blocks of the areas for the send data and the addresses  the first words of each first block are in a first address list of the Dual-port memory can be saved.

Die erste Adressenliste weist zu jeder Adresse eine erste Stelle, in die von der zentralen Einheit eine Mitteilung eines Sendeauftrags an eine Eingabe/Ausgabesteuereinheit des Dual-Port-Speichers einschreibbar ist, und eine zweite Stelle auf, in die von der Eingabe/Ausgabesteuereinheit eine Mitteilung an die zentrale Einheit über einen bei der Übertragung entstandenen Fehler einschreibbar ist.The first address list has a first position for each address, into which the central unit notifies a send job to a Input / output control unit of the dual-port memory is writable, and a second digit into which the input / output control unit Notification to the central unit about a transmission errors that have occurred can be registered.

Die serien-parallelgewandelten Daten der Teilnehmer werden von der Eingabe/Ausgabesteuereinheit in Blöcke der Empfangsdatenbereiche eingelesen und in diesen byteweise gespeichert.The series-parallel converted data of the participants are from the Input / output control unit read into blocks of the received data areas and stored in them byte by byte.

Die Blöcke der Empfangsdatenbereiche weisen je eine dritte Stelle auf, in die von der Eingabe/Ausgabesteuereinheit eine Mitteilung an die zentrale Einheit über die Vollständigkeit der eingelesenen Daten des jeweiligen Blocks einschreibbbar ist.The blocks of the received data areas each have a third position, in a message from the input / output control unit to the central Unit about the completeness of the read data of the respective Blocks is writable.

Weiterhin enthalten die zweiten Blöcke der Empfangsdatenbereiche eine vierte Stelle, in die von der zentralen Einheit eine Mitteilung an die Eingabe/Ausgabesteuereinheit über die Auslesung eines jeweiligen zweiten Blocks einschreibbar ist.The second blocks of the received data areas also contain a fourth Body in which the central unit sends a message to the Input / output control unit via the readout of a respective second one Blocks is writable.

Die Empfangsdatenbereiche weisen eine zweite Adressenliste mit den Adressen aller Teilnehmer auf, wobei die Eingabe/Ausgabesteuereinheit die erste Adressenliste auf Sendeaufträge überprüft und beim Fehlen von Sendeaufträgen eine zyklische Kurzabfrage der Teilnehmer anhand der zweiten Adressenliste auf Übertragungsfehler hin durchführt.The receive data areas have a second address list with the addresses of all participants, the input / output control unit being the first Address list checked for send orders and in the absence of send orders a cyclical short query of the participants based on the second address list for transmission errors.

Die Erfindung wird im folgenden anhand eines in einer Zeichnung dargestellten Ausführungsbeispiels näher beschrieben, aus dem sich weitere Einzelheiten, Merkmale und Vorteile der Erfindung ergeben.The invention is described below with reference to a drawing Described embodiment described in more detail, from which further Details, features and advantages of the invention emerge.

Es zeigtIt shows

Fig. 1 ein Blockschaltbild einer Anordnung zur Datenübertragung zwischen einer zentralen Einheit und an diese über einen seriellen Bus angeschlossenen Teilnehmern, Fig. 1 is a block diagram of an arrangement for transmitting data between a central unit and connected to them via a serial bus subscribers,

Fig. 2 eine schematische Darstellung der Aufteilung eines Dual- Port-Speichers, Fig. 2 is a schematic representation of the division of a dual port memory,

Fig. 3 ein Diagramm der für die Feststellung der Arbeitsweise in einer von zwei Busprotokollen erforderlichen Schritte. Fig. 3 is a diagram of the steps required to determine the operation in one of two bus protocols.

Eine zentrale Einheit 1, beispielsweise ein programmierbares Steuergerät, besteht aus mehreren Baugruppen, von denen in Fig. 1 eine Baugruppe 2 bezeichnet ist, die ausgangsseitig mit einem seriellen Bus 3 verbunden ist. An den Bus 3 sind weitere Einheiten 4, 5 angeschlossen, bei denen es sich ebenfalls um programmierbare Steuergeräte handeln kann. Jede Einheit 4, 5 steht über eine Baugruppe 6, deren Aufbau der Baugruppe 2 entspricht, mit dem Bus 3 in Verbindung. Die Einheiten 4, 5 setzen sich aus mehreren, nicht näher bezeichneten Baugruppen zusammen. An den Bus 3 sind weitere Einheiten 7, 8 angeschlossen, die bestimmte Funktionen ausüben. Es handelt sich bei den Baugruppen 7, 8 zum Beispiel um Eingabe-, Ausgabebaugruppen für einen Prozeß. Die Einheiten 4, 5 sind dagegen universeller, im Sinne frei programmierbarer Datenverarbeitungsanlagen ausgebildet und können selbst Eingabe-, Ausgabeeinheiten aufweisen. Die zentrale Einheit 1 übt die Masterfunktion für den Bus 3 aus, das heißt die zentrale Einheit 1 übt die Buszuteilung aus. Die Einheiten 4 bis 8 haben demgegenüber Slavefunktionen. Da die Einheiten 4, 5 andere Funktionen als die Einheiten 7, 8 ausüben, sind zwischen den Einheiten 4, 5 und 7, 8 Unterschiede in bezug auf die Bedeutung bestimmter Bussignale und Signalsequenzen vorhanden. Der Informationsgehalt der Bussignale und Signalsequenzen ist für die Einheiten 4, 5 verschieden von denjenigen der Einheiten 7, 8 das heißt die Einheiten 4, 5 und 7, 8 sind verschiedenen Busprotokollen zugeordnet.A central unit 1 , for example a programmable control unit, consists of several modules, of which a module 2 is designated in FIG. 1 and is connected on the output side to a serial bus 3 . Further units 4 , 5 are connected to the bus 3 , which can also be programmable control units. Each unit 4 , 5 is connected to the bus 3 via a module 6 , the structure of which corresponds to the module 2 . The units 4 , 5 are composed of a number of subassemblies, which are not described in greater detail. Further units 7 , 8 , which perform certain functions, are connected to the bus 3 . Modules 7 , 8 are, for example, input and output modules for a process. The units 4 , 5 , on the other hand, are universal, in the sense of freely programmable data processing systems, and can themselves have input and output units. The central unit 1 carries out the master function for the bus 3 , that is to say the central unit 1 carries out the bus allocation. In contrast, units 4 to 8 have slave functions. Since the units 4 , 5 perform different functions than the units 7 , 8 , there are differences between the units 4 , 5 and 7 , 8 with regard to the meaning of certain bus signals and signal sequences. The information content of the bus signals and signal sequences for the units 4 , 5 is different from that of the units 7 , 8, that is to say the units 4 , 5 and 7 , 8 are assigned to different bus protocols.

Obwohl Einheiten mit unterschiedlichen Busprotokollen vorhanden sind, ist nur ein serieller Bus für den Transport der Informationen vorhanden. Um wahlweise beziehungsweise abwechselnd nach verschiedenen Busprotokollen mit dem gleichen Bus arbeiten zu können, ist die in Fig. 2 dargestellte Anordnung vorgesehen, die sich in der Einheit 1 befindet. Die Einheit 1 enthält einen parallelen Bus 9, an den unter anderem ein Rechner 10 und ein Dual-Port-Speicher 11 angeschlossen sind. Der Dual-Port-Speicher 11 enthält nicht näher dargestelle Steuerelemente sowie Parallel-Serien-Serien- Parallel-Wandler, über die er an den seriellen Bus 3 angeschlossen ist. Damit die Einheit 2 mit dem gleichen Bus 3 zu verschiedenen Zeiten nach verschiedenen Busprotokollen arbeiten kann, ist der Adreßraum des Dual- Port-Speichers 11 in einen ersten Adreßraum 12 und einen zweiten Adreßraum 13 aufgeteilt. Jedem der Adreßräume 12, 13 ist eine eigene Schnittstelle zu den Teilnehmern an Bus 3, das heißt zu den Einheiten 4, 5 beziehungsweise 7, 8 zugeordnet.Although there are units with different bus protocols, there is only one serial bus for the transport of the information. The arrangement shown in FIG. 2, which is located in unit 1, is provided in order to be able to work with the same bus alternatively or alternately according to different bus protocols. The unit 1 contains a parallel bus 9 to which, among other things, a computer 10 and a dual-port memory 11 are connected. The dual-port memory 11 contains control elements (not shown) and parallel-series-series-parallel converters, via which it is connected to the serial bus 3 . So that the unit 2 can work with the same bus 3 at different times according to different bus protocols, the address space of the dual-port memory 11 is divided into a first address space 12 and a second address space 13 . Each of the address spaces 12 , 13 is assigned its own interface to the participants on bus 3 , that is to say to the units 4 , 5 and 7 , 8 , respectively.

Der erste Adreßraum 12 ist für die Schnittstelle zu den Eingabe-, Ausgabeeinheiten 7, 8 vorgesehen und steht in Form von relativen Adressen zur Verfügung. Der Adreßraum 12 hat folgende Speicherbelegung: Ein Teil der Speicherzellen ist schreibgesperrt und enthält baugruppenspezifische Daten, zum Beispiel Kennziffern, Sachnummer, Änderungsstände für die Baugruppe 2. Ein weiterer Teil der Speicherzellen ist als Puffer für die Aufnahme von Telegramm bestimmt, die auf den Bus 3 übertragen werden sollen oder von diesem empfangen wurden. Die Telegramme umfassen beispielsweise zahlreiche Wörter mit je einem Byte. Für dasjenige Telegramm, das verarbeitet werden soll, ist ein Zeiger in mindestens einer gesonderten Speicherzelle vorgesehen. Der Zeiger wird durch den Rechner 10 gesetzt. In Verbindung mit dem Zeiger ist ein Speicher für die Schnittstellenkennung vorgesehen. Dieser Schnittstellenkennungsspeicher 14 benötigt nur ein bit und gibt an, welche Schnittstelle bearbeitet werden soll. Der Schnittstellenkennungsspeicher 14 wird vom Rechner 10 der zentralen Einheit 1 auf ein bit der Wertigkeit "1' oder "0" gesetzt und von der Steuerung das Dual-Port-Speichers 11 gelesen. Beispielsweise bedeutet eine "1", daß die Schnittstelle zu den Einheiten 4, 5 bearbeitet werden kann, während bei einer "0" im Schnittstellenkennungsspeicher 14 die Schnittstelle für die Einheiten 4, 5 nicht bearbeitet werden darf. Vom Rechner 10 wird daher bestimmt, welche der beiden Schnittstellen bearbeitet wird. Weiterhin ist ein im Zusammenhang mit dem Zeiger stehender Statusspeicher 15 vorgesehen, dessen Inhalt Aufschluß über den Zustand des zugehörien Telegramms gibt. Der Statusspeicher 15 kann 1 byte umfassen, wobei den einzelnen Stellen verschiedene Bedeutungen zugeordnet sind. Ein bit gibt insbesondere an, ob ein Sendeauftrag vorhanden ist oder ob der Auftrag bereits abgewickelt wurde. Ein weiteres bit zeigt an, ob eine Antwort abholbereit ist oder nicht. Das bit für den Auftrag wird vom Rechner der zentralen Einheit 1 gesetzt und nach der Abwicklung von der Steuerung des Dual-Port-Speichers 11 zurückgesetzt. Das weitere bit wird von der Steuerung des Dual-Port-Speichers 11 gesetzt und nach Abholung vom Rechner 10 zurückgesetzt. Die übrigen Stellen des ein byte umfassenden Worts beziehen sich auf eine Fehlerkennung. Wenn ein Sendeauftrag vorliegt, darf der Inhalt des Fehlerkennungsbits vom Rechner 10 nicht verändert werden. Weitere Speicherzellen sind für die Aufnahme des jeweiligen Befehls, für Quittungsangaben und für Fehlerhinweise vorgesehen.The first address space 12 is provided for the interface to the input and output units 7 , 8 and is available in the form of relative addresses. Address space 12 has the following memory allocation: Some of the memory cells are write-locked and contain module-specific data, for example code numbers, part numbers, revision levels for module 2 . Another part of the memory cells is intended as a buffer for receiving telegrams that are to be transmitted to or received from bus 3 . The telegrams include, for example, numerous words with one byte each. A pointer is provided in at least one separate memory cell for the telegram that is to be processed. The pointer is set by the computer 10 . A memory for the interface identifier is provided in connection with the pointer. This interface identifier memory 14 requires only one bit and indicates which interface is to be processed. The interface identification memory 14 is set by the computer 10 of the central unit 1 to a bit with the value "1 'or" 0 "and is read by the controller from the dual-port memory 11. For example, a" 1 "means that the interface to the units 4 , 5 can be processed, while the interface for the units 4 , 5 must not be processed in the case of a "0" in the interface identification memory 14. The computer 10 therefore determines which of the two interfaces is to be processed The status memory 15 , which contains information about the status of the associated telegram, is provided, and the status memory 15 can comprise 1 byte, with different meanings being assigned to the individual digits, in particular a bit indicating whether a send job is present or whether the job already exists Another bit indicates whether a response is ready to be picked up or not d set by the computer of the central unit 1 and reset after processing by the control of the dual-port memory 11 . The further bit is set by the controller of the dual-port memory 11 and is reset after being picked up by the computer 10 . The remaining digits of the one-byte word refer to an error detection. If there is a send order, the content of the error detection bit must not be changed by the computer 10 . Additional memory cells are provided for receiving the respective command, for acknowledgment information and for error messages.

Die Steuerung für den Dual-Port-Speicher 11 prüft wie folgt, welche Schnittstelle bearbeitet werden soll. In einem Verfahrensschritt 16 wird festgestellt, ob der Inhalt des Statusspeichers "1" ist. Trifft dies zu, wird im Schritt 17 ein Auftrag für die Einheiten 7, 8 bearbeitet. Ist der Inhalt des Statusspeichers "0", dann wird der Inhalt des Schnittstellenkennzeichnungsspeichers 14 in einem Schritt 18 geprüft. Ist in diesem eine "1" enthalten, wird in einem Schritt 19 ein Autrag für die Einheiten 4, 5 ausgeführt. Ist der Inhalt des Schnittstellenkennzeichnungsspeichers 14 "0", dann wird ebenso wie nach der Ausführung der Aufträge in den Schritten 17, 19 auf den Schritt 16 übergegangen. Der Adreßraum 12 enthält weiterhin einen zirkularen Pufferspeicher 16 für zu sendende Telegramme. Vom Rechner 10 werden die zu sendenden Telegramme sequentiell im Pufferspeicher 16 abgelegt. Ist der zirkulare Pufferspeicher 16 gefüllt, dann wird am Pufferanfang mit dem Eintragen der zu sendenden Telegramme fortgefahren.The controller for the dual-port memory 11 checks which interface is to be processed as follows. In a method step 16 it is determined whether the content of the status memory is "1". If this is the case, an order for units 7 , 8 is processed in step 17. If the content of the status memory is "0", the content of the interface identification memory 14 is checked in a step 18. If this contains a "1", an order for the units 4 , 5 is carried out in a step 19. If the content of the interface identification memory 14 is "0", then, just as after the execution of the orders in steps 17, 19, a transition is made to step 16. The address space 12 also contains a circular buffer memory 16 for telegrams to be sent. The telegrams to be sent are stored sequentially in the buffer memory 16 by the computer 10 . If the circular buffer memory 16 is filled, the entry of the telegrams to be sent is continued at the beginning of the buffer.

Zum Trennen der Telegramme des Pufferspeicher 16 ist ein Merkerbyte vorgesehen, das aus mehreren Stellen bestehen kann. Es sind zum Beispiel drei Stellen, die mit S, Q, F bezeichnet sind, vorhanden. Die Stellen S, Q, F können folgende Bedeutungen haben:To separate the telegrams of the buffer memory 16 , a flag byte is provided, which can consist of several places. For example, there are three digits labeled S, Q, F. The positions S, Q, F can have the following meanings:

Die Stelle S bezieht sich auf die Sendebeautragung und wird vom Rechner 10 gesetzt und von der Steuerung des Dual-Port-Speichers 11 gelesen. Wenn S=0, dann liegt keine Sendebeauftragung vor. Ist S=1, dann liegt eine Sendebeauftragung für das im Speicher folgende Telegramm vor. Die Stelle Q ist für die Aufnahme einer Quittungsangabe bestimmt und wird von der Steuerung des Dual-Port-Speichers 11 gesetzt. Den Inhalt 0 der Stelle Q ist der Hinweis zugeordnet, daß das Telegramm noch nicht übertragen wurde. Der Inhalt 1 zeigt an, daß das Telegramm übertragen wurde. Der Rechner 10 wertet den Inhalt der Stelle S aus. Die Stelle F bezieht sich auf Fehlerangaben, die von der Steuerung des Dual-Port-Speichers 11 gesetzt und vom Rechner 10 ausgewertet werden. Ist F=0, wird eine fehlerfreie Übertragung angezeigt. Ist F=1, ist das übertragene Telegramm fehlerhaft.The position S relates to the transmission order and is set by the computer 10 and read by the controller of the dual-port memory 11 . If S = 0, then there is no send request. If S = 1, there is a send request for the telegram that follows in the memory. The position Q is intended for the receipt of an acknowledgment and is set by the control of the dual-port memory 11 . The content 0 of position Q is assigned the note that the telegram has not yet been transmitted. Content 1 indicates that the telegram has been transmitted. The computer 10 evaluates the content of the location S. The point F relates to error information that is set by the controller of the dual-port memory 11 and evaluated by the computer 10 . If F = 0, an error-free transmission is displayed. If F = 1, the transmitted telegram is faulty.

Vor dem Eintragen von Telegrammen prüft der Rechner 10, an welcher Stelle des Pufferspeichers freie Speicherplätze vorhanden sind. Dies kann mit zwei Zeigern erfolgen, die den Füllstand und den Leerstand des Pufferspeichers mitteilen und vom Rechner 10 auf den aktuellen Stand gehalten werden. Hinter dem Merkerbyte kann eine Speicherstelle für einen Rückverweis frei bleiben.Before entering telegrams, the computer 10 checks at which location of the buffer memory there are free memory locations. This can be done with two pointers, which indicate the fill level and the empty level of the buffer memory and are kept up to date by the computer 10 . A memory location for a reference can be left behind the flag byte.

Der zirkulare Pufferspeicher 17 für den Empfang von Telegrammen hat eine feste Größe. Die in den Pufferspeicher 17 einlaufenden Telegramme werden sequentiell abgespeichert. Bei Erreichen des Endes des Pufferspeichers wird automatisch zum Pufferanfang zurückgekehrt. Für die abgelegten Telegramme ist ebenfalls ein Merkerbyte zwischen den Telegrammen vorgesehen. Es sind zwei Stellen M1, M2 vorgesehen, die folgende Bedeutung haben:The circular buffer memory 17 for receiving telegrams has a fixed size. The telegrams arriving in the buffer memory 17 are stored sequentially. When the end of the buffer memory is reached, the system automatically returns to the beginning of the buffer. A flag byte is also provided between the telegrams for the stored telegrams. Two positions M1, M2 are provided, which have the following meaning:

Wenn M1=1, ist das Telegramm komplett und abholbereit. Wenn M1=0, ist das Telegramm gespeichert. M1 wird von der Steuerung des Dual-Port-Speichers 11 gesetzt und von dem Rechner 10 gelesen. Wenn M2=1, dann wurde das Telegramm vom Rechner 10 abgeholt. Ist M2=0, dann wurde das Telegramm vom Rechner 10 noch nicht abgeholt. Die Stelle M2 wird vom Rechner 10 gesetzt und von der Steuerung für den Dual-Port-Speicher 11 gelesen.If M1 = 1, the telegram is complete and ready to be picked up. If M1 = 0, the telegram is saved. M1 is set by the controller of the dual-port memory 11 and read by the computer 10 . If M2 = 1, the telegram was fetched from computer 10 . If M2 = 0, the telegram has not yet been picked up by computer 10 . The point M2 is set by the computer 10 and read by the controller for the dual-port memory 11 .

Während des Empfangs eines Telegramms werden von der Steuerung des Dual- Port-Speichers 11 verschiedene Fehlerüberprüfungen durchgeführt. Nach Feststellung eines Fehlers wird in einer Fehlerzelle das entsprechende Fehlerbit gesetzt. Fehlerhafte Telegramme werden nicht im Empfangspuffer abgelegt. Nach Empfang eines fehlerfreien Telegramms wird ein Interrupt an den Rechner 10 gegeben. Bei fehlerfreiem Empfang eines Telegramms bleibt die Fehlerzelle unverändert. Nur während der Normierung wird die Fehlerzelle gelöscht.Various errors are checked by the controller of the dual-port memory 11 while a telegram is being received. After detection of an error, the corresponding error bit is set in an error cell. Faulty telegrams are not stored in the receive buffer. After receipt of an error-free telegram, an interrupt is sent to the computer 10 . If a telegram is received without errors, the error cell remains unchanged. The error cell is only deleted during normalization.

In einem weiteren Speicherbereich 18 ist eine Liste der Adressen der an den Bus 3 angeschlossenen Teilnehmer mit Slave-Funktion enthalten.A further memory area 18 contains a list of the addresses of the subscribers with slave function connected to bus 3 .

Im Adreßraum 13 sind ein Speicherblock 19 für die auszusendenden Telegramme und eine Adressenliste 20 vorhanden. In der Adressenliste 20 stehen nacheinander die Adressen der Sendeaufträge der zu sendenden Telegramme. Für den Empfang ist ein Speicherbereich 21 vorgesehen, der Telegramme unterschiedlicher Länge aufnehmen kann. Eine Liste 22 enthält die Adressen der Einheiten 4, 5. In der Adressenliste 20 ist für jede Adresse eine erste Stelle vorgesehen, in die vom Rechner 10 eine Mitteilung über einen Sendeauftrag an die Steuereinheit des Dual-Port-Speichers 11 eingegeben wird. Eine zweite Stelle in der Adressenliste 20 enhtält eine Mitteilung für den Rechner 10 über einen Übertragungsfehler des Telegramms. Im Speicherbereich 21 werden die Telegramme blockweise eingelesen und byteweise gespeichert.A memory block 19 for the telegrams to be sent and an address list 20 are present in the address space 13 . The address list 20 contains the addresses of the send orders of the telegrams to be sent one after the other. A memory area 21 is provided for reception, which can receive telegrams of different lengths. A list 22 contains the addresses of the units 4 , 5 . In the address list 20 , a first position is provided for each address, into which the computer 10 enters a message about a send order to the control unit of the dual-port memory 11 . A second position in the address list 20 contains a message for the computer 10 about a transmission error in the telegram. In the memory area 21 , the telegrams are read block by block and stored byte by byte.

In einer Stelle der Blöcke ist eine Stelle vorgesehen, in die die Steuereinheit des Dual-Port-Speichers eine Mitteilung über die Vollständigkeit der Übertragung einspeichert. In einer zusätzlichen Stelle ist angegeben, ob die Blöcke bereits gesendet wurden.In one location of the blocks, a location is provided in which the Control unit of the dual-port memory a message on the Completeness of the transmission saved. In an additional place indicates whether the blocks have already been sent.

Falls der Adreßraum 12 der zirkularen Pufferspeicher 15, 16 nicht vollständig belegt ist, also noch freie Bereiche enthält, kann dieser Adreßraum der zweiten Schnittstelle 13 zugeordnet werden.If the address space 12 of the circular buffer memory 15 , 16 is not completely occupied, ie still contains free areas, this address space can be assigned to the second interface 13 .

Claims (4)

1. Anordnung der Datenübertragung zwischen einer zentralen Einheit und an diese über einen seriellen Bus angeschlossenen Teilnehmern, wobei der Datenaustausch über einen Dual-Port-Speicher abgewickelt wird, der über einen parallelen Bus mit der zentralen Einheit und über einen seriellen Bus mit den Teilnehmern verbunden ist, dadurch gekennzeichnet, daß der Adreßraum des Dual-Port-Speichers (11) mindestens in einen ersten und einen zweiten, je einer Schnittstelle zu den Teilnehmern mit übereinstimmendem Busprotokoll zugeordneten Adreßraum (12, 13) aufgeteilt ist und daß im ersten oder zweiten Adreßraum (12, 13) für die in Form von Telegrammen übertragenen und im Dual-Port-Speicher (11) zwischengespeicherten Daten ein gesonderter Speicherbereich mit einen von der zentralen Einheit einstellbaren, auf jeweils ein Telegramm gerichteten Zeiger in Verbindung mit einem von der zentralen Einheit einstellbaren Schnittstellenkennungsspeicher (14), der zur Freigabe oder Sperrung des Telegramms für eine Schnittstelle von der zentralen Einheit entsprechend eingestellt wird, und mit einem Statusspeicher (15) vorgesehen ist, der von der zentralen Einheit zur Mitteilung eines Sendeauftrags an eine Steuereinheit des Dual-Port-Speichers (11) eingestellt wird.1. Arrangement of the data transmission between a central unit and participants connected to it via a serial bus, the data exchange being carried out via a dual-port memory connected to the central unit via a parallel bus and to the participants via a serial bus is characterized in that the address space of the dual-port memory ( 11 ) is divided into at least a first and a second address space ( 12, 13 ), each assigned an interface to the subscribers with a matching bus protocol, and in the first or second address space ( 12, 13 ) for the data transmitted in the form of telegrams and temporarily stored in the dual-port memory ( 11 ), a separate storage area with a pointer that can be set by the central unit and is directed to a telegram in conjunction with a pointer that can be set by the central unit Interface identifier memory ( 14 ) for release or lock tion of the telegram for an interface is set accordingly by the central unit, and is provided with a status memory ( 15 ) which is set by the central unit for notifying a send job to a control unit of the dual-port memory ( 11 ). 2. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß im ersten oder zweiten Adreßraum (12, 13) ein zirkularer Pufferspeicher (16) für zu sendene Telegramme und ein zirkularer Pufferspeicher (15) für empfangene Telegramme vorgesehen sind und daß die Telegramme durch ein Merkerbyte voneinander getrennt sind, das von der zentralen Einheit einstellbare Informationen über einen Sendeauftrag oder keinen Sendeauftrag und von der Steuerung des Dual-Port-Speichers (11) einstellbare Informationen über die vollzogene oder nicht vollzogene Übertragung sowie über die fehlerfreie oder fehlerhafte Übertragung aufweist.2. Arrangement according to claim 2, characterized in that in the first or second address space ( 12, 13 ) a circular buffer memory ( 16 ) for telegrams to be sent and a circular buffer memory ( 15 ) are provided for received telegrams and that the telegrams by a flag byte are separated from one another, which has information which can be set by the central unit about a send job or no send job and information which can be set by the controller of the dual-port memory ( 11 ) about the transmission which has been carried out or not and about the error-free or faulty transmission. 3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß im ersten oder zweiten Adreßraum (12, 13) je ein Speicher für einen den Füllstand des ersten und zweiten Pufferspeichers (16, 17) angebender Zeiger vorgesehen ist.3. Arrangement according to claim 1 or 2, characterized in that in the first or second address space ( 12, 13 ) a memory is provided for a the level of the first and second buffer memory ( 16, 17 ) indicating pointer. 4. Anordnung nach einem oder mehreren der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß jedes Telegramm im Pufferspeicher (17) für den Empfang ein Merkerbyte aufweist, das vom Teilnehmer und von der zentralen Einheit einstellbare Informationen über die Abholbereitschaft oder Sperrung des Telegramms und die vollzogene oder noch nicht vollzogene Abholung durch die zentrale Einheit aufweist.4. Arrangement according to one or more of the preceding claims, characterized in that each telegram in the buffer memory ( 17 ) has a flag byte for reception, which can be set by the subscriber and by the central unit information about the readiness for collection or blocking of the telegram and the completed or has not yet been picked up by the central unit.
DE19893937021 1989-11-07 1989-11-07 Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols Granted DE3937021A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19893937021 DE3937021A1 (en) 1989-11-07 1989-11-07 Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19893937021 DE3937021A1 (en) 1989-11-07 1989-11-07 Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols

Publications (2)

Publication Number Publication Date
DE3937021A1 true DE3937021A1 (en) 1991-05-08
DE3937021C2 DE3937021C2 (en) 1992-08-27

Family

ID=6393024

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19893937021 Granted DE3937021A1 (en) 1989-11-07 1989-11-07 Data transfer control between central unit and subscribers - uses divided dual port memory and interface identification memory for connecting of subscribers with different protocols

Country Status (1)

Country Link
DE (1) DE3937021A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0550864A1 (en) * 1991-12-19 1993-07-14 Mitsubishi Denki Kabushiki Kaisha Communication control apparatus
DE19842849A1 (en) * 1998-09-18 2000-03-23 Siemens Ag Digital data transmission method for ISDN
US6925514B1 (en) * 2001-03-30 2005-08-02 Agere Systems Inc. Multi-protocol bus system and method of operation thereof

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19501489A1 (en) * 1995-01-19 1996-07-25 Abb Patent Gmbh Telegram information transmission using European Installation Bus system e.g. for control of lighting units
AT405998B (en) * 1997-01-21 2000-01-25 Felten & Guilleaume Ag Oester EIB DEVICE FOR INSTALLATION IN AN INSTALLATION BOX

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DE-Z.: Design & Elektronik, Nr. 20, 3.10.1989, S. 6-10 *
US-Z.: Electronics, Sept. 11, 1980, S. 131-135 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0550864A1 (en) * 1991-12-19 1993-07-14 Mitsubishi Denki Kabushiki Kaisha Communication control apparatus
US5507004A (en) * 1991-12-19 1996-04-09 Mitsubishi Denki Kabushiki Kaisha Communication control system for either providing blank areas or overwriting areas in a receiving RAM depending on deficient or execess word counts in received frames
DE19842849A1 (en) * 1998-09-18 2000-03-23 Siemens Ag Digital data transmission method for ISDN
DE19842849C2 (en) * 1998-09-18 2001-02-01 Siemens Ag Method and arrangement for transmitting digital data
US7000058B1 (en) 1998-09-18 2006-02-14 Infineon Technologies Ag Method and configuration for transmitting digital data
US6925514B1 (en) * 2001-03-30 2005-08-02 Agere Systems Inc. Multi-protocol bus system and method of operation thereof
US7206880B2 (en) 2001-03-30 2007-04-17 Agere Systems Inc. Multi-protocol bus system and method of operation thereof

Also Published As

Publication number Publication date
DE3937021C2 (en) 1992-08-27

Similar Documents

Publication Publication Date Title
DE2913288C2 (en) Multiprocessor system with a large number of processor modules
DE2647241C2 (en) Transmission device for synchronous data transmission
DE2719247C3 (en) Data processing system
DE2455803C2 (en) Multiprocessor data processing system
EP0115609B1 (en) Addressing device for the storage of several data processing units in a bus system
DE2828731C2 (en) adapter
DE2856483C2 (en)
DE2646296C3 (en) Electronic associative multi-computer circuit arrangement with a modular structure
DE3933361A1 (en) DEVICE AND METHOD FOR QUEUEING REQUIREMENTS AND ANSWERS ON A PIPELINE PACKAGE BUS
CH522921A (en) Computer system
DE2230830A1 (en) DATA PROCESSING SYSTEM
EP0329005B1 (en) Method for establishing virtual circuits via switches of a multistage switching arrangement
DE4313190B4 (en) Apparatus and method for initializing a data interface for a programmable controller
DE3640646A1 (en) DIAGNOSTIC SYSTEM
CH622367A5 (en)
DE2063195C2 (en) Method and device for controlling the operation of a number of external data stores
DE3937021C2 (en)
DE3938950C2 (en)
EP0555456B1 (en) Data transmission process and data processing system with distributed computing nodes
DE2142374A1 (en) Data processing device
EP0447769A2 (en) Method and circuit arrangement for managing uniform unities and switching element
DE3114734C2 (en)
EP0419721B1 (en) Communication system for programmable logic controllers linked to each other
DE2813016C2 (en) Device for processing signals in a telecommunications system, in particular a telephone exchange
EP0048869B1 (en) Multiprocessor system, particularly with a number of microprocessors

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8120 Willingness to grant licenses paragraph 23
D2 Grant after examination
8363 Opposition against the patent
8327 Change in the person/name/address of the patent owner

Owner name: AEG SCHNEIDER AUTOMATION GMBH, 63500 SELIGENSTADT,

8331 Complete revocation