Download SoC SoC
Document related concepts
no text concepts found
Transcript
Estrategias de almacenamiento En función de la política de almacenamiento utilizada, los conmutadores pueden clasificarse en tres grandes grupos: Output queueing (N+1)V Shared queueing 2NV Input queueing 2V V N Write 1 Read N Write So 1 Write N Read C 1 Read En los siguientes apartados se presentarán en detalle los aspectos relativos a la implementación de diferentes conmutadores que siguen cada una de estas políticas de almacenamiento. Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Métodos de eliminación del bloqueo HOL Política de colas virtuales de salida (Virtual Output Queues VOQ): Esta política se basa en que cada uno de los puertos de entrada mantenga una cola independiente para cada uno de los puertos de salida. – – Elimina el bloqueo HOL, siendo capaz de proporcionar un throughput del 100%. Sin embargo, un puerto de entrada puede recibir el acceso a más de un puerto de salida, por lo que puede producirse una ineficacia en el uso de los puertos de salida que el algoritmo de arbitraje debe evitar. 2 1 2 So 2 1 2 C 2 2 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 1 Multicast Una fuente → Múltiple destinos Implementación. Técnica 1 – Una copia – Múltiples punteros – Lógica de control compleja Implementación. Técnica 2 – Múltiples copias – Único puntero por copia – Lógica de control sencilla Conmutación del paquete – Envío simultáneo de todas las copias – Envío de cada copia independientemente So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Calidad de servicio (QoS) Se dice que una red o un proveedor de servicios ofrece QoS cuando se garantiza el valor de uno o varios de los parámetros que definen la calidad de servicio que ofrece la red (ancho de banda, retardo, jitter, probabilidad de pérdidas). Si el proveedor no se compromete en ningún parámetro el servicio que ofrece es best effort. Los aspectos fundamentales necesarios para proporcionar un control del tráfico y garantizar así diferentes calidades de servicio a diferentes tipos de tráfico en un router IP son: – Poder garantizar un ancho de banda máximo – Poder garantizar un ancho de banda mínimo – Poder garantizar un retardo máximo So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 2 CSIX – Trama CSIX (CSIX frame): Cabecera base (Base header): Extensión de cabecera (Extension header): – Variable en función del tipo de trama So C So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga CSIX Extensión de cabecera (Extension header): – Trama Unicast – Trama Broadcast: Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 3 GigaStream© Índice de la presentación: – Descripción de la arquitectura Introducción al sistema Configuración y topologías del sistema – Configuraciones básicas – Descripción funcional Operación en Modo CSIX Traffic allocation and QoS Sistema de colas en el Ingress Algoritmos de scheduling – Descripción de bloques So C So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Introducción al sistema Características del sistema: – Compuesto de dos chips (CMOS 0.18um) Transceiver VSC872: – Dos interfaces de 32-bits a 166Mb/s – 8 enlaces serie a 2.5 Gb/s Matriz de conmutación VSC882: – Matriz de conmutación de 16x16 – Enlaces de 2.5 Gb/s Parallel Interface Queuing system Serial Interface Parallel Interface VSC872 VSC882 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 4 Diagrama de bloques JTAG Interface VSC870_block CSIX_block cFrame Drop side Transmit Interface iFrame CSIX Ingress Interface CSIX Ingress (IX) bFrame CSIX Ingress CSIX Ingre FIFO ss (IF) CSIX Frame Parsing (CP) Ingress Buffer Manager (IM) Ingress Buffer (IB) Scheduler CRQ Generator (SC) Fabric Data Fetch (FF) JTAG sFrame Fabric Frame Generation (FG) So Serialize Deserialize (SD) Egress Buffer Manager (EB) Drop side Receive Interface CSIX Egress Interface (EX) CSIX Egress FIFO (EF) CSIX Frame Generation (CG) Egress Buffer (EB) Fabric Data Enqueue (FE) Fabric Frame Parsing (FP) C CPU CPU Interface Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Modo de operación CSIX (I) Funcionamiento en Modo CSIX: – – – CSIX: Interfaz estándar para la comunicación entre procesadores de red y sistemas de conmutación. Este interfaz asume: Disponibilidad de encolamiento en el sistema de conmutación Soporte de clases de servicio en el sistema de conmutación Transmisión segmentada de paquetes de longitud fija Segmentación y reensamblado de paquetes en el procesador Características del transceiver en modo CSIX: Soporte de dos interfaces CSIX clase B con un throughput máximo de 5.3Gb/s (166Mb/s * 32bits). Esto da la posibilidad de soportar tráfico OC-48. Trama CSIX (CSIX frame): Información relativa a la trama de datos Información relativa al control de flujo Control de errores mediante 2 bytes de paridad vertical Máximo payload permitido de 256 bytes – VSC872: Máximo payload de 124 bytes So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 5 Modo de operación CSIX (II) Funcionamiento en Modo CSIX: – Combinado con el TeraPower chipset nos permite la realización de un sistema de conmutación multipuerto y multi-capa GigaStream Fabric core (incl. Protective switch core) VSC882 devices High-Speed Serial Links / Backplane High-Speed Serial Links / Backplane Fabric VSC872 Fabric VSC872 CSIX C P U TCL TTM TeraPOWER SRAM GMII/MII/FC0 C P U SRAM TCL S DRAM TTM TeraPOWER C P U SRAM MANAGEMENT BUS UTOPIA So S DRAM TTM C P U GigaStream Fabric CSIX TeraPOWER TCL OPEN BUS tm TTM TeraPOWER CSIX S DRAM OPEN BUS tm S DRAM OPEN BUS tm CSIX OPEN BUS tm Posibilidad de: - Sistema IP - Sistema ATM - Sistema GbE - Sistema de Fibra Óptica - Sistema combinado: IP/ATM/GbE/FC POS-PHY TCL GMII/MII/FC0 2 XMAC II/ 24-port 100 FDDI ATM over SONET OC-48 PoS OC-48 GigaPOWER/ 24port 100 FDDI XCVRS XCVRS XCVRS XCVRS C SRAM MANAGEMENT PROCESSOR SUBSYSTEM Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Configuración y topologías del sistema Configuración del VSC872: – – – El VSC872 puede configurarse como uno o dos interfaces de 32-bits La memoria interna y los enlaces serie pueden distribuirse de diferente manera para proporcionar distintos anchos de banda Existen cuatro posibles configuraciones: Queuing system CSIX interface Serial Interface CSIX interface Queuing system CSIX interface Double CSIX Mode Single CSIX Mode 4 Queuing system CSIX interface 4 Serial Interface CSIX interface So Serial Interface Serial Interface Queuing system C 4 2x2 4 Sub-Switching Mode Buffer Mode Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 6 Configuraciones básicas (I) Topología Simple etapa con conexión directa: – Configuración máxima de 4 x 4 Configuración 2 x 2: único VSC872 con funcionamiento en modo Sub-Switching Queuing system CSIX interface CSIX interface So 2x2 VSC872 2x2 Non-Blocking Switch – Configuración 4 x 4: conexión mediante 2 x VSC872 No existe problemas de contención Queuing system CSIX interface CSIX interface Queuing system 2x2 CSIX interface 2x2 C CSIX interface 4x4 Non-Blocking Switch Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Configuraciones básicas (II) Topología Simple etapa con matriz de conmutación: – Para configuraciones superiores a 4 se requiere una matriz de conmutación para configurar un sistema no bloqueante – Configuración máxima de 32 x 32 interfaces CSIX – Posibilidad de escalado mediante el uso en paralelo de varias matrices de conmutación Aumento del speed-up Æ reducción de la latencia del sistema High-speed serial link backplane interconnect 32 bit CSIX user interface 32 bit CSIX user interface 32 bit CSIX user interface 32 bit CSIX user interface VSC872 VSC872 So 16 x 16 1,2 or 4 parallel VSC882 32 bit CSIX user interface 32 bit CSIX user interface C VSC872 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 7 Configuraciones básicas (III) Diferentes configuraciones para sistemas con 8, 16 y 32 puertos 8x8 8x8 16 x 16 16 x 16 32 x 32 1 x VSC882 4 x VSC882 1 x VSC882 8 x VSC882 8 x VSC882 5 Gb/s serial pipe 10 Gb/s serial pipe 2.5Gb/s serial pipe 20Gb/s serial pipe 10Gb/s serial pipe 2 CSIX per VSC872 1 CSIX per VSC872 2 CSIX per VSC872 1 CSIX per VSC872 2 CSIX per VSC872 Chip count: 4 + 1 Chip count 8 + 4 Chip count 8 + 1 Chip count 16 + 8 Chip count 16 + 8 VSC872 #1 VSC872 VSC872 #1 VSC882 16x16 VSC872 #1 VSC882 16x16 #8 C So C VSC872 8 #1 8 VSC872 8 VSC882 16x16 VSC872 #4 So VSC872 #16 8 VSC882 16x16 #16 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga GigaStream© Índice de la presentación: – Descripción de la arquitectura Introducción al sistema Configuración y topologías del sistema – Configuraciones básicas – Descripción funcional Operación en Modo CSIX Traffic allocation and QoS Sistema de colas en el Ingress Algoritmos de scheduling – Descripción de bloques Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 8 Descripción funcional Operación en Modo CSIX: – Varios formatos de trama – Tráfico soportado: Unicast Multicast/Broadcast Flow control Formato CSIX Formato Interno Formato fabric – Uso de lookup-table Parallel Interface Queuing system – Tamaño de tramas: Múltiplos de 4 bytes Extensiones de cabeceras Buffer interno de tamaño fijo: Parallel Interface So Serial Interface 40-92 96 C 96-124 128 104-132 VSC872 – 256-bits (32 bytes) Cframe size Iframe size VSC882 Sframe size 48-100 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Traffic Allocation and QoS Dos categorías de tráfico: HP (single class) y LP (7 classes) – HP: gestionado por prioridad rotativa – LP: gestionado por prioridad rotativa con peso Unicast vs. Multicast: – Programable en 32 niveles: Nivel 0 Unicast Higher priority Transceiver chips Central switch chip Shared High-Priority Traffic Round Robin 1 2 CSIX_0 Shared 7 High-Priority Traffic CSIX_1 So HP Traffic Weighted Round Robin Unicast traffic sharing destination egress CSIX non-HP Traffic Weighted Round Robin Multicast traffic C Egress CSIX Round Robin 1 2 7 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 9 Sistema de colas en el Ingress Uso de colas virtuales a la salida Unicast: • Eliminación de HOL • Dos clases con prioridad estricta Unicast VOQ 16X High-Priority Traffic Weighted Round Robin Weighted Round Robin Multicast: • Eliminación de HOL • Dos clases con prioridad estricta • Sólo se almacena una copia de la trama Multicast en memoria • Control de flujo interno en VOQ Multicast 1 Unicast traffic 2 So 7 CSIX user i/f Multicast VOQ Multicast Queues 16X High-Priority Traffic Multicast traffic Weighted Round Robin 1 1 2 2 7 C 2Gb/s serial link Weighted Round Robin 7 Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Algoritmos de Scheduling (I) El Scheduling en el sistema se realiza en dos niveles: – Nivel central en la matriz de conmutación: Soporte de dos niveles de prioridad estricta Iterative matching scheduling: – En primer lugar se gestionan las peticiones de alta prioridad – Pipeline: Fase de Grant y fase de Accept Clock 0 Clock 1 Clock 2 Grant 0 Accept 0 Ireation finish 0 Grant 1 Clock 4 Clock 5 Accept 1 Ireation finish 1 Grant 2 So Clock 6 Clock 7 Accept 2 Ireation finish 2 C Grant 3 Grant functions Arbitrate across different ingress Accept functions Iteration finish Arbitrate across different grant CRQ_ingress_0 Grant_egress_0 CRQ_ingress_15 Grant_egress_15 Ingress pointer Egress pointer Update ingress pointer Update egress pointer Send ACK & Destination to ingress Iteration 1 Iteration 2 Iteration 3 Iteration 4 If accept, send ACK and destination port back to ingress. Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 10 Algoritmos de Scheduling (II) Local scheduler: – Situado en el transceiver – Utiliza dos mecanismos para distribuir el ancho de banda: Generador de CRQs Selección de colas – Generador de CRQs: Reserva ancho de banda basándose en la frecuencia de peticiones de conexión enviadas a la matriz de conmutación. “Entre más pido más posibilidades hay”. El ancho de banda se comparte entre los tráficos Unicast y Multicast/Broadcast Esta generación de CRQs depende de: So – Modelo de asignación de tráfico: HP y LP – HP: Siempre que haya tráfico U/M HP se genera un CRQ – LP: Unicast + Multicast Æ Credit Packet – Número de células disponibles en la cola y número de VSC882 en paralelo, con lo que se consigue una distribución de cargas (Load Balancing) C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Algoritmos de Scheduling (III) Distribución de cargas (Load Balancing): – Se aplica en configuraciones con más de un plano de conmutación – Configuración máxima soportada: 8 planos VSC882 Filosofía: • Pedir en función del nivel de llenado en las colas Detalles: • Influencia del número de tramas en la cola • Necesidad de un mecanismo de ordenamiento en el Egress Ingress Buffer CSIX Egress Buffer So CSIX Scheduler Port 0 Scheduler Scheduler Ingress Buffer C Egress Buffer CSIX CSIX Port 15 Scheduler Multiple switch planes Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 11 Diagrama de bloques JTAG Interface VSC870_block CSIX_block cFrame Drop side Transmit Interface CSIX Ingress Interface CSIX Ingress (IX) iFrame Ingress Buffer Manager (IM) bFrame CSIX Ingress CSIX Ingre FIFO ss (IF) CSIX Frame Parsing (CP) Ingress Buffer (IB) Scheduler CRQ Generator (SC) JTAG sFrame Fabric Frame Generation (FG) So Fabric Data Fetch (FF) Serialize Deserialize (SD) Egress Buffer Manager (EB) Drop side Receive Interface CSIX Egress Interface (EX) CSIX Egress FIFO (EF) CSIX Frame Generation (CG) Egress Buffer (EB) Fabric Data Enqueue (FE) Fabric Frame Parsing (FP) C CPU CPU Interface Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Trama SDH Punteros POH RSOH Contenedor MSOH Tara de la sección de regeneración Punteros Tara de la sección de multiplexación So Tara de trayecto Contenedor C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 12 Célula ATM Cabecera HEC – Célula: 53 bytes – Cabecera: 4 bytes – Head Error Control (HEC): 1 byte – Aleatorización Carga útil So C So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Especificación Transceptor ATM sobre SDH (STM VC-16c) Especificación – – – – – – – – 2.48832 Gbps 155,52 MHz Ancho del bus16 bits Funciones de la subcapa de convergencia Función Add-Drop Estrategias de almacenamiento Adaptación de dominios de reloj UTOPIA Plataforma FPGA Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 13 Architecture RSOH MODULE POH MODULE SELECTION AND TREATMENT MODULE BUFFER BUFFER FIFO MSOH MODULE POH MODULE CELL SELECTION MODULE MSOH MODULE AU-P RSOH MODULE AU-P INPUT MODULE OUTPUT MODULE (FIFO) So INPUT MODULE (FIFO) C & M UNIT Procesado de la trama SDH Rx Procesado de la célula ATM Procesado de la trama SDH Tx Módulos de entrada y salida Módulos Buffer/FIFO Módulo de configuración y mantenimiento C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga Direcciones web Primitivas IP – www.xilinx.com → Products & services → IP Center → Third Party IP cores → “SDH” – www.paxonet.com → Products → Core EI IP Cores CORE EITM STS-48 / STM-16 Framer (CC352) CORE EITM STS-48 / STM-16 Path Processor (CC322) CORE EITM ATM Cell Processor (CC300) CORE EITM Cell FIFO (CC171) CORE EITM UTOPIA LEVEL 2 (CC143) CORE EITM UTOPIA LEVEL 3 (CC145) Protocolos y plataformas – – – – – – – – www.opencores.org (Wishbone) www.arm.com (AMBA) www.ibm.com (Coreconnect) www.ocpip.org (Open Core Protocol) www.altera.com (Systems on a Programmable Chip) www.ti.com (OMAP) www.philips.com (Nexperia) … So C Diseño de Sistemas en Chip (SoC), 5º - Rubén Arteaga 14