Stephan Hermanns
Architekturkonzepte für semi-synchrone Architekturkonzepte für semi-synchrone
Controller auf der Basis der Asynchronen Controller auf der Basis der Asynchronen
Wave Pipeline SchaltungstechnikWave Pipeline Schaltungstechnik
Sorin Alexander Huss
Architekturkonzepte für semi-synchrone
Controller Controller auf der Basis der Asynchronen Asynchronen
Wave Pipeline Wave Pipeline Schaltungstechnik
Stephan Hermanns:
Stephan Hermanns:
3
NN Datenwellen Datenwellen
(Async.) Wave Pipeline(Async.) Wave Pipeline
RequestRequest
Controller (FSM)Controller (FSM)
NN unabhängige unabhängigeparallele Automatenparallele Automaten
Automat 1Automat 1
Automat Automat NN
Controller + Waves = unabhängige AutomatenController + Waves = unabhängige Automaten
4
Timing der parallelen Automaten und Timing der parallelen Automaten und SynchronisationproblemSynchronisationproblem
ProblemProblem::SynchronisationSynchronisation
von Eingabe- von Eingabe- und und
ZustandswellenZustandswellen
11
22
22
11 3345
Folgezustand Folgezustand nnAutomat 2Automat 2
Zustand Zustand nnAutomat 1Automat 1
Eingabe Eingabe nnAutomat 1Automat 1
Folgezustand Folgezustand nnAutomat 3Automat 3
ist fast fertigist fast fertig
Ausgabe Ausgabe nnAutomat 3Automat 3
5 4 33
4
Welle,Welle,Automat 4Automat 4
11
3345
5
Temperatur
Geometrie
Spannung
Variationen Variationen in …in …
Eingangs-signalform
InternerGatterzustand
Problem: Delay-VariationenProblem: Delay-Variationen
Aber:Aber: Intervall für Intervall für Zustandswechsel bekanntZustandswechsel bekannt,, wenn wenn StartzeitpunktStartzeitpunkt der Berechnung der Berechnung bekanntbekannt
Delay und tDelay und tzz+ nicht exakt bekannt. nicht exakt bekannt.
Delay-Variationen in WP-GatterstrukturenDelay-Variationen in WP-Gatterstrukturen
6
ÜberlappungÜberlappungzw. Signal 1/2zw. Signal 1/2
MindestabstandMindestabstandzweier Wellenzweier Wellen
Meta-/Meta-/Kontroll-Kontroll-informationinformation
Zeigt Gültigkeit desZeigt Gültigkeit des2. Signals an2. Signals an
Signal 1Signal 1gültiggültig
Signal 2Signal 2ungültig/ungültig/
keine Datenkeine Daten
Anforderungen an WP-GatterstrukturenAnforderungen an WP-Gatterstrukturen
7
Schaltwerke mit WP: Zusätzliche AnforderungenSchaltwerke mit WP: Zusätzliche Anforderungen
11
11
22
22
33
Bin gleich fertigBin gleich fertig
5 4 33
MaximalabstandMaximalabstandwurde überschritten,wurde überschritten,
z. B. durch akkumulierte z. B. durch akkumulierte Delay-VariationenDelay-Variationen
Das wird eng…Das wird eng…
Treff‘ ich michTreff‘ ich michmit 2 oder 3?!mit 2 oder 3?!
Wellen für Wellen für NNAutomaten Automaten brauchen Raumbrauchen Raum Maximalabstand Maximalabstand und -ausdehnungund -ausdehnung
Zustand darf Startzeitpunkt nicht (mit-)bestimmen Zustand darf Startzeitpunkt nicht (mit-)bestimmen ((Maximalabstand kann überschritten werden)Maximalabstand kann überschritten werden)
8
CCAsynchrones Protokoll durchAsynchrones Protokoll durchMuller-C ElementeMuller-C Elemente
Eingabe- vor Zustandssignalen stabilEingabe- vor Zustandssignalen stabil
Zustands- vor Eingabesignalen stabilZustands- vor Eingabesignalen stabil
Architekturen zur Synchronisation vonArchitekturen zur Synchronisation vonEingabe- und ZustandswellenEingabe- und Zustandswellen
9
CC
Meta-/Kontroll-Meta-/Kontroll-informationinformation
derderZustandssignaleZustandssignale
Meta-/Kontroll-Meta-/Kontroll-informationinformation
derderEingabesignaleEingabesignale
Nachteile:Nachteile:
- Hohe Latenz und längerdauernde ÜberlappungHohe Latenz und längerdauernde Überlappung
- C Elemente für Speed-independent Modelle gedacht.C Elemente für Speed-independent Modelle gedacht.WP basiert auf Bounded-Wire-and-Delay ModellWP basiert auf Bounded-Wire-and-Delay Modell
- Zustandsdatenwellen bestimmen Startzeitpunkte mitZustandsdatenwellen bestimmen Startzeitpunkte mit
Synchronisation:Synchronisation: Asynchrones Protokoll durch Muller-C Elemente Asynchrones Protokoll durch Muller-C Elemente
10
CCAsynchrones Protokoll durchAsynchrones Protokoll durchMuller-C ElementeMuller-C Elemente
Zustands- vor Eingabesignalen stabilZustands- vor Eingabesignalen stabil
Architekturen zur Synchronisation vonArchitekturen zur Synchronisation vonEingabe- und ZustandswellenEingabe- und Zustandswellen
Eingabe- vor Zustandssignalen stabilEingabe- vor Zustandssignalen stabil
11
Nachteile:Nachteile:
- Zustandsdatenwellen bestimmen StartzeitpunkteZustandsdatenwellen bestimmen Startzeitpunkte
Vorteile:Vorteile:
+ Niedrige Latenz des SynchronisierersNiedrige Latenz des Synchronisierers
Meta-/Kontroll-Meta-/Kontroll-
informationinformationderder
ZustandssignaleZustandssignale
StartzeitpunkteStartzeitpunktewerden der Umgebungwerden der Umgebung
gemeldetgemeldet
Synchronisation:Synchronisation: Eingabe- vor Zustandssignalen stabil Eingabe- vor Zustandssignalen stabil
ZustandZustand
EingabeEingabe
maxinert
XX
ZZ
Eingabe wird vor Zustand gültigEingabe wird vor Zustand gültig
12
CCAsynchrones Protokoll durchAsynchrones Protokoll durchMuller-C ElementeMuller-C Elemente
Eingabe- vor Zustandssignalen stabilEingabe- vor Zustandssignalen stabil
Zustands- vor Eingabesignalen stabilZustands- vor Eingabesignalen stabil
Architekturen zur Synchronisation vonArchitekturen zur Synchronisation vonEingabe- und ZustandswellenEingabe- und Zustandswellen
13
Vorteile:Vorteile:
+ Bursts untereinander anisochron (Bursts untereinander anisochron (geringere mittl. Latenzgeringere mittl. Latenz))
+ Niedrige Latenz des SynchronisierersNiedrige Latenz des Synchronisierers
Meta-/Kontroll-Meta-/Kontroll-informationinformation
derderEingabesignaleEingabesignale
Die Die erste Welle im Bursterste Welle im Burstzeigtzeigt den den
AnfangAnfang eines Bursts eines Bursts anan
Synchronisation:Synchronisation: Zustands- vor Eingabesignalen stabil Zustands- vor Eingabesignalen stabil
ZustandZustand
EingabeEingabe
maxinert
tt
tt
XX
ZZ
Zustand Zustand wirdwird vor Eingabe gültig vor Eingabe gültig
festfest
variabelvariabel
XX
tt
BurstBurst
Nachteile:Nachteile:
- Gruppen (Bursts) von Gruppen (Bursts) von NN isochronenisochronenEingabewellen nötigEingabewellen nötig
14
Kern: 16bit Brent-Kung AddiererKern: 16bit Brent-Kung Addierer
Schaltungstechnik: Self-Resetting CMOSSchaltungstechnik: Self-Resetting CMOS(SRCMOS)(SRCMOS)
Technologie: 0,35µm CSD (AMS)Technologie: 0,35µm CSD (AMS)
Anwendung: Sequentieller 32bit MultipliziererAnwendung: Sequentieller 32bit Multiplizierer
min,d
max,d
maxinert
minWD
N
2,5 ns2,5 ns
3,16 ns3,16 ns
150 ps150 ps
600 ps600 ps
22
TT = -5 … 85ºC= -5 … 85ºCUU= 3,3V= 3,3Vkeine PVkeine PV
15
Synchrone Wave PipelinesSynchrone Wave Pipelines
- Die Latenz wird durch den Worst Case bestimmtDie Latenz wird durch den Worst Case bestimmt
- explizite Speicherelemente und Taktsignal(e) erforderlichexplizite Speicherelemente und Taktsignal(e) erforderlich
- keine Reduzierung der Leistungsaufnahme wenn Idlekeine Reduzierung der Leistungsaufnahme wenn Idle
Schaltwerke mit Asynchronen Wave PipelinesSchaltwerke mit Asynchronen Wave Pipelines
+ Latenz wird im Mittel reduziertLatenz wird im Mittel reduziert
+ Keine Speicher außer Parasiten / kein Takt nötig, Keine Speicher außer Parasiten / kein Takt nötig, aberaber
- Verteilung des Request-Signals erfordert ähnliche, Verteilung des Request-Signals erfordert ähnliche, lokalelokale BehandlungBehandlung
Vergleich mit synchronen Wave Pipelines Vergleich mit synchronen Wave Pipelines ZusammenfassungZusammenfassung
16
17
Delay-Variation durch TemperaturDelay-Variation durch Temperatur
CTd 5,
CTd 85,
-5ºC-5ºC85ºC85ºC 2,5ns2,5ns
3,16ns3,16ns
18
Delay-Variation durch GatterzustandDelay-Variation durch Gatterzustand
14
3725 pspsg
2ps2ps
19
Elliptic Curve Crypto ChipElliptic Curve Crypto Chip