57
Architecture des SoC Introduction S. Mancini

Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Architecture des SoC

Introduction

S. Mancini

Page 2: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Qui sommes-nous ?

Stéphane MANCINIMaître de Conférence

Enseignement: ENSIMAG

Recherche : TIMA

[email protected]

Frédéric PETROTProfesseur

Enseignement: ENSIMAG

Recherche : TIMA

[email protected]

1/55- Architecture des SoC- Introduction S. Mancini

Page 3: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

6 Architecture des SoCq Constituants des SoCq Exemple de plateforme : mobileq Exemple de plateforme : multimediaq Critères d’optimisations

q Architectures du futurq Méthodologieq En résumé

2- Architecture des SoC- Introduction

Page 4: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Evolution de la complexité des systèmes numériques

3/55- Architecture des SoC- IntroductionArchitecture des SoC

S. Mancini

Page 5: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

6 Architecture des SoC4 Constituants des SoCq Exemple de plateforme : mobileq Exemple de plateforme : multimediaq Critères d’optimisations

q Architectures du futurq Méthodologieq En résumé

4- Architecture des SoC- Introduction

Page 6: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Qu’est ce qu’un SoC ?

I/O

Controleur

Mémoire

Interface

Analogique MEMS

Interface

BUS

Cache

CPU RAM

interne

Système d’exploitation

Données

RAM

externe

Programmes

ASIC/IP

5/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 7: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Les bus systèmes permettent aux dif-férents blocs de s’échanger des données.

Un bus système est caractérisé par:

q Son débitq Son protocoleIl existe plusieurs compromis entre la com-plexité du bus et ses performances.

6/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 8: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Les mémoires servent à stocker des pro-grammes/données.

Un SoC est constitué de différents types de mémoire(SRAM, DRAM, FFD). Chacune de ces technologie a descaractéristiques (surface par bit, consommation, méthoded’accès et débit) spécifique.

Pour optimiser le système, des pro-

grammes/données sont répartis et éventuelle-

ment dupliqués dans différents types de mémoire.

.

.

.

.

.

Une hiérarchie mémoire est un en-semble de mémoires de différents typeset de mécanismes de gestion plus oumoins automatiques.

7/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 9: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Ú Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú Ú

Ú Adapté aux calculs ir-réguliers

Ú Souplesse de program-mation

Ø Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø Ø

Ø Puissance de calculfaible

Utilisation

P Gestion du systèmeP Interface utilisateurP Gestion temps réel

8/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 10: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Ú Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú Ú

Ú Puissance de calculmoyenne

Ú Instructions et partiesopératives spécifiques

Ø Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø Ø

Ø Programmation com-plexe

Utilisation

P Calculs réguliersP Contrôle temps réelP Traitement de signal

(parole, images sim-ples, . . . )

9/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 11: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Les ASICs sont utilisés pour leur grandepuissance de calcul.

Ú Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú Ú

Ú Grande puissance decalcul

Ú Traitements réguliers

Ú Consommation réduite

Ø Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø Ø

Ø Rigidité

Ø Temps de développe-ment

Ø Peu adapté à un con-trôle complexe

La souplesse des ASICs est obtenue enprévoyant de pouvoir les paramétrer.

10/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 12: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Les composants analogiques sont princi-palement utilisés pour :

P La conversion analogique/numériqueP Le filtrage (RF)P La mise en forme de signaux en prove-

nance des capteurs

Ú Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú ÚÚ Ú Ú Ú Ú Ú

Ú Très grande intégration

Ú Faible consommation

Ø Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø ØØ Ø Ø Ø

Ø Bruit

Ø Conception complexe

Ø Grande dépendance àla technologie

11/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 13: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Les MEMS (Micro-Electro-MechanicalSystems) et MOEMS (Micro-Opto-Electro-Mechanical Systems) sont des capteurs etactuateurs intégrés.

12/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 14: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Constituants des SoC

Bus

RAM

CPU

DSP

ASIC/IP

Analogique

MEMS

SoC

Et si on mettait tout ensemble ?

13/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 15: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Interaction IP/IO et CPU

L’insertion d’un ASIC dans un système nécessite :

P Son adaptation au bus système

+ Accès aux registres de configuration+ Gestion des transferts de données

P La mise en oeuvre de mécanismes de synchronisation

CPUGestionnaire

d’

Interruption

ASIC

2

ASIC

1

ASIC

0

Signaux de synchronisation

IT

14/55- Architecture des SoC- IntroductionArchitecture des SoC- Constituants des SoC

S. Mancini

Page 16: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

6 Architecture des SoCq Constituants des SoC4 Exemple de plateforme : mobileq Exemple de plateforme : multimediaq Critères d’optimisations

