DE102007003634B3 - Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit - Google Patents

Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit Download PDF

Info

Publication number
DE102007003634B3
DE102007003634B3 DE102007003634A DE102007003634A DE102007003634B3 DE 102007003634 B3 DE102007003634 B3 DE 102007003634B3 DE 102007003634 A DE102007003634 A DE 102007003634A DE 102007003634 A DE102007003634 A DE 102007003634A DE 102007003634 B3 DE102007003634 B3 DE 102007003634B3
Authority
DE
Germany
Prior art keywords
transceiver
data blocks
protocol
accelerator module
data block
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.)
Active
Application number
DE102007003634A
Other languages
German (de)
Inventor
Daniel Dietterle
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.)
IHP GmbH
Original Assignee
IHP 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 IHP GmbH filed Critical IHP GmbH
Priority to DE102007003634A priority Critical patent/DE102007003634B3/en
Application granted granted Critical
Publication of DE102007003634B3 publication Critical patent/DE102007003634B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0002Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
    • A61B5/0205Simultaneously evaluating both cardiovascular conditions and different types of body conditions, e.g. heart and respiratory condition
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
    • A61B5/021Measuring pressure in heart or blood vessels
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B7/00Instruments for auscultation
    • A61B7/003Detecting lung or respiration noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage

Abstract

The module (118) is configured to signalize a receipt of a data block determined by a transceiver at an external processor of the transceiver. An acknowledgment data block is produced and output within an acknowledgement time period predetermined by a connection safety protocol after receiving the data block determined by the transceiver. Data blocks selected for dispatch, are searched from a storage space to transfer the data blocks to a bit transmission-protocol level of an external transmitting unit of the transceiver. An independent claim is also included for a sensor node comprising a sensor detecting blood pressure value of a patient, and a transceiver.

Description

Die Erfindung betrifft ein Hardware-Protokollbeschleunigermodul für eine Verbindungssicherungs-Protokollebene eines Senderempfängers. Weiterhin betrifft die Erfindung einen Senderempfänger mit einem Hardware-Protokollbeschleuniger und einen Sensorknoten mit einem Sensor und einem mit diesem verbundenen Senderempfänger. Die vorliegende Erfindung eignet sich insbesondere, jedoch nicht ausschließlich, zur Anwendung im Rahmen des Protokolls IEEE 802.15.3, das die Kommunikation innerhalb von kurzreichweitigen Funknetzwerken mit hoher Übertragungskapazität betrifft.The The invention relates to a hardware protocol accelerator module for a connection backup protocol layer a transceiver. Furthermore, the invention relates to a transceiver with a hardware protocol accelerator and a sensor node with a sensor and a transceiver connected thereto. The The present invention is particularly, but not exclusively, suitable for Application under the protocol IEEE 802.15.3, which is the communication within short-range wireless networks with high transmission capacity.

Das Protokoll IEEE 802.15.3 ermöglicht eine drahtlose Kommunikation in einem Funknetz, bei dem die Knoten des Netzwerks mit Datenraten von 11-55 Mbit/s miteinander kommunizieren. Der genannte Standard beschreibt eine Kurzstrecken-Funktechnik und ist für typische Entfernungen zwischen den Netzwerkknoten zwischen 0,2 und 50 m entwickelt worden.The Protocol IEEE 802.15.3 allows wireless communication in a radio network in which the nodes network with data rates of 11-55 Mbit / s communicate with each other. The above standard describes a short-distance radio technology and is for typical distances between the network nodes between 0.2 and 50 m has been developed.

Für viele Anwendungen steht ein geringer Energieverbrauch der Netzwerkknoten im Vordergrund. So entwickelt die Anmelderin beispielsweise ein drahtloses Kommunikationssystem zur Überwachung des Gesundheitszustandes von Patienten mit Hilfe einer Vielzahl biomedizinischer Sensoren. Dabei handelt es sich um ein körpernahes Funknetz, in dem verschiedene solcher Sensoren verknüpft sind. Die Sensorknoten kommunizieren miteinander um gemeinsam den Gesundheitszustand eines Patienten zu ermitteln. Jeder Sensorknoten enthält einen oder mehrere Sensoren sowie eine Verarbeitungs- und eine Kommunikationseinheit. Die Kommunikationseinheit wird hierin auch als Senderempfänger bezeichnet.For many Applications is low energy consumption of network nodes in the foreground. For example, the Applicant develops one wireless communication system for monitoring health status of patients using a variety of biomedical sensors. It is a close body Radio network in which various such sensors are linked. The sensor nodes communicate with each other about their state of health of a patient. Each sensor node contains one or more sensors and a processing and a communication unit. The communication unit is also referred to herein as a transceiver.

Die Stromversorgung der Sensorknoten eines solchen Netzwerks soll über kleine Batterien über mehrere Wochen oder Monate ohne Batteriewechsel oder -aufladung sichergestellt werden. Die demnach zur Verfügung stehende geringe Energiemenge zur Funkkommunikation stellt sehr hohe Anforderungen an die technische Umsetzung insbesondere des Protokolls auf der Verbindungssicherungsebene.The Power supply of the sensor nodes of such a network is about small Batteries over several weeks or months without battery change or charging be ensured. The thus available small amount of energy for radio communication places very high demands on the technical Implementation of the protocol in particular at the connection assurance level.

Geläufige Synonyme für die Verbindungssicherungs-Protokollebene (englisch: data link layer) nach dem OSI-Modell sind die Begriffe Schicht 2, Medienzugriffsebene (engl. medium access layer), Sicherungsschicht, Abschnittssicherungsschicht, Verbindungsebene und Prozedurebene. Die Verbindungssicherungs-Protokollebene stellt eine weitgehend fehlerfreie Übertragung sicher und steuert einen Zugriff auf das Übertragungsmedium (Schicht 1 oder Bitübertragungsschicht). Der Bitdatenstrom wird hierfür in Datenblöcke aufgeteilt. Weiterhin werden üblicherweise Block-Folgenummern und Block-Prüfsummen hinzugefügt. Das Schicht-2-Protokoll ist ebenfalls dafür zuständig, verfälschte oder verloren gegangene Blöcke empfängerseitig durch Quittungs- und Wiederholungsmechanismen erneut anzufordern. Datenblöcke werden auch als Frames oder Rahmen bezeichnet.Common synonyms for the Connection protection protocol level (English: data link layer) according to the OSI model, the terms layer 2, media access level (medium access layer), data link layer, cut-off layer, Connection level and procedure level. The connection backup protocol level is a largely error-free transmission secure and controls access to the transmission medium (layer 1 or physical layer). The bitstream becomes this divided into data blocks. Furthermore, usually Block sequence numbers and block checksums added. The Layer 2 protocol is also responsible for corrupted or lost blocks by the receiver side Reclaim receipt and retry mechanisms. Data blocks are also called frames or frames.

Eine so genannte Flusskontrolle macht es möglich, dass ein Empfänger dynamisch steuert, mit welcher Geschwindigkeit die Gegenseite Datenblöcke senden darf. Nach IEEE enthält die Verbindungssicherungs-Protokollebene zwei Sub- Ebenen, die für eine logische Verbindungssteuerung (LLC, Logical Link Control) bzw. eine Medienzugriffssteuerung (MAC, Media Access Control) zuständig sind.A So-called flow control makes it possible for a recipient to be dynamic Controls the speed with which the far side sends data blocks may. Contains IEEE The Link Backup Log level has two sub-levels that are logical Connection control (LLC, Logical Link Control) or media access control (MAC, Media Access Control) are.

Nachfolgend wird die Verbindungssicherungs-Protokollebene nach dem Protokoll IEEE 802.15.3 näher beschrieben.following becomes the connection backup protocol level after the protocol IEEE 802.15.3 closer described.

