Search International and National Patent Collections
Some content of this application is unavailable at the moment.
If this situation persists, please contact us atFeedback&Contact
1. (WO1989000732) COMPUTER WITH TWO SEPARATE BUS SYSTEMS
Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

Datenverarbeitungsanlage mit zwei getrennten Bussystemen

Die Erfindung bezieht sich auf eine Datenverarbeitungsanlage, bei der ein Befehlsspeicher und ein Datenspeicher über einen externen Adreßbus und über einen externen Datenbus mit einem Mikroprozessor verbunden sind, wobei der Mikroprozessor eine Ablaufsteuerung und eine Ausführungseinheit, sowie zwei interne Bussysteme beinhaltet und wobei jedes der beiden internen Bussysteme einen Adreßbus und einen Datenbus aufweist.

Handelsübliche Datenverarbeitungsanlagen sind mit Mikroprozesso- ren ausgestattet, die jeweils über eine relativ schnelle Verarbeitungseinheit verfügen. Bedingt durch das bei diesen Datenverarbeitungsanlagen verwendete Bussystem aus nur einem Adreßbus und nur einem Befehlsbus läßt sich jedoch die potentiell mögliche Verarbeitungsgeschwindigkeit nicht erreichen. Bei diesen Datenverarbeitungsanlagen wird nämlich über den Adreßbus sowohl der Befehlsspeicher als auch der Datenspeicher adressiert, und über den Datenbus des Bussystems werden sowohl die Befehlscodes als auch die Daten übermittelt. Dies stellt eine Leistungsbeschränkung insofern dar, als der Mikroprozessor keine Daten ein-lesen kann, wenn gerade ein Befehlscode über den Datenbus übertragen wird und umgekehrt. Für die Adressierung der Speicher über den Adreßbus gilt entsprechend, daß jeweils nur ein Speiche: adressiert werden kann.

Die genannten Mikroprozessoren verfügen intern bereits über jeweils zwei Daten- und Adreßbusse und über einen integrierten Daten- und Befehls-Pufferspeicher, die jeweils mit einem internen Adreß- und mit einem internen Datenbus verbunden sind. Dadurch kann die Verarbeituπgseinheit zeitlich unabhängig auf Daten und auf Befehle die im jeweiligen Pufferspeicher abgelegt sind, zugreifen. Der Aufbau eines solchen Mikroprozessors ist beispielsweise in der Zeitschrift "Electronic Design" vom 8. Januar 1987, Seite 131, beschrieben. Da aber die beiden internen Adreßbusse sowie die beiden internen Datenbusse jeweils zu einem externen Datenbus bzw. einem externen Adreßbus zusammengeführt werden, bleibt das erwähnte leistungsbeschränkende Moment des Mikropro-zessors bestehen, wenn die Pufferspeicher über das externe Bussystem gefüllt werden müssen.

Aufgabe der Erfindung ist es, eine Datenverarbeitungsanlage der eingangs genannten Art so auszugestalten, daß die potentielle Leistung des Mikroprozessors möglichst weitgehend ausgenutzt werden kann, um die Verarbeitungsgeschwindigkeit der gesamten Anlage zu optimieren.

Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, daß für die Ablaufsteuerung sowie für die Ausführungseinheit jeweils ein internes Bussystem der beiden internen Bussysteme vorgesehen ist, daß durch die Ablaufsteuerung über den Adreßbus des ersten internen Bussystems ein externer Befehlszählerbus gespeist wird, wodurch der Befehlsspeicher direkt adressierbar ist, daß die Be-fehlscodes des Befehlsspeichers über einen externen Befehlscodebus und über den Datenbus des ersten internen Bussystems direkt in die Ablaufsteuerung einlesbar sind, daß durch die Ausführuπgs-einheit über den Adreßbus des zweiten internen Bussystems ein externer Adreßzählerbus gespeist wird, wodurch der Datenspeicher direkt adressierbar ist und daß die Daten des Datenspeichers über einen externen Datenbus und über den Datenbus des zweiten internen Bussystems direkt in die Ausführungseinheit eiπlesbar sind. Durch diese beiden Bussysteme, die bis in die Ausführungseinheit und in die Ablaufsteuerung des Mikroprozessors hinein vollständig getrennt sind, können Daten und Befehle völlig unabhängig voneinander adressiert und eingelesen werden.

Zwei Ausbildungen der Erfindung sind dadurch gekennzeichnet, daß entweder zwischen dem externen Datenbus und dem externen Be-fehlscodebus eine Busschnittstelle vorgesehen ist, die durch die Ablaufsteuerung steuerbar ist, oder daß zwischen dem ersten internen Datenbus und dem zweiten internen Datenbus eine Bus- schnittsteile vorgesehen ist die durch die Ablaufsteuerung steuerbar ist.

Durch eine solche Busschnittstelle, die bidirektional ausge- führt sein kann, ist es möglich, bei Bedarf eine elektrische Verbindung zwischen den internen Datenbussen bzw. zwischen dem externen Befehlscodebus und dem externen Datenbus herzustellen. Eine solche Verbindung kann beispielsweise dann von Vorteil sein, wenn durch die Ausführungseinheit ein Befehl generiert wird, der zur weiteren Verarbeitung wieder in die Ablaufsteuerung eingelesen werden soll.

Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im folgenden näher erläutert. Dabei zeigen:

FIG 1 als bester Weg zur Ausführung der Erfindung das Blockschaltbild einer ersten Datenverarbeitungsanlage und
FIG 2 das Blockschaltbild einer zweiten Datenverarbeitungsanlage mit einem speziellen bidirektionalen Bustreiber.

Die Darstellung gemäß FIG 1 zeigt das Blockschaltbild einer Datenverarbeitungsanlage. Diese besteht aus einem Befehlsspeicher BS, einem Datenspeicher DS und einem Mikroprozessor CPU (stark gestrichelt gezeichnet). Der Befehlsspeicher BS ist über einen Befehlszählerbus BZB und über einen Befehlscodebus BCB mit dem Mikroprozessor CPU verbunden. Der Datenspeicher DS ist über einen Adreßbus AB und über einen Datenbus DB mit dem Mikroprozessor CPU verbunden. Der Mikroprozessor CPU beinhaltet eine Ablaufsteuerung AS (gestrichelt gezeichnet), eine Ausführungs-einheit AE sowie zwei interne Bussysteme ABI, DBl, AB2, DB2, die jeweils aus einem Adreßbus ABI bzw. AB2 und jeweils aus einem Datenbus DBl bzw. DB2 bestehen. Die Ablaufsteuerung AS wiederum beinhaltet einen Mikroprogrammspeicher MP und ein Befehlsrechenwerk BR. Die Ausführungseinheit AE beinhaltet ein Adreßrechen-werk AR. Die Ablaufsteuerung AS ist über den Datenbus DBl mit dem externen Befehlscodebus BCB verbunden, das Befehlsrechenwerk BR innerhalb der Ablaufsteuerung AS ist über den Adreßbus ABI mit den Anschlüssen des externen Befehlszählerbusses BZB verbunden. Der interne Datenbus DB2 verbindet die Ausführungseinheit AE mit dem externen Datenbus DB, der interne Adreßbus AB2 verbindet das Adreßrechenwerk AR innerhalb der Ausführungseinheit AE mit dem externen Adreßbus AB. Der Mikroprogrammspeicher MP innerhalb der Ablaufsteuerung AS steuert über einen Mikroprogrammbus MPB die Ausführungseinheit AE mit dem Adreßrechenwerk AR. Auch das Befehlsrechenwerk BR innerhalb der Ablaufsteuerung AS wird über ein Leistungssystem LT durch den Mikrσprogramm-Speicher MP gesteuert. Zur Realisierung von bedingten Sprüngen ist das Befehlsrechenwerk BR über eine Leitung SB mit der Ausführungseinheit AE verbunden. Zur Kennzeichnung der Datenfluß-richtung sind die verschiedenen Busse mit Pfeilen versehen.

Auf eine Darstellung weiterer Einzelheiten des Mikroprozessors CPU wurde der Übersichtlichkeit halber verzichtet, da dies für das Verständnis der Erfindung nicht erforderlich ist. Der externe Datenbus sowie der externe Befehlszählerbus sind deshalb auch nach beiden Seiten offen gelassen, um anzudeuten, daß an diese Busse noch weitere Elemente, entsprechend den Erfordernissen der Datenverarbeitungsanlage, angeschlossen werden können. So könnten z.B. am Befehlscodebus BCB noch weitere Speichermedien angeschlossen sein, am Datenbus DB könnten beispielsweise Elemente angeschlossen sein, die es der Datenverarbeitungs-anläge ermöglichen, mit peripheren Einheiten zu kommunizieren.

Für die Betrachtung der Arbeitsweise der Datenverarbeitungsanlage wird angenommen, daß im Befehlsspeicher BS ein komplettes Datenverarbeitungsprogramm abgelegt ist. Im Datenspeicher DS seien sämtliche Daten verfügbar, die zur Bearbeitung des Datenverarbeitungsprogramms notwendig sind.

