DE10121461A1 - Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host - Google Patents

Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host

Info

Publication number
DE10121461A1
DE10121461A1 DE2001121461 DE10121461A DE10121461A1 DE 10121461 A1 DE10121461 A1 DE 10121461A1 DE 2001121461 DE2001121461 DE 2001121461 DE 10121461 A DE10121461 A DE 10121461A DE 10121461 A1 DE10121461 A1 DE 10121461A1
Authority
DE
Germany
Prior art keywords
ring buffer
subscriber
buffer memory
communication system
host
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.)
Ceased
Application number
DE2001121461
Other languages
German (de)
Inventor
Andre Neubauer
Roland Hellfajer
Matthias Sauer
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE2001121461 priority Critical patent/DE10121461A1/en
Publication of DE10121461A1 publication Critical patent/DE10121461A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/005Correction by an elastic buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/061Adapt frequency, i.e. clock frequency at one side is adapted to clock frequency, or average clock frequency, at the other side; Not pulse stuffing only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • H04L7/0029Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of received data signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

A method for ascertaining and balancing/compensating the clock shift or misalignment between a subscriber (1) and a transmission module (2) communicating with the subscriber. Both have their own clock supply devices in which in the subscriber (1) and/or transmitting module (2) is contained a ring buffer store in which received data elements are read and the contents level (WP) of the ring buffer store is evaluated or assessed. Independent claims are given for the following: (A) A subscriber (host) of a communications system. (B) A transmitting module.

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Taktver­ satzausgleich zwischen einem Teilnehmer (Host) eines Kommuni­ kationssystems, insbesondere eines Bluetooth-Kommunikations­ systems, und einer mit dem Teilnehmer kommunizierenden Sende­ baugruppe (Device).The present invention relates to a method for clocking Record balancing between a participant (host) of a communication cation system, in particular a Bluetooth communication systems, and a broadcast communicating with the participant assembly (device).

Ein Kommunikationssystem nach der Art eines Bluetooth-Systems ist beispielsweise in der Datei "Specification of the Blue­ tooth-System", 1.12.1999, Dokument Na.1.C.47.-1.0 B, im In­ ternet veröffentlicht unter der Adresse http:/ / www.bluetooth.com, und beschrieben. Dem darin be­ schriebenen Kommunikationssystem liegt ein vor kurzer Zeit entwickelter Kommunikationsstandard zugrunde, der eine TDD- (time-division-duplex-)basierte Datenübertragung zwischen elektronischen Endeinrichtungen (z. B. Computern, Computerpe­ ripheriegeräten, Telefonen, Nebenstellen) ermöglicht. Die Da­ tenübertragung erfolgt im Bluetooth-System über eine Funk­ strecke.A communication system like a Bluetooth system is, for example, in the file "Specification of the Blue tooth system ", 1.12.1999, document Na.1.C.47.-1.0 B, in In ternet published at the address http: / / www.bluetooth.com, and described. The be in it written communication system is a short time ago developed communication standard based on a TDD (time-division-duplex) based data transfer between electronic terminal devices (e.g. computers, computer pe peripheral devices, telephones, extensions). The Da The transmission in the Bluetooth system takes place via a radio route.

Eine Besonderheit des Bluetooth-Systems besteht darin, dass nicht alle miteinander kommunizierenden Endgeräte gleichbe­ rechtigt sind. Das Bluetooth-System umfasst genau eine Haupt- Endeinrichtung (Master) und eine oder mehrere Neben- Endeinrichtungen (Slaves). Die Rolle (Slave oder Master), die eine Endeinrichtung im Kommunikationssystem einnimmt, ist keine originäre Eigenschaft der entsprechenden Endeinrich­ tung, sondern auf Protokollebene des Systems frei zuweisbar. Die Haupt-Endeinrichtung agiert als Kontrollinstanz für die Neben-Endeinrichtungen. A special feature of the Bluetooth system is that not all communicating devices are the same are justified. The Bluetooth system comprises exactly one main Terminal equipment (master) and one or more secondary Terminal equipment (slaves). The role (slave or master) that occupies a terminal in the communication system not an original feature of the corresponding end device tion, but freely assignable at the system log level. The main terminal acts as a control body for the In addition to terminal equipment.  

