Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Web Analytics
Cookie Policy Terms and Conditions Asynchrone Prozessorarchitektur - Wikipedia

Asynchrone Prozessorarchitektur

aus Wikipedia, der freien Enzyklopädie

Asynchrone Prozessorarchitektur beschreibt ein bisher noch wenig verbreitetes Design von Prozessoren, das ohne zentralen Taktgeber auskommt. Anstatt alle Bauelemente mit einem gemeinsamen Taktsignal zu versorgen, ist der Prozessor aus asynchronen Schaltkreisen aufgebaut, die sich selbst takten. Durch diese Eigenschaften im Gegensatz zur synchronen Prozessorarchitektur können insbesondere ein niedrigerer Stromverbrauch und höhere Robustheit erreicht werden.

Inhaltsverzeichnis

[Bearbeiten] Funktionsweise

Einzelne asynchrone Schaltkreise als Logikblöcke bilden zusammen einen asynchronen Prozessor. Jeder dieser Schaltkreise besteht aus einer Logikeinheit als Datenpfad und einer Kontroll-Logik. Der Datenpfad ist für die eigentlichen Berechnungen verantwortlich, während die Kontroll-Logik die Übertragung der Daten zwischen den einzelnen Bauelementen steuert. Diese darf dann erfolgen, wenn die Logikeinheit fertig gerechnet hat und die korrekten Daten am Ausgaberegister stehen. Außerdem muss der nächste Logikblock bereit sein, neue Daten im Eingangsregister aufzunehmen.

[Bearbeiten] Delaymodelle

Solange die Berechnungen einer Logikeinheit noch laufen, sind die Daten am Ausgangsregister nicht konsistent und können damit ungültig sein. Es existieren mehrere Delaymodelle, um die Datenübergabe aus dem Ausgaberegister im richtigen Moment erfolgen zu lassen (Liste unvollständig):

[Bearbeiten] Bounded delay Modell

Beim bounded delay Modell (engl. „begrenzte Verzögerung“) wird für jeden Datenpfad eine Obergrenze für die Zeitverzögerung festgelegt. Diese Verzögerung stellt die maximale Zeit dar, die die betroffene Logikeinheit benötigt, um ihre Berechnungen abzuschließen. Dabei wird immer vom worst case (engl. „schlimmster Fall“) ausgegangen. Das bedeutet man geht von den schlechtesten zulässigen Werten für Faktoren, die die Berechnungszeit beeinflussen, aus. Solche Faktoren können beispielsweise Temperatur, Spannungsversorgung oder Aufbau der zu berechnenden Daten sein.

Für jeden Datenpfad steuert eine Kontroll-Logik mittels der für diesen Datenpfad spezifischen maximalen Verzögerungszeit die Datenübergabe an den nächsten Logikblock. Dies erfolgt über ein Verzögerungselement, das die Übergabe, nach Ablauf der spezifischen Verzögerung, auslöst. Dann kann die nachfolgende Komponente mit den Daten weiterarbeiten.

Dieses Modell vereinfacht das entwerfen von asynchronen Prozessoren, da bestehende Designs von Logikeinheiten aus synchronen Prozessoren übernommen und in das bounded delay Modell eingebettet werden können. Das zeigt auch, dass hier das asynchrone Verhalten nicht die Berechnungen an sich betrifft, sondern nur die Übergabe der Daten von Logikblock zu Logikblock.

Die Datenübertragung zwischen einzelnen bounded delay Elementen regeln meistens micropipelines (engl. „Mikrorohrleitungen“) nach dem Prinzip von Ivan Sutherland. Diese bilden die asynchrone Schnittstelle zwischen den Bauteilen, indem sie einen Datenpfad nach bounded delay Modell benutzen. Die Übertragung wird dann mittels eines Verzögerungselementes ausgelöst. Die Logik zur Übertragung selbst kommt dann ohne Schätzungen über Verzögerungszeiten aus.

[Bearbeiten] Delay insensitive circuits

Bei delay insensitive circuits (engl. „verzögerungsunempfindliche Schaltkreise“) wird, anders als beim bounded delay Modell, nicht davon ausgegangen, dass die Ausgangsdaten, nach Ablauf einer festen Zeitspanne, bereitstehen. Beim Empfänger wird über eine zusätzliche Schaltung der korrekte Empfang der Daten festgestellt und mit einer Empfangsbestätigung quittiert. Dieser Vorgang erfolgt mittels eines Handshakeverfahrens.

Die zusätzliche Logik ist erforderlich, weil am Ausgang eines Logikblocks, wegen unterschiedlicher Gatterlaufzeiten innerhalb einer Logikeinheit, nicht immer korrekte Daten bereitstehen.

[Bearbeiten] Current sensing completion detection

Beim current sensing completion detection (engl. „Feststellung der Fertigstellung über Stromaufnahmemessung“) (kurz: CSCD) Verfahren wird das Ende der Berechnungen über eine Messung der Stromaufnahme der betroffenen Logikeinheit festgestellt. Dies wird ermöglicht durch die Tatsache, dass die Stromaufnahme beim Umschalten der Gatter ansteigt und nach dem Schaltvorgang wieder auf den Ruhepegel abfällt.

Problematisch ist hierbei jedoch, dass eine zuverlässige Messung nicht immer möglich ist. Wenn wenige Bits sich ändern, kann dies zu einer geringen Anzahl Schaltvorgänge führen, wodurch die Stromaufnahme nur geringfügige Änderungen zeigt. Für diesen Fall muss noch ein minimum delay generator (engl. „Mindestverzögerungserzeuger“) eingebaut werden, der analog zum bounded delay Modell die Übertragung auslöst. Dieser wird zu Beginn der Berechnungen aktiviert und löst die Übertragung nach der längsten zu erwartenden Schaltzeit aus.

Damit ist eine Struktur gegeben, die ihr Timing selbst bestimmen kann, sofern die Messung der Stromaufnahme erfolgreich ist. Nachteilig ist an dieser Technik jedoch der erhöhte Bauteileaufwand, da für die Strommessung auch analoge Bauteile eingebaut werden müssen.

[Bearbeiten] Praktische Durchsetzung

Asynchrone Prozessoren sind derzeit noch ein Forschungsgebiet und einer stärkeren kommerziellen Verbreitung stehen vor allem der Mangel an Erfahrung und Entwicklungs-Tools entgegen. Außerdem ist für viele praktische Problemstellungen die Integration in eine Umgebung mit synchroner Technik zu leisten.

[Bearbeiten] Asynchrone Prozessoren

Exemplarisch seien hier einige Vertreter genannt:

  • MU5 (1969) - ein asynchroner Mainframe an der University of Manchester
  • AMULET1 (1990) - ein asynchroner ARM-Prozessor an der University of Manchester
  • 1997 - Intel entwirft Prototypen eines pentiumkompatiblen Chips mit asynchronem Design, der aber nie das Labor verläßt
  • 1998 (?) - Philips entwirft die asynchronen Prozessoren PC5007 und PC5010 zur Verwendung in Pagern
  • 2005 - Seiko Epson stellt mit dem ACT11-Prozessor den ersten flexiblen Prozessor her und plant die Verwendung in ePaper.[1] [2]

[Bearbeiten] Literatur

  • Andreas Bleul u.a.: Wie taktlos... Die Rükkehr asynchroner Prozessoren. In: c't Magazin. 17/1999. Heise Zeitschriften Verlag, S. 176ff
  • Erik Brunvand: Tutorial: Introduction to Asynchronous Circuits and Systems. University of Utah, 1995
  • Anreas Steininger, Martin Delvai, Wolfgang Huber: Code Alternation Logic (CAL): A Novel Efficient Design Approach for Delay-Insensitve Circuits. Real Time Systems Group TU Wien, 2004

[Bearbeiten] Quellen

  1. ACT11 News Release
  2. E-paper boost thanks to flexible microprocessor

[Bearbeiten] Forschung

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu