Processeurs r seau papr 2 ue de m2 f vrier mars 2007
This presentation is the property of its rightful owner.
Sponsored Links
1 / 59

Processeurs Réseau PAPR (2) UE de M2 février / mars 2007 PowerPoint PPT Presentation


  • 45 Views
  • Uploaded on
  • Presentation posted in: General

Processeurs Réseau PAPR (2) UE de M2 février / mars 2007. Daniela Genius LIP6. Contenu du cours. Principes & Contraintes d’architecture des processeurs réseau Conception des Processeurs Réseau Exemples de processeurs réseau : IBM Power NP, Intel IXP Processeur Réseau LIP6.

Download Presentation

Processeurs Réseau PAPR (2) UE de M2 février / mars 2007

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Processeurs r seau papr 2 ue de m2 f vrier mars 2007

Processeurs Réseau PAPR (2) UE de M2 février / mars 2007

Daniela Genius

LIP6


Contenu du cours

Contenu du cours

  • Principes & Contraintes d’architecture des processeurs réseau

  • Conception des Processeurs Réseau

  • Exemples de processeurs réseau : IBM Power NP, Intel IXP

  • Processeur Réseau LIP6


Crit res de comparaison

Critères de Comparaison

  • Microarchitecture

  • Architecture

  • Implémentation Physique

  • Support Logiciel


Comparaison micro architecture

Comparaison: Micro-architecture

  • Organisation interne du processeur (étages du pipeline, PUs etc.)

  • Plusieurs processeurs avec des micro-architectures différentes auront la même architecture

  • Critères

    • basée sur tâches (task-based)

    • présence des instructions spécialisées

    • nombre des contextes actives

    • nombre des contextes par contexte actif


Comparaison architecture

Comparaison: Architecture

  • Vue sur l’ensemble du système programmable par langage machine

    • Processing Elements PE

    • Registres accessibles par instruction

    • Jeu d’instruction complet

    • Modes d’adressage

    • Formatage des données

  • Multiprocessing

    • contrôle centralisé

    • nombre de PE

    • structure de communication interne aux PE

    • Interfaces

    • Multithreading

    • Memory prefetching


Liste alphab tique des fournisseurs d but 2005

Agere (se porte bien)

Alchemy (acheté par AMD)

AMCC (se porte bien)

Bay Microsystems (acheté par Xilinx??)

BRECIS Communications

Broadcom (se porte bien)

Cisco

Clearspeed (se porte bien)

Clearwater Networks (struggling, 2004)

Cognigine (acheté par entreprise chinoise Huawei Télécom , mars 2004)

Conexant (rien après 2002)

Ezchip

IBM

Intel

Lexra (violation de brevet de MIPS 1999, disparaît du marché janvier 2002)

Motorola

PMC-Sierra (se porte bien)

Vitesse (Y. Viniotis cofondateur) se porte bien

Xelerated (se porte bien)

Liste Alphabétique des Fournisseurs (début 2005)


Espace de solutions

Solutions

ASIC

Coprocesseurs

Réseau

Processeurs

Universels

Processeurs

Réseau

DSP

Processeurs

de Communication

Espace de Solutions

  • Buts de la conception :

    • performance

    • coût

    • fonctionnalité(pour un domaine d ’application donné)

    • programmabilité

  • compromis qualitatifs et quantitatifs

En annexe (p. 41 ff) : traduction de l ’étude de N. Shah


Litt rature

Littérature

  • Thèse de N. Shah : Understanding Network Processors : disponible sous /users/enseig/genius/UnderstandingNPs.pdf.gz

  • Collection d ’articles d ’Intel : disponible sous /users/enseig/genius/IntelJournal.pdf.gz

  • Description de l ’architecture du IBM PowerNP: disponible sous /users/enseig/genius/PowerNP.pdf.gz

  • Livre de D. Comer (peut être consulté sur place en bureau 404)


Agere q4 2000

Agere (Q4 2000-??)

  • PayloadPlus Trois puces séparées

    • Fast Pattern Processor

    • Routing Switch Processor

    • Interface Système (ASI)

  • Interfaces Utopia, MPI, PCI

  • Interface Système ASI

    • management

    • traitement lent : initialisation, mise à jour des tables de routage, mise à jour du traitement de la file, traitement des exceptions, collection des statistiques

  • Interface PCI pour connecter au monde extérieur

Configuration bus


Agere

Agere

Diagramme de l ’unité FPP


Agere fpp

Agere FPP


Agere1

Agere

Diagramme de l ’unité RSP


Agere rsp functional units

Agere RSP Functional Units


Alchemy au1000 q2 2001

Alchemy Au1000 (Q2 2001 - ??)

  • Processeur plutôt generaliste

  • basé sur 32-bit MIPS basse consommation

    • Pipeline à 5 étages

    • 32*16 Multiply-Accumulate

    • conditional moves, prechargement des données, autres optimisations classiques

  • Deux contrôleurs Ethernet

  • IrDA, USB, 4 UARTS

  • 16KB instruction et data cache

  • update 2004 : AU 1550 security processor, SoC


Alchemy

Alchemy


Applied micro circuits amcc q1 1999

Applied Micro Circuits AMCC (Q1 1999-?)

  • premier fournisseur (historiquement parlant)

  • Basé sur EPIF-200

  • processeur orienté paquet pour couches 2-7

    • 64bit network processor

    • jeu d ’instructions optimisé

    • « zero »-overhead task switching among 8 threads

    • programmable policy engine for packet classification

    • Search Engine for layer 2 LAN bridging and layer 3 longest prefix match lookup

    • packet transform engine

    • statistics engines


Applied micro circuits

Applied Micro Circuits


Bay microsystems d but 2001

Bay Microsystems (début 2001 - ??)

  • Peu d ’information

  • couches 3-7 à 10 GB/sec

  • VLIW avec DRAM

  • 166 MHz

  • update Montego OC-192 processor

  • works with Xilinx (eXtensa architecture)


Brecis q3 2001 2004

BRECIS (Q3 2001-2004)

  • multi-services (aussi transmission de voix, téléphone mobile)

  • MSP5000 : à la fois plusieurs canaux de voix et des données

  • 1 DSP ZSP400 pour voix et un pour données, respectivement

    • 4-issue superscalar

    • 80 Kbyte on-chip I/D mémoire

    • coprocesseur pour voix, coprocesseur pour donnés

  • MIPS R4KM pour control-plane operations

    • 180 MHz

    • I/D cache de 16Kbyte

  • security coprocesseur

  • acheté par cavium en aout 2004

  • continue à produire des processeurs securité


Brecis

BRECIS

  • bus à haute bande passante

  • bus multi service

    • transactions simultanés

    • priority switching sur 3 niveaux

    • interface bus

      • packet classifier

      • 3 files paquet

  • DMA

  • deux interfaces 10/100 Ethernet MAC, UTOPIA, TDM interfaces for telephony support


Brecis1

BRECIS


Broadcom q2 2001

Broadcom (Q2 2001 -??)

  • focussé control plane au lieu de data plane

  • Mercurian SB-1250

  • deux coeurs 64bit MIPS

  • trois Gigabit Ethernet MACs

  • bus 256 octets

  • pas d’instructions spécialisées

  • cœur MIPS SB-1, jusqu’à 1 GHz

  • 4 instructions par cycle

  • pipeline entiers à 9-étages

  • pipeline flottants à 12-étages

  • 32 ko L1 cache, 4-way associative 512ko L2 cache

  • 3 on-chip ethernet MAC

  • 2 FIFOs paquet


Broadcom

Broadcom


Cisco pxf toaster2

Cisco PXF/Toaster2 (??)

  • Vrai multiprocesseur SIMD

  • utilisé dans des routeurs (Cisco 1000 Edge Service Router)

  • traitement seulement niveau 3

  • processeur ne s´occupe pas de la gestion (network management)

  • 16 processeurs dans 4 pipelines

  • deux PXF: 4*8 systolic array (entre autres)

  • processeur individuel: 2-issue VLIW

  • instructions spécials packet processing

  • mémoire hors puce (par colonne)


Cisco pxf

Cisco PXF


Clearspeed q2 2003

ClearSpeed (Q2 2003 - ??)

  • 40 Gbps data rate

  • core routers, edge routers

  • Multiple-Threaded Array Processor MTAP

    • Multiprocesseur 100-1000 éléments

      • 8 bit par élément

      • 16-64 registres

    • Chaque élément exécute le même code

    • 32 threads simultanés

  • Co-processeurs partagés

  • Bus à haute bande passante

  • Utilisateur peut ajouter co-processeurs


Clearwater q4 2001

Clearwater (Q4 2001 - ??)

  • CNP810SP

  • simultaneous multi-threading

    • 10 instructions per cycle

    • 8 threads

    • hardware multithreading (thread= mini processeur superscalaire avec register file et instruction cache separés)

    • 8 threads simultanés

    • 8 files d’instruction

    • instructions spécialisées

    • 2 address generators donc 10=8+2 issue

  • targeted to layer 4-7 processing for edge devices

  • packet rate 10 Gbps


Clearwater

Clearwater

  • Architecture

    • 64kB cache D/I sur puce

    • 9-stage pipeline

    • paquets: PMU gère et classifie en profondeur

    • 256Kbyte dual-ported on-chip memory (packet cache)

    • optimisé pour l ’allocation mémoire de la taille d ’un paquet


Cognigine rcu q4 2001

Cognigine RCU (Q4 2001 - ??)


Cognigine rcu

Cognigine RCU

  • modèle de multiprocessur distribué

  • 16 Processing Elements (Reconfigurable Communication Units RCU)

    • quatre unités parallèles

    • pipeline à cinq étages

    • chemin de données 64 bit

    • instructions pour reconfiguration dynamique (VISC)

    • Connecté par crossbar

    • connecte les RCUs de façon hierarchique -> scalabilité!

    • Support pour split transaction


Conexant q4 1999

Conexant (Q4 1999-??)

  • Architecture

    • 32 bit RISC processeur Octave

    • optimisé pour traitement des flux (instructions spécialisées)

  • traitements de la couche 2 - internetworking (AAL SAR, MPLS)

    • buffer management

    • contrôle de congestion

    • gestion de la bande passante

    • CRC & FCR (detaction des erreurs)

    • traffic shaping

  • supporte des débits de paquets jusqu ’à 2.5 Gbps


Ezchip q3 2001

Ezchip (Q3 2001 - ??)

Superpipelined

Packet flow

TOPmodify

TOPresolve

TOPparse

TOPsearch

superscalar

  • NP1 introduit en Avril 2002

  • Task Optimized Processors (TOP)

    • jeu d ’instructions spécifique

    • chemin de données spécifique

  • architecture superscalaire, superpipeliné

  • brevets sur la gestion mémoire embarqué/externe mais pas de détail disponible

  • 2004: NP-1c 10 Go plateforme


Ibm q3 2000

IBM (Q3 2000 - ??)

  • Embedded Processor Complex EPC

    • Coeur PowerPC

    • 16 processeurs programmables avec pipeline 3 étages dont 1 specialisé lookup

  • Matériel pour traitement des frames

  • Interfaces I/O

  • Coprocesseurs

    • Data store

    • Checksum

    • Enqueue

    • Interface

    • String Copy

    • Compteur

    • Policy

  • Mémoire 8KB par Protocol Processor

  • Divers mémoires internes entre 8 et 32 KB


Processeurs r seau papr 2 ue de m2 f vrier mars 2007

IBM


Intel ixp 1200 q4 1999

Intel IXP 1200 (Q4 1999-??)

  • originaire de DEC

  • Layer 2-4 processing

  • Packet rate 2.5 Mpackets/sec

  • Interface PCI

  • 6 micro-engines

    • 4 threads chacune avec registres partagés

    • Partitionnement des registres permet changement de contexte dans 1 cycle

  • 200MHz StrongARM controller

  • 64 bit IX bus

  • Matériel spécilisé pour hashage, queueing, shift/rotate en 1 cycle

  • Instructions specialisés paquet: find first bit set, barrel shift, extract byte/word

  • FIFOs pour interface avec couche MAC

  • 8KB cache data sur puce

  • 16 KB cache instruction du StrongARM

  • 4 KByte mémoire SRAM scratchpad