Jeder Teilnehmer (Host) des Bluetooth-Kommunikationssystems, also jede Haupt- oder Neben-Endeinrichtung, weist eine Sende­ baugruppe (Device) aus, die beispielsweise in Form eines An­ steckmoduls mit dem Teilnehmer verbunden werden kann. Bei­ spielsweise kann ein Handy mit einem Bluetooth-Device in Form eines Ansteckmoduls verbunden werden, um über Bluetooth- Sprachsignale mit einem Kopfhörer/Mikrophon (Headset) zu kom­ munizieren. Das Headset als Teilnehmer weist ebenfalls ein Bluetooth-Device auf.Each participant (host) of the Bluetooth communication system, that is, each main or secondary terminal has a transmission assembly (device), for example in the form of an An plug-in module can be connected to the subscriber. at for example, a cell phone with a bluetooth device in the form a plug-in module to be connected via Bluetooth Voice signals with a headphone / microphone (headset) too com cate. The headset as a participant also instructs Bluetooth device on.

In dem Bluetooth-Kommunikationssystem erfolgt die Kommunika­ tion zwischen Host und Bluetooth-Device über eine Schnitt­ stelle, ein sogenanntes Host Controller Interface (HCI). Die Verwendung einer seriellen Schnittstelle zwischen Device und Host für die Übertragung sowohl von synchronen Sprachdaten als auch asynchronen Daten beispielsweise über die Schnitt­ stellen HCI-UART und HCI-RS232, siehe oben genannte Dokumen­ tation, bietet gegenüber der Verwendung mehrerer Schnittstel­ len den Vorteil einer verringerten Leitungsanzahl zwischen Host und Device und somit eines geringeren Realisierungsauf­ wandes. In der Regel weisen jedoch Host und Device eigene und voneinander unabhängige Taktversorgungseinrichtungen auf. Es tritt demnach die technische Problemstellung auf, den zwi­ schen Host und Device auftretenden Taktversatz, insbesondere bei der Übertragung synchroner Daten wie Sprachdaten, auszu­ gleichen.The communication takes place in the Bluetooth communication system tion between host and Bluetooth device via one cut a so-called host controller interface (HCI). The Using a serial interface between device and Host for the transmission of both synchronous voice data as well as asynchronous data for example about the cut provide HCI-UART and HCI-RS232, see above documents tation, offers compared to the use of multiple interfaces len the advantage of a reduced number of lines between Host and device and thus a lower implementation wandes. However, the host and device usually have their own and independent clock supply devices. It Accordingly, the technical problem arises that between The clock and offset occurring between host and device, in particular when transmitting synchronous data such as voice data same.

Es existieren derzeit noch keine Bluetooth-Produkte, die Sprachdaten über ein asynchrones serielles Interface austau­ schen, wofür gemäß der oben genannten Spezifikation eine PCM- Schnittstelle vorgesehen sein kann. Für den Taktversatzaus­ gleich sind theoretisch Lösungen denkbar, die auf einer Syn­ chronisierung zwischen Host und Bluetooth-Device mittels zu­ sätzlicher Takteinrichtungen beruhen. Diese zusätzlichen Lei­ tungen und Synchronisationssignale führen jedoch zu einem er­ höhten Realisierungsaufwand, der insbesondere bei kosten- und volumensensitiven Produkten zu vermeiden ist. Eine andere Möglichkeit besteht in der Verwendung eines gemeinsamen Takt­ systems, sowohl für das Bluetooth-Device, als auch für den Host. Dies führt jedoch zu einer Verminderung der Flexibili­ tät hinsichtlich der Anbindung des Bluetooth-Devices an ver­ schiedene Hosts.There are currently no Bluetooth products that Exchange voice data via an asynchronous serial interface for which a PCM according to the above specification Interface can be provided. For the clock offset solutions that are based on a syn Chronization between host and Bluetooth device using additional clock devices are based. This extra lei tion and synchronization signals, however, lead to an er increased implementation effort, especially in the case of cost and volume-sensitive products should be avoided. Another  One possibility is to use a common clock systems, both for the Bluetooth device and for the Host. However, this leads to a reduction in flexibility activity regarding the connection of the Bluetooth device to ver different hosts.

Es ist demzufolge Aufgabe der vorliegenden Erfindung, ein Verfahren zur Ermittlung und zum Ausgleich eines Taktversat­ zes zwischen einem Teilnehmer (Rost) eines Kommunikationssy­ stems, insbesondere eines Bluetooth-Kommunikationssystems, und einer mit dem Teilnehmer kommunizierenden Sendebaugruppe (Device) anzugeben.It is therefore an object of the present invention, a Procedure for determining and compensating for a clock offset zes between a participant (rust) of a communication system stems, in particular a Bluetooth communication system, and a transmission module communicating with the subscriber (Device).

Diese Aufgabe wird durch die Merkmale des Patentanspruchs 1 gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen sind in den Unteransprüchen angegeben.This object is achieved by the features of patent claim 1 solved. Advantageous refinements and developments are specified in the subclaims.

Die Erfindung basiert im wesentlichen darauf, dass je nach der Richtung der Kommunikation der Teilnehmer oder die Sende­ baugruppe (oder beide bei bidirektionaler Kommunikation) mit einem Ringpufferspeicher versehen sind, in welchen empfangene Datenelemente eingelesen werden und dessen Füllstand ausge­ wertet wird, um daraus den Taktversatz zu ermitteln und gege­ benenfalls auszugleichen.The invention is essentially based on the fact that the direction of communication of the participants or the send module (or both for bidirectional communication) with a ring buffer memory are provided, in which received Data elements are read in and their fill level is displayed is evaluated to determine the clock offset and counter if necessary to compensate.

Der Erfindung liegt die Erkenntnis zugrunde, dass ein derar­ tiger Ringpufferspeicher zur Detektion und zum Ausgleich des Taktversatzes genutzt werden kann. Falls in einem der beiden Kommunikationspartner - Teilnehmer oder Sendebaugruppe - von dem anderen Kommunikationspartner gesendete Datenelemente, beispielsweise Sprachdaten (Sprachsamples), mit einer Taktra­ te weiterverarbeitet werden, die verschieden ist von der Tak­ trate, mit der die Datenelemente geliefert werden, so macht sich dies in einem kontinuierlichen Anstieg bzw. Rückgang des Füllstands des Ringpufferspeichers bemerkbar. Dieser Anstieg bzw. Rückgang kann detektiert werden und es können rechtzei­ tig Maßnahmen ergriffen werden, um zu verhindern, dass der Ringpufferspeicher entweder überläuft oder leerläuft. Wenn beispielsweise der Füllstand kontinuierlich ansteigt, so kann daraus geschlossen werden, dass die Taktrate des anderen Kom­ munikationspartners höher ist als die eigene Taktrate, da die Datenelemente dem Ringpufferspeicher schneller - nämlich mit der fremden Taktrate - zugeführt werden, als sie - mit der eigenen Taktrate - von dem Ringpufferspeicher zur Weiterver­ arbeitung wieder abgerufen werden. Wenn umgekehrt der Füll­ stand kontinuierlich absinkt, so kann daraus geschlossen wer­ den, dass die Taktrate des anderen Kommunikationspartners niedriger ist als die eigene Taktrate, da in diesem Fall die Datenelemente mit der eigenen Taktrate schneller aus dem Ringpufferspeicher abgerufen als mit der fremden Taktrate zu­ geführt werden.The invention is based on the knowledge that a derar ring buffer memory for detection and compensation of the Clock offset can be used. If in one of the two Communication partner - subscriber or transmitter module - from data elements sent to the other communication partner, for example speech data (speech samples), with a taktra te processed, which is different from the Tak with which the data elements are delivered this is reflected in a continuous increase or decrease in Fill level of the ring buffer storage noticeable. This rise or decline can be detected and timely measures are taken to prevent the  Ring buffer memory either overflows or runs empty. If for example, the level rises continuously, so it can be concluded that the clock rate of the other com communication partner is higher than your own clock rate because the Data elements in the ring buffer memory faster - namely with the foreign clock rate - are fed as they - with the own clock rate - from the ring buffer memory to forwarding work can be called up again. If the reverse is the case stood continuously, so who can conclude from it that the clock rate of the other communication partner is lower than your own clock rate, because in this case the Data elements with their own clock rate faster from the Ring buffer memory accessed as at the foreign clock rate too be performed.

Solange sich der Füllstand des Ringpufferspeichers innerhalb bestimmter vorgegebener Grenzen bewegt, brauchen noch keine Maßnahmen zum Taktversatzausgleich ergriffen zu werden. So­ bald diese Grenzen jedoch überschritten werden, werden durch Interpolation bzw. Dezimation Datenelemente hinzugefügt oder abgezogen. Wenn beispielsweise ein vorgegebener unterer Refe­ renzwert von dem Füllstand unterschritten wird, so kann eine Interpolation 0. Ordnung durchgeführt werden, bei der ein oder mehrere Datenelemente, beispielsweise Sprachsamples im Falle von Sprachdaten, hinzugefügt werden. Das Hinzufügen kann durch Verdoppeln bestimmter bereits vorhandener Sprach­ samples erfolgen. Wenn dagegen ein vorgegebener oberer Refe­ renzwert von dem Füllstand überschritten wird, so kann eine Dezimation 0. Ordnung durchgeführt werden, bei der ein oder mehrere Datenelemente abgezogen, d. h. gelöscht werden.As long as the fill level of the ring buffer memory is within certain predetermined limits, do not need any Measures for clock offset compensation to be taken. so however soon these limits will be exceeded by Interpolation or decimation data elements added or deducted. For example, if a given lower ref If the level falls below the limit value, a Interpolation 0th order can be performed at a or several data elements, for example speech samples in the In case of voice data, can be added. The addition can by doubling certain pre-existing speech samples. If, on the other hand, a predetermined upper ref limit value of the fill level is exceeded, a Decimation of the 0th order can be carried out with one or subtracted multiple data items, i.e. H. to be deleted.

Je nach den Qualitätsanforderungen kann die Interpolation bzw. die Dezimation 0. oder höherer Ordnung sein.Depending on the quality requirements, the interpolation or the 0th or higher order decimation.

Falls die Kommunikation nur in einer Richtung stattfindet, so muss auch nur in einem, nämlich dem empfangenden Kommunikati­ onspartner ein Ringpufferspeicher vorhanden sein. Es tritt jedoch häufiger der Fall auf, dass die Kommunikation bidirek­ tional ist, d. h. sowohl Daten von dem Host zu dem Bluetooth- Device gesandt werden, als auch umgekehrt. Dies ist bei­ spielsweise der Fall bei einem Handy und dem zugehörigen Blu­ etooth-Ansteckmodul, welches für die Kommunikation mit einem externen Headset genutzt wird. In solchen Fällen der bidirek­ tionalen Kommunikation kann ein Ringpufferspeicher entweder in dem Host oder dem Bluetooth-Device vorgesehen sein. Ge­ wünschtenfalls können auch in beiden Vorrichtungen Ringpuf­ ferspeicher angeordnet sein. Die Interpolation bzw. Dezima­ tion von Datenelementen kann hier also sowohl in TX-Richtung (Bluetooth-Device → Host), als auch in RX-Richtung (Host → Bluetooth-Device) durchgeführt werden.If the communication takes place only in one direction, then must only be in one, namely the receiving communicati a ring buffer memory is available on the partner. It occurs  however, more often the case that communication is bidirect is tional, d. H. both data from the host to the bluetooth Device can be sent as well as vice versa. This is at for example, the case with a cell phone and the associated Blu etooth plug-in module, which is used for communication with a external headset is used. In such cases the bidirek tional communication can use either a ring buffer be provided in the host or the Bluetooth device. Ge if desired, ring pouf can also be used in both devices Storage can be arranged. The interpolation or decima tion of data elements can be both in the TX direction (Bluetooth device → host), as well as in the RX direction (host → Bluetooth device).

Der Ringpufferspeicher ist logisch in sich geschlossen, d. h. die Daten müssen in der Reihenfolge, in der sie in den Ring­ pufferspeicher geschrieben worden sind, auch wieder herausge­ lesen oder abgerufen werden. Sobald Speicherplätze ausgelesen und deren Datenelemente weiterverarbeitet worden sind, können sie wieder neu beschrieben werden.The ring buffer memory is logically self-contained, i. H. the data must be in the order in which it entered the ring buffer memory have been written, also removed again read or retrieved. As soon as memory locations are read out and whose data elements have been processed further they are described again.

Im folgenden wird die Erfindung anhand der Zeichnungsfiguren näher erläutert. Es zeigen:In the following the invention with reference to the drawing figures explained in more detail. Show it:

Fig. 1 eine schematische Darstellung der bidirektiona­ len Datenkommunikation zwischen einem Host und einer Bluetooth-Sendebaugruppe; Figure 1 is a schematic representation of the bidirectional len data communication between a host and a Bluetooth transmitter module.

Fig. 2 die Funktionsweise eines erfindungsgemäßen Ring­ pufferspeichers. Fig. 2 shows the operation of a ring buffer memory according to the invention.

In Fig. 1 ist die bidirektionale Datenkommunikation zwischen einem Host 1 und einem Bluetooth-Device 2 schematisch darge­ stellt. Diese beiden Kommunikationspartner sind über eine se­ rielle Schnittstelle 10 miteinander verbunden. Der Host 1 ist beispielsweise ein Handy, das über den Bluetooth-Device 2 mit einem Headset (nicht dargestellt) in Verbindung steht. Der Bluetooth-Device 2 liegt meist in Form eines Ansteckmoduls vor, das an das Handy an der Schnittstellenverbindung ange­ steckt werden kann.In Fig. 1, the bidirectional data communication between a host 1 and a Bluetooth device 2 is shown schematically Darge. These two communication partners are connected to each other via a serial interface 10 . The host 1 is, for example, a cell phone that is connected to a headset (not shown) via the Bluetooth device 2 . The Bluetooth device 2 is usually in the form of a plug-in module that can be plugged into the cell phone at the interface connection.

Der Bluetooth-Device 2 enthält als wesentliche Baugruppen ei­ nen Bluetooth-Verbindungsmanager 21, einen Bluetooth-Verbin­ dungscontroller 22, einen Radiofrequenz-Generator 23 und eine Sende-/Empfangs-Antenne 24, von der beim Senden die Funkfre­ quenz von 2,4 GHz abgestrahlt wird. Dieser Aufbau und die Funktionsweise der einzelnen Blöcke sind an sich im Stand der Technik, beispielsweise aus der eingangs erwähnten Dokumenta­ tion bekannt und sollen hier nicht näher erläutert werden.The Bluetooth device 2 contains as essential components egg NEN Bluetooth connection manager 21 , a Bluetooth connec tion controller 22 , a radio frequency generator 23 and a transmit / receive antenna 24 , of which the radio frequency of 2.4 GHz when transmitting is emitted. This structure and the mode of operation of the individual blocks are known per se in the prior art, for example from the documentation mentioned at the outset, and are not to be explained in more detail here.

Der Host 1 und der Bluetooth-Device 2 werden mit prinzipiell voneinander unabhängigen Taktraten von jeweils eigenen Takt­ versorgungseinrichtungen versorgt. Diese Taktraten werden zu­ vor anfänglich aufeinander abgestimmt. Durch Drift und der­ gleichen können jedoch Abweichungen zwischen der Host-Takt­ rate und der Device-Taktrate entstehen.The host 1 and the Bluetooth device 2 are supplied with clock rates that are in principle independent of one another, each with its own clock supply device. These clock rates are initially coordinated with one another. However, drift and the like can cause deviations between the host clock rate and the device clock rate.

Zur Ermittlung und zum Ausgleich des Taktversatzes wird er­ findungsgemäß jeder der beiden Kommunikationspartner mit ei­ nem Ringpufferspeicher versehen. Bezüglich des Bluetooth- Devices 2 ist der Ringpufferspeicher in dem Verbindungsmana­ ger 21 enthalten. Seine Funktionsweise wird bezugnehmend auf Fig. 2 näher erläutert.To determine and to compensate for the clock offset, according to the invention, each of the two communication partners is provided with a ring buffer memory. With regard to the Bluetooth device 2 , the ring buffer memory is contained in the connection manager 21 . Its mode of operation is explained in more detail with reference to FIG. 2.

Der Ringpufferspeicher 30 weist einen ersten Speicherbereich 30.1 auf, der eine Länge von n Datenelementeinheiten wie bei­ spielsweise Sprachsamples aufweist, wobei n entsprechend den Anforderungen des Hosts gewählt ist. Ein zweiter Speicherbe­ reich 30.3 wird als Ereignisfeld bezeichnet und weist eine Länge von beispielsweise k Sprachsamples auf. Dies entspricht einer Länge, die jedenfalls größer ist als eine HCI-Daten­ paketlänge. Im übrigen wird die Länge k des Ereignisfeldes aus worst-case-Betrachtungen innerhalb der jeweiligen Applikation (z. B. GSM-Anforderungen; Bluetooth-HCI-Pakete wie com­ mands, events, ACL. etc.) bestimmt. Das Ereignisfeld wird von dem unteren Referenzwert P1 und dem oberen Referenzwert P2 begrenzt.The ring buffer memory 30 has a first memory area 30.1 , which has a length of n data element units such as, for example, voice samples, n being selected in accordance with the requirements of the host. A second memory area 30.3 is called an event field and has a length of, for example, k speech samples. This corresponds to a length that is in any case greater than an HCI data packet length. Otherwise, the length k of the event field is determined from worst-case considerations within the respective application (e.g. GSM requirements; Bluetooth HCI packets such as commands, events, ACL, etc.). The event field is limited by the lower reference value P1 and the upper reference value P2.

Der zweite Speicherbereich 30.3 ist umgeben von zwei Schutz- Speicherbereichen 30.2 und 30.4, deren Länge eine HCI-Daten­ paketlänge, also beispielweise m Sprachsamples ist. Diese Schutzspeicherbereiche 30.2 und 30.4 dienen als Sicherheits­ margins für ein Unterschreiten bzw. ein Überschreiten des Er­ eignisfelds. Der Taktversatzausgleich wird durch eine ent­ sprechend angepasste Interpolation bzw. Dezimation von Da­ tenelementen realisiert. Die hier erfolgende Beschreibung des Verfahrens bezieht sich auf Sprachdaten, wobei das Verfahren jedoch auch auf andere synchrone Daten mit einer geeigneten Datenstruktur der einzelnen Datenelemente angewandt werden kann. Die Steuerung der Interpolation und Dezimation von Sprach-Samples geschieht mittels der Auswertung des Füllstan­ des des Ringpufferspeichers 30.The second memory area 30.3 is surrounded by two protective memory areas 30.2 and 30.4 , the length of which is an HCI data packet length, that is to say, for example, m speech samples. These protective storage areas 30.2 and 30.4 serve as safety margins for falling below or exceeding the event field. The clock offset compensation is implemented by an appropriately adapted interpolation or decimation of data elements. The description of the method here relates to voice data, although the method can also be applied to other synchronous data with a suitable data structure of the individual data elements. The interpolation and decimation of speech samples are controlled by evaluating the fill level of the ring buffer memory 30 .

