-
Die Erfindung betrifft ein Verfahren zur isochronen Kommunikation von Komponenten einer Gesamtvorrichtung, die über mittels eines Switches hergestellte Kommunikationsverbindungen kommunizieren, wobei der Switch eine Peer-to-Peer-Funktion bereitstellt. Daneben betrifft die Erfindung eine Gesamtvorrichtung, insbesondere eine Magnetresonanzeinrichtung.
-
Im Hinblick auf eine Vielzahl technischer Prozesse, die von einer Gesamtvorrichtung durchgeführt werden, existieren hohe Anforderungen an die zeitliche Abstimmung der Wirkung unterschiedlicher Komponenten und/oder die zeitliche korrekte Zuordnung von Daten bzw. deren Transport in Echtzeit. Als konkretes Beispiel seien medizinische Bildaufnahmeeinrichtungen, beispielsweise Magnetresonanzeinrichtungen, genannt, in denen zur Bildgebung verschiedene Komponenten der Bildaufnahmeeinrichtung zusammenwirken und nur bei zeitlich hinreichend abgestimmtem Zusammenspiel das gewünschte hochqualitative Bildgebungsergebnis liefern. Besonders präsent ist diese Problematik bei Magnetresonanzeinrichtungen, bei denen durch unterschiedliche Komponenten der Magnetresonanzeinrichtung insbesondere unterschiedliche Arten von Pulsen verwendeter Pulssequenzen ausgegeben werden, um äußerst schnell ablaufende Relaxationseffekte der Kernspins zu vermessen, so dass hohe Anforderungen an die Isochronität und Echtzeitfähigkeit der Steuereinrichtungen, die den Bildaufnahmebetrieb bei Magnetresonanzeinrichtungen steuern, zu stellen sind. Auf der anderen Seite entsteht bei Bildaufnahmeeinrichtungen, insbesondere Magnetresonanzeinrichtungen, jedoch auch eine hohe Menge an Daten, die ausgetauscht werden muss.
-
Zur Kommunikation innerhalb von Steuereinrichtungen von Magnetresonanzeinrichtungen wurde daher im Stand der Technik vorgeschlagen, wenigstens zwei Netzwerke zu nutzen, nämlich zum einen ein Netzwerk zum Datenaustausch, bei dem beispielsweise der PCI Express-Standard verwendet werden kann, und zum anderen ein isochrones Netzwerk, welches beispielsweise Punkt-zu-Punkt-Verbindungen optischer Art zwischen einzelnen Komponenten der Steuereinrichtung verwendet, um beispielsweise eine Ringtopologie zu bilden („isochroner optischer Ring“). Ein derartiges isochrones Netzwerk nutzt eigene Kommunikationsleitungen und ein proprietäres Protokoll.
-
DE 10 2008 017 819 B3 offenbart eine Magnetresonanzanlage und ein Verfahren zum Betrieb einer Magnetresonanzanlage. Dort sollen verschiedene Aktor-Komponenten/Funktionseinheiten, beispielsweise Gradientenspulen und dergleichen, jeweils durch wenigstens eine Digitalbaugruppe und wenigstens eine Analogbaugruppe gemäß einer Steuersequenz ansteuerbar sein, wobei die Analogbaugruppen extern zu einem die Digitalbaugruppen ansteuernden Steuerrechner angeordnet sind. Die Digitalbaugruppen sind ebenfalls extern zum Steuerrechner angeordnet und der oder den darüber angesteuerten Analogbaugruppen zugeordnet. Dabei sind die Digitalbaugruppen, die den vorab erwähnten Komponenten der Steuereinrichtung entsprechen, zur Kommunikation der Digitalbaugruppen untereinander und/oder mit dem Steuerrechner durch folgende Netzwerke vernetzt:
- - Ein synchrones erstes Netzwerk zur Synchronisierung der Digitalbaugruppen,
- - Ein isochrones oder teil-isochrones zweites Netzwerk,
- - Ein drittes Netzwerk,
wobei die Digitalbaugruppen über serielle Peripheriekomponenten-Schnittstellen mit dem Steuerrechner verbunden sind und dabei eine Signalübermittlung zwischen der Peripheriekomponenten-Schnittstelle der jeweiligen Digitalbaugruppe und der zugehörigen Peripheriekomponenten-Schnittstelle des Steuerrechners auf optischem Weg erfolgt.
-
Dabei wird das synchrone erste Netzwerk zur Synchronisierung der Digitalbaugruppen und des Steuerrechners, also aller Komponenten der Steuereinrichtung, verwendet. Über dieses Netzwerk werden die notwendigen Synchronisationsinformationen, beispielsweise ein Systemtakt und gegebenenfalls Zeitmarken, übertragen. Durch das isochrone bzw. teil-isochrone Netzwerk wird sichergestellt, dass gewisse Daten innerhalb eines bestimmten Zeitraums zwischen den verschiedenen Netzwerkknoten ausgetauscht werden können, so dass diese mit Sicherheit an den betreffenden Baugruppen vorhanden sind, wenn gemäß diesen Informationen bestimmte Aktionen auszuführen sind. Dieses Netzwerk kann auch als Steuerbefehlsnetzwerk bezeichnet werden. Bei dem dritten Netzwerk, das hauptsächlich zur Datenübertragung dient, werden bevorzugt PCI Express-Kommunikationsverbindungen genutzt.
-
PCI Express-Kommunikationsverbindungen stellen einen bekannten und im Stand der Technik bereits vielfältig beschriebenen Peripherie-Kommunikationsstandard dar. Dabei wird üblicherweise ein Switch genutzt, über den zum Transport einer Kommunikationsinformation eine Peer-to-Peer-Verbindung zwischen an den Switch angeschlossenen Komponenten der Steuereinrichtung aufgebaut werden kann.
-
DE 10 2009 036 936 A1 betrifft die Synchronisation von Uhren in autonomen Komponenten einer Magnetresonanzanlage und die zeitsynchrone Ausführung von Befehlen in diesen Komponenten. Darin wird ein Bildgebungssystem mit mehreren Komponenten beschrieben, die jeweils eine lokale Uhr, einen Eingang für Befehle einschließlich jeweils einer Befehlsausführungszeitvorgabe, einen Speicher für über den Eingang empfangene Befehle, einen Eingang für ein Zeitsynchronisierungssignal und eine Steuerung zum Ausführen der Befehle bei Übereinstimmung einer von der lokalen Uhr angezeigten Zeit mit der Befehlsausführungszeitpunktvorgabe aufweisen. Die Befehle können durch eine ringförmige Struktur von einer zentralen Steuerung zu den Komponenten übertragen werden, insbesondere, indem mindestens zwei Synchronisationssignale von einem Synchronisationsmaster aus zueinander gegenläufig in die ringförmige Struktur eingespeist werden.
-
PCI Express eignet sich, insbesondere in frühen Entwicklungsstufen, nicht ohne weiteres für eine isochrone Kommunikation bzw. eine Synchronisation. Dies liegt darin begründet, dass letztlich nicht vorhergesagt werden kann, wie und vor allem wann genau Kommunikationsinformationen von einer Komponente an die andere Komponente weitergeleitet werden, da dies von internen Vorgängen im Switch abhängig ist. Allerdings existiert eine deutliche Weiterentwicklung dieses Kommunikationsstandards, so dass nun deutlich höhere Bandbreiten und deutlich schnellere zu erwartende Kommunikationszeiten vorliegen.
-
Die Verwendung zusätzlicher Netzwerke, insbesondere des bereits erwähnten „isochronen optischen Rings“, bringt grundsätzlich einen hohen Aufwand mit sich. Daher wäre es wünschenswert, Synchronität und Isochronität in Magnetresonanzeinrichtungen bzw. allgemein Gesamtvorrichtungen mit einem geringeren Aufwand zu erreichen, insbesondere bezüglich der zeitlich korrekten Ausführung von Steuerbefehlen.
-
Aus der Druckschrift
DE 697 35 415 T2 ist ist ein Kommunikationsverfahren zum isochronen Übertragen von Daten über ein FireWire-Netzwerk gemäß IEEE 1394 bekannt. Am Anfang eines Übertragungszyklus wird ein Zeitsteuersignal zum Synchronisieren der Empfänger gesendet, damit in den Datenpaketen selbst kürzere Zeitstempel genutzt werden können.
-
Der Erfindung liegt daher die Aufgabe zugrunde, eine Vereinfachung der Kommunikationswege innerhalb einer Gesamtvorrichtung, insbesondere einer Magnetresonanzeinrichtung, anzugeben und dennoch, wo benötigt, die Isochronität und/oder Synchronität herzustellen.
-
Zur Lösung dieser Aufgabe umfasst ein Verfahren der eingangs genannten Art erfindungsgemäß folgende Schritte:
- - Bereitstellen eines periodischen Kommunikationstaktsignals an alle Komponenten, wobei zwischen zwei Kommunikationstakten des Kommunikationstaktsignals Kommunikationszeitfenster liegen, in denen eine Kommunikationsinformation der isochronen Kommunikation von einer sendenden Komponente an wenigstens eine adressierte Komponente übermittelbar ist, und
- - Herstellen einer Synchronisation bezüglich des Kommunikationstaktsignals zwischen wenigstens zwei der Komponenten durch wenigstens eine von einer der zu synchronisierenden Komponenten an alle anderen zu synchronisierenden Komponenten in einem Kommunikationszeitfenster über den Switch gesendete Synchronisationsnachricht.
-
Dabei handelt es sich bei den Kommunikationsverbindungen bevorzugt um optische PCI Express-Verbindungen, so dass mithin vorgeschlagen wird, durch eine geeignete Ergänzung und Erweiterung auch über PCI Express eine Synchronisierung bzw. isochrone Kommunikation bereitzustellen, so dass auf weitere, insbesondere proprietäre Netzwerke verzichtet werden kann. Dabei wird ausgenutzt, dass moderne PCI Express-Switches bereits die geeigneten Eigenschaften liefern, um das beschriebene Kommunikationsverfahren grundsätzlich umzusetzen, insbesondere also eine Peer-to-Peer-Funktion, bevorzugt sogar eine Multicast-Peer-to-Peer-Funktion, und hinreichende Bandbreite für Datenverkehr zwischen Endpunkten bzw. von und zu einer zentralen Recheneinrichtung als Host. Dabei handelt es sich bei der Gesamtvorrichtung, wie bereits dargelegt, insbesondere um eine Magnetresonanzeinrichtung, auf die das erfindungsgemäße Verfahren besonders vorteilhaft angewendet werden kann, so dass der beschriebene „isochrone optische Ring“ wegfallen kann und dennoch alle Zeitanforderungen erfüllt werden können.
-
Um eine isochrone Kommunikation und somit auch Synchronisierung von Komponenten zu schaffen, wird konkret vorgeschlagen, ein Kommunikationstaktsignal an alle Komponenten bereitzustellen, wofür ein bevorzugt sowohl zu den Komponenten als auch zu dem Switch externer Taktgeber herangezogen werden kann. Dabei ist die Länge des zwischen den Kommunikationstakten liegenden Kommunikationszeitfensters so gewählt, dass sichergestellt ist, dass Kommunikationsinformationen einer bestimmten Maximalgröße, beispielsweise von bis zu 128 Byte oder bis zu 256 Byte, über den Switch von einer Komponente zu einer oder im Multicast-Fall mehreren adressierten Komponenten weitergeleitet wurden. Das bedeutet, die Frequenz des Kommunikationstaktsignals ist so gewählt, dass die von dem Switch weitergeleiteten bzw. multigecasteten Kommunikationsinformationen, mithin Pakete, ihre Ziele innerhalb des Kommunikationszeitfensters erreichen. Bei Verwendung des PCI Express-Standards dritter Generation hat sich gezeigt, dass eine Länge des Kommunikationszeitfensters von 10 µs hervorragend geeignet ist, um den Datentransport, beispielsweise für 256 Bytes oder 128 Bytes, sicherzustellen.
-
Das Kommunikationstaktsignal bietet die Grundlage für einen synchronisierten Betrieb der Komponenten. Existiert nun eine Synchronisationsnachricht, von der aufgrund der übrigen Ausgestaltung sichergestellt ist, dass sie innerhalb eines Kommunikationszeitfensters zugestellt wurde, ist für die sendende Komponente und alle adressierten Komponenten spätestens mit Empfang ein gemeinsamer Bezug und somit eine Isochronität bezüglich des Kommunikationstaktsignals hergestellt. Das bedeutet, während das Kommunikationstaktsignal von einem Taktgeber an die Komponenten bereitgestellt wird, erfolgt die letztendliche Herstellung der Synchronisation und die isochrone Kommunikation über die ohnehin vorhandenen Kommunikationsverbindungen, insbesondere PCI Express-Verbindungen, so dass sonstige proprietäre Netzwerke wegfallen können.
-
Dabei sei an dieser Stelle noch angemerkt, dass die Multicast-Fähigkeit des Switches letztlich immer dann benötigt und zweckmäßig ist, wenn Kommunikationsinformationen mit Zeitbezug für mehrere Komponenten relevant sind, insbesondere bei einer zeitlich koordinierten Ansteuerung von Komponenten, wie dies beispielsweise in einer Steuereinrichtung einer Magnetresonanzeinrichtung der Fall ist. Der Switch ist dann dazu ausgebildet, die Kommunikationsinformationen an die verschiedenen adressierten Komponenten zu multicasten, wobei der Switch dann entsprechend programmiert werden kann, dass eine Kopie der eingehenden Kommunikationsinformation zu jedem Endpunkt, also jeder Komponente, gesendet wird, die die Kommunikationsinformation in der entsprechenden Nachricht benötigt. Die Programmierung des Switches erfolgt dabei vorzugsweise durch eine Instanz, die Wissen über die Systemkonfiguration aufweist, beispielsweise eine Softwareschicht oberhalb der Treibersoftware der PCI Express-Einrichtungen.
-
Zusammenfassend werden also die bestehenden Kommunikationsverbindungen mit dem Switch, insbesondere der Multicast-Funktion, genutzt und mit der Verteilung eines Kommunikationstaktsignals kombiniert, um die existierende Kommunikationsverbindungstopologie, insbesondere PCI Express-Topologie, so zu erweitern, dass isochroner Datenaustausch möglich wird und isochrone bzw. teilisochrone Netzwerke wegfallen können. Dies reduziert Teilekosten der Gesamtvorrichtung. Weiterhin werden weniger Kommunikationsleitungen, insbesondere optische Glasfaserleitungen, benötigt, so dass die Komplexität ebenso reduziert wird, was wiederum einfachere Fehlerbehebung im Fall einer defekten Komponente oder eines defekten Kabels erlaubt. Dies reduziert die Ausfallzeiten (Downtimes) der Gesamtvorrichtung.
-
Ein anderer großer Vorteil bei der Nutzung von PCI Express-Verbindungen, wobei dann die Kommunikationsverbindungen gemeinsam mit dem Switch ein PCI Express-Netzwerk bilden, ist die Tatsache, dass es sich bei PCI Express um eine standardisierte Schnittstelle handelt, die äußerst weitverbreitet genutzt wird. Mithin steht eine große Vielzahl möglicher Switches zur Verfügung und sehr viele konkret genutzte Komponenten, beispielsweise FPGAs, weisen heute ohnehin eine hartverdrahtete PCI Express-Schnittstelle auf. Mithin kann auch in diesem Zusammenhang eine Einsparung von Kosten und Energie erreicht werden. Mit jeder neuen Generation des PCI Express-Standards kann Vorteil aus einer größeren Bandbreite und anderen neuen Eigenschaften gezogen werden, so dass eine kontinuierliche Weiterentwicklung und weitere Kosteneinsparungen möglich sind. Zum PCI Express-Standard existieren zudem eine Vielzahl an Debugging- und Beurteilungshilfsmitteln sowohl in Hardware als auch in Software, so dass beispielsweise elektrische Compliance-Tests zur Sicherstellung der Signalqualität durchgeführt werden können und somit die Verlässlichkeit und Langzeitstabilität der Gesamtvorrichtung erhöht werden kann. Schließlich existieren auch Protokollanalysemittel, welche die Fehlerfindung in der Entwicklungsphase sowie die Systemintegration vereinfachen und somit weiter zur Reduzierung von Kosten und Komplexität beitragen.
-
Die Komponenten können gemeinsam mit einer zentralen Recheneinrichtung (Steuerrechner) eine Steuereinrichtung der Gesamtvorrichtung bilden, insbesondere jedoch wenigstens deren digitalen Anteil, der noch um entsprechende Analogbaugruppen ergänzt werden kann. Die zentrale Recheneinrichtung, also der Steuerrechner, kann dabei als der Host angesehen werden, der über die Kommunikationsverbindungen und den Switch mit den als Peripherie angeschlossenen Komponenten kommuniziert. Die Komponenten können konkret Digitalbaugruppen sein, die gemeinsam mit zugeordneten Analogbaugruppen Funktionseinheiten der Gesamtvorrichtung, insbesondere Magnetresonanzeinrichtung, konkret ansteuern, insbesondere, wie bereits erwähnt, zeitlich koordiniert zum Erreichen eines Gesamterfolgs, im Fall der Magnetresonanzeinrichtung insbesondere zur Magnetresonanzbildgebung. Es kann also gesagt werden, dass als Gesamtvorrichtung eine Magnetresonanzeinrichtung verwendet wird, wobei die Komponenten einen Teil einer die Bildgebung steuernden Steuereinrichtung bilden. Konkret können die Komponenten Digitalbaugruppen sein, bzw. auch als Kombination von Digitalbaugruppe und Analogbaugruppe zusammengefasste, einer Funktionseinheit der Magnetresonanzeinrichtung zugeordnete Steuerkomponenten. So können als Teil einer Steuereinrichtung der Magnetresonanzeinrichtung wenigstens eine Gradientensteuerkomponente und/oder eine Hochfrequenzsteuerkomponente und/oder eine Überwachungskomponente und/oder eine Datenaufnahmekomponente verwendet werden. Zugehörige Funktionseinheiten umfassen beispielsweise Gradientenspulen, Hochfrequenzspulen und dergleichen.
-
In derartigen Architekturen, in denen die Komponenten gemeinsam mit einer Recheneinrichtung eine Steuereinrichtung der Gesamtvorrichtung realisieren und die Recheneinrichtung mithin als Host und die Komponenten als Peripheriegeräte angesehen werden können, werden die Kommunikationsverbindungen auch genutzt, um die Kommunikation zwischen der Recheneinrichtung und den Komponenten zu realisieren. Konkret kann in einem solchen Fall vorgesehen sein, dass die Gesamtvorrichtung ferner eine über den Switch mit den Komponenten kommunizierende Recheneinrichtung aufweist, wobei die über die Kommunikationsverbindungen verfügbare Bandbreite für die isochrone Kommunikation und eine Massenkommunikation mit der Recheneinrichtung aufgeteilt wird. Dabei ist gerade bei Magnetresonanzeinrichtungen als Gesamtvorrichtungen darauf zu achten, dass häufig große Datenmengen, beispielsweise aufgenommene Magnetresonanzsignale/Magnetresonanzdaten, transportiert werden müssen. Hierfür ist ebenso eine gewisse Bandbreite notwendig. Diese Massenkommunikation ist nicht an das Kommunikationstaktsignal gebunden, weist jedoch ebenso mittlere bis hohe Bandbreitenanforderungen auf. Beispielsweise kann in einer Magnetresonanzeinrichtung eine der Komponenten, die beispielsweise einer Empfangseinheit zugeordnet ist, Magnetresonanzdaten mit beispielsweise 400 MB/s zur Recheneinrichtung transportieren, die den Rohdatenempfänger realisiert. Andere, beispielsweise eine Hochfrequenzpulsgabe steuernde Komponenten können beispielsweise Kommunikationsinformationen von der Recheneinrichtung mit einer Datenrate von 100 MB/s erhalten.
-
In einer bevorzugten Weiterbildung der vorliegenden Erfindung kann vorgesehen sein, dass jeweils wenigstens ein Steuerbefehl eines Steuerbefehlssatzes zum zeitlich koordinierten Zusammenwirken von Komponenten, wobei jedem Steuerbefehl wenigstens ein Ausführungszeitpunkt bezüglich des Kommunikationstaktsignals zugeordnet ist, an die synchronisierten Komponenten übermittelt wird und die Steuerbefehle unter Berücksichtigung der Synchronisation zu ihrem jeweiligen Ausführungszeitpunkt ausgeführt werden. Beispielsweise im Fall einer Magnetresonanzeinrichtung kann der Steuerbefehlssatz den Ablauf einer Magnetresonanzsequenz oder allgemein für Bildaufnahmeeinrichtungen als Gesamtvorrichtungen ein Messprotokoll umsetzen. Gerade im Hinblick auf die Magnetresonanz ist es hierbei wesentlich, dass beispielsweise durch die Komponenten als Teil einer Steuereinrichtung angesteuerte Funktionseinheiten der Magnetresonanzeinrichtung den zeitlichen Ablauf möglichst genau einhalten, was durch die Synchronisierung und das Kommunikationstaktsignal in der Steuereinrichtung möglichst weitgehend sichergestellt werden kann. Dabei müssen die Steuerbefehle nicht von einer der anderen Komponenten stammen, sondern es ist, insbesondere bei Magnetresonanzeinrichtungen, üblich, dass der Steuerrechner, also die Recheneinrichtung, den entsprechenden Steuerbefehlssatz geeignet verteilt. Es kann mithin vorgesehen sein, dass die Steuerbefehle wenigstens teilweise von einer zentralen Recheneinrichtung der Gesamtvorrichtung vorab und unabhängig von der Synchronisierung bereitgestellt werden. In diesem Fall kann konkret vorgesehen sein, dass die Synchronisierungsnachricht eine erste Ausführung eines Steuerbefehls betrifft. Beispielsweise kann eine Synchronisierungsnachricht von einer bestimmten Komponente als „Startsignal“ bereitgestellt werden, so dass sich auf einen entsprechenden Kommunikationstakt, beispielsweise den der folgt, die Ausführungszeitpunkte beziehen. Beispielsweise können ab der Synchronisierungsnachricht die Kommunikationstakte gezählt werden, wofür ein entsprechender Kommunikationstaktzähler innerhalb der Komponenten realisiert sein kann. Es kann in derartigen Ausgestaltungen auch vorgesehen sein, dass jede Ausführung eines oder mehrerer Steuerbefehle durch entsprechende Synchronisierungsnachrichten bestätigt wird, um die Synchronisierung letztlich kontinuierlich aufrecht zu erhalten.
-
Das erfindungsgemäße Verfahren erlaubt es jedoch auch, dynamisch Steuerbefehle bzw. allgemein Steueraktionen von Komponente zu Komponente zu generieren und aufgrund der isochronen Kommunikation eine koordinierte Ausführung zu erlauben. So sieht eine Weiterbildung der vorliegenden Erfindung vor, dass innerhalb eines Kommunikationsfensters:
- - eine zeitbezogene Kommunikationsinformation mit wenigstens einer adressierten Komponente von wenigstens einer sendenden Komponente, insbesondere als Synchronisationsnachricht, an den Switch übermittelt wird,
- - die Kommunikationsinformation von dem Switch an die wenigstens eine adressierte Komponente übermittelt wird, und
- - die Kommunikationsinformation durch die wenigstens eine adressierte Komponente empfangen wird,
wobei die Kommunikationsinformation zeitbezogen in Abhängigkeit der Synchronisation und des Kommunikationstaktsignals verarbeitet wird.
-
Konkret kann vorgesehen sein, dass die Kommunikationsinformation wenigstens eine auf das Kommunikationstaktsignal ab dem nächsten Kommunikationstakt oder die Synchronisation bezogene, eine Ausführungszeit beschreibende Ausführungsinformation umfasst und ein in der Kommunikationsinformation enthaltener Steuerbefehl zu der Ausführungszeit durchgeführt wird.
-
Im Beispiel der Magnetresonanzeinrichtung als Gesamtvorrichtung kann so beispielsweise eine Komponente Ist-Werte über Steuerbefehle bereitstellen, die von Soll-Werten abweichen können und mithin eine dynamische Reaktion, beispielsweise hinsichtlich eines Shims, erfordern können. Aus dem sich ergebenden Zeitbezug ist bekannt, zu welchem Zeitpunkt Shimmaßnahmen bzw. Anpassungen derselben notwendig werden können. Insbesondere ist es sogar denkbar, dass eine Komponente die andere auffordert, zu einem bestimmten Zeitpunkt, der sich an der vorliegenden Synchronisation oder am nächsten Kommunikationstakt bemessen kann, einen bestimmten Steuerbefehl durchzuführen, um selbst koordiniert eine Steueraktion umzusetzen.
-
Die erfindungsgemäße Kommunikationstechnik kann auch im Rahmen einer Echtzeit-Datenübertragung bzw. Datenverarbeitung im Übrigen vorteilhaft eingesetzt werden. So kann vorgesehen sein, dass bei zwei synchronisiert zu betreibenden Komponenten eine Komponente einen Wechselpuffer aufweist, in dem eine jeweils in einem Kommunikationszeitfenster von dem Kommunikationspartner empfangene Kommunikationsinformation eingespeichert wird, während der andere Anteil des Wechselpuffers ausgelesen wird, wobei insbesondere bei Ausbleiben einer Kommunikationsinformation für ein Kommunikationszeitfenster ein Fehlereintrag erzeugt wird. Mithin kann das Kommunikationstaktsignal auch zur korrekten Taktung eines Wechselpuffers insbesondere bei möglichst in Echtzeit zu übermittelnden, größeren Datenströmen genutzt werden. Durch das gemeinsame Kommunikationstaktsignal ist sichergestellt, dass die sendende Komponente zum korrekten Zeitpunkt und im korrekten Kommunikationszeitfenster die Kommunikationsinformation übermittelt und die empfangende Komponente im selben Kommunikationszeitfenster empfängt bzw. das zuvor Empfangene ausliest. Hierbei kann die erste Kommunikationsinformation als Synchronisierungsnachricht aufgefasst werden, da dann ersichtlich der Datenstrom beginnt. Auf diese Weise kann das durch die Kommunikationsverbindungen und den Switch gegebene Netzwerk auch zum Ersatz einer Direktverbindung zwischen zwei Komponenten genutzt werden.
-
In einem konkreten Beispiel kann es sich bei der sendenden Komponente um einen FPGA handeln, der Kommunikationsinformation in einem festen Datenformat periodisch an die empfangende Komponente, insbesondere ein DSP, sendet. Beispielsweise kann der FPGA einen bereits verschlüsselten Datenstrom, der Informationen zur SAR-Belastung eines aufzunehmenden Patienten in einer Magnetresonanzeinrichtung als Gesamtvorrichtung enthält, entgegennehmen und auf die beschriebene Weise an den DSP weiterleiten, der beispielsweise einer Überwachungskomponente zugeordnet sein kann, die möglichst schnell reagieren soll, wenn SAR-Grenzwerte oder dergleichen überschritten sind. Es sei angemerkt, dass in einer derartigen beispielhaften Konfiguration die Komponenten sowie der Switch auch auf einer gemeinsamen Leiterplatte vorgesehen sein können und elektrische Kommunikationsleitungen verwendet werden können. Durch die synchronisierten Kommunikationszeitfenster lässt sich auch feststellen, ob eine Kommunikationsinformation, beispielsweise eine Nachricht in dem festgelegten Datenformat, fehlt, so dass dann in Weiterbildung ein entsprechender Fehlereintrag erzeugt werden kann.
-
Zweckmäßigerweise kann das Kommunikationstaktsignal von einem Taktgeber in einer Sternkonfiguration von insbesondere optischen Kommunikationsleitungen an die Komponenten übermittelt werden. Spielen Latenzen durch Laufwege eine relevante Rolle, kann zudem vorgesehen sein, gleich lange Kommunikationsleitungen zur Übermittlung des Kommunikationstaktsignals von dem Taktgeber an die entsprechenden Komponenten zu verwenden. Wie bereits erwähnt, hat sich 10 µs als ein beispielhaft zweckmäßig nutzbarer Wert für die Länge des Kommunikationszeitfensters herausgestellt; selbstverständlich sind auch andere Werte möglich, beispielsweise 5 µs oder 20 µs.
-
In einer besonders vorteilhaften Ausgestaltung der vorliegenden Erfindung kann vorgesehen sein, dass das Kommunikationstaktsignal gemeinsam mit einem insbesondere höherfrequenten Systemtaktsignal an die Komponenten übermittelt wird. Das bedeutet, das periodische Kommunikationstaktsignal kann beispielsweise in ein Clock-Signal einkodiert werden, welches für jede Komponente ohnehin benötigt wird. Das bringt den Vorteil mit sich, dass nur eine Kommunikationsleitung sowohl für das Systemtaktsignal (Clock-Signal) als auch für das Kommunikationstaktsignal benötigt wird.
-
Dabei kann konkret vorgesehen sein, dass die Kommunikationstakte in dem Systemtaktsignal durch eine Pulsweitenmodulation und/oder eine Amplitudenmodulation kodiert werden und/oder das Kommunikationstaktsignal und das Systemtaktsignal überlagert übermittelt werden. Im letztgenannten Fall wird dann zweckmäßig ein Filtermittel zur Trennung des Kommunikationstaktsignals und des Systemtaktsignals verwendet. Ein Einkodieren des Kommunikationstaktsignals in das Systemtaktsignal kann beispielsweise durch Variation des Tastgrads (Duty Cycle) des Systemtaktsignals erfolgen. Während normalerweise für das Systemtaktsignal ein Tastverhältnis von 50 : 50 gewählt wird, kann beispielsweise für jeden Kommunikationstakt ein Pulsweitenverhältnis von 75 : 25 oder dergleichen eingesetzt werden. Die Dekodierung des Kommunikationstaktsignals kann dann erfolgen, indem das Systemtaktsignal überabgetastet wird und der unbalancierte Duty Cycle somit detektiert wird. Nachdem das Systemtaktsignal in einigen Anwendungen in der Komponente ohnehin multipliziert wird, nachdem die Komponente schnellere Systemtakte benötigt, kann eine dieser multiplizierten Uhren für die Überabtastung herangezogen werden. Eine Überabtastung kann auch am Beginn einer Art Trainingsphase erforderlich sein. Sobald der Kommunikationstakt verlässlich für eine bestimmte Anzahl aufeinander folgender Ereignisse detektiert wurde, kann die Detektionseinheit, die den Kommunikationstakt detektiert, in einer Art Freilaufmodus weiterbetrieben werden.
-
Eine alternative Art zur Weitergabe des Kommunikationstaktsignals kann durch eine zusätzliche, eingebettete, niederfrequente SYNC-Information in einer Hochfrequenz-Systemtaktwellenform gegeben sein, beispielsweise als ein 100 MHz Systemtaktsignal und ein 100 KHz SYNC-Signal, die simultan über dieselbe Kommunikationsleitung versendet werden und dann durch entsprechende Filtermittel in der Komponente getrennt werden. Ein anderes Beispiel ist die Amplitudenmodulation, so dass beispielsweise die Amplitude des Systemtaktsignals mit der Rate des Kommunikationstaktsignals erhöht werden kann.
-
Eine andere, besonders vorteilhafte Weiterbildung der vorliegenden Erfindung sieht vor, dass jeder Kommunikationstakt in wenigstens einem Teil der Komponenten den Start eines Zeitzählers zum Vermessen von Zeitpunkten innerhalb der Kommunikationszeitfenster triggert. Um eine höhere Zeitauflösung der isochronen Kommunikation/Steuerung als die Dauer des Kommunikationszeitfensters zu erreichen, was beispielsweise bei Magnetresonanzeinrichtungen als Gesamtvorrichtungen sinnvoll ist, kann vorgesehen sein, dass jedes Auftreten des Kommunikationstaktes in dem Kommunikationstaktsignal einen Zeitzähler innerhalb wenigstens des Teils der Komponenten startet, wobei der Zeitzähler beispielsweise alle 25 ns bei einer Dauer des Kommunikationszeitfensters von 10 µs genutzt werden kann, mithin 400 Subzeitfenster entstehen, die ebenso referenziert werden können, beispielsweise um einen Steuerbefehl zum korrekten Zeitpunkt auszuführen. Wird beispielsweise einem Steuerbefehl eine Ausführungsinformation mit einem Ausführungszeitpunkt im dritten Kommunikationstakt nach 200 ns beigefügt, kann dies entsprechend durch Berücksichtigung des Kommunikationstaktzählers im Rahmen der isochronen Kommunikation und des Zeitzählers innerhalb des Kommunikationszeitfensters erreicht werden, bei einem Imkrement nach 25 ns also dann, wenn der Zeitzähler den Wert 8 erreicht. So ist insbesondere eine hochgenaue, isochrone Ansteuerung von kooperierenden Komponenten einer Gesamtvorrichtung, insbesondere einer Magnetresonanzeinrichtung, möglich.
-
Neben dem Verfahren betrifft die vorliegende Erfindung auch eine Gesamtvorrichtung, aufweisend
- - mehrere Komponenten,
- - einen Switch zur Herstellung von Kommunikationsverbindungen der Komponenten, wobei der Switch eine Peer-to-Peer-Funktion bereitstellt,
- - einen Taktgeber zum Bereitstellen eines periodischen Kommunikationstaktsignals an alle Komponenten, wobei zwischen zwei Kommunikationstakten des Kommunikationstaktsignals Kommunikationszeitfenster liegen, in denen eine Kommunikationsinformation der isochronen Kommunikation von einer sendenden Komponente an wenigstens eine adressierte Komponente übermittelbar ist, und
- - eine Steueranordnung zum Herstellen einer Synchronisation bezüglich des Kommunikationstaktsignals zwischen wenigstens zwei der Komponenten durch wenigstens eine von einer der zu synchronisierenden Komponenten an alle anderen zu synchronisierenden Komponenten in einem Kommunikationszeitfenster über den Switch gesendete Synchronisationsnachricht.
-
Sämtliche Ausführungen bezüglich des erfindungsgemäßen Verfahrens lassen sich analog auf die erfindungsgemäße Gesamtvorrichtung übertragen, mit welcher mithin ebenso die bereits genannten Vorteile erhalten werden können. Dabei kann die Steueranordnung Komponenten bzw. Steuereinheiten der Komponenten wenigstens teilweise umfassen.
-
Mit besonderem Vorteil ist die Gesamtvorrichtung eine Magnetresonanzeinrichtung, wobei die Komponenten bevorzugt Steuerkomponenten einer Steuereinrichtung der Magnetresonanzeinrichtung sind. Die Steuereinrichtung kann neben den Komponenten und dem Switch zusätzlich eine zentrale Recheneinrichtung (Steuerrechner) enthalten, die über den Switch und die Kommunikationsleitungen ebenso mit den Steuerkomponenten kommunizieren kann. Die Steuerkomponenten können Digitalbaugruppen sein und/oder umfassen und/oder einer Funktionseinheit der Magnetresonanzeinrichtung, insbesondere einer bei der Magnetresonanzbildgebung benutzten Funktionseinheit der Magnetresonanzeinrichtung, zugeordnet sein. Es ergibt sich für eine Magnetresonanzeinrichtung dann ein besonders einfacher Aufbau der Kommunikationstopologie, nachdem lediglich die Übermittlung des Kommunikationstaktsignals von dem Taktgeber und das durch den Switch und die Kommunikationsleitung gebildete Netzwerk, insbesondere PCI Express-Netzwerk, erforderlich sind und dennoch eine die Anforderungen der Magnetresonanzbildgebung erfüllende isochrone Kommunikation ermöglicht wird.
-
Weitere Vorteile und Einzelheiten der vorliegenden Erfindung ergeben sich aus den im Folgenden beschriebenen Ausführungsbeispielen sowie anhand der Zeichnung. Dabei zeigen:
- 1 eine Prinzipskizze relevanter Komponenten einer Magnetresonanzeinrichtung,
- 2 den Aufbau einer Steuereinrichtung der Magnetresonanzeinrichtung,
- 3 eine Möglichkeit zur Kodierung eines Kommunikationstaktsignals in ein Systemtaktsignal,
- 4 ein Zusammenhangsdiagramm zur koordinierten Steuerung von Komponenten, und
- 5 den zeitlichen Ablauf zur Ausführung eines Steuerbefehls.
-
1 zeigt eine Prinzipskizze relevanter Komponenten einer Magnetresonanzeinrichtung 1 als Beispiel für eine Gesamtvorrichtung 2. Um ihre Bildgebungsaufgaben erfüllen zu können, weist die Magnetresonanzeinrichtung 1 eine Mehrzahl von Funktionseinheiten 3 auf, die, wie grundsätzlich bekannt, beispielsweise eine Gradientenspulenanordnung, eine Hochfrequenzspulenanordnung, eine Grundmagnetfeldanordnung, Shimeinrichtungen, aber auch unterstützende Komponenten wie Kühleinrichtungen und dergleichen umfassen können. Zur koordinierten Ansteuerung dieser Funktionseinheiten 3, insbesondere zum Zweck der Bildgebung, sowie zur Entgegennahme von gemessenen Magnetresonanzdaten weist die Magnetresonanzeinrichtung 1 ferner eine Steuereinrichtung 4 auf, in der eine isochrone Kommunikation gemäß der vorliegenden Erfindung realisiert ist.
-
2 zeigt hierzu den Aufbau der Steuereinrichtung 4 genauer. Die Steuereinrichtung 4 weist als Host eine zentrale Recheneinrichtung 5 auf, die über einen PCI Express-Switch 6 und entsprechend mittels diesem gebildete Kommunikationsverbindungen mit weiteren Komponenten 7, die als Peripheriegeräte aufgefasst werden können, kommuniziert. Bei den Komponenten 7 handelt es sich vorliegend um Steuerkomponenten, die wenigstens eine entsprechende Digitalbaugruppe zur Ansteuerung wenigstens einer Funktionseinheit 3 aufweisen, wobei die konkrete Ansteuerung insbesondere über eine entsprechende der Digitalbaugruppe zugeordnete Analogbaugruppe erfolgen kann. Neben derartigen Steuerkomponenten können auch weitere Komponenten 7 verwendet und entsprechend eingesetzt werden, beispielsweise Überwachungskomponenten, in einem Beispiel eine SAR-Überwachungskomponente. Die maximale Anzahl an Komponenten 7 ist dabei skalierbar zur maximalen Zahl an Schnittstellenanschlüssen, die der Switch 6 bereitstellt.
-
Der Switch 6 weist eine Steuereinheit 8 auf, die einen virtuellen PCI Bus realisiert und mittels entsprechender den Anschlüssen zugeordneter Peer-to-Peer-Brücken 9 zur Übermittlung von Kommunikationsinformationen Peer-to-Peer-Verbindungen zwischen Kommunikationspartnern aufbaut. Dabei stellt der Switch 6 auch eine Multicast-Peer-to-Peer-Funktion bereit. Das bedeutet, wenn eine Kommunikationsinformation von der Recheneinrichtung 5 oder einer Komponente 7 zum Switch 6 gelangt, entscheidet dieser, für welchen wenigstens einen Kommunikationspartner die Kommunikationsinformation bestimmt ist und leitet die Kommunikationsinformation über die entsprechende wenigstens eine Brücke 9 an den entsprechenden Kommunikationspartner weiter. Dabei kann der Kommunikationsinformation bereits eine Zielinformation zugeordnet sein, die bestimmt, wer die Kommunikationsinformation erhalten soll; andererseits kann der Switch 6 auch so programmiert werden, dass eine Kopie jeder eingehenden Nachricht zu jedem Kommunikationspartner gesendet wird, der die Kommunikationsinformation benötigt. Dabei kann die entsprechende Programmierung des Switches 6 durch eine Instanz erfolgen, der die Systemkonfiguration bekannt ist, beispielsweise einen entsprechenden Softwarelayer in der Recheneinrichtung 5.
-
Es ist nun ferner bekannt und sicherstellbar, dass der Switch 6 innerhalb eines bestimmten Kommunikationszeitfensters, hier einer Länge von 10 µs, Kommunikationsinformationen einer bestimmten Nachrichtengröße, beispielsweise von bis zu 256 Byte, an die Kommunikationspartner multicasten kann. Allerdings können genaue Laufzeiten für die Kommunikationsinformationen aufgrund der Natur des PCI Express-Standards nicht sichergestellt werden.
-
Um dennoch eine isochrone Kommunikation über die durch den Switch 6 bereitgestellten Kommunikationsverbindungen zu erlauben, weist die Steuereinrichtung 4 ferner einen zu den Komponenten 7 und dem Switch 6 externen Taktgeber 10 auf, der über optische Kommunikationsverbindungen 11, die insbesondere auch gleiche Länge aufweisen können, in einer Sternkonfiguration ein Kommunikationstaktsignal an alle Komponenten 7, für die eine Synchronisierung und isochrone Kommunikation bereitgestellt werden soll übermittelt. Die jeweiligen Kommunikationstakte definieren Kommunikationszeitfenster einer Länge, hier 10 µs, die sicherstellen kann, dass Kommunikationsinformationen innerhalb des Kommunikationszeitfensters den entsprechenden Kommunikationspartner, mithin die adressierte Komponente 7, erreichen. Wird, beispielsweise als eine Art Startsignal, eine Synchronisierungsnachricht an zu synchronisierende und für eine isochrone Kommunikation vorgesehene Komponenten 7 gesendet, können alle beteiligten Komponenten 7 ab dem nächsten Kommunikationstakt zu zählen beginnen und weisen demnach eine gemeinsame Zeitzählung auf.
-
Der Taktgeber 10 stellt über die Kommunikationsleitungen 11 sowohl ein Systemtaktsignal als auch das Kommunikationstaktsignal bereit. 3 zeigt dabei ein Einkodieren des Kommunikationstaktsignals in das höherfrequente Systemtaktsignal durch Variation der Pulsweitenmodulation. Das Systemtaktsignal 12 kann dabei beispielsweise eine Frequenz von 10 MHz aufweisen und weist üblicherweise ein Tastverhältnis von 50 : 50 auf. Zu dem Systemtaktsignal 12 sind in 3 zudem die Kommunikationstakte 13 des Kommunikationstaktsignals angedeutet, welche immer in den zeitlichen Abständen jeweils eines Kommunikationszeitfensters 14, hier 10 µs, aufeinanderfolgen sollen. Wie durch den mittig beispielhaft vergrößert dargestellten Anteil 15 des Systemtaktsignals 12 gezeigt, kann nun immer zu den Zeitpunkten der Kommunikationstakte 13 statt des Tastverhältnisses von 50 : 50 ein Tastverhältnis von beispielsweise 75 : 25 verwendet werden, vgl. den verlängerten Duty Cycle des Pulses 16. Nachdem die Komponenten 7 im vorliegenden Beispiel ohnehin aus dem Systemtaktsignal 12 ein höherfrequentes Uhrsignal, beispielsweise 20 MHz, 40 MHz und/oder 80 MHz, ableiten, kann eine Überabtastung seitens der Komponenten 7 durchgeführt werden, durch welche der Kommunikationstakt 13 verlässlich detektierbar ist, insbesondere auch nach einer entsprechenden Anlernphase.
-
Selbstverständlich sind auch andere Arten denkbar, das Systemtaktsignal 12 und den Kommunikationstakt 13 über gemeinsame Kommunikationsleitungen 11 zu übermitteln, beispielsweise eine Überlagerung des Systemtaktsignals 12 und eines SYNC-Kommunikationstaktsignals, oder aber Amplitudenmodulationen. Im Fall der Überlagerung können beispielsweise ein Systemtaktsignal 12 von 100 MHz und ein SYNC-Kommunikationstaktsignal von 100 KHz verwendet werden.
-
Es sei an dieser Stelle noch angemerkt, dass für den üblichen Datenverkehr, insbesondere zwischen der Recheneinrichtung 5 und den Komponenten 7, der keine besonderen Zeitanforderungen stellt, ein bestimmter Anteil der Bandbreite der Kommunikationsverbindungen bereitgestellt werden kann. Beispielsweise kann für eine Magnetresonanzdaten an die Recheneinrichtung 5 als Rohdatenempfänger liefernde Komponente 7 eine Bandbreite von 400 Mbyte/s bereitgestellt werden; andere Komponenten 7, beispielsweise solche, die das Aussenden von Magnetresonanzpulsen steuern, können beispielsweise Daten von der Recheneinrichtung 5 mit einer Rate von 100 Mbyte/s erhalten, all dies neben der isochronen Kommunikation.
-
Nachdem der Kommunikationstakt 13 an alle Komponenten 7 geliefert wird, besteht die Grundlage zum synchronisierten und zeitlich miteinander koordinierten Betrieb der Komponenten 7. Eine genauere Zeitauflösung wird innerhalb der Komponenten 7 durch einen dortigen Zeitzähler, der beispielsweise alle 25 ns hochzählen kann und durch den Kommunikationstakt 13 jeweils neu gestartet wird, realisiert, so dass hochgenaue, aufeinander abgestimmte Steuerabläufe möglich sind. Dabei ist es im hier dargestellten Fall der Magnetresonanzeinrichtung 1 bei der Bildgebung als Beispiel üblich, dass die entsprechenden Steuerbefehle des Messprotokolls/der Magnetresonanzsequenz mit ihren Ausführungszeitpunkten bereits vorab und mit entsprechenden Ausführungszeitpunkten an die Komponenten 7, die dann zusammenwirken sollen, übermittelt werden. 4 erläutert dieses Konzept innerhalb einer Komponente 7 genauer.
-
Unabhängig von der isochronen Kommunikation erhält die Komponente 7 gemäß dem Pfeil 17, wie durch den Kasten 18 symbolisiert, einen Steuerbefehl nebst Zeitinformation, die eine Ausführungszeit beschreibt, von der Recheneinrichtung 5. Innerhalb der Komponente 7 werden zwei Zähler geführt, nämlich ein globaler Kommunikationstaktzähler 19 und ein Zeitzähler 20. Mittels der an alle zu synchronisierenden Komponenten 7 gehenden, insbesondere von einer Komponente 7 selbst stammenden Synchronisierungsnachricht gemäß dem Pfeil 21 wird der Kommunikationstaktzähler 19 gestartet. Die Synchronisationsnachricht gemäß dem Pfeil 21 kann beispielsweise von einer Komponente 7 ausgehen, die einen ersten, eröffnenden Steuerbefehl ausführt. Nachdem innerhalb des Kommunikationszeitfensters 14 die Synchronisationsnachricht in jedem Fall eintrifft, laufen die Kommunikationstaktzähler 19 in allen Komponenten 7 synchron.
-
Der Pfeil 22 symbolisiert den Eingang des Kommunikationstaktes 13 von dem Taktgeber 10. Der Kommunikationstakt 13 führt zum einen dazu, dass der Kommunikationstaktzähler 19 um eins erhöht wird, zum anderen dazu, dass der Zeitzähler 20 neu gestartet wird. Gemeinsam bilden der Kommunikationstaktzähler 19 und der Zeitzähler 20 mithin einen in allen Komponenten synchron laufenden Steuerzähler 23.
-
Der Stand des Steuerzählers 23 wird nun mit der Ausführungszeit, die dem wenigstens einen vorab erhaltenen Steuerbefehl zugeordnet ist, in einem Schritt 24 verglichen. Bei Übereinstimmung wird der Steuerbefehl gemäß dem Schritt 25 ausgeführt.
-
Dies sei durch den in 5 dargestellten Zeitverlauf nochmals näher erläutert. Dabei wird davon ausgegangen, dass in dem Kommunikationszeitfenster 14a die Synchronisationsnachricht erhalten wird. Dies führt dazu, dass ab dann mit jedem weiteren erhaltenen Kommunikationstakt der im Balken 26 angedeutete Kommunikationstaktzähler 19 zu laufen beginnt, zudem triggert der Kommunikationstakt 13 auch das Zählen des durch den Balken 27 visualisierten Zeitzählers 20, der vorliegend beispielhaft alle 25 ns erhöht wird, mithin 400 Subzeitfenster in den Kommunikationszeitfenstern 14b, 14c, ... bei einer Länge des Kommunikationszeitfensters 14 von 10 µs definiert.
-
Ist nun einem Steuerbefehl die Ausführungszeit 28 von 10 µs, 200 ns zugeordnet, wird der Steuerbefehl im Zeitfenster 14c beim achten Inkrementieren des Zeitzählers 20 ausgeführt.
-
Dabei sei angemerkt, dass Steuerbefehle nicht zwangsläufig vorab von der Recheneinrichtung 5 vorgegeben sein müssen. Vielmehr können die Komponenten 7 die isochrone Kommunikation auch untereinander nutzen, um dafür zu sorgen, dass eine zeitliche Koordination von Aktionen der Komponenten 7 stattfindet. Hierbei kann eine Komponente 7, beispielsweise im Kommunikationszeitfenster 14a, eine Kommunikationsinformation mit einem Steuerbefehl und einem zugeordneten Ausführungszeitpunkt, der sich auf ein Zählen ab dem Kommunikationszeitfenster 14b bezieht, enthalten. Bei Empfang einer solchen, auch als Synchronisationsnachricht wirkenden Kommunikationsinformation ist mithin der empfangenden Komponente 7 ebenso bekannt, wann genau die Ausführung des Steuerbefehls gewünscht ist. Eine derartige dynamische Bereitstellung bzw. Anpassung von Steuerbefehlen zur Laufzeit kann beispielsweise bei Shimanpassungen und/oder im Hinblick auf eine SAR-Überwachung in der Magnetresonanzeinrichtung 2 nützlich sein.
-
Obwohl die Erfindung im Detail durch das bevorzugte Ausführungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen.