DE3689093T2 - Gestaltbares paralleles Pipeline--Bildverarbeitungssystem. - Google Patents
Gestaltbares paralleles Pipeline--Bildverarbeitungssystem.Info
- Publication number
- DE3689093T2 DE3689093T2 DE19863689093 DE3689093T DE3689093T2 DE 3689093 T2 DE3689093 T2 DE 3689093T2 DE 19863689093 DE19863689093 DE 19863689093 DE 3689093 T DE3689093 T DE 3689093T DE 3689093 T2 DE3689093 T2 DE 3689093T2
- Authority
- DE
- Germany
- Prior art keywords
- image
- cage
- peg
- lines
- inputs
- 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
Links
- 238000012545 processing Methods 0.000 title claims description 96
- 239000000872 buffer Substances 0.000 claims description 48
- 238000012546 transfer Methods 0.000 claims description 23
- 229920001223 polyethylene glycol Polymers 0.000 claims description 22
- 230000008713 feedback mechanism Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000003252 repetitive effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 152
- 238000013461 design Methods 0.000 description 60
- MTCFGRXMJLQNBG-UHFFFAOYSA-N serine Chemical compound OCC(N)C(O)=O MTCFGRXMJLQNBG-UHFFFAOYSA-N 0.000 description 48
- 230000015654 memory Effects 0.000 description 47
- 238000010586 diagram Methods 0.000 description 25
- 241001522306 Serinus serinus Species 0.000 description 24
- 230000001934 delay Effects 0.000 description 21
- 238000006243 chemical reaction Methods 0.000 description 14
- 238000013519 translation Methods 0.000 description 13
- 230000014616 translation Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 12
- 238000009826 distribution Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 11
- 239000013256 coordination polymer Substances 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 102100031456 Centriolin Human genes 0.000 description 6
- 101000941711 Homo sapiens Centriolin Proteins 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 6
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 101000739577 Homo sapiens Selenocysteine-specific elongation factor Proteins 0.000 description 4
- 102100037498 Selenocysteine-specific elongation factor Human genes 0.000 description 4
- 241001504505 Troglodytes troglodytes Species 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000003909 pattern recognition Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 230000010076 replication Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000012556 adjustment buffer Substances 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101100004188 Arabidopsis thaliana BARD1 gene Proteins 0.000 description 1
- 102100026437 Branched-chain-amino-acid aminotransferase, cytosolic Human genes 0.000 description 1
- 102100026413 Branched-chain-amino-acid aminotransferase, mitochondrial Human genes 0.000 description 1
- 101000766268 Homo sapiens Branched-chain-amino-acid aminotransferase, cytosolic Proteins 0.000 description 1
- 101000766294 Homo sapiens Branched-chain-amino-acid aminotransferase, mitochondrial Proteins 0.000 description 1
- 101000579646 Penaeus vannamei Penaeidin-1 Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 125000000524 functional group Chemical group 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Description
- Diese Erfindung bezieht sich auf ein Pipeline-Bildverarbeitungssystem und insbesondere auf ein paralleles Pipeline- System von Bildverarbeitungselementen, die innerhalb einer Bildverarbeitungsuntereinheit zwecks Computer-Effizienz und Einsparung von Speicher- und Buskapazität in Sätzen gestaltbar und teilweise von Satz zu Satz gestaltbar sind.
- Die folgenden Patente aus den Vereinigten Staaten und andere Veröffentlichungen sind für den Stand der Technik repräsentativ:
- US 3,805,035, Serra, J., DEVICE FOR THE LOGICAL ANALYSIS OF TEXTURES, 16. April 1974, zeigt Bildumsetzungen gemäß den vorgegebenen Booleschen logischen Gesetzen.
- US 4,395,699, Sternberg, METHOD AND APPARATUS FOR PATTERN RECOGNITION AND DETECTION, 26. Juli 1983, zeigt die Anwendung der Nachschlagetabelle in einem System zur Mustererkennung und -erfassung, in dem wenigstens eine benachbarte Umwandlungsstufe benutzt wird. Die Nachschlagetabelle wird nicht zur Steuerung der Booleschen Bildumwandlungen sondern vielmehr in einem Zeichenerkennungsmodus verwendet, um festzulegen, ob benachbarte Bildelemente in einem vorausgewählten Muster gestaltet werden.
- US 4,395,700, McCubbrey et all. IMAGE ANALYZER WITH VARIABLE LINE STORAGE, 26. Juli 1983, zeigt ein System zur Bildanalyse, in dem jede benachbarte Umwandlungsstufe einen Prozessoranteil zur Fensteranalyse von benachbarten Bildelementwerten enthält und einen Ausgang der Umwandlung als eine Funktion von Bildelementwerten vorsieht, die in dem Fenster enthalten sind.
- US 4,484,346, Sternberg et al, NEIGHBORHOOD TRANSFORMATION LOGIC CIRCUITRY FOR AN IMAGE ANALYZER SYSTEM, 20. November 1984 zeigt ein System zur Bildanalyse, das durch einen seriellen Strom von digitalen Bildelementsignalen dargestellt wird, die ein Bild bilden. Das System enthält eine Pipeline von wesentlich identischen, benachbarten Umwandlungsstufen. Jede sequentielle Stufe liefert dem Prozessor aufeinanderfolgend ein Fenster von benachbarten Bildelementen zur Analyse.
- US 4,490,848, Beall et al, METHOD AND APPARATUS FOR SORTING CORNER POINTS IN A VISUAL IMAGE PROCESSING SYSTEM, 25. Dezember 1984, zeigt einen Bildprozessor, der herausgenommene Merkmale verarbeitet durch Verwendung eines ersten Mikroprozessors zur Steuerung von Video-Datenverarbeitungsfunktionen, eines zweiten Mikroprozessors zur Steuerung nachfolgender, komplexerer Bild-Datenverarbeitungsfunktionen und unter Verwendung eines dritten Mikroprozessors als Haupt-Zentraleinheit, die mittels eines gemeinsamen Busses kommuniziert.
- US . . . (Anmeldungs-Seriennummer 06/626,552, eingereicht am 29. Juni 1984), Mandeville, METHOD FOR OPTICAL INSPECTION ANALYSIS OF INTEGRATED CIRCUITS, zeigt in einem automatischen Prüfsystem für komplizierte Geräte eine endliche Länge einer Serienpipeline-Gestaltung für die Bildverarbeitung.
- Zu den US Patenten, die zusätzlich den diesbezüglichen Stand der Technik vorsehen, gehören:
- 4,174,514, Sternberg, PARALLEL PARTITIONED SERIAL NEIGHBORHOOD PROCESSORS, 13. November 1979;
- 4,395,698, Sternberg et al, NEIGHBORHOOD TRANSFORMATION LOGIC CIRCUITRY FOR AN IMAGE ANALYZER SYSTEM, 16. Juli 1983;
- 4,441,207, Lougheed et al, DESIGN RULE CHECKING USING SERIAL NEIGHBORHOOD PROCESSORS, 3. April 1984;
- 4,464,788, Sternberg et al, DYNAMIC DATA CORRECTION GENERATOR FOR AN IMAGE ANALYZER SYSTEM, 7. August 1984;
- 4,484,349, McCubbrey, PARALLEL PIPELINE IMAGE PROCESSOR, 20. November 1984.
- Zu den Veröffentlichungen gehören:
- E.J. Lerner, "Parallel Processing Gets Down to Business", High Technology, Juli 1985, pp 9-14. Lerner zeigt eine Vielfalt von Arten und Anwendungen paralleler Prozessoren.
- J.R. Mandeville, "Novel Method for Analysis of Printed Circuit Images, IBM J.Res.Develop., Vol. 29, No. 1, Januar 1985, pp 73-86. Mandeville zeigt in einem automatischen Prüfsystem für komplizierte Geräte eine endliche Länge einer Serienpipeline-Gestaltung für die Bildverarbeitung.
- R.M. Lougheed, D.L. McCubbrey, "The Cytocomputer: A Pratical Pipeline Image Processor", Proc. 7'th Annual International Symposium on Computer Architecture, Mai 1980, zeigt einen Pipeline-Bildprozessor;
- Weitere Veröffentlichungen, die zusätzlich betrachtet werden, sind:
- D. Svetkoff, J. Candlish, P. VanAtta, "High Resolution Imaging for Visual Inspection of Multi-Layer Thick-Film Circuits", RI/SME Conference on Applied Machine Vision, Memphis, Tennessee, Februar 1983;
- U. Montanari "Continuous Skeletons From Digitized Images", Journal of the Association for Computing Machinery, Vol 16, No. 4, Oktober 1969, pp. 534-549;
- R. Stefanelli, A. Rosenfeld, "Some Parallel Thinning Algorithms for Digital Pictures", Journal of the Association for Computing Machinery, Vol. 18, No. 2, April 1971, pp. 255-264;
- S. R. Sternberg, "Biomedical Image Processing", IEEE Computer, January 1983, pp. 22-28;
- * E. S. Gelsema, L.N. Kanal, "Pattern Recognition in Practice", Proceedings of an International Workshop Held in Amsterdam, May 21-23, 1980, North Holland Publishing Company, Amsterdam, New York/Oxford;
- * S. R. Sternberg, "Language and Architecture for Parallel Image Processing", in PATTERN RECOGNITION IN PRACTICE, E. S. Gelsema and L. N. Kanal, eds., North Holland Publishing Co., 1980;
- * K. S. Fu, "Pattern Recognition for Automatic Visual Inspection", IEEE COMPUTER, Dezember 1982;
- * R. M. Lougheed, D. L. McCubbrey, S. R. Sternberg, "Dytocomputers: Architectures for Paralle Image Processing", Proc. IEEE Workshop on Picture Data Description and Management, August 1980;
- * M. A. Hegyi, R. W. Kelley, D. L. McCubbrey, C. B. Morningstar, "Computer Algorithms for Visually Inspecting Thick Film Circuits", Environmental Research Institute of Michigan.
- In den Tagungsberichten der am 25. - 28. März 1985 stattgefundenen "IEEE International Conference on Robotics and Information" wird auf den Seiten 873-878 in einem Artikel mit der Überschrift "A real time iconic image processor" ein Pipeline- Bildprozessor mit einer Reihe von Untereinheiten zur Bildverarbeitung beschrieben, der über gestaltbare Verarbeitungselemente zur Durchführung der vielen Berechnungen verfügt, welche zur effizienten Verarbeitung von Bildern ohne ständigen Speicherzugriff auf Zwischenergebnisse erforderlich sind.
- Es ist ein Gegenstand der Erfindung, ein gestaltbares System zu liefern, das insbesondere für die Hochgeschwindigkeits- Pipelineverarbeitung einer sehr großen Anzahl von Fensterbildern geeignet ist.
- Gemäß der Erfindung wird ein gestaltbares paralleles Pipeline- Verarbeitungssystem zur Bildverarbeitung mit Recheneffizienz innerhalb der verfügbaren Kapazität vorgesehen, mit:
- - Steuermitteln;
- - Mitteln zur Bereitstellung von Bildern; und
- - wenigstens einer Gruppe von CAGE Untereinheiten zur Bildverarbeitung, die wirksam mit den Mitteln zur Bereitstellung von Bildern verbunden sind, wobei jede CAGE
- (1) Leistungs-/Wiederholungsmittel enthält, die angepaßt sind, um die CAGE Steuersignale von den Steuermitteln mit den entsprechenden Leistungspegeln für die Empfangsschaltkreise zu wiederholen;
- (2) eine Vielzahl von Gruppen mit gestaltbaren Verarbeitungselementen enthält, die PEG's, die sequentiell untereinander und mit dem Booleschen Kombinator einer CAGE Ebene verbunden werden. Dieser Kombinator ist für den Anschluß an die nächste CAGE verantwortlich;
- (3) einen Bus enthält, mit die PEG's und der Boolesche Kombinator der CAGE Ebene außerdem verbunden sind; und
- (4) CAGE Ausgangsmittel einschließlich des Booleschen Kombinators der CAGE Ebene enthält;
- Jedes PEG enthält:
- (1) einen Satz von parallel angeordneten Verarbeitungselementen, wobei jeder einen Ein- und Ausgang enthält;
- (2) einen Booleschen Kombinator mit Ein- und Ausgängen, wobei ein Teil der Eingänge an die Ausgänge des Satzes von Bildverarbeitungselementen angeschlossen ist und ein anderer Teil der Eingänge an den Bus angeschlossen ist, wobei der Boolesche Kombinator für die logische Kombination der Bildströme der Eingänge arbeitet und Ausgänge erzeugt, wobei deren erste Untermenge rückführend mit dem Satz von Verarbeitungselementen verbunden wird und deren zweite Untermenge vorwärts mit der nachfolgenden PEG oder dem Booleschen Kombinator der CAGE Ebene verbunden wird, wobei eine Vielzahl von Zusammenschaltungen von Verarbeitungselementen durchführbar ist.
- Dies liefert unzählige Bildverarbeitungsnetzwerke ohne den enormen Aufwand an Speicher- und Buskapazität, der erforderlich ist, um alle möglichen Netzwerke zu versorgen. PE's sind an alle PE's innerhalb der PEG voll anschlußfähig. In jeder PEG kann eine begrenzte Anzahl von PE's mittels eines Busses an PE's in anderen PEG's angeschlossen werden. Für einfache Arbeitsaufträge gestaltet der Hersteller innerhalb einer PEG einfache Netzwerke von PE's. Für Arbeitsaufträge, die für einfache Netzwerke zu anspruchsvoll sind, gestaltet der Hersteller PE's in einer PEG zusammen mit PE's in anderen PEG's zu einem zusammengesetzten, an einen Bus angeschlossenen Netzwerk. Für sehr anspruchsvolle Arbeitsaufträge, die für zusammengesetzte Netzwerke zu anspruchsvoll sind, verwendet der Hersteller PE's in komplexen Netzwerken nicht nur als binäre Fensterprozessoren sondern auch als zusätzliche Umschaltpfade, logische Inverter und Verzögerungselemente.
- Ein bevorzugtes System richtet einen Hauptrechner, Videopuffer und eine oder mehrere CAGE's ein, von denen jede einen oder mehrere Bitreihen-Eingänge, ein Raster von PEG's und einen Numerierer (ENUM) hat. Bildschaltungen werden für jede PEG von einem gemeinsam benutzten Booleschen Kombinator (BC) durchgeführt. Extra-CAGE Verbindungen übernimmt ein Verteiler D 11. Ein Numerierer E 12 zählt die Zyklen, um die X-Y-Koordinaten von "EIN" Bildelementen von ausgewählten Bildern zu bestimmen und diese Koordinaten dem Hauptrechner als Ausgangsdaten mitzuteilen
- Ein Vorteil der Erfindung ist seine innewohnende Fähigkeit, eine Anzahl verschiedener Bilder zu verarbeiten und zwar jedes mit einem unterschiedlichen Grad von Einzelheiten, die über die angemessene Fähigkeit von festverdrahteten Netzwerkprozessoren hinausgeht.
- Ein weiterer Vorteil der Erfindung ist sowohl die Maximierung der Flexibilität als auch der Effizienz von verfügbarer Bildprozessor-Hardware durch das Gestalten von Netzwerken für den erwarteten Arbeitsauftrag durch einfaches Umschalten.
- Ein weiterer Vorteil der Erfindung ist, daß er die Pipeline- Fähigkeit, viele Berechnungen in dem System ohne konstanten Speicherzugriff auf Zwischenergebnisse gleichzeitig durchzugehen, mit der Fähigkeit der Gestaltung komplexer Netzwerke kombiniert, die für jede Art von Arbeitsauftrag spezifisch sind.
- Vorhergehende und weitere Gegenstände, Einrichtungen und Vorteile der Erfindung, die in den anhängenden Ansprüchen definiert werden, gehen aus der ausführlicheren Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung hervor, die in den beiliegenden Zeichnungen abgebildet sind, in denen
- Fig. 1 - Fig. 6 allgemeine schematische Diagramme des gestaltbaren Bildverarbeitungssystems zeigen, die als Funktionseinheiten in Verbindung mit der Erklärung und zum besseren Verständnis dargestellt sind.
- Fig. 7 - Fig. 15 ausführliche schematische Diagramme eines bevorzugten Ausführungsbeispiels der Erfindung darstellen, die Systemeinheiten, Steuerlogik und weitere Elektronik zeigen, die als beste Ausführungsform zur Durchführung der Erfindung dargestellt sind.
- Fig. 1 zeigt die Architektur des gestaltbaren parallelen Bildverarbeitungssystems.
- Fig. 2 zeigt ein Blockdiagramm einer repräsentativen gestaltbaren, einzelnen Verarbeitungselementgruppe (PEG).
- Fig. 3 ist ein Blockdiagramm eines repräsentativen Bildverarbeitungselements (PE), das ganz für die effiziente Bildverarbeitung gemäß der Erfindung ausgerüstet ist.
- Fig. 4 zeigt ein Blockdiagramm eines benachbarten, 3 · 3 Standard-PE's, wie es in der Technik bekannt ist.
- Fig. 5 zeigt ein Blockdiagramm eines bevorzugten, einzelnen Verarbeitungselements (PE) zur effektiven Bildverarbeitung gemäß der Erfindung, das besser als das 9-Bit Standard PE von Fig. 4 ausgerüstet ist, jedoch nicht so voll ausgerüstet ist wie das PE von Fig. 3.
- Fig. 6 zeigt ein schematisches Blockdiagramm eines kleinen aber typischen Netzwerks von PE's, das mit der Erfindung erreichbar ist.
- Fig. 7 zeigt Einzelheiten der PEG mit Querverweisen zu anderen Figuren.
- Fig. 7 - Fig. 13 zeigen Einzelheiten zur Ausführung einer PEG.
- Fig. 14 - Fig. 15 zeigen Einzelheiten zur Durchführung der Verteilungs- und Numerierungsfunktionen des Systems.
- Fig. 1 zeigt ein logisches Blockdiagramm des gestaltbaren Bildverarbeitungssystems. Ein Hauptrechner, der ein IBM PC mit einer in ,einen Mehrbus eingesteckten Bit-3 Karte sein kann, sorgt für die gesamte Steuerung des Systems, dessen Eingangsvideo-Erfassungsmechanismus und des sen Ausgangs-Auswertungsmechanismus. Andere verfügbare Hauptrechner würden genügen. Gemäß seines gespeicherten Programms sorgt der Hauptrechner 0 (H) über die Steuerkarte 1 (CC) zu einer Bildverarbeitungspipeline von Verarbeitungselementen (PE's) für die gesamte Steuerung, indem er in einer iterativen Schleife arbeitet, die in dem Diagramm in Form einer Pfeilschleife 2 abgebildet ist. Ein typisches PE ist ein "nine-neighbor morphic operator". Solche binären, hier beschriebenen Fensterverarbeitungselemente (PE's) sind äquivalent zu den Basisverarbeitungselmenten, die von Jon R. Mandeville in der US Patentanmeldung mit der Seriennummer 06/626,552, beschrieben wird, die am 29. Juni 1984, supra, eingereicht wurde. Die Bildverarbeitungspipeline enthält CAGE's C0, C1, C2 . . . Cn, die jeweils als Kästen 3, 4, 5 und 6 angegeben sind, und den Videopuffer 7 (M), der mittels Rückschleife 8 angeschlossen wird. Die repräsentative CAGE C0 wird im einzelnen gezeigt. Die CAGE C0 enthält den Numerierungsbus (EB) 9 und einen Satz von M gestaltbaren, universellen Verarbeitungselementgruppen (PEG's) 10. Jede PEG 10 enthält einen Satz von N Verarbeitungselementen und ebenfalls einen Satz von (N+P) EIN-, 2N AUS-Bildschaltungen, die von dem gemeinsam benutzten Booleschen Kombinator (BC) durchgeführt werden. Der 2N Satz von Bildschaltungen erlaubt eine universelle Vielfalt von Zusammenschaltungen der N Verarbeitungselemente in dem Satz und eine signifikante Vielfalt von Zusammenschaltungen der Verarbeitungselemente in anderen Sätzen mittels der P Extra-Bildschaltungen und dem Numerierungsbus 9 (EB), und J Verbindungen zu dem EB 9. Zum Beispiel: Es können acht PEs in der PEG sein, die in irgendeiner Gestaltung zusammengeschaltet sind; es können vier Eingänge von anderen PEG's über den EB sein; und es können vier Ausgänge zu anderen PEG's über den EB sein; d. h. N = 8, P = 4 und J = 4.
- Eine einfache Verbindung von einer PEG 10 zu einer anderen PEG 10 innerhalb der CAGE erfolgt sequentiell entlang einer Leitung 17. Die letzte PEG in der CAGE wird über eine Leitung 17 mit einer Verteilungslogik (D) 11 verbunden. Eine einfache Verbindung von CAGE zu CAGE erfolgt in aufsteigender Reihenfolge nur an die Verteilungslogik (D) 11 und den Numerierer (E) 12. Ein Verbindung zu einer CAGE in nicht aufsteigender Reihenfolge kann mittels des Videopuffers 7 zu der Pipeline der CAGE's 3, 4, 5 . . . 6, und zurück entlang der Rückführungsschleife 8 zu einer anderen Iteration durchgeführt werden. Das Laden und Übertragen von Bildern erfolgt mittels des Bildbusses 13, der den Videopuffer 7 versorgt. Bilddaten der herkömmlichen, ikonischen Zeichendarstellung kommen mittels des Videopuffers (M) 7 über die Leitung 13. Das Bild gelangt über den Videopuffer 7 durch die Leitung 17 zu der Pipeline von den CAGE's C0 . . . Cn. Während des Betriebs geht kein "Bild" der herkömmlichen, ikonischen Zeichendarstellung jemals zurück an den Hauptrechner. Als Alternative können der Videopuffer 7 und die Pipeline der CAGE's C0 . . . Cn iterativ für kleine Bilder verwendet werden, indem das Video über die Pipeline mittels der Leitung 8 zu dem Videopuffer 7 wieder angesprungen wird. Datenfelder, die derzeit von der Pipeline an den Hauptrechner zurückgehen, kommen von dem Numerierer E 12 in Form von komprimierten Daten. Die komprimierten Daten enthalten die X-Y oder Taktadresse jedes "EIN" Bildelements aus dem Bild. Jedes "EIN" Bildelement ist ein Bit, normalerweise mit dem Bitwert "1", das den schmalsten, schattierten Bereich (üblicherweise schwarz) in dem Bild enthält. Bilder, die für den Numerierer (ENUM) geeignet sind, sind sehr schwache, nicht ikonische Bilder. Die Bildübertragung erfolgt durch räumliche Koordinaten, einer minimalen, digitalen Darstellung der Bildelementstelle. Der Numerierer (E) 12 identifiziert für den Hauptrechner 0 eine Identifizierung eines ausgewählten Bildes durch einen Satz von X-Y Koordinaten in einer bekannten Zeit, um der Ankunft in dem passenden PE des von dieser PE identifizierbaren Bilds zu entsprechen. Diese Darstellung ist ideal für die Anwendung in einem Hauptrechner des digital gespeicherten Programmtyps. In einer typischen Operation, wie zum Beispiel in dem Prüfgerät, das von Mandeville, supra, beschrieben wird, ist die gewünschte Betriebsart, besondere Einrichtungen an unbekannten Stellen in dem Videobild zu identifizieren und zu lokalisieren, wie zum Beispiel Leiterunterbrechungen in einem integrierten Schaltkreis. Sobald die Einrichtungen mittels der Bildverarbeitungsfunktion identifiziert und lokalisiert wurden, werden diese dem Hauptrechner in X-Y Koordinatenform übermittelt und gemäß Lokalisierung und Einrichtungsart verarbeitet. Während dieser Operation fließt die Information kontinuierlich durch die Pipeline, wobei nur eine gelegentliche Einrichtungsidentifizierung dem Hauptrechner 0 übermittelt wird. Der Videopuffer 7 ist ein Puffer, in dem zuerst Abgelegtes, zuerst bearbeitet wird (FIFO).
- Wenn die gesamte Verarbeitung in einem einzelnen Durchlauf durch die Pipeline erfolgen kann, dient der Videopuffer 7 als Geschwindigkeitsanpassungspuffer, um die Bildsource-Geschwindigkeit anzupassen und die Pipeline-Bildverarbeitungsgeschwindigkeit sollte als Block von Einrichtungsidentifikationen in solch kurzen Abständen auftreten, um die Übertragung oder Verarbeitungsfähigkeit des Systems zu überzeichnen. Wenn die gesamte Verarbeitung nicht in einem einzelnen Durchlauf durch die Pipeline erfolgen kann, dient der Videopuffer 7 nicht nur als Geschwindigkeitsanpassungspuffer sondern auch als zweiter Puffer für den Bilddurchlauf.
- Derzeitige Videobilder sind wegen der enormen Anzahl von erforderlichen Bits für die Verarbeitung von herausgenommenen, komprimierten nicht ikonischen Bildern durch den Hauptrechner 0 ungeeignet. Als ein ausgewähltes Beispiel für eher mathematische Eignung als für eine enge Beziehung zu einem derzeitigen Videosystem erfordert ein 1000 · 1000 Raster 1.000.000 Bits pro Bild. Wenn das Bild bei Geschwindigkeiten von 5 Hz getaktet wird, erfordert dies 5.000.000 Bits pro Sekunde und pro Bild. Somit würde die ikonische Bildverarbeitung durch den Hauptrechner 0 einen immensen Verarbeitungsspeicher und bedeutende Buskapazität benötigen. Durch Verwendung der Gray-Stufe würde die Komplexität vervielfacht. Der Hauptrechner 0 wird, während er für die Erfassung von ikonischen Bildern verwendet wird, nicht für deren Verarbeitung verwendet; ikonische Bilder werden in der Pipeline verarbeitet.
- Die Steuerung ist schematisch als Pipeline-Steuerleitungen 14 dargestellt. Komplexe Hardware-Netzwerke von Verarbeitungselementen (zum Beispiel, 256 binäre Fensterverarbeitungselemente) können gestaltet oder mittels Softwaremittel durch den Hauptrechner (H) 0 und die Steuerkarte (CC) 1 über die Steuerleitungen 14 verbunden werden.
- Wenn PE's passend mit anderen PE's zusammengeschaltet werden, ist die resultierende Hardware zu einer großen Anzahl von gleichzeitigen Pipeline-Operationen bei einer großen Anzahl von PE's fähig. Diese Gleichzeitigkeit kann unabhängig von der Methode erzielt werden, nach der die Ausgänge der PE's logisch kombiniert wurden. Diese Verbindungen können ebenfalls quer durch die CAGE Grenzen über die Verteilerfunktion von D 11 durchgeführt werden. Ein gesendetes PE Bild kann um die Daten eines zweiten oder zusätzlich gesendeten PE's erweitert werden, um so einen kombinierten Eingang für die Nachschlagetabelle vor der Bildübertragung an eine empfangene PE zu liefern.
- Ikonische Bildübertragung zwischen PEG's innerhalb jeder CAGE und Übertragung zwischen CAGE's erfolgen durch die Leitungen 17. Eine separate Leitung 18 trägt das ausgewählte ikonische Bild nicht in der Reihenfolge zur Übertragung von CAGE zu CAGE. Die Leitung 19 dient der Übertragung zwischen D und E.
- Das System arbeitet mit endlicher Buskapazität und ist in seiner Herstellung noch modular, da jedes CAGE seinen eigenen Leistungs-/Wiederholungsmechanismus 20 hat. Der Leistungs/Wiederholungsmechanismus 20 führt nicht jeden logischen Wechsel durch; er wiederholt lediglich die Signale in den Leitungen 14 mit den für die Empfangsschaltkreise passenden Leistungspegeln.
- Das System arbeitet mit endlichem Speicher und hat noch Leistungsfähigkeit, um sehr große Bilder zu verarbeiten, da das komplette ikonische Bild niemals irgendwo in dem System festgehalten werden muß. Zum Beispiel kann das letzte PE in der Pipe auf dem ersten Bit des Bildes arbeiten, während das erste PE das x-te Bit bearbeitet. Ausgenommen während den Spitzennumerierungszeiten, wenn die Bilder statisch festgehalten werden müssen, während andere Komponenten aufgefangen werden, ist die Bildverarbeitung konstant. Die Verarbeitungseffizienz ist hoch, weil die Gestaltung der Hardware an die besonderen Bildmerkmale des Arbeitsauftrags angepaßt werden können. Das System kann als Einrichtung funktionieren, die speziell nur für die Art des in Betracht gezogenen Arbeitsauftrags bestimmt ist, dann kann das System für eine andere Art von Arbeitsauftrag neu gestaltet werden. Die Software für die Gestaltung des Hardware-Netzwerkes ist dem schrittweisen Standard-Computerprogrammieren nicht ähnlich, welches den Datenfluß durch eine Folge von Verarbeitungsschritten lenkt, sondern vielmehr Anweisungen zur Neugestaltung der Einrichtung enthält. Die Art, in der die Hardware-Funktionen zu gestalten sind, wird durch die Inhalte bestimmter Register und Speicher angegeben. Ist die Hardware einmal gestaltet, ist diese zu der gleichen festgelegten Rate in Betrieb und zwar unabhängig davon, wie die PE's zusammengeschaltet sind. Zum Beispiel wird mit einer Verschieberate von 5 MHz, bei 256 PE's, eine effektive Rechenleistung von 1,25 GIGAOPS erreicht. (GIGAOP = 1000 Millionen Operationen pro Sekunde.)
- Mandeville (supra) liefert eine Beschreibung der rationalen Erklärung, die hinter den Anforderungen für ein Netzwerk von PE's steht. Komplexe Netzwerke sind für Arbeitsaufträge zur Bildverarbeitung effizient, zum Beispiel zur Prüfung von gedruckten Schaltkarten, zur Blutkontrolle oder Zeichenerkennung, sind jedoch bezüglich der Hardware, insbesondere des Speichers, sehr anspruchsvoll. Diese Patentspezifikation sorgt für einfache Neugestaltung von komplexen Netzwerken, die bei begrenztem Speicher oder begrenzter Buskanalbreite oder bei begrenzter Anzahl von PE's maximal möglich ist und für maximale Effizienz und demzufolge für einfache Neugestaltung bei einem anderen Arbeitsauftrag.
- Fig. 2 zeigt ein Detail der Verarbeitungselementgruppe (PEG) 10. Die PEG enthält N Verarbeitungselemente 21, PE0 . . . PEN-1, die Boolesche Kombinatorfunktion (BC) 23, die Busverteilungslogik (BD) 24, die Eingangauswahllogik (IS) 25, die Gating Logik (GL) 22 und die Steuerlogik (CTL) 26.
- Ein Verarbeitungselement 21 ist hier nachstehend mit PE bezeichnet. Das Ite (0 < I < N-1) PE 21 von N empfängt einen einzelnen, sequentiellen Bildstrom an der Iten Stelle der Leitung 27 von jeweils nur einem Bildelement (hier nachstehend mit PEL bezeichnet). Das Ite PE 21 erzeugt einen einzelnen, sequentiell umgewandelten Bildstrom an der Iten Stelle der Leitung 28, eine konstante Anzahl von PEL-Takten später. Ein PE 21 kann je nach Wahl des Systemdesigners als einzelnes oder komplexes PE (innerhalb der Kosten- oder Konstruktionsgegebenheiten) funktionieren. Die Einzelheiten einer typischen PE Durchführung wird später in Fig. 3 - Fig. 5 erörtert. Der Schlüssel zu Systemflexibilität ist jedoch, daß jedes PE fähig ist, jede gewünschte Bildstromumwandlung durchzuführen. Diese Funktionsneugestaltung ist für die hier vorgestellten Bildverarbeitungssysteme besonders einfach durchzuführen, da die Verarbeitungsanforderungen von den PE Funktionen nicht verlangen, während der Ausführung oder des Betriebs zu wechseln. Daher kann die besondere, von jedem PE durchzuführende Bildumwandlungsfunktion während der Rüst- oder Gestaltungszeit in einer Rate erstellt werden, die weit weniger streng als die Bildverarbeitungsrate ist. Somit kann der Leistungsfähigkeitsbereich eines PE's für die durch diese Erfindung adressierten Bildverarbeitungsaufgaben komplett universell angelegt und das System komplett neu gestaltet werden.
- Der Boolesche Kombinator 23 wird hier nachstehend BC genannt. Der BC ist ein Bauelement zur Erzeugung von bis zu 2N deutlichen sequentiellen Booleschen Funktionen der N+P Bildströme in den N Leitungen 28 und den P Leitungen 31. Ein Bit von jeder der N+P Bildströme gelangt zum Eingang des BC's (23) je PEL-Takt. Das Ausgangs-PEL (ein Bit) von jedem der 2N Bildströme wird je PEL-Takt erzeugt, eine konstante Anzahl von PEL-Takten später, N Bits in den Leitungen 29 und N Bits in den Leitungen 17. Der BC wird einfacher mit einem Speicher durchgeführt, der eine N+P Bitadresse und 2N Bits pro Wort hat. Dies garantiert, daß jede der 2N Ausgänge eine Funktion der N+P Eingänge sein kann. Wenn N+P größer als der vorherrschende Stand der Technik für kosteneffektive Speicher ist, dann wird die Funktion des BC's entweder weniger universell oder bezogen auf die Hardware und die Rechenzeit kostspieliger sein. Bei Verwendung eines RAM als Speicher kann der Ausgang in nur einer PEL-Takt erzeugt werden. Andere Ausführungen können eine Rechenzeit von mehr als einem PEL erfordern, das in diesem System durchaus zulässig ist, weil alles parallel in einem Pipeline-Modus durchgeführt wird. Unsere Behauptung, daß jeder der 2N Ausgänge jeweils eine separate, unabhängige Funktion des N+P Eingangbildstroms sein kann, sollte jedem Fachmann klar sein. Daher funktioniert der BC 23 sowohl bei logisch kombinierten Bildströmen als auch bei Bildströmen, die in den Eingang des nächsten PE's in dem Netzwerk geschaltet werden, ungeachtet dessen, ob das PE in der gleichen PEG entlang der Leitung 29 oder in der folgenden, benachbarten PEG entlang der Leitung 17 ist.
- Die Gating Logik 22 wird hier nachstehend GL genannt. Die GL bestimmt, ob die N Eingangsströme in den Leitungen 27, welche die Eingänge zu den N PE's 21 bilden, mit einem Bit pro Bitbasis von der vorhergehenden PEG über die Leitungen 17 oder von dem Ausgang von dieser PEG BC 23 über die Leitungen 29 kommen. Dies wird einfach als N unabhängiger Zwei-Wege-Multiplexor durchgeführt, der über ein Bit pro Bitbasis über die Leitungen 21 durch ein N Bitregister gesteuert wird, das sich in der Steuerlogik 26 befindet. Es sollte auch klar sein, daß wenn beide Leitungen 17 und 29 von den BC Ausgängen kommen, die mit irgendeiner Funktion programmiert werden können, die Gating Logik GL 22 dann als N Zwei-Wege-ODER-Funktionen durchgeführt werden kann, ohne daß eine Gating-Steuerung erforderlich ist.
- Die Busausgangs-Verteilungslogik 24 wird hier nachstehend mit BD bezeichnet. Der Numerierungsbus 9 wird nachstehend EB genannt. Die BD ist für die Steuerung von J der N PE 21 Ausgänge in den Leitungen 28 zu einem spezifischen Satz von EB 9 Positionen innerhalb der Leitungen 15 gemäß der spezifischen Identität (Adresse) dieser PEG verantwortlich. Jede einzelne PEG wird eine separate Identität haben. Die Identität bestimmt, welches J der Leitungen 15 innerhalb des EB 9, der eine PEG benutzt, um das J dieser Gruppe PE Bildströme an andere PEG's 10 und die Verteilerlogik 11 zu senden. Die Adresse jeder PEG wird außerdem in der Beschreibung der Steuerlogik 26 erörtert. Ein sehr einfaches Schema zur Auswahl, welche der EB 9 Leitungen 15 eines angenommenen PE 21 Ausgangs I (0 ≤ I ≤ J-1) durch die BD 24 angeschlossen wird, ist, das Ite Signal des Q-ten (0 ≤ Q ≤ M-1) PEG auf Bit JQ+I des EB 9 zu setzen, wo M die Anzahl der PEG's innerhalb einer angenommenen CAGE 3 ist.
- Die Buseingangs-Auswahllogik 25 wird hier nachstehend IS genannt. Die IS 25 wird eine angenommene Untermenge P von den MJ Gesamtbildern auf den Leitungen 16 des EB 9 auswählen und zwar alle gemäß der Auswahlinformation, die von der Steuerlogik 26 gehalten wird. Die Fülle oder die Spärlichkeit der Auswahlfähigkeit der IS 25 liegt wiederum in einer Systemwahl und hängt von dem Umfang der Flexibilität ab, die als erforderlich betrachtet wird, um die Netzwerke der PE's in dem gesamten System in der von der Anwendung geforderten Komplexität aus zuführen.
- Ein Kommentar zur Zeit- oder Rechenverzögerung ist zu diesem Zeitpunkt in Ordnung, da jetzt die Struktur der PEG beschrieben wurde. Bilder fließen im Pipeline-Modus von einem PE zum anderen. Bilder entstehen aus PEL's oder Bits, die sich durch die Pipeline bewegen, ein PEL pro Takt- oder Verschiebezeit. Ziel der Ausführung muß es sein, alles zu synchronisieren, ungeachtet des Pfades, den jedes Bild auf seinem Weg von einem PE zum anderen nimmt, unabhängig davon, wo sich jedes PE in der Hardware befindet und unabhängig von der Art der Rechen- oder Logikoperation, die von jedem PE durch jeden BC und durch die anderen Funktionen innerhalb der PEG durchgeführt wird.
- Jede der Funktionen innerhalb einer PEG, nämlich die GL, PE, BC, BD und IS Funktionen haben ihre eigenen variablen und wählbaren Fähigkeiten. Somit müssen die Pfade für die Bildströme durch das "gestaltete" Netzwerk von PE's die gleiche "Entfernung" oder Taktzeiten oder Anzahl von PEL-Verzögerungen haben, ungeachtet dessen, welcher Pfad oder welche Pfade in irgendeiner lokalen Ebene durch irgendeine Funktion genommen wird. Zum Beispiel der Pfad von einem PE 21 zu einem BC 23 muß ungeachtet des Pfades die gleiche Anzahl von PEL-Takten haben. Die möglichen, verschiedenen Arten von Pfaden, die innerhalb einer CAGE aufgenommen werden können (CAGE zu CAGE Pfade werden später in Verbindung mit der Verteilungslogik D11 und dem Numerierer E12 erörtert), sind die drei nachfolgend genannten:
- 1. PE zu einem BC, beide innerhalb der gleichen PEG, entlang des Pfades der Leitungen 28.
- 2. PE zu einem BC, beide innerhalb der gleichen PEG, entlang des Pfades von den Leitungen 28 durch die BD 24 zu EB 9, danach zurück von dem EB 9 durch die IS 25 und entlang der Leitungen 31.
- 3. PE von einer PEG zu einem BC von einer anderen PEG, entlang des Pfades von den Leitungen 28 durch BD 24 zu EB 9, danach zurück von dem EB 9 durch die IS 25 von der PEG Bestimmung und entlang der Leitungen 31 zu dem BC 23.
- Da es scheint, daß dies eine schwierige Aufgabe ist, sei der Leser daran erinnert, daß diese Verzögerungen nur in einer vollständigen Anzahl von PEL-Takten sein müssen. Daher muß, wenn die Pfade zwei und drei in dem vorherigen Beispiel zwei PEL-Takten beanspruchen, eine zwei PEL-Verzögerung irgendwo in dem Pfad von dem PE 21 zu dem BC 23 dazu addiert werden, ohne die Verzögerung von dem PE 21 zu der BD 24 zu verändern. Zur Klarheit: dieser Verzögerungsausgleich ist, falls erforderlich, als Teil der Funktion der verschiedenen Teile der PEG enthalten und wird nicht als separate Funktion gezeigt, die detailliert in dem Bereich von Fig. 2 dargestellt ist. Es gibt zum Beispiel endliche Verzögerungen bei dem Durchlauf der PE's 21 in der Leitung 28. Diese Verzögerungen erfordern richtige, zeitliche Abstimmung. Es wird für den Fachmann auch klar sein, daß der BC zum Beispiel irgendeine, gleich welche interne Verzögerung haben kann, solange wie die Verzögerung für jeden BC in jeder PEG in jeder CAGE über das gesamte System für jede einzelne Funktion konstant ist, die von den BC's für eine angenommene Netzwerkgestaltung durchgeführt werden muß. Es ist möglich, daß die Verzögerung innerhalb der BC's von einer Gestaltung sich von der Verzögerung der BC's einer anderen Gestaltung unterscheidet. Dies verursacht kein Problem. Was festgelegt werden muß und gleich sein muß, ist die Verzögerung von allen BC's innerhalb einer angenommenen Gestaltung ungeachtet der Funktion (und demzufolge auch ungeachtet der Daten), die jeder erfüllt. Dieser gleiche Kommentar gilt für jede der Funktionen innerhalb der PEG.
- Die Steuerlogik 26 wird hier nachstehend CTL genannt. Sie liefert Pfade, durch welche der Hauptrechner 1 die Einstellinformation an die einzelnen PEG's 10 und den ENUM 11 übertragen kann.
- Diese enthält die Adressierleitungen und Datenpfade zur Erstellung der Inhalte von zahlreichen Speichern, die verwendet werden können, um die erforderlichen Funktionen durchzuführen. Die CTL enthält auch Register und Speicher, die die Pfade innerhalb der GL 22, des BC's 23, der BD 24 und IS 25 steuern, die die verschiedenen Bildströme nehmen werden. Die CTL Logik 26 arbeitet auch, um die Leistung von Takt- und Modussignale zur Verwendung innerhalb der PEG, entlang der Leitungen 30, zu wiederholen. Schließlich enthält die CTL 26 einige Adressiermechanismen, um eine PEG von einer anderen zu unterscheiden, so daß die individuelle Anfertigung oder Gestaltung unternommen werden kann. Die PEG-Identität ist Teil der Hardware und ist elektronisch nicht neu gestaltbar. Diese PEG-Identität kommt von "Schaltungen", die sich innerhalb der Hardware- Gruppe befinden, die in dem Moment erstellt werden, in dem die Hardware in den EB 9 eingesteckt wird. Der einfachste Mechanismus dafür besteht in mechanischen Schaltungen, die eingestellt werden, bevor die PEG Hardware in die CAGE eingesetzt wird. Ein weiterer, möglicher Mechanismus kann durch Adressieren erfolgen, der in der Tat von der Position abhängt, in der eine angenommene Gruppe innerhalb der CAGE installiert wird. Das heißt, die Adresse wird durch die Verdrahtung der CAGE bestimmt. Ein anderer Mechanismus kann durch Übertragung an jede folgende PEG während der Einstellzeit erfolgen, indem die verschlüsselte Information innerhalb des Bildstroms verwendet wird. Diese letzte Methode wäre für Größtintegration sehr wünschenswert. Eine Adressgruppe muß, obwohl sie während der Einstellung abwechselnd für jede Gruppe durch einige Programmiermechanismen erstellt werden kann, als verbindlich für die verbleibende Einstellzeit angesehen werden, während die Gestaltungsinformation einzeln an jede Gruppe gesendet wird.
- Fig. 3 zeigt ein Detail eines Verarbeitungselements 21. Diese Ausführung eines PE's 21 hat eine Anzahl von Einrichtungen, um seine Funktion gegenüber dem klassischen PE zu verbessern, das später in Verbindung mit Fig. 4 erörtert wird. Das PE 21 enthält eine Anzahl von Verschieberegisterbits (SR) 32, Verzögerungselemente (DEL) 36, eine benachbarte Funktionslogik (NF) 33, Rückführungsregister (FB) 42, Fensterauswahllogik (WS) 37 und Ausgang-Auswahllogik (SL) 43.
- Eine Betrachtung über die rechenbetonten Anforderungen der PE sollte hier gemacht werden. Es gibt zwei unterschiedliche Arten von Bildverarbeitungsoperationen, die am einfachsten in den PE's ausgeführt werden. Dies sind Bildumwandlung und Bildübersetzungen. Umwandlung erfordert lokalen Wechsel. Übersetzung erfordert räumliche Distanz. Die Wechselposition bei Umwandlungspositionen ist die benachbarte Position. Bei jedem PEL in dem Originalbild ist das entsprechende PEL in dem daraus resultierenden Bild eine Funktion von PEL's in dem benachbarten Bild von dem entsprechenden PEL in dem Original.
- Eine Verschieberegisterbit-Schaltkreis 32, der genau ein PEL hält wird hier nachstehend SR genannt. Verschiedene SR's 32 werden untereinander über Leitungen 44 und mit zusätzlichen Verzögerungselementen 36.1, 36.2 über Leitungen 35 verbunden, um eine kontinuierliche, sequentielle Kette zu bilden. Das erste SR 32 in der Kette, SR 32.1, empfängt den Bildstrom über die Leitung 27. Einige oder alle der SR's werden über Leitungen 34 mit der Fensterauswahllogik 37 verbunden. Das in der PE 21 über die Leitung 27 ankommende Bild ist ein sequentieller Strom von PEL's, die eine PEL-Position pro SR Verschiebezeit verschieben. Die Funktion der SR's 32 ist es, in jedem PEL- Takt einen besonders kleinen Teil an dem ganzen Bild zu halten, um die PEL's in dem Teil des Bildes der benachbarten Funktionslogik 33 für die Bildumwandlungsberechnung verfügbar zu machen. Es sollte klar sein, daß der Umfang der Verzögerung, der von den Verzögerungselementen (DEL's) 36 geliefert wird, die Breite des von dem Bildstrom in Leitung 27 dargestellte Bild und die besonderen SR's 32, die mittels der Fensterauswahllogik (WS) zur Darstellung in der benachbarten Funktionslogik (NF) 33 ausgewählt werden, das räumliche Verhältnis unter den Bits des Bildes bestimmt, welche in der benachbarten Funktionslogik 33 verfügbar sind. Ein spezifischer Satz von PEL's der SR's 32 bildet das Bildfenster oder das benachbarte Fenster. Obwohl sich die herkömmliche Bildverarbeitungsterminologie gewöhnlich auf die Bits bezieht, die in einem quadratischen Bildfenster als benachbartes Fenster erscheinen, besteht derzeit kein Bedarf, daß die Bits in dem benachbarten Fenster, benachbarte PEL's sind. Die Auswahl des Fensters wird vielmehr durch die besondere Bildverarbeitungsoperation bestimmt, die ein besonderes, durchzuführendes PE ist.
- AUSGANGS-PEL (i) = Funktion von (EINGANGS-PEL (i) und benachbarte von (i)).
- Eine weitere Bildverarbeitungsoperation, die Übersetzung, ist einfacher als die benachbarte Operation. Jeder Ausgangs-PEL ist genau der gleiche wie ein Eingangs-PEL, der eine konstante weite "Entfernung" ist.
- AUSGANGS-PEL (i) = EINGANGS-PEL (i-J) J eine Konstante.
- Ein Verzögerungselement wird hier nachstehend ein DEL genannt. Die Funktion des DEL's 36 ist es, Teile des Bildstroms zu verzögern, so daß (gewöhnlich) vertikale benachbarte Bits von zwei oder mehreren Bildströmen in den passenden SR's 32 erscheinen und daher benachbart sind. Die Anzahl der DEL's ist gewöhnlich eins weniger als die maximale Anzahl von Bildströmen, die immer in einem einzelnen Fenster erscheinen. Die DEL's 36 können von einer programmierbaren Verzögerungsleitung, einem langen Verschieberegister mit wählbaren Abschnitten oder mit einem Speicher, in dem zuerst Abgelegtes zuerst bearbeitet wird (FIFO), mit einem programmierbaren Ausgleich, der durch Beibehaltung eines konstanten Ausgleichs zwischen dem Leseadressen- (Ausgang) und dem Schreibadressenregister (Eingang) erfolgt, die den FIFO steuern. In jedem Fall gehört es zu den Funktionen der DEL's, einen programmierbaren (wählbaren) Umfang von Verzögerung durch die Anzahl von PEL's zu liefern. Diese Verzögerungsfunktion kann einfach von einem Fachmann des digitalen Designs durchgeführt werden. Der Umfang, der von den DEL's 36 gelieferten Verzögerung, wird an die DEL's 36 über die Leitungen 30 von der CTL 26 von Fig. 2 übertragen.
- Die benachbarte Funktionslogik 33 wird hier nachstehend NF genannt. Die NF 33 empfängt R Eingänge über die Leitungen 38 von der Fensterauswahllogik (WS) 37 und S Eingänge über die Leitungen 41 von dem Rückführungsregister (FB) 42. Die NF 33 verwendet diese R+S Eingänge pro PEL-Takt, um T Ausgangsfunktionen zu berechnen, wobei ein Ausgang zu der Auswahllogik (SL) 43 über die Leitung 45 geht und S Ausgänge über die Leitungen 40 zu dem Rückführungsregister (FB) 42 gehen. (S ≤ T ≤ S+1). Es besteht kein konkreter Bedarf, daß die NF ihre Ergebnisse in einem PEL-Takt erzeugt; vorausgesetzt, es gibt eine Rückführung durch das Rückführungsregister (FB) 42, d. h. vorausgesetzt S > 0. Die NF 33 muß (wie alles in der Pipeline) einen Satz von T Ausgängen je PEL-Takt erzeugen. (Die Funktion des Rückführungsregisters 42 wird schwer zu verstehen sein, wenn die Produktionszeit ein PEL-Takt überschreitet). Es sollte für jeden Fachmann klar sein, daß eine sehr leichte Durchführung der NF 33 auftritt, wenn R+S eine ziemlich kleine Anzahl darstellen, weniger als 16 oder so. In solch einem Fall erfolgt die NF 33 am einfachsten durch eine R+S Bitadresse in einem Direktzugriffsspeicher RAM mit T Bits pro Wort. Weitere Lösungen sind auch verfügbar, wenn R+S eine größere Anzahl darstellen, dann kann diese wirtschaftlich in RAM's untergebracht werden und ihre Wahl ist gewöhnlich eine nach Konstruktionskosten und Dienstprogramm und Systemkapazität. Die Pfadleitungen 30 in der NF 33 sind der Pfad, über den die Gestaltungsdaten in dem NF 33 ankommen. Ungeachtet dessen, wie die NF 33 ausgeführt wird, werden diese Daten von dem Hauptrechner 0 durch die CC1 und die CTL 26 (siehe Fig. 1 und Fig. 2) während der Gestaltungszeit gesendet, um die spezifische Bildumwandlungsoperation zu erstellen, die durch jede NF von jedem einzelnen PE durchgeführt wird. Es sollte einem Fachmann auch klar sein, daß die Eignung der Hardware, die in einer Vielzahl von Netzwerken zu gestalten ist, unabhängig von der Wahl der PE Funktion oder der Art der PE Ausführung ist.
- Das Rückführungsregister 42 wird hier nachstehend mit FB bezeichnet. Das FB 42 empfängt S Bits von Eingängen über die Leitungen 40 und produziert S Bits von Ausgängen über die Leitungen 41. Im wesentlichen ist das FB 42 lediglich eine weitere Verzögerung, die dazu dient, S von NF Ausgangsbits für einen PEL-Takt zu halten, so daß die S Ausgangsbits von der NF 33 in dem nächsten PEL-Takt in die NF 33 zurückgeführt werden können.
- Die NF plus FB Kombination ist zu merken: Während die Laufzeitleitung 30 nicht benutzt wird, funktioniert die NF gemäß der bereits über die Leitung 30 während der Gestaltungszeit (Einstellung) empfangenen Information. Daher sieht die Kombination aus NF 33 und FB 42 wie eine klassische Finite-Status- Einrichtung (FSM) mit R unabhängigen Eingängen aus, S abhängigen Eingängen, die aus der Verzögerung S der Ausgänge abgeleitet werden und einen unabhängigen Ausgang. Wie schon bereits erwähnt wurde, kann solch eine FSM durch ein RAM gebaut werden, in die NF plus ein FB 42 Register implementiert werden. Sie kann auch mit einem schreibbaren PLA mit Ausgangs-Verriegelungsrückführung gebaut werden oder mit einem Assoziativspeicher CAM. Es sollte für einen Fachmann klar sein, daß die Wahl, die die NF treffen muß, auf die Größe des größten benachbarten Fensters, die maximale Kapazität der in dem benachbarten Fenster durchzuführenden Funktion und dem Pro und Contra von Kosten und Geschwindigkeit bezogen wird.
- Die Fensterauswahllogik 37 wird hier nachstehend mit WS bezeichnet. Die WS 37 empfängt die PEL's aus einer Anzahl von SR's 32 über die Leitungen 34 und sendet R PEL's an die NF 33 über die R Leitungen 38. Die WS 37 kann als einfacher Multiplex- oder Auswahlbaum gedacht werden, der eine größere Auswahl an räumlich bezogenen PEL's in der SR's 32 bietet, die der NF 33 dann zur Verfügung gestellt werden, wenn die SR's 32 direkt in die NF 33 eingehen. Die angenommene Funktion der WS 37 kann über die über die Leitungen 30, während der Gestaltungszeit empfangenen Information ausgewählt werden.
- Die Ausgangs-Auswahllogik 43 wird hier nachstehend SL genannt. Die SL 43 empfängt einen Eingang über die Leitung 45 von der NF 33 und einen Eingang über die Leitung 39 von einer SR 32.4.
- Eine Funktion dieser beiden Bits, die von der Einstellinformation in der Leitung 30 bestimmt wird, wird in der Leitung 28 ausgegeben. Die primäre Verwendung für die SL 43 ist, große Übersetzungen (d. h. große Verzögerungen) zu implementieren. Diese Verzögerungen sind meist aus folgenden Gründen nützlich: in einem benachbarten Fenster aus drei Reihen und drei Spalten und mit dem Mittelbit als Referenzeingangs-PEL wird das Ausgangs-PEL um das Minimum einer Reihe und einer Spalte gegenüber dem Eingangs-PEL zu Anfang des Stromes verzögert. Große Verzögerungen von mehr als zwei Reihen kann über den Pfad von dem SR 32.4 entlang 39 zu der SL 43 erzielt werden, indem die Verzögerung von DEL's 36.1 . . . 36.2 viel größer als die Bildbreite eingestellt wird. Diese Verzögerung kann jedoch nur von einem einzelnen PE der hier gezeigten Art erzielt werden, wenn in der NF 33 keine Umwandlung durchgeführt wird. Die angesprochenen Bildverarbeitungsarten, die Bildumwandlung und -übersetzung, die Nützlichkeit dieser Fähigkeit wird später, im Zusammenhang mit ausgeglichenen Verzögerungen in den Netzwerken der PE's von Fig. 6 erörtert.
- Ein Bemerkung zur Zeit- oder Rechenverzögerung ist zu diesem Zeitpunkt in Ordnung: Die zu betonenden Punkte sind denen der gleichen Erörterung bezüglich der Zeitverzögerungen innerhalb der PEG (siehe Erörterung von Fig. 2) sehr ähnlich. Bilder fließen im Pipeline-Modus von einem PE 21 zum anderen. Bilder entstehen aus PEL's oder Bits, die sich durch die Pipeline bewegen, ein PEL pro Takt- oder PEL-Takt. Ziel der Ausführung muß es sein, alles zu synchronisieren, ungeachtet des Pfades, den jedes Bild auf seinem Weg von einer NF 33 zu einer anderen nimmt, unabhängig davon, wo sich jedes PE in der PEG befindet und nach der jedes NF lokalisiert wird und unabhängig von der Art der Rechen- oder Logikoperation, die von jeder NF und durch die anderen Funktionen innerhalb der PE durchgeführt wird. Jede der Funktionen innerhalb eines PE, ausschließlich der SR, nämlich die DEL, WS, NF, FB und SL Funktionen haben ihre eigenen variablen und wählbaren Fähigkeiten. Somit müssen die Pfade für die Bildströme durch die Logik von einem PE die gleiche "Entfernung" oder Anzahl von PEL-Verzögerungen wie für irgendeinen anderen Bildstrom durch irgendeine andere PE haben, ungeachtet dessen, welche lokale Funktion innerhalb der PE durchgeführt wird. Diese letzte Anweisung muß jedoch qualifiziert werden, indem zu bemerken ist, daß gelegentlich die spezifische Verzögerung eines PE's zweckmäßig zur räumlichen Verschiebung eines Bildes bezogen auf ein anderes Bild oder andere Bilder eher innerhalb des Systems gesetzt wird, als es umzuwandeln. Zum Einrechnen der Übersetzungsverzögerung muß der Pfad von dem Eingang zu der PE 21 in der Leitung 27 zu dem Ausgang in Leitung 28 die gleiche Anzahl von PEL-Takten haben, ungeachtet der Rechenfunktion. Dies ist nicht schwierig; diese Verzögerungen müssen nur eine komplette Anzahl von PEL-Takten haben.
- Zwei Pfade für ein Bild durch ein PE 21 werden als Beispiel überprüft. Mit Bezug auf Fig. 3: der erste Pfad geht von dem Eingang 27 entlang des Pfades durch die SR 32.1 und die anderen SR's 32, dann über die Leitung 35 zu DEL 36.1 und danach über die Leitung 35 zu den SR's 32.2 und 32.3 und danach entlang der Leitung 34 zu WS 37 und Leitung 38 zu NF 33 und Leitung 45 zu SL 43, danach zu Leitung 28. Für diesen Pfad wird die WS 37 gesetzt, um SR 32.3 einzuschließen und NF 33 wird gesetzt, um die Bildidentitätsfunktion unter Verwendung der SR 32.3 als Eingang durchzuführen. Auch läßt sich der Verzögerungswert von DEL 36.1 auf die Breite (Zeilenreihe) des Bildes weniger der Anzahl von aufeinanderfolgenden PE's zwischen dem Eingang 27 und der Eingangsleitung 35 zu DEL 36.1 setzen.
- AUSGANGS-PEL (i) = EINGANGS-PEL (i)
- Dieser Pfad hat eine Verzögerung T von genau einer Spalte und einer Reihe, um den Eingang an SR 32.3 zu erreichen. Da alle PE Operationen bezogen auf ein benachbartes Fenster rund um solch einen Mittel-PEL definiert werden, wird diese eine- Reihe-eine-Spalten-Verzögerung oder -Übersetzung nominal als ein Teil der konstanten Verzögerung eines PE's angesehen. Das heißt, solch ein Pfad durch die PE wird als solcher ohne Übersetzung betrachtet (und natürlich ohne Umwandlung).
- Dieser erste Pfad hat auch eine festgelegte Verzögerung zusätzlich zu der (T=eine-Reihe-eine-Spalte) Verzögerung für das Bild, um SR 32.3 zu erreichen. Die festgelegte Verzögerung ist eine Funktion der Implementierung der Hardware, da WS, NF und SL jeweils ihre eigene konstante (einschließlich 0) Anzahl von PEL-Takten zur Durchführung ihrer jeweiligen Funktion nehmen können, um ihre entsprechende Funktion durchzuführen.
- Der zweite Pfad geht von dem Eingang 27 durch die SR's 32 und DEL's 36.1 und 36.2 schließlich zu SR 32.4, danach entlang der Leitung 39 zu SL 43 und schließlich zu Ausgang 28. Dieser Pfad führt auch die Identitätsoperationen durch, jedoch mit einem unterschiedlichen Umfang an Übersetzung oder Verzögerung wie der erste Pfad. SR 32.4 wird im voraus gewählt, so daß mit der richtigen Wahl des Umfangs an Verzögerung in den DEL's 36 ein gewünschter Umfang an Verzögerung oder Übersetzung erreicht werden kann. Es sollte klar sein, daß ein Verzögerungswert der DEL's es dem ersten und zweiten Pfad gestattet, gleich zu sein; der Wert hängt von den festgelegten Verzögerungen ab. Die primäre Nützlichkeit dieser programmierbaren, großen Verzögerung wird außerdem in Verbindung mit einem Netzwerk von PE's in Fig. 6 erörtert.
- Fig. 4 zeigt ein Detail eines Typs des Verarbeitungselements 21. Dies ist das PE, das in der Literatur am häufigsten zu finden ist. Eine Boolesche Ausführung, jedoch keine Gray- Skala, dieses Typs von PE 21 kann durch die erweiterte Funktion PE ausgeführt werden, die in Verbindung mit Fig. 3 durch einen besonderen Satz von Gestaltungsvariablen erörtert wurde. Sie wird am einfachsten wie folgt beschrieben: Die PE 21 umfaßt eine Anzahl von Verschieberegisterbits 32, zwei DEL's 36 und eine NF 33. Der Rest der Elemente in Fig. 3, nämlich die WS 37, die FB 42 und die SL 43 kann als weglaßbar oder durch Verdrahtung ersetzbar angesehen werden, wie dies der Fall sein kann. Neun SR's 32 sind räumlich drei aufeinanderfolgende SR's 32 von drei aufeinanderfolgenden Reihen des Eingangsbilds. Wenn die Anzahl von PEL-Verzögerungen der DEL's 36 gewählt wird, so daß die gesamte PEL-Verzögerungen von SR 32.1 bis SR 32.2 und von SR 32.2 bis SR 32.3 jeweils gleich mit der Breite des abgetasteten Bilds in PEL's sind, dann werden die neun SR's 32, die an die NF 33 über die Leitungen 34 angeschlossen werden, zu exakt drei mal drei PEL's in einem quadratischen Raster, dem klassischen benachbarten Fenster.
- Es sollte für einen Fachmann klar sein, daß wenn alle die Elemente von Fig. 3 in die Hardware eingebaut werden, die Gestaltung von Fig. 4 erreicht werden kann. Dies erfolgt durch die Gestaltung der Elemente WS 37, NF 33, FB 42 und SL 43 wie folgt:
- Setze DEL's 36 und WS 37, um 9 SR's 32 auf die Leitungen 34 von genau drei SR's 32 in jeder der ersten drei Reihen zu wählen und plaziere ihre Werte auf die Leitungen 38. Setze NF 33, so daß sie logische Funktionen der R Eingänge von der WS 37 berechnet, die die Werte der S Eingänge auf den Leitungen 41 von dem nicht beachteten FB 42 erstellt. Dann setze die Funktion von SL 43, so daß der Ausgang 28 von dem Eingang 45 gewählt wird. Auf diese Weise werden einfachere PE Implentierungen, so zum Beispiel die von Fig. 4, durch die universellere PE Implementierung von Fig. 3 durchgeführt.
- Fig. 5 zeigt ein Detail des bevorzugten Ausführungsbeispiels 21. Ein PE 21 könnte von der erweiterten Funktion des PE's ausgeführt werden, das in Verbindung mit Fig. 3 erörtert wurde und zwar durch einen besonderen Satz von Gestaltungsvariablen, wie i in Fig. 4 zeigt, oder es könnte durch Gestaltung der Hardware von Fig. 3 erzielt werden, würde jedoch in dem System der Erfindung nicht voll wirksam sein. Das bevorzugte PE 21 umfaßt vierundzwanzig SR's 32, zwei DEL's 36, ein FB 42 von einem Bit, eine NF mit zehn Eingängen (R = 9 und S = 1) und einen Ausgang (T = 1) und eine SL 43. Neun SR's 32 sind geradeaus, entlang der Leitungen 34 mit dem NF 33 verdrahtet. Diese neun SR's 32 sind räumlich drei aufeinanderfolgende SR's 32 von drei aufeinanderfolgenden Reihen des Eingangsbilds. Wie bereits gesagt, wenn die Anzahl von PEL-Verzögerungen der DEL's 36 ausgewählt sind, so daß die gesamte PEL-Verzögerungen von SR 32a zu SR 32b und von SR 32b zu SR 32c gleich der Breite des abgetasteten Bilds in PEL's sind, dann sind die neun SR's 32, die mit der NF 33 über die Leitungen 34 verbunden sind, genau die drei mal drei PEL's in einem quadratischen Raster. Wenn sich' die gesamten Verzögerungen der DEL's 36 von der Breite des abgetasteten Bilds in PEL's unterscheiden, dann bilden die PEL's in den neun, mit der NF 33 verdrahteten SR's 32 ein unterschiedliches, benachbartes Fenster. Man kann diese Flexibilität als Äquivalent zu einer eingeschränkten Auswahl der WS 37 Funktion von Fig. 3 betrachten, die in dem bevorzugten Ausführungsbeispiel nicht enthalten ist. Der Rest der vierundzwanzig SR's 32 verbleibt in Serien mit den DEL's 36 und führt die gleiche Funktion von den DEL's aus, nämlich Bereitstellung der Verzögerung und ebenso Bereitstellung der spezifischen SR 32e, die über die Leitung 39 mit der SL 43 verbunden ist. Die Wahl der 24 SR's wurde durch die Verfügbarkeit von 8 SRL's pro DIP vorgegeben und ist in der gesamten Anordnung nicht signifikant.
- Die benachbarte Funktionslogik, NF 33, wird mit einer minimalen Ausführung des Rückführungsmechanismus 40-42 von Fig. 3 ausgerüstet. Dieser minimale Bildfunktions-Rückführungsmechanismus 45-47 führt der benachbarten Funktionslogik eine Ein- Bit-Funktion des Ausgangs als eine Bildbeschreibung zurück, die mit dem nachfolgenden Bild zu betrachten ist. Dieser minimale Bildfunktions-Rückführungsmechanismus ist u. a. nützlich bei dem Erfassen von groben Veränderungen in dem vorliegenden Bilderstrom, zum Beispiel, daß alle weißen den schwarzen folgen, und somit Leistung bietet, die seine Kosten deutlich überschreiten.
- Fig. 6 zeigt eine logische Ansicht eines Teils der CAGE Hardware (Kasten 3, Fig. 1), die für die Verwendung von 8 PE's und dem erforderlichen BC gestaltet wurde, um das Netzwerk von PE's in der abgebildeten, logischen Kombination auszuführen. Man wird verstehen, daß dies eine Funktionsansicht der Hardware nach einer besonderen Gestaltung oder Einstellung ist, die in einem Teil von einem oder mehreren PEG's aus Fig. 2 angewendet wurde. Dies ist die Hardware der PEG's, wie sie der Anwender, nicht der Hersteller, sieht. Diese Figur zeigt acht PE's 21. Sie zeigt drei logische Funktionen ODER-ODER-UND, die in der Tat durchgeführt werden, indem ein oder mehrere BC' 23 gestaltet werden. Wenn die acht PE's alle in der gleichen PEG gezeigt werden, dann werden die drei logischen Funktionen und alle die Zusammenschaltungen zwischen PE's 21 und Zusammenschaltungen zwischen PE's 21 und den logischen Funktionen von dem einen BC oder der PEG durchgeführt. Wenn es jedoch Zweck des Designs ist, ungeachtet dessen wo sich innerhalb welchen PEG's die einzelnen PE's befinden, vorzusehen, daß die gleiche logische Verbindung, die in der Figur abgebildet ist, nur durch richtiges Gestalten der zahlreichen Elemente der fraglichen PEG's erreicht werden kann.
- Zu diesem Zeitpunkt ist es nicht erforderlich, die Bildverarbeitungsfunktion zu betrachten, die von der in Fig. 6 gezeigten Anordnung der PE's und BC's ausgeführt wird. Der Zweck dieser Figur ist es, die Netzwerkgestaltungsfähigkeit der Erfindung zu zeigen; dieses Netzwerk stellt bildlich nur die Netzwerkarten vor, die erreicht werden können.
- Es ist also aufschlußreich zu bemerken, daß es drei unterschiedliche Funktionen gibt, die von den Elementen der PEG ausgeführt werden. Es handelt sich um: Die Bildumwandlungs- und/oder Übersetzungsfunktion, wie sie von dem PE 21 ausgeführt wird. Die logischen, Bit-um-Bit Kombinationen von zwei oder mehreren Bildströmen, die durch die logischen Funktionen der ODER-ODER-UND charakterisiert werden, wie sie von dem BC 23 ausgeführt werden. Die dritte Funktion zur Bereitstellung der Zusammenschaltungen zwischen PE's erfolgt durch die Kombination (siehe Fig. 2) der GL 22, der BD 24, dem EB 9, der IS 25 und dem BC 23 innerhalb einer oder mehrerer PEG's. Auch wird ein Teil der PE Zusammenschaltungsfähigkeit durch die Kabel der Implementierungsleitungen 17 (siehe Fig. 1) zwischen den zahlreichen PEG's und zwischen den zahlreichen CAGE's 3-6 geliefert.
- Es gibt verschiedene Wege, auf die die PE's 21 innerhalb der PEG's 10 zugeteilt werden können. Der einfachste Fall ist, wo N größer als oder gleich 8 ist und wo alle acht PE's 21 in Fig. 6 sich in der gleichen PEG 10 von Fig. 2 befinden. Für das gezeigte Netzwerk muß kein PE 21 Ausgang an irgendwelche BC 23 Eingänge übertragen werden, ausgenommen für jenen BC, der in der gleichen PEG ist. Ungeachtet dessen, welcher der PE's mit dem EB 9 (Fig. 1) über die BD 24 (Fig. 2) verbunden ist und ungeachtet dessen, welche EB 9 Signale von der IS 25 in den P Eingängen des BC 23 gewählt werden, wird der BC 23 so gestaltet, daß alle außer acht der N Eingänge von den PE's über den Leitungen 28 ignoriert werden. Die Verbindungen zwischen den Eingängen 17 zu den PE's 21 werden von der Auswahlfähigkeit der GL 22 durchgeführt. Gleichzeitig werden auch die anderen sechs PE's 21 ihre Eingänge von dem BC 23 über die GL 22 empfangen. Die sechs BC 23 Ausgänge, die zu den PE 21 Eingänge gelangen, werden über die Leitungen 29 ausgeführt, wo der eine Ausgang von der BC 23 "UND" Funktion direkt zu Leitung 17 gehen wird. Somit werden die komplette Anzahl der Verdrahtungen, die in Fig. 6 abgebildet sind, und die logischen Funktionen, die die PE Ausgänge kombinieren, alle von der "programmierbaren", neu gestaltbaren Hardware der PEG geliefert.
- Es wird dem Fachmann klar sein, daß die acht PE's 21 von Fig. 6 willkürlich unter die N PE's der PEG zugeordnet werden können.
- Als nächstes der Fall, wo acht PE's von Fig. 6 nicht alle in der gleichen PEG sind. Dies kann aus einer Reihe von Gründen geschehen, der offenkundigste davon ist, daß ein PEG weniger PE's hat als erforderlich sind. Eine mögliche, einfache Lösung, dem zu begegnen: wenn die acht PE's in zwei benachbarte PEG's 10 umgesetzt werden, wenn die Pfade 17 zwischen den PEG's durch einen der Pfade ersetzt wird, der von den Leitungen 29 innerhalb einer PEG geliefert werden.
- Ein weiterer Fall könnte sein, daß nur einige PE's in jeder PEG verbleiben, nachdem der Rest des Netzwerkes zugeordnet ist.
- Ein weiterer Fall (davon ausgehend, daß dieses Diagramm nur ein Teil eines größeren Netzwerks war) könnte sein, daß der Verbindungsbedarf eines hochbeschalteten Netzwerks größer als die Anzahl J von Verbindungen durch den EB 9 zu den PE's in diesem Diagramm ist, um diese zu anderen PE's in anderen PEG's zu schalten. Das heißt, die Verbindungen zu dem EB 9 durch den BD 24 würden nicht alle Anforderungen erfüllen und so müssen einige PE's in anderen PEG's lokalisiert werden, um einen EB Engpaß zu vermeiden.
- Ein weiterer Fall (sicherlich nicht aus dem in diesem Diagramm abgebildeten Musternetzwerk ersichtlich) ist, daß die logische Funktion, die zwischen den PE's in dem BC 23 ausgeführt wird, eine Funktion von mehr als N+P Bildströme ist. In diesem Fall muß das Endergebnis in Stufen mit der Endebene der Logik aufgebaut werden, die in einem zweiten BC durchgeführt wird. Dies ist ein Problem, das analog zu dem Eingangslastproblem des Logikfactorings ist, wenn UND's und ODER's für eine große Anzahl von Signalen aus Schaltkreisen mit wenigen Eingängen aufgebaut werden müssen.
- In all den vorerwähnten Stellen gibt es die Anforderung, daß wenigstens eine der Verbindungen zwischen zwei PE's 21 über eine Logikfunktion oder Verbindung BC 23 durch einen Pfad zu dem EB 9 durch die BD 24 und zurück zu einem BC 23 von einer zweiten PEG über IS 25 erfolgen muß. Dies ist kein Problem, solange die Zuteilung einer angenommenen Bildfunktion (Netzwerk von PE's) in einer spezifischen PEG die gesamte Zusammenschaltungsfähigkeit des aktuellen Ausführungsbeispiels nicht überschreitet.
- Es wird auch klar sein, daß nachdem Funktion und Implementierung des Verteilers (D) 11 detailliert sind, die Verbindung zwischen PE's über die BC's auch quer durch die CAGE Grenzen durchgeführt werden kann. An dieser Stelle können zusätzliche Beschränkungen auferlegt werden, wie allgemeine Zeitbeschränkungen zur Aufrechterhaltung des Synchronismus durch selektive Verwendung von PE's als Übersetzungselemente, um die Verarbeitungsverzögerungen anzupassen.
- Die Nützlichkeit der großen programmierbaren Verzögerung, die unter Verwendung der Leitung 39 des Pfades der SL 43 in Fig. 3 verfügbar ist, kann auch bei Verwendung der Abbildung von Fig. 6 festgestellt werden. Zum Beispiel die beiden PE's entlang des unteren Pfades von Leitung 8 können nur als Verzögerungseingangsleitung 8 dienen, um die Verzögerung der oberen beiden PE's entlang des oberen Pfades von Leitung 8 anzupassen. In diesem Fall führen sie nur die Übersetzung durch und können durch eine PE mit jeweils doppelter Verzögerung ersetzt werden; einer Fähigkeit, die von der großen, programmierbaren Verzögerung geliefert wird.
- Fig. 7 - Fig. 13 zeigen Einzelheiten zur Ausführung des bevorzugten Ausführungsbeispiels einer PEG 10 (Fig. 1). Fig. 14 zeigt die Busverteilungslogik, den Verteiler (D) 11 (Fig. 1). Fig. 15 illustriert die Numerierungslogik, den Numerierer E 12 (Fig. 1).
- Eine Auswahl von spezifischen Werten ist in dem Ausführungsbeispiel des PEG verfügbar. Zum besseren Verständnis der Erklärung hat das bevorzugte Ausführungsbeispiel der PEG 10 die spezifischen Werte aus TABELLE 1 mit ihren variablen Eigenschaften:
- N = 8 Anzahl von PE's pro PEG
- P = 4 Anzahl von PE Signalen von dem EBUS, der über eine PEG zu dem BC gelangt.
- J = 4 Anzahl von PE Signalen von jeder PEG, die mit dem EBUS verbunden ist.
- R = 9 Anzahl von Bild PELS (SR 32) in der benachbarten Funktion NF 33.
- S = 1 Anzahl von rückgeführten Bildströmen zu der NF 33 durch das FB Register 42.
- T = 10 T = R + S Gesamtanzahl von Eingängen zu der NF 33.
- M = 8 Anzahl von PEG's pro CAGE.
- Die illustrierte Nomenklatur von Fig. 7 bis Fig. 15 wird von dem Fachmann des digitalen Designs verstanden werden. Sie ist in Wirklichkeit hierarchisch. Mehrfache Verwendungen des gleichen Teils der Logik werden nicht einzeln gezeigt; das Symbol *n repliziert, wo immer es mit n Zeiten verbunden ist. Leitungen tragen so viele Signale wie ihre Breite oder ihr Index angeben. Namen von Leitungen (und möglicherweise der jeweiligen Indexe) können sich ändern, wenn Signale von einer Ebene der Hierarchie zur nächsten durchlaufen. Kommentare werden von Zeit zu Zeit in dem Text gemacht, um spezifische Einrichtungen hervorzuheben, es werden jedoch an keiner Stelle Versuche gemacht, um all die Einrichtungen der Logikbeschreibungsrichtlinie zu beschreiben, die wir benutzt haben. Für weitere Einzelheiten wird der Leser an den IBM Research Report RC 10491 "Basic Logic Editor (BLE)", 9. April 1984, von John Beetem verwiesen, der Einzelheiten aus der graphischen Sprache enthält, die von dem verwendeten DA System benutzt werden, um diese Figuren zu zeichnen.
- In Basic Logic Editor (BLE) Diagrammen enthalten Figuren einen sehr grundlegenden Satz von Elementen. Es gibt Eingangs- und Ausgangsports. Es gibt Leitungen. Es gibt Blöcke, um neu zu numerieren. Schließlich gibt es Komponentensymbole. Beispiele von jeder Art sind in Fig. 7 zu finden und eine kurze Erörterung der angewandten Richtlinien folgen nachstehend:
- Zuallererst: Ein- und Ausgangsports sind Pentagons, immer in der Form eines gleichschenkeligen Dreiecks, dessen Basis auf einer Seite eines Rechtecks liegt. Eingangsports werden immer an dem Schnittpunkt von zwei sichtbaren Seiten des Dreiecks an eine Leitung angeschlossen. Ausgangsports werden an dem Mittelpunkt der Seite des Rechtecks an die Signalleitung angeschlossen, die dem Dreieck gegenüberliegt. Der Name des Ports befindet sich innerhalb des Symbols. Der Index des Signals in dem Falle eines Eingangs oder Ausgangs mit Mehrfachleitungen wird immer an das Portsymbol angeschlossen. Siehe zum Beispiel in Fig. 7 den Eingangsport PEPE < 0 : 7> und den Ausgangsport SEPE < 0 : 7> , wo < n:m> ein Kürzel für n, n+1 . . . m-1, m ist.
- Es gibt zwei Arten von Leitungen. Signalleitungen sind solide und haben, wenn sie unidirektional sind, einen Pfeil an dem Bestimmungsort. Signalleitungen können durch Anschließen des Symbols < i:j> direkt an den Teil der Leitung indexiert werden, der weniger als das Vollkomplement der Indexe ist. Zum Beispiel Leitung MBI_N< 0 : 17> , die zu der PEG von dem Eingangsport des gleichen Namens gelangt, die durch drei Signale MBI_N < 8 : 10> dividiert wird, geht zu dem ADDRport von Fig. 8. Signalleitungen können auch mit Text benamt werden, der an die Leitung als FBACK angebracht wird. Signalleitungen können auch mit dem Namen des Ports bezeichnet werden, an den die Leitung angeschlossen ist. Die Anzahl der Signale in einer Signalleitung kann durch "/n" dargestellt werden, die an der Leitung angebracht ist. Trennstriche werden verwendet, um etwas hervorzuheben, wie in dem Fall, wo ein Kasten 23 mit Trennstrichen die Symbolgruppe hervorhebt, die den BC bildet.
- Der Block zur Neunumerierung ist ein kleines Sechseck, mit dem zwei Signalleitungen verbunden sind. Die Anzahl der neu numerierten Signale wird durch ein *n dargestellt, das an dem Block angebracht ist. N Signale in einer Leitung werden als N Signale in der anderen Leitung neu numeriert. Zum Beispiel werden die fünf Signale des Eingangsports CBI_N< 0 : 4> neu numeriert und werden zu den Signalen < 20 : 24> der Signalleitung MBUS, die zu dem Eingang CTLS in den Kästen DEL 36 geht. Solche Neunumerierung erfolgt gewöhnlich, um Teile von Signalen zusammen zu einem neuen Signal zu verbinden, wie zum Beispiel, wo sich das CBI_N Signal und das MBI_N Signal in einer Leitung, Bus genannt, verbinden.
- Die Komponentensymbole der BLE werden gemäß dem Wunsch des Technikers gebildet, um irgendeine Form zu erhalten und sind in Wirklichkeit entweder einfach oder raffiniert. Komponentensymbole, die keine zusätzliche Einzelheit in der BLE haben, werden als einfache Elemente bezeichnet. Der mit DINH gekennzeichnete Kasten in Fig. 7, ist die Logikarte LS 374 oder der Inverter 1.1 in Fig. 8, ist ein Beispiel für solch einfachen Elemente. Andere Symbole, die zusätzliche Einzelheiten in der BLE haben, d. h. für die eine andere Fig. existiert, werden als raffiniert bezeichnet. Der mit Fig. 8 gekennzeichnete Kasten und das mit GL gekennzeichnete Symbol (Kasten 22 mit Trennstrichen), die einen multiplexen Signalpfad repräsentieren, sind Beispiele für diese raffinierten Elemente. Alle Komponentensymbole haben ihre Eingangs- und Ausgangsports, die durch Anbringung des Portnamens an der Stelle der Symbolkontur identifiziert werden, wo die Signalleitung angebracht werden muß, um mit den internen Figuren verbunden zu werden. Der Leser wird an die Einführung zu Fig. 8 verwiesen, für die eine ausführliche Erklärung gegeben wird. In dieser Patentanmeldung werden die Einzelheiten von einigen dieser raffinierten Figuren nicht aus Gründen der Einfachheit geliefert. Der Unterschied zwischen einer einfachen und einer raffinierten Fig. kann nicht durch Betrachten der Figur selbst erkannt werden. Eine Einfache ist einfach eine Figur, für die das komplette BLE DA System keiner weiteren Beschreibung bedarf. In dieser Spezifikation gibt es zwei Arten von raffinierten Figuren:
- (1) Diejenigen, die mit Fig. X gekennzeichnet sind, für die ein zusätzliches Detail geliefert wird; und
- (2) Diejenigen, die nicht mit einer Figur-Nummer sondern nur mit einem Namen gekennzeichnet sind. Wo es angebracht erscheint, wird eine Funktionsbeschreibung in dem Text geliefert.
- Manchmal haben auch Einfache ein zusätzliches Detail, jedoch nicht in BLE Form. Nehmen wir den Kasten DINH, den die BLE Zeichnung von Fig. 7 als einen LS374 Dual Inline Package (DIP) identifiziert. Die Operation dieser LS DIP und von allen LS Blöcken, die in Fig. 7 und in den nachfolgenden Figuren verwendet wird, wird insbesondere in den Veröffentlichungen wie "The TTL Data Book for Design Engineers" detailliert, das durch Texas Instruments veröffentlicht wurde, und das allgemein für den Fachmann verständlich ist. Das BLE DA System selbst benötigt die in dem Buch "The TTL Data Book" gelieferten Details nicht und so wird die Figur als eine Einfache der BLE bezeichnet.
- Fig. 7 ist das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels eines PEG's 10.
- Die Eingänge des PEG 10 sind PEPE < 0 : 7> , MBI_N< 0 : 19> , CBI_N< 0 : 4> und E_B_I< 0 : 31> . Die Eingänge PEPE entsprechen den Leitungen 17 in Fig. 1 und bringen jeweils acht Bildstromwerte von M7 oder vorhergehenden PEG's 10 oder von dem D 11 in einer vorhergehenden CAGE 3/4/5. MBI_N entspricht einem Teil der Leitungen 14 in Fig. 1 und bringt die Steuer-, Daten- und Adressleitungen des Busses, der erforderlich ist, um die von dem Hauptrechner H 0 durch die Steuerkarte CC 1 verwendeten Befehle auszuführen, um die PEG 10 in eine ihrer möglichen Gestaltungen auszuführen. Diese MBI_N Signale folgen den Busspezifikationen des Intel MULTI-BUS (TM) Systems. Diese MBI_I Signale werden von dem Hauptrechner H 0 geleitet, deren Leistung wird jedoch von der CC 1 für jede CAGE 3,4,5,6 wiederholt. Die CBI_N< 0 : 4> Eingänge sind ebenfalls Teil der Signalgruppe 14, werden jedoch insbesondere von der CC 1 Hardware erzeugt und eine Leitung ist für eine einzelne CAGE spezifisch. Diese Leitungen sind Steuersignale, Modussignale und Taktsignale, die während des Betriebsmodus aktiviert werden. Die CBI_N Leitungen werden ebenfalls von dem leistungswiederholungsfähigen Systembus der CC 1 Hardware und RR 20 verteilt, werden jedoch eher Positionen in dem P2 Teil des Busses als einem Anschluß P1 zugeteilt, wie die MBI_N Signale. Die E_B_I< 0 : 31> Signalleitungen 15 sind die Numerierungsbuspositionen. Sie werden ebenfalls physikalisch über einen Teil des Systembusses P2 Anschlusses verteilt.
- Die Ausgänge der PEG 10 sind SEPE< 0 : 7> , MBO_N (eine einzelne Leitung) und E_B_O< 0 : 31> . Die SEPE< 0 : 7> Signale sind Leitungen 17, die acht Bildströme von einem PEG 10 zu jeweils dem nächsten PEG in der Reihenfolge in einem CAGE oder zu der Verteilungseinrichtung D10 des Numerierungsbusses tragen. Das MBO_N Signal die Systembus-Befehlsbestätigung und ist auch Teil der P1 Signale der Systembusleitungen 14. Die E_B_O< 0 : 31> Signalleitungen 16 sind identisch mit den E_B_I Signalen und erstellen das Vollkomplement des EBUS Signals EB 9. Die Leitungen 15 und 16 wurden in der Erörterung nur zum Zwecke der Klarheit getrennt. E_B_O Signale sind 32 von 64 PE Bildströmen, die innerhalb der acht PEG's 10 eines CAGE erzeugt werden und auf dem EB 9 durch die BD 24 Logik (Fig. 2) Teile der PEG's 10 innerhalb jeder CAGE 3/4/5/6 erzeugt werden. Die EBUS Signale werden auch dem P2 Anschluß zugeteilt.
- Die Übereinstimmung zwischen den zahlreichen Teilen der PEG 10 wie den Teilen, die in Fig. 7 und in Fig. 2 abgebildet sind, wird nur ungefähr erreicht. Keine genaue Übereinstimmung kann bei einigen Teilen der Logikfunktion in mehr als einer Kapazität erreicht werden und fallen daher logischerweise in mehr als ein Unterteil der PEG 10 wie in Fig. 2 abgebildet. Der Kasten GL 22 in beiden Fig. 's identisch. Der Kasten 21 in Fig. 7 (innerhalb der gestrichelten Linie) entspricht mehr oder weniger den 8 PE's 21 (Fig. 2); mit Ausnahme, daß einige Teile der CT 26 ebenfalls in der Fig. 7 Darstellung erscheinen. Der Kasten BC 23 (der in Fig. 7 als die Kästen Fig. 10 und RSLF und RSLT) ist in beiden Figuren identisch; mit Ausnahme, daß einige Teile der CT 26 in der Fig. 7 Darstellung erscheinen. Die Fig. 11 und Fig. 12 in Fig. 7, die zusammen kombiniert wurden, entsprechen der Kombination der Kästen BD 24 und IS 25 in Fig. 2. Schließlich bilden die verbleibenden Teile, nämlich die Kästen DINH, WINC, DINL, EBD, ADD und Fig. 8, das meiste der Steuerlogik CT 26, während der Rest der CT 26 innerhalb der anderen Fig. Kästen von Fig. 7 abgelegt wird. Ausführliche Beschreibungen der einzelnen Komponenten und die Funktionsoperation der PEG wird in Fig. 7 eingegeben.
- Der DINH ist ein 8-Bit-Register (LS374), das als Halteregister für Daten (Ausgänge Q) auf dem Weg zu dem BC 23 (Fig. 10 Eingangsleitungen WDATAH) und zu den PE's während des Gestaltungsmodus arbeitet, so daß die Speicher in diesen beiden Funktionsteilen Gestaltungsdaten empfangen können. Während des Betriebsmodus steuern die Inhalte der DINH auf einer Bit-für- Bit-Basis die acht Pfade in die GL 22 über die Leitungen C.
- Der DINL ist ein 8-Bit-Register (LS374), das als Halteregister für Daten (Ausgänge Q) auf dem Weg zu dem BC 23 (Fig. 10 Eingangsleitungen WDATAL) während des Gestaltungsmodus arbeitet, so daß die Speicher in diesem Funktionsteil Gestaltungsdaten empfangen können. Während des Betriebsmodus steuern die Inhalte der DINL auf einer Bit-für-Bit-Basis die acht Pfade in die SL 43 über die Leitungen C.
- Das WINC Register ist ein 12 Bit binäres Zählregister (Einzelheiten zur Implementierung nicht abgebildet), welches als Halteregister für Adressdaten (Ausgänge ADDR) während des Gestaltungsmodus arbeitet. Die Adresse in WINC adressiert den BC Speicher über die Leitungen ADDR von Fig. 10, und den PE Speicher (NF) über die Leitungen ADDR von Fig. 9 (niedrigste Reihenfolge nur 10 Bits), während die Daten in DINH und DINL in diese Speicher geschrieben werden. Während des Betriebsmodus dienen die Inhalte von WINC als vier drei Bitregister, welche durch E_SEL Eingänge in Fig. 11 steuern, wie die vier (P) PE's in der PEG von dem EBUS ausgewählt werden.
- Der ADD Kasten ist ein Decoder. Er enthält eine Schaltung, um physikalisch die Identität dieser PEG innerhalb der CAGE, eine von N, festzulegen. Diese drei Bitadressen oder Identität wird von ADD Ausgang ADR zu Eingang ADD_N von Fig. 11 übertragen, wo diese verwendet werden, um festzulegen, wie die vier (J) PE's dieser PEG mit dem EBUS zu verbinden sind. Der ADD Kasten entschlüsselt auch die Adressbits von dem IEEE 796 Bus, die als ADIN Eingänge empfangen wurden. Wenn die Schalteinstellung die Adressbits an ADIN anpaßt und zusätzliche Adressbits an den PEG Code für Anweisungen anpaßt, die für die PEG bestimmt sind und das CAGE Auswahlsignal von der CC 1 in dem Eingang CSEL aktiv ist, dann sendet ADD ein Auswahlsignal an die Steuerungen in Fig. 8, um diese zu aktivieren. Dies geschieht nur während des Gestaltungsmodus, wenn Register oder Funktionen innerhalb der PEG adressiert werden. Das Auswahlsignal geht von der Leitung ADD zu Ausgang BSEL in Fig. 8 zu Eingang SEL.
- EBD ist ein acht Bit-Inverter-Puffer (LS540), der die acht Datenbits des Systembusses invertiert und deren Leistung zur Verteilung an die zahlreichen Register innerhalb der PEG (DINH, DINL und WINC) wiederholt.
- Der RSLF ist ein 8-Bit-Register (LS374), das als Halteregister für acht der BC Ergebnisse arbeitet, die von Fig. 10 Ausgängen SBUSH zu RSLF Eingängen D in B_CLK Zeit in Eingang CK kommen. Der Zweck dieses Registers ist es, die zeitliche Abstimmung auszugleichen, da Bilddaten (Ausgänge Q) sich von dem BC zu der PE über die Eingänge A in GL 22 und danach zu SER_In von Fig. 9 bewegen. Dies geschieht während des Betriebsmodus. Das Register hat während des Gestaltungsmodus keine Funktion.
- Der RSLT ist ein 8-Bit-Register (LS374), das als Halteregister für acht der BC Ergebnisse arbeitet, die von Fig. 10 Ausgängen SBUSL zu RSLT Eingängen D in B_CLK Zeit in Eingang CK kommen.
- Der Zweck dieses Registers ist es, die zeitliche Abstimmung auszugleichen, da Bilddaten (Ausgänge Q) sich von dem BC zu den PE's der nächsten physikalischen Einheit in der Gestaltung (entweder eine andere PEG 10 oder Kasten D 11) in jedem Fall über die Leitungen 17 SEPE bewegen. Dies geschieht während des Betriebsmodus. Das RSLT Register hat während des Gestaltungsmodus keine Funktion.
- Die GL 22, das sind acht Zwei-Wege-Multiplexoren, deren Implementierung nicht abgebildet ist, von denen jeder Signal A aus dem RSLF Register oder Signal B aus dem RSLT Register in einer vorhergehenden PEG über die Leitung 17 PEPE gemäß dem Steuerwert in dem entsprechenden Bit des Registers DINH über die Leitung C auswählt.
- Die SL 43, das sind acht Zwei-Wege-Multiplexoren, deren Implementierung nicht abgebildet ist, von denen jeder Signal A aus dem SER_DLY Ausgang von Fig. 9 oder Signal B von dem SER_OUT Ausgang von Fig. 9 gemäß dem Steuerwert in dem entsprechenden Bit des Registers DINL über die Leitung C auswählt.
- Die Verzögerungsfunktionen DEL 36 verzögern die Bilddaten-Eingangsströme um einen wählbaren Betrag. Die Verwendung und Implementierung dieser Verzögerungen besteht darin, entweder ein Spezifisches Fenster für die NF Funktion zu bilden oder den Bildsynchronismus zwischen den in dem Netzwerk getrennten PE's, deren Bilder zu verbinden sind, weitestgehend aufrechtzuerhalten. Eingänge CTLS und Ausgang ACK liefern die DEL Hardware mit den Systembussignalen für die Funktion (in einer Art, die in Zusammenhang mit Fig. 8 beschrieben wird), Daten über den Systembus zur Gestaltung des Betrages der Bildverzögerung zu empfangen. Alles in allem werden acht Zählungen während des Gestaltungsmodus an jede DEL gesendet. Jede Zählung enthält jeweils den Betrag der Verzögerung, der zwischen den acht Video Eingängen VIDI eingegeben wird, die von den Verschieberegisterelementen SR über die Ausgänge DLYO von Fig. 9 kommen und die acht Video Ausgänge VIDO, die dann an die Schieberegisterelementen über die Leitungen DLYI von Fig. 9 zurückgehen.
- Die Funktion des Rests der Kästen in Fig. 7, mit Fig. 8, 9, 10, 11 und 12 bezeichnet, wird mit diesen Figuren erörtert. Diese Funktionen enthalten die CTL, PE, BC, IS bzw. BD Funktionen. Die zusätzliche Einzelheit von Fig. 7 wird in Verbindung mit den gleichen Figuren dargestellt.
- Die Funktion der in dieser Fig. abgebildeten Logik besteht darin, die Mehrbusbefehle im SET_UP Modus zu entschlüsseln, und die Leistung der im RUN Modus verwendeten Taktzeiten zu wiederholen. Mit Bezug auf Fig. 7, die das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels einer PEG 10 darstellt. Sie werden sehen, daß der mit Fig. 8 gekennzeichnete Kasten eine Anzahl von Eingangsleitungen hat, die sich durch Pfeile unterscheiden, die gekennzeichnete Zählung beginnt im Uhrzeigersinn links als SEL, ADDR, CMC, CLOCKS und MODES. Die Zählung im Uhrzeigersinn wird fortgesetzt, die Ausgänge ohne Pfeile werden mit ACK_N und CNTRLS gekennzeichnet. Jeder Leitungsname steht für ein einzelnes Signal oder eine Gruppe von Signalen, die alle den gleichen Namen jedoch mit Index tragen. Wir werden die gleichen Signalnamen an den Ports von Fig. 8 finden, jedoch nicht notwendigerweise in der gleichen, räumlichen Anordnung. Diese gleiche Signal-Kreuzverweisrichtlinie wird immer dann befolgt, wenn eine Fig. eine andere Fig. enthält. Eines sollte für den Fall bemerkt werden, daß jede Fig. die Signalnamen und Indexe neu erstellen kann. Zum Beispiel: bei den folgenden Eingängen MBI_N< 0 : 19> von Fig. 7 sehen wir, daß es sich um eine Untereinheit dieser Signale MBI_N< 8 : 10> handelt, die mit den ADDR Eingängen des mit Fig. 8 gekennzeichneten Kastens verbunden werden. Diese gleichen ADDR Leitungen in Fig. 8 werden mit ADDR < 0 : 2> gekennzeichnet; gemäß der Richtlinie müssen die Indexe in aufsteigender Reihenfolge angepaßt werden. Somit paßt MBI_N< 8> ADDR < 0> an.
- Mit Bezug auf Fig. 7 sind die Eingänge in Fig. 8 wie folgt: SEL, das von dem Ausgang BSEL des Kastens ADD kommt. ADDR< 0 : 2> und CMD, die jeweils von den Eingängen MBI_N< 8 : 10> und MBI_N< 19> kommen. CLOCKS< 0 : 1> und MODES< 0 : 1> kommen jeweils von den Eingängen CBI_N< 0 : 1> und CBI_N< 3 : 4> . Somit wird SEL intern in PEG 10 erzeugt. ADDR und CMD sind Mehrbus-Signale in dem P1 Anschluß und CLOCKS und MODES sind P2 Anschlußsignale, die von der CC 1 Logik erzeugt werden.
- Die Ausgänge von Fig. 8 sind ACK_N, eine einzelne Leitung, und CNTRLS< 0 : 11> . ACK_N geht direkt von Fig. 8 zu dem Ausgang MBO_N von Fig. 7. CNTRLS wird auf der anderen Seite an eine sehr groß. Anzahl von Stellen in Fig. 7 und in Teilen innerhalb anderer Figuren verteilt. Diese CNTRLS Signale sind die Taktzeit-, Modus- und Befehlsleitungen, die den Informationsfluß innerhalb der PEG 10 steuern.
- Die Inverter 1.1, 1.2, 1.3, 1.4 und 1.5 sowie die Zwei-Wege NAND's CP.1, CP.2, CP.3, CP.5 und CP.6, die jeweils einen Eingang haben, der direkt mit einem stets wahren < up) Signal verbunden wird, das von dem Ausgang von 1.5 kommt, arbeiten alle als Leistungs-Inverter, um die Mehrbussignale P1 und P2 zu isolieren und zu invertieren.
- In diesem Bereich der BLE Zeichnungen ist der spezifische elektrische Typ des Inverters oder NAND nicht angegeben und ist zum Verständnis des Patentes weder wichtig noch erforderlich.
- Der OP Block, Typ LS138, ist der Operationscode-Decoder. Er verwandelt genau 1 von 8 möglichen Bedingungen in dem Befehlsfeld (ADDR < 0 : 2> Leitungen) in einen aktiven Befehl in den Ausgängen Y0 . . . Y7, wann immer es einen negativen Impuls am CMD (lokaler Name WR_EN_N) gibt, das System im SETUP MODE (CP.5 Ausgang negativ) ist und diese PEG gewählt wurde (I.2. Ausgang up). Die sechs verwendeten Anweisungs- oder Befehlssignale Y0 . . . Y4 und Y7 gehen zu einzelnen Bits innerhalb des Ausgangs CNTRLS< 0 : 11> , wie durch das an jede Leitung angebrachte < n> gezeigt wird, ausgenommen daß Y3 (INC_WINC_N) und Y7 (LOAD_WINC_N) durch die Zwei-Wege-Minus-Ebene NOR CP.4 zusammen ODER-verknüpft sind, um eine einzelne Leitung in dem Ausgang von CP.6 genannt CLK_WINC < 3> zu erzeugen, die verwendet wird, um den WINC Zähler (Fig. 7) jeweils zum Laden oder Inkrementieren zu takten.
- Die TABELLE 2 zeigt eine tabellarische Aufstellung aller Befehle in der PEG. Diejenigen, die für Fig. 7 (ausgenommen DEL) Anwendung finden, befinden sich in der EPE Registerauswahlgruppe. Zu bemerken ist, daß die Adressentschlüsselung und die Steuersektion der DEL Kästen (Fig. 7) in der Struktur ähnlich sind, wie das, was wir gerade für den Teil der PEG gezeigt haben, der nicht in den DEL Kästen ist. Die Befehle, die für die DEL's Anwendung finden, befinden sich in der DEL Registerauswahlgruppe. Zu bemerken ist auch, daß die Signale MBI_N< N> ETC nicht unbedingt Bit-für-Bit dem BA< 23 : 0> etc. entsprechen, der den Systembus in TABELLE 2 numeriert, während einige geeignete Anweisungscode-Zuordnungen durchgeführt werden können, die in der Technik bekannt sind.
- Der letzte Block in Fig. 8 ist der XACK Block, der, wenn BSEL aktiv ist (d. h., wenn diese PEG gewählt wurde), die CMD Leitung von dem Hauptrechner zurück in den Hauptrechner in eine Befehlsrückmeldung verwandelt (Ausgang ACK_N). Die Einzelheiten von XACK sind nicht abgebildet, da sie einfach von einem Fachmann entworfen werden können.
- Die Operation der PEG 10 während des Gestaltungsmodus (SET_UP Modus) wird in den Fig. 7 - Fig. 8 beschrieben. Die Steuerlogik CTL 26 (Fig. 2), die detailliert in Fig. 8 und in Teilen von Fig. 7 gezeigt wird, wird in Verbindung mit dem Hauptrechner H (0, Fig. 1) verwendet, um die Register und Speicher in die PEG's zu laden. Zuerst wird beschrieben, wie ein Systembusbefehl von H erkannt und von CTL 26 während des Einstellmodus ausgeführt wird. Dann werden die Systembusbefehle, die für die PEG 10 Anwendung finden, aufgelistet und ihre Funktionen erörtert. Schließlich wird eine kurze Beschreibung gegeben, wie alle die Befehle zur Gestaltung einer PEG verwendet werden.
- Das Register DINH, das die BLE Zeichnung von Fig. 7 als ein LS374 identifiziert, wird spezifisch in den Veröffentlichungen, wie z. B. "The TTL Data Book für Design Engineers", detailliert, das von Texas Instruments veröffentlicht wurde und ist für Fachleute universell verständlich. Der LS374 ist ein acht Bit Register, das acht Bits von Daten in den Leitungen D von dem LS540 empfängt, das EBD gekennzeichnet ist, welches acht Daten aus Leitungen des Mehrfachbusses isoliert und invertiert. Das DINH Register wird zu dem Wert der Systembusdatenleitungen gesetzt, bis zum Anstieg des Taktports des Registers DINH. Soweit dies praktisch durchführbar ist, entsprechen die für die Signaleingangs-/Ausgangsleitungen in einem Logikelement verwendeten Namen den Stiftnamen, die in dem oben erwähnten TTL Data Book aufgelistet sind, wenn das Logikelement eine komplette DIP darstellt. Manchmal werden Stift(Signal)namen abgekürzt, um das Bild besser einsetzen zu können, manchmal leicht verändert, um die Forderungen des DA Graphiksystems einsetzen zu können (wie z. B. Signalnamen zu vermeiden, die mit einem Buchstaben beginnen). Für einige DIP's, für die der LS374 ein Beispiel ist, wird eine einzelne Ein- oder Ausgangsleitung wirklich eine Gruppe von Leitungen darstellen. Daher ist der D Eingang des für DINH verwendeten LS374 Komplexes wirklich D1, D2, D3, D4 . . . D8. Diese Information steht dem Designer durch ein zusätzliches Diagramm für jeden DIP Komplextyp zur Verfügung, welches in der Patentbeschreibung nicht enthalten ist, auf dessen diesbezügliche Inhalte jedoch von einem Fachmann durch Querverweis auf das TTL Data Book Diagramm und die in dieser Beschreibung verwendeten DIP Umrandung einfach und korrekt geschlossen werden kann.
- Der Mehrbusbefehl, der von dem Computer (Mikro-Prozessor) an den Hauptrechner H 0 ausgegeben wird, der die Inhalte der DINH Register ändert, wird LOAD DINH genannt. Die Operation des LOAD DINH Befehls ist wie folgt: Zuerst legt der Hauptrechner H 0 die Adresse der gewünschten CAGE und PEG 10 und den Byte der zu schreibenden Daten in das DINH Register auf die von dem Mehrfachbus anwendbaren Bits. Der Hauptrechner bestätigt dann den WRT Befehl auf einer anderen Leitung des Mehrfachbusses. Die CC 1 Logik entschlüsselt die spezifische CAGE Adresse und aktiviert die geeignete CAGE Auswahlleitung in der zu adressierenden CAGE. Dies ist die Leitung mit der Kennzeichnung CBI_N< 2> . Wenn die PEG Logik in den Kästen ADD und Fig. 8 die Adresse in dem Bus als ihre eigene erkennt, wird sie dies dem Hauptrechner H 0 über den Systembus über die Leitung MBO_N (die XFER Rückmeldungsleitung) melden. Wenn der Hauptrechner H 0 sieht, daß die XFER Rückmeldungsleitung aktiviert ist, kann er den WRT Befehl desaktivieren. Bei dieser Desaktivierung reflektiert die PEG Kontrollogik in Fig. 8 dem DINH Register ein Anlaufsignal über Leitung 1 von Fig. 8, das kontrolliert, welches Anlaufsignal den Datenbyte in dem Systembus (wie von der EBD Logik wiedererzeugt und invertiert wird) in dem DINH Register taktet. Die Umkehrung ist nur erforderlich, um für den Fall auszugleichen, daß der übliche, aktive Signalpegel in dem Systembus eher negativ als positiv ist. Wir werden die spezifische Operation der Blöcke ADD und Fig. 8 beschreiben, um den Systembus WRT Befehl richtig zu entschlüsseln und später das Rückmeldesignal auf MBO_N richtig zu erzeugen. Das Wesentliche der Logik-Operation sollte von einem Fachmann in dem Stand der Technik einfach verstanden werden, indem diese Beschreibung sowie die Systembusspezifikation, auf die zuvor Bezug genommen wurde, gelesen wird. Ein Fachmann in dem Stand der Technik wird erkennen, daß eine Anzahl von Veränderungen bei der Auswahl und Implementierung von Befehlen machbar ist und da diese nicht zum Wesen der Erfindung gehören, werden diese Veränderungen nicht weiter beschrieben. Es genügt zu sagen, daß der LOAD DINH Befehl in einem Byte von Daten resultiert, der von dem Hauptrechner in das DINH Register der adressierten PEG von der adressierten CAGE übertragen wurde. Eine ähnliche Erörterung könnte auch einen analogen Befehl beschreiben, der über einen VERSA-BUS (TM) Systembus oder eine ähnliche Busrichtlinie implementiert wurde. Die Wahl des Systembusses gehört nicht zu der Durchführung des bevorzugten Ausführungsbeispiels und es gibt keine Eigenschaft des Busses, außer seiner Fähigkeit, Daten zu (oder von für Funktionen, die nicht innerhalb der PEG sind) irgendeinem bestimmten Register zu übertragen. Der Grund, daß die Spezifischen Charakteristika des Busses bezüglich der zeitlichen Abstimmung nicht entscheidend für die korrekte Funktion sind, ist, daß diese Art von Busoperationen während der Einstellzeit und nicht während der Betriebszeit auftreten, wenn Bilder aktuell verarbeitet werden. Daher können diese BUS Befehle oder Anweisungen in zeitlicher Abstimmung mit dem besonderen Prozessor innerhalb des Hauptrechners und der besonderen Busstruktur durchgeführt werden, die von dem Hersteller gewählt wurde.
- TABELLE 2 listet den kompletten Satz der Systembusbefehle auf, wie sie in zahlreichen Teilen des Systems innerhalb der CAGE's, d. h. innerhalb der PEG, D und E Teilen Anwendung finden.
- Systembusadresse: BA< 2 3 : 0>
- Systembusdaten: BD< 15 : 0> ODER BD< d, c, b, a> Hex
- MITE Basisadresse BA< 23 : 15>
- CAGE Auswahl BA< 14 : 13>
- Kartenauswahl innerhalb einer CAGE BA< 10:> PEG Adresse
- Kartentyp BA< 12 : 11> PEG = 00 DEL = 01 EXIT = 10 SPARE = 11
- Registerauswahl BA< 7 : 0>
- DEL Registerauswahl (Befehle)
- Entschlüssele BA< 4, 3, 2, 1, 0>
- Merke: Diese Befehle sind nur im SET_UP Modus aktiv.
- Siehe CNTRL Kartenbefehle für die Eingabe SET_UP.
- 1 ---- Lade Adresszähler N
- 0 ---- Adressiere Adresszähler N
- - 4 2 1 - N-te PE Adresse
- ---- 0 Niederwertiges Byte der Adresse N
- ---- 1 Höherwertiges Byte der Adresse N
- PEG Registerauswahl (Befehle)
- Entschlüssele BA< 2, 1, 0>
- Ignoriere BHEN (Byte High Enable), 1 Byte Datenbus.
- Merke: Diese Befehle sind nur im SET_UP Modus aktiv.
- Siehe CNTRL Kartenbefehle für die Eingabe SET_UP.
- 000 Lade WINC WINC < x, y, z> ← BD< b, a> , 0 HEX
- 001 Undefiniert (keine Operation)
- 010 Undefiniert
- 011 Schreibe BC Speicher BC< WINC; d, c, b, a> ← DINH< b, a> , DINL< b, a>
- 100 Inkrementiere WINC< 11 : 0> durch 1
- 101 Lade DINL DINL< b, a> ← BD< b, a>
- 110 Lade DINH DINH< b, a> ← BC< b, a>
- 111 Schreibe NF Speicher LT< WINC< 9 : 0> ; b, a> ← DINH< b, a>
- Merke: Zu Initialisierungszwecken sollte LT als ein 1K · 8 Bitspeicher betrachtet werden. LT< A; N> enthält die individuelle Anfertigung für PE< PEG, N> .
- EXIT (Befehle)
- Gruppenauswahl
- Entschlüssele BA< 6 , 5, 4, 3>
- ---- 1 Wähle D 11 Karte der EXIT Logik, WRITE Befehle.
- -- 1- Wähle D 11 Karte der EXIT Logik, MISC Befehle.
- -1 -- Wähle E 12 Karte der EXIT Logik, READ Befehle.
- 1 --- Wähle E 12 Karte der EXIT Logik, MISC Befehle.
- D 11 SCHREIB Gruppenauswahl (aktiv wenn BA< 3> wahr ist) Entschlüssele BA< 2,1,0> in Verbindung mit BHEN (Byte High Enable)
- Merke: Diese Befehle sind nur in SET_UP Modus aktiv.
- Siehe CNTRL Kartenbefehle zur Eingabe SET_UP
- 000 BHEN Lade MODL MOD< x, w> ← BD< b, a> HEX
- 001 BHEN Lade MODH MOD< z, y> ← BD< b, a> HEX
- 000 BHEN Lade MODL und MODH MOD< z, y, x, w> ← BD< d, c, b, a> HE
- Merke: MOD definiert die Linienbreite 10 durchgehend (2*16)-1
- Wenn MOD = x'FFFF' dann ist Y oder Z genau die höchste Wertigkeit X.
- 010 BHEN Lade INTV INTV< b, a> ← BD< b, a> HEX
- 011 BHEN Lade MODE MODE< b, a> ← BD< b, a> HEX
- Bit 0: (0/1) Z Hardware (nicht installiert / nstalliert)
- Bit 1: (0/1) Drei-Byte-Daten / Zwei-Byte-Daten
- Bit 2: (0/1) Y ist 0-256 / Y ist Delta Y wenn letztes Bit
- Bit 3: (0/1) Reserve
- 010 BHEN Lade INTV und MODE INTV< b, a> ← BD< b, a> MODE< b, a> BD< b, a>
- 100 BHEN Lade DINL DIN< x, w> ← BD< b, a> HEX
- 101 BHEN Lade DINH DIN< z, y> ← BD< b, a> HEX
- 100 BHEN Lade DIN DIN< z, y, x, w> ← BD< d, c, b, a> HEX
- 110 BHEN Lade XAL XCNT< x, w> ← BD< b, a> HEX
- 111 BHEN Lade XAH XCNT< z, y> ← BD< b, a> HEX
- 110 BHEN Lade XA xA< z, y, x,w> ← BD< d, c, b, a> HEX
- D 11 MISC Gruppenauswahl (aktiv, wenn BA< 4> wahr ist)
- Entschlüssele BA< 2, 1, 0>
- Ignoriere BHEN (Byte High Enable).
- Befehle (ausgenommen LD TAKE) sind nur im SET_UP Modus aktiv. Siehe CNTRL Kartenbefehle zur Eingabe SET_UP.
- 000 Lade TAKE TAKE< a, b> ← BD< b, a> HEX
- Entweder im SET_UP oder RUN Modus aktiv.
- 001 Undefiniert (keine Operation)
- 010 Schreibe BC Speicher BC< XCNT; d, c, b, a> ← DINH< b, a> , DINL< b, a>
- 011 Undefiniert (keine Operation)
- 100 Schreibe BCX Speicher BCX< XCNT; b, a> ← DINH< b, a>
- 101 Undefiniert (keine Operation)
- 110 Inkrementiere XCNT< 15 : 0> durch 1
- 111 Undefiniert (keine Operation)
- E 12 READ Gruppenauswahl (aktiv wenn BA< 5> wahr ist) Entschlüssele BA< 2, 1, 0> in Verbindung mit BHEN (Byte High Enable)
- Merke: Diese Befehle sind nur im RUN Modus aktiv.
- Siehe CNTRL Kartenbefehle zur Eingabe RUN.
- 000 BHEN Lese XAL BD< b, a> ← FIFO< xlb, xla> HEX
- 001 BHEN Lese XAH BD< b, a> ← FIFO< xhb, xha> HEX
- 000 BHEN Lese XA BD< d, c, b, a> ← FIFO< xhb, xha, xlb, xla> HEX
- 010 BHEN Lese ZAL BD< b, a> ← FIFO< zlb, zla> HEX
- 011 BHEN Lese ZAH BD< b, a> ← FIFO< zhb, zha> HEX
- 010 BHEN Lese ZA BD< d, c, b, a> ← FIFO< zhb, zha, zlb, zla>
- 100 BHEN Lese P BD< b, a> ← FIFO< b, a> HEX
- 101 BHEN Lese YA BD< b, a> ← FIFO< b, a> HEX
- 100 BHEN Lese YP BD< d, c, b, a> ← FIFO< yb, ya, pb, pa> HEX
- 110 BHEN Lese MASK BD< b, a> ← MASK< b, a> HEX
- 111 BHEN Lese FCNT BD< b, a> ← FCNT< b, a> HEX
- 110 BHEN Lese FCNT und MASK
- BD< z, y, x, w> ← FCNT< ba> ,MASK< b,a> HEX
- Merke: FCNT ist die # von (XYP) Ereignissen in FIFO
- E 12 MISC Gruppenauswahl (aktiv, wenn BA< 6> wahr ist)
- Entschlüssele BA< 2, 1, 0> (ignoriere BHEN (Byte High Enable).
- 000 Desaktiviere Unterbrechung
- 001 Undefiniert (keine Operation)
- 010 Kopiere XA in ZA
- 011 Undefiniert (keine Operation)
- 100 Kopiere FIFO Zählung in FCNT Register
- 101 Undefiniert (keine Operation)
- 110 Undefiniert (keine Operation)
- 111 Undefiniert (keine Operation)
- Die in Fig. 9 gezeigte Logik zeigt acht Verarbeitungselemente (PE 21) mit den Teilen der CTL 26, die zur Gestaltung der NF 33 Tabellen erforderlich sind. Mit Bezugnahme auf Fig. 7, die das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels von einer PEG 10 zeigt. Da werden Sie die Ein- und Ausgänge in Fig. 9 sehen. Gegen den Uhrzeigersinn gekennzeichnet, oben links beginnend, sind die Eingänge DLYI, SERIN, WDATA, ADDR und CNTRLS. Ebenfalls gegen den Uhrzeigersinn sind die Ausgänge SEROUT, SERDLY und DLYO. Wir finden die gleichen Signalnamen an den Ports von Fig. 9, jedoch nicht unbedingt in der gleichen räumlichen Anordnung.
- Fig. 7 und Fig. 9 zeigen, daß die Eingänge in Fig. 9 jeweils die Anzahl zeigt. Ihre Sourcen sind die folgenden: DLYI< 0 : 15> , die von dem Ausgang der DEL's 36, jeweils eine halbe, kommen. Die DLYI sind acht Bildströme, die entweder um ein oder zwei DEL's verzögert werden. SERIN< 0 : 7> kommt von dem Ausgang Y der GL 22. Die SERIN sind acht Bildströme, die von der vorherigen PEG 10 über die PEPE Eingangsleitungen 17 oder von dem BC 23 über die Leitungen FBACK gekommen sind, je nachdem wie die GL 22 gewählt hat. WDATA< 0 : 7> , die von den DINH Register kommen, geben Q aus. Die WDATA sind Daten, die in eine Adresse von jeweils acht eines Bits NF 33 Tabellenspeicher geschrieben werden. ADDR< 0 : 9> , die von dem WINC Register kommen, geben ADDR aus. Die ADDR sind die 10 Adressbits für den NF 33 Tabellenspeicher, der während der Gestaltung verwendet wird. Und schließlich CNTRLS< 0 : 10> , die von den CNTRLS< 0 : 10> von Fig. 8 kommen. Diese CNTRLS sind die Takt- Modus- und Befehlsleitungen zur Steuerung des Datenflusses sowohl in dem Gestaltungs- als auch in dem Betriebsmodus.
- Die Ausgänge von Fig. 9 sind alle Bildströme. SEROUT< 0 : 7> und SERDLY NF 33 Daten(leitungen 45 von Fig. 5) und SR 32.3 Daten(leitungen 39 von Fig. 5) für die Eingänge A und B von SL 43. DLYO< 0 : 15> trägt die SR 32 Daten zu den beiden DEL Funktionen 36, jeweils eine halbe.
- Fig. 9 zeigt acht Replikationen von Fig. 13, die durch *8 über dem Kasten gekennzeichneten "Fig. 13" angegebenen sind. Jede Replikation enthält den Teil eines PE's und der zugehörigen Gestaltungsfunktion, die von PE zu PE genau die gleiche ist. Die Richtlinie von BLE für replizierte Komponenten ist zweifach. Erstens wird jede Kopie der Komponenten als ihren eigenen Duplikatsatz von Ein-/Ausgangsbündel betrachtet, welches jedes seinen eigenen Index hat. Zweitens müssen die Indexe zwischen Ein- und Ausgangsleitungen und den Ein- und Ausgängen von replizierten Teilen jeweils einzeln angepaßt werden, ansonsten wird eine einzelne Eingangsleitung an alle Stellen der Replikation verteilt. SERIN< 0 : 7> geht zum Beispiel zu den acht Stellen von Fig. 13 im Eingang IROWO, den wir IROWO< 0 : 7> kennzeichnen und danach geht SERIN< 0> zu IROWO< 0> , d. h. der IROWO Eingang zu der nullten Stelle von Fig. 13. A_CLK (der gleiche wie CNTRLS< 8> ) ist eine einzelne Leitung, somit geht sie zu dem A_CLK Eingang von jedem der acht in Fig. 13. Schließlich geht bei den Eingangsleitungen ADDR< 0 : 7> , acht im ganzen, jede zu allen acht Stellen der entsprechenden ADDR< 0 : 7> Leitungen von den acht in Fig. 13. Dies um zu sagen, daß ADDR< 0> zu der Nullten in Fig. 13 und zu der Ersten in Fig. 13 durch die Siebte in Fig. 13 stets zu ADDR< 0> jeder Figur geht. Die Handhabung von ADDR< 1> . . . ADDR< 7> ist ähnlich. Diese Nomenklatur wird außerdem in Verbindung mit Fig. 13 erörtert.
- Die drei logischen Funktionsgruppen innerhalb Fig. 9 sind Adresspuffer, Register und die acht PE's, die detailliert in Fig. 13 beschrieben werden.
- Die Adresspuffer ADL und ADM isolieren die Leitungen ADDR< 8 : 9> , jeweils zwei von den Adressleitungen von den WINC Register. Die anderen Adresspuffer für Leitungen ADDR< 0 : 7> werden mit den PE's in Fig. 13 gezeigt. Diese Leitungen wiederholen die Leistung der WINC Registerbits und verteilen diese an die acht NF 33 RAMS, so daß jeder RAM als separater Speicher arbeiten kann.
- Die Register RE, RED und RDF sind jeweils acht Bit (LS374) Register. RE und RED arbeiten, um die acht Bildströme von den Ausgängen PE von Fig. 13 durch eine zusätzliche PEL Verzögerung zu bringen. Dies erfolgt zuerst durch Laden RE an dem Anlauf von einem Takt (CNTRLS< 8> ) mit den PEL-Werten der acht Bildströme von den PE Ausgängen der acht in Fig. 13 und danach durch das Kopieren der Werte von RE zu RED und REF an dem Anlauf B_CLK. Dieses A-B Paar bildet einen PEL-Takt durch diese Spezifikation. Somit bewegt sich der Bildstrom in einem PEL- Takt (ein A_CLK, B_CLK Paar) um eine PEL Position vorwärts. Die Aufgabe der RE und RED Register ist es, die Bildströme um eine PEL zu verzögern und während der Verarbeitung die Daten wieder zu synchronisieren, da die PE Ausgänge von Fig. 13 in den Taktimpulsen nicht synchronisiert sind (siehe Fig. 13).
- Die Aufgabe des REF Registers in Verbindung mit dem RE Register ist gleich wie die von Block FB 42 (Fig. 3) oder FB 47 (Fig. 5). Die Verzögerungsbildströme werden um einen PEL-Takt verzögert und als zehnten Bit der benachbarten Fensterfunktion NF 33 zurückgeführt.
- Die in dieser Figur gezeigte Logik ist der Boolesche Kombinator und die zu der CTL 26 gehörenden Teile, die erforderlich sind, um den BC 23 zu gestalten. Einige Teile von Fig. 7, die RSLF und RSLT, sind ebenfalls Teil des BC's, werden aber in Fig. 10 nicht abgebildet. Unter Bezugnahme auf Fig. 7, die das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels von einer PEG 10 für die Ein- und Ausgänge von Fig. 10 zeigt. Auf der linken Seite der Figur, von oben nach unten, befinden sich die Eingänge INTPE, EXTPE, ADDR, WDATAH, WDATAL und CNTLS. Von oben nach unten auf der rechten Seite befinden sich SBUSH und SBUSL. Das gleiche Signal erscheint in den Ports von Fig. 10, jedoch nicht unbedingt in der gleichen räumlichen Anordnung.
- Fig. 7 zeigt, daß die Eingänge der Fig. 10 und ihre Sourcen wie folgt sind: INTPE< 0 : 7> , die von dem Ausgang Y von SL 43 kommt. Die INTPE sind acht Bildströme von acht PE's innerhalb der identischen PEG 10. EXTPE< 0 : 3> , die von dem Ausgang PEXY von Fig. 11 kommt. Die EXTPE sind vier Bildströme, die von dem EBUS kommen, wie von der BD 30 Logik ausgewählt, die in Fig. 11 enthalten ist. ADDR< 0 : 11> , die von dem WINC Register kommt. Die ADDR sind die 12 Adressbits für den BC 23 Tabellenspeicher. WDATAH< 0 : 7> , die von dem DINH Register kommt. Die WDATAH sind Daten, die in einen Byte von einer Adresse in dem BC 23 Tabellenspeicher geschrieben werden. WDATAL< 0 : 7> , die von dem DINL Register kommen. Die WDATAL sind Daten, die in den anderen Byte (von WDATAH) von einer Adresse in dem BC 23 Tabellenspeicher geschrieben werden. Und schließlich CNTRLS< 0 : 3> , die von den CNTRLS< 4, 5, 7, 8> von Fig. 8 kommen. Diese CNTRLS sind die Takt-, Modus- und Befehlsleitungen, die innerhalb der Fig. 10 verwendet werden.
- Die Ausgänge von Fig. 10 sind alle Bildströme. SBUSH< 0 : 7> und SBUSL< 0 : 7> tragen Daten, die je PEL-Takt von den SRAMS innerhalb der BC Funktion errechnet wurden. Die beiden Sätze von acht Bildströmen werden je PEL-Takt in den RSLF bzw. RSLT verriegelt.
- Die vier logischen Funktionsgruppen innerhalb Fig. 10 sind Adresspuffer, Bildstrompuffer, Datenpuffer und die SRAM's, die für die aktuelle Boolesche Kombinationsberechnung verwendet werden.
- Die Adresspuffer ADDD (Typ LS541) und ADDX (Typ LS125) isolieren jeweils die Leitungen ADDR< 0 : 7> und die Leitungen ADDR< 8 : 11> , die von dem WINC Register kommen. Diese Puffer wiederholen die Leistung der WINC Registerbits und verteilen diese an die 4 BCT SRAMS (Typ IMS1420 von INMOS) zur Lieferung einer Adresse an den BC Speicher während dem SET_UP Modus.
- Die Bildstrompuffer PREG und PREGX (beide vom Typ LS374) verriegeln und isolieren jeweils die Leitungen INTPE< 0 : 7> und die Leitungen EXTPE< 0 : 3> , die von den 12 PE's kommen, die von dem BC dieser PEG 10 zugänglich sind. Diese Puffer wiederholen Takt und Leistung der PE Ausgänge aus den zahlreichen SL's 43 zur Verwendung als Adressen von den 4 BCT SRAMS (Typ IMS1420 von INMOS) während des RUN Modus.
- Die Datenpuffer DHD und DLD (beide vom Typ LS541) isolieren jeweils die Leitungen WDATAH< 0 : 7> und die Leitungen WDATAL < 0 : 7> , die jeweils von den DINH und DINL Register kommen. Diese Puffer wiederholen die Leistung der DIN Registerbits und teilen ihnen die 4 BCT SRAMS (Typ IMS1420 von INMOS) zu und isolieren die in den BC Speicher während dem SET_UP Modus eingelesenen Daten von den in den BC Speicher während dem RUN Modus geschriebenen Daten, da die SR1420 SRAMS bidirektionelle Portspeicher sind.
- Die SRAMS BCT0, BCT1, BCT2 und BCT3 sind INMOS IMS1420 4096 words bei vier Byte pro Wort Static RAMS. Sie halten die Boolesche Kombinationstabellen während des SET_UP Modus geladen und wandeln die 12 Bildstromeingänge von PREG und PREGX in 16 Bildstromausgänge SBUSH und SBUSL während des RUN Modus um.
- Merke: Die Kombination der Datenpuffer PREG und PREGX, die beide in A_CLK getaktet sind und die RSLF und RLST Register führen genau eine PEL-Takt (A_CLK, B_CLK Paar) Verzögerung in dem BC Teil der Operation durch.
- Die Operation des BC's während des SET_UP Modus ist der Operation der PE's und ihren NF Tabellen während dem SET_UP Modus ähnlich. Die Daten werden durch die Systembusbefehle in die DINH und DINL geladen und die richtige Adresse wird in dem WINC Register erreicht. Dann werden die Daten in die BCT SRAMS bei Anlauf in CNTRLS< 0> ursprünglich WR_BCT_N von CNTRLS< 4> in Fig. 4 geschrieben. Während des RUN Modus werden die zwölf Eingangs-Bildströme je PEL-Takt in sechzehn Ausgangs-Bildströme von den BCT SRAMS umgewandelt.
- Fig. 11 zeigt die Adress-Auswahllogik für EBUS Treiberlogik BD 24 und die Eingangsauswahl IS 25. Mit Bezugnahme auf Fig. 7, die das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiel von einer PEG 10 für die Ein- und Ausgänge in Fig. 11 zeigt. Beginnend oben links (Fig. 7) und gegen den Uhrzeigersinn fortfahrend, sind die Eingänge in dem Fig. 11 Kasten E_SEL, ADD_N, EB_N und CTL. Von links nach rechts, quer durch den oberen Teil der Ausgänge befinden sich PEXY und PSEL_N. Die gleichen Signalnamen erscheinen an den Ports von Fig. 11, jedoch nicht unbedingt in der gleichen räumlichen Anordnung.
- Fig. 7 zeigt, daß die Eingänge in Fig. 11 und ihre Sourcen wie folgt sind: E_SEL< 0 : 11> , die von den WINC Register Ausgängen ADDR kommen. Die WINC Inhalte halten während dem RUN Modus vier von drei Bitadressen, die zur Auswahl der PE Bildströme von dem EB 9 verwendet werden. ADD_N< 0 : 2> , die von dem Ausgang ADR des ADD Blocks kommen. Die drei Bits von ADD_N sind die Adresse von dieser PEG 10 innerhalb dieser CAGE, die von der BD 24 Logik verwendet werden, um die richtigen Treiber zu aktivieren. EB_N< 0 : 3> , die von dem EB 9 kommen, aktivieren in einer negativen Ebene. Der abschließende Eingang ist CTL, der von CNTRLS< 5> von Fig. 8 kommt. Diese CTL ist das RUN Modussignal, das zur Aktivierung des EBUS Gate's verwendet wird.
- Die Ausgänge von Fig. 11 sind wie folgt: PEXY< 0 : 3> trägt die vier, von dem EB 9 durch IS 25 ausgewählten PE Bildströme zu dem EXTPE Eingang von Fig. 10. PSEL_N< 0 : 7> trägt die entschlüsselte PEG 10 Adresse zu der Bustreiberlogik BD 24 in Fig. 12.
- Die beiden Funktionen innerhalb Fig. 11 sind der Adress-Decoder DCD (Typ LS138) und die Multiplex-Selektoren (Typ LS151 - einer von acht Selektoren).
- Der Decoder DCD führt 1 aus acht PSEL_ Leitungen, die während der Zeit CTL (RUN Modus) aktiv sind, als wahr. Die PSEL_N Leitungen aktivieren die richtigen BUS Treiber in Fig. 12. Wenn zum Beispiel die Adresse dieser PEG 10 HEX 6 ist, dann wird Y1 (ein Komplement von 6) negativ sein und der Rest der Y's von dem DCD werden positiv sein.
- Die Multiplexor-Selektoren MX0, MX2, MX2 und MX3 arbeiten als vier von acht in einem Selektor. Jeder operiert in einem anderen Satz von acht EBUS 9 Signalen, um genau einen von acht im Ausgang PEXY auszuwählen. Die Auswahl erfolgt gemäß den vier von drei Bitcodens in E_SEL, (der von WINC kommt). Somit wird PEXY< 0> eines der EBUS< 0 : 7> Signale sein, das von dem drei Bitcode in E_SEL< 0 : 2> abhängt.
- Die Eingänge und Ausgänge in Fig. 12 werden in Fig. 7 des Diagramms der oberen Ebene des bevorzugten Ausführungsbeispiels einer PEG 10 gezeigt. Merke: Fig. 12 wird viermal in Fig. 7 repliziert. Die Eingänge in Fig. 12 sind SEL_N< 0 : 7> und PE, letzteres ein einzelnes Signal von vieren. Am Boden des Ausgangs ist DRVRS< 0 : 7> , das, da Fig. 12 viermal repliziert wird, 32 Signale am EB 9 aufbereitet. Diese Ein- und Ausgänge werden in Fig. 12 gezeigt, jedoch nicht unbedingt in der gleichen räumlichen Anordnung.
- Die SEL_N Signale (nur höchstens eines von acht sind negativ aktiv) werden verwendet, um einen von acht Tristate-Treibern entweder in A oder B zu aktivieren (Typ LS125). Die acht Treiberausgänge Y gehen zu DRVRS< 0 : 7> . Der PE Eingang ist einer von vier Ausgängen Y< 4 : 7> von SL 43.
- Der Ausgang von Fig. 12 ist wie folgt: DRVRS trägt den einen PE Bildstrom, der an dieser Stelle von Fig. 12 kommt zu dem Bit innerhalb der acht, die der Adresse dieser PEG 10 entsprechen. Der Rest der DRVRS< 0 : 7> wird inaktiv. Dadurch wird gezeigt, daß Fig. 11 und Fig. 12 zusammenarbeiten, da die vier PE Ströme in Y< 4 : 7> der SL 43 an genau den vier Positionen in dem EBUS 9 zu aktivieren sind, deren vier Positionen von der PEG 10 Adresse innerhalb der ADD abhängen.
- Die in Fig. 13 gezeigte Logik besteht aus einem Verarbeitungselement (PE 21) plus Teilen von CTL 26, die zur Gestaltung der NF 33 Tabellen erforderlich sind. Unter Bezugnahme auf Fig. 9, die ein Diagramm höherer Ebene von einer Gruppe von acht PE's 21 für die Ein- und Ausgänge in Fig. 13 zeigt. Auf der linken Seite, von oben nach unten gelesen, befinden sich die Eingänge IROW0, IROW1, IROW2, WRDATA, ADDR< 0 : 7> , ADDRS, ADDR9, G_NEG, CLR_NEG, A_CLK, B_CLK, AGATE und WREN. Die Ausgänge auf der rechten Seite, von oben nach unten gelesen sind OROWO0, OROW1, PE und DELAY. Wir finden die gleichen Signalnamen in den Ports von Fig. 13, jedoch nicht notwendigerweise in der gleichen räumlichen Anordnung.
- Bei Betrachtung von Fig. 9 und unter Berücksichtigung, daß Fig. 13 N = 8mal repliziert wird, sind die Eingänge in Fig. 13 und ihre Quellen wie folgt: IROW0, das von dem Eingang SERIN< N> aus Fig. 9 kommt, wo N von 0 bis 7 den Index des PE's innerhalb der PEG 10 darstellt. Für die Source von SERIN und anderen Eingängen in Fig. 13, die direkt von den Eingängen in Fig. 9 kommen, siehe Fig. 7 und die Beschreibung von Fig. 9. Tatsächlich können die Signale eine Neubenennung je BLE Ebene der Hierarchie erfahren, die sie durchlaufen. Der Eingang IROW1, der von Fig. 9 Eingang DLYI< N> kommt, siehe 0 ≤ N ≤7 oder gleich (Ausgänge von einer DEL 36 in Fig. 7). Ähnlich Eingang IROW2, der auf die gleiche Weise von der zweiten DEL 36 über den Eingang DLYI< M> , 8< M< 15 kommt.
- IROW0, IROW1, IROW2 bezeichnen die aufeinanderfolgenden Reihen des Bildes, aus dem die PEL's in das Fenster gelangen. Die Numerierung entspricht dem aktuellen Bild nur, wenn die Gesamtverzögerung zwischen einer PEL zu Beginn von ROW0 und einer PEL zu Beginn von ROW1 genau gleich einer Bildzeile ist. Der Eingang WDATE, der von WDATA< N> von Fig. 9 kommt, ist der einzige Datenbit, der von dem DINH Register kommt, das in eine Adresse des NF 33 Speichers geschrieben wird. Die Eingänge ADDR< 0 : 7> , die aus dem WINC Registerbit< 0 : 7> über ADDR< 0 : 7> von Fig. 9 kommen. Die Eingangs- ADDRS, die aus dem WINC Registerbit 8 über ADL Ausgang Y< N> von Fig. 9 kommt. Die Eingangs- ADDR9, die aus dem WINC Registerbit 9 über ADM Ausgang Y< N> von Fig. 9 kommt. Die ADDR sind die 10 Adressbits für den NF 33 Tabellenspeicher. Die Kontrolleingänge G_NEG, CLR_NEG, AGATE und WREN, die jeweils von CNTRLS< 7,6,5,0> von Fig. 9 kommen, die ursprünglich von CNTRLS7,6,5,0> von Fig. 8 kamen. G_NEG wird verwendet, um die Ausgänge von RT, RM und RB während des RUN Modus (negativ Signal aktiv) zu aktivieren; CLR_NEG wird verwendet, um RT, RM und RB während des Master Reset's (negativ Signal aktiv) zurückzusetzen. AGATE wird verwendet, um die Adresse aus dem WINC Register in den Adress- (die A Eingänge) Leitungen des NF 33 RAM zu aktivieren, welches in Fig. 13 die Komponente LT ist und WREN ist das Schreibsicherungssignal, das von CNTRLS< 0 : 7> von Fig. 9 und Fig. 8 kommt und das aktuell die WRDATA Signale in der NF 33 Komponente LT (Anlaufkante aktiv) speichert. Die Endergebnisse sind die Taktimpulse A_CLK und B_CLK, die später von Fig. 8 CP3 bzw. CP2 kommen und die 1 PEL-Takt Vorschubtakte während des RUN Modus liefern.
- Die Ausgänge von Fig. 13 sind alle Bildströme. OROW0, OROW1, DELAY und PE tragen jeweils einen Bildstrom zu den beiden Hälften des Ausgangs DLY0, zu den D Eingängen in Register RE und zu dem Ausgang SERDLY von Fig. 9.
- Die drei logischen Funktionsgruppen innerhalb Fig. 13 sind die Verschieberegister, die Adresspuffer und die benachbarte Funktion static RAM SRAM.
- Die Verschieberegister SR 32 sind in den drei LS595 Komponenten RT, RM und RB enthalten. Jeder LS595 ist ein acht Bit-seriell ein/parallel-aus Verschieberegister, das die PEL in dem Eingang SER zu dem Ausgang QA in einem PEL-Takt vorschiebt (ein A_CLK B_CLK Paar, wenn Eingänge SCK und RCK angelegt werden). Auf ähnliche Weise wird in einem PEL-Takt ein PEL in dem QA zu dem QB usw. vorgeschoben. Daher sollte nun klar sein, daß QA, QB und QC Abschnitte der LS595s, RT, RM und RB neun PEL's enthalten, die das Bildfenster des bevorzugten Ausführungsbeispiels bilden. Diese neun Bits entlang des zehnten Bits von der FB 42 (Ausgang Q, Fig. 9) werden die Adressbits in Eingang A der SRAM LT während der RUN_MODE.
- Der Adresspuffer AG isoliert Leitungen ADDR< 0 : 7> , acht der Adressleitungen des WINC Registers. Die Isolierung von ADDR< S:9> wurde von den ADL und ADM Blöcken der bereits erörterten Fig. 9 durchgeführt. Diese Leitungen wiederholen die Leistung der WINC Registerbits und verteilen an diese die zehn Adressleitungen der NF 33 (LT Eingänge A) zum Adressieren der SRAM LT während der SET_UP MODE.
- Die benachbarte Funktionstabelle NF 33 wird von dem Block LT, ein Intel 2125 Chip, der ein 1 Bit mit 1024 Word static ram ist.
- Während RUN_MODE aktiviert das Signal G_NEG die LS595 Ausgänge in den A Eingängen in Block LT. Während des SET_UP werden die Adressbits anstatt durch Block AD (LS541) durch das AGATE Signal und durch die ADL und ADM Blöcke von Fig. 9 durch das Signal CNTRLS< 5> (gleich AGATE) aktiviert. Daher können wir nun verstehen, daß die NF 33 Speicher während des SET_UP Modus durch Schreiben der Registerinhalte DINH (Eingang WRDATA) in die acht LT Blöcke in der in dem Register WINC gehaltenen Adresse geschrieben werden, wie in den LT Eingängen A< 0 : 9> angewendet, ein Bit von DINH pro LT. Dieses Schreiben wird bei Anlauf von WREN (Schreibsicherung) auftreten, welche ursprünglich von einem der Operationscode-Decoderleitungen CNTRL< 0> oder WR_LLUT_N in Fig. 8 und später von der WRITE COMMANDE Leitung des IEEE 796 Busses kamen.
- Die folgende Sequenz der Systembusbefehle aus TABELLE 2 wird die LT Speicher gestalten:
- LOAD WINC mit 0 (Anfangsadresse)
- Schleife: LOAD DINH mit 8 Ergebnisbits für 8 PE's zur Fenstergestaltung
- Eingang gleich mit WINC
- WRITE LLUT acht NF 33 bekommen ein Bit von DINH Wert in Adresse WINC
- INC WINC geht zur nächsten Adresse, kehrt zur Schleife zurück, wenn nicht alle 1024 möglichen Fenster beendet sind, sonst EXIT.
- Die sechzehn Ergebnisbits des BC's 23 SRAM können ähnlich geschrieben werden. Zusätzliche Befehle setzen DINH, DINL und WINC auf die gewünschten Werte.
- Im RUN_MODUS werden Bildströme ein PEL pro PEL-Takt vorgeschoben. Der Pfad durch ein PE von einer PEG ist in RT/RM/RB in A_CLK, um RT/RM/RB in B_CLK durch NF 33 Nachschlagefunktion in RE in A_CLK und in RED und REF in B_CLK (von REF in Fensterberechnung nächster PEL-Takt) auszugeben. Von REN zu PREG (Fig. 10) direkt oder in PREGX von einer anderen PEG IS 25 in A_CLK und durch BCT (Fig. 10) in RSLF oder RSLT in B_CLK. Daher beträgt die konstante Verzögerung einer PEG drei REL-Mal zusätzlich zu der einen Reihe, eine Spaltenverzögerung zur Bildverzögerung im Verhältnis zu dem mittleren PEL des benachbarten Fensters.
- Mit Bezugnahme auf Fig. 14, die das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels eines CAGE Verteilers zeigt, die in Fig. 1 als Kasten D 11 abgebildet ist. Die Funktion eines CAGE Verteilers kann ganz einfach als ein Boolescher Kombinator für CAGE-Ebenen gedacht werden. Die Operation ist mit der der BC Funktion in den PEG's analog und hier weiter nicht beschrieben werden. Einige der Einrichtungen innerhalb Fig. 14, die logisch eher zu der Funktion von E 12 gehören, werden jedoch hier beschrieben, weil die beiden Diagramme Logikkomplexe in verschiedene Schaltkarten trennen. Eingänge in Leitungen 17 von der vorhergehenden PEG 10 und von dem EB 9 werden über die Leitungen 16 ausgewählt und kombiniert, um verschiedene Bildströme zu erzeugen. Diese Bildströme verlassen die CAGE in Leitungen 17 zu C1 4, zu C2 5, . . . zu Cn 6 und von Cn 6 zu M 7 auf den Leitungen 8. Wenn die CAGE's in linearer Reihenfolge verkabelt werden und in den Leitungen 18, wenn CAGE's anders als in linearer Reihenfolge verkabelt werden und in Leitungen 19 zu der Numerierungsfunktion E12.
- Die Eingänge zu jedem D11 sind PEPE < 0 : 7> , MB_D_I< 0 : 15> , MB_CLK, SELECT< 0 : 7> , C_B_I< 0 : 5> und E_B_I< 0 : 31> . Eingänge PEPE entsprechen den Leitungen 17 in Fig. 1 und bringen acht Bildstromwerte von der letzten PEG 10 in eine CAGE. MBI_N entspricht einem Teil der Leitungen 14 in Fig. 1 und bringt die benötigten Leitungen zu dem Systembus. Die MB_CLK und SELECT Eingänge sind auch Teil der Signalgruppe 14. MBI_N, MB_CLK und SELECT entsprechen gemeinsam den MBI_N Signalen von Fig. 7, die erforderlich sind, um die in dem Hauptrechner H 0 verwendeten Befehle durch die Steuerkarte CC 1 auszuführen, den D 11 in eine seiner möglichen Gestaltungen zu gestalten. Einige leichte Unterschiede bei der Kombination der aktuellen Systembussignalen in dem P1 Anschluß, im Gegensatz zu denen für die von der PEG 10 verwendeten Signale, werden von dem D 11 verwendet. Die Anweisungen, die von dem D 11 entschlüsselt werden, werden ebenfalls in TABELLE 2 (supra) aufgelistet. Die CBI_N< 0 : 4> Eingänge sind auch Teil der Signalgruppe 14, werden jedoch spezifisch von der CC 1 Hardware erzeugt, und eine Leitung ist für eine einzelne CAGE spezifisch. Diese Leitungen sind Kontrollsignale und Taktimpulse, die während des Betriebsmodus aktiviert werden. Die CBI_N Leitungen, wie die MBI_N, usw. Signale, werden auch durch den leistungswiederholungsfähigen Systembus der CC 1 Hardware verteilt, sind jedoch eher dem P2 Teil des Busses als einem Anschluß P1 zugeordnet. Die E_B_I< 0 : 31> Signalleitungen 15 sind die Numerierungsbus-Positionen. Sie werden ebenfalls einem Teil des Systembus-P2-Anschlusses physikalisch zugeteilt.
- Die Ausgänge der D 11 sind SEPE< 0 : 7> , SEPEX< 0 : 7> und XACKB, (welche Teil der Leitungen 14 in der CC 1 ist) und SERIN< 0 : 7> , INTV< 0 : 7> , MODE< 0 : 7> und XADD< 0 : 15> , die alle über die Leitungen 19 zu E 12 gehen. Die SEPE< 0 : 7> Signale sind Leitungen 17, die acht Bildströme von einem D11 zu der ersten PEG 10 der nächsten CAGE tragen. Die SEPEX< 0 : 7> Signale sind Leitungen 17, die acht Bildströme von einem D11 zu dem ersten PEG 10 eines zweiten CAGE's tragen, wenn das System in einem anderen als einem direkten linearen Modus verkabelt wird. Merke: Tatsächlich könnte irgendeine PEG 10 in irgendeine CAGE gehen, solange wie das Kabel, das normalerweise die Leitungen 17 von PEG 10 zu PEG 10 trägt, ausgeschaltet wurde. Das XACK Signal trägt die Befehlsrückmeldung des Systembusses und ist logischerweise Teil der P1 Signale der Systembusleitungen 14. Die SERIN< 0 : 7> Signale sind Teil der Leitungen 19, die acht Bildströme von einem D11 zu dem Numerierer E 12 in Fig. 15 tragen. Wie der Leser deutlich sehen kann, wird dieses SERIN auf genau die gleiche Weise wie die SERIN Eingänge in Fig. 9 gebildet. Die SELPE< 0 : 7> Signale sind auch Teil der Leitungen 19 und sie tragen die acht Werte von dem TAKE Register (Typ LS374), das mit einer Bit-für-Bit Maske verwendet wird, von dem SERIN Strom innerhalb die E 12 Logik in Fig. 15. Die INTV< 0 : 7> Signale sind auch Teil der Leitungen 19 und sie tragen eine acht Bitzahl von dem Register INTV (Typ LS 374), das innerhalb der E12 Logik in Fig. 15 verwendet wird, wie in der Erörterung für diese Figur beschrieben. Die XADD< 0 : 15> Signale sind auch Teil der Leitungen 19 und sie tragen eine sechzehn Bitzahl von dem Register XA (nicht im einzelnen abgebildet), das innerhalb der E 12 Logik in Fig. 15 verwendet wird, wie in der Erörterung zu dieser Figur beschrieben.
- Die Funktionsoperation der einzelnen Teile der CAGE Verteilung D 11 ist in Fig. 14 abgebildet.
- Die DINH ist ein 8 Bitregister (LS374), das als Halteregister für Daten auf dem Weg zu einem CAGE BC arbeitet (Block S Typ EBUSBC) über Eingänge WDATAH während des Gestaltungsmodus, so daß die Speicher in diesen beiden Funktionsteilen Gestaltungsdaten empfangen können. Während des Betriebsmodus steuern die Inhalte von DINH auf einer Bit-für-Bit Basis die acht Pfade in SELA über die Eingänge C. Daher ist die Operation vollkommen analog zu der Verwendung von DINH in der PEG 10 Logik, die bereits beschrieben wurde.
- Die DINL ist ein 8 Bitregister (LS374), das als Halteregister für Daten auf dem Weg zu einem CAGE BC arbeitet (Block S Typ EBUSBC) über Eingänge WDATAL während des Gestaltungsmodus, so daß die Speicher in diesem Funktionsteil Gestaltungsdaten empfangen können. Während des Betriebsmodus steuern die Inhalte von DINL auf einer Bit-für-Bit Basis die acht Pfade in SELB über die Eingänge C. Daher ist die Operation nahezu analog zu der Verwendung von DINH in der PEG 10 Logik, die bereits beschrieben wurde.
- Das XA Register ist ein 16 Bit binäres Zählregister (Details zur Implementierung sind nicht abgebildet), das als Halteregister für Adressdaten während des Gestaltungsmodus arbeitet. Die Adresse in XA adressiert den BC Speicher über die Leitungen Block S, wenn die Daten in DINH und DINL in diese Speicher geschrieben wurden. Merke: Da der BC Speicher des D 11 24 Bit breit ist, werden zwei verschiedene Schreibbefehle geliefert, um komplette 24 Bits zu übertragen. Während des SET_UP MODUS ist die Operation des XA vollkommen analog zu der der WINC in der PEG 10, die zuvor beschrieben wurde. Während des Betriebsmodus zählt der XA Zähler A_CLK's und liefert die Taktzählung an die Numerierungslogik E12, wo sie registriert und an den Hauptrechner 0 gesendet wird, jedes Mal, wenn es ein PEL in dem unmaskierten Bildstrom gibt. Die XA zählt aus einem von den Inhalten der MODH und MODL Register gesteuerten Rest. Der Vorgang wird als nächstes beschrieben.
- Das MODH ist ein 8 Bit Register (LS374), das als die bedeutendere Hälfte des Restwertes funktioniert, der bestimmt, bei welcher Zählung der XA Zähler auf Null zurückfährt. Der Restwert wird von der Breite des Bildes in PEL's abgeleitet und ist besonders nützlich bei Anwendungen, wo die Bildbreite kein ganzes Produkt einer ganzen Leistung von 2 ist. Das XA Register wird die X Adresse in dem Bild halten, den Ausgleich natürlich durch die Summe der aufgelaufenen Verzögerung, die als zu numerierende Bilder aufgebaut wurden, durch eine variable Anzahl von PE's fortzuführen.
- Das MODL ist ein 8 Bitregister (LS374), das als die weniger bedeutende Hälfte des Restwerts funktioniert. Sowohl MODH als auch MODL laden ihre Werte aus dem Hauptrechner H 0 über das Bussystem durch Befehle, die während des SET-UP Modus auf ähnliche Weise in anderen Registern ausgeführt werden.
- Der EQ Kasten ist ein sechzehn Bitvergleicher, zwei ALS519 Chip. Er bestimmt, wann die Zählung in XA gleich mit den Inhalten von MODH und MODL ist. Merke: Da der XA von 0 zu LINE WIDTH minus 1 zählt, muß der Wert von MODH und MODL um eins weniger als der gewünschte Restwert des XA Zyklus gesetzt werden. Logik innerhalb des Steuerteilkastens CM - Funktion EBUSCMDS erkennt, wann Gleichheit erreicht wurde und meldet dem Zähler XA über einige der CT< 0 : 17> Leitungen eher auf Null zurückzusetzen, als auf die nächste A_CLK hochzuzählen.
- Das TAKE ist ein 8 Bitregister (LS 374), das als Maske in den SERIN Bilddatenströmen funktioniert. Dadurch kann die Numerierung der ausgewählten Bildströme unabhängig von der Gestaltung der DINH und der BC Inhalte aktiviert und desaktiviert werden, die während des SET_UP Modus erstellt wurden. TAKE kann zu jeder Zeit von dem H 0 über den Systembus geladen werden.
- Das INTV ist ein 8 Bitregister (LS374), das als Halteregister für den Wert arbeitet, der von dem E12 in Fig. 15 verwendet wird, um zu prüfen, wann der FIFO, der die numerierten Daten hält, erschöpft ist. Die Operation des FIFO's und die Verwendung des INTV Wertes wird in Fig. 15 erörtert.
- Die DBL, DBX und DBH sind drei invertierte 8 Bitpuffer LS540, um die Systembusdaten von einem 16 Bit breiten Pfad mit den zahlreichen Register DINH, DINL, TAKE, INTV, MODE, XA, MODH und MODL zu verknüpfen, die von dem Setzen des Bythe High Enable Bit des Systembusses abhängen. Wiederum ist die Wahl der Methode zur Übertragung der Werte von H 0 zu D 11 nicht entscheidend. Es gibt verschiedene Wege, die Datenübertragung zwischen dem Hauptrechner 0 und den zahlreichen Teilen des Bildverarbeitungssystem durchzuführen.
- Der ARB ist ein invertierter 8 Bitpuffer LS 540, der verwendet wird, um die Systembus-Adressdaten in den SELECT Eingängen zu isolieren und die Leistung zu wiederholen, die an den Steuerteil des D 11 in den Eingangsleitungen CMDS gesendet wird. Der Steuerteil wird später beschrieben.
- Das RSLF ist ein 8 Bitregister (LS374), das als Halteregister für acht der BC-Ergebnisse funktioniert. Der Zweck dieses Registers ist es, den zeitlichen Ablauf auszugleichen, wenn sich Bilddaten von der CAGE BC zu dem Numerierer E12 über die Eingänge A in SELA und somit zu SERIN von Fig. 15 bewegen. Das Register ist während des Gestaltungsmodus ohne Funktion.
- Das RSLT ist ein 8 Bitregister (LS374), das als Halteregister für acht der BC-Ergebnisse funktioniert. Der Zweck dieses Registers ist es, den zeitlichen Ablauf auszugleichen, wenn sich Bilddaten von der CAGE BC zu der nächsten CAGE über die Eingänge A in SELB bewegen und dadurch in SEPE auszugeben (Leitungen 17). Dies geschieht während des Betriebsmodus. Das Register ist während des Gestaltungsmodus ohne Funktion. Die Funktion von den RSLF, RSLT und RSLX Registern (Fig. 14) sind vollkommen gleich mit denen von RSLF, RSLT bzw. RSLX, wie bereits in Zusammenhang mit der PEG 10 beschrieben wurde.
- Das RSLX ist ein 8 Bitregister (LS374), das als Halteregister für acht der BC-Ergebnisse funktioniert. Es ist analog zu dem RSLT Register mit der Ausnahme, daß sein Ausgang sowohl direkt zu der nächsten PEG geht, wie mit dem Ausgang SEPEX verbunden, als auch über die Eingänge A in SELB und dadurch in SEPE auszugeben (Leitungen 17). Dies geschieht während des Betriebsmodus. Das Register ist während des Gestaltungsmodus ohne Funktion. Die Operation des SELA' ist vollkommen analog zu der von GL 22 (Fig. 7), die bereits in Zusammenhang mit PEG 10 beschrieben wurde.
- Die SELA zeigt acht Zwei-Wege-Multiplexoren, deren Implementierung nicht abgebildet ist, von denen jeder Signal A aus dem RSLF Register oder Signal B aus dem RSLT Register in einer vorhergehenden PEG gemäß dem Steuerwert in dem entsprechenden Bit des DINH Registers über Leitung C auswählt. Die ausgewählten Werte in Ausgang Y gehen über die Ausgangsleitungen SERIN zu E 12.
- Die SELB zeigt acht Zwei-Wege-Multiplexoren, deren Implementierung nicht abgebildet ist, von denen jeder Signal A aus dem Q Ausgang von RSLT oder den Q Ausgang von RSLX gemäß dem Steuerwert in dem entsprechenden Bit des DINL Registers über Leitung C auswählt. Die Ausgangsleitungen Y gehen zu der nächsten CAGE über die Ausgangsleitungen SEPE (Leitung 17, Fig. 1).
- Die Funktion des Rests der Kästen in Fig. 14, nämlich Kasten A (Typ XACKGEN1), Kasten CM (Typ EBUSCMDS) und Kasten S (Typ EBUSBC) sind in ihren Funktionen sehr ähnlich, wie bereits in Fig. 7 für die PEG 10 erörtert wurde, obwohl deren Funktion nicht einzeln besprochen wurde. Sie sind die CONTROL und die CAGE BC Funktionen. XACKGEN1 und EBUSCMDS zusammen führen die äquivalente Funktion als Kombination von der ADD und Fig. 8 mit Teilen von Fig. 7 aus. Der EBUSBC ist vollkommen analog zu der Fig. 10 mit Teil von Fig. 7 mit der Ausnahme, daß die Speicher 24 Bit breit sind und ihr Adressumfang von dem Designer gewählt wird, um je nach Wunsch viel oder weniger Boolesche Kombinationsfunktion unterzubringen. Das Ergebnis ist, daß einer logischerweise von dem D 11 Kasten als Extra BC sprechen kann, dessen Eingänge nur von dem EBUS 9 kommen und dessen Ausgänge zur Übertragung an die nächste CAGE oder an die Numerierungsfunktion E 12 dieser CAGE zur weiteren Verarbeitung kombiniert werden.
- Es sollte einem Fachmann klar sein, daß die Implementierung von Unterteilen von D11 nahezu vollkommen analog zu den ähnlich oder gleich bezeichneten Unterteilen der PEG 10 ist. Daher wird auf weitere Einzelheiten verzichtet.
- Fig. 15 ist das Diagramm der oberen Ebene des bevorzugten Ausführungsbeispiels eines Numerierers, der in Fig. 1 als Kasten E 12 abgebildet ist. Die Funktion eines Numerierers kann ganz einfach als ein Mechanismus zum Senden eines verschlüsselten Bildes an den Hauptrechner H 0 gedacht werden. Die Verschlüsselungsregel, die für die Implementierung in dem bevorzugten Ausführungsbeispiel gewählt wurde, ist, die Taktzahl für das Auftreten von jedem "on" PEL in einem Bild zu senden. Die Taktzahl ist äquivalent zu der Anzahl von PEL's, die in der ersten PEG 10 in der ersten CAGE C1 3 verschoben wurden, während das System gestaltet wurde. Die aufgelaufene Hardware Verzögerung in PEL Takten für ein PEL, um von dem Ausgang von M7 zu dem Mechanismus in E 12 zu gelangen, die prüft, daß das PEL leicht als eine Funktion der Netzwerkgestaltung berechnet werden kann. Die physikalische Stelle der "Bildeinrichtung", die in einem zu numerierenden PEL resultiert, ist die gesamte Taktzählung abzüglich der aufgelaufenen Verzögerung. Die Kenntnis der Bildbreite bestätigt die XY-Stelle der Einrichtung in dem festzulegenden Originalbild.
- Die Gestaltungsinformation wird über die Leitungen 14 von der CC 1 empfangen. Dann im RUN Modus werden die Bildströme und Steuerinformation über die Leitungen 19 von D 11 empfangen und die verschlüsselte Information wird an den H 0 durch CC 1 über den Mehrbus-Übertragungsmechanismus über die Leitungen 14 gesendet. Die primäre Funktion der E 12 Logik ist die Taktzählung und das Puffern der Zählungen, um die Übertragung an den H 0 zu erleichtern. Es ist wünschenswert, daß diese Übertragung asynchron mit der in den PEG's 10 und dem D 11 laufenden Bildverarbeitung ist. Da es einen Bildpuffer in M 7 gibt, um das ankommende Bild zu halten und Puffer innerhalb jeder E 12, um die ausgehende (zu dem H 0), verschlüsselte Bildinformation zu halten, gibt es eine einfache Methode, Datenverlust ungeachtet des zeitlichen Ablaufs der Datenübertragung zu vermeiden. Wir stoppen genau die Takte in den CAGE's, wenn irgendeiner der Puffer in der E 12 Logik in Gefahr gerät, seine Kapazität zu überschreiten, da er dem Eingangsbild oder -bildern gestattet hat, in M 7 aufzulaufen.
- Die Eingänge in den E 12 können in drei unterschiedlichen Gruppen gedacht werden. Die erste Gruppe ist die in den Leitungen 14 von CC 1. Diese Signale sind SELECT< 0 : 7> , C_B_I< 0 : 6> und MB_CLK. Sie entsprechen im allgemeinen den Mehrbus P1 und P2 Signalen, die bereits in Zusammenhang mit der PEG 10 Fig. 7 und dem D11 Fig. 14 erörtert wurden, obwohl die genauen Namen und Indexe nicht unbedingt übereinstimmen. Ihre Funktion ist die Übertragung von Steuerinformation während des Einstellmodus und die Übertragung der Daten an H 0 über die Ausgänge MB_D_O< 0 : 15> während des Betriebsmodus. Im Gegensatz zu allen anderen Funktionen überträgt die E Funktion Informationen über den Mehrbus während des Betriebsmodus. Es wird jedoch nicht üblicherweise von dem H 0 zu dem E 12 die Gestaltung gewechselt sondern von dem E 12, um die verschlüsselte Bildinformation an den Hauptrechner H 0 zu übertragen. Die Ausnahme hiervon ist, daß ein in D 11 implementierter Befehl, LOAD TAKE genannt, der sowohl im SETUP als auch im RUN Modus in Betrieb ist, den Wert des TAKE Registers in Fig. 14 wechselt und dadurch die Operation von der E 12 Logik über die Leitungen SELPE beeinflußt. Diese Funktion gehört logischerweise zu der Numerierer Funktion von Fig. 15, wird jedoch in Fig. 14 als implementiert gezeigt. Die zweite Gruppe von Eingangssignalen sind diejenigen, die von D 11 über die Leitungen 19 kommen. Es sind INTV< 0 : 7> , SERIN< 0 : 7> , XADD< 0 : 15> , SELPE< 0 : 7> und MODE< 0 : 7> . Ihre Anwendung wurde in Zusammenhang mit D 11 (Fig. 14) beschrieben, ausgenommen XADD< 0 : 7> , die als Zählwert gilt. Die dritte Eingangsgruppe ist der Eingang DLYI< 0 : 7> . Zum Zwecke der Erläuterung ist es am einfachsten an die Ausgänge DLYI< 0 : 7> zu denken, die direkt an die Eingänge DLYI< 0 : 7> angeschlossen sind. Auf diese Weise sind sie ohne Wirkung, da die DLYI und DLYO Ports der EXYPENUM Funktion sowohl acht Bitbildströme, DLYO eine Source, DLYI eine Sink, als auch die Verbindung der beiden äquivalent zu einer Verbindung ist, die intern in dem EXYPENUM erfolgte. In der Praxis ist es möglich, eine Funktionsäquivalenz in DEL 26 von Fig. 7 zwischen DLYO und DLYI hinzuzufügen, die auch mit ihren eigenen Mehrbussignalen verbunden ist, um eine variable, programmierbare Verzögerung zu jedem der acht Bildströme in den Ausgängen DLYO zu gestatten, bevor sie alle aktuell in DLYI numeriert werden. Diese zusätzliche variable Verzögerung wird den unabhängigen Bildströmen erlauben, rechtzeitig und am richtigen Platz einzuschalten, so daß ein Positionscode für alle Ströme ohne irgendeine zusätzliche Berechnung durch den Hauptrechner H 0 ausreichen wird, um die Hardware-Verzögerungen einzurichten, die in je nach Eintreffen der Bilder in den PEG's in der Funktion variabel sind. Das um zu sagen, daß die zusätzliche Verzögerung von einem Extra DEL (in keiner der Figuren abgebildet) darin besteht, gleiche Hardware-Verzögerungen für alle acht, zu numerierenden Bildströme zu schaffen. In dem bevorzugten Ausführungsbeispiel haben wir uns für den Ausgleich durch Berechnung in dem Hauptrechner H 0 entschieden.
- Die Ausgänge von E 12 sind M_D_O< 0 : 15> , XACK, WAIT, INT< 0 : 7> und DLYO< 0 : 7> und sie bilden einen Teil der Leitungen 14 in CC 1. MB_D_O< 0 : 15> sind die 16 Datenleitungen des Systembusses (in diesem Fall ein Ausgang von Fig. 15, da sich die Datenübertragungsrichtung innen befindet). XACK ist Befehlsrückmeldungssignal. INT< 0 : 7> sind die Mehrbus-Unterbrechungsanforderungs-Leitungen, die verwendet werden, um dem H 0 über CC 1 zu melden, daß die Datenpuffer innerhalb E12 einen gewissen Pegel erreicht haben und von dem Hauptrechner H 0 geleert werden sollten. MB_D_O, XACK und INT (zusammen mit SELECT, MB_CLK und C_B_I) bilden den Mehrbus, der von E 12 verwendet wird. DLYO wurde bereits erörtert. WAIT ist eine einzelne Leitung, die über die Leitungen 14 zu CC 1 geht, um der CC 1 zu melden, daß die Takte gestoppt werden müssen (innerhalb einer festgelegten Anzahl von Zyklen), um die Gefahr einer Kapazitätsüberschreitung in dem Datenpuffer zu vermeiden.
- Fig. 15 zeigt die Funktionsoperation der einzelnen Teile des Numerierers E 12.
- Der EXYPCMDS Block ist in der Funktion ähnlich mit dem in Fig. 8 von der PEG 10. Er dient zur Entschlüsselung von Mehrbus-Anweisungen und zur Verteilung von Takt- und Modussignalen an den Rest der Logik in der Fig. In Verbindung mit der XACTGEN1 Logik zur Bestätigung der Befehlsrückmeldung, daß die Operation des EXYPCMDS erfolgt, um die Anweisungen auszuführen, die in dem EXYP Kartenabschnitt der Anweisungen von Tabelle 2 aufgelistet sind. Zusätzlich gibt es innerhalb des EXYPCMDS zwei weitere Operationen, die sich von der anderen, vorgestellten Anweisung leicht unterscheiden. Ein Lesebefehl (siehe EXYP READ Gruppe in Tabelle 2) kann nicht eher bestätigt werden, bis der Datenpuffer (EXYPFIFO) meldet, daß Daten vorhanden sind, die für die Übertragung über die Leitung READY bereit sind. Nur dann kann der EXYPCMDS dem XACKGEN1 über BDEN_N melden, daß ein Befehl richtig entschlüsselt wurde. Ein Systemabbruchstatus wird dadurch vermieden, indem der Hauptrechner H 0 Zugriff zu der Information erhält, die ihm garantieren wird, daß bei Ausgabe eines READ Befehls, die READY Bedingung bereits erfüllt ist. Dies wird weiter unter den WARN und FULL Ausgängen des EXYPFIFO's bzw. EXYPINTR erörtert. Der EXYPCMDS empfängt auch das LEND Signal als Teil der MODUS Leitungen von D 11, die das Zeilenende für eine Bildzeile angeben. Diese Information wird von dem EXYPCMDS verwendet, um ZA zu melden (EXYPZCNT), die Zeilenzählung fortzuführen.
- Der Kasten ZA (EXYPZCNT) ist ein 16 Bit binärer Zähler (ohne Abbildung der Implementierung), der die Bildzeilen zählt. Der Leser wird verstehen, daß das Ende des Zeilensignals LEND in ECYPCMDS eine Funktion der Werte in den MODH und MODL Registern und dem XA Zähler D 11 ist und nicht dem Ende der physikalischen Zeilen oder Reihen in dem Bild entspricht. Da ZA die Taktanzahl zählt, wurde der XA Zähler auf Null zurückgesetzt.
- Die Funktion des Kastens XP (EXYPENUM) ist es, das Auftreten eines Numerierungsereignisses (ein "on" PEL in einem oder mehreren aktivierten oder unmaskierten Bildströmen, die bei SERIN ankommen) zu erkennen, die Identität dieses Ereignisses/der Ereignisse entlang des XA (Fig. 14) Zählwertes zu sichern, der zu diesem Ereignis/diesen Ereignissen gehört, bis es in den Datenpuffer FF (EXYPFIFO) eingegeben werden kann. Die Eingänge von XP sind wie folgt, von oben nach unten gegen den Uhrzeigersinn: DLYI< 0 : 7> , SERIN< 0 : 7> , XADD< 0 : 15> , SELPE< 0 : 7> , CTB< 0 : 7> , CTX< 0 : 17> und ZCRY. Die Ausgänge, die oben rechts im Uhrzeigersinn beginnen, sind DLYO< 0 : 7> , TAKE, X_Y_P< 0 : 31> und HIT_B. DLYI sind die acht Bildströme, die entweder DLYO oder DLYO verzögert sind. In jedem Fall sind die DLYI gleich den SERIN Eingängen, obwohl diese durch die Summe der Verzögerung innerhalb einer DEL, die zwischen DLYO und DLYI plus einer zusätzlichen PEL Taktverzögerung angeschlossen ist, die innerhalb XP (um zeitliche Unstimmigkeiten zu vermeiden) auftreten. SERIN sind acht Bildströme, die von der E12 Logik über die D 11 Logik gesteuert werden. XADD ist die XA Zählung von D 11. SELPE ist die acht Bitmaske von D 11, die verwendet wird, um selektiv in einem Strom über die Strombasis die Bildströme zu aktivieren, die über SERIN ankommen. CTB ist äquivalent zu den MODE Eingängen in Fig. 15 von D 11 und bezeichnet eine Vielzahl von Optionen wie der Teil (signifikant) mit höchster Wertigkeit der X Y Numerierung zu verschlüsseln ist. Zum Zwecke dieser Anwendung werden wir nur die Option erörtern, die die kompletten 16 Bits von xA und die kompletten 16 Bits von ZA verwendet. CTX sind die CNTRLS Leitungen von dem CM Kasten (EXYPCMDS), die die Takte, Modi, und beiläufigen Steuersignale an XP übertragen. ZCRY ist das Übertragungssignal von dem Zähler ZA, der innerhalb XP verwendet wird, um die Kapazitätsüberschreitung des ZA Zählers zu melden. In dem bevorzugten Ausführungsbeispiel wird der ZCRY gleichsam als ein neuntes, numeriertes Ereignis verwendet und verursacht Daten, die gerade dann erzeugt werden, wenn eine Numerierung stattfindet, ausgenommen, daß es gleichzeitig geschehen kann, daß es kein numeriertes Ereignis von wirklichen "on" PEL's in der genauen Taktzeit gibt, die die Kapazität des Zählers überschreitet; in jedem Fall wird der Hauptrechner 0 in der Lage sein, zu erkennen, daß die Kapazität des Zählers überschritten wurde.
- Die Ausgänge von XP (EXYPENUM) tragen die folgende Information: DLYO trägt acht Bildströme. TAKE meldet dem Datenpuffer des FF Kastens (EXYPFIFO), daß Daten für ein anderes, numeriertes Ereignis in dem Puffer gespeichert werden sollten. X_Y_P< 0 : 31> ist Teil der numerierten Ereignisdaten, der 48 Bits in allen Zählungen des ZA Wertes beträgt. Die Daten in X_Y_P bestehen aus 16 Bits der PEL Adresse innerhalb der Reihe (XA Registerwert bei "on" PEL wurde in der XP Logik gezeigt), 8 Bits einer verschlüsselten Reihenadresse (YA Register in den XP Details, die nicht beschrieben wurden, da dies ein zweites jedoch nicht bevorzugtes Ausführungsbeispiel ist) und 8 Bits der PE Adressdaten (ein Bit in Position n gibt an, SERIN< n> war EIN - und mehrere Einsen sowohl als Nullen sind im Falle der Überschreitung der Kapazität des ZA's möglich). Die PE Adresse ist "nahezu" äquivalent zu einer einzigen PEL Taktscheibe von allen der Nicht-Null PEL Taktscheiben des SERIN Datenstromes, der von den SELPE Daten maskiert wird. Die HIT_B Leitung wird sich zu dem Zeitpunkt als wahr erweisen, in dem der ZA Zähler sollte in ZB gesammelt werden (ein 16 Bitregister von 2 LS374s), um den Rest der numerierten Daten in X_Y_P, wie sie von dem Puffer FF in den Leitungen DI gesendet wurden.
- Die Funktion des XP Kastens, dessen Implementierung nicht detailliert wird, ist es, die XA und YA Werte und SERIN Werte pro Numerierungsereignis zu sammeln und die Werte in der richtigen Zeit zur Eingabe in den Datenpuffer FIFO in dem Kasten FF zu präsentieren.
- Die Funktion des Kastens FF (EXYPFIFO) ist es, die numerierten Ereignisse in einem FIFO Puffer zur nachfolgenden Übertragung in den Hauptrechner H 0 über die READ Befehle der EXYP Karte zu sammeln. Er funktioniert als Datenpuffer mit der Fähigkeit, der CC 1 Logik zu melden, wenn eine Kapazitätsüberschreitung in Vorbereitung ist.
- Die Eingänge in FF, die gegen den Uhrzeigersinn von links oben gelesen werden, sind SI, DI< 0 : 47> , CTLS< 0 : 19> , MODE< 0 : 3> und GAGE< 0 : 7> . DI enthält die kompletten Positionsdaten für ein numeriertes Ereignis, nämlich 16 Bits von X, 16 Bits von Z (der erweiterte X), 8 Bits von Y und 8 Bildbits (ein PEL Takt quer durch die acht numerierten Ströme). Wir beziehen uns nachfolgend auf die Bildinformation als P Byte. Diese Information kommt von XB, YB bzw. ZB. SI ist das Signal, das die DI Daten in den FIFO an seiner Anlaufkante überträgt. Es wird in XP in A_CLK entsprechend dem Auftreten von HIT_B erzeugt. CTLS sind die zugehörigen Taktsignale von dem CNTRLS Ausgang des Kastens CM. Sie enthalten die Takte, Modi und entschlüsselten Anweisungssignale, die für die FF Funktion erforderlich sind. MODE enthält die Information von dem D 11 über die Leitungen MODE, die angibt, welche Teile der DI dazugehörig sind. In dem bevorzugten Ausführungsbeispiel werden alle drei doppelten Bytes von DI (2 Bytes von X, 2 Bytes von Z und 2 Bytes, die einen von Y und einen von P enthalten) übertragen. Andere Optionen der MODE werden nicht erörtert. Der letzte Eingang ist die GAGE Leitung von D11 über die Eingänge INTV. Die Zahl in der GAGE gibt über den Kapazitätspegel dem FIFO die Steuerungen in FF an, die dem Hauptrechner über eine Unterbrechung zu melden sind, daß Numerierungen nun in der vorgeschriebenen Anzahl gesammelt wurden. Diese Meldung erfolgt über den WARN Ausgang zum Kasten IN, der aktuell die Unterbrechung in dem H 0 einträgt.
- Die Ausgänge von FF (EXYPFIFO), die von oben rechts im Uhrzeigersinn gelesen werden, sind: FULL, WARN, READ< 0 : 7> und READY. WARN wurde bereits erörtert. FULL ist die Zeile, die angibt, daß der FIFO nahezu voll ist. Diese Zeile wird über den Kasten IN zu der WAIT Leitung und somit zu CC 11 gesendet. Da sie von der CC 1 verwendet wird, um die Takte zu stoppen, bevor zu viele Numerierungsereignisse die Kapazität des Puffers überschreiten können. Der FIFO Pegel, an dem FULL aktiviert sein sollte, ist ein Detail, das von der Mechanik der Meldung von E 12 zu CC 1 und anderen Implementierungsdetails abhängt, die für die Patentanmeldung nicht von Bedeutung sind. Ein Fachmann kann ähnliche und gleich effektive Mittel zur Durchführung der Funktion entwerfen, nämlich die Takte zu stoppen, dadurch werden die Bilder gestoppt, die in den CAGE's vorwärtsgetrieben werden; dadurch werden zusätzliche numerierte Punkte vermieden, wie in E 12 gezeigt; dadurch wird ein weiteres Ereignis für einen bereits vollen FIFO innerhalb der E 12 vermieden. Das System richtet sich somit selbst zu Zeiten von nicht häufigen Blöcken von numerierten Ereignissen ein, ohne einer hohen Bandbreite zwischen E 12 und H 0 zu bedürfen. Das System versagt nur, wenn die integrierte Zeit der Takte, die gestoppt werden, so groß ist, daß die Summe der während dieser Zeit gesammelten Bilder die Kapazität von M7 überschreitet. Der nächste Ausgang von FF ist READ, der die Zählung der Anzahl numerierter Ereignisse in dem FIFO Puffer von dem letzten Mal enthält, an dem der H 0 ein COPY FIFO COUNT an den FCNT REGISTER Befehl ausgegeben hat (siehe EXYP MISC Gruppe Tabelle 2). Die tatsächliche FIFO Zählung kann von dem H 0 nicht zuverlässig abgetastet werden, da ein numeriertes Ereignis während der Abtastzeit (da H 0 Befehle und CAGE Takte A_CLK und B_CLK asynchron sind) eintreten kann. Der COPY Befehl macht die tatsächliche FIFO Zählung in dem READ Ausgang verfügbar, wo er in den H 0 durch eine nachfolgende READ FCNT Anweisung eingelesen wird. Es ist dieser FCNT Wert, der den H 0 aktiviert, um eine Verriegelungsbedingung wie folgt zu verhindern: Während SET_UP wird der INTV Wert in D 11 erstellt. Dann wird H 0 die Befehle an den CC 1 ausgeben, um den RUN Modus einzugeben und die Bildtakte zu starten. Wenn die Numerierungen in irgendeinem E 12 zu der gesamten INTV Summe aufläuft, wird von E 12 an H 0 eine Unterbrechung gemeldet, die einen Eingriff erfordert. Der H 0 kann dann die Ereignisse in den INTV ohne Gefahr der Verriegelung des READ Befehls einlesen, da Daten in dem angegebenen FIFO fehlen.
- Wenn jedoch der H 0 die E 12 Numerierungsdaten lesen will, bevor die Unterbrechung empfangen wurde, (d. h. wenn der Anwendungscode in H 0 eher im Abrufmodus als im Unterbrechungsmodus arbeitet), dann kann der H 0 jede ausgewählte E 12 mit einem COPY FIFO . . Befehl abrufen und danach einen READ FCNT Befehl, um eine niedrigere Grenze in der Anzahl von Numerierungsereignisdaten festzulegen, die von dem B 12 verfügbar sind. Der nächste Ausgang READY meldet dem CM über die Eingangsleitung READY, daß ein kompletter Satz von X, P und Z Daten in den Ausgang des FIFO strömt und für das Einlesen durch H 0 verfügbar ist. Da READY stets zu einer berechenbaren Zeit (der FIFO Durchlaufzeit) nach einem numerierten Ereignis stattfindet, das zuerst in den FIFO eingegeben und gezählt wurde, kommt es niemals zu einer überaus langen Wartezeit auf READY. READY, wie wir es bereits erklärt haben, wird innerhalb EXYPCMDS und XACKGEN verwendet, um die Bestätigung in dem H 0 zu aktivieren, daß ein Befehl erfüllt wurde. Der letzte Ausgang DO< 0 : 47> ist der FIFO Ausgang, der an den H 0 während der READ Befehle von dem DVR Kasten gesendet wird. DO enthält die gleiche Sammlung von Informationen wie DI, verzögert um die Durchlaufzeit des FIFO's und den zeitlichen Ablauf für das Einlesen der FIFO Werte.
- Der IN (EXYPINTR) Block gibt Unterbrechungen an den H 0 über Signal INTV< N> von INTV< 0 : 7> aus, das von dem CAGE N des E 12 abhängt, dessen Hardware lokalisiert wird.
- Die DVR (EXYPDVR) steuern die numerierten Daten XYPZ und E 12 STATUS in dem Systembus, unter Einhaltung der MULTI-BUS (TM) Spezifikationen von entweder einem oder zwei Byte(s) pro Takt, und in Abhängigkeit von dem aktuellen READ Befehl und den Busrichtliniensignalen BYTE HIGH ENABLE. Die aktuelle Implementierung solch einer Funktion sollte von einem Fachmann einfach durchzuführen sein.
Claims (10)
1. Ein gestaltbares paralleles Pipeline-Verarbeitungssystem
zur Bildverarbeitung mit Recheneffizienz innerhalb der
verfügbaren Kapazität vorgesehen, mit:
- Steuermitteln (0,1);
- Mitteln zur Bereitstellung von Bildern (7); und
- wenigstens einer Gruppe von CAGE Untereinheiten
(3, 4, 5, 6) zur Bildverarbeitung, die wirksam mit den
Mitteln zur Bereitstellung von Bildern verbunden
sind, wobei jede CAGE
(1) Leistungs-/Wiederholungsmittel (CC 20) enthält, die
angepaßt sind, um die CAGE Steuersignale (14) von den
Steuermitteln mit den entsprechenden Leistungspegeln
für die Empfangsschaltkreise zu wiederholen;
(2) eine Vielzahl von Gruppen mit gestaltbaren
Verarbeitungselementen PEG's (10) enthält, die sequentiell
untereinander (17) und mit dem Booleschen Kombinator
(11) einer CAGE Ebene verbunden werden, der für den
Anschluß an die nächste CAGE verantwortlich ist;
(3) einen Bus (9) enthält, mit die PEG's und der
Boolesche Kombinator der CAGE Ebene außerdem verbunden
sind; und
(4) CAGE Ausgangsmittel (11, 12, 17, 18) einschließlich des
Booleschen Kombinators der CAGE Ebene enthält;
Jedes PEG enthält:
(1) einen Satz von parallel angeordneten
Verarbeitungselementen (PE 21), wobei jeder einen Ein- und Ausgang
enthält;
(2) einen Booleschen Kombinator (23) mit Ein- und
Ausgängen, wobei ein Teil der Eingänge an die Ausgänge des
Satzes von Bildverarbeitungselementen angeschlossen
ist und ein anderer Teil der Eingänge an den Bus
angeschlossen ist, wobei der Boolesche Kombinator für
die logische Kombination der Bildströme der Eingänge
arbeitet und Ausgänge erzeugt, wobei deren erste
Untermenge rückführend mit dem Satz von
Verarbeitungselementen verbunden wird und deren zweite Untermenge
vorwärts mit der nachfolgenden PEG oder dem
Booleschen Kombinator der CAGE Ebene verbunden wird, wobei
eine Vielzahl von Zusammenschaltungen von
Verarbeitungselementen durchführbar ist.
2. Ein System wie in Anspruch 1, in dem der Boolesche
Kombinator eine erste Untermenge von Booleschen kombinierten
Bildübertragungsschaltungen enthält, die rückführend
(22, 29) mit dem Satz von PE's verbunden werden und eine
zweite Untermenge von Booleschen kombinierten
Bildübertragungsschaltungen enthält, die mit der nachfolgenden PEG
oder alternativ mit dem CAGE Ausgang verbunden sind.
3. Ein System wie in Anspruch 2, in dem jede CAGE wenigstens
eine Bildverarbeitungs-Untereinheit (CAGE 3) mit
Signalwiederholung enthält, die wirksam mit den Mitteln zur
Bereitstellung von Bildern verbunden ist.
4. Ein System wie in Anspruch 3, in dem jede CAGE
Numerierungsmittel E zur Spezifizierung einer Funktion eines
Bildes in komprimierter Form enthält.
5. Ein System wie in irgendeinem der vorhergehenden
Ansprüche, in dem der Boolesche Kombinator mittels
Nachschlagetabelle operiert.
6. Ein System wie in Anspruch 5, in dem die
Verarbeitungselemente (21) mittels Nachschlagetabelle operieren.
7. Ein System wie in irgendeinem der vorhergehenden
Ansprüche, in dem wenigstens eines der Verarbeitungselemente in
dem Satz von Verarbeitungselementen in einer der PEG's
einen benachbarten Funktion-Rückführungsmechanismus
enthält, der eine Funktion seines Ausganges als Teil eines
Eingangs für das nächste Bild zurückverbindet.
8. Ein System wie in Anspruch 7, in dem der benachbarte
Funktionslogik-Rückführungsmechanismus eine
Ausgangssignalverbindung von der benachbarten Funktionslogik zurück an
ihren eigenen Eingang liefert.
9. Ein System wie in Anspruch 8, in dem der benachbarte
Funktionslogik-Rückführungsmechanismus ein minimaler,
benachbarter Funktionslogik-Rückführungsmechanismus ist, der in
den Übertragungsmitteln auf ein einziges Bit beschränkt
ist.
10. Ein System wie in irgendeinem der vorhergehenden
Ansprüche, in dem die PEG's (10) in Pipeline-Gestaltung
innerhalb CAGE's (3-6) angeordnet sind, und in dem die CAGE's
(3-6) mit Pipeline-Verbindungen von dem ersten CAGE (CO)
zu dem letzten CAGE Cn(6) sequentiell und schließlich mit
den Bildübertragungsmitteln angeordnet sind; und in dem
die Bildmittel einen Videopuffer (7) und Videobusmittel
(8) enthalten, die mit dem Videopuffer (7) und den CAGE's
verbunden sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75964085A | 1985-07-26 | 1985-07-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3689093D1 DE3689093D1 (de) | 1993-11-04 |
DE3689093T2 true DE3689093T2 (de) | 1994-05-05 |
Family
ID=25056408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19863689093 Expired - Fee Related DE3689093T2 (de) | 1985-07-26 | 1986-06-24 | Gestaltbares paralleles Pipeline--Bildverarbeitungssystem. |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0210434B1 (de) |
JP (1) | JPS62162176A (de) |
CA (1) | CA1258319A (de) |
DE (1) | DE3689093T2 (de) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5046190A (en) * | 1988-09-06 | 1991-09-03 | Allen-Bradley Company, Inc. | Pipeline image processor |
JPH0877002A (ja) * | 1994-08-31 | 1996-03-22 | Sony Corp | 並列プロセッサ装置 |
US8385971B2 (en) | 2008-08-19 | 2013-02-26 | Digimarc Corporation | Methods and systems for content processing |
TW201215149A (en) | 2010-09-17 | 2012-04-01 | Alpha Imaging Technology Corp | Notebook computer for processing original high resolution images and image processing device thereof |
US9575916B2 (en) | 2014-01-06 | 2017-02-21 | International Business Machines Corporation | Apparatus and method for identifying performance bottlenecks in pipeline parallel processing environment |
US9424160B2 (en) | 2014-03-18 | 2016-08-23 | International Business Machines Corporation | Detection of data flow bottlenecks and disruptions based on operator timing profiles in a parallel processing environment |
US9501377B2 (en) | 2014-03-18 | 2016-11-22 | International Business Machines Corporation | Generating and implementing data integration job execution design recommendations |
KR101549016B1 (ko) | 2014-06-25 | 2015-09-01 | 세종대학교산학협력단 | 공간임의접근을 지원하는 영상 코덱 시스템, 영상 부호화 방법 및 복호화 방법 |
KR101614402B1 (ko) | 2014-11-20 | 2016-04-21 | 세종대학교산학협력단 | 공간임의접근을 지원하는 영상 코덱 시스템, 영상 부호화 방법 및 복호화 방법 |
KR101549017B1 (ko) | 2014-11-20 | 2015-09-01 | 세종대학교산학협력단 | 공간임의접근을 지원하는 영상 코덱 시스템, 영상 부호화 방법 및 복호화 방법 |
KR101549018B1 (ko) | 2014-11-20 | 2015-09-01 | 세종대학교산학협력단 | 공간임의접근을 지원하는 영상 코덱 시스템, 영상 부호화 방법 및 복호화 방법 |
KR102160092B1 (ko) * | 2018-09-11 | 2020-09-25 | 스노우 주식회사 | 레이어드 마스크와 룩업테이블을 이용한 이미지 처리 방법 및 시스템 |
-
1986
- 1986-05-14 CA CA000509127A patent/CA1258319A/en not_active Expired
- 1986-06-24 DE DE19863689093 patent/DE3689093T2/de not_active Expired - Fee Related
- 1986-06-24 EP EP19860108592 patent/EP0210434B1/de not_active Expired - Lifetime
- 1986-06-24 JP JP61146314A patent/JPS62162176A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
DE3689093D1 (de) | 1993-11-04 |
EP0210434A2 (de) | 1987-02-04 |
JPS62162176A (ja) | 1987-07-18 |
EP0210434B1 (de) | 1993-09-29 |
EP0210434A3 (en) | 1990-02-28 |
CA1258319A (en) | 1989-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3049437C2 (de) | Matrixanordnung einer Vielzahl von Verarbeitungselementen | |
US4850027A (en) | Configurable parallel pipeline image processing system | |
DE69231497T2 (de) | Massivparalleles rechnersystem mit eingangs-ausgangsanordnung | |
DE19722365B4 (de) | Rekonfigurierbares Rechenbauelement | |
DE3689926T2 (de) | Einrichtung zur sequenziellen Bildtransformation. | |
DE69223303T2 (de) | Verfahren und Gerät für die dynamische Zuweisung von unadressierten Unterbrechungen | |
DE69122161T2 (de) | Massiv paralleler Rechner mit einer Kommunikationsanordnung in Scheiben | |
DE3689093T2 (de) | Gestaltbares paralleles Pipeline--Bildverarbeitungssystem. | |
DE68929317T2 (de) | Modulare Kreuzschienen zwischen Verbindungen in einem digitalen Rechner | |
DE1549532C2 (de) | Unterbrechungs-Direktorschalrwerk für eine Datenverarbeitungsanlage mit mehreren Rechenanlagen und mehreren perpheren Geräten | |
DE69635431T2 (de) | Verbindungsarchitektur für programmierbare logische Vorrichtung mit grobkörniger Oberflächenstruktur | |
DE2549336C3 (de) | Speichereinrichtung für bildliche Darstellungen betreffende Daten | |
DE68907383T2 (de) | Verfahren und Anordnung zur Umsetzung von Umrissdaten in Rasterdaten. | |
DE68923951T2 (de) | Hochgeschwindigkeits-Kombinierschalter mit Einzelfifo. | |
DE3851554T2 (de) | Steuerungsanordnung für gemeinschaftlichen Speicher. | |
DE69225839T2 (de) | Filtersystem und Verfahren zur Bildverarbeitung mit sehr hoher Geschwindigkeit | |
DE69424304T2 (de) | Paralleler datenprozessor | |
DE4121446A1 (de) | Terminal-server-architektur | |
DE3751312T2 (de) | Verfahren und Einrichtung zur Verarbeitung von Bilddaten. | |
DE3852592T2 (de) | Bildbehandlungsprozessor mit zeitverschachteltem Bus mit freiem Fluss. | |
DE19826252C2 (de) | Verfahren zur digitalen Signalverarbeitung | |
DE102019134020A1 (de) | Dekompprimierungstechniken zur verarbeitung komprimierter daten, die für künstliche neuronale netzwerke geeignet sind | |
DE3851264T2 (de) | Bildverarbeitungsverfahren. | |
DE69030941T2 (de) | Verfahren und Vorrichtung zur Verarbeitung von Bild-Daten | |
DE102023105568A1 (de) | Programmatisch gesteuertes daten-multicasting über mehrere rechen-engines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |