DE19629188C2 - System zum Takten und zum kombinierten Takten und Nachrichtenübermitteln sowie Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals - Google Patents

System zum Takten und zum kombinierten Takten und Nachrichtenübermitteln sowie Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals

Info

Publication number
DE19629188C2
DE19629188C2 DE19629188A DE19629188A DE19629188C2 DE 19629188 C2 DE19629188 C2 DE 19629188C2 DE 19629188 A DE19629188 A DE 19629188A DE 19629188 A DE19629188 A DE 19629188A DE 19629188 C2 DE19629188 C2 DE 19629188C2
Authority
DE
Germany
Prior art keywords
signal
output
input
unit
phase
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.)
Expired - Fee Related
Application number
DE19629188A
Other languages
English (en)
Other versions
DE19629188A1 (de
Inventor
Michael A Baxter
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to DE19655086A priority Critical patent/DE19655086B4/de
Publication of DE19629188A1 publication Critical patent/DE19629188A1/de
Application granted granted Critical
Publication of DE19629188C2 publication Critical patent/DE19629188C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Computer And Data Communications (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Description

Die Erfindung betrifft ein Taktsystem und ein System zum kombi­ nierten Takten und Nachrichtenübermitteln sowie ein Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals.
Die Erfindung betrifft somit generell Systeme und Verfahren zum zeitlich gesteuerten Signalverteilen und auch Systeme und Verfah­ ren für eine Nachrichtenübertragung. Insbesondere betrifft die Erfindung ein System und ein Verfahren zum Erzeugen, Verteilen und Empfangen von phasensynchronen Takt- und Nachrichtenübermitt­ lungssignalen.
Das Erzeugen und Verteilen eines Referenz-Zeitsteuersignals ist eine wesentliche Operation in Computing-Umgebungen. Beispielswei­ se wird in Mehrverarbeitungssystemen üblicherweise ein Referenz- Zeitsteuersignal erzeugt und an jeden einzelnen Prozessor ver­ teilt. Beispielsweise kann ein Hauptknoten in einem Netz ein Re­ ferenz-Zeitsteuersignal für Netzsynchronisierzwecke erzeugen und verteilen.
In herkömmlichen digitalen Systemen, welche ein Referenz-Zeit­ steuersignal erzeugen und verteilen, ist das Referenz-Zeitsteuer­ signal üblicherweise das höchstfrequente Signal, das in dem Sy­ stem verwendet ist. Verarbeitungselemente in dem System erhalten das Referenz-Zeitsteuersignal über eine Folge von Pufferverstär­ kern, die entlang eines Verteilungswegs miteinander verbunden sind. Jedes Verarbeitungselement wird entweder mit der Frequenz des Referenz-Zeitsteuersignals oder mit einer festen frequenz-ge­ teilten oder abwärtsgewandelten Frequenz taktgesteuert, welche niedriger ist als diejenige des Referenz-Zeitsteuersignals.
Die Arbeitsfrequenz jedes Verarbeitungselements in dem digitalen System wird während der Systemauslegung festgelegt. Nach einer Systemerstellung ist eine Modifikation der Arbeitsfrequenz von einem oder mehreren Verarbeitungselementen, insbesondere unabhän­ gig voneinander, im allgemeinen ein schwieriger, zeitaufwendiger und kostspieliger Prozeß. Daher besteht eine Forderung nach einer derartigen Einrichtung darin, daß Verarbeitungselement-Arbeits­ frequenzen leicht und unabhängig voneinander modifiziert werden können.
Die Forderung nach höherer Verarbeitungsleistung hat zu der Ent­ wicklung von System geführt, die mit immer höheren Frequenzen ar­ beiten. Wie vorher ausgeführt, ist das Referenz-Zeitsteuersignal üblicherweise das höchstfrequente Signal, das in einem System zu­ geteilt und verwendet ist. Die systemweite Verteilung des Refe­ renz-Zeitsteuersignals wird jedoch zunehmend schwieriger, wenn die Arbeitsfrequenzen höher werden. Komplexe Impedanz- und Signalreflexionswirkungen entlang des Verteilungswegs werden mit steigender Frequenz größer und führen zu einer Impulsdämpfung und -verzerrung.
In beinahe allen digitalen Systemen wird das Referenz-Zeitsteuer­ signal erzeugt und als eine Rechteckimpulsfolge verteilt. Um eine Pulswiedergabetreue zu erhalten und um Signalflankenübergänge mit minimalem Versatz auszubreiten, erfordern Verstärkerstufen, die entlang des Verteilungswegs verwendet worden sind, eine außerge­ wöhnlich stabile Verstärkung sowie eine außergewöhnlich hohe Lei­ stung hinsichtlich der Anstiegsgeschwindigkeit. Wenn die Frequenz des Referenz-Zeitsteuersignals zunimmt, macht dies in unerwünsch­ ter Weise die Verwendung von teueren Komponenten notwendig, um den Anforderungen hinsichtlich der Verstärkung und der Leistung bezüglich der Anstiegsgeschwindigkeit zu genügen. Darüber hinaus kann, wenn das Referenz-Zeitsteuersignal viele Verstärkerstufen durchläuft, was beispielsweise bei einem herkömmlichen Taktver­ teilungsbaum der Fall wäre, ein kommulativer Impulsversatz nicht vermieden werden. Jede Verstärkerstufe erzeugt ein gewisses Zit­ tern an der Signalflanke, wodurch die Unsicherheit hinsichtlich des Referenzzeitsteuersignal-Eintreffzeitpunkts in jedem vorgege­ benen Verarbeitungselement des Systems zunimmt. Was benötigt wird, ist eine Einrichtung, um ein Referenz-Zeitsteuersignals zu erzeugen und zu verteilen, welches die vorstehend beschriebenen Probleme minimiert, während gleichzeitig die Arbeitsfrequenz je­ des Verarbeitungselements maximiert wird.
Rechensysteme, welche durch Mehrfachverarbeitungselemente gekenn­ zeichnet sind, erfordern oft die Verteilung eines gemeinsamen Satzes von Nachrichten-Übermittlungssignalen an jedes Verarbei­ tungselement in dem System. Der gemeinsame Satz von Nachrichten- Verarbeitungssignalen kann beispielsweise dazu verwendet werden, anzuzeigen, daß ein systemweites Rücksetzen erforderlich ist. Das Verteilen eines gemeinsamen Satzes von Übermittlungssignalen an jedes Verarbeitungselement ist üblicherweise unter der Bezeich­ nung Übertragungsoperation bekannt.
Bisher wird eine Nachrichtenübermittlung-Signalverteilung im all­ gemeinen erreicht über: 1) ein der Öffentlichkeit zugängliches Verbundnetz und 2) eine spezialisierte Hardware und möglicherwei­ se eine spezialisierte Software, welche jedem Verarbeitungsele­ ment zugeordnet ist, das vorgesehen ist, um Nachrichtenübermitt­ lungssignale von dem Verbundnetz zu empfangen und an das Verbund­ netz zu übertragen. Die Maximalzeit, die erforderlich ist, um Nachrichtenübermittlungssignale von einem Verarbeitungselement zu einem anderen beim Stand der Technik zu übertragen, kann von we­ nigen Mikrosekunden bis zu einigen hundert Mikrosekunden reichen in Abhängigkeit von der Systemgröße und den verwendeten Nachrich­ tenübermittlungssignal-Managementtechniken. Bei einer derartigen Latenz ist in unannehmbarer Weise die Möglichkeit verhindert, hochschnelle Übertragungsoperationen durchzuführen.
Herkömmliche Systeme und Verfahren für eine Nachrichtensignalver­ teilung sind nicht in der Lage, Übertragungsoperationen durchzufüh­ ren, bei welchen die Latenz in der Größenordnung der Zeit liegt, die erforderlich ist, um Signale durch Hardware in einem einzel­ nen Verarbeitungselement auszubreiten (d. h. Nanosekunden). Darü­ ber hinaus können sich beim Stand der Technik Nachrichtensignal- Transferverzögerungen in signifikanter Weise zwischen verschiede­ nen Stellen in dem Verbundnetz ändern. Dies wiederum unterbindet die Möglichkeit, die Verarbeitungselemente zu vereinigen, um si­ multane oder beinahe simultane Operationen auf einem systemweiten Niveau durchzuführen. Was benötigt wird, ist eine Einrichtung, um die vorerwähnten Beschränkungen beim Stand der Technik zu über­ winden.
WO 93/14587 betrifft ein Datenübertragungssystem mit Quadra­ turamplitudenmodulation (QAM). Bei diesem System wird der zu übertragenden Dateninformation eine Synchronisationssequenz von Symbolen hinzugefügt, die beim Empfänger die Zeitablauf­ steuerung bzw. Synchronisierung erleichtern. Die Synchroni­ sationssymbole stellen Signale für eine Steuersignalerzeu­ gung bereit.
Aufgabe der vorliegenden Erfindung ist es, ein verbessertes System bzw. Verfahren zum erzeugen eines Taktsignals bzw. eines kombinierten Takt- und Nachrichtensignals zu schaffen.
Diese Aufgabe wird durch ein System gemäß Patentanspruch 1 bzw. 13 sowie durch ein Verfahren gemäß Patentanspruch 25 gelöst. Weiterbildungen sind Gegenstand der Unteransprüche.
Die vorliegende Erfindung schafft daher ein System und ein Ver­ fahren zum phasensynchronen Takten mit flexibler Frequenz und zum Nachrichtenübermitteln. Das System weist vorzugsweise eine Ma­ ster-Zeitbasiseinheit, einen Systembus mit einem Abschluß und zu­ mindest eine lokale Zeitbasiseinheit auf. In der Master-Zeit­ basiseinheit erzeugt ein kalibriertes Referenzsystem ein erstes und zweites Systemreferenzsignal, das mit einem Ausgang eines Kristallfrequenzreferenz-Oszillators phasenstarr verriegelt ist. Die ersten und zweiten Systemreferenzsignale sind sinusförmige Signale mit einer Phasenverschiebung von 90°. Eine Modulationszu­ standseinrichtung empfängt Nachrichtensignale von einer externen Quelle, wandelt die Nachrichtensignale synchron in Bitfolgen um und führt eine Pegelumwandlung durch, um jede Bitfolge in ein In­ formationssignal umzuwandeln. Ein Modulator führt eine direkte Trägeramplitudenmodulation mit den ersten und zweiten Systemrefe­ renzsignalen auf der Basis der Informationssignale durch und gibt die modulierten Systemreferenzsignale an den Systembus ab. Der Systembus ist vorzugsweise aus Übertragungsleitungen gebildet, welche die modulierten Systemreferenzsignale zu jeder lokalen Zeitbasiseinheit verteilen. Ausführung des Systembus in die­ ser Weise erlaubt die genaue Bestimmung des Eintreffzeitpunkts eines Signals, das von der Master-Zeitbasiseinheit zu einer vor­ gebenen lokalen Zeitbasiseinheit gesendet worden ist.
In jeder lokalen Zeitbasiseinheit erzeugt ein lokaler Referenzos­ zillator ein erstes und zweites lokales Referenzsignal, das pha­ senstarr zu den ersten und zweiten modulierten Systemreferenz­ signalen ist. Zusätzlich erzeugt ein lokaler Zeitsteueroszillator (Local Timing Oscillator-LTO) ein versetztes Signal. Vorzugsweise ist die Frequenz des versetzten Signals höher als diejenige der Systemreferenzsignale. Ein Mischer und ein Diplexer erzeugen ein lokales Zeitsteuersignal aus dem zweiten lokalen Referenzsignal und dem versetzten Signal über eine Frequenz-Aufwärtsumwandlung. Folglich ist die Frequenz des lokalen Zeitsteuersignals vorzugs­ weise gleich der Summe der Frequenz des versetzten Signals und der Frequenz der Systemreferenzsignale. Das lokale Zeitsteuer­ signal wird an eine lokale Zeitsteuerleitung abgegeben, um vor­ zugsweise Zeitsteuerinformation an einer oder mehreren externen Komponenten zu erzeugen, welche der lokalen Zeitbasiseinheit zu­ geordnet sind.
Ein erster und zweiter Frequenzteiler schaffen frequenzgeteilte Versionen des lokalen Zeitsteuersignals und des zweiten lokalen Referenzsignals an einem Phasen- und Frequenzdetektor. Dieser De­ tektor gibt ein Abstimmsignal ab, das die Frequenz des mittels des LTO erzeugen, versetzten Signals steuert. Auf diese Weise ist die frequenzgeteilte Version des lokalen Zeitsteuersignals mit der frequenzgeteilten Version des zweiten lokalen Referenzsignals phasenstarr gekoppelt.
Der erste und der zweite Frequenzteiler sind durch Teilerkonstan­ te k1 bzw. k2 gekennzeichnet. In der bevorzugten Ausführungsform sind die ersten und zweiten Frequenzteiler durch Verwenden einer rekonfigurierbaren Logikvorrichtung ausgeführt, wie beispielswei­ se einer feldprogrammierbarer Gateanordnung (FPGA). Eine derarti­ ge Ausführung sorgt für die selektive Modifikation der Teilerkon­ stanten k1 und k2, wodurch die programmierbare Spezifikation der Frequenz des lokalen Zeitsteuersignals zu einer vorgegebenen Zeit erleichtert wird. Die Erfindung schafft folglich eine Einrich­ tung, durch welche die Frequenz, die von einer vorgegebenen loka­ len Zeitbasiseinheit abgegeben worden ist, unabhängig von irgend­ einer lokalen Zeitbasiseinheit leicht modifiziert werden kann.
In jeder lokalen Zeitbasiseinheit demoduliert eine kohärente Emp­ fangseinheit synchron die modulierten Systemreferenzsignale und gewinnt Bitfolgen zurück, die in die ersten und zweiten Systemre­ ferenzsignale durch den Modulator in der Master-Zeitbasiseinheit codiert wurden. Eine Nachrichten-Assemblereinheit decodiert syn­ chron die Bitfolgen in Nachrichten und Daten gemäß einem Kenn­ zeichnungsplan. Die Nachrichten enthalten selektiv ein synchrones Systemrücksetzsignal, ein Systemunterbrechungssignal und ein Sy­ stemereignissignal. Ein Datenselektor gibt die Nachrichten entwe­ der an einen ersten oder einen zweiten Kennzeichnungskanal ab. In der Nachrichten-Assemblereinheit werden Datensignale zu Datenwor­ ten gruppiert, von denen jedes an einen synchronen Datenkanal ab­ gegeben wird.
Wie vorstehend beschrieben, werden gemäß der Erfindung Nachrich­ ten über die direkte Trägeramplitudenmodulation direkt in die Systemreferenzsignale codiert. Die modulierten Systemreferenz­ signale werden über Übertragungsleitungen,(d. h. per Draht) an je­ de lokale Zeitbasiseinheit verteilt. Die Erfindung erleichtert somit synchrone Übertragungsoperationen, die durch Latenzen ge­ kennzeichnet sind, die um ein Vielfaches niedriger als beim Stand der Technik sind.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausfüh­ rungsformen unter Bezugnahme auf die anliegenden Zeichnungen im einzelnen beschrieben. Es zeigen.
Fig. 1 ein Blockdiagramm einer bevorzugten Ausführungsform eines Systems zum phasensynchronen Takten mit flexibler Frequenz und zum Nachrichtenübermitteln gemäß der Erfindung;
Fig. 2A ein Blockdiagramm einer ersten bevorzugten Ausführungsform eines kalibrierten Referenzsystems gemäß der Erfindung;
Fig. 2B ein Blockdiagramm einer zweiten Ausführungsform eines ka­ librierten Referenzsystems gemäß der Erfindung;
Fig. 3A ein Blockdiagramm einer bevorzugten Ausführungsform einer Kalibriersteuereinheit gemäß der Erfindung;
Fig. 3B ein Blockdiagramm einer bevorzugten Ausführungsform eines ersten Frequenz-Spannung-Umsetzers gemäß der Erfindung;
Fig. 3C ein Blockdiagramm einer bevorzugten Ausführungsform eines Energieeinschalt-Rücksetz-Integrators gemäß der Erfindung;
Fig. 3D ein Blockdiagramm einer bevorzugten Ausführungsform eines System-Quadratur-Referenzoszillators gemäß der Erfindung;
Fig. 4A ein Blockdiagramm einer bevorzugten Ausführungsform einer Modulationszustandseinrichtung gemäß der Erfindung;
Fig. 4B eine Blockdiagramm einer bevorzugten Ausführungsform einer Zustandseinrichtung-Logikeinheit in der Modulationszu­ standseinrichtung;
Fig. 4C ein bevorzugtes Zeitsteuerdiagramm einer Ablaufeinheit der Erfindung;
Fig. 5A ein Blockdiagramm eines ersten verstärkungsgeregelten Ver­ stärker der Erfindung;
Fig. 5B eine Tabelle, die einen bevorzugten Kennzeichnungsplan der Erfindung festlegt;
Fig. 6 ein Blockdiagramm einer bevorzugten Ausführungsform einer lokalen Zeitbasiseinheit der Erfindung;
Fig. 7A eine Tabelle, die einen bevorzugten lokalen Frequenzplan der Erfindung wiedergibt;
Fig. 7B eine Tabelle, die einen bevorzugten Systemfrequenzplan der Erfindung wiedergibt;
Fig. 8 ein Blockdiagramm einer kohärenten Empfangseinheit der Erfindung;
Fig. 9A ein Blockdiagramm einer bevorzugten Ausführungsform eines Gate-Folgegenerators der Erfindung;
Fig. 9B ein bevorzugtes Zeitsteuerdiagramm für Signale, welche durch den Gate-Folgegenerator erzeugt worden sind;
Fig. 9C ein Blockdiagramm einer bevorzugten Ausführungsform einer Analog-Digital-Umsetzeinheit der Erfindung;
Fig. 10 ein Blockdiagramm einer bevorzugten Ausführungsform einer Nachrichten-Assemblerreinheit der Erfindung;
Fig. 11A ein Blockdiagramm einer bevorzugten Ausführungsform einer Zeitsteuer-Synchronisiereinheit der Erfindung;
Fig. 11B ein Blockdiagramm einer bevorzugten Ausführungsform eines Signallistenspeichers der Erfindung;
Fig. 12A ein Blockdiagramm einer bevorzugten Ausführungsform einer Synchronsystem-Rücksetzeinheit der Erfindung;
Fig. 12B ein Blockdiagramm einer bevorzugten Ausführungsform einer Systemunterbrechungs-Zustandseinrichtung der Erfindung;
Fig. 12C ein Blockdiagramm einer bevorzugten Ausführungsform einer Systemereignis-Zustandseinrichtung der Erfindung;
Fig. 12D ein Blockdiagramm einer bevorzugten Ausführungsform einer Synchrondatenkanal-Zustandseinrichtung und eines Daten-As­ semblerspeichers der Erfindung;
Fig. 13A ein Wellenformdiagramm, das ein bevorzugtes Systemrefe­ renzsignalprotokoll der Erfindung zeigt;
Fig. 13B ein Wellenformdiagramm, das ein bevorzugtes Systemrefe­ renzsignal-Modulationsprotokoll zeigt;
Fig. 13C ein Wellenformdiagramm eines bevorzugten Systemreferenz­ signal-Demodulationsprotokolls;
Fig. 14A ein Ablaufdiagramm von bevorzugten Master-Zeitbasisein­ heit-Operationen in der Erfindung;
Fig. 14B ein Ablaufdiagramm von bevorzugten lokalen Zeitbasisein­ heit-Operationen in der Erfindung;
Fig. 15 ein Blockdiagramm einer bevorzugten Ausführungsform eines Systems für ein skalierbares, paralleles, dynamisch rekon­ figurierbares Berechnen, gemäß der Erfindung;
Fig. 16 ein Blockdiagramm einer bevorzugten Ausführungsform einer S-Einrichtung gemäß der Erfindung;
Fig. 17A ein beispielhaftes Programmauflisten, das Rekonfigura­ tionsanweisungen enthält;
Fig. 17B ein Ablaufdiagramm von herkömmlichen Kompilieroperationen, die während der Kompilation einer Folge von Programmbefeh­ len durchgeführt worden sind;
Fig. 17C und 17D ein Ablaufdiagramm von bevorzugten Kompilierope­ rationen, welche mittels eines Kompilierers für ein dyna­ misch rekonfigurierbares Berechnen durchgeführt worden sind;
Fig. 18 ein Blockdiagramm einer bevorzugten Ausführungsform einer dynamisch rekonfigurierbaren Verarbeitungseinheit der Er­ findung;
Fig. 19 ein Blockdiagramm einer bevorzugten Ausführungsform einer Befehlabrufeinheit der Erfindung;
Fig. 20 ein Zustandsdiagramm, das eine bevorzugte Gruppe von Zu­ ständen zeigt, die durch eine Befehlszustands-Ablauf­ steuereinheit der Erfindung gestützt sind;
Fig. 21 ein Zustandsdiagramm, das eine bevorzugte Gruppe von Zu­ ständen zeigt, welche durch Unterbrechungslogik der Erfin­ dung getragen sind;
Fig. 22 ein Blockdiagramm einer bevorzugten Ausführungsform einer Datenbeoperationseinheiter Erfindung;
Fig. 23A ein Blockdiagramm einer ersten beispielshaften Ausfüh­ rungsform der Datenoperationseinheit, welche durch die Ausführung einer universellen Außenschleifen-Befehlssatz- Architektur konfiguriert ist;
Fig. 23B ein Blockdiagramm einer zweiten beispielshaften Ausfüh­ rungsform der Datenoperationseinheit, welche für die Ver­ wirklichung einer Innenschleifen-Befehlssatz-Architektur konfiguriert ist;
Fig. 24 ein Blockdiagramm einer bevorzugten Ausführungsform einer Adressenoperationseinheit der Erfindung;
Fig. 25A ein Blockdiagramm einer ersten beispielshaften Ausfüh­ rungsform der Adressenoperationseinheit, welche für die Verwirklichung einer universellen Außenschleifen-Befehls­ satz-Architektur konfiguriert ist;
Fig. 25B ein Blockdiagramm einer zweiten beispielhaften Ausfüh­ rungsform der Adressenoperationseinheit, welche für die Verwirklichung einer Innenschleifen-Befehlssatz-Architek­ tur konfiguriert ist;
Fig. 26A ein Diagramm, das eine beispielshafte Zuordnung von rekon­ figurierbaren Hardware-Ressourcen zwischen der Befehlsab­ rufeinheit, der Datenoperationseinheit und der Adresseno­ perationseinheit für eine Außenschleifen-Befehlssatz-Ar­ chitektur zeigt;
Fig. 26B ein Diagramm einer beispielshaften Zuordnung von rekonfi­ gurierbaren Hardware-Ressourcen zwischen der Befehlsabfra­ geeinheit der Datenoperationseinheit und der Adressenope­ rationseinheit für eine Innenschleifen-Befehlssatz-Archi­ tektur;
Fig. 27 ein Blockdiagramm einer bevorzugten Ausführungsform einer T-Einrichtung der Erfindung;
Fig. 28 ein Blockdiagramm einer Verbindungs-Ein-/Ausgabeeinheit der Erfindung;
Fig. 29 ein Blockdiagramm einer bevorzugten Ausführungsform einer Ein-/Ausgabe-T-Einrichtung der Erfindung;
Fig. 30 ein Blockdiagramm einer bevorzugten Ausführungsform einer universellen Verbindungsmatrix der Erfindung, und
Fig. 31A und 31B ein Ablaufdiagramm eines bevorzugten Verfahrens für ein skalierbares, paralleles, dynamisch rekonfigurier­ bares Berechnen gemäß der Erfindung.
In Fig. 1 ist ein Blockdiagramm einer bevorzugten Ausführungsform eines Systems 10 zum phasensynchronen Takten mit flexibler Fre­ quenz und zum -Nachrichtenübermitteln gemäß der Erfindung darge­ stellt. Das System 10 weist vorzugsweise eine Master-Zeitbasis­ einheit 12, einen Systembus 14, einen Leitungsabschluß 20 und zu­ mindest eine lokale Zeitbasiseinheit 22 auf. Vorzugsweise weist das System 10 mehrere lokale Zeitbasiseinheiten 22 auf. Die Ma­ ster-Zeitbasiseinheit 12 hat einen ersten Ausgang, welcher mit einer ersten Leitung 16 des Systembus 14 verbunden ist, einen zweiten Ausgang, der mit einer zweiten Leitung 18 des Systembus 14 verbunden ist, einen Eingang der mit einer Nachrichtenüber­ mittlungs-Signalquelle über eine erste Nachrichtenleitung 14 ver­ bunden ist und einen Rücksetzausgang, der ein Rücksetzsignal an einer oder mehreren, zu dem System 10 externen Komponenten über eine Rücksetzleitung 42 schafft. Die Nachrichtenübermittlungs- Signalquelle ist vorzugsweise ein zu dem System 10 externer Com­ puter. Jede lokale Zeitbasiseinheit 22 hat einen ersten und einen zweiten Ausgang, die mit der ersten bzw. zweiten Leitung 16, 18 des Systembus 14 verbunden sind. Jede lokale Zeitbasiseinheit 22 hat auch einen Zeitsteuerausgang, welcher ein lokales Zeitsteuer­ signale an eine oder mehrere zu dem System 10 externen Komponen­ ten über eine lokale Zeitsteuerleitung 24 schafft, einen Sperr­ ausgang, welcher ein erstes Sperr- oder Verriegelungssignal an eine oder mehrere externen Komponenten über eine erste Leitung 240 schafft, einen ersten Kennzeichnungsausgang, welcher einen ersten Signalsatz an externen Komponenten über einen ersten Kenn­ zeichnungskanal 320 schafft, einen zweiten Signalisierausgang, welcher einen zweiten Signalsatz an externen Komponenten über ei­ nen zweiten Kennzeichnungskanal 330 schafft, und einen Datenaus­ gang, welcher Daten an externen Komponenten über einen Synchron­ datenkanal 340 erzeugt. Der Leitungsabschluß 20 hat einen ersten und zweiten Eingang, welcher mit der ersten Leitung 16 bzw. der zweiten Leitung 18 des Systembus 14 verbunden ist. Der Leitungs­ abschluß 20 ist vorzugsweise eine Impedanz, die derjenigen des Systembus 14 angepaßt ist. Der Fachmann erkennt, daß in einer an­ deren Ausführungsform in welcher der Systembus 14 mehr als zwei Leitungen 16, 18 aufweist, jede derartige Leitung an dem Lei­ tungsabschluß 20 enden würde.
In der Master-Zeitbasiseinheit 12 werden Systemreferenzsignale erzeugt, um eine systemweite Frequenzreferenz zu schaffen. Ele­ mente in der Master-Zeitbasiseinheit 16 modulieren selektiv die Systemreferenzsignale gemäß Nachrichtensignalen, welche über die erste Nachrichtenleitung 40 empfangen worden sind. Der Systembus 14 gibt die modulierten Systemreferenzsignale an jede lokale Zeitbasiseinheit 22 ab. In jeder Einheit 22 wird ein lokales Zeitsteuersignal erzeugt und werden die Systemreferenzsignale de­ moduliert. Eine oder mehrere externe Komponenten in dem System 10 benutzen vorzugsweise das lokale Zeitsteuersignal, die demodu­ lierten Systemreferenzsignale und/oder Information, die von den demodulierten Systemreferenzsignalen abgeleitet worden ist. Hier­ bei ist eine externe Komponente vorzugsweise eine Verarbeitungs­ einheit, ein Computer oder eine einem Computersystem zugeordnete einheit, ein Computer oder eine einem Computersystem zugeordnete Vorrichtung. Das System 10 der Erfindung wird vorzugsweise bei einem prallelen Rechensystem verwendet. Die interne Struktur und Funktionalität jedes Elements der vorliegenden Erfindung wird nachstehend im einzelnen beschrieben.
Master-Zeitbasiseinheit
In Fig. 1 weist die Master-Zeitbasiseinheit 12 vorzugsweise ein kalibriertes Referenzsystem (CRS) 30, einen Modulator 32, eine Modulations-Zustandseinrichtung (Modulation State Machine-MSM) 34 und einen ersten und einen zweiten Zustandsverstärker 36 bzw. 38 auf. Das CRS 30 hat einen ersten und einen zweiten Referenzaus­ gang, der mit einem ersten bzw. einem zweiten Trägereingang des Modulators 32 verbunden ist, einen dritten Referenzausgang, der mit einem Referenzeingang des MSM 34 über eine Referenzleitung 715 verbunden ist, und einen Rücksetzausgang, welcher den Rück­ setzausgang der Master-Zeitbasiseinheit bildet. Zusätzlich zu den ersten und zweiten Trägereingängen hat der Modulator 32 einen er­ sten und einen zweiten Modulationseingang, der mit einem ersten bzw. zweiten Modulationsausgang des MSM 34 verbunden ist. Der Mo­ dulator 32 hat ferner einen ersten Ausgang, der mit einem Eingang des ersten Verteilungsverstärker 32 verbunden ist, und einen zweiten Ausgang, der mit einem Eingang des zweiten Verteilungs­ verstärkers 38 verbunden ist. Zusätzlich zu den vorstehend be­ schriebenen Verbindungen hat der MSM 34 auch einen Eingang, wel­ cher den Eingang der Master-Zeitbasiseinheit 12 bildet, an wel­ cher Nachrichtenübermittlungssignale empfangen werden. Schließ­ lich hat der erste Verteilungsverstärker 36 einen Ausgang, wel­ cher den ersten Ausgang der Master-Zeitbasiseinheit bildet; der zweite Verteilungsverstärker 38 hat einen Ausgang, welcher den zweiten Ausgang der Master-Zeitbasiseinheit bildet. In einer bei­ spielhaften Ausführungsform sind jeweils die ersten und zweiten Verteilungsverstärker 36 und 38 durch Verwenden eines Rückkop­ plungs-Operationsverstärker LM6181 (von National Semiconductor Corporation, Santa Clara, CA) ausgeführt.
Das CRS 30 erzeugt vorzugsweise ein erstes und ein zweites Sy­ stemreferenzsignal an den ersten bzw. zweiten Referenzausgängen, um die Systemreferenzsignale zu erzeugen. In der bevorzugten Aus­ führungsform sind die ersten und zweiten Systemreferenzsignale sinusförmige Signale mit einer 90° Phasenverschiebung. Das heißt, die Phasendifferenz zwischen den ersten und zweiten Systemrefe­ renzsignalen ist π/2.
In Fig. 2A ist ein Blockdiagramm einer ersten und bevorzugten Aus­ führungsform des kalibrierten Referenzsystems (CRS) 30 darge­ stellt. Das CRS 30 weist vorzugsweise einen Kristallfrequenz-Re­ ferenzoszillator 70, einen System-Quadraturreferenz-Oszillator (QRO) 72, einen ersten Phasendetektor 74, ein erstes Schleifen­ filter 76, einen ersten und zweiten Energieteiler 78 bzw. 80, ei­ nen ersten und zweiten Pufferverstärker 82 bzw. 84, eine Amplitu­ den-Detektoreinheit 88 und eine Kalibriersteuereinheit 90 auf. Der Referenzoszillator 70 ist vorzugsweise ein herkömmlicher Kri­ stalloszillator, welcher ein Originalfrequenz-Referenzsignal er­ zeugt, welches als ein Basissignal dient, mit welchem die ersten und zweiten Systemreferenzsignale phasenstarr verriegelt werden, wie später noch im einzelnen beschrieben wird. Der System-QRO 72 erzeugt vorzugsweise ein in Phase liegendes Referenzsignal und ein um 90° verschobenes Referenzsignal in einer Weise, die später noch im einzelnen anhand von Fig. 3D beschrieben wird. Der erste Phasendetektor 74 und das erste Phasenfilter 76 bilden eine her­ kömmliche phasenstarr verriegelte Schleife, um eine Phasenanglei­ chung zwischen dem Originalfrequenz-Referenzsignal und dem um 90° verschobenen Referenzsignal (und folglich auch dem in Phase lie­ genden Referenzsignal) zu erhalten. Der erste Phasendetektor 72 ist entsprechend geschaltet, um das Originalfrequenz-Referenz­ signal und eine erste, in der Leistung reduzierte Version des um 90° phasenverschobenen Referenzsignals zu empfangen, das mittels des zweiten Energieteilers 80 erzeugt worden ist. Der erste Pha­ sendetektor 72 ist entsprechend geschaltet, um ein ersten Phasen­ fehlersignal an das erste Schleifenfilter 76 abzugeben, welches seinerseits entsprechend geschaltet ist, um ein erstes Abstimm­ signal über eine erste Kalibrierleitung 77 an den System-QRO 72 abzugeben. In der bevorzugten Ausführungsform ist der erste Pha­ sendetektor 74 ein Phasendetektor des I-Typs und das erste Schleifenfilter 76 ist ein Tiefpaßfilter, wobei beide Filter dazu verwendet werden, eine Phasenverriegelung in einer dem Fachmann geläufigen, herkömmlichen Weise durchzuführen. Der System-QRO 72 ist zusätzlich entsprechend geschaltet, um Kalibriersignale von der Kalibriersteuereinheit 90 über eine zweite Kalibrierleitung 51 zu erhalten, was später noch im einzelnen anhand von Fig. 3A beschrieben wird.
Die beiden Energieteile 78, 80 weisen vorzugsweise eine ausgegli­ chene Energieteilerschaltung auf, die vorgesehen ist, um das in Phase liegende und das um 90° phasenverschobene Referenzsignal aufzunehmen. Der erste Energieteiler 78 schafft eine erste in der Leistung reduzierte Version des in Phase liegenden Referenz­ signals an der Kalibriersteuereinheit 90, eine zweite in der Lei­ stung reduzierte Version des in Phase liegenden Referenzsignals an der Amplitudendetektoreinheit 88 und eine dritte in der Lei­ stung reduzierte Version des in Phase liegenden Referenzsignals an dem ersten Pufferverstärker 82. In ähnlicher Weise schafft der zweite Energieteiler 80 eine zweite in der Leistung reduzierte Version des in der Phase um 90° verschobenen Referenzsignals an der Amplitudendetektoreinheit 88 und eine dritte in der Leistung reduzierte Version des um 90° in der Phase verschobenen Referenz­ signals an dem zweiten Pufferverstärker 84. In der bevorzugten Ausführungsform haben die zweite Version des in Phase liegenden Referenzsignals und die zweite Version des um 90° in der Phase verschobenen Referenzsignals Amplituden mit identischen Scheitel­ werten, was auch für die dritte Version der in Phase und um 90° in der Phase verschobenen Referenzsignale gilt.
Der erste Pufferverstärker 82 hat ein Ausgangssignal, das den er­ sten Referenzausgang des CRS bildet und gibt folglich das erste Systemreferenzsignal ab. Ferner hat auch der zweite Pufferver­ stärker 84 ein Ausgangssignal, das den zweiten Referenzausgang des CRS 30 bildet und folglich gibt er das zweite Systemreferenz­ signal ab. Wie vorstehend beschrieben, ist das in Phase liegende und das um 90° in der Phase verschobene Referenzsignal jeweils phasenstarr bezüglich des Originalfrequenz-Referenzsignals. Da die ersten und zweiten Systemreferenzsignale in der Leistung re­ duzierte Versionen der in Phase liegenden und um 90° in der Phase verschobene Referenzsignale sind, sind die ersten und zweiten Sy­ stemreferenzsignale phasenstarr zu dem Original-Referenzsignal.
Die Amplitudendetektoreinheit 88 weist vorzugsweise zwei herkömm­ liche Amplitudendetektoren auf, so daß ein erster Amplitudende­ tektor ein in Phase liegenden Amplitudensignal und ein zweiter Amplitudendetektor ein um 90° in der Phase verschobenes Amplitu­ densignal erzeugt. Fachleute erkennen, daß das hier beschriebene System inhärent wechselstromgekoppelt ist. Wenn in einer anderen Ausführungsform das Aufrechterhalten eines speziellen Gleich­ strompegels gefordert wird, könnte eine Schaltung zum Fühlen von einem oder mehreren Gleichstrom-Offsets in einer Weise enthalten sein, die analog derjenigen für die Amplitudendetektoreinheit 88 ist, das heißt in einer Art und Weise, welche dem Fachmann ohne weiteres verständlich ist.
Die Kalibriersteuereinheit 90 erhält Signale, die in dem CRS 30 erzeugt worden sind und erzeugt ihrerseits einen Satz Kalibrier­ signale, die in dem System-QRO 72 über die zweite Kalibrierlei­ tung 51 erzeugt sind. Die Kalibriersteuereinheit 90 ist vorzugs­ weise entsprechend geschaltet, um zu empfangen, das Originalfre­ quenz-Referenzsignal über eine Frequenz-Eingangsleitung 91, ein zweites Verriegelungssignal, das von dem ersten Phasendetektor 74 über eine zweite Leitung 92 abgegeben worden ist, die erste in der Leistung reduzierte Version des in Phase liegenden Referenz­ signals über eine Energieüberwachungsleitung 93, das in Phase liegende Amplitudensignal über eine erste Amplitudenleitung 97 und das um 90° in der Phase verschobene Amplitudensignale über eine zweite Amplitudenleitung 96. Die Kalibriersteuereinheit 90 gibt zusätzlich ein synchronisiertes Leistungs-/Rücksetz-(POR-) Signal, um ein Rücksetzausgangssignal des CRS 30 zu bilden, und ein Spannungsreferenzsignal ab, um das dritte Referenzausgangs­ signal des CRS 30 zu bilden.
In Fig. 3A ist ein Blockdiagramm einer bevorzugten Ausführungsform der Kalibriersteuereinheit 90 dargestellt, welche vorzugsweise einen ersten Amplitudendifferenzverstärker 120, einen ersten Am­ plitudenfehlerintegrator 122, einen zweiten Amplitudendifferenz­ verstärker 124, einen zweiten Amplitudenfehlerintegrator 126, eine Gleichspannungsreferenz 130, einen ersten Begrenzer 132, ei­ nen ersten Frequenz-Spannungs-(F-V-)Umsetzer 134, einen zweiten F-V-Umsetzer 136, einen Frequenzdiffetenzverstärker 138, einen Frequenzfehlerintegrator 140, einen POR-Integrator 142 und erste und zweite Flip-Flops 144 bzw. 146 aufweist.
Der erste Amplituden-Differenzverstärker 120 ist entsprechend ge­ schaltet, um das in Phase liegende Amplitudensignal über die erste Amplitudenleitung 96 aufzunehmen. Der Verstärker 120 hat zusätzlich einen Eingang, der mit einem Ausgang der Gleichspan­ nungs-Referenzeinheit 130 verbunden ist. Der erste Verstärker 120 gibt ein Amplitudenfehlersignal ab, das er von dem ersten Ampli­ tudenfehlerintegrator 122 erhalten hat, welcher seinerseits ein erstes Pegeleinstellsignal abgibt. In entsprechender Weise hat der zweite Amplitudendifferenzverstärker 124 Eingänge, die mit der zweiten Amplitudenleitung 97 und auch mit dem Ausgang der Gleichspannung-Referenzeinheit 130 verbunden sind. Der zweite Am­ plituden-Referenzverstärker 124 gibt einen Amplitudenfehler ab, welcher er von dem zweiten Integrator 126 erhalten hat, welcher seinerseits ein zweites Pegeleinstellsignal abgibt.
Der erste F-V-Umsetzer 134 erhält das Originalfrequenz-Referenz­ signale über die Frequenz-Eingabeleitung 91 und gibt dementspre­ chend eine erste Spannung ab. In Fig. 3B ist ein Blockdiagramm ei­ ner bevorzugten Ausführungsform des ersten F-V-Umsetzers 34 dar­ gestellt, welcher vorzugsweise ein Hochpaßfilter 150 mit einer Durchlaßcharakteristik, wie sie dargestellt ist, einen Scheiten­ wert-Detektor 152, einen Ausgangspuffer 154 und einen Kondensator 158 hat. Die Sperrbandflanke des Hochpaßfilters ist vorzugsweise so festgelegt, wie in Fig. 3B dargestellt, wobei fref die Frequenz ist, die von dem Referenzoszillator 70 abgegeben worden ist.
Der zweite F-V-Umsetzer 136 hat vorzugsweise einen Aufbau und eine Durchlaßcharakteristik, welche identisch mit derjenigen des ersten F-V-Umsetzers 134 ist. Zusammen mit dem ersten Begrenzer 132 erhält der zweite F-V-Umsetzer 136 die erste in der Leistung reduzierte Version des in Phase liegenden Referenzsignals über die Energie-Überwachungsleitung 93 und gibt eine zweite Spannung in herkömmlicher Weise ab. Der Frequenz-Differenzverstärker 138 gibt ein Spannungsfehlersignal ab, das einen Spannungsfehler zwi­ schen der ersten und der zweiten Spannung anzeigt, und erzeugt folglich einen spannungsindizierten Frequenzfehler zwischen den Signalen, die an die Eingänge der beiden F-V-Umsetzer 134 und 136 angelegt sind. Der Frequenzfehlerintegrator 140 erhält das Aus­ gangssignal des Frequenzdifferenzverstärkers 138 und gibt ein zweites Abstimmsignal ab.
Jeweils das erste und das zweite Pegeleinstellsignal und das zweite Abstimmsignale werden von der Kalibriersteuereinheit 90 abgegeben und über die zweite Kalibrierleitung 51 an den System- QRO 72 abgegeben. Wie vorstehend erwähnt, gibt die Kalibrier­ steuereinheit 90 zusätzlich ein synchronisiertes POR-Signal ab, um dadurch das Rücksetzausgangssignal für die Master-Zeitbasis­ einheit zu bilden. Das synchronisierte POR-Signal wird über den POR-Integrator 142 und die beiden Flip-Flops 144 und 146 erzeugt. Der POR-Integrator 142 erzeugt ein frühes Tastsignal, das an­ zeigt, wenn eine Systemversorgungsspannung sich auf einen vorher­ bestimmten Pegel im Anschluß an einen POR-Zustand stabilisiert hat.
In Fig. 3C ist ein Blockdiagramm einer bevorzugten Ausführungsform des Energieeinschalt-/Rücksetz-Integrators 142 dargestellt. Der POR-Integrator 142 weist einen ersten Differenzverstärker 160, einen ersten Fehlerintegrator 162, einen zweiten Differenzver­ stärker 164, einen zweiten Fehlerintegrator 166 und einen Ver­ gleicher 168 auf. Der erste Differenzverstärker 160 hat einen er­ sten elektrisch mit Erde verbundenen Eingang, einen zweiten Ein­ gang, der mit einem Spannungsausgang der Systemenergieversorgung 170 verbunden ist und einen Ausgang, der mit einem Eingang des ersten Fehlerintegrators 162 verbunden ist. Der zweite Differenz­ verstärker 164 hat einen ersten Eingang, der mit dem Spannungs­ ausgang der Systemenergieversorgung 170 verbunden ist, einen zweiten Eingang, der mit dem Ausgang des ersten Fehlerintegrators 162 verbunden ist, und einen Ausgang, der mit einem Eingang des zweiten Fehlerintegrators 166 verbunden ist. Schließlich hat der sten Fehlerintegrators 162 verbunden ist, und einen zweiten Ein­ gang, der mit dem Ausgang des zweiten Fehlerintegrators 166 ver­ bunden ist. Der Vergleicher 168 hat zusätzlich einen Ausgang, welcher den Ausgang des POR-Integrators 142 darstellt.
Der erste Differenzverstärker 160 mißt den Anstieg der System­ energieversorgungsspannung relativ zu dem Erdpotential, was in Fig. 3c mit V1 bezeichnet ist. Der erste Integrator 162 gibt eine integrierte Version von V1 ab, und folglich mißt der zweite Dif­ ferenzverstärker 164 den Anstieg der Versorgungsspannung relativ zu der integrierten Version von V1, was in Fig. 3B als V2 darge­ stellt ist. Der zweite Integrator 166 gibt eine integrierte Ver­ sion von V2 an den Vergleicher 168 ab. In der bevorzugten Ausfüh­ rungsform ist die Zeitkonstante des ersten Integrators 162 viel kürzer als die Zeitkonstante des zweiten Integrators 166, nämlich beispielsweise um einen Faktor zehn. Fachleute erkennen, daß der exakte Wert der jeweiligen Zeitkonstante den Schaltungsbetrieb nicht kritisch beeinflußt. Der POR-Integrator 142 führt somit eine zweifache Integration der Energieversorgungsspannung bezüg­ lich der Spannung in zwei deutlich getrennten Änderungsschritten durch. Der Vergleicher 168 erhält das Ausgangssignal von den bei­ den Integratoren 162 und 166 und gibt das frühzeitige Tastsignal ab, welches anzeigt, wenn sich die Energieversorgungsspannung stabilisiert hat oder ein Ändern gestoppt ist.
Jedes der Elemente in dem POR-Integrator 142 erhält vorzugsweise Energie von der Systemenergieversorgung. Übliche schaltende Ener­ gieversorgungen zeigen eine Schaltstufe bei annähernd 50 bis 70% der nominellen Ausgangsspannung. Fachleute erkennen, daß der Wert, bei welcher eine Ausgangsspannung einer schaltenden Ener­ gieversorgung ansteigt, in Abhängigkeit von einer Belastungsimpe­ danz etwas schwanken kann, und daß dieser Betrag im allgemeinen nach der Schaltstufe abnimmt. Die Fachleute verstehen jedoch auch, daß eine Schaltungsaktivität in dem POR-Integrator 142 be­ ginnt, bevor die Systemenergieversorgungspannung ihren endgülti­ gen Wert erreicht hat. Hierbei wird angenommen, daß die Schal­ tungsaktivität beginnt, wenn die Systemenergieversorgungsspannung annähernd 40% ihres endgültigen Werts erreicht hat, welcher bei annähernd 40% ihres endgültigen Werts erreicht hat, welcher bei einer üblichen Systemenergieversorgung von 5 V bei 2 V liegt.
Die beiden Differenzverstärker 160 und 162 beginnen, Spannungs­ differenzen bei dem ersten Anlegen von Systemenergie zu messen, und der Spannungsanstieg an ihren Ausgängen hängt deutlich von dem Wert ab, bei welchem die Systemenergieversorgungsspannung an­ steigt. Bis zum Beginn einer Schaltungsaktivität sorgt das Aus­ gangssignal des Vergleichers 168 für ein Ausgangssignal mit nie­ driger Impedanz und geringer Spannung. Vorzugsweise ist der Ver­ gleicher 168 so unter Vorspannung gesetzt, daß das Anlegen von Spannungen nahe bei Null an dessen Eingängen in Richtung zu des­ sen negativen Anschluß zu Beginn einer Schaltungsaktivität etwas gewichtet ist. Wenn die Versorgungsspannung bis auf einen Punkt angestiegen ist, an welchem die Schaltungsaktivität beginnt, stellen die von den beiden Integratoren 162 und 166 durchgeführ­ ten Integrationen sicher, daß ein anfängliches Schwanken der Ver­ sorgungsspannung merklich gedämpft wird. Die Zeitkonstantenbezie­ hung zwischen beiden Integratoren 162 und 166 stellt sicher, daß das Ausgangssignal des ersten Integrators 162 viel schneller an­ steigt als das des zweiten Integrators 166. Wenn das Ausgangs­ signal des ersten Integrators 162 größer ist als das des zweiten Integrators 166, befindet sich der Vergleicher 168 in einem Zu­ stand mit hoher Ausgangsleistung. Das Ausgangssignal des Ver­ gleichers 168 steigt folglich wie eine langsame Schräge an, auf die der Anstieg der Versorgungsspannung folgt, nachdem die Schal­ tungsaktivität begonnen hat. Schließlich ist die Ausgangsspannung des ersten Integrators 162 auf einem Pegel gesättigt, der etwas niedriger ist als der Endwert der Energieversorgungsspannung.
Die Ausgangsspannung des zweiten Generators 166 steigt ständig an, bis die Energieversorgungsspannung durch eine zeitliche Ände­ rung gestoppt hat. Folglich schaltet, sobald der Ausgangswert des zweiten Integrators 166 größer wird als der gesättigte Ausgang des ersten Integrators 162, der Ausgangswert des Integrators 168 auf einen Zustand niedriger Spannung, was anzeigt, daß sich die Systemenergieversorgungsspannung auf ihrem endgültigen Wert sta­ bilisiert hat. Eine beispielhafte Wellenform, welche das frühzei­ tige Tastsignal darstellt, ist am Ausgang des Vergleichers 168 in Fig. 3C dargestellt. In der beispielhaften Ausführungsform sind der erste Differenverstärker 160 und der erste Integrator 162 zu­ sammen durch einen einzigen National Semiconductor LM3900 Opera­ tionsverstärker ausgeführt. Das gleiche gilt für den zweiten Dif­ ferenzverstärker 164 und den zweiten Integrator 166. Fachleute erkennen, daß der gesamte POR-Integrator 162 als eine einzige in­ tegrierte Schaltung in einer anderen Ausführungsform ausgeführt sein könnte.
In Fig. 3A ist der Frequenzfehler-Integrator 140 entsprechend ge­ schaltet, um das frühe Tastsignal an einem Tasteingang zu erhal­ ten, um dadurch sicherzustellen, daß das zweite Abstimmsignal nur erzeugt wird, nachdem sich die Versorgungsspannung stabilisiert hat. Die beiden Flip-Flops 144 und 146 erhalten jeweils das frühe Tastsignal an einem Rücksetzeingang. Das erste Flip-Flop 144 ist entsprechend geschaltet, um das zweite Sperrsignal über die zwei­ te Leitung 92 zu erhalten. Das zweite Flip-Flop 146 ist entspre­ chend gesteuert, um ein Ausgangssignal des ersten Flip-Flops 144 zu erhalten, und ein Ausgangssignal des zweiten Flip-Flops 146 schafft das synchronisierte POR-Signal. Schließlich hat jeder der beiden Flip-Flops 144 und 146 einen Takteingang, der mit einem Ausgang des ersten Begrenzers 132 verbunden ist.
Sobald das frühe Tastsignal einen scharfen Übergang zu einem Zu­ stand niedriger Spannung macht, worauf die Stabilisierung der Sy­ stemversorgungsspannung folgt, werden die beiden Flip-Flops 144, 146 zurückgesetzt und geben vorzugsweise eine niedrige Spannung ab. Die beiden Flip-Flops 144, 146 werden mit der Frequenz des Systems QRO 72 getaktet. Hierbei ist angenommen, daß die Schaf­ fung einer phasenstarren Verriegelung zwischen dem Referenzoszil­ lator 70 und dem System-QRO 72 angezeigt wird, wenn das zweite Verriegelungssignale auf einen Zustand hoher Spannung übergeht. Fachleute erkennen, daß in einer weiteren Ausführungsform eine Phasenverriegelung durch einen Übergang auf einem Zustand niedri­ ger Spannung angezeigt werden könnte. Sobald das zweite Sperr­ signal anzeigt, daß die Phasenverriegelung erreicht worden ist, geht das Ausgangssignal des zweiten Flip-Flops 146, d. h. das syn­ chronisierte POR-Signal auf einen Zustand hoher Spannung nach zwei System-QRO-Schwingungsperioden über, wodurch angezeigt ist, daß das CRS 30 sich im Anschluß an einen POR-Zustand stabili­ siert hat. Externe Komponenten des Systems benutzen vorzugsweise das synchronisierte POR-Signal als ein Verknüpfungssignal zum Steuern von POR-Operationen, obwohl die Fachleute erkennen, daß das synchronisierte POR-Signal auch für andere Operationen ver­ wendet werden könnte.
Der System-QRO 72 erzeugt die in Phase liegenden und um 90° ver­ schobenen Referenzsignale, welche in der bevorzugten Ausführungs­ form sinusförmig sind. In Fig. 3D ist ein Blockdiagramm einer be­ vorzugten Ausführungsform des Systemquadratur-Referenzoszillators (QRO) 72 dargestellt. Der System-QRO 72 weist vorzugsweise einen ersten Differenzverstärker 60, einen herkömmlichen Armstrong-HF- Oszillator 62 und einen Rückkopplungszweig 64 auf. Der Oszillator 62 weist vorzugsweise einen ersten Verstärker, einen Pufferver­ stärker, einen Varactor, einen Resonanzschwingungskreis, der ei­ nen mit einem Transformator verbunden Kondensator aufweist, und eine Anzahl Widerstände auf. Die Basis des ersten Transistors, ein Ausgang des Varactors und der Kondensator sind jeweils mit einer ersten Ausgangsleitung des Transformators verbunden. Der Kollektor des ersten Transistors ist über einen Widerstand mit einer Scheitelspannungsreferenz verbunden, die vorzugsweise durch die Systemenergieversorgung geschaffen ist. Zusätzlich ist der Kollektor des ersten Transistors mit einer zweiten Leitung des Transformators und mit einem Eingang des Pufferverstärkers ver­ bunden, welcher das in Phase liegende Signal an den ersten Ener­ gieverteiler 78 in Fig. 2 abgibt.
Der Rückkopplungszweig 64 weist vorzugsweise eine zweiten Tran­ sistor, eine Stromquelle, einen Pufferverstärker für eine um 90°verschobene Phase und eine Anzahl Widerstände auf. Die Emitter des ersten Transistors in dem Armstrong-Oszillator und des zwei­ ten Transistors in dem Rückkopplungszweig 64 sind mit einem Ein­ gang der Stromquelle verbunden. Die Basis des zweiten Transistors ist mit einem Spannungsteiler verbunden, und der Kollektor des zweiten Transistors ist mit einer Scheitelspannungsreferenz ver­ bunden. Der Pufferverstärker für die um 90° verschobene Phase ist mit dem Kollektor des zweiten Transistors verbunden und gibt das um 90° phasenverschobene Referenzsignal an den zweiten Energie­ teiler 80 ab, wie in Fig. 2 dargestellt ist.
Der System QRO 72 erhält das erste Pegeleinstellsignal, das zwei­ te Pegeleinstellsignal und das zweite Abstimmsignal über die zweite Kalibrierleitung 51. Jedes dieser Signale wird von der Ka­ libriersteuereinheit 90 in der vorstehend beschriebenen Weise er­ zeugt. Der Pufferspeicher für das in Phase liegende Signal ist entsprechend geschaltet, um das erste Pegeleinstellsignal zu er­ halten. Dementsprechend ist der Pufferverstärker für das um 90° phasenverschobene Signal entsprechend geschaltet, um das zweite Pegeleinstellsignal zu erhalten. Der erste Differenzverstärker 60 erhält das erste Abstimmsignal über die erste Kalibrierleitung 77 und das zweite Abstimmsignale über die zweite Kalibrierleitung 51. Der erster Differenzverstärker 60 gibt ein Frequenz-Einstell­ signal ab, das an die Basis des ersten Transistors, den Kondensa­ tor und eine Hälfte des Transformators über den Varactor abgege­ ben wird. Das Frequenzeinstellsignal bestimmt die Resonanzfre­ quenz des Resonanzkreises, welche wiederum die Frequenz der in Phase liegenden und der um 90° in der Phase verschobenen Refe­ renzsignale festlegt.
Der erste Transistor bietet vorzugsweise eine ausreichende Ver­ stärkung bei dem Anlegen der Systemenergie an, um den Barkhausen- Schwingungskriterium zu genügen. Über den Rückkopplungszweig 64 ist der Armstrong-Oszillator 62 durch einen gemeinsamen Basisver­ stärker in einer wechselseitigen Rückkopplung plaziert. In dem Armstrong-Oszillator 62 schafft der erste Transistor eine Rück­ kopplung von 180°, und der Resonanz-Transformator schafft eine Rückkopplung von weiteren 180°. Fachleute erkennen, daß die Schwingung, die in den zweiten Transistor eingegeben wird, an dessen Emitter und nicht an dessen Basis anliegt. Folglich fun­ giert die Kombination aus dem ersten Transistor in dem Armstrong- Oszillator 62 und dem zweiten Transistor in dem Rückkopplungs­ zweig 64 als ein Transkonduktanz-Verstärker. Folglich bleibt die Spannung an dem Kollektor des ersten Transistors in einer hin­ sichtlich der Phase um 90° verschobenen Beziehung bezüglich der Spannung am Kollektor des zweiten Transistors.
In einer beispielhaften Ausführungsform ist der System-QRO 72 mit Hilfe von Motorola MPSH10-Transistoren (Motorola, Inc., Schaumburg, IL) eines Motorola MV205-Varactors und durch Ferrit­ kerne (von Amidon & Associates, Santa Ana, CA) ausgeführt. Fach­ leute erkennen, daß der System-QRO 72 auch als ein anderer Qua­ dratur-Oszillator in einer weiteren Ausführungsform ausgeführt sein könnte. In der Erfindung ist der System-QRO 72 vorzugsweise dadurch gekennzeichnet, daß er einen Bereich mit Betriebsfre­ quenzen und einer Mittenfrequenz in diesem Betriebsfrequenzbe­ reich hat, wobei der dynamische Frequenzbereich des System-QRO 72 kleiner als oder gleich 2 : 1 ist.
Die bevorzugte Ausführungsform des CRS 30, wie sie in Fig. 2A und Fig. 3A bis 3D beschrieben ist, ist verwendbar, um Signale mit Frequenzen von bis zu etwa 1,0 GHz zu erzeugen, d. h. Frequenzen bis in den mittleren Bereich des UHF-Bandes. Falls eine Ausfüh­ rungsform der Erfindung mit tiefen Frequenzen von etwa 300 MHz betrieben wird, ist eine einfachere Ausführung des CRS 30 mög­ lich, was nachstehend anhand von Fig. 2B beschrieben wird.
In Fig. 2B ist ein Blockdiagramm einer zweiten Ausführungsform eines kalibrierten Referenzsystems 21 dargestellt. In Fig. 2A und 2B sind zum leichteren Verständnis die gleichen Bezugszeichen verwendet. Die zweite Ausführungsform des CRS 31 weist einen Kri­ stallfrequenz-Referenzoszillator 70, einen System-Referenzoszil­ lator 73, einen ersten Phasendetektor 74, ein erstes Schleifen­ filter 76, einen ersten Energieteiler 78, einen zweiten Energie­ teiler 80, erste und zweite Verteilungsverstärker 82 und 84 und eine Kalibriersteuereinheit 90 auf. In der zweiten Ausführungs­ form des CRS 31 ist das erste Systemreferenzsignal unmittelbar von einer ersten hinsichtlich der Leistung geteilten Version des ursprünglichen Frequenzreferenzsignals abgeleitet, das von dem kalibrierten Frequenzreferenzoszillator 73 abgegeben worden ist. Der Oszillator 73 weist vorzugsweise einen herkömmlichen sinus­ förmigen Oszillator auf. Der ersten Phasendetektor 74 und das zwischen einer zweiten in der Leistung geteilten Version des ur­ sprünglichen Frequenzreferenzsignals und einem um 90° in der Pha­ se verschobenen Signals aufrechtzuerhalten, das von dem Oszilla­ tor 73 abgegeben worden ist. Folglich schafft die in Fig. 2B dar­ gestellte phasenstarre Schleife die geforderte Beziehung hin­ sichtlich einer Phasenverschiebung von 90°. Das zweite Systemre­ ferenzsignal wird von einer in der Leistung geteilten Version des um 90° in der Phase verschobenen Signals erzeugt.
Wie bei dem System-QRO 27 ist der Oszillator 73 vorzugsweise da­ durch gekennzeichnet, daß er einen Bereich von Betriebsfrequenzen und eine Mittenfrequenz in diesen Betriebsfrequenzbereich hat. Der dynamische Frequenzbereich des Systemreferenzoszillators 73 ist vorzugsweise kleiner als oder gleich 2 : 1.
In den Fig. 1 bis 3D erzeugen die Elemente in dem CRS 30 die er­ sten und zweiten Systemreferenzsignale in der vorbeschriebenen Weise. In der bevorzugten Ausführungsform sind die ersten und zweiten Systemreferenzsignale sinusförmige Signale, die hinsicht­ lich ihrer Frequenz um 90° in der Phase verschoben sind. Folglich wird die Beziehung zwischen den ersten und zweiten Systemrefe­ renzsignalen dazu verwendet, ein Systemreferenzsignal-Protokoll festzulegen. In Fig. 13A ist ein Wellenformdiagramm dargestellt, das ein bevorzugtes Systemreferenzsignal-Protokoll zeigt. In Fig. 13A ist das erste Systemreferenzsignal als "cos" und das zweite Systemreferenzsignal als "sin" gekennzeichnet. In dem be­ vorzugten Systemreferenzsignal-Protokoll ist die Amplitude der beiden Signale als (2n . Vm) definiert. Hierbei ist n als 2 festge­ legt, und folglich haben die beiden Systemreferenzsignale Ampli­ tuden, die gleich 4 Vm sind. In Fig. 13A ist 4 Vm der Einfachheit halber als eine Scheitelwert-zu-Scheitelwert-Amplitude darge­ stellt. Wie im einzelnen unten noch anhand von Fig. 5B beschrieben wird, haben, wenn die ersten und zweiten Systemreferenzsignale moduliert werden, die sich ergebenden Signale Amplituden, die ge­ mäß Vm-Inkrementen zwischen Vm und (2n . Vm) liegen. Vm ist folg­ lich ein Amplitudenmodulationsinkrement. Fachleute erkennen, daß exakte Werte von Vm und n von der Bemessungswahl abhängt, was im einzelnen ebenfalls unten noch beschrieben wird. In der bevorzug­ einzelnen ebenfalls unten noch beschrieben wird. In der bevorzug­ ten Ausführungsform ist 4 Vm gleich 13,0 dBm.
In dem bevorzugten Systemreferenzsignäl-Protokoll sind eine An­ zahl Unterperioden innerhalb einer einzigen Periode für jedes der beiden Systemreferenzsignale festgelegt. Für das erste Systemre­ ferenzsignal sind die Unterperioden in der in Fig. 13A dargestell­ ten Weise mit R, S, T und U bezeichnet. Für das zweite Systemre­ ferenzsignal sind die Unterperioden mit A, B, C und D bezeichnet. Jede Unterperiode stellt folglich ein Viertel einer Referenz­ signalperiode dar, d. h. ein Phasenintervall von π/2. Die Unterpe­ rioden R, S, T und U für das erste Systemreferenzsignal sind in Fig. 13A unter dem zweiten Systemreferenzsignal dargestellt, da diese Unterperioden Zeitereignisse festlegen, die dem zweiten Sy­ stemreferenzsignal zugeordnet sind, wie unten noch im einzelnen beschrieben ist. In ähnlicher Weise legen die Unterperioden A, B, C und D für das zweite Systemreferenzsignal Zeitereignisse fest, die dem ersten Systemreferenzsignal zugeordnet sind und sind da­ her über dem ersten Systemreferenzsignal der Fig. 13a dargestellt. Das Zeitintervall, das jeder Unterperiode entspricht, ist in Fig. 13A als "H" definiert. Der Fachmann erkennt, daß das bevor­ zugte Systemreferenzsignal-Protokoll unabhängig von einer be­ stimmten betrachteten Frequenz gültig bleibt, da jede Unterperio­ de und folglich das Zeitintervall H ein autoadaptiver Parameter bezüglich der Frequenz ist. Die Operationen, die mittels des Mo­ dulators 32 und Elementen in jeder lokalen Zeitbasiseinheit 22 durchgeführt worden sind, werden unten bezüglich des bevorzugten Systemreferenzsignal-Protokolls beschrieben.
Die ersten und zweiten Systemreferenzsignale schaffen somit eine systemweite Zeitsteuerreferenz, die auf jede lokale Zeitbasisein­ heit 22 über den Systembus 14 verteilt wird. Über den Modulator 32 und MSM 34 sorgt die vorliegende Erfindung zusätzlich für die Verteilung von Nachrichtenübermittlungssignalen an jede lokale Zeitbasiseinheit 22 in einer nachstehend im einzelnen beschriebe­ nen Weise.
MSM 34 ist vorzugsweise eine Zustandseinrichtung, welche Nach­ richtensignale in ein erstes und in ein zweites Informations­ signal umwandelt. In Fig. 4A ist ein Blockdiagramm einer bevorzug­ ten Ausführungsform der Modulationszustandseinrichtung (Modula­ tion State Machine-MSM) 34 dargestellt. Die MSM 34 weist einen Begrenzer 700 für das in Phasen liegende Signal, einen Begrenzer 702 für ein um 90° in der Phase verschobenes Signal, einen FIFO- Puffer 720, eine Zustandseinrichtung-Logikeinheit 730, einen er­ sten und einen zweiten Digital-Analog-(D/A-)Umsetzer 740 bzw. 742 auf. Die beiden Begrenzer 700 und 702 sind entsprechend geschal­ tet, um das erste bzw. zweite Systemreferenzsignal von dem CRS 30 aufzunehmen. In der bevorzugten Ausführungsform fühlt der Begren­ zer 700 Nulldurchgänge in dem ersten Systemreferenzsignal und der Begrenzer 702 fühlt Nulldurchgänge in dem zweiten Systemreferenz­ signal. Der Begrenzer 700 gibt ein in Phase liegendes Taktsignal, das in Fig. 4A mit ICLK bezeichnet ist, an einen ersten Taktein­ gang der Logikeinheit 730 in herkömmlicher Weise ab. Bei einem analogen Vorgang gibt der Begrenzer 702 ein um 90° in der Phase verschobenes Taktsignal, das in Fig. 4A mit QCLK bezeichnet ist, an einen zweiten Takteingang der Logikeinheit 730 ab. Bei einem analogen Vorgang gibt der Begrenzer 702 ein um 90° in der Phase verschobenes Taktsignal, das in Fig. 4A mit QCLK bezeichnet ist, an einen zweiten Takteingang der Logikeinheit 730 ab. Die beiden Taktsignale ordnen sequentiell die von der Logikeinheit 730 durchgeführten Operationen in einer Weise zu, die im einzelnen nachstehend anhand von Fig. 4B beschrieben wird. Die beiden Takt­ signale sind synchron mit den beiden Systemreferenzsignalen, um dadurch sicherzustellen, daß die Umwandlung von Nachrichtenüber­ mittlungssignalen in die ersten und zweiten Informationssignale synchron mit den ersten und zweiten Systemreferenzsignalen ist.
Der FIFO-Puffer 720 ist vorzugsweise herkömmlich und enthält folglich eine FIFO-Ladeschaltung und eine FIFO-Ausgabeschaltung. Der FIFO-Puffer 720 ist entsprechend geschaltet, um Nachrichten­ signale über die erste Nachrichtenleitung 40 aufzunehmen. Die Nachrichtensignale enthalten vorzugsweise Datensignale, die an einem Dateneingang des FIFO-Puffers 720 empfangen worden sind und ein FIFO-Ladesignal, das an einem ersten Takteingang des FIFO- Puffers 720 empfangen worden ist. Das FIFO-Ladesignal taktet das Laden von Datensignalen in den FIFO-Puffer 720 in herkömmlicher Weise. In Fig. 4A sind die Datensignale so dargestellt, daß sie 8 Bits überspannen. Der Fachmann erkennt, daß in einer weiteren Ausführungsform die Datensignale im Hinblick auf Bemessungsüber­ legungen, die unten im einzelnen noch erläutert werden, zusätzli­ che oder weniger Signale überspannen können.
Die Logikeinheit 730 hat einen Dateneingang, um Datensignale von einem Datenausgang des FIFO-Puffers 720 aufzunehmen. Die Logi­ keinheit 730 hat auch einen Taktausgang, um ein FIFO-Ausgangs­ signal, das in Fig. 4A als RCLK gekennzeichnet ist, an einen zwei­ ten Takteingang des FIFO-Puffers 720 zu liefern. Das FIFO-Aus­ gangssignal taktet die FIFO-Ausgabeschaltung in herkömmlicher Weise und steuert folglich die Übertragung von Datensignalen von dem FIFO-Puffer 720 in die Logikeinheit 730. Die Logikeinheit 730 hat zusätzlich einen Zustandseingang, um ein FIFO-Zustandssigna­ le, das in Fig. 4A als EMT/DVAL gekennzeichnet ist, von einem Zu­ standsausgang des FIFO-Puffers 720 aufzunehmen. Das FIFO-Zu­ standssignal zeigt vorzugsweise an, ob der FIFO-Puffer 720 leer ist.
Die Logikeinheit 730 lädt Datensignale von dem FIFO-Puffer 730, setzt geladene Datensignale in eine erste und eine zweite Bitfol­ ge um und gibt die beiden Bitfolgen an den ersten bzw. zweiten D/A-Umsetzer 720 und 742 ab. Die beiden Taktsignale ordnen se­ quentiell die Operationen zu, die von der Logikeinheit 730 durch­ geführt worden sind. In Fig. 4B ist ein Blockdiagramm einer bevor­ zugten Ausführungsform der Zustandseinrichtung-Logikschaltung 730 dargestellt. Die Logikeinheit 730 weist ein Halteregister 800, einen Multiplexer 802, ein erstes Signalgate 804, ein zweites Signalgate 806, ein Flip-Flop 810 für ein in Phase liegendes nie­ drigstwertiges Bit (LSB), ein Flip-Flop 812 für ein in Phase lie­ gendes höchstwertiges Bit (MSB), einen Flip-Flop 814 für ein um 90° verschobenes LSB, ein Flip-Flop 118 für ein um 90° in der Phase verschobenes MSB und einen Zuordner 820 auf. Der Zuordner 820 erhält das um 90° phasenverschobene Taktsignal QLCK und das FIFO-Zustandssignal EMT/DVAL und erzeugt wiederum Steuersignale, welche die Operation anderer Elemente in der Logikeinheit 730 leiten. Wie in Fig. 4B dargestellt, erzeugt der Zuordner 820 das FIFO-Ausgangssignal RCLK, ein LCLK-Signal, welches das Laden von Datensignalen in das Halteregister 800 taktet, ein Verschachte­ lungssignal, das den Leitweg von Signalen von Multiplexer-Eingän­ gen zu Multiplexer-Ausgängen steuert, ein FREI-Signal, das die Operation der beiden Signalgates 804 und 806 steuert, und ein Freigabe-Signal, welches die Operation jedes LSB- und MSB-Flip- Flops 810, 814, 812, 816 in der Zustandslogik 730 freigibt. Der Zustand des Freigabesignals hängt von den Zuständen von QCLK, EMT/DVAL, LCLK und IDLE in der dargestellten Weise ab. Wie aus Fig. 4A ersehen werden kann, ist jedes Signal, das in dem Zuordner 820 erzeugt worden ist, in Beziehung zu QICK gebracht. Die de­ taillierten Operationen, die in der Logikeinheit 730 durchgeführt worden sind, werden nachstehend entsprechend der Zeitsteuerbezie­ hung zwischen ICLK, QCLK, LCLK, RCLK, VERSCHACHTELN, FREIGEBEN und FREI beschrieben.
In Fig. 4C ist ein bevorzugtes Zeitsteuerdiagramm für den Zuordner 820 dargestellt. Wie in Fig. 4C dargestellt, sind ICLK und QCLK um 90° in der Phase verschobene Rechteckwellen-Signale. Der FIFO- Puffer 720 gibt einen Satz Datensignale in durch RCLK festgesetz­ ten Intervallen ab. Sobald ein vorgegebener Satz Datensignale von dem FIFO-Puffer 720 abgegeben ist, taktet LCLK das Laden dieses Satzes Datensignale in das Halteregister 800. Die Datensignale, die in dem Halteregister 800 getaktet sind, erscheinen anschlie­ ßend an Halteregister-Ausgängen und werden an Eingänge des Multi­ plexers 802 abgegeben. Der Multiplexer 802 leitet eine erste Un­ tergruppe oder eine zweite Untergruppe der Datensignale zu dessen Ausgängen entsprechend dem Wert des Verschachtelungssignals. Vor­ zugsweise überspannen die ersten und zweiten Datensignal-Unter­ gruppen eine Hälfte der Anzahl Bits, die von einem Satz Daten­ signale überspannt sind. Für die 8 Bit Sätze von Datensignalen, wie sie hier betrachtet worden sind, weist die erste Datensignal- Untergruppe vorzugsweise die vier Bits niedrigster Ordnung in einem vorgegebenen Satz Datensignale auf und sie wird zu dem Mul­ tiplexer-Ausgängen geleitet, wenn sich das Verschachtelungssignal in einem niedrigen Zustand befindet. Die zweite Datensignal-Un­ tergruppe weist die vier Bits höchster Ordnung in dem 8 Bit Satz von Datensignalen auf und wird zu Multiplexer-Ausgängen geleitet, wenn sich das Verschachtelungssignal in einem hohen Zustand be­ findet.
Das erste Signalgate 804 ist entsprechend geschaltet, um die Mul­ tiplexer-Ausgangssignale aufzunehmen. Folglich erhält entspre­ chend dem Wert des Verschachtelungssignals das erste Signalgate 804 entweder die erste oder die zweite Datensignal-Untergruppe. Das zweite Signalgate 806 ist entsprechend geschaltet, um einen vorherbestimmten Freicode aufzunehmen, welcher entsprechend einem Kennzeichnungsplan definiert ist, wie unten im einzelnen anhand von Fig. 5B noch beschrieben wird. Wie aus Fig. 4B zu ersehen ist, ist der Freicode in der bevorzugten Ausführungsform 0101.
Der Zustand des Freisignals legt fest, ob 1) eine Datensignal-Un­ tergruppe, die von dem Multiplexer 802 ausgegeben worden ist, oder 2) der Freicode zu den LSB- und MSB-Flip-Flops 810, 814, 812, 816 der Logikeinheit geleitet wird. In der bevorzugten Aus­ führungsform wird die Datensignal-Untergruppe zu den LSB-MSB- Flip-Flops 810, 814, 812, 816 über das erste Signalgate 804 ge­ leitet, während sich das Signal FREI in einem niedrigen Zustand befindet. Folglich wird, während sich das Signal FREI in einem niedrigen Zustand befindet, die erste Datensignal-Untergruppe zu den LSB- und MSB-Flip-Flops 810, 814, 812, 816 der Logikeinheit während der Zeit geleitet, in welcher sich das Verschachtelungs­ signal in einem niedrigen Zustand befindet, und die zweite Daten­ signal-Untergruppe wird zu den LSB- und MSB-Flip-Flop 810, 814, 812, 816 der Logikeinheit während der Zeit geleitet, während wel­ cher sich das Verschachtelungssignal in einem hohen Zustand be­ findet. Während sich das Signal FREI in einem hohen Zustand be­ findet, wird der Freicode zu den vorerwähnten Flip-Flops 810, 814, 812, 816 über das zweite Signalgate 806 geleitet. Die in Phase liegenden und um 90° in der Phase verschobenen LSB- und MSB-Flip-Flops 810, 812, 814 und 816 geben die ersten und zweiten Bitfolgen an die ersten und zweiten D/A-Umsetzer 740, 742 der Fig. 4A ab, wie später noch beschrieben wird.
Jedes der beiden Signalgates 804 und 806 hat einen ersten bis mit einem Eingang des MSB-Flip-Flops 812, mit einem Eingang des LSB-Flip-Flops 814 und mit einem Eingang des LSB-Flip-Flops 816 verbunden sind. Die LSB- und MSB-Flip-Flops 810, 812 erhalten folglich ein erstes bzw. zweites Bit in jeder einer vorgegebenen Datensignaluntergruppe oder in dem Freicode. Jedes der LSB- und MSB-Flip-Flops 810, 812 empfängt LCLK an einem Takteingang. Die LSB- und MSB-Flip-Flops haben jeweils einen Eingang, welcher die erste Bitfolge an dem ersten D/A-Umsetzer 740 der Fig. 4A zeigt. Bei einem analogen Vorgang erhalten bis zu dem Vorgang für die LSB- und MSB-Flip-Flops 810, 812 die LSB- und MSB-Flip-Flops 814, 816 ein drittes bzw. ein viertes Bit in jeder einer vorgegebenen Datensignal-Untergruppe oder dem Freicode. Jedes der LSB- und MSB-Flip-Flops 814, 816 erhält QCLK an einem Takteingang. Zusam­ mengenommen geben somit die LSB- und MSB-Flip-Flops 814, 816 die zweite Bitfolge an den zweiten MSM-D/A-Umsetzer 742 ab. Folglich ist das Ausgangssignal der ersten Bitfolge durch die LSB- und MSB-Flip-Flops 810, 812 synchron mit ICLK, und das Ausgangssignal der zweiten Bitfolge von den LSB- und MSB-Flip-Flops 814, 816 ist synchron mit QCLK.
Der Fachmann erkennt, daß während sich Verschachtelungs- und IDLE-Signale in einem niedrigen Zustand befinden, takten ICLK und QCLK Bits in der ersten Datensignal-Untergruppe in die Flip-Flops 810, 812, 814 bzw. 816 der Logikeinheit. Ferner weisen, wenn sich das Signal VERSCHACHTELN und das Signal FREI in einem niedrigem Zustand befinden, die ersten und zweiten Bitfolgen spezielle Bits in der ersten Datensignal-Untergruppe auf. Bei einem analogen Vorgang takten, wenn das Signal VERSCHACHTELN sich in einem hohen Zustand befindet und das Signal FREI sich in einem niedrigen Zu­ stand befindet, ICLK und QCLK Bits in der zweiten Datensignal-Un­ tergruppe in die Flip-Flops 810, 812, 814 bzw. 816 der Logikein­ heit, und folglich weisen die ersten und zweiten Bitfolgen ganz bestimmte Bits in der zweiten Datensignal-Untergruppe auf.
Im Anschluß an einem Übergang eines Signals FREI in einen hohen Zustand weisen die ersten und zweiten Bitfolgen Bits in dem Frei­ code auf. Wie in Fig. 4B dargestellt, ergibt sich ein Übergang von niedrig auf hoch im EMT/DVAL in einem Zeitintervall, bei welchem niedrig auf hoch im EMT/DVAL in einem Zeitintervall, bei welchem sich das Signal FREI in einem hohen Zustand befindet, wie nunmehr beschrieben wird. Während der FIFO-Puffer 720 Datensignale ent­ hält, ist EMT/DVAL in einem niedrigen Zinstand. Ein EMT/DVAL-Über­ gang in einen hohen Zustand zeigt an, daß ein letzter Satz Daten­ signale von dem FIFO-Puffer 720 abgegeben worden ist. Im Anschluß an einen derartigen Übergang verbleibt das Signal FREI in einem niedrigen Zustand, bis 1) die ersten und zweiten Bit folgen, die von der ersten Datensignal-Untergruppe in dem letzten Satz Daten­ signale erzeugt worden sind, von den Flip-Flops 810, 812, 814, 816 der Logikeinheit abgegeben worden sind, und bis 2) die ersten und zweiten Bitfolgen, die von der zweiten Datensignal-Untergrup­ pe aus in dem letzten Satz Datensignale erzeugt worden sind, von den Flip-Flops 810, 812, 814 und 816 abgegeben worden sind. Nach­ dem die zweite Datensignal-Untergruppe als die ersten und zweiten Bitfolgen abgegeben worden sind, geht das Signal FREI in einen hohen Zustand über. Der Freicode wird anschließend in den Flip- Flops 810, 812, 814 und 816 getaktet. Sobald die ersten und zwei­ ten Bildfolgen den Freicode aufweisen, geht das Signal FREI auf einen niedrigen Zustand über, wodurch das Signal FREIGEBEN einen Übergang in einen niedrigen Zustand bewirkt. In der bevorzugten Ausführungsform wird das Signal FREIGEBEN an einen Freigabeein­ gang jedes Flip-Flops 810, 812, 814, 816 abgegeben, um dadurch ein weiteres Eingeben in diese Flip-Flops 810, 812, 814 und 816 zu sperren. Wie in Fig. 4B dargestellt, bewirkt ein Zustand hoch­ niedrig in EMT/DVAL, was anzeigt, daß der FIFO-Puffer 720 wieder einmal Datensignale enthält, daß das Signal FREIGEBEN in einen hohen Zustand übergeht, was durch LCLK getaktet worden ist, um dadurch einen weiteren Flip-Flop-Eingang freizugeben.
Unabhängig davon, ob die ersten und zweiten Bitfolgen aus der er­ sten Datensignal-Untergruppe, der zweiten Datensignal-Untergruppe oder dem Freicode erzeugt werden, erkennt der Fachmann, daß die ersten und zweiten Bitfolgen infolge der 90°-Phasenverschiebung zwischen ICLK und QCLK durch das in Fig. 13A dargestellte Zeitin­ tervall H zeitlich versetzt sind.
In der bevorzugten Ausführungsform überspannen die ersten und und zweiten Bitfolgen jeweils zwei Bits. Das bedeutet, die erste Bitfol­ ge ist ein Dibit und die zweite Bitfolge ist ein zweites Dibit. Der Fachmann erkennt, daß die ersten und zweiten Bitfolgen in ei­ ner weiteren Ausführungsform auch zusätzliche oder weniger Bits überspannen könnten. Vorzugsweise hängt die Anzahl Bits, die durch die ersten und zweiten Bitfolgen überspannt worden sind, von den Kenndaten des Modulators 32 ab, wie im einzelnen unten noch beschrieben wird. Die Logikeinheit 730 gibt das erste Dibit an den ersten D/A-Umsetzer 740 und das zweite Dibit an den zwei­ ten D/A-Umsetzer 742 ab. Jeder der beiden D/A-Umsetzer 740, 742 hat einen Referenzeingang, der vorgesehen ist, um das Gleichspan­ nungs-Referenzausgangssignal von der Kalibriersteuereinheit 90 der Fig. 3A über die Referenzleitung 750 zu erhalten. Der erste D/A-Umsetzer 740 führt eine zusätzliche D/A-Pegelumsetzung durch, um das erste Dibit in das erste Informationssignal umzuwandeln. In ähnlicher Weise setzt der zweite D/A-Umsetzer 742 das zweite Dibit in das zweite Informationssignal eine herkömmliche D/A-Pe­ gelumwandlung um. Eine bevorzugte Art und Weise, auf welche die Amplitude der ersten und zweiten Informationssignale entsprechend den ersten und zweiten Dibits ändert, wird nachstehend im einzel­ nen beschrieben.
Durch Definition entspricht eine Bitfolge die "n"-Bits über­ spannt, einer Binärzahl "b" mit einem Wert zwischen 0 und (2n - 1). In der bevorzugten Ausführungsform hat jedes Informationssignal 2n mögliche Amplitudenwerte, welche nacheinander in gleichen Am­ plituden-Inkrementen überspannt werden. Jeder mögliche Amplitu­ denwert entspricht einem eindeutigen Bitmuster in einer Bitfolge. In der bevorzugten Ausführungsform ist die erste Bitfolge ein Dibit (d. h. n = 2), wie in der zweiten Bitfolge. Folglich hat je­ des Informationssignal vier mögliche Amplitudenwerte in der be­ vorzugten Ausführungsform. Zu einem vorgegebenen Zeitpunkt ent­ spricht die Spannungsamplitude jedes Informationssignals einer der Dibit-Folgen <00<, <01<, <10< oder <11<.
Der Fachmann erkennt, daß im allgemeinen die MSM 34 eine Zu­ standseinrichtung ist, welche die Funktion durchführt, Nachrich­ tensignale in ein erstes und eines Informationssignal umzuwan­ deln. Folglich versteht der Fachmann ohne weiteres, daß auch an­ deln. Folglich versteht der Fachmann ohne weiteres, daß auch an­ dere Ausführungen der MSM 34 möglich sind.
Der Modulator 32 moduliert das erste und zweite Systemreferenz­ signal entsprechend den ersten und zweiten Informationssignalen, die von der MSM 34 erhalten worden sind. In der bevorzugten Aus­ führungsform weist der Modulator 32 einen in der Verstärkung ge­ regelten Verstärker auf, um eine direkte Trägeramplitudenmodula­ tion (AM) an dem ersten Systemreferenzsignal durchzuführen, und weist einen hinsichtlich der Verstärkung geregelten Verstärker auf, um eine direkte Träger-AM bei dem zweiten Systemreferenz­ signal durchzuführen.
In Fig. 5A ist ein Blockdiagramm einer bevorzugten Ausführungsform eines ersten in der Verstärkung geregelten Verstärkers 1000 zum Modulieren des ersten Systemreferenzsignals dargestellt. Der Ver­ stärker 1000 weist ein Vorspannungsnetz 1002, ein Referenzsignal- Skaliernetz 1004, ein Entkopplungsnetz 1006, ein Informations­ signale-Skaliernetz 1008, einen ausgeglichen Modulator 1010, ei­ nen Widerstand 1012, ein Ausgangsnetzwerk 104 und einen Pegelver­ schiebe/Verstärkungsblock 1016 auf. Das Vorspannungsnetz 1002 und das Entkopplungsnetz 1004 sind mit einer positiven bzw. einer ne­ gativen Spannungsreferenz verbunden. Das Referenzsignal-Skalier­ netz 1004 ist vorgesehen, um das erste Systemreferenzsignal auf­ zunehmen, und das Informationssignal-Skaliernetz 1008 ist vorge­ sehen, um das erste Informationssignal zu empfangen. Der aus­ balancierte Modulator 1010 erhält ein Ausgangssignal des Entkop­ plungsnetzes 1006 sowie ein hohes und ein niedriges Trägersignal, das von dem Referenzsignal-Skaliernetz 1004 abgegeben worden ist und ein hohes und ein niedriges Modulationssignal, das von dem Informationssignal-Skaliernetz 1008 abgegeben worden ist. Der Mo­ dulator 1010 ist vorzugsweise ein herkömmlicher ausgeglichener bzw. ausbalancierter Modulator, um eine direkte Träger-Amplitu­ denmodulation (AM) an dem ersten Systemreferenzsignal durchzufüh­ ren. Bei der direkten Träger-AM wird die Amplitude des ersten Sy­ stemreferenzsignals entsprechend der Amplitude des ersten Infor­ mationssignals mit einer Rate codiert, die gleich der Periode des ersten Systemreferenzsignals ist. Eine direkte Träger-AM unter­ scheidet sich drastisch von einer herkömmlichen AM, bei welcher eine Trägersignal-Amplitude kontinuierlich mit Amplitudenänderun­ gen moduliert wird, die über eine Periode des modulierenden Signals auftreten.
Der ausgeglichene Modulator 1010 gibt ein Modulationssummensignal und eine Modulationsdifferenzsignal an einen ersten und einen zweiten Eingang des Pegelverschiebe/Verstärkungsblocks 1016 ab, wie es von dem Ausgangsnetz 1014 skaliert ist. Der Block 1016 schafft das erste Ausgangssignal des Modulators 32. In einer bei­ spielhaften Ausführungsform ist der ausgeglichene Modulator 1010 ein ausgeglichener Motorola MC1596-Modulator und der Pegelschie­ be/Verstärkungsblock 1016 ist mit Hilfe eines National Semicon­ ductor LM6264-Operationsverstärker ausgeführt.
In der bevorzugten Ausführungsform weist der Modulator 32 auch einen zweiten (nicht dargestellten) hinsichtlich seiner Verstär­ kung geregelten Verstärker auf, um eine direkte Träger-AM an dem zweiten Systemreferenzsignal gemäß dem zweiten Informationssignal durchzuführen. Der zweite verstärkungsgeregelte Verstärker hat einen inneren Aufbau, welcher mit demjenigen des ersten Verstär­ kers 1000 identisch ist und ist vorgesehen, um das zweite System­ referenzsignal und das zweite Informationssignal in einer Weise aufzunehmen, welche für den Fachmann ohne weiteres zu verstehen ist.
Wie vorstehend beschrieben, sind die ersten und zweiten Informa­ tionssignale jeweils durch vier Amplitudenwerte in der bevorzug­ ten Ausführungsform gekennzeichnet. Die möglichen Amplituden der ersten und zweiten modulierten Systemreferenzsignale sind lVm, 2 VM, 3 Vm und 4 Vm. Das Ampltituden-Inkrement für modulierte Sy­ stemreferenzsignale ist daher Vm.
In Fig. 13B ist zum besseren Verständnis ein Wellenformdiagramm eines bevorzugten Systemreferenzsignals-Modulationsprotokoll dar­ gestellt. Die möglichen Amplituden der ersten und zweiten modu­ lierten Systemreferenzsignale sind diskrete ganzzahlige Vielfache von Vm bis zu einem Maximum von 4 Vm. Wie in Fig. 13A dargestellt, ist jedes Vielfache von Vm zum besseren Verständnis als eine Scheitelwert-zu-Scheitelwert-Amplitude dargestellt. Die Folge von in Fig. 13B dargestellten Amplitudenänderungen ist nur beispiel­ haft; d. h. für jedes der ersten und zweiten modulierten Systemre­ ferenzsignale können Dibits irgendeiner Reihenfolge sequentiell angeordnet werden, um eine entsprechende Folge von Amplitudenän­ derungen zu erzeugen.
In der bevorzugten Ausführungsform sind die Werte von 1 Vm, 2 Vm, 3 Vm und 4 Vm als Energieverhältnisse definiert, die Werte von 0,91 dBm, 6,93 dBm, 10,4 dBm und 13,0 dBm haben. Der Fachmann er­ kennt, daß diese Energieverhältnisse 1 Vm einer Amplitude von 0,25 Vrms oder 0,70 Vp-p, 2 Vm mit einer Amplitude von 0,50 Vrms oder 1,41 Vp-p, 3 Vm mit einer Amplitude von 0,75 Vrms oder 2,12 Vp-p und 4 Vm mit einer Amplitude von 1,00 Vrms oder 2,81 Vp-p für die ersten und zweiten Leitungen 16 und 18 des Systembus 14 entsprechen, der durch eine 500 hm-Impedanz gekennzeichnet ist. Der Fachmann er­ kennt, daß in einer anderen Ausführungsform der exakte Wert von Vm unterschiedlich festgelegt sein könnte. Der Fachmann erkennt auch, daß die Erzeugung der ersten und zweiten modulierten Sy­ stemreferenzsignale vollkommen synchron mit den ersten bzw. zwei­ ten Systemreferenzsignalen ist.
In der bevorzugten Ausführungsform hat das erste modulierte Sy­ stemreferenzsignal vier mögliche und unterschiedliche Zustände. Daher sind sechzehn mögliche Zustandskombinationen zwischen den ersten und zweiten modulierten Systemreferenzsignale verwendbar, um einen Kennzeichnungsplan festzulegen, welcher anzeigt, wie Zu­ standskombinationen in jeder lokalen Zeitbasiseinheit 22 zu in­ terpretieren sind. In Fig. 5B ist eine Tabelle dargestellt, die einen bevorzugten Kennzeichnungsplan der Erfindung festlegt.
In Fig. 5B s 99999 00070 552 001000280000000200012000285919988800040 0002019629188 00004 99880ind sechzehn eindeutige Zustandskombinationen defi­ niert. Eine bevorzugte Kennzeichnungsoperation ist auch durch je­ de derartige Zustandskombination festgelegt. Jede der bevorzugten Kennzeichnungsoperationen wird nunmehr im einzelnen anhand von Fig. 6 und Fig. 8 bis 12D beschrieben. Der Fachmann erkennt, daß die bevorzugte Ausführungsform der Erfindung entsprechend einer Modulationsschema arbeitet. Der Fachmann erkennt ferner, daß auch ein anderes QAM-Modulationsschema, wie QAM 4, QAM 16 oder QAM 256, in einer alternativen Ausführungsform benutzt werden könnte. Der Fachmann erkennt zusätzlich, daß ein unterschiedliches Bilden (mapping) von QAM-Zuständen zu Kennzeichnungsoperationen, d. h. eine verschiedene Kennzeichnungskonstellation, für eine alterna­ tive Ausführungsform festgelegt werden könnte.
Unabhängig von dem speziellen QAM-Modulationsschema oder der ver­ wendeten QAM-Zustandsabbildung gibt der Modulator 32 vorzugsweise Signale mit Nicht-Null-Amplituden in der Zeit während einer nor­ malen Systemoperation ab. Folglich ist während einer normalen Sy­ stemoperation ständig Strom auf dem Systembus 14 vorhanden.
Systemweite Signalverteilung
Das erste und das zweite modulierte Systemreferenzsignal werden an die erste und zweite Leitung 16 bzw. 18 des Systembus 14 über die ersten bzw. zweiten Verteilungsverstärker 36 und 38 abgege­ ben. Über die erste Leitung 16 und die zweite Leitung 18 werden die ersten und zweiten modulierten Systemreferenzsignale an jede lokale Zeitbasiseinheit 22 abgegeben. Der Leitungsabschluß ist gewählt, um die Impedanz des Systembus 14 in einer Weise anzupas­ sen, was dem Fachmann ohne weiters geläufig ist. Vorzugsweise ist jede der ersten und zweiten Leitungen 16 und 18 durch einen inte­ grierten Draht ausgeführt, der gemäß herkömmlichen Leiterplatten- Herstellungsprozessen hergestellt worden ist, um eine Streifen­ leitung oder eine Mikrostrip-Übertragungsleitung zu erzeugen. Da die ersten und zweiten Leitungen 16, 18 vorzugsweise in Form ei­ ner Übertragungsleitung ausgeführt sind, sind die beiden Leitun­ gen 16 und 18 jeweils durch eine bekannte Impedanz pro Längenein­ heit gekennzeichnet. Der Fachmann erkennt, daß die Erfindung in vorteilhafterweise die Verwendung von Mehrfachverstärkungsstufen entlang einer der beiden Leitungen 16 oder 18 des Systembus 14 vermeidet. Das heißt, jede lokale Zeitbasiseinheit 22 ist im Ge­ gensatz zu herkömmlichen Systemen und Verfahren, bei welchen ein oder mehrere Verstärkerstufen entlang des Signalverteilungswegs vorhanden sind, durch eine gesteuerte Impedanz passiv an die Ma­ ster-Zeitbasiseinheit 16 gekoppelt. Da der Systembus 14 in der vorstehend beschriebenen Weise ausgeführt ist, kann die Eintreff­ zeit für ein Signal, das von der Master-Zeitbasiseinheit 12 zu einer lokalen Zeitbasiseinheit 22 in Fig. 1 gesendet worden ist, genau bestimmt werden, wobei ein Grad Phasengenauigkeit gleich einem kleinen Bruchteil einer Wellenlänge ist. Im allgemeinen be­ nutzen Systeme und Verfahren, welche Zeitsteuersignale mit Hilfe von in Kaskaden angeordneten Taktverteilungsverstärkern vertei­ len, diese Eigenschaft nicht gemeinsam.
Der Systembus 14 ist durch eine gesteuerte Impedanz pro Länge­ neinheit gekennzeichnet. Daher kann der Systembus 14 nomiert wer­ den, um eine beliebige Anzahl von lokalen Zeitbasiseinheiten 22 unterzubringen, das von einer bis vielen tausend Zeitsteuerein­ heiten 22 reicht, indem die Länge des Systembus 14 vergrößert und der Leitungsabschluß 20 verschoben wird. Der Fachmann erkennt, daß Gruppen von lokalen Zeitbasiseinheiten 22 auf gesonderten Leiterplatten untergebracht sein können. Wenn eine große Anzahl von lokalen Zeitbasiseinheiten 22 vorhanden ist, wird bei der Er­ findung vorzugsweise eine herkömmliche Energieteilungsschaltung mit einem gesteuerten Impedanznetz verwendet, um körperlich deut­ lich unterschiedliche Versionen des Systembus 14 zu schaffen, um dadurch Versionen der ersten und zweiten Leitung 16, 18 zu wie­ derholen, und um Signalweg-Übergänge von Leiterplatte zu Leiter­ platte unterzubringen, ohne die elektrische Beschaffenheit des Netzwerks zu ändern. Der Fachmann erkennt, daß die ersten und zweiten Verteilungsverstärke 36, 38 vorzugsweise so eingestellt sind, um Signale höherer Leistung abzugeben, wenn eine solche Netz-Energieaufteilungsschaltung verwendet wird.
Lokale Zeitbasiseinheit
In Fig. 6 ist ein Blockdiagramm einer bevorzugten Ausführungsform der lokalen Zeitbasiseinheit 22 dargestellt. Die lokale Zeit­ basiseinheit 32 weist vorzugsweise einen ersten und einen zweiten lokalen Pufferverstärker 232 bzw. 234, eine kohärente Empfangs­ einheit 200, eine Nachrichtenübermittlungseinheit 250, einen lo­ kalen QRO 202, einen zweiten Phasendetektor 204, ein zweites Schleifenfilter 206, einen lokalen Zeitsteueroszillator (LTO) 208, einen Zeitsteuersignalmischer 210, ein Zeitsteuersignalfil­ ter 212, einen Mischerabschluß 214, einen ersten und einen zwei­ ten lokalen Begrenzer 216 bzw. 218, einen ersten und einen zwei­ ten Differenzteiler 220 bzw. 222 sowie einen Phasen- und Fre­ quenzdetektor 230 auf.
Die ersten und zweiten lokalen Pufferverstärker 232, 234 sind mit den ersten bzw. zweiten Leitungen 16, 18 des Systembus 14 verbun­ den und erhalten daher die ersten und zweiten modulierten System­ referenzsignale. Bei der bevorzugten Ausführungsform des System­ bus 14, wie er vorstehend beschrieben ist, fordert die Skalier­ barkeit bzw. die Normierbarkeit, daß jede lokale Zeitbasiseinheit 22 eine im wesentlichen oder sehr weitgehend reflexionsfreie Kopplung an den Systembus 14 erhält, so daß in dem System 10 der Erfindung eine entsprechende Anzahl lokaler Zeitbasiseinheiten 22 untergebracht werden kann. Folglich sind die ersten und zweiten lokalen Pufferverstärker 232, 234 jeweils vorzugsweise Verstärker mit hoher Impedanz und mit einer Verstärkung von eins. In der be­ vorzugten Ausführungsform wird einem im wesentlichen reflexions­ freien Kopplungszustand genügt, wenn die reine Parallelimpedanz, die von einem Zusammenschluß lokaler Zeitbasiseinheiten 22 her­ rührt, kleiner als eine 1%-Belastung bezüglich der Impedanz des Systembus 14 ist. In einer beispielhaften Ausführungsform werden die ersten und zweiten lokalen Pufferverstärker 232, 234 jeweils mit Hilfe eines National Semiconductor LM6261-Operationsverstär­ ker ausgeführt. Der Fachmann erkennt, daß die lokalen Pufferver­ stärker 232, 234 die lokale Zeitbasiseinheit 24 vorteilhafter Weise bei einer Änderung des Impedanzpegels von einem konstanten niedrigen Pegel, wie er durch den Systembus 14 vorgesehen ist, zu einem höheren Pegel für eine lokale Benutzung schaffen. In einer alternativen Ausführungsform könnte einem im wesentlichen refle­ xionsfreien Kopplungszustand auch durch die Verwendung von paral­ lelen Wandlerkopplungen bezüglich eines Systemgrundes in einer dem Fachmann bekannten Weise genügt werden. Das heißt, die loka­ len Pufferverstärker 232, 234 würden durch Leitungswandler in dieser alternativen Ausführungsform ersetzt werden.
Der lokale QRO 202, der zweite Phasendetektor 204 und das zweite Schleifenfilter 206 dienen dazu, ein erstes und ein zweites loka­ les Referenzsignal zu erzeugen, die zu den ersten bzw. zweiten Systemreferenzsignalen phasenstarr sind. Der lokale QRO 202 ist vorzugsweise ein spannungsgeregelter Quadratur-Oszillator mit einem in Phase liegendem Ausgangssignal, einem um 90° phasenver­ schobenen Ausgangssignal und einem Steuersignal und ist durch ei­ nen dynamischen Frequenzbereich von weniger als oder gleich 2 : 1 gekennzeichnet. Der Fachmann erkennt, daß der lokale QRO 202 auch analog dem in Fig. 3D dargestellten Oszillator oder als ein her­ kömmlicher Quadratur-Oszillator ausgeführt sein könnte. Der loka­ le QRO 202 gibt die ersten und zweiten lokalen Referenzsignale ab, wobei diese Signale jeweils sinusförmig sind und eine 90° Phasen-Beziehung zueinander einhalten. Eine Spannung, die an dem Steuereingang des lokalen QRO erhalten worden ist, bestimmt vor­ zugsweise die Frequenz der ersten und zweiten lokalen Referenz­ signale bezüglich des Betriebsfrequenzbereichs eines lokalen QRO in herkömmlicher Weise. Der Fachmann erkennt, daß in einer Aus­ führungsform, die entsprechend ausgelegt ist, um bei Frequenzen zu arbeiten, die auf etwa 300 MHz begrenzt sind, die ersten und zweiten lokalen Referenzsignale mit Hilfe den inhärenten Kennda­ ten einer phasenstarren und um 90° verschobenen Signalisierung in einer Weise analog zu dem in Fig. 2B Dargestellten erzeugt werden könnten. In der bevorzugten Ausführungsform haben die ersten und zweiten lokalen Referenzsignale eine einheitliche Null-zu-Schei­ telwert-Amplitude, (d. h. eine Null-zu-Scheitelwert-Amplitude von einem Volt). Der Fachmann erkennt, daß der lokale QRO 202 die er­ sten und zweiten lokalen Referenzsignale mit einer anderen Null­ zu-Scheitelwert-Amplitude abgeben könnte.
Der zweite Phasendetektor 204 und das zweite Schleifenfilter 206 bilden eine herkömmliche phasenstarre Schleife, um eine Phasenan­ gleichung zwischen dem zweiten lokalen Referenzsignal und dem zweiten Systemreferenzsignal aufrecht zu erhalten. Folglich ist der zweite Phasendetektor 204 entsprechend geschaltet, um das zweite modulierte Systemreferenzsignal von einem Ausgang des zweiten lokalen Pufferverstärkers 234 aufzunehmen, und erhält zu­ sätzlich das zweite lokale Referenzsignal, das von dem lokalen QRO 202 abgegeben worden ist. Der zweite Phasendetektor 204 gibt ein erstes lokales Phasenfehlersignal an das zweite Schleifenfil­ ter 206 ab, welches seinerseits vorgesehen ist, um ein erstes lo­ kales Abstimmsignal an den lokalen QRO 202 abzugeben. Auf Grund der Phasenbeziehung zwischen jedem Systemreferenzsignal und jedem lokalen Referenzsignal wird eine Phasenanpassung zwischen dem er­ sten lokalen Referenzsignal und dem ersten Systemreferenzsignal aufrechterhalten. In der bevorzugten Ausführungsform ist der zweite Phasendetektor 204 ein Phasendetektor des Typs I, und das zweite Schleifenfilter 206 ist ein Tiefpaßfilter, die beide ver­ wendet werden, um eine Phasenanpassung in herkömmlicher Weise durchzuführen, wie es dem Fachmann ohne weiteres geläufig ist. Der Fachmann erkennt auch, daß die möglichen Amplituden des zwei­ ten modulierten Systemreferenzsignals, wie sie durch das bevor­ zugte Systemreferenzsignal-Modulationsprotokoll festgelegt sind, ein Phasenangleichen nicht beeinflußt.
In der lokalen Zeitbasiseinheit 66 wird ein lokales Zeitsteuer­ signal erzeugt und an die lokale Zeitsteuerleitung 24 abgegeben. Vorzugsweise dient das lokale Zeitsteuersignal als ein Takt für ein oder mehrere externe Komponenten in dem hier beschriebenen System 10. Bei der Erzeugung des lokalen Zeitsteuersignals er­ zeugt die LTO 208 ein versetztes Signal, welches mit dem zweiten lokalen Referenzsignal gemischt wird, was nunmehr im einzelnen beschrieben wird. In der bevorzugten Ausführungsform ist der LTO 208 ein herkömmlicher spannungsgesteuerter Oszillator (VCO) mit einem Ausgang und einem Steuereingang. Der LTO 208 ist folglich dadurch gekennzeichnet, daß er einem Bereich von Betriebsfrequen­ zen und eine Mittenfrequenz im Betriebsfrequenzbereich hat. In der bevorzugten Ausführungsform ist der dynamische Fre­ quenzbereich des LTO 208 kleiner als oder gleich 2 : 1. Eine Span­ nung, die an den LTO-Steuereingang erhalten worden ist, bestimmt vorzugsweise die Frequenz des versetzten Signals bezüglich des LTO-Betriebsfrequenzbereichs in herkömmlicher Weise.
Mit der Erzeugung des versetzten Signals gibt der LTO 208 vor­ zugsweise ein sinusförmiges Signal ab, das eine höhere Frequenz als diejenige des zweiten lokalen Referenzsignals hat. Der Steu­ ereingang des LTO 208 ist vorgesehen, um ein zweites lokales Ab­ stimmsignal aufzunehmen, das von dem Phasen- und Frequenzdetektor 230 abgegeben worden ist. Folglich wird die exakte Frequenz des versetzten Signals durch das zweite lokale Abstimmsignal be­ stimmt, was später im einzelnen noch beschrieben wird. Der Zeit­ steuersignal-Mischer 210 ist vorgesehen, um das versetzte Signal zu empfangen, und erhält auch das zweite lokale Referenzsignal, das von dem lokalen QRO 202 abgegeben worden ist. Der Mischer 210 ist vorzugsweise ein herkömmlicher Mischer, welche das versetzte Signal und das zweite lokale Referenzsignal mischt oder multipli­ ziert, um dadurch ein Zeitsteuermischsignal zu erzeugen. Wenn die Frequenz des zweiten lokalen Referenzsignals als f1q und die Frequenz des Versatzsignals als f0 festgelegt ist, enthält das Zeitsteuer-Mischsignal vorzugsweise ein elementares Summensignal mit einer Frequenz, die durch (f0 + f1q) vorgegeben ist, sowie ein elementares Differenzsignal mit einer Frequenz aufweist, die durch (f0 - f1q) gegeben ist. Das Zeitsteuersignalfilter 212 ist vorzugsweise ein Diplexer, der vorgesehen ist, um das Zeitsteuer­ mischsignal aufzunehmen. Das Filter 212 leitet das elementare Summensignal zu dem ersten lokalen Begrenzer 216 und leitet ande­ re Frequenzkomponenten in dem Zeitsteuermischsignal zu dem Mi­ scherabschluß 214. Der Mischerabschluß 214 weist vorzugsweise eine Impedanz auf, die gewählt worden ist, um die Energie von Frequenzkomponenten, die von dem Diplexer aus erhalten worden sind, zu absorbieren. Der Fachmann erkennt auch, daß das elemen­ tare Summensignal über eine herkömmliche Serrodyne-Aufwärtsumset­ zung erzeugt wird. Der erste lokale Begrenzer 216 fühlt die Null­ durchgänge in dem elementaren Summensignal und gibt das lokale Zeitsteuersignal ab. Vorzugsweise ändert sich das lokale Zeit­ steuersignal von einer Nullamplitude auf eine vorherbestimmte po­ sitive Amplitude, wenn das elementare Summensignal einen in posi­ tiver Richtung verlaufenden Nulldurchgang zeigt, und ändert sich von der positiven Amplitude in eine Nullamplitude, wenn das Sum­ mensignal einen in negativer Richtung verlaufenden Nulldurchgang aufweist. Das lokale Zeitsteuersignal ist eine Rechteckwelle in der bevorzugten Ausführungsform. Der Fachmann erkennt, daß in ei­ ner alternativen Ausführungsform das lokale Zeitsteuersignal auch eine sinusförmige Wellenform oder eine andere Art einer Wellen­ form haben könnte, die im allgemeinen von einer sinusförmigen Wellenform abgeleitet werden kann.
Die Frequenz des lokalen Zeitsteuersignals ist höher als die des zweiten lokalen Referenzsignals (oder äquivalent entweder dem er­ sten oder dem zweiten Systemreferenzsignal) oder des versetzten Signals. In den meisten digitalen Systemen wird ein einziges Ma­ ster-Taktsignal über das gesamte digitale System verteilt, wobei das einzige Master-Taktsignal das Signal mit der höchsten Fre­ quenz in dem digitalen System ist. Die Forderung nach fortlaufend zunehmender Rechenleistung führt bei digitalen Systemen dazu, daß sie mit ständig höheren Frequenzen arbeiten. Der Fachmann er­ kennt, daß eine Signalverteilung schwieriger wird, wenn die Signalfrequenz zunimmt, insbesondere da die Impedanz von Vertei­ lungsleitungen mit zunehmender Frequenz komplexer wird. In der Erfindung sind die ersten und zweiten Systemreferenzsignale nicht die Signale mit der höchsten Frequenz in dem System 10. Stattdes­ sen ist die Frequenz der ersten und zweiten Systemreferenzsignale niedriger als die eines vorgegebenen lokalen Zeitsteuersignals. Der Fachmann erkennt wiederum, daß die Frequenz der Systemrefe­ renzsignale viel niedriger sein kann als diejenige eines lokalen Zeitsteuersignals. Folglich können bei der Erfindung in vorteil­ hafter Weise ein oder mehrere hochfrequente lokale Zeitsteuer­ signale erzeugt werden, ohne daß die systemweite Verteilung eines hochfrequenten Signals erforderlich ist.
Die Erzeugung des lokalen Zeitsteuersignals in der vorstehend be­ schriebenen Weise kann die Verwendung eines LTO 208 notwendig ma­ chen, der bei sehr hohen Frequenzen arbeiten kann. Der Fachmann erkennt wiederum, daß dieser Forderung in der beispielhaften Aus­ führungsform durch die Verwendung eines National Semiconductor LMX2325 Einzelchip mit einer phasenstarren Schleife bei 2,5 GHz genügt werden kann.
Der zweite lokale Begrenzer 218, die beiden Referenzteiler 220 und 222 und der Phasen- und Frequenzdetektor 230 dienen dazu, eine Phasenanpassung zwischen einer frequenzgeteilten Version des lokalen Zeitsteuersignals und einer frequenzgeteilten Version des zweiten lokalen Referenzsignals aufrechtzuerhalten. Der erste Re­ ferenzteiler 220 ist vorgesehen, um das lokale Zeitsteuersignal zu erhalten, und schafft die frequenzgeteilte Version des lokalen Zeitsteuersignals an einem ersten Eingang des Detektors 230. Der zweite lokale Begrenzer 218 ist vorgesehen, um das zweite lokale Referenzsignal von dem lokalen QRO 202 zu erhalten. Analog zu dem ersten lokalen Begrenzer 216 fühlt der zweite lokale Begrenzer 218 Nulldurchgänge bei dem zweiten lokalen Referenzsignal und gibt vorzugsweise eine Rechteckwelle an den zweiten Referenztei­ ler 222 ab. Der zweite Referenzteiler 222 gibt die frequenzge­ teilte Version des zweiten lokalen Referenzsignals an einen zwei­ ten Eingang des Detektors 230 ab. Der Detektor 230 gibt das zwei­ te lokale Abstimmsignal an den LTO 208 ab, um dadurch die Fre­ quenz des Versatzsignals zu steuern. Der Detektor 230 gibt zu­ sätzlich das erste Sperrsignal an die erste, eine Sperrung anzei­ gende Leitung 240 an den Ausgang der lokalen Zeitbasiseinheit ab. In der bevorzugten Ausführungsform ist der Detektor 230 ein Pha­ sen- und Frequenzdetektor des Typs IV, der mit Hilfe einer her­ kömmlichen Schalttechnik ausgeführt ist.
Der erste Frequenzteiler 220 weist vorzugsweise eine herkömmliche Frequenzteilerschaltung auf und ist durch eine Teilerkonstante k1 gekennzeichnet. Der zweite Referenzteiler 222 weist vorzugsweise eine herkömmliche Frequenzteilerschaltung auf und ist durch eine zweite Teilerkonstante k2 gekennzeichnet. Der Fachmann erkennt, daß, wenn die frequenzgeteilten Versionen des lokalen Zeitsteuer­ signals und des zweiten lokalen Referenzsignals phasenstarr sind, der folgenden Gleichung genügt ist:
f1q/k2 = (f1q + f0)/k1 (1)
Der LTO 208 stellt die Frequenz des versetzten Signals f0 gemäß dem Wert des zweiten lokalen Abstimmsignals dar, das von dem De­ tektor 230 abgegeben worden ist. Der Wert des zweiten lokalen Ab­ stimmsignals wird jedoch durch die Beziehung zwischen (f1q/k2) und (f1q + f0)/k1 bestimmt. Die Frequenz f1q des zweiten lokalen Referenzsignals ist identisch mit derjenigen jedes Systemrefe­ renzsignals. Die Werte von k1 und k2 werden durch die internen Strukturen der ersten und zweiten Referenzteiler 220 bzw. 222 festgelegt. Der Detektor 230 stellt den Wert des zweiten lokalen Abstimmsignals in einer Richtung ein, die zu der G1.(1) führt. Folglich ist, sobald eine Phasenanpassung hergestellt worden ist, die Frequenz des versetzten Signals gegeben durch:
f0 = f1q . ((k1/k2) - 1) (2).
Da die Frequenz des versetzten Signals von den Werten von k1 und k1 abhängt, hängt die Frequenz des lokalen Zeitsteuersignals, welche durch (f1q + f0) gegeben ist, auch von den Werten k1 und k2 entsprechend der folgenden Gleichung ab:
(f1q + f0) = f1q . (k1/k2) (3).
Folglich ist, sobald eine Phasenanpassung hergestellt worden ist, die Frequenz des lokalen Zeitsteuersignals gleich dem Verhältnis der ersten und zweiten Teilerkonstanten, die mit der Frequenz des Systemreferenzsignale multipliziert sind. In der bevorzugten Aus­ führungsform sind der erste und der zweite Referenzteiler 220 bzw. 222 jeweils mit Hilfe einer rekonfigurierbaren oder repro­ grammierbaren logischen Vorrichtung, wie beispielsweise einer feldprogrammierbaren Logikvorrichtung (FPGA), ausgeführt. Eine derartige Ausführung sorgt für die programmierbare Spezifizierung von Werten von k1 und k2 zu einer vorgegebenen Zeit in einer Wei­ se, die für den Fachmann ohne weiteres verständlich ist. Die Er­ findung sorgt daher für die programmierbare Spezifizierung einer lokalen Zeitsteuersignalfrequenz in dem System 10. In der bevor­ zugten Ausführungsform wird die Frequenz eines individuellen lo­ kalen Zeitsteuersignals entsprechend einem lokalen Frequenzplan bestimmt. Die Frequenzen aller lokalen Zeitsteuersignale sind über einen Systemfrequenzplan in Beziehung gebracht, was später noch beschrieben wird.
Wie vorstehend beschrieben, gibt das CRS 30 die ersten und zwei­ ten Systemreferenzsignale ab, die jeweils eine Frequenz haben, welche mit derjenigen des ursprünglichen Frequenzreferenzsignals identisch ist, das von dem Kristallfrequenz-Referenzoszillator 70 der Fig. 2 abgegeben worden ist. In der bevorzugten Ausführungs­ form ist die Frequenz der ersten und zweiten Systemreferenzsigna­ le durch den Einbau eines Referenzoszillators 70 mit einer ge­ wünschten Frequenz festgelegt. Ein lokaler Frequenzplan spezifi­ ziert lokale Zeitsteuersignalfrequenzen für eine feste Systemre­ ferenzsignal-Frequenz.
In Fig. 7A ist eine Tabelle dargestellt, die einen bevorzugten lo­ kalen Frequenzplan der Erfindung zeigt. In Fig. 7A ist die Fre­ quenz des ursprünglichen Frequenzreferenzsignals und folglich die Frequenz, die von dem CRS 30 abgegeben worden ist, beispielsweise auf 25 MHz festgelegt. Der Fachmann erkennt, daß auch eine andere Frequenz, beispielsweise 50 MHz ohne irgendeinen Verlust an All­ gemeingültigkeit gewählt werden könnte. In Fig. 7A ist in einer ersten Spalte die beispielshafte Frequenz von 25 MHz aufgeführt, die von dem CRS 30 abgegeben worden ist. In einer zweiten und ei­ ner dritten Spalte in Fig. 7A sind Werte für k1 bzw. k2 aufge­ führt. In einer vierten Spalte in Fig. 7A sind die Frequenzen des versetzten Signals aufgeführt, die den ersten drei Spalten ent­ sprechen, und in einer fünften Spalte sind die sich ergebenden Frequenzen des lokalen Zeitsteuersignals aufgeführt, daß über die vorstehend beschriebene Serrodyn-Aufwärtsumsetzung erhalten wor­ den ist. In den bevorzugten lokalen Frequenzplan ist k2 konstant gehalten, während k1 verändert wird, um lokale Zeitsteuersignale zu erzeugen, die einen Frequenzbereich überspannen. Wie in Fig. 7A dargestellt, kann das lokale Zeitsteuersignal von 60 MHz bis 90 MHz in Inkrementen von 2 MHz reichen, wenn k1 in Schritten von 4 von 170 bis 230 geändert wird. Der Fachmann erkennt, daß in einem anderen lokalen Frequenzplan die Werte von k2 und/oder sowohl von k2 als auch von k1 in entsprechender Weise geändert werden könn­ ten.
Die Erfindung schafft somit die Möglichkeit, individuell die Fre­ quenz des lokalen Zeitsteuersignals zu spezifizieren, das von je­ der lokalen Zeitbasiseinheit 22 abgegeben worden ist. Folglich könnten in einer Rechenumgebung, welche durch eine Vielzahl von Verarbeitungselementen gekennzeichnet ist, Untergruppen von Ver­ arbeitungselementen mit eindeutigen Frequenzen unter dem Pegel der einzelnen Verarbeitungselemente selbst getaktet werden. Fer­ ner kann die Frequenz eines lokalen Zeitsteuersignals program­ mierbar zu einer vorgegebenen Zeit spezifiziert werden. Das Sy­ stem 10 der Erfindung kann daher ohne weiteres an sich ändernde Zeitsteuer-Notwendigkeiten in der Rechenumgebung angepaßt werden. Bekannte Systeme und Verfahren haben diese Eigenschaft nicht.
Die Frequenz der ersten und zweiten Systemreferenzsignale kann über einen Einbau eines Referenzoszillators 70 modifiziert wer­ den, der eine gewünschte Frequenz hat. Folglich wird, um einen systemweiten Geschwindigkeitsausbau durchzuführen, ein Referen­ zoszillator 70 mit einer höheren Frequenz verwendet. Für eine Ausführung des Systems 10 mit einer niedrigen Geschwindigkeit, die möglicherweise vom Kostenstandpunkt her wünschenswert ist, wird ein Referenzoszillator 70 mit einer niedrigeren Frequenz verwendet. In Fig. 7B ist eine Tabelle dargestellt, die einen be­ vorzugten Systemfrequenzplan der Erfindung zeigt. Der bevorzugte Systemfrequenzplan sorgt für die Modifikation der Frequenz der ersten und zweiten Systemreferenzsignale, so daß eine Inkrement­ einheit in der Systemreferenzsignal-Frequenz ein konstantes In­ krement in einer lokalen Zeitsteuersignalfrequenz erzeugt. In Fig. 7B und in einer ersten Spalte sind Frequenzen aufgelistet, die von dem CRS 30 abgegeben worden sind; in einer zweiten und einer dritten Spalte sind Werte für k1 bzw. k2 aufgelistet; in einer vierten Spalte sind LTO-Frequenzen aufgeführt, welche den Werten in den ersten drei Spalten entsprechen, und in einer fünf­ ten Spalte sind die sich ergebenden lokalen Zeitsteuersignalfre­ quenzen angegeben. Wie in Fig. 7B dargestellt, erzeugt jede Zunah­ me von 1 MHz in der Systemreferenzsignal-Frequenz vorzugsweise eine Zunahme von 4 MHz in der lokalen Zeitsteuersignalfrequenz, wobei die Werte von k1 und k2 entsprechend modifiziert werden.
Zusätzlich zu den ersten und zweiten Referenzteilern 220 und 222 ist auch der Phasen- und der Frequenzdetektor 230 mit Hilfe einer rekonfigurierbaren Logikeinrichtung ausgeführt. Eine Rekonfigura­ tion von Logik in einer rekonfigurierbaren Logikeinrichtung er­ fordert eine vorgegebene Menge an Zeit, um es zu erledigen. Im allgemeinen kann bei Signalen, die mittels einer rekonfigurierba­ ren Logik erzeugt worden sind, nicht garantiert werden, daß sie gültig sind, bis ein vorherbestimmtes Zeitintervall im Anschluß an den Beginn einer Rekonfiguration verstrichen ist. In Wirklich­ keit können ein oder mehrere Signale gültig sein, bevor das vor­ herbestimmte Zeitintervall verstrichen ist. Die Ausführung des Phasen- und Frequenzdetektors 230 mit Hilfe einer rekonfigurier­ baren Logik stellt sicher, daß das erste Sperrsignal von externen Komponenten in dem System als ein Gatesignal verwendet werden kann, um anzuzeigen, daß 1) eine Rekonfiguration beendet worden ist, und daß 2) das lokale Zeitsteuersignal gültig ist. Das Er­ zeugen eines Gatesignals auf diese Weise ist insbesondere zweck­ dienlich, wenn einige oder alle externen Komponenten in einer re­ konfigurierbaren logischen Vorrichtung ausgeführt sind. In einer beispielhaften Ausführungsform sind der erste und zweite Refe­ renzteiler 220 bzw. 222 und der Phasen- und Frequenzdetektor 230 mit Hilfe einer rekonfigurierbaren Logik in einem einzigen Xilinx XC4013 FPGA (Xilinx, Inc., San Jose, CA) ausgeführt. Der Fachmann erkennt, daß auch ein anderer Typ einer rekonfigurierbaren logi­ schen Vorrichtung verwendet werden könnte, um den ersten und zweiten Referenzteiler 220 bzw. 222 und den Phasen- und/oder Fre­ quenzdetektor 230 auszuführen, beispielsweise eine löschbare, programmierbare logische Vorrichtung (EPLD).
Die kohärente Empfangseinheit 200 demoduliert die ersten und zweiten modulierten Systemreferenzsignale und erzeugt einen Satz Nachrichten, die auf der Demodulation basieren. In Fig. 8 ist ein Blockdiagramm einer bevorzugten Ausführungsform der kohärenten Empfangseinheit 200 dargestellt. Die kohärente Empfangseinheit 200 weist vorzugsweise einen ersten Mischer 400, einen ersten ge­ tasteten Integrator 412, eine erste Analog-Digital-Umsetzeinheit (ADCU) 414, ein erstes Flip-Flop 426 für das höchstwertige Bit (MSB), ein erstes Flip-Flop 428 für das niedrigstwertige Bit (LSB), einen zweiten Mischer 402, einen zweiten getasteten Inte­ grator 413, eine zweite ADCU 415, ein zweites MSB-Flip-Flop 427, ein zweites LSB-Flip-Flop 429, einen dritten F-V-Umsetzer 440 und einen Tastfolgegenerator 410 auf.
Der erste Mischer 400 ist vorgesehen, um das erste modulierte Sy­ stemreferenzsignal von einem Ausgang des ersten lokalen Puffer­ verstärkers 232 aufzunehmen, und erhält auch das erste lokale Re­ ferenzsignal, das von dem lokalen QRO 202 abgegeben worden ist. Das erste lokale Referenzsignal hat vorzugsweise eine Amplitude eins. Der erste Mischer 400 mischt oder multipliziert das erste modulierte Systemreferenzsignal und das erste lokale Referenz­ signal und gibt ein erstes gleichgerichtetes Signal ab. Da das erste lokale Referenzsignal phasenstarr zu dem ersten modulierten Systemreferenzsignal ist, ist das erste gleichgerichtete Signal eine gleichgerichtete Vollwellenversion des ersten modulierten Systemreferenzsignals. Da das erste lokale Referenzsignal in der bevorzugten Ausführungsform eine Amplitude eins hat, ist darüber hinaus das erste gleichgerichtete Signal eine Rechteck-Sinuskurve mit einer Scheitelwertamplitude, die gleich derjenigen des ersten modulierten Systemreferenzsignals ist. Der zweite Mischer 402 ist vorgesehen, um das zweite modulierte Systemreferenzsignal und das zweite lokale Referenzsignal zu erhalten. Der zweite Mischer 402 erzeugt ein zweites gleichgerichtetes Signal, das eine gleichge­ richtete Vollwellenversion des zweiten modulierten Referenz­ signals analog derjenigen für den ersten Mischer 400 ist.
Der erste getastete Integrator 412 und die erste ADCU 420 demodu­ lieren das erste gleichgerichtete Signal, um ein erstes MSB und ein erstes LSB eines in Phase liegenden Dibits zu erzeugen, das einem ersten Informationssignal entspricht, das ursprünglich von der MSM 34 von Fig. 1 abgegeben worden ist. Das erste MSB-Flip- Flop 426 hält das erste MSB, und das erste LSB-Flip-Flop 428 hält das erste LSB. In ähnlicher Weise modulieren der zweite getastete Integrator 412 und die zweite ADCU 421 das zweite gleichgerichte­ te Signal, um ein zweites MSB und ein zweites MSB eines um 90° phasenverschobenen Dibits zu erzeugen, das einem zweiten Informa­ tionssignal entspricht, das ursprünglich mittels der MSM 34 er­ zeugt worden ist. Das zweite MSB-Flip-Flop 427 hält das zweite MSB und das zweite MSB-Flip-Flop 429 hält das zweite LSB.
Die Art und Weise, in welcher die ersten und zweiten modulierten Systemreferenzsignale demoduliert werden, legt ein Systemrefe­ renzsignal-Demodulationsprotokoll fest. In Fig. 13C ist zum besse­ ren Verständnis ein Wellenform-Diagramm dargestellt, das ein be­ vorzugtes Systemreferenzsignal-Demodulationsprotokoll zeigt.
Wie in Fig. 13C dargestellt, ist das erste gleichgerichtete Signal ein "Doppel-Höcker"-(double-bump) oder eine Art gleichgerichtetes Vollwellensignal, das synchron mit dem ersten modulierten System­ referenzsignal (oder äquivalent entweder mit dem ersten System- Referenzsignal oder der ersten lokalen Referenzsignal) erzeugt worden ist. Basierend auf einer Integration und einer A/D-Umset­ zung, die bei dem ersten gleichgerichteten Signal angewendet wor­ den sind, wie im einzelnen unten noch beschrieben wird, wird ein in Phase liegendes Dibit erzeugt. Die Bitwerte in dem Dibit ent­ sprechen vorzugsweise einem Integral des ersten gleichgerichteten Signals. Das zweite gleichgerichtete Signal ist ein "Doppel- Höcker"-Signal, das synchron mit dem zweiten modulierten System­ referenzsignal erzeugt worden ist, aus welchem das um 90° phasen­ verschobene Dibit in einer Weise erzeugt worden ist, die derjeni­ gen für das in Phase liegende Dibit analog ist. Die Art und Wei­ se, in welcher die ersten und zweiten modulierten Systemreferenz­ signale demoduliert werden, wird im einzelnen nachstehend be­ schrieben.
Der Tastfolgegenerator 410 ordnet sequentiell die Arbeitsweise der ersten und zweiten getasteten Integratoren 412, 413 der er­ sten und zweiten ABC-Einheiten 420, 421 und jede der ersten MSB-, ersten LSB, zweiten MSB- und zweiten LSB-Flip-Flops 426, 428, 427 429 zu, um die vorerwähnten Demodulationen entsprechend dem Sy­ stemreferenzsignal-Demodulationsprotokoll zu erleichtern. In Fig. 9A ist ein Blockdiagramm einer bevorzugten Ausführungsform des Tastfolgegenerators 410 dargestellt. Der Generator 410 weist vor­ zugsweise einen Quadratur-Null-Durchgang-Detektor (QZCD) 466, erste bis vierte Decodier-Gates 471, 473, 475, 477 und einen Flip-Flop-Baum 488 auf. Der QZCD 466 weist vorzugsweise einen In­ phase-Vergleicher 450 und einen Quadratur-Phasenvergleicher 462 auf, die jeweils einen Eingang haben, der elektrisch mit Erde verbunden ist. Die Vergleicher 460 und 462 sind auch vorgesehen, um die ersten bzw. zweiten lokalen Referenzsignale aufzunehmen. Die Vergleicher 460 und 462 fühlen Signal-Null-Durchgänge und er­ zeugen Rechtecksignale in der vorstehend beschriebenen Weise, was Vergleicher 460 erzeugt ein in Phase liegendes Rechtecksignal an einem ersten Ausgang und ein komplementäres, in Phase liegendes Rechtecksignal an einem zweiten Ausgang. In Fig. 9A ist ein in Phase liegendes Rechtecksignal als C bezeichnet, und das komple­ mentäre, in Phase liegende Rechtecksignal ist mit CBAR bezeich­ net. Analog zu dem Inphase-Vergleicher 460 erzeugt der Quadratur- Phasen-Vergleicher 462 ein um 90° phasenverschobenes Rechteck­ signal und ein komplementäres um 90° phasenverschobenes Rechteck­ signal an einem ersten bzw. einem zweiten Ausgang. Die um 90° phasenverschobenen und die komplementären um 90° phasenverschobe­ nen Rechtecksignale sind in Fig. 9A mit S und SBAR bezeichnet. Die ersten bis vierten Decodier-Gates 471, 473, 475, 477 empfangen und decodieren C, CBAR, S und SBAR in herkömmlicher Weise, um erste bis vierte Strobe- bzw. Taktimpulse zu erzeugen. In Fig. 9A sind die ersten bis vierten Strobe-Impulse als DRN, ASN, BTN und CUN bezeichnet.
Wiederum in Fig. 13A sind Unterperioden R, S, T und U in einer einzigen Periode des ersten Systemreferenzsignals festgelegt, und Unterperioden A, B, C und D sind in einer einzigen Periode des zweiten Systemreferenzsignals festgelegt. Jede Unterperiode ent­ spricht einem Phasenintervall von π/2. In Fig. 9B ist ein bevor­ zugtes Zeitsteuerdiagramm für Signale dargestellt, die von dem Tastfolgegenerator 410 erzeugt worden sind. Fig. 9B zeigt die Zeitsteuer- und Phasenbeziehungen zwischen dem ersten und zweiten lokalen Referenzsignal und Signalen, die in dem Tastfolgegenera­ tor 410 erzeugt worden sind. Wie in Fig. 9B dargestellt, befindet sich der erste Strobe-Impuls während der Unterperiode D in einem niedrigen Zustand oder äquivalent hierzu während der Unterperiode R und befindet sich sonst in einem hohen Zustand. Der erste Stro­ be-Impuls ist folge ein aktiver Niedrigpuls, welcher exakt Unter­ perioden D und R entspricht. In ähnlicher Weise ist der zweite Strobe-Impuls ein aktiver Niedrigpuls, welcher exakt Unterperio­ den A und S entspricht. Der dritte Strobe-Impuls ist ein aktiver Niedrigpuls, welcher exakt den Unterperioden B und T entspricht, und der vierte Strobe-Impuls ist ein aktiver Niedrigpuls, welcher exakt Unterperioden C und U entspricht. Der Fachmann erkennt, daß irgendwelche oder alle Strobe-Impulse aktive hohe Impulse in ei­ ner anderen Ausführungsform sein könnten. Folglich zeigen die er­ sten bis vierten Strobe-Impulse genau an, in welcher n/2-Unterpe­ riode sich die lokalen Referenzsignale zu einer ganz bestimmten Zeit befinden. Die ersten bis vierten Strobe-Impulse sind daher durch Informationssignalen zeitlich abgeglichen, die der Modula­ tor 32 in Fig. 2 bei den ersten und zweiten Systemreferenzsignalen angewendet hat.
Die ersten bis vierten Strobe-Impulse werden an den Flip-Flop- Baum 488 über die ersten bis vierten Verteilungsleitungen 481, 492, 493 bzw. 494 angelegt. Der Flip-Flop-Baum 488 weist vorzugs­ weise eine Gruppe von SR-Flip-Flops auf, die ein Inphase-Rück­ setz-Flip-Flop 470, ein Inphase-Tast-Flip-Flop 472, ein Inphase- Freigabe-Flip-Flop 474, ein Inphase-Vorschub-Flip-Flop 476, ein Quadraturphasen-Rücksetz-Flip-Flop 480, ein Quadraturphasen-Tast- Flip-Flop 482, ein Quadraturphasen-Freigabe-Flip-Flop 484 und ein Quadraturphasen-VorausFlip-Flop 484 enthalten, die jeweils einen ersten und einen zweiten Eingang sowie einen Ausgang haben. Der Eingang und Ausgang der Flip-Flops 470, 472, 274 und 476, 480, 482, 484, 486 in dem Flip-Flop-Baum 488 ist vorzugsweise in der in Fig. 9A dargestellten Weise mit den Verteilungsleitungen 481 bis 484 verbunden. In der bevorzugten Ausführungsform gibt der Flip-Flop-Baum 488 ein Inphase-Rücksetzsignal an den Ausgang des Inphase-Rücksetz-Flip-Flop 470, ein Inphase-Tastsignal an den Ausgang des Inphase-Flip-Flops 472, ein Inphase-Freigabesignal an den Ausgang des Flip-Flops 474, ein Inphase-Voreilsignal an den Ausgang den Inphase-Voraus-Flip-Flops, ein Quadraturphasen-Rück­ setzsignal an den Ausgang des Quadraturphasen-Flip-Flops 482, ein Quadraturphasen-Tastsignal an den Ausgang des Quadratur-Phasen- Flip-Flop 484, eine Quadraturphasen-Freigabesignal an den Ausgang des Quadraturphasen-Freigabe-Flip-Flops 486 und eine Quadratur­ phasen-Voreilsignal an den Ausgang des Quadraturphasen-Voraus- Flip-Flops 486 ab. Der Ausgang jedes Flip-Flops 470, 472, 474, 476, 480, 482, 484, 486 in dem Flip-Flop-Baum 488 bildet einen Ausgang des Tastfolge-Generators 410.
Wie vorher erwähnt, ordnet der Generator 410 Demodulationsopera­ tionen in der kohärenten Empfangseinheit 200. Das Anliegen der Inphase-Rücksetz-Gate, -Freigabe- und Voraus-Signalen für die De­ modulation des ersten gleichgerichteten Signals wird nun in Ver­ bindung mit Fig. 8 und 9b im einzelnen untersucht. Zu Beginn ei­ ner Phase D des ersten lokalen Referenzsignals gehen das Inphase- Rücksetzsignal und das Inphase-Freigabesignal von einem niedrigen in einen hohen Zustand über. Hierbei wird der niedrige Zustand als "0" und der hohe Zustand als "1" entsprechend einer herkömm­ lichen binären Datenstellung bezeichnet. Der erste getastete In­ tegrator 412 erhält das Inphase-Rücksetzsignal an einem Rücksetz­ eingang. Folglich wird in der Phase D das Inphase-Rücksetzsignal an dem ersten Integrator 412 angelegt, und der Ausgang des Inte­ grators 412 geht auf 0 über. Diese 0 läuft durch die erste ADC- Einheit 420, da diese (420) das Inphase-Freigabesignal erhält. Wenn das erste lokale Referenzsignal von der Phase D in die Phase A übergeht, geht das Inphase-Rücksetzsignal auf 0 über, und das Inphase-Gatesignal geht von 0 auf 1. Wie in Fig. 9B dargestellt, entspricht die Periode, während welcher das Inphase-Gatesignal hoch ist, der Periode, während welcher das zweite lokale Refe­ renzsignal positiv ist oder gleichbedeutend sind dies die Phasen S und T. Folglich entsprechen die Phasen S und T einer Integra­ tionsstufe für den ersten Integrator 412. Während der Phasen S und T integriert der erste Integrator 412 das erste gleichgerich­ tete Signal, wodurch ein erstes Durchschnittssignal erzeugt wird. Am Ende der Phase T hat das erste Durchschnittssignal vorzugswei­ se eine Amplitude, welche gleich der Amplitude des ersten gleich­ gerichteten Signals ist, welches durch das Integral einer recht­ eckigen Sinuskurve über eine Hälfte deren Periode oder über π/2 normiert wird. Der Fachmann erkennt, daß in einer alternativen Ausführungsform der erste Integrator 412 eine herkömmliche Schal­ tungsanordnung enthalten könnte, um einen zusätzliche Skalierung bzw. Normierung an der Amplitude des ersten gleichgerichteten Signals, beispielsweise durch einen Faktor 1/π oder 2/π vorzuneh­ men.
In der bevorzugten Ausführungsform gibt der dritte F-V-Umsetzer 440 einen Satz Demodulations-Referenzspannungen mit Amplituden ab, die von der Frequenz des zweiten lokalen Referenzsignals oder was gleich bedeutend ist, von der Frequenz den ersten und zwei­ ten Systemreferenzsignalen abhängen. Der dritte F-V-Umsetzer 440 hat vorzugsweise einen internen Aufbau, der demjenigen ent­ spricht, der für den ersten F-V-Umsetzer 134 in Fig. 3B darge­ stellt ist. Die erste ADC-Einheit 420 erhält die Demodulations- Referenzspannungen, vergleicht das erste Durchschnittssignal mit dem Demodulations-Referenzspannungen und erzeugt ein Inphase-Di­ bit, das ein erstes MSB und ein erstes LSB aufweist.
In Fig. 9C ist ein Blockdiagramm einer bevorzugten Ausführungs­ form der ersten Analog-Digital-Umsetzeinheit (ADC-Einheit) 420 dargestellt. Die erste ADC-Einheit 420 weist vorzugsweise erste bis vierte Vergleicher 450, 452, 454 bzw. 456 und einen Priori­ tätscoder 458 auf. Jeder der vier Vergleicher 450, 452, 454 und 456 hat einen ersten Eingang, der mit dem Ausgang des ersten ge­ tasteten Integrators 412 über eine erste Leitung 414 verbunden ist. Jeder der vier Vergleicher 450, 452, 454, 456 hat einen zweiten Eingang, der mit einer Demodulations-Referenzleitung 445 verbunden ist, so daß der erste Vergleicher 450 eine Spannung von (1Vm . π/2) erhält; der zweite Vergleicher 452 erhält eine Spannung von (2Vm . π/2); der dritte Vergleicher 454 erhält eine Spannung von (3Vm . π/2) und der vierte Vergleicher 456 erhält eine Spannung von (4Vm . π/2). Jeder der vier Vergleicher 450, 452, 454, 456 hat zusätzlich einen Ausgang, der mit einem entsprechenden Eingang des Prioritätscodierer 458 verbunden ist. Der Prioritätscodierer 458 hat auch einen Freigabeeingang, der vorgesehen ist, um das Inphase-Freigabesignal zu erhalten, und einen MSB- sowie einen LSB-Ausgang, der mit dem Eingang des ersten MSB-Flip-Flops 26 bzw. mit dem Eingang des ersten LSB-Flip-Flops 428 verbunden ist. Der MSB-Ausgang des Prioritätscodierer bildet einen MSB-Ausgang der ersten ADC-Einheit 420 und der LSB-Ausgang des Prioritätsco­ dierer bildet einen LSB-Ausgang der ersten ADC-Einheit 420. Während des Betriebs erhalten die vier Vergleicher 450, 452, 454 und 456 das erste Durchschnittssignal und vergleichen das erste Durchschnittssignal mit einer entsprechenden Spannung, welche über die Leitung 445 erhalten worden ist. Für einen vorgegebenen Vergleicher 450, 452, 454, 456 führt Spannungsgleichheit zu der Erzeugung einer 1 an dessen Ausgang, während Spannungsungleich­ heit zu der Erzeugung einer 0 führt. Folglich gibt für den Fall, daß das erste Durchschnittssignal gleich (1Vm . π/2) ist, der er­ ster Vergleicher 450 ein 1 ab. Für den Fall, daß das erste Durch­ schnittssignal gleich (2Vm . π/2), (3Vm . π/2) oder (4Vm . π/2) ist, gibt der zweite, dritte oder vierte Vergleicher 452, 454 bzw. 456 eine 1 ab. Der Prioritätscodierer 458 erhält den Ausgang jeweils der ersten bis vierten Vergleicher 450, 452, 454, 456 und erzeugt ein entsprechendes Inphase-Dibit gemäß einem bevorzugten Signali­ sierplan, um dadurch ein Dibit zurückzugewinnen, so daß der Modu­ lator 32 von Fig. 1 auf das erste Systemreferenzsignal codiert hat.
In Fig. 5B erzeugt in dem bevorzugten Kennzeichnungsplan der Er­ findung für den Fall, daß das erste Durchschnittssignal gleich (1Vm . π/2) ist, der Prioritätscodierer 458 das Inphase-Dibit als <00<, wobei das Dibit-Format als <MSB, LSB< festgelegt ist. Dement­ sprechend erzeugt, wenn das erste Durchschnittssignal gleich (2Vm . 8π/2), (3Vm . π/2) oder (4Vm . π/2) der Prioritätscodierer 458 das Inphase-Dibit als <01<, <10< bzw. <11<. Am Ende der Unterperiode T oder dementsprechend am Ende der Unterperiode B geht das Inpha­ se-Freigabesignal auf 0, wodurch das erste MSB-Flip-Flop 426 das erste MSB hält und das erste LSB-Flip-Flop 428 das erste LSB hält.
Für den Fachmann ist ohne weiteres einzusehen, auf welche Weise der erste F-V-Umsetzer und die ADC-Einheit 420 modifizieren wür­ de, um eine richtige Erzeugung des Inphase-Dibits für den Fall sicherzustellen, daß der erste getastete Integrator 412 eine Schaltungsanordnung enthält, um eine zusätzliche Skalierung an der Amplitude des ersten gleichgerichteten Signals, beispielswei­ se durch einen Faktor von 1/π oder 2/π vorzunehmen.
Die Inphase-Rücksetz-, -Gate- und -Freigabe-Signale werden bei der Erzeugung des Inphase-Dibits über eine Demodulation des er­ sten gleichgerichteten Signals verwendet. Der Fachmann erkennt, daß die zweite ADC-Einheit 421 einen internen Aufbau hat, der mit demjenigen der ersten ADC-Einheit 420 identisch ist, und daß sie mit dem dritten F-V-Umsetzer 440, dem Qudraturphasen-MSB-Flip- Flop 427 und dem Quadraturphasen-LSB-Flip-Flop 429 in der in Fig. 8 dargestellten Weise verbunden ist. Darüber hinaus ist dem Fachmann ohne weiteres verständlich, daß die Demodulation des zweiten gleichgerichteten Signals in einer Weise durchgeführt wird, die analog derjenigen ist, die vorstehend in Verbindung mit dem ersten gleichgerichteten Signal beschrieben worden ist, und wird entsprechend den in Fig. 9B dargestellten Quadraturphasen- Signalen zugeordnet, um das Quadraturphasen-Dibit zu erzeugen. Der Fachmann erkennt auch, daß das Quadraturphasen-Dibit um eine Unterperiode oder das Zeitintervall H später erzeugt wird, als das Inphase-Dibit.
Wie vorstehend beschrieben, werden ein Inphase- und eine Quadra­ turphasen-Dibit basierend auf der Modulation, die bei den ersten bzw. zweiten Systemreferenzsignalen angewendet worden ist, in der Master-Zeitbasiseinheit 12 erzeugt. Hierbei ist die Art und Weise, in welcher die vorerwähnten Dibit erzeugt werden, vorzugs­ weise durch das in Fig. 13C dargestellte Systemreferenzsignal-De­ modulationsprotokoll festgelegt.
Wenn die Erfindung dazu verwendet wird, ein oder mehr lokale Zeitsteuersignale und/oder Nachrichtensignale an externen Kompo­ nenten zu schaffen, können externe Signale mit der hier beschrie­ benen Schaltung ausgetauscht werden. Dies kann ein Ankoppeln von externen Rauschen in das System 10 der Erfindung zur Folge haben, so beispielsweise werden hochschnelle digitale Signale über einen elektrischen Erdungspfad quer gekoppelt. In dem System 10 der Er­ findung mildert der Prozeß eines kohärenten Empfangs diese Rausch-Kopplungssituation im wesentlichen durch die Verwendung von synchronen Empfang und einer Signalintegration in dem vorste­ hend beschriebenen Dibit-Rückgewinnungsprozeß. Das heißt, ein Rückgewinnen von Information wird im Kontext mit der hier be­ schriebenen inhärent Rauschen abweisenden Schaltung durchgeführt.
Die MA-Einheit 250 empfängt über die zweite Nachrichteneinheit 310 die Inphase-Dibits, die Quadraturphasen-Dibits sowie die In­ phasen- und Quadraturphasen-Voraussignale, die von der kohärenten Empfangseinheit 200 erzeugt worden sind und erzeugt dementspre­ chend Nachrichten und organisiert Daten. Der Fachmann erkennt, daß die Nachrichten entsprechend einem Kennzeichnungsplan erzeugt werden, welcher hier durch den bevorzugten Signalisierplan der Fig. 5B vorgegeben ist. In Fig. 10 ist ein Blockdiagramm einer be­ vorzugten Ausführungsform der Nachrichten-Assembler-(MA-)Einheit 250 dargestellt. Die MA-Einheit 250 weist vorzugsweise eine Zeit­ steuersynchronisier-(TS-)Einheit 500, einen Signal-Listenspeicher 540, eine Synchronsystem-Rücksetz-(SSR) Einheit 560, eine System- Unterbrechungs-(SI-) Zustandseinrichtung 570 und eine Systeme­ reignis-(SE-)Zustandseinrichtung 580, eine Synchrondatenkanal- (SDC-)Zustandseinrichtung 590, einen Datenaufbau-(DA-)Speicher 595 und einen Datenselektor 598 auf.
Die TS-Einheit 500 ist mit der zweiten Nachrichtenleitung 310 verbunden und erhält folglich das Inphasendibit, das Quadratur­ phasen-Dibit, das Inphasen- und das Quadraturphasen-Voraussignal. Die TS-Einheit 500 richtet vorübergehend jedes Inphasen-/Quadra­ turphasen-Dibitpaar aus, das von der kohärenten Empfangseinheit erhalten worden ist. In Fig. 11A ist ein Blockdiagramm einer be­ vorzugten Ausführungsform einer Zeitsteuersynchronisier-(TS-)Ein­ heit 500 dargestellt. Die TS-Einheit 500 weist vorzugsweise vier Synchronisier-Flip-Flops 670 bis 673 und einen Ausgangsverstärker 675 auf, welcher entsprechend geschaltet ist, um das Quadratur­ phasen-Voraussignal zu erhalten. Der Ausgangsverstärker 675 hat einen Ausgang, welcher das Quadraturphasen-Voraussignal zu der SI-Zustandseinrichtung 570, der SE-Zustandseinrichtung 580, der SDC-Zustandseinrichtung 590 und dem DA-Speicher 595 über eine Taktleitung 640 leitet. Das Verwenden des Quadraturphasen-Voraus­ signals in jeder der SI-, SE- und SDC-Zustandseinrichtungen 570, 580 und 590 und des DA-Speichers 595 wird anhand von Fig. 12A bis 12D im einzelnen beschrieben.
Das erste Synchronisier-Flip-Flop 650 erhält das MSB des Inpha­ sen-Dibits, d. h. das erste MSB. Das Synchronisier-Flip-Flop 271 erhält das LSB des Inphasen-Dibits. In ähnlicher Weise erhalten die dritten und vierten Synchronisier-Flip-Flops 672 und 673 das MSB und das LSB des Quadraturphasen-Dibits. Jedes der vier Flip- Flops 670 bis 673 hat einen Freigabeeingang, der vorgesehen ist, um das Inphasen-Voraus-Signal zu erhalten. Das Inphasen-Voraus­ signal leitet das Laden der Inphasen- und Quadraturphasen-Dibits in den Satzsynchronisations-Flip-Flops 670 bis 673. In Fig. 9B geht das Inphasen-Voraussignal von 0 auf 1 entsprechend dem Null­ durchgang-Übergang des ersten lokalen Referenzsignals von der Un­ terperiode A zu der Unterperiode B über. Das Inphasen-Voraus- Signal geht anschließend von 1 auf 0 entsprechend dem Nulldurch­ gang-Übergang des zweiten lokalen Referenzsignals von der Unter­ periode T zu der Unterperiode U über. Das Inphasen-Voraussignal ist folglich für die Dauer einer einzigen Unterperiode hoch, wel­ che hier aus das Zeitintervall H definiert ist. In der bevorzug­ ten Ausführungsform halten die vier Synchronisations-Flip-Flops 671 bis 674 ein Signal, das an ihren Ausgängen vorhanden ist, entsprechend einem Niedrig-Hoch- oder einem Anstiegsflanken-Über­ gang in dem Inphasen-Voraussignal. Wie aus Fig. 9B zu ersehen ist, gibt es eine Zeitverzögerung, die gleich 3H ist, zwischen dem Halten des Inphasen-Dibits in der kohärenten Empfangseinheit 200 und dem Halten des Inphasen-Dibits in der TS-Einheit 500. In ähn­ licher Weise gibt es auch eine Zeitverzögerung, welche gleich 2H ist, zwischen dem Halten des Quadraturphasen-Dibits in der kohä­ renten Empfangseinheit 200 und dem Halten dieses Dibits in der TS-Einheit 500. Da die Halteverzögerung bei den Inphasen- und Quadraturphasen-Dibits sich um H unterschieden, eliminiert die TS-Einheit 500 die Phasendifferenz zwischen jedem Inphasen/Qua­ draturphasen-Dibitpaar, das von der kohärenten Empfangseinheit 200 erhalten worden ist. Die ersten vier Flip-Flops 671 bis 674 geben ein vorübergehend ausgerichtetes Inphasen/Quadraturphasen- Dibitpaar an den Signal-Listenspeicher 540 über eine Adressenlei­ tung 600 ab.
Der Signal-Listenspeicher 540 erhält jedes vorübergehend ausge­ richtete Inphasen/Quadraturphasen-Dibitpaar und erzeugt dement­ sprechend Zustandssteuersignale. Der Speicher 540 gibt zusätzlich ein Kanalauswahlsignal ab. In Fig. 11B ist ein Blockdiagramm einer bevorzugten Ausführungsform des Signal-Listenspeichers 540 darge­ stellt. Der Speicher 540 weist vorzugsweise erste bis vierte Speicher 680 bis 683 und einen Kanal-Auswählspeicher 685 auf. In dem Signal-Listenspeicher 540 ist die Adressenleitung 600 in eine erste bis vierte Adressen-Auswählleitung 660 bis 663 unterteilt.
Jeder der vier Speicher 680 bis 683 hat einen ersten bis vierten Eingang, der mit der ersten, zweiten, dritten und vierten Adres­ sen-Auswählleitung 660, 661, 662 bzw. 663 verbunden ist. Die vier Speicher 680 bis 683 erhalten vorzugsweise das MSB in dem Inpha­ sen-Dibit auf der vierten Leitung 663, das LSB des Inphasen-Di­ bits auf der dritten Leitung 662, das MSB des Quadraturphasen-Di­ bits auf der zweiten Leitung 661 und das LSB des Quadraturphasen- Dibits auf der ersten Leitung 660.
Die vier Speicher 680 bis 683 haben jeweils eine Gruppe von Aus­ gängen, die Zustandssteuersignale an der SSR-Einheit 560, der SI- und SE-Zustandseinrichtung 570 bzw. 580 bzw. der SCD-Zustandsein­ richtung 590 schaffen. Basierend auf den Werten des MSB und des LSB jedes der Inphasen- und Quadraturphasen-Dibits ist jeder Speicher 680 bis 683 als eine Verweistabelle wirksam und leitet eine ganz bestimmte Gruppe von Zustandssteuersignalen zu deren Ausgangsgruppe. In der bevorzugten Ausführungsform gibt der erste Speicher 680 ein Rücksetzsignal ab. Der zweite Speicher 681 gibt ein SI-Toggle-Signal, ein SI-Lösch-Signal und ein I-Setzsignal ab. Der dritte Speicher 682 gibt ein SE-Toggle-, ein SE-Lösch- und eine SE-Setzsignal ab. Schließlich gibt der vierte Speicher 683 ein SDC-Freigabesignal, ein erstes, zweites und drittes SDC- Signal ab. Die Zustandssteuersignale, die von den vier Speichern 680 bis 683 abgegeben worden sind, leiten direkt die Operation der SSR-Einheit 560 und der Zustandseinrichtungen 570, 580, 590 in der MA-Einheit 250, um die Funktionen durchzuführen, die durch den bevorzugten Signalisierplan der Fig. 5B spezifiziert sind.
Der Kanal-Auswählspeicher 684 ist vorzugsweise ein Speicher zum Speichern und Abgeben eines Kanal-Auswählsignals, das die Opera­ tion des Datenselektors 598 der Fig. 10 steuert, welcher im ein­ zelnen unten noch beschrieben wird. In der bevorzugten Ausfüh­ rungsform ist jeder Speicher 680 bis 683 in dem Signal-Listen­ speicher 540 als ein Festwertspeicher (ROM) mit einer rekonfigu­ rierbaren und einer reprogrammierbaren Logikvorrichtung, wie bei­ spielsweise einer FPGA, ausgeführt. Eine solche Ausführung sorgt für die flexible Spezifikation jedes Speicher-Mappings von Inpha­ sen- und Quadraturphasen-Dibit-LSBs und MSBs in Zustandssteuer­ signale an ihren Ausgängen. Das heißt, durch Reprogrammieren oder Rekonfigurieren eines oder mehrerer Speicher 680 bis 683 in dem Signal-Listenspeicher 540 können die Zustandssteuersignale, die durch jeden der vier Speicher 680 bis 683 abgegeben worden sind, sowie das Kanal-Auswählsignal, das von dem Speicher 684 abgegeben worden ist, wahlweise geändert werden. In der bevorzugten Ausfüh­ rungsform werden die vier Speicher 680 bis 683 in dem Signal-Li­ stenspeicher 540 so konfiguriert, daß die Zustandssteuersignale die SSR-Einheit 560, die SI-, die SE- und die SDC-Zustandsein­ richtung 570, 589 bzw. 590, um die Funktionen durchzuführen, die in dem bevorzugten Signalisierplan von Fig. 5B definiert sind. Der Fachmann erkennt, daß ein oder mehrere Speicher 680 bis 683 in dem Signal-Listenspeicher 540 wahlweise rekonfiguriert werden können, um Funktionen außer denen durchzuführen, die in Fig. 5B definiert sind.
In der bevorzugten Ausführungsform zeigt das Rücksetzsignal, das von dem Signal-Listenspeicher 540 abgegeben worden ist, ob ein systemweites Rücksetzen erforderlich ist. Wenn ein systemweites Rücksetzen erforderlich ist, gibt die SSR-Einheit 560 ein SSR- Signal ab, welches als die Funktion SSR "Geltendmachen" in Fig. 5B angezeigt ist. In Fig. 12A ist ein Blockdiagramm einer bevorzugten Ausführungsform der Synchronsystem-Rücksetz-(SSR-)Einheit 560 dargestellt. Die SSR-Einheit 560 weist ein erstes und ein zweites Flip-Flop 900 bzw. 902 auf. Die SSR-Einheit 560 ist vorgesehen, um das Rücksetzsignal aufzunehmen, das von dem Signal-Listenspei­ cher 590 an einen Freigabe-Eingang des ersten Flip-Flops 900 ab­ gegeben worden ist. Jedes der beiden Flip-Flops 900, 902 hat ei­ nen Takteingang, welcher mit der Taktleitung 640 verbunden ist. Das erste Flip-Flop 900 hat einen Eingang, der an ein Hoch-Signal angekoppelt ist, und das zweite Flip-Flop 902 hat einen Eingang, der mit einem Ausgang des ersten Flip-Flops 900 verbunden ist. Der Ausgang des ersten Flip-Flops 900 stellt einen Ausgang der SSR-Einheit 560 dar, an welcher das SSR-Signal erzeugt wird. Schließlich hat das erste Flip-Flop 900 einen Rücksetzeingang, der mit einem Ausgang des zweiten Flip-Flops 902 verbunden ist. Für den Fall, daß das Rücksetzsignal auf einen hohen Zustand übergeht, wird das SSR-Signal über zwei Systemreferenzsignal-Pe­ rioden, d. h. ein Zeitintervall von 8 H, was durch das Quadratur­ phasen-Voraussignal synchronisiert ist, auf einem hohen Zustand gehalten. Das SSR-Signal wird zu jeder der SI-, SE-, und SDC-Zu­ standseinrichtungen 570, 580 bzw. 590 und zu dem Datenselektor 598 über eine SSR-Leitung 650 geleitet.
Die SI-Toggle-, SI-Rücksetz- und SI-Setz-Signale, die von dem Signal-Listenspeicher 540 abgegeben worden sind, spezifizieren, daß ein System-Unterbrechungssignal SI entsprechend dem in Fig. 5B dargestellten Funktionen "SI-Kippen", "SI auf L setzen" und "SI auf H setzen" zu kippen, zurückzusetzen bzw. zu setzen ist. Die SI-Zustandseinrichtung 570 gibt das SI-Signal ab. In Fig. 12B ist ein Blockdiagramm einer bevorzugten Ausführungsform der Systemun­ terbrechungs-(SI-)Zustandseinrichtung 570 dargestellt. Die SI-Zu­ standseinrichtung 570 weist ein erstes J-K-Flip-Flop 570 auf, das vorgesehen ist, um das SI-Setzsignal an einem Setzeingang, das SI-Kippsignal jeweils an einem J-K-Eingang und jeweils das SR- Signal und das SI-Löschsignal an einem Rücksetzeingang über eine ODER-Funktion aufzunehmen. Das erste J-K-Flip-Flop 110 hat zu­ sätzlich einen Takteingang, der mit der Taktleitung 640 verbunden ist und einen Ausgang, der einen Augang der SI-Zustandseinrich­ tung 570 bildet, an welcher das SI-Signal erzeugt wird. In der bevorzugten Ausführungsform sind die SI-Setz-, SI-Kipp- und die SI-Lösch-Signale an das erste J-K-Flip-Flop 960 angelegt, um das SI-Signal in einer Weise zu setzen, zu kippen und zurückzusetzen.
Die SE-Kipp-, SE-Rücksetz- und SE-Setz-Signale, die von dem Signal-Listenspeicher 540 abgegeben worden sind, spezifizieren, daß ein Systemereignis-Signal SE entsprechend den in Fig. 5B dar­ gestellten Funktionen "SE Kippen", "SE auf L setzen" und "SE auf H setzen" zu kippen, zurückzusetzen bzw. zu setzen ist. Die SE-Zu­ standseinrichtung 570 gibt das SE-Signal ab. In Fig. 12C ist ein Blockdiagramm einer bevorzugten Ausführungsform der Systemereig­ nis-Zustandseinrichtung 580 dargestellt, welche hinsichtlich ih­ res Aufbaus und ihrer Verbindungen vorzugsweise identisch mit den jenigen der SI-Zustandseinrichtung 590 ist, mit der Ausnahme, daß die SI-Setz-, SI-Lösch- und die SI-Kipp-Signale durch die SE- Setz-, SE-Lösch- und die SE-Kipp-Signale so zu ersetzen sind, wie dargestellt ist. Die Art und Weise, in welcher das SE-Signal er­ zeugt wird, ist für den Fachmann ohne weiteres verständlich.
In Fig. 10 ist der Datenselektor 598 vorgesehen, um jeweils das SSR-, SI- und das SE-Signal zu empfangen. Der Datenselektor 598 hat zusätzlich einen Steuereingang, um das Kanalauswählsignal aufzunehmen, das von dem Speicher 598 abgegeben worden ist. Der Datenselektor 598 ist vorzugsweise mit Hilfe einer Gruppe von herkömmlichen Datenselektoren ausgeführt. Basierend auf dem Ka­ nalauswählsignal leitet der Datenselektor 598 die SSR-, die SI- und die SE-Signale zu dem ersten oder dem zweiten Signalisierka­ nal 320 bzw. 330. Die Erfindung erleichtert folglich den selekti­ ven synchronen Transfer einer Vielzahl von Signalen zu einer Vielzahl Bestimmungsstellen. Selbstverständlich können in einer weiteren Ausführungsform auch zusätzliche oder weniger Kennzeich­ nungskanäle 320, 330 benutzt werden. Wenn die SSR-, SE- und SI- Signale zu dem ersten Kennzeichnungskanal 320 geleitet worden sind, schaffen sie ein Mittel zum Kennzeichnen eines ersten Sat­ zes von externen Komponenten. In analoger Weise schaffen, wenn die SSR-, SE- und SI-Signale zu den zweiten Kennzeichnungskanal geleitet werden, diese ein Mittel zum Kennzeichnen eines zweiten Satzes von externen Komponenten. Selbstverständlich kann jeder Satz externer Komponenten die SSR-, SI- und SE-Signale unter­ schiedlich interpretieren.
Die SDC-Zustandseinrichtung 590 steuert Daten-Assembler-Operatio­ nen, bei welchen die ersten, zweiten und dritten SDC-Signale, die von dem Signal-Listenspeicher 540 abgegeben worden sind, in dem DA-Speicher 595 in Datenworte gruppiert und an den Synchrondaten- Kanal 340 abgegeben werden. In Fig. 12D ist ein Blockdiagramm ei­ ner bevorzugten Ausführungsform der Synchrondatenkanal-(SDC-)Zu­ standseinrichtung 590 und der Daten-Assembler-(DA-)Speicher 595 dargestellt ist. Die SDC-Zustandseinrichtung 590 weist einen Mehrstufen-Puffer 930 und einen Folgezähler 940 auf. Der Mehrstu­ fen-Puffer 930 ist vorgesehen, um die ersten bis dritten SDC- Signale sowie das SDC-Freigabesignal aufzunehmen, das von dem Signal-Listenspeicher 540 abgegeben worden ist. Der Puffer 930 ist zusätzlich vorgesehen, um das Quadraturphasen-Voraussignal über die Taktleitung 640 zu erhalten. In der bevorzugten Ausfüh­ rungsform weist der Mehrstufenspeicher 930 D-Flip-Flops auf, die drei Stufen bilden. In einer vorgegebenen Stufe hat jedes D-Flip- Flop einen Ausgang, der mit einem Eingang eines entsprechenden D- Flip-Flops in der nachfolgenden Stufe verbunden ist. Darüber hin­ aus hat jedes D-Flip-Flop in dem Mehrstufen-Puffer 930 einen Aus­ gang, der mit einem Ausgang des DA-Speicher 595 verbunden ist. Die Flip-Flops in jeder Stufe werden durch das Quadraturphasen- Voraussignal getaktet und durch das SDC-Freigabesignal freigege­ ben. Für den Fachmann ist selbstverständlich, daß, wenn der Mehr­ stufen-Puffer 39 freigegeben ist, jeder Quadraturphasen-Voraus­ signal-Impuls eine erste Gruppe der ersten bis dritten SDC-Signa­ le von der zweiten in die dritte Stufe, eine zweite Gruppe der ersten bis dritten SDC-Signale von der ersten in die zweite Stufe und eine dritte Gruppe der ersten SDC-Signale, die von dem Signal-Listenspeicher 540 abgegeben worden sind, in die erste Stufe taktet. Folglich wird ein vorgegebener Satz der ersten bis dritten SDC-Signale von einer in die nächste Stufe entsprechend dem Quadraturphasen-Voraussignal übertragen.
Der Folgezähler 940 gibt ein periodisches Freigabesignal an den DA-Speicher 595 ab. Hierbei ist der Zähler 940 entsprechend ge­ schaltet, um das Quadraturphasen-Voraussignal und das SDC-Freiga­ besignal zu erhalten. Der Folgezähler 940 weist vorzugsweise Flip-Flops auf, die entsprechend geschaltet sind, um eine binäre Folge so abzugeben, daß ein Laden des DA-Speichers 595 entspre­ chend einer periodischen Anzahl von Quadraturphasen-Voraussignal- Impulsen freigegeben wird. Für einen Mehrstufen-Puffer 940 mit einer Anzahl Stufen, die als S definiert sind, gibt der Folge­ speicher 940 vorzugsweise das periodische Freigabesignal ab, so daß ein Laden des DA-Speichers 595 jeweils für jeden (S1)-ten Quadraturphasen-Voraussignalimpulsfreigegeben wird.
Der DA-Speicher 595 weist vorzugsweise ein herkömmliches Register auf, das vorgesehen ist, um das Quadraturphasen-Voraussignal, das periodische Freigabesignal und Signale aufzunehmen, die von dem Mehrstufen-Puffer 930 abgegeben worden sind. Wenn das periodische Freigabesignal auf einen hohen Zustand übergeht, lädt der DA- Speicher 595 die Ausgänge jeder Stufe in den Puffer 930. In der bevorzugten Ausführungsform gibt der Mehrstufen-Puffer 930 neun Bits ab, welche als acht Datenbits plus einem Paritätsbit in der in Fig. 12D dargestellten Weise gruppiert sind. Für den Fachmann ist es selbstverständlich, daß der DA-Puffer 595 entsprechend ausgeführt werden könnte, um zusätzliche oder weniger Bits abzu­ geben. Der DA-Speicher 595 gibt die geladenen Bitdaten und das Paritätsbit an den Synchrondatenkanal 340 ab. Der Fachmann weiß, daß bei einer anderen Ausführungsform der DA-Speicher 595 ein oder mehr Bits an einen zusätzlichen (nicht dargestellten) Syn­ chrondatenkanal abgeben könnte. Eine derartige Ausführungsform könnte gleichzeitig Untergruppen von Bits abgeben, um Synchron- Datenkanäle zu trennen oder um einen vorgegebenen Synchron-Daten­ kanal über einen Datenselektor oder eine umprogrammierbare Logik auszuwählen.
Über den Signal-Listenspeicher 540, die SDC-Zustandseinrichtung 590 und den DA-Speicher 595 erleichtert die Erfindung Datenüber­ tragungsoperationen, in welchen Daten synchron von der Master- Zeitbasiseinheit 12 an jede lokale Zeitbasiseinheit 22 übertragen werden. Da die Daten über den Modulator 32 in die Systemreferenz­ signale codiert werden, weiß der Fachmann, daß die Erfindung hochschnelle Datenübertragungsoperationen erleichtert, welche beim Stand der Technik nicht möglich sind.
Ferner erkennt der Fachmann, daß im allgemeinen die SI-, SE- und SDC-Zustandseinrichtung 570, 580 und 590 Zustandseinrichtungen sind, um Systemunterbrechungs-, Systemrücksetz-, bzw. Synchronda­ ten-Operationen durchzuführen. Folglich weiß der Fachmann auch, daß andere Ausführungen der SI-, SE- und SDC-Zustandseinrichtun­ gen 570, 580 und 590 möglich sind.
Verfahrensschritte
In Fig. 14A ist ein Ablaufdiagramm von bevorzugten Operationen der Master-Zeitbasiseinheit dargestellt. Diese Operationen der Ma­ ster-Zeitbasiseinheit 12 beginnen beim Schritt 2000 mit der Er­ zeugung der ersten und Systemreferenzsignale durch das CRS 30, wobei die ersten und zweiten Systemreferenzsignale zu dem ur­ sprünglichen Frequenz-Referenzsignal in der vorbeschriebenen Wei­ se phasenstarr sind. In der bevorzugten Ausführungsform sind die ersten und zweiten Systemreferenzsignale sinusförmige Signale mit einer Quadraturphasen-Beziehung. Als nächstes erzeugt beim Schritt 2002 die MSM 34 Bitfolgen und Informationssignale gemäß den Nachrichtenübermittlungssignalen, die an deren Eingang erhal­ ten worden sind. Wie vorher beschrieben, verwendet die MSM 34 die ersten und zweiten Systemreferenzsignale, um synchron die Bitfol­ gen und Informationssignale zu erzeugen. Im Anschluß an denn Schritt 2002 moduliert der Modulator 32 synchron die ersten und zweiten Systemreferenzsignale entsprechend den Informationssigna­ len, die von der MSM 34 Informationssignale beim Schritt 2004 er­ zeugt worden sind. Beim Schritt 2004 ist die Modulation vor­ zugsweise eine Direktträger-Amplitudenmodulation (AM). Nach dem Schritt 2004 werden die ersten bzw. zweiten modulierten Systemre­ ferenzsignale auf jede lokale Zeitbasiseinheit 22 über die ersten und zweiten Verteilungsverstärke 36, 38 und die ersten und zwei­ ten Leitungen 16, 18 des Systembus 14 beim Schritt 2006 verteilt, worauf dann das bevorzugte Verfahren beendet ist. Die bevorzug­ ten, in Fig. 14A dargestellten Operationen der Master-Zeitbasis­ einheit sind zum leichteren Verständnis als einzige Folge be­ schrieben worden. Der Fachmann weiß jedoch, daß jeder der vorer­ wähnten Schritte fortlaufend und synchron relativ zu jedem ande­ ren Schritt während einer normalen Systemoperation durchgeführt werden kann.
In Fig. 14B ist ein Ablaufdiagramm von bevorzugten Operationen ei­ ner lokalen Zeitbasiseinheit dargestellt. Die bevorzugten Opera­ tionen der lokalen Zeitbasiseinheit 22 beginnen beim Schritt 2010 mit der Erzeugung der ersten und zweiten lokalen Referenzsignale durch den lokalen QRO 202, wobei die lokalen Referenzsignale zu den modulierten Systemreferenzsignalen über den zweiten Phasende­ tektor 204 und das zweite Schleifenfilter 206, wie vorstehend be­ schrieben, phasenstarr sind.
Die lokale Zeitbasiseinheit 22 erzeugt gleichzeitig ein lokales Zeitsteuersignal und demoduliert die ersten und zweiten Systemre­ ferenzsignale nach dem Schritt 2010. Bei der Erzeugung des loka­ len Zeitsteuersignals erzeugt der LTO 208 das versetzte Signal beim Schritt 2012. Als nächstes erzeugen der Zeitsteuersignal-Mi­ scher 210 und das Zeitsteuersignalfilter das lokale Zeitsteuer­ signal über eine Frequenz-Aufwärtsumwandlung beim Schritt 2004 in der vorstehend beschriebenen Weise. Da das lokale Zeitsteuer­ signal über eine Frequenz-Aufwärtsumwandlung erzeugt wird, ist die Frequenz des lokalen Zeitsteuersignals höher als die der er­ sten und zweiten Systemreferenzsignale. Nach dem Schritt 2014 er­ zeugen die ersten und zweiten Referenzteiler 220, 222 eine fre­ quenzgeteilte Version des lokalen Zeitsteuersignals bzw. eine frequenzgeteilte Version des zweiten lokalen Referenzsignals beim Schritt 2016. Die frequenzgeteilten Versionen des lokalen Zeit­ steuersignals und des zweiten lokalen Referenzsignals sind dann beim Schritt 2018 phasenstarr verriegelt. Die Verwendung von um­ programmierbaren und rekonfigurierbaren Referenzteilern 220, 222 in Verbindung mit einer Phasenverriegelung erleichtert die pro­ grammierbare Spezifizierung der Frequenz des lokalen Zeitsteuer­ signals in einem Frequenzbereich.
Bei der Demodulation der ersten und zweiten modulierten Systemre­ ferenzsignale demoduliert die kohärente Empfangseinheit 200 syn­ chron die ersten und zweiten modulierten Systemreferenzsignale beim Schritt 2020, wodurch Bitfolgen zurückgewonnen werden, die in die ersten und zweiten Systemreferenzsignale durch den Modula­ tor 32 in der Master-Zeitbasiseinheit 12 codiert wurden. Als nächstes decodiert die MA-Einheit 250 synchron die Bitfolgen, die von der kohärenten Empfangseinheit 200 abgegeben worden sind, entsprechend einem Kennzeichnungsplan beim Schritt 2022, um da­ durch Nachrichten und/oder Daten zu erzeugen. Im Anschluß an den Schritt 2022 gibt die MA-Einheit 250 synchron Nachrichten an ei­ nen Kennzeichnungskanal 320, 330, beim Schritt 2024 ab. Die MA- Einheit 250 gruppiert zusätzlich Synchrondaten in einem oder meh­ reren Worten beim Schritt 2026, worauf dann die MA-Einheit 250 jedes Datenworts beim Schritt 2028 an den Synchrondatenkanal 340 abgibt. Im Anschluß an jeden der Schritte 2018 und 2028 endet das bevorzugte Verfahren. Die bevorzugten, in Fig. 13B dargestellten Operationen einer lokalen Zeitbasiseinheit sind zum leichteren Verständnis als eine nicht-wiederholbare Folge beschrieben. Der Fachmann weiß jedoch, daß jeder der in Fig. 14B dargestellten Schritte fortlaufend und synchron bezüglich jedes anderen Schrit­ tes während einer normalen Systemoperation durchgeführt wird.
Bei Unterschied zu nahezu allen bekannten Systemen und Verfahren zum Erzeugen und Verteilen eines Referenz-Zeitsteuersignals wer­ den gemäß der Erfindung sinusförmige Signale und nicht Rechteck­ wellensignale erzeugt und verteilt. Der Fachmann weiß, daß die Erzeugung und Verteilung von Rechteckwellensignalen insbesondere bei hohen Frequenzen schwierig ist, da mehr Strom und erheblich mehr Verstärkung erforderlich ist, um zuverlässig schnelle, eine geringe Neigung aufweisende Wellensignale als sich gleichmäßig änderndes inusförmige Signale zu erzeugen. Zusätzlich sind Im­ pulsreflexionen entlang eines Verteilungswegs viel stärker bei Rechteckwellensignalen, da die Größe jeder Reflexion proportional zu der Ableitung der Signalanstiegszeit ist. Bei der vorliegenden Erfindung sind somit in vorteilhafter Weise die Probleme vermie­ den, die mit der Erzeugung und einer systemweiten Verteilung eines Rechteckwellensignals zusammenhängen. Im allgemeinen können mit der vorliegenden Erfindung zuverlässig viel Signale mit einer viel höheren Frequenz auf einer systemweiten Basis als bei her­ kömmlichen Systemen und Methoden erzeugt und verteilt werden, die auf Rechteck(Wellen)signalen basieren.
Die ersten und zweiten modulierten Systemreferenzsignale werden jeweils an die lokalen Zeitbasiseinheit 22 mit Hilfe eines einzi­ gen Verteilungsverstärkers 36, 88 und eines impedanzgesteuerten Systembus 14 verteilt, vorzugsweise über eine herkömmliche Strei­ fenleitung- oder Mikrostrip-Übertragungsleitungstechnologie (d. h. eine Metall- und Erdungsebene) ausgeführt ist. In jeder lokalen Zeitbasiseinheit 22 ist ein einziger lokaler Pufferverstärker 232, 234 hoher Impedanz vorgesehen, um ein vorgegebenes modu­ liertes Systemreferenzsignal zu empfangen, um dadurch sicherzu­ stellen, daß die lokale Zeitbasiseinheit 22 mit dem Systembus 14 im wesentlich reflexionsfrei verbunden ist. Das System 10 gemäß der Erfindung kann daher skaliert bzw. normiert werden, um zu­ sätzliche lokale Zeitbasiseinheiten 22 unterzubringen, indem die Länge des Systembus 14 vergrößert und der Leitungsabschluß 20 verschoben wird.
Gemäß der Erfindung ist eine Frequenz-Aufwärtsumwandlung in jeder lokalen Zeitbasiseinheit 22 verwendet, um ein lokales Zeitsteuer­ signal mit einer höheren Frequenz als die der Systemreferenz­ signal zu erzeugen. Im Gegensatz hierzu ist bei herkömmlichen Sy­ stemen und Verfahren für eine Verteilung von Zeitsteuersignalen ein Systemzeitsteuer-Referenzsignal entweder 1) direkt genutzt, 2) frequenzgeteilt oder 3) abwärtsgewandelt, um lokal genutzte Zeitsteuersignale zu erzeugen. Daher braucht bei der Erfindung ein hochfrequentes Signal nicht auf einer systemweiten Basis er­ zeugt und verteilt zu werden, um ein hochfrequentes lokal genutz­ tes Zeitsteuersignal zu erzeugen. Ein gravierender Unterschied zu herkömmlichen Systemen und Verfahren besteht darin, daß die Sy­ stemreferenzsignale in der Frequenz viel niedriger sein können als ein vorgegebenes lokales Zeitsteuersignal. Darüber hinaus ist bei der Erfindung eine Einrichtung vorgesehen, um vielfache auf­ wärt sumgewandelte Zeitsteuersignale parallel zu erzeugen, wobei jedes unabhängig von einem anderen, und trotzdem synchronisiert und synchronisierbar ist, ohne daß eine spezielle Synchronisier­ schaltung an jeder lokalen Zeitbasiseinheit 22 erforderlich ist. Ferner erfordert außer für POR-Situationen das Zeitsteuer-Nach­ richtenübermittlungssystem 10, wie es hier beschrieben, ist, keine Synchronisiereinheiten irgendwo an irgendeiner Bereichsgrenze in dem System 10. Herkömmliche Systeme und Verfahren weisen keine ähnlichen Vorteile auf.
In der bevorzugten Ausführungsform sind gemäß der Erfindung pro­ grammierbare oder rekonfigurierbare Frequenzteiler in jeder loka­ len Zeitbasiseinheit 22 vorgesehen, so daß die lokalen Zeitsteu­ ersignal-Frequenzen programmierbar auf einer individuellen Basis zu jeder vorgegebenen Zeit spezifiziert werden können. Herkömmli­ che Systeme und Verfahren für eine Zeitsteuersignal-Erzeugung ha­ ben diesen Vorteil nicht. Die Verwendung einer phasenstarren Ver­ riegelung stellt sicher, daß die Erfindung in hohem Maße ge­ schützt vor digitalem Rauschen ist. Der Fachmann erkennt, daß phasenstarre Schleifen äquivalent zu Filter sind, welche durch Q- Werte, in den Millionen gekennzeichnet sind, wodurch das genaue Takten von Signalen beim Vorhandensein von Rauschen erleichtert ist.
Die Art und Weise, in welcher bei der Erfindung ein Quadratur- Kennzeichen in Verbindung mit phasenstarrer Verriegelung genutzt wird, erleichtert eine synchrone frequenzunabhängige Demodulation der Systemreferenzsignale. Dadurch wiederum ist ein Mittel ge­ schaffen, um synchrone oder beinahe synchrone Kennzeichnungs- und Datenübertragungsoperationen auf einer systemweiten Basis durch­ zuführen. Herkömmliche Systeme oder Verfahren können auf diese Weise nicht betrieben werden.
Ferner könnte beispielsweise die vorliegende Erfindung entspre­ chend modifiziert werden, um bei Frequenzen über 1 GHz zu arbei­ ten. Als weiteres Beispiel könnte die vorliegende Erfindung da­ hingehend modifiziert werden, um mit Signalen zu arbeiten, die eine Nicht-Quadraturphasenbeziehung oder eine nicht-sinusförmige Wellenform haben. Als noch ein weiteres Beispiel können ein oder mehrere Teile der Erfindung in einer integrierten Schaltung ver­ knüpft werden.
In Fig. 15 ist ein Blockdiagramm einer bevorzugten Ausführungsform eines Systems 3010 für ein skalierbares, paralleles, dynamisch rekonfigurierbares Berechnen dargestellt, das gemäß der Erfindung ausgeführt wird. Das System 3010 weist vorzugsweise zumindest eine S-Einrichtung 3012, eine T-Einrichtung 3014 entsprechend je­ der S-Einrichtung 3012, eine universelle Verbindungsmatrix (GPIM) 3016, zumindest eine Ein-/Ausgabe-T-Einrichtung 3018, ein oder mehrere Ein-/Ausgabevorrichtungen 3020 und eine Master-Zeitbasis­ einheit 3022 auf. In der bevorzugten Ausführungsform weist das System 3010 mehrere S-Einrichtungen 3012 und folglich mehrere T- Einrichtungen 3014 plus mehrere Ein-/Ausgabe-T-Einrichtungen 3018 und mehrere Ein-/Ausgabe-Vorrichtungen 3020 auf.
Jede der S-Einrichtungen 3012, der T-Einrichtungen 3014 und der Ein-/Ausgabe-T-Einrichtungen 3018 hat einen Master-Zeitsteuerein­ gang, der mit einem Zeitsteuerausgang der Master-Zeitbasiseinheit 3022 verbunden ist. Jede S-Einrichtung 3012 hat einen Eingang und einen Ausgang, der mit der entsprechenden T-Einrichtung 3014 ver­ bunden ist. Zusätzlich zu dem Eingang und dem Ausgang, der mit der entsprechenden S-Einrichtung 3012 verbunden ist, hat jede T- Einrichtung 3014 einen Leiteingang und einen Leitausgang, welche mit der GPI-Matrix 3016 verbunden sind. Dementsprechend hat jede Ein-/Ausgabe-T-Einrichtung 3018 einen Eingang und einen Ausgang, welcher mit einer Ein-/Ausgabe-Vorrichtung 3020 verbunden ist, und einen Leiteingang und einen Leitausgang, der mit der GPI-Ma­ trix 3016 verbunden ist.
Wie unten im einzelnen noch beschrieben wird, ist jede S-Einrich­ tung 3012 ein dynamisch rekonfigurierbarer Rechner. Die GPI-Ma­ trix 3016 stellt ein paralleles Punkt-zu-Punkt-Verbindungsmittel dar, welches eine Kommunikation zwischen T-Einrichtungen 3014 er­ leichtert. Der Satz T-Einrichtungen 3014 und die GPI-Matrix 3016 bilden ein paralleles Punkt-zu-Punkt-Verbindungsmittel für einen Datentransfer zwischen S-Einrichtungen 3012. In ähnlicher Weise bilden die GPI-Matrix 3016, der Satz T-Einrichtungen 3014 und der Satz Ein-/Ausgabe-T-Einrichtungen 3018 ein paralleles Punkt-zu- Punkt-Verbindungsmittel für einen Ein-/Ausgabe-Transfer zwischen S-Einrichtungen 3012 und jeder Ein-/Ausgabevorrichtung 3020. Die Master-Zeitbasiseinheit 3022 weist einen Oszillator auf, der ein Master-Zeitsteuersignal zu jeder S-Einrichtung 3012 und jeder T- Einrichtung 3014 schafft.
In einer beispielhaften Ausführungsform ist jede S-Einrichtung 3012 durch Verwenden eines Xilinx SC4013 (Xilinx, Inc., San Jo­ se, CA) feldprogrammierbaren Gate-Array (FPGA) ausgeführt, das mit einem 64 Megabyte Randomspeicher (RAM) verbunden ist. Jede T-Ein­ richtung 3014 ist durch Verwenden von annähernd 50% der rekonfi­ gurierbaren Hardware-Ressourcen in einem Xilinx XC4013 FPGA aus­ geführt, ebenso jede Ein-/Ausgabe-T-Einrichtung 3018 ist. Die GPI-Matrix 3014 ist als ein ringförmiges Verbindungsmaschennetz ausgeführt. Die Master-Zeitbasiseinheit 3020 ist ein Taktoszilla­ tor, der vorgesehen ist, um eine Verteilungsschaltung zu takten, um eine systemweite Frequenzreferenz zu schaffen. Vorzugsweise übertragen die GPI-Matrix 3014 die T-Einrichtung 3012 und die Ein-/Ausgabe-T-Einrichtung 3018 Information entsprechend ANSI/IE- EE-Standard 1596 bis 1992, wodurch ein skalierbares kohärentes Interface (SCI) definiert ist.
In der bevorzugten Ausführungsform weist das System 3010 mehrere S-Einrichtungen 3012 auf, welche parallel arbeiten. Der Aufbau und die Funktionalität jeder der einzelnen S-Einrichtungen 3012 wird im einzelnen anhand von Fig. 16 bis 26B beschrieben. In Fig. 16 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer S-Einrichtung 3012 dargestellt. Die S-Einrichtung 3012 weist eine erste lokale Zeitbasiseinheit 3030, eine dynamisch re­ konfigurierbare Verarbeitungs-(DRP-)Einheit 3032 zum Ausführen von Programmbefehlen und einen Speicher 3034 auf. Die erste loka­ le Zeitbasiseinheit 303 hat einen Zeitsteuereingang, welche den Master-Zeitsteuereingang der S-Einrichtung bildet. Die erste lo­ kale Zeitbasiseinheit 3030 hat auch einen Zeitsteuerausgang, der ein erstes lokales Zeitsteuersignal oder einen Takt an einem Zeitsteuereingang der DRP-Einheit 3032 und an einem Zeitsteuer­ eingang des Speichers 3034 über eine erste Zeitsteuerleitung 3040 schafft. Die DRP-Einheit 3032 hat einen Steuersignal-Ausgang, der mit einem Steuersignaleingang des Speichers 3034 über eine Spei­ chersteuerleitung 3042 verbunden ist, einen Adressenausgang, der mit einem Adresseneingang des Speichers 3034 über eine Adressen­ leitung 3044 verbunden ist, und einen zweiseitig gerichteten Steuerport, der mit einem zweiseitig gerichteten Steuerport des Speichers 3034 über eine Speicher-Ein-/Ausgabeleitung 3046 ver­ bunden ist. Die DPR-Einheit 3032 hat zusätzlich einen zweiseitig gerichteten Steuerport, der über einen zweiseitig gerichteten Steuerport der entsprechenden T-Einrichtung 3014 über eine exter­ ne Steuerleitung 3048 verbunden ist. Wie in Fig. 16 dargestellt, überspannt die Speichersteuerleitung 3042 X-Bits; die Adressen­ leitung 3044 überspannt M-Bits; die Speicherein-/Ausgabeleitung 3046 überspannt (N × k) Bits und die externe Steuerleitung 3048 überspannt Y-Bits.
In der bevorzugten Ausführungsform empfängt die erste lokale Zeitbasiseinheit 3030 das Master-Zeitsteuersignal von der Master- Zeitbasiseinheit 3022. Die erste lokale Zeitbasiseinheit 3030 er­ zeugt das erste lokale Zeitsteuersignal auf dem Master-Zeitsteu­ ersignal und gibt das erste lokale Zeitsteuersignal an die DRP- Einheit 3032 und den Speicher 3034 ab. In der bevorzugten Ausfüh­ rungsform kann sich das erste lokale Zeitsteuersignal von einer S-Einrichtung 3012 zur anderen ändern. Folglich arbeiten die DRP- Einheit 3032 und der Speicher 3034 in einer vorgegebenen S-Ein­ richtung 3012 mit einer unabhängigen Taktrate bezüglich der DRP- Einheit 3032 und dem Speicher 3034 in einer anderen S-Einrichtung 3012. Vorzugsweise ist das erste lokale Zeitsteuersignal phasen­ synchronisiert mit dem Master-Zeitsteuersignal. In der bevorzug­ ten Ausführungsform ist die erste lokale Zeitbasiseinheit 3030 durch Verwenden einer phasenstarren Frequenzumwandlungsschaltung ausgeführt, die eine phasenstarre Detektionsschaltung enthält, die mit Hilfe von rekonfigurierbaren Hardware-Ressourcen auge­ führt ist. Der Fachmann weiß, daß in einer alternativen Ausfüh­ rungsform die erste lokale Zeitbasiseinheit 3030 auch als ein Teil eines Taktverteilungsbaums ausgeführt sein könnte.
Der Speicher 3034 ist vorzugsweise als ein RAM ausgeführt und speichert Programmbefehle, Programmdaten und Konfigurationsdaten­ sätze für die DRP-Einheit 3032. Der Speicher 3034 einer vorgege­ benen S-Einrichtung 3012 ist vorzugsweise für eine andere S-Ein­ richtung 3012 in dem System 3010 über die GPI-Matrix 3016 zugäng­ lich. Darüber hinaus ist jede S-Einrichtung 3012 vorzugsweise da­ durch gekennzeichnet, daß sie einen gleichförmigen Speicheradres­ senplatz hat. In der bevorzugten Ausführungsform enthalten Pro­ grammbefehle, die in dem Speicher 3040 selektiv gespeichert sind, Rekonfigurationsanweisungen, die in Richtung der DRP-Einheit 3032 gerichtet sind.
In Fig. 17A weist die beispielhafte Programmauflistung 3050 einen Satz Außenschleifenteile 3052, sowie erste bis fünfte Innen­ schleifenteile 3050 bis 3057 auf. Wie der Fachmann weiß, verweist der Begriff "Innenschleife" auf einen iterativen Teil eines Pro­ gramms, das dafür verantwortlich ist, einen ganz bestimmten Satz verwandter Operationen durchzuführen, und der Begriff "Außen­ schleife" verweist auf die Teile eines Programms hin, die haupt­ sächlich dafür verantwortlich sind, universelle Operationen und/oder eine Übertragungssteuerung von einem Innenschleifenteil zu einem anderen durchzuführen. Im allgemeinen führen Innen­ schleifenteile 3054 bis 3058 eines Programms spezifische Opera­ tionen an möglicherweise großen Datensätzen durch. Bei einer Bildverarbeitungsanwendung kann der erste innere Schleifenteil 3054 Farbformat-Umsetzoperationen an Bilddaten durchführen, und die zweiten bis fünften Innenschleifenteile 3055 bis 3058 können eine lineare Filterung, eine Faltung, Mustersuch- und Kompres­ sionsoperationen durchführen. Wie der Fachmann weiß, kann eine aneinanderhängene Folge von Innenschleifenteilen 3055 bis 3058 als eine Software-Pipeline betrachtet werden. Jeder Außenschlei­ fenteil 3052 würde für eine Daten-Ein-/Ausgabe und/oder für ein Leiten der Datenübertragung und ein Steuern von dem ersten Innen­ schleifenteil 3054 zu dem zweiten Innenschleifenteil 3055 verant­ wortlich sein. Zusätzlich erkennt der Fachmann, daß ein vorgege­ bener Innenschleifenteil 3054 bis 3058 eine oder mehrere Rekonfi­ gurationsanweisungen enthalten kann. Im allgemeinen werden für ein vorgegebenes Programm die Außenscheifenteile 3052 der Pro­ grammauflistung 3050 eine Vielfalt von universellen Befehlstypen enthalten, während die Innenschleifenteile 3054, 3056 der Pro­ grammauflistung 3050 aus verhältnismäßig wenigen Befehlstypen be­ stehen, die verwendet werden, um eine spezifische Menge an Opera­ tionen durchzuführen.
In einer beispielhaften Programmauflistung 3050 erscheint eine erste Konfigurationsanweisung am Anfang des ersten Innenschlei­ fenteils 3054, und eine zweite Rekonfigurationsanweistung er­ scheint am Ende des ersten Innenschleifenteils 3054. Dementspre­ chend erscheint eine dritte Konfigurationsanweisung zu Beginn des zweiten Innenschleifenteils 3055; eine vierte Rekonfigurationsan­ weisung erscheint zu Beginn des dritten Innenschleifenteils 3056; eine fünfte Rekonfigurationsanweistung erscheint zu Beginn des vierten Innenschleifenteils 3057 und eine sechste und siebte Re­ konfigurationsanweisung erscheint am Anfang bzw. am Ende des fünften Innenschleifenteils 3058. Jede Rekonfigurationsanweisung bezieht sich vorzugsweise auf einen Rekonfigurationsdatensatz, welcher eine interne DRPU-Hardware-Orginasation spezifiziert, die auf die Ausführung einer ganz bestimmen Befehlssatz-Architektur (ISA) gewidmet und dafür optimiert worden ist. Eine IS-Architek­ tur ist ein Stamm- oder Kernsatz von Informationen, die verwendet werden können, um einen Rechner zu programmieren. Eine IS-Archi­ tektur definiert Befehlsformate, Operätionscodes, Datenformate, Adressiermodes, Ausführungs-Steuerflags und programmzugängliche Register. Der Fachmann weiß, daß dies der herkömmlichen Defini­ tion einer IS-Architektur entspricht. In der vorliegenden Erfin­ dung kann jede DRP-Einheit 3032 einer S-Einrichtung schnell lauf­ zeitkonfiguriert werden, um direkt Mehrfach-IS-Architekturen durch die Verwendung eines eindeutigen Konfigurationsdatensatzes für jede gewünschte IS-Architektur auszuführen. Das heißt, jede IS-Achitektur wird mit einer eindeutigen internen DRPU-Hardware- Organisation durchgeführt, wie die durch einen entsprechenden Konfigurationsdatensatz spezifiziert ist. Folglich entsprechen in der vorliegenden Erfindung die ersten bis fünften Innenschleifen­ teile 3054 bis 3058 jeweils einer eindeutigen IS-Architektur, nämlich ISA 1, 2, 3,4 bzw. k. Der Fachmann erkennt, daß jede nach­ folgende IS-Architektur nicht eindeutig zu sein braucht. Folglich könnte ISA k ISA 1, 2, 3, 4 oder irendeine andere ISA sein. Der Satz Außenschleifenteile 3052 entspricht auch einer eindeutigen ISA, nämlich ISA 0. In der bevorzugten Ausführungsform kann wäh­ rend einer Programmausführung die Auswahl von aufeinanderfolgen­ den Rekonfigurationsanweisungen datenabhängig sein. Bei Auswahl einer vorgegebenen Rekonfigurationsanweisung werden Programmbe­ fehle nacheinander gemäß einer entsprechenden IS-Architektur über eine eindeutige DRPU-Hardware-Konfiguration ausgeführt, was durch einen entsprechenden Konfigurations-Datensatz spezifiziert ist.
In der Erfindung kann eine vorgegebene IS-Architektur als eine Innenschleifen-IS-Architektur oder als eine Außenschleifen-IS-Ar­ chitektur entsprechend der Anzahl und den Typen von Befehlen, welche sie enthält, in Kategorien eingeteilt werden. Eine IS-Ar­ chitektur, die mehrere Befehle enthält und die zum Durchführen genereller Operationen brauchbar ist, ist eine Außenschleifen- ISA, während eine ISA, die aus relativ wenigen Befehlen besteht und die darauf ausgerichtet ist, spezifische Operationstypen durchzuführen, eine Innenschleifen-ISA ist. Da eine Außenschlei­ fen-ISA darauf gerichtet ist, generelle Operationen durchzufüh­ ren, ist eine Außenschleifen-ISA am zweckdienlichsten, wenn eine parallele Programm-Befehlsausführung wünschenswert ist. Die Wirk­ samkeit einer Ausführung einer Innenschleifen-ISA ist vorzugswei­ se hinsichtlich Befehlen gekennzeichnet, die pro Taktzyklus durchgeführt werden oder hinsichtlich rechten Ergebnissen gekenn­ zeichnet, die pro Taktzyklus erzeugt worden sind.
Der Fachmann erkennt, daß die vorhergehende Erörterung einer se­ quentiellen Programmbefehlsausführung und einer parallelen Pro­ grammbefehlsausführung eine Programmbefehlsausführung mit einer einzigen DRP-Einheit 3032 betrifft. Das Vorhandensein von mehre­ ren S-Einrichtung Rekonfigurationsanweisungenen 3012 in dem Sy­ stem 3010 erleichtert die parallele Ausführung von mehreren Pro­ grammbefehlsfolgen in einer vorgegebenen Zeit, wobei jede Pro­ grammbefehlsfolge durch eine vorgegebene DRP-Einheit 3032 durch­ geführt wird. Jede DRP-Einheit 3032 ist entsprechend konfigu­ riert, um eine parallele oder serielle Hardware zu haben, um eine ganz bestimmte Innenschleifen-ISA bzw. eine Außenschleifen-ISA in einer ganz bestimmten Zeit durchzuführen. Die interne Hardware- Konfiguration einer vorgegebenen DRP-Einheit 3032 ändert sich mit der Zeit entsprechend der Auswahl von einer oder mehreren Rekon­ figurationsanweisungen, die in eine Folge von durchzuführenden Programmbefehlen eingebettet sind.
In einer bevorzugten Ausführungsform sind jede IS-Architektur und deren entsprechende interne DRPU-Hardware-Organisation entspre­ chend ausgelegt, um eine optimale Rechenleistung für eine ganz bestimmte Klasse von Rechenproblemen bezüglich einer Menge ver­ fügbarer rekonfigurierbarer Hardware-Ressourcen zu schaffen. Wie vorher bereits erwähnt und wie nunmehr nachstehend im einzelnen näher beschrieben wird, ist eine interne DRPU-Hardware-Organisa­ tion, die einer Außenschleifen-ISA entspricht, vorzugsweise für eine sequentielle Programmbefehlsausführung optimiert, und eine interne DRPU-Hardware-Organisation, die einer Innenschleifen-ISA entspricht, ist vorzugsweise für eine parallele Programmbefehls­ ausführung optimiert.
Mit Ausnahme jeder Rekonfigurationsanweisung weist die beispiel 99999 00070 552 001000280000000200012000285919988800040 0002019629188 00004 99880­ hafte Programmauflistung 3050 der Fig. 17A vorzugsweise herkömmli­ che Hochsprachenangaben auf, beispielsweise Angaben die entspre­ chend der C-Programmiersprache geschrieben sind. Der Fachmann er­ kennt, daß das Einbeziehen von einer oder mehreren Rekonfigura­ tionsanweisungen in eine Folge von Programmbefehlen einen Compi­ ler erfordert, der modifiziert ist, um für die Rekonfigurations­ anweisungen verantwortlich zu sein.
In Fig. 17B ist ein Flußdiagramm von herkömmlichen Compilieropera­ tionen dargestellt, die während des Compilierens bzw. Übersetzens einer Folge von Programmbefehlen durchgeführt worden sind. Hier­ bei entsprechen die herkömmlichen Compilieroperationen im allge­ meinen denjenigen, die von dem GNU C Compiler (GCC) durchgeführt worden sind, der von der Free Software Foundation (Cambridge, MA) hergestellt worden ist. Der Fachmann weiß, daß die herkömmlichen Compilieroperationen, die unten beschrieben werden, ohne weiteres für andere Compiler verallgemeinert werden können. Die herkömmli­ chen Compilieroperationen beginnen beim Schritt 3500 mit dem Com­ piler-Frontende, das eine nächste Hochsprachen-Anweisung für eine Folge von Programmbefehlen auswählt. Als nächstes erzeugt das Compiler-Frontende beim Schritt 3502 einen Zwischencode, der der ausgewählten Hochsprachen-Anweisung entspricht, welche im Falle von GCC Register-Transferpegel-(RTL-)Angaben entspricht. Im An­ schluß an den Schritt 3502 bestimmt das vordere Compilerende, ob eine andere Hochsprachen-Anweisung eine Beachtung beim Schritt 3504 erfordert. Wenn dem so ist, kehrt das bevorzugte Verfahren auf den Schritt 3500 zurück.
Wenn beim Schritt 3504 das vordere Compilerende bestimmt, daß keine andere Hochsprachenanweisung Beachtung erfordert, führt das hintere Compilerende als nächstes herkömmliche Registerzuord­ nungsoperationen beim Schritt 3605 durch. Nach dem Schritt 3506 wählt das hintere Compilerende eine nächste RTL-Angabe hinsicht­ lich einer aktuellen RTL-Anweisungsgruppe beim Schritt 3508 aus. Das hintere Compilerende bestimmt dann, ob eine Vorschrift, die eine Art und Weise spezifiziert, in welcher die aktuelle RTL-An­ weisungsgruppe in einen Satz von Assemblersprachen-Anweisungen übersetzt werden kann, beim Schritt 3510 vorhanden ist. Wenn eine derartige Vorschrift nicht vorhanden ist, kehrt das bevorzugte Verfahren auf den Schritt 3508 zurück, um eine andere RTL-Anwei­ sung für ein Einbeziehen in die aktuelle RTL-Anweisungsgruppe auszuwählen. Wenn eine Vorschrift, die der aktuellen RTL-Anwei­ sungsgruppe entspricht, existiert, erzeugt das hintere Compile­ rende beim Schritt 3512 einen Satz Assemblersprachen-Anweisungen entsprechend der Vorschrift. Nach dem Schritt 3512 stellt das hintere Compilerende fest, ob eine nächste RTL-Anweisung Beach­ tung im Kontext mit einer nächsten RTL-Anweisungsgruppe erfor­ dert. Wenn dem so ist, kehrt das bevorzugte Verfahren auf Schritt 3508 zurück; andernfalls ist das bevorzugte Verfahren beendet.
Die vorliegende Erfindung enthält vorzugsweise einen Compiler für ein dynamisch rekonfigurierbares Berechnen. In Fig. 17C und 17D ist ein Flußdiagramm von bevorzugten Compilieroperationen darge­ stellt, die von einem Compiler für ein dynamisch rekonfigurierba­ res Berechnen durchgeführt worden sind. Die bevorzugten Compi­ lieroperationen beginnen beim Schritt 3600 mit dem vorderen Ende des Compilers, der eine nächste Hochsprachen-Anweisung in einer Folge von Programmbefehlen auswählt. Als nächstes bestimmt das vordere Ende des Compilers beim Schritt 3602, ob die ausgewählte Hochsprachen-Anweisung eine Rekonfigurationsanweisung ist. Wenn dem so ist, erzeugt das vordere Ende des Compilers eine RTL-Reg­ konfigurationsanweisung beim Schritt 3604, worauf dann das bevor­ zugte Verfahren auf Schritt 3600 zurückkehrt. In der bevorzugten Ausführungsform ist die RTL-Rekonfigurationsanweisung eine nicht­ normierte RTL-Anweisung, die einen ISA-Identifizierung erhält. Wenn beim Schritt 3602 die ausgewählte Hochprogramm-Anweisung nicht eine Rekonfigurationsanweisung ist, erzeugt das vordere En­ de des Compilers als nächstes einen Satz RTL-Anweisungen in her­ kömmlicher Weise beim Schritt 3606. Nach dem Schritt 3606 be­ stimmt das vordere Ende des Compilers beim Schritt 3608, ob eine andere Hochsprachen-Anweisung Berücksichtigung erfordert. Wenn dem so ist, kehrt das bevorzugte Verfahren auf den Schritt 3600 zurück; anderenfalls geht das bevorzugte Verfahren auf Schritt 3610 über, um Operationen am Compilerende zu initiieren.
Beim Schritt 3610 führt das hintere Ende des Compilers für ein dynamisch rekonfigurierbares Berechnen Register-Zuordnungsopera­ tionen durch. In der bevorzugten Ausführungsform der Erfindung ist jede ISA-Architektur so definiert, daß die Register-Architek­ tur von einer IS-Architektur zur anderen folgerichtig ist; daher werden Register-Zuordnungsoperationen in herkömmlicher Weise durchgeführt. Der Fachmann erkennt, daß im allgemeinen eine fol­ gerichtige Register-Architektur von einer ISA zur anderen keine absolute Forderung ist. Als nächstes wählt das hintere Ende des Compilers eine nächste RTL-Anweisung in einer aktuell in Betracht gezogenen RTL-Anweisungsgruppe beim Schritt 3612 aus. Das hintere Ende des Compilers bestimmt dann beim Schritt 3614, ob die ausge­ wählte RTL-Anweisung eine RTL-Rekonfigurationsanweisung ist. Wenn die ausgewählte RTL-Anweisung nicht eine RTL-Rekonfigurationsan­ weisung ist, bestimmt das hintere Ende des Compilers beim Schritt 3618, ob eine Vorschrift für die aktuell in Betracht gezogene RTL-Anweisungsgruppe existiert. Wenn dem nicht so ist, kehrt das bevorzugte Verfahren auf den Schritt 3612 zurück, um eine nächste RTL-Anweisung für ein Einbeziehen in die aktuell in Betracht ge­ zogene RTL-Anweisungsgruppe zu wählen. In dem Fall, daß eine Vor­ schrift für die aktuell in Betracht gezogene RTL-Anweisungsgruppe beim Schritt 3618 existiert, erzeugt das hintere Ende des Compi­ lers als nächstes einen Satz Assemblersprachen-Anweisungen beim Schritt 3620, welche der aktuell in Betracht gezogenen RTL-Anwei­ sungsgruppe gemäß dieser Vorschrift entsprechen. Nach dem Schritt 3620 bestimmt das hintere Ende des Compilers beim Schritt 3622, ob eine andere RTL-Anweisung eine Berücksichtigung im Kontext mit einer nächsten RTL-Anweisungsgruppe erfordert. Wenn dem so ist, kehrt das bevorzugte Verfahren auf den Schritt 3612 zurück; ande­ renfalls endet das bevorzugte Verfahren.
Wenn beim Schritt 3614 die ausgewählte RTL-Anweisung eine RTL-Re­ konfigurationsanweisung ist, wählt das hintere Ende des Compilers einen Vorschriftensatz beim Schritt 3616 aus, welcher der ISA- Identifizierung der RTL-Rekonfigurationsanweisung entspricht. In der vorliegenden Erfindung existiert vorzugsweise ein eindeutiger Vorschriftensatz für jede ISA. Jeder Vorschriftensatz schafft da­ her eine oder mehrere Vorschriften, um Gruppen von RTL-Anweisun­ gen in Assemblersprachen-Anweisungen entsprechend einer ganz be­ stimmten IS-Architektur umzuwandeln. Nach dem Schritt 3616 geht das bevorzugte Verfahren auf Schritt 3618 über. Der Vorschriften­ satz, der einer vorgegebenen IS-Architektur entspricht, enthält vorzugsweise ein Vorschrift, um die RTL-Regkonfigurationsanweisung in einen Satz Assemblersprachen-Befehle zu übersetzen, die eine Software-Unterbrechnung erzeugen, die auf eine Durchführung eines Rekonfigurations-Abwicklers (handler) hinausläuft, wie im einzel­ nen unten beschrieben wird.
In der vorstehend beschriebenen Weise erzeugt der Compiler für dynamisch rekonfigurierbares Berechnen selektiv und automatisch Assemblersprachen-Anweisungen entsprechend mehreren IS-Architek­ turen während Compilieroperationen. Mit anderen Worten, während des Compilierprozesses übersetzt der Compiler einen einzigen Satz Programmbefehlen entsprechend einer variablen IS-Architektur. Der Compiler ist vorzugsweise ein herkömmlicher Compiler, der modifi­ ziert worden ist, um bevorzugte Compilieroperationen durchzufüh­ ren, die vorstehend unter Bezugnahme auf Fig. 17C und 17D be­ schrieben worden sind. Der Fachmann erkennt, daß, obwohl die ge­ forderten Modifikationen nicht komplex sind, solche Modifikatio­ nen im Hinblick sowohl auf herkömmliche Compiliertechniken als auch im Hinblick auf herkömmliche rekonfigurierbaren Berechnungs­ methoden nicht offensichtlich und naheliegend sind.
In Fig. 18 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer dynamisch rekonfigurierbaren Verarbeitungseinheit 3032 dar­ gestellt. Die DRP-Einheit 3032 weist eine Befehlsabruf-(IF-)Ein­ heit 3016, eine Datenoperations-(DO-)Einheit 3062 und eine Adres­ senoperations-(AO-)Einheit 3064 auf. Jede der IF-Einheiten 3060, der DO-Einheiten 3062 und der AO-Einheiten 3064 hat einen Zeit­ steuereingang, welcher mit der ersten Zeitsteuersignalleitung 3040 verbunden ist. Die IF-Einheit 3060 hat einen Speichersteuer­ ausgang, welcher mit der Leitung 3042 verbunden ist, einen Daten­ eingang, der mit einer Leitung 3046 verbunden ist, und einen zweigerichteten Steuereingang, der mit der externen Steuerleitung 3048 verbunden ist. Die IF-Einheit 3060 hat zusätzlich einen er­ sten Steuerausgang, der mit einem ersten Steuereingang der DO- Einheit 3062 über eine erste Steuerleitung 3070 verbunden ist, und einen zweiten Steuerausgang, der mit einem ersten Steuerein­ gang der AO-Einheit 3064 über eine zweite Steuerleitung 3072 ver­ bunden ist. Die IF-Einheit 3060 hat auch einen dritten Steueraus­ gang, der mit einem zweiten Steuereingäng der DO-Einheit 3062 und mit einem zweiten Steuereingang der AO-Einheit 3064 über eine dritte Steuerleitung 3074 verbunden ist. Die DO-Einheit 3062 und die AO-Einheit 3064 haben jeweils einen zweigerichteten Datenein­ gang, der mit der Speicher-Ein-/Ausgabeleitung 3064 verbunden ist. Schließlich hat die AO-Einheit 3064 einen Adressenausgang, welcher den Adressenausgang der DRP-Einheit bildet.
Die DRP-Einheit 3032 ist vorzugsweise unter Verwendung einer re­ konfigurierbaren oder umprogrammierbaren Logikvorrichtung, bei­ spielsweise einer FPGA, wie einer Xilinx XC4013 (Xilinx, Inc., San Jose, CA) oder einer AT ORCATM 1C07 (AT Microelectro­ nics, Allentown, PA) durchgeführt. Vorzugsweise schafft die um­ programmierbare Logikvorrichtung eine Anzahl von 1) selektiv um­ programmierbaren Logikblöcken oder konfigurierbaren Logikblöcken (CLB), von 2) selektiv programmierbaren Ein-/Ausgabe-Blöcken (IOB), von 3) selektiv umprogrammierbaren Verbindungsstrukturen, von 4) Datenspeicher-Ressourcen, von 5) Puffer-Ressourcen mit drei Zuständen und von 6) verdrahteten logischen Funktionsmerkma­ len. Jeder CLB enthält vorzugsweise eine selektiv rekonfigurier­ bare Schaltungsanordnung zum Erzeugen logischer Funktionen, zum Speichern von Daten und zum Lenken von Signalen. Der Fachmann weiß, daß eine rekonfigurierbare Datenspeicherschaltung auch in einem oder mehreren Datenspeicherblöcken (DSB), die von der Grup­ pe CL-Blöcken getrennt ist, in Abhängigkeit von der genauen Be­ messung der zu verwendenden umprogrammierbaren Logikvorrichtung enthalten sein kann. Hierbei ist angenommen, daß sich die rekon­ figurierbare Datenspeicherschaltung in einer FPGA in den CL- Blöcken befindet; das heißt, das Vorhandensein von DS-Blöcken wird nicht angenommen. Der Fachmann erkennt ohne weiteres, daß ein oder mehrere der hier beschriebenen Elemente, die eine auf CL-Blöcken basierende, rekonfigurierbare Datenspeicherschaltung benutzen, eine auf DS-Blöcken basierende Schaltungsanordnung in dem Fall benützen können, daß DS-Blöcke vorhanden sind. Jeder IO- Block enthält vorzugsweise eine selektiv rekonfigurierbare Schal­ tungsanordnung, um Daten zwischen CL-Blöcken und einem FPAG-Aus­ gangsanschlußstift zu übertragen. Ein Konfigurationsdatensatz de­ finiert eine DRPU-Hardware-Konfiguration oder Organisation durch Spezifizieren von Funktionen, die in CL = Blöcken durchgeführt wor­ den sind, sowie Verbindungen 1) in CL-Blöcken, 2) zwischen CL- Blöcken, 3) in IO-Blöcken, 4) zwischen IO-Blöcken und 5) zwischen CL- und IO-Blöcken. Der Fachmann erkennt, daß über einen Konfigu­ rationsdatensatz, die Anzahl Bits jeweils in der Speichersteuer­ leitung 3042, der Adressenleitung 3044, der Speicherleitung 3046 und der externen Steuerleitung 3048 rekonfigurierbar ist. Vor­ zugsweise werden Konfigurationsdatensätze in einem oder mehreren Speichern 3034 der S-Einrichtung in dem System 3010 gespeichert. Der Fachmann erkennt, daß die DRP-Einheit 3032 nicht auf eine auf FPGA basierende Ausführung beschränkt ist. Beispielsweise könnte die DRP-Einheit 3032 als eine auf einem RAM basierende Zustands­ einrichtung ausgeführt sein, die möglicherweise ein oder mehrere Hinweistabellen enthält. Alternativ hierzu könnte die DRP-Einheit 3032 mit Hilfe einer komplexen programmierbaren Logikvorrichtung (CPLD) ausgeführt sein. Jedoch wird der Fachmann realisieren, daß einige der S-Einrichtungen 3012 des Systems 3010 DRP-Einheiten 3032 haben können, die nicht rekonfigurierbar sind.
In einer bevorzugten Ausführungsform sind die IF-Einheit 3060, die DO-Einheit 3062 und die AO-Einheit 3064 jeweils dynamisch re­ konfigurierbar. Folglich kann deren interne Hardware-Konfigura­ tion selektiv während einer Programmdurchführung modifiziert wer­ den. Die IF-Einheit 3060 richtet Befehlsabruf- und Decodieropera­ tionen, Zugriffsoperationen, DRPU-Rekonfigurationsoperationen aus und gibt Steuersignale an die DO-Einheit 3062 und die AO-Einheit 3064 ab, um eine Befehlsausführung zu erleichtern. Die DO-Einheit 3062 führt Operationen einschließlich einer Datenberechnung durch und die AO-Einheit 3064 führt Operationen einschließlich einer Adressenberechnung durch. Der innere Aufbau und die Arbeitsweise der IF-Einheit 3060, der DO-Einheit 3062 und der AO-Einheit 3064 wird nunmehr im einzelnen beschrieben.
In Fig. 19 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer Befehlsabruf-(IF-)Einheit 3060 dargestellt. Die IF-Einheit 3060 weist einen Befehlszustands-Zuordner(ISS) 3100, einen Archi­ tekturbeschreibungsspeicher 3101, eine Speicherzugriffslogik 3102, einen Rekonfigurationslogik 3104, eine Unterbrechungslogik 3106, eine Abrufsteuereinheit 3108, einen Befehlspuffer 3110, eine Decodiersteuereinheit 3112, einen Befehlsdecodierer 3114, einen Operationscode-Speicherregistersatz 3116, einen Registerda­ tei-(HF-)Adressenregistersatz 3118, einen Konstanten-Registersatz 3120 und einen Prozeßsteuer-Registersatz 3122 auf. Der IS-Zuord­ ner 3100 hat einen ersten und zweiten Steuerausgang, welcher die ersten und zweiten Steuerausgänge der IF-Einheit bildet und einen Zeitsteuereingang, welcher den Zeitsteuereingang der IF-Einheit bildet. Der IS-Zuordner 3100 hat auch einen Abruf/Decodier- Steuerausgang, der mit einem Steuereingang der Abrufsteuereinheit 3108 und einem Steuereingang der Decodiersteuereinheit 3112 über eine Abruf-Decodier-Steuerleitung 3130 verbunden ist. Der IS-Zu­ ordner 3100 hat zusätzlich einen zweigerichteten Steuereingang, der mit einem ersten zweigerichteten Steuereingang jeweils der Speicherzugrifflogik 3102, der Rekonfigurationslogik 3104 und der Unterbrechungslogik 3106 über eine zweigerichtete Steuerleitung 3132 verbunden ist. Der IS-Zuordner 3100 hat auch einen Opera­ tionscode-Eingang, der mit einem Ausgang des Operationscode-Spei­ cherregistersatzes 3116 über eine Operationscode-Leitung 3142 verbunden ist. Schließlich hat der IS-Zuordner 3100 einen zweige­ richteten Dateneingang, der mit einem zweigerichteten Datenein­ gang des Prozeßsteuer-Registersatzes 3122 über eine Prozeßdaten­ leitung 3144 verbunden ist.
Jeweils die Speicherzugriffslogik 3102, die Rekonfigurationslogik 3104 und die Unterbrechungslogik 3106 haben einen zweiten zweige­ richteten Steuereingang, welcher mit der externen Steuerleitung 3048 verbunden ist. Die Speicherzugriffslogik 3102, die Rekonfi­ gurationslogik 3104 und die Unterbrechungslogik 3106 haben zu­ sätzlich jeweils einen Dateneingang, der mit einem Datenausgang des Architektur-Beschreibungsspeichers 3101 über eine Steuerlei­ tung 3138 verbunden ist. Die Speicherzugriffslogik 3102 hat zu­ sätzlich einen Steuerausgang, welcher den Speichersteuerausgang der IF-Einheit bildet, und die Unterbrechungslogik 3106 hat zu­ sätzlich einen Ausgang, der mit der Prozeßdatenleitung 3144 ver­ bunden ist. Der Befehlspuffer 3110 hat einen Dateneingang, wel­ cher den Dateneingang der IF-Einheit bildet, einen Steuereingang, der mit einem Steuerausgang der Abrufsteuereinheit 3108 über eine Abrufsteuerleitung 3134 verbunden ist, und einen Ausgang, der mit einem Eingang des Befehlsdecodierers 3114 über eine Befehlslei­ tung 3136 verbunden ist. Der Befehlscodierer 3114 hat einen Steuereingang, der mit einem Steuerausgang der Decodiersteuerein­ heit 3112 über eine Decodiersteuerleitung 3138 verbunden ist, und einen Ausgang, der über eine Befehlsleitung 3140 mit 1) einem Ausgang des Operationscode-Speicherregisters 3116, mit 2) einem Eingang des HF-Adressenregistersatzes 3118 und 3) mit einem Ein­ gang des Konstanten-Registersatzes 3120 verbunden ist. Der HF- Adressenregistersatz 3118 und der Konstanten-Registersatz 3120 haben jeweils einen Ausgang, die zusammen den dritten Steueraus­ gang 3074 der IF-Einheit bilden.
Der Architektur-Beschreibungsspeicher 3101 speichert Architektur- Spezifikationssignale, welche die aktuelle DRPU-Konfiguration kennzeichnen. Vorzugsweise enthalten die Architektur-Spezifika­ tionssignale 1) eine Referenz zu einem fehlerhaften Konfigura­ tionsdatensatz, 2) eine Referenz zu einer Liste zulässiger Konfi­ gurationsdatensätze, 3) eine Referenz zu einem Konfigurationsda­ tensatz, welcher der aktuell in Betracht gezogenen ISA ent­ spricht, d. h. eine Referenz zu dem Konfiguration-Datensatz, wel­ cher die aktuelle DRPU-Konfiguration definiert, 4) eine Verbin­ dungs-Adressenliste, welche eine oder mehrere Verbindungs-Ein- /Ausgabeeinheiten 3304 in der T-Einrichtung 3014 identifiziert, welche der S-Einrichtung 3012 zugeordnet ist, in welcher die IF- Einheit 3060 untergebracht ist, wie im einzelnen unten in Verbin­ dung mit Fig. 27 noch beschrieben wird, 5) einen Satz Unterbre­ chungsansprechsignale, welche eine Unterbrechungslatenz und Un­ terbrechungspräzisions-Information spezifizieren, welche defi­ niert, wie die IF-Einheit 3060 auf Unterbrechungen antwortet, und 6) eine Speicherzugriffskonstante, welche ein Speicheradressen- Inkrement definiert.
In der bevorzugten Ausführungsform implementiert jeder Konfigura­ tions-Datensatz den Architektur-Beschreibungsspeicher 3101 als einen Satz von CL-Blöcken, die als ein Festwertspeicher (ROM) konfiguriert sind. Die Architektur-Spezifikationssignale, welche den Inhalt des Architekturbeschreibungsspeichers 3101 definieren, sind vorzugsweise in jedem Konfigurations-Datensatz enthalten. Folglich ändert sich, da jeder Konfigurations-Datensatz einer ganz bestimmten ISA entspricht, der Inhalt des Architektur-Be­ schreibungsspeichers 3103 entsprechend der aktuellen in Betracht gezogenen ISA. Für eine vorgegebene ISA wird ein Programmzugriff auf den Inhalt des Architektur-Beschreibungsspeichers 3101 vor­ zugsweise durch das Einbeziehen eines Speicherlesebefehls in dem ISA erleichtert. Dies ermöglicht einem Programm, die Information über die aktuelle DRPU-Konfiguration während einer Programmdurch­ führung wieder aufzufinden.
In der vorliegenden Erfindung ist die Konfigurationslogik 3104 eine Zustandseinrichtung, welche eine Folge von Rekonfigurations­ operationen steuert, welche eine Rekonfiguration der DRP-Einheit 3032 entsprechend einem Konfigurationsdatensatz erleichtern. Vor­ zugsweise initiiert die Rekonfigurationslogik 3104 die Rekonfigu­ rationsoperationen bei Empfang eines Rekonfigurationssignals. Wie unten noch im einzelnen beschrieben wird, wird das Rekonfigura­ tionssignal von der Unterbrechungslogik 3106 entsprechend einer Rekonfigurationsunterbrechung, die auf der externen Steuerleitung 3048 erhalten worden ist, oder durch die ISS 3100 entsprechend einer Rekonfigurationsanweisung erzeugt, die in ein Programm ein­ gebettet ist. Die Rekonfigurationsoperationen sorgen für eine an­ fängliche DRPU-Konfiguration, auf die eine Energieeinschalt/Rück­ setzbedingung mit Hilfe des vorgegebenen Konfigurationsdatensat­ zes von dem Architektur-Beschreibungsspeicher 3101 folgt. Die Re­ konfigurationsoperationen sorgen auch für eine selektive DRPU-Re­ konfiguration, nachdem die anfängliche DRPU-Konfiguration einge­ richtet worden ist. Bei Beendigung der Rekonfigurationsoperatio­ nen gibt die Rekonfigurationslogik 3104 ein Beendigungssignal ab. In der bevorzugten Ausführungsform ist die Rekonfigurationslogik 3104 eine nicht-rekonfigurierbare Logik, welche das Laden von Konfigurationsdatensätze in die umprogrammierbare Logikvorrich­ tung selbst steuert, und folglich ist die Folge von Rekonfigura­ tionsoperationen von dem Hersteller der umprogrammierbaren Logik­ vorrichtung festgelegt. Die Rekonfigurationsoperationen sind da­ her dem Fachmann bekannt.
Jede DRPU-Konfiguration ist vorzugsweise durch einen Konfigura­ tions-Datensatz gegeben, welcher eine ganz bestimmte Hardware-Or­ ganisation festlegt, die der Ausführung einer entsprechenden ISA zugeeignet ist. In der bevorzugten Ausführungsform enthält die IF-Einheit 3060 jeweils die vorstehend angegebenen Elemente unab­ hängig von der DRPU-Konfiguration. Bei einem Grundpegel ist die Funktionalität, die durch jedes Element in der IF-Einheit 3060 geschaffen ist, unabhängig von der aktuell in Betracht gezogenen ISA. Jedoch können sich in der bevorzugten Ausführungsform der detaillierte Aufbau und die Funktionalität eines oder mehrere Elemente der IF-Einheit 3060 basierend auf der Beschaffenheit der ISA ändern, für welche sie konfiguriert worden ist. In der bevor­ zugten Ausführungsform bleiben der Aufbau und die Funktionalität des Architektur-Beschreibungsspeichers 3101 und der Rekonfigura­ tionslogik 3104 vorzugsweise von einer DRPU-Konfiguration zur an­ deren konstant. Der Aufbau und die Funktionalität der anderen Elemente der IF-Einheit 3060 und der Art und Weise, in welcher sie sich entsprechend dem ISA-Typ ändern, wird nunmehr im einzel­ nen beschrieben.
Der Prozeßsteuerregister-(PCR-)Satz 3122 speichert Signale und Daten, die von dem ISS 3100 während einer Befehlsausführung ver­ wendet worden sind. In der bevorzugten Ausführungsform weist der PCR-Satz 3122 ein Register zum Speichern eines Prozeßsteuerworts, ein Register zum Speichern eines Unterbrechungsvektors und ein Register zum Speicher einer Referenz zu einem Konfigurationsda­ tensatz auf. Das Prozeßsteuerwort enthält vorzugsweise eine An­ zahl von Bedingungsflags, die selektiv basierend auf Bedingungen gesetzt und rückgesetzt werden können, die während einer Befehls­ ausführung auftreten. Das Prozeßsteuerwort enthält zusätzlich eine Anzahl von Übergangssteuersignalen, die ein oder mehrere Ar­ ten festlegen, auf welche Unterbrechungen verwaltet werden kön­ nen, wie im einzelnen unten noch beschrieben wird. In der bevor­ zugten Ausführungsform ist der PCR-Satz 3122 als ein Satz von LC- Blöcken ausgeführt, die für eine Datenspeicher- und Ansteuerlogik konfiguriert sind.
ISS 3100 ist vorzugsweise eine Zustandseinrichtung, welche die Operation der Abrufsteuereinheit 3108, der Decodiersteuereinheit 3112, der DO-Einheit 3062 und der AO-Einheit 3064 steuert und Speicherlese- und -Schreibsignale an die Speicheradressenlogik 3102 abgibt, um eine Befehlsausführung zu erleichtern. In Fig. 20 ist ein Zustandsdiagramm dargestellt, das eine bevorzugte Menge von Zuständen zeigt, die von der ISS 3100 gestützt sind. Im An­ schluß an eine Energieeinschalt- oder Rücksetzbedingung oder un­ mittelbar nachdem eine Rekonfiguration aufgetreten ist, beginnt die ISS 3100 eine Operation im Zustand P. Entsprechend dem Beendigungssignal, das von der Rekonfigurationslogik 3104 abgege­ ben worden ist, geht die ISS 3100 auf den Zustand S über, in wel­ chem der ISS Programmzustandsinformation für den Fall initiali­ siert oder wieder speichert, daß eine Energieeinschalt/Rücksetz­ bedingung oder eine Rekonfiguration aufgetreten ist.
Die ISS 3100 rückt als nächstes auf einen Zustand F vor, in wel­ chem Befehlsabrufoperationen durchgeführt werden. Bei den Be­ fehlsabrufoperationen gibt ISS 3100 ein Speicherlesesignal an die Speicherzugrifflogik 3102 ab, gibt ein Abrufsignal an die Abruf­ steuereinheit 3108 und ein Inkrementsignal an die AO-Einheit 3064 ab, um ein nächstes Befehlsprogrammadressen-(NIPA-)Register 3232 zu inkrementieren, wie im einzelnen unter Bezugnahme auf Fig. 25A und 25B nachstehend noch beschrieben wird. Nach dem Zustand F geht ISS 3100 auf einen Zustand D von, um Befehlsdecodieropera­ tionen zu initiieren. Im Zustand D gibt ISS 3100 ein Decodier­ signal an die Decodiersteuerlogik 3112 ab, während beim Zustand D ISS 3100 zusätzlich einen Operationscode wiederfindet, der einem decodierten Befehl von dem Operationscode-Speicherregistersatz 3116 entspricht.
Basierend auf dem wiedergefundenen von dem Operationscode geht ISS 3100 auf einen Zustand E oder M über, um Befehlsausführungso­ perationen durchzuführen. ISS 3100 geht auf den Zustand E in dem Fall vor, daß der Befehl in einem einzigen Taktzyklus ausgeführt werden kann; anderenfalls geht ISS 3100 auf den Zustand M für eine in Mehrzyklen durchzuführende Befehlsausführung vor. Bei den Befehlausführungsoperationen erzeugt ISS 3100 DOU und AOU-Steuer­ signale und/oder Signale, die auf die Speicherzugriffslogik 3102 gerichtet sind, um die Ausführung des Befehls zu erleichtern, der dem wiederaufgefundenen Operationscode entspricht. Im Anschluß entweder an den Zustand E oder M geht ISS 3100 auf einen Zustand W über.
Im Zustand W erzeugt ISS 3100 DOU-, AOU-Steuersignale und/oder Speicherschreibsignale, um ein Speichern eines Befehlsausfüh­ rungsergebnisses zu erleichtern. Der Zustand W wird daher als ein Rückschreibzustand bezeichnet. Der Fachmann weiß, daß die Zustän­ de F, D, E oder M und W einen vollständigen Befehlausführungszy­ klus aufweisen. Nach dem Zustand W geht die ISS 3100 auf den Zu­ stand Y in dem Fall über, daß eine Suspension einer Befehlsaus­ führung gefordert wird. Der Zustand Y entspricht einem Freizu­ stand, welcher gefordert werden kann, beispielsweise in dem Fall, daß eine T-Einrichtung 3014 Zugriff auf den Speicher 3034 der S- Einrichtung fordert. Nach dem Zustand Y oder W geht in dem Fall, daß eine Befehlsausführung fortzusetzen ist, die ISS 3100 auf den Zustand F zurück, um wieder einen anderen Befehlsausführungs­ zyklus aufzunehmen.
Wie in Fig. 20 dargestellt, weist das Zustandsdiagramm auch einen Zustand I auf, welcher als ein Unterbrechungsservice-Zustand de­ finiert ist. Bei der Erfindung empfängt ISS 3100 Unterbrechungs­ ankündigungssignale von der Unterbrechungslogik 3106. Wie im ein­ zelnen unter Bezugnahme auf Fig. 21 auch beschrieben wird, erzeugt die Unterbrechungslogik 3106 Übergangssteuersignale und speichert diese Signale in dem Prozeßsteuerwort in dem PCR-Satz 3122. Die Übergangssteuersignale zeigen vorzugsweise an, welcher der Zu­ stände F, D, E, M, W und Y unterbrechbar sind und zeigen einen Pegel einer Unterbrechungspräzision, die in jedem unterbrechbaren Zustand erforderlich ist, und für jeden unterbrechbaren Zustand einen nächsten Zustand an, bei welchem eine Befehlsdurchführung im Anschluß an den Zustand I fortzusetzen ist. Wenn ISS 3100 ein Unterbrechungsankündigungssignal erhält, während es sich in einem vorgegebenen Zustand befindet, geht ISS 3100 auf den Zustand I über, wenn die Übergangssteuersignale anzeigen, daß der aktuelle Zustand unterbrechbar ist. Andernfalls geht ISS 3100 weiter, wenn kein Unterbrechungssignal empfangen worden ist, bis ein unter­ brechbarer Zustand erreicht wird.
Sobald ISS 3100 auf den Zustand I vorgerückt ist, greift ISS 3100 vorzugsweise auf den PCR-Satz 3122 zu, um ein Unterbrechungsab­ deckflag zu setzen und einen Unterbrechungsvektor wieder aufzu­ finden. Nach dem Wiederauffinden des Unterbrechungsvektors ver­ waltet ISS 3100 vorzugsweise die aktuelle Unterbrechung über ei­ nen herkömmlichen Subroutine-Sprung zu einem Unterbrechungshand­ habungsprogramm, wie es durch den Unterbrechungsvektor spezifi­ ziert ist.
In der Erfindung wird eine Rekonfiguration der DRPU-Einheit 3032 entsprechend 1) einer Rekonfigurationsunterbrechung, die auf der externen Steuerleitung 3048 durchgesetzt oder 2) die Durchführung einer Rekonfigurationsanweisung in einer Folge von Programmbefeh­ len initiiert. In der bevorzugten Ausführungsform führen sowohl die Konfigurationsunterbrechung als auch die Durchführung einer Rekonfigurationsanweisung zu einem Subroutine-Sprung auf ein Re­ konfigurations-Handhabungsprogramm. Vorzugsweise stellt das Re­ konfigurations-Handhabungsprogramm eine Programmzustandsinforma­ tion sicher und gibt eine Konfigurationsdatensatz-Adresse und das Rekonfigurationssignal an die Rekonfigurationslogik 3104 ab.
Für den Fall, daß die aktuelle Unterbrechung nicht eine Rekonfi­ gurationsunterbrechung ist, geht ISS 3100 auf einen nächsten Zu­ stand über, was durch die Übergangssteuersignale angezeigt ist, sobald die Unterbrechung verwaltet worden ist, um dadurch einen Befehlsdurchführungszyklus wieder aufzunehmen, Befehle durchzu­ führen oder zu initiieren.
In der bevorzugten Ausführungsform ändert sich die Menge an Zu­ ständen, welche durch ISS 3100 gestützt sind, entsprechend der Beschaffenheit der ISA, für welche die DRP-Einheit 3032 konfigu­ riert worden ist. Folglich ist der Zustand M für eine ISA nicht vorhanden, in welcher ein oder mehrere Befehle in einem einzigen Taktzyklus durchgeführt werden können, wie es der Fall bei einer typischen Innenschleifen-IS-Architektur ist. Wie beschrieben, de­ finiert das Zustandsdiagramm der Fig. 20 vorzugsweise die Zustän­ de, die von ISS 3100 gestützt worden sind, um eine generelle Au­ ßenschleifen-IS-Architektur durchzuführen. Für das Durchführen einer Innenschleifen-ISA trägt ISS 3100 vorzugsweise mehrere Sät­ ze von Zuständen F, D, E und W parallel nebeneinander, um dadurch eine Pipeline-Steuerung einer Befehlsdurchführung in einer Weise zu erleichtern, die dem Fachmann ohne weiteres verständlich ist. In der bevorzugten Ausführungsform ist ISS 3100 als eine auf einem CL-Block basierende Zustandseinrichtung ausgeführt, welche die Zustände oder eine Untergruppe der vorstehend beschriebenen Zustände entsprechend einem aktuell in Betracht gezogenen ISA un­ terstützt.
Die Unterbrechungslogik 3106 weist vorzugsweise eine Zustandsein­ richtung auf, welche Übergangssteuersignale erzeugt und Unterbre­ chungshinweis-Operationen entsprechend einem Unterbrechungssignal durchführt, das über die externe Steuerleitung 3048 erhalten wor­ den ist. In Fig. 21 ist ein Zustandsdiagramm dargestellt, das ei­ nen bevorzugten Satz Zustände zeigt, die von der Unterbrechungs­ logik 3106 gestützt sind. Die Unterbrechungslogik 3106 beginnt eine Operation im Zustand P. Der Zustand P entspricht einer Ener­ gieeinschalt-Rücksetz- oder Rekonfigurationsbedingung. Entspre­ chend dem Beendigungssignal, das von der Rekonfigurationslogik 3104 abgegeben worden ist, geht die Unterbrechungslogik 3106 auf den Zustand A über und findet die Unterbrechungsantwortsignale aus dem Architekturbeschreibungsspeicher 3101 wieder. Die Unter­ brechungslogik 3106 erzeugt dann die Übergangssteuersignale aus den Unterbrechungsantwortsignalen und speichert die Übergangs­ steuersignale in dem Prozeßsteuerregister-(PCR-)Satz 3122. In der bevorzugten Ausführungsform enthält die Unterbrechungslogik 3106 eine auf CLB basierende programmierbare Logikanordnung (PLA), um die Unterbrechungsantwortsignale zu empfangen und um die Über­ gangssteuersignale zu erzeugen. Im Anschluß an den Zustand A geht die Unterbrechungslogik 3106 auf den Zustand B über, um auf ein Unterbrechungssignal zu warten. Bei Empfang eines Unterbrechungs­ signals geht die Unterbrechungslogik 3106 auf einen Zustand C in dem Fall über, daß das Unterbrechungsabdeckflag in dem PCR-Satz 3122 rückgesetzt wird. Sobald sie im Zustand C ist, bestimmt die Unterbrechungslogik 3106 den Ursprung der Unterbrechung, eine Un­ terbrechungspriorität und die Unterbrechungs-Handhabungsadresse. In dem Fall, daß das Unterbrechungssignal eine Rekonfigurations­ unterbrechung ist, geht die Unterbrechungslogik 3106 auf einen Zustand R über, und speichert eine Konfigurationsdatensatz-Adres­ se in dem PCR-Satz 3122. Nach dem Zustand R oder im Anschluß an den Zustand G für den Fall, daß das Unterbrechungssignal keine Rekonfigurations-Unterbrechung ist, geht die Unterbrechungslogik 3106 auf einen Zustand N über und speichert die Unterbrechungs­ handhabungsadresse in dem PCR-Satz 3122. Die Logik 3106 geht auf einen Zustand X über und gibt ein Unterbrechungshinweissignal an ISS 3100 ab. Im Anschluß an den Zustand X kehrt die Unterbre­ chungslogik 3122 auf den Zustand B zurück, um auf ein nächstes Unterbrechungssignal zu warten.
In der bevorzugten Ausführungsform ändert sich der Pegel einer Unterbrechungslatenz, wie sie durch die Unterbrechungsantwort­ signale und folglich durch die Übergangssteuersignale spezifi­ ziert ist, entsprechend einer aktuellen ISA, für welche die DRP- Einheit 3032 konfiguriert worden ist. Beispielsweise erfordert eine TSA, die einer Hochleistungs-Echtzeitbewegungssteuerung ge­ widmet ist, schnelle und vorhersehbare Unterbrechungsantwort-Fä­ higkeiten. Der Konfigurationsdatensatz, der einer solchen ISA entspricht, weist daher vorzugsweise Unterbrechungsanwortsignale auf, die anzeigen, daß eine Unterbrechung geringer Latenz erfor­ derlich ist. Die entsprechenden Übergangssteuersignale wiederum identifizieren vorzugsweise mehrfache ISS-Zustände als unter­ brechbar, um dadurch eine Unterbrechung zuzulassen, um einen Be­ fehlsausführungszyklus vor der Beendigung der Befehlsausführungs­ zyklus aufzuschieben. Tm Gegensatz zu einer ISA für eine Real­ zeit-Bewegungssteuerung erfordert eine ISA für Bildfaltungsopera­ tionen Unterbrechungsantwort-Möglichkeiten, die sicherstellen, daß die Anzahl Faltungsoperationen, die pro Zeiteinheit durchge­ führt worden sind, maximiert ist. Der Konfigurationsdatensatz, welcher der Bildfaltungs-ISA entspricht, weist vorzugsweise Un­ terbrechungsantwortsignale auf, die eine hochlatente Unterbre­ chung erforderlichenfalls spezifizieren. Die entsprechenden Über­ gangssteuersignale identifizieren vorzugsweise einen Zustand W, wenn er unterbrechbar ist. Für den Fall, daß ISS 3100 Mehrfach­ sätze von Zuständen F, D, E und W in paralleler Form stützt, wenn konfiguriert wird, um die Bildfaltungs-ISA durchzuführen, identi­ fizieren die Übergangssteuersignale vorzugsweise jeden Zustand W, wenn er unterbrechbar ist und spezifizieren ferner, daß eine Un­ terbrechungsbedienung zu verzögern ist, bis jeder der parallelen Befehlsdurchführungszyklen, deren den Zustand W betreffenden Ope­ rationen beendet haben. Hierdurch ist sichergestellt, daß eine ganze Gruppe von Befehlen durchgeführt wird, bevor eine Unterbre­ chung vorgenommen wird, um dadurch vernünftige Pipeline-Durchfüh­ rungs-Leistungspegel aufrechtzuerhalten.
Analog zu dem Unterbrechungslatenz-Pegel ändert sich auch der Pe­ gel einer Unterbrechungspräzision, wie sie durch die Unterbre­ chungsantwortsignale spezifiziert ist, entsprechend der ISA, für welche die DRP-Einheit 3032 konfiguriert wird. Beispielsweise spezifizieren in dem Fall, daß der Zustand M als ein unterbrech­ barer Zustand für eine Außenschleifen-ISA definiert ist, welche unterbrechbare Mehrzyklen-Operationen stützt, vorzugsweise die Unterbrechungsantwortsignale, daß genau Unterbrechungen gefordert werden. Die Übergangssteuersignale spezifizieren dann, daß Unter­ brechungen, die beim Zustand M erhalten worden sind, als genaue Unterbrechungen behandelt werden, um sicherzustellen, daß Mehrzyklen-Operationen erfolglich wieder gestartet werden können. Bei einem anderen Beispiel spezifizieren für eine ISA, welche nicht-fehlerhafte, durch eine Pipeline verbundene Rechenoperatio­ nen stützt, die Unterbrechungsantwortsignale vorzugsweise, daß nicht genaue Unterbrechungen gefordert werden. Die Übergangssteu­ ersignale spezifizieren dann, daß Unterbrechungen, die beim Zu­ stand W erhalten worden sind, als ungenaue Unterbrechungen behan­ delt werden.
Für eine vorgegebene ISA werden die Unterbrechungsantwortsignale definiert oder durch einen Teil des entsprechenden Konfigura­ tionsdatensatzes einer ISA programmiert. Über die programmierba­ ren Unterbrechungsantwortsignale und die Erzeugung von entspre­ chenden Übergangssteuersignalen erleichtert die Erfindung, die Durchführung eines optimalen Unterbrechungsschemas auf einer ISA­ zu-ISA-Basis. Der Fachmann weiß, daß die große Mehrzahl von her­ kömmlichen Computer-Architekturen nicht für die flexible Spezifi­ kation von Unterbrechungsmöglichkeiten, nämlich einer program­ mierbaren Zustandsübergangsfreigabe, einer programmierbaren Un­ terbrechungslatenz und einer programmierbaren Unterbrechungsprä­ zision vorsorgen. In der bevorzugten Ausführungsform ist die Un­ terbrechungslogik 3106 als eine auf CLB basierende Zustandsein­ richtung ausgeführt, welche die vorstehend beschriebenen Zustände stützt.
Die Abrufsteuereinheit 3108 richtet das Laden von Befehlen in den Befehlspuffer 3110 entsprechend dem Abrufsignal aus, das von ISS 3100 abgegeben worden ist und in der bevorzugten Ausführungsform ist die Abrufsteuereinheit 3108 als eine herkömmliche (one-hot) codierte Zustandseinrichtung mit Flip-Flops in einer Gruppe von CL-Blöcken ausgeführt. Der Fachmann erkennt, daß in einer alter­ nativen Ausführungsform die Abrufsteuereinheit 3108 auch als eine herkömmliche codierte Zustandseinrichtung oder als eine auf ROM basierende Zustandseinrichtung konfiguriert sein könnte. Der Be­ fehlsspeicher 3110 schafft eine vorübergehende Speicherung für Befehle, die aus dem Speicher 3034 geladen sind. Für die Durch­ führung einer äußeren Schleifen-ISA ist der Befehlspuffer 3110 vorzugsweise als ein herkömmlicher, auf RAM basierender FIFO-Puf­ fer mit einer Vielzahl von CL-Blöcken ausgeführt. Für die Ausfüh­ rung einer Innenschleifen-ISA ist der Befehlspuffer 3110 vorzugs­ weise als ein Satz von Flip-Flop-Registern mit einer Anzahl Flip- Flops in einer Gruppe von IOBs oder einer Vielzahl Flip-Flops so­ wohl in IOBs als auch CLBs augeführt.
Die Decodiersteuereinheit 3112 richtet die Übertragung von Befeh­ len von dem Befehlspuffer 3110 in den Befehlsdecodierer 3114 ent­ sprechend dem Decodiersignal aus, das von der ISS 3100 abgegeben worden ist. Für eine Innenschleifen-ISA ist die Decodiersteuer­ einheit 3112 vorzugsweise als eine auf ROM-basierende Zustands­ einrichtung mit einem auf CLB basierenden ROM ausgeführt, der mit einem auf CLB basierenden Register verbunden ist. Für eine Außen­ schleifen-ISA ist die Decodiersteuereinheit 3112 als eine auf CLB basierende codierte Zustandseinrichtung ausgeführt. Für jeden Be­ fehl, der als Eingangssignal empfangen wird, gibt der Befehlsde­ coder 3114 einen entsprechenden Operationscode eine Register-Da­ teiadresse und wahlweise ein- oder mehrere Konstanten in herkömm­ licher Weise ab. Für eine Innenschleifen-ISA ist der Befehlsdeco­ dierer 3115 vorzugsweise entsprechend konfiguriert, um eine Grup­ pe von Befehlen, die als Eingangssignal empfangen worden sind, zu decodieren. In der bevorzugten Ausführungsform wird der Befehls­ decodierer 3114 als ein auf CLB-basierender Decodierer ausge­ führt, der entsprechend konfiguriert ist, um jeden der Befehle, die in der aktuellen in Betracht gezogenen ISA enthalten sind, zu decodieren.
Der Operationscode-Speicherregister-(OSR-)Satz 3113 schafft eine vorübergehende Speicherung für jeden Operationscodeausgang durch den Befehlsdecodierer 3144 und gibt jeden Operationscode an ISS 3100 ab. Wenn eine Außenschleifen-ISA in der DRP-Einheit 3032 durchgeführt wird, wird der OSR-Satz 3113 vorzugsweise mit Hilfe einer optimalen Anzahl von Flip-Flop-Registerbänken ausgeführt. Die Flip-Flop-Registerbänke erhalten Signale von dem Befehlsdeco­ dierer 3114, welche Klassen- oder Gruppencodes darstellen, die von Operationscode-Literal-Bitfeldern aus Befehlen abgeleitet sind, die vorher den Befehlspuffer 3110 in Form einer Warte­ schlange durchlaufen haben. Die Flip-Flop-Registerbänke speichern die vorerwähnten Klassen- oder Gruppencodes gemäß einem Decodier­ schema, das vorzugsweise eine ISS-Komplexität minimiert. Im Falle einer Innenschleifen-ISA speichert der OSR-Satz 3113 vorzugsweise Operationscode-Anzeigesignale, die unmittelbar von Operationsco­ de-Literal-Bitfeldern abgeleitet worden sind, die von dem Be­ fehlsdecodierer 3114 abgegeben worden sind. Innenschleifen-ISAs haben notwendigerweise kleinere Operationscode-Literal-Bitfelder, um dadurch die Ausführungsanforderungen hinsichtlich Puffern, De­ codierern und einer Operationscode-Anzeige für ein sequentielles Befehlszuordnen durch den Befehlspuffer 3110, den Befehlsdecodie­ rer 3114 bzw. den OSR-Satz 3116 zu minimieren. Für Außenschlei­ fen-ISAs wird der OSR-Satz 3116 vorzugsweise als ein kleiner Ver­ bund von Flip-Flops-Registerbänken ausgeführt, die durch eine Bandbreite gekennzeichnet sind, die gleich der Operationscode-Li­ teralgröße oder einem Bruchteil derer ist. Für Innenschleifen- ISAs ist der Operationscode-Speicherregister-(OSR-)Satz 3116 vor­ zugsweise eine kleinere und vereinheitlichtere Flip-Flop-Regi­ sterbank als für Außenschleifen-ISAs. Die reduzierte Flip-Flop- Registerbankgröße im Fall einer Innenschleife reflektiert die mi­ nimale Befehls-Zählchrakteristik von Innenschleifen-ISAs relativ zu Außenschleifen-ISAs.
Der HF-Adressenregister-Satz 3118 und der Konstanten-Registersatz 3120 schaffen eine vorübergehende Speicherung für jede Register- Dateiadresse bzw. jeden konstanten Ausgang für den Befehlsdeco­ dierer 3114. In der bevorzugten Ausführungsform sind der Opera­ tionscode-Speicherregistersatz 3116, der HF-Adressenregistersatz 3118 und der Konstanten-Registersatz 3112 jeweils als ein Satz von CL-Blöcken ausgeführt, die für eine Datenspeicherung konfigu­ riert sind.
Die Speicherzugriffslogik 3102 ist eine Speichersteuerschaltung, welche den Datentransfer zwischen dem Speicher 3034, der DO-Ein­ heit 3062 und der AO-Einheit 3064 entsprechend der Speicheradres­ sengröße ausrichtet und synchronisiert, die in dem Architektur- Beschreibungsspeicher 3122 spezifiziert ist. Die Speicherzu­ griffslogik 3102 richtet aus und synchronisiert den Datentransfer und Befehle zwischen der S-Einrichtung 3012 und einer vorgegebe­ nen T-Einrichtung 3014. In der bevorzugten Ausführungsform stützt die Speicherzugriffslogik 3102 Stoßbetrieb-Speicherzugriffe und ist vorzugsweise als eine herkömmliche RAM-Steuereinheit mit CL- Blöcken augeführt. Der Fachmann erkennt, daß während einer Rekon­ figuration die Eingangs- und Ausgangsanschlüsse der rekonfigu­ rierbaren Logik für drei Zustände ausgelegt sind, so daß Wider­ standsabschlüsse nicht bestehende Logikpegel definieren, und folglich nicht den Speicher 3034 stören. In einer anderen Ausfüh­ rungsform könnte die Speicherzugriffslogik 3201 extern in der DRP-Einheit 3032 ausgeführt sein.
In Fig. 22 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer Datenoperations-(DO-)Einheit 3062 dargestellt. Die DO-Ein­ heit 3062 führt Operationen an Daten gemäß DOU-Steuersignalen, HF-Adressen und Konstanten durch, die von ISS 3100 erhalten wor­ den sind. Die DO-Einheit 3062 weist einen DOU-Crossbar-Schalter 3150, eine Speicher/Ausrichtlogik 3151 und eine Datenoperations­ logik 3154 auf. Der Crossbar-Schalter 3150, die Speicher/Aus­ richtlogik 3152 und die Datenoperationslogik 3154 haben jeweils einen Steuereingang, der mit dem ersten Steuerausgang der IF-Ein­ heit 3060 über die erste Steuerleitung 3070 verbunden ist. Der Crossbar-Schalter 3150 hat einen zweigerichteten Dateneingang, welcher den zweigerichteten Dateneingang der DO-Einheit bildet, einen konstanten Eingang, der mit der dritten Steuerleitung 3074 verbunden ist, einen ersten Datenrückkopplungseingang, der mit einem Datenausgang der Datenoperationslogik 3154 über eine erste Datenleitung 3160 verbunden ist, einen zweiten Datenrück­ kopplungseingang, der mit einem Datenausgang der Speicher/Aus­ richtlogik 3152 über eine zweite Datenleitung 3164 verbunden ist, und einen Datenausgang, der mit einem Dateneingang der Spei­ cher/Ausricht-Logik 3152 über eine dritte Datenleitung 3162 ver­ bunden ist. Zusätzlich zu dem Datenausgang hat die Speicher/Aus­ richtlogik 3154 einen Adresseneingang, welcher mit der dritten Steuerleitung 3074 verbunden ist. Die Datenoperationslogik 3154 hat zusätzlich einen Dateneingang, welcher mit dem Ausgang der Speicher/Ausrichtlogik über die zweite Datenleitung 3164 verbun­ den ist.
Die Datenoperationslogik 3154 führt Rechen-, Schiebe- und/oder logische Operationen an Daten, welche an deren Dateneingang emp­ fangen worden sind, entsprechend den DOU-Steuersignalen durch, die an deren Steuereingang empfangen worden sind. Die Spei­ cher/Ausrichtlogik 3152 weist Datenspeicherelemente auf, die für eine vorübergehende Speicherung von Operanden, Konstanten und Teilergebnissen sorgen, die Datenberechnungen zugeordnet sind, und zwar unter der Anordnung von HF-Adressen und DOU-Steuersigna­ len, die an deren Adressen- bzw. Steuereingang empfangen worden sind. Der Crossbar-Schalter 3150 ist vorzugsweise ein herkömmli­ ches Crossbar-Steuernetz, welches das Laden von Daten aus dem Speicher 3034, dem Transfer von Ergebnissen, die von der Daten­ operationslogik 3154 abgegeben worden sind, an die Speicher/Aus­ richtlogik 3152 oder den Speicher 3034 und das Laden von Konstan­ ten, die von der IF-Einheit 3060 abgegeben worden sind, in die Speicher/Ausrichtlogik 3152 entsprechend den DOU-Steuersignalen erleichtern, die an deren Steuereingang erhalten worden sind. In der bevorzugten Ausführungsform hängt der Aufbau der Datenopera­ tionslogik 3154 im einzelnen von den Operationsarten ab, die von der aktuellen in Betracht gezogenen ISA gestützt sind. Das heißt, die Datenoperationslogik 154 weist eine Schaltung zum Durchführen der Rechen- und/oder logischen Operationen auf, welche durch die Datenoperationsbefehle in der aktuell in Betracht gezogenen ISA spezifiziert sind. Dementsprechend hängt auch der Aufbau der Speicher/Ausrichtlogik 3152 und des Crossbar-Schalters 3150 von der aktuell in Betracht gezogenen ISA ab. Der detaillierte Aufbau der Datenoperationslogik 3154, die Speicher/Ausrichtlogik 3152 und der Crossbar-Speicher 3150 gemäß dem ISA-Typ wird nachstehend anhand der Fig. 23A bis 23B beschrieben.
Für eine Außenschleifen-ISA ist die DO-Einheit 3062 vorzugsweise entsprechend konfiguriert, um serielle Operationen an Daten durchzuführen. In Fig. 23A ist ein Blockdiagramm einer ersten bei­ spielhaften Ausführungsform der DO-Einheit 3061 dargestellt, die für die Ausführung einer generellen Außenschleifen-ISA konfigu­ riert ist. Die generelle Außenschleifen-ISA erfordert Hardware, die konfiguriert ist, um mathematische Operationen, wie Multipli­ kationen, Additionen und Subtraktionen, Boolsche Operationen, wie UND, ODER und NOT, sowie Verschiebe- und Drehoperationen durchzu­ führen. Folglich weist für die Durchführung einer generellen Au­ ßenscheifen-ISA die Datenoperationslogik 5154 vorzugsweise eine Arithmetik-Logik-(AL-)Einheit/Schiebeeinheit 3184 mit einem er­ sten und zweiten Eingang, einem Steuereingang und einem Ausgang auf. Die Speicher-Ausrichtlogik 3152 weist vorzugsweise einen er­ sten RAM 3180 und einen zweiten RAM 3182 auf, die jeweils einen Dateneingang, einen Datenausgang, einen Adressen-Auswähleingang und einen Freigabeeingang haben. Der DOU-Crossbar-Schalter 3150 weist vorzugsweise ein herkömmliches Crossbar-Schaltnetz mit so­ wohl zweigerichteten als auch einseitig gerichteten Crossbar-Ver­ bindungen und mit den vorstehend in Verbindung mit Fig. 22 be­ schriebenen Eingängen und Ausgängen auf. Der Fachmann weiß, daß eine effiziente Ausführung des DOU-Crossbar-Schalters 3150 für ein Außenschleifen-ISA Multiplexer, Puffer mit drei Zuständen, eine auf CLB basierende Logik, eine direkte Verdrahtung oder Un­ tergruppen der vorerwähnten Elemente enthalten kann, die in ir­ gendeine Kombination durch eine rekonfigurierbare Verbindungsein­ richtung verbunden sind. Für eine Außenschleifen-ISA ist der DOU- Crossbar-Schalter 3150 entsprechend ausgeführt, um eine serielle Datenbewegung in einer minimal möglichen Zeit durchzuführen, während auch eine maximale Anzahl von eindeutigen Datenbewegungs- Crossbar-Verbindungen geschaffen wird, um verallgemeinerte Außen­ schleifen-Befehlstypen zu stützen.
Der Dateneingang des ersten und zweiten RAM 3180 bzw. 3182 ist mit dem Datenausgang des Schalter 3150 über die dritte Datenlei­ tung 3162 verbunden. Die Adressenauswähleingänge der beiden RAM 3180 und 3182 sind entsprechend verbunden, um Registerdatei- Adressen von der IF-Einheit 3060 über die dritte Steuerleitung 3074 aufzunehmen. In ähnlicher Weise sind Freigabe-Eingänge der beiden RAM 3180, 3182 entsprechend verbunden, um DOU-Steuersigna­ le über erste Steuerleitungen 3070 zu erhalten. Die Datenausgänge der beiden RAM 3180 und 3182 sind mit dem ersten und dem zweiten Eingang der ALU/Schiebeeinheit 3184 und auch mit dem zweiten Da­ tenrückkopplungseingang des Schalters 3150 verbunden. Der Steuer­ eingang der ALU-Schiebeeinheit 3184 ist entsprechend geschaltet, um DOU-Steuersignale über die erste Steuerleitung 3070 aufzuneh­ men, und der Ausgang der ALU-/Schiebeeinheit 3184 ist mit dem er­ sten Datenrückkopplungseingang des Schalters 3150 verbunden. Die Verbindungen zu den restlichen Eingängen und Ausgängen des Cross­ bar-Schalters 3150 sind identisch mit denen, die in Verbindung mit Fig. 22 vorstehend beschrieben worden sind.
Um das Ausführen eines Datenoperationsbefehls zu erleichtern, gibt die IF-Einheit 3060 DOU-Steuersignale, HF-Adressen- und Kon­ stanten an die DO-Einheit 3061 während einer der ISS-Zustände E oder M ab. Die beiden RAM 3180, 3182 schaffen eine erste und zweite Registerdatei für ein vorübergehendes Datenspeichern. Ein­ zelne Adressen in den beiden RAM 3180, 3182 werden entsprechend den HF-Adressen ausgewählt, die an jedem RAM-Adressenauswählein­ gang empfangen worden sind. Dementsprechend wird ein Laden der beiden RAM 3180, 3182 durch die DOU-Steuersignale gesteuert, die der jeweilige RAM 3180, 3182 an seinem Schreib-Freigabeeingang erhält. In der bevorzugten Ausführungsform weist zumindest ein RAM 3180, 3182 eine Durchgangsmöglichkeit auf, um den Datentrans­ fer von dem DOU-Crossbar-Schalter 3150 unmittelbar in die ALU- Schiebeeinheit 3184 zu erleichtern. Die ALU/Schiebeeinheit 8134 führt arithmetische, logische oder Schiebeoperationen bei einem ersten Operandern, der von dem ersten RAM 3180 erhalten worden ist, und/oder bei einem zweiten Operandern, der von dem zweiten R. AM 3182 erhalten worden ist, unter der Weisung der DOU-Steuer­ signale durch, die an deren Steuereingang erhalten worden sind. Der Crossbar-Schalter 3150 leitet selektiv 1) Daten zwischen dem Speicher 3034 und den beiden RAM 3180, 3182, 2) Ergebnisse von der ALU/Schiebeeinheit 3184 zu den beiden RAM 3180, 3182 oder dem Speicher 3034 3) Daten, die in dem ersten oder zweiten RAM 3180, 3182 gespeichert sind, zu dem Speicher 3034, und 4) Konstante von der IF-Einheit 3060 zu den beiden RAM 3180 und 3182.
Wie vorstehend beschrieben, leitet für den Fall, daß entweder der erste oder der zweite R. AM 3180, 3182 eine Durchgangsmöglichkeit enthält, der Crossbar-Schalter 3150 selektiv auch Daten von dem Speicher 3034 oder von dem Ausgang der ALU/Schiebeeinheit unmit­ telbar zurück in die ALU-Schiebeeinheit 3184. Der Crossbar-Schal­ ter 3150 führt eine ganz bestimmte Schwenkoperation entsprechend den DOU-Steuersignalen durch, die an seinem Steuereingang empfan­ gen worden sind. In einer bevorzugten Ausführungsform ist die ALU/Schiebeeinheit 3184 durch Verwenden von logischen Funktions­ generatoren in einer Gruppe von LC-Blöcken und einer Schaltungs­ anordnung ausgeführt, die für mathematische Operationen in der rekonfigurierbaren Logikvorrichtung vorgesehen ist. Die beiden RAM 3180, 3182 sind jeweils vorzugsweise mit Hilfe der Datenspei­ cherschaltung ausgeführt, die in einer Gruppe von CL-Blöcken vor­ handen ist, und der Crossbar-Schalter 3150 ist vorzugsweise in der vorstehend beschriebenen Weise ausgeführt.
In Fig. 23B ist ein Blockdiagramm einer zweiten beispielshaften Ausführungsform einer DO-Einheit 3063 dargestellt, die für die Ausführung einer Innenschleifen-ISA konfiguriert ist. Im allge­ meinen stützt eine innere Schleifen-ISA verhältnismäßig wenig spezialisierte Operationen und wird vorzugsweise dazu vervuendet, eine gemeinsame Menge von Operationen an möglichst großen Daten­ sätzen durchzuführen. Eine optimale Rechenleistung für eine In­ nenschleifen-ISA wird daher durch Hardware erzeugt, die entspre­ chend konfiguriert ist, um Operationen parallel durchzuführen. Folglich sind in der zweiten beispielshaften Ausführungsform der DO-Einheit 3063 die Datenoperationslogik 3154, die Speicher/Aus­ richtlogik 3152 und der DOU-Crossbar-Schalter 3150 entsprechend konfiguriert, um Pipeline-Berechnungen durchzuführen. Die Daten­ operationslogik 3154 weist eine Pipeline-Funktionseinheit 3194 mit einer Anzahl Eingänge, einem Steuereingang und einem Ausgang auf. Die Speicher/Ausrichtlogik 3152 weist 1) eine Gruppe von herkömmlichen Flip-Flop-Anordnungen 3192, wobei jede Flip-Flop- Anordnung 9132 einen Dateneingang und -ausgang sowie einen Steu­ ereingang hat, und 2) einen Datenselektor 3190 auf, der einen Steuer- und einen Dateneingang sowie eine Anzahl Ausgänge hat, welche der Anzahl an vorhandenen Flip-Flops-Anordnungen 3192 ent­ sprechen. Der DOU-Crossbar-Schalter 3150 weist ein herkömmliches Crossbar-Schaltnetz mit einseitig gerichteten Duplex-Crossbar- Verbindungen auf.
In der zweiten beispielshaften Ausführungsform der DO-Einheit 3063 enthält der Crossbar-Schalter 3150 vorzugsweise die Eingänge und Ausgänge, die vorher in Verbindung mit Fig. 22 beschrieben sind, mit Ausnahme des zweiten Datenrückkopplungseingangs. Analog zu den Außenschleifen-ISA-Fall kann eine effiziente Ausführung des DOU-Crossbar-Schalters 3150 für eine Innenschleifen-ISA mul­ tipliziert, Puffer mit drei Zuständen, eine auf CLB basierende Logik, eine direkte Verdrahtung oder eine Untergruppe der vorer­ wähnten Elemente enthalten, die in einer rekonfigurierbaren Weise verbunden sind. Über eine Innenschleifen-ISA ist der Schalter 3150 entsprechend ausgeführt, um parallele Datenbewegungen in ei­ ner minimalen Zeit zu maximieren, obwohl auch eine minimale An­ zahl von eindeutigen Datenbewegungs-Crossbar-Verbindungen vorge­ sehen ist, um über eine Pipeline zugeführte Innenschleifen-ISA- Befehle zu stützen.
Der Dateneingang des Datenselektors 3190 ist mit dem Datenausgang des Schalters 3150 über die erste Datenleitung 3162 verbunden. Der Steuereingang des Datenselektors 3190 ist entsprechend ver­ bunden, um HF-Adressen über die dritte Steuerleitung 3074 aufzu­ nehmen, und jeder Ausgang des Datenselektors 3190 ist mit einem entsprechenden Dateneingang einer Flip-Flop-Anordnung verbunden. Der Steuereingang jeder Flip-Flop-Anordnung 3192 ist entsprechend geschaltet, um DOU-Steuersignale für die erste Steuerleitung 3070 aufzunehmen, und jeder Datenausgang der Flip-Flop-Anordnung ist mit einem Eingang der Funktionseinheit 3194 verbunden. Der Steuereingang der Funktionseinheit 3194 ist entsprechend geschal­ tet, um DOU-Steuersignale über die erste Steuerleitung 3070 zu erhalten, und der Ausgang der Funktionseinheit 3194 ist mit dem ersten Datenrückkopplungseingang des Crossbar-Schalters 3150 ver­ bunden. Die Verbindungen der restlichen Eingänge und Ausgänge des Crossbar-Schalters 3150 sind identisch mit denjenigen, die vorher in Verbindung mit Fig. 22 beschrieben worden sind.
Während des Betriebs führt die Funktionseinheit 3194 Pipeline- Operationen an Daten, welche an deren Dateneingängen empfangen worden sind, entsprechend den DOU-Steuersignalen durch, die an deren Steuereingang erhalten worden sind. Der Fachmann erkennt, daß die Funktionseinheit 3194 eine Multiplizier-Addiereinheit, eine Schwellenwert-Bestimmungseinheit, eine Bilddreheinheit, eine Randvergrößerungseinheit oder eine Funktionseinheit ist, die sich dazu eignet, Pipeline-Operationen an aufgeteilten Daten durchzu­ führen. Der Datenselektor 3190 leitet Daten vom Ausgang des Schalters 3150 in eine vorgegebene Flip-Flop-Anordnung 3192 ent­ sprechend den HF-Adressen, die an seinem Steuereingang empfangen worden sind. Jede Flip-Flop-Anordnung 3192 weist vorzugsweise eine Gruppe von fortlaufend verbundenen Datenhaltegliedern auf, um Daten relativ zu dem Dateninhalt der anderen Flip-Flop-Anord­ nung 3192 unter der Weisung der Steuersignale, die an deren Steu­ ereingang erhalten worden sind, räumlich und vorübergehend auszu­ richten. Der Crossbar-Schalter 3150 leitet selektiv 1) Daten von dem Speicher 34 zu dem Datenselektor 3190, 2) Ergebnisse von der Multiplizier-Addiereinheit 3194 zu dem Datenselektor 3190 oder dem Speicher 3034 und 3) Konstante von der IIF-Einheit 3060 zu dem Datenselektor 3190. Der Fachmann erkennt, daß eine Innen­ schleifen-ISA eine Gruppe von "eingebauten" Konstanten haben kann. Bei der Durchführung einer solchen Innenschleifen-ISA ent­ hält die Speicher-Ausrichtlogik 3154 vorzugsweise einen auf CLB­ basierenden ROM, welcher die "eingebauten" Konstanten enthält, um dadurch die Notwendigkeit zu beseitigen, Konstante von der IF- Einheit 3060 in die Speicher/Ausrichtlogik 3152 über den Schalter 3150 zu leiten. In der bevorzugten Ausführungsform ist die Funk­ tionseinheit 3194 vorzugsweise unter Verwendung von logischen Funktionsgeneratoren und einer Schaltung ausgeführt, die für ma­ thematische Operationen in einer Gruppe von CL-Blöcken vorgesehen ist. Jede Flip-Flop-Anordnung 3192 ist vorzugsweise unter Verwen­ dung von Flip-Flops in einer Gruppe von CL-Blöcken ausgeführt, und der Datenselektor 3190 ist vorzugsweise unter Verwendung von logischen Funktionsgeneratoren und einer Datenauswählschaltung in einer Gruppe von CL-Blöcken ausgeführt. Schließlich ist der DOU- Crossbar-Schaltung 3150 vorzugsweise in der Weise ausgeführt, die vorher bezüglich der Innenschleifen-ISA beschrieben ist.
In Fig. 24 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer Adressenoperation-(AO-)Einheit 3064 dargestellt. Die AO- Einheit 3064 führt Operationen an Adressen entsprechend AOU- Steuersignalen, HF-Adressen und Konstanten durch, die von der IF- Einheit 3060 erhalten worden sind. Die AO-Einheit 3064 weist ei­ nen AOU-Crossbar-Schalter 3200, eine Speicher/Zähllogik 3202, eine Adressen-Betriebslogik 3204 und einen Adressenmultiplexer 3206 auf. Der Schalter 3200, die Speicher-Zähllogik 3202, die Adressenbetriebslogik 3204 und der Adressenmultiplexer 3206 haben jeweils einen Steuereingang, der mit dem zweiten Steuereingang der IF-Einheit 3060 über die zweite Steuerleitung 3072 verbunden ist. Der Schalter 3200 hat einen zweigerichteten Datenzugang, welcher den zweigerichteten Datenzugang der AO-Einheit bildet, einen Adressenrückkopplungseingang, der mit einem Adressenausgang der Adressenoperationslogik 3204 über eine erste Adressenleitung 3210 verbunden ist, einen konstanten Eingang, der mit der dritten Steuerschaltung 3070 verbunden ist, und einen Adressenausgang, der mit einem Adresseneingang der Speicher/Zähllogik 3202 über eine zweite Adressenleitung 3212 verbunden ist. Außer dem Adres­ sen- und Steuereingang hat die Speicher/Zähllogik 3202 einen HF- Adresseneingang, der mit der dritten Steuerleitung 3074 verbunden ist, und einen Adressenausgang, der mit einem Adresseneingang der Adressenoperationslogik 3204 über eine dritte Adressenleitung 3214 verbunden ist. Der Adressenmultiplexer 3206 hat einen ersten Eingang, der mit der ersten Adressenleitung 3210 verbunden ist, einen zweiten Eingang, der mit der dritten Adressenleitung 3214 verbunden ist, und einen Ausgang, welcher dem Adressenausgang der AO-Einheit 3064 bildet.
Die Adressenoperationslogik 3204 führt Rechenoperationen an Adressen, die an deren Adresseneingang erhalten worden sind, un­ ter der Anweisung von AOU-Steuersignalen durch, die an deren Steuereingang erhalten worden sind. Die Speicher/Zähllogik 3202 sorgt für eine vorübergehende Speicherung von Adressen und von Adressenrechenergebnissen. Der Crossbar-Schalter 3200 erleichtert das Laden von Adressen aus dem Speicher 3034, den Transfer von Ergebnissen, die von der Adressenoperationslogik 3204 abgegeben worden sind, an die Speicher/Zähllogik 3202 oder den Speicher 3004 und das Laden von Konstanten, die von der IS-Einheit 3060 abgegeben worden sind, in die Speicher/Zähllogik 3202 entspre­ chend den AOU-Steuersignalen, die an deren Steuereingang erhalten worden sind. Der Adressenmultiplexer 3206 gibt selektiv eine Adresse, die von der Speicher/Zähllogik 3202 oder der Adresseno­ perationslogik 3200 erhalten worden sind, an den Adressenausgang der AO-Einheit 3064 unter der Anweisung der AOU-Steuersignale ab, die an deren Steuereingang empfangen worden sind. In der bevor­ zugten Ausführungsform ist der detaillierte Aufbau des AOU-Cross­ bar-Schalters 3200, der Speicher/Ausrichtlogik 3202 und der Adressenbetriebseinheit 3204 abhängig von der Art der grade in Betracht gezogenen ISA, was nachstehend unter Bezugnahme auf Fig. 25A und 25B beschrieben wird.
In Fig. 25A ist ein Blockdiagramm einer ersten beispielhaften Aus­ führungsform der AO-Einheit 6065 dargestellt, die für die Durch­ führung einer generellen Außenschleifen-ISA konfiguriert ist. Eine generelle Außenschleifen-ISA erfordert Hardware zum Durch­ führen von Operationen, wie einer Addition, einer Subtraktion, ein Inkrementieren und Dekrementieren bei dem Inhalt eines Pro­ grammzählers und von Adressen, die in der Speicher/Zähllogik 3202 gespeichert sind. In der ersten beispielhaften Ausführungsform der AO-Einheit 3065 weist die Adressenoperationslogik 3205 vor­ zugsweise ein das nächste Befehlsprogramm betrefffende Adressen­ register (NIPAR) 3232 mit einem Eingang, einem Ausgang und einem Steuereingang, eine Recheneinheit 3234 mit ersten bis dritten Eingängen, einem Steuereingang und einem Ausgang und einen Multi­ plexer 3230 mit einem ersten und einem zweiten Eingang, einem Steuereingang und einem Ausgang auf. Die Steuer/Zähllogik 3202 weist vorzugsweise einen dritten RAM 3220 und einen vierten RAM 3222 auf, die jeweils einen Eingang, einen Ausgang, einen Adres­ senwähleingang und einen Freigabeeingang haben. Der Adressenmul­ tiplexer 3206 weist vorzugsweise einen Multiplexer mit einem er­ sten, zweiten und dritten Eingang, einen Steuereingang und einem Ausgang auf. Der Crossbar-Schalter 3200 weist vorzugsweise einen herkömmliches Crossbar-Schaltnetz mit einseitig gerichteten Duplex-Crossbar-Verbindungen und mit den Eingängen und Ausgängen auf, die vorher unter Bezugnahme auf Fig. 25 beschrieben worden sind. Eine effektive Ausführung des AOU-Crossbar-Schalters 3200 kann Multiplexer, Puffer mit drei Zuständen, eine auf CLB-basie­ rende Logik, eine direkte Verdrahtung und eine Untergruppe sol­ cher Elemente aufweisen, die durch rekonfigurierbarer Verbindun­ gen verbunden sind. Für eine Außenschleifen-ISA ist der Crossbar- Schalter 3200 vorzugsweise ausgeführt, um eine serielle Adressen­ bewegung in einer minimalen Zeit zu maximieren, während auch eine maximale Anzahl eindeutiger Adressenbewegungs-Crossbar-verbindun­ gen vorgesehen ist, um verallgemeinerte eine Außenschleifen-ISA betreffende Pressenoperationsbefehle zu stützen.
Der Eingang des dritten und vierten RAM 3220, 3222 ist jeweils mit dem Ausgang des Crossbar-Schalters 3200 über die zweite Adressenleitung 3212 verbunden. Die Adressenwähleingänge der dritten und vierten RAM 3220, 3222 sind entsprechend geschaltet, um HF-Adressen von der IF-Einheit 3060 über die dritte Steuerlei­ tung 74 aufzunehmen und die Freigabeeinänge der ersten und zwei­ ten RAM 3220, 3222 sind entsprechend geschaltet, um AOU-Steuer­ signale über die zweite Steuerleitung 3072 aufzunehmen. Der Aus­ gang des dritten RAM 3220 ist verbunden mit dem ersten Eingang des Multiplexers 3230, mit dem ersten Eingang der Recheneinheit 3234 und dem ersten Eingang des Adressenmultiplexers 3206. In ähnlicher Weise ist der Ausgang des vierten RAM 3222 verbunden mit dem zweiten Eingang des Multiplexers 3220, dem zweiten Ein­ gang der Recheneinheit 3234 und dem zweiten Eingang des Adressen­ multiplexers 3206. Die Steuereingänge des Multiplexers 3230, des NIPA-Registers 3232 und die Recheneinheit 3234 sind jeweils mit der zweiten Steuerleitung 3272 verbunden. Der Ausgang der Reche­ neinheit 3234 bildet den Ausgang der Adressenoperationslogik 3204 und ist folglich mit dem Adressenrückkopplungseingang des AOU- Crossbar-Schalters 3200 und dem dritten Eingang des Adressen-Mul­ tiplexers 3206 verbunden. Die Verbindungen zu den restlichen Ein­ gängen und Ausgängen des AOU-Crossbar-Schalters 3200 und des Adressen-Multiplexers 3206 sind identisch mit denjenigen, die vorher unter Bezugnahme auf Dig. 24 beschrieben worden sind.
Um die Durchführung eines Adressen-Operationsbefehls zu vereinfa­ chen, gibt die IF-Einheit 3060 AOU-Steuersignale, HF-Adressen und Konstanten an die AO-Einheit 3064 während entweder des ISS-Zu­ standes E oder M ab. Die dritten und vierten RAM 3220, 3222 schaffen eine erste bzw. zweite Registerdatei für ein vorüberge­ hendes Adressenspeichern. Einzelne Speicherstellen in dem dritten und vierten RAM 3220, 3222 werden entsprechend dem HF-Adressen ausgewählt, die an jedem RAM-Adressenauswähleingang erhalten wor­ den sind. Das Laden des dritten und vierten RAM 3220, 3222 wird durch die AOU-Steuersignale gesteuert, die der jeweilige RAM 3220, 3222 an seinem Schreib-Freigabeeingang erhält. Der Multi­ plexer 3230 leitet selektiv Adressen, die von dem dritten und vierten RAM 3220, 3222 abgegeben worden sind, zu dem NIPA-Regi­ ster 3232 unter der Anweisung der AOU-Steuersignale, die an des­ sen Steuereingang erhalten worden sind. Das NIPA-Register 3232 lädt eine Adresse, die von dem Ausgang des Multiplexers 3230 er­ halten worden ist, und inkrementiert deren Inhalt entsprechend dem AOU-Steuersignalen, die an dessen Steuereingang erhalten wor­ den sind.
In der bevorzugten Ausführungsform speichert das NIPA-Register 3232 die Adresse des nächsten durchzuführenden Programmbefehls. Die Recheneinheit 3234 führt Rechenoperationen einschließlich ei­ ner Addition, einer Subtraktion, eines Inkrementierens und Dekre­ mentierens an Adressen, die von dem dritten und vierten RAM 3220, 3222 und/oder an Inhalten eines NIPA-Registers 3232 durch. Der Schalter 3200 leitet selektiv 1) Adressen von dem Speicher 3034 zu dem dritten und vierten RAM 3220, 3222 und 2) Ergebnisse von Adressenrechnungen, die von der Recheneinheit 3234 abgegeben wor­ den sind, zu dem Speicher 3034 oder dem dritten und vierten RAM 3220, 3222. Der AOU-Crossbar-Schalter 3200 führt eine ganz be­ stimmte Lenkoperation gemäß dem AOU-Steuersignalen durch, die an dessen Steuereingang erhalten worden sind. Der Adressenmultiple­ xer 3206 lenkt selektiv Adressen, die von dem dritten RAM 3220 abgegeben worden sind, Adressen, die von dem vierten RAM 3222 ab­ gegeben worden sind, oder Ergebnisse von Adressenrechnungen, die von der Recheneinheit 3234 abgegeben worden sind, zu dem AOU- Adressenausgang unter der Anweisung der AOU-Steuersignale, die an dessen Steuereingang erhalten worden sind.
In der bevorzugten Ausführungsform sind der dritte und vierte RAM 3220, 3222 jeweils durch Verwenden der Datenspeicherschaltung ausgeführt, die in einem Satz von CL-Blöcken vorhanden ist. Der Multiplexer 3230 und der Adressenmultiplexer 3206 sind jeweils durch Verwenden einer Datenauswahlschaltung ausgeführt, die in einem Satz von CL-Blöcken vorhanden ist, und das NIPA-Register 3232 ist vorzugsweise durch Verwenden einer Datenspeicherschal­ tung ausgeführt, die in einem Satz CL-Blöcken vorhanden ist. Die Recheneinheit 3234 ist vorzugsweise mit Hilfe von logischen Funk­ tionsgeneratoren und einer Schaltung ausgeführt, die mathemati­ schen Funktionen in einer Gruppe von CL-Blöcken zugeordnet ist. Schließlich ist der AOU-Crossbar-Schalter vorzugsweise in der vorstehend beschriebenen Weise ausgeführt.
In Fig. 25B ist ein Blockdiagramm einer zweiten beispielshaften Ausführungsform der AO-Einheit 3066 dargestellt, die für die Durchführung einer Innenschleifen-ISA konfiguriert ist. Vorzugs­ weise erfordert eine Innenschleifen-ISA Hardware zum Durchführen einer sehr begrenzten Menge von Adressenoperationen, und eine Hardware, um zumindest einen Quellenadressenzeiger und eine ent­ sprechende Anzahl von Bestimmungsadressenzeigern aufrechtzuerhal­ ten. Eine Innenschleifen-Verarbeitung, für welche eine sehr be­ grenzte Anzahl von Adressenoperationen oder sogar eine einzige Adressenoperation erforderlich sind, enthält Block- oder Serpen­ tinenoperationen an Bilddaten, Bitumkehroperationen, Operationen an zirkularen Pufferdaten und Parsing-Operationen an Daten vari­ abler Länge.
Nachstehend wird eine einzige Adressenoperation betrachtet, näm­ lich eine Inkrement-Operation. Der Fachmann erkennt, daß Hard­ ware, welche Inkrement-Operationen durchführt, auch inhärent in der Lage ist, Dekrementier-Operationen durchzuführen, um dadurch eine zusätzliche Adressen-Operationsmöglichkeit zu schaffen. In der zweiten beispielshaften Ausführungsform der AO-Einheit 3076 weist die Speicher/Zähllogik 3202 zumindest auf ein Quellenadres­ senregister 3252 mit einem Eingang, einem Ausgang und einem Steu­ ereingang, zumindest ein Bestimmungsadressenregister 3254 mit einem Eingang, einem Ausgang und einem Steuereingang und einen Datenselektor 3250 mit einem Eingang, einem Steuereingang und ei­ ner Anzahl Ausgänge, welche gleich der Gesamtanzahl an vorhande­ nen Quellen-Bestimmungs-Adressenregister 3252, 3254 ist. Hier wer­ den ein einziges Quellenadressenregister 3252 und ein einziges Bestimmungsregister 3254 betrachtet und daher hat der Datenselek­ tor 3250 einen ersten und einen zweiten Ausgang.
Die Adressenoperations-Logik 3204 weist ein NIPA-Register 3232 mit einem Eingang, einem Ausgang und einem Steuerausgang, wie ei­ nen Multiplexer 3260 auf, der eine Anzahl Eingänge, die gleich der Anzahl Datenselektorausgänge sind, einen Steuereingang und einen Ausgang hat. Hierbei hat der Multiplexer 3260 einen ersten Eingang und einen zweiten Eingang. Der Adressen-Multiplexer 3206 weist vorzugsweise einen Multiplexer mit einer Anzahl Eingänge auf, welche um eins größer ist als die Anzahl an Datenselektor­ ausgängen, einem Steueingang und einem Ausgang auf. Folglich hat hier der Adressenmultiplexer 3201 einen ersten, einen zweiten und einen dritten Eingang. Der Crossbar-Schalter 3200 weist vorzugs­ weise ein herkömmliches Crossbar-Schaltnetz mit zweiseitig und einseitig gerichteten Crossbar-Verbindungen und mit den Eingängen und Ausgängen, die vorher in Verbindung mit Fig. 24 beschrieben worden sind. Eine effiziente Ausführung des AOU-Crossbar-Schal­ ters 3200 kann enthalten Multiplexer, Puffer mit drei Zuständen, eine auf CLB basierende Logik, eine Direktverdrahtung oder eine Untergruppe solcher Elemente, die durch rekonfigurierbare Kopp­ lungen verbunden sind. Für eine Innenschleifen-ISA ist der Schal­ ter 3200 vorzugsweise ausgelegt, um eine parallele Adressenbewe­ gung in einer minimal möglichen Zeit durchzuführen, während auch eine minimale Anzahl von eindeutigen Adressenbewegungs-Crossbar- Kopplungen vorgesehen sind, um Innenschleifen-Operationen zu stützen. Der Eingang des Datenselektors 3250 ist mit dem Ausgang des Schalters 3200 verbunden. Die ersten und zweiten Ausgänge des Datenselektors 3250 sind mit dem Eingang des Feldadressenregister 3252 bzw. des Bestimmungsadressen-Registers 3254 verbunden. Die Steuereingänge des Quellenadressenregisters 3252 und des Bestim­ mungsadressenregister 3254 erhalten AO-Steuersignale über die zweite Steuerleitung 3072. Der Ausgang des Quellenadressenregi­ sters 3252 ist mit dem ersten Eingang des Multiplexers 3260 und dem ersten Eingang des Adressenmultiplxers 3206 verbunden. Dem­ entsprechend ist der Ausgang des Bestimmungsregisters 3254 mit dem zweiten Eingang des Multiplexers 3260 bzw. des Adressenmulti­ plexers 3206 verbunden. Der Eingang des NIPAR-Registers 3232 ist mit dem Ausgang des Multiplexers 3260 verbunden. Der Steuerein­ gang des Registers 3232 erhält AOU-Steuersignale über die zweite Steuerleitung 3072, und der Ausgang des Registers 3232 ist sowohl mit dem Adressenrückkopplungseingang des Schalters 3200 als auch mit dem dritten Eingang des Adressenmultiplexers 3206 verbunden. Die Verbindungen zu den restlichen Eingängen und Ausgängen des Schalters 3200 sind identisch mit dem, die vorher bezüglich Fig. 24 beschrieben worden sind.
Beim Betrieb leitet der Datenselektor 3250 Adressen, die von dem AOU-Crossbar-Schalter 3200 erhalten worden snd, zu dem Quellen­ adressenregister 3252 oder dem Bestimmungsadressenregister 3254 entsprechend den HF-Adressen, die an dem Steuereingang erhalten worden sind. Das Quellenadressenregister 3252 lädt eine an dessen Eingang vorhandene Adresse entsprechend den an dessen Steuerein­ gang vorhandenen AOU-Steuersignale. Das Bestimmungsadressenregi­ ster 3254 lädt eine an dessen Eingang vorhandene Adresse in ana­ loger Weise. Der Multiplexer 3260 leitet eine Adresse, die er von dem Quellenadressenregister 3252 oder dem Bestimmungsadressenre­ gister 3254 erhalten hat, zu dem Eingang des NIPA-Registers 3232 entsprechend der AOU-Steuersignalen, die er an dem Steuereingang erhalten hat. Das Register 3232 lädt eine an dessen Eingang vor­ handene Adresse, inkrementiert oder dekrementiert dessen Inhalt entsprechend den an dem Steuereingang erhaltenen AOU-Steuersigna­ len. Der AOU-Crossbar-Schalter 3200 lenkt selektiv 1) Adressen von dem Speicher 3034 zu dem Datenselektor 3050 und 2) den Inhalt des Registers 3232 zu dem Speicher 3034 oder dem Datenselektor 3250. Der AOU-Crossbar-Schalter 3200 führt eine ganz bestimmte Leitoperation entsprechend den an dem Steuereingang erhaltenen AOU-Steuersignalen. Der Adressenmultiplexer 3206 leitet selektiv den Inhalt des Quellenadressenregisters 3252, des Bestimmungs­ adressenregisters 3254 oder des NIPA-Registers 3232 zu dem AOU- Adressenausgang unter der Anweisung der an dessen Steuereingang erhaltenen AOU-Steuersignalen.
In der bevorzugten Ausführungsform sind das Quellenadressenregi­ ster 3252 und das Bestimmungsadressenregister 3254 jeweils unter Verwendung der Datenspeicherschaltung ausgeführt, die in einem Satz von CL-Blöcken vorhanden ist. Das NIPA-Register 3232 ist vorzugsweise mit Hilfe einer Inkrementier/Dekrementier-Logik und Flip-Flops in einem Satz von CL-Blöcken ausgeführt. Der Datense­ lektor 3250, der Multiplexer 3220 und der Adressenmultiplexer 3206 sind jeweils vorzugsweise unter Verwendung einer Datenselek­ tionsschaltung ausgeführt, die in einem Satz CL-Blöcken vorhanden ist. Schließlich ist der Schalter 3200 vorzugsweise in der Weise ausgeführt, die vorher für eine Innenschleifen-ISA beschrieben ist. Der Fachmann erkennt, daß in bestimmten Anwendungen es vor­ teilhaft sein kann, eine ISA zu benutzen, welche auf einer Innen­ schleifen-AOU-Konfiguration einer Außenschleifen-DOU-Konfigura­ tion oder umgekehrt beruht. Beispielsweise würde eine assoziative String-Suchvorgang-ISA in vorteilhafterweise eine Innenschleifen- DOU-Konfiguration zusammen mit einer Außenschleifen-AOU-Konfigu­ ration ausnutzen. Ferner würde beispielsweise eine ISA zum Durch­ führen von Histogramm-Operationen in vorteilhafter Weise eine Au­ ßenschleifen-DOU-Konfiguration in Verbindung mit einer Innen­ schleifen-AOU-Konfiguration ausnutzen.
Begrenzte rekonfigurierbare Hardware-Ressourcen müssen zwischen jedem Element der DRPU-Einheit 3032 angeordnet werden. Da die re­ konfgurierbaren Hardware-Ressourcen in ihrer Zahl begrenzt sind, beeinflußt die Art und Weise, in welcher sie der IF-Einheit 3060 beispielsweise zugeordnet werden, den maximalen Rechenleistungs­ pegel, der von der DA-Einheit 3062 und der AO-Einheit 3064 er­ reichbar ist. Die Art und Weise, in welcher die rekonfigurierba­ ren Hardware-Ressourcen zwischen der IF-Einheit 3060, der Da-Ein­ heit 3062 und der AO-Einheit 3064 zugeordnet werden, ändert sich entsprechend dem Typ von ISA, der in einem vorgegebenen Moment durchzuführen ist. Wenn die ISA-Komplexität zunimmt, müssen meh­ rere konfiguierbare Hardware-Ressourcen der IF-Einheit 3060 zuge­ ordnet werden, um zunehmend komplexe Decodier- und Steueropera­ tionen zu vereinfachen, die weniger rekonfigurierbare Hardware- Ressourcen übriglassen, die zwischen der DO-Einheit 3063 und der AO-Einheit 3064 verfügbar sind. Folglich nimmt die maximale Re­ chenleistung, die von der DO-Einheit 3062 und der AO-Einheit 3064 erreichbar ist, mit der ISA-Komplexität ab. Im allgemeinen hat eine Außenschleifen-ISA viel mehr Befehle als eine Innenschlei­ fen-ISA, und daher ist deren Ausführung merklich komplexer hin­ sichtlich der Decodier- und Steuerschaltung. Beispielsweise würde eine Außenschleifen-ISA, die einen 64 Bit Universalprozessor de­ finiert, viel mehr Befehle haben als eine Innenschleifen-ISA, die nur auf eine Datenkompression ausgerichtet ist.
In Fig. 26A ist ein Diagramm dargestellt, das eine beispielhafte Zuordnung von rekonfigurierbaren Hardware-Ressourcen zwischen IF- Einheit 3060, der DO-Einheit 3062 und der AO-Einheit 3064 für eine Außenschleifen-ISA zeigt. In der beispielhaften Zuordnung der rekonfigurierbaren Hardware-Ressourcen für die Außenschlei­ fen-ISA sind der IF-Einheit 3060, der DO-Einheit 3062 und der AO- Einheit 3064 jeweils annäherend ein Drittel der verfügbaren re­ konfigurierbaren Hardware-Ressourchen zugeordnet. Für den Fall, daß die DRP-Einheit 3032 zu rekonfigurieren ist, um eine Innen­ schleifen-ISA durchzuführen, werden weniger rekonfigurierbare Hardware-Ressourcen erfordert, um die IF-Einheit 3060 und die AO- Einheit 3064 infolge der begrenzten Anzahl von Befehlen und Arten von Adressenoperationen auszuführen, die von einer Innenschlei­ fen-ISA getragen sind.
In Fig. 26B ist ein Diagramm dargestellt, das eine beispielhafte Zuordnung von rekonfigurierbaren Hardware-Ressourcen zwischen der IF-Einheit 3060, der DO-Einheit 3062 und der AO-Einheit 3064 für eine Innenschleifen-ISA zeigt. In der beispielshaften Zuordnung von rekonfigurierbaren Hardware-Ressourcen für die Innenschlei­ fen-ISA ist die IF-Einheit 3060 unter Verwendung von annhähernd 5 bis 10% der rekonfigurierbaren Hardware-Ressourcen ausgeführt, und die AO-Einheit 3064 ist unter Verwendung von annäherend 10 bis 25% der rekonfigurierbaren Hardware-Ressourcen ausgeführt. Folglich bleiben etwa 70 bis 80% der rekonfigurierbaren Hardware- Ressourcen verfügbar, um die DO-Einheit 3062 auszuführen. Dies wiederum bedeutet, daß der innere Aufbau der DO-Einheit 3062, welche der Innenschleifen-ISA zugeordnet ist, komplexer sein kann und folglich ein deutlich höheres Leistungsvermögen bietet als der interne Aufbau der DO-Einheit 3062, welche der Außenschlei­ fen-ISA zugeordnet ist.
Der Fachmann erkennt, daß die DRP-Einheit 3032 entweder die DO- Einheit 3062 oder die AO-Einheit 3064 in einer alternativen Aus­ führungsform enthalten kann. Beispielsweise braucht in einer al­ ternativen Ausführungsform die DRP-Einheit 3032 nicht eine AO- Einheit 3064 zu enthalten. Die DO-Einheit 3062 würde dann dafür verantwortlich sein, Operationen sowohl bei Daten als auch bei Adressen durchzuführen. Ungeachtet der besonderen, in Betracht gezogenen DRPU-Ausführungsform muß eine endliche Anzahl rekonfi­ gurierbarer Hardware-Ressourchen zugeordnet werden, um die Ele­ mente der DRPU-Einheit 3032 auszuführen. Die rekonfigurierbaren Hardware-Ressourcen sind vorzugsweise so zugeordnet, daß eine op­ timale oder beinahe optimale Leistung für die aktuell in Betracht gezogene ISA relativ zu dem Gesamtraum an verfügbaren rekonfigu­ rierbaren Hardware-Ressourcen erreicht wird.
Der Fachmann erkennt, daß der detaillierte Aufbau des Elements der IF-Einheit 3060, der DO-Einheit 3062 und der AO-Einheit 3064 nicht auf die vorstehend beschriebenen Ausführungsformen be­ schränkt ist. Für eine vorgegebene ISA-ist der entsprechende Kon­ figurations-Datensatz vorzugsweise so definiert, daß der interne Aufbau jedes Elements in der IF-Einheit 3060, der DO-Einheit 3062 und der AO-Einheit 3064 eine Rechenleistung relativ zu den vergü­ baren rekonfigurierbaren Hardware-Ressourcen maximiert.
In Fig. 27 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer T-Einrichtung 3014 dargestellt. Die T-Einrichtung 3014 weist eine zweite lokale Zeitbasiseinheit 3300, eine gemeinsame Interface- und Steuereinheit 3302 und eine Reihe Verbindungs-Ein- /Ausgabeeinheiten 3304 auf. Die zweite lokale Zeitbasiseinheit 3300 hat einen Zeitsteuereingang, welcher den Master-Zeitsteuer­ eingang der T-Einrichtung bildet. Die gemeinsame Interface- Steuereinheit 3302 hat einen Zeitsteuereingang, der mit einem Zeitsteuereingang der zweiten lokalen Zeitbasiseinheit 3300 über eine zweite Zeitsteuersignalleitung 3310 verbunden ist, einen Adressenausgang, welcher mit der Adressenleitung 3344 verbunden ist, einen ersten zweigerichteten Dateneingang, der mit der Spei­ cher-Ein/Ausgabe-Leitung 3044 verbunden ist, einen zweigerichte­ ten Steuereingang, der mit einer externen Steuerleitung 3048 ver­ bunden ist, und einen zweiten zweigerichteten Dateneingang, der mit einem zweigerichteten Dateneingang jeder vorhandenen Ein- /Ausgabeeinheit 3304 über eine Nachrichtenübertragleitung 3312 verbunden ist. Jede Ein/Ausgabeeinheit 3304 hat einen Eingang, welcher mit der GPI-Matrix 3016 über eine Nachrichteneingangslei­ stung 3314 verbunden ist, und einen Ausgang, der mit der GPI-Ma­ trix 3016 über einen Nachrichtenausgangsleitung 3316 verbunden ist.
Die zweite lokale Zeitbasis-Einheit 3300 in der T-Einrichtung 3014 erhält das Master-Zeitsteuersignal von der Master-Zeitbasis­ einheit 3022 und erzeugt ein zweites lokales Zeitsteuersignal. Die zweite lokale Zeitbasiseinheit 3300 liefert das zweite lokale Zeitsteuersignal an die gemeinsame Interface-Steuereinheit 3302, um dadurch eine Zeitsteuerreferenz für die T-Einrichtung 3040 zu schaffen, in welcher sie untergebracht ist. Vorzugsweise ist die zweite lokale Zeitsteuereinheit phasensynchronisiert mit dem Ma­ ster-Zeitsteuersignal. In dem System 1030 arbeitet jede zweite lokale Zeitbasiseinheit 33 der T-Einrichtung vorzugsweise auf derselben Frequenz. Der Fachmann erkennt, daß in einer alternati­ ven Ausführungsform ein oder mehrere zweite lokale Zeitbasisein­ heiten 3300 auch auf unterschiedlichen Frequenzen arbeiten kön­ nen. Die zweite lokale Zeitbasiseinheit 3300 ist vorzugsweise mit Hilfe einer herkömmlichen phasenstarren Frequenzumwandlungsschal­ tung ausgeführt, die eine auf CLB basierende phasenstarre Detek­ tionsschaltung enthält. Der Fachmann erkennt, daß in einer alter­ nativen Ausführungsform die zweite lokale Zeitbasiseinheit 3300 als ein Teil eines Taktverteilungsbaums ausgeführt sein könnte.
Die gemeinsame Interface-Steuereinheit 3302 leitet den Nachrich­ tentransfer zwischen der entsprechenden S-Einrichtung 3012 und einer spezifizierten Ein-/Ausgabeeinheit 3304, wobei eine Nach­ richt einen Befehl und möglicherweise Daten enthält. In der be­ vorzugten Ausführungsform kann die spezifizierte Ein/Ausgabeein­ heit 3304 in einer T-Einrichtung 3014 oder in einer Ein/Ausgabe- T-Einrichtung 3018 intern oder extern zu dem System 3010 unterge­ bracht sein. In der vorliegenden Erfindung ist jede Ein/Ausgabe­ einheit 3304 vorzugsweise einer Verbindungsadresse zugeordnet, die eindeutig die verbindende Ein/Ausgabeeinheit 3304 identifi­ ziert. Die Verbindungsadressen für die Ein/Ausgabeeinheiten 3304 in einer vorgegebenen T-Einrichtung werden in dem entsprechenden Architektur-Beschreibungsspeicher 3101 der S-Einrichtung gespei­ chert.
Die gemeinsame Interface und Steuereinheit 3302 erhält Daten und Befehle von der entsprechenden S-Einrichtung 3012 über die Spei­ cher-Ein-/Ausgabeleitung 3064 bzw. die externe Steuersignallei­ tung 3048. Vorzugsweise enthält jeder empfangene Befehl eine Sollkopplungsadresse und einen Befehlscode, welcher eine ganz be­ stimmte durchzuführende Operationsart spezifiziert. In der bevor­ zugten Ausführungsform enthalten die Operationsarten, die eindeu­ tig durch Befehlscodes codiert sind, 1) Datenleseoperationen, 2) Datenschreiboperationen und 3) einen Unterbrechungssignal-Trans­ fer einschließlich eines Rekonfigurations-Unterbrechungstrans­ fers. Die Sollkopplungsadresse identifiziert eine Sollkopplungs- Ein/Ausgabeeinheit 3304, an welcher Daten und Befehle zu über­ tragen sind. Vorzugsweise überträgt die gemeinsame Interface- Steuereinheit 3302 jeden Befehl und irgendwelche diesbezüglichen Daten als einen Satz auf einem Datenpaket basierender Nachrichten in herkömmlicher Weise, wobei jede Nachricht die Sollkopplungs­ adresse und den Befehlscode enthält.
Außer Daten und Befehle von der entsprechenden S-Einrichtung 3012 zu erhalten, erhält die gemeinsame Interface und Steuereinheit 3302 Nachrichten von jeder der Ein/Ausgabeeinheit 3304, die mit der Nachrichtenübertragungsleitung 3312 verbunden sind. In der bevorzugten Ausführungsform wandelt die Interface und Steuer­ einheit 3302 eine Gruppe von diesbezüglichen Nachrichten in eine einzige Befehls- und Datenfolge um. Wenn der Befehl an die DRP- Einheit 3032 in der entsprechenden S-Einrichtung 3012 gerichtet ist, gibt die Interface- und Steuereinheit 3302 den Befehl über die externe Steuersignalleitung 3048 ab. Wenn der Befehl an den Speicher 3034 in der entsprechenden S-Einrichtung 3012 gerichtet ist, gibt die Interface- und Steuereinheit 3302 einen entspre­ chendes Speichersteuersignal über die externe Steuersignalleitung 3048 und ein Speicheradressensignal über die Speicheradressenlei­ tung 3044 ab. Daten werden über die Speicher-Ein/Ausgabeeinheit 3046 übertragen. In der bevorzugten Ausführungsform weist die In­ terface- und Steuereinheit 3302 eine auf CLB basierende Schaltung auf, um Operationen analog denjenigen auszuführen, die von einer herkömmlichen SCI-Schalteinheit ausgeführt worden sind, die durch ANSI-/IEEE-Norm 1596 bis 1992 definiert ist.
Jede Ein/Ausgabeeinheit 3304 erhält Nachrichten von der Interfa­ ce- und Steuereinheit 3302 und überträgt Nachrichten an andere Ein/Ausgabeeinheiten 3304 über die GPI-Matrix 3016 unter Anwei­ sung von Steuersignalen, die von der Interface- und Steuereinheit 3302 erhalten worden sind. In der bevorzugten Ausführungsform ba­ siert die Ein/Ausgabeeinheit 3304 auf einem SCI-Knoten, wie er durch ASNI/IEEE-Norm 1596-1992 definiert ist. In Fig. 28 ist ein Blockdiagramm einer bevorzugten Ausführungsform einer Kopplungs- Ein/Ausgabeeinheit 3304 dargestellt. Die Einheit 3304 weist einen Adressendecodierer 3320, einen Eingabe-FIFO-Puffer 3322, einen Bypass-FIFO-Puffer 3324, einen Ausgangs-FIFO 3326, und einen Mul­ tiplexer 3328 auf. Der Adressendecodierer 3320 hat einen Eingang, welcher den Eingang einer Kopplungs-Ein/Ausgabeeinheit 3304 bil­ det, einen ersten Ausgang, der mit dem Eingabe-FIFO 3322 verbun­ den ist, und einen zweiten Ausgang, der mit dem Bypass-FIFO 3324 verbunden ist. Das Eingabe-FIFO 3322 hat einen Ausgang, welcher mit der Nachrichtenübertragungsleitung 3312 verbunden ist, um Nachrichten an die gemeinsame Interface- und Steuereinheit 3302 zu übertragen. Das Ausgangs-FIFO 3326 hat einen Eingang, welcher mit der Nachrichtenübertragungsleitung 2312 verbunden ist, um Nachrichten von dem gemeinsamen Interface und einer Steuerschal­ tung 3302 zu erhalten, und einen Ausgang, der mit einem ersten Eingang des Multiplexers 3328 verbunden ist. Der Bypass-FIFO 3326 hat einen Ausgang, der mit einem zweiten Eingang des Multiplexers 3328 verbunden ist. Schließlich hat der Multiplexer 3328 einen Steuereingang, welcher mit der Nachrichtenübertragungsleitung 3312 verbunden ist, und einen Ausgang, der den Ausgang der Kop­ plungs-Ein/Ausgabeeinheit bildet.
Die Ein/Ausgabeeinheit 3304 erhält Nachrichten an dem Eingang des Adressen-Decodierers 3312, welcher bestimmt, ob die Sollkopp­ lungsadresse, die in der empfangenen Nachricht spezifiziert ist, identisch mit der Kopplungsadresse der Kopplungs-Ein/Ausgabeein­ heit 3304 ist, in welcher sie untergebracht ist. Wenn dem so ist, leitet der Adressendecodierer 3320 die Nachricht zu dem Eingabe- FIFO 3322. Anderenfalls leiter der Adressendecodierer 3320 die Nachricht zu dem Bypass-FIFO 3324. In der bevorzugten Ausfüh­ rungsform weist der Adressen-Decodierer 3320 einen Codierer und einen Datenselektor auf, die mit Hilfe lOBs und CLBs ausgeführt sind.
In Fig. 29 ist ein Blockdiagramm einer bevorzugten Ausführungsform der Ein/Ausgabe-T-Einrichtung 3018 dargestellt. Die Ein/Ausgabe- T-Einrichtung 3018 weist eine dritte lokale Zeitbasiseinheit 3360, eine gemeinsame kundenspezifische Interface- und Steuer­ einheit 3362 und eine Ko 29417 00070 552 001000280000000200012000285912930600040 0002019629188 00004 29298pplungs-Ein/Ausgabeeinheit 3304 auf. Die dritte lokale Zeitbasiseinheit 3360 hat einen Zeitsteuereingang, welche den Master-Zeitsteuereingang der Ein/Ausgabe-T-Einrichtung 3018 bildet. Die Ein/Ausgabe-Einheit 3304 hat einen Eingang, wel­ cher mit der GPI-Matrix 3016 über eine Nachrichten-Eingabeleitung 3314 verbunden ist, und einen Ausgang, der mit der GPI-Matrix 3016 über eine Nachrichtenausgabeleitung 3316 verbunden ist. Die gemeinsame kundenspezifische Interface- und Steuereinheit 3362 hat vorzugsweise einen Zeitsteuereingang, der mit einem Zeitsteuerausgang des dritten lokalen Zeitbasiseinheit 3360 über eine dritte Zeitsteuersignalleitung 3370 verbunden ist, einen er­ sten zweigerichteten Dateneingang, der mit einem zweigerichteten Dateneingang der Kopplungs-Ein/Ausgabe-Einheit 3304 verbunden ist, und einen Satz Verbindungen zur Ein/Ausgabe-Vorrichtung 3020. In der bevorzugten Ausführungsform enthält der Satz Verbin­ dungen zu der Ein/Ausgabe-Vorrichtung 3020 einen zweiten zweige­ richteten Dateneingang, der mit einem zweigerichteten Datenein­ gang der Ein/Ausgabe-Vorrichtung 3020 verbunden ist, einen Adres­ senausgang, der mit einem Adresseneingang der Ein/Ausgabe-Vor­ richtung 3020 verbunden ist, und einen zweigerichteten Steuerein­ gang, der mit einem zweigerichteten Steuereingang der Ein/Ausga­ be-T-Vorrichtung 3020 verbunden ist. Der Fachmann erkennt ohne weiteres, daß die Verbindungen zu der Ein/Ausgabe-Vorrichtung 3020 von der Art der Ein/Ausgabe-Vorrichtung 3020 abhängen, mit welcher die gemeinsame kundenspezifische Interface- und Steuer­ einheit 3362 verbunden ist.
Die dritte lokale Zeitbasiseinheit 3360 erhält das Master-Zeit­ steuersignal von der Master-Zeitsteuereinheit 3025 und erzeugt ein drittes lokales Zeitsteuersignal. Die dritte lokale Zeit­ basiseinheit 3360 gibt das dritte lokale Zeitsteuersignal an die Interface- und Steuereinheit 3362 ab, wodurch eine Zeitreferenz für die Ein/Ausgabe-T-Einrichtung 3018 geschaffen ist, in welcher sie untergebracht ist. In der bevorzugten Ausführungsform ist das dritte lokale Zeitsteuersignal phasensynchronisiert mit dem Ma­ ster-Zeitsteuersignal. Jede dritte lokale Zeitbasiseinheit 3360 der T-Einrichtung arbeitet vorzugsweise auf einer identischen Frequenz. In einer alternativen Ausführungsform könnten jedoch auch ein oder mehr dritte lokale Zeitbasiseinheiten 3360 auf ver­ schiedenen Frequenzen arbeiten. Die dritte lokale Zeitbasisein­ heit 3360 ist vorzugsweise mit Hilfe einer herkömmlichen phasen­ starren Freguenzumwandlungsschaltung ausgeführt, die eine auf CLB basierende phasenstarre Detektionsschaltung enthält. Analog zu den ersten und zweiten lokalen Zeitbasiseinheiten 3030 könnte auch die dritte lokale Zeitbasiseinheit 3360 als ein Teil eines Taktverteilungsbaums in einer alternativen Ausführungsform ausge­ führt sein.
Der Aufbau und die Funktionalität der Ein/Ausgabe-Einheit 3304 in der T-Einrichtung 3018 ist vorzugsweise identisch mit derjenigen, die vorstehend für die T-Einrichtung 3014 beschrieben worden ist. Die Ein/Ausgabe-Einheit 3304 in der T-Einrichtung 3018 ist eine eindeutige Verbindungsadresse analog derjenigen für jede Verbin­ dungs-Ein/Ausgabe-Einheit 3304 in jeder vorgegebenen T-Einrich­ tung 3014 zugeteilt.
Die gemeinsame kundenspezifische Interface- und Steuereinheit 3362 leitet den Nachrichtentransfer zwischen der Ein-Ausgabevor­ richtung 3020, an welche sie gekoppelt ist, und der Verbindungs- Ein/Ausgabe-Einheit 3304, wobei eine Nachricht einen Befehl und möglicherweise Daten enthält. Die Interface- und Steuereinheit 3362 erhält Daten und Befehle von der entsprechenden Ein/Ausgabe- Vorrichtung 3020. Vorzugsweise enthält jeder Befehl, der von der Ein/Ausgabe-Vorrichtung 3020 empfangen worden ist, eine Sollkopp­ lungsadresse und einen Befehlcode, der eine ganz bestimmte durch­ zuführende Operationsart spezifiziert. In der bevorzugten Ausfüh­ rungsform enthalten die Operationsarten, die eindeutig durch Be­ fehlcodes identifiziert sind, 1) Datenanforderung, 2) Datenüber­ tragungsbestätigung und 3) einen Unterbrechungssignal-Transfer. Die Sollverbindungsadresse identifiziert eine Sollverbindungs- Ein/Ausgabe-Einheit 3304 in dem System 3010, in welche Daten und Befehle übertragen sind. Vorzugsweise überträgt die gemeinsame Interface- und Steuereinheit 3062 jeden Befehl und irgendwelche diesbezüglichen Daten als einen Satz auf einem Datenpaket basie­ render Nachrichten in herkömmlicher Weise, wobei jede Nachricht eine Sollverbindungsadresse und den Befehlscode enthält.
Zusätzlich zum Empfangen von Daten und Befehlen von der entspre­ chenden Ein/Ausgabe-Vorrichtung 3020 erhält die gemeinsame kun­ denspezifische Interface- und Steuereinheit 3362 Nachrichten von einer zugeordneten Verbindung-Ein/Ausgabe-Einheit 3304. In der bevorzugten Ausführungsform wandelt die Interface- und Steuer­ einheit 3363 eine Gruppe von verwandten Nachrichten in eine ein­ zige Befehl- und Datenfolge entsprechend den Kommunikationsproto­ kollen, die von der entsprechenden Ein/Ausgabe-Vorrichtung 3020 getragen sind. In der bevorzugten Ausführungsform weist die ge­ meinsame kundenspezifische Interface- und Steuereinheit 3362 eine Steuereinheit für die auf CLB basierende Ein/Ausgabe-Einheit auf, die mit der auf CLB asierenden Schaltung verbunden ist, um Ope­ rationen durchzuführen, welche analog denjenigen sind, die von einer herkömmlichen SCI-Schalteinheit durchgeführt worden sind, wie durch ANSI/IEEE-Norm 1596-1992 definiert ist.
Die GPI-Matrix 3016 ist ein herkömmliches Verbindungsnetz, wel­ ches eine parallele Punkt-zu-Punkt-Nachrichtenlenkung zwischen Verbindungs-Ein/Ausgabe-Einheiten 3304 erleichtert. In der bevor­ zugten Ausführungsform ist die GPI-Matrix 3016 ein auf einer Ver­ drahtung basierendes, statisches k-näres (k-ary-) Würfel-Verbin­ dungsnetz. In Fig. 30 ist ein Blockdiagramm einer beispielshaften Ausführungsform einer universellen Verbindungs-GPI-Matrix 3016 dargestellt. In Fig. 30 ist die Verbindungs-GPI-Matrix 3016 ein toroid- bzw. ringförmiges Verbindungsmachennetz, über dem ent­ sprechend ein k-närer 2 Würfel, der eine Anzahl erster Übertra­ gungskanäle 3380 und eine Anzahl zweiter Übertragungskanäle 3382 aufweist. Jeder erster Übertragungskanal 3380 enthält eine Anzahl Knotenverbindungsstellen 3384, ebenso jeder zweite Übertragungs­ kanal 3382. Jede Verbindungs-Ein/Ausgabeeinheit 3304 in dem Sy­ stem 3010 ist vorzugsweise mit der Verbindungs-GPI-Matrix 3014 verbunden, so daß die Nachrichten-Eingangsleitung 3314 und die Nachrichten-Ausgangsleitung 3310 aufeinanderfolgende Knotenver­ bindungsstellen 3384 in einem vorgegebenen Übertragungskanal 3380, 3382 verbinden. In der bevorzugten Ausführungsform enthält jede T-Einrichtung 3014 eine Verbindungs-Ein/Ausgabe-Einheit 3304, die mit dem ersten Verbindungskanal 3380 verbunden ist, und eine Verbindungs-Ein-/Ausgabeeinheit 3304, die mit dem zweiten Verbindungskanal 3382 in der vorstehend beschriebenen Weise ver­ bunden ist. Die gemeinsame Interface- und Steuereinheit 3302 in der T-Einrichtung 3014 erleichtert vorzugsweise das Leiten von Information zwischen der mit dem ersten Verbindungskanal verbun­ denen Ein/Ausgabe-Einheit 3304 und der mit dem zweiten Verbin­ dungskanal 3382 verbundenen Ein/Ausgabeeinheit 3304. Für eine T- Einrichtung 3014, die eine Verbindungs-Ein/Ausgabe-Einheit 3304 hat, die mit dem ersten als 3380c bezeichenten Übertragungskanal verbunden ist, und eine Verbindungs-Ein/Ausgabe-Einheit 3304 hat, die mit dem zweiten als 3382c bezeichneten Übertragungskanal in Fig. 30 verbunden ist, erleichtert diese gemeinsame Interface- und Steuereinheit 3302 der T-Einrichtung, ein Informationslenken zwi­ schen dieser Gruppe von ersten und zweiten Übertragungskanälen 3380c, 3382c.
Die Verbindungs-GPI-Matrix 3016 erleichter folglich das Leiten von vielfachen Nachrichten in paralleler Form zwischen Verbin­ dungs-Ein/Ausgabeeinheiten 3304. Für die zweidimensionale GPI-Ma­ trix 3016, die in Fig. 30 dargestellt ist, enthält jede T-Einrich­ tung 3014 vorzugsweise eine einzige Verbindungs-Ein/Ausgabe-Ein­ heit 3304 für den ersten Übertragungskanal 3380 und eine einzige Verbindungs-Ein/Ausgabe-Einheit 3304 für den zweiten Verbindungs­ kanal 3382. Der Fachmann erkennt, daß nur eine Ausführungsform, in welcher die Verbindungs-GPI-Matrix 3016 eine Anzahl Dimensio­ nen hat, die größer als zwei ist, die T-Einrichtung 3014 vorzugs­ weise mehr als zwei Verbindungs-Ein/Ausgabe-Einheiten 3304 ent­ hält. Vorzugsweise ist die Verbindungs-GPI-Matrix 3016 als eine k-närer2-Würfel (k-ary 2-cube) mit einer 16 Bitdatenweggröße aus­ geführt.
In der vorhergehenden Beschreibung sind verschiedene Elemente der vorliegenden Erfindung vorzugsweise unter Verwendung von rekonfi­ gurierbaren Hardware-Ressourcen ausgeführt. Die Hersteller von umprogrammierbaren Logikvorrichtungen stellen überlicherweise veröffentliche Richtlinien zur Verfügung, um herkömmliche digita­ le Hardware mit Hilfe von umprogrammierbaren oder rekonfigurier­ baren Hardware-Ressourcen auszuführen. Beispielsweise enthält das Xilinx-Buch "Programmierbare Logik-Daten" von 1994 (Xilinx,Inc., San Jose, CA) Anwendungshinweise, wie die folgenden: Anwendungs­ hinweis XAPP 005.002 "Register-Based FIFO"; Anwendungshinweis XAPP 044.00 "High-Performance RAM-Based FIFO2; Anwendungshinweis XAPP 013.001, "Using the Dedicated Carry Logic in the XC4000"; Anwendungshinweis XAPP 018.000 "Estimating the Performance of XC4000 Adders and Counters", Anwendungshinweis: XAPP 028.001, "Frequency/Phase Comparator for Phase-Locked Loops"; Anwendungs­ hinweis: XAPP31.000 "Using the XC4000 RAM Capability", Anwen­ dungshinweis: XAPP 036.001 "Four-Port DRAM Controller...", und Anwendungshinweis XAPP 039.001 "18-Bit Pipelinded Accumulator". Zusätzliches Material, das von Xilinx veröffentlicht worden ist, enthält Merkmale in "XCELL, The Quaterly Journal for Xilinx Pro­ grammable Logic Users". Beispielseise scheint ein Artikel, der sich im einzelnen mit der Ausführung schneller ganzzahliger Mul­ tiplikatoren befaßt, in Ausgabe 14, der Ausgabe vom 3. Quartal 1994.
Das hier beschriebene System 3010 ist eine skalierbare, parallele Computerarchitektur, um dynamisch Mehrfach-ISAs auszuführen. Eine einzelne S-Einrichtung 3012 kann ein ganzes Computerprogramm selbständig ablaufen lassen, unabhängig von einer anderen S-Ein­ richtung 3012 oder von externen Hardware-Ressourcen, wie ein Host-Computer. Auf einer einzelnen S-Einrichtung 3012 werden meh­ rere ISAs zeitlich nacheinander während einer Programmdurchfüh­ rung entsprechend Rekonfigurationsunterbrechungen und/oder ins Programm eingebetteten Rekonfigurationsanweisungen ausgeführt. Da das System 3010 vorzugsweise mehrere S-Einrichtungen 3012 ent­ hält, werden vorzugsweise mehrere Programme gleichzeitig durchge­ führt, wobei jedes Programm unabhängig sein kann. Folglich wer­ den, da das System 3010 vorzugsweise mehrere S-Einrichtungen 3012 enthält, mehrere IS-Architekturen immer gleichzeitig (d. h. paral­ lel) außer während der System-Initialisierung oder Rekonfigura­ tion durchgeführt. Das heißt, in einer vorgegebenen Zeit werden mehrere Sätze von Programmbefehlen gleichzeitig durchgeführt, wo­ bei jeder Satz von Programmbefehlen gemäß einer entsprechenden IS-Architektur durchgeführt wird. Jede derartige IS-Architektur kann eindeutig sein.
S-Einrichtungen 3012 kommunizieren miteinander und mit Ein/Ausga­ bevorrichtungen 3020 über die Gruppe von T-Einrichtungen 3014, die Verbindungs-GPI-Matrix 3016 und jede Ein/Ausgabe-T-Einrich­ tung 3018. Obwohl jede S-Einrichtung 3012 ein ganzer Computer in sich ist, der in der Lage ist, einen unabhängigen Betrieb durch­ zuführen, kann eine S-Einrichtung 3012 als eine Master-S-Einrich­ tung 3012 für andere S-Einrichtungen 3012 oder das ganze System fungieren, das Daten und/oder Befehle zu anderen S-Einrichtungen 3012, zu einer oder mehreren T-Einrichtungen 3016, einer oder mehreren Ein/Ausgabe-T-Einrichtungen 3018 und ein oder mehreren Ein/Ausgabe-Einrichtungen 3022 sendet.
Das System 3010 gemäß der Erfindung ist folglich insbesondere bei Problemen verwendbar, die sowohl räumlich als zeitlich in ein oder mehrere daten-parallele Unterprobleme aufgeteilt werden kön­ nen, beispielsweise in eine Bildverarbeitung, eine medizinische Datenverarbeitung, eine kalibrierte Farbanpassung, eine Datenba­ sis-Berechnung, eine Dokumenten-Verarbeitung, assoziative Such­ einrichtungen und Netzwerk-Server. Für Rechenprobleme mit einem großen Array von Operanden ist eine Daten-Parallelität vorhanden, wenn Algorithen angewendet werden können, um so eine effektive Rechenbeschleunigung durch parallele Rechentechniken anzubieten. Probleme bei der parallelen Datenverarbeitung besitzen eine be­ kannte Komplexität, nämlich O(nk). Der Wert von k ist problemab­ hängig, beispielsweise k = 2 für eine Bildverarbeitung und k = 3 für medizinische Datenverarbeitung. Bei der vorliegenden Erfin­ dung werden die einzelnen S-Einrichtungen bzw. Geräte 3012 vor­ zugsweise verwendet, um eine Datenparallelität auf dem Niveau von Programmbefehlsgruppen auszunutzen. Da das System 3010 mehrere S- Einrichtungen 3012 enthält, wird das System 3010 vorzugsweise benutzt, um eine Datenparallelität auf dem Niveau von ganzen Pro­ grammsätzen auszunutzen.
Das System 3010 gemäß der Erfindung sorgt für sehr viel Rechen­ leistung, da es in der Lage ist, die Befehls-Verarbeitungshardwa­ re in jede S-Einrichtung 3012 vollständig zu rekonfigurieren, um die Rechenleistung solcher Hardware relativ zu Rechenerfordernis­ sen zu einem vorgegebenen Zeitpunkt zu optimieren. Jede S-Ein­ richtung 3012 kann unabhängig von einer anderen S-Einrichtung 3012 rekonfiguriert werden. Das System 3010 behandelt in vorteil­ hafter Weise jeden Konfigurations-Datensatz, und folglich jede IS-Architektur, wie ein programmiertes Interface zwischen Soft­ ware und der hier beschriebenen rekonfigurierbaren Hardware. Die Architektur der vorliegenden Erfindung erleichtert zusätzlich das Strukturieren von rekonfigurierbarer Hardware auf hohem Niveau, um selektiv die Angelegenheiten aktueller System an Ort und Stel­ le zu adressieren, einschließlich Verhalten, bei welchen eine Un­ terbrechung eine Befehlsverarbeitung beeinflußt, die Notwendig­ keit für eine deterministische Latenzantwort, um eine Echtzeit- Verarbeitung und Steuerfähigkeit zu erleichtern, und die Notwen­ digkeit für wählbare Antworten bei einer Fehler-Behandlung.
Im Unterschied zu anderen Computer-Architekturen lehrt die vor­ liegende Erfindung jederzeit die maximale Ausnutzung von Silizi­ um-Ressourcen. Die vorliegende Erfindung sorgt für ein paralleles Computersystem, das jederzeit auf jede gewünschte Größe vergrö­ ßert werden kann, sogar auf Tausende von S-Einrichtungen 12. Eine derartige architektonische Skalierbarkeit ist möglich, da eine auf S-Geräten basierende Befehlsverarbeitung absichtlich von ei­ ner auf T-Einrichtungen basierenden Datenkommunikation getrennt ist. Dieses Paradigma-Befehlsverarbeitung Datenkommunikation- Trennung ist äußerst günstig für eine parallele Datenberechnung. Der interne Aufbau einer S-Geräte-Hardware ist vorzugsweise für den zeitlichen Durchlauf von Befehlen optimiert, während der in­ terne Aufbau einer T-Geräte-Hardware vorzugsweise für eine effi­ ziente Datenkommunikation optimiert ist. Die Menge an S-Einrich­ tungen bzw. -Geräte 3012 und die Menge an T-Einrichtungen bzw. - Geräte sind jeweils eine trennbare, konfigurierbare Komponente in einer Raum-Zeitaufteilung einer daten-parallelen Rechenarbeit.
Mit Hilfe der vorliegenden Erfindung kann zukünftige rekonfigu­ rierbre Hardware ausgenutzt werden, um Systeme mit noch größeren Rechenkapazitäten zu bauen, wobei der hier beschriebene Gesamt­ aufbau erhalten bleibt. Mit anderen Worten, das System 10 gemäß der Erfindung ist technologisch skalierbar. Praktisch brauchen alle gegenwärtig verfügbaren, rekonfigurierbaren Logik-Vorrich­ tungen auf speicher-basierender CMOS-(Komplementärer Metalloxid- Halbleiter)Technologie. In künftigen Systemen würde eine rekonfi­ gurierbare logische Vorrichtung, die verwendet ist, um eine S- Einrichtung auszuführen, eine Aufteilung von internen Hardware- Ressourcen gemäß den hier beschriebenen Innenschleifen- und Au­ ßenschleifen-ISA-Parametriken haben. Größere rekonfigurierbare logische Vorrichtungen bieten einfach die Möglichkeit, mehr da­ tenparallele Rechenarbeit in einer einzigen Vorrichtung durchzu­ führen. Beispielsweise würde eine größere funktionelle Einheit 3194 in der zweiten beispielshaften Ausführungsform der DO-Ein­ heit 3063, wie wie vorstehend anhand von Fig. 23B beschrieben ist, größere Abbildungs-Kerngrößen unterbringen. Der Fachmann erkennt, daß die technologische Skalierbarkeit, welche durch die vorlie­ gende Erfindung geschaffen ist, weder auf auf CMOS-basierende Vorrichtungen noch auf FPGA basierende Ausführungen beschränkt ist. Folglich schafft die Erfindung eine technologische Skalier­ barkeit ungeachtet der speziellen Technologie, die verwendet ist, um eine Rekonfigurierbarkeit oder Umprogrammierbarkeit zu schaf­ fen.
In Fig. 31A und 31B ist ein Ablaufdiagramm eines bevorzugten Ver­ fahrens für ein skalierbares, paralleles, dynamisch rekonfigu­ rierbares Berechnen dargestellt. Vorzugsweise wird das in Fig. 31A und 31B dargestellte Verfahren in jeder der S-Einrichtungen 3012 in dem System 3010 durchgeführt. Das bevorzugte Verfahren beginnt beim Schritt 4000 in Fig. 31A mit der Rekonfigurationslogik 3104, die einen Konfgurations-Datensatz wieder auffindet, der einer ISA entspricht. Als nächstes konfiguriert beim Schritt 4002 die Re­ konfigurationslogik 3104 jedes Element in der IF-Einheit 3060 der DO-Einheit 3062 und der AO-Einheit 3064 entsprechend dem wieder­ aufgefundenen Konfigurations-Datensatz beim Schritt 4002, wodurch eine DRPU-Hardware-Organisation für die Ausführung der aktuellen in Betracht gezogenen ISA erzeugt wird. Im Anschluß an den Schritt 4002 findet die Unterbrechungslogik 3106 die Unterbre­ chungsantwortsignale wieder, die in dem Architektur-Beschrei­ bungsspeicher 3101 gespeichert sind, und erzeugt einen entspre­ chenden Satz von Übergangssteuersignalen, welche festlegen, wie die aktuelle DRPU-Konfiguration auf Unterbrechungen beim Schritt 4004 anspricht. Das ISS 3100 initialisiert anschließend beim Schritt 4006 eine Programm-Zustandsinformation, worauf das ISS 3100 einen Befehlausführungszyklus beim Schritt 4008 initiali­ siert.
Als nächstes bestimmt das ISS 3100 oder die Unterbrechungslogik 3106, ob Rekonfiguration erforderlich ist. Das ISS 3100 legt fest, daß Rekonfiguration in dem Fall erforderlich ist, daß eine Rekonfigurationsanweisung während einer Programmausführung ge­ wählt wird. Die Unterbrechungslogik 3106 bestimmt, daß Rekonfigu­ rations entsprechend einer Rekonfigurations-Unterbrechung erfor­ derlich ist. Wenn Rekonfiguration erforderlich ist, geht das be­ vorzugte Verfahren auf Schritt 4012 über, bei welchem ein Rekon­ figurations-Handhabungsprogramm Programmzustandsinformation ret­ tet. Vorzugsweise enthält die Programmzustandsinformation eine Referenz zu dem Konfigurationsdatensatz, welcher der aktuellen DRPU-Konfiguration entspricht. Nach dem Schritt 4012 kehrt das bevorzugte Verfahren auf den Schritt 4000 zurück, um einen näch­ sten Konfigurations-Datensatz aufzufinden, auf den durch die Re­ konfigurations-Anweisung oder die Rekonfigurations-Unterbrechung Bezug genommen ist.
Für den Fall, daß die Rekonfiguration beim Schritt 4010 nicht er­ forderlich ist, bestimmt die Unterbrechungslogik 3106, ob eine Nicht-Rekonfigurations-Unterbrechung eine Wartung beim Schritt 4014 erfordert. Wenn dem so ist, bestimmt das ISS 3100 als näch­ stes beim Schritt 4020, ob ein Zustandsübergang von dem aktuellen ISS-Zustand in dem Befehlsausführungszyklus in den Unterbre­ chungs-Servicezustand basierend auf den Übergangssteuersignalen zulässig ist. Wenn ein Zustandsübergang in den Unterbrechungs- Service-Zustand nicht zulässig ist, geht das ISS 3100 in den nächsten Zustand in dem Befehlsausführungszyklus über und kehrt auf den Schritt 4020 zurück. In dem Fall, daß Übergangssteuer­ signale einen Zustandsübergang von dem aktuellen ISS-Zustand in dem Befehlsausführungszyklus in den Unterbrechungservice-Zustand erlauben, geht ISS 3100 als nächstes beim Schritt 4024 in den Un­ terbrechungs-Service-Zustand über. Beim Schritt 4024 stellt das ISS 3100 eine Programmzustandsinformation sicher und führt Pro­ grammbefehle für ein Warten der Unterbrechung aus. Im Anschluß an den Schritt 4024 kehrt das bevorzugte Verfahren auf den Schritt 4008 zurück, um den aktuellen Befehlsausführungszyklus wieder aufzunehmen, wenn er noch nicht beendet worden ist, oder um einen nächsten Befehlsausführungszyklus zu initiieren.
Für den Fall, daß keine Nicht-Konfigurations-Unterbrechung eine Wartung beim Schritt 4014 erfordert, geht das bevorzugte Verfah­ ren auf den Schritt 4016 über und stellt fest, ob die Durchfüh­ rung des aktuellen Programms beendet ist. Wenn die Durchführung des aktuellen Programms noch andauert, kehrt das bevorzugte Ver­ fahren auf den Schritt 4008 zurück, um einen anderen Befehlsaus­ führungszyklus zu initiieren. Andererseits ist das bevorzugte Verfahren beendet.
Die Lehren der vorliegenden Erfindung unterscheiden sich deutlich von anderen Systemen und Verfahren für ein umprogrammierbares oder rekonfigurierbares Rechnen. Insbesondere ist die vorliegende Erfindung nicht äquivalent mit einer herunterladbaren Mikrocode- Architektur, da solche Architekturen im allgemeinen auf nicht-re­ konfigurierbare Steuereinrichtung und eine nicht-rekonfigurierba­ re Hardware angewiesen sind. Die vorliegende Erfindung unter­ scheidet sich also deutlich von einem angeschlossen rekonfiguier­ baren Prozessor-(ARP-)System, in welchem eine Gruppe von rekon­ figurierbaren Hardware-Ressourcen mit einem nicht-rekonfigurier­ baren Host-Prozessor oder Host-System verbunden ist. Die ARP-Ein­ richtung hängt von dem Host ab, um gewisse Programmbefehle durch­ zuführen. Daher wird eine Menge verfügbarer Silizium-Ressourcen nicht maximal über den Zeitrahmen der Programmdurchführung ge­ nutzt, da Silizium-Ressourcen bei der ARP-Einrichtung oder dem Host unbenutzt sind oder ineffizient genutzt werden, wenn der Host bzw. die ARP-Einrichtung mit Daten arbeitet. Im Unterschied hierzu ist jede S-Einrichtung 3012 ein unabhängiger Rechner, in welchem ganze Programme ohne weiteres ausgeführt werden können. Mehrere S-Einrichtungen 3012 führen vorzusweise gleichzeitig Pro­ gramme durch. Die vorliegende Erfindung lehrt daher die ständige maximale Ausnutzung von Silizium-Ressourcen sowohl für einzelne Programme, die von einzelnen S-Einrichtungen 3012 durchgeführt werden oder von mehreren Programmen, die von dem gesamten System 3010 ausgeführt werden.
Eine ARP-Einrichtung stellt einen Rechenbeschleuniger für einen ganz bestimmten Algorithmus in einer ganz bestimmten Zeit zur Verfügung und ist als ein Satz von Verknüpfungsgliedern auge­ führt, die optimal bezüglich dieses spezifischen Algorithmus mit­ einander verbunden sind. Die Verwendung von rekonfigurierbaren Hardware-Ressourcen für universelle Operationen, wie eine verwal­ tende Befehlsausführung, ist bei ARP-System vermieden. Darüber hinaus behandelt ein ARP-System nicht eine vorgegebene Menge von miteinander verbundenen Verknüpfungsgliedern bzw. Gates als eine ohen weiteres wieder verwendbare Ressource. Im Gegensatz, die vorliegende Erfindung lehrt eine dynamisch rekonfigurierbare Ver­ arbeitungseinrichtung, die für ein effizientes Management einer Befehlsausführung gemäß einem Befehlsausführungsmodells konfigu­ riert ist, das am besten für die Rechenerfordernisse zu einem ganz bestimmten Zeitpunkt ausgelegt ist. Jede S-Einrichtung 3012 weist eine Vielzahl ohne weiteres wiederverwendbarer Ressourcen, beispielsweise das ISS 3100, die Unterbrechungslogik 3106 und die Speicher/Ausrichtlogik 3152 auf. Die vorliegende Erfindung lehrt die Verwendung von rekonfigurierbaren logischen Ressourcen auf dem Niveau von LCBs- oder IOBs-Gruppen und rekonfigurierbarer Verbindungen, jedoch nicht auf dem Niveau von miteinander verbun­ dene Gates. Die vorliegende Erfindung lehrt folglich die Verwen­ dung von rekonfigurierbaren höherwertigen logischen Designkon­ strakts, die zum Durchführen von Operationen der ganzen Klassen von Rechenproblemen verwendbar sind, und lehrt nicht ein brauch­ bares Verbindungsschema, das für einen einzigen Algorithmus ver­ wendbar ist.
Im allgemeinen sind ARP-Systeme auf ein Übertragen eines ganz be­ stimmten Algorithmus in einen Satz von miteinander verbundenen Gates gerichtet. Einige ARP-System versuchen, hochwertige Befehle in einer optimalen Hardware-Konfiguration zu compilieren, welches im allgemeinen ein hartes NP-Problem ist. Im Unterschied hierzu lehrt die Erfindung die Verwendung eines Compilers für ein dyna­ misch rekonfigurierbares Berechnen, das hochwertige Programmbe­ fehle in Assembler-Sprachenbefehle gemäß einer variablen ISA auf sehr unkomplizierte Weise compiliert.
Eine ARP-Einrichtung ist im allgemeinen nicht in der Lage, ihre eigenes Host-Programm als Daten zu behandeln oder es selbst zu kontextualisieren. Im Unterscheid hierzu kann jede S-Einrichtung in dem System 3010 ihre eigenen Programme als Daten behandeln, und folglich ohne weiteres selbst kontextualisieren. Das System 3010 kann ohne weiteres sich selbst durch die Ausführung seiner eigenen Programme simmulieren. Die vorliegende Erfindung hat zu­ sätzlich die Fähigkeit, ihren eigenen Compiler zu compilieren.
In der vorliegenden Erfindung kann ein einziges Programm eine erste Gruppe von Befehlen, die zu einem ersten ISA gehören, eine zweite Gruppe von Befehlen, die zu einer zweiten ISA gehören, eine dritte Gruppe von Befehlen, die zu noch einer weiteren ISA gehören, usw. enthalten. Die hier beschriebene Architektur führt jede derartige Gruppe von Befehlen mit Hilfe von Hardware durch, die hinsichtlich Durchlaufzeit konfiguriert ist, um die ISA durchzuführen, zu welcher die Befehle gehören. Keine bekannten Systeme oder Methoden bieten ähnliche Lehren an.
Die Erfindung lehrt ferner ein rekonfigurierbares Unterbrechungs­ schema, bei welchem Unterbrechungslatenz, Unterbrechungspräzision und ein programmierbares Zustandsübergangs-Freigeben gemäß der aktuellen, in Betracht gezogenen ISA sich ändern kann. Keine an­ logen Lehren werden in anderen Computersystemen gefunden. Die vorliegende Erfindung lehrt zusätzlich ein Computersystem mit ei­ ner rekonfigurierbaren Datenweg-Bitbreite, einer Adressen-Bit­ breite und rekonfigurierbare Steuerzeilen-Breiten im Unterschied zu herkömmlichen Computersystemen.

Claims (32)

1. System (10) zum Erzeugen eines Taktsignals mit
  • 1. einer Mastereinheit (12) mit einem Ausgang, um einen Satz sinusförmiger Zeitreferenzsignale zu erzeugen, die die gleiche Frequenz und einen festen relativen Phasenversatz aufweisen, und
  • 2. mindestens einer lokalen Einheit (22) mit einem Eingang, die mit dem Ausgang der Mastereinheit (12) verbunden ist, um ein erstes lokales Zeitsteuersignal (24) mit Hilfe eines ersten sinusförmigen Zeitreferenzsignals in dem Satz sinusförmi­ ger Zeitreferenzsignale zu erzeugen,
wobei die Mastereinheit (12) eine Phasenregelschleife (PLL) aufweist.
2. System nach Anspruch 1, bei dem die Mastereinheit (12) einen Masteroszillator (70) umfaßt, der einen Ausgang hat und der ein Originalfrequenz-Referenzsignal erzeugt, und bei dem die Phasenregelschleife umfaßt:
  • 1. einen Phasendetektor (74) mit einem ersten und zweiten Eingang und einem Ausgang, wobei der erste Eingang des Phasendetektors (74) mit dem Ausgang des Master-Oszillators (70) verbunden ist;
  • 2. ein Schleifenfilter (76) mit einem Eingang und einem Ausgang, wobei der Eingang des Schleifenfilters (76) mit dem Ausgang des Phasendetektors (74) verbunden ist, und
  • 3. einen Sekundäroszillator (72) mit einem Steuereingang und zumindest einem Ausgang, wobei der Steuereingang des Sekundäroszillators (72) mit dem Aus­ gang des Schleifenfilters (76) verbunden ist und der Ausgang des Sekundäroszil­ lators (72) mit dem zweiten Eingang des Phasendetektors (74) verbunden ist, und wobei der zumindest eine Ausgang des Sekundäroszillators (72) zumindest ein sinusförmiges Zeitreferenzsignal ausgibt.
3. System nach Anspruch 1 oder 2, wobei der Satz sinusförmiger Zeitreferenz­ signale ein erstes und ein zweites sinusförmiges Zeitreferenzsignal umfaßt.
4. System nach Anspruch 3, wobei der feste Phasenversatz 90° beträgt.
5. System nach einem der vorhergehenden Ansprüche, wobei der Sekundäroszil­ lator (72) einen Armstrong-HF-Oszillator (62) aufweist, der mit einer eine gemeinsame Basis aufweisenden Rückkopplungsschaltung verbunden ist, der Sekundäroszillator (72) ein erstes sinusförmiges Signal an einem ersten Ausgang und ein zweites sinusförmiges Signal an einem zweiten Ausgang erzeugt, und die ersten und zweiten sinusförmigen Signale eine Quadratur-Phasenbeziehung haben.
6. System nach einem der vorhergehenden Ansprüche, wobei die mindestens eine lokale Einheit (22) eine Phasenregelschleife (204, 206, 202) zum Erzeugen eines lokalen Referenzsignals aufweist, welches zu einem sinusförmigen Zeitreferenzsignal in dem Satz sinusförmiger Zeitreferenzsignale phasenstarr ist.
7. System nach Anspruch 1, wobei die mindestens eine lokale Einheit (22) auf weist:
einen Offset-Oszillator (208) mit einem Ausgang und
einen Mischer (400) mit einem ersten und einem zweiten Eingang sowie einem Ausgang, wobei der erste Eingang (236) des Mischers (400) mit dem Ausgang der Ma­ stereinheit (12) verbunden ist, der zweite Eingang des Mischers (400) mit dem Aus­ gang des Offset-Oszillators (208) verbunden ist, und der Ausgang des Mischers (400) mit einem Ausgang der lokalen Einheit (22) verbunden ist.
8. System nach Anspruch 7, wobei die mindestens eine lokale Einheit (22) ferner einen Diplexer (210) mit einem Eingang und einem ersten sowie einem zweiten Aus­ gang aufweist, wobei der Eingang des Diplexers (210) mit dem Ausgang des Mischers (400) verbunden ist, der erste Ausgang des Diplexers (210) mit einem Eingang eines Mischerabschlusses (214) verbunden ist, und der zweite Ausgang des Diplexers (210) mit dem Ausgang (24) der lokalen Einheit (22) verbunden ist, und wobei der Diplexer (210) ein niederfrequentes Mischproduktsignal (1p) an seinem ersten Ausgang und ein hochfrequentes Mischproduktsignal (hp) an seinem zweiten Ausgang (24) erzeugt.
9. System nach Anspruch 7 oder 8, wobei die mindestens eine lokale Einheit (22) ferner einen Begrenzer (216) mit einem Eingang und einem Ausgang aufweist, wobei der Eingang des Begrenzers (216) mit dem Ausgang des Diplexers (210) verbunden ist, und am Ausgang des Begrenzers (216) das erste lokale Zeitsteuersignal, vorzugsweise rechteckförmig, abgegeben wird.
10. System nach einem der vorhergehenden Ansprüche, wobei die mindestens eine lokale Einheit (22) ferner aufweist:
einen Phasen- und Frequenzdetektor (230) mit einem ersten und einem zweiten Eingang und einem Ausgang, wobei der Ausgang des Phasen- und Frequenzdetektors (230) mit einem Steuereingang des Offset-Oszillators (208) verbunden ist;
einen ersten Frequenzteiler (220) mit einem Eingang, welcher mit dem Ausgang des Diplexers (210) verbunden ist und mit einem Ausgang, der mit dem ersten Eingang des Phasen- und Frequenzdetektors (230) verbunden ist, und
einen zweiten Frequenzteiler (222) mit einem Eingang, der mit dem Ausgang der Mastereinheit (12) verbunden ist, und mit einem Ausgang, der mit dem zweiten Eingang des Phasen- und Frequenzdetektors (230) verbunden ist.
11. System nach Anspruch 10, wobei der Phasen- und Frequenzdetektor (230) einen Teil einer umprogrammierbaren Logikvorrichtung (FPGA) aufweist.
12. System nach Anspruch 10 oder 11, wobei der erste und/oder zweite Frequenz­ teiler (220, 222) einen Teil einer umprogrammierbaren Logikvorrichtung (FPGA) aufweist.
13. System zum Erzeugen eines kombinierten Takt- und Nachrichtensignals, mit
  • 1. einer Mastereinheit (12) mit einem Oszillator (72), um einen Satz sinusför­ miger Zeitreferenzsignale mit gleichen Frequenzen und festem relativen Phasen­ versatz zu erzeugen, mit einem Modulator (32) zum Ändern der Amplitude von zumindest einem sinusförmigen Zeitreferenzsignal in dem Satz sinusförmiger Zeitreferenzsignale entsprechend einem Steuersignal (40), und mit einem Ausgang, sowie
  • 2. mindestens einer lokalen Einheit (22) mit einem Offset-Oszillator (208) zum Erzeugen eines versetzten Signals, mit einem Mischer (210) zum Erzeugen eines lokalen Zeitsteuersignals (24) mit Hilfe des versetzten Signals und eines sinusförmigen Zeitreferenzsignals in der Gruppe sinusförmiger Zeitreferenz­ signale, mit einem ersten Frequenzteiler (220) zum Schaffen einer frequenzge­ teilten Version des lokalen Zeitsteuersignals, mit einem zweiten Frequenzteiler (222) zum Erzeugen einer frequenzgeteilten Version eines sinusförmigen Zeit­ referenzsignals in dem Satz sinusförmiger Zeitreferenzsignale, mit einem Phasen- und Frequenzdetektor (230) zum Steuern des Offset-Oszillators (208) auf der Grundlage einer Frequenzdifferenz und einer Phasendifferenz zwischen der frequenzgeteilten Version des lokalen Zeitsteuersignals und der frequenzge­ teilten Version des sinusförmigen Zeitreferenzsignals, und mit einer Demodula­ tionseinheit (200) zum Demodulieren des ersten sinusförmigen Zeitreferenz­ signals in dem Satz sinusförmiger Zeitreferenzsignale, wobei
  • 3. der Eingang der mindestens einen lokalen Einheit (22) mit dem Ausgang der Mastereinheit (12) verbunden ist.
14. System nach Anspruch 13, wobei der Modulator (32) die Amplitude des zumin­ dest einen sinusförmigen Zeitreferenzsignals mit einer Rate ändert, die gleich der Periode des sinusförmigen Zeitreferenzsignals ist.
15. System nach Anspruch 13 oder 14, wobei eine Scheitelamplitude des zumindest einen sinusförmigen Zeitreferenzsignals positiv gegenüber einer Periode des sinusförmi­ gen Zeitreferenzsignals ist.
16. System nach einem der Ansprüche 13 bis 15, ferner eine Modulationssteuer­ einheit (34) mit einem Eingang und einem Ausgang aufweisend, um den Modulator (32) zu steuern, wobei der Ausgang der Modulationssteuereinheit (34) mit dem Steuer­ eingang des Modulators (32) verbunden ist.
17. System nach einem der Ansprüche 13 bis 16, bei welchem die Modulations­ steuereinheit (34) Nachrichten erhält und den Modulator (32) steuert, um ein Signal aus einer Gruppe von Signalen, umfassend ein Rücksetzsignal, ein Unterbrechungssignal und ein Datensignal, in dem kombinierten Zeitsteuer- und Nachrichtenübertragungs­ signal bereitzustellen.
18. System nach einem der Ansprüche 13 bis 17, wobei die Modulationssteuer­ einheit eine Modulationszustandseinrichtung (34) mit einem Eingang und einem Aus­ gang aufweist, um eine Nachricht in eine Gruppe von Bitfolgen umzuwandeln, wobei der Eingang der Modulationszustandseinrichtung (34) eine Nachricht erhält, und der Ausgang der Modulationszustandseinrichtung (34) mit dem Steuereingang des Modula­ tors (32) verbunden ist.
19. System nach einem der Ansprüche 13 bis 18, wobei die mindestens eine lokale Einheit (22) umfaßt:
eine Demodulationseinheit (200) mit einem Eingang und einem Ausgang, um das kombinierte Zeitsteuer- und Nachrichtensignal synchron relativ zu der Periode des kombinierten Zeitsteuer- und Nachrichtensignals zu demodulieren, um eine Bitfolge zu erzeugen, und
eine Nachrichten-Assemblereinheit (250) mit einem Eingang und einem Aus­ gang, wobei der Eingang der Nachrichten-Assemblereinheit (250) mit dem Ausgang der Demodulationseinheit (200) verbunden ist, um ein Nachrichtensignal aus einer Gruppe von Bitfolgen zu erzeugen, die von der Demodulationseinheit (200) aus erhalten worden sind.
20. System nach einem der Ansprüche 13 bis 19, wobei die Demodulationseinheit (200) einen Integrator (412, 413) mit einem Eingang und einem Ausgang aufweist, wo­ bei der Eingang des Integrators mit dem Eingang der Demodulationseinheit (200) und der Ausgang des Integrators (412, 413) mit dem Ausgang der Demodulationseinheit (200) verbunden ist.
21. System nach einem der Ansprüche 13 bis 20, wobei die Demodulationseinheit (200) ferner einen Mischer (400, 402) mit einem Eingang und einem Ausgang aufweist, wobei der Eingang des Mischers (400, 402) mit dem Eingang der Demodulationseinheit (200) und der Ausgang des Mischers (400, 402) mit dem Eingang des Integrators (412, 413) verbunden ist.
22. System nach einem der Ansprüche 19 bis 21, wobei die Nachrichten-Assembler­ einheit (250) eine Zustandseinrichtung aufweist, um ein Nachrichtensignal als ein Signal aus einer Gruppe von Signalen, umfassend ein Rücksetzsignal, ein Unterbre­ chungssignal und ein Datenwort, abzugeben.
23. System nach einem der Ansprüche 13 bis 22, wobei der Satz sinusförmiger Zeitreferenzsignale ein erstes und ein zweites sinusförmiges Zeitreferenzsignal auf weist.
24. System nach Anspruch 23, wobei der feste Phasenversatz 90° beträgt.
25. Verfahren zum Erzeugen eines Taktsignals in einem System (10) mit einer Mastereinheit (12) und mindestens einer lokalen Einheit (22), mit den folgenden Schritten:
in der Mastereinheit (12) wird mit Hilfe einer Phasenregelschleife ein Satz sinusförmiger Zeitreferenzsignale erzeugt, die die gleiche Frequenz und einen festen relativen Phasenversatz aufweisen:
ein erstes sinusförmiges Zeitreferenzsignal in dem Satz sinusförmiger Zeitrefe­ renzsignale wird von mindestens einer lokalen Einheit (22) empfangen; und
in der mindestens einen lokalen Einheit (22) wird mit Hilfe des empfangenen ersten sinusförmigen Zeitreferenzsignals in dem Satz sinusförmiger Zeitreferenzsignale ein erstes lokales Zeitsteuersignal (24) erzeugt.
26. Verfahren nach Anspruch 25, bei dem der Satz sinusförmiger Zeitreferenz­ signale ein erstes und ein zweites sinusförmiges Zeitreferenzsignal umfaßt.
27. Verfahren nach Anspruch 26, bei dem der feste Phasenversatz 90° beträgt.
28. Verfahren nach einem der Ansprüche 25 bis 27, bei dem die mindestens eine lokale Einheit (22) mit Hilfe einer Phasenregelschleife (204, 206, 202) ein lokales Referenzsignal erzeugt, welches zu einem sinusförmigen Zeitreferenzsignal in dem Satz sinusförmiger Zeitreferenzsignale phasenstarr ist.
29. Verfahren nach Anspruch 25, bei welchem zum Erzeugen des ersten lokalen Zeitsteuersignals (24) in der mindestens einen lokalen Einheit (22) ein versetztes Signal erzeugt wird und das versetzte Signal mit dem empfangenen ersten sinusförmigen Zeitreferen­ signal in dem Satz sinusförmiger Zeitreferenzsignale gemischt wird, um das erste lokale Zeitsteuersignal zu erzeugen.
30. Verfahren nach Anspruch 29, bei welchem das erste lokale Zeitsteuersignal an einen Begrenzer (216) angelegt wird, um am Ausgang des Begrenzers (216) das erste lokale Zeitsteuersignal, vorzugsweise rechteckförmig, abzugeben.
31. Verfahren nach Anspruch 30, bei dem
das erste lokale Zeitsteuersignal an einen ersten Frequenzteiler (220) angelegt wird, um eine frequenzgeteilte Version des ersten lokalen Zeitsteuersignals zu erzeu­ gen;
das erste sinusförmige Zeitreferenzsignal an einen zweiten Frequenzteiler (222) angelegt wird, um eine frequenzgeteilte Version des ersten sinusförmigen Zeitreferenz­ signals zu erzeugen; und
das versetzte Signal auf der Grundlage einer Frequenz- und Phasendifferenz zwischen der frequenzgeteilten Version des ersten lokalen Zeitsteuersignals und einer frequenzgeteilten Version des ersten sinusförmigen Zeitreferenzsignals mit Hilfe eines Phasen- und Frequenzdetektors (230) geregelt wird.
32. Verfahren nach Anspruch 31, bei dem die Frequenzteilungskonstante des ersten und/oder zweiten Frequenzteilers (220, 222) umprogrammierbar ist, um die Frequenz der frequenzgeteilten Version des ersten sinusförmigen Zeitreferenzsignals und/oder der frequenzgeteilten Version des ersten lokalen Zeitsteuersignals zu verändern.
DE19629188A 1995-07-21 1996-07-19 System zum Takten und zum kombinierten Takten und Nachrichtenübermitteln sowie Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals Expired - Fee Related DE19629188C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19655086A DE19655086B4 (de) 1995-07-21 1996-07-19 Getaktete Datenverarbeitungseinrichtung, insbesondere mit Datenmodulations-Einrichtung zum Erzeugen eines Nachrichtenübermittlungssignals bzw. von Zeitsteuersignalen sowie eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals, Verfahren zum Takten bzw. Takten und Nachrichtenübermitteln in einer Datenverarbeitungseinrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/501,970 US5805871A (en) 1995-07-21 1995-07-21 System and method for phase-synchronous, flexible-frequency clocking and messaging

Publications (2)

Publication Number Publication Date
DE19629188A1 DE19629188A1 (de) 1997-05-22
DE19629188C2 true DE19629188C2 (de) 1999-07-15

Family

ID=23995773

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19629188A Expired - Fee Related DE19629188C2 (de) 1995-07-21 1996-07-19 System zum Takten und zum kombinierten Takten und Nachrichtenübermitteln sowie Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals

Country Status (4)

Country Link
US (1) US5805871A (de)
JP (1) JP4312844B2 (de)
KR (1) KR100252581B1 (de)
DE (1) DE19629188C2 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6042477A (en) * 1996-12-12 2000-03-28 Addink; Dale H. Method of and system for minimizing the effects of time latency in multiplayer electronic games played on interconnected computers
US6092212A (en) * 1997-12-22 2000-07-18 Intel Corporation Method and apparatus for driving a strobe signal
US6370662B2 (en) * 1998-03-16 2002-04-09 S3 Incorporated Modifying circuit designs running from both edges of clock to run from positive edge
KR100306472B1 (ko) * 1999-04-23 2001-09-24 조재원 자기 융착성 바니쉬 조성물
US6608844B1 (en) * 1999-09-07 2003-08-19 Alcatel Usa Sourcing, L.P. OC-3 delivery unit; timing architecture
US6813722B1 (en) * 2000-04-12 2004-11-02 Rambus, Inc. Programmable timing module for adjusting clock in bus system
US6658579B1 (en) * 2000-05-20 2003-12-02 Equipe Communications Corporation Network device with local timing systems for automatic selection between redundant, synchronous central timing systems
JP4571283B2 (ja) * 2000-08-10 2010-10-27 アンリツ株式会社 波形測定装置
US7155289B1 (en) 2001-08-17 2006-12-26 Advanced Bionics Corporation Auto-referencing mixed mode phase locked loop for audio playback applications
US7292891B2 (en) * 2001-08-20 2007-11-06 Advanced Bionics Corporation BioNet for bilateral cochlear implant systems
US6504750B1 (en) * 2001-08-27 2003-01-07 Micron Technology, Inc. Resistive memory element sensing using averaging
US6826102B2 (en) * 2002-05-16 2004-11-30 Micron Technology, Inc. Noise resistant small signal sensing circuit for a memory device
KR20040019200A (ko) * 2002-08-27 2004-03-05 이미지퀘스트(주) 모니터의 crt 지지 구조
US20050060109A1 (en) * 2003-09-17 2005-03-17 Analog Devices, Inc. Measuring circuit and a method for determining a characteristic of the impedance of a complex impedance element for facilitating characterization of the impedance thereof
ATE426312T1 (de) * 2004-01-13 2009-04-15 Nxp Bv Synchronisation von zeitbasiseinheiten
US7983371B2 (en) * 2004-11-30 2011-07-19 Freescale Semiconductor, Inc. System and method for using programmable frequency offsets in a data network
EP1985045A4 (de) * 2006-02-16 2014-01-22 Agere Systems Inc Systeme und verfahren zur verringerung der kreuzkopplung in dicht beieinanderliegenden signalleitungen
JP2009529831A (ja) * 2006-03-10 2009-08-20 ティーエルシー プレシジョン ウエハー テクノロジー インク. モノリシック構造の集積トランシーバ
US7889812B2 (en) * 2006-05-26 2011-02-15 Silicon Laboratories, Inc. Direct digital frequency synthesizer with phase error correction, method therefor, and receiver using same
KR101011481B1 (ko) * 2008-02-28 2011-01-31 (주)대영해외상사 접착제
US8254355B2 (en) * 2008-09-17 2012-08-28 Airhop Communications, Inc. Method and apparatus for utilizing a second receiver to establish time and frequency
US8473911B1 (en) 2010-07-23 2013-06-25 Xilinx, Inc. Documentation generation from a computer readable symbolic representation
US8188766B1 (en) 2011-02-10 2012-05-29 Avago Technologies Enterprise IP (Singapore) Pte. Ltd. Self-contained systems including scalable and programmable divider architectures and methods for generating a frequency adjustable clock signal
US9037892B2 (en) * 2011-04-13 2015-05-19 International Business Machines Corporation System-wide power management control via clock distribution network
US8914242B2 (en) 2011-07-21 2014-12-16 Thermo Ramsey, Inc. Signal processing in guided wave cutoff spectroscopy
EP3015971B1 (de) 2014-10-28 2019-07-31 Napatech A/S System und verfahren zur informationsableitung
JP6313237B2 (ja) 2015-02-04 2018-04-18 東芝メモリ株式会社 ストレージシステム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0313491A1 (de) * 1987-10-21 1989-04-26 Georges Verdot Modulator für 4-stufige Phasenumtastung, beispielsweise zur vielstufigen Amplitudenmodulation von zwei Quadraturträgern
WO1993014587A1 (en) * 1992-01-09 1993-07-22 Motorola, Inc. Quadrature amplitude modulation synchronization method

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3245048A (en) * 1963-12-23 1966-04-05 Ibm Computer clock phase lock
US3358236A (en) * 1965-04-12 1967-12-12 Burroughs Corp Programmed timing circuits
US3988696A (en) * 1975-11-28 1976-10-26 The Bendix Corporation Phase lock detector for digital frequency synthesizer
US4322643A (en) * 1980-04-28 1982-03-30 Rca Corporation Digital phase comparator with improved sensitivity for small phase differences
US5258724A (en) * 1983-12-30 1993-11-02 Itt Corporation Frequency synthesizer
US4905305A (en) * 1986-03-26 1990-02-27 General Electric Company Method and apparatus for controlling the frequency of operation and at least one further variable operating parameter of a radio communications device
US4870699A (en) * 1986-03-26 1989-09-26 General Electric Company Method and apparatus for controlling the frequency of operation and at least one further variable operating parameter of a radio communications device
US4817197A (en) * 1986-07-18 1989-03-28 Nippon Telegraph And Telephone Corporation Mobile communication apparatus
US4771440A (en) * 1986-12-03 1988-09-13 Cray Research, Inc. Data modulation interface
US4884035A (en) * 1987-08-17 1989-11-28 John Fluke Mfg. Co. Inc. Wide range digital phase/frequency detector
US5101117A (en) * 1988-02-17 1992-03-31 Mips Computer Systems Variable delay line phase-locked loop circuit synchronization system
CA1301261C (en) * 1988-04-27 1992-05-19 Wayne D. Grover Method and apparatus for clock distribution and for distributed clock synchronization
US5053639A (en) * 1989-06-16 1991-10-01 Ncr Corporation Symmetrical clock generator and method
US4980653A (en) * 1989-09-05 1990-12-25 Motorola, Inc. Phase locked loop
JP2968289B2 (ja) * 1989-11-08 1999-10-25 株式会社リコー 中央演算処理装置
US5280474A (en) * 1990-01-05 1994-01-18 Maspar Computer Corporation Scalable processor to processor and processor-to-I/O interconnection network and method for parallel processing arrays
US5258660A (en) * 1990-01-16 1993-11-02 Cray Research, Inc. Skew-compensated clock distribution system
US5038117A (en) * 1990-01-23 1991-08-06 Hewlett-Packard Company Multiple-modulator fractional-N divider
US5130987A (en) * 1990-03-23 1992-07-14 Metricom, Inc. Method for synchronizing a wide area network without global synchronizing
US5079768A (en) * 1990-03-23 1992-01-07 Metricom, Inc. Method for frequency sharing in frequency hopping communications network
US5285116A (en) * 1990-08-28 1994-02-08 Mips Computer Systems, Inc. Low-noise high-speed output buffer and method for controlling same
US5351249A (en) * 1991-07-19 1994-09-27 Interdigital Technology Corporation Trellis coded FM digital communications system and method
GB9117645D0 (en) * 1991-08-15 1991-10-02 Motorola Ltd Improvements in or relating to digital communication systems
US5577075A (en) * 1991-09-26 1996-11-19 Ipc Information Systems, Inc. Distributed clocking system
US5303412A (en) * 1992-03-13 1994-04-12 Massachusetts Institute Of Technology Composite direct digital synthesizer
US5481573A (en) * 1992-06-26 1996-01-02 International Business Machines Corporation Synchronous clock distribution system
US5450044A (en) * 1993-04-14 1995-09-12 Acrodyne Industries, Inc. Quadrature amplitude modulator including a digital amplitude modulator as a component thereof
US5394490A (en) * 1992-08-11 1995-02-28 Hitachi, Ltd. Semiconductor device having an optical waveguide interposed in the space between electrode members
US5375258A (en) * 1992-12-07 1994-12-20 Motorola, Inc. Circuit for generating signals in phase quadrature and associated method therefor
US5524243A (en) * 1992-12-16 1996-06-04 Rolm Company Parallel programming of field programmable gate array devices
DE69317758T2 (de) * 1992-12-28 1998-10-29 Advanced Micro Devices Inc Mikroprozessorschaltung mit zwei Taktsignalen
US5466117A (en) * 1993-06-10 1995-11-14 Xilinx, Inc. Device and method for programming multiple arrays of semiconductor devices
US5506878A (en) * 1994-07-18 1996-04-09 Xilinx, Inc. Programmable clock having programmable delay and duty cycle based on a user-supplied reference clock
US5557783A (en) * 1994-11-04 1996-09-17 Canon Information Systems, Inc. Arbitration device for arbitrating access requests from first and second processors having different first and second clocks
US5550515A (en) * 1995-01-27 1996-08-27 Opti, Inc. Multiphase clock synthesizer having a plurality of phase shifted inputs to a plurality of phase comparators in a phase locked loop

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0313491A1 (de) * 1987-10-21 1989-04-26 Georges Verdot Modulator für 4-stufige Phasenumtastung, beispielsweise zur vielstufigen Amplitudenmodulation von zwei Quadraturträgern
WO1993014587A1 (en) * 1992-01-09 1993-07-22 Motorola, Inc. Quadrature amplitude modulation synchronization method

Also Published As

Publication number Publication date
JP4312844B2 (ja) 2009-08-12
US5805871A (en) 1998-09-08
DE19629188A1 (de) 1997-05-22
KR100252581B1 (ko) 2000-04-15
JPH09185428A (ja) 1997-07-15
KR970007566A (ko) 1997-02-21

Similar Documents

Publication Publication Date Title
DE19629188C2 (de) System zum Takten und zum kombinierten Takten und Nachrichtenübermitteln sowie Verfahren zum Erzeugen eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals
DE112019004301T5 (de) Verbesserter prozess der programmierung von feldprogrammierbaren gate-arrays unter verwendung einer partiellen rekonfiguration
DE69826835T2 (de) Frequenzsynthetisierer
DE102014108762B4 (de) Eine Schaltung, ein Zeit-zu-Digital-Wandler, eine integrierte Schaltung, ein Sender, ein Empfänger und ein Sende-Empfangs-Gerät
DE112013007457B4 (de) Taktkalibrierung unter Verwendung eines asynchronen digitalen Abtastens
US20230213613A1 (en) Modular Object-Oriented Digital Sub-System Architecture with Primary Sequence Control and Synchronization
CN103427835B (zh) 频率调制器
DE19815865A1 (de) Kompiliersystem und Verfahren zum rekonfigurierbaren Rechnen
DE102016202652A1 (de) System und Verfahren zur analogen Hochgeschwindigkeits-Strahlformung
DE102011053004A1 (de) Für monolithische Integration in Einchipsystemen geeigneter polarer Sender
DE60217951T2 (de) Mehrphasen-Abtastung
DE102018105018A1 (de) Radarvorrichtung, Radarsystem und Verfahren zur Erzeugung eines Abtasttaktsignals
DE112009000729T5 (de) Phasenregelkreismodulation
DE102014119507A1 (de) Synchronisation eines datensignals
DE102016100497A1 (de) System und Verfahren zum Synchronisieren mehrerer Oszillatoren unter Verwendung einer reduzierten Frequenzsignalisierung
DE112014006322T5 (de) Ladungspumpen-Kalibrierung für eine Zweiwege-Phasenregelungsschleife
DE102021117809A1 (de) Einrichtungen, Systeme, Fabrikate und Verfahren zur Datenlebenszyklusverwaltung in einer Edge-Umgebung
Perego et al. A scalable hardware and software control apparatus for experiments with hybrid quantum systems
DE112011106014T5 (de) Kleinen Jitter und niedrige Latenz aufweisende Low-Power-Taktung mit gemeinsamen Referenztaktsignalen für On-Package-Ein-/Ausgabe-Schnittstellen
DE60217847T2 (de) Schaltung zur erzeugung eines mehrphasigen taktsignals
DE102017110821A1 (de) Halbleitervorrichtung
DE102007042979B4 (de) Integrierte Schaltung für Mobilfunk-Sendeempfänger
DE19655086B4 (de) Getaktete Datenverarbeitungseinrichtung, insbesondere mit Datenmodulations-Einrichtung zum Erzeugen eines Nachrichtenübermittlungssignals bzw. von Zeitsteuersignalen sowie eines kombinierten Zeitsteuer- und Nachrichtenübermittlungssignals, Verfahren zum Takten bzw. Takten und Nachrichtenübermitteln in einer Datenverarbeitungseinrichtung
DE112016007282T5 (de) Modulationsschaltung mit N,5-Teilung
DE102010064244A1 (de) Steuerarchitekturen für HF-Sende/Empfangsgeräte

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8172 Supplementary division/partition in:

Ref country code: DE

Ref document number: 19655086

Format of ref document f/p: P

Q171 Divided out to:

Ref country code: DE

Ref document number: 19655086

AH Division in

Ref country code: DE

Ref document number: 19655086

Format of ref document f/p: P

D2 Grant after examination
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140201