Author
others
View
1
Download
0
Embed Size (px)
Chair of Electrical Engineering and Computer Systems
RWTH Aachen University
UMIC Research Centre ● Research Area MPSoCfunded within the German Excellence Initiative
Entwurf und Optimierung heterogenerASIP / eFPGA (rASIP) - Architekturen
Tobias G. NollBernd Neumann, Bosch, ReutlingenTorsten von Sydow, FAG Industrial Services, HerzogenrathHolger Blume
DFG SPP 1148 Zwischenkolloquium München 2008
DFG SPP1148 May, 2008 2
Übersicht
MotivationArithmetikorientierte eFPGAs► Architektur-Template► Entwurfsablauf► Mathematische Modellbildung► ParameteroptimierungASIP-eFPGA-Architekturen► ASIP Entwurfsablauf► Kopplungsmodi► Strukturelemente zur Kopplung► Abbildung exemplarischer AnwendungenZusammenfassung
DFG SPP1148 May, 2008 3
PhysicallyPhysicallyOptimizedOptimizedStandardStandardCellCell
FPGAFPGAFPGA w/FPGA w/HardcoreHardcore
ASIP ASIP DSPDSPGPPGPP
Increasing flexibility
Increasing energy & area efficiency
Range of Implementation Styles
DFG SPP1148 May, 2008 4
FPGAStandard
Cell
PhysicallyOptimized
GP-Processor
DSP
1E-05
1E-04
1E-03
1E-02
1E-01
1E+00
1E+01
1E+02
1E+00 1E+01 1E+02 1E+03 1E+04 1E+05 1E+06
mW
/M
OPS
MOPS / mm²
(all entries scaled to 130 nm)
EmbeddedARM 940T
EmbeddedTI DSP
Motivation: Closing the Efficiency Gap
◊◊◊ ◊◊
EmbeddedFPGA Macro
seems to be an attrac-tive compromise …
105
105
FLEXIBILITY
DFG SPP1148 May, 2008 5
Eigenschaften Arithmetik
Iterativ … 2D Bit-Slice / Function-Slice Struktur
Wenige, einfache Basisoperationen … optimierte LUTs
Regulär … Shared SRAMs
Inhärent lokal … dedicated interconnects (local / broadcast) …
Bessere Effizienz für Arithmetik
Volle Flexibilität, aber …
I/O Power9 %
ClockPower21 %Interconnect
Power65 %
CLB Power5 %
[XC4003, Kusse‘97]
DFG SPP1148 May, 2008 6
Motivation rASIP
64 LEs
90 nm CMOS
6 basic cells
82928 xtrs
89466 µm2
DFG SPP1148 May, 2008 7
eFPGA: Architektur-Template
SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEsSR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs
SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEsSR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs
SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEsSR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs SR
AMS
RAM
SR
AMS
RAM
RSCB
CBLEs
DFG SPP1148 May, 2008 8
Architektur-Template
SR
AM
SR
AM
SR
AM
SR
AM
RoutingSwitch
Connection Box
Conn.Box
2D LE Cluster
DFG SPP1148 May, 2008 9
Architektur-Template-Parameter
Cluster:# LEs (hor. / ver.)# Broadcast-Ltg.# Shared SRAMsE/A Richtungen
Logikelement:Funktionalität (Kernlogik)Konnektivität (DRB)
Registerstufe:# LEs (Spalte) pro Reg.# LE Ausgänge mit Reg.Typ (Register, Latch, ...)
Routing Switch:# LeitungenSwitch Point PositionenSwitch Point Konnektivität# Shared SRAMsSegmentlängen
Connection Box:# Ltg. pro GruppeFenstergrößeFenstergeschwindigkeitFensterphaseFensterperiodizität# Shared SRAMs
DFG SPP1148 May, 2008 10
z.B. Routing Switch# LeitungenSwitch Point PositionenSwitch Point Konnektivität# Shared SRAMsSegmentlängen
Architektur-Template: RS Parameter
SR
AM
SR
AM
SR
AM
SR
AM
CB
CBLEs
SP Positionen
···
SP Konnektivität
# Leitungen
Shared SRAMs
SRAM
SRAM
RS
DFG SPP1148 May, 2008 11
Entwurfsablauf
KonfiguratorLayout GeneratorVHDL
Generator
Architektur-beschreibung
DedizierteNetzliste
Netzlisten-simulation(Cadence)
Funktionale Verifikation (ModelSim)
entity eFGPA is...
end eFPGA;
...01010011...
...11100110...
...00110100...
Modell
A T E
DFG SPP1148 May, 2008 12
Modellbildung
Implementierung der Basiszellen► Dimensionierung (iterativ)→ optimiert hinsichtlich PV
Spezifische Netzlistensimulationen
Charakterisierung
Modellgleichungen für A, T, E
ATE-Gesamtmodell
DFG SPP1148 May, 2008 13
Modellbildung: Kernlogik
SR
AM
SR
AM
SR
AM
SR
AM
CB
CBLEs
RS
CCI
conf
CI0CI1
CO0CO1CCO
LUT2 LUT2 LUT2
I0 I1 I2 I3
O0 O1
LUT2 in_0 in_1
sram_0
sram_1
sram_2
sram_3
out
XOR MUX2
DFG SPP1148 May, 2008 14
Modellbildung: Modellgleichungen
z.B. Signallaufzeit Kernlogik:
T = f( In , On , F , RL , CL )T = f( In , On , RL , CL )T = f( In , On , l , noDRB , ngDRB )
O0 O1O1
I0 I1 I2 I3
O0 O1
I0 I1 I2 I3
O0 O1
I0 I1 I2 I3
O0 O1
: offen : geschlossen
DFG SPP1148 May, 2008 15
Modellbildung: ATE-Modell
Architektur-beschreibung
Dedizierte Netzliste
ATE-ModellKernlogikDRBSRAM-ZellenRegisterRouting-SwitchConn.-BoxTaktnetz
A T E→ aufwandsgünstigeParamteroptimierung
DFG SPP1148 May, 2008 16
Parameteroptimierung
4-tap 1D-FIR-Filter
I III
1E-05
1E-04
1E-03
1E-02
1E-01
1E+00
1E+01
1E+02
1E+00 1E+01 1E+02 1E+03 1E+04 1E+05 1E+06
mW
/ MO
PS
MOPS / mm2
GPP
FPGA
physikalisch optimiert
DSP
Standard-zellen
Altera Cyclone
I:CH = CV = 4MLE = 2, MCB = 1, MRS = 4WH = WV = 8NReg = 2
II
II:CH = 8, CV = 4MLE = 8, MCB = 1, MRS = 2WH = 8, WV = 4NReg = 2
III:CH = 16, CV = 4MLE = 16, MCB = 1, MRS=4WH = WV = 8NReg = 2
DFG SPP1148 May, 2008 17
nein
Processor Designer
ASIP Entwurfsablauf
HDLHDL.lisa
Entwurfseinstieg (ASIP-Template)
HDLHDL.c / .cpp
Pro
zess
or-
mod
ell
DFG SPP1148 May, 2008 18
ASIP-Template (LT_RISC)
5-stufige Pipeline16 Register
32-bit DatenpfadRISC-Befehlssatz
FE/DC DC/EX EX/MEM MEM/WB
FE DC EX MEM WB
Programm-speicher
Befehl
FPC
4
BPC
src1
src2
src3
Bypass-Logik
Sprung-adress-
logikPC BSET
Sprung-logik BSET
op1
op2
op3
Bypass-Logik
dst
ALU
WBV
WBV
ADR
dst dst
Dekodier-Logik
Daten-speicherinsn
DFG SPP1148 May, 2008 19
Kopplungsmodi
Anhalten der ASIP-Pipeline / Interrupt-
Mechanismus
Registerbank / Datenspeichervariabelhybrid
Interrupt-MechanismusDatenspeicherhochLC-MEM
Interrupt-MechanismusRegisterbankhochLC
Anhalten der ASIP-PipelineRegisterbankniedrigTC
Synchronisation (ASIP-eFPGA)
Daten-kommunikation
Komplexität der ausgelagerten Operationen
Kopplungs-modus
DFG SPP1148 May, 2008 20
CI: efpga_ci ,,,,CI: efpga_ci ,CI: efpga_ci CI: efpga_ci
Strukturelemente zur Kopplung
fetch
decode
execute
memory
writeback
Speichertabelle(eFPGA Op.)
8 6 5
... ... ...
... ... ...
indexidx delay address Op.
2Op. 1
Op. 5
Op. 4Op. 3
DFG SPP1148 May, 2008 21
Digitales Empfangs-Makro für Multioperable GNSS
(Very) low power
Low- (better no-) cost
High performance
High flexibility
Reconfigurable BlockMultioperable
analog frontendASIP
Data memory
Program memory
Dedicated Blocks
Reconfiguration
Fetch
Decode
Execute
Writeback
Tigh
t cou
plin
g
eFPGA
CORDIC
DFG SPP1148 May, 2008 22
Abbildung exemplarischer Anwendungen
GPS-Empfängerarchitektur:
DFG SPP1148 May, 2008 23
A/D
Wan
dler
DCO
90°PEML PRN Code Generator
Kor
rela
tors
teue
rung
I
Q
Abbildung exemplarischer Anwendungen
Variable Anzahl der KanäleDynamisch adaptierbare Wortbreiten
→ Empfindlichkeit, AkquisitionszeitReguläre Operationen → eFPGA Realisierung auf eFPGA: parallelisierbar, flexibel
GPS-Korrelatorkanal:
DFG SPP1148 May, 2008 24
eFPGA-Operatoren (HP)
1Operand (rs1) Operand (rs2)
Operand (rd)
2
Operand (rd)
Op. (rs1) Op. (rs2) Op. (rs3)
DFG SPP1148 May, 2008 25
eFPGA-Operatoren (LP)
oktaSMul
oktaMAC2
DFG SPP1148 May, 2008 26
eFPGA-Operatoren (CI) ― SFG (HP)
32 Bit
4 x 4 BitCosinus Empfangs-Signal Sinus
4 x 8 Bit
4 x 4 Bit 4 x 4 Bit 4 x 4 Bit 4 x 4 Bit 4 x 4 Bit
4 x 8 Bit 4 x 8 Bit 4 x 8 Bit
x x xx
quadSMul
4 x
24
x 2
-
x
x
x
x
x
4 x
24
x 2
-EM
L
PR
N
+
+
+
32 Bit
+
32 Bit
+
32 Bit32 Bit
Q-EML-Akku
Q-PRN-Akku
Q-EML-Akku Q-PRN-Akku
32 Bit
32 Bit32 BitI-EML-Akku I-PRN-Akku
I-PRN-Akku
I-EML-Akku
quad
MA
C
quad
MA
C
quadMAC2
quadSMul
x
+
x
x
+
+
DFG SPP1148 May, 2008 27
Einordnung in den Entwurfsraum
1E-05
1E-04
1E-03
1E-02
1E-01
1E+00
1E+01
1E+02
1E+00 1E+01 1E+02 1E+03 1E+04 1E+05 1E+06
MOPS / mm2
mW
/ MO
PS
GP-Prozessor
FPGA
physikalisch optimiert
DSP
Standardzellen
HPLP
8-Tap FIR-FilterSW-Korrelator (GPS)
DES-VerschlüsselungMedian-Filter
Arch. mit Multiplizierer
LT_RISCASIP-eFPGA TCASIP-eFPGA LC-MEM
DFG SPP1148 May, 2008 28
GNSS Testbeds
DFG SPP1148 May, 2008 29
GNSS Testbeds
DFG SPP1148 May, 2008 30
GNSS Testbeds
DFG SPP1148 May, 2008 31
Zusammenfassung
Arithmetik-orientierte eFPGAs► Enhanced Design Flow
→ vergleichbar DPG Approach► Modellbildung→ aufwandsgünstige Parameteroptimierung
ASIP-eFPGA-Architekturen► Kopplungsmodi→ Effizienzsteigerung durch Wahl des Kopplungsmodus
Exemplarische Anwendung► Multioperabler GPS-Empfänger→ Effizienzgewinn
DFG SPP1148 May, 2008 32
Veröffentlichungen
Neumann, B.; von Sydow, T.; Blume, H.; Noll, T. G.: "Entwurf und quantitative Analyse parametrisierbarer eFPGA-Architekturen für Arithmetik-Anwendungen", Tagungsband der URSI Kleinheubacher Tagung 2005, Sep. 2005, MiltenbergKappen, G.; Noll, T. G.: "Application Specific Instruction Processor BasedImplementation of a GNSS Receiver on an FPGA", Proceedings of the DATE'06, 2006, Münchenvon Sydow, T.; Neumann, B.; Noll, T. G.: "Quantitative Analysis of embeddedFPGA Architectures for Arithmetic", Proc. of the ASAP 2006, Colorado, Sep. 2006von Sydow, T.; Korb, M.; Neumann, B.; Blume, H.; Noll, T. G.: "Modelling and Quantitative Analysis of Coupling Mechanisms of Programmable ProcessorCores and Arithmetic Oriented eFPGA Macros", Proc. of the ReConFig'06, Sep. 2006, San Luis Potosi, Mexico, Neumann, B.; von Sydow, T.; Noll, T. G.: "Application Domain SpecificEmbedded FPGAs for Flexible ISA-Extension of ASIPs", invited Paper, JVSPS 2008von Sydow, T.; Neumann, B.; Noll, T. G.: "Design and quantitative analysis of ASIPs with eFPGA-based accelerators as flexible ISA-extension", PhD-Forum, DATE, 2007
DFG SPP1148 May, 2008 33
Veröffentlichungen (cont‘d)
Kappen, G.; el Bahri, S.; Priebe, O.; Noll, T. G.: "Evaluation of a tightly coupledASIP / Co-Processor Architecture used in GNSS receivers", Proc. ASAP, 2007, Montreal, CanadaKappen, G.; Kurz, L.; Noll, T. G.: "Comparison of ASIP and Standard Microprocessor Based Navigation Processors", Proc. TimeNav, 2007, Geneva, SwitzerlandZipf, P.; Hinkelmann, H.; Deng, L.; Glesner, M.; Blume, H.; Noll, T. G.: "A Power Estimation Model for an FPGA-based Softcore Processor", Proc. FPL, 2007, Amsterdam, NiederlandeNeumann, B.; von Sydow, T.; Blume, H.; Noll, T. G.: "Design flow for embeddedFPGAs based on a flexible architecture template", Proc. of DATE'08, 2008, Münchenvon Sydow, T.; Blume, H.; Kappen, G.; Noll, T. G.: "ASIP-eFPGA architecture formultioperable GNSS receivers", Proc. of SAMOS Workshop, 2008, SamosKappen, G.; Pieper, V.; Kurz, L.; Noll, T. G.: "Implementation and Analysis of an SDR Processor for GNSS Software Correlators", Proc. ION, 2008, Savannah, Georgia, USA
DFG SPP1148 May, 2008 34
Thank you very muchfor your kind attention !
Entwurf und Optimierung heterogener �ASIP / eFPGA (rASIP) - ArchitekturenÜbersichtRange of Implementation StylesMotivation: Closing the Efficiency GapEigenschaften ArithmetikMotivation rASIPeFPGA: Architektur-TemplateArchitektur-TemplateArchitektur-Template-ParameterArchitektur-Template: RS ParameterEntwurfsablaufModellbildungModellbildung: KernlogikModellbildung: ModellgleichungenModellbildung: ATE-ModellParameteroptimierungASIP EntwurfsablaufASIP-Template (LT_RISC)KopplungsmodiStrukturelemente zur KopplungDigitales Empfangs-Makro für Multioperable GNSSAbbildung exemplarischer AnwendungenAbbildung exemplarischer AnwendungeneFPGA-Operatoren (HP)eFPGA-Operatoren (LP)eFPGA-Operatoren (CI) ― SFG (HP)Einordnung in den EntwurfsraumGNSS TestbedsGNSS TestbedsGNSS TestbedsZusammenfassungVeröffentlichungenVeröffentlichungen (cont‘d) 1 GBase-T: Gigabit/s Ethernet Echo Canceller Macro10 GBase-T: 10 Gb/s Ethernet Echo Canceller MacroLeakage Reduction: Adaptive TechniquesArithmetic-oriented Embedded FPGAs (eFPGA)ASIP-eFPGAWhy to Optimize the Logic Cell Architecture ?Features of ArithmeticeFPGA-Operatoren (LP)Architektur-TemplateEntwurf und Optimierung heterogener �ASIP / eFPGA (rASIP) - ArchitekturenÜbersichtRange of Implementation StylesMotivation: Closing the Efficiency GapEigenschaften ArithmetikMotivation rASIPeFPGA: Architektur-TemplateArchitektur-TemplateArchitektur-Template-ParameterArchitektur-Template: RS ParameterEntwurfsablaufModellbildungModellbildung: KernlogikModellbildung: ModellgleichungenModellbildung: ATE-ModellParameteroptimierungASIP EntwurfsablaufASIP-Template (LT_RISC)KopplungsmodiStrukturelemente zur KopplungDigitales Empfangs-Makro für Multioperable GNSSAbbildung exemplarischer AnwendungenAbbildung exemplarischer AnwendungeneFPGA-Operatoren (HP)eFPGA-Operatoren (LP)eFPGA-Operatoren (CI) ― SFG (HP)Einordnung in den EntwurfsraumGNSS TestbedsGNSS TestbedsGNSS TestbedsZusammenfassungVeröffentlichungenVeröffentlichungen (cont‘d)