q Architectures du futurq Méthodologieq En résumé

15- Architecture des SoC- Introduction

Page 17: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Architecture générale ML2000 (Mobilink)

Processeurs à 52 MHz

16/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : mobile

S. Mancini

Page 18: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Détails

17/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : mobile

S. Mancini

Page 19: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Blocs fonctionnels

DSP

Matériels

Accélérateurs

Synchro

CPU

IO

Codage Bande de Base

Codage Voix

18/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : mobile

S. Mancini

Page 20: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Modules “système”

DAC RAM

Ctrl ITCPUADC

19/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : mobile

S. Mancini

Page 21: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

6 Architecture des SoCq Constituants des SoCq Exemple de plateforme : mobile4 Exemple de plateforme : multimediaq Critères d’optimisations

q Architectures du futurq Méthodologieq En résumé

20- Architecture des SoC- Introduction

Page 22: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Viper Set-top-box (PNX8500)

Le SoC PNX8500 (Philips) est dédié aux applications multimé-dias telles que les récepteurs de télévision numérique (Set-TopBox).

arbiter uses a programmable, cyclical list-based arbiter that

assigns unused list slots to the CPUs. This guarantees

required latency to all real-time agents while optimizing CPU

performance.

COPROCESSORS/ACCELLERATORS

The pnx8500 includes on-chip coprocessors for 2D and 3D

graphics acceleration, MPEG decoding, image scaling and fil-

tering, and display channel composition. All coprocessors read

input and write results to memory.

2D drawing engine__The pnx8500 2D drawing accelerator

block performs high-speed graphics operations including fast

area fills, three-operand bitblt, monochrome data expansion,

and line drawing. Monochrome data can be color-expanded to

any supported pixel format. Anti-aliased lines are supported

through a 16-level alpha-blend bitblt. A full 256-level alpha

bitblt supports blending of source and destination images. The

2D engine can also be used as a generic DMA engine to trans-

fer data between memory locations on a byte-aligned basis.

3D rendering engine__An on-chip 3D drawing engine accel-

erates texture-mapped pixel rendering. It implements

Microsoft-compatible DirectX 6.1 3D functions, such as bi-

linear and tri-linear texture filtering.

Rendering speeds up to 60 Mpix/sec for bilinear- and trilin-

ear-textured, mip-mapped, z-buffered, blended triangles deliv-

er excellent 3D graphics quality for ASTB or television

applications. In 3D operations, the TM32 core performs tri-

angle setup and controls the hardware 3D engine; the MIPS

core performs transformation and lighting.

High-level MPEG-2 decoder__A high-level MPEG-2 decoder

block performs MPEG-2 program stream decoding below slice

level. The TM32 core controls the decode process and handles

MPEG-2 processing above slice level. BS-D, DVB, and all 18

ATSC formats are supported; three SD streams or one HD

stream can be decoded simultaneously. The MPEG-2 decoder

is capable of full-resolution decoding or decoding to a 2X

horizontally compressed image format, saving memory space

and bandwidth.

Memory-based scaler (MBS)__The primary function of the

MBS block is acceleration of scaling operations. It reads input

from and writes results to memory. Compared to an 'on-the-

fly' approach, this method de-couples the scaling operation

from the display, significantly reducing on-demand memory

bandwidth requirements. Since the MBS block uses memory

as a buffer, it can process many images in the same time

required to display a single frame.

In addition to basic scaling capabilities, the MBS performs

many commonly required image manipulations prior to dis-

play including linear and non-linear aspect ratio conversion

(including panorama mode), anti-flicker filtering, de-interlac-

ing, and pixel format conversion functions.

NEXPERIA PNX8500 CONCEPTUAL ARCHITECTURE

1

chiplet timing, clock matching, and I/O tim-

ing analysis.

To achieve timing closure, we made engi-

neering change orders to the netlist after routing.

Following each manipulation step, formal verifi-

cation ensured that the modified netlist was func-

tionally equivalent to the one after test insertion.

We aligned all clock domains having syn-

chronous chiplet crossings. For example, if the

memory interface clock in one chiplet was syn-

chronously connected to the same clock in

another chiplet, we phase-aligned these clocks

and analyzed the signal paths to meet timing

constraints. We achieved clock alignment by

tweaking the clock insertion delays, using align-

ers in the clock module. Similarly, we made the

clock trees as structurally identical as possible.

As part of the physical design process, we met

design completion and manufacturability goals

by implementing techniques such as design rule

checks, antenna fixes, track filling, and doubling

of vias wherever possible. Figure 4 shows the lay-

out plot for the Viper design’s initial version.

Table 3 summarizes the major design

parameters.

WE HAVE LEARNED much from the Viper design

experience and trust it will guide us in the

future, particularly since the next-generation

SOC designs are significantly more complex,

calling for still higher levels of integration. Some

of our current activities, in addition to regular

chip-development tasks, are investigating more

efficient on-chip bus architectures and better

design-reuse methodologies. �

AcknowledgmentsWe thank the Viper management and design

teams for their hard work, particularly chief

architects Gert Slavenburg and Lane Albanese,

without whose foresight and leadership the pro-

ject never would have been successful.

References1. S. Rathnam and G. Slavenburg, “An Architectural

Overview of the Programmable Multimedia

Processor, TM-1,’’ Proc. 41st IEEE Computer

Society Int’l Conf. (COMPCON 96), IEEE CS

Press, Los Alamitos, Calif., 1996, pp. 319-326.

2. D. Paret and C. Fenger, The I2C Bus, John Wiley

& Sons, New York, 1997.

Santanu Dutta is a designengineering manager atPhilips Semiconductors inSunnyvale, California. Hisresearch interests includedesign of high-performance

Application-Specific SOC Multiprocessors

30 IEEE Design & Test of Computers

CAB MPEG

MBS+

VIP1+

VIP2

ICP1 + ICP2 + MMI

Conditionalaccess

(MSP1 + MSP2)T-PI

M-PI

TM32

1394

MSP3

PR3940

Figure 4. Layout of Viper (PNX8500).

Table 3. Design statistics.

Parameter Value

Process technology TSMC 0.18 µm, six metal layers

Transistors About 35 million

Instances 1.2 million instances, or 8 million gates

Memories 243 instances, 750-Kbit memory

CPUs 2 (TriMedia TM32 and MIPS PR3940)

Peripherals 50

Clock domains 82

Clock speed TM32: 200 MHz; PR3940: 150 MHz;

SDRAM: 143 MHz

Power 4.5 W

Supply voltage 1.8-V core and 3.3-V I/O

Package BGA456

1

21/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : multimedia

S. Mancini

Page 23: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Cell

Le Cell est le processeur au coeur de la playstation III

22/55- Architecture des SoC- IntroductionArchitecture des SoC- Exemple de plateforme : multimedia

S. Mancini

Page 24: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

6 Architecture des SoCq Constituants des SoCq Exemple de plateforme : mobileq Exemple de plateforme : multimedia4 Critères d’optimisations

q Architectures du futurq Méthodologieq En résumé

23- Architecture des SoC- Introduction

Page 25: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Exemple : optimisation de la consommation??????????

Comment réduire la consommation d’un SoC ??Autrement dit, quelles sont les méthodes dont dispose unconcepteur ?Quels sont les niveaux d’intervention et libertés autorisées?

24/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 26: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Expression de la consommation

Ve

Temps

se

Vdd

C

Charge

Décharge

P = 12CchargeV

2dd

ftransitionAutres sources de consommation :

P Courant de court-circuitP Fuites de courant

25/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 27: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie àCircuit

Combinatoire

Arithmétique

Architecture

Système

Réduction des capacités

P Réduction de la taille des transistorsP Amélioration de la technologieP Accroissement des investissements

26/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 28: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie

Circuit àCombinatoire

Arithmétique

Architecture

Système

Equilibrage des transistors

W

L L’

W’

27/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 29: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie

Circuit

Combinatoire àArithmétique

Architecture

Système

Equilibrage des temps de propagation

s

s s

s

28/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 30: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie

Circuit

Combinatoire

Arithmétique àArchitecture

Système

Simplification des calculs

Critère

CalculSimplifié

Calcul

Complet

29/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 31: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie

Circuit

Combinatoire

Arithmétique

Architecture àSystème

Parallélisation

f, V ∗dd

f2 , Vdd

30/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 32: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Réduction de la consommation

Technologie

Circuit

Combinatoire

Arithmétique

Architecture

Système à

Partitionnement logiciel/matériel

SRAMCAN

CPU

f

CANSRAM Filtre

CPU

f∗

31/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 33: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

L’espace des critères de conception

Architecture mémoire Consommation

Débits

Puissance de calcul

Technologie

Fonctionnalité

Surface/coûtEfficacité

Souplesse

Réutilisabilité

Temps de développement

?

32/55- Architecture des SoC- IntroductionArchitecture des SoC- Critères d’optimisations

S. Mancini

Page 34: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

q Architecture des SoC6 Architectures du futurq Méthodologieq En résumé

33- Architecture des SoC- Introduction

Page 35: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Les principaux enjeux

Accroître la puissance de calcul par le parallélisme !

La fréquence des coeurs n’augmentera quasiment plus: il fautparalléliser.

On prévoit plusieurs centaines de coeurs sur un circuit !

+++++++++++

Il y a de nombreuses difficultés:

q Les applications doivent être parallélisables et répar-ties sur les coeurs

q L’infrastructure de communication doit être adaptéeq L’accès aux donnés devient un goulot d’étranglement

(Memory Wall)q Le système doit être tolérant aux fautes/pannesq La dissipation de la chaleur est critique !

34/55- Architecture des SoC- IntroductionArchitectures du futur

S. Mancini

Page 36: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Puissance de calcul

Densité d’intégration :

P 90 nm mixte : 430 KPortes/mm2

P 40 nm : 1 600 KPortes/mm2

P 20 nm : 6 400 KPortes/mm2

Un CPU RISC 32 bits simple (MIPS) ≈30 000 portes !...

Loi de Moore : Le nombre de transis-tors disponibles double tous les 2 ans!

La surface des circuits reste globalementconstante !

35/55- Architecture des SoC- IntroductionArchitectures du futur

S. Mancini

Page 37: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Infrastructure de communication

++++

Les fils deviennentplus lents que lesportes !

ííííííí

P L’estimation des chaînes critiques devient complexeLe placement routage est primordial

P On ne peut plus faire de communications qui tra-versent un circuitL’infrastructure de communication devient asynchrone

36/55- Architecture des SoC- IntroductionArchitectures du futur

S. Mancini

Page 38: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Memory Wall

La puissance de calcul croît plus vite que les performancesdes mémoires externes !

P Le débit s’accroît: DDR (2003)=0.4 Gbit/s, DDR3 (2008)=1.6 Gbit/s par bit dedata

P La latence reste constante: ≈ 14 ns

íííííííí

Les flux de donnéesdoivent être fine-ments gérés.Des hiérarchiesmémoire efficacessont nécessaires !

37/55- Architecture des SoC- IntroductionArchitectures du futur

S. Mancini

Page 39: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

IBM Power 4 dual-core: 115 W

38/55- Architecture des SoC- IntroductionArchitectures du futur

S. Mancini

Page 40: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

q Architecture des SoCq Architectures du futur6 Méthodologieq En résumé

39- Architecture des SoC- Introduction

Page 41: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Quelques termes

q Méthodetechnique de résolution de problème caractérisée par un ensemble de règles

bien définies qui conduisent à une solution correcte.

q Méthodologieun ensemble structuré et cohérent de modèles, méthodes, guides et outils

permettant de déduire la manière de résoudre un problème.

q Modèleune représentation d’un aspect partiel et cohérent du «monde» réel précède

toute décision ou formulation d’une opinion est élaboré pour répondre à la

question qui conduit au développement d’un système

40/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 42: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

A quoi sert un modèle ?

q AbstractionEliminer des détails, focaliser sur un point de vue du système. Travailler à

différentes échelles de complexité et de temps.

q AnalyseEtude des propriétés du modèle (vérification de propriétés). Extrapolation au

système réel représenté.

q CommunicationDiscussion et échanges avec d’autres personnes. Echanges entre outils.

q Génération/ProductionProduire une représentation d’un autre niveau (autre modèle). Produire le

système réel.

. Le modèle à retenir est fonction de l’objectif visé !

41/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 43: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Spécification exécutive

Ce sont toutes les spécifications que l’on peut exécuter ousimuler.

P Spécification algorithmique

q Purement algorithmiqueMatlab, C (virgule flottante, virgule fixe)

q Temporel et algorithmiqueESTEREL, LUSTRE, COSSAP, SPW, SimuLink, VHDL comportementale

P Spécification de l’architecture système

q Localisation des fonctions (processeur, opérateurs de calculs)q Modèles de communication

42/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 44: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Modèles de spécification

Modèle Fonctionnalité Temps Surface Conso-mmation

C, Matlab Exécutable

ESTEREL id Synchrone

SystemC id Synchrone

VHDL cptl id Synchrone

VHDL RTL Comb. Séquentiel Activité

Netlist Comb. Séquentiel Porte Porte

Netlist an-notée

Comb. Séquentiel Porte Vraie

Layout Vraie

HSPICE Electrique Continu Vraie

43/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 45: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Top/down ou bottom/up ?

P Conception top-downCommencer par une description très abstraite; Enrichir de détails pour obtenir

des solutions spécifiques.

P Conception Bottom-upAssembler des petits composants pour obtenir un gros système par assemblage

spécifique.

Cas réels utilisent ces deux techniques: assemblage etconfiguration spécifique. C’est la conception à base deplate-formes !

44/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 46: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

La méthodologie top/down

logicielleArchitecture

ArchitectureSystème

SpécificationAlgorithmique

Spécificationproduit

Besoins

ApplicationOS RTL

Description

Architecturematérielle

Synthèse

PlacementRoutage

Production

V

V

V

V

V

V

V

V

V

V

V

alis

atio

ne

cu

tive

fon

ctio

nn

elle

Sp

éficic

atio

nS

cific

atio

n

45/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 47: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

La boucle Adéquation Algorithme Architecture

"back−end"

Applis, OS

Logiciel

VHDL

Modèle "abstrait"langage de description

de matériel

e

e

e

3

2

1

clk

Netlist

?Matlab, C, Texte,

Algorithme

PPC DOCMIOCM

BRAMSDRAMCtl

SRAMCtl

InteruptCtl

UART

SDRAM

OPB PLB

6432

2D Backprojection

SRAM

ArchitectureMatériel et logiciel

Cible technologiqueCircuit ASIC, FPGA

Synthèse logique

Axes de l’AAA

Synthèse de

haut niveau

2D−AP Cache

?

46/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 48: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Problématique

47/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 49: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Flot de conception numérique

48/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 50: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Le codesign (ideal!)

49/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 51: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

La synthèse d’architecture

La synthèse d’architecture RTL consiste à transformer unmodèle séquentiel en un modèle concurrent, au niveau RTL.

La synthèse de système a pour objectif de passer d’unmodèle logiciel à une architecture logicielle/matérielle parallèle.

Leur automatisation est difficile et n’est possible que danscertains contextes.

.

.C’est l’avenir de la conception des systèmes embar-qués!

50/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 52: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

La synthèse d’architecture (bis)

51/55- Architecture des SoC- IntroductionMéthodologie

S. Mancini

Page 53: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Plan

q Architecture des SoCq Architectures du futurq Méthodologie6 En résumé

52- Architecture des SoC- Introduction

Page 54: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Concevoir un SoC ?

Il est nécessaire de prendre en compte les contraintesde l’électronique intégrée dès le départ. Les contraintesmatérielles influent directement sur les choix au plus hautniveau.

+++++++

Le choix des algorithmesd’une application estdéterminant !Les optimisationsultérieures ne permet-tront pas de réduire lacomplexité intrinsèque. cycle−accurate

back−of−the−envelope

Alternative implementations

Opportunities

Abstraction

Effort in modeling and evaluation

executable

synthesis

abstract models

models

Low

High Low

High

explore

explore

explore

53/55- Architecture des SoC- IntroductionEn résumé

S. Mancini

Page 55: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Le cours “Architecture des SoC”

Stéphane Mancini

q Introductionq Infrastructure de communicationq Hiérarchie mémoireq Etudes de cas et GPU

Frédéric Pétrot

q Architecture avancée des processeursq GALS et basse consommationq Network On Chipq Gestion des données dans les architectures parallèlesq OS SMP/AMP

. . . et un examen

54/55- Architecture des SoC- IntroductionEn résumé

S. Mancini

Page 56: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

Architecture des SoCIntroduction

S. Mancini

Plan Détaillé

P Qui sommes-nous ?

6 Architecture des SoC

P Evolution de la complexité des systèmesnumériques

q Constituants des SoC

P Qu’est ce qu’un SoC ?P Constituants des SoCP Interaction IP/IO et CPU

q Exemple de plateforme : mobile

P Architecture générale ML2000 (Mobilink)P DétailsP Blocs fonctionnelsP Modules “système”

q Exemple de plateforme : multimedia

P Viper Set-top-box (PNX8500)P Cell

q Critères d’optimisations

P Exemple : optimisation de la consommationP Expression de la consommationP Réduction de la consommationP L’espace des critères de conception

6 Architectures du futur

P Les principaux enjeuxP Puissance de calculP Infrastructure de communicationP Memory WallP IBM Power 4 dual-core: 115 W

6 Méthodologie

P Quelques termesP A quoi sert un modèle ?P Spécification exécutiveP Modèles de spécificationP Top/down ou bottom/up ?P La méthodologie top/downP La boucle Adéquation Algorithme Architecture

Page 57: Introduction · applications. In 3D operations, the TM32 core performs tri-angle setup and controls the hardware 3D engine; the MIPS core performs transformation and lighting. High-level

P ProblématiqueP Flot de conception numériqueP Le codesign (ideal!)P La synthèse d’architectureP La synthèse d’architecture (bis)

6 En résumé

P Concevoir un SoC ?

P Le cours “Architecture des SoC”

57