Das IEEE 802.15.3 MAC-Protokoll (IEEE Standard 802, "Part 15.3: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for High Rate Wireless Personal Area Networks," 2003.) arbeitet nach folgendem Grundprinzip: In einem Funknetz, das nach diesem Standard arbeitet, gibt es genau einen Koordinator und eine Reihe von assoziierten Geräten . Der Koordinator sendet in exakt regelmäßigen Abständen sogenannte Beacon-Datenblöcke an alle Geräte im Netz. Diese Beacon-Datenblöcke enthalten unter anderem Informationen darüber, wann der nächste Beacon gesendet wird und wie die Geräte in der Zeit bis zu diesem nächsten Beacon auf den Kanal zugreifen dürfen.The IEEE 802.15.3 MAC Protocol (IEEE Standard 802, "Part 15.3: Wireless Medium Access Control (MAC)) and Physical Layer (PHY) Specifications for High Rate Wireless Personal Area Networks, "2003.) works on the following basic principle: In a radio network, the after This standard works, there is exactly one coordinator and one Set of associated devices , The coordinator sends so-called beacon data blocks to all at exactly regular intervals equipment in the web. These beacon data blocks Among other things, information about when the next beacon is sent and how the devices in time until this next one Beacon to access the channel.

Es gibt reservierte Zeitschlitze (time slots), die für genau einen Sender für eine gewisse Dauer exklusiv zur Verfügung stehen. Als Referenzzeitpunkt wird der Beginn der Übertragung des Beacon-Frames benutzt, d. h. die Startzeit der Zeitschlitze wird in Mikrosekunden nach Start des Beacons angegeben. Außerdem kann der Koordinator eine Wettbewerbsphase, die unmittelbar dem Beacon folgt, festlegen. In dieser Wettbewerbsphase dürfen sämtliche Geräte nach einem Backoff-Verfahren auf den Kanal zugreifen.It There are reserved slots (time slots) that are for exact a transmitter for a certain duration exclusively available. As reference time will be the beginning of the transmission of the beacon frame, d. H. the start time of the time slots is specified in microseconds after the start of the beacon. In addition, the Coordinator a competitive phase that follows immediately after the beacon, establish. In this competition phase, all devices may use a back-off procedure access the channel.

Im Protokoll ist festgelegt, dass sämtliche übertragene Datenblöcke mit einem Fehlererkennungscode versehen werden. Dafür wird ein CRC-(Cyclic Redundancy Check) Algorithmus verwendet, der über alle Datenblockdaten eine 32-bit lange Prüfsumme ausrechnet und an das Ende des Datenblocks stellt. Die Empfänger des Datenblocks rechnen ihrerseits die CRC-Prüfsumme über die empfangenen Datenblockdaten aus und vergleichen das Ergebnis mit dem mitgeschickten, vom Sender ermittelten, Wert. Stimmen beide Prüfsummen überein, ist der Datenblock mit sehr hoher Wahrscheinlichkeit korrekt übertragen worden, ansonsten wird er als fehlerhaft erkannt und verworfen.The protocol specifies that all transmitted data blocks have an error detection code be provided. For this purpose, a CRC (Cyclic Redundancy Check) algorithm is used, which calculates a 32-bit checksum over all data block data and places it at the end of the data block. The receivers of the data block in turn calculate the CRC checksum on the received data block data and compare the result with the sent, determined by the transmitter, value. If both checksums match, the data block has been transferred with a very high probability correctly, otherwise it is recognized as defective and discarded.

Bei der Mehrzahl der definierten Datenblocktypen, insbesondere der Kommando-Datenblöcke, wird vom Sender des Datenblocks erwartet, dass der Empfänger eine Bestätigungsnachricht unmittelbar, d. h. genau 10 Mikrosekunden nach dem Ende des zu bestätigenden Datenblocks, an den Sender überträgt, falls der empfangene Datenblock fehlerfrei empfangen wurde.at the majority of the defined data block types, in particular the command data blocks, is from Sender of the data block expects the recipient to receive a confirmation message directly, d. H. exactly 10 microseconds after the end of the confirmed Data block to transmit to the sender if the received data block was received without errors.

Aus der Veröffentlichung PANIC, G. [u.a.]: A System-on-Chip Implementation of the IEEE 802.11a MAC Layer; in: Proceedings of the Euromicro Symposium an Digital System Design; ISBN: 0-7695-2003-0; 2003, S. 319-324 ist ein Hardware-Protokollbeschleunigermodul bekannt.Out the publication PANIC, G. [supra]: A System-on-Chip Implementation of the IEEE 802.11a MAC layer; in: Proceedings of the Euromicro Symposium on Digital System Design; ISBN: 0-7695-2003-0; 2003, pp. 319-324 is a hardware protocol accelerator module known.

Gemäß einem ersten Aspekt der Erfindung wird ein Hardware-Protokollbeschleunigermodul für eine Verbindungssicherungs-Protokollebene eines ersten Senderempfängers vorgeschlagen, das ausgebildet ist,
über eine Bitübertragungs-Protokollebene einer externen Empfangseinheit von einem externen zweiten Senderempfänger her eingehende Datenblöcke im Hinblick auf eine in den Datenblöcken enthaltene Zieladresse zu filtern und bezüglich für den ersten Senderempfänger bestimmter Datenblöcke eine Speicheroperation an einem vorbestimmten externen Speicherplatz des ersten Senderempfängers zu veranlassen;
für den ersten Senderempfänger bestimmte Datenblöcke auf erfolgreichen Empfang hin zu überprüfen;
einen erfolgreichen Empfang eines für den ersten Senderempfänger bestimmten Datenblocks an einen externen Prozessor des ersten Senderempfängers zu signalisieren;
nach erfolgreichem Empfang eines für den ersten Senderempfänger bestimmten Datenblocks einen für den zweiten Senderempfänger bestimmten Bestätigungsdatenblock innerhalb einer durch das Verbindungssicherungsprotokoll vorgegebenen Bestätigungszeitspanne zu erzeugen und auszugeben;
einem empfangenen Beacon-Datenblock Zeitschlitzinformation über einen oder mehrere dem ersten Senderempfänger zugewiesene Sendezeitschlitze zu entnehmen;
eine Warteschlange zu sendender Datenblöcke zu verwalten und Datenblöcke der Warteschlange zum Versenden innerhalb des zugewiesenen Sendezeitschlitzes auszuwählen;
zum Versenden ausgewählte Datenblöcke aus einem aus der Warteschlange bekannten Speicherplatz auszulesen und an eine Bitübertragungs-Protokollebene einer externen Sendeeinheit des ersten Senderempfängers zu übergeben.
According to a first aspect of the invention, a hardware protocol accelerator module is proposed for a connection assurance protocol level of a first transceiver, which is designed
to filter data blocks incoming via a bit transmission protocol layer of an external receiving unit from an external second transceiver with regard to a destination contained in the data blocks and to initiate a memory operation at a predetermined external memory location of the first transceiver relative to data blocks intended for the first transceiver;
check data blocks destined for the first transceiver for successful reception;
signal successful reception of a data block destined for the first transceiver to an external processor of the first transceiver;
after successfully receiving a data block destined for the first transceiver, generating and outputting a confirmation data block destined for the second transceiver within a confirmation period specified by the connection assurance protocol;
to extract time slot information about one or more transmission time slots assigned to the first transceiver to a received beacon frame;
manage a queue of data blocks to be sent and select data blocks of the queue for transmission within the assigned transmission time slot;
to read out data blocks selected for sending from a memory location known from the queue and to transfer them to a bit transmission protocol level of an external transmission unit of the first transmitter-receiver.

Das Hardware-Protokollbeschleunigermodul des ersten Aspekts der Erfindung beruht auf der Erkenntnis, dass bestimmte zeitkritische Anforderungen des Protokolls, beispielsweise bei der Übertragung eines Bestätigungsdatenblocks, welcher exakt 10 μs nach Ende des zu bestätigenden Datenblocks ausgesendet werden muss, wie die recht hohe Datenrate, die unterstützt werden muss, einen sehr schnellen Prozessor erfordern würden. Abschätzungen haben ergeben, dass die Taktfrequenz im Bereich oberhalb von 1 GHz liegen müsste.The Hardware Protocol Accelerator Module of the First Aspect of the Invention Based on the knowledge that certain time-critical requirements of the protocol, for example when transmitting an acknowledgment data block, which exactly 10 μs after the end of the confirmation Data block, such as the very high data rate, which supports which would require a very fast processor. estimates have shown that the clock frequency in the range above 1 GHz would have to lie.

Damit ergibt sich jedoch ein sehr hoher Energiebedarf und folglich nur eine äußerst kurze Batterielebensdauer.In order to However, there is a very high energy demand and therefore only an extremely short one Battery life.

Das erfindungsgemäße Hardware-Protokollbeschleunigermodul für die Verbindungssicherungs-Protokollebene ermöglicht im Gegensatz dazu, den Prozessor zu entlasten und insbesondere zeitkritische Funktionalitäten der Verbindungssicherungs-Protokollebene des Senderempfängers auszuüben. Da diese zeitkritischen Protokollfunktionen nicht mehr vom Prozessor ausgeführt werden müssen, kann dieser bei einer niedrigeren Taktrate betrieben werden und somit seinen Energieverbrauch reduzieren.The inventive hardware protocol accelerator module for the In contrast, the Link Backup log level allows the To relieve processor and especially time-critical functionalities of Exercise the connection protection protocol level of the transceiver. There These time-critical protocol functions are no longer available from the processor accomplished Need to become, this can be operated at a lower clock rate and thus reduce its energy consumption.

Nachfolgend werden Ausführungsbeispiele des erfindungsgemäßen Hardware-Protokollbeschleunigermoduls beschrieben. Die Ausführungsbeispiele können miteinander kombiniert werden, soweit nicht ausdrücklich Gegenteiliges erläutert ist.following Be exemplary embodiments the hardware protocol accelerator module according to the invention described. The embodiments can be combined with each other, unless expressly contrary explained is.

Bei einem Ausführungsbeispiel enthält das Hardware-Protokollbeschleunigermodul eine Interrupt-Einheit, die ausgebildet ist, durch Aussenden eines entsprechenden ersten Interruptsignals einen erfolgreichen Empfang eines für den ersten Senderempfänger bestimmten Datenblocks an einen externen Prozessor des ersten Senderempfängers zu signalisieren, und die ausgebildet ist, nach Empfang einer Bestätigungsnachricht von extern über den erfolgreichen Empfang eines vom ersten Senderempfänger versandten Datenblocks ein entsprechendes zweites Interruptsignal an den externen Prozessor zu senden.In one embodiment, the hardware protocol accelerator module includes an interrupt unit configured to signal a successful receipt of a data block destined for the first transceiver to an external processor of the first transceiver by transmitting a corresponding first interrupt signal and configured to be received a confirmation message externally to send a corresponding second interrupt signal to the external processor via the successful receipt of a data block sent by the first transceiver.

Bei einem weiteren Ausführungsbeispiel ist eine Redundanzprüfungseinheit vorgesehen, die ausgebildet ist, unmittelbar nach Empfang eines Datenrahmens nach einem vorbestimmten Algorithmus der zyklischen Redundanzprüfung Prüfsummen eingehender oder ausgehender Datenblöcke oder sowohl eingehender als auch ausgehender Datenblöcke zu berechnen und ein dem Prüfungsergebnis entsprechendes Prüfsignal innerhalb der Bestätigungszeitspanne auszugeben.at a further embodiment is a redundancy check unit provided, which is formed immediately after receiving a Data frame according to a predetermined algorithm of the cyclic redundancy check checksums incoming or outgoing data blocks or both incoming and outgoing data blocks as well as outgoing data blocks to calculate and the test result corresponding test signal within the confirmation period issue.

Bei einem anderen Ausführungsbeispiel ist das Hardware-Protokollbeschleunigermodul ausgebildet, ein Backoff-Verfahren in einer protokollarisch vorgesehenen Wettbewerbsphase umzusetzen.at another embodiment the hardware protocol accelerator module is formed, a back-off method to be implemented in a protocolled competition phase.

Bevorzugt sind im Hardware-Protokollbeschleunigermodul der vorliegenden Erfindung unterschiedlichen Operationen des Hardware-Protokollbeschleunigermoduls jeweils individuelle Schaltkreise zugeordnet. Die Schaltkreise sind mit einem gemeinsamen Taktgeber verbunden und ausgebildet, im gleichen Taktzyklus, parallel betrieben zu werden. Auf diese Weise kann auch die Taktfrequenz für das Hardware-Protokollbeschleunigermodul niedrig gehalten werden, was eine weitere Energieersparnis ermöglicht.Prefers are in the hardware protocol accelerator module of the present invention different operations of the hardware protocol accelerator module each associated with individual circuits. The circuits are connected to a common clock and trained, in the same Clock cycle to be operated in parallel. That way too the clock frequency for the hardware protocol accelerator module is kept low, which allows for further energy savings.

In einem weiteren Ausführungsbeispiel weist das Hardware-Protokollbeschleunigermodul eine Warteschlangeneinheit auf, die eine Verweisliste auf in einem zum Hardware-Protokollbeschleunigermodul externen Speicher abgelegte und auszusendende Datenblöcke aufweist. Mit dieser Ausbildung der Warteschlangeneinheit entfällt die Notwendigkeit, separaten Speicherplatz für Datenblöcke im Protokollbeschleunigermodul vorzusehen, und wird keine zusätzliche interne Bearbeitungskapazität für das Abspeichern und Auslesen von Daten beansprucht. Die Warteschlangeneinheit ist ausgebildet, die Verweisliste in Form einer Vielzahl von Teil-Verweislisten anzulegen und zu aktualisieren. Jede Teil-Verweisliste nimmt Verweise auf Datenblöcke nur eines Datenblock-Typs auf. Auf diese Weise kann der Zugriff auf die jeweiligen Datenblöcke eines Typs besonders schnell erfolgen.In a further embodiment has the hardware protocol accelerator module a queue unit that has a reference list in one stored to the hardware protocol accelerator module external memory and data blocks to be sent having. With this training the queue unit eliminates the Need to separate space for data blocks in the protocol accelerator module and will not be additional internal processing capacity for the Storing and reading data claimed. The queue unit is formed, the reference list in the form of a variety of partial reference lists create and update. Each partial reference list takes references to data blocks of only one Data block type. In this way, access to the respective data blocks a type very fast.

Vorzugsweise ist die Warteschlangeneinheit zusätzlich ausgebildet ist, jedem Eintrag in eine Teil-Verweisliste neben dem erwähnten Verweis auf einen Datenblock zusätzlich einen zweiten oder dritten Verweis auf entweder einen nachfolgenden bzw. einen vorangehenden Eintrag in der betreffenden Teil-Verweisliste zuzuweisen. In einer Ausführungsform werden zumindest einem Teil der Einträge in eine jeweilige Teil-Verweisliste beide genannten zusätzlichen Verweise zugewiesen.Preferably The Queue Unit is additionally designed to suit everyone Entry in a partial reference list next to the mentioned reference to a data block additionally a second or third reference to either a subsequent one or a previous entry in the relevant sub-reference list assign. In one embodiment be at least part of the entries in a respective sub-reference list both mentioned additional Assigned references.

Das Hardware-Protokollbeschleunigermodul hat in einem weiteren Ausführungsbeispiel eine Übertragungsdauerberechnungseinheit, welche ausgebildet ist, anhand einer vorgegebenen Datenblocklänge und einer vorgegebenen Datenrate die Dauer der Übertragung eines Datenblocks zu berechnen. Die Übertragungsdauerberechnungseinheit ist mit dem Scheduler und der Warteschlangeneinheit verbunden.The Hardware protocol accelerator module has in a further embodiment a transmission duration calculation unit, which is formed, based on a predetermined data block length and a predetermined data rate, the duration of the transmission of a data block to calculate. The transmission duration calculation unit is connected to the scheduler and the queue unit.

Gemäß einem zweiten Aspekt der Erfindung wird ein Senderempfänger mit einem Hardware-Protokollbeschleunigermodul gemäß dem ersten Aspekt der Erfindung oder einem seiner hierin genannten Ausführungsbeispiele vorgeschlagen. Der Senderempfänger des zweiten Aspekts der Erfindung teilt die Vorteile des Hardware-Protokollbeschleunigermoduls des ersten Aspekts der Erfindung.According to one second aspect of the invention is a transceiver with a hardware protocol accelerator module according to the first Aspect of the invention or one of its embodiments mentioned herein proposed. The transceiver of the second aspect of the invention shares the advantages of the hardware protocol accelerator module of the first aspect of the invention.

Gemäß einem dritten Aspekt der Erfindung wird ein Sensorknoten mit einem Sensor und einem mit diesem verbundenen Senderempfänger gemäß dem zweiten Aspekt der Erfindung vorgeschlagen. Der Sensorknoten des zweiten Aspekts der Erfindung teilt die Vorteile des Hardware-Protokollbeschleunigermoduls des ersten Aspekts der Erfindung.According to one third aspect of the invention is a sensor node with a sensor and a transceiver associated therewith according to the second aspect of the invention proposed. The sensor node of the second aspect of the invention shares the benefits of the hardware protocol accelerator module of the first aspect of the invention.

Nicht nur aus Gründen der Energieeffizienz, sondern auch zugunsten des Tragekomforts eines Patienten wird eine hohe Integration eines Sensorknotens ermöglicht, der im Idealfall als Ein-Chip-Lösung realisiert werden kann. Dieser Chip wird im folgenden als Sensorknotenplattform bezeichnet. Eine Sensorknotenplattform wird beispielsweise einen Prozessor enthalten, der für die Abarbeitung einer Anwendungssoftware und auch von nicht zeitkritischen Teilen des Verbindungssicherungs-Protokolls des Senderempfängers zuständig ist.Not only for reasons energy efficiency, but also in favor of the wearing comfort of a Patients will be able to achieve high integration of a sensor node ideally as a one-chip solution can be realized. This chip is referred to below as a sensor node platform designated. For example, a sensor node platform becomes a Processor included for the processing of an application software and also of non-time critical Sharing the connection backup protocol of the transceiver is responsible.

Bei bevorzugten Ausführungsbeispielen des Sensorknotens ist der Sensor ausgebildet, eine einem Blutdruckwert eines Trägers des Sensors entsprechende Größe zu erfassen, ein Elektrokardiogramm eines Trägers des Sensors zu erfassen, oder eine andere Größe, die einen physiologischen Zustand oder Prozesses beschreibt, zu erfassen und ein dem Wert der Größe entsprechendes Signal auszugeben.at preferred embodiments the sensor node is the sensor, a blood pressure value a carrier to capture the size of the sensor, an electrocardiogram of a vehicle of the sensor, or another size that is physiological State or process describes to capture and a value the size corresponding Output signal.

Nachfolgend werden weitere Ausführungsbeispiele anhand der Figuren erläutert. Es zeigen:following become further embodiments explained with reference to the figures. Show it:

1 ein schematisches Diagramm eines Body-Area-Networks mit einem Sensorknoten; 1 a schematic diagram of a body-area network with a sensor node;

2 ein schematisches Blockdiagramm eines Ausführungsbeispiels eines Hardware-Protokollbeschleunigermoduls für die Verbindungssicherungs-Protokollebene nach dem Protokoll IEEE 802.15.3 in einem Senderempfänger. 2 a schematic block diagram of an embodiment of a hardware protocol accelerator module for the connection assurance protocol layer according to the IEEE 802.15.3 protocol in a transceiver.

Eine Sensorknotenplattform 100 ist in 1 in Form eines schematischen Blockdiagramms dargestellt. Beispielhafte Sensoren, die in 1 dargestellt sind, sind ein Lungentonsensor 102, ein EKG-Sensor 104, ein Blutdrucksensor 106 und ein Accelerometer 108. Die im linken Teil der Figur durch Punkte 102 bis 108 symbo lisierten Sensorknoten 102 bis 108 sind in Form des Sensorknotens 104 stellvertretend in der rechten Figurenhälfte mit größerem Detail dargestellt.A sensor node platform 100 is in 1 shown in the form of a schematic block diagram. Exemplary sensors used in 1 are a lung tone sensor 102 , an ECG sensor 104 , a blood pressure sensor 106 and an accelerometer 108 , The in the left part of the figure by dots 102 to 108 symbolized sensor nodes 102 to 108 are in the form of the sensor node 104 Represented in the right half of the figure with greater detail.

Der Sensorknoten 104 enthält einen Prozessor 110, vorliegend einen LEON2-Prozessor, der für die Abarbeitung von Anwendungssoftware sowie von nicht zeitkritischen Teilen der Verbindungssicherungs-Protokollebene des Protokolls IEEE 802.15.3 ausgebildet ist. Über einen gemeinsamen AHB-Bus 112 ist der Prozessor mit einem AHB-Controller 114, einem Speichercontroller 116, einem Hardware-Protokollbeschleunigermodul 118 (Protocoll Accelerator), einer Basisband-Prozesssteuerung („Base Band Processing") 120, einem RF-Frontend 122 und einer AHB/APB-Bridge 124 verbunden. Die AHB/APB-Bridge 124 ist über einen APB-Bus 126 mit dem Speichercontroller 116 und Timern 128, Interrupt-Request-Steuerungen (IRQCTRL) 130, einer Eingabe/Ausgabe-Schnittstelle (I/O Port) 132 und einer UART-Schnittstelle 134 verbunden. Über die Eingabe/Ausgabe-Schnittstelle 132 und die UART-Schnittstelle 134 wird mit einem oder mehreren angeschlossenen Sensoren 136 und 138 des Sensorknotens 104 kommuniziert. Die Sensoren sind im EKG-Sensorknoten 104 an sich bekannte EKG-Sensoren. Weiterhin enthält der Sensorknoten 104 einen ersten Speicher 140, beispielsweise einen SRAM-Speicher, und einen zweiten Speicher, beispielsweise einen PROM-Speicher 142, die beide über einen Speicherbus 144 mit dem Speichercontroller 116 verbunden sind.The sensor node 104 contains a processor 110 , here a LEON2 processor, which is designed for the processing of application software as well as non-time critical parts of the connection assurance protocol level of the protocol IEEE 802.15.3. Via a common AHB bus 112 is the processor with an AHB controller 114 , a memory controller 116 , a hardware protocol accelerator module 118 (Protocoll Accelerator), a baseband process control ("Base Band Processing") 120 , an RF frontend 122 and an AHB / APB bridge 124 connected. The AHB / APB bridge 124 is via an APB bus 126 with the memory controller 116 and timers 128 , Interrupt request controls (IRQCTRL) 130 , an input / output interface (I / O port) 132 and a UART interface 134 connected. Via the input / output interface 132 and the UART interface 134 is connected to one or more connected sensors 136 and 138 of the sensor node 104 communicated. The sensors are in the ECG sensor node 104 known ECG sensors. Furthermore, the sensor node contains 104 a first memory 140 , For example, an SRAM memory, and a second memory, such as a PROM memory 142 both via a memory bus 144 with the memory controller 116 are connected.

2 zeigt ein schematisches Blockdiagramm des Sensorknotens aus 1, in dem das Hardware-Protokollbeschleuniger-Modul („Protocol Accelerator") 118 aus 1 detaillierter dargestellt ist. 2 shows a schematic block diagram of the sensor node 1 in which the hardware protocol accelerator module ("Protocol Accelerator") 118 out 1 is shown in more detail.

Die Aufgaben des Protokollbeschleunigers 118 bestehen darin,

  • – Datenblöcke von der Bitübertragungsschicht 154 entgegen zu nehmen (Empfangsrichtung), zu filtern, die CRC-Prüfsumme auszurechnen und über direkten Speicherzugriff an einer vorher angegebenen Stelle im Speicher abzulegen,
  • – den Prozessor 110 zu benachrichtigen (per Interrupt), wenn ein Datenblock erfolgreich empfangen wurde, sodass der Prozessor die Datenblockauswertung übernehmen kann,
  • – empfangene Datenblöcke, für die eine Bestätigung (Immediate Acknowledgement Datenblock) gesendet werden muss, nach 10 Mikrosekunden zu bestätigen,
  • – einen Beacon-Datenblock, und zwar sowohl das gesendete im Falle, dass das Gerät PNC (Piconet-Controller) ist, als auch das empfangene, hinsichtlich der reservierten Zeitschlitze auszuwerten,
  • – eine Warteschlange mit notwendigen Information über abzusendende Datenblöcke zu verwalten,
  • – entsprechend der verstrichenen Zeit seit Start des Beacon-Datenblocks und der im Beacon festgelegten Zeitschlitze zur vorgesehenen Zeit ein Datenblock aus der Warteschlange zum Absenden zu wählen,
  • – das Backoff-Verfahren in der Wettbewerbsphase umzusetzen,
  • – die Datenblockdaten über direkten Speicherzugriff zu holen, die CRC-Prüfsumme zu berechnen, an die Bitübertragungsschicht zu übergeben, ggf. auf die Bestätigung zu warten und den Prozessor per Interrupt über den Erfolg der Datenblockübertragung zu informieren.
The tasks of the protocol accelerator 118 consist in
  • - Data blocks from the physical layer 154 to receive (receive direction), to filter, to calculate the CRC checksum and store it in memory via a direct memory access at a previously specified location,
  • - the processor 110 to notify (via interrupt) if a data block has been successfully received so that the processor can take over the data block evaluation,
  • - to acknowledge received data blocks for which an acknowledgment (Immediate Acknowledgment Data Block) must be sent, after 10 microseconds,
  • A beacon data block, both the one sent in the event that the device is PNC (piconet controller), and the one received, with regard to the reserved time slots,
  • To manage a queue with necessary information about blocks of data to be sent,
  • According to the elapsed time since the start of the beacon data block and the time slots defined in the beacon at the designated time to select a data block from the queue for sending,
  • - implement the back-off procedure in the competitive phase,
  • To fetch the data block data via direct memory access, to calculate the CRC checksum, to pass it to the physical layer, if necessary to wait for the acknowledgment and to notify the processor by means of an interrupt about the success of the data block transmission.

Das in der 2 dargestellte Hardware-Protokollbeschleunigermodul 118 kommuniziert mit Hilfe eines Empfangsdatencontrollers 150 und eines Sendedatencontrollers 152 mit Funktionsblöcken einer relativ zum Hardware-Protokollbeschleunigermodul externen Bitübertragungsschicht 154 des Senderempfängers. Beide Controller 150 und 152 sind mit CRC-Prüfeinheiten 156 bzw. 158 verbunden, die eine zyklische Redundanzprüfung nach bekannten Algorithmen durchführen.That in the 2 illustrated hardware protocol accelerator module 118 communicates with the help of a receive data controller 150 and a transmit data controller 152 with functional blocks of an external physical layer relative to the hardware protocol accelerator module 154 the transceiver. Both controllers 150 and 152 are with CRC test units 156 respectively. 158 connected performing a cyclic redundancy check according to known algorithms.

Über einen in 2 nicht näher dargestellten internen Bus sind der Empfangsdatencontroller 150 und der Sendedatencontroller 152 mit einer Interrupt-Einheit 160 verbunden, die den LEON2-Prozessor 110 per Interrupt benachrichtigt, wenn ein Datenblock erfolgreich empfangen wurde, so dass dieser die Datenblockauswertung übernehmen kann, oder wenn ein Datenblock erfolgreich an einen zweiten, externen Senderempfänger übertragen wurde.About one in 2 not shown internal bus are the receive data controller 150 and the transmit data controller 152 with an interrupt unit 160 connected to the LEON2 processor 110 notified by interrupt if a data block was successfully received, so that it can take over the data block evaluation, or if a data block was successfully transmitted to a second, external transceiver.

Der Sendedatencontroller 152 und der Empfangsdatencontroller 150 sind über eine DMA (Direct Memory Access)-Einheit 162, ein Masterinterface 164, den Systembus, und den Speichercontroller 116 mit dem zum Protokollbeschleuniger 118 externen Speicher 140 (hier nicht dargestellt, vgl. jedoch 1) verbunden, und können über direktem Speicherzugriff Datenblöcke an vorbestimmten Stellen im Speicher 140 ablegen, bzw. Datenblöcke von vorbestimmten Stellen im Speicher 140 abrufen.The send data controller 152 and the receive data controller 150 are via a DMA (Direct Memory Access) unit 162 , a master interface 164 , the system bus, and the memory controller 116 with the to the protocol accelerator 118 external memory 140 (not shown here, but see 1 ), and can access data blocks at predetermined locations in memory via direct memory access 140 store, or data blocks of predetermined locations in the memory 140 recall.

Eine Beacon-Analyseeinheit 166 ist mit dem Empfangsdatencontroller 150 und dem Sendedatencontroller 152 verbunden und dient zur Auswertung eines Beacon-Datenblocks und zur entsprechenden Steuerung des Betriebs des Hardware-Protokollbeschleunigermoduls 118 über einen Scheduler 168 und einen Timer 170. Der Sendedatencontroller 152 greift über den Scheduler 168 auf eine Sendewarteschlange 172 zu, und sorgt dafür, dass rechtzeitig zum im Beacon-Datenblock vorbestimmten Zeitschlitz Sendedaten aus der Sendewarteschlange 172 abgerufen und an die Bitübertragungsschicht 154 zur Versendung weitergegeben werden.A beacon analysis unit 166 is with the receive data controller 150 and the transmit data controller 152 connected and used to evaluate a beacon data block and for controlling the operation of the hardware protocol accelerator module 118 via a scheduler 168 and a timer 170 , The send data controller 152 accesses the scheduler 168 on a send queue 172 to, and ensures that in time for the predetermined in the beacon data block time slot transmission data from the send queue 172 and to the physical layer 154 to be forwarded for shipment.

Weiterhin führt das Hardware-Protokollbeschleunigungsmodul 118 in der vom IEEE 802.15.3 vorgesehenen Wettbewerbsphase einen Backoff-Verfahren durch.Furthermore, the hardware protocol acceleration module results 118 in the competition phase envisaged by the IEEE 802.15.3, a back-off procedure.

Um die Funktionsweise des Protokollbeschleunigers und das Zusammenwirken seiner Komponenten näher zu erläutern, wird nachfolgend der Ablauf des Absenden eines Datenblocks dargestellt. Dabei wird angenommen, dass als Datenblock ein Datenpaket, nachfolgend auch kurz als Paket bezeichnet, gesendet wird. Die Beschreibung nimmt Bezug auf das Protokoll IEEE 802.15.3, in dessen Rahmen der Protokollbeschleuniger 118 zur Beschleunigung der MAC-Ebene dient.In order to explain in more detail the mode of operation of the protocol accelerator and the interaction of its components, the sequence of sending a data block is shown below. It is assumed that a data packet, also referred to below as a packet, is sent as the data block. The description makes reference to the protocol IEEE 802.15.3, under which the protocol accelerator 118 serves to accelerate the MAC level.

Der Protokollbeschleuniger 118 sei in einem bereits assoziierten Gerät im Einsatz, d. h., es werden regelmäßig Beacon-Pakete empfangen. Die Daten des Beacons werden, nacheinander jeweils 16 bit, von der Bitübertragungsschicht 154 an den Empfangsdaten-Controller 150 übergeben. Dieser leitet den empfangenen Datenstrom in den CRC-Algorithmus 156 und auch über direkten Speicherzugriff (DMA) an eine vorher vom Prozessor 110 bestimmte Speicheradresse. Wird erkannt, dass es sich bei dem Paket um einen Beacon handelt – diese Information ist im Protokoll-Header enthalten – gehen die Daten zusätzlich an die Beacon-Analyseeinheit 166.The protocol accelerator 118 is in an already associated device in use, ie, beacon packets are received regularly. The data of the beacon, 16 bits in succession, from the physical layer 154 to the receive data controller 150 to hand over. This directs the received data stream into the CRC algorithm 156 and also via direct memory access (DMA) to a previously from the processor 110 certain memory address. If it is detected that the packet is a beacon - this information is contained in the protocol header - the data also goes to the beacon analysis unit 166 ,

Ähnliches geschieht im Sendedaten-Controller 152 für den Fall des Koordinators, der die Beacon-Pakete aussendet und nicht empfängt.The same happens in the send data controller 152 in the case of the coordinator sending and not receiving beacon packets.

In der Beacon-Analyseeinheit 166 werden u. a. die Informationen über die Zeitschlitze, zu denen das Gerät senden darf, extrahiert und lokal in Registern bis zum nächsten Beacon gespeichert.In the beacon analysis unit 166 Among other things, the information about the time slots to which the device is allowed to send is extracted and stored locally in registers until the next beacon.

Der Scheduler 168 erhält ein Steuersignal, sobald das Ende des Beacon-Pakets erreicht wurde – jetzt übernimmt der Scheduler 168 die Kontrolle über die abzusendenden Pakete. Der Timer 170 wird benötigt, um den aktuellen Zeitpunkt innerhalb des Superframes ab Beginn der Beacon-Übertragung anzuzeigen. Mit dieser Zeitinformation und den Zeitschlitzangaben aus der Beacon-Analyse fragt der Scheduler 168 bei der Sendewarteschlange 172 jeweils zu Beginn eines Zeitschlitzes und nach dem Ende einer Paketübertragung ein nächstes zu sendendes Paket an.The scheduler 168 receives a control signal as soon as the end of the beacon packet has been reached - now the scheduler takes over 168 the control of the packages to be sent. The timer 170 is required to display the current time within the superframe from the beginning of the beacon transmission. The scheduler asks with this time information and the time slot information from the beacon analysis 168 at the send queue 172 at the beginning of a time slot and after the end of a packet transmission, a next packet to be sent.

Gibt es ein passendes Paket in der Sendewarteschlange 172, so wird der Sendedaten-Controller 152 mit dessen Übertragung beauftragt. Es ist dabei möglich, dass mehrere Paketübertragungen innerhalb eines Zeitschlitzes erfolgen.Is there a matching packet in the send queue? 172 so becomes the transmit data controller 152 commissioned with its transmission. It is possible that several packet transmissions occur within a time slot.

Eine zusätzliche Übertragungsdauerberechnungseinheit 174 (CalcDuration), berechnet die tatsächliche Dauer der Übertragung, basierend auf der Paketlänge und seiner Datenrate. Dieselbe Übertragungsdauerberechnungseinheit 174 wird auch von der Sendewarteschlange 172 benutzt, um zu bestimmen, ob die Übertragung noch in den Zeitschlitz passt.An additional transmission duration calculation unit 174 (CalcDuration), calculates the actual duration of the transmission, based on the packet length and its data rate. The same transmission duration calculation unit 174 is also from the send queue 172 used to determine if the transmission still fits in the timeslot.

Die Zeitsteuerung durch den Timer 170 sorgt dafür, dass der Scheduler 168 nach der Übertragung das nächste Paket entweder noch für denselben oder den nächsten Zeitschlitz aus der Sendewarteschlange 172 anfragt. Der Scheduler 168 initiiert auch für das Absenden des Beacons zu Beginn des nächsten Superframes.The timing by the timer 170 ensures that the scheduler 168 after transmission, the next packet either still for the same or the next time slot from the send queue 172 requests. The scheduler 168 also initiates sending the beacon at the beginning of the next superframe.

Nachfolgend wir die Funktionsweise der Sendewarteschlange 172 in näheren Einzelheiten beschrieben.Below is the operation of the send queue 172 described in more detail.

Das im Protokollbeschleuniger 118 realisierte automatische Absenden von Paketen – ohne die unmittelbare Steuerung des LEON2-Prozessors 110 – im Zusammenspiel von Scheduler 168, Sendewarteschlange 172 und direktem Speicherzugriff über die DMA-Einheit 162 ermöglicht es, die Verarbeitungsgeschwindigkeit und damit den Energieverbrauch des Prozessors 110 zu verringern. Eine entscheidende Rolle spielt dabei die Sendewarteschlange 172.That in the protocol accelerator 118 realized automatic sending of parcels - without the immediate control of the LEON2 processor 110 - in the interaction of scheduler 168 , Send queue 172 and direct memory access through the DMA unit 162 allows the processing speed and thus the power consumption of the processor 110 to reduce. A crucial role is played by the send queue 172 ,

Die für den Einsatz im Protokollbeschleuniger 118 vorgesehene Sendewarteschlange 172 enthält eine Liste oder eine Tabelle mit Informationen über abzusendende Pakete, nicht jedoch die Pakete selbst. Diese sind im Speicher abgelegt, der relativ zum Protokollbeschleuniger extern angeordnet ist. Die auf dem LEON2-Prozessor 110 laufende Protokoll-Software füllt diese Tabelle entsprechend dem Paketaufkommen. Eine Meldung an den Prozessor 110 wird abgesendet, sobald ein Paket erfolgreich gesendet wurde oder mehrmals nicht übertragen werden konnte. Dann kann der Tabelleneintrag durch den Prozessor 110 durch einen neuen Eintrag ersetzt werden. Dies muss jedoch nicht sofort passieren, da noch genügend andere Pakete in der Sendewarteschlange 172 bereitstehen.The one for use in the protocol accelerator 118 provided send queue 172 contains a list or table of information about packets to be sent, but not the packets themselves. These are stored in memory, which is external to the protocol accelerator. The on the LEON2 processor 110 running log software fills this table according to the packet volume. A message to the processor 110 is sent as soon as a packet has been sent successfully or could not be transmitted several times. Then the table entry can be done by the processor 110 be replaced by a new entry. However, this does not happen immediately because there are enough other packets in the send queue 172 ready.

Beispielsweise kann die Sendewartenschlange 172 acht Tabelleneinträge enthalten. Es könnten jedoch auch deutlich mehr Tabelleneinträge sein, z. B. 32 oder 64. Um schneller ein passendes Paket nach Anfrage durch den Scheduler 168 heraussuchen zu können, werden Paketlisten für unterschiedliche Pakettypen, etwa Beacon-Pakete oder solche, die in der Wettbewerbsphase (Contention Access Period) gesendet werden können, geführt. Der Anfangslisteneintrag ist gespeichert, von diesem aus kann die ganze Liste über Verweise zum nächsten Listenelement durchlaufen werden. Außerdem gibt es auch Rückverweise auf das jeweils vorhergehende Element, um auch Löschoperationen effizient unterstützen zu können.For example, the send queue can 172 contain eight table entries. However, it could also be significantly more table entries, z. For example, 32 or 64. To speed up a matching packet upon request by the scheduler 168 To be able to search out package lists for different types of packets, such as beacon packets or those that can be sent in the Contention Access Period. The initial list entry is stored, from where the entire list can be traversed by references to the next list element. In addition, there are also references to the previous element in order to efficiently support deletion operations.

Es ergibt sich die in der nachfolgenden Tabelle 1 zusammengefasste Struktur der Tabelleneinträge, die neben den eigentlichen Paketdaten auch Listenverwaltungsfelder enthält. Feldname Zweck Valid Gültigkeit des Eintrags, Paket muss noch gesendet werden. Status Zustand der Übertragung (erfolgreich, abgebrochen) Rate Datenrate frame_type Pakettyp (nach IEEE 802.15.3) src_id, dest_id Quelladresse, Zieladresse stream_index Identifikator für isochrone Datenströme Length Paketlänge payload_ptr Adresse des Pakets im Speicher Offset, frag_size, frag_num, last_frag_number Angaben bei Paketfragmentierung msdu_num Paketfolgenummer retry_count Zähler für fehlgeschlagene Übertragungen prev_elem, next_elem Verweis auf nächstes/voriges Listenelement (Index in die Tabelle) extra_data Unbenutztes Datenfeld, das die Software beschreiben kann, um sich bspw. den Index in eine Software-Tabelle zu merken. The result is the structure of the table entries summarized in Table 1 below, which also contains list management fields in addition to the actual packet data. field name purpose Valid Validity of the entry, package still to be sent. status State of transmission (successful, aborted) rate data rate frame_type Package Type (IEEE 802.15.3) src_id, dest_id Source address, destination address stream_index Identifier for isochronous data streams Length packet length payload_ptr Address of the package in the memory Offset, frag_size, frag_num, last_frag_number Details for package fragmentation msdu_num Packet sequence number retry_count Counter for failed transfers prev_elem, next_elem Reference to next / previous list element (index in the table) extra_data Unused data field that the software can describe, for example, to remember the index in a software table.

Tabelle 1: In jedem Tabelleneintrag der Sendewarteschlange enthaltene InformationenTable 1: In each table entry the Send Queue Information

In T. H. Meng, B. McFarland, D. Su, and J. Thomson, "Design and implementation of an all-CMOS 802.11a wireless LAN chipset," IEEE Commun. Mag., vol. 41, no. 8, pp. 160-168, Aug. 2003 ist in einem anderen Zusammenhang die Verwendung von Paketdeskriptoren erwähnt. Daraus ist es jedoch nicht bekannt, eine Sendewarteschlange in Paketlisten für unterschiedliche Pakettypen zu unterteilen.In T. H. Meng, B. McFarland, D. Su, and J. Thomson, "Design and implementation of all-CMOS 802.11a wireless LAN chipset, "IEEE Commun. Mag., vol. 41, no. 8, pp. 160-168, Aug. 2003 is the use in another context mentioned by package descriptors. However, it is not known from this, a send queue in package lists for different Subdivide package types.

Um den Hardware-Entwurf des Protokollbeschleunigers 118 nicht auf eine bestimmte Datenrate und Zeitabstände zwischen den aufeinanderfolgenden Paketübertragungen festzulegen, weist der Protokollbeschleuniger 118 software-programmierbare Register 176 bis 180 eingefügt, die maßgeblich das Zeitverhalten des Protokollbeschleunigers 118 bestimmen. Diese Register werden vom Scheduler 168 ausgelesen, wenn dieser den Zeitpunkt des Absendens des nächsten Paketes bestimmt. Die Register 176 bis 180 enthalten den SIFS-, MIFS- bzw. Backoff-Slot-Wert, jeweils angegeben in Mikrosekunden.To the hardware design of the protocol accelerator 118 not to set a specific data rate and time intervals between the successive packet transmissions, the protocol accelerator points out 118 Software programmable registers 176 to 180 inserted, which determines the timing of the protocol accelerator 118 determine. These registers are from the scheduler 168 read out if this determines the time of sending the next packet. The registers 176 to 180 contain the SIFS, MIFS, and backoff slot values, each in microseconds.

Außerdem gibt es ein Register 182, mit dessen Hilfe die weiter oben erwähnte Übertragungsdauerberechnungseinheit 174 die Dauer der Übertragung bei gegebener Paketlänge berechnet: Zeit = Paketlänge/Datenrate. Die Übertragungsdauerberechnungseinheit 174 kommt nur einmal im Protokollbeschleuniger vor und wird aber von mehreren anderen Einheiten über den (nicht näher dargestellten) Systembus in Anspruch genommen. Ein Arbitrationsverfahren sorgt dafür, dass immer nur höchstens eine Einheit exklusiven Zugriff auf die Übertragungsdauerberechnungseinheit 174 erhält.There is also a register 182 , with the aid of which the above-mentioned transmission duration calculation unit 174 the duration of the transmission is calculated for a given packet length: time = packet length / data rate. The transmission duration calculation unit 174 occurs only once in the protocol accelerator and is claimed by several other units via the system bus (not shown). An arbitration procedure ensures that only one unit at a time has exclusive access to the transmission duration calculation unit 174 receives.

Claims (12)

Hardware-Protokollbeschleunigermodul für eine Verbindungssicherungs-Protokollebene eines ersten Senderempfängers, das ausgebildet ist, über eine Bitübertragungs-Protokollebene einer externen Empfangseinheit von einem externen zweiten Senderempfänger her eingehende Datenblöcke im Hinblick auf eine in den Datenblöcken enthaltene Zieladresse zu filtern und bezüglich für den ersten Senderempfänger bestimmter Datenblöcke eine Speicheroperation an einem vorbestimmten externen Speicherplatz des ersten Senderempfängers zu veranlassen; für den ersten Senderempfänger bestimmte Datenblöcke auf erfolgreichen Empfang hin zu überprüfen; einen erfolgreichen Empfang eines für den ersten Senderempfänger bestimmten Datenblocks an einen externen Prozessor des ersten Senderempfängers zu signalisieren; nach erfolgreichem Empfang eines für den ersten Senderempfänger bestimmten Datenblocks einen für den zweiten Senderempfänger bestimmten Bestätigungsdatenblock innerhalb einer durch das Verbindungssicherungsprotokoll vorgegebenen Bestätigungszeitspanne zu erzeugen und auszugeben; einem empfangenen Beacon-Datenblock Zeitschlitzinformation über einen oder mehrere dem ersten Senderempfänger zugewiesene Sendezeitschlitze zu entnehmen; eine Warteschlange zu sendender Datenblöcke zu verwalten und Datenblöcke der Warteschlange zum Versenden innerhalb des zugewiesenen Sendezeitschlitzes auszuwählen; zum Versenden ausgewählte Datenblöcke aus einem aus der Warteschlange bekannten Speicherplatz auszulesen und an eine Bitübertragungs-Protokollebene einer externen Sendeeinheit des ersten Senderempfängers zu übergeben.Hardware Protocol Accelerator Module for a Connection Backup Log Level first transceiver, that is trained above a bit transfer protocol level an external receiving unit from an external second transceiver incoming data blocks with regard to a destination address contained in the data blocks filter and refer for the first transceiver certain data blocks a memory operation at a predetermined external memory location of the first transceiver to induce; For the first transceiver certain data blocks to check for successful reception; a successful one Reception of a for the first transceiver certain data block to an external processor of the first transceiver signal; after successfully receiving one for the first Transmitter-receiver certain data block one for the second transceiver certain confirmation data block within a predetermined by the connection backup protocol Confirmation period to generate and output; a received beacon frame Time slot information about one or more transmit time slots assigned to the first transceiver refer to; to manage a queue of data blocks to be sent and data blocks the queue for transmission within the assigned transmission time slot select; to the Send selected data blocks read from a known from the queue storage space and to a bit transfer protocol layer an external transmitting unit of the first transceiver to pass. Hardware-Protokollbeschleunigermodul nach Anspruch 1, mit einer Interrupt-Einheit, die ausgebildet ist durch Aussenden eines entsprechenden ersten Interruptsignals einen erfolgreichen Empfang eines für den ersten Senderempfänger bestimmten Datenblocks an einen externen Prozessor des ersten Senderempfängers zu signalisieren, und die ausgebildet ist, nach Empfang einer Bestätigungsnachricht von extern über den erfolgreichen Empfang eines vom ersten Senderempfänger versandten Datenblocks ein entsprechendes zweites Interruptsignal an den externen Prozessor zu senden.Hardware protocol accelerator module according to claim 1, with an interrupt unit formed by sending out a corresponding first interrupt signal a successful one Reception of a for the first transceiver certain data block to an external processor of the first transceiver signal, and which is formed upon receipt of a confirmation message externally via the successful reception of a message sent by the first transceiver Data block a corresponding second interrupt signal to the external To send processor. Hadware-Protokollbeschleunigermodul nach Anspruch 1 oder 2, mit einer Redundanzprüfungseinheit, die ausgebildet ist, unmittelbar nach Empfang eines Datenrahmens nach einem vorbestimmten Algorithmus der zyklischen Redundanzprüfung Prüfsummen eingehender oder ausgehender Datenblöcke oder sowohl eingehender als auch ausgehender Datenblöcke zu berechnen und ein dem Prüfungsergebnis entsprechendes Prüfsignal innerhalb der Bestätigungszeitspanne auszugeben.Hadware protocol accelerator module according to claim 1 or 2, with a redundancy check unit, the is formed immediately after receiving a data frame a predetermined algorithm of the cyclic redundancy check checksums incoming or outgoing data blocks or both incoming and outgoing data blocks as well as outgoing data blocks to calculate and the test result corresponding test signal within the confirmation period issue. Hardware-Protokollbeschleunigermodul nach Anspruch 1, das ausgebildet ist, ein Backoff-Verfahren in einer protokollarisch vorgesehenen Wettbewerbsphase umzusetzen.Hardware protocol accelerator module according to claim 1, which is adapted to a back-off procedure in a protocol implementation of the planned competition phase. Hardware-Protokollbeschleunigermodul nach Anspruch 1, das zur Implementierung von Aufgaben einer Verbindungssicherungs-Protokollebene nach dem Protokoll IEEE 802.15.3 in einem Senderempfänger ausgebildet ist.Hardware protocol accelerator module according to claim 1, which is used to implement a connection backup protocol level tasks formed according to the protocol IEEE 802.15.3 in a transceiver is. Hardware-Protokollbeschleunigermodul nach Anspruch 1, bei dem unterschiedlichen Operationen des Hardware-Protokollbeschleunigermoduls jeweils individuelle Schaltkreise zugeordnet sind, die mit einem gemeinsamen Taktgeber verbunden und ausgebildet sind, im gleichen Taktzyklus parallel betrieben zu werden.Hardware protocol accelerator module according to claim 1, in the various operations of the hardware protocol accelerator module each individual circuits are assigned, with a common clock connected and formed in the same Clock cycle to be operated in parallel. Hardware-Protokollbeschleunigermodul nach einem der vorstehenden Ansprüche, das eine Warteschlangeneinheit aufweist, die eine Verweisliste mit Verweisen auf in einem zum Hardware-Protokollbeschleunigermodul externen Speicher abgelegte und auszusendende Datenblöcke aufweist wobei die Warteschlangeneinheit ausgebildet ist, die Verweisliste in Form einer Vielzahl von Teil-Verweislisten anzulegen und zu aktualisieren, und wobei jede Teil-Verweisliste Verweise auf Datenblöcke eines Datenblock-Typs aufnimmt.A hardware protocol accelerator module as claimed in any one of the preceding claims, comprising a queue unit having a reference list with references to data blocks stored in and external to the hardware protocol accelerator module, the queue unit being adapted to create the reference list in the form of a plurality of partial reference lists and to ak and each sub-reference list includes references to data blocks of a data block type. Hardware-Protokollbeschleunigermodul nach Anspruch 7, bei der die Warteschlangeneinheit ausgebildet ist, jedem Eintrag in eine Teil-Verweisliste neben einem Verweis auf einen Datenblock einen zweiten oder dritten Verweis auf einen nachfolgenden und/oder einen vorangehenden Eintrag in der betreffenden Teil-Verweisliste zuzuweisen.Hardware protocol accelerator module according to claim 7, in which the queue unit is formed, each entry into a partial reference list next to a reference to a data block a second or third reference to a subsequent and / or a preceding entry in the relevant sub-reference list assign. Hardware-Protokollbeschleunigermodul nach einem der vorstehenden Ansprüche, mit einer Übertragungsdauerberechnungseinheit, welche ausgebildet ist, anhand einer vorgegebenen Datenblocklänge und einer vorgege benen Datenrate die Dauer der Übertragung eines Datenblocks zu berechnen.Hardware protocol accelerator module according to one of previous claims, with a transmission duration calculation unit, which is formed, based on a predetermined data block length and a predetermined data rate, the duration of the transmission of a data block to calculate. Senderempfänger mit einem Hardware-Protokollbeschleunigermodul nach einem der vorstehenden Ansprüche.Transmitter-receiver with a hardware protocol accelerator module according to any one of the preceding claims. Sensorknoten mit einer einem Sensor und einem mit diesem verbundenen Senderempfänger nach Anspruch 10.Sensor node with one sensor and one with this connected transceiver according to claim 10. Sensorknoten nach Anspruch 11, bei dem der Sensor ausgebildet ist, eine einem Blutdruckwert eines Trägers des Sensors entsprechende Größe zu erfassen, ein Elektrokardiogramm eines Trägers des Sensors zu erfassen, oder eine andere Größe, die einen physiologischen Zustand oder Prozesses beschreibt, zu erfassen und ein dem Wert der Größe entsprechendes Signal auszugeben.Sensor node according to claim 11, wherein the sensor is formed, a blood pressure value of a carrier of the Sensors to capture appropriate size, an electrocardiogram of a vehicle of the sensor, or another size that is physiological State or process describes to capture and a value the size corresponding Output signal.
DE102007003634A 2006-09-14 2007-01-19 Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit Active DE102007003634B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102007003634A DE102007003634B3 (en) 2006-09-14 2007-01-19 Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102006043779 2006-09-14
DE102006043779.9 2006-09-14
DE102007003634A DE102007003634B3 (en) 2006-09-14 2007-01-19 Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit

Publications (1)

Publication Number Publication Date
DE102007003634B3 true DE102007003634B3 (en) 2008-04-24

Family

ID=39198650

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007003634A Active DE102007003634B3 (en) 2006-09-14 2007-01-19 Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit

Country Status (1)

Country Link
DE (1) DE102007003634B3 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010108825A1 (en) 2009-03-24 2010-09-30 Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik Protocol accelerator module with packet forwarding function and method of operation for a transceiver for the rapid forwarding of data packets
US8750222B2 (en) 2009-02-02 2014-06-10 Koninklijke Philips N.V. Transciever device for on-body and off-body communications

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004343A1 (en) * 1997-07-18 1999-01-28 Interprophet Corporation Tcp/ip network accelerator system and method
US20050198531A1 (en) * 2004-03-02 2005-09-08 Marufa Kaniz Two parallel engines for high speed transmit IPSEC processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004343A1 (en) * 1997-07-18 1999-01-28 Interprophet Corporation Tcp/ip network accelerator system and method
US20050198531A1 (en) * 2004-03-02 2005-09-08 Marufa Kaniz Two parallel engines for high speed transmit IPSEC processing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MENG, T. (u.a.): Design and Implementation of an AII-CMOS 802.11a Wireless LANChipset. In: IEEE Communications Magazine. ISSN: 0163-6804, 2003, S. 160-168 *
PANIC, G. (u.a.): A System-on-Chip Implementation of the IEEE 802.11a MAC Layer. In: Proceedings of the Euromicro Symposium on Digital System Design. ISBN: 0-7695-2003-0.2003, S. 319-324 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8750222B2 (en) 2009-02-02 2014-06-10 Koninklijke Philips N.V. Transciever device for on-body and off-body communications
WO2010108825A1 (en) 2009-03-24 2010-09-30 Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik Protocol accelerator module with packet forwarding function and method of operation for a transceiver for the rapid forwarding of data packets
DE102009001821A1 (en) 2009-03-24 2010-10-07 Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik Packet-forwarding protocol acceleration module and method for a transceiver for fast forwarding of data packets
US8654764B2 (en) 2009-03-24 2014-02-18 IHP GmbH—Innovations for High Performance Microelectronics/Leibniz—Institut für innovative Mikroelektronik Protocol accelerator module with packet forwarding function and a method of transceiver operation for rapid forwarding of data packets

Similar Documents

Publication Publication Date Title
DE102006058818B4 (en) Apparatus and method for converting text messages
EP2297902B1 (en) Protocol accelerator module with packet forwarding function and method of operation for a transceiver for the rapid forwarding of data packets
DE69334165T2 (en) NETWORK ADJUSTMENT DEVICE WITH MAIN COMPUTER INTERRUPTION AND INDICATION MANAGEMENT
DE60303026T2 (en) SYSTEM, METHOD AND PRODUCT FOR MANAGING DATA TRANSPORT IN A NETWORK
DE60219999T2 (en) A task management method for a router of a packet switch that is part of a secure and packet switched network
WO2006079651A1 (en) Method for transmitting data in messages via a communications link of a communications system and communications module, subscriber of a communications system and associated communications system
EP0833542B1 (en) Local network with transmitting and receiving apparatus
DE102005048581B4 (en) Subscriber interface between a FlexRay communication module and a FlexRay subscriber and method for transmitting messages via such an interface
DE60127499T2 (en) Route updating method for a micro mobility network
DE60121130T2 (en) Wireless data transmission
EP3759871B1 (en) Master-slave bus system and method for operating a bus system
DE102007003634B3 (en) Hardware-protocol accelerator module for connection safety-protocol level i.e. data link layer, of transceiver, is configured to search data blocks from space to transfer data blocks to bit transmission-protocol level of transmitting unit
WO2006015908A1 (en) Method for storing messages in a message memory and corresponding message memory
EP1686732A1 (en) Method and system for transmitting protocol data units
DE102017130547A1 (en) Method for sending data packets, control unit and system with control unit
DE4210115A1 (en) MULTIPLEX TRANSMISSION PROCESS
EP1357707B1 (en) Method for transferring messages via a bus system
DE10393986B4 (en) Data processing device of a component of a radio telecommunication system and use
CN108243485A (en) Time division multiple access channel cut-in method and device in a kind of wireless sensor network
EP1155533B1 (en) Method for the efficient use of data packets having different capacities and central unit and subscriber device for a communications system
WO2001058067A1 (en) Clock synchronisation in a network and network users, in particular a field device for said network
EP3749024A1 (en) Systems and method for detecting incoming data packets to a terminal
DE102022005053B3 (en) Modified UART data transmission for the timely threshold-controlled data transmission of echo data to a higher-level computer system
DE102022005056B3 (en) Modified UART data transmission for the timely data transmission of echo data to a higher-level computer system with error detection
DE102022120106B3 (en) Modified UART data transmission for the timely data transmission of echo data to a higher-level computer system

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: IHP GMBH - INNOVATIONS FOR HIGH PERFORMANCE MI, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0029060000

Ipc: H04L0065000000