DE60211874T2 - Arrangement of two devices connected by a crossover switch - Google Patents
Arrangement of two devices connected by a crossover switch Download PDFInfo
- Publication number
- DE60211874T2 DE60211874T2 DE60211874T DE60211874T DE60211874T2 DE 60211874 T2 DE60211874 T2 DE 60211874T2 DE 60211874 T DE60211874 T DE 60211874T DE 60211874 T DE60211874 T DE 60211874T DE 60211874 T2 DE60211874 T2 DE 60211874T2
- Authority
- DE
- Germany
- Prior art keywords
- crossbar
- data
- arrangement according
- signal
- address
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
Die vorliegende Erfindung betrifft eine Vorrichtung, wie im Oberbegriff von Patentanspruch 1 beansprucht, das heißt eine Anordnung mit einer ersten Einrichtung und mit einer über eine Kreuzschiene an die erste Einrichtung angeschlossenen zweiten Einrichtung.The The present invention relates to a device as in the preamble claimed in claim 1, that is an arrangement with a first device and with a via a crossbar to the first device connected second device.
Eine Anordnung wie diese kann, braucht aber nicht, ganz oder teilweise eine Komponente einer programmierbaren Einheit wie etwa eines Mikroprozessors, Microcontrollers, eines Signalprozessors oder dergleichen sein.A Arrangement like this can, but does not need, in whole or in part a component of a programmable device, such as a microprocessor, Microcontroller, a signal processor or the like.
Die erste Einrichtung ist eine Einrichtung, die im folgenden Text als Haupteinheit bezeichnet wird und eine Übertragung von Daten von oder zu der zweiten Einrichtung initiieren kann, das heißt einen Lese- oder Schreibzugriff zu der zweiten Einrichtung; sie kann deshalb beispielsweise eine CPU oder ein DMA-Controller einer programmierbaren Einheit sein, braucht dies aber nicht notwendigerweise zu sein.The first facility is a facility that will be referred to in the text below Main unit is called and a transfer of data from or initiate to the second device, that is, a read or write access to the second device; she can therefore For example, a CPU or a DMA controller of a programmable Being a unit does not necessarily mean this.
Die zweite Einrichtung ist eine Einrichtung, die in dem folgenden Text als Untereinheit bezeichnet wird und von der Haupteinheit angeforderte Daten an die Haupteinheit ausgibt oder ihr von der Haupteinheit gelieferte Daten empfängt und diese Daten weiterverarbeitet oder speichert; sie kann somit beispielhaft ein Speicher sein, braucht dies aber nicht notwendigerweise zu sein.The second device is a device that in the following text is called a subunit and requested by the main unit Sends data to or from the main unit delivered data receives and further processing or storing this data; she can thus by way of example, it does not necessarily need to be a memory to be.
Die Haupteinheit und die Untereinheit brauchen nicht direkt mit der Kreuzschiene verbunden zu sein. Die Verbindung kann auch über eine Busschnittstelle, eine Busbrücke oder irgendeine andere Schnittstelle vorgesehen sein.The Main unit and the subunit do not need to be directly connected to the Crossbar to be connected. The connection can also have a Bus interface, a bus bridge or any other interface.
Normalerweise sind nicht nur eine Haupteinheit und eine Untereinheit, sondern eine Reihe von Haupteinheiten und/oder eine Reihe von Untereinheiten an eine Kreuzschiene angeschlossen und können über die Kreuzschiene miteinander verbunden sein.Usually are not just a main unit and a subunit, but a series of major units and / or a series of subunits connected to a crossbar and can each other via the crossbar be connected.
Das
fundamentale Design einer Anordnung wie etwa dieser ist in
Die
in
Die
Haupteinheiten M11 bis M13 und die Untereinheiten S11 bis S13 sind über die
Kreuzschiene XB1 miteinander verbunden. Genauer gesagt erfolgt dies
so, daß die
Haupteinheiten M11 bis M13 und die Untereinheiten S11 bis S13 mit
Hilfe von Leitungen oder Bussen, die in
Zusätzlich zu den internen Anschlüssen, die erwähnt worden sind, enthält die Kreuzschiene XB1 Entscheidungseinheiten A11 bis A13 und Multiplexer MUX11 bis MUX13.In addition to the internal connections, the mentioned have been included the crossbar XB1 decision units A11 to A13 and multiplexer MUX11 to MUX13.
Die Entscheidungseinheiten A11 bis A13 sind vor die Anschlüsse der Kreuzschiene XB1 geschaltet, an die die Untereinheiten S11 bis S13 angeschlossen sind. Genauer gesagt geschieht dies so,
- – daß die Entscheidungseinheit A11 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit der die Untereinheit S11 verbunden ist,
- – daß die Entscheidungseinheit A12 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit der die Untereinheit S12 verbunden ist und
- – daß die Entscheidungseinheit A13 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit der die Untereinheit S13 verbunden ist.
- - That the decision unit A11 is connected in front of that terminal of the crossbar XB1, to which the subunit S11 is connected,
- - That the decision unit A12 is connected in front of that terminal of the crossbar XB1, with which the subunit S12 is connected and
- - That the decision unit A13 is connected in front of that terminal of the crossbar XB1 to which the subunit S13 is connected.
Die Entscheidungseinheiten A11 bis A13 überwachen, ob irgendeine der Haupteinheiten M11 bis M13 eine Verbindung für die Untereinheit anfordert, die mit dem Anschluß der Kreuzschiene verbunden ist, der vor der jeweiligen Entscheidungseinheit geschaltet ist, und stellen eine Verbindung zwischen der relevanten Untereinheit und der Haupteinheit, die die Verbindung angefordert hat, her, wenn eine entsprechende Anschlußanforderung vorliegt und die Untereinheit nicht gegenwärtig mit irgendeiner anderen Haupteinheit verbunden ist oder – aus welchen Gründen auch immer – davor mit einer anderen Haupteinheit verbunden werden muß.The Decision units A11 to A13 monitor whether any of the Main units M11 to M13 requests a connection for the subunit, with the connection of the Crossbar is connected, which switched before the respective decision unit is, and make a connection between the relevant subunit and the main unit that has requested the connection, if a corresponding connection request and the subunit is not present with any other Main unit is connected or - for whatever reason always - before that must be connected to another main unit.
Die Multiplexer MUX11 bis MUX13 sind vor jene Anschlüsse der Kreuzschiene XB1 geschaltet, mit der die Haupteinheiten M11 bis M13 verbunden sind. Genauer gesagt geschieht dies so, daß:
- – der Multiplexer MUX11 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit dem die Haupteinheit M11 verbunden ist,
- – der Multiplexer MUX12 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit dem die Haupteinheit M12 verbunden ist und
- – der Multiplexer MUX13 vor jenen Anschluß der Kreuzschiene XB1 geschaltet ist, mit dem die Haupteinheit M13 verbunden ist.
- The multiplexer MUX11 is connected in front of that connection of the crossbar XB1 to which the main unit M11 is connected,
- - The multiplexer MUX12 is connected in front of that terminal of the crossbar XB1, to which the main unit M12 is connected and
- - The multiplexer MUX13 is connected in front of that terminal of the crossbar XB1, to which the main unit M13 is connected.
Die Multiplexer MUX11 bis MUX13 werden von den Entscheidungseinheiten A11 bis A13 gesteuert, und zwar genauer gesagt so, daß von den Untereinheiten ausgegebene Daten in jedem Fall an die Haupteinheit geliefert werden, und zwar genauer gesagt nur jene Haupteinheit, die die Verbindung für die relevante Untereinheit angefordert hat.The multiplexers MUX11 to MUX13 are controlled by the decision units A11 to A13, more specifically, so that data output from the subunits is always applied to the Specifically, only the main unit that requested the connection for the relevant subunit will be delivered.
Der Vollständigkeit halber sollte erwähnt werden, daß zumindest jene Leitungen, mit Hilfe derer die Haupteinheiten M11 bis M13 eine Verbindung für eine der Untereinheiten S11 bis S13 anfordern, nicht über die Multiplexer geführt sind.Of the completeness half should be mentioned that at least those lines by means of which the main units M11 to M13 a Connection for request one of the subunits S11 to S13, not over the Multiplexer led are.
Es ist auch möglich, daß verschiedene Haupteinheiten gleichzeitig mit verschiedenen Untereinheiten verbunden sind. Beispielsweise kann die erste Haupteinheit M11 mit der zweiten Untereinheit S12, die zweite Haupteinheit M12 mit der ersten Untereinheit S11 und die dritte Haupteinheit M13 mit der dritten Untereinheit S13 verbunden sein, und zwar gleichzeitig über jene internen Verbindungen der Kreuzschiene XB1, die durch dickere Linien gezeigt sind.It is possible, too, that different main units simultaneously associated with different subunits. For example the first main unit M11 may be connected to the second subunit S12, the second main unit M12 having the first subunit S11 and the third main unit M13 is connected to the third subunit S13 be, at the same time over those internal links of the XB1 matrix switch, which by thicker Lines are shown.
Die Kreuzschiene XB1 gestattet somit die sehr effiziente Übertragung von Daten zwischen denen an sie angeschlossenen Einrichtungen.The Crossbar XB1 thus allows very efficient transmission data between those connected to them.
Dies gilt jedoch nur, wenn die Ausführung von gegenseitig entsprechenden Aktionen, die eine Haupteinheit von verschiedenen Untereinheiten anfordern kann, vom Standpunkt der Haupteinheit gemäß dem gleichen Verfahren, insbesondere mit der gleichen Zeitsteuerung, stattfinden kann.This However, this only applies if the execution of mutually corresponding actions, which is a main unit of different Subunits, from the point of view of the main unit according to the same Procedures, in particular with the same timing, take place can.
Dies ist beispielsweise dann nicht der Fall, wenn die Haupteinheit die von einer ersten Untereinheit angeforderten Daten nach n Taktzyklen erhält und die von einer zweiten Untereinheit angeforderten Daten später erhält, das heißt erst nach n + m Taktzyklen. Dazu kann es beispielsweise kommen, wenn die zweite Untereinheit längere Zeit benötigt, um die von ihr angeforderten Daten auszugeben, als die erste Untereinheit.This is not the case, for example, if the main unit the data requested by a first subunit after n clock cycles receives and the data requested by a second subunit later, the is called only after n + m clock cycles. This can happen, for example, if the second subunit is longer Time needed to output the data requested by it as the first subunit.
Wenn Unterschiede wie diese vorliegen,
- – müssen die speziellen Merkmale der jeweiligen Untereinheiten, insbesondere die Reaktionszeiten der Untereinheiten, in der Haupteinheit auf die von der Haupteinheit ausgegebenen Anforderungen eingestellt werden, oder
- – die Kreuzschiene muß sogenannte Wartezustandsgeneratoren enthalten, die sogenannte Wartezustände produzieren, um den Haupteinheiten zu signalisieren, daß die Untereinheit auf die Anforderung von der Haupteinheit noch nicht reagiert hat.
- The special characteristics of the subunits, in particular the subunit response times, in the main unit must be set to the requirements of the main unit, or
- - The crossbar must contain so-called wait state generators that produce so-called wait states to signal the main units that the subunit has not yet responded to the request from the main unit.
Dadurch werden jedoch das Design und die Funktionsweise der Haupteinheiten und der Kreuzschiene komplexer und komplizierter.Thereby However, the design and the functioning of the main units become and the crossbar more complex and complicated.
Zudem hängen die verschiedenen Reaktionszeiten der Untereinheiten auf eine Anforderung von einer Haupteinheit nicht nur von dem Design der Untereinheit ab, sondern auch von den Signallaufzeiten zwischen den Haupteinheiten und den Untereinheiten.moreover hang the different reaction times of the subunits at a request of a main unit not only from the design of the subunit, but also of the signal transit times between the main units and the subunits.
Die Länge der Signallaufzeiten hängt unter anderem von der Länge der verbindenden Leitungen zwischen den Haupteinheiten und/oder den Untereinheiten und der Kreuzschiene ab, so daß die Signallaufzeiten möglicherweise erheblich voneinander differieren können.The Length of Signal transit times depends among other things of the length the connecting lines between the main units and / or the subunits and the crossbar, so that the signal propagation times possibly can differ significantly from each other.
Zudem machen es schlechte Signallaufzeiten möglicherweise erforderlich, in die Signalwege zwischen bestimmten Haupteinheiten und der Kreuzschiene und/oder zwischen bestimmten Untereinheiten und der Kreuzschiene eine oder mehrere Pipeline-Stufen beispielsweise in Form von Flipflops einzusetzen, und diese Pipeline- Stufen können zu zusätzlichen Verzögerungen bei der Reaktion der Untereinheiten auf eine Anforderung von einer Haupteinheit führen.moreover it may require bad signal propagation times into the signal paths between certain main units and the crossbar and / or between certain subunits and the crossbar one or more pipeline stages, for example in the form of flip-flops and these pipeline stages can to additional delays in response of the subunits to a request of one Lead the main unit.
Zu zusätzlichen Verzögerungen kann es zudem auch als Ergebnis dessen kommen, daß die Haupteinheiten und die Untereinheiten nicht direkt, über Busschnittstellen, Busbrücken oder dergleichen an die Kreuzschiene angeschlossen sind.To additional delays It can also come as a result of the fact that the main units and the subunits not directly, via bus interfaces, bus bridges or the like are connected to the crossbar.
Wenn solche zusätzlichen Verzögerungen vorliegen und diese Verzögerungen auch durch entsprechende Einstellungen der Haupteinheiten oder der Wartezustandsgeneratoren für die Kreuzschiene berücksichtigt werden sollen, werden das Design und die Funktionsweise der Haupteinheiten und der Kreuzschiene noch komplexer und komplizierter.If such additional There are delays and these delays also by appropriate settings of the main units or the Wait state generators for the crossbar is taken into account become the design and function of the main units and the crossbar more complex and complicated.
Eine weitere Lösung für die durch die zusätzlichen Verzögerungen verursachten Probleme besteht darin, daß die Taktfrequenz, mit der die Daten zwischen den an die Kreuzschiene angeschlossenen Einrichtungen übertragen werden, ausreichend reduziert wird, damit die verschiedenen Signallaufzeiten keinen Effekt auf die Reaktionszeiten aufweisen und auch keine Pipeline-Stufen erforderlich sind. In diesem Fall jedoch arbeitet das System langsamer als bei der Geschwindigkeit, mit der es tatsächlich arbeiten könnte.A another solution for the through the additional delays caused problems is that the clock frequency with which transmit the data between the devices connected to the matrix be sufficiently reduced so that the different signal delays no Have effect on the reaction times and also no pipeline stages required are. In this case, however, the system works more slowly than at the speed with which it could actually work.
Die vorliegende Erfindung basiert somit auf der Aufgabe, einen möglichen Weg zu finden, wie die Komponenten einer Anordnung des oben beschriebenen Typs effizient kooperieren können und auf flexible Weise kombiniert werden können, wobei diese Komponenten ein einfaches Design aufweisen und sich leicht betätigen lassen.The The present invention is thus based on the object of one possible Way to find how the components of an arrangement of the above Type can cooperate efficiently and can be combined in a flexible way, these components have a simple design and can be easily operated.
Gemäß der Erfindung wird diese Aufgabe durch die in Patentanspruch 1 beanspruchte Anordnung gelöst.According to the invention, this object is achieved by the claimed in claim 1 Anord solved.
Die Anordnung gemäß der Erfindung zeichnet sich durch folgendes aus:
- – wenn es zu einem Lesezugriff auf die zweite Einrichtung kommt, liest die erste Einrichtung die von der zweiten Einrichtung ausgegebenen Daten, wenn sie ein Bereitschaftssignal empfängt, das von der zweiten Einrichtung produziert wird und an die erste Einrichtung über die Kreuzschiene geliefert wird, und
- – wenn es zu einem Schreibzugriff von der ersten Einrichtung auf die zweite Einrichtung kommt, – gibt die erste Einrichtung die zu schreibenden Daten an die zweite Einrichtung aus, wenn sie ein Breitschaftssignal empfängt, das von der zweiten Einrichtung produziert wird und über die Kreuzschiene an die erste Einrichtung geliefert wird, und – liest die zweite Einrichtung die von der ersten Einrichtung ausgegebenen Daten, wenn sie ein Datengültigkeitssignal empfängt, das von der ersten Einrichtung produziert wird und über die Kreuzschiene an die zweite Einrichtung geliefert wird.
- If there is a read access to the second device, the first device reads the data output from the second device when it receives a ready signal produced by the second device and delivered to the first device via the crossbar, and
- If there is a write access from the first device to the second device, the first device outputs the data to be written to the second device when it receives a width signal produced by the second device and via the crossbar to the second device the first device reads the data output from the first device when it receives a data valid signal produced by the first device and delivered to the second device via the crossbar.
Bei einer Anordnung wie dieser signalisiert die Untereinheit der Haupteinheit und signalisiert die Haupteinheit der Untereinheit, daß die in jedem Fall von der jeweiligen Einheit erwartete Aktion ausgeführt worden ist, so daß die anfänglich erwähnten speziellen Vorkehrungen weder in der Haupteinheit, in der Kreuzschiene noch in der Untereinheit ausgeführt werden brauchen, wodurch es möglich wird, daß die Haupteinheit oder die Untereinheit die Aktionen ausführt, die ausgeführt werden müssen, oder um ein Ausführen jener Aktionen zu verhindern, nachdem ein spezifischer Zustand in der Untereinheit oder in der Haupteinheit aufgetreten ist.at an arrangement like this signals the subunit of the main unit and signals the main unit of the subunit that the in in each case, the action expected by the respective unit has been executed is, so that the initially mentioned special No precautions either in the main unit, in the matrix switcher executed in the subunit will need, making it possible will that the Main unit or subunit performs the actions that accomplished Need to become, or to execute prevent those actions after a specific condition in subunit or in the main unit.
Durch die beanspruchte Anordnung können die Komponenten dieser Anordnung effizient kooperieren und flexibel kombiniert werden und wobei die Komponenten ein einfaches Design aufweisen und einfach zu betätigen sind.By the claimed arrangement can the Components of this arrangement cooperate efficiently and flexible combined and the components being a simple design exhibit and easy to operate are.
Da die meisten Einheiten, die als eine Untereinheit verwendet werden, intrinsisch ein Bereitschaftssignal erzeugen oder ein Signal, das als ein Bereitschaftssignal verwendet werden kann, oder mit wenig Aufwand ein derartiges Signal erzeugen können, und die meisten Einheiten, die als Haupteinheit verwendet werden können, intrinsisch ein Datengültigkeitssignal erzeugen oder ein Signal, das als ein Datengültigkeitssignal verwendet werden kann, oder mit wenig Aufwand ein derartiges Signal erzeugen können, kann die beanspruchte Anordnung zudem sogar einfacher produziert und einfacher betätigt werden als herkömmliche Anordnungen vom erörterten Typ.There most of the units that are used as a subunit intrinsically generate a ready signal or a signal that can be used as a standby signal, or with little Effort to generate such a signal, and most units, which can be used as the main unit, intrinsically receive a data valid signal or a signal used as a data valid signal can, or can generate such a signal with little effort can In addition, the claimed arrangement produced even easier and easier to operate as conventional Arrangements of the discussed Type.
Vorteilhafte Entwicklungen der Erfindung finden sich in den abhängigen Ansprüchen, in der folgenden Beschreibung und in den Figuren.advantageous Developments of the invention can be found in the dependent claims, in the following description and in the figures.
Die Erfindung wird in dem folgenden Text unter Verwendung eines Ausführungsbeispiels und unter Bezugnahme auf die Figuren ausführlicher beschrieben. Es zeigen:The Invention will be described in the following text using an embodiment and described in more detail with reference to the figures. Show it:
Die
im folgenden Text beschriebene Anordnung ist im Prinzip auf die
gleiche Weise ausgelegt wie die in
Jede der zur Verfügung stehenden Haupteinheiten kann (über die Kreuzschiene) auf mindestens eine der Untereinheiten zugreifen. Bei dem betrachteten Beispiel sind die Zugriffe Lesezugriffe, mit Hilfe derer eine Haupteinheit von einer Untereinheit in dieser Untereinheit gespeicherte Daten liest, und Schreibzugriffe, mit Hilfe derer eine Haupteinheit an die Untereinheit Daten überträgt, die in dieser Untereinheit gespeichert oder weiter verarbeitet werden sollen. Die Zugriffe, die die Haupteinheiten auf die Untereinheiten machen, können jedoch auch beliebige andere gewünschte Zugriffsarten sein.each the available standing main units can (about the crossbar) access at least one of the subunits. In the example considered, the accesses are read accesses, with Help a main unit of a subunit in this subunit stored data reads, and write accesses, by means of which one Main unit transmits to the subunit data in this subunit saved or further processed. The requests, however, which make the main units on the subunits can also any other desired Be access types.
Die beschriebene Anordnung in dem betrachteten Beispiel ist eine Komponente einer programmierbaren Einheit wie etwa eines Mikroprozessors, eines Microcontrollers oder eines Signalprozessors. Es gibt jedoch keine Einschränkung darauf. Insbesondere können bestimmte Haupteinheiten und/oder Untereinheiten zumindest teilweise auch außerhalb der programmierbaren Einheit vorgesehen sein, und die beschriebene Anordnung kann zudem auch ganz oder teilweise eine Komponente einer integrierten oder nicht integrierten Schaltung sein.The described arrangement in the example considered is a component a programmable unit such as a microprocessor, a Microcontroller or a signal processor. However, there are none restriction thereon. In particular, you can certain major units and / or subunits, at least in part also outside be provided to the programmable unit, and the described Arrangement can also be wholly or partially a component of a integrated or non-integrated circuit.
Wie im Fall der anfänglich beschriebenen herkömmlichen Anordnung gilt auch im Fall der im folgenden Text beschriebenen Anordnung, daß die Haupteinheiten und die Untereinheiten nicht direkt mit der Kreuzschiene verbunden sein müssen, sondern auch über eine Busschnittstelle, eine Busbrücke oder dergleichen mit der Kreuzschiene verbunden sein können.As in the case of the conventional arrangement initially described, in the case of the arrangement described below, the main units and subunits need not be directly connected to the crossbar but are also connected to the crossbar via a bus interface, bus bridge or the like could be.
Die
im folgenden Text beschriebene Anordnung weist im Vergleich zu der
anfänglich
unter Bezugnahme auf
Die
in
Die Kreuzschiene XB enthält Entscheidungseinheiten A1 und A2, Multiplexer MUX1, MUX2 und MUX3 sowie Pipeline-Stufen PS1 bis PS7, wobei die Pipelinestufen PS1 bis PS7 in dem betrachteten Beispiel durch Register gebildet werden, genauer gesagt durch Flipflops, obwohl sie auch auf beliebige andere gewünschte Weise implementiert werden könnten. Die Anordnung und die Funktionsweise der Komponenten der Kreuzschiene XB werden später ausführlicher beschrieben.The Crossbar XB contains Decision units A1 and A2, multiplexers MUX1, MUX2 and MUX3 as well as pipeline stages PS1 to PS7, wherein the pipeline stages PS1 to PS7 in the considered Example be formed by registers, more precisely by flip-flops, although it also implements in any other desired way could become. The arrangement and operation of the components of the crossbar XB will be more detailed later described.
Die Haupteinheit M1 und die Untereinheiten S1 und S2 sind über die Kreuzschiene XB miteinander verbunden. Genauer gesagt geschieht dies so, daß:
- – die Haupteinheit M1 – über einen ersten Adressbus ADDR1 mit einem Eingangsanschluß der Entscheidungseinheit A1 und mit einem Eingangsanschluß der Entscheidungseinheit A2 verbunden ist, – über einen ersten Schreibdatenbus WRITE1 mit einem Eingangsanschluß des Multiplexers MUX2 und mit einem Eingangsanschluß des Multiplexers MUX3 verbunden ist und – über einen ersten Lesedatenbus READ1 mit dem Ausgangsanschluß des Multiplexers MUX1 verbunden ist,
- – die Untereinheit S1 – über einen zweiten Adressbus ADDR2 mit dem Ausgangsanschluß der Entscheidungseinheit A1 verbunden ist, – über einen zweiten Schreibdatenbus WRITE2 mit einem Ausgangsanschluß des Multiplexers MUX2 verbunden ist und – über einen zweiten Lesedatenbus READ2 mit einem Eingangsanschluß des Multiplexers MUX1 verbunden ist, und
- – die Untereinheit S2 – über einen dritten Adressbus ADDR3 mit dem Ausgangsanschluß der Entscheidungseinheit A2 verbunden ist, – über einen dritten Schreibdatenbus WRITE3 mit einem Ausgangsanschluß des Multiplexers MUX3 verbunden ist und – über einen dritten Lesedatenbus READ3 mit einem Eingangsanschluß des Multiplexers MUX1 verbunden ist.
- The main unit M1 is connected via a first address bus ADDR1 to an input terminal of the decision unit A1 and to an input terminal of the decision unit A2, via a first write data bus WRITE1 to an input terminal of the multiplexer MUX2 and to an input terminal of the multiplexer MUX3, and via a first read data bus READ1 is connected to the output terminal of the multiplexer MUX1,
- The subunit S1 is connected to the output terminal of the decision unit A1 via a second address bus ADDR2, connected to an output terminal of the multiplexer MUX2 via a second write data bus WRITE2, and connected to an input terminal of the multiplexer MUX1 via a second read data bus READ2, and
- The subunit S2 is connected to the output terminal of the decision unit A2 via a third address bus ADDR3, connected to an output terminal of the multiplexer MUX3 via a third write data bus WRITE3, and connected to an input terminal of the multiplexer MUX1 via a third read data bus READ3.
Eine weitere Haupteinheit würde
- – über einen vierten Adressbus mit einem weiteren Eingangsanschluß der Entscheidungseinheit A1 und mit einem weiteren Eingangsanschluß der Entscheidungseinheit A2 verbunden sein,
- – über einen vierten Schreibdatenbus mit einem weiteren Eingangsanschluß des Multiplexers MUX2 und mit einem weiteren Eingangsanschluß des Multiplexers MUX3 verbunden sein und
- – über einen vierten Lesedatenbus mit dem Ausgangsanschluß eines weiteren Multiplexers verbunden sein, dessen Eingangsanschlüsse mit den Lesedatenbussen READ1 und READ2 verbunden sind.
- Be connected via a fourth address bus to a further input terminal of the decision unit A1 and to a further input terminal of the decision unit A2,
- - Be connected via a fourth Schreibdatenbus with another input terminal of the multiplexer MUX2 and with another input terminal of the multiplexer MUX3 and
- - Be connected via a fourth read data bus to the output terminal of another multiplexer whose input terminals are connected to the read data buses READ1 and READ2.
Allgemein ausgedrückt geschieht dies derart, daß:
- – ein mit der relevanten Haupteinheit assoziierter Multiplexer für jede der mit der Kreuzschiene verbundenen Haupteinheiten vorgesehen ist und
- – eine mit der relevanten Untereinheit assoziierte Entscheidungseinheit und ein mit der relevanten Untereinheit assoziierter Multiplexer für jede der mit der Kreuzschiene verbundenen Untereinheiten vorgesehen sind, wobei
- – der mit jeder Haupteinheit assoziierte Multiplexer – die Eingangsanschlüsse über die Lesedatenbusse mit allen Untereinheiten verbindet, die vorliegen, und – den Ausgangsanschluß über einen Lesedatenbus mit der Haupteinheit verbindet,
- – der mit jeder Untereinheit assoziierte Multiplexer – die Eingangsverbindungen über Schreibdatenbusse mit allen Haupteinheiten verbindet, die vorliegen, und – die Ausgangsverbindung über einen Schreibdatenbus mit der Untereinheit verbindet, und
- – die mit jeder Untereinheit assoziierte Entscheidungseinheit – die Eingangsanschlüsse über Adressbusse mit allen Haupteinheiten verbindet, die vorliegen, und – den Ausgangsanschluß über einen Adressbus mit der Untereinheit verbindet.
- A multiplexer associated with the relevant main unit is provided for each of the main units connected to the crossbar, and
- A decision unit associated with the relevant subunit and a multiplexer associated with the relevant subunit are provided for each of the subunits connected to the crossbar, wherein
- The multiplexer associated with each main unit connects the input terminals via the read data buses to all the subunits that are present, and connects the output terminal to the main unit via a read data bus,
- The multiplexer associated with each subunit connects the input connections via write data buses to all the main units that are present, and connects the output connection to the subunit via a write data bus, and
- The decision unit associated with each subunit connects the input terminals via address busses to all the main units that are present, and connects the output terminal to the subunit via an address bus.
Die Multiplexer, die vorliegen, werden von den Entscheidungseinheiten gesteuert.The Multiplexers that are present are used by the decision makers controlled.
Adressen, die von den Haupteinheiten ausgegeben werden, sowie verschiedene Steuersignale, die später ausführlicher beschrieben werden, werden über die Adressbusse übertragen.addresses which are issued by the main units, as well as various Control signals later in more detail Be described transmit the address buses.
Von den Untereinheiten emittierte Daten sowie verschiedene Steuersignale, die ebenfalls später ausführlicher beschrieben werden, werden über die Lesedatenbusse übertragen.From data emitted by the subunits and various control signals, which also later in more detail Be described transmit the read data buses.
Daten, die von den Haupteinheiten ausgegeben werden, sowie verschiedene Steuersignale, die ebenfalls später ausführlicher beschrieben werden, werden über die Schreibdatenbusse übertragen.Data out of the main units and various control signals, which will also be described in more detail later, are transmitted over the write data buses.
Die Haupteinheiten, die mit der Kreuzschiene XB verbunden sind, können zum Lesen und/oder Schreiben auf die Untereinheiten zugreifen. Ein Lesezugriff auf eine Untereinheit gestattet der Haupteinheit, in dieser Untereinheit gespeicherte Daten zu lesen; ein Schreibzugriff auf eine Untereinheit gestattet der Haupteinheit, Daten, die in der Untereinheit gespeichert oder weiter verarbeitet werden sollen, zu dieser Untereinheit zu übertragen.The Main units, which are connected to the crossbar XB, can for Read and / or write access to the subunits. A read access to a subunit allowed the main unit, in this subunit to read stored data; a write access to a subunit allows the main unit to store data stored in the subunit or to be further processed to transfer to this subunit.
Die
Prozeduren, die während
eines Lesezugriffs stattfinden, und die Prozeduren, die während eines
Schreibzugriffs stattfinden, werden in dem folgenden Text unter
Bezugnahme auf
Im Fall des Lesezugriffs, der zu allererst beschrieben wird, wird davon ausgegangen, daß die Haupteinheit M1 Daten aus der Untereinheit S1 auslesen möchte.in the Case of read access, which will be described first, gets away from it assumed that the main unit M1 would like to read data from subunit S1.
Der Lesezugriff startet somit damit, daß die Haupteinheit M1 eine Adresse, ein Lesesignal und ein Anforderungssignal über den Adressbus ADDR1 ausgibt, wobei die Haupteinheit M1
- – das Anforderungssignal verwendet, um zu signalisieren, daß sie auf eine der Untereinheiten zugreifen möchte,
- – das Lesesignal verwendet, um zu signalisieren, daß sie Daten aus der relevanten Untereinheit lesen möchte, und
- – die Adresse verwendet, um die Untereinheit oder den Punkt innerhalb der relevanten Untereinheit anzuzeigen, von der Daten gelesen werden sollten.
- The request signal is used to signal that it wants to access one of the subunits,
- The read signal is used to signal that it wants to read data from the relevant subunit, and
- The address used to indicate the subunit or point within the relevant subunit from which data should be read.
Die Adresse, das Lesesignal und das Anforderungssignal werden über den Adressbus ADDR1 sowohl an die Entscheidungseinheit A1 als auch an die Entscheidungseinheit A2 geliefert. Jede der Entscheidungseinheiten A1 und A2 verwendet das Anforderungssignal, um zu identifizieren, daß eine Haupteinheit einen Zugriff anfordert, und prüft dann mit der Adresse, ob der Zugriff zu der Untereinheit hergestellt werden soll, die mit der jeweiligen Entscheidungseinheit assoziiert ist. In diesem Fall findet die Entscheidungseinheit A1, daß der angeforderte Zugriff zu der Untereinheit S1 hergestellt werden soll, die mit dieser Entscheidungseinheit A1 assoziiert ist; die Entscheidungseinheit A2 findet, daß kein Zugriff zu der Untereinheit S2 hergestellt werden soll, die mit dieser Entscheidungseinheit A2 assoziiert ist.The Address, the read signal and the request signal are transmitted via the Address bus ADDR1 both to the decision unit A1 and to the Decision unit A2 delivered. Each of the decision-making units A1 and A2 uses the request signal to identify that a main unit requests access and checks then with the address, whether access to the subunit made which is associated with the respective decision-making unit is. In this case, the decision unit A1 finds that the requested access to the subunit S1 to be produced with this decision unit A1 is associated; the decision unit A2 finds that no access to the subunit S2 to be produced with this decision unit A2 is associated.
Nachdem die Entscheidungseinheit A1 herausgefunden hat, daß eine Haupteinheit auf die Untereinheit S1 zugreifen möchte, gibt sie zuerst über den Adressbus ein Gewährungssignal an jene Haupteinheit aus, die Zugriff zu dieser Untereinheit S1 angefordert hat; die Haupteinheit, die Zugriff angefordert hat, kann auf der Basis des Adressbusses bestimmt werden, über den das einen Zugriff anfordernde Anforderungssignal übertragen wurde. In dem betrachteten Beispiel überträgt somit die Entscheidungseinheit A1 ein Gewährungssignal über den Adressbus ADDR1 an die Haupteinheit M1.After this the decision unit A1 has found that a main unit to access the subunit S1, she gives first over the Address bus a grant signal to that main unit which has access to this subunit S1 has requested; the main unit that requested access can be determined based on the address bus over which transmit the request request signal access has been. In the example considered, the decision unit thus transmits A1 a grant signal over the Address bus ADDR1 to the main unit M1.
Die Haupteinheit M1 identifiziert mit dem ihm gelieferten Gewährungssignal, daß seine Zugriffsanforderung akzeptiert worden ist, und wartet nun auf die Übertragung der von der Untereinheit S1 angeforderten Daten. Die Haupteinheit weist keinerlei Informationen dahingehend auf, wann diese Daten geliefert werden, und auch der Haupteinheit wird mit Hilfe von Wartezustandszyklen oder dergleichen nicht signalisiert, daß die von der Untereinheit S1 angeforderten Daten noch nicht zur Verfügung stehen. Statt dessen wartet die Haupteinheit, bis ihr ein Bereitschaftssignal geliefert wird, das später ausführlicher beschrieben wird.The Main unit M1 identifies with the grant signal supplied to it, that his Access request has been accepted, and now waiting for the transfer the data requested by subunit S1. The main unit has no information as to when this data is are delivered, and also the main unit is using wait state cycles or the like does not signal that from the subunit S1 requested data is not yet available. Instead, wait the main unit until it receives a ready signal, that later in more detail is described.
Nach dem Abgeben des Gewährungssignals an die Haupteinheit M1 oder sogar zum gleichen Zeitpunkt wie dies prüft die Entscheidungseinheit A1, ob zu diesem Zeitpunkt auf die Untereinheit S1 zugegriffen werden kann. Dies ist die Situation, wenn auf die Untereinheit zu diesem Zeitpunkt nicht bereits zugegriffen wird und wenn keine im voraus zu verarbeitenden Zugriffsanforderungen vorliegen. Zugriffsanforderungen, die im voraus verarbeitet werden müssen, können beispielsweise Zugriffsanforderungen sein, die früher bei der Entscheidungseinheit A1 ankamen oder die eine höhere zugewiesene Priorität als die vorliegende Zugriffsanforderung aufweisen.To issuing the grant signal the main unit M1 or even at the same time as this checks the decision unit A1, whether the sub-unit S1 is being accessed at this time can. This is the situation when referring to the subunit to this Time is not already accessed and if not in advance to be processed access requests. Access requests, For example, access requests may need to be processed in advance be that earlier at the decision unit A1 arrived or the one higher assigned priority as the present access request.
Wenn die Entscheidungseinheit A1 herausfindet, daß der Zugriff, der von der Haupteinheit M1 gegenüber der Untereinheit S1 angefordert wurde, ausgeführt werden kann, überträgt sie das Lesesignal und jenen Teil der Adresse, der erforderlich ist, um die Untereinheit S1 über den Adressbus ADDR2 zu adressieren, an die Untereinheit S1.If the decision unit A1 finds out that the access granted by the Main unit M1 opposite subunit S1 has been requested, it transmits that Read signal and that part of the address required to the subunit S1 via to address the address bus ADDR2, to the sub-unit S1.
Im wesentlichen aktiviert die Entscheidungseinheit A1 zu dem gleichen Zeitpunkt den Multiplexer MUX1 derart, daß er, über den Lesedatenbus READ1, die ihm von der Untereinheit S1 über den Lesedatenbus READ2 gelieferten Daten an die Haupteinheit M1 weiterleitet. Außerdem kann vorgesehen werden, daß die Entscheidungseinheit A1 den Multiplexer MUX2 derart aktiviert, daß letzterer, über den Schreibdatenbus WRITE2, die ihm von der Haupteinheit M1 über den Schreibdatenbus WRITE1 gelieferten Daten an die Untereinheit S1 weitergibt.in the Essentially, the decision unit A1 activates the same Time the multiplexer MUX1 such that it, via the read data bus READ1, him from subunit S1 over data supplied to the read data bus READ2 to the main unit M1 forwards. Furthermore can be provided that the Decision unit A1 the multiplexer MUX2 so activated that the latter, via the Schreibdatenbus WRITE2 received from the main unit M1 via WRITE1 write data bus supplied data to subunit S1.
Die Untereinheit S1 identifiziert anhand der ihr über den Adressbus ADDR2 gelieferten Daten, daß sie die an der ihr gelieferten Adresse gespeicherten Daten lesen und ausgeben sollte. Sie liest dann die zu lesenden Daten und gibt diese Daten zusammen mit einem Bereitschaftssignal über den Lesedatenbus READ2 aus. Die über den Lesedatenbus READ1 übertragenen Daten werden über den Multiplexer MUX1 und den Lesedatenbus READ1 an die Haupteinheit M1 weitergeleitet.The subunit S1 identifies, based on the data supplied to it via the address bus ADDR2, that they should read and output the data stored at the address supplied to them. It then reads the data to be read and outputs this data together with a ready signal via the read data bus READ2. The data transmitted via the read data bus READ1 are forwarded to the main unit M1 via the multiplexer MUX1 and the read data bus READ1.
Wie bereits oben erläutert wurde, wartet die Haupteinheit M1 auf den Empfang des Bereitschaftssignals. Das Bereitschaftssignal signalisiert der Haupteinheit M1, daß die bereits durch die Haupteinheit M1 von der Untereinheit S1 angeforderten Daten zur Verfügung stehen und nun gelesen werden können. Die Haupteinheit M1 liest die ihr über den Lesedatenbus READ1 gelieferten Daten, wodurch der Lesezugriffsprozeß beendet wird.As already explained above has been waiting, the main unit M1 waits for the reception of the ready signal. The ready signal indicates to the main unit M1 that the already requested by the main unit M1 from the sub-unit S1 Data available stand and can now be read. The main unit M1 reads them via the read data bus READ1 supplied data, whereby the read access process is terminated.
Bei dem betrachteten Beispiel mußte die Haupteinheit M1 auf den Empfang des Bereitschaftssignals warten, das heißt, sie führte in der Zwischenzeit keinen weiteren Zugriff auf eine der Untereinheiten aus. Die Haupteinheit kann jedoch sogar vor Empfang des Bereitschaftssignals weitere Zugriffe auf die Untereinheiten ausführen. Insbesondere ist es ohne jegliche Probleme möglich, daß die Haupteinheit M1 weitere Zugriffe auf die Untereinheit anfordert, auf die sie gegenwärtig zugreift, selbst vor dem Empfang des Bereitschaftssignals. Dies bedeutet, daß die Haupteinheit M1 sogar vor Abschluß eines Zugriffs auf die Untereinheit S1 einen oder mehrere weitere Zugriffe auf diese Untereinheit S1 durchführen kann.at the example considered had to the main unit M1 wait for the ready signal to be received, this means, she led In the meantime, no further access to one of the subunits out. However, the main unit may even before receiving the ready signal perform further accesses to the subunits. In particular, it is without any problems possible, that the Main unit M1 requests further accesses to the subunit, to which they are present even before receiving the ready signal. This means that the Main unit M1 even before completion of access to the subunit S1 one or more further accesses to this subunit S1 carry out can.
Da bewirkt wird, daß die Haupteinheit M1 ein Bereitschaftssignal empfängt, das von der Untereinheit produziert und durch die Kreuzschiene XB an die Haupteinheit weitergeleitet wird, um die von der Untereinheit ausgegebenen Daten zu lesen, ist es nicht notwendig, daß
- – die Haupteinheit über diese Informationen informiert wird, die gesetzt worden sind und die Zeit definieren, zu der die von der Untereinheit S1 ausgegebenen Daten gelesen werden sollten, oder
- – ein Wartezustandsgenerator in der Kreuzschiene oder sonst irgendwo vorgesehen wird, der der Haupteinheit durch Produzieren von Wartezustandszyklen signalisiert, daß die von der Untereinheit S1 angeforderten Daten noch nicht für das Lesen zur Verfügung stehen.
- The main unit is informed of this information that has been set and defines the time at which the data output from sub-unit S1 should be read, or
- A wait state generator is provided in the crossbar or elsewhere, signaling the main unit by producing wait state cycles that the data requested by subunit S1 is not yet available for reading.
Dies
wiederum ermöglicht
das Einfügen
einer beliebigen gewünschten
Anzahl von Pipeline-Stufen an beliebigen gewünschten Punkten, vollständig unabhängig voneinander,
in die Busse, über die
die an die Kreuzschiene angeschlossenen Einheiten mit der Kreuzschiene
verbunden sind, ohne daß irgend
etwas davon bei dem Design und der Konfiguration der Haupteinheit
M1 und der Kreuzschiene XB berücksichtigt
werden müßte.
Die
Pipeline-Stufen führen
dazu, daß die
Daten und Signale, die über
die Daten- und Signalwege übertragen
werden, die die Pipeline-Stufen enthalten, um eine oder mehrere
Taktsignalperioden verzögert übertragen
werden. In dem Fall der Anordnung jedoch, die in
Eine entsprechende Situation entsteht natürlich auch, wenn die Haupteinheit M1 Daten von einer anderen der Untereinheiten lesen möchte, die vorliegen, oder wenn eine andere der Haupteinheiten, die vorliegen, Daten von einer Untereinheit lesen möchte.A corresponding situation also arises, of course, when the main unit M1 would like to read data from another of the subunits that or if another of the main units present, Want to read data from a subunit.
Eine ähnliche Situation tritt auf, wenn die Haupteinheit M1 einen Schreibzugriff auf die Untereinheit S1 durchführt, das heißt, wenn die Haupteinheit M1 an die Untereinheit S1 Daten überträgt, die in ihr gespeichert oder in ihr weiterverarbeitet werden sollen.A similar Situation occurs when the main unit M1 has a write access to subunit S1, this means, when the main unit M1 transmits data to the subunit S1, the stored in it or to be further processed in it.
Der Schreibzugriff startet damit, daß die Haupteinheit M1 über den Adressbus ADDR1 eine Adresse, ein Schreibsignal und ein Anforderungssignal ausgibt, wobei die Haupteinheit M1
- – mit Hilfe des Anforderungssignals signalisiert, daß sie auf eine der Untereinheiten zugreifen möchte,
- – mit Hilfe des Schreibsignals signalisiert, daß sie Daten in die relevante Untereinheit schreiben möchte und
- – über die Adresse die Untereinheit oder den Punkt innerhalb der relevanten Untereinheit anzeigt, wohin die Daten geschrieben werden sollten.
- Signaled by the request signal that it wishes to access one of the subunits,
- - signaled with the help of the write signal that they want to write data in the relevant subunit and
- The address indicates the subunit or the point within the relevant subunit where the data should be written.
Die Adresse, das Schreibsignal und das Anforderungssignal werden über den Adressbus ADDR1 sowohl an die Entscheidungseinheit A1 als auch an die Entscheidungseinheit A2 geliefert. Jede der Entscheidungseinheiten A1 und A2 identifiziert anhand des Anforderungssignals, daß eine Haupteinheit einen Zugriff angefordert hat, und prüft dann anhand der Adresse, ob der Zugriff zu der Untereinheit erfolgen soll, die mit der jeweiligen Entscheidungseinheit assoziiert ist. In diesem Fall findet die Entscheidungseinheit A1 heraus, daß der angeforderte Zugriff auf die Untereinheit S1 erfolgen soll, die mit der Entscheidungseinheit A1 assoziiert ist; die Entscheidungseinheit A2 findet heraus, daß kein Zugriff auf die Untereinheit S2 erfolgen soll, die mit dieser Entscheidungseinheit A2 assoziiert ist.The address, the write signal and the request signal are supplied to the decision unit A1 as well as the decision unit A2 via the address bus ADDR1. Each of the decision units A1 and A2 identifies on the basis of the request signal that a main unit has requested access, and then checks based on the address, whether to access the subunit associated with the respective decision unit. In this case, the decision unit A1 finds out that the requested access is to be made to the sub-unit S1 associated with the decision unit A1; the decision unit A2 finds out that there should be no access to the subunit S2 associated with this decision unit A2.
Nachdem die Entscheidungseinheit A1 herausgefunden hat, daß eine Haupteinheit auf die Untereinheit S1 zugreifen möchte, gibt sie zuerst über den Adressbus ein Gewährungssignal an jene Haupteinheit aus, die den Zugriff auf die Untereinheit S1 angefordert hat; die Haupteinheit, die den Zugriff angefordert hat, kann auf der Basis des Adressbusses bestimmt werden, über den das einen Zugriff anfordernde Anforderungssignal übertragen wurde. Somit überträgt bei dem betrachteten Beispiel die Entscheidungseinheit A1 ein Gewährungssignal über den Adressbus ADDR1 an die Haupteinheit M1.After this the decision unit A1 has found that a main unit to access the subunit S1, she gives first over the Address bus a grant signal to that main unit which has access to subunit S1 has requested; the main unit that requested access can be determined based on the address bus over which transmit the request request signal access has been. Thus transmits in the For example, the decision unit A1 considered a grant signal over the Address bus ADDR1 to the main unit M1.
Die Haupteinheit M1 identifiziert anhand des ihr gelieferten Gewährungssignals, daß ihre Zugriffsanforderung empfangen worden ist, und wartet nun, bis sie an die Untereinheit S1 die Daten ausgeben kann, die sie in dieser Untereinheit S1 speichern möchte. Die Haupteinheit besitzt keinerlei Informationen über die Zeit, zu der dies erfolgen kann, und der Haupteinheit wird auch nicht mit Hilfe von Wartezustandszyklen oder dergleichen signalisiert, daß die relevante Zeit noch nicht erreicht worden ist. Statt dessen wartet die Haupteinheit, bis ihr ein Bereitschaftssignal geliefert wird, was später ausführlicher beschrieben wird.The Main unit M1 identifies, on the basis of the grant signal that theirs Access request has been received, and now wait for it to the subunit S1 can output the data that they have in this Subunit S1 would like to save. The main unit has no information about the Time at which this can happen, and the main unit will too not signaled by means of wait state cycles or the like, that the relevant Time has not yet been reached. Instead, the main unit waits, until a ready signal is delivered to her, which will be described in more detail later becomes.
Nach dem Ausgeben des Gewährungssignals an die Haupteinheit M1 oder sogar zur gleichen Zeit wie dies prüft die Entscheidungseinheit A1, ob gegenwärtig Zugriff auf die Untereinheit S1 möglich ist. Dies ist der Fall, wenn gegenwärtig kein Zugriff auf die Untereinheit erfolgt und wenn keine Zugriffsanforderungen vorliegen, die im voraus verarbeitet werden müssen. Zugriffsanforderungen, die im voraus verarbeitet werden müssen, können beispielsweise Zugriffsanforderungen sein, die früher bei der Entscheidungseinheit A1 ankamen oder die eine höhere assoziierte Priorität als die aktuelle Zugriffsanforderung aufweisen.To issuing the grant signal to the main unit M1 or even at the same time as the decision unit checks A1, if present Access to subunit S1 is possible. This is the case if present no access to the subunit occurs and if no access requests present, which must be processed in advance. Access requests, For example, access requests may need to be processed in advance be with you earlier the decision unit A1 arrived or the higher associated priority as the current access request.
Wenn die Entscheidungseinheit A1 herausfindet, daß der von der Haupteinheit M1 angeforderte Zugriff auf die Untereinheit S1 durchgeführt werden kann, überträgt sie das Schreibsignal und den Teil der Adresse, der für das Adressieren der Untereinheit S1 erforderlich ist, über den Adressbus ADDR2 an die Untereinheit S1.If the decision unit A1 finds out that the one from the main unit M1 requested access to the subunit S1 can be performed, it transmits that Write signal and the part of the address used to address subunit S1 is required over the address bus ADDR2 to the sub-unit S1.
Im wesentlichen aktiviert gleichzeitig:
- – die Entscheidungseinheit A1 den Multiplexer MUX1 derart, daß er die ihm von der Untereinheit S1 über den Lesedatenbus READ2 gelieferten Daten über den Lesedatenbus READ1 an die Haupteinheit M1 weitergibt und
- – die Entscheidungseinheit A1 den Multiplexer MUX2 derart, daß er die ihm von der Haupteinheit M1 über den Schreibdatenbus WRITE1 gelieferten Daten über den Schreibdatenbus WRITE2 an die Untereinheit S1 weitergibt.
- The decision unit A1 sends the multiplexer MUX1 in such a way that it forwards the data supplied to it from the subunit S1 via the read data bus READ2 to the main unit M1 via the read data bus READ1, and
- - The decision unit A1, the multiplexer MUX2 such that it forwards the data supplied to it from the main unit M1 via the Schreibdatenbus WRITE1 data on the Schreibdatenbus WRITE2 to the sub-unit S1.
Die Untereinheit S1 identifiziert anhand der ihr über den Adressbus ADDR2 gelieferten Daten, daß Daten an der ihr gelieferten Adresse gespeichert werden sollten. Sie gibt dann ein Bereitschaftssignal auf dem Lesedatenbus READ2 aus. Dieses Signal wird über den Multiplexer MUX1 und den Lesedatenbus READ2 an die Haupteinheit M1 weitergeleitet.The Subunit S1 identifies by means of its supplied via the address bus ADDR2 Data that data should be stored at the address delivered to it. She gives then a ready signal on the read data bus READ2. This Signal is over the multiplexer MUX1 and the read data bus READ2 to the main unit M1 forwarded.
Wie bereits oben erläutert wurde, wartet die Haupteinheit M1 auf den Empfang des Bereitschaftssignals. Das Bereitschaftssignal signalisiert der Haupteinheit M1, daß die Haupteinheit M1 nun die zu schreibenden Daten an die Untereinheit S1 ausgeben kann. Die Haupteinheit M1 gibt dann die zu schreibenden Daten zusammen mit einem Datengültigkeitssignal über den Schreibdatenbus WRITE1 an die Untereinheit S1 aus. Diese Daten werden über den Multiplexer MUX2 und den Schreibdatenbus WRITE2 an die Untereinheit S1 weitergeleitet. Die Untereinheit S1 identifiziert anhand des Datengültigkeitssignals, daß die in sie zu schreibenden Daten zur Verfügung stehen. Sie liest diese Daten und speichert sie oder verarbeitet sie weiter. Dies schließt den Schreibzugriff durch die Haupteinheit M1 auf die Untereinheit S1 ab.As already explained above has been waiting, the main unit M1 waits for the reception of the ready signal. The ready signal signals the main unit M1 that the main unit M1 now output the data to be written to the sub-unit S1 can. The main unit M1 then inputs the data to be written with a data valid signal over the Write data bus WRITE1 to the sub-unit S1 off. This data is about the Multiplexer MUX2 and write data bus WRITE2 to the subunit S1 forwarded. Subunit S1 identifies by means of Data valid signal, that the data to be written to them is available. She reads this Data and stores or processes them. This completes the write access from the main unit M1 to the subunit S1.
Bei dem betrachteten Beispiel mußte die Haupteinheit M1 auf den Empfang des Bereitschaftssignals warten, das heißt, sie machte in der Zwischenzeit keinen weiteren Zugriff auf eine der Untereinheiten. Jedoch sogar vor dem Empfang des Bereitschaftssignals kann die Haupteinheit weitere Zugriffe auf die Untereinheiten durchführen. Insbesondere ist es ohne irgendwelche Probleme möglich, daß die Haupteinheit M1 weitere Zugriffe auf die Untereinheit anfordert, auf die sie gegenwärtig zugreift, selbst bevor sie das Bereitschaftssignal empfängt. Dies bedeutet, daß die Haupteinheit M1 sogar vor Beendigung des Zugriffs auf die Untereinheit S1 einen oder mehrere weitere Zugriffe auf die Untereinheit S1 anfordern kann.at the example considered had to the main unit M1 wait for the ready signal to be received, this means, she did not get further access to one in the meantime subunits. However, even before receiving the standby signal the main unit can make further accesses to the subunits. Especially it is possible without any problems that the main unit M1 more Requests for access to the subunit it currently accesses, itself before receiving the ready signal. This means that the main unit M1 even before the termination of access to subunit S1 or request several more accesses to subunit S1 can.
Da bewirkt wird, daß die Haupteinheit M1 ein Bereitschaftssignal empfängt, das von der Untereinheit produziert und durch die Kreuzschiene XB an die Haupteinheit weitergeleitet wird, um die in die Untereinheit S1 zu schreibenden Daten auszugeben, besteht keine Notwendigkeit, daß
- – die Haupteinheit über diese Informationen informiert wird, die gesetzt worden sind und die Zeit definieren, zu der die von der Untereinheit S1 ausgegebenen Daten gelesen werden sollten, oder
- – ein Wartezustandsgenerator in der Kreuzschiene oder sonst irgendwo vorgesehen wird, der der Haupteinheit durch Produzieren von Wartezustandszyklen signalisiert, daß die in die Untereinheit S1 zu schreibenden Daten noch nicht emittiert werden sollen.
- - infor the main unit about this information which have been set and which define the time at which the data output from the sub-unit S1 should be read, or
- A wait state generator is provided in the crossbar or elsewhere, signaling the main unit by producing wait state cycles that the data to be written to the subunit S1 should not yet be emitted.
Dies
wiederum ermöglicht
das Einfügen
einer beliebigen gewünschten
Anzahl von Pipeline-Stufen an beliebigen gewünschten Punkten, vollständig unabhängig voneinander,
in die Busse, über die
die an die Kreuzschiene angeschlossenen Einheiten mit der Kreuzschiene
verbunden sind, ohne daß irgend
etwas davon bei dem Design und der Konfiguration der Haupteinheit
M1 und der Kreuzschiene XB berücksichtigt
werden müßte.
Die
Pipeline-Stufen führen
dazu, daß die
Daten und Signale, die über
die Daten- und Signalwege übertragen
werden, die die Pipeline-Stufen enthalten, um eine oder mehrere
Taktsignalperioden verzögert übertragen
werden. In dem Fall der Anordnung jedoch, die in
Eine entsprechende Situation entsteht natürlich auch, wenn die Haupteinheit M1 Daten in eine andere der Untereinheiten schreiben möchte, die vorliegen, oder wenn eine andere der Haupteinheiten, die vorliegen, Daten in eine Untereinheit schreiben möchte.A corresponding situation also arises, of course, when the main unit Want to write M1 data to another of the subunits that are present or if another of the main units that are present data in want to write a subunit.
Die beschriebene Anordnung kann auf einfache Weise implementiert und betätigt werden und gestattet, daß die Einrichtungen, die miteinander über die Kreuzschiene verbunden sind, effizient kooperieren und daß sie auf flexible Weise kombiniert werden können.The described arrangement can be implemented in a simple manner and actuated be allowed and that the Facilities that communicate with each other over the Crossbar are connected, efficiently cooperate and that they are on flexible way can be combined.
Claims (25)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02013702A EP1376373B1 (en) | 2002-06-20 | 2002-06-20 | Arrangement having a first device and a second device connected via a cross bar switch |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60211874D1 DE60211874D1 (en) | 2006-07-06 |
DE60211874T2 true DE60211874T2 (en) | 2007-05-24 |
Family
ID=29716808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60211874T Expired - Lifetime DE60211874T2 (en) | 2002-06-20 | 2002-06-20 | Arrangement of two devices connected by a crossover switch |
Country Status (3)
Country | Link |
---|---|
US (1) | US7130946B2 (en) |
EP (1) | EP1376373B1 (en) |
DE (1) | DE60211874T2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004013635B4 (en) * | 2004-03-19 | 2006-04-20 | Infineon Technologies Ag | Method for allocating bus access rights in multimaster bus systems, and multimaster bus system for carrying out the method |
JP2006099731A (en) * | 2004-08-30 | 2006-04-13 | Matsushita Electric Ind Co Ltd | Resource management apparatus |
US7246188B2 (en) * | 2005-02-10 | 2007-07-17 | Qualcomm Incorporated | Flow control method to improve bus utilization in a system-on-a-chip integrated circuit |
WO2007029053A1 (en) * | 2005-09-09 | 2007-03-15 | Freescale Semiconductor, Inc. | Interconnect and a method for designing an interconnect |
GB2447690B (en) * | 2007-03-22 | 2011-06-08 | Advanced Risc Mach Ltd | A Data processing apparatus and method for performing multi-cycle arbitration |
GB2450148A (en) * | 2007-06-14 | 2008-12-17 | Advanced Risc Mach Ltd | Controlling write transactions between initiators and recipients via interconnect logic |
US9190012B2 (en) * | 2009-12-23 | 2015-11-17 | Ati Technologies Ulc | Method and system for improving display underflow using variable HBLANK |
US9372818B2 (en) * | 2013-03-15 | 2016-06-21 | Atmel Corporation | Proactive quality of service in multi-matrix system bus |
US9471524B2 (en) | 2013-12-09 | 2016-10-18 | Atmel Corporation | System bus transaction queue reallocation |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5081575A (en) * | 1987-11-06 | 1992-01-14 | Oryx Corporation | Highly parallel computer architecture employing crossbar switch with selectable pipeline delay |
JP3144794B2 (en) * | 1990-11-09 | 2001-03-12 | 株式会社日立製作所 | Multiprocessor system |
US5440752A (en) * | 1991-07-08 | 1995-08-08 | Seiko Epson Corporation | Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU |
DE69118693T2 (en) | 1991-09-25 | 1996-11-28 | Bell Telephone Mfg | Differential amplifier arrangement |
JP3660679B2 (en) * | 1994-03-01 | 2005-06-15 | インテル・コーポレーション | Advanced pipeline bus architecture |
US6031842A (en) * | 1996-09-11 | 2000-02-29 | Mcdata Corporation | Low latency shared memory switch architecture |
US5815023A (en) * | 1997-03-20 | 1998-09-29 | Sun Microsystems, Inc. | Unbalanced multiplexer and arbiter combination |
US5949982A (en) * | 1997-06-09 | 1999-09-07 | International Business Machines Corporation | Data processing system and method for implementing a switch protocol in a communication system |
US6292705B1 (en) * | 1998-09-29 | 2001-09-18 | Conexant Systems, Inc. | Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system |
US6275890B1 (en) * | 1998-08-19 | 2001-08-14 | International Business Machines Corporation | Low latency data path in a cross-bar switch providing dynamically prioritized bus arbitration |
US6173354B1 (en) * | 1998-12-04 | 2001-01-09 | Intel Corporation | Method and apparatus for decoupling internal latencies of a bus bridge from those on an external bus |
US6330656B1 (en) * | 1999-03-31 | 2001-12-11 | International Business Machines Corporation | PCI slot control apparatus with dynamic configuration for partitioned systems |
US6751698B1 (en) * | 1999-09-29 | 2004-06-15 | Silicon Graphics, Inc. | Multiprocessor node controller circuit and method |
US6684268B1 (en) * | 2000-09-27 | 2004-01-27 | Emc Corporation | Data storage system having separate data transfer section and message network having CPU bus selector |
US6892259B2 (en) * | 2001-09-29 | 2005-05-10 | Hewlett-Packard Development Company, L.P. | Method and apparatus for allocating computer bus device resources to a priority requester and retrying requests from non-priority requesters |
US6785779B2 (en) * | 2002-01-09 | 2004-08-31 | International Business Machines Company | Multi-level classification method for transaction address conflicts for ensuring efficient ordering in a two-level snoopy cache architecture |
US6912612B2 (en) * | 2002-02-25 | 2005-06-28 | Intel Corporation | Shared bypass bus structure |
-
2002
- 2002-06-20 EP EP02013702A patent/EP1376373B1/en not_active Expired - Lifetime
- 2002-06-20 DE DE60211874T patent/DE60211874T2/en not_active Expired - Lifetime
-
2003
- 2003-06-20 US US10/600,554 patent/US7130946B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP1376373A1 (en) | 2004-01-02 |
US20040054843A1 (en) | 2004-03-18 |
US7130946B2 (en) | 2006-10-31 |
DE60211874D1 (en) | 2006-07-06 |
EP1376373B1 (en) | 2006-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0951682B1 (en) | IO-AND MEMORY BUS SYSTEM FOR DFPs AND UNITS WITH TWO-OR MULTI- DIMENSIONALLY PROGRAMMABLE CELL STRUCTURES | |
DE69108434T2 (en) | Multi-group signal processor. | |
DE69018100T2 (en) | Data transmission via bus address lines. | |
DE69634358T2 (en) | DELAY REDUCTION IN THE TRANSMISSION OF BUFFERED DATA BETWEEN TWO ASYNCHRONOUS BUSES | |
DE3914265C2 (en) | ||
DE69433130T2 (en) | Computer system with changed local data bus | |
DE69819648T2 (en) | Zweitorpuffer | |
DE60123134T2 (en) | METHOD AND DEVICE FOR A RECONFIGURABLE PROCESSOR | |
DE10131307B4 (en) | Method and bus system for synchronizing a data exchange between a data source and a control device | |
DE69230483T2 (en) | Quadrature bus protocol for executing transactions in a computer arrangement | |
DE60211874T2 (en) | Arrangement of two devices connected by a crossover switch | |
DE19950255B4 (en) | microprocessor | |
DE102009001898A1 (en) | Circuit arrangements and methods for controlling a data exchange in a circuit arrangement | |
DE102006009034B3 (en) | Bus system method for operating a bus system has transmission channels for linking masters and slaves to each other and linking each master to an arbiter | |
DE68918966T2 (en) | System for controlling data transmission. | |
DE69719123T2 (en) | System for data processing and communication with PCI high throughput bus | |
DE69320732T2 (en) | Device addressing and data signal transmission methods on a bus | |
DE19819569B4 (en) | Electronic circuit for the conversion of data | |
DE69128319T2 (en) | Workplace with burst operation data transmission | |
DE69125071T2 (en) | Workplace with selectable CPU | |
EP1308846B1 (en) | Data Transfer Device | |
DE69125676T2 (en) | Workstation with direct memory access control | |
DE68924369T2 (en) | Microprocessor system. | |
DE69800095T2 (en) | Fast semaphore register with a safe working method without a specific bus protocol | |
DE60316866T2 (en) | Method and bridge element module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |