DE19852276C2 - Method for receiving a message via a serial data bus, functional unit and local network - Google Patents
Method for receiving a message via a serial data bus, functional unit and local networkInfo
- Publication number
- DE19852276C2 DE19852276C2 DE1998152276 DE19852276A DE19852276C2 DE 19852276 C2 DE19852276 C2 DE 19852276C2 DE 1998152276 DE1998152276 DE 1998152276 DE 19852276 A DE19852276 A DE 19852276A DE 19852276 C2 DE19852276 C2 DE 19852276C2
- Authority
- DE
- Germany
- Prior art keywords
- message
- partial
- data bus
- threshold
- criterion
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 21
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000006978 adaptation Effects 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 230000006870 function Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
Die Erfindung bezieht sich auf die Verwendung eines seriellen Datenbus, insbesondere in einem lokalen Netzwerk (local area network).The invention relates to the use of a serial data bus, especially in a local area network.
Aus der DE-OS 33 13 240 ist ein lokales Netzwerk für Einchip-Rechner bekannt, deren serielle Sender und serielle Empfänger über einen Leitungstreiber mit einem gemeinsamen lokalen Netzwerk verbunden sind. Der Leitungstreiber ist ein Tristate-Leitungstreiber, der nur solange aktiv ist und das lokale Netzwerk speist, wie der Sender sendet. Danach wird das lokale Netzwerk automatisch wieder freigeschaltet. Die Sendungen erfolgen in Form von Datentelegrammen, die von den Emfpängern aller an das lokale Netzwerk angeschlossenen Einchip- Rechner empfangen werden. Jedes Datentelegramm enthält unter anderem eine Zieladresse, die nur derjenige Empfänger erkennt, für den das Datentelegramm bestimmt ist. Die Empfänger aller Datensende- und Empfangsstationen verfolgen laufend die Speisung des lokalen Netzwerkes durch ihre vorgeschalteten Leitungstreiber.A local area network for single-chip computers is known from DE-OS 33 13 240, their serial transmitters and serial receivers with a line driver are connected to a common local network. The line driver is a Tristate line driver that is only active as long as the local network feeds as the transmitter broadcasts. After that, the local network becomes automatic unlocked again. The shipments take the form of data telegrams, from the receivers of all single-chip connected to the local network Computers are received. Among other things, each data telegram contains one Destination address that only the recipient recognizes for whom the data telegram is determined. The receivers of all data sending and receiving stations continuously monitor the feeding of the local network through their upstream line driver.
Aus der DE 36 01 243 ist ferner ein lokales Netzwerk der in der DE-OS 33 13 240 genannten Art bekannt, bei dem die Kollisionserkennung in dem lokalen Netzwerk verbessert ist.DE 36 01 243 is also a local network in DE-OS 33 13 240 known type, in which the collision detection in the local Network is improved.
Die aus dem Stand der Technik bekannten lokalen Netzwerke haben den gemeinsamen Nachteil, daß die Erkennung des Empfangs einer vollständigen Nachricht über den seriellen Datenbus im Vergleich zu der Datenübertragungsrate des Datenbus zuviel Zeit in Anspruch nimmt, so daß der Datenbus nicht mit zufriedenstellender Effizienz nutzbar ist.The local networks known from the prior art have the common disadvantage that the detection of receipt of a complete Message over the serial data bus compared to the Data transfer rate of the data bus takes too much time, so that the Data bus cannot be used with satisfactory efficiency.
Der Erfindung liegt daher das Problem zugrunde ein verbessertes Verfahren zum Empfang einer Nachricht über einen seriellen Datenbus, eine Funktionseinheit und ein lokales Netzwerk zu schaffen.The problem underlying the invention is therefore an improved method to receive a message over a serial data bus, a Functional unit and to create a local network.
Die der Erfindung zugrunde liegende Aufgabe wird jeweils mit dem Merkmalen der unabhängigen Patentansprüche gelöst. Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen beansprucht.The object underlying the invention is in each case with the features of the independent claims. Preferred embodiments are claimed in the dependent claims.
Bei dem Verfahren zum Empfang einer Nachricht gemäß der Erfindung löst der Empfang jeder Teilnachricht den Start eines Timers aus. Das bedeutet, daß der Timer beim Empfang einer Teilnachricht zunächst gestartet wird und dann beim Empfang der darauffolgenden Teilnachricht rückgesetzt und erneut gestartet wird. Der Timer enthält daher eine Aussage über die Zeitdauer seit dem Empfang der jeweils letzten Teilnachricht.In the method for receiving a message according to the invention, the Receive every sub-message starting a timer. That means that the Timer is started when a partial message is received and then when Reception of the subsequent partial message reset and restarted becomes. The timer therefore contains a statement about the length of time since Receive the last partial message.
Diese Zeitdauer wird mit einem Schwellwert verglichen. Liegt die Zeitdauer unterhalb des Schwellwerts, so bedeutet dies, daß noch relativ wenig Zeit seit dem Empfang der letzten Teilnachricht vergangen ist, so daß noch mit dem Empfang weiterer Teilnachrichten die zu der jeweiligen Nachricht gehören, gerechnet werden kann. Liegt die Zeitdauer oberhalb des Schwellwerts, so ist das Gegenteil der Fall. Dies erlaubt - insbesondere bei asynchroner Datenübertragung über den seriellen Bus - eine zuverlässige, schnelle und mit geringem Aufwand realisierbare Erkennung, wann sämtliche Teilnachrichten einer Nachricht über den seriellen Datenbus in dem jeweiligen Teilnehmer empfangen worden sind.This period is compared to a threshold. Is the time period below the threshold, this means that there has been relatively little time since the receipt of the last partial message has passed, so that with the Receipt of further partial messages belonging to the respective message, can be expected. If the time period is above the threshold, then the opposite is the case. This allows - especially with asynchronous Data transmission over the serial bus - a reliable, fast and with Recognizable when all partial messages can be realized with little effort a message via the serial data bus in the respective participant have been received.
Falls die Teilnachrichten über den seriellen Datenbus in Form von Datenpaketen vordefinierter Länge übertragen werden und der Zeitabstand zwischen den Datenpaketen auf dem Datenbus ebenfalls vordefiniert ist, so kann der Schwellwert als die Summe der vordefinierten Zeitdauer der Datenpakete plus dem vordefinierten Zeitabstand zwischen zwei Datenpaketen gegenbenenfalls plus einem Toleranzzeitintervall gewählt werden.If the partial messages via the serial data bus in the form of data packets predefined length and the time interval between the Data packets on the data bus is also predefined, the Threshold as the sum of the predefined time period of the data packets plus the predefined time interval between two data packets also plus a tolerance time interval can be selected.
In einer bevorzugten Ausführungsform der Erfindung wird der vollständige Empfang einer Nachricht dann erkannt, wenn der Timer-Ist-Wert mehrfach den Schwellwert überschreitet, wobei die Anzahl der zur Erkennung des Empfangs einer vollständigen Nachricht erforderlichen Überschreitungen als weiterer Schwellwert definiert ist. Der weitere Schwellwert kann zum Beispiel gleich vier gesetzt werden. Das bedeutet, daß sobald der Timer-Ist Wert die vordefinierte Zeitdauer viermal überschritten hat, von einer genügend großen Wahrscheinlichkeit auszugehen ist, daß tatsächlich alle zu der Nachricht gehörenden Teilnachrichten empfange worden sind und damit der Empfang der Nachricht als vollständig angesehen wird.In a preferred embodiment of the invention, the complete Receipt of a message recognized when the actual timer value multiple times Threshold exceeds the number of times to detect reception of a full message required to be exceeded Threshold is defined. The further threshold value can be four, for example be set. This means that as soon as the timer actual value is the predefined Has exceeded four times, of a sufficiently large one Probability is that everyone actually goes to the message belonging partial messages have been received and thus the receipt of the Message is considered complete.
Falls die Länge der Teilnachrichten nicht fest vordefiniert ist, kann die statistisch ermittelte mittlere Länge der Teilnachrichten zur Bildung des Schwellwerts anstelle einer definierten Länge herangezogen werden.If the length of the partial messages is not predefined, it can be statistical determined average length of the partial messages to form the threshold value instead of a defined length.
Das erfindungsgemäße Verfahren zum Empfang einer Nachricht kann vorteilhaft in eine Funktionseinheit implementiert werden, z. B. in eine Telefon-, Funk-, ISDN-, Bedienplatzanpassungs- oder PCM Koppelfeldfunktionseinheit. Solche Funktionseinheiten werden oft als Einschubskarte ausgebildet, die dann über einen seriellen Datenbus lokal miteinander verbunden werden. Solche mit einem entsprechenden lokalen Netzwerk verknüpfbare Funktionseinheiten werden bevorzugt in der Funktechnik, insbesondere der Bündelfunktechnik eingesetzt.The method according to the invention for receiving a message can be advantageous be implemented in a functional unit, e.g. B. in a telephone, radio, ISDN, operator station adaptation or PCM switching matrix function unit. Such Functional units are often designed as a plug-in card, which then over a serial data bus can be connected locally. Those with one corresponding local network connectable functional units preferably used in radio technology, especially trunked radio technology.
Ausführungsbeispiele der Erfindung sind in der Zeichnung anhand mehrerer Figuren dargestellt und in der nachfolgenden Beschreibung näher erläutert. Die Zeichnung zeigt inEmbodiments of the invention are shown in the drawing based on several Figures shown and explained in more detail in the following description. The Drawing shows in
Fig. 1 eine Datenpaketstruktur, wie sie an sich aus dem Stand der Technik bekannt ist, Fig. 1 is a data packet structure, as is known per se from the prior art,
Fig. 2 ein schematisches Blockschaltbild einer Funktionseinheit gemäß der Erfindung, Fig. 2 is a schematic block diagram of a functional unit according to the invention,
Fig. 3 ein Flußdiagramm einer ersten bevorzugten Ausführungsform des Verfahrens zum Empfang einer Nachricht und Fig. 3 is a flowchart of a first preferred embodiment of the method for receiving a message, and
Fig. 4 ein Flußdiagramm einer zweiten bevorzugten Ausführungsform des Verfahrens zum Empfang einer Nachricht. Fig. 4 is a flowchart of a second preferred embodiment of the method for receiving a message.
Fig. 1 zeigt eine an sich bekannte Datenpaketstruktur. Datenpaketstrukturen des in der Fig. 1 dargestellten Formats werden beispielsweise in der RS 422/RS 485 Schnittstellennorm benutzt. Diese serielle, busfähige und symetrische Schnittstelle ist für 32 Netzwerkteilnehmer vorgesehen. Für den Netzwerkzugriff kann das CSMA/CD-Verfahren gewählt werden. Dieses Verfahren stellt eine Wettstreitmethode dar. FIG. 1 shows a known data packet structure. Data packet structures of the format shown in FIG. 1 are used, for example, in the RS 422 / RS 485 interface standard. This serial, bus-compatible and symmetrical interface is intended for 32 network participants. The CSMA / CD method can be selected for network access. This procedure is a competitive method.
Fig. 1 zeigt beispielhaft die Datenpakete 10 und 20, die jeweils identisch aufgebaut sind. Am Anfang eines jeden Datenpakets steht eine Start- Information. In dem hier betrachteten Beispiel sind dies die Startbits 11 bzw. 21. Dieser Start-Information folgt jeweils ein Synchronisierungszeichen (Präambel) welches den Beginn eines Datenpaketes anzeigt. In dem Beispiel der Fig. 1 sind dies die Präambeln 12 bzw. 22. Von der Präambel gefolgt werden die eigentlichen Nutzdaten 13 bzw. 23. In der Fig. 1 nicht dargestellt sind die Zieladresse und die Quelladresse des jeweiligen Datenpakets. Fig. 1 shows an example of the data packets 10 and 20, which are constructed identically in each case. At the beginning of each data packet there is start information. In the example considered here, these are the start bits 11 and 21, respectively. This start information is followed by a synchronization symbol (preamble) which indicates the start of a data packet. In the example in FIG. 1, these are the preambles 12 and 22, respectively. The actual user data 13 and 23 are followed by the preamble. The destination address and the source address of the respective data packet are not shown in FIG. 1.
Die Datenpakete 10 und 20 werden jeweils durch ein Stopbit 14 bzw. 24 abgeschlossen.The data packets 10 and 20 are each terminated by a stop bit 14 and 24 , respectively.
Die vordefinierte Länge T1 eines Datenpakets hängt von der Datenübertragungsrate des verwendeten Datenbus ab. In dem Beispiel der Fig. 1 beträgt diese Länge T1 170 Mikrosekunden. Die Zeitdauer T2 zwischen zwei aufeinanderfolgenden Datenpaketen auf dem Datenbus ist ebenfalls festgelegt. In dem betrachteten Beispiel beträgt T2 17 Mikrosekunden.The predefined length T1 of a data packet depends on the data transfer rate of the data bus used. In the example of FIG. 1, this length T1 is 170 microseconds. The time period T2 between two successive data packets on the data bus is also fixed. In the example considered, T2 is 17 microseconds.
Zur Übertragung einer Nachricht von einem Teilnehmer des lokalen Netzwerkes zu einem anderen Teilnehmer wird diese Nachricht - je nach deren Länge - in Form von einer oder mehrerer Teilnachrichten übertragen. Dabei wird jede Teilnachricht in Form eines Datenpakets entsprechend dem Format der gezeigten Datenpakete 10 und 20 über den seriellen Datenbus übertragen. Empfängerseitig müssen dann sämtliche zu einer Nachricht gehörenden Datenpakete empfangen werden, um aus dem jeweiligen Teilnachrichten die vollständige Nachricht zu gewinnen. Nach Empfang der vollständigen Nachricht kann diese dann beispielsweise von dem Mikroprozessor des empfangenden Teilnehmers ausgewertet werden. To transmit a message from a participant in the local network to another participant, this message is transmitted in the form of one or more partial messages, depending on its length. Each partial message is transmitted in the form of a data packet in accordance with the format of the data packets 10 and 20 shown over the serial data bus. All data packets belonging to a message must then be received at the receiver in order to obtain the complete message from the respective partial messages. After receipt of the complete message, this can then be evaluated, for example, by the receiving party's microprocessor.
Fig. 2 zeigt ein Blockdiagramm einer erfindungsgemäßen Funktionskarte 30. Die Funktionskarte 30 ist über ihre asynchrone Schnittstelle 32 mit dem seriellen Datenbus 34 verknüpft. Die Funktionskarte 30 weist einen Mikroprozessor 36 auf, der sowohl mit der asynchronen Schnittstelle 32 als auch mit dem Speicher 38 verknüpft ist. Der Speicher 38 weist einen Speicherbereich 40 zur Speicherung eines Programms und einen Speicherbereich 42 zur Speicherung von Daten auf. Fig. 2 shows a block diagram of a function card 30 according to the invention. The function card 30 is linked to the serial data bus 34 via its asynchronous interface 32 . The function card 30 has a microprocessor 36 which is linked both to the asynchronous interface 32 and to the memory 38 . The memory 38 has a memory area 40 for storing a program and a memory area 42 for storing data.
Die Funktionskarte weist ferner einen Timer 44 mit einem Schwellwert 46 auf. Der Timer 44 ist mit der asynchronen Schnittstelle 32 verknüpft. In einem Register 48 kann seitens der asynchronen Schnittstelle 32 ein Interruptbit gesetzt werden. Zum Empfang einer Nachricht über den seriellen Datenbus 34 überwacht die asynchrone Schnittstelle 32 den seriellen Datenbus 34. Sobald die asynchrone Schnittstelle 32 eine Start-Information z. B. in Form eines Startbits auf dem Datenbus erkennt, wird das entsprechende Datenpaket von dem seriellen Datenbus 34 durch die asynchrone Schnittstelle 32 empfangen. Das so empfangene Datenpaket beinhaltet eine Teilnachricht, die über den Mikroprozessor 36 zunächst in dem Speicherbereich 42 des Speichers 38 zwischengespeichert wird.The function card also has a timer 44 with a threshold value 46 . The timer 44 is linked to the asynchronous interface 32 . An asynchronous interface 32 can set an interrupt bit in a register 48 . The asynchronous interface 32 monitors the serial data bus 34 to receive a message via the serial data bus 34 . As soon as the asynchronous interface 32 a start information z. B. in the form of a start bit on the data bus, the corresponding data packet is received by the serial data bus 34 through the asynchronous interface 32 . The data packet received in this way contains a partial message which is first temporarily stored in the memory area 42 of the memory 38 via the microprocessor 36 .
Mit der Erkennung der Startinformation seitens der asynchronen Schnittstelle 32 startet diese den Timer 44. Überschreitet der Timer 44 den Schwellwert 46 so wird dies der asynchronen Schnittstelle 32 signalisiert. Dies hat zur Folge, daß die asynchrone Schnittstelle 32 die entsprechende Nachricht als vollständig empfangen erkennt und in dem Register 38 ein Interuptbit setzt. Dieses Interuptbit in dem Register 48 hat zur Folge, daß der Mikroprozessor 36 auf den Speicherbereich 42 zugreift in dem die zu der Nachricht gehörenden Teilnachrichten zwischengespeichert sind und sodann die Nachricht auswertet, indem z. B. eine entsprechende Operation entsprechend der Funktionalität der Funktionskarte durchgeführt wird.The asynchronous interface 32 starts the timer 44 when the start information is recognized. If the timer 44 exceeds the threshold value 46 , this is signaled to the asynchronous interface 32 . The result of this is that the asynchronous interface 32 recognizes the corresponding message as having been completely received and sets an interrupt bit in the register 38 . This interrupt bit in the register 48 has the consequence that the microprocessor 36 accesses the memory area 42 in which the sub-messages belonging to the message are temporarily stored and then evaluates the message by z. B. a corresponding operation is carried out according to the functionality of the function card.
In dem Timer 44 wird also ständig überprüft ob der Timer-Ist Wert nach dem starten des Timers hinsichtlich des Schwellwerts ein Kriterium erfüllt, nämlich kleiner als der Schwellwert ist. Solange dieses Kriterium erfüllt ist, erfolgt seitens des Timers 44 an die asynchrone Schnittstelle 32 keine Signalisierung, so daß diese den seriellen Datenbus 34 weiterhin zur Erkennung einer Start-Information eines eine weitere Teilnachricht beinhaltenden Datenpakets überwacht.In the timer 44 , it is therefore constantly checked whether the actual timer value fulfills a criterion with respect to the threshold value after the timer has started, namely is smaller than the threshold value. As long as this criterion is met, the timer 44 does not signal the asynchronous interface 32 , so that the latter continues to monitor the serial data bus 34 to identify start information of a data packet containing a further partial message.
Praktisch kann die Entscheidung ob das Kriterium erfüllt ist, d. h. ob der Timer-Ist Wert unterhalb des Schwellwerts liegt, so durchgeführt werden, daß das Ablaufen des Timers, die Überschreitung des Schwellwerts 46 anzeigt.In practice, the decision as to whether the criterion is met, ie whether the actual timer value is below the threshold value, can be carried out in such a way that the expiration of the timer indicates that the threshold value 46 has been exceeded.
Die asynchrone Schnittstelle 32 kann so ausgebildet sein, daß diese ein Register 50 zur Speicherung eines Index k aufweist. Beim Empfang einer ersten zu der Nachricht gehörenden Teilnachricht ist dieser Index k zunächst gleich 0. Überschreitet dann der Timer-Ist Wert während des Empfangsvorgangs den Schwellwert 46, so wird dies - wie oben beschrieben - der asynchronen Schnittstelle 23 von dem Timer 44 signalisiert. Dies führt dazu, daß die asynchrone Schnittstelle den in dem Register 50 gespeicherten Index k um eins erhöht. Der Inhalt des Registers 50 wird von dem Vergleicher 52 der asynchronen Schnittstelle überwacht und mit einem in dem Vergleicher 52 gespeicherten Schwellwert 54 hinsichtlich eines Kriteriums verglichen. Dieses Kriterium ist, ob der Wert des Index k kleiner als der Schwellwert 54 ist. Sobald dieses Kriterium nicht mehr erfüllt ist signalisiert dies der Vergleicher 52 der asynchronen Schnittstelle 32, so daß diese die Nachricht als vollkommen empfangen erachtet und dann das Interruptbit in dem Register 48 setzt, was wiederum zur Folge hat, daß der Mikroprozessor 36 auf die vollständige Nachricht in dem Speicherbereich 42 zugreift. Bei dieser Ausführungsform wird also nicht bereits bei der ersten Überschreitung des Schwellwerts 46 eine Nachricht als vollständig empfangen angesehen, sondern erst dann wenn der Schwellwert 46 mehrfach den Schwellwert 54 überschritten hat. Die Wahl des Schwellwerts 54 ist durch die erforderliche Sicherheit bestimmt, mit der eine Nachricht von der Funktionskarte 30 empfangen werden muß. Bei einer asynchronen Übertragung von Datenpaketen über den seriellen Datenbus 34 kann nie ganz ausgeschlossen werden, daß auch nach relativ langer Zeit noch ein "Nachzügler" in Form eines Datenpakets welcher eine Teilnachricht beinhaltet über den seriellen Datenbus zu der Funktionskarte 30 gelangt. Wenn auch ein solcher "Nachzügler" noch mit großer Sicherheit als zu der Nachricht gehörende Teilnachricht erkannt werden soll, muß entsprechend der Schwellwert 54 groß gewählt werden. Das hat auf der anderen Seite den Nachteil, daß dann die Zeit zwischen dem Empfang einer bereits vollständigen Nachricht und dem Setzten des Interruptbits in dem Register 48 länger als nötig sein kann, so daß die bereits empfangene Nachricht er zu einem relativ späten Zeitpunkt von dem Mikroprozessor 36 verarbeitet werden kann. Die Wahl des Schwellwerts 54 als 3 oder 4 ist im allgemeinen ein idealer Kompromiß zwischen Datendurchsatz und Sicherheit der Erkennung des Empfangs einer vollständigen Nachricht.The asynchronous interface 32 can be designed such that it has a register 50 for storing an index k. When a first partial message belonging to the message is received, this index k is initially equal to 0. If the actual timer value exceeds the threshold value 46 during the receiving process, this is signaled to the asynchronous interface 23 by the timer 44 , as described above. As a result, the asynchronous interface increases the index k stored in register 50 by one. The content of the register 50 is monitored by the comparator 52 of the asynchronous interface and compared with a threshold value 54 stored in the comparator 52 with regard to a criterion. This criterion is whether the value of the index k is less than the threshold 54 . As soon as this criterion is no longer met, the comparator 52 signals the asynchronous interface 32 so that it considers the message to be completely received and then sets the interrupt bit in the register 48 , which in turn means that the microprocessor 36 receives the complete message accesses in the memory area 42 . In this embodiment is therefore not considered a message received as completely already at the first crossing of threshold 46, but only if the threshold has 46 several times exceeded the threshold 54th The choice of the threshold value 54 is determined by the required security with which a message from the function card 30 must be received. In the case of asynchronous transmission of data packets via the serial data bus 34, it can never be completely ruled out that, even after a relatively long time, a "straggler" in the form of a data packet which contains a partial message reaches the function card 30 via the serial data bus. If such a "straggler" is still to be recognized with great certainty as a partial message belonging to the message, the threshold value 54 must be chosen to be large. On the other hand, this has the disadvantage that the time between the receipt of an already complete message and the setting of the interrupt bit in the register 48 can then be longer than necessary, so that the already received message is received by the microprocessor at a relatively late point in time 36 can be processed. Choosing threshold 54 as 3 or 4 is generally an ideal compromise between data throughput and certainty of detecting receipt of a complete message.
Fig. 3 zeigt ein Flußdiagramm einer ersten Ausführungsform des erfindungsgemäßen Verfahrens. Zunächst erfolgt in dem Schritt 100 eine Initialisierung der Indizes i und j. Der Index i bezeichnet die i-te Teilnachricht einer Nachricht j. Beide Indices i und j werden in dem Schritt 100 gleich 0 gesetzt.A flow chart of Fig. 3 shows a first embodiment of the inventive method. Initially, the indexes i and j are initialized in step 100 . The index i denotes the i-th partial message of a message j. Both indices i and j are set to 0 in step 100 .
In dem Schritt 102 folgt eine Überwachung des Datenbus durch die Schnittstelle. Diese Überwachung kann beispielsweise durch die asynchrone Schnittstelle 32 der Fig. 2 durchgeführt werden.In step 102 , the data bus is monitored by the interface. This monitoring can be carried out, for example, by the asynchronous interface 32 of FIG. 2.
Sobald eine Start-Information, beispielsweise in Form eines Startbits, durch die Schnittstelle in dem Schritt 104 erkannt worden ist wird die i-te Teilnachricht in Form eines Bytes i durch die Schnittstelle in dem Schritt 106 empfangen. Daraufhin wird ein Timer in dem Schritt 108 gestartet. Dieser Timer kann der Timer 44 in dem Ausführungsbeispiel der Fig. 2 sein. Alternativ kann der Timer in dem Schritt 108 auch bereits unmittelbar nach der Erkennung des Startbits durch die Schnittstelle in dem Schritt 104 erfolgen.As soon as start information, for example in the form of a start bit, has been recognized by the interface in step 104 , the i-th partial message in the form of a byte i is received by the interface in step 106 . A timer is then started in step 108 . This timer can be the timer 44 in the exemplary embodiment in FIG. 2. Alternatively, the timer in step 108 can also take place immediately after the detection of the start bit by the interface in step 104 .
Nach Empfang des Bytes i in dem Schritt 106 wird dieses Byte i in einem Datenspeicher zwischengespeichert. Dies kann der Speicherbereich 42 in dem Ausführungsbeispiel der Fig. 2 sein. Der Wert des Index i wird sodann in dem Schritt 112 um eins vergrößert. In dem Schritt 114 wird nach Starten des Timers in dem Schritt 108 der Timer-Ist Wert mit einem Schwellwert verglichen. Dieser Schwellwert kann beispielsweise 200 Mikrosekunden betragen. Solange der Timer-Ist Wert kleiner als der Schwellwert ist, kann es in dem Schritt 104 zur Erkennung eines weiteren Startbits durch die Schnittstelle kommen, welches derselben Nachricht j zugeordnet wird. Sobald hingegen der Schwellwert überschritten wird, bedeutet dies das die Nachricht j vollständig empfangen worden ist und der Prozessor die Nachricht j verarbeiten kann. Dies erfolgt in dem Schritt 116. In dem Schritt 118 wird der Index i zurückgesetzt und der Index j inkrementiert. Das bedeutet das nunmehr in dem Schritt 102 der Datenbus auf den Empfang der ersten Teilnachricht der nächsten Nachricht überwacht wird.After receipt of byte i in step 106 , this byte i is temporarily stored in a data memory. This can be the memory area 42 in the exemplary embodiment in FIG. 2. The value of the index i is then increased by one in step 112 . In step 114 , after starting the timer in step 108, the actual timer value is compared with a threshold value. This threshold value can be, for example, 200 microseconds. As long as the actual timer value is less than the threshold value, a further start bit can be recognized by the interface in step 104 , which is assigned to the same message j. On the other hand, as soon as the threshold value is exceeded, this means that message j has been completely received and the processor can process message j. This is done in step 116 . In step 118 , the index i is reset and the index j is incremented. This means that now in step 102 the data bus is monitored for the receipt of the first partial message of the next message.
Fig. 4 zeigt ein Flußdiagramm einer zweiten Ausführungsform der Erfindung. Diese zweite Ausführungsform unterscheidet sich von der Ausführungsform der Fig. 3 dadurch, daß zwischen die Schritte 114 und 116 die beiden zusätzlichen Schritte 120 und 122 eingefügt sind. Ferner unterscheidet sich das Ausführungsbeispiel der Fig. 4 dadurch das in dem Schritt 100 außer den Indizes i und j auch der Index k als 0 initialisiert werden. Wird in dem Schritt 114 die Überschreitung des Schwellwerts durch den Timer-Ist Wert festgestellt, so hat dies zur Folge, daß in dem Schritt 120 der Index k inkrementiert wird. In dem Schritt 122 wird sodann geprüpft, ob der Index k kleiner als ein weiterer Schwellwert - in diesem Beispiel 4 - ist. Ist dieses Kriterium erfüllt, so kann gegebenenfalls ein weiteres Startbit durch die Schnittstelle in dem Schritt 104 erkannt werden, um eine weitere zu der Nachricht j gehörige Teilnachricht i zu empfangen. Ist hingegen dieses Kriterium in dem Schritt 122 nicht erfüllt, so werden wiederum die Schritter 116 und 118 wie in dem Ausführungsbeispiel der Fig. 3 ausgeführt. Fig. 4 shows a flow chart of a second embodiment of the invention. This second embodiment differs from the embodiment of FIG. 3 in that the two additional steps 120 and 122 are inserted between steps 114 and 116 . Furthermore, the exemplary embodiment in FIG. 4 differs in that, in step 100, in addition to the indices i and j, the index k is also initialized as 0. If it is determined in step 114 that the threshold value has been exceeded by the actual timer value, this has the consequence that in step 120 the index k is incremented. In step 122 it is then checked whether the index k is less than a further threshold value - 4 in this example. If this criterion is met, a further start bit can optionally be recognized by the interface in step 104 in order to receive a further partial message i belonging to the message j. If, on the other hand, this criterion is not met in step 122 , steps 116 and 118 are again carried out as in the exemplary embodiment in FIG. 3.
Claims (20)
- a) Überwachung des Datenbus zur Erkennung einer Startinformation (11) einer ersten Teilnachricht (10, 20),
- b) Empfang der ersten Teilnachricht,
- c) Starten eines Timers (44) anläßlich des Empfangs der ersten Teilnachricht,
- d) Vergleich des Timer-Istwerts mit einem ersten Schwellwert (46) und
- e) falls der Timer-Istwert hinsichtlich des ersten Schwellwerts ein erstes Kriterium erfüllt: Überwachung des Datenbus auf das Vorliegen einer weiteren Start-Information einer weiteren Teilnachricht.
- a) monitoring the data bus to identify start information ( 11 ) of a first partial message ( 10 , 20 ),
- b) receiving the first partial message,
- c) starting a timer ( 44 ) when the first partial message is received,
- d) comparison of the actual timer value with a first threshold value ( 46 ) and
- e) if the actual timer value fulfills a first criterion with regard to the first threshold value: monitoring of the data bus for the presence of further start information of a further partial message.
- a) falls der Timer-Istwert in dem Schritt e) das erste Kriterium nicht erfüllt.
- - Inkrementierung eines Index (50) und Vergleich des Index mit einem zweiten Schwellwert (54);
- - falls der Index hinsichtlich des zweiten Schwellwerts ein zweites Kriterium erfüllt: Überwachung des Datenbus auf das Vorliegen einer weiteren Start-Information einer weiteren Teilnachricht.
- a) if the actual timer value in step e) does not meet the first criterion.
- - incrementing an index ( 50 ) and comparing the index with a second threshold value ( 54 );
- - If the index fulfills a second criterion with regard to the second threshold value: monitoring of the data bus for the presence of further start information of a further partial message.
- a) Mittel zur Überwachung (32) des Datenbus zur Erkennung einer Start- Information;
- b) Mittel zum Empfang (32) der Teilnachricht oder der Teilnachrichten;
- c) Mittel zum Starten (32) eines Timers (44) anläßlich des Empfangs einer Teilnachricht, wobei die Mittel zur Überwachung, die Mittel zum Empfang und die Mittel zum Starten eines Timers so miteinander verknüpft sind, daß bei Registrierung einer Start-Information durch die Mittel zur Überwachung, die Mittel zum Empfang die jeweilige Teilnachricht von dem Datenbus empfangen, und die Mittel zum Starten eines Timers vorzugsweise mit der Registrierung der Start-Information den Timer starten, und
- d) erste Entscheidungsmittel (44, 46) zur Entscheidung ob der Timer-Istwert hinsichtlich eines ersten Schwellwerts (46) ein erstes Kriterium erfüllt, wobei die Entscheidungsmittel mit den Mitteln zur Überwachung so verknüpft sind, daß in dem Fall des Erfüllens des ersten Kriteriums die Mittel zur Überwachung den Datenbus hinsichtlich einer weiteren Start-Information einer weiteren Teilnachricht überwachen.
- a) means for monitoring ( 32 ) the data bus to detect start information;
- b) means for receiving ( 32 ) the partial message or the partial messages;
- c) means for starting ( 32 ) a timer ( 44 ) on the occasion of receiving a partial message, the means for monitoring, the means for receiving and the means for starting a timer being linked to one another in such a way that when starting information is registered by the Means for monitoring, the means for receiving receive the respective partial message from the data bus, and the means for starting a timer, preferably starting the timer with the registration of the start information, and
- d) first decision means ( 44 , 46 ) for deciding whether the timer actual value fulfills a first criterion with respect to a first threshold value ( 46 ), the decision means being linked to the means for monitoring in such a way that if the first criterion is met, the Monitoring means monitor the data bus for further start information of a further partial message.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1998152276 DE19852276C2 (en) | 1998-11-13 | 1998-11-13 | Method for receiving a message via a serial data bus, functional unit and local network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1998152276 DE19852276C2 (en) | 1998-11-13 | 1998-11-13 | Method for receiving a message via a serial data bus, functional unit and local network |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19852276A1 DE19852276A1 (en) | 2000-05-25 |
DE19852276C2 true DE19852276C2 (en) | 2001-09-27 |
Family
ID=7887619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1998152276 Expired - Fee Related DE19852276C2 (en) | 1998-11-13 | 1998-11-13 | Method for receiving a message via a serial data bus, functional unit and local network |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE19852276C2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1523826B1 (en) | 2002-07-18 | 2007-12-12 | VEGA Grieshaber KG | Bus station with an integrated bus monitor function |
EP1892885B1 (en) | 2002-07-18 | 2010-11-03 | VEGA Grieshaber KG | Bus station with an integrated bus monitor function |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3313240A1 (en) * | 1983-04-13 | 1984-10-25 | Siegfried 7562 Gernsbach Schwarz | Local network for single-chip computers |
DE3601243A1 (en) * | 1986-01-17 | 1987-07-23 | Bosch Gmbh Robert | Local area network for single-chip computers |
DE4020809C2 (en) * | 1990-06-29 | 1994-10-20 | Siemens Ag | Method for exchanging information via a serial bus |
-
1998
- 1998-11-13 DE DE1998152276 patent/DE19852276C2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3313240A1 (en) * | 1983-04-13 | 1984-10-25 | Siegfried 7562 Gernsbach Schwarz | Local network for single-chip computers |
DE3601243A1 (en) * | 1986-01-17 | 1987-07-23 | Bosch Gmbh Robert | Local area network for single-chip computers |
DE4020809C2 (en) * | 1990-06-29 | 1994-10-20 | Siemens Ag | Method for exchanging information via a serial bus |
Also Published As
Publication number | Publication date |
---|---|
DE19852276A1 (en) | 2000-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0576459B1 (en) | Method of composing messages for data-exchange purposes and/or for the synchronization of processes in data-exchange systems | |
DE69026331T2 (en) | Station to station full duplex communication in communication networks | |
DE69328578T2 (en) | Powerful and reliable transmission method and system for large amounts of data | |
DE2953444C2 (en) | Arrangement and method for a digital data transmission network | |
EP0850547B1 (en) | Process for transmitting data packets from mobile stations to base stations in mobile radio systems operated on the time multiplex system | |
AT410875B (en) | METHOD AND SYSTEM FOR TRANSMITTING DATA | |
DE19639845C1 (en) | Local network with sending and receiving device | |
DE3882192T2 (en) | Interface arrangement for the connection between, on the one hand, separate stations and, on the other hand, a physical means used for communication between these stations. | |
EP2585935A1 (en) | Method and device for transmitting data having variable bit length | |
DE10246793B4 (en) | Transmission control device using a CAN protocol | |
DE3635106C2 (en) | ||
EP0443003B1 (en) | Channel access process for a local transmission system configured as a bus system | |
EP0610202B1 (en) | Process for information transmission in a bus system having several participants | |
DE69029385T2 (en) | DEVICE FOR SERIAL SIGNAL TRANSMISSION AND METHOD FOR CONTROLLING THE POLARITY DETERMINATION | |
WO2009080524A1 (en) | Method for transmitting data in a cycle-based communications system | |
DE69637013T2 (en) | Method for automatically adapting parameters of an interface | |
EP0989701A2 (en) | Data bus | |
DE10127417A1 (en) | Transport protocol system for communication between units and a host using data packets with identification | |
DE19636394A1 (en) | Local, ring-structured network operating according to the asynchronous transfer mode with wireless terminals | |
DE60113766T2 (en) | System and method for data transmission in two modes and corresponding transmitter and receiver | |
DE19852276C2 (en) | Method for receiving a message via a serial data bus, functional unit and local network | |
DE10296916B4 (en) | Communication device and method for supporting multiple access with line monitoring / collision detection | |
DE69410824T2 (en) | SIGNALING MESSAGE TRANSFER IN A CELLULAR MOBILE RADIO SYSTEM WITH APPROPRIATE BASE STATION AND MOBILE DEVICE | |
DE102008001548A1 (en) | Subscriber node of a communication system, communication system and method for transmitting a message in the communication system | |
EP3910886B1 (en) | Device and method for data transmission on a plurality of data transmission channels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |