J.Castelo, E.Fullana 9/7/2003 TILECAL ReadOut System Diseño de un sistema de adquisición de datos entre los niveles 1 y 2 de trigger para el calorímetro.

Slides:



Advertisements
Presentaciones similares
Arquitectura RISC & CISC y DSP
Advertisements

Sistema de gestión local y remota de vídeo
Procesadores Superescalares
El modelo de Von Neumann
Bases de la programación de un PLC
DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS CHAPULTEPEC
Fermín Sánchez Carracedo Universitat Politècnica de Catalunya
Computación PROGRAMACIÓN.
RESUMEN: Softmicro de 8 bits Xilinx
Introducción a los Procesadores Digitales de Señal (DSP)
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Introducción a la programación
REPARACIÓN DE UN PC. Sistema operativo  el MS-DOS o sea el Disk Operating System  el Windows Me  el Windows 95 /98  el WINDOWS XP  el UNIX  el Linux.
EMISION MULTIPLE DE INSTRUCCIONES
Gestión de Entrada / Salida
Componentes básicos del ordenador
Composición Interna de un Procesador
Computadora Digital Arquitectura de John Von Neumann
COMPONENTES FISICOS Y LÓGICOS DE LA PC
3GIO – 3º Generación de entrada/salida Autores: Beltramo Ezequiel Santana Cabrera Bentejuí.
Microcomputadores Prof : Tatiana Marín R.. Sistema basado en microprocesador de 8 bits.
Arquitectura del Computador
ARQUITECTURA DE LOS MICROPROCESADORES DE 8 BITS
Introducción a la Ingeniería en Sistemas
2. ASYNCRONOUS TRANSFER MODE 2.1Características generales 2.2 Modelo de referencia del protocolo 2.3 Categorías de servicio ATM.
© Copyright Introducción a las Computadoras Personales Ing. Nelwi Báez P.
5º Microprocesadores para comunicaciones
Organización del Computador I Verano MIPS (1 de 2) Basado en el capítulo 3 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
Overview Sistemas Computacionales
04/02/031 INSURE ++ v6.0 Salvador Benimeli Fenollar Laboratorio de Sistemas de Información Facultad de Informática Universidad Politécnica de Valencia.
MÁQUINAS MULTINIVEL NIVEL 5 Lenguajes de alto nivel
Fecha: 10 de enero de 2009 Autor: Efrén Pérez Quintana Asignatura: Microprocesadores de comunicación.
Resultados y simulación de las pruebas en haz de los módulos de silicio del SCT de ATLAS José E. García José E. García, C. García, S. González, M. Vos.
Funcionamiento de la CPU
MICROCONTROLADORES NOCIONES BÁSICAS COMPUTO II. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
Introducción Electrónica Digital
MEMORIA RAM Concepto RAM: Siglas de Random acces Memory, un tipo de memoria a la que se puede acceder de forma aleatoria; esto es, se puede acceder a cualquier.
Versión Final del Sistema de Adquisición de Datos para el Calorímetro Hadrónico Tilecal del detector ATLAS en LHC. ROD: Diseño, Rendimiento, Tests y Producción.
INTRODUCCIÓN AL HARDWARE DE LA COMPUTADORA PERSONAL
Arquitectura y Ensamblaje de Computadores
Arquitectura de Von Neumann
Integrantes: Miriam Pastrana Brito376401ITE 5to semestre Víctor Manuel Rodríguez Bahena378087IMT 5to semestre Erendira Victoria Sánchez Montes de Oca ITE.
“Organización y Arquitectura de Computadores” William Stallings
Desarrollo de un Trigger de Muones de Bajo P T con los DSPs del Sistema de Adquisición de Datos del Calorímetro Hadrónico TileCal de ATLAS Arantxa Ruiz.
PROCESADORES DE SEÑALES DE VIDEO VSP2000 PALOMA FUENTES Microprocesadores para Comunicaciones – 5º ETSIT.
Sistemas Operativos Avanzados
1 Memorias. 2 RAM (Memoria de acceso aleatorio) El procesador puede tomar un dato que esté al principio, al medio o al final de la memoria RAM. Hardware.
TARJETAS DE RED.
Automatización Es la tecnología utilizada para realizar procesos o procedimientos sin la ayuda de las personas.
HARDWAREHARDWARE FELIX BELLA EDU ROS. INDICE 1-. INTRODUCCION 2-. FUNCIONES BASICAS A) LA UNIDAD CENTRAL (CPU) B) LA MEMORIA PRINCIPAL C) DISPOSITIVOS.
NOCIONES BÁSICAS COMPUTO II
ARQUICTECTURA DE SERVIDORES
COMPONENTES DEL PC LEONARDO OLIVARES VILLA MATEO CARDONA ARENAS.
Son los atributos de un sistema que son visibles para un programador, es decir aquellos atributos que impactan directamente en la ejecución lógica de un.
Principio unidad 1.
     Jerarquía de memoria.
PICOBLAZE RESUMEN.
RESUMEN: Softmicro de 8 bits Xilinx
INTRODUCCIÒN MICROCONTROLADORES
DISCOS RAID (Redundant Array of Independent Disks)
REPUBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD ALONSO DE OJEDA FACULTAD DE INGENIERÍA ESCUELA DE COMPUTACIÓN ING. PROF. LEONEL SEQUERA MEMORIAS.
Tema 1- Generalidades sobre Control Digital
I Kamilo Osorio Restrepo 8°B Juan David Velez. TIPOS DE PROCESADORES Y SUS FUNCIONES PRINCIPALES CISC. Complex Instruction Set Computing. Posee un número.
 PRESENTADO POR : ANDRES MAYORGA DANIELA PAEZ VEGA.
Actividades en Electrónica del grupo TileCal Alberto Valero Pablo Moreno.
CONIMEIRA XVI Bootloaders para microcontroladores PIC de Microchip Presentan: Ing. Ricardo Guadrón Tec. Juan José Guevara Escuela Especializada en Ingeniería.
Estado de la Electrónica de ACORDE. Modo de operación Normal del single muon (L0) Modo de operación Toggle del single muon (se entrega el reloj del LHC.
Unidad de Control Ubicación: Es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Realizar.
SISTEMAS ELECTRÓNICOS 3ºGIERM1 1. Introducción 2. Tipos de datos 3. Estructuras típicas de programación 4. Manejo de bits Tema 7. Programación de microcontroladores.
Transcripción de la presentación:

J.Castelo, E.Fullana 9/7/2003 TILECAL ReadOut System Diseño de un sistema de adquisición de datos entre los niveles 1 y 2 de trigger para el calorímetro hadrónico de ATLAS en LHC Jose Castelo, Esteban Fullana XXIX Reuniones Bienales de Física y Química Madrid, 9 de Julio 2003

J.Castelo, E.Fullana 9/7/2003 Sumario  Introducción al sistema de adquisición RoD del calorímetro hadrónico tilecal

J.Castelo, E.Fullana 9/7/2003 ATLAS TDAQ: Sistema de disparo y adquisición de datos  Decisión de LVL1 es tomada con los datos del calorímetro (basta granularidad) y los datos de trigger de las cámaras de muones. El “buffering” de eventos se hace en la electrónica dentro del detector (FEB).  Decisión de LVL2 se realiza teniendo en cuenta Regiones de Interés ROIs (hasta un 4% del evento completo) con granularidad total y combinando información de todos los detectores. El “buffering” se realiza en RoBs.  El EF refina la selección, puede realizar la reconstrucción de eventos con granularidad total. El “buffering” se hace en EB y EF. RODs

J.Castelo, E.Fullana 9/7/2003 Sistema de adquisición de datos RoD Flujo de datos y particiones de disparo (TTC) 9856 canales del calorímetro. (Dos fibras/drawer ch con información redundante) Usando la nueva tarjeta más integrada: sólo 8 RODs/partición. Total 32 RODs en vez de 64 (especificación de TDR)

J.Castelo, E.Fullana 9/7/2003 Instalación Tilecal RoD: LEVEL 1 of USA15 USA15 Detector Cavern UX15 Level racks Level racks USA15 Level 1 Of USA 15 Tilecal 2 rows: 19 and 16 7 x 52 U high racks/row Row 19 Row 16

J.Castelo, E.Fullana 9/7/2003 Esquema de Particiones TTC  Número de particiones TTC: 4  Organizados en  [0, 2]: EB(<0), CB(<0), CB(0), EB(0)  Esta distribución nos permite trabajar con independencia en los barriles del calorímetro.  Cada RODcrate conforma una Partición TTC con un TBM (Trigger and Busy Module) cada una

J.Castelo, E.Fullana 9/7/2003 Módulo ROD final: Funcionalidades básicas  Flujo de datos: Procesado de datos: Envío y procesado de Raw Data desde FEB a los ReadOut buffers (ROB) con una frecuencia de eventos de L1A de 100KHz. Es decir, se dispone de 10s para procesar un total ~ canales (celdas) de datos digitalizados de un par PMT/centelleador. Detección de Errores: Cada módulo debe chequear BCid y EvtID con los recibidos con los datos de FE. También se comprueban los datos para detectar alineación y consistencia (paridad, CRC). Enlaces/links de datos:  Entrada: Fibra óptica. Enlaces integrados basados en G-link como capa física.  Salida: Fibra óptica. Basados en estandar s-link, y con formato de datos estándar de atla (DAQ-1 req.)  Interfase con Procesador central de trigger (CTP): TRIGGER o DISPARO: Las señales de TTC serán recibidas por cada módulo con una latencia de ~2s para habilitar de sincronismo al sistema (EvtID, TType, BCx). Generación de señal OCUPADO/BUSY: Retroalimentación al CTP para parar la generación de triggers de nivel 1. Cada unidad de proceso genera un Busy que es una función OR de todos los BUSY de una partición.  Control y Monitoreo de información: Provee acceso a la tarjeta sin introducir tiempos-muertos al flujo de datos. Cada Placa madre ROD provee de acceso VME en modo esclavo comandado por el Controlador de la Crate ROD. Configura y hace booting de firmware (FPGAs y DSPs) así como de constantes de calibración y otros parámetros. 2 Prototipos disponibles en Septiembre de 2003

J.Castelo, E.Fullana 9/7/2003 Sumario Introducción al sistema de adquisición RoD del calorímetro hadrónico tilecal  Estudio de algoritmos de reconstrucción on-line

J.Castelo, E.Fullana 9/7/2003 Introducción  4 Algoritmos han sido estudiados: Ajuste de la señal (FIT). Actualmente no implementable debido al alto coste computacional iterativo. Algoritmo de Filtrado Óptimo (Optimal Filtering OF). Algoritmo de Filtrado Plano (Flat Filtering FF). Algoritmo de Muestra Máxima (Maximum Sample MS).  Se han aplicado a datos reales del testbeam de Julio 2002

J.Castelo, E.Fullana 9/7/2003 Algoritmo de Ajuste o FIT CIS NTUPLE Reconstrucción de la forma de onda para cada canal y ganancia Ajuste a una función analítica con 4 parámetros como salida 45·2 conjuntos de 4 parámetros Ganancia Canal {S’i} f(t) Ajuste evento a evento con 2 parámetros como salida y un Chi2 E & τ χ2χ2 x x x x x x x x x

J.Castelo, E.Fullana 9/7/2003 Algoritmo de Optimal Filtering (OF) {S’i} Gain Channel f(t) f’(t) 45 conjuntos de matrices Rij CIS NTUPLE PEDESTAL EVENTS 45·2 conjuntos de pesos de Optimal Filtering. aiai bibi Ch & g bibi {S’i} aiai E χ2χ2 τ 45·2 conjuntos de 4 parámetros x x x x x x x x x

J.Castelo, E.Fullana 9/7/2003 Algoritmo de Flat Filtering (FF) {S’i} Ganancia Canal El algoritmo empleado actualmente en el testbeam. No hay información del tiempo ni factor de calidad de la reconstrucción x x x x x x x x x

J.Castelo, E.Fullana 9/7/2003 Algoritmo de Máximo Sample (MS) {S’i} Ganancia Canal Extremadamente sencillo y rápido !! No hay información del tiempo ni factor de calidad de la reconstrucción Pero demasiado sensible a la variación de fase x x x x x x x x x

J.Castelo, E.Fullana 9/7/2003 Características de los datos de CIS  Amplia gama de cargas inyectadas  Disponibilidad de muestras (samples) para las dos ganancias.  Para cada carga hay un barrido de fases en pasos de (7* ns).  Amplitud y fase pueden ser fácilmente calculados desde la NTUPLE.

J.Castelo, E.Fullana 9/7/2003 Resolución de la Amplitud vs. intervalo de fase permitida Desfase máximo esperado en ATLAS ~3ns => OF~FIT!!!

J.Castelo, E.Fullana 9/7/2003 Reconstrucción de fase (3pC)

J.Castelo, E.Fullana 9/7/2003 Reconstrucción: Ruido (I) Reconstruction carried on with empty events Flat Filtering Optimal Filtering

J.Castelo, E.Fullana 9/7/2003 Reconstrucción: Ruido (II) Reconstruction carried on with empty events

J.Castelo, E.Fullana 9/7/2003 Conclusiones del estudio de algoritmos  OF y SM son muy sensibles con la fase pero pueden ser tan buenos como un ajuste dentro del intervalo adecuado de fases.  OF tiene una resolución en la reconstrucción temporal de menos de 1 ns.  OF reduce el ruido electrónico en un factor dos. Algoritmo ONLINE actual: Optimal Filtering

J.Castelo, E.Fullana 9/7/2003 Sumario Introducción al sistema de adquisión RoD del calorímetro hadrónico tilecal Estudio de algoritmos de reconstrucción on-line  Rendimiento e implementación de algoritmos de reconstrucción en procesadores digitales de señal (DSP)

J.Castelo, E.Fullana 9/7/2003 Unidad de Proceso (PU): Texas C6202 DSP  DSP: 250 MHz TMS320C6202 DSP con 256K Bytes de memoria de programa interna y 128K Bytes de memoria de datos.  Input FPGA: recibe FEB data e información de TTC. Chequea la consistencia de los datos y los direcciona a la Memoria de doble-puerto.  Dual Port Memory: Los eventos son almacenados en esta memoria (128), disponible para el DSP como memoria externa asíncrona de sólo lectura. También se usa para inicializar el programa de la memoria interna del DSP (booting) después de un reset.  Output FPGA: Depués de procesar el evento se almacena en la memoria FIFO de salida con el formato de datos adecuado. También provee de una FIFO para almacenar histogramas en tiempo real y es responsable del “booting” VME de la Input FPGA y el DSP.

J.Castelo, E.Fullana 9/7/2003 Arquitectura interna del DSP  Arquitectura Harvard: Memoria de Programa y Datos accessibles simultáneamente.  FCLK = 250Mhz. Cycle time = 4ns MIPs  Data/Program Memory: 1Mbit (128kbyte)/ 2Mbit (64k 32bits)  Canales DMA : 4  EMIF & HPI: 32bits  McBSP: 3  Timers: 2 (32 bit)  VCORE: 1.8v / VI/O: 3.3v  8 ALUs independientes. Arquitectura Load-Store con 32 registros de propósito general de 32- Bit (dos bancos de 16). Todas las instrucciones son condicionales

J.Castelo, E.Fullana 9/7/2003 Operación de la PIPELINE  Característica VLIW (Very Long Instruction Word): Código de instrucción de 256 bits (8 instrucciones de 32 bits).  La Pipeline puede atender 8 intrucciones paralelas por ciclo. Las intrucciones paralelas, avanzan simultáneamente durante la misma fase pipeline.  El código en Ensamblador debe de ser optimizado en este punto para que todas las instrucciones parezcan ser ejecutadas en 1 ciclo máquina evitando “pipeline stalls”  Se contruyen Gráficos de Interdependencia Fases Pipeline: Fetch: fijo, 4 ciclos Decode: fijo, 2 ciclos Execute: variable, 1-10 ciclos

J.Castelo, E.Fullana 9/7/2003 Implementación de Optimal Filtering  Calculamos Energía, , y factor de calidad  2.  La implementación de hace considerando 7 Muestras de 10 bits y considerando el mismo set de coeficientes para todos los canales (misma tabla de constantesde calibración).  Los cálculos son realizados con operaciones sobre una ALU entera, siempre intentando sacar la máxima resolución/precisión en todas las operaciones (coeficientes en formato Q15, operaciones en 32bits, excepto multiplicación (16bits), etc...)  Código en C y en Ensamblador han sido desarrollados para comparar el rendimiento del compilador con estos dos lenguajes. MSBLSB 0P Data ch 1 (10 bits) Data ch 2 (10 bits) Data ch 3 (10 bits)

J.Castelo, E.Fullana 9/7/2003 Perfilando compilación con “Code Composer v2”  Dos formas rápidas de desarrollar código: Ensamblador Programación en C/C++  Opción Code Composer v2: PBC Option (Profile Based Compilation) Nos ofrece la posibilidad de elegir entre el tamaño del código y el rendimiento para cada función de nuestra aplicación dentro de diferentes opciones de compilación. Tamaño Programa (código máquina) aumenta => Velocidad de ejecución disminuye. Disponibilidad de Memoria de programa vs. Velocidad de ejecución Este programa permite compilar el código con diferentes opciones y comparar el resultado.

J.Castelo, E.Fullana 9/7/2003 Gráfico de rendimiento en 'C' Flags de compilación para "Maximum Speed“: -o3 -oi0

J.Castelo, E.Fullana 9/7/2003 Gráfico de rendimiento de “Ensamblador” Para compilación de ensamblador todas las configuraciones son idénticas como era de esperar (982 cycles)

J.Castelo, E.Fullana 9/7/2003 C vs. Assembler  Algoritmo Energy//2 para 45 canales y 7 muestras de 10bit. Comparativa de de compilación para la opción de “best speed performance profiling”

J.Castelo, E.Fullana 9/7/2003 Conclusiones de la implementación del algotimo de Filtrado Óptimo  Podemos procesar en ensamblador un EB (32ch) y un CB(45ch) en menos de 10s (lvl1 100kHz rate) con esta Unidad de proceso  La unidad de proceso actual contiene 2 DSPs con lo que la capacidad de proceso se multiplica directamente por 3/DSP, a parte de una controladora de DMAs mejorada para una E/S más rápida y mejor set de instrucciones (ej: MPY2 multiplicación de 32bits).  Esto nos permite reducir el número de unidades de proceso, debido a una mejor relación de MIPs/€ o bien, probar algoritmos online con mayor carga computacional (ajustes, algoritmos adaptativos,...).  Estudio de resolución vs. Coste computacional: Usando 5 muestras en vez de 7 el alogoritmo sería 7/5 veces más rápido. Procesar ~ canales online en menos de 10  s

J.Castelo, E.Fullana 9/7/2003 Sumario Introducción al sistema de adquisión RoD del calorímetro hadrónico tilecal Estudio de algoritmos de reconstrucción on-line Rendimiento e implementación de algoritmos de reconstrucción en procesadores digitales de señal (DSP)