La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Trabajos Previos El uso de CORE’s se enfoca en mejorar el desarrollo de sistemas, obteniendo flexibilidad. ● OctaLynx – microcontrolador RISC de 8 bits,

Presentaciones similares


Presentación del tema: "Trabajos Previos El uso de CORE’s se enfoca en mejorar el desarrollo de sistemas, obteniendo flexibilidad. ● OctaLynx – microcontrolador RISC de 8 bits,"— Transcripción de la presentación:

1 Trabajos Previos El uso de CORE’s se enfoca en mejorar el desarrollo de sistemas, obteniendo flexibilidad. ● OctaLynx – microcontrolador RISC de 8 bits, construido [8] como CORE con periféricos y memoria externa, en un FPGA [9]. ● Implementar el CORE de un microprocesador de 8 bits para controladores asíncronos con alternativa pipeline de Muller [10]. ● Roman - Jones, Inc., [13] desarrollaron un CORE del procesador 8051 para FPGA’s de Xilinx, para optimizar recursos del FPGA ● IP CORE del procesador 8051 es compatible a nivel binario [14] con el procesador 8051 de Intel; descrito en VHDL, muy usado en sistemas embebidos, re- configurable. DESARROLLO DEL CORE DE UN PROCESADOR DE IMÁGENES DE TIPO SIMD EMBEBIDO EN UN FPGA Oscar O. Ordaz García 1,2, Manuel Hernández Calviño 3, José Ignacio Benavides Benítez 2 y José G. Arceo Olague 1. 1 Unidad Académica de Ingeniería Eléctrica, Universidad Autónoma de Zacatecas, México. 2 Dpto. Arquitectura de Computadores, Electrónica y Tecnología Electrónica, Universidad de Córdoba, España. 3 Dpto. Física General, Facultad de Física, Universidad de La Habana, Cuba. RESUMEN: El uso de nuevas herramientas para el diseño y desarrollo de sistemas digitales es sumamente necesario, en la actualidad existen los dispositivos lógicos programables. En este trabajo se presenta el desarrollo del CORE de un Procesador Paralelo SIMD para aplicaciones gráficas implementado en un FPGA. Este periférico ejecuta el funcionamiento de una arquitectura de hardware específica en aproximación al procesador Xetal en su primera versión; se realizó en forma esquemática y con lenguaje descriptivo de hardware. El procesador contiene un arreglo de procesadores elementales, los cuales ejecutan instrucciones en forma paralela. El procesador se encuentra embebido dentro del FPGA con el objetivo de ser utilizado como un núcleo con funciones especificas de procesamiento de video y disponer de la utilidad de la lógica de hardware restante para crear módulos para cálculos de sistemas de control necesarios para proyectos determinados. Introducción La representación de procesos visuales esta incorporada en muchos dispositivos electrónicos, el proceso tiene metodologías que no son sencillas, potenciando el desarrollo de procesadores gráficos [2]-[4]. Así como el uso de procesadores de imágenes de baja resolución en redes de seguridad por el bajo consumo de energía [5]. Procesadores SIMD son usados por eficientes en aplicaciones en paralelo [7]. Dispositivos lógicos programables pueden reproducir complejos sistemas como procesadores de video [1]. Objetivo: Implementar un procesador SIMD para imágenes en un FPGA – Estructura de un CORE con una arquitectura especifica; para comunicación o control con otros sistemas a través de la lógica del mismo FPGA. Tabla 1. Resultados de la Síntesis. Diseño y Descripción del Procesador ● Código de Instrucciones de 32 bits – 2 Formatos Óptimo – GCP (16 instruc) y PE’s (16 instruc). Resultados ● Cantidad de recursos lógicos – implementar diseño – componentes evaluados – Slices y LUT’s. ● Síntesis Xilinx ISE – consume 6% de Slices Registers y 50% de LUT’s. ● Estimación de tiempos – periodo mínimo 19.289ns una frecuencia de reloj máxima 51.842Mhz –funcionar el procesador. ● Diseño integral – comunicación MicroBlaze – EDK-XPS configurar y codificar descripción del hardware. ● Sistema utiliza en total 14,528 Flip Flops y 49,310 LUT’s. ● MicroBlaze ocupa – 1% de Flip Flops y el 2% de LUT’s. ● Diseño integral ocupa – 8% de Flip Flops y 54% de LUT’s disponibles del FPGA. ● Instrucción procesador – 4 ciclos de reloj – búsqueda, decodificación, ejecución y almacenamiento. ● CORE – funciona a una frecuencia de 26.6MHz – permite realizar el procesamiento de imágenes en tiempo real. ● CORE – ejecuta algoritmos – filtrado, detección de bordes – segmentación de imágenes. ● Realizar operadores de gradiente o mascaras de convolución – Sobel y Prewitt. Conclusiones ● FPGA’s – proporciona reconfiguración, flexibilidad y versatilidad en diseño, verificación e integración de CORE’s. ● Estructura de un procesador paralelo de Imágenes de tipo SIMD – arquitectura especifica. ● Desarrolló – CORE compacto – instanciar un MicroBlaze. Fig. 1 Diagrama de Bloques de la Arquitectura del Procesador Implementación ● FPGA – Xilinx Spartan-6 / Diseño esquemático y descriptivo – Xilinx ISE – Simulación & Síntesis. ● CORE – Independiente o control con un sistema digital / PicoBlaze / MicroBlaze. ● Importancia – Determinar cantidad de recursos usados en FPGA para implementar el sistema total integral.. ● CORE – Óptimo en sistemas de resolución estándar QVGA – procesa imágenes de 320 x 240 pixeles. ● Memorias PE’s descritas internamente [19] – Registros / optimizar recursos ahorrado BlockRAM – Almacenan los pixeles de las líneas de imagen. ● Líneas secuenciales para entrada y salida de imagen – conversión serie/paralelo & paralelo/serie. ● Puesta a punto – MicroBlaze soft-Core / interface control y comunicación, embebido en el FPGA. ● Comunicación – Puerto RS232, conectado el CORE – “PLB BUS” MicroBlaze [21]. Fig. 2 Arreglo Lineal de Procesadores Elementales Aspectos claves en procesamiento paralelo es la replicación de los PE’s, el sistema de interconexión y los mecanismos de entrada y salida de datos [18]. ● PE optimizado [19]. ● Diseño Arquitectura del LPA – Diagrama Diseño y Descripción del Procesador Componentes: ● Memoria de Programa ● GCP (Global Control Processor) ● LPA (Linear Processor Array) ● LPA – 160 PE’s (Processing Elements) ● PE – AU (Arithmetic Unit) MU (Memory Unit) [16], [17]. Slice con Flip Flops LUT’s Síntesis ISE CORE Procesador 11,922 46,189 6 %50 % Síntesis EDK-XPS Diseño Integral 14,52849,310 8 %54 % Recursos Disponibles 184,30492,152 ● Integración de procesadores en FPGA’s – viabilidad a diseños de hardware. ● Diseño del CORE – proporcionó espacio remanente del FPGA para acoplar – sistema para comunicación o control. ● Versión simplificada y compatible con el repertorio de instrucciones ejecutadas por la Unidad Aritmética/Lógica (ALU) de cada PE [20] e instrucciones globales (GCP) del procesador Xetal [16]. Fig. 3 Nemotécnico para codificación de programa. OpcodeDestination Reg Source Reg ASource Reg B Immediate Value 3126211611 0 OpcodeDestination RegSource Reg AImmediate Value 31231915 6 Formato del código de instrucciones del GCP. (5 campos) Formato del código de instrucciones de los PE’s. (4 campos) Opcode → Codificación Instrucción Destination Reg → Registro Destino Source Reg A → Registro Operando Source Reg B → Registro Operando Immediate Value → Valor Inmediato Opcode → Destination Reg → Source Reg A → Immediate Value → Codificación Instrucción Dirección Memoria PE Coeficiente


Descargar ppt "Trabajos Previos El uso de CORE’s se enfoca en mejorar el desarrollo de sistemas, obteniendo flexibilidad. ● OctaLynx – microcontrolador RISC de 8 bits,"

Presentaciones similares


Anuncios Google