Realisierung eines mikroprogrammierbaren Rechners (MPR) unter Verwendung der Hardwarebeschreibungssprache VHDL und programmierbarer Logik

Realisierung eines mikroprogrammierbaren Rechners (MPR) unter Verwendung der Hardwarebeschreibungssprache VHDL und programmierbarer Logik.

 

 

Im Rahmen von Mikroprozessorpraktikum und Systementenwicklungsprojekten entsteht hier ein mikroprogrammierbares Rechnersystem. Primäres Ziel der Praktikumsaufgabe ist es, die bereits vorhandene mikroprogrammierbare Maschine "TGI MPR80", basierend auf den AMD Bauteilen der Serie 2900, in Field Programmable Gate Arrays (FPGAs) zu realisieren.
Dieser Rechner soll mittels VHDL beschrieben, synthetisiert und in eine entsprechende Zieltechnologie implementiert werden.

 

 

 

 

 

 

Abbildung 1:      Vereinfachtes Blockschaltbild des mikroprogrammierbaren Rechners "TGI_MPR80"

 

 

Funktionseinheiten des Rechners

Der Rechner besteht aus der Berechnungseinheit, dem Steuerwerk mit Mikroprogrammspeicher und Piplineregister, dem Programmspeicher mit Befehlszähler und der PC-Schnittstelle.
Die Recheneinheit ist auf 16bit ausgelegt und mit einer Carry_Look_Ahead-Einheit ausgestattet. Eine Wortrandlogik gestattet dabei das Verschieben und Rotieren der Daten. Ebenfalls wird in derselben die Abhandlung und Speicherung der Bedingungsbits vorgenommen.
Das Steuerwerk beinhaltet einen Sequenzer für die Adressierung des Mikroprogrammspeichers und einen Kellerspeicher für die Rückkehradressen von Unterprogrammen. Im Mikroprogrammspeicher befinden sich die Mikroinstruktionen zur Steuerung aller Schaltwerke. Eine 1-stufige Pipline erlaubt eine Überlappung der Befehlsholphase mit der Ausführungsphase. Ebenfalls ist eine Interruptsteuerung für die Unterbrechung der Mikroroutinen vorgesehen.
Im Programm-und Datenspeicher befinden sich die Maschinenbefehle und der Speicherbereich für die Ergebnisse. Ein Befehlszähler dient zur Steuerung dieser Einheit.
Alle Einheiten können über eine PC-Schnittstelle kontrolliert werden. Hierüber erfolgt auch das Laden des Mikro-und Maschinenprogrammspeichers das Abholen der Ergebnisse für die Darstellung auf dem PC. Mit der bereits für MPR_TGI80 vorhandenen benutzerfreundlichen Oberfläche kann die Funktion eines mikroprogrammierbaren Rechners in allen Einzelheiten auch im Einzeltakt verfolgt werden.

Realisierung

In zwei Praktikas wurden die Berechnungseinheit und das Steuerwerk in VHDL beschrieben. Mit einer ebenfalls in VHDL beschriebenen Testumgebung wurden die beiden Einheiten auf ihre Funktionsfähigkeit  verifiziert.
Für die Realisierung werden modernste Entwurfs-,Implementierungs- und Testwerkzeuge benutzt. Es wird zum Beispiel für den Realtest die Hardware-Objekt-Technologie (H.O.T) eingesetzt. Unter Verwendung von C++ erfolgt die Manipulation der Hardwarekomponenten als Objekte.