Durch die räumliche Trennung der Bussysteme (der Befehlscodebus BCB der elektrisch mit dem ersten internen Datenbus DBl verbun-den ist, ist räumlich getrennt von externen Datenbus DB der elektrisch mit dem zweiten internen Datenbus DB2 verbunden ist; der Befehlszählerbus BZB der elektrisch mit dem ersten internen Adreßbus ABI verbunden ist, ist räumlich getrennt vom externen

Adreßbus AB der elektrisch mit dem zweiten internen Adreßbus verbunden ist) ist der Mikroprozessor CPU in der Lage, zeitlich unabhängig den Befehlsspeicher BS sowie den Datenspeicher DS zu adressieren. Zur Befehlsausführung wird das Mikroprogramm des Mikroprogrammspeichers MP das Befehlsrechenwerk BR entsprechend steuern, so daß das Befehlsrechenwerk BR über den Adreßbus ABI und über den Befehlszählerbus BZB einen entsprechenden Speicherplatz im Befehlsspeicher BS adressiert, worauf der Befehlscode, den dieser Speicherplatz beinhaltet, über den Befehlscodebus BCB und über den Datenbus DBl direkt in die Ablaufsteuerung AS eingelesen werden kann.

Innerhalb der Ablaufsteuerung AS bewirkt dieser Befehl, daß das Mikroprogramm über den Mikroprogrammbus MPB die Ausführungseinheit AE steuert, so daß die Ausführungseiπheit AE die entspreche den logischen Verknüpfungen und/oder Datentransferoperationen, die dieser Befehl beinhaltet, ausführen kann. Während dieser Zeit, in der die Ausführungseinheit AE mikroprogrammgesteuert arbeitet, ist das Bussystem (Befehlszählerbus BZB, erster interner Adreßbus ABI, Befehlscodebus BCB, erster interner Datenbus DBl), das den Befehlsspeicher BS mit der Ablaufsteuerung AS des Mikroprozessors CPU verbindet, ungenützt und zwar auch dann, wenn der Befehl, der gerade abgearbeitet wird, eine oder mehrere Datentransferoperationen beinhaltet, da diese ja über das Bussystem (externer Adreßbus Ab, zweiter interner Adreßbus AB2, externer Datenbus DB, zweiter interner Datenbus DB2), welches den Datenspeicher DS mit der Ausführungseinheit AE verbindet, abgewickelt werden. Deswegen kann bereits, noch während der aktuelle Befehl abgearbeitet wird, das Befehlsrechenwerk den nächsten Befehl adressieren und diesen für die Ablaufsteuerung über den Befehlscodebus BCB und den Datenbus DBl bereitstellen. Ebenso kann über das Adreßrechenwerk AR innerhalb der Ausführungseinheit AE sofort die jeweils nächste
Adresse errechnet und adressiert werden, da der zweite interne Adreßbus AB2 zusammen mit dem externen Adreßbus AB ausschließlich dafür zur Verfügung steht.

In der Darstellung gemäß FIG 2 ist zusätzlich zu den aus FIG 1 bereits bekannten Elementen ein bidirektionaler Bustreiber BT als Busschnittstelle vorgesehen. Dieser Bustreiber BT verbindet den externen Datenbus DB mit dem externen Befehlscodebus BCB. Leitungen L verbinden den Bustreiber BT mit dem Mikroprogramm-Speicher MP. Falls es für den Programmablauf notwendig ist, den externen Datenbus DB mit dem externen Befehlscodebus BCB zu verbinden, kann dies durch den Bustreiber BT geschehen. Dazu wird das Mikroprogramm über die Leitungen L den Bustreiber BT aktivieren. Eine solche Maßnahme kann beispielsweise dann sinnvoll sein, wenn die Ausführungseinheit AE als Resultat einer Befehlsabarbeitung wieder einen .Befehl generiert hat, der der Ablaufsteuerung AS zugeführt werden soll. Dieser Befehl kann dann über den zweiten internen Datenbus DB2, den externen Daten-bus DB, den aktivierten Bustreiber BT, den externen Befehlscodebus BCB und über den Datenbus DBl an die Ablaufsteuerung AS gelangen.

Ein solcher bidirektionaler Bustreiber könnte auch integrierter Bestandteil des Mikroprozessors CPU sein und den ersten internen Datenbus DBl mit dem zweiten internen Datenbus DB2 verbinden. An der beschriebenen Wirkungsweise würde sich dadurch nichts ändern.

3 Patentansprüche
2 Figuren