Information Technology Reference
In-Depth Information
deten Prinzipien entsprechen dabei denen, die in Abschnitt 3.1.5 zu VLIW-Prozes-
soren beschrieben wurden.
Verkettung (chaining)
Ein besonderes Merkmal der hier beschriebenen Prozessoren ist, dass sich Verar-
beitungseinheiten durch Ausführung von Transportoperationen auf unterschiedliche
Art und Weise direkt miteinander verbinden lassen. Bei der befehlsgesteuerten, sog.
weichen Verkettung ( soft-chaining ) wird, durch Transportoperationen initiiert, eine
Verbindung über einen der expliziten Busse hergestellt und am Ende der Ausfüh-
rung eines Befehls wieder aufgelöst. Neben den bisher beschriebenen expliziten
Transporten ist es dabei auch möglich, eine Verbindung als Seiteneffekt einer Trans-
portoperation zu erzeugen, und zwar über zusätzliche, in Bild 3.29 nicht gezeichnete
Verbindungen. Zum Beispiel lässt sich eine am zentralen Bussystem vorbeiführende
Rückkopplung einer arithmetisch-logischen Einheit verwenden, um häufig auftre-
tende akkumulierende Berechnungen durchzuführen. Aktiviert wird eine solche
Verbindung z.B., wenn dies in der Zieladresse des zweiten zu verarbeitenden Ope-
randen codiert ist.
Natürlich können solche Direktverbindungen auch befehlsübergreifend „hart“
( hard-chaining ) etabliert werden, um auf diese Weise mehrstufige Verarbeitungsein-
heiten dynamisch zu verschalten (im Prinzip eine Synthetisierung). Neben den
bereits erwähnten Rückkopplungen sind Direktverbindungen, z.B. zwischen Spei-
cherzugriffs- und anderen Verarbeitungseinheiten oder zwischen Multiplikations-
und Additionseinheiten, sinnvoll. Letztere, um die in vielen Algorithmen auftre-
tende Produktsumme berechnen zu können, ohne einen für andere Transportoperati-
onen nutzbaren Bus zu belegen. Die harte Verkettung einer Konstanteneinheit (in
Bild 3.29 ist sie kombiniert mit dem Registerspeicher dargestellt) mit einer beliebi-
gen anderen Verarbeitungseinheit ist sogar ohne einen zusätzlichen Bus realisierbar,
nämlich, indem die jeweilige Konstante in das Eingangsregister der Zieleinheit
transportiert und als permanent zu halten gekennzeichnet wird.
Harte Verkettungen, die auf realen Verbindungen basieren, lassen sich z.B. über ein
Steuerregister schalten. Bei einer Verkettung von Konstanten muss dabei berück-
sichtigt werden, dass neben dem Zugriff auf das Steuerregister zusätzlich der eigent-
liche Wert in das Operandenregister der Zieleinheit zu übertragen ist, dementspre-
chend also insgesamt zwei Transportoperationen auszuführen sind. Da man mit
einem Zugriff auf das Steuerregister mehrere Verbindungen gleichzeitig schalten
kann, ist der zu erwartende Zusatzaufwand innerhalb eines Programms jedoch
gering. Das Lösen von Verbindungen ist ebenfalls durch einen Zugriff auf das
genannte Steuerregister möglich. Zusätzlich kann eine Verbindung jedoch auch imp-
lizit gelöst werden, z.B. indem durch eine Transportoperation schreibend auf ein
hart verkettetes Operandenregister zugegriffen wird. Im Folgenden soll an einem
Beispiel beschrieben werden, wie sich die weiche und harte Verkettung bei der Pro-
grammierung nutzen lassen.
Beispiel 3.5. Skalarprodukt mit Verkettung . Das in Bild 3.30b aufgelistete Assemblerprogramm
verdeutlicht die Programmierung eines Prozessors mit kontrollflussgesteuertem Datenfluss, nicht
Search WWH ::




Custom Search