DE102004040041A1 - Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen - Google Patents

Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen Download PDF

Info

Publication number
DE102004040041A1
DE102004040041A1 DE102004040041A DE102004040041A DE102004040041A1 DE 102004040041 A1 DE102004040041 A1 DE 102004040041A1 DE 102004040041 A DE102004040041 A DE 102004040041A DE 102004040041 A DE102004040041 A DE 102004040041A DE 102004040041 A1 DE102004040041 A1 DE 102004040041A1
Authority
DE
Germany
Prior art keywords
module
packet
bit
controller
modules
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.)
Granted
Application number
DE102004040041A
Other languages
English (en)
Other versions
DE102004040041B4 (de
Inventor
James B. Mckim Jun.
John W. Hyde
Marko Vulovic
Buck H. Chan
John F. Kenny
Richard A. Carlson
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of DE102004040041A1 publication Critical patent/DE102004040041A1/de
Application granted granted Critical
Publication of DE102004040041B4 publication Critical patent/DE102004040041B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Dc Digital Transmission (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

Eine Vorrichtung und ein Verfahren für eine synchrone Kommunikation unter Verwendung eines seriellen Datenstroms verwenden ein Gehäuse mit einer Steuerung und einer Backplane. Das Gehäuse nimmt ein oder mehrere Module für eine Verbindung mit der Backplane auf. Die Backplane verteilt Leistung an die Module und liefert eine Kommunikationsverbindung von der Steuerung an jedes Modul. Jede Kommunikationsverbindung umfasst eine Datenausgabeleitung, eine Dateneingabeleitung und eine Taktleitung, wobei jede Taktleitung von einer Taktquelle abgeleitet ist.

Description

  • Die vorliegende Patentanmeldung beansprucht die Priorität der U.S.-Provisional-Anmeldung mit der Seriennummer 60/527,141, eingereicht am 5. Dezember 2003 mit dem Titel „Architecture and Backplane Optimized for Implementation of Synchronous, Multi-channel, Moderate Bandwidth, Galvanically Isolated Instrumentation Devices".
  • Eine modulare Instrumentierung ermöglicht eine kostengünstige Konfiguration einer Instrumentierung gemäß spezifischen Bedürfnissen und Anwendungen. Es gibt unterschiedliche Systemtypen, die eine modulare Instrumentierung liefern, einschließlich VXI, PCI und zahlreiche proprietäre Systeme. Eine modulare Instrumentierung besteht typischerweise aus einem Kartenkäfiggehäuse und einer Backplane bzw. Rückwandplatine mit einer Steuerung. Instrumentierungsmodule passen in das Gehäuse, verbinden mit der Backplane und kommunizieren mit der Steuerung.
  • Bei bestimmten Situationen ist es wünschenswert, dass Module miteinander synchronisiert sind, so dass Operationen, die in einem Modul durchgeführt werden, auf Operationen bezogen werden können, die in einem anderen Modul durchgeführt werden. Eine solche Synchronisation liefert beträchtliche zusätzliche Fähigkeit in dem System als Ganzes. In einigen Fällen wird jedoch eine enge Synchronisation auf Kosten der galvanischen Trennung zwischen den Modulen erreicht. Eine Trennung ist wünschenswert, weil Energie von einem Modul in ein anderes koppeln kann, was zu einer beeinträchtigten Leistungsfähigkeit und fehlerhaftem oder falschem Betriebsverhalten führt.
  • Es gibt daher einen Bedarf an einem modularen Instrumentierungssystem mit Modulen, die galvanisch voneinander getrennt sind, während sie nach wie vor eine Intermodulsynchronisationsfähigkeit aufweisen.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung, ein Verfahren zum Konfigurieren eines Moduls über eine Kommunikationsverbindung, ein Verfahren für synchrones Auslösen von Ereignissen in mehreren Modulen und eine Vorrichtung zum Durchführen von synchronem Auslösen von Ereignissen in mehreren Modulen und eine Testvorrichtung mit verbesserten Charakteristika zu schaffen.
  • Diese Aufgabe wird durch Vorrichtungen gemäß Anspruch 1, 54, 59 und 79 sowie Verfahren gemäß Anspruch 35 und 49 gelöst.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockdiagramm einer Backplane eines Kartenkäfigs gemäß den vorliegenden Lehren, das Leistungsverteilung, Kommunikationsverbindungen und galvanische Intermodultrennung zeigt;
  • 2 eine Darstellung eines Außenanschlussmusters für jedes Modulaufnahmeelement gemäß den vorliegenden Lehren;
  • 3 eine Dreileitungskommunikationsverbindung zwischen der Steuerung und einem einzelnen Modul;
  • 4 ein relatives Zeitgebungsdiagramm zwischen dem Takt, der Rahmensynchronisation und dem Senden und Empfangen von Paketen, wobei eine „steuerungszentrische" Konvention angenommen wird, so dass die Steuerung Daten an Module „sendet" und Daten von Modulen „empfängt";
  • 5 eine Rahmensynchronisationsschaltung;
  • 6 ein Rahmenresynchronisationszeitgebungsdiagramm;
  • 7 eine Sendepaketfeldstruktur, wobei der Begriff „senden" erneut eine „steuerungszentrische" Perspektive darstellt, bei der Daten von der Steuerung an Module „gesendet" werden;
  • 8 eine Empfangspaketfeldstruktur, wobei der Begriff „empfangen" erneut eine „steuerungszentrische" Perspektive darstellt, bei der Daten durch die Steuerung von Modulen „empfangen" werden;
  • 9 und 10 Ausführungsbeispiele von Empfangspaketfeldstrukturen für spezifische Modultypen;
  • 11 eine Modullogik, die für eine weiche Konfiguration über einen seriellen Bitstrom spezifisch ist;
  • 12 ein Zeitgebungsdiagramm, das eine relative Zeitgebung des weichen Konfigurationsprozesses zeigt;
  • 13 ein Flussdiagramm, das Schritte darstellt, die durchgeführt werden, um ein Modul nach einer Modulrücksetzung zu konfigurieren; und
  • 14 ein Logikdiagramm für die Implementierung einer selektiven Rücksetzungsfunktion.
  • Nachfolgend wird näher Bezug genommen auf die vorliegende Erfindung, von der Beispiele in den beiliegenden Zeichnungen dargestellt sind, wobei sich gleiche Bezugszeichen überall auf gleiche Elemente beziehen. Im allgemeinen umfasst die vorliegende Erfindung eine Architektur und eine Backplane, die wiederum aus einer physikalischen Schicht, verschiedenen seriellen Kommunikationsprotokollen und einer Unterstützungshardwareinfrastruktur bestehen kann. Die folgende detaillierte Beschreibung stellt Verfahren dar, die verkörpert sein können durch Routinen und symbolische Darstellungen von Operationen von Datenbits in einem computerlesbaren Medium, zugeordnete Prozessoren, Leistungsversorgungen, Kommunikationsbusse, Universalcomputern, die mit Datenerfassungskarten konfiguriert sind, und dergleichen. Die Architektur, Backplane, seriellen Kommunikationsprotokolle und unterstützende Hardware liefern eine Kombination aus Merkmalen und Attributen, die die Implementierung von merkmalsreichen, hochleistungsfähigen programmierbaren Mehrkanalsystem-Leistungsversorgungen ermöglichen. Diese Merkmale und Attribute können auch vorteilhaft angewendet werden bei anderen Instrumentenklassen, wie z. B. Signalverlaufdigitalisierern, Voltmetern, Signalgeneratoren, Signalanalysatoren und einer anderen Instrumentierung, die von der zeitsynchronen Erzeugung und Erfassung von Signalen auf mehreren Kanälen mit hoher galvanischer Trennung profitieren kann. Die mehreren Kanäle, die in Betracht gezogen werden, können von einer gleichen Art sein, z. B. mehrere Kanäle von systemprogrammierbaren Leistungsversorgungen, oder von unterschiedlicher Art, z. B. gemischte Kanäle von Leistungsversorgungen, elektronischen Lasten, Signalverlaufdigitalisierern und synthetisierte Signalgeneratoren. Wie er hierin verwendet wird, kann sich der Begriff „Backplane" auf jede Gruppe von Leitern beziehen, die in der Lage sind, das hierin beschriebene Kommunikationssystem und die Leistungsversorgung zu implementieren. Obwohl ein spezifisches Ausführungsbeispiel einer Backplane, wie sie hierin beschrieben ist, eine Sammlung von Leiterbahnen auf einer gedruckten Schaltungsplatine umfasst, kann die Backplane auch als ein Mehrfachleiterkabel, als mehrere Kabel und/oder eine Reihe von Drähten implementiert sein, die Vorrichtungen für die Zwecke der Kommunikation und/oder Leistungsverteilung miteinander verbinden. Eine solche Backplane kann auch durch optische Signale implementiert sein, beispielsweise durch Faseroptikkabel, die mit entsprechenden optischen Sendern und Empfängern eine Schnittstelle bilden.
  • Bezüglich jeder hierin beschriebenen Software wird ein Durchschnittsfachmann auf diesem Gebiet erkennen, dass eine Vielzahl von Plattformen und Sprachen zum Erzeugen von Software zum Durchführen der hierin aufgezeigten Prozeduren existiert. Das bevorzugte Ausführungsbeispiel der vorliegenden Erfindung kann unter Verwendung jeder einer Vielzahl von Variationen von C implementiert werden, ein Durchschnittsfachmann auf diesem Gebiet wird jedoch auch erkennen, dass die Wahl der genauen Plattform und Sprache häufig durch die Gegebenheiten des tatsächlichen aufgebauten Systems vorgegeben wird, so dass was für einen Systemtyp funktionieren kann, bei einem anderen System nicht effizient ist. Es sollte auch klar sein, dass die Routinen und Berechnungen, die in dieser Erfindung beschrieben sind, nicht darauf beschränkt sind, als Software auf einem Computer oder Digitalsignalprozessor (DSP) ausgeführt zu werden, sondern auch in einem Hardwareprozessor implementiert sein können. Beispielsweise könnten die Routinen und Berechnungen mit Hardwarebeschreibungssprache (HDL) in einer ASIC oder in einem feldprogrammierbaren Gatterarray (FPGA) implementiert sein.
  • Mit besonderer Bezugnahme auf 1 der Zeichnungen ist eine massebezogene Steuerung 100, ein erstes, zweites und n-tes Modul 102, 104, 106, eine Isolatorvorspannungsleistungsquelle 108 und eine Volumenleistungsquelle 110 gezeigt. Die Volumenleistung, wie sie hierin verwendet wird, bezieht sich auf eine Leistungsquelle für eine verteilte Leistungsarchitektur, in der eine oder mehrere Leistungsquellen Leistung für eine Mehrzahl von Leistungslastpunkten liefert. Bei einem alternativen Ausführungsbeispiel kann die Volumenleistung auch die Isolatorvorspannungsleitung liefern. Ein Gehäuse (nicht gezeigt) hält die Steuerung und die Module als eine einzige physikalische Einheit, die vermittels eines Gestells in ein größeres Testsystems eingebaut sein kann. Das Gehäuse umfasst auch eine Backplane 101. Zusätzliche Module können dem Gehäuse hinzugefügt werden, abhängig von dem bestimmten Ausführungsbeispiel des Gehäuses, der Backplane 101 und der Unterstützungsinfrastruktur des spezifischen Ausführungsbeispiels. Die Module 102, 104, 106 können jede Kombination aus einer oder mehreren programmierbaren Leistungsversorgungen, Signalverlaufdigitalisierer, Voltmeter, Signalgeneratoren, Signalanalysatoren oder andere Ein- oder Mehrkanalinstrumente sein. Bei einem spezifischen Ausführungsbeispiel ist zumindest eines der Module, das das Gehäuse besetzt, ein Leistungsversorgungsmodul. Das Leistungsversorgungsmodul umfasst einen ersten und einen zweiten Signalverlaufgenerator für die Steuerung einer Leistungsversorgungsausgangsspannung und -strom und einen ersten und einen zweiten Digitalisierer für die Messung der Leistungsversorgungsausgangsspannung und -strom. Bei einem anderen Ausführungsbeispiel ist zumindest eines der Module, das das Gehäuse besetzt, ein elektronisches Lastmodul zum Aufnehmen der Leistung, die von einer externen Vorrichtung ausgegeben wird.
  • Die Steuerung 100 weist einen eingebetteten Mikroprozessor und Logikschaltungen auf, zum Durchführen von Steuerungsoperationen, die nachfolgend näher beschrieben werden. Die Steuerung 100 weist auch GP-IP, USB- und LAN-Schnittstellen 103 auf, für eine optionale Kommunikation zwischen dem modularen System und einem Computer oder einer anderen externen Hardware. Ein Durchschnittsfachmann auf diesem Gebiet erkennt, dass andere standardisierte Kommunikationsschnittstellen, wie z. B. RS-232 oder IEEE-1394/Firewire optional vorgesehen sein können. Proprietäre und nichtstandardisierte Kommunikationsschnittstellen werden ebenfalls in Betracht gezogen. Obwohl es ferner architektonisch für die Steuerung 100 praktisch ist, massebezogen zu sein, ist klar, dass alternative Ausführungsbeispiele eine andere galvanische Trennungsbarriere zwischen die Steuerung 100 und Schnittstellen 103 einfügen können und es dadurch der Steuerung 100 ermöglichen, bezüglich den geerdeten externen Vorrichtungen zu „schweben", die mit den Schnittstellen 103 verbunden sind, und dadurch eine Einrichtung zum Unterbrechen von Masseströmen zu liefern, die andernfalls zwischen der Steuerung 100 und diesen externen Vorrichtungen fließen können. Noch ein weiteres Ausführungsbeispiel kann das Massebeziehen der Steuerung 100 beibehalten, während eine Trennung in den Schnittstellen 103 vorgesehen ist, um es externen Vorrichtungen zu ermöglichen, zu „schweben". Die beschriebene LAN-Schnittstelle liefert eine Trennung externer Vorrichtungen auf genau diese Weise. Eine serielle Kommunikationsverbindung 112 verbindet jedes Modul 102, 104, 106 mit der Steuerung 100 durch einen Kommunikationsverbindungsisolator 114, der auf jedem Modul 102, 104, 106 angeordnet ist. Die Kommunikationsverbindungstrenner 114 können jeder herkömmliche und geeignete Isolator sein, der für einen Fachmann auf diesem Gebiet vertraut ist und bei einem spezifischen Ausführungsbeispiel einen magnetisch gekoppelten Isolator umfasst, aber kann auch einen Optokoppler, einen Pulstransformator oder eine kapazitiv gekoppelte Vorrichtung umfassen. An einer Modulseite des Isolators 114 ist die Kommunikationsverbindung 112 mit der Modulseitenlogik 116 verbunden, für eine intelligente Kommunikation zwischen der Steuerung 100 und den Modulen 102, 104, 106. Die Modulseitenlogik 116 steuert auch spezifische Modulfunktionen und sendet Status- und Messinformationen an die Steuerung 100 zurück. Die Isolatorvorspannungsleistungsquelle 108 wird über einen Isolatorvorspannungsbus auf der Backplane 101 an jedes Modul 102106 verteilt. Leistung von der Volumenleistungsquelle 110 wird über einen Volumenleistungsbus 118 verteilt, der ebenfalls Teil der Gehäusebackplane 101 ist und durch transformatorgetrennte Gleichsignal/Gleichsignaltyp-Leistungswandler 117 mit jedem Modul 102, 104, 106 verbunden ist. Bei einem bevorzugten Ausführungsbeispiel bestehen galvanisch getrennte Volumenleistungs-Gleichsignal/Gleichsignalwandler 117 aus Transformatoren und zugeordneten Schaltungen, die in jedem Einsteck- bzw. Plug-In-Modul 102, 104, 106 unter gebracht sind. Andere Trennungsvorrichtungen sind annehmbar, abhängig von dem Leistungspegel, der über die galvanische Trennungsgrenze befördert werden muss. Bei einem anderen spezifischeren Ausführungsbeispiel gibt es ein einzelnes Modul, das das Gehäuse besetzt. In diesem Fall kann das einzelne Modul in die Rückebene des Gehäuses eingesteckt sein. Alternativ kann das Eliminieren der Einsteckfähigkeit Kosten zum Herstellen des Systems reduzieren auf Kosten möglicher Erweiterbarkeit und Wiederverwendbarkeit des Moduls in einem anderen System, in diesem Fall kann die „Backplane" eine Mehrzahl von Drähten umfassen, um die Kommunikationsverbindung und Leistungsverteilung zu liefern. Ein Durchschnittsfachmann auf diesem Gebiet wird andere physikalische Implementierungen erkennen, die geeignet sind, um die hierin beschriebene Grundarchitektur zu realisieren.
  • Die Backplane 101 umfasst drei einzelne Systeme; das Leistungsverteilungssystem, das Isolatorvorspannungsleistungsverteilungssystem und das Kommunikationssystem. Das Leistungsverteilungssystem 118 ist in einer Buskonfiguration implementiert und kann Wechselsignal- oder Gleichsignalleistung verteilen, abhängig von der Entwurfsauswahl. Bei einem spezifischen Ausführungsbeispiel liefert das Leistungsverteilungssystem etwa 175 Watt Gesamteingangsleistung bei 48 Volt Gleichspannung pro Modul für bis zu vier Module. Jedes Modul ist von dem Gehäuse, in dem dasselbe gehalten wird, galvanisch getrennt, und nimmt die Leistungsverteilung durch einen Gleichsignal/Gleichsignalwandler 117 auf. Der Gleichsignal/Gleichsignalwandler 117 ist Teil der Modularchitektur und ist durch einen Backplaneverbinder mit dem Leistungsverteilungssystem verbunden, das Teil der Backplane 101 ist. Bei einem spezifischen Ausführungsbeispiel ist der Backplaneverbinder ein Einstücksockelverbinder, der aus einer Gesamtzahl von 26 Stiften auf 100 Tausendstel Zoll Zentren besteht. Genauer gesagt, der Backplanesockelverbinder ist ein TSM-113-03-S-DV, der durch Samtec, Inc., hergestellt und verkauft wird. Ein passendes Modulaufnahmeelement ist auf dem Modul angeordnet, für eine direkte Verbindung mit dem Backplanesockelverbinder und ist bei einem spezifischen Ausführungsbeispiel Teil Nr. 69154-313, hergestellt von FCI/Framatome Connectors Inc. Die Anzahl von Stiften in dem Backplaneverbinder überschreitet die Anzahl von Signalen aufgrund der Gesamtstromtragekapazitätsbeschränkungen des Verbinders. Es gibt beispielsweise eine Gesamtzahl von zehn Stiften, die der +48-V-Leistungsverteilung in jedem Modulverbinder zugewiesen sind. Ein Durchschnittsfachmann auf diesem Gebiet erkennt, dass bei alternativen Ausführungsbeispielen andere Gleichspannungspegel und andere Konfigurationen und Anzahlen von Stiften verwendet werden können. Weil in den Modulen 102, 104, 106 eine galvanische Trennung implementiert ist, gibt es kein Problem mit einer Trennung oder einem Sicherheitsabstand innerhalb des Backplaneverbinders. Bei einem anderen Ausführungsbeispiel, das nicht dargestellt ist, kann die Volumenleistung eine Wechselleistung sein, die durch einen Wechselsignal/Wechselsignaltransformator oder einen Gleichsignal/Wechselsignal-Inverter an jedes Modul verteilt wird, je nachdem. Weil die Transformatoren/Wandler auf dem Modul 102, 104, 106 angeordnet sind, ist es möglich, dass unterschiedliche Module unterschiedliche Typen und Pegel von Volumenleistung empfangen.
  • Das Isolatorvorspannungsleistungsverteilungssystem liefert Leistung an die Kommunikationssystemtrenner, die auf jedem Modul zwischen der Backplane 101 und den Kommunikationsverbindungen 112 angeordnet sind. Das Isolatorvorspannungsleistungsverteilungssystem ist in einer Buskonfiguration implementiert. Das Isolatorvorspannungsleistungsverteilungssystem liefert Leistung an den massebezogenen Abschnitt der Trenner 114, der zwischen der Backplane 101 und der Kommunikationsverbindung 112 angeordnet ist. Modulbezogene Abschnitte der Trenner 114 empfangen Vorspannungsleistung von Leistungsversorgungen, die von der Modulseite der Volumenleistungswandler 117 abgeleitet sind.
  • Mit besonderer Bezugnahme auf 2 der Zeichnungen ist ein Außenanschlussmuster eines spezifischen Ausführungsbeispiels eines Modulaufnahmeelements 250 gezeigt, zum Zusammenpassen mit einem Backplaneverbinder gemäß der vorliegenden Lehre, wobei fünf (5) der Verbinderaufnahmeelemente Leistungsaufnahmeelemente 251 sind, die der Verteilung der 48 Volt Volumenleistung zugeordnet sind, und fünf (5) der Verbinderaufnahmeelemente sind Leistungsrückführaufnahmeelemente 252, die einem Rückführweg für die Volumenleistung zugewiesen sind. Drei (3) der Verbinderaufnahmeelemente sind Kommunikationsverbindungsaufnahmeelemente 253 und weitere drei (3) der Verbinderaufnahmeelemente sind Kommunikationsverbindungsrückkehrwege 254. Außerdem liegt in dem Modulaufnahmeelement 250 ein Lüfterleistungsaufnahmeelement 255 und ein Lüfterleistungsrückführaufnahmeelement 256, eine Isolatorvorspannungsleistung 257 und ein Isolatorvorspannungsleistungsrückführaufnahmeelement 258 und zwei Abschirmaufnahmeelemente 259 vor. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, gibt es viele mögliche Außenanschlussmuster für den Modulverbinder und die Aufnahmeelemente 250, die mit der vorliegenden Lehre übereinstimmen, abhängig von der Anzahl der Module und Leistungsanforderungen des Gesamtsystems.
  • Mit besonderer Bezugnahme auf 3 der Zeichnungen ist ein Blockdiagramm der seriellen Dreileitungskommunikationsverbindung 112 zwischen jedem Modul 102, 104, 106 und der Steuerung 100 gezeigt. Jede Kommunikationsverbindung 112 liefert die Kommunikationsinfrastruktur von der Steuerungsseitenlogik 100 und der Modulseitenlogik 116. Das serielle Dreileitungskommunikationssystem umfasst eine Konfiguration, bei der es eine eigens vorgesehene Kommunikationsverbindung zwischen der Steuerung 106 und jedem der Bestimmungsortmodule 102, 104, 106 gibt. Wie es in vorhergehenden Absätzen allgemeiner erwähnt wurde, ist jede Leitung der Kommunikationsverbindung 112 von dem Backplaneverbinder und der Backplane 101 galvanisch getrennt. Jede serielle Kommunikationsverbindung 112 umfasst eine Datenausgabeleitung 104, eine Dateneingabeleitung 106 und eine Taktleitung 208. Jede Taktleitung 208 ist von einer gemeinsamen Taktquelle 210 abgeleitet und trägt ein Taktsignal, das die Steuerung 100 mit den Modulen 102, 104, 106 verbindet. Jedes Taktsignal ist unabhängig von allen anderen Taktsignalen, aber alle Taktsignale sind von der gleichen Taktquelle 210 in der Steuerung 100 abgeleitet, um eine synchrone Operation zwischen den Modulen 102, 104, 106 zu liefern. Das Taktsignal kann nach Wunsch selektiv gesperrt werden, wie es hierin beschrieben ist, aber aktivierte Taktsignale sind alle mit der gemeinsamen Taktquelle 210 synchronisiert. Bei einem spezifischen Ausführungsbeispiel verwendet das serielle Kommunikationssystem eine „hoch wahre" Logikübereinkunft. Ein „wahr" ist definiert als eine logische „1", was einem hohen Spannungszustand in Hardware entspricht. Beispielsweise ist bei der Verwendung einer 3,3-V-Logik eine logische „1" ein Spannungszustand von mehr als 2,4 Volt.
  • Bei einem spezifischen Ausführungsbeispiel umfasst die Backplane 101 gedruckte Leiterbahnen auf einer gedruckten Schaltungsplatine. Die Datenausgabeleitung 204, die Dateneingabeleitung 206 und die Taktleitungen 208 sind Leiterbahnen der gedruckten Schaltungsplatine mit einer gesteuerten Impedanz von im Wesentlichen 75 Ohm +/– 10 %. Die gesteuerten Impedanzleiterbahnen werden bevorzugt, um eine hohe Datenratenübertragung über die Backplane 101 zuverlässig zu erreichen und müssen für ein Ausführungsbeispiel, das eine langsamere Datenrate implementiert, nicht notwendig sein. Signalrückführwege können unter Verwendung von einer oder mehreren gemeinsamen Schichten einer leitfähigen Ebene in der gedruckten Schaltungsplatine implementiert werden, die die Backplane 101 umfasst.
  • Die Grundgerätsteuerung 100 kommuniziert mit jedem Modul 102, 104, 106 unter Verwendung von Sendedatenpaketen, die über die Datenausgabeleitung 204 gesendet werden. Jedes Modul 102, 104, 106 kommuniziert mit der Grundgerätsteuerung 100 unter Verwendung von Empfangsdatenpaketen, die über die Dateneingabeleitung 206 gesendet werden. Bei einem spezifischen Ausführungsbeispiel definiert die Steuerung alle 5,12 Mikrosekunden einen Kommunikationsrahmen. Die Grundgerätsteuerung 100 leitet die Übertragung von einem Sendepaket an dem Beginn jedes Kommunikationsrahmens ein. Die Sendepakete sind einmalig und sind modulabhängig, werden aber an jedes Modul 102, 104, 106 zur gleichen Zeit gesendet und mit dem gleichen Taktsignal synchronisiert. Falls eines oder mehrere Module 102, 104, 106 ein Empfangspaket erzeugt, wird dasselbe während dem gleichen Kommunikationsrahmen an die Grundgerätsteuerung 100 gesendet, und alle Module 102, 104, 106 senden ihre entsprechenden Empfangspakete zur gleichen Zeit und synchronisiert mit dem gleichen Taktsignal. Während jedem Kommunikationsrahmen wird ein Sendepaket an jedes Modul gesendet. Bei einem spezifischen Ausführungsbeispiel wird ebenfalls während jedem Kommunikationsrahmen ein Empfangspaket an die Grundgerätsteuerung 100 gesendet, aber alternative Ausführungsbeispiele, bei denen Empfangspakete an einem ganzzahligen Teilvielfachen von Kommunikationsrahmen gesendet werden, liegt ebenfalls innerhalb des Schutzbereichs der vorliegenden Lehre. Sendepaketdatenbits ändern den Zustand auf ansteigenden Flanken des Grundgerätsteuerungstakts 208, während Empfangspaketdatenbits, wenn sie in der Grundgerätsteuerungslogik empfangen werden, ihren Zustand an abfallenden Flanken des Takts 208 ändern. Bei einem spezifischen Ausführungsbeispiel ist der Halbtaktzykluszeitgebungsversatz durch Invertieren des seriellen Taktsignals in den Modulen 102, 104, 106 implementiert. Mit weiterer Bezugnahme auf 3 der Zeichnungen ist ein Ausführungsbeispiel einer Logik zum Implementieren des Taktversatzes zwischen den Sende- und Empfangspaketen gezeigt. Das Taktsignal 208 von der Grundgerätsteuerung 200 ist an der Modulseite bei 211 invertiert. Alle Modulkommunikationslogik verwendet das resultierende invertierte Taktsignal 212. Das Steuerungsseitentaktsignal 208 taktet Steuerungsseitenschieberegister 230 zum Senden und Empfangen einzelner Bits, die die Sende- und Empfangspakete bilden. Gleichartig dazu taktet das invertierte Taktsignal 212 auf der Modulseite Modulseitenschieberegister 214 zum Empfangen und Senden einzelner Bits, die die Empfangs- und Sendedatenpakete bilden. Folglich werden Daten auf der Modulseite an der ansteigenden Flanke des invertierten Takts 212 und der abfallenden Flanke des Grundgerätsteuerungstakts 208 getaktet.
  • Jedes Sende- und Empfangspaket hat eine feste Bitlänge. Abhängig von bestimmten Beschränkungen bezüglich der Datenfeldstruktur des Pakets ist der Dateninhalt jedes Sendepakets typischerweise einmalig für jedes Modul. Ein Ausnahmetyp zu dieser allgemeinen Regel sind Fälle, wo Auslösesignale oder Befehle parallel an mehrere Module gesendet werden, um eng synchronisierte Aktionen in den mehreren Modulen zu erreichen. Bei einem spezifischen Ausführungsbeispiel kann jedes Modul 102, 104, 106 unabhängig von anderen Modulen arbeiten, aber ein Teilsatz oder alle mehreren Module können auch auf eine eng synchronisierte Weise arbeiten, je nach Wahl des Systemnutzers, ohne Leistungsfähigkeitskompromisse.
  • Jedes Modul kommuniziert mit der Steuerung unter Verwendung der Dateneingabeleitung 206 mit Empfangsdatenpaketen. Die Logik in jedem Modul leitet die Übertragung von einem Empfangsdatenpaket während dem gleichen Kommunikationsrahmen ein. Die Empfangspaketdateninhalte sind normalerweise auch einmalig für jedes Modul, erneut abhängig von bestimmten Beschränkungen bezüglich der Feldstruktur. Folglich empfängt die Steuerung ein Empfangsdatenpaket für jedes Modul, mit dem dasselbe in einem System während jedem Kommunikationsrahmen kommuniziert. Das Empfangsdatenpaket ist relativ zu dem Beginn des Sendedatenpakets zeitlich um zwei serielle Taktperioden verzögert. Jedes Sende- und Empfangsdatenpaket ist 64 Bits lang. Die resultierende Bitrate ist 12,5 Mbps, Vollduplex (oder 80 nsek/Bit). Bei einem spezifischen Ausführungsbeispiel wird es daher bevorzugt, dass die Datentrenner 114 bemessen sind, um zumindest die Datenraten unterzubringen, die in dem System vorliegen. Falls höhere Datenraten gewünscht sind, können schnellere Datenisolationsvorrichtungen verwendet werden. Die Sendepaketdatenbits ändern den Zustand auf den ansteigenden Flanken des Takts, während die Empfangspaketdatenbits den Zustand auf abfallenden Flanken des Takts ändern. Die Halbtaktzykluszeitgebung kann durch Invertieren des Taktsignals in einer Logik implementiert werden, die in den Modulen 102, 104, 106 angeordnet ist. Ein spezifisches Ausführungsbeispiel der Kommunikationssystemlogik verwendet eine hoch wahre Logikübereinkunft. Ein „wahrer" Zustand, der als logische „1" definiert ist, entspricht einem hohen Spannungszustand in der Hardware. Beispielsweise ist V > 2,4 V für 3,3 V Logikvorrichtungen.
  • Mit besonderer Bezugnahme auf 3 und 4 der Zeichnungen ist ein Zeitgebungsdiagramm für die Sende- und Empfangspakete gezeigt. Pfeile, die in dem Zeitgebungsdiagramm des Takts 208 gezeigt sind, stellen ansteigende Flanken des Mastertakts dar, und die Pfeile, die in dem Zeitgebungsdiagramm für den invertierten Takt 212 gezeigt sind, stellen ansteigende Flanken des Komplements des Takts 208 dar, die mit den abfallenden Flanken des Grundgerättakts 208 zusammenfallen. Die Steuerung 100 leitet ein Sendepaket 354 ein, mit dem Beginn des Rahmenbits 300 als einer logischen „1" auf der ansteigenden Flanke des Steuertakts 208. Die Modulseitenlogik 102 erkennt den Beginn des Rahmenbits 300 an der ansteigenden Flanke des invertierten Takts 208, der relativ zu der ansteigenden Flanke des Takts 208 zeitlich einen halben Zyklus später ist. Ein Verzögerungselement 215 fügt eine Ein(1)-Zyklus-Verzögerung des invertierten Takts 208 ein, und an der nächsten ansteigenden Flanke des invertierten Takts 212 wird ein erstes Bit des Empfangspakets 308 auf der Dateneingabeleitung 206 präsentiert. Die nächste ansteigende Flanke des Takts 208 speichert dann das Empfangspaketbit in einem Empfangspaketschieberegister 213 zwischen, das zwei volle Zyklen des Grundgerätsteuerungstakts 208 nach dem Beginn des Rahmens 300 in dem Sendepaket 354 ist. Folglich sind die Sende- und Empfangspakete 354, 358 mit dem gleichen Taktsignal 208 synchronisiert und zeitlich relativ zueinander um zwei vollständige Zyklen des Grundgerättakts 208 verzögert.
  • Bezüglich der hierin beschriebenen Zeitgebungsversätze erkennt ein Durchschnittsfachmann auf diesem Gebiet, dass es eine Vielzahl von Einrichtungen gibt, durch die die Zeitversätze erhalten werden können. Darüber hinaus ist auch klar, dass die Ausbreitungsverzögerungen in dem seriellen Kommunikationsweg, insbesondere diejenigen, die den Trenner 114 zugeordnet sind, abhängig von dem bestimmten Ausführungsbeispiel variieren können. Daher folgt, dass die Auswahl aktiver Taktflanken und die absichtliche Einfügung von Verzögerungselementen geändert werden kann, um die hierin beschriebenen Zeitversätze zu erreichen oder um andere Zeitversätze zu erreichen, die für das spezifische Ausführungsbeispiel als angemessen angesehen werden.
  • Die Grundgerätsteuerung 100 beendet das Sendepaket mit einem 4-Bit-Resynchronisationsintervall 310, bevor das nächste Sendepaket 354 mit einem weiteren Beginn des Rahmenbits 300 eingeleitet wird. Mit besonderer Bezugnahme auf 5 und 6 der Zeichnungen sind eine Logik und Zeitgebungsdiagramme gezeigt, die für die Kommunikationsrahmenresynchronisation verwendet werden. Diese Logik ist in jedem Modul 102, 104, 106 angeordnet und liefert eine Synchronisation zwischen Sendepaketen 354 der Grundgerätsteuerung 100, und den Empfangsdatenpaketen 158 der Module 102, 104, 106. Der Mechanismus verlässt sich auf die Tatsache, dass die Gesamtrahmenperiode, die Zeitperiode zwischen aufeinander folgenden Sendepaketen 354, zumindest eine Taktperiode länger ist als die Rahmendatenperiode, die Zeitperiode, in der das Sendepaket relevanten Dateninhalt enthält. Bei einem spezifischen Ausführungsbeispiel ist die Rahmendatenperiode insgesamt 60 Bits, und vier (4) Bits weniger als die Kommunikationsrahmenperiode, die insgesamt 64 Bits ist, wobei die zusätzlichen vier (4) Bits das Rahmenresynchroni sationsintervall 310 sind. Die Rahmensynchronisationsschaltung erzeugt einen Rahmensynchronisationspuls 808 mit einer ansteigenden Flanke an dem Beginn des Rahmenbits 300. Ein Rahmenzähler 800 empfängt den invertierten Takt 212. Auf das Erreichen eines Endzählwerts von 60 hin setzt der Rahmenzähler 800 ein Endzählwertsignal 802, das in ein Zählwert-Freigabe-ODER-Gatter 806 zurückgeführt wird. Das Sendedatenpaket 354 wird auch in das Zählwert-Freigabe-ODER-Gatter 806 eingegeben. Folglich besteht während dem Rahmenresynchronisationsintervall 310 das Sendedatenpaket nur aus logischen Nullen, und der Ausgang des Zählwert-Freigabe-ODER-Gatters 806 deaktiviert weiteres Zählen des Rahmenzählers 800. Wenn das Endzählwertsignal 802 niedrig ist, ist das Rahmensynchronisationslogikgatter 804 freigegeben, um die nächste ankommende logische „1" in dem Sendepaket 354 zu erfassen, was als Beginn des Rahmenbits 300 interpretiert wird, und das Rahmensynchronisationssignal 808 auf eine logische „1" einstellt. Außerdem führt der Beginn des Rahmenbits 300 in dem Sendepaket auch dazu, dass eine logische „1" an dem Ausgang des Zählwert-Freigabe-Gatters 806, aktiviert wird. Zu diesem Zeitpunkt „rollt" der Rahmenzähler 800 „über" zu einem Zählwertzustand von 0, leitet einen neuen Zählwert ein und das Endzählwertsignal 802 ist deaktiviert und ermöglicht es dem Rahmenzähler 800, Flanken des invertierten Takts 212 bis zu dem nächsten Rahmenresynchronisationsintervall 310 zu zählen. Identische Schaltungen in jedem Modul 102, 104, 106 sprechen daher parallel auf den Beginn der Rahmenbits 300 an, die durch die Grundgerätsteuerung 100 parallel zu jedem Modul 102, 104, 106 übertragen werden. In einigen Fällen kann es wünschenswert sein, dass ein Modul von einem gewissen Bit in dem Sendedatenpaket 304 ausgelöst wird, das nicht der Beginn des Rahmenbits 300, sondern ein anderes Bit ist. In diesem Fall kann das Rahmensynchronisationssignal 808 in Verbindung mit einer Decodierschaltung (nicht gezeigt) verwendet werden, die einen spezifischen Zählwert des Rahmenzählers 800 nach dem Beginn des Rahmenbits 300 identifiziert. Dies ermöglicht vorteilhafterweise die Synchro nisation mit dem Beginn des Rahmenbits 300, während auch eine Flexibilität geliefert wird, um tatsächlich zu jedem Punkt innerhalb des Sendedatenpakets 354 auszulösen.
  • Obwohl dies nicht bei allen Ausführungsbeispielen gemäß den vorliegenden Lehren erforderlich ist, kommunizieren bei einem spezifischen Ausführungsbeispiel alle Module 102, 104, 106 mit der gleichen Datenrate, unabhängig von der Datenrate, die für die Logik in dem Modul 102, 104, 106 verwendet wird. Geringere Moduldatenraten können sich ergeben, weil es keine Anforderung für höhere Datenraten gibt oder weil durch eine bestimmte Modulimplementierung Leistungsfähigkeitsbeschränkungen auferlegt werden, die die Verwendung von Datenraten erfordert, die geringer sind als die volle Rahmenrate. Beispielsweise können die Empfangsdatenpakete 358 nur in jedem vierten Rahmen mit Informationsinhalt besetzt sein, falls die Fähigkeit des Logikteilsystems eines bestimmten Modus praktische Beschränkungen auferlegt auf die Fähigkeit des Moduls, Daten zu erzeugen und zu senden. Gleichartig dazu können Entwurfs- oder Definitionseinzelheiten für ein bestimmtes Modul zu der Implementierung von geringeren oder variablen Datenraten führen. Empfangsdatenpakete 358 ohne Informationsinhalt in bestimmten Feldern werden durch die Steuerung 200 empfangen, und diese können durch Funktionen höherer Ebene ignoriert werden, die an Daten innerhalb dieser Felder arbeiten. Es ist auch möglich, Ausführungsbeispiele von Modulen mit unterschiedlichen Rahmenraten für unterschiedliche Modulklassen zu verwenden. Bei solch einem Ausführungsbeispiel ist es vorteilhaft, aber nicht notwendig, dass die langsameren Rahmenraten ganzzahlige Teilvielfache der Steuerungskommunikationsrahmenrate sind.
  • Die Steuerungskommunikationsrahmenrate legt eine maximale synchrone Messungsdigitalisierungsrate oder eine digitale Syntheserate ohne Datenpuffern fest, die in dem Modul 102, 104, 106 vorgesehen ist. Zu Erklärungszwecken durch Darstellung können drei Module mit jeweils zwei Messungsdaten quellen, die 200k Datenpunkte pro Sekunde mit Umwandlungsauflösungen von 18 Bit oder weniger für jede Quelle liefern, ohne lokales Puffern unterstützt werden. Höhere Auflösungsumwandlungen oder schnellere Umwandlungen können ohne lokales Puffern unterstützt werden, falls nur eine Datenquelle verwendet wird. Höhere effektive Umwandlungsraten oder zusätzliche gleichzeitige Quellen können für niedrigere Umwandlungsauflösungen unterstützt werden durch Packen von Rücksendedatenwörtern von mehreren Quellen in jedes von zwei 18-Bit-Synchronmessungsempfangsdatenfeldern, die für Empfangsdatenpakete 358 definiert sind. Innerhalb der Beschränkungen, die durch die Bitrate, die synchronen Datenfeldgrößen und die mögliche Verwendung von zugeordneten reservierten Feldern auferlegt werden, gibt es eine Vielzahl von Optionen zum Verwalten der Übertragung von Daten zu oder von mehreren Quellen bei verschiedenen Umwandlungsraten.
  • Mit besonderer Bezugnahme auf 7 der Zeichnungen ist ein Diagramm von Datenfelddefinitionen in einer Datenstruktur eines Sendepakets 354 gezeigt. Bei einem spezifischen Ausführungsbeispiel enthält das Sendedatenpaket 354 eine Gesamtzahl von 60 Bits, die asynchrone Befehle, Daten und Auslöserbits darstellen. Zusätzlich zu den 60 Sendepaketbits gibt es zusätzliche vier (4) Bits 310, die zum Sicherstellen der Resynchronisation aller Module 102, 104, 106 zu der gleichen Taktflanke 300, wie sie hierin beschrieben ist, verwendet werden. Allen Sendepaketen 354 gemeinsam ist der Beginn des Rahmenbits 300 in der Bit-0-Position. Bei einem spezifischen Ausführungsbeispiel ist der Beginn des Rahmenbits 300 auf eine logische „1" eingestellt, um die Synchronisation zwischen der Steuerung 100 und den Modulen 102, 104 oder 106, an die das Sendepaket gerichtet wird, wiederherzustellen. Die Resynchronisationsperiode 310 stellt sicher, dass alle Modulseitenlogiksysteme auf die gleiche Taktflanke ansprechen, wenn der Anfang eines seriellen Kommunikationsrahmens erkannt wird. Dieser Mechanismus wiederum stellt sicher, dass sich die Synchronisati onsgranularität auf die serielle Taktperiode bezieht, die bei einem spezifischen Ausführungsbeispiel 80 nsek ist, anstatt auf die Rahmenperiode, die bei einem spezifischen Ausführungsbeispiel 5,12 μs ist. Die Synchronisation mit einer spezifischen Taktflanke wird bei dem Systemeinschalten festgelegt und nachfolgend ohne Unterbrechung, bis zu einem Zeitpunkt beibehalten, zu dem das System abgeschaltet wird. Während dem normalen Betrieb sind die vier Rahmenresynchronisationsbits 310 nicht notwendig, aber dieselben liefern einen Fehlerspielraum, der die Resynchronisation an jedem Beginn des Rahmenbits 300 ermöglicht, sollten unerwartete Fehler auftreten, die die Rahmensynchronisation beeinträchtigen. Die Rahmensynchronisationslogik, die allen Modulseitenlogiksystemen gemeinsam ist, liefert jedoch eine Einrichtung nicht nur zum Festlegen der Synchronisation der Module 102, 104, 106 beim Einschalten, sondern auch, bei Bedarf, zum Wiederherstellen der gemeinsamen Rahmensynchronisation mit einer einzelnen Taktflanke in allen Modulseitenlogiksystemen. Eine Rahmensynchronisation wird erreicht, indem die serielle Datenausgabeschaltungsanordnung in dem Logikblock 210 die seriellen Datensignale auf der Datenausgabeleitung 204 für alle Module 102, 104, 106 zu einem „niedrigen" Zustand zwingt, für eine Zeitdauer, die länger ist als die Länge der relevanten Daten in den Sendepaketen 354. Auf diese Weise hat die Rahmensynchronisationsschaltung jedes Moduls (in 5 gezeigt und hierin beschrieben) ihren „Endzählwert"-Zustand erreicht und ist daher bereit, synchron eine Taktflanke des Beginns des Rahmenbits 300 zu erfassen, das am Anfang eines neuen seriellen Kommunikationsrahmens gleichzeitig an alle Module 102, 104 und 106 übertragen wird.
  • Ebenso gemeinsam für alle Sendepakete 354 sind ein erstes und ein zweites Steuerungsauslösebitfeld 302, 304 in der Bitposition 1 und 33 des Sendepakets 354. Jedes Auslösebit 1, 33 ist in dem Sendepaket 354 positioniert, um Auslöser, die durch die Steuerung 100 erfasst werden, an relevante Module 102, 104 und/oder 106 zu übertragen, mit einer maximalen Unsicherheit von der Hälfte des Kommunikationsrahmenintervalls, das bei diesem spezifischen Ausführungsbeispiel 2,56 μs ist. Obwohl die Auslöseverzögerungsunsicherheit gleich einer Hälfte der Rahmenperiode ist, werden Auslöser, die an mehrere Module 102, 104, 106 parallel in der gleichen Rahmenperiode und in der gleichen Auslöserbitposition in dem Rahmen gesendet werden, innerhalb 80 ns oder weniger miteinander synchronisiert.
  • Ein Leistungsfehlerbit 306 ist an dem Bit 32 positioniert, und das Systemfehlerbit 308 ist an dem Bit 34 positioniert. Alle verbleibenden Bitpositionen sind modulspezifisch, d. h. definiert auf der Basis des Moduls, das das bestimmte Sendepaket empfängt, obwohl bei einem bestimmten Ausführungsbeispiel bestimmte Module bestimmte Bitpositionen auf ähnliche Weise definieren können. Bei einer bestimmten Implementierung stellen die Bits 2 – 13 ein Adress-/Befehlsfeld 312 dar, die Bits 14 – 31 stellen ein Datenfeld 314 dar, die Bits 35 – 43 sind für modulspezifische Funktionen 316 und die Bits 44 – 59 sind reserviert für Daten, bei denen die Zeitgebung ihrer Übertragung mit der Zeitgebung des seriellen Kommunikationsrahmens gekoppelt ist. Darstellende Beispiele von Daten, bei denen die Zeitgebung ihrer Übertragung mit dem seriellen Kommunikationsrahmen gekoppelt ist, sind Signalverlaufsdigitalisierung oder Synthese, wo es wünschenswert ist, eine definierte Abtastrate (Abtasttakt) zu haben, die von einer Hochqualitätstaktquelle abgeleitet wird. Bei einem spezifischen Ausführungsbeispiel ist die Abtasttaktquelle der Beginn des Rahmenbits 300 oder eines oder mehrerer der ersten und zweiten Steuerungsauslösebits 302, 304, oder ein anderes Signal, das von dem Anfang des Rahmenbits 300 abgeleitet und synchronisiert ist. Falls es keinen Informationsinhalt zum Besetzen von einem oder mehreren der verschiedenen Felder gibt, weist ein bestimmtes Ausführungsbeispiel Nullen zu Bitpositionen in diesen Feldern zu, beispielsweise um einen Nulloperations- (NOP-) Befehl für das Befehlsfeld 312 darzustellen.
  • Eine Position der Auslöserbits in dem Sendepaket 354 und die Taktrate bestimmen Auslöserzeitgebungscharakteristika, wie z. B. Latenzzeit und Jitter. Bei einem spezifischen Ausführungsbeispiel ist die Auslöserlatenzzeit etwa 2,56 μs Maximum für eine 5,12-μs-Rahmenrate für die offenbarten Bitdefinitionen und die Auslöserbitpositionen in dem Senderpaket 354. Jitter für mehrere Auslöseereignisse ist auch etwa 2,56 μs. Verschiedene Sekundäreinflüsse, wie z. B. Genauigkeitstoleranzen an dem Takt und auch kleinere Beiträge von Logikzeitgebungsverzögerungen und ausbreitungsverzögerungsinduzierten Versätzen beeinträchtigen die tatsächliche Auslöserlatenzzeit und Jitter von Paket zu Paket. Folglich ist die Auslöserlatenzzeit 2,56 μs im schlimmsten Fall, unter der Annahme von null Logikverzögerungen, idealer Taktgenauigkeit und keinem Versatz. Genauer gesagt, zusätzliche Verzögerungen und/oder Jitter können in der Steuerung 100 oder dem Modul 102, 104, 106 bewirkt werden. Beispielsweise gibt es wahrscheinlich Hardwareverzögerungen, die zwischen dem Erkennen eines externen Auslöserereignisses durch die Steuerung 100 und der nachfolgenden Übertragung von Auslöserbits 302 oder 304 an eines oder mehrere der Module 102, 104, 106 bewirkt werden. Weitere Verzögerungen und/oder Jitter können in der Logik 202 bewirkt werden, die in dem Modul 102, 104, 106 verwendet wird. Das 2,56-μs-Beispiel ist daher der Einfluss des Kommunikationssystems im schlechtesten Fall und der beste Fall, der für das System als Ganzes möglich ist. Es ist auch möglich, die beiden Auslöserfelder als getrennte und einzelne Auslöser zu behandeln, in diesem Fall ist die Auslöserlatenzzeit und Verzögerung der Wert des seriellen Kommunikationsrahmens oder zweimal die Werte, die durch Behandeln der beiden Felder als eine gemeinsame Auslöserquelle für Operationen in der Modullogikfunktion erreicht werden.
  • Ereignisse, die mit dem Beginn des Rahmenbits 300 synchronisiert sind, oder mit beliebigen Bitpositionen in dem Sendepaket 354, können bessere Zeitgebungs- und Jittereigenschaften haben als die Auslöserbits. Als ein Beispiel kann eine Analog-/Digital-Abtastung und Umwandlung mit dem Beginn des Rahmenbits 300 synchronisiert sein, um einen Abtastwert-zu-Abtastwert-Zeitgebungsjitter von weniger als 80 nsek zu erreichen. Ausführungsbeispiele, die Datenraten von mehr als 5,12 μs verwenden, können noch geringere Werte für Zeitgebungsjitter erreichen. Beispielsweise weniger als 40 nsek für eine Taktquelle von 25 MHz. Diese niedrigeren Werte von Jitter bezüglich eines einzelnen Moduls oder zwischen mehreren Modulen kann erreicht werden zum Auslösen von Ereignissen durch Speichern des Empfangs des Auslösers in der Modullogik und dann Übertragen des Auslösers synchron mit einem definierten Paketereignis, wie z. B. dem Rahmensynchronisationsbit 300.
  • Besondere Bezugnahme wird auf das Leistungsfehlerbit 306 genommen, das in 7 der Zeichnungen gezeigt ist. Wenn die Steuerung 100 eine Leistungsfehlerbedingung an dem Volumenleistungssystem 110 erfasst, setzt dieselbe das Leistungsfehlerbit 306 auf eine logische „1" in dem nächsten Sendepaket 350. Die Module 102, 104, 106 leiten eine geeignete Leistungsfehlerantwort ein, auf den Empfang des Leistungsfehlerbits 306 in dem Sendepaket 354 hin. Das Leistungsfehlerbit 306 bleibt wahr, außer und bis das Volumenleistungsverteilungssystem zu normalen Betriebsgrenzen zurückkehrt.
  • Besondere Bezugnahme wird auf das Systemfehlerbit 308 genommen, das ebenfalls in 7 der Zeichnungen gezeigt ist. Das Systemfehlerbit 308 wird gesetzt bzw. eingestellt, wenn eine systemweite Antwort angemessen ist. Falls bei einer spezifischen Anwendung der vorliegenden Lehren eines der Module einen Fehler erfasst, der eine Benachrichtigung an andere Module rechtfertigt, sendet das betreffende Modul in einem Empfangspaket 358 eine Anzeige an die Steuerung 100. Die Steuerung 100 setzt dann das Systemfehlerbit 308 in dem Stromsendepaket 354, d. h. das Sendepaket 354, das in der gleiche Rahmenperiode gesendet wird und das Empfangspaket 358, das die Fehlerbenachrichtigung geliefert hat. Der Empfang durch ein Modul 102, 104, 106 des Systemfehlerbits 308 in dem aktuellen Empfangspaket 358 bewirkt, dass das Empfangsmodul eine schützende Aktion einleitet. Das Systemfehlerbit 308 wird daher verwendet, um die Erfassung der Fehlerbedingungen in einem oder mehreren der Module 102, 104, 106 zu kommunizieren, die Schutzantworten von den verbleibenden Modulen 102, 104, 106 erfordern können. Aufgrund der relativen Zeitgebung der Sende- und Empfangspakete 354, 358 und der relativen Positionierung der hervorstehenden Bits in den jeweiligen Paketen, treten der Empfang der Fehlerbenachrichtigung und das Weiterleiten der Benachrichtigung tritt in einem einzigen Rahmen auf. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, ermöglicht dies eine schnelle systemweite Antwort auf einen Fehler, der in einem einzigen Modul erfasst wurde, während gleichzeitig eine galvanische Trennung zwischen den Modulen 102, 104, 106 und zwischen den Modulen und der Steuerung 100 geliefert wird.
  • Bei einem spezifischen Ausführungsbeispiel und mit einer weiteren Bezugnahme auf 7 der Zeichnungen liefern das Adress-/Befehlsfeld 312 des Sendepakets 354 und das Datenfeld 314 des Sendepakets 354 einen Mechanismus zum Senden von Befehlen von der Steuerung 100 an die Module 102, 104, 106. Bei dem spezifischen Ausführungsbeispiel sind diese Felder als solche für alle Module 102, 104, 106 definiert, und eine Mehrzahl von unterschiedlichen Modulen verwenden einen ähnlichen Teilsatz der gleichen Befehlscodes. Ein Durchschnittsfachmann auf diesem Gebiet erkennt jedoch von einem genauen Durchlesen der vorliegenden Offenbarung, dass gemeinsame Bitpositionen und Befehlscodes für das Adress-/Befehlsfeld 312 des Sendepakets 354 nicht erforderlich sind, um ein Ausführungsbeispiel gemäß den vorliegenden Lehren zu implementieren.
  • Mit besonderer Bezugnahme auf 8 der Zeichnungen ist ein Diagramm einer allgemeinen Struktur eines Empfangsdatenpakets 358 gezeigt. Die Bitposition 26 des Empfangspakets 358 ist als das Schnellschutzfeld 412 definiert und bezieht sich auf das Systemfehlerfeld 308 des Sendepakets 354. Genauer gesagt, wenn die Steuerung 100 in dem Schnellschutzfeld 412 einen logisch wahren Wert empfängt, kann die Steuerung unmittelbar das Systemfehlerfeld 308 des Sendepakets 354, das in dem gleichen Rahmen gesendet wird wie das Empfangspaket 358, das das logische Wahr in dem Schnellschutzfeld empfängt, auf einen Wert von „1" oder einen logisch wahren Wert setzen. Aufgrund der relativen Zeitgebung und des Versatzes zwischen dem Sende- und dem Empfangspaket 354, 358 empfängt die Steuerung 100 den Wert in dem Schnellschutzfeld 412, bevor dieselbe das Bit sendet, das als das Systemfehlerfeld 308 bestimmt ist. Eine Logik in der Steuerung 100 ist in der Lage, das Schnellschutzfeld 412 des Empfangspakets 358 zu empfangen und zu decodieren, und einen wahren Wert in das Systemfehlerfeld 308 des Sendepakets 354 zu verschieben, bevor der Rest des Sendepakets, der das Systemfehlerfeld 308 umfasst, gesendet wird. Folglich kann ein Fehler in jedem der Module innerhalb einer Periode erfasst werden, die etwas länger ist als eine Rahmenperiode, um genau zu sein, 69 Bitperioden. Außerdem kann jedes Modul 102, 104, 106 individuell einen oder mehrere verfügbare Zustände definieren, die, wenn sie erfasst würden, das Schnellschutzfeld 412 einstellen würden. Bei jeder spezifischen Anwendung kann ein Benutzer programmatisch keinen der verfügbaren Zustände, einen Teilsatz der verfügbaren Zustände oder alle der verfügbaren Zustände freigeben, um ferner zu definieren, welcher der verfügbaren Zustände arbeiten würde, um das Schnellschutzfeld 412 zu jedem Zeitpunkt zu setzen. Das Modul kann jede Anzahl von Fehlerzuständen aufweisen. Eine Logik in dem Modul kann selektiv einen oder mehrere der Fehlerzustandsstatusindikatoren aktivieren. Das Schnellschutzbitfeld 412 reflektiert die logische OR-Operation von jedem der freigegebenen Fehlerzustände. Eine programmierbare Torsteuerungs logik in der Steuerung 100 ermöglicht eine selektive Verteilung der „wahren" schnellen Schutzbits 412, die durch eines der Module 102, 104, 106 gesetzt werden, an ein oder mehrere andere Module 102, 104, 106, gemäß den Wünschen des Systemnutzers. Ferner ermöglicht es diese Torsteuerungslogik Systemnutzern, eine oder mehrere „Gruppen" von Modulen zu definieren, die das Vorliegen eines Fehlerzustands oder von Fehlerzuständen, angezeigt durch das Setzen der Schnellschutzbits 412 auf wahr, an andere Module in der definierten Gruppe kommunizieren können. Die Erfassung, Übertragung, der Empfang und die Antworten auf erfasst Fehlerzustände können in mehreren Gruppen, die so definiert sind, gleichzeitig auftreten. Darüber hinaus kann jedes Modul in einer definierten Gruppe die „Quelle" eines erfassten Fehlerzustands oder erfasster Fehlerzustände sein, während alle anderen Module in der definierten Gruppe die „Empfänger" der Anzeige sein können, dass ein Fehlerzustand, der eine Antwort erfordert, erfasst wurde. Insbesondere kann ein Benutzer eine Torsteuerungslogik in der Grundgerätsteuerung 100 während der Ausführungszeit programmieren, um selektiv auf ein empfangenes „Wahr" in dem Schnellschutzfeld 412 anzusprechen, abhängig davon, welches Modul das Schnellschutzbit gesetzt hat und davon, welche Module als „Empfänger" ausgewählt werden sollen. Im einfachsten Fall kann die Steuerung 100 alle Torsteuerungen des Schnellschutzbitfelds von einem oder mehreren der Module 102, 104, 106 deaktivieren. In einem anderen Fall kann die Steuerung 100 Antworten auf ein „Wahr", das in dem Schnellschutzbitfeld 412 von einem spezifischen Modul durch Torsteuern dieses Bits identifiziert wird, freigeben, um das Einstellen des Systemfehlerfelds 308 auf „wahr" in dem nächsten Sendepaket 354 für einen Teilsatz der vorliegenden Module 102, 104, 106 zu ermöglichen. Der Teilsatz der Module, die das „wahre" Systemfehlerfeld 308 empfangen, kann anders definiert sein, abhängig davon, welches der Module 102, 104 oder 106 das Schnellschutzfeld 412 seines Empfangspakets 358 „wahr" eingestellt hat. Das Einstellen des Systemfehlerfelds 308 ansprechend auf den „wahren" Wert in dem Schnellschutzfeld 412 liefert die schnellste Antwort eines Moduls 102, 104 oder 106 auf ein Ereignis in einem anderen Modul 102, 104 oder 106. Als ein langsamere Alternative kann die Steuerung 100 auch auf ein „wahres" Schnellschutzfeld 412 antworten, durch Ausgeben eines spezifischen Befehls an eines oder mehrere der Module. Weil die Torsteuerungslogik in der Steuerung 100 während der Ausführungszeit programmiert werden kann, können die Definitionen, wie die Steuerung 100 antworten soll, zu jeder Zeit geändert werden. Außerdem können die Module 102, 104, 106 konfiguriert sein, um auf eine Anzahl von Weisen auf den Empfang eines „wahren" Systemfehlerfelds 308 zu antworten. Bei einem Ausführungsbeispiel kann das Empfangsmodul antworten durch Durchführen eines Typs definierter Aktion, wie z. B. Abschalten aller Funktionen. Bei einem anderen Ausführungsbeispiel kann das Empfangsmodul antworten durch Liefern eines Teils, aber nicht seiner gesamten Funktionalität. Die Modulantwort kann abhängig von dem Modultyp definiert werden und kann an der Modulkonfigurationsstufe programmiert werden. Alternativ kann das Modul an der Konfigurationsstufe so konfiguriert werden, um einen auswählbaren Bereich von Antwortcharakteristika zu liefern, aus denen der Benutzer optional zu jeder Zeit nach der Konfiguration auswählen kann, d. h. während der Ausführungszeit durch eine benutzergesteuerte Torsteuerungslogik. Vorteilhafterweise liefern diese Optionen die Fähigkeit einer weichen Konfiguration eines Moduls und/oder Ausführungszeitauswahl von Modulantwortcharakteristika, während eine hardwaremäßige Geschwindigkeit der Antwort geliefert wird.
  • Die Bitposition 28 ist als ein messungsausgelöstes Statusfeld 406 definiert. Eine logische „1" oder ein wahrer Wert in dem messungsausgelösten Statusfeld wird in das nächste Empfangspaket platziert, nachdem ein Messungsteilsystem in einem Modul ausgelöst ist und liefert eine Anzeige an die Steuerung 100, dass dieses Ereignis aufgetreten ist. Der ausgelöste Status wird für jedes erfasste Auslöserereignis einmal in einem Empfangsdatenpaket 358 angezeigt und wird dann in dem nächsten Empfangspaket 358 gelöscht, falls kein neuer Auslöser aufgetreten ist. Folglich liefert das messungsausgelöste Statusfeld 406 auch relative Zeitgebungsinformationen für Daten, die aus dem Modul stammen, bei dem das messungsausgelöste Statusfeld 406 gesetzt ist. Als ein darstellendes Beispiel können Auslösungsereignisse autonom in einem einzigen Modul auftreten, z. B. ein Pegelauslösungsereignis, das von digitalisierten Abtastwerten von ausgegebenen aktuellen Daten abgeleitet wird. Nur das bestimmte Modul hat unmittelbare „Kenntnisse", das ein solches Ereignis aufgetreten ist, da das Ereignis für das Modul lokal ist, dennoch ist es häufig wünschenswert, das Auftreten zu kommunizieren und es kann gelegentlich wünschenswert sein, dasselbe zu verwenden, um „Ereignisse" anderswo in dem Gesamtsystem aufzurufen, z. B. zum Markieren von Auslösungsereignispositionen in den speichergepufferten Zeitaufzeichnungen von digitalisierten Daten oder um möglicherweise Ausgangsänderungen in anderen Modulen 102, 104, 106 auszulösen. Als ein Beispiel der Erwünschtheit der Kenntnis, wann ein Auslösungsereignis aufgetreten ist, ohne Berücksichtigung der Quelle des Auslösungsereignisses, wünschen Benutzer von Signalverlaufdigitalisierinstrumenten, wie z. B. digitalen Oszilloskopen, häufig, digitalisierte Informationen zu beobachten, die vor dem Auslöseereignis erhalten wurden. Es kann auch wünschenswert sein, einige Daten vor dem Ereignis und einige Daten, die nach dem Ereignis erhalten wurden, zu betrachten. Mit weiterer Bezugnahme auf 8 der Zeichnungen ist die Bitposition 29 ein Empfangsdatengültigbit 408, das anzeigt, dass das aktuelle Empfangspaket 358 gültige synchrone Messdaten enthält. Das Gültige-Daten-Bit 408 wird für jedes Empfangsdatenpaket 358 wahr oder falsch gesetzt, abhängig von dem aktuellen Status der Informationen, die darin enthalten sind. Bei einem spezifischen Ausführungsbeispiel ist das messungsausgelöste Statusfeld 406 nicht wahr gesetzt, bis das Gültige-Synchrone-Messdaten-Feld 408 auch wahr gesetzt ist, um sicherzustellen, dass die Steuerung 100 Messungs auslöseereignisse umfasst, die mit tatsächlichen Messereignissen synchronisiert sind.
  • Mit besonderer Bezugnahme auf 8 der Zeichnungen umfasst das Empfangsdatenpaket 358 durch ein erstes und ein zweites Auslösebit-Feld 402 und 404 in den Bitpositionen 27 beziehungsweise 59. Das erste und das zweite Modulauslöserbitfeld ermöglichen es einzelnen Modulen 102, 104, 106, Auslöser an die Steuerung 100 zu senden, mit einer maximalen Verzögerung von 2,56 Mikrosekunden. Eine Auswahl der Bitpositionen für das erste und das zweite Modulauslöserbitfeld 402, 406 ermöglicht ferner, dass Auslöser, die in einem der Module 102, 104, 106 ihren Ursprung haben, durch die Steuerung 100 empfangen werden und mit einer minimalen zusätzlichen Verzögerung in einem Sendepaket 354 an einen Bestimmungsortmodul weitergeleitet werden. Bei den offenbarten Ausführungsbeispiel ist diese minimale zusätzliche Verzögerung etwa 320 nsek oder vier Taktperioden. Eine programmierbare Torsteuerungslogik in der Steuerung 100 ermöglicht eine selektive Verteilung von Auslösern, die von einem Modul 102, 104 oder 106 stammen, an ein oder mehrere Module 102, 104, 106, gemäß den Wünschen des Systemnutzers. Ferner ermöglicht es diese Torsteuerungslogik den Systemnutzern, eine oder mehrere „Gruppen" von Modulen zu definieren, die aktiviert werden können, um auf das Auslöserereignis anzusprechen, das von einem Modul innerhalb der definierten Gruppe stammt. Die Erfassung, Übertragung, der Empfang und die Antworten auf Auslöser können gleichzeitig in mehreren Gruppen auftreten, die so definiert sind. Darüber hinaus kann jedes Modul in einer definierten Gruppe die „Quelle" eines Auslösers sein, während alle anderen Module in der definierten Gruppe die „Empfänger" des Auslösers sein können. Genauer gesagt, die Torsteuerungslogik in der Steuerung 100 programmiert sein, um auf den Empfang eines gesetzten Empfangsauslösefeld 402, 404 zu antworten, durch Setzen des Sendeauslösefelds 302 oder 304 in eines oder mehrere der nächsten Sendepakete 354, die für ein oder mehrere ausgewählte der Module 102, 104, 106 bestimmt sind.
  • Die Torsteuerungslogik in der Steuerung 100 kann ferner anders programmiert sein, abhängig davon, welches Modul 102, 104 oder 106 das Auslösefeld 402, 404 gesetzt hat. Als ein Beispiel kann der Empfang des „wahren" Empfangsauslösebits 402 oder 404 von einem spezifischen Modul, beispielsweise 102, bewirken, dass die Steuerung das Sendeauslöserbitfeld 302 oder 304 „wahr" setzt, in dem nächsten Sendepaket 354, das zu einem Modul geht, beispielsweise 106, aber nicht zu einem anderen Modul, beispielsweise 104. Außerdem kann der Empfang eines „wahren" Empfangsauslösebits 402 oder 404 von einem anderen spezifischen Modul, beispielsweise 104, bewirken, dass die Steuerung das Sendeauslösebitfeld 302 oder 304 in dem nächsten Sendepaket 354 „wahr" setzt, das zu zwei Modulen geht, beispielsweise 104 und 106. Folglich wird die Antwort der Steuerung auf einen „wahren" Wert in dem Empfangsauslösefeld 402 oder 404 selektiv gesteuert, abhängig von den Vorzügen und Bedürfnissen des Benutzers. Unterschiedliche Module können als „Quellen" und als „Empfänger" ausgewählt werden, und diese Auswahl kann zu jedem Zeitpunkt geändert werden, während das System läuft. Vorteilhafterweise liefert ein System, das so definiert ist, einem Benutzer Flexibilität, während es Hardwaregeschwindigkeitsantworten und galvanische Trennung zwischen Modulen beibehält. Die Bitpositionen 60 – 63 sind ungenutzt.
  • Das Empfangsdatenpaket 358 umfasst sowohl synchrone digitalisierte gemessene Daten als auch asynchrone Abfrageantworten. Bei einem spezifischen Ausführungsbeispiel und mit spezifischer Bezugnahme auf 9 und 10 der Zeichnungen umfassen die Bitpositionen 0 – 23 und die Bitpositionen 30 – 41 einen ersten und zweiten Abschnitt eines Synchrone-Messdaten-Felds 400 beziehungsweise 414. Das Asynchrone-Empfangsdaten-Feld 416 besetzt die Bitpositionen 43 – 58. Ein Asynchrone-Empfangsdaten-Gültig-Feld 418 in der Bitposition 42 des Empfangsdatenpakets ist auf eine logische „1" gesetzt, falls eine asynchrone Abfrageantwort in dem Empfangsdatenpaket 358 enthalten ist. Daten in dem Asynchrone- Daten-Feld 416 und dem Asynchrone-Daten-Gültig-Feld 418 werden zusammen in dem gleichen Empfangsdatenpaket übertragen, ansprechend auf Abfragen von der Steuerung 100. Antworten auf Steuerungsabfragen sind bei normalem Betrieb nicht typisch, weil Steuerungsabfragebefehle höchstwahrscheinlich entweder unregelmäßige oder seltene Ereignisse sind. Die Position der Asynchrone-Antwort-Felder nahe dem Ende des Empfangspakets ermöglicht die Einleitung von Abfragen und das Zurücksenden von entsprechenden Antworten innerhalb der gleichen Rahmenperiode. Es ist jedoch zum Praktizieren der vorliegenden Lehren nicht notwendig, dass Rücksendeabfrageantworten innerhalb der gleichen Rahmenperiode liegen wie die einleitenden Abfragen. Diese Antworten könnten in der Tat durch eine beliebige Anzahl von Rahmen verzögert werden, abhängig von den Antwortcharakteristika des betreffenden Moduls und der bestimmten Art der Abfrage. Bei einem spezifischen Ausführungsbeispiel ist definiert, dass ein Modul schließlich auf eine Abfrage antwortet und dass eine Reihe von Abfragen und Antworten in einer Reihenfolge auftreten, d. h. Abfrage 1, Antwort 1, Abfrage 2, Antwort 2 usw. Bei einem alternativen und allgemeinen Ausführungsbeispiel muss eine Reihenfolge von Antworten auf Abfragen beibehalten werden, falls Informationen in der Antwort codiert sind, die dieselbe eindeutig mit der bestimmten Abfrage verbindet, auf die dieselbe eine Antwort ist. 9 der Zeichnungen ist ein Diagramm eines Ausführungsbeispiels einer Empfangsdatenpaketstruktur 358, die zwei 18-Bit-Wörter von digitalen Daten pro Paket liefert. 10 der Zeichnungen ist ein Diagramm eines Ausführungsbeispiels einer Empfangsdatenpaketstruktur 358, die ein einzelnes 24-Bit-Wort von digitalen Daten pro Paket liefert. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, hat das in 10 gezeigte Empfangspaket ungenutzte Datenbits, die bei einem bestimmten Ausführungsbeispiel verwendet werden können.
  • Es ist möglich, dass ein bestimmtes Empfangsdatenpaket 358 weder synchrone Messdaten noch asynchrone Abfrageantwortda ten enthält. In diesem Fall sind weder das Asynchrone-Empfangsdaten-Gültig-Feld 418 noch das Empfangsdaten-Gültig-Bit 408 auf wahr gesetzt, und die Steuerung 100 kann diese Felder in dem Empfangsdatenpaket 358 ignorieren. Falls ein System mehr als ein Modul aufweist, das bei Datenraten von weniger als etwa 200k Wörter/Sekunde, d. h. bei der Rahmenrate, arbeitet ist es nicht notwendig, dass alle aktiven Kanäle Rücksendedaten gleichzeitig übertragen. Die Möglichkeit existiert unabhängig davon, ob mehrere Kanäle bei identischen Datenraten arbeiten oder nicht. Andererseits können Anwendungen gewünscht sein, die synchronisierte Mehrkanaldigitalisierung oder andere Aktionen liefert, die zeitlich gleichzeitig in mehreren Modulen auftreten. Die Implementierung der Kommunikationssystemarchitektur in einer Sternkonfiguration mit einer gemeinsamen Taktquelle und synchronem Rahmen unterstützt die Erzeugung von „Ereignissen", wie zum Beispiel Auslösern oder Befehlen, die als Teil von Sendedatenpaketen gesendet werden, die verwendet werden können, um parallele Aktionen, wie zum Beispiel A/D-Abtastung, in mehreren Modulen zu synchronisieren. Die Synchronisation paralleler Aktionen, wie zum Beispiel Digitalisierung und/oder Synthese in und zwischen mehreren Modulen liefert Vorteile, die einem Durchschnittsfachmann auf dem Gebiet der Digitalsignalsynthese und Analyse bekannt sind. Eine typische Anwendung kann das Ausgeben mehrerer Kanäle mit dynamisch variablen Gleichsignalleistungs-„Signalverläufen" an eine zu testende Vorrichtung (DUT) umfassen, mit gleichzeitiger und synchroner Mehrkanaldigitalisierung von Stromsignalverläufen, die jeder der ausgegebenen Spannungen zugeordnet sind. Viele andere Anwendungen sind möglich, einschließlich, ohne Beschränkung, synchrone Mehrkanalfunktionserzeugung, synchrone Mehrkanalhochgeschwindigkeitsvoltmeterdigitalisierung und verschiedene Mischungen beider Funktionen.
  • Mit besonderer Bezugnahme auf 9 der Zeichnungen ist ein Diagramm eines spezifischen Ausführungsbeispiels von Bitzuweisungen für Empfangsdatenpakete gezeigt, die von einem Dualkanal-18-Bit-Modul stammen. Der erste und der zweite Abschnitt des Synchrone-Messdaten-Felds 400, 414 umfassen zusammen eine Gesamtzahl von 36 Bits. Zwei 18-Bit-Datenwörter besetzten den ersten und den zweiten Abschnitt des Synchrone-Messdaten-Felds 400, 414, wo ein erstes Kanalmessdatenwort 500 Bitpositionen 0 bis 17 in dem ersten Abschnitt des Synchrone-Messdaten-Felds 400 besetzt, und ein zweites Kanalmessdatenwort 502 die Bitpositionen 18 – 23 des ersten Abschnitts des Synchrone-Messdaten-Felds 400 und alle Bitpositionen des zweiten Abschnitts des Synchrone-Messdaten-Felds 414 besetzt. Obwohl dies etwas beliebig und hauptsächlich aufgrund unmittelbarer Zweckmäßigkeit durchgeführt wird, positioniert ein spezifisches Ausführungsbeispiel das niedrigstwertigste Bit in der höchsten Bitposition, weil eine Digitalisierung unter Verwendung aufeinanderfolgender A/D-Wandler des Näherungstyps implementiert wird. Wandler dieses Typs implementieren einen Umwandlungsprozess, der das MSB erzeugt, dem zuerst Bits geringerer Wertigkeit folgen, und der mit dem LSB endet. Folglich ist es möglich, Daten in das Empfangsdatenpaket 358 raus zu schieben, wenn dasselbe in die Modulseitenlogik kommt. Alle verbleibenden Statusbits und Auslösebits, wie sie definiert sind, bleiben dieselben.
  • Mit besonderer Bezugnahme auf 10 der Zeichnungen ist ein Diagramm eines spezifischen Ausführungsbeispiels von Bitzuweisungen für Empfangsdatenpakete gezeigt, die von einem Einkanal-24-Bit-Wortmodul stammen. Die 24 Bits, die in dem Empfangsdatenpaket gesendet werden, besetzen bestimmte Bits in dem ersten und zweiten Abschnitt des Synchrone-Messdaten-Felds 400, 414. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, unterstützt die Empfangsdatenpaketstruktur ein bis zu 38-Bit-Wort von digitalen Daten pro Empfangsdatenpaket.
  • Obwohl es von einer gemeinsamen Quelle abgeleitet ist, wird jedes Modultaktsignal invertiert und durch eine Logiktorsteuerungsfunktion in der Steuerungsseitenlogik gelei tet, bevor dasselbe in die Taktleitung 208 eingekoppelt wird. Diese Torsteuerungsfunktion ermöglicht das selektive Sperren von Takten zu einem oder mehreren Modulen nach Bedarf, um das Rücksetzen und/oder die Konfiguration einzelner Module zu beeinträchtigen. Außerdem können beim Systemeinschalten alle Module parallel zurückgesetzt werden, durch paralleles Sperren der Taktsignale. Bei einem spezifischen Ausführungsbeispiel sind Taktsignale auf innerhalb einige wenige Nanosekunden synchronisiert. Dieser enge Synchronisationspegel ist möglich, trotz individueller Torsteuerung, aufgrund sehr niedriger Logiktorverzögerungen in der Vorrichtung, die die Steuerseitenlogik implementiert.
  • Das serielle Kommunikationssystem und die unterstützende Architektur, die hierin beschrieben sind, liefern vier (4) einzelne Betriebsmodi. Die einzelnen Modi sind: (1) ein normaler Betriebsmodus, der oben beschrieben ist, (2) ein Einschalt- und Entdeckungsmodus, (3) ein Konfigurationsmodus und (4) ein Fehlererfassungs- und Schutzmodus. Die vorhergehenden Absätze haben den normalen Betriebsmodus näher beschrieben und den Fehlererfassungs- und Schutzmodus kurz erwähnt. Das offenbarte serielle Kommunikationssystem und die unterstützende Architektur liefern auch eine automatische Erfassung von Identifizierung von installierten Modulen auf das Einschalten der Instrumentierung hin. Die Erfassung bezieht sich auf die Entdeckung, dass ein Modul physikalisch vorliegt, und die Identifikation bezieht sich auf das Bestimmen einer spezifischen Identität und Funktion eines installierten Moduls und das Bestimmen, ob das Modul funktionsfähig ist. Die Erfassung ist vorteilhaft, weil das System für einen ordnungsgemäßen Betrieb nicht voll mit Modulen besetzt sein muss. Wenn ein Modul als vorliegend erfasst wird, ermöglicht die Identifizierung eine automatische Konfiguration und Kommunikation zwischen der Steuerung und dem identifizierten Modul vor der Einleitung eines normalen Betriebs. Die Steuerung spricht erst auf ein Einschaltereignis an (d. h. Anlegen einer Netzleistung an das Grundgerät). Wenn die 48-V-Grundgerätleistungsversorgung eine bestimmte Grenzspannung erreicht, leitet das Grundgerät eine Bootsequenz ein. Die Bootsequenz ist in dem Flashspeicher in dem Grundgerät enthalten. Die Verwendung des Flashspeichers ermöglicht vorteilhafterweise die Modifikation der Bootsequenz durch weiche Konfiguration. Bis die Grundgerätgrenzspannung erreicht wird, wird der Prozessor in dem Grundgerät in einem Rücksetzzustand gehalten. Während das Grundgerät hochfährt bzw. bootet, stabilisieren sich die Leistungsversorgungen zu dem Grundgerät und den Gleichsignalwandlern, die Spannungen zu anderen Teilen des Grundgeräts und zu den verschiedenen Modulen über Trennungsgrenzen zuführen, weiter. Wenn der Prozessor seinen Bootprozess abschließt, konfiguriert und initiiert er die Grundgerätserienkommunikationslogik und prüft dann ein „Leistung gut" Statusbit, das anzeigt, dass die 48-V-Leistungsversorgung innerhalb ausreichend enger Toleranzen funktionsfähig ist. Eine Prüfung des „Leistung-Gut"-Status, das den Betrieb innerhalb engerer Toleranzen anzeigt als für ein Grundgerät und Logikoperation erforderlich ist, ist vorteilhaft, weil eine geringere Spannung für eine Zeitperiode ein funktionsfähiges Grundgerät liefern kann, kann aber zu einer Überstromsituation führen, wenn Leistung an die Module verteilt wird, was Ausfälle aufgrund von Übererhitzen bewirkt.
  • Falls das Grundgerät-„Leistung-Gut"-Statusbit nach der Hochfahrsequenz als wahr bestimmt wird, leitet der Prozessor einen Prozess ein zum Herausführen jedes Moduls, das das Grundgerät bevölkert, unter Verwendung eines Prozesses, der einen Identifikationsschritt, gefolgt von einem Konfigurationsschritt umfasst. Bei einem aktuellen Ausführungsbeispiel werden Module parallel konfiguriert. Alternative Ausführungsbeispiele könnten jedoch eine sequentielle Modulkonfiguration implementieren. Die Grundgerätsteuerung bestimmt 1301 zunächst, ob ein Modul physikalisch vorliegt oder nicht. Dies wird implementiert durch eine Übereinkunft, bei der ein eingebautes und nicht konfiguriertes Modul 102, 104, 106 die Dateneingabeleitung Modul 102, 104, 106 die Dateneingabeleitung 206 zu einem logisch „niedrigen" oder „0" Zustand zwingt. Ein schwacher Pull-Up-Widerstand, beispielsweise 30 Kiloohm, ist auf den Dateneingabeleitung 206 in der Steuerung 100 angeordnet. Der schwache Pull-Up-Widerstand bewirkt einen logisch „hohen" oder „1" Zustand, außer die Module 102, 104, 106 liegen vor, um die Dateneingabeleitung 206 auf einen logisch „niedrigen" oder „0" Zustand zu zwingen. Folglich kann die Steuerung 100 verfügbare Dateneingabeleitungen 206 zu Zeiten abfragen, wenn die serielle Kommunikation nicht aktiv ist, entweder für alle oder für ausgewählte Module, um die Zustände dieser Leitungen zu bestimmen und somit zu bestimmen, ob Module vorliegen oder nicht. Bei einem spezifischen Ausführungsbeispiel kann dieser Abfragprozess nur unmittelbar nach der Einschaltbootsequenz stattfinden, oder nachdem ein Modul oder Module explizit zurückgesetzt wurden. Bei einem normalen Betriebsmodus schließt die serielle Kommunikationsaktivität eine Abfrageaktion aus. Alternative Ausführungsbeispiele könnten jedoch ein System implementieren, das den Abfragprozess zu jedem Zeitpunkt ermöglicht.
  • Für jedes installierte Modul bestimmt das Grundgerät das Vorliegen und die Identität der Module und konfiguriert dann das Modul für einen normalen Betrieb. Genau vor dem Eintritt in einen normalen Betrieb werden durch die Grundgerätsteuerung Aktionen durchgeführt, um zu bestimmen, ob installierte Module ordnungsgemäß auf die Konfigurationssequenz geantwortet haben. Ausfälle können entweder zum Markieren ausgefallener Module als nicht funktionsfähig oder zu zusätzlichen Versuchen bei der Konfiguration führen. Mit besonderer Bezugnahme auf 11 der Zeichnungen ist ein vereinfachtes Blockdiagramm einer Logik gezeigt, das bei der Modulidentifikation und Konfiguration verwendet wird. 11 zeigt sowohl die normale serielle Kommunikationsschaltung als auch eine serielle JTAG-Schnittstellenschaltung (JTAG = Joint Test Action Group), die verwendet wird, um während der Modulidentifikation und -konfiguration einen alternativen „Grenzabtast"- Betriebsmodus zu implementieren. Standard-JTAG-Operation und Protokolle sind in dem IEEE-Standard 1149.1-2001: IEEE Standard Test Access Port and Boundary-Scan Architecture beschrieben, dessen Inhalt hierin durch Bezugnahme aufgenommen ist. Im allgemeinen ist ein JTAG-Boundary-Scan (Grenzabtastung), der in dem erwähnten Standarddokument beschrieben ist, ein quasi passiver Betriebsmodus, durch den eine erste Vorrichtung durch ein Taktsignal, ein Steuersignal und ein Dateneingabesignal mit einer zweiten Vorrichtung kommunizieren kann und dadurch durch ein Datenausgabesignal Informationen über den Zustand der I/O-Logik und/oder internen Logik in der zweiten Vorrichtung extrahieren kann. Die zweite Vorrichtung nimmt nicht aktiv an der Kommunikationsaktivität teil oder steuert dieselbe, sondern empfängt stattdessen den Takt, das Steuereingangssignal und Dateneingangssignal von der ersten Vorrichtung und schiebt ansprechend darauf Testdaten hinaus. Es ist nur notwendig, dass I/O-Schaltungen und Boundary-Scan-Logik in der zweiten Vorrichtung währenddem JTAG-Scan-Prozess aktiv und funktionsfähig sind. Bei dem offenbarten Ausführungsbeispiel wird der JTAG-Prozess verwendet, um die Selbstidentifikation von Modulen zu bewirken und den Modulprozessor 1101 zu konfigurieren oder effektiv zu programmieren. Der Modulprozessor 1101 ist eine Verarbeitungs- und Steuervorrichtung, die Steuerungs- und Logikfunktionen in jedem Modul 102, 104, 106 implementiert, das das System besetzt. Bei einem spezifischen Ausführungsbeispiel ist der Modulprozessor 1101 ein RAM-basiertes feldprogrammierbares Gatterarray. Ein Durchschnittsfachmann auf diesem Gebiet erkennt, dass eine Fähigkeit zum Programmieren und Neuprogrammieren komplexer Logikvorrichtungen in Instrumentierungssystemen wertvolle Vorteile liefert und dies noch viel mehr, falls diese Fähigkeit zusammen mit einer Hardwareinfrastruktur, die aus anderen Gründen notwendigerweise vorliegt, besteht und diese „wiederverwendet", in diesem Fall zum Bewirken einer Serienkommunikation und Steuerung, wie es hierin beschrieben ist. Für die folgende Erörterung ist klar, dass die serielle Kommunikationsverbindung 112 zwi schen der Steuerung 100 und jedem Modul 102, 104, 106 aus drei Signalleitungen besteht, während das JTAG-Schnittstellentor für die Modulprozessorvorrichtung aus vier Signalleitungen besteht. Ein Merkmal gemäß den vorliegenden Lehren, das bezüglich der JTAG-Operation beschrieben ist, leitet sich daher teilweise von der Einrichtung ab, durch die die drei Kommunikationssystemssignalleitungen 112 verwendet werden, um eine Kommunikation mit dem Modulprozessorvorrichtungs-JTAG-Tor herzustellen, was vier Signale erfordert. Ein weiteres Merkmal gemäß den vorliegenden Lehren ist die Einrichtung, durch die die Drei-Signal-Kommunikationsverbindung 112 betrieben wird, manchmal gemäß einem Protokoll und manchmal gemäß einem anderen, genauer gesagt, um manchmal im „normalen" Kommunikationsmodus zu arbeiten, wie im vorhinein beschrieben ist, und zu anderen Zeiten in einem JTAG-Modus, wie es in den folgenden Absätzen beschrieben wird.
  • Jedes Modul 102, 104, 106 empfängt die serielle Kommunikationsverbindung 112 durch einen Isolator 114. An einer Modulseite des Isolators 114 sind die drei Leitungen, die die serielle Kommunikationsverbindung 112 bilden, Dateneingabeleitung (in 11 als SDI gezeigt) 204, Datenausgabeleitung (in 11 als SDO gezeigt) 206 und der Takt (in 11 als SCK gezeigt) 208, mit drei Stiften des Modulprozessors 1101 verbunden. Diese Verbindungen mit dem Modulprozessor 1101 umfassen die normale serielle Kommunikationsverbindung 112. Bei einem spezifischen Ausführungsbeispiel ist der Modulprozessor 1101 ein feldprogrammierbares Gatterarray mit JTAG-Funktionsfähigkeit und somit ein JTAG-Testtor. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, kann der Modulprozessor 1101 jedes Logik- oder Verarbeitungselement sein, das in der Lage ist, die hierin beschriebenen Prozessschritte durchzuführen. Jede Leitung in der seriellen Kommunikationsverbindung 112 ist auch mit drei JTAG-Stiften verbunden; TCK (Test Clock Input) 1103, TDI (Test Data Input) 1104 und TDO (Test Data Output) 1105 des JTAG-Tors an dem Modulprozessor 1101 durch serielle Widerstände 1102. Eine externe Schaltung umfasst ein D-Flip-Flop 1107, das von der seriellen Kommunikationstaktleitung 208 getaktet ist mit einem D-Eingang von der Datenausgabeleitung 204, und ein Q-Ausgang ist mit einem JTAG-Testmodusauswahl- (TMS-) Stift 1110 des Modulprozessors 1101 verbunden. Diese vier Verbindungen mit dem Modulprozessor 1101, TCK 1103, TDI 1104, TDO 1105 und TMS (Test Mode Select) 1110 umfassen eine Standard-4-Signal-JTAG-Hardwareschnittstelle oder „Tor". Das serielle Kommunikationsdatenausgabesignal der Grundgerätsteuerung, eines pro Modul, wird sowohl an einen D-Eingang 1115 des Flip-Flops 1107 als SDI 204 als auch an den TDI-Eingang 1104 des JTAG-Tors des Modulprozessors über einen Widerstand 1102 angelegt. Aktive Taktflanken sowohl für das Flip-Flop 1107 als auch das JTAG-Takteingangssignal TCK 1103 sind positive Übergänge. Logische Zustände, die an den Eingängen TDI 1104 und TMS 1110 des JTAG-Tors des Modulprozessors 1101 vorliegen, sind daher beide an positiven Übergängen von dem Taktsignal SCK 208 der seriellen Kommunikation zwischengespeichert oder gespeichert. Ein Logikinverter 16 invertiert das serielle Kommunikationstaktsignal 208 jedoch, bevor dasselbe an den Takteingang des Flip-Flops 1107 angelegt wird. Folglich werden Signalzustände, die auf der seriellen Kommunikationsleitung SDI 204 vorliegen, in dem Flip-Flop 1107 an negativen Übergängen von SCK 208 zwischengespeichert. Daher sind die Signalzustände, die auf der SDI 204 vorliegen, in das Flip-Flop 1107 zwischengespeichert und die serielle JTAG-Boundary-Scan-Logik Eingabesignalleitung TDI 1104 auf gegenüberliegenden Flanken des seriellen Kommunikationstakts SCK 208. Der Q-Ausgang 1117 des Flip-Flops 1107 ist mit dem JTAG-TMS-Eingangsstift 1110 des Modulprozessors 1101 verbunden. Da der Q-Ausgang 1117 des Flip-Flops 1107 den Zustand an positiven Übergängen seines Takteingangs ändert, folgt daraus, dass Logikzustandsänderungen an dem TMS-Eingang 1110 des Modulprozessors 1101 an negativen Übergängen des seriellen Kommunikationstakts SCK 208 auftreten und konstant bleiben, genau vor, während und unmittelbar nach positiven Übergängen von SCK 208. Mit besonderer Bezugnahme auf 12 und den Betrieb der seriellen Kommunikationsverbindung 112 im JTAG-Modus ist eine Leiterbahn gezeigt, die das serielle Kommunikationstaktsignal 208, das von der Steuerung 100 stammt, und eine invertierte Form 212 des seriellen Kommunikationstakts darstellt. Der serielle Kommunikationsdatenausgabesignal 204, wie es durch ein Modul 102, 104, 106 empfangen wird, ist ebenfalls gezeigt. Bei abwechselnden Zeitperioden innerhalb des seriellen Datenstroms gibt es TDI-Fenster 1204 und TMS-Fenster 1205. Diese Fenster sind von einer Dauer, die nominal gleich ist wie die Hälfte der Periode von SCK 208 und zeitlich versetzt, so dass die Zeitgrenzen oder Übergänge zwischen abwechselnden Fenstern an den Mittelpunkten des hohen und niedrigen Zustands sowohl der wahren 208 als auch der invertierten 212 Form von SCK 208 sind. Es ist auch ein TMS-Signal 1206 gezeigt, das dem Q-Ausgang 1117 des Flip-Flops 1107 entspricht, und auch der TMS-Eingang 1110 des JTAG-Tors des Modulprozessors 1101. Schließlich sind Zeitreferenzen 1207 gezeigt, die der ansteigenden Flanke von SCK 208 entsprechen. Wenn angemerkt wird, dass die hierin vorher gelieferten Funktionsbeschreibungen bezüglich der Speicherung des Zustands des seriellen Datenstroms in dem Flip-Flop 1107 als TMS 1205 an positiven Übergängen der invertierten Version SCK 212 als auch die Speicherung der logischen Zustände von sowohl TDI 1104 als auch TMS 1110 innerhalb der JTAG-Boundary-Scan-Logik auf positiven Flanken von SCK 208 sind, ist ersichtlich, dass die Anordnung von TDI und TMS Datenfenstern 1204 und 1205 in dem seriellen Datenstrom und die Zeitversatzspeicheraktion des Flip-Flops 1207 derart ist, dass zu jeder Zeitreferenz 1207 gültige und stabile Zustände von sowohl TDI 1104 als auch TMS 1110 an dem JTAG-Tor des Modulprozessors 1101 verfügbar gemacht werden. Anders ausgedrückt, die Übertragung von Informationen von TDI 1104 und TMS 1110 bei Raten gleich zweimal der seriellen Taktfrequenz zusammengenommen mit der Zeitversetzaktion des Flip-Flops 1107 liefert eine Einrichtung zum Demultiplexen von zwei getrennten Informationsströmen von einer einzigen seriellen Kommunika tionsleitung 204. Es ist dann für die Grundgerätlogik 100 nur noch notwendig, die beiden Informationsströme zusammenzusetzen oder zu multiplexieren, auf eine Weise, die mit der hierin beschriebenen Demultiplexeraktion übereinstimmt. Bei dem vorliegenden Ausführungsbeispiel wird die notwendige Multiplexieraktion erreicht durch Codeoperationen und die Kommunikationsrate, die auf eine Frequenz beschränkt ist, die niedrig genug ist zum Sicherstellen, dass solche Operationen in der Tat in Code ausgeführt werden können. Ein Durchschnittsfachmann auf diesem Gebiet erkennt, dass viele alternative aber funktional äquivalente Verfahren verwendet werden können, einschließlich solchen, die vollständig aus Hardware bestehen, um das gleiche Multiplexier-/Demultiplexierschema im Zusammenhang des gelegentlichen Lieferns einer Vier-Leitung-Logikoperation über eine serielle Drei-Leitung-Kommunikationsverbindung 112 zu bewirken.
  • Mit erneuter Bezugnahme auf 11 wird ein DONE-Stift 1108 des Modulprozessors 1101, der durch Logik in dem Modulprozessor 1101 betrieben wird, um den Abschluss des Bitstromkonfigurationsprozess zu kennzeichnen, durch den Pull-Up-Widerstand 1112 mit einer Logikvorspannungsspannung 1111 und mit der Voreinstellung bzw. dem Voreinstellungseingang 1109 des D-Flip-Flops 1107 verbunden. Der DONE-Stift 1108 schwebt in einem logisch hohen Zustand, außer er wird durch den Modulprozessor tief gezogen. Die Aktion des DONE-Signals ist wie folgt: Wenn die Modulidentifikations- und Konfigurationsprozesse abgeschlossen sind, wobei diese beiden Prozesse normalerweise in einer Sequenzreihenfolge der Identifikation gefolgt von Konfiguration durchgeführt werden, erfasst eine Logik in dem Modulprozessor 1101 den Abschluss der Konfiguration, wie es hierin beschrieben ist, und treibt den DONE-Stift 1108 auf einen logisch hohen Zustand, und zwar unter Voreinstellen des D-Flip-Flop 1107 und fortlaufendes Hoch- oder Wahr-Einstellen des TMS 1110. Gemäß Standard-JTAG-Protokollen platziert das Halten von TMS 1110 als wahr für fünf oder mehr Zyklen von TCK 1103 die Zustandsmaschine in der JTAG-Boundary-Scan-Logik in den sogenannten „Testlogikrücksetz"-Zustand, und beendet dadurch den Betrieb in dem JTAG-Modus und ermöglicht die Einleitung von normalen Modulprozessoroperationen, einschließlich normaler serieller Kommunikation. Andererseits, nach der Rücksetzung der Module 102, 104, 106 und vor dem Abschluss der Identifikation und Konfiguration, wird das DONE-Signal 1108 in einem fortlaufend niedrigen Zustand gehalten, wodurch der voreingestellte Eingang 1109 zu dem Flip-Flop 1107 entfernt wird, und dadurch die vorher hierin beschriebenen Demultiplexieraktionen ermöglicht werden. Sobald eine Konfiguration abgeschlossen ist, wird das DONE-Signal 1110 fortlaufend in dem hohen Zustand gehalten und das Flip-Flop 1107 wird in den voreingestellten Zustand gezwungen, wodurch eine Neu-Einleitung des JTAG-Betriebsmodus verhindert wird, unabhängig von den logischen Zuständen, die auf den seriellen Kommunikationsleitungen 112 vorliegen. Ein Durchschnittsfachmann auf diesem Gebiet wird erkennen, dass Signale mit anderen Namen, die eine ähnliche Funktion bezüglich der Einleitung und dem Abschluss der Identifikations- und Konfigurationsprozesse haben, und den Demultiplexieraktionen, die hierin beschrieben sind, bei alternativen Realisierungen verwendet werden können, um Übergänge in und aus dem JTAG-Kommunikationsmodus als auch den Betrieb in dem JTAG-Modus zu bewirken.
  • Es gibt 20 parallele Identifikationsleitungen 1106, die durch die Logik ausgegeben werden, die in dem Modul verteilt ist, und in den Modulprozessor 1101 eingegeben werden, für die Verwendung als Modulselbstidentifikation. Ein Wert auf den Identifikationsleitungen 1106 liefert einen Code, der ein Modul und einen Modulmerkmalssatz eindeutig identifiziert. Bei alternativen Ausführungsbeispielen können mehr oder weniger Leitungen verwendet werden, um ein Modul eindeutig zu identifizieren. Die 20 Eingangsleitungen, die mit I/O-Stiften des Modulprozessors 1101 verbunden sind, werden durch die Grundgerätsteuerung 100 unter Ver wendung von Standard-JTAG-Boundary-Scan-Testprotokollen gelesen. Der Modulprozessor 1101 treibt die Leitung 206, während das Grundgerät 100 die Leitungen 204 und 208 über den Isolator 114 treibt. Die TMS-Leitung 1110 wird so getrieben, wie es vorher beschrieben ist. Das SCK-Signal 208 treibt den TCK-JTAG-Taktstift, das SDI-Signal 203 treibt den TDI-JTAG-Testdateneingabestift, während der Wert der Identifikationsleitungen 1106 von dem JTAG-TDO-Stift 206 zu der Grundgerätsteuerung 100 zurückgesendet wird. Das Grundfunktionsverhalten dieser drei Signalleitungen ist eng parallel zu dem Funktionieren der verwandten seriellen Kommunikationssignale, wenn dieselben in dem „normalen" Modus arbeiten, wie es vorher beschrieben wurde, obwohl, wie es hierin angemerkt wurde, die Modulprozessorkernlogik nicht aktiv ist, wie es der Fall wäre, wenn dieselbe in einem „normalen" seriellen Kommunikationsmodus arbeitet. Die Grundgerätsteuerung 100 erhält somit eine numerische Identifikation des Moduls 102, 104, 106. Weil der Modulprozessor 1101 ordnungsgemäß mit Leistung versorgt und minimal funktionsfähig sein muss, um eine Identifikation zu liefern, nimmt ein ordnungsgemäßer Empfang durch die Grundgerätsteuerung 100 des Modulidentifikationscodes an, dass das identifizierte Modul in der Lage ist, unter Verwendung von Standard-JTAG-Protokollen über das JTAG-Tor konfiguriert zu werden. Nach der Identifikationsphase bleibt der Modulprozessor 1101 in dem Testmodus und die Grundgerätsteuerung 100 sendet einen seriellen Konfigurationsbitstrom über die serielle Kommunikationsverbindung 112, erneut unter Verwendung von Stanard-JTAG-Kommunikationsprotokollen. Der Modulprozessor 100 empfängt die Konfigurationsinformationen durch die JTAG-Leitungen 1103, 1004, 1105 und 1110, bis der Modulkonfigurationsprozess abgeschlossen ist. Der Konfigurationsprozess und die Informationen sind modulabhängig und basieren auf der Identifikation, die durch die Grundgerätsteuerung empfangen wird. Folglich ist der weiche Konfigurationsprozess unter Verwendung des JTAG-Tors jedes Modulprozessors 1101 flexibel und spezifisch für einen bestimmten Modultyp. Wenn der weiche Konfigurationsprozess abgeschlossen ist, aktiviert der Modulprozessor 1101 das DONE-Signal 1108, das das D-Flip-Flop 1107, wie vorher beschrieben, voreinstellt, und nimmt den Modulprozessor aus dem Testmodus. An diesem Punkt leitet die Grundgerätsteuerung 100 normale serielle Kommunikationsverbindungsoperationen ein, durch Einkoppeln des seriellen Normalbetriebstaktsignals auf die Taktleitung 208 und ein Sendedatenpaket auf die Datenausgabeleitung 204.
  • Die JTAG-Leitungen TCK 1103, TDI 1104, TDO 1105 und TMS 1110 sind ebenfalls mit einem getrennten Teststiftsockel 1113 verbunden, der sich auf dem Modul 102, 104, 106 befindet. Der Teststiftsockel liefert Zugriff zu den JTAG-Leitungen TCK 1103, TDI 1104, TDO 1105 und TMS 1110 durch eine Testvorrichtung, wie z. B. einen Logikanalysator, während normalen Kommunikationsoperationen für die Zwecke der Entwicklung und Fehlersuche. Ein Benutzer des Systems hätte normalerweise keinen Zugriff zu dem Testverbinder, aber derselbe ist als Teil eines verbesserten Entwurfs für Testbarkeits- und Fehlersuchzwecke aufgenommen.
  • Mit besonderer Bezugnahme auf 13 der Zeichnungen ist ein vereinfachtes Flussdiagramm des Modulkonfigurationsprozesses unter Verwendung der Modulprozessor-JTAG-Funktionalität gezeigt. Nach dem Einschalten des Gesamtsystems und nach dem Hochfahren der Grundgerätsteuerung 100 wird eine Prüfung, ob die Leistung gut ist, durchgeführt, nach der die Grundgerätsteuerung das Vorliegen 1301 von einem oder mehreren Modulen 102, 104 und 106 erfasst. Für alle Module, die als vorliegend erfasst wurden, leitet die Grundgerätsteuerung 100 eine explizite Rücksetzaktion 1302 ein, durch Sperren des seriellen Takts 208, wie es vorher beschrieben wurde. Für alle vorliegenden Module ist dann bekannt, dass der Modulprozessor 1101 in einem Rücksetzzustand ist, nicht konfiguriert ist und daher nicht in der Lage ist für eine normale serielle Kommunikation über die serielle Kommunikationsverbindung 112. Folglich wird der Modulprozessor 1101 unmittelbar in einen JTAG-Testmodus platziert, durch Aktivieren des JTAG-Torsignals TMS 1110 und Einleiten der Taktaktivitäten 1303. Der Modulprozessor 1101, der nun in einem JTAG-Boundary-Scan-Modus arbeitet, sendet 1304 den Modulidentifikationscode an die Grundgerätsteuerung 100 zurück, wodurch die Steuerung 100 in der Lage ist, die notwendigen Modulkonfigurationsschritte zu identifizieren, die für die Module 102, 104, 106 erforderlich sind. Die Steuerung 100 konfiguriert 1305 dann den/die Modulprozessor(en) 1101 durch Übertragen eines seriellen Bitstroms unter Verwendung der seriellen Kommunikationsverbindung an das JTAG-Tor. Wenn der Konfigurationsprozess abgeschlossen ist, aktiviert der Modulprozessor 1101 autonom das DONE-Signal 1108 zum Deaktivieren des JTAG-Testmodus 1306. Unmittelbar danach leitet 1307 die Grundgerätsteuerung 100 eine normale serielle Kommunikation über die serielle Kommunikationsverbindung 112 ein. Unmittelbar auf das Einleiten der normalen seriellen Kommunikation hin bestätigt die Grundgerätsteuerung 100, dass die Module 102, 104, 106 normal antworten 1308. Die Erfassung normaler Antworten beschließt 1310 den Erfassungs- und Konfigurationsprozess. Das Versagen 1309, normale Antworten von einem oder mehreren Modulen 102, 104, 106 zu erfassen, führt zu einem Test zum Bestimmen, wie viele Versuche durchgeführt wurden, um das/die Modul(e) zu konfigurieren. Falls die Anzahl von Versuchen eine vorbestimmte obere Grenze 1311 überschreitet, wird das Modul oder die Module, die nicht in der Lage sind, normal zu antworten, als „schlecht" gekennzeichnet 1312, und der Erfassungs- und Konfigurationsprozess endet. Falls die Anzahl von Versuchen die vorbestimmten oberen Grenzen 1313 für Versuche nicht überschreitet, wird eine Wiederholung der Schritte 13021308 eingeleitet. Wie es für einen Durchschnittsfachmann auf diesem Gebiet klar ist, können verschiedene Einzelheiten des Erfassungs- und Konfigurationsprozesses, einschließlich der Anzahl von Konfigurationsversuchen, geändert werden, wie es für ein bestimmtes Ausführungsbeispiel als praktisch und geeignet erscheint. Ferner, wie es für einen Durchschnittsfachmann auf diesem Gebiet ebenfalls gut verständlich ist, müssen feldprogrammierbare Logikvorrichtungen nicht durch einen seriellen Bitstrom unter Verwendung von JTAG-Protokollen konfiguriert werden, sondern können beispielsweise durch ROM-Vorrichtungen, Mikrocontrollerschnittstellen usw. konfiguriert werden. In solchen Fällen kann das innovative Abbilden eines Vier-Signal-JTAG-Kommunikationsverfahrens auf einen seriellen Drei-Signal-Kommunikationsbus, wie es hierin beschrieben ist, lediglich dem Identifikationsprozess oder anderen Zwecken dienen.
  • Das so beschriebene System unterstützt zumindest vier unterschiedliche Formen von Selbstschutzmerkmalen. Wie es hierin beschrieben ist, umfasst ein Selbstschutzmerkmal das Schnellschutzbit 412 des Empfangsdatenpakets 358 und das Systemfehlerbit 308 des Sendedatenpakets 354. Als ein Beispiel können eines oder mehrere der Module 102, 104, 106 einen Überspannungs- oder Übertemperaturzustand erfassen. Eine solche Bedingung beeinträchtigt typischerweise das gesamte System und rechtfertigt eine systemweite Antwort. Folglich setzen das Modul oder die Module 102, 104, 106, die den Zustand erfassen, das Schnellschutzbit 412 des Empfangsdatenpakets 358. Wie es ebenfalls hierin beschrieben ist, empfängt die Grundgerätsteuerung 100 das Schnellschutzbit 412 und kann optional und selektiv das Systemfehlerbit 308 von einem oder mehreren Sendedatenpaketen 354 in dem gleichen Kommunikationsrahmen setzen. Die Module 102, 104, 106, an die das Systemfehlerbit gesendet wird, kann dann antworten durch Sperren des Betriebs und Deaktivieren jedes Modulausgangs oder eine andere geeignete Aktion, während es nach wie vor die Systemkommunikation beibehält.
  • Ein weiteres Systemschutzmerkmal umfasst die autonome Rücksetzung durch ein Modul 102, 104, 106. Bei einem typischen Szenario überwacht eine Leistungsüberwachungsschaltung die Modulsekundärleistungsversorgungen. Falls die Überwachungsschaltung erfasst, dass eine oder mehrere der Leistungsversorgungen außerhalb der vorbestimmten Schwellenwerte liegt, wird dieselbe den Modulprozessor in einen Rücksetzzustand versetzen, da Fehler dieser Art typischerweise zu ungesteuertem und unerwünschtem Verhalten führen können. In diesem Zustand kann das Modul 102, 104, 106 nicht mehr über die serielle Kommunikationsverbindung 112 kommunizieren. Die Grundgerätsteuerung 100 erfasst diesen Zustand als ein Versagen des Moduls, normal auf serielle Kommunikationsaktivitäten anzusprechen, und kann dann versuchen, das Modul weich zu konfigurieren unter Verwendung des JTAG-Tors und der Protokolle, wie es vorher hierin beschrieben ist. Falls sie dies nicht kann, kennzeichnet die Grundgerätsteuerung 100 dann das Modul 102, 104, 106 als nicht betriebsfähig, wie es ebenfalls hierin vorher beschrieben wurde, und fährt damit fort, mit den verbleibenden Modulen 102, 104, 106 zu kommunizieren. Vorteilhafterweise erfordert ein Ausfall eines Moduls 102, 104, 106 kein Rücksetzen des gesamten Systems, sondern liefert nur eine Nachricht eines solchen Ausfalls.
  • Noch ein weiteres Systemschutzmerkmal umfasst eine Grundgerätsteuerungsrücksetzung von einem oder mehreren Modulen durch selektives Sperren des Taktsignals 208. Auf diese Weise ist es möglich, dass die Grundgerätsteuerung eines oder mehrere der Module 102, 104, 106 neu konfiguriert, ohne die Rücksetzung und die Neukonfiguration aller Module in dem System zu erfordern. Diese Rücksetzung kann bei einem Systempegel oder einem Modulpegel implementiert werden, wie es durch die Grundgerätsteuerung 100 programmiert ist. Mit besonderer Bezugnahme auf 14 der Zeichnungen ist eine Logik gezeigt zum Implementieren eines spezifischen Ausführungsbeispiels des selektiven Sperrens von einem oder mehreren Taktsignalen 208. Der Zustand nach der Rücksetzung ist ein vordefinierter Zustand, typischerweise der „Einschalt"-Zustand, obwohl es nicht notwendig ist, diese Übereinkunft zu übernehmen. Die Rücksetzung wird von der Steuerung 100 zu dem Modul 102, 104, 106 kommuniziert, durch Sperren des Taktsignals 208 für eine Periode von mehr als 10 Millisekunden. Bei einem spezifischen Ausführungsbeispiel umfasst das „Sperren" des Taktsignals das Halten des Takts 208 in einem logischen „1" oder „hohen" Zustand. Die selektive Taktinhibitor- bzw. -sperrerschaltung umfasst ein getrenntes Taktsperr-NAND-Gatter 1401 für die Taktleitung 208 jedes Moduls. Bei dem offenbarten Ausführungsbeispiel hat das Halten des Taktsignals in einem logischen „0" oder „niedrigen" Zustand keine Auswirkung bezüglich des Rücksetzens von Modulen. Ein Taktfreigaberegister 1402 nimmt ein Bit für jedes Modul 102, 104, 106 an, wobei jedes Bit ein Eingangssignal in jedes Taktsperr-NAND-Gatter 1401 ist. Das Inverse des Mastertakts ist das andere Eingangssignal in jedes Taktsperr-NAND-Gatter 1401. Ein Benutzer kann das Taktfreigaberegister 1402 programmieren, um selektiv einen oder mehrere der Takte 208 zu deaktivieren, auf ausgewählte der Module 102, 104, 106. Das Modul antwortet durch Versetzen des Modulprozessors 1101 in einen Rücksetzzustand, nach einer gewissen Anzahl von versäumten Taktzyklen. Die Anzahl von Taktzyklen wird unter Verwendung eines RC-Filters 1403 und einer Schaltung eines Komparators 1404 bestimmt. Während einer normalen seriellen Kommunikation läuft der Takt 208 und entlädt die RC-Schaltung 1403 fortlaufend, um eine Schwellenwertspannung unter einem Wert von etwa 1,65 Volt beizubehalten. Wenn das Taktsignal 208 gesperrt ist, hält das NAND-Gatter 1401 das Taktsignal in einem „hohen" Zustand, der die RC-Schaltung 1403 auf einen Wert lädt, der schließlich die 1,65 Volt überschreitet. Wenn dies auftritt, wird der Ausgang des Komparators 1404, der mit einer modulprozessorinvertierten Rücksetzung 1405 verbunden ist, „tief" gezogen und setzt dadurch den Modulprozessor 1101 zurück. Es wird bevorzugt, dass alle Module 102, 104, 106 mit ähnlichen vordefinierten Konfigurationen und auch jedem lokalisierten vordefinierten Status, wie er für jedes spezifische Modul geeignet ist, auf die Systempegelrücksetzung antworten. Nach der Rücksetzung, entweder auf den Systempegel oder den Modulpegel, zwingen die Module 102, 104, 106, die rückgesetzt haben, ihre jeweiligen Daten in den Signalleitungen 206 auf logisch „niedrig" oder „0", und ermöglichen dadurch eine nachfolgende Erfassung und Identifikation, wie es oben beschrieben ist. Nachdem das Modul rückgesetzt ist, konfiguriert die Grundgerätsteuerung 100 das Modul 102, 104, 106 neu, unter Verwendung der JTAG-Konfigurationsfähigkeit, wie sie hierin beschrieben ist.
  • Die verschiedenen Fehlererfassungs- und Antwortmodi, die hierin präsentiert sind, liefern eine flexible und robuste Antwort auf erfasste Fehlerzustände, während sie eine maßvolle Verwendung des seriellen Kommunikationssystems erfordern.

Claims (116)

  1. Vorrichtung, die folgende Merkmale umfasst: ein Gehäuse mit einer Steuerung (100) und einer Backplane (101), wobei das Gehäuse zumindest ein erstes und ein zweites Modul für die Verbindung mit der Backplane (101) aufnimmt, wobei die Backplane (101) Leistung an jedes Modul verteilt, wobei die Backplane (101) auch eine eigens vorgesehene serielle Kommunikationsverbindung (112) von der Steuerung (100) an jeweilige der Module liefert, wobei jede Kommunikationsverbindung (112) eine Datenausgabeleitung (204), eine Dateneingabeleitung (206) und eine Taktleitung (208) aufweist, wobei jede Taktleitung (208) von einer Taktquelle abgeleitet ist, wobei alle Verbindungen zwischen dem zumindest ersten und zweiten Modul durch galvanische Trenner mit der Backplane (101) verbunden sind, und wobei die Steuerung (100) Sendepakete über die Datenausgabeleitungen überträgt, und wobei ein Beginn eines Rahmensignals für jedes der Sendepakete an einer einzelnen Flanke der Taktquelle auftritt.
  2. Vorrichtung gemäß Anspruch 1, bei der die Kommunikationsverbindung (112) eine JTAG-Kommunikationsverbindung umfasst.
  3. Vorrichtung gemäß Anspruch 1, bei der die Kommunikationsverbindung (112) nicht mehr als die Datenausgabeleitung (204), die Dateneingabeleitung (206) und die Taktleitung (208) umfasst.
  4. Vorrichtung gemäß einem der Ansprüche 1 bis 3, bei der die galvanischen Trenner auf jedem des zumindest ersten und zweiten Moduls angeordnet sind.
  5. Vorrichtung gemäß einem der Ansprüche 1 bis 4, bei der das erste Modul eine Leistungsversorgung umfasst.
  6. Vorrichtung gemäß Anspruch 5, bei der das erste Modul ferner einen ersten Signalverlaufgenerator und einen ersten Digitalisierer umfasst, für eine Steuerung und Messung einer Ausgangsspannung, und einen zweiten Signalverlaufgenerator und einen zweiten Digitalisierer für eine Steuerung und Messung eines Ausgangsstroms.
  7. Vorrichtung gemäß einem der Ansprüche 1 bis 6, bei der das erste Modul eine elektronische Last umfasst.
  8. Vorrichtung gemäß Anspruch 7, bei der die elektronische Last ferner einen Signalverlaufgenerator für die Steuerung eines Eingangsstroms und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung einer Eingangsspannung umfasst.
  9. Vorrichtung gemäß Anspruch 7, bei der die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst.
  10. Vorrichtung gemäß einem der Ansprüche 7 bis 9, bei der die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst, der angepasst ist, um eine konstante Widerstandslast beizubehalten.
  11. Vorrichtung gemäß einem der Ansprüche 3 bis 10, bei der die Steuerung (100) ein Sendedatenpaket (354) auf jeder Datenausgabeleitung (204) überträgt, die mit der Taktquelle synchronisiert ist, und das zumindest erste und zweite Modul jeweils ein Empfangspaket (358) auf der Dateneingabeleitung (206) übertragen, die mit der Taktquelle synchronisiert ist, wobei das Empfangspaket von dem Sendepaket (354) verzögert ist.
  12. Vorrichtung gemäß Anspruch 11, bei der das Sendepaket (354) von dem Empfangspaket (358) um eine Ganzzahl von Taktzyklen verzögert ist.
  13. Vorrichtung gemäß Anspruch 11, bei der das Sendepaket (354) von dem Empfangspaket (358) um zwei Zyklen des Takts verzögert ist.
  14. Vorrichtung gemäß einem der Ansprüche 11 bis 13, bei der ein erstes Sendepaket (354) und ein erstes Empfangspaket (358) in einem einzigen Kommunikationsrahmen gesendet werden, und wobei das erste Empfangspaket ein Statusbit umfasst und das erste Sendepaket ein Antwortbit auf das Statusbit umfasst, wobei das Statusbit vor dem Antwortbit gesendet wird, wobei das Antwortbit an ausgewählte Empfangsmodule gesendet wird, und wobei die Empfangsmodule auf den Empfang des Antwortbits hin eine Aktion einleiten.
  15. Vorrichtung gemäß Anspruch 14, bei der das Statusbit ein Schnellschutzbit umfasst, das einen Zustand in zumindest dem erste Modul anzeigt, der eine Antwort durch das zweite Modul rechtfertigt.
  16. Vorrichtung gemäß Anspruch 14, bei der die Antwort eine Ausgangssperrung umfasst.
  17. Vorrichtung gemäß einem der Ansprüche 13 bis 16, bei der ein erstes Bit für jedes Empfangspaket an einer einzelnen Flanke der Taktquelle auftritt.
  18. Vorrichtung gemäß einem der Ansprüche 1 bis 17, bei der die Steuerung ein Sendedatenpaket auf jeder Da tenausgabeleitung überträgt, die mit der Taktquelle synchronisiert ist, wobei das Sendedatenpaket zumindest ein Auslöserbit enthält.
  19. Vorrichtung gemäß Anspruch 18, bei der das zumindest eine Auslöserbit durch das erste Modul empfangen wird und eine Operation in dem ersten Modul einleitet.
  20. Vorrichtung gemäß einem der Ansprüche 1 bis 19, bei der die Steuerung (100) ein Sendedatenpaket (354) auf jeder Datenausgabeleitung (204) überträgt, die mit der Taktquelle synchronisiert ist, wobei jedes Sendedatenpaket ein jeweiliges Auslösersignal an einer gleichen Bitposition in jedem der Sendepakete (354) umfasst.
  21. Vorrichtung gemäß Anspruch 20, bei der die jeweiligen Auslösersignale durch das zumindest erste und zweite Modul empfangen werden, die mit einer einzelnen Flanke der Taktquelle synchronisiert sind und eine Operation in jedem der Module zu einem im Wesentlichen gleichen Zeitpunkt einleiten.
  22. Vorrichtung gemäß einem der Ansprüche 18 bis 21, bei der das Sendepaket (354) mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine getrennte Aktion in dem Modul einleitet.
  23. Vorrichtung gemäß einem der Ansprüche 18 bis 21, bei der das Sendepaket (354) mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine gleiche Aktion in dem Modul einleitet.
  24. Vorrichtung gemäß einem der Ansprüche 1 bis 23, bei der die Steuerung (100) jedes der Sendedatenpakete (354) während einem einzigen Kommunikationsrahmen mit fester Länge bei gleichmäßigen Zeitintervallen überträgt.
  25. Vorrichtung gemäß Anspruch 24, bei der jedes Modul ein Empfangsdatenpaket (358) auf jeder der Dateneingabeleitungen (206) während dem Rahmen überträgt, der mit der Taktquelle und mit dem Beginn des Rahmensignals synchronisiert ist.
  26. Vorrichtung gemäß einem der Ansprüche 1 bis 25, bei der die Steuerung (100) mit dem ersten Modul mit einer ersten Kommunikationsrate und mit dem zweiten Modul mit einer zweiten Kommunikationsrate kommuniziert, wobei sich die erste Rate von der zweiten Rate unterscheidet, wobei die erste Rate und die zweite Rate mit der Taktquelle synchronisiert sind.
  27. Vorrichtung gemäß einem der Ansprüche 1 bis 26, bei der eine Steuerung (100) auf dem Modul eine JTAG-Funktionalität umfasst, und die Steuerung das Vorliegen des Moduls erfasst und das Modul einen Identifikationscode über die Kommunikationsverbindung (112) an die Steuerung liefert, unter Verwendung der JTAG-Funktionalität und die Steuerung danach jedes der identifizierten Module konfiguriert durch Übertragen eines seriellen Datenstroms unter Verwendung der JTAG-Funktionalität.
  28. Vorrichtung gemäß einem der Ansprüche 3 bis 27, bei der jedes der Module einen Modulprozessor aufweist, der eine JTAG-Funktionalität aufweist, und die Datenausgabe-, die Dateneingabe- und die Taktleitung mit einem Kommunikationstor des Modulprozessors und TDI-, TDO- beziehungsweise TCK-Eingängen eines JTAG-Tors des Modulprozessors durch jeweilige Trennungselemente verbunden sind.
  29. Vorrichtung gemäß Anspruch 28, die ferner eine Schaltung umfasst, die ein TDI-Fenster und ein TMS-Fenster auf einer der seriellen Kommunikationsverbindungslei tungen umfasst, um Testmodusauswahlzustände in einem Modulprozessor beizubehalten und zu steuern, und um JTAG-Teststeuerungs- (TMS-) Informationen zu übertragen, während gleichzeitig die gleichen seriellen Kommunikationsleitungen verwendet werden, um JTAG-Testeingabe- (TDI-) Daten zu übertragen.
  30. Vorrichtung gemäß Anspruch 28 oder 29, bei der ein Speicherelement einen TMS-Datenstrom zu TMS des JTAG-Tors, auf eine anfängliche Kommunikation mit dem Modul über die Kommunikationsverbindung nach einer Modulrücksetzung hin und im Anschluss daran demultiplext und beibehält.
  31. Vorrichtung gemäß Anspruch 30, bei der die Steuerung (100) den Modulprozessor unter Verwendung von Standard-JTAG-Protokollen über die Kommunikationsverbindung konfiguriert.
  32. Vorrichtung gemäß Anspruch 31, bei der der Modulprozessor das Speicherelement voreinstellt auf den Abschluss der Modulprozessorkonfiguration hin, und dadurch einen JTAG-„Testlogikrücksetzung"-Zustand bewirkt, der eine JTAG-Operation beendet, während die Einleitung eines anderen Modus einer seriellen Kommunikation über die gleichen Dateneingabe-, Datenausgabe- und Taktleitungen ermöglicht wird.
  33. Vorrichtung gemäß einem der Ansprüche 1 bis 32, bei der die Steuerung (100) selektiv eines oder mehrere der Module zurücksetzt, durch selektives Zwingen jeweiliger der Taktleitungen in einen übereinstimmenden Zustand für eine vordefinierte Zeitdauer.
  34. Vorrichtung gemäß Anspruch 33, bei der die Steuerung das eine oder die mehreren Rücksetzmodule erfasst, identifiziert und konfiguriert.
  35. Verfahren zum Konfigurieren eines Moduls über eine Kommunikationsverbindung (112), wobei das Modul einen Modulprozessor mit einer JTAG-Funktionalität umfasst, wobei die Kommunikationsverbindung (112) drei serielle Kommunikationsleitungen umfasst, die als Datenausgabe- (204), Dateneingabe- (206) und Taktleitung (208) definiert sind, die mit einem seriellen Kommunikationstor an dem Modulprozessor verbunden sind, wobei die drei seriellen Kommunikationsleitungen auch mit TDI-, TDO- beziehungsweise TCK-Stiften eines JTAG-Tors des Modulprozessors verbunden sind, wobei das Verfahren folgende Schritte umfasst: Versetzen des Modulprozessors in einen JTAG-Testmodus durch Zwischenspeichern eines Bitwerts an der Datenausgabeleitung unter Verwendung der Taktleitung in einem Speicherelement, wobei ein Ausgang des Speicherelements mit dem TMS des JTAG-Tors verbunden ist; Konfigurieren des Modulprozessors durch das JTAG-Tor unter Verwendung der seriellen Kommunikationsleitungen; Herausbringen des Modulprozessors aus dem JTAG-Testmodus durch Voreinstellen des Speicherelements auf den Abschluss des Schritts des Konfigurierens hin; und Einleiten einer seriellen Kommunikation über die Kommunikationsverbindung (112) mit dem Modul.
  36. Verfahren gemäß Anspruch 35, bei dem die Kommunikationsverbindung (112) eine JTAG-Kommunikationsverbindung umfasst.
  37. Verfahren gemäß Anspruch 35, bei dem die Kommunikationsverbindung (112) nicht mehr als drei Leitungen umfasst.
  38. Verfahren gemäß einem der Ansprüche 35 bis 37, bei dem das Modul eine Leistungsversorgung umfasst.
  39. Verfahren gemäß Anspruch 38, bei dem das erste Modul ferner einen ersten Signalverlaufgenerator und einen ersten Digitalisierer für eine Steuerung und Messung einer Ausgangsspannung umfasst, und einen zweiten Signalverlaufgenerator und einen zweiten Digitalisierer für eine Steuerung und Messung eines Ausgangsstroms.
  40. Verfahren gemäß einem der Ansprüche 35 bis 39, bei dem das erste Modul eine elektronische Last umfasst.
  41. Verfahren gemäß Anspruch 40, bei dem die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung eines Eingangsstroms und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung einer Eingangsspannung umfasst.
  42. Verfahren gemäß Anspruch 40, bei dem die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst.
  43. Verfahren gemäß Anspruch 40, bei dem die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst, die angepasst sind, um eine konstante Widerstandslast beizubehalten.
  44. Verfahren gemäß einem der Ansprüche 35 bis 43, das ferner den Schritt umfasst, dass sich das Modul selbst über eine serielle Kommunikationsverbindung (112) identifiziert, vor dem Schritt des Konfigurierens.
  45. Verfahren gemäß Anspruch 44, bei dem der Schritt des Identifizierens den Schritt des Lesens eines seriellen Bitstroms über die Kommunikationsverbindung (112) umfasst, der einen Modultyp eindeutig identifiziert, wodurch der Schritt des Konfigurierens des Moduls definiert wird.
  46. Verfahren gemäß einem der Ansprüche 35 bis 45, bei dem mehr als ein Modul in ein Gehäuse installiert ist, wobei das Verfahren ferner den Schritt des Wiederholens der Schritte des Versetzens, Konfigurierens, Nehmens und Einleitens für jedes Modul umfasst.
  47. Verfahren gemäß Anspruch 46, bei dem ein erstes Modul einen Signalverlaufgenerator und ein zweites Modul einen Digitalisierer umfasst.
  48. Verfahren gemäß einem der Ansprüche 35 bis 47, bei dem mehr als ein Modul in ein Gehäuse installiert ist, wobei der Schritt des Einleitens einer seriellen Kommunikation über die Kommunikationsverbindung (112) ferner das Kommunizieren mit einem ersten Modul mit einer ersten Kommunikationsrate umfasst, und das Kommunizieren mit einem zweiten Modul mit einer zweiten Kommunikationsrate, wobei sich die erste Rate von der zweiten Rate unterscheidet, wobei die erste Rate und die zweite Rate mit einer gemeinsamen Taktquelle synchronisiert sind.
  49. Verfahren zum synchronen Auslösen von Ereignissen in mehreren Modulen, wobei jedes Modul einen seriellen Bitstrom über eine jeweilige Kommunikationsverbindung empfängt, wobei jede der Kommunikationsverbindungen (112) eine Datenausgabe- und eine Taktleitung umfasst, wobei jede der Taktleitungen von einer einzi gen Taktquelle abgeleitet ist, wobei das Verfahren folgende Schritte umfasst: Übertragen eines Sendepakets über die Datenausgabeleitung an jedes Modul, und zwar synchron zu der Taktquelle, wobei das Sendepaket zumindest eine Bitposition enthält, die als Auslöserbit definiert ist; und Auslösen von Ereignissen in jeweiligen der Module auf den Empfang jeweiliger der Auslöserbits hin.
  50. Verfahren gemäß Anspruch 49, bei dem der Schritt des Auslösens eines Ereignisses eine Signalverlaufsdigitalisierung umfasst.
  51. Verfahren gemäß Anspruch 49, bei dem der Schritt des Auslösens eines Ereignisses eine Signalverlaufssynthese umfasst.
  52. Verfahren gemäß einem der Ansprüche 49 bis 51, bei dem die Kommunikationsverbindung ferner eine Dateneingabeleitung (206) umfasst, und ferner den Schritt des Empfangens eines seriellen Bitstroms über die Dateneingabeleitung umfasst, die ein Empfangspaket (358) von jedem Modul umfasst, wobei ein vordefiniertes Bit in jedem der Empfangspakete (358) eine Anzeige umfasst, dass eine Messung ausgelöst ist.
  53. Verfahren gemäß Anspruch 52, bei dem das Empfangspaket (358) von jedem Modul ferner eine Mehrzahl von Bits umfasst, die synchrone Ergebnisse der ausgelösten Messung darstellen.
  54. Vorrichtung zum Durchführen von synchronem Auslösen von Ereignissen in mehreren Modulen, die folgende Merkmale umfasst: ein Gehäuse, das eine Steuerung (100) aufweist und zwei oder mehr Module aufnimmt; eine jeweilige serielle Kommunikationsverbindung (112) zwischen der Steuerung und jedem der zwei oder mehr Module, wobei jede der Kommunikationsverbindungen (112) eine Datenausgabe- und eine Taktleitung umfasst, wobei jede der Taktleitungen von einer einzigen Taktquelle abgeleitet ist; eine Einrichtung zum Übertragen eines Sendepakets (354) über die Datenausgabeleitung (204) an jedes Modul, und zwar synchron zu der Taktquelle, wobei das Sendepaket zumindest eine Bitposition enthält, die als ein Auslöserbit definiert ist; und eine Einrichtung in jedem der Module zum Auslösen eines modulspezifischen Ereignisses auf den Empfang jeweiliger der Auslösebits hin.
  55. Vorrichtung gemäß Anspruch 54, bei der das Ereignis eine Signalverlaufsdigitalisierung oder eine Signalverlaufssynthese umfasst.
  56. Vorrichtung gemäß Anspruch 54 oder 55, bei der das Ereignis eine Signalverlaufsdigitalisierung und eine Signalverlaufssynthese auf getrennten Kanälen des Moduls umfasst.
  57. Vorrichtung gemäß einem der Ansprüche 54 bis 56, bei der die Kommunikationsverbindung (112) ferner eine Dateneingabeleitung umfasst und ferner eine Einrichtung zum Empfangen eines seriellen Bitstroms über die Dateneingabeleitung umfasst, die ein Empfangspaket (358) von jedem Modul umfasst, wobei ein vordefiniertes Bit in jedem der Empfangspakete (358) eine Anzeige umfasst, dass eine Messung ausgelöst wird.
  58. Vorrichtung gemäß Anspruch 57, bei der das Empfangspaket (358) von jedem Modul ferner eine Mehrzahl von Bits umfasst, die synchrone Ergebnisse der ausgelösten Messung reflektieren.
  59. Vorrichtung, die folgende Merkmale umfasst: ein Gehäuse, das eine Steuerung (100), ein Modul und eine Backplane (101) aufweist, wobei die Backplane (101) Leistung an das Modul verteilt, wobei die Backplane (101) auch eine eigens vorgesehene serielle Kommunikationsverbindung (112) von der Steuerung an das Modul liefert, wobei die Kommunikationsverbindung (112) als eine Datenausgabeleitung (204), eine Dateneingabeleitung (206) und eine Taktleitung (208) definiert ist, wobei die Taktleitung von einer Taktquelle abgeleitet ist, wobei alle Verbindungen zwischen dem Modul und der Steuerung (100) durch die Backplane (101) durch galvanische Trenner miteinander verbunden sind, und wobei die Steuerung (100) Sendepakete über die Datenausgabeleitungen überträgt, und wobei ein Start des Rahmensignals für jedes der Sendepakete an einer einzelnen Flanke der Taktquelle auftritt.
  60. Vorrichtung gemäß Anspruch 59, bei der die galvanischen Trenner in dem Modul angeordnet sind.
  61. Vorrichtung gemäß Anspruch 59 oder 60, bei der die Steuerung (100) das Sendepaket auf der Datenausgabeleitung (204) überträgt, die mit der Taktquelle synchronisiert ist, und das Modul ein Empfangspaket (358) auf der Dateneingabeleitung überträgt, die mit der Taktquelle synchronisiert ist, wobei das Empfangspaket von dem Sendepaket verzögert ist.
  62. Vorrichtung gemäß Anspruch 61, bei der das Sendepaket von dem Empfangspaket durch eine Ganzzahl von Taktzyklen verzögert ist.
  63. Vorrichtung gemäß Anspruch 62, bei der das Sendepaket (354) von dem Empfangspaket (358) um zwei Zyklen des Takts verzögert ist.
  64. Vorrichtung gemäß einem der Ansprüche 61 bis 63, bei der ein erstes Bit für jedes der Empfangspakete (358) an einer einzelnen Flanke der Taktquelle auftritt.
  65. Vorrichtung gemäß einem der Ansprüche 59 bis 64, bei der die Steuerung (100) das Sendedatenpaket (354) auf der Datenausgabeleitung (204) überträgt, synchronisiert mit der Taktquelle, und das Sendedatenpaket (354) zumindest ein Auslöserbit enthält.
  66. Vorrichtung gemäß Anspruch 65, bei der das zumindest eine Auslöserbit durch das Modul empfangen wird und eine Operation in dem Modul einleitet.
  67. Vorrichtung gemäß einem der Ansprüche 59 bis 66, bei der das Sendepaket mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine getrennte Aktion in dem Modul einleitet.
  68. Vorrichtung gemäß einem der Ansprüche 59 bis 66, bei der das Sendepaket mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine gleiche Aktion in dem Modul einleitet.
  69. Vorrichtung gemäß einem der Ansprüche 59 bis 68, bei der die Steuerung (100) jedes der Sendedatenpakete (354) während einem einzelnen Kommunikationsrahmen mit fester Länge bei regelmäßigen Zeitintervallen überträgt.
  70. Vorrichtung gemäß Anspruch 69, bei der das Modul ein Empfangsdatenpaket (358) auf der Dateneingabeleitung während dem Rahmen überträgt, der mit der Taktquelle und mit dem Beginn des Rahmensignals synchronisiert ist.
  71. Vorrichtung gemäß einem der Ansprüche 59 bis 70, bei der die Steuerung (100) an dem Modul JTAG-Funktionalität umfasst und die Steuerung (100) ein Vorliegen des Moduls erfasst und das Modul einen Identifikationscode an die Steuerung (100) über die Kommunikationsverbindung (112) liefert, unter Verwendung der JTAG-Funktionalität, und die Steuerung (100) danach das identifizierte Modul konfiguriert durch Übertragen eines seriellen Datenstroms unter Verwendung der JTAG-Funktionalität.
  72. Vorrichtung gemäß einem der Ansprüche 59 bis 71, bei der das Modul einen Modulprozessor mit JTAG-Funktionalität aufweist, und die Takt-, Datenausgabe- und Dateneingabeleitungen mit einem Kommunikationstor des Modulprozessors und TCK-, TDI- beziehungsweise TDO-Eingängen eines JTAG-Tors des Modulprozessors durch jeweilige Trennungselemente verbunden sind.
  73. Vorrichtung gemäß Anspruch 72, die ferner eine Schaltung umfasst, die ein TDI-Fenster und ein TMS-Fenster auf einer der seriellen Kommunikationsverbindungsleitungen erzeugt, um Testmodusauswahlzustände in einem Modulprozessor beizubehalten und zu steuern, und um JTAG-Teststeuerungs- (TMS-) Informationen zu übertragen, während gleichzeitig die serielle Kommunikationsverbindung verwendet wird, um JTAG-Testeingabe- (TDI-) Daten zu übertragen.
  74. Vorrichtung gemäß Anspruch 72 oder 73, bei der ein Speicherelement einen TMS-Datenstrom zu dem TMS des JTAG-Tors auf eine anfängliche Kommunikation mit dem Modul über die Kommunikationsverbindung nach einer Modulrücksetzung hin und im Anschluss daran demultiplext und wahr beibehält.
  75. Vorrichtung gemäß einem der Ansprüche 72 bis 74, bei der die Steuerung (100) den Modulprozessor über die Kommunikationsverbindung (112) konfiguriert, unter Verwendung von Standard-JTAG-Protokollen.
  76. Vorrichtung gemäß Anspruch 74 oder 75, bei der der Modulprozessor das Speicherelement voreinstellt, auf den Abschluss der Modulprozessorkonfiguration hin und dadurch einen JTAG-„Testlogikrücksetz"-Zustand bewirkt, der eine JTAG-Operation beendet, während die Einleitung eines anderen Modus einer seriellen Kommunikation über die gleichen Dateneingabe-, Datenausgabe- und Taktleitungen ermöglicht wird.
  77. Vorrichtung gemäß einem der Ansprüche 59 bis 76, bei der die Steuerung (100) selektiv eines oder mehrere der Module rücksetzt, durch selektives Zwingen jeweiliger der Taktleitungen auf einen übereinstimmenden Zustand für eine vorbestimmte Zeitdauer.
  78. Vorrichtung gemäß Anspruch 77, bei der die Steuerung das eine oder die mehreren Rücksetzmodule erfasst, identifiziert und konfiguriert.
  79. Testvorrichtung, die ein Gehäuse und eine Backplane (101) umfasst und angepasst ist, um zumindest ein Modul (102) aufzunehmen, das eine Steuerung (100) umfasst, die mit jedem der Module (102) über eine serielle Kommunikationsverbindung (112) kommuniziert, wobei jedes der Module (102) von dem Gehäuse und der Steuerung (100) galvanisch getrennt ist.
  80. Testvorrichtung gemäß Anspruch 79, bei der die Kommunikationsverbindung (112) eine JTAG-Kommunikationsverbindung umfasst.
  81. Testvorrichtung gemäß Anspruch 79, bei der die Kommunikationsverbindung (112) nicht mehr als die Datenausgabeleitung (204), die Dateneingabeleitung (206) und die Taktleitung (208) umfasst.
  82. Testvorrichtung gemäß einem der Ansprüche 79 bis 81, bei der ein galvanischer Isolator an dem Modul (102) angeordnet ist.
  83. Testvorrichtung gemäß einem der Ansprüche 79 bis 82, die ferner angepasst ist, um zwei oder mehr der Module (102, 104) aufzunehmen.
  84. Vorrichtung gemäß einem der Ansprüche 79 bis 83, bei der das erste Modul (102) eine Leistungsversorgung umfasst.
  85. Vorrichtung gemäß Anspruch 84, bei der das erste Modul (102) ferner einen ersten Signalverlaufgenerator und einen ersten Digitalisierer für eine Steuerung und Messung einer Ausgangsspannung umfasst, und einen zweiten Signalverlaufgenerator und einen zweiten Digitalisierer für eine Steuerung und Messung eines Ausgangsstroms.
  86. Vorrichtung gemäß einem der Ansprüche 79 bis 85, bei der das erste Modul (102) eine elektronische Last umfasst.
  87. Vorrichtung gemäß Anspruch 86, bei der die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung eines Eingangsstroms und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung einer Eingangsspannung umfasst.
  88. Vorrichtung gemäß Anspruch 86, bei der die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst.
  89. Vorrichtung gemäß Anspruch 86, bei der die elektronische Last ferner einen Signalverlaufgenerator für eine Steuerung einer Eingangsspannung und einen ersten und einen zweiten Digitalisierer für eine Steuerung und Messung eines Eingangsstroms umfasst, die angepasst sind, um eine konstante Widerstandslast beizubehalten.
  90. Testvorrichtung gemäß einem der Ansprüche 81 bis 89, bei der die Steuerung (100) ein Sendedatenpaket (354) auf jeder der Datenausgabeleitungen (204) überträgt, die mit einer Taktquelle (210) synchronisiert ist, und das Modul (102) ein Empfangspaket (358) auf der Dateneingabeleitung (206) überträgt, die mit der Taktquelle (210) synchronisiert ist, wobei das Empfangspaket (358) von dem Sendepaket (354) verzögert ist.
  91. Testvorrichtung gemäß Anspruch 90, bei der das Sendepaket (354) von dem Empfangspaket (358) um eine Ganzzahl von Taktzyklen verzögert ist.
  92. Testvorrichtung gemäß Anspruch 90, bei der das Sendepaket (354) von dem Empfangspaket (358) um zwei Zyklen der Taktquelle verzögert ist.
  93. Testvorrichtung gemäß einem der Ansprüche 90 bis 92, bei der ein erstes Sendepaket (354) und ein erstes Empfangspaket (358) in einem einzelnen Kommunikationsrahmen gesendet werden, und wobei das erste Empfangspaket (358) ein Statusbit (308) umfasst und das erste Sendepaket (354) ein Antwortbit (412) auf das Statusbit (308) umfasst, wobei das Statusbit (308) vor dem Antwortbit (412) gesendet wird, wobei das Antwortbit (412) an ausgewählte Empfangsmodule (102) gesendet wird, und wobei die Empfangsmodule (102) auf den Empfang des Antwortbits (412) hin eine Aktion einleiten.
  94. Testvorrichtung gemäß Anspruch 93, bei der das Statusbit (308) ein Schnellschutzbit umfasst, das einen Zustand in einem der Module anzeigt, das eine Antwort durch ein anderes der Module rechtfertigt.
  95. Testvorrichtung gemäß Anspruch 94, bei der die Antwort eine Ausgangssperrung umfasst.
  96. Vorrichtung gemäß einem der Ansprüche 90 bis 95, bei der ein erstes Bit für jedes Empfangspaket (358) an einer einzelnen Flanke der Taktquelle auftritt.
  97. Testvorrichtung gemäß einem der Ansprüche 79 bis 96, bei der die Steuerung (100) über die Kommunikationsverbindung (112) ein Ereignis in einem der Module (102) einleitet.
  98. Testvorrichtung gemäß einem der Ansprüche 79 bis 97, bei der die Steuerung (100) ein Sendedatenpaket (354) auf jeder der Datenausgabeleitungen (204) überträgt, die mit der Taktquelle (210) synchronisiert sind, wobei das Sendedatenpaket (354) zumindest ein Auslöserbit (302) enthält.
  99. Testvorrichtung gemäß Anspruch 98, bei der das zumindest eine Auslöserbit (302) durch das erste Modul (102) empfangen wird und eine Operation in dem ersten Modul (102) einleitet.
  100. Testvorrichtung gemäß einem der Ansprüche 79 bis 99, bei der die Steuerung (100) ein Sendedatenpaket (354) auf jeder der Datenausgabeleitungen (304) überträgt, die mit einer Taktquelle (210) synchronisiert sind, wobei jedes der Sendedatenpakete (354) ein jeweiliges Auslösersignal (302, 304) an einer gleichen Bitposition in jedem der Sendepakete (354) umfasst.
  101. Testvorrichtung gemäß Anspruch 100, bei der die jeweiligen Auslösersignale (302, 304) durch die Module (102) empfangen werden, die mit einer einzelnen Flanke der Taktquelle (210) synchronisiert sind, und eine Operation in jedem der Module (102) einleiten, zu einem im Wesentlichen gleichen Zeitpunkt.
  102. Testvorrichtung gemäß einem der Ansprüche 98 bis 101, bei der das Sendepaket (354) mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine getrennte Aktion in dem Modul einleitet.
  103. Testvorrichtung gemäß einem der Ansprüche 98 bis 102, bei der das Sendepaket (354) mehr als ein Auslöserbit umfasst und jedes Auslöserbit eine gleiche Aktion in dem Modul einleitet.
  104. Testvorrichtung gemäß einem der Ansprüche 79 bis 103, bei der die Steuerung (100) jedes der Sendedatenpakete (354) während einem einzelnen Kommunikationsrahmen mit fester Länge bei regelmäßigen Zeitintervallen überträgt.
  105. Testvorrichtung gemäß Anspruch 104, bei der jedes der Module (102) ein Empfangsdatenpaket (358) auf jeder der Dateneingabeleitungen (206) während dem Rahmen überträgt, der mit einer Taktquelle (210) und mit dem Beginn des Rahmensignals (300) synchronisiert ist.
  106. Testvorrichtung gemäß einem der Ansprüche 83 bis 105, bei der die Steuerung (100) mit einem ersten Modul (102) mit einer ersten Kommunikationsrate kommuniziert und mit dem zweiten Modul (104) mit einer zweiten Kommunikationsrate, wobei sich die erste Rate von der zweiten Rate unterscheidet, und wobei die erste Rate und die zweite Rate mit einer Taktquelle (210) synchronisiert sind.
  107. Testvorrichtung gemäß einem der Ansprüche 79 bis 106, bei der sich das Modul (102) vor der Modulkonfiguration selbst identifiziert.
  108. Testvorrichtung gemäß Anspruch 107, bei der die Steuerung (100) das Modul (102) gemäß Informationen in der Selbstidentifikation konfiguriert.
  109. Testvorrichtung gemäß Anspruch 108, bei der die Steuerung (100) das Modul (102) unter Verwendung von JTAG-Protokollen konfiguriert.
  110. Testvorrichtung gemäß einem der Ansprüche 81 bis 109, bei der das Modul (102) einen Modulprozessor (1101) mit JTAG-Funktionalität aufweist, und die Datenausgabe- (204), Dateneingabe- (206) und Taktleitungen (208) mit einem Kommunikationstor des Modulprozessors (1101) und TDI- (1104), TDO- (1105) beziehungsweise TCK- (1103) Eingängen eines JTAG-Tors des Modulprozessors (1101) durch jeweilige Trennungselemente (1102) verbunden sind.
  111. Testvorrichtung gemäß Anspruch 110, die ferner eine Schaltung (1107, 1116) umfasst, die ein TDI-Fenster (1024) und ein TMS-Fenster (1205) an einer der seriellen Kommunikationsverbindungsleitungen erzeugt, um Testmodusauswahlzustände in einem Modulprozessor (1101) beizubehalten und zu steuern, und um JTAG-Teststeuerungs- (TMS-) Informationen zu übertragen, während gleichzeitig die gleichen seriellen Kommunikationsleitungen verwendet werden, um JTAG-Testeingangs- (TDI-) Daten zu übertragen.
  112. Testvorrichtung gemäß Anspruch 110 oder 111, bei der ein Speicherelement (1107) einen TMS-Datenstrom zu dem TMS (1110) des JTAG-Tors auf die anfängliche Kommunikation mit dem Modul (102) über die Kommunikationsverbindung (112) nach einer Modulrücksetzung hin und im Anschluss daran demultiplext und beibehält.
  113. Testvorrichtung gemäß Anspruch 112, bei der der Modulprozessor (1101) ein Speicherelement (1107) auf den Abschluss der Modulprozessorkonfiguration hin voreinstellt, und dadurch einen JTAG-„Testlogikrücksetz"-Zustand bewirkt, der eine JTAG-Operation beendet, während eine Einleitung eines anderen Modus einer seriellen Kommunikation über die gleichen Dateneingabe- (206), Datenausgabe- (204) und Taktleitungen (208) ermöglicht wird.
  114. Testvorrichtung gemäß einem der Ansprüche 83 bis 113, bei der die Steuerung (100) selektiv eines oder mehrere der Module (102) zurücksetzt.
  115. Testvorrichtung gemäß Anspruch 114, die selektiv jeweilige der Taktleitungen (208) zu einem übereinstimmenden Zustand zwingt, für eine vorbestimmte Zeitdauer.
  116. Testvorrichtung gemäß Anspruch 114 oder 115, bei der die Steuerung (100) eines oder mehrere der Rücksetzmodule erfasst, identifiziert und konfiguriert.
DE102004040041A 2003-12-05 2004-08-18 Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen Expired - Fee Related DE102004040041B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US52714103P 2003-12-05 2003-12-05
US60/527,141 2003-12-05
US10/857,134 US7302282B2 (en) 2003-12-05 2004-05-28 Communications system for implementation of synchronous, multichannel, galvanically isolated instrumentation devices
US10/857,134 2004-05-28

Publications (2)

Publication Number Publication Date
DE102004040041A1 true DE102004040041A1 (de) 2005-07-07
DE102004040041B4 DE102004040041B4 (de) 2007-10-18

Family

ID=33424157

Family Applications (2)

Application Number Title Priority Date Filing Date
DE202004012961U Expired - Lifetime DE202004012961U1 (de) 2003-12-05 2004-08-18 Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen
DE102004040041A Expired - Fee Related DE102004040041B4 (de) 2003-12-05 2004-08-18 Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE202004012961U Expired - Lifetime DE202004012961U1 (de) 2003-12-05 2004-08-18 Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen

Country Status (3)

Country Link
US (2) US7302282B2 (de)
DE (2) DE202004012961U1 (de)
TW (1) TW200519389A (de)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8892791B2 (en) * 2003-12-05 2014-11-18 Keysight Technologies, Inc. Communications system for implementation of synchronous, multichannel, galvanically isolated instrumentation devices
US20080201503A1 (en) * 2003-12-05 2008-08-21 Mckim James B Communications System for Implementation of Synchronous, Multichannel, Galvanically Isolated Instrumentation Devices
US7266727B2 (en) * 2004-03-18 2007-09-04 International Business Machines Corporation Computer boot operation utilizing targeted boot diagnostics
TWI274166B (en) * 2004-06-18 2007-02-21 Unitest Inc Semiconductor test apparatus for simultaneously testing plurality of semiconductor devices
DE102004033481A1 (de) * 2004-07-10 2006-01-26 Robert Bosch Gmbh Bildaufnahmesystem
JP2006275986A (ja) * 2005-03-30 2006-10-12 Advantest Corp 診断プログラム、切替プログラム、試験装置、および診断方法
JP2008542932A (ja) * 2005-06-10 2008-11-27 フリースケール セミコンダクター インコーポレイテッド 媒体アクセス制御装置及び方法
EP1894116A1 (de) * 2005-06-10 2008-03-05 Freescale Semiconductor, Inc. Verfahren und einrichtung zur rahmensynchronisation
US7652922B2 (en) 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
TWI543185B (zh) * 2005-09-30 2016-07-21 考文森智財管理公司 具有輸出控制之記憶體及其系統
US8054752B2 (en) 2005-12-22 2011-11-08 Intuitive Surgical Operations, Inc. Synchronous data communication
US7756036B2 (en) * 2005-12-22 2010-07-13 Intuitive Surgical Operations, Inc. Synchronous data communication
US7757028B2 (en) * 2005-12-22 2010-07-13 Intuitive Surgical Operations, Inc. Multi-priority messaging
GB0526448D0 (en) * 2005-12-23 2006-02-08 Advanced Risc Mach Ltd Diagnostic mode switching
US20070237527A1 (en) * 2006-03-31 2007-10-11 Sanjay Dabral Optical debug mechanism
KR101018542B1 (ko) * 2006-06-23 2011-03-03 미쓰비시덴키 가부시키가이샤 제어 장치
US20080123552A1 (en) * 2006-11-29 2008-05-29 General Electric Company Method and system for switchless backplane controller using existing standards-based backplanes
US8504865B2 (en) * 2007-04-20 2013-08-06 Easic Corporation Dynamic phase alignment
TWI331223B (en) * 2007-04-24 2010-10-01 Function Res Inc Boundary scan connector test method capable of fully utilizing test i/o modules
WO2008154957A1 (en) * 2007-06-21 2008-12-24 Abb Technology Ab A communication interface between a control unit and a high voltage unit
US7723978B2 (en) * 2007-12-07 2010-05-25 Agilent Technologies, Inc. Instrumentation device and interface combining multiple elements
US8037327B2 (en) * 2008-03-31 2011-10-11 Agilent Technologies, Inc. System and method for improving dynamic response in a power supply
US8205101B2 (en) * 2008-04-18 2012-06-19 Rockwell Automation Technologies, Inc. On-machine power supply with integral coupling features
US8338986B2 (en) * 2008-04-18 2012-12-25 Rockwell Automation Technologies, Inc. System and method for employing an on-machine power supply with monitoring and control capability
EP2280488A1 (de) * 2009-06-30 2011-02-02 STMicroelectronics S.r.l. Übertragungs- und Empfangseinrichtung für digitale Signale
CN101645054B (zh) * 2009-08-25 2011-07-13 中兴通讯股份有限公司 一种数据采集卡、数据采集卡的扩展控制系统及其方法
US8551083B2 (en) 2009-11-17 2013-10-08 Bsd Medical Corporation Microwave coagulation applicator and system
CN101834714B (zh) * 2010-05-10 2012-12-05 淮阴工学院 可级联通道数量巨大的同步动态测试仪器
US8370656B2 (en) * 2010-07-26 2013-02-05 Aseem Gupta Power and data hub
US9065354B2 (en) * 2011-04-27 2015-06-23 Sunpower Corporation Multi-stage power inverter for power bus communication
US8760123B2 (en) * 2012-10-29 2014-06-24 Qualcomm Incorporated High voltage dedicated charging port
US8745301B2 (en) * 2012-10-29 2014-06-03 Qualcomm Incorporated High voltage dedicated charging port
US9106575B2 (en) * 2013-01-31 2015-08-11 Apple Inc. Multiplexing multiple serial interfaces
EP3171516B1 (de) * 2015-11-19 2019-06-26 Etel S. A.. Schaltungsanordnung mit mindestens einem leistungstransistor für einen umrichter
US9474034B1 (en) * 2015-11-30 2016-10-18 International Business Machines Corporation Power reduction in a parallel data communications interface using clock resynchronization
US10741348B2 (en) * 2017-03-30 2020-08-11 Richtek Technology Corporation Power transmission apparatus
US10476288B2 (en) 2017-06-23 2019-11-12 Dell Products L.P. Power storage adapter for peak shift operation with a portable information handling system
US10381844B2 (en) 2017-06-23 2019-08-13 Dell Products L.P. Sourcing power from a battery or AC-DC converter of a power storage adapter
US10928880B2 (en) 2017-06-23 2021-02-23 Dell Products L.P. Power storage adapter for communicating battery data with a portable information handling system
US10452102B2 (en) 2017-06-23 2019-10-22 Dell Products L.P. Power delivery contract establishment in a power storage adapter
US10978896B2 (en) 2017-06-23 2021-04-13 Dell Products L.P. High efficiency power storage adapter
US10389154B2 (en) 2017-06-23 2019-08-20 Dell Products L.P. Power storage adapter using a high efficiency charging method
US10608443B2 (en) 2017-08-15 2020-03-31 Dell Products L.P. Battery management using battery temperature distribution
US10642333B2 (en) 2017-08-24 2020-05-05 Dell Products L.P. Power storage adapter for efficient supply of power of multiple portable information handling systems
US10620679B2 (en) 2017-09-01 2020-04-14 Dell Products L.P. Prioritizing supplying electrical power by a power storage adapter to connected devices
US10673271B2 (en) 2017-09-01 2020-06-02 Dell Products L.P. Efficient charging of multiple portable information handling systems based on learned charging characteristics
US10404105B2 (en) 2017-09-14 2019-09-03 Dell Products L.P. Power storage adapter for wireless power transmission
US10714797B2 (en) 2017-09-18 2020-07-14 Dell Products L.P. Multilayer thermal laminate with aerogel for battery cell enclosures
US11513928B2 (en) * 2017-09-18 2022-11-29 Dell Products L.P. Power storage adapter with power cable validation
US10488906B2 (en) 2017-09-26 2019-11-26 Dell Products L.P. Power delivery based on temperature and other factors in a power storage adapter
JP7222662B2 (ja) * 2018-11-02 2023-02-15 日本光電工業株式会社 生体情報システム、生体情報センサ及び生体情報処理装置
US11057074B2 (en) * 2019-07-18 2021-07-06 Cosemi Technologies, Inc. Data and power communication cable with galvanic isolation protection
CN112540942B (zh) * 2020-11-20 2023-06-02 中电科思仪科技(安徽)有限公司 一种多通道同步串行通信电路及方法
CN113128148B (zh) * 2021-04-15 2022-11-15 杭州加速科技有限公司 基于延时链的触发信号同步系统、方法及半导体测试设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2674385A1 (fr) * 1991-03-22 1992-09-25 Alsthom Gec Dispositif d'isolement galvanique pour signaux electriques continus ou susceptibles de comporter une composante continue.
US5640521A (en) * 1992-06-17 1997-06-17 Texas Instruments Incorporated Addressable shadow port and protocol with remote I/O, contol and interrupt ports
DE4317366C2 (de) * 1993-05-25 1997-04-17 Ultrakust Electronic Gmbh Verfahren und Vorrichtung zur Bestimmung eines Volumenstromes
US5809220A (en) 1995-07-20 1998-09-15 Raytheon Company Fault tolerant distributed control system
US6467003B1 (en) * 1997-01-21 2002-10-15 Honeywell International, Inc. Fault tolerant data communication network
US6037857A (en) * 1997-06-06 2000-03-14 Allen-Bradley Company, Llc Serial data isolator industrial control system providing intrinsically safe operation
US6457152B1 (en) * 1998-10-16 2002-09-24 Insilicon Corporation Device and method for testing a device through resolution of data into atomic operations
US6587476B1 (en) * 1999-05-26 2003-07-01 3 Com Corporation Ethernet frame encapsulation over VDSL using HDLC
US6766486B2 (en) * 2000-12-05 2004-07-20 Intel Corporation Joint test action group (JTAG) tester, such as to test integrated circuits in parallel

Also Published As

Publication number Publication date
DE202004012961U1 (de) 2004-10-21
US20050125709A1 (en) 2005-06-09
US7302282B2 (en) 2007-11-27
TW200519389A (en) 2005-06-16
US20080022165A1 (en) 2008-01-24
US7668975B2 (en) 2010-02-23
DE102004040041B4 (de) 2007-10-18

Similar Documents

Publication Publication Date Title
DE102004040041B4 (de) Verbessertes Kommunikationssystem für die Implementierung von synchronen galvanisch getrennten Multikanalinstrumentationsvorrichtungen
DE3788601T2 (de) Anordnung zur Datenflussregelung für ein lokales Netz.
DE69935604T2 (de) Gerät, Verfahren und System zur Steuerung und Überwachung von einem Tastatur-, Video- und Mausschaltsystem
US8892791B2 (en) Communications system for implementation of synchronous, multichannel, galvanically isolated instrumentation devices
US20080201503A1 (en) Communications System for Implementation of Synchronous, Multichannel, Galvanically Isolated Instrumentation Devices
EP1217771A2 (de) Verfahren, Taktgebermodul und Empfängermodul zur Synchronisierung
DE112007002944T5 (de) Mustergesteuerte Vollgeschwindigkeits-ATE-Vergleichsfähigkeit für determinierte und nichtdeterminierte IC-Daten
EP0766092B1 (de) Testbare Schaltungsanordnung mit mehreren identischen Schaltungsblöcken
DE10354494B4 (de) Verfahren zur Daten- und Signalübertragung zwischen unterschiedlichen Teileinheiten einer medizintechnischen Anlage
EP0114268B1 (de) Schaltkreis-Baustein
DE19839238B4 (de) Paralleles optisches Sende-/Empfangsmodul
DE10102871C2 (de) Halbleiterbauelement zum Anschluß an ein Testsystem sowie Testsystem mit dem Halbleiterbauelement
DE10031649A1 (de) Can-Controller und Einchip-Computer mit einem eingebauten Can-Controller
EP2274874B1 (de) Überprüfung einer kommunikationsverbindung zwischen feldgeräten
DE102019111881A1 (de) Verfahren und vorrichtung zum senden von daten gemäss einem signalzeitablauf
DE3874518T2 (de) Fehlererkennungs- und -meldemechanismus ueber einen synchronbus.
DE60008785T2 (de) Fehlertolerante virtuelle rückwand für vmebus
DE10297489T5 (de) Phasenanpassungsvorrichtung und Halbleiterspeicher-Testvorrichtung
DE102014111061A1 (de) Verfahren, Vorrichtung und System zur Kommunikation mit einer Einrichtung
DE69936716T2 (de) Verfahren und gerät zum datenaustausch
DE60104465T2 (de) Verfahren und Vorrichtung zur Verteilung eines Synchronisationssignales in einem Nachrichtenübertragungsnetzwerk
DE3838939C2 (de)
EP1099952B1 (de) Schaltungszelle mit eingebauter Selbsttestfunktion und Verfahren zum Testen hierfür
DE3024239A1 (de) Simulator
DE60202697T2 (de) Asynchrone datenübertragungsanordnung mit steuerungsmittel für taktabweichungen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee