Montée en puissance de calculs

Transcription

Montée en puissance de calculs
Montée en puissance de calculs
Amer Baghdadi
[email protected]
Département Electronique
Séminaire Pracom
23 juin 2009
Toujours des nouvelles applications,
encore plus complexes
• Grande évolution des nouvelles applications embarquées
• Nécessité pour les industriels de disposer rapidement de solutions
Terminaux télécom
Processeurs de
réseau
VDSL, Set-Top Box
IXP2800 (Intel)
Traitement
données
> 1 DSP
> 10 DSP
Contrôle
Exemple
typique
> 1 MCU
> 5 MCU
mémoire
embarqué
> MB
>> MB
Réseau de
comm.
Bus hiérarchiques
Réseau
hiérarchique
page 2
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
1
Exemple : Emotion Engine – PlayStation2
• Emotion Engine: 6.2 GFLOPS, 75 million polygons per second
• Graphics Synthesizer: 2.4 Billion pixels per second
• Processeur Cell (1 PU + 8 SIMD) : 250 GFLOPS
page 3
Séminaire Pracom – 23 juin 2009
(Intel Itanium 2 = 8 GFLOPS)
A. Baghdadi – Montée en puissance de calculs
Exemple : processeur Cell – PlayStation3
Processeur Cell (1 PU + 8 SIMD) : 250 GFLOPS
I/O and PS2
compatibility
Nvidia
Graphics
RAM
64
MB
Cell
Cell
64
MB
64
MB
Cell
Cell
64
MB
page 4
Séminaire Pracom – 23 juin 2009
(Intel Itanium 2 = 8 GFLOPS)
A. Baghdadi – Montée en puissance de calculs
2
Evolution de la technologie de fabrication
2003
2013
90 nm
61 Mtrans./cm²
2.0 GHz
1.0 volt
22 nm
617 Mtrans./cm²
18.6 GHz
0.6 volt
1 clock
20 clocks
12
metal
layers
(wiring levels)
P
Pentium IV
55 Mtrans.
Séminaire Pracom – 23 juin 2009
page 5
A. Baghdadi – Montée en puissance de calculs
Evolution des méthodologies de conception
Transistor model
(t=RC)
abstract
Gate level model
1/0/X/U (D ns)
cluster
abstract
abstract
Register-transfer level model
data[1011011] (critical path latency)
HW
RTL
cluster
SW Tasks
OS/drivers
CPU
HW
adaptation
cluster
SW
HW
SWtasks
tasks
SW
SW
tasks
OS
MPU
MPU
CPU
core
Comm.int.
int.
Comm.
OS
SW adaptation
HW adaptation
on-chip
communication
Network
IPs
HW adaptation
cluster
abstract
abstract
SW
Comm.Netw.
SW
IPs
1970’s
1980’s
1990’s
2000’s
2010+
Source: A. Jerraya, adapted from F. Schirrmeister (Cadence Design Systems Inc.)
page 6
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
3
Trends towards Multi-processor SoC
Tomorrow SoC will contain several hundreds of cores
(GPP, DSPs, ASIPs, dedicated hardware accelerators, memory blocks, I/O blocks,
etc.)
• Challenges
• how to design complex systems efficiently?
• how to connect the components effectively?
• Design objectives:
• Structured and systematic approaches
• Provide a functionally-correct, reliable operation of the interconnected
components
• Achieve high quality of service (QoS)
• Low energy consumption
page 7
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
Réseaux de
communication
sur puce
page 8
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
4
L’architecture de communication ?
Compromis M/L
Logiciel applicatif
Logiciel
Gestion des ressources
OS
Comm. logiciel
(pilotes, E/S, interruptions)
Réseau de communication
matériel embarqué
Matériel
CPUs,
Quel type d’architecture
d’interconnexion ?
page 9
IP,
Mémoire
(DSP, MCU) (ASICs, COTs)
découpage en couches
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
L’architecture de communication ?
• Bus
☺ Méthode de conception
P1
• Point à point
P2
P1
P3
P3
P4
Extensibilité
Performance
Consommation
P2
☺ Performance
P4
Extensibilité
Coût
• Réseaux de communication sophistiqués (NoC)
P1
P2
P3
P4
Réseau
de communication
page 10
Séminaire Pracom – 23 juin 2009
Pourquoi ?
A. Baghdadi – Montée en puissance de calculs
5
Communications sur puce problèmes liés à la nanotechnologie
• Problème des longues connexions (Wires)
• Longs délais (6-10 clocks en 50 nm) : clock skew, jitters,
synchronisation, global clock distribution
• Augmentation de la densité d’intégration et de la fréquence
• Gestion de la consommation et de la température !
• Tension d’alimentation sans cesse plus faible
• Faible immunité aux bruits
• Problème de synchronisation globale
• Devient pratiquement impossible avec l’augmentation de la
fréquence
• Taux d’échec de synchronisation ?
• Fiabilité réduit du transfert d’information
• Cross-talk, Electro-magnetic interference (EMI), Soft errors, Timing
errors
page 11
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
Communications sur puce – autres difficultés
• Limitations des méthodologies de conception
• Les méthodologies actuelles incapables de maîtriser la
complexité croissante des applications
• Communication inter-processeurs
• TTM
• Le Bus de communication (On-Chip Bus) n’est plus
adapté
• Manque d’extensibilité
• Performances limitées
page 12
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
6
Pourquoi les NoC ?
• Permettre une méthodologie structurée et systématique
pour concevoir des architectures de communication sur
puce
• Modularité
• Extensibilité
• Flexibilité
• Faire face aux limitations inhérentes des bus
• Extensibilité (Performance et gestion de l’énergie)
• Fiabilité des transferts d’information
• Détection et correction des erreurs (approche en couches)
• Possibilité d’utiliser les méthodes et outils des macronetworks après une adaptation aux SoC
page 13
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
On-Chip Micro Network
Def: Organizing a set of resources on a chip so that they can
communicate efficiently as in a computer network
Source: Xpipes, D. Bertozzi and L. Benini
page 14
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
7
Micro-network characteristics
• Micro-networks bring networking techniques to silicon
• Combination of networking and VLSI design techniques
• Differences between micro and macro networks:
• Problem characterization:
• SoCs have more predictable parameters than macro networks
• Objectives and constraints:
• Low communication latency
• Standards like TCP/IP are impractical
• Low communication energy consumption
• Limited adherence to standards
• SoCs are typically proprietary designs
• Tailoring micro-networks to specific applications
• Synthesis of micro-networks
Source: G. De Micheli, Stanfod University
page 15
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
Exemple développé au sein
des labos de Pracom :
Architecture multi-ASIP et réseau sur
puce pour turbo décodage haut débit
flexible
page 16
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
8
Convergence: multi-standards multi-modes
• Convergence of advanced air interface technologies
• Opportunistic radio, fixed/cellular/satellite…
Receiver
synchro.
Challenges :
decod.
Flexible terminals
Throughput, power, communication performance
Time-to-market
Séminaire Pracom – 23 juin 2009
page 17
equaliz./
detec.
demod.
A. Baghdadi – Montée en puissance de calculs
Analyses des algorithmes et du parallélisme
Parallélisme
Parallélisme BCJR
Turbo Décodeur
Décodeur 0
Décodeur 1
BCJR SISO
BCJR SISO
Parallélisme de décodeurs BCJRSISO
Parallélisme de Turbo
Décodeurs
Parallélisme de décodeurs
Parallélisme d’Itérations
Décodeur 0
Décodeur 1
Décodeur 0
Décodeur 1
BCJR SISO
BCJR SISO
BCJR SISO
BCJR SISO
BCJR SISO
Décodeur 1
Décodeur 1
BCJR SISO
BCJR SISO
Itération 1
Itération 2
Séminaire Pracom – 23 juin 2009
Trame i-k
Turbo
Décodeur 1
Turbo
Décodeur k
Itération k
temps
N
N
Trame i
Itération 1
Parallélisme de Sous-blocs
0
page 18
temps
BCJR SISO
Trame
Calculs parallèles des
métriques BCJR
produisant les
informations
extrinsèques
Itération 2
Itération 1
Décodeur 0
Décodeur 0
BCJR SISO
Sous-bloc
Parallélisme de Trames
Trame 2i
BCJR SISO
Sous-bloc
BCJR
SISO
Trame
BCJR SISO
Sous-bloc
0
Turbo
Décodeur 1
Itération k
Trame 2i+1
BCJR SISO
Sous-bloc
Turbo
Décodeur 2
Itération k
A. Baghdadi – Montée en puissance de calculs
9
Architectures de processeurs dédiées (ASIP)
ASIP : Application-Specific Instruction-set Processor
ASIP
• Compromis performance/flexibilité
• Méthodologie de conception basée sur un
langage (LISA Language for Instruction Set Architectures,
LISATek-CoWare)
• Liberté totale de conception
page 19
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
ASIP for flexible turbo decoding
α
Block
β
Future metrics
memory
extrinsic
TurbASIP
•
Exploration, classification, and
exploitation of parallelism
techniques
•
Maximum internal parallelism
•
SIMD architecture, 7-stage
pipeline, dedicated and
extensible instruction set (~ 31
insts)
•
•
Supports all standardized
turbo codes (single and
double binary)
Forward
recursion
unit
A
Cross memory
AB
Configuration
memory
ot
Program
memory
decision
Input data mem
top
Cross memory
BA
Backward
recursion
unit
B
Extrinsic
information
Extrinsic info
mem top
Control unit
Input data mem
bottom
IO: packet interface to
exchange information with
other processors
page 20
Extrinsic
information
decision
time
Séminaire Pracom – 23 juin 2009
Extrinsic info
mem bottom
Past metrics
memory
A. Baghdadi – Montée en puissance de calculs
10
High-throughput multi-ASIP turbo decoder
I/O Interface
I/O network
futur
futur
• 3 dedicated
networks
M
canal
• Low latency
for the
extrinsic
information
network
ASIP1
M
info
extr
NI
NI
NI
NI
M
info
extr
NI
NI
M
info
extr
NI
NI
ASIP3
Mémoires
passé
Mémoires
passé
futur
futur
M
info
extr
• Network
interface:
interleaver
M
canal
M
canal
ASIP0
ASIP2
Mémoires
passé
M
canal
Mémoires
passé
State metric network
Extrinsic information
network
Component decoder0
Séminaire Pracom – 23 juin 2009
page 21
Component decoder1
A. Baghdadi – Montée en puissance de calculs
NoC for flexible turbo decoding
• Iterative extensive exchanges of interleaved data require a fully
flexible on-chip interconnection network
• Support of all interleavers – avoid communication conflicts
ASIP8
NI
NI
ASIP1
ASIP2
NI
MEM8
NI
NI
MEM9
NI
NI
MEM10
NI
NI
MEM11
NI
NI
MEM12
NI
NI
MEM13
NI
NI
MEM14
ASIP3
ASIP4
Conflict
ASIP10
ASIP12
ASIP13
NI
NI
ASIP7
MEM15
ASIP14
ASIPK
ASIP0
ASIP1
ASIP11
NoC
ASIP5
ASIP6
ASIP9
ASIPK-2
ASIPK-1
COMPONENT
DECODER 0
ON-CHIP COMMUNICATION NETWORK
ASIP0
ASIPK+1
ASIP2K-2
ASIP2K-1
COMPONENT
DECODER 1
ASIP15
Butterfly topology
page 22
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
11
NoC for flexible turbo decoding
Topology exploration
•
ASIP0
ASIP8
NI
ASIP1
Benes
ASIP2
NI
MEM8
ASIP9
NI
NI
MEM9
NI
NI
MEM10
NI
MEM11
ASIP11
NI
MEM12
ASIP12
NI
MEM13
ASIP3
NI
ASIP4
NI
de Bruijn
ASIP10
ASIP5
ASIP6
NI
NI
MEM14
NI
NI
MEM15
ASIP7
ASIP13
ASIP2
ASIP5
MEM8
NI
NI
MEM9
NI
NI
MEM10
NI
NI
MEM11
NI
NI
MEM12
NI
NI
MEM13
NI
NI
MEM14
ASIP3
ASIP4
ASIP1
NI RT
RT NI
ASIP5
RT NI
ASIP2
RT NI
ASIP0
ASIP8
ASIP9
ASIP10
ASIP11
ASIP12
ASIP6
ASIP4
NI
NI
RT
RT
ASIP13
ASIP6
ASIP14
NI
NI
ASIP7
page 23
NI
ASIP3
ASIP14
ASIP7
NI
NI
ASIP1
NI
ASIP15
ASIP0
Butterfly
RT
RT
NI
MEM15
ASIP15
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
Prototyping and on-board validation
• 4-ASIP prototype using a logic emulation board
• F = 135 MHz
• ~24% of a single FPGA Xilinx Virtex 5 LX330
• Turbo decoding: 25 Mbps @ 6 iterations
Main Bus
FPGA XC5VLX330
Random Generator &
Conv. turbo encoder
Main Bus
Ctrl
AWGN channel
Errors verif. &
counting block
Pracom’s
FPGA
Platform
ASIP13
ASIP02
• Target ASIC 1
page 24
Butterfly NoC
memory_in_ctrl
ASIP37
ASIP26
Gbps : 64 ASIPs @ 8 iterations
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
12
Des défis à
relever
Séminaire Pracom – 23 juin 2009
page 25
A. Baghdadi – Montée en puissance de calculs
Des défis à relever
• QoS
• Quelques topologies de réseaux offrent multiple chemins entre les
différents couples source/destination
• Tolérance aux attentes transitoires
• Tolérance aux connexions défectueux (transitoire ou permanent)
• Détection et correction des erreurs
• Liens physiques, switches et routeurs, Interface réseau, coeurs des processeurs
• Déterminisme
• Réduction de la consommation
• Conception au niveau système
• Analyse de la fiabilité au niveau système
• MPSoC dédié à un domaine d’application spécifique
• Topologie du réseau
• Stratégie de la gestion de la consommation
• Stratégie de la gestion globale du système
page 26
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
13
Des défis à relever – cont.
• Standardisation des protocoles dans les NoC ?
• Compromis entre efficacité/généricité
• Outils
• Spécification, simulation, et évaluation
• Synthèse des NoC
• Analyses statistiques
• Simulation des comportements du systeme
• Performance, consommation, fiabilité
• Exploration d’architectures (type de gestion)
• Contrôle stochastique optimal
page 27
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
Conclusion
• Parallélisme tâche et architectures multiprocesseurs
pour répondre à la montée en puissance de calculs
requise par les applications émergeantes
• Le problème n’est plus tant de concevoir des
composants efficaces mais surtout de les assembler
efficacement
• Pour les SoCs dédiés à une application, possibilité d’un
NoC dédié à cette application (sur mesure)
• Commutation de paquets, routage, et codage donnent
une nouvelle vue de la conception des réseaux de
communication sur puce
• Plusieurs défis sont à relever dans ce domaine !
page 28
Séminaire Pracom – 23 juin 2009
A. Baghdadi – Montée en puissance de calculs
14