ELECTRÓNICA DIGITAL 1 2019 -2 UNIVERSIDAD NACIONAL DE COLOMBIA
Introducción
En las próximas 6 semanas se estará trabajando en la adquisición, procesamiento y visualización de imágenes. Para ello se hará uso de los siguientes componentes:
- Cámara OV7970 sin FIFO con las siguientes características:
- Matriz fotosensible: 640 x 480, el tamaño de la imagen se puede configurar
- Formato de salida RGB, RGB (GRB4: 2: 2, RGB565 / 555/444) sin formato, YUV (4: 2: 2) e YCbCr (4: 2: 2) Admite VGA, CIF y de CIF a formato 40 x 30.
- Se configura por medio del bus SCCB (compatible con I2C), para obtener los modos de configuración se recomienda leer la hoja de datos de la cámara.
- Tarjeta STM o Arduino, En primera instancia y para las pruebas iniciales, se hará uso de la tarjeta de procesamiento comerciales, como Arduino o STM32 ,
- Tarjeta de desarrollo FPGA, Nexys4, quacho-basic
- Sistema de visualización
- Sistema de captura, sistema manual para iniciar la captura de información
- IEEE Standard for Verilog y ECSS-Q-ST-60-02C
En resumen se muestra la configuración del dispositivo que se implementará.
Como se observa en el diagrama anterior se debe diseñar por parte de cada grupo de trabajo el contenido del bloque en verde el cual se describir a continuación:
En este sentido cada grupo debe trabajar en los bloques internos verdes junto con las interconexiones. Se proporcionarán los bloques en naranja.
El plan de trabajo propuesto es:
- WP01: Buffer de memoria WP01
- Semana 1: Buffer de memoria Simulación (TestBench). Analizar la máxima memoria ram que podemos alojar en la FPGA, y planear el método de adquisición de los datos de la cámara
- WP02 Cuenta de pixle y href WP02
- Semana 2: Captura de datos Construcción del bloque de captura de datos y divisor de frecuencias según hoja de datos de la cámara.
- Semana 3: Captura de datos Pruebas físicas con cámara
- WP03: Simulación
- Semana 4: Procesamiento
- WP04: Integración e implementación WP04
- Semana 6: Integración del proyecto y pruebas funcionales Semana 7: Presentación
Metodología de trabajo
Para cada paquete de trabajo se debe clonar la plantilla dada, y los resultados del trabajo de cada grupo deben ser subidos antes de la fecha estipulada. Se recomienda leer la ayuda de github classroom en este link y ver los videos de github de su canal de YouTube de este link o pueden descargar un libro de git del siguiente link Antes de empezar si no ha tenido ningún acercamiento con los repositorios de git debe realizar los siguientes pasos:
Antes de comenzar con cada paquete de trabajo se debe leer las instrucciones y tener todos los archivos. Para acceder a cada paquete de trabajo debe:
- Aceptar la asignación de cada link dado.
- La aplicación les pregunta si desean crear un grupo nuevo o unirse a uno existente:
- Para crear un grupo nuevo coloque “Grupo-xx”, donde xx es el número del grupo.
- Para unirse a un grupo existente, busque el nombre y pulse el botón ´join´.
Nota: Todos los estudiantes debes unirse al grupo correspondiente y tener cuidado de no equivocarse de grupo
Luego de unirse a cada grupo de trabajo debe clonar su repositorio en su computador, para lo cual:
- Si usted no tiene ningún conocimiento de cómo hacer esto, recomiendo usar github Desktop el cual se puede descargar de este link, y la documentación de uso la encuentra en este link Recuerde lo que debe hacer es clonar el repositorio creado de forma automática por git classroom y NO crear uno nuevo
- Para los estudiantes que usen el sistema operativo Linux les recomiendo usar la siguiente guía para clonar el repositorio e iniciar en el mundo de control de versiones link
RECUERDEN: Todos los integrantes del grupo deben trabajar en el respectivo repositorio y participar en los respectivos commit y push, tanto de la documentación
Documentación
Para todos los paquetes de trabajo se debe realizar la documentación respectiva, que evidencie el progreso del trabajo. Puede hacer uso de fotos, videos, comentar el código HDL, y todo lo que el grupo considere necesario para explicar los avances que va teniendo. Recuerde el trabajo que ustedes documenten, será el que leerán sus compañeros de los próximos semestres. En este contexto, la evaluación de la documentación será tenida en cuenta la minuciosidad y claridad de la misma.
La documentación se debe diligenciar en el archivo README.md, que se encuentra en cada repositorio dentro de la carpeta docs, en el cual deben colocar el nombre3 de los integrantes y el número de identificación. El archivo README.md, se debe escribir en formato Markdown. Para aprender cual es el formato de este documento se recomienda revisar el siguiente link que les da una visión rápida de formato usado para hacer la documentación. Las imágenes, fotos y soportes gráficos deben ser alojados en la carpeta ‘figs’ y deben ser vinculadas en documento README.md.
Código HDL
El código HDL está alojado en la carpeta ´src´. Allí están los archivos fuentes dados en clase y allí deben alojar todo los archivos diseñados y desarrollados por los integrantes de grupo y según sea solicitado en la guía de cada paquete de trabajo.
Entrega
Recuerde tener presente el deadline de cada paquete de trabajo, a las 8 de la noche del día indicado se cierra el sistema y los grupos no podrán actualizar el repositorio. Para actualizar el repositorio deben realizar el respectivo commit y push, según sea la plataforma que estén utilizando y como se explicó en clase. Recuerda también revisar que en la página de github se refleja las actualizaciones realizadas por el grupo de trabajo
Desarrollo
A continuación se presenta cada actividad a realizar, el plan de trabajo del proyecto de cada semana se encuentra en el link de documentación y el link de trabajo se encuentra en la columna repositorio.
WP | semana | deadline | Tema | Documentación | Repositorio |
---|---|---|---|---|---|
01 | semana 1 | 1 Nov | Buffer de memoria | link | WP01 |
02 | semana 2 /semana 3 | 15 Nov | Captura de datos | link | WP02 |
03 | semana 4 | 16 ene | Procesamiento | link | WP03 |
04 | Semana 8 | 6 febrero | Integración | link | WP04 |
Presentaciones de ideas de trabajo
GRUPO | Presentación |
---|---|
G01 | drive |
G02 | drive |
G03 | drive |
G04 | drive |
G05 | drive * |
G06 | drive |
G07 | drive |
Informes de laboratorios (5 prelabs)
Grupo | labs | docs | HDL |
---|---|---|---|
G01 | lab01-sumador 1bit (introducción a HDL) | link | link |
G01 | lab02-sumador 4 bit (Introducción a lógica Combinacional) | link | link |
G01 | lab03-7 segmentos (implementación de Mux-LUT) | link | link |
G01 | lab04- visualización dinámica (Introducción a Lógica Secuencia) | link | link |
G03 | lab01-sumador 1bit (introducción a HDL) | link | link |
G03 | lab02-sumador 4 bit (Introducción a lógica Combinacional) | link | link |
G03 | lab03-7 segmentos (implementación de Mux-LUT) | link | link |
G03 | lab04- visualización dinámica (Introducción a Lógica Secuencia) | link | link |
G03 | lab05 -sumador 4 bit secuencial (ejemplo sencillo de maquinas de Estado) | link | link |
G04 | lab01-sumador 1bit (introducción a HDL) | link | link |
G04 | lab02-sumador 4 bit (Introducción a lógica Combinacional) | link | link |
G04 | lab03-7 segmentos (implementación de Mux-LUT) | link | link |
G04 | lab04- visualización dinámica (Introducción a Lógica Secuencia) | link | link |
G04 | lab05 -sumador 4 bit secuencial (ejemplo sencillo de maquinas de Estado) | link | link |
G05 | lab01-sumador 1bit (introducción a HDL) | link | link |
G05 | lab02-sumador 4 bit (Introducción a lógica Combinacional) | link | link |
G05 | lab04- visualización dinámica (Introducción a Lógica Secuencia) | link | link |
ENTREGAS DEL PROYECTO
GRUPO | Entrega WP01 | Entrega WP02 | Entrega WP03 | Entrega Final |
---|---|---|---|---|
G01 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G02 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G03 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G04 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G05 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G06 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |
G07 | documento repositorio | documento repositorio | documento repositorio | documento repositorio |