Intel

Intel


Lexra netvortex q2 2001 2002

Lexra NetVortex (Q2 2001 - 2002)

  • Max. 16 coeurs LX8000: des MIPS R3000 specialisés traitement réseau

  • Changement du contexte dans 1 cycle entre 8 contextes

  • Instructions spécialisées (add-complément, insertion et extraction des bit fields)

  • Instructions de branchement spécialisées (pour support control plane)

  • Processing couche 2-4, OC192

  • Support pour recupérer des paquets de la mémoire (Block Transfer Unit) via bus système

  • Multi-channel DMA controller

  • Update NVP: changement des co-processeurs, crossbar entre coprocesseurs et packet processors, hardware-manages buffers


Motorola c port q2 2000

Motorola C-Port (Q2 2000-??)

  • 16 processeurs canal: cœur RISC

  • 1 à 2 parallel serial data processors (SDP) pour la communication

  • 5 coprocesseurs

    • exécutif: coordination avec processeurs externes

    • fabric: permet d ’utiliser plusieurs C5 dans un fabric

    • table lookup: inspection et mise è jour de la table

    • queue management : gestion de la file paquet

    • buffer management : gestion rapide de la mémoire

  • trois bus internes (ensemble 60 GB/sec)


Motorola c port

Motorola C-Port


Vitesse q2 2000

Vitesse (Q2 2000-??)

  • 4 processeurs 200 MHz RISC scalaires

  • instructions spécifiques réseau

  • coprocesseurs « arrangés en flot »

    • lookup

    • classification

    • gestion de l ’ordre des paquets

    • multicast

    • gestion DMA

    • gestion des contextes

    • QoS engine


Vitesse iq2200 400 mhz

Vitesse: IQ2200: 400 MHz


Xelerated packet devices q2 2002

Xelerated Packet Devices (Q2 2002 - ??)

  • Solution à deux processeurs

  • X40 et T40

  • hardware support for Weighted Random early detection

  • fragmentation et reassemblage

  • Pipeline programmable, 10 étages

  • accessible à tous stages de pipeline

    • 384k compteurs

    • 128k pour mésurer le traffic

    • petit CAM interne

    • arbitre pour accès à CAM externe

  • chaque processeur est composé

    • d ’un classificateur pour identifier des paquets spéciaux

    • un bloc d ’action pour les traiter

  • bloc d ’action qui porte jeu d ’instructions spécialisé


Xelerated packet devices

Xelerated Packet devices


Xelerated packet devices1

Xelerated Packet Devices


Espace de solutions1

Espace de Solutions


Parall lisme

Parallèlisme


Comparaison impl mentation physique

Comparaison: Implémentation physique

  • aspects qui intéressent le client (producteur es téléphones mobiles etc.)

  • Technologie du procès

  • Taille de la puce

  • Cœur

  • Vitesse

  • Consommation

  • Disponibilité


Impl mentation physique

Implémentation Physique

  • Agere

    • technologie 0.18m, consommation 12W

    • disponible, coût environ 750$

  • Alchemy

    • soft core 266 MHz, 400 MHz, 500 MHz

    • consommation <300 mW, 500 mW, 900 mW

  • AMCC

    • technologie 0.18m, consommation 4W

    • Série nP7xxx : six EPIF-200 sur une puce

    • Disponible, prix 115 $, mise à jour AMCC jan 2002 : nP7510


Impl mentation physique 2

Implémentation Physique (2)

  • Bay

  • Brecis

    • 0.18m, 2 W consommation

    • 50 $, disponible en 2001

  • BroadCom

    • Technologie 0.15m

    • 1 GHz, 2.5 W consommation, disponible en prototype


Impl mentation physique 3

Implémentation Physique (3)

  • Cisco

  • ClearSpeed

    • 0.13m, 400 MHz, disponible en soft core

  • Clearwater

    • 0.15m, 300 MHz, 12 W consommation

    • disponibilité fin 2001

  • Cognigine

    • 0.18m, 200 MHz

    • disponible décembre 2001

  • Conexant

    • 125 MHz

    • 4.2W


Impl mentation physique 4

Implémentation Physique (4)

  • EZChip

    • arrive août 2001

    • 0.18m, collaborationavec IBM

  • IBM

    • Technologie 0.18, 20 W, 133MHz

  • Intel

    • 0.28m 200 MHz, 5W consommation

    • Disponible, coût 300$, utilisés par nombreux fournisseurs équipement réseau

  • Lexra

    • Disponible en soft core, macro RTL synthesizable

    • 0.15, 250MHz (RTL), 450MHz (hard), consommation 6.8W surface 64 mm2

    • Licence 645$+royalties per core


Impl mentation physique 5

Implémentation Physique (5)

  • Motorola

    • Utilisé par extreme networks (BlackDiamond 6800) pour paquet via SONET

    • 0.18m, 400$, update C-5e (266 Mhz), Q5

  • Vitesse

    • 200 MHz, 0.25m, 12 W consommation

  • Xelerated

    • 0.13 micro

    • Disponible avril 2002


Comparaison support logiciel

Comparaison : Support Logiciel

  • Aspects qui intéressent le programmeur des applications (et les participants des TME PAPR)

  • Compilateur

  • Système d ’exploitation

  • Bibliothèques des fonctionnalités typiques réseau

  • Simulateur


Support logiciel

Support Logiciel

  • Agere

  • Alchemy

    • Programmable en C

    • existent outils développement propres à Alchemy et aussi des autres fournisseurs

    • supporte Windows CE, Linux,VxWorks

  • AMCC

    • programmable comme 1 seule CPU logique

    • C/C++ compiler, assembler, debuggeur

  • Bay


Support logiciel 2

Support Logiciel (2)

  • BRECIS

    • Chaînes logicielles propriétaires et tiers

    • Implémentation en dur des applications réseau

    • supporte VxWorks, Linux, BSD

  • BroadCom

    • 2.5 Gbps sur layer 3-7

    • chaine d ’outils C/C++ standard à défaut des instructions spécialisées

    • support système d ’exploitation pour Linux, BSD, VxWorks

  • Cisco

    • compilateur C propriétaire, IOS système d ’exploitation propriétaire


Support logiciel 3

Support Logiciel (3)

  • ClearSpeed

    • alpha release SDE, compilateur C, assembler, debugger, profiler

    • outil visuel pour conception des applications

    • bibliothèque des fonctionnalités habituelles processing réséau

  • Clearwater

    • Compilateur en cours de développement

  • Cognigine

    • C/C++ Compiler, assembler, debugger

    • determination instructions VISC de C/C++ application

    • application level configuration tool (similaire Click??)

    • bibliothèque des fonctionnalités couche 2-7


Support logiciel 4

Support Logiciel (4)

  • Conexant

    • C compiler and debugger

    • Simulation and analysis tool

    • modular software architecture on top of TSP PortMaker

  • EZChip

    • SDE avec assembleur, debugger, simulateur

    • bibliothèques des applications

    • Développement du compilateur en cours

  • IBM

    • Assembler, debugger, simulator

  • Intel

    • ACE (voir TME)


Support logiciel 5

Support Logiciel (5)

  • Lexra

  • Motorola

  • Vitesse

    • SDE, standard high level, GNU-based

    • graphical simulation environment

    • évaluation de performance

    • bibliothèque pour fonctions typiques réseau

  • Xelerated


Sommaire

Sommaire

  • Points communs des processeurs réseau existants

    • hierarchie de processeurs et de mémoire

    • jeu d’instructions optimisé pour réseaux

    • filtrage et ordonnancement des paquets

    • architecture plus ou moins programmable afin d’adapter aux changements de protocole

    • alimentation électrique réduite

  • Disparités

    • parallèlisme massif vs. parallèlisme pipeliné

    • interconnect simple vs. interconnect compliqué

    • nombre et type des coprocesseurs

    • ...


  • Login