Los Procesadores CORTEX M4 Y CORTEX M7 en el PROCESAMIENTO DIGITAL de SEÑALES

Documentos relacionados
Sistemas de 32 bits. Panorámica actual del mercado de los sistemas embebidos. Sistemas Embebidos, S.A.

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

FUNDAMENTOS DE COMPUTACION INVESTIGACION PROCESADORES DIANA CARRIÓN DEL VALLE DOCENTE: JOHANNA NAVARRO ESPINOSA TRIMESTRE II

Aplicaciones M2M, monitorización y control remoto con TSmarT

Investigación y Desarrollos en Open Hardware

1. Introducción a la Arquitectura de Computadoras

PROGRAMA DE ESTUDIO. Nombre de la asignatura: MICROPROCESADORES Y MICROCONTROLADORES. Horas de Práctica

Arquitectura de Computadores II

TRAYECTO SISTEMÁTICO DISEÑO DE SISTEMAS EMBEBIDOS

Qué es un Microcontrolador?

Sist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.

ANEXO CONVOCATORIA 256/2016 RENGLONES

Introducción a la arquitectura de computadores

PROCESADORES. Existen 3 tipos de procesadores: DE GALLETA, DE PINES Y DE CONTACTO. DE GALLETA: se utilizaban en las board en los años 80 y 90.

FUNCIONAMIENTO DEL ORDENADOR

COMPUTADORAS DIGITALES

3 SISTEMAS DE PROCESAMIENTO DIGITAL DE SEÑALES. ha desarrollado durante los últimos 30 años gracias a los avances tecnológicos de

Int n roduc u ción n a DS D P P Pa P r a te e 1 I g n.. Lu L ci c o J. J. Marti t nez Garbino luci c ojmg@ca c e.c. n c ea.g. ov. v a.

Soluciones de Conectividad Wi Fi de bajo consumo Microchip ZeroG Wireless...

1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura

Tema: Microprocesadores

Sistemas embebidos basados en FPGAs para instrumentación

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

5. Microcontroladores de 32 bits. (C) 2007 Ibercomp S. A.

Arquitectura de computadoras

TEMA 1: Concepto de ordenador

Organización del Computador I. Introducción e Historia

USB232. Hoja de datos

Guia para examen de Sistemas Embebidos I Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes

Nombre de la asignatura: Arquitectura de Computadoras. Créditos: Aportación al perfil

Terminal Industrial de Mano (TIM)

Introducción al procesamiento digital de señales en tiempo real

ACER SKU: DT.B15AL.004 EAN: Principales características:

Arquitecturas vectoriales, SIMD y extensiones multimedia

CAPITULO 1 INTRODUCCION AL PROYECTO

TARJETA DE ADQUISICIÓN DE DATOS USB TAD U B Bits

Arquitectura del PLC. Dpto. Electrónica, Automática e Informática Industrial)

Cap. 1. Introducción a la Arquitectura de Dispositivos Móviles

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

PROCESAMIENTO DIGITAL DE SEÑALES TRABAJO FINAL PROFESOR: CRISTIAN FILTRO PASA BAJAS PARA SEÑAL DE SENSOR DE TEMPERATURA LM35

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

INEL 4206 Microprocesadores Texto: Barry B Brey, The Intel Microprocessors: 8va. Ed., Prentice Hall, 2009

Introducción. El Procesamiento Digital de Señales: Áreas de trabajo

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

Características técnicas del firmware de la Computadora Industrial Abierta Argentina

Características de los Canales de E/S

Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial

INDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

Redes de nivel de campo

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Arquitecturas DSP. Phil Lapsley, Jeff Bier, Amit Shoham, Edward A. Lee DSP Processor Fundamentals. Architectures and Features IEEE Press 1997

Procesador Concepto Tipos Velocidad de proceso Características funciones aritmético- lógicas y de control

8.3. Introducción a las E/S del sistema

Lenguaje binario. Código ASCII. Medidas de la información

MICROCONTROLADORES: MIGRACIÓN A ARQUITECTURAS DE 32 BITS.

DSPs. Aplicaciones. Se utilizan para comunicaciones mediante

Institución Educativa Distrital Madre Laura Tecnología e Inform ática GRADO 7

DSPs y la Electrónica en Automoción

VOCABULARIO DEL HARDWARE. Docente Yeni Ávila

Hoja de Datos NoMADA Advance [DAT001A NoMADA Advance 02/16]

INFORMATICA III. Capítulo I: Plataformas

PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERIA ELECTRICISTA ASIGNATURA: SISTEMAS ELECTRÓNICOS DIGITALES CÓDIGO: 0468

Principios básicos de PLC y familia DirectLogic

Arquitectura de Computadoras. Anexo Clase 8 Buses del Sistema

UNIVERSIDAD RICARDO PALMA

INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos

Visión 360º y análisis transversal del desempeño de cada unidad de negocio

Tema 15 ELECTRÓNICA DIGITAL. PROCESADORES DIGITALES (PARTE 2A) Arquitecturas Harvard y Von Neumann. Tipos de procesadores digitales

PROGRAMA ANALÍTICO DE ASIGNATURA

Redes de Datos. Tema XI: Redes Inalámbricas WPAN

Tema 1: Arquitectura de ordenadores, hardware y software

Sistemas de Computación

Discusión. Modelo de una compuerta. Arquitecturas de Computadores Prof. Mauricio Solar. Temario. ...Introducción

IT Essentials I: PC Hardware and Software

INFORMATICA III. Capítulo I: Plataformas

Tipos de Dispositivos Controladores

TEMA III: OPERACIONES CON LOS DATOS

Tecnologías y Arquitecturas

Ahora veamos algunos de los cables más comunes para conectar los dispositivos a nuestra PC. 1- Cable de power, del toma eléctrico al CPU.

El computador. Miquel Albert Orenga Gerard Enrique Manonellas PID_

La Eficiencia y el control en VUESTRAS manos. Controladores IQ4E e IQECOs

1-Introducción. KIT ARM- Ténicas Digitales II - Ing. Ruben M. Lozano /9

Manejo de Entrada-Salida. Arquitectura de Computadoras

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Unidad I: Organización del Computador. Ing. Marglorie Colina

Estructura de un Ordenador

Fundamentos de Hardware: Arquitectura de un ordenador

Pliego de prescripciones técnicas para contratar, mediante procedimiento abierto, el suministro de ordenadores y pizarras digitales para diversos

Informática Electrónica Manejadores de Dispositivos (Device Drivers)

Tutoría 2. Banco de memoria de 8 y 16 bits (8086)

Departamento Ingeniería en Sistemas de Información

COMPUTADORA DE ESCRITORIO AVANZADA CODIGO ETAP: PC-004. Consideraciones Especiales para PC definidas en CESP-001, CESP-002, CESP-005, y de

Fechas Mes/año Clave Semestre 8 a 10

INDICE Capitulo 1. Álgebra de variables lógicas Capitulo 2. Funciones lógicas

Arquitectura de Computadores. Tema 15. Buses

Guía de selección de hardware Windows MultiPoint Server 2010

Transcripción:

Los Procesadores CORTEX M4 Y CORTEX M7 en el PROCESAMIENTO DIGITAL de SEÑALES

USB/Ethernet/CAN/Flash/etc Sistemas operativos Muchas características totalmente programables en C Baja Latencia de interrupción Diferencias entre un Microcontrolador y un DSP DSPs Microcontroladores Gran número de registros Puertos Seriales Comvertidores Muestreo reten Controladores DMA flexibles Requiere programación ASM para lograr un máximo desempeño Bajo consumo de energía (miliwats por MIP) Pocos registros Arquitectura Cached Modos de baja potencia (sleep) Bajo Costo Gran número de periféricos Muchísimas variantes Memoria integrada Flash Buen soporte de Drivers

DSC

CONTROLADOR DIGITAL DE SEÑALES Controlador Digital de Señales = Características de Microcontrolador + DSP Múltiples buses para memoria Multiplica y acumula en un ciclo Lazos con cabecera cero Carga y Almacena en paralelo con computo Acumulador con bits de guarda Matemáticas de saturación y de fracciones Instrucciones SIMD para computo en paralelo Barril de desplazamiento Direccionamiento Circular y bit de reversa

DEFINIENDO LAS CARACTERÍSTICAS DE UN VERDADERO PROCESADOR DSP Arquitectura Harvard MAC de alto desempeño Matematicas de saturación Instrucciones SIMD para computación en paralelo Barril de desplazamiento Hardware de punto flotante Direccionamiento Circular y bit de reversa Lazos de cabecera Cero Operaciones de carga y almacena en paralelo con operaciones matematicas

Que necesita un DSP Modos de baja potencia Bajo Costo Gran número de perifericos Que necesita un microcontrolador Mejor consumo de potencia Periféricos específicos de audio Aritmética de alto desempeño

Procesadores de Aplicación Microcontroladores de gama alta Ejemplos Velocidad de reloj hasta 2 Ghz Cortex-A Alto nivel de Integración Múltiples Núcleos Procesadores gráficos Redes USB Características de seguridad Familia de Procesadores Intel Atom Usados en: Teléfonos inteligentes ipad/tablets Set top boxes Automóviles head units

Seleccionando el mejor procesador para una aplicación de Audio

LA TAREA FUNDAMENTAL DEL PROCESAMIENTO DIGITAL DE SEÑALES ES, EN EFECTO, LA MANIPULACIÒN DE UNA SEÑAL COMPLEJA QUE CONSISTE DE MÙLTIPLES ONDAS CON VARIAS Y VARIANTES FASES, AMPLITUDES Y FRECUENCIAS LAS CUALES NO SON CONOCIDAS DE UNA FORMA PRECISA

El reto del desarrollo de un producto de audio -- La complejidad de los productos de audio va en aumento -- El tiempo de desarrollo se reduce -- Existen múltiples formatos de audio -- Conectividad -- Actualizaciones de software -- Integración con otro producto -- Tamaño y requerimientos de potencia -- Costo

Para el desarrollo de un producto se requieren diferentes habilidades Eléctricas Mecánicas Acústicas Interface de Usuario El desarrollo de software para procesamiento de audio requiere Múltiples habilidades -- Procesamiento Digital de Audio -- Ingeniería de Audio -- Software embebido

Realce espacial Múltiples canales de audio Ecualización Limite de picos Aumento de profundidad Apareamiento de señal

Selección del Procesador Analog Devices SHARC, Blackfin, SigmaDSP Texas Instruments C55, C67x, C66x ARM ARM9/11 Cortex M4/M7 Cortex A8/A9/A15/etc Intel x86/x64 y nucleos embebidos Tensilica, CEVA y ARC

Puntos relacionados con el Diseño del Periféricos Puertos seriales Conectividad Convertidores DMA Memoria Interna RAM/Flash Memoria externa Tamaño Consumo de Potencia Sistema

Usar dos Procesadores? + La conexión de un producto requiere de un MCU USB Wi-Fi/Ethernet etc El procesamiento de señales para productos multimedia sigue en aumento Audio Video Microfonos etc Puede un solo circuito Manejar todas las funciones? Productos con sensores para el Intenet de las cosas

Selección del procesador Se ajustará a mi aplicación? Costo - Cuál es el costo de todo el sistema?

La clave del procesamiento de señales en tiempo real es mantener un flujo eficiente de datos

Entonces consideramos las diferentes familias de procesadores Analog Devices SHARC empiezan en $8.00 Blackfin empiezan en $2.00 i $4.00 SigmaDSP Texas Instruments C55, C67x, C66x empiezan en $18.00 y nucleos embebidos Tensilica, CEVA y ARC ARM ARM9/11 Cortex M4/M7 empiezan en $1.50 M4 $1.00 M3 Cortex A8/A9/A15/etc empiezan en $5.00 Intel x86/x64

En donde están los ARM? Enabling the ARM Learning in INDIA

Familias de los procesadores Cortex-M

El Nucleo Cortex-M3 liberado en 2004 Microcontrolador Tradicional Cortec-M4 liberado en 2010 Controlador de señales digitales Punto flotante y algunas capacidades de DSP Cortex-M7 liberado en 2015 Arquitectura mejorada para DSP Serie ARM Cortex - M Muchas Licencias ST Microelectronics, Freescale NXP, Atmel, Texas Instruments Analog Devices, Infineon Otras características E/S de audio basico (I2S) Variantes de baja potencia USB y Ethernet

(Architecture improvements for DSP)

120 MHZ

120 MHZ

180 MHZ

La matriz multicapa que interconecta el Cortex-M4 con los periféricos y memoria habilita transferencias simultaneas entre múltiples maestros y esclavos sin involucrar al CPU. Esto provee al microcontrolador con una tremenda capacidad de interconexión que elimina cuellos de botella en accesos a periféricos y memoria para un alto desempeño de operación.

DEFINIENDO LAS CARACTERÍSTICAS DE UN VERDADERO PROCESADOR DSP Arquitectura Harvard MAC de alto desempeño Matematicas de saturación Instrucciones SIMD para computación en paralelo Barril de desplazamiento Hardware de punto flotante Direccionamiento Circular y bit de reversa Lazos de cabecera Cero Operaciones de carga y almacena en paralelo con operaciones matematicas El texto en negritas indica ventajas de un procesador DSP sobre el Cortex-M4/M7

DSP Cortex-M4 Estrategias de optimización de Código Hasta 105 instrucciones específicas para DSP Alternativas de direccionamiento circular Lazo desenrollado Reserva de variables intermedias Uso extensivo de SIMD e intrinsecos

Desempeño del ARM Cortex-M4 Código en C del Cortex-M4 ahora comparable en desempeño DSP código en assembly = 1 ciclo Código de C estándar del Cortex-M4 toma 12ciclos Uso de alternativas al direccionamiento circular = 8 ciclos Después del lazo desenrrollado < 6 ciclos Después del uso de instrucciones SIMD <2.5 ciclos [datos de 16 bit] Después del atrapado de valores intermedios ~ 1.6 ciclos

La programación en C tiene muchas ventajas para portabilidad, facilidad de desarrollo y mantenimiento. En muchos casos el compilador de C es capaz de seleccionar la correcta instrucción sin ayuda adicional. En algunos casos usamos idiomas pequeñas partes de código en C, las cuales se pueden mapear directamente en las instrucciones del Cortex M-4 a l,o igual se pueden usar intrínsecos.

Cortex Microcontroller Software Interface Standard - Capa de abstracción para todos los dispositivos basados en los procesadores Cortex-M. - Beneficios para el desarrollador de sistemas embebidos Interface consistente de Software para los desarrolladores de silicio y middleware. Simplifica el reuso entre dispositivos basados en los procesadores Cortex-M Reduce el costo en el desarrollo de software y tiempo de entrada al mercado Reduce la curva de aprendizaje para los desarrolladores con microcontroladores Cortex-M.

La CMSIS consiste de los siguientes componentes CMSIS-CORE CMSIS-Driver CMSIS-DSP Biblioteca de 60 funciones para diferentes tipos de datos: punto fijo (fraccional q7, q15, q31) y punto flotante precisión simple (32-bit). La biblioteca está disponible para Cortex M0, M3, M4 y M7. La implementación para M4 y M7 está optimizada para las instrucciones SIMD CMSIS-RTOS API CMSIS-Pack CMSIS-SVD CMSIS-DAP

ALGO DE LA BIBLIOTECA ARM CMSIS PARA DSP Matemáticas Básicas -- Matemáticas de Vectores Matemáticas rápidas -- sen, cos, raiz cuadrada, etc. Interpolación lineal, bilineal Matemáticas complejas Estadística max, min, RMS,etc Filtrado IIR, FIR, LMS, etc Transformadas FFT(real y compleja), Transformada de coseno,etc Funciones de matrices Controlador PID, Transformadas Clarke y Park Soporte de funciones arreglos copiar/llenar, conversión de tipo de datos, etc La biblioteca tiene funciones separadas para operaciones con 8, 16,32 bit y 32 bit en punto flotante.

216 MHZ

Más Matemáticas Más procesamiento digital = Hasta 2 x desempeño en DSP Combina un DSP y un MCU dentro de un chip, combina un MPU y un MCU dentro de un chip, mejor desempeño grafico para HMIs

CARACTERÍSTICAS DE LOS NUCLEOS CORTEX-M Cortex-M3 Cortex-M4 Cortex-M7 DSP verdadero Un ciclo por MAC Punto Fijo Punto Fijo Si unicamente y flotante Punto flotante Si Si Si Matematicas de fracciones y Saturación Si Si Si Operaciones SIMD Si Si Si Carga y Almacena en paralelo con matematicas Si(1) Si(2) Lazos de cabecera cero Si Si Acumulador con bits de guarda Direccionamiento circular y bit de reversa Si Si