20
IJornada de M icroelectrónica Aplicada Instituto Universitario de M icroelectrónica Aplicada Las Palm as de G ran Canaria,16 de julio de 2004 CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications C. Ruiz, V. Reyes, P. Santos, R. Peñate, T. Bautista, P.P. Carballo, G. Marrero y A. Nuñez División Sistemas Industriales y CAD

CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

  • Upload
    kelton

  • View
    53

  • Download
    0

Embed Size (px)

DESCRIPTION

CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications. C. Ruiz, V. Reyes, P. Santos, R. Peñate, T. Bautista, P.P. Carballo, G. Marrero y A. Nuñez. División Sistemas Industriales y CAD. Índice. Miembros participantes e Introducción Arquitectura del sistema - PowerPoint PPT Presentation

Citation preview

Page 1: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

I J ornada de Microelectrónica Aplicada

Instituto Universitario de Microelectrónica AplicadaLas Palmas de Gran Canaria, 16 de julio de 2004

CAMELLIA:Core for Ambient and Mobile intELLigent

Imaging ApplicationsC. Ruiz, V. Reyes, P. Santos, R. Peñate, T. Bautista, P.P. Carballo, G. Marrero y A.

Nuñez

División Sistemas Industriales y CAD

Page 2: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

2

Índice

Miembros participantes e IntroducciónArquitectura del sistemaDivisión del trabajoAplicaciones y algoritmosArquitectura del CoprocesadorMapeado: CASSEIntegración

Page 4: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

4

forintELLigent Imaging Applications

Introducción

Objetivos:Desarrollar un prototipo de SoC para aplicaciones “Smart Imaging” aplicadas a automoción y entornos móviles.

Empotrado en un sistema de compresión de video

Bajo coste y bajo consumo de potencia con máxima flexibilidad.

Ambient and Mobile Core

Page 5: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

5

Arquitectura del Sistema

Requerimientos:Flexibilidad: soporte de múltiples aplicaciones con una única arquitecturaCapacidad de procesadoBajo coste:

• Mínima área de silicio• Esfuerzo de desarrollo: arquitectura e interfaces genéricos

Bajo consumo de potenciaCompromiso entre flexibilidad y eficiencia

Programabilidad vs. adaptación a los algoritmos

Page 6: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

6

Arquitectura del Sistema

MemoriaSistema

ControladorMemoria

PeriféricosRAMARM9

Video IN EstimadorMovimiento

Smart ImagingB

ridge

Coprocesadores

CPU

Page 7: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

7

División del trabajo

El proyecto se organiza en paquetes de trabajo (Work Packages WP):

OrganizaciónEspecificaciónAlgoritmosArquitectura

MapeadoIntegraciónValidaciónDiseminación

Page 8: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

8

Especificación: aplicaciones

CAMELLIA

Automoción Comunicaciones móviles

Page 9: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

9

Especificación: aplicaciones

Elección de las aplicaciones como de los escenarios de validación de estas.

Aplicaciones de automoción:Detección de peatonesDetección de objetos a baja velocidad

Aplicaciones de comunicaciones móvilesEstabilización de imágenesSeguimiento de cabezas

Page 10: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

10

Algoritmos

Estructura:HLA: High Level AlgorithmMLA: Medium Level AlgorithmLLA: Low Level Algorithm

HLA

MLA MLA MLA MLA

LLA LLA LLA LLA

SourceForge: Camellia Image Processing Library

Page 11: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

11

Algoritmos

Ejemplo: Detección de objetos a baja velocidad:Algoritmo de alto nivel : Filtro de partículas (probabilidades)Algoritmos de nivel medio

• Segmentación de movimiento• Detección de sombras• Detección de luces• Detección de bordes• Detección de simetría

Algoritmos de bajo nivel

Page 12: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

12

Algoritmos

MLA: Detección de sombras:Busca áreas de oscuridad en la carreteraUtiliza: Histograma, Thresholding, Erosión, Etiquetado+Blob

Road Histogram

020406080

100120140160180

1 21 41 61 81 101 121 141 161 181 201 221 241

Pixel value

Num

of P

ixel

s

Series1

Imagen a procesar. Valores del histograma de una región de la carretera. Imagen “thresholded” antes de la erosión. Imagen después de la erosión.

Page 13: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

13

Algoritmos

MLA: Detección de luces:Busca zonas de alta componente en luminancia en la imagen, (utiliza el plano V) para detectar las luces traseras y la matrícula de los vehículosUtiliza: Histograma, Thresholding, Etiquetado + Blob

Page 14: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

14

Algoritmos

Secuencia ejemplo:

Page 15: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

15

Arquitectura del coprocesador “Smart Imaging”

Ejecutar todos los algoritmos “Smart Imaging” en un único coprocesador:

Limitada programabilidad Adaptación de las etapas aritméticas y control al área de aplicación

Análisis de los algoritmos a mapear en el coprocesadorIdentificación de la funcionalidad requerida por los algoritmos Análisis del tipo y orden de ejecución de las operacionesExtracción de coincidencias entre los algoritmos

Implementación del coprocesador en SystemC

Page 16: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

16

Arquitectura del coprocesador “Smart Imaging”

Page 17: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

17

Mapeado

Necesidad de un entorno de simulación que sirva para el modelado del comportamiento del sistemaCreación del “CAmellia System Simulation Environment (CASSE) “ modelo de alto nivel del sistema Camellia, compuesto por

Modelos de arquitecturaProtocolos de comunicaciónLibrería con las aplicaciones

Sirve de testbench para la verificación funcional del coprocesador y como plataforma virtual para facilitar el portar el software de las aplicacionesObtención de métricas de la carga de comunicación y estimaciones de las prestaciones del sistemaVarios niveles de abstracción:

Transaction-Level Modelling (TLM) Bus Cycle Accurate level (BCA)

Page 18: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

18

Mapeado: CASSE

LSOD_SW_task

SI_HW_task

ME_HW_task

Video_Input_task

MacroInst

Ack

Light_results Shadow_results

Edge_results Symmetry_results

Motion vectors

Best SADs

Control/sync

Input Frame

Pr o to co l T r an s lato r W r ap p e r s (PT W )

0

10000

20000

30000

40000

50000

60000

70000

80000

PE1.PTW(CPU)

PE2.PTW(SI)

PE3.PTW(ME)

PE4.PTW(V IDEO)

syn

chro

niz

atio

n c

alls

Ne tw o r k C o m p o n e n t 2

02468

101214161820

PE1 .INIT2(CPU)

PE2 .INIT2(S I)

PE3 .INIT2( ME)

PE4.INIT2( V IDEO)

Mb

ytes

Page 19: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

19

Integración

Implementación del prototipo en una FPGA AVALON:

Excalibur XA10: Core ARM922T APEX 20KE1500.AMBA high performance bus (AHB).

Necesidad de implementar la infraestructura de comunicaciones, bridges y wrappers entre los distintos protocolos, controladores de memoria.Portar el código de los algoritmos (HLAs y MLAs) al ARM9Verificación final

Page 20: CAMELLIA: Core for Ambient and Mobile intELLigent Imaging Applications

20

CAMELLIA:Core for Ambient and Mobile intELLigent Imaging

Applications