-
Die vorliegende Erfindung betrifft ein Verfahren zur Daten- und Signalübertragung zwischen unterschiedlichen Teileinheiten einer medizintechnischen Anlage, insbesondere einer CT-Anlage, sowie eine medizintechnische Anlage, in die das Verfahren implementiert ist.
-
Medizintechnische Anlagen, insbesondere moderne CT-Anlagen, weisen eine Vielzahl von Verbindungsleitungen zwischen den einzelnen Teileinheiten auf, über die zum einen Steuersignale für die Ansteuerung von Komponenten der Anlage und zum anderen digitale Daten wie beispielsweise Messdaten übertragen werden. Aufgrund der.ständigen Weiterentwicklung erfordern CT-Anlagen eine flexible und skalierbare Architektur, die auf eine hohe Zuverlässigkeit sowie auf eine einfache Durchführung von Servicearbeiten hin ausgerichtet sein sollte und zudem den Kostenaufwand für Erweiterungen begrenzt.
-
Die Architektur von gegenwärtig eingesetzten CT-Anlagen beruht ebenso wie die von anderen medizintechnischen Anlagen, beispielsweise auf dem Gebiet der Magnetresonanz-Tomographie, auf der Nutzung eines Standard-Kontroll-Netzwerkes, wie beispielsweise CAN (Controller Area Network), für die Übertragung von digitalen Daten mit geringer Geschwindigkeit. Weiterhin werden zahlreiche zusätzliche Verbindungsleitungen eingesetzt, über die jeweils auf Basis eines eigenen Protokolls und einer eigenen Spezifikation in der Regel logische Signale in analoger Form übertragen werden. Über diese letztgenannten Verbindungsleitungen werden insbesondere Signale übertragen, die während des Anlagenbetriebes häufig und sehr schnell aktualisiert werden müssen, wie beispielsweise Steuersignale. Dies führt jedoch zu einer Vielzahl von Verbindungen mit jeweils unterschiedlichen Protokollen, die eine zukünftige Verbesserung und Erweiterung einer derartigen Anlage erschweren.
-
Die
US 2003/0214953 A1 beschreibt ein Verfahren zur Daten- und Signalübertragung zwischen unterschiedlichen Teileinheiten einer medizinischen Anlage, bei denen eine Vernetzung zwischen Master-Knoten und Slave-Knoten über ein Netzwerk vorgenommen wird. Die Master- bzw. Slave-Knoten sind dabei unterschiedlichen Teileinheiten der medizinischen Anlage zugeordnet. Zur Lösung der Aufgabe wird bei dieser Druckschrift vorgeschlagen, ein einheitliches Kommunikationsprotokoll für die Daten- und Signalübertragung zwischen den einzelnen Knoten einzusetzen. Hierbei wird das CAN oder das CAN OPEN Netzwerk vorgeschlagen.
-
Die
DE 195 41 441 A1 offenbart eine Vorrichtung zur Übertragung von Daten zwischen dem rotierenden und dem stationären Teil eines Computertomographen. Die Vorrichtung enthält eine Trägererzeugungseinrichtung zum Erzeugen von ersten und zweiten Trägersignalen mit einem anpassbaren Phasenverschiebungswinkel zwischeneinander, der auf ein daran angelegtes extern gewonnenes Steuersignal anspricht, und eine Modulationseinrichtung zum Empfangen eines extern gewonnenen Datensignals, bspw. Bilddaten, um erste und zweite modulierte Ausgabesignale mit einer auswählbaren Phasenwinkeldifferenz zu erzeugen. Die Phasenwinkeldifferenz wird dabei ausgewählt, um eine Bildung von Lecksignalen aufgrund einer Fehlausrichtung zwischen dem Koppler und der Übertragungsleitung während der Rotationsbewegung zu vermeiden.
-
Die Veröffentlichung von H. Taub et al., „Principles of Communication Systems“, 2. Aufl., McGraw-Hill Publishing Company, 1986, Seiten 682-719, gibt einen sehr allgemeinen Überblick über Grundprinzipien von Kommunikationssystemen, wobei auch auf die Möglichkeit des Einsatzes einer Time Division Multiplextechnik hingwiesen wird.
-
Aus
US 6 470 071 B1 ist ein Echtzeit-Datenerfassungssystem mit einem entkoppelten nicht-echtzeitfähigen Host-Computer bekannt. Zur Entkopplung ist eine Einheit vorgesehen, in der die für den Messablauf erforderlichen Steuerkommandos, z.B. für das Strahlungserzeugungssystem, als Sequenz abgespeichert werden. Ebenso werden erfasste Bilddaten in der zwischengeschalteten Einheit zwischengespeichert, bevor sie an den Host-Computer weiter übermittelt werden.
-
US 2002/017228 A1 offenbart ein Verfahren zur Jitter-Reduzierung bei einer Übertragung von Daten über eine Schleifringanordnung mit einer Datenrate im GBit/s-Bereich.
-
In
US 2002/0150045 A1 wird ein Verfahren zur Übertragung von Datenpaketen (Bildrohdaten) von einer rotierenden Einheit auf eine stationäre Einheit eines CT-Systems offenbart.
-
US 2002/0003450 A1 zeigt einen Schleifring-Empfänger für ein CT-System, bei dem auf Statorseite auftretende stark unterschiedliche Signalpegel durch eine variable Dämpfungsstufe ausgeglichen werden.
-
US 2003/0152393 A1 offenbart ein Heterodyn-Wellenlängen-Demultiplexverfahren für Tomographieverfahren mit paralleler Datenerfassung.
-
Die Aufgabe der vorliegenden Erfindung besteht daher darin, ein Verfahren zur Daten- und Signalübertragung zwischen unterschiedlichen Teileinheiten einer medizintechnischen Anlage anzugeben, das ohne großen Aufwand eine Skalierbarkeit für spätere Weiterentwicklungen an der Anlage ermöglicht und zudem die Anzahl der erforderlichen Verbindungen deutlich reduziert.
-
Die Aufgabe wird mit dem Verfahren gemäß Patentanspruch 1 gelöst. Patentanspruch 13 gibt eine medizintechnische Anlage an, in die das erfindungsgemäße Verfahren implementiert ist.
-
Vorteilhafte Ausgestaltungen des Verfahrens sowie der Anlage sind Gegenstand der Unteransprüche oder lassen sich aus der nachfolgenden Beschreibung sowie den Ausführungsbeispielen entnehmen.
-
Bei dem vorliegenden Verfahren zur Daten- und Signalübertragung zwischen unterschiedlichen Teileinheiten einer medizintechnischen Anlage werden digitalisierte analoge und/oder logische Signale und digitale Daten gemeinsam auf einer Übertragungsleitung mittels seriellem Multiplexing übertragen. Die digitalisierten analogen und/oder logischen Signale und die digitalen Daten werden dabei in einzelnen Paketen zusammengefasst übertragen, die jeweils sowohl Bits der digitalisierten Signale als auch Bits der digitalen Daten enthalten und deren Länge über die Gesamtzahl der Bits pro Paket so klein gewählt ist, dass die Einhaltung einer vorgegebenen Aktualisierungsrate der logischen Signale erreicht wird. In jedem Paket wird ein Synchronisationscode, ein Block mit den digitalisierten Signalen, ein Block mit den digitalen Daten und ein Fehlerdetektionscode übertragen..Jeweils mehrere Pakete werden zu einem Frame zusammengefasst werden, wobei in jedem Paket eines Frames der Block mit den digitalen Daten einen vom vorangehenden Paket-Typ unterschiedlichen Übertragungskanal repräsentiert.
-
Mit dieser Lösung ist es möglich, alle zwischen den einzelnen Teileinheiten auszutauschenden Signale, insbesondere Steuersignale, und Daten über eine einzige Übertragungsleitung - gegebenenfalls mit einer gesonderten Rückleitung für die entgegengesetzte Kommunikation, die allerdings auch auf der gleichen Übertragungsleitung erfolgen kann - zu übertragen. Durch die bidirektionale Übertragung sowohl der analogen und/oder logischen Signale in digitalisierter Form als auch der digitalen Daten mittels seriellem Multiplexing über eine oder zwei Übertragungsleitungen mit hoher Geschwindigkeit lassen sich prinzipiell alle weiteren Verbindungsleitungen mit Ausnahme der Leitung für die elektrische Spannungsversorgung vermeiden. Dies verringert die Problematik der elektromagnetischen Verträglichkeit bei elektrischen Signalleitungen und verbessert die Zuverlässigkeit der Übertragung aufgrund der geringeren Anzahl von Komponenten, die für jede Schnittstelle erforderlich sind. Durch die Reduktion der Anzahl physikalischer Komponenten sowie Verbindungen für jede Schnittstelle auf ein Minimum vereinfachen sich auch die Herstellung, die Überprüfung sowie der Service der Anlage. Werden alle in der Anlage zu übertragenden analogen und logischen Signale mit dem vorliegenden Verfahren übertragen, so wird aufgrund der erforderlichen Digitalisierung dieser Signale auch eine galvanische Isolierung zwischen den einzelnen Teileinheiten auf Signalebene erreicht. Ein besonderer Vorteil des vorliegenden Verfahrens besteht in der leichten Erweiterbarkeit einer das Verfahren nutzenden Anlage, da weitere Signale oder Daten ohne weiteres in die zu übertragenen Pakete implementiert werden können.
-
In der bevorzugten Ausgestaltung des vorliegenden Verfahrens sowie der zugehörigen Anlage sind die für die Übertragung erforderlichen Datenübertragungs- und Kontrolleinrichtungen jeder Teileinheit in eine programmierbare logische Einheit, vorzugsweise ein FPGA (Field Programmable Gate Array), implementiert, das jederzeit durch ein Software-Update des Programmspeichers geändert bzw. an neue Erfordernisse angepasst werden kann. Auf diese Weise lassen sich der Anlage neue Funktionen hinzufügen, bei der neue digitalisierte Signale oder Daten zwischen den einzelnen Teileinheiten ausgetauscht werden müssen, ohne zusätzliche Hardware installieren oder Hardware austauschen zu müssen. Dies lässt sich auch nach der Auslieferung einer Anlage beim Kunden in einfacher Weise durchführen.
Das Verfahren ermöglicht weiterhin einen einfacheren Aufbau der jeweiligen Anlagen und reduziert deren Gewicht durch Vermeidung einer umfangreichen Kupferverkabelung und anderer elektrischer Verbindungselemente. Dieser Vorteil spielt insbesondere bei CT-Anlagen eine wichtige Rolle, bei denen durch Einsatz des Verfahrens das Gewicht der Daten- und Signalübertragungseinrichtungen auf der rotierenden Gantry deutlich verringert werden kann.
-
Die Übertragung auch der bisher auf analogem Wege übertragenen Signale auf der gleichen Übertragungsleitung wie die digitalen Daten wird beim vorliegenden Verfahren durch die paketweise Übertragung mit einer kurzen Paketlänge ermöglicht, die die Einhaltung einer vorgegebenen, für die ordnungsgemäße Funktion der Anlage erforderlichen Aktualisierungsrate der Signale ermöglicht. Vorzugsweise werden hierbei Paketlängen gewählt, die bei der eingesetzten Übertragungsgeschwindigkeit eine Aktualisierung der Signale in Zeitabständen im Bereich von 0,25 µs oder darunter ermöglichen. Die Übertragungsgeschwindigkeit wird dabei vorzugsweise bei ca. 1 Gbps (Gigabits per second) oder darüber gewählt. Derartige Übertragungsraten lassen sich ohne weiteres mit kommerziell erhältlichen Standard-SERDES-Komponenten (SERSDES: Serializer & Deserializer) realisieren, mit denen die Daten beispielsweise mittels 8B/10B-Modulation übertragen werden können. Der Einsatz derartiger Standardkomponenten für jede Schnittstelle der Teileinheiten der Anlage ermöglicht für alle Schnittstellen der Anlage die Nutzung der gleichen Testwerkzeuge für das Service-Personal.
-
Erfindungsgemäß wird jedes einzelne Datenpaket mit einem Fehler-Detektionscode, beispielsweise einem Reed-Solomon-Code, versehen, um auf Empfängerseite eine Fehlerkorrektur vornehmen zu können. Der Einsatz optischer Übertragungsleitungen löst das Problem der galvanischen Isolation und ermöglicht insbesondere auch problemlos längere Übertragungswege zwischen den einzelnen Teileinheiten. Durch optische Übertragungsleitungen wird das Problem der Strahlungsemission von Hochfrequenzstrahlung, das bei üblichen elektrischen Übertragungsleitungen auftritt, vollständig vermieden.
-
In dem erfindungsgemäßen Verfahren werden jeweils mehrere aufeinander folgende Pakete zu einem Frame zusammengefasst, wobei jeweils aufeinander folgende Pakete eines Frames in dem entsprechenden Block mit den digitalen Daten einen anderen Übertragungskanal repräsentieren. Auf diese Weise können bspw. bei Zusammenfassung von jeweils von fünf Paketen zu einem Frame fünf unterschiedliche Kanäle mit dem Frame übertragen werden, die unterschiedlichen Funktionen der Anlage zugeordnet sein können. Beispiele für eine derartige Ausgestaltung können den nachfolgenden Ausführungsbeispielen entnommen werden.
-
Die vorliegende medizintechnische Anlage umfasst dementsprechend in den einzelnen Teileinheiten Datenübertragungs- und Kontrolleinrichtungen, die das erfindungsgemäße Verfahren bei der Übertragung von eingehenden Signalen und digitalen Daten ausführen.
-
Das vorliegende Verfahren sowie die zugehörige medizintechnische Anlage werden nachfolgend anhand von Ausführungsbeispielen in Verbindung mit den Zeichnungen nochmals näher erläutert. Hierbei zeigen:
- 1 ein Beispiel für Hauptverbindungen zwischen einzelnen Teileinheiten des rotierenden Teils einer CT-Anlage;
- 2 ein Beispiel für Hauptverbindungen innerhalb des stationären Teils einer CT-Anlage;
- 3 ein Beispiel für unterschiedliche Übertragungsleitungen bei einer CT-Anlage gemäß dem Stand der Technik;
- 4 ein Beispiel für die Übertragung zwischen zwei Teilsystemen einer CT-Anlage gemäß der vorliegenden Erfindung;
- 5 ein erstes Beispiel für das Übertragungssystem der vorliegenden Erfindung;
- 6 ein zweites Beispiel für das Übertragungssystem der vorliegenden Erfindung;
- 7 ein drittes Beispiel für das Übertragungssystem der vorliegenden Erfindung; und
- 8 ein viertes Beispiel für das Übertragungssystem der vorliegenden Erfindung.
-
Das vorliegende Verfahren wird nachfolgend anhand einer CT-Anlage näher beschrieben, die in den 1 und 2 in schematischer Darstellung zu erkennen ist.
-
1 zeigt hierbei die Gantry 2 der CT-Anlage 1 mit dem rotierenden Teil 3 sowie dem stationären Teil 4. Innerhalb des rotierenden Teils 3 sind die Röntgenröhreneinheit 6 sowie die dieser gegenüber liegende Messeinrichtung 5 zu erkennen. Die Röntgenröhreneinheit 6 umfasst die Röntgenröhre, einen Kollimator, eine Fokuskontrolleinrichtung sowie eine Einrichtung zur Anodenrotation. Die Messeinrichtung 5 umfasst die Röntgendetektoren sowie die zugehörige Auswerteeinheit. Weiterhin sind am rotierenden Teil 3 der Gantry 2 ein Master-Controller 7 für den rotierenden Teil und die Dosismodulation sowie eine Spannungsversorgung 9 mit einem Hochfrequenzgenerator sowie einer Spannungsquelle für die Rotation angeordnet. Die einzelnen Steuersignale und/oder Daten werden vom Master-Controller 7 an die jeweiligen Teileinheiten übertragen oder von diesen empfangen, wie dies in der 1 durch die Pfeile angedeutet ist. Der Master-Controller 7 am rotierenden Teil 3 steht in Verbindung mit einem Master-Controller 8 am stationären Teil 4 der Gantry 2. Die Signal- und Datenübertragung zwischen beiden Master-Controllern kann beispielsweise über ein korrespondierendes Schleifringpaar erfolgen, das am rotierenden und stationären Teil der Gantry befestigt ist.
-
2 zeigt wiederum die Gantry 2 der CT-Anlage 1, diesmal mit dem verschiebbaren Patiententisch 10, dem Bildrekonstruktionssystem 12 sowie der Einheit 11 mit der Spannungsverteilung. Auch hier ist der stationäre Master-Controller 8 mit den entsprechenden Teileinheiten über Verbindungsleitungen verbunden, über die Steuersignale sowie digitale Daten übertragen bzw. ausgetauscht werden, wie dies mit den Pfeilen veranschaulicht ist. Die einzelnen Pfeile repräsentieren hierbei in der Regel eine Vielzahl von Leitungen, beispielsweise analoge Signalleitungen für die Steuerung der einzelnen Teilsysteme sowie eine CAN-Netzwerkverbindung für die Übertragung der digitalen Messdaten.
-
Die Vielzahl der bei gegenwärtigen CT-Anlagen zum Einsatz kommenden Verbindungsleitungen zwischen zwei Teilsystemen, im Folgenden als Master-Teilsystem 13, das den Master-Controller 7 bzw. 8 repräsentiert, und Slave-Teilsystem 14 bezeichnet, kann der 3 entnommen werden. Über die Übertragungsleitungen 15 werden hierbei N bzw. M differentielle, optisch isolierte logische Signale, wie beispielsweise enable_xray, xxx_error bzw. xray_on, dose_ok, xxx_error, usw. übertragen. Die Übertragungsleitungen 16 repräsentieren elektrische Leitungen für die Übertragung von K differentiellen Analogsignalen in einer bzw. L differentiellen Analogsignalen in der anderen Richtung. Weiterhin ist in der Regel eine CAN-Verbindung 17 für die direkte Übertragung digitaler Daten vorgesehen. Neben der Vielzahl an Versorgungsleitungen 18 für die unterschiedlichen Spannungen von beispielsweise 230 VAC, 5 VDC, -5 VDC, 24 VDC usw. ist mit Bezugszeichen 19 auch eine zusätzliche Verkabelung angedeutet, die für eine spätere Implementierung weiterer Signale bei Ausbau der CT-Anlage erforderlich werden.
Diese Vielzahl von Verbindungsleitungen mit den unterschiedlichen Verbindungsprotokollen, die bei einer CT-Anlage nicht nur zwischen dem Mastercontroller 7 bzw. 8 und einem der Teilsysteme, sondern auch zwischen einzelnen Teilsystemen auftreten, erfordert eine Vielzahl von Übertragungskomponenten und führt zudem zu einer nur sehr aufwendigen Erweiterbarkeit der CT-Anlage. Demgegenüber wird bei Einsatz des vorliegenden Verfahrens die Anzahl an Verbindungsleitungen drastisch reduziert, wie dies anhand der 4 schematisch dargestellt ist. Bei der Realisierung dieses Verfahrens sind zwischen dem Master-Teilsystem 13 und dem Slave-Teilsystem 14 lediglich ein oder zwei Übertragungsleitungen 20 sowie eine einzelne Versorgungsleitung 21 für 230 VAC oder 24 VDC erforderlich. Die jeweils auf Seiten dieser Teilsysteme benötigten Datenübertragungs- und Kontrolleinrichtungen 22 setzen sich in diesem Beispiel aus bekannten SERDES-Komponenten 23 mit den zugehörigen Sendern 24 und Empfängern 25 zusammen. Die SERDES-Komponenten 23 senden die zu übermittelnden Signale und Daten in der durch das Verfahren vorgesehenen Form bzw. geben die empfangenen Signale und Daten an die entsprechenden Komponenten der jeweiligen Teileinheit weiter.
-
Im vorliegenden Beispiel erfolgt die Übermittlung mit einer Geschwindigkeit von 1,25 Gbps in beiden Richtungen in kleinen Datenpaketen. Die Übertragung erfolgt mit der bekannten 8B/10B-Modulation, die in vielen anderen bekannten Übertragungsprotoköllen, wie beispielsweise 100 Mbps Ethernet, Gigabit Ethernet, Infiniband, usw. zum Einsatz kommt. Die 8B/10B-Modulation bettet die Daten und das Taktsignal in einen gleichspannungsfreien Bitstrom, der dem Empfänger die Synchronisation mit dem Takt, eine zuverlässige Decodierung der einzelnen Bits sowie eine Detektion der Byte-Grenzen ermöglicht..
-
Das Format der Datenpakete ist beim vorliegenden Verfahren frei wählbar und wird an die jeweiligen Anforderungen angepasst. Durch Implementierung der Datenübertragungs- und Kontrolleinrichtungen in jedem der beteiligten Teileinheiten in ein FPGA lassen sich jederzeit Aktualisierungen und Änderungen des verwendeten Datenformats wie des eingesetzten Übertragungsprotokolls vornehmen.
-
Ein Beispiel für ein mögliches Datenformat ist im Folgenden gezeigt. Das Format der Datenpakete wird in beiden Übertragungsrichtungen gleich gewählt. Ein Datenpaket enthält sowohl die gemultiplexten digitalisierten Signale als auch digitale Datenwerte, die frei, bspw. in Byte-Form, als 16-Bit-Wörter oder als 32-Bit-Wörter, festgelegt sein können. Jedes Datenpaket ist durch einen vorangehenden Kontrollcode (Komma - K28.5) selbstsynchronisierend, trägt eine Identifikation sowie einen 1-Byte-CRC-Code zur Fehlerdetektion. Der Aufbau eines derartigen Datenpaketes ist in der folgenden Tabelle dargestellt:
Byte | MASTER → SLAVE | SLAVE → MASTER |
0 | Idle | Idle |
1 | Idle oder Start | Idle oder Start |
2 | Typ/Untertyp | TYP/Untertyp |
3 | Signale 7-0 | Signale 7-0 |
4 | Signale 15-8 | Signale 15-8 |
5 | Signale 23-16 | Signale 23-16 |
6 | Signale 31-25 | Signale 31-25 |
7 | Signale 39-33 | Signale 39-33 |
8 | Daten 7-0 | Daten 7-0 |
9 | Daten 15-8 | Daten 15-8 |
10 | Daten 23-16 | Daten 23-16 |
11 | Daten 31-25 | Daten 31-25 |
12 | CRC | CRC |
-
Ein Datenpaket enthält somit 12 Bytes mit einem zusätzlichen Idle-Byte, auch Sync oder Komma genannt, zwischen den einzelnen Paketen, um eine automatische Byte-Synchronisation am Empfänger zu ermöglichen. Die Byte-Rate beträgt hierbei 125 Mbyte/s bei 1,25 Gbps. Die Paketrate bei der Übertragung beträgt somit 1 Paket alle 104 ns oder 9,6 MPakete/s.
-
Jedes Paket transportiert hierbei gemultiplexte digitalisierte Signale sowie digitale Daten. Unter den digitalisierten Signalen sind hierbei vor allem alle bisher über gesonderte Leitungen übertragenen, insbesondere analogen, Signale zu verstehen, die sich relativ schnell ändern können und somit eine hohe Aktualisierungsrate erfordern. Im vorliegenden Beispiel wird jedes dieser Signale alle 104 ns mit einer Latenzzeit von ca. 77 bis 150 Bit-Perioden aktualisiert. Die maximale Verzögerung bei der Aktualisierung dieser Signale beträgt daher 224 ns (150 x 0,8 ns = 120 ns; 120 ns + 104 ns = 224 ns). Dies ist für die bei einer CT-Anlage erforderlichen Steuersignale ausreichend.
-
Im vorliegenden Beispiel wird mit jedem Paket alle 104 ns ein 32-Bit-Block mit digitalen Daten zwischen den jeweiligen Teileinheiten bewegt. Dieser Block mit digitalen Daten kann abhängig vom Übertragungsformat zusätzlich gemultiplext werden, um eine Vielzahl von virtuellen Übertragungskanälen für digitale Daten oder auch für digitalisierte analoge Signale zu erhalten. Ein Beispiel für eine derartige Vielkanalübertragung wird im Folgenden näher erläutert.
-
Bei diesem Beispiel werden jeweils acht aufeinander folgende Pakete zu einem Frame zusammengefasst. Jedes Paket repräsentiert hierbei einen Zeitschlitz der Datenübertragung, in dem ein anderer Kanal übertragen wird. Hierzu repräsentieren die digitalen Daten des jeweiligen Blocks in jedem der acht Datenpakete die Daten eines anderen Kanals, so dass die Daten jedes Kanals nach der Übertragung von jeweils acht Datenpaketen, einem Frame, wieder aktualisiert werden. Sollte eine schnellere Aktualisierungsrate eines einzelnen Kanals erforderlich sein, so kann selbstverständlich der entsprechende Kanal im gleichen Frame auch mehrfach übertragen werden, beispielsweise mit jedem zweiten Datenpaket. Die folgende Tabelle zeigt die Struktur eines Vielkanal-Frames mit acht Zeitschlitzen. Die Daten jedes Kanals werden dabei alle 0,84 µs aktualisiert, so dass sich diesbezüglich eine Nettoübertragungsrate von 32 Bit/µs für jeden Kanal ergibt.
Zeitschlitz (Paket-Typ) | Daten-Nutzlast MASTER → SLAVE | Daten-Nutzlast SLAVE → MASTER |
0 | Kanal 1 | Kanal 1 |
1 | Kanal 2 | Kanal 2 |
2 | Kanal 3 | Kanal 3 |
3 | Kanal 4 | Kanal 4 |
4 | Kanal 5 | Kanal 5 |
5 | Kanal 6 | Kanal 6 |
6 | Kanal 7 | Kanal 7 |
7 | Protokollkanal* | Protokollkanal* |
* Protokoll = Speicherzugriff, CAN Telegramme, TCP/IP Frames, ... |
-
Im Falle einer CT-Anlage können die einzelnen Kanäle beispielsweise mit der Übertragung der folgenden Daten und Signale belegt werden:
- - ein Röntgenstrahlkanal für die Übermittlung des Hochspannungswertes, des Dosiswertes, usw.;
- - ein Patientenüberwachungskanal für die Übertragung der EKG-Signale, des Pulses sowie von Atmungsdaten;
- - ein Gantry-Kanal für die Übertragung der Tischpositionen, der Gantry-Neigung und der Rotationsgeschwindigkeit, usw.;
- - ein virtueller logischer Analysator- und Debug-Kanal (gemultiplexte Information);
- - ein Kontrollinformationskanal, d.h. das gesamte CAN-Protokoll;
- - ein Kanal für die Übertragung des Echtzeittaktes des CT-Systems;
- - ein Speicherkanal für den lesenden bzw. schreibenden Zugriff auf 65536 x 16-Bit virtuelle Register;
- - ein Kanal für die Übertragung von Fehlerdetektionscodes zur Korrektur von Übertragungsfehlern.
-
Die Einrichtung eines Speicherkanals ermöglicht den Zugriff auf einen virtuellen 16-Bit Adress x 16-Bit Datenraum. Das zugehörige Protokoll kann auf Basis von drei Paketidentifikatoren und einem auf dem Handshake-Prinzip basierenden Datenaustausch die erforderlichen Lese- und Schreibvorgänge in dem 65536 x 16-Bit virtuellen Register ermöglichen. Ein Beispiel für den Zugriff ist in den folgenden beiden Tabellen, die die Lesesequenz sowie die Schreibsequenz zeigen, veranschaulicht.
-
Lesesequenz:
-
Richtung |
Paket Untertyp |
Daten (niedrige & hohe 16-Bit Wörter) |
Server → Client |
READ_REQ |
Register Adresse + zusätzliche Info |
Server ← Client |
ACK |
Spiegel Adresse + Register Daten |
-
Schreibsequenz:
-
Richtung |
Paket Untertyp |
Daten (niedrige & hohe 16-Bit Wörter) |
Server → Client |
WRITE-REQ |
Register Adresse + Register Daten |
Server ← Client |
ACK |
Spiegel Adresse oder Fehlercode (OK, bad request ...) . |
-
Ein Speicherzugriff erfordert zwischen zwei und drei Zeitschlitze, so dass der Speicherzugriff abhängig von der Phasenverschiebung zwischen den Zeitschlitzen in den beiden Verbindungsrichtungen innerhalb etwa 2 bis 2,5 µs erfolgen kann. Dieser Zugriff ist im Mittel wesentlich schneller als ein Zugriff über ein CAN, der etwa 0,5 bis 1 ms für die Ausführung eines schnellen Befehls erfordert.
-
In gleicher Weise wie die Bereitstellung eines Speicherkanals kann auch die bisher über ein CAN-Netzwerk erfolgte Kommunikation über einen der virtuellen Kanäle erfolgen. Die Geschwindigkeit bei einer Datenverbindung, die wie im vorliegenden Fall mit 1,25 Gbps (32-Bit jede µs) erfolgt, ermöglicht die Implementierung der CAN-Information (32-Bit in 33 ms bei einem CAN 250 kHz) in einen virtuellen Kanal, so dass die getrennte, parallele CAN-Verbindung zwischen Master und Slave entfallen kann. In der vorliegenden Konfiguration wird damit die CAN-Information etwa 33000 mal schneller übermittelt als in einer speziell dafür vorgesehenen CAN-Übertragungsleitung, wie sie derzeit eingesetzt werden.
-
Selbstverständlich lässt sich die CAN-Information auch zusammen mit dem mit jedem Paket übermittelten Block von digitalisierten Signalen übertragen, so dass sich eine noch schnellere Übertragung ergibt. In einer derartigen Ausgestaltung lassen sich auch weitere Bussysteme, wie beispielsweise JTAG, TCP/IP über die vorliegende Verbindung übertragen.
-
Die Datenübertragungs- und Kontrolleinrichtung dient der Implementierung des Übertragungsprotokolls sowie dem Senden und dem Empfang sowie der Verteilung der Signale und digitalen Daten. In der bevorzugten Ausgestaltung ist die Datenübertragungs- und Kontrolleinrichtung in einen programmierbaren FPGA implementiert, um eine leichte Rekonfiguration oder Änderungen im Übertragungsprotokoll zu ermöglichen. Für die Rekonfiguration sind unterschiedliche Vorgehensweisen möglich.
-
Falls in der Anlage noch eine parallele, unabhängige CAN-Verbindung zwischen dem Master und den Slave-Teilsystemen vorhanden ist, erfolgt die Aktualisierung der FPGA-Konfiguration über CAN. Der Master übermittelt die neue FPGA Konfiguration mittels CAN zum Slave Mikrokontroller. Die neue Konfiguration wird in einem lokalen, nicht-flüchtigen Speicher gesichert. Mit jeder PowerUp-Sequenz lädt der Mikrokontroller jedes FPGA mit der jeweils letzten gültigen Konfiguration.
-
Falls keine unabhängige CAN-Verbindung verfügbar ist, beispielsweise weil die Übertragung der CAN-Informationen über die vorliegende Verbindung erfolgt, so kann die Aktualisierung der FPGA-Konfiguration über spezielle Signale auf der vorliegenden Verbindung erfolgen. Dies erfordert jedoch in der Regel eine gleichzeitige Aktualisierung der jeweils an der Verbindung beteiligten Teileinheiten.
-
Eine vorteilhafte Möglichkeit der Durchführung einer derartigen Aktualisierung der Konfiguration besteht darin, bei der Implementierung des Systems eine Basis-FPGA-Konfiguration vorzugeben, die zumindest das Aktualisierungsprotokoll unterstützt. Das Aktualisierungsprotokoll ist unabhängig vom Paketformat und wird während der gesamten Lebensdauer des Systems nicht verändert. Beim Aktualisierungsprozess wird dann das Slave-Teilsystem in den Konfigurationsmodus gesetzt, indem vom Master eine vordefinierte Sequenz von Kontrollcodes über die Verbindung übertragen wird. Das Slave-Teilsystem bestätigt den Wechsel in den Konfigurationsmodus durch Rücksendung einer definierten Sequenz von Kontrollcodes. Bei der Aktualisierung wird sichergestellt, dass das Konfigurationsprotokoll auch durch alle zukünftigen FPGA-Konfigurationen eingehalten wird.
-
Nach dem Wechsel des Slave-Teilsystems in den Konfigurationsmodus sendet der Master anstelle von gewöhnlichen Paketen nur Konfigurationsdaten. Nach der Überprüfung der Unversehrtheit der Konfigurationsdaten, beispielsweise über eine Check-Summe, CRC, usw., speichert das Slave-Teilsystem die neue Konfiguration im Flash-Speicher oder in lokalen Konfigurations-PROMs. Nach dem anschließenden Aus- und Einschalten oder einer Reset-Sequenz ist die neue Konfiguration auf beiden Seiten der Verbindung eingerichtet.
-
Im vorliegenden Beispiel wird für die schnelle Verbindung eine 8B/10B-SERDES-Komponente mit PLL eingesetzt, um eine Synchronisation auf den Übertragungstakt zur zuverlässigen Dekodierung des seriellen Bitstroms zu erreichen. Für die Implementierung dieser SERDES-Komponente ist eine Lösung unter Einsatz eines ASIC vorteilhaft, da dieser üblicherweise einen Analog-PLL eingebunden hat, der für derartige Anwendungen feinabgestimmt ist. Allerdings beinhaltet diese Lösung eine lange Latenzzeit. Alternativ kann daher ein FPGA mit integriertem SERDES eingesetzt werden, der eine kürzere interne Latenzzeit aufweist.
-
Für die Ausgestaltung der Datenübertragungs- und Kontrolleinrichtung sowie auch die Ausgestaltung der Übertragungsleitungen ergeben sich unterschiedliche Möglichkeiten, von denen in den folgenden vier 5 bis 8 beispielhaft vier Ausgestaltungen veranschaulicht sind.
-
So zeigt 5 eine Ausgestaltung, bei der ein Teil der Datenübertragungs- und Kontrolleinrichtung 22 in jeder Teileinheit in einen FPGA 26 implementiert und mit einem mittels ASIC realisierten SERDES 23 verbunden ist. Die jeweiligen Sender und Empfänger sind als optischer Sender 24a und optischer Empfänger 25a ausgebildet, wobei die Übertragung über optische Leitungen 20a erfolgt. Diese Ausgestaltung reduziert elektromagnetische Interferenzen, ermöglicht die Aufrüstung auf Datenübertragungsraten von bis zu 2,5 Gbps und darüber, und ermöglicht lange Leitungswege sowie eine galvanische Isolation. Insgesamt ist ein derartiges System sehr unempfindlich gegenüber Störungen.
-
Aufgrund der höheren Kosten optischer Sender und Empfänger ist selbstverständlich auch eine Ausgestaltung mit Sendern und Empfängern 24b/25b gemäß 6 möglich, die über elektrische Leitungen empfangen und senden. Die Übertragung erfolgt hierbei über Twinax- oder Koax-Kabel 20b. Diese Ausgestaltung lässt sich kostengünstiger realisieren als die Ausgestaltung der 5 bei ansonsten gleichen weiteren Komponenten.
-
7 zeigt eine Ausgestaltung, bei der die Übertragung über Gigabit-Ethernet-Kabel und -Adapter realisiert wird. Bei dieser Ausgestaltung, bei der ein Teil der Datenübertragungs- und Kontrolleinrichtung wie bei den vorangehenden Ausgestaltungen in einen FPGA 26 implementiert ist, wird ein Gigabit-Ethernet PHY-Adapter 27 für die Datenübertragung eingesetzt, wobei die Übertragung über ein einziges CAT5-Kabel 20c über bekannte RJ45-Schnittstellen erfolgt. Die galvanische Isolation erfolgt in bekannter Weise über die magnetische Komponente 28. Diese Ausgestaltung lässt sich aufgrund der gängigen Komponenten sehr kostengünstig realisieren.
-
Bei der Verbindung zwischen einigen CT-Teileinheiten kann es erforderlich sein, mehr als eine schnelle Verbindung gemäß der vorliegenden Erfindung für die Übertragung einzusetzen. In einem derartigen Fall wird die Datenübertragungs- und Kontrolleinrichtung (22) oder ein Teil davon ebenfalls durch Implementierung in ein FPGA (26) realisiert, der mehrere SERDES-bildende Blöcke mit mehreren Sendern/Empfängern (24/25) aufweist, wie dies in der 8 veranschaulicht ist. Die Ausgestaltung der Sender bzw. Empfänger sowie der Verbindungsleitung kann dabei in bekannter Weise, beispielsweise wie bei den vorangehenden Ausführungsbeispielen erläutert, erfolgen. Als geeignete Komponenten kommen hierbei beispielsweise Komponenten der Altera Stratix GX-Familie, Xilinx Virtex-II Pro mit 24 I/O-Transceivern oder Lattice ORCA 82G5 mit acht Transceivern in Frage. Für die schnelle Verbindung über Gigabit-Ethernet-Kabel können beispielsweise die BCM5402 (dual-port) oder BCM5421 (quad-port) Transceiver von Broadcom eingesetzt werden.
-
Bezugszeichenliste
-
- 1
- CT-Anlage
- 2
- Gantry
- 3
- rotierender Teil der Gantry
- 4
- stationärer Teil der Gantry
- 5
- Messeinrichtung
- 6
- Röntgenröhreneinheit
- 7
- Master-Controller, rotierend
- 8
- Master-Controller, stationär
- 9
- Spannungsversorgung, rotierend
- 10
- Patiententisch
- 11
- Einheit mit Spannungsverteilung
- 12
- Bildrekonstruktionssystem
- 13
- Master-Teilsystem
- 14
- Slave-Teilsystem
- 15
- Übertragungsleitung für logische Signale
- 16
- Übertragungsleitung für analoge Signale
- 17
- CAN
- 18
- Stromversorgungsleitungen
- 19
- zusätzliche Verkabelung für zukünftige Signale
- 20
- Übertragungsleitungen gem. d. vorliegenden Verfahren
- 20a
- optisches Kabel
- 20b
- Twinax- oder Koax-Kabel
- 20c
- CAT5-Kabel
- 21
- Stromversorgungsleitung
- 22
- Datenübertragungs- und Kontrolleinrichtung
- 23
- SERDES-Komponente
- 24
- Sender
- 24a
- optischer Sender
- 24b
- elektrischer Sender
- 25
- Empfänger
- 25a
- optischer Empfänger
- 25b
- elektrischer Empfänger
- 26
- FPGA
- 27
- Gigabit-Ethernet PHY-Adapter
- 28
- Magnetkomponente