4 Implementación del sistema
|
|
- Juan José Martín Toledo
- hace 7 años
- Vistas:
Transcripción
1 4 Implementación del sistema 61
2 4.1 Descripción del entorno de desarrollo Descripción de la plataforma hardware. En el presente trabajo se va a realizar una implementación digital del sistema conformador en una plataforma FPGA (Field Programmable Gate Array). Una FPGA no es más que un dispositivo hardware con lógica reprogramable por el usuario lo que aporta un grado de flexibilidad que la hace ideal para prototipado de sistemas. Una FPGA se compone básicamente de los siguientes elementos: Bloques lógicos, que implementan operaciones lógicas definidas por el usuario. Recursos de interconexión que permiten conectar los bloques lógicos entre sí. Bloques de entrada/salida (bloques I/O) para la conexión de la lógica a los pines del encapsulado para la comunicación con el exterior. En la figura 26 se representa la estructura básica de una FPGA. Las FPGAs basadas en tecnologías de interconexión SDRAM (las que presentan mayor penetración en el mercado) no mantienen su configuración cuando se interrumpe la alimentación (es decir, la configuración de la misma no es persistente) por lo que en la placa que contiene la FPGA se suele incluir algún dispositivo de almacenamiento persistente (normalmente una memoria EPROM) que contiene el archivo de configuración de la FPGA y que permite que este se cargue automáticamente en la FPGA al alimentarla. 62
3 Figura 26. Estructura general de una FPGA. La estructura de los bloques lógicos es lo que diferencia distintas familias de FPGAs por lo que se suele denominar arquitectura de la FPGA.El desarrollo inicial se probó en una placa Microboard LX9 del fabricante Avnet la cual incorpora una FPGA Spartan-6 (XC6SLX9-2CSG324C) de Xilinx. La elección de esta plataforma atendió principalmente a aspectos económicos (la placa cuesta unos 70 ), su pequeño tamaño y su facilidad de uso ya que la comunicación con el PC de desarrollo puede realizarse por medio de cables USB y miniusb estándares gracias a los chips de conversión de JTAG-USB y UART-USB. Sin embargo, conforme se fue avanzando en la implementación del algoritmo de conformado se fueron agotando los recursos hardware de la FPGA por lo que finalmente fue necesario cambiar la plataforma a otra que contara con un mayor número de recursos hardware. Por motivos de disponibilidad se empleó una placa XtremeDSP ML506 de Xilinx, la cual cuenta con una FPGA Virtex-5 (en concreto la XC5VSX50TFFG1136) la cual se programa empleando un cable JTAG. 63
4 Figura 27. Vista superior de la placa Microboard LX9 de Avnet. Figura 28. Vista superior de la placa XtremeDSP ML506 de Xilinx Descripción de la metodología y herramientas de desarrollo. Todo el diseño digital ha sido realizado mediante el software System Generator for DSP de la casa Xilinx, permitiendo así la integración con Matlab y Simulink para la realización de pruebas de comportamiento en tiempo de simulación e incluso en tiempo de ejecución real en la FPGA mediante herramientas de depuración y verificación como co-simulación hardware y Chipscope. System Generator for DSP es una herramienta que proporciona por un lado una librería de bloques 64
5 de Simulink que integran IP cores de Xilinx los cuales implementan distintas funciones o sistemas (desde simples puertas lógicas hasta bloques que implementan transformadas de Fourier). La herramienta también proporciona un bloque especial denominado Black Box el cual permite al usuario implementar la funcionalidad del bloque en lenguajes HDL (VHDL o Verilog). Todo el proceso de generación del archivo bitstream (que es el que finalmente se carga en la FPGA para su configuración) es llamado de forma transparente al usuario desde el bloque Sysgen Token. El diseño basado en modelos es más intuitivo y sencillo que el tradicional diseño basado en codificación HDL lo que permite reducir los tiempos y ciclos de desarrollo. Como contrapartida, al trabajar con un mayor nivel de abstracción el uso de recursos es menos eficiente que lo que se podría conseguir realizando la codificación con un nivel de abstracción menor Conversión de punto flotante a punto fijo. En un sistema digital los números se almacenan en palabras binarias de una longitud finita. El tipo de dato determina la forma en la que se interpreta la palabra binaria existiendo dos tipos fundamentales: los datos en punto flotante y los datos en punto fijo. Los datos en punto flotante permiten mayores precisiones al expresar los números como una mantisa y un exponente. Los programas de cálculo numérico como MATLAB trabajan por defecto en punto flotante (aunque pueden incorporar mecanismos para trabajar en punto fijo) y muchos microprocesadores (no todos) también lo hacen. Sin embargo en muchos sistemas hardware digital es necesario trabajar con aritmética de punto fijo en la cual la parte más significativa de la palabra binaria corresponde a la parte entera y la menos significativa a la parte fraccional. Los algoritmos de conformado de haz simulados hasta el momento en capítulos anteriores han empleado aritmética de punto flotante en MATLAB. Sin embargo, las plataformas FPGA trabajan en punto fijo por lo que es necesario realizar la conversión de un formato al otro. Esta tarea se suele realizar analizando la señal en cada punto del flujo de procesamiento y teniendo en cuenta el rango de la misma. Es importante analizar el efecto que tiene la cuantización en los pesos del conformador y en el apuntamiento del haz lo cual se analizará en el apartado Descripción de la implementación. En la implementación realizada se ha considerado que la dirección de apuntamiento (elevación y 65
6 acimut) con respecto al sistema de referencia del array son conocidos. Con el objetivo de desarrollar un sistema operacional es necesario implementar también el algoritmo de cálculo de la dirección de apuntamiento a partir de la posición de la estación de tierra (fija y conocida por el sistema) y los datos de posición y orientación de la aeronave proporcionados por el sistema de navegación de la misma. Esta es una de las líneas de trabajo que quedan abiertas. La implementación del algoritmo de cálculo de los pesos óptimos del conformador se basa principalmente en la implementación de la expresión w *=v * (k s ), con v (k s )=e j2 π G a / λ donde s G es la matriz cuyas filas son las coordenadas de cada elemento del array en el sistema de referencia del mismo y a s es el vector unitario que indica la dirección de apuntamiento deseada. El primer cálculo que se realiza permite calcular las componentes del vector unitario en la dirección de apuntamiento a partir de los ángulos de elevación y acimut de acuerdo a la expresión T a s =[ cos(ϕ s )sen (θ s) sen (ϕ s) sen (θ s) sen (θ s) ]. La implementación de las funciones trigonométricas se ha realizado mediante LUTs como de detallará en el apartado Figura 29. Diagrama de bloques del cálculo de las componentes del vector dirección deseada. 66
7 Figura 30. Bloques que implementan el producto G a s. Dado que todos los elementos del array se encuentran en el mismo plano (en el plano z=0), el elemento del vector sen(θ s ) no afecta a la multiplicación G a s ya que todos los elementos de la última columna de la matriz G que los multiplica son cero. En la figura 29 se muestra el diagrama de bloques que implementa los dos primeros elementos del vector a s. 67
8 El siguiente paso consiste en realizar la multiplicación G a s la cual se ha realizado con la implementación representada en la figura 30. La gran cantidad de bloques no permite apreciar la funcionalidad de ellos con claridad en la figura por lo que vamos a pasar a describirlos. En primer lugar nótese que las señales que aparecen representadas por los trazos de la parte superiores de la figura se corresponden con las de los trazos de la parte inferior de la figura 29. Los 16 bloques que aparecen a la izquierda de la figura se corresponden con las coordenadas de los 8 elementos del array en los ejes x e y del sistema de referencia del mismo. La siguiente hilera vertical de bloques son multiplicadores que realizan las multiplicaciones entre elementos de la matriz G y las dos primeras componentes del vector a s. La última hilera realiza las sumas de los productos resultantes dando lugar a los fases de los 8 pesos del conformador. Para obtener las componentes real e imaginaria de los pesos con los que se multiplicarán la señal a conformar, se hace uso de nuevo de LUTs que implementan las funciones trigonométricas de seno y coseno como se muestra en la figura 32 (en la figura 31 se muestra una de las filas ampliada). Figura 31. Detalle de la etapa de salida del conformador. La última hilera de bloques que se observa en la misma son bloques de conversión paralelo serie que permite serializar los bits con los que se representa cada peso para que puedan ser enviados a un DAC de entrada serie. En realidad, la señal que debería enviarse a los conversores paralelo-serie sería la resultante de realizar la multiplicación compleja de la señal a conformar por los pesos del conformador. El uso de DACs serie permite ahorrar muchas líneas de conexionado lo que simplifica enormemente el de por sí complejo proceso de rutado de la FPGA. Cada señal necesita dos DACs, uno para la parte real y otro para la parte imaginaria necesitándose por tanto un total de 16 DACs (u 8 DACs de canal dual) necesitándose una línea de rutado por DAC. En el proyecto se han elegido 68
9 DACs de 12 bits serie con interfaz SPI necesitándose. La misma implementación empleando DACs de 12 bits con entrada en paralelo hubiera requerido un total de 12x16 = 192 líneas lo que hace esa implementación prácticamente irrealizable. Figura 32. Cálculo de las partes real e imaginaria de los pesos del conformador. 69
10 4.2.1 Implementación de funciones trigonométricas. Las funciones de seno y coseno se han implementado mediante LUTs (Look Up Tables). Esta aproximación tiene la ventaja de insertar un retardo mucho menor que mediante bloques CORDIC (COrdinate ROtation DIgital Computer). La LUT se ha implementado empleando una memoria ROM que contiene los valores del seno únicamente de los ángulos correspondientes al primer cuadrante. La señal que direcciona la memoria corresponde al ángulo de entrada cuyo seno o coseno se desea obtener habiéndose empleado 12 bits por lo que la resolución de los ángulos es de 2 12 π/2 rad. A partir de los valores del seno del primer cuadrante se pueden obtener los del resto de cuadrantes así como los valores del coseno lo que permite reducir la cantidad de memoria necesaria a costa de emplear lógica adicional para el direccionamiento de la misma. El primer paso consiste en realizar la adaptación del ángulo de entrada en el caso de querer calcular el coseno en lugar del seno. La relación entre ambos es sen(θ)=cos(θ+π /2) por lo que si se desea calcular el coseno se suma π /2 al ángulo de entrada y se reduce el ángulo resultante al intervalo [0,2 π] (módulo π ). En la figura 33 se muestran los bloques que realizan esta tarea. Figura 33. Lógica de transformación del ángulo según se desee calcular el seno o el coseno. Acto seguido, se realiza la conversión del ángulo de entrada al primer cuadrante de acuerdo al esquema mostrado en la figura 34. La lógica de la transformación es la siguiente: 70
11 Si θ<π/2 (el ángulo corresponde al primer cuadrante), entonces el ángulo no se modifica. Si π / 2<θ<π (el ángulo corresponde al segundo cuadrante), entonces el nuevo ángulo se calcula como θ=π θ. Si π<θ <3 π /2 (el ángulo corresponde al tercer cuadrante), entonces el nuevo ángulo se calcula como θ=θ π. Si 3 π/ 2<θ<2 π (el ángulo corresponde al cuarto cuadrante), entonces el nuevo ángulo se calcula como θ=π/ 2 θ. Figura 34. Lógica que transforma el ángulo de entrada en el ángulo equivalente del primer cuadrante. 71
12 Finalmente se direcciona la memoria ROM que implementa la LUT conviertiendo el ángulo resultante en una dirección válida en el rango [0,212 1] multiplicando el ángulo por (212 1)/( π/2) y se elige el signo del seno/coseno en función del cuadrante del ángulo original. Este bloque se muestra en la figura 35. Figura 35. Etapa de salida con la memoria ROM que implementa la LUT. 4.3 Simulaciones en Simulink. La herramienta System Generator for DSP de Xilinx permite simular la implementación realizada en el entorno de Simulink simulando los bloques de Xilinx usando por debajo simuladores como el XST de Xilinx. En el presente trabajo se han realizado simulaciones en las que se han calculado los pesos óptimos de un array circular de ocho elementos para una dirección de apuntamiento deseada y se han almacenado los valores obtenidos en el workspace. Con esos valores se ha empleado el toolbox ArrayCalc para calcular el patrón de radiación resultante. Con el objetivo de analizar cómo ha afectado el proceso de cuantización empleado para convertir el algoritmo en punto flotante a la implementación en punto fijo, se han realizado simulaciones en el entorno de MATLAB con ArrayCalc y las simulaciones equivalentes con el modelo en punto fijo desarrollado con System Generator. La simulación que aquí se muestra se ha realizado apuntando a un acimut de 30 o y una 72
13 elevación de 20o para un array circular de ocho monopolos sobre plano de tierra. En la figura 36 se representan en azul los pesos del conformador obtenidos mediante el algoritmo en punto flotante y en rojo los obtenidos empleando 12 bits con 11 bits para la parte fraccionaria. En la figura 37 se ha representado la magnitud y fase de los errores correspondientes a cada peso. Como puede observarse el error en magnitud puede estar en torno a 1, mientras que el error de fase puede estar en torno a los 0,5o (0,0087 rad). Figura 36. Representación de los pesos del conformador calculados en punto flotante (azules) y en punto fijo con 12 bits (rojo). 73
14 Figura 37. Magnitud y fase de los vectores de error para cada uno de los pesos. Figura 38. Patrón de radiación obtenido con la implementación en punto fijo. 74
15 Figura 39. Patrón de radiación obtenido con la implementación en punto flotante. Finalmente en las figuras 38 y 39 se muestran los patrones de radiación obtenidos mediante las simulaciones de la implementación en punto fijo y la equivalente en punto flotante. Como puede apreciarse el comportamiento del apuntamiento es muy similar apreciándose únicamente diferencias en cuanto a los lóbulos secundarios. 4.4 Resumen. El sistema de conformado de haz ha sido implementado para una plataforma FPGA. En el presente capítulo se ha presentado la plataforma de desarrollo empleada: una XtremeDSP ML506 de Xilinx. La implementación en una plataforma FPGA requiere adaptar el algoritmo de conformado en punto flotante desarrollado en MATLAB a la implementación en punto fijo requerida por la FGPA. En el capítulo se ha presentado la implementación realizada en System Generaotr for DSP la cual consiste principalmente en implementar la expresión w *=v * (k s ), con v (k s )=e j2 π G a / λ. Uno s d ellos bloques necesarios para implementar dicha expresión es el de un DDS (Direct Digital Synthesizer) para el cálculo de senos y cosenos el cual se ha realizado mediante una LUT (Look Up Table). Finalmente el modelo en punto fijo se ha simulado en el entorno de Simulink y se han 75
16 comparado los resultados con los obtenidos simulando la implementación en punto flotante de MATLAB observándose que los resultados son similares de forma que las desviaciones introducidas por la cuantización son perfectamente asumibles. 76
17 77
18 78
Introducción al Diseño Digital con FPGAs.
Introducción al Diseño Digital con FPGAs www.emtech.com.ar Temario del curso Dia 1: Introducción y ejemplo practico paso a paso Dia 2: VHDL, flujo de diseño y otro ejemplo Dia 3: Detalles de diseño e implementacion
Más detallesIntroducción a los Dispositivos Lógicos Programables (FPGAs) Guillermo Güichal
Introducción a los Dispositivos Lógicos Programables (FPGAs) Guillermo Güichal www.emtech.com.ar Temario Introducción Circuitos Digitales FPGAs Flujo y Herramientas de Diseño Diseño para Síntesis Simulación
Más detallesINTRODUCCIÓN A SIMULINK/SYSTEM GENERATOR (XILINX FPGA) C7 Technology 1
INTRODUCCIÓN A SIMULINK/SYSTEM GENERATOR (XILINX FPGA) C7 Technology 1 Algoritmos DSP 2 Implementación Algoritmos DSP Algoritmo DSP Procesadores DSP (AMD, TI) FPGAs Simulink +System Generator + FPGA Software
Más detallesFPGAs. Susana Borromeo Área de Tecnología Electrónica. Diseño de Sistemas Electrónicos. 2014/2015. Metodología de Diseño. Características generales
FPGAs Susana Borromeo Área de Tecnología Electrónica Esquema Conceptos generales Dispositivos Lógicos Programables FPGAs Metodología de Diseño VHDL Características generales VHDL Comportamental y Estructural
Más detallesCapítulo 9. Implementación en VHDL y síntesis en FPGA
Capítulo 9 Implementación en VHDL y síntesis en FPGA El objetivo final del proyecto es implementar una selección de los métodos de estimación espectral descritos en el equipo final de resonancia magnética,
Más detallesResumen. Este trabajo se divide principalmente en 2 partes:
DISEÑO DE UNA RED NEURONAL RECURRENTE MEDIANTE LA UTILIZACIÓN DE BLOQUES DSP CON XILINX SYSTEM GENERATOR, IMPLEMENTADA EN TIEMPO REAL EN DISPOSITIVOS RECONFIGURABLES Resumen Juan J. Raygoza P, Susana Ortega
Más detallesplacas de prototipado (i) Material docente en los laboratorios de la Facultad de Informática Diseño Automático de Sistemas
1 Material docente en los laboratorios de la Facultad de Informática Diseño Automático de Sistemas José Manuel Mendías Cuadros Dpto. Arquitectura de Computadores y Automática Universidad Complutense de
Más detallesPráctica 1 - Representación de la información
Práctica 1 - Representación de la información Organización del Computador 1 Primer Cuatrimestre 2014 Ejercicio 1 a) Utilizando el método del cociente, expresar en bases 2, 3 y 5 los números 33, 100 y 1023.
Más detallesEstudio del impacto de implementaciones de operadores aritméticos en dispositivos lógicos programables FPGA
Estudio del impacto de implementaciones de operadores aritméticos en dispositivos lógicos programables FPGA Marino, Ariel Alberto Grupo de Investigación y Servicios en Electrónica y Control Facultad Regional
Más detallesIntroducción a VHDL. Sistemas digitales UTM-2006 JJVS
Introducción a VHDL Sistemas digitales UTM-2006 JJVS Surgimiento de VHDL Necesidad de nuevos métodos ya que los clásicos (esquemáticos), llegan a ser ineficientes en diseños de altas escalas de integración.
Más detallesObjetivos. Instituto Tecnológico de Costa Rica Escuela de Ingeniería Electrónica I SEMESTRE 2007. Contenido del Curso EL FLUJO DE DISEÑO O DIGITAL
Objetivos OBJETIVO GENERAL Laboratorio de Diseño o de Sistemas Digitales EL-3312 Diseñar, simular, sintetizar e implementar sistemas digitales usando lenguajes de alto nivel para la descripción de hardware
Más detallesINSTRUMENTACIÓN ELECTRÓNICA
INSTRUMENTACIÓN ELECTRÓNICA CON MICROPROCESADOR Programa de Doctorado en Ingeniería Eléctrica, Electrónica y Automática MANUAL DE PRÁCTICAS Curso 2010/2011 Autores: Guillermo Carpintero Marta Portela Marta
Más detallesTipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC.
Tipos de Datos y Representaciones Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC. Índice 1. Sistemas numéricos posicionales 2. Números octales y hexadecimales 3. Conversiones entre
Más detallesINTRODUCCIÓN AL DISEÑO FPGA-DSP. Cristian Sisterna, MSc UNSJ-C7T
INTRODUCCIÓN AL DISEÑO FPGA-DSP Cristian Sisterna, MSc UNSJ-C7T AGENDA Introducción Bloques DSPs en ilinx FPGAs MatLab/Simulink Simulink ilinx System Generator Ejemplo de Diseño con SysGen 2 ALGORITMOS
Más detallesElectrónica Digital. Tema 2. Dispositivos Lógicos Programables (PLD)
Electrónica Digital Tema 2 Dispositivos Lógicos Programables (PLD) Dispositivos Lógicos Programables Introducción. Dispositivos Lógicos Programables Sencillos. Dispositivos Lógicos Programables Complejos.
Más detalles1.4.3 Errores de redondeo y la aritmética finita de las computadoras
1.4.3 Errores de redondeo y la aritmética finita de las computadoras Como la computadora sólo puede almacenar un número fijo de cifras significativas, y cantidades como π, e, 3, 2 no pueden ser expresadas
Más detallesUniversisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas
Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Aritmética Punto Flotante Basada en: What Every Computer Scientist Should Know About Floating-Point Arithmetic Por: David Goldberg Prof.
Más detallesPlanificaciones Sistemas Digitales. Docente responsable: ALVAREZ NICOLAS. 1 de 5
Planificaciones 8641 - Sistemas Digitales Docente responsable: ALVAREZ NICOLAS 1 de 5 OBJETIVOS El objetivo de la materia es aprender a diseñar arquitecturas digitales utilizando como herramienta los lenguajes
Más detallesIntroducción a LabVIEW FPGA. Juan Gil
Introducción a LabVIEW FPGA Juan Gil National Instruments Tecnología FPGA Bloques de Memoria Almacene conjuntos de datos o valores en RAM definida por el usuario Bloques de Lógica Configurables (CLBs)
Más detallesBloques Aritméticos - Multiplicadores
Bloques Aritméticos - Multiplicadores La multiplicación es una operación cara (en términos de recursos) y lenta Este hecho ha motivado la integración de unidades completas de multiplicación en los DSPs
Más detallesTransductor. Transductor A/D. Transductor. Transductor ASP
A/D DSP D/A ASP Pueden resolverse, en forma económica, problemas que en el campo analógico serían muy complicados. Insensibilidad al entorno. Insensibilidad a la tolerancia de los componentes. Predictibilidad
Más detalles4.1. Circuitos Digitales Configurables
4.1. Circuitos Digitales Configurables Los circuitos digitales configurable son sistemas electrónicos digitales cuya función se puede modificar utilizando solamente una parte de los elementos que los componen
Más detallesRepresentación de datos y aritmética básica en sistemas digitales
Representación de datos y aritmética básica en sistemas digitales DIGITAL II - ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti 1 Sistemas de Numeración: Alfabeto:
Más detallesSíntesis arquitectónica y de alto nivel
Síntesis arquitectónica y de alto nivel Módulo 1. Concepto y fases de la Síntesis de Alto Nivel 1 Diseño de circuitos: la complejidad Tratamiento de problemas de complejidad creciente Rápido desarrollo
Más detallesIntroducción al procesamiento digital de señales en tiempo real
Introducción al procesamiento digital de señales en tiempo real ELO 385 Laboratorio de Procesamiento Digital de Señales Segundo semestre - 2011 Matías Zañartu, Ph.D. Departamento de Electrónica Universidad
Más detallesSistemas Digitales Trabajo Práctico 2. Voltímetro digital con salida VGA
Sistemas Digitales - 66.17 Trabajo Práctico 2 Voltímetro digital con salida VGA Sistemas Digitales - 66.17 Facultad de Ingeniería - UBA 2 1. Objetivo El objetivo del presente Trabajo Práctico consiste
Más detallesCertamen 1 Arquitectura de Computadores
Certamen 1 Arquitectura de Computadores Prof. Rodrigo Araya Ehrenfeld Viernes 28 de Abril 2006 Tiempo: 90 Minutos No se pueden utilizar apuntes ni calculadora. 1. Pregunta 1 (20 %) 1. Explique cuál es
Más detallesDiseño de un motor de rotación gráfico 3D basado en el algoritmo CORDIC
Sistemas Digitales - 66.17 Trabajo Práctico Diseño de un motor de rotación gráfico 3D basado en el algoritmo CORDIC Primer Cuatrimestre de 2013 Sistemas Digitales - 66.17 Facultad de Ingeniería - UBA 2
Más detallesTEMA III: OPERACIONES CON LOS DATOS
CUESTIONES A TRATAR: Cual es la función de la unidad operativa? Es necesaria? Qué tipos de circuitos implementan la unidad operativa? Unidad operativa frente a ALU Qué es una operación de múltiple precisión?
Más detallesRepresentación de datos y aritmética básica en sistemas digitales
Representación de datos y aritmética básica en sistemas digitales DIGITAL II - ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti 1 Sistemas de Numeración: Alfabeto:
Más detallesJiménez Núñez Sixto Alejandro Panchi Campos Diego Enrique Ph.D Robin Álvarez R. Escuela Politécnica Nacional
DISEÑO E IMPLEMENTACIÓN DE UN MODULADOR Y UN DEMODULADOR N-QAM EMPLEANDO XILINX ISE, SYSTEM GENERATOR Y SIMULINK SOBRE UNA TARJETA DE ENTRENAMIENTO BASADA EN UN FPGA DE XILINX. Jiménez Núñez Sixto Alejandro
Más detallesCuerpo de Profesores Técnicos de Formación Profesional
Tabla de equivalencias entre los temarios de Sistemas y Aplicaciones Informáticas de Profesores Técnicos de Formación Profesional e Informática del Cuerpo de Profesores de Enseñanza Secundaria Cuerpo de
Más detallesDispositivos Lógicos Programables
Dispositivos Lógicos Programables Luis Entrena, Celia López, Mario García, Enrique San Millán Universidad Carlos III de Madrid 1 Indice Tecnologías de implementación de circuitos programables Circuitos
Más detallesCircuitos electrónicos digitales. Unidades Aritméticas Lógicas. Departamento de Tecnología Electrónica Universidad de Sevilla
Circuitos electrónicos digitales Unidades Aritméticas Lógicas Índice Introducción Circuitos sumadores básicos Sumador paralelo de n bits Sumador/Restador Unidad aritmético-lógica (ALU) Introducción Los
Más detallesIntroducción a los dispositivos de lógica programable en campo (FPGA) Laboratorio de diseño digital
Introducción a los dispositivos de lógica programable en campo (FPGA) Laboratorio de diseño digital MARÍA ISABEL SCHIAVON - 2005 1907 1 950 RESEÑA HISTORICA 60 MSI 70 LSI microprocesador 1958 80 circuitos
Más detallesAritmética de Enteros y
1 Aritmética de Enteros y Flotantes 2013 Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas 2 1. Introduccion La aritmética de enteros es aritmética modular en complemento
Más detallesESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN
ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN TEMA 3. Aritmética y codificación 3.1 Aritmética binaria 3.2 Formatos de los números y su representación 3.3 Definiciones
Más detallesTitulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores
Titulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores Bloque 1: Introducción Tema 2: Sistema binario de representación numérica Pablo Huerta Pellitero ÍNDICE Bibliografía.
Más detallesTipos de datos y Operadores Básicos
Módulo I: Conceptos Básicos Tema 1. Qué es un ordenador? Tema 2. Cómo se representan los datos en un ordenador? Tema 3. Qué es un lenguaje de programación? Tema 4. Cómo se hace un programa informático?
Más detallesXVI. utilizarlos de la forma más eficiente posible en el diseño de sistemas digitales.
INTRODUCCIÓN En la actualidad el diseño de circuitos y sistemas digitales ha avanzado mucho respecto a sus orígenes. Ningún diseñador se plantea en la actualidad realizar un sistema digital mediante circuitos
Más detallesDiseño de una arquitectura para la implementación de sistemas digitales. Su aplicación a un modulador DTMB
Diseño de una arquitectura para la implementación de sistemas digitales. Su aplicación a un modulador DTMB Ing. Reinier Díaz Hernández reinier@lacetel.cu 8 de noviembre de 2016 1 de 20 RESUMEN Se presenta
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesINSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I
RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS La principal razón para que las personas aprendan lenguajes de programación es utilizar una computadora como una herramienta para la resolución de problemas. Cinco
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detalles+- S x B +-E. Este estándar presupone una representación normalizada. Es decir, los números a representar obedecen a la siguiente forma:
3.6 Codificación Punto Flotante Esta codificación nace por la necesidad de tener un rango más amplio de representatividad numérica, o cobertura. Los esquemas antes mencionados ofrecen un rango limitado
Más detallesESCUELA POLITÉCNICA NACIONAL
ESCUELA POLITÉCNICA NACIONAL Campus Politécnico "J. Rubén Orellana R." FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Carrera de Ingeniería Electrónica y Control Carrera de Ingeniería Electrónica y Telecomunicaciones
Más detallesINTRODUCCIÓN A LOS CIRCUITOS INTEGRADOS
INTRODUCCIÓN A LOS CIRCUITOS INTEGRADOS Luis Entrena Arrontes Celia López Mario García Enrique San Millán Marta Portela Almudena Lindoso 1 Índice 1.1 Los circuitos integrados. Ventajas e inconvenientes
Más detallesEl tamaño, estructura, número de bloques y la cantidad y conectividad de las conexiones varian en las distintas arquitecturas.
Que es una FPGA? Las FPGA s (Field Programmable Gate Array) Son dispositivos lógicos de propósito general programable por los usuarios, compuesto de bloques lógicos comunicados por conexiones programables.
Más detallesTEMA 11 MEMORIAS. CIRCUITOS LÓGICOS PROGRAMABLES
TEMA 11 MEMORIAS. CIRCUITOS LÓGICOS PROGRAMABLES 1 CLASIFICACIÓN SEGÚN SU TECNOLOGÍA 2 PARAMETROS FUNDAMENTALES DE LAS MEMORIAS Modo de acceso: Aleatorio (RAM, Random Access Memory) Serie Alterabilidad
Más detallesSistemas Digitales. Diseño lógico con Verilog. Sinopsis. Prólogo.
1 Sistemas Digitales. Diseño lógico con Verilog. Sinopsis. El texto está orientado a un primer curso de diseño lógico en programas de estudios de ingenieros eléctricos, electrónicos, telemáticos y de ciencias
Más detallesTema 9. SISTEMAS COMBINACIONALES PROGRAMABLES SISTEMAS COMBINACIONALES PROGRAMABLES NO UNIVERSALES
Fundamentos de Computadores. Sistemas Combinacionales Programables. T9-1 Tema 9. SISTEMAS COMBINACIONALES PROGRAMABLES INDICE: INTRODUCCIÓN CLASIFICACION DE LOS SCP SISTEMAS COMBINACIONALES PROGRAMABLES
Más detallesDispositivos Digitales. EL-611 Complemento de Diseño Lógico y. Dispositivos Digitales
EL-611 Complemento de Diseño Lógico y Objetivos y Evaluación Segundo Curso de Sistemas Digitales Complementar Materia Enfoque Diseños de Mayor Envergadura 1 Control + Examen y 6 Ejercicios (aprox.) Tareas
Más detalles5.2. Sistemas de codificación en binario
5.2. Sistemas de codificación en binario 5.2.1. Sistemas numéricos posicionales [ Wakerly 2.1 pág. 26] 5.2.2. Números octales y hexadecimales [ Wakerly 2.2 pág. 27] 5.2.3. Conversión general de sistemas
Más detallesDiseño de DSP en FPGA con System Generator y MATLab. Jesús Barba Romero (30/05/2012)
Diseño de DSP en FPGA con System Generator y MATLab Jesús Barba Romero (30/05/2012) Agenda Introducción a System Generator y MATLab Creación de un sistema DSP con Simulink Creación de un sistema DSP con
Más detalles4.5. Procedimiento de síntesis
4.5. Procedimiento de síntesis En este apartado se resumen los pasos a seguir para completar la implementación de un sistema digital en un dispositivo programable: descripción del sistema mediante uno
Más detallesFFT de 64 Puntos para Redes de Datos Inalámbricas Basadas en OFDM
FFT de 64 Puntos para Redes de Datos Inalámbricas Basadas en OFDM Sancho M.A., Angarita F.E., Sansaloni T., Perez-Pascual A. Departamento de Ingeniería Electrónica, Universidad Politécnica de Valencia,
Más detallesPROTOTIPADO Y VERIFICACIÓN DE UN SISTEMA DE PROCESAMIENTO DE AUDIO EN FPGAs MEDIANTE HARDWARE IN THE LOOP
PROTOTIPADO Y VERIFICACIÓN DE UN SISTEMA DE PROCESAMIENTO DE AUDIO EN FPGAs MEDIANTE HARDWARE IN THE LOOP Juan J. Raygoza P, Susana Ortega C., Héctor J. Cabrera V., Francisco J. Ibarra V. { juan.raygoza,
Más detallesESCUELA POLITÉCNICA NACIONAL
ESCUELA POLITÉCNICA NACIONAL Campus Politécnico "J. Rubén Orellana R." FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Carrera de Ingeniería Electrónica y Control Carrera de Ingeniería Electrónica y Telecomunicaciones
Más detallesFiltrado de imágenes usando hardware dedicado
Filtrado de imágenes usando hardware dedicado Acosta Nelson & Tosini Marcelo INCA/INTIA Depto. Computación y Sistemas Fac. Cs. exactas UNCPBA (7000) Tandil Argentina Email: { nacosta, mtosini }@exa.unicen.edu.ar
Más detallesFIELD PROGRAMMABLE GATE ARRAY (FPGA)
FIELD PROGRAMMABLE GATE ARRAY 21 FIELD PROGRAMMABLE GATE ARRAY (FPGA) 2.1. QUÉ ES UN FPGA? Un FPGA (field programmable gate array) es un dispositivo semiconductor que contiene componentes lógicos programables
Más detallesCSC 2. SÍNTESIS Y REDACCIÓN FINAL DE LOS CRITERIOS DE EVALUACIÓN (CRITERIOS ORIGINALES Nº)(ESTÁNDARES Nº) 3. CCLAVE
Sociedad de la información. Introducción histórica de la informática. Impacto de las Tecnologías de la Información y Comunicación (TIC) en los diversos ámbitos de la sociedad actual. Avances y riesgos.
Más detallesCentro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Arquitectura de Ordenadores Tutor: Antonio Rivero Cuesta Unidad Didáctica 1 Representación de la Información y Funciones Lógicas Tema 1 Representación de la Información
Más detallesI. INTRODUCCIÓN. A cada valor de una señal digital se le llama bit y es la unidad mínima de información.
I. INTRODUCCIÓN 1. SEÑALES Y TIPOS Como vimos en el tema anterior, la electrónica es la rama de la ciencia que se ocupa del estudio de los circuitos y de sus componentes que permiten modificar la corriente
Más detallesAsumiremos que se dispone de procedimientos para leer y escribir caracteres. Se desarrollan algunas funciones primitivas que nos serán útiles.
26. Representación de números. Conversiones 26.1. Representación y conversión. Los números son representados internamente, en un computador digital, en sistema binario. Externamente se representan mediante
Más detallesSelectRAM+memory Bloques de memoria RAM En las FPGAs Spartan IIE
1 SelectRAM+memory Bloques de memoria RAM En las FPGAs Spartan IIE tiempo de acceso RAM, algunas veces se usa cerrojo en el Juan Manuel Narváez Sánchez, Carlos Andrés Moreno Tenjica, Estudent Member IEEE
Más detallesDispositivos lógicos programables (PLDs(
Dispositivos lógicos programables (PLDs( PLDs) SPLDs (Dispositivos lógicos programables simples) Estructuras lógicas basadas en planos AND-OR CPLDs (Dispositivos lógicos programables complejos) Combinan
Más detallesCables y conectores externos - Hardware
Ministerio de Educación Pública IPEC de Santa Bárbara de Heredia Mantenimiento Preventivo del Computador Cables y conectores externos - Hardware Conectores de vídeo La interfaz visual digital (DVI, Digital
Más detallesProgramación Automática de FPGAs desde lenguajes de alto nivel para aplicaciones multimedias
Programación Automática de FPGAs desde lenguajes de alto nivel para aplicaciones multimedias Depto. de Ingeniería y Ciencia de los Computadores. Grupo de Arquitectura Avanzada de Computadores y Computación
Más detallesCircuitos combinacionales. Funciones integradas
Circuitos combinacionales. Funciones integradas Salvador Marcos González salvador.marcos@uah.es Funciones integradas Introducción La introducción en el diseño de sistemas digitales de circuitos MSI (media
Más detallesDiseñando Hardware a la Medida con el Módulo de LabVIEW FPGA. ni.com/fpga
Diseñando Hardware a la Medida con el Módulo de LabVIEW FPGA Agenda Beneficios de los FPGAs para Sistemas de Medición y Control Programando FPGAs con LabVIEW Aplicaciones Recursos 3 Qué es un FPGA? Interconexiones
Más detallesTELECOMMUNICATION APPLICATION USING FPGA. A RADIO SOFTWARE APPROXIMATION
TELECOMMUNICATION APPLICATION USING FPGA. A RADIO SOFTWARE APPROXIMATION APLICACIONES PARA TELECOMUNICACIONES EMPLEANDO FPGAs: UNA APROXIMACIÓN A RADIO SOFTWARE Ferney Orlando Amaya Universidad Javeriana
Más detallesSistemas Electrónicos Digitales. Práctica 2 Implementación de un filtro FIR basado en estructura MAC
Sistemas Electrónicos igitales 2 o Ing. Telecomunicación Práctica 2 Implementación de un filtro FIR basado en estructura MAC Javier Toledo Moreo pto. Electrónica, Tecnología de Computadoras y Proyectos
Más detallesLab 1: Representación de señales en System Generator
Introducción Objetivos Lab 1: Representación de señales en System Generator Este laboratorio guia al asistente a través de las herramientas System Generator y Simulink para analizar la representación de
Más detallesUniversidad Carlos III de Madrid Electrónica Digital Ejercicios
1. Dibuje el esquema de transistores de una puerta lógica que realice la función lógica f = ab(c+d) a) en tecnología NMOS b) en tecnología CMOS 2. El circuito que aparece en la figura pertenece a la familia
Más detallesINDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos
INDICE Parte I. La computadora digital: organización, operaciones, periféricos, lenguajes y sistemas operativos 1 Capitulo 1. La computadora digital 1.1. Introducción 3 1.2. Aplicaciones de las computadoras
Más detalles4. PROCESAMIENTO DE VÍDEO EN FPGA
4. PROCESAMIENTO DE VÍDEO EN FPGA En este apartado se extenderán los conceptos vistos en el Capítulo 3, correspondientes al análisis y procesamiento de imágenes y vídeo, a los sistemas basados en FPGAs,
Más detallesElectrónica Digital II. Arquitecturas de las Celdas Lógicas. Octubre de 2014
Electrónica Digital II Arquitecturas de las Celdas Lógicas Octubre de 2014 Estructura General de los FPLDs Un FPLD típico contiene un número de celdas dispuestas en forma matricial, en las cuales se pueden
Más detallesTARJETA DE DESARROLLO DE SISTEMAS CON TECNOLOGÍA FPGA.
TARJETA DE DESARROLLO DE SISTEMAS CON TECNOLOGÍA FPGA. Características Técnicas: FPGA de Xilinx XC2S400E ISP PROM XC18V04 Memoria RAM estática: 2Mbytes Memoria FLASH: 4 Mbytes Temperatura de almacenamiento:
Más detallesSistemas Numéricos. Introducción n a los Sistemas Lógicos y Digitales 2009
Sistemas Numéricos Introducción n a los Sistemas Lógicos y Digitales 2009 Sergio Noriega Introducción a los Sistemas Lógicos y Digitales - 2009 MSB = Most Significative Bit LSB = Less Significative Bit
Más detallesLaboratorio de Electrónica II Departamento de Arquitectura de Computadores y Automática. Guía de Prácticas
Guía de Prácticas Práctica 0 Introducción al Manejo de una Herramienta de Simulación Electrónica Objetivo El objetivo de la presente práctica es la familiarización del alumno con el entorno de simulación
Más detallesFundamentos de Computadores. Tema 5. Circuitos Aritméticos
Fundamentos de Computadores Tema 5 Circuitos Aritméticos OBJETIVOS Conceptuales: Suma y resta binaria Implementaciones hardware/software Circuito sumador y semi-sumador básico Sumadores/restadores de n
Más detallesComputación 1. Representación Interna de Números
Computación 1 Representación Interna de Números Contenido Representación de Enteros Sin Signo Representación de Enteros Con Signo con magnitud y signo exceso a M Complemento a 1 Números Enteros Representación
Más detallesModelo de Arquitectura para Aplicaciones con HMI para CompactRIO
Modelo de Arquitectura para Aplicaciones con HMI para CompactRIO "El uso de variables compartidas publicadas en red es esencial para la implementación de este tipo de sistemas. Además, el empleo de una
Más detallesFundamentos de Informática 3. Construcción de Software
2 Contenidos Fundamentos de Informática 3. Construcción de Software - Introducción - - - Diseño -Algoritmos -Diagramas de Flujo -Pseudocódigos - Codificación - Pruebas - Mantenimiento Fundamentos de Informática
Más detallesIntroducción al Diseño Lógico 2017 Guía de Trabajos Prácticos Nº 00: Repaso
Introducción al Diseño Lógico 2017 Guía de Trabajos Prácticos Nº 00: Repaso Ejercicio Nº01 Convierta los siguientes números naturales expresados en el sistema de numeración binario a sus correspondientes
Más detallesENTORNO DE SIMULACIÓN Y CONTROL DE UN ROBOT VELOCISTA
ENTORNO DE SIMULACIÓN Y CONTROL DE UN ROBOT VELOCISTA PROYECTO FIN DE CARRERA Departamento de Electrónica. Universidad de Alcalá. Ingeniería Técnica de Telecomunicación. Especialidad en Sistemas Electrónicos
Más detallesLección 5. Punto flotante
Lección 5. Punto flotante MIGUEL ANGEL UH ZAPATA 1 Análisis Numérico I Facultad de Matemáticas, UADY Agosto 2014 1 Centro de Investigación en Matemáticas, Unidad Mérida En esta lección aprenderemos lo
Más detallesResumen teórico de los conceptos necesarios para resolver el práctico 1. Vectores VECTORES
Resumen teórico de los conceptos necesarios para resolver el práctico 1. Vectores En física algunas cantidades se pueden representar mediante un valor y su correspondiente unidad (1 litro, 10 kilogramos).
Más detallesCapítulo 3. Diseño del reverberador.
Capítulo 3. Diseño del reverberador. Como se especificó anteriormente, para el diseño del reverberador por convolución se pretende utilizar un dispositivo FPGA. Un arreglo de compuertas programable en
Más detalles3.7 IDENTIFICACION DE UN SISTEMA DINÁMICO NO LINEAL Descripción del Problema: La identificación de un sistema consiste en
301 3.7 IDENTIFICACION DE UN SISTEMA DINÁMICO NO LINEAL 3.7.1 Descripción del Problema: La identificación de un sistema consiste en determinar una función que relacione las variables de entrada con las
Más detallesIntroducción a FPGAs. Contenido
Introducción a FPGAs Dra. Claudia Feregrino cferegrino@inaoep.mx Contenido 1. FPGA 2. Arquitectura genérica 3. Celda lógica 4. Field Programmable 5. Cómo se programa un FPGA 6. Herramientas de diseño 7.
Más detallesImplementación Hardware de Aplicaciones de la Pirámide
Implementación Hardware de Aplicaciones de la Pirámide Marco Aurelio Nuño Maganda 1, Miguel Arias Estrada 1, Claudia Feregrino Uribe 1 1 Instituto Nacional de Astrofísica, Óptica y Electrónica. Luis Enrique
Más detallesUTN-FRSC ANÁLISIS MATEMÁTICO I
INTRODUCCIÓN REPRESENTACIÓN GRÁFICA DE FUNCIONES TRIGONOMÉTRICAS En clases anteriores se ha trabajado con diferentes tipos de funciones: la función polinómica, la función racional y las funciones exponencial
Más detallesDiseño de reguladores PID.
Universidad Carlos III de Madrid Departamento de Ingeniería de Sistemas y Automática Área de Ingeniería de Sistemas y Automática SEÑALES Y SISTEMAS Práctica 3 Diseño de reguladores PID. 1 Introducción
Más detallesSesión VI: Desarrollo de aplicaciones en el entorno MATLAB
1 Sesión VI: Desarrollo de aplicaciones en el entorno MATLAB LPI: Control y Procesamiento Digital de Señales Por: Ricardo Alzate Castaño UNIVERSIDAD NACIONAL DE COLOMBIA Sede Manizales Segundo Semestre
Más detallesTipo de datos. Montse Bóo Cepeda. Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain.
Tipo de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización de los computadores.
Más detallesEl ordenador. Codificación binaria. Código ASCII
El ordenador Codificación binaria La razón por la que utilizar únicamente dos dígitos se debe a que todos los dispositivos de un ordenador trabajan con dos estados únicos. Activado-Desactivado, pasa corriente-no
Más detallesIntroducción al análisis numérico
Introducción al análisis numérico Javier Segura Universidad de Cantabria Cálculo Numérico I. Tema 1 Javier Segura (Universidad de Cantabria) Introducción al análisis numérico CNI 1 / 22 Contenidos: 1 Sistemas
Más detallesMATLAB. (PARTE III) APLICACIONES EN CONTROL CON SIMULINK SIMULINK
UNIVERSIDAD NACIONAL EXPERIMENTAL DEL TACHIRA DEPARTAMENTO DE INGENIERIA ELECTRONICA NUCLEO DE INSTRUMENTACION CONTROL Y SEÑALES LABORATORIO DE INSTRUMENTACION Y CONTROL MATLAB. (PARTE III) APLICACIONES
Más detalles