Eine Schwierigkeit bei der vorliegenden Erfindung bestand darin, dass die Interpolation bzw. Dezimation auf einzelne Sprach-Samples bezogen wird, die Informationen über den Takt­ versatz jedoch aufgrund der asynchronen paketorientierten Übertragung über das serielle Interface nur anhand des asyn­ chronen Eintreffens ganzer Sprach-Sample-Pakete gewonnen wer­ den können. Dieses Problem wird mit Hilfe des eine definierte Länge aufweisenden Ereignisfeldes sowie den zwei Referenzwer­ ten P1 und P2 gelöst, die in der Form von Datenzeigern auf die untere und obere Grenze des Ereignisfeldes zeigen. Der jeweilige Füllstand des Ringpufferspeichers wird durch einen sogenannten Schreibzeiger WP angezeigt. Das Ereignisfeld wird benutzt, um das Unter- und Überschreiten des Ereignisfeldes durch den Schreibzeiger WP zu detektieren und hiermit auf den Einfluss des Taktversatzes zu schließen. Dieser Taktversatz wird als zeitlich nur langsam veränderlich angenommen. There has been a problem with the present invention in that the interpolation or decimation to individual Voice samples related to the information about the clock offset due to the asynchronous packet-oriented Transmission via the serial interface only using the asyn chronic arrival of entire language sample packs that can. This problem is defined with the help of one Length of the event field and the two reference values P1 and P2 resolved in the form of data pointers show the lower and upper bounds of the event field. The The respective fill level of the ring buffer memory is indicated by a so-called write pointer WP is displayed. The event field is used to go below and below the event field to detect by the write pointer WP and hereby to the Close influence of the clock offset. This clock skew is assumed to be only slowly changing over time.  

Wenn die untere Grenze P1 des Ereignisfeldes unterschritten wird, so wird eine Interpolation eines Sprach-Samples zusätz­ lich zu den n Sprach-Samples (z. B. je nach Qualitätsanforde­ rungen Interpolation 0. oder höherer Ordnung) durchgeführt. Wenn dagegen die obere Grenze P2 des Ereignisfeldes über­ schritten wird, so wird eine Dezimation eines Sprach-Samples abzüglich zu den n Sprach-Samples (z. B. je nach Qualitätsan­ forderungen Dezimation 0. oder höherer Ordnung) durchgeführt.If the lower limit P1 of the event field is undershot interpolation of a speech sample becomes additional to the n language samples (e.g. depending on quality requirements interpolation 0th or higher order). If, on the other hand, the upper limit P2 of the event field is above is followed by a decimation of a speech sample minus the n language samples (e.g. depending on quality decimation 0th or higher order).

Claims (9)

1. Verfahren zur Ermittlung und gegebenenfalls zum Ausgleich des Taktversatzes zwischen einem Teilnehmer (1) eines Kommu­ nikationssystems, insbesondere eines Bluetooth-Kommunika­ tionssystems und einer mit dem Teilnehmer (1) kommunizieren­ den Sendebaugruppe (2), wobei beide eigene Taktversorgungs­ einrichtungen aufweisen, wobei in dem Teilnehmer (1) und/oder der Sendebaugruppe (2) je­ weils ein Ringpufferspeicher (30) enthalten ist, in welchem empfangene Datenelemente eingelesen werden, und der Füllstand (WP) des Ringpufferspeichers (30) ausgewertet wird.1. A method for determining and, if necessary, to compensate for the clock offset between a participant ( 1 ) of a communication system, in particular a Bluetooth communication system and one with the participant ( 1 ) communicating with the transmission module ( 2 ), both of which have their own clock supply devices, whereby in the participant ( 1 ) and / or the transmission module ( 2 ) each contain a ring buffer memory ( 30 ), in which received data elements are read, and the fill level (WP) of the ring buffer memory ( 30 ) is evaluated. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass bei Unterschreiten eines unteren Referenzwertes (P1) durch den Füllstand (WP) und bei Überschreiten eines oberen Refe­ renzwertes (P2) durch den Füllstand (WP) ein Taktversatz festgestellt und ausgeglichen wird.2. The method according to claim 1, characterized in that if the value falls below a lower reference value (P1) the fill level (WP) and if an upper ref is exceeded limit value (P2) due to the fill level (WP) a clock offset is determined and balanced. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der ermittelte Taktversatz durch Interpolation bzw. Dezima­ tion von Datenelementen ausgeglichen wird.3. The method according to claim 1 or 2, characterized in that the clock offset determined by interpolation or decima tion of data elements is balanced. 4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass eine Interpolation bzw. Dezimation jeweils in 0. Ordnung durchgeführt wird, indem Datenelemente hinzugefügt bzw. ge­ löscht werden.4. The method according to claim 3, characterized in that an interpolation or decimation in 0 order is performed by adding or adding data elements be deleted. 5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass das Hinzufügen von Datenelementen durch Verdoppeln bereits vorhandener Datenelemente durchgeführt wird. 5. The method according to claim 4, characterized in that adding data items by doubling them already existing data elements is carried out.   6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Kommunikation auf der Basis von Datenpaketen erfolgt und die dem Abstand zwischen dem oberen (P2) und dem unteren Referenzwert (P1) entsprechende Speichergröße größer als ein Datenpaket ist.6. The method according to any one of the preceding claims, characterized in that communication is based on data packets and the distance between the top (P2) and the bottom Reference value (P1) corresponding memory size larger than one Data packet is. 7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Kommunikation bidirektional erfolgt und in dem Teilneh­ mer (1) und/oder der Sendebaugruppe (2) jeweils ein Ringpuf­ ferspeicher (30) enthalten ist.7. The method according to any one of the preceding claims, characterized in that the communication takes place bidirectionally and in the participant mer ( 1 ) and / or the transmission module ( 2 ) each have a ring buffer memory ( 30 ). 8. Teilnehmer (1) eines Kommunikationssystems, insbesondere eines Bluetooth-Kommunikationssystems, welcher zur Durchfüh­ rung des Verfahrens nach einem der vorhergehenden Ansprüche einen Ringpufferspeicher (30) aufweist.8. Participant ( 1 ) of a communication system, in particular a Bluetooth communication system, which has a ring buffer memory ( 30 ) for carrying out the method according to one of the preceding claims. 9. Sendebaugruppe (2), welche an einen Teilnehmer (1) eines Kommunikationssystems, insbesondere eines Bluetooth- Kommunikationssystems, anschließbar ist und zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche einen Ringpufferspeicher (30) aufweist.9. Transmitting module ( 2 ) which can be connected to a subscriber ( 1 ) of a communication system, in particular a Bluetooth communication system, and which has a ring buffer memory ( 30 ) for carrying out the method according to one of the preceding claims.
DE2001121461 2001-05-02 2001-05-02 Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host Ceased DE10121461A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2001121461 DE10121461A1 (en) 2001-05-02 2001-05-02 Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001121461 DE10121461A1 (en) 2001-05-02 2001-05-02 Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host

Publications (1)

Publication Number Publication Date
DE10121461A1 true DE10121461A1 (en) 2002-11-14

Family

ID=7683458

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001121461 Ceased DE10121461A1 (en) 2001-05-02 2001-05-02 Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host

Country Status (1)

Country Link
DE (1) DE10121461A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104487802A (en) * 2012-07-20 2015-04-01 赫克斯冈技术中心 Measuring machine communication

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2908366C2 (en) * 1979-03-03 1987-04-02 Felten & Guilleaume Fernmeldeanlagen Gmbh, 8500 Nuernberg, De
DE3918263A1 (en) * 1989-06-05 1990-12-06 Ant Nachrichtentech Plesiochronous digital sequence stuffing clock signal extn. method - using bistable counter driven by delayed system clock which is ineffective during active control signal
DE4036418A1 (en) * 1990-11-15 1992-05-21 Grundig Emv RADIO DEVICE FOR AN FDM-TDM RADIO TRANSMISSION SYSTEM
DE4013317C2 (en) * 1990-04-26 1992-12-10 Ant Nachrichtentechnik Gmbh, 7150 Backnang, De
DE4207809C1 (en) * 1992-03-12 1993-11-04 Grundig Emv RADIO DEVICE FOR A TDM-FDM RADIO TRANSMISSION SYSTEM
EP0565305B1 (en) * 1992-04-10 1998-01-21 AT&T Corp. Transmission of a clock signal over an asynchronous data channel
EP0645065B1 (en) * 1992-06-03 1998-08-19 Nokia Telecommunications Oy Method and equipment for monitoring the fill rate of an elastic buffer memory in a synchronous digital telecommunication system
DE19722032A1 (en) * 1997-05-27 1998-12-10 Bosch Gmbh Robert Transmission system for STM-1 signals of sync. digital hierarchy
JPH11252117A (en) * 1998-02-27 1999-09-17 Victor Co Of Japan Ltd Communication system
EP0557362B1 (en) * 1990-11-16 2000-02-09 Digital Projection Limited Improvements relating to spatial light modulators
DE19806589C2 (en) * 1998-02-17 2000-05-25 Siemens Ag Method and network element for forwarding the clock in PCM transmission networks

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2908366C2 (en) * 1979-03-03 1987-04-02 Felten & Guilleaume Fernmeldeanlagen Gmbh, 8500 Nuernberg, De
DE3918263A1 (en) * 1989-06-05 1990-12-06 Ant Nachrichtentech Plesiochronous digital sequence stuffing clock signal extn. method - using bistable counter driven by delayed system clock which is ineffective during active control signal
DE4013317C2 (en) * 1990-04-26 1992-12-10 Ant Nachrichtentechnik Gmbh, 7150 Backnang, De
DE4036418A1 (en) * 1990-11-15 1992-05-21 Grundig Emv RADIO DEVICE FOR AN FDM-TDM RADIO TRANSMISSION SYSTEM
EP0557362B1 (en) * 1990-11-16 2000-02-09 Digital Projection Limited Improvements relating to spatial light modulators
DE4207809C1 (en) * 1992-03-12 1993-11-04 Grundig Emv RADIO DEVICE FOR A TDM-FDM RADIO TRANSMISSION SYSTEM
EP0565305B1 (en) * 1992-04-10 1998-01-21 AT&T Corp. Transmission of a clock signal over an asynchronous data channel
EP0645065B1 (en) * 1992-06-03 1998-08-19 Nokia Telecommunications Oy Method and equipment for monitoring the fill rate of an elastic buffer memory in a synchronous digital telecommunication system
DE19722032A1 (en) * 1997-05-27 1998-12-10 Bosch Gmbh Robert Transmission system for STM-1 signals of sync. digital hierarchy
DE19806589C2 (en) * 1998-02-17 2000-05-25 Siemens Ag Method and network element for forwarding the clock in PCM transmission networks
JPH11252117A (en) * 1998-02-27 1999-09-17 Victor Co Of Japan Ltd Communication system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104487802A (en) * 2012-07-20 2015-04-01 赫克斯冈技术中心 Measuring machine communication
CN104487802B (en) * 2012-07-20 2017-04-26 赫克斯冈技术中心 measuring machine communication
US9660820B2 (en) 2012-07-20 2017-05-23 Hexagon Technology Center Gmbh Measuring machine communication

Similar Documents

Publication Publication Date Title
EP0817404B1 (en) Device for delay compensation of difference in transmission time in digital transmission systems
DE3004827C2 (en) Data processing system
DE19733748C2 (en) Data transfer device
DE2735258C3 (en) Interface coupling circuit
DE19649258C2 (en) Bus system and method for data transmission
EP0363499A1 (en) Method and circuit arrangement for the transmission of voice signals in a broadband communication network
DE4017494A1 (en) ERROR DETECTOR FOR TELECOMMUNICATION
DE3990712C2 (en) Interface unit
DE19742378A1 (en) Ring memory for a TDMA data transmission station and corresponding data transmission station
DE4118623C2 (en) Buffer allocation method in communication systems
DE102011004358B3 (en) Method for transmitting data over a synchronous serial data bus
DE10121461A1 (en) Method of compensating for clock shift between bluetooth communications subscriber and transmitting module, has transmitting module communicating with subscriber/host
DE10307424A1 (en) Data switching device and multiplex communication systems
EP0156315A2 (en) Circuit for testing the correct operation of a data transmission system
WO1992015055A1 (en) Circuit for connecting a microprocessor system with a communications channel
DE102014018152A1 (en) Method for determining the signal quality in a CAN protocol based network
WO1991019404A1 (en) Device with a plug-in circuit board for the control of data communication
EP0098260B1 (en) Circuit arrangement for controlling the synchronous transmission of data
DE102017216991B4 (en) Communication module and device for data transmission
DE19842849C2 (en) Method and arrangement for transmitting digital data
DE3035850C2 (en) Method for a centrally controlled telecommunications system, in particular a telephone branch exchange, with external input and output devices
EP0098259B1 (en) Circuit arrangement for controlling the quasi-synchronous transmission of data
DE3743387C2 (en)
EP1368738A2 (en) Bus system comprising an address/data bus which can be operated in a multiplex mode and control bus responding to a station by allocating a logical channel
DE3214576C2 (en) Circuit arrangement for determining permanent position signals on connecting lines of a switching system

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection