LABORATORIO DE ELECTRÓNICA DIGITAL PRÁCTICA 3

Anuncio
LABORATORIO DE ELECTRÓNICA DIGITAL
PRÁCTICA 3: IMPLEMENTACION CIRCUITO COMBINATORIO CON XILINX
1. Introducción
El desarrollo de dispositivos programables de alta capacidad de ocupación junto con las
herramientas de diseño y programación asociados a estos dispositivos ha dado lugar a que, hoy en
día, sea relativamente fácil implementar sistemas digitales incluso de alta complejidad sobre ellos.
En concreto, los dispositivos programables conocidos como FPGA (Field Programmable Gate Array)
alcanzan capacidades equivalentes a varios millones de puertas lógicas por chip y pueden incluir
cores de alta complejidad como, por ejemplo, de microprocesadores, memorias tipo RAM o ROM,
etc.
Estos dispositivos han contribuido a cambiar el proceso de diseño de sistemas digitales. Partiendo
de la descripción verbal del problema y del diseño de la solución, el siguiente paso consiste en
realizar la descripción en un lenguaje de hardware (o por medio de esquemáticos) de la solución
planteada y realizar una simulación para comprobar la funcionalidad y las especificaciones del
sistema. Para realizar estos pasos es necesario conocer y manejar las herramientas de diseño
disponibles, como Altera y Xilinx, los cuales siendo entornos gratuitos, incluye todas las etapas de
un proceso de diseño digital complejo, y adicionalmente también incluyen las herramientas de
traslación del diseño a una FPGA (Field Programmable Gate Array). El proceso de diseño finaliza
con la síntesis y programación del dispositivo seleccionado para la verificación funcional de la
aplicación.
De acuerdo con esto, esta práctica consiste en introducir al estudiante al diseño y simulación de
circuitos digitales básicos en el entorno integrado de descripción y simulación de Xilinx, así como al
sistema de desarrollo Nexys 2 que usaremos durante el curso.
2. Objetivos




Conocer el entorno de diseño a nivel de captura de esquemáticos del entorno de diseño de
Xilinx.
Conocer las herramientas de verificación del diseño desarrollado.
Conocer las características principales del sistema de desarrollo Nexys 2.
Desarrollar el proceso completo de diseño, verificación, implementación y testado de un
ejemplo de circuito digital sobre una FPGA
3. Componentes y equipos
-
Computador
ISE WebPack 10.1 versión libre de Xilinx
ModelSim Xilinx Edition
Adept Suite Software, versión libre
Sistema de Desarrollo Nexys 2 de Digilent
1
4. Procedimiento
Se proponen el diseño de dos sistemas diferentes. La asignación del sistema específico se realizará
de la siguiente forma: sume el último número de los documentos de identidad de los integrantes
del grupo de trabajo, divida por el número de integrantes y tome el entero del resultado. Si el
número resultante es par, entonces al grupo le será asignado el Sistema 1. Si el resultado es
impar entonces al grupo le será asignado el Sistema 2.
Sistema 1: Diseñar un circuito digital que implemente la siguiente descripción algorítmica descrita
en palabras.
If (A > B) y ( A ≤ 10) then
Resultado = A – B;
elsif (A <9) then
Resultado = A + 1 ;
end;
Sistema 2: Diseñar un circuito digital que implemente la siguiente descripción algorítmica descrita
en palabras.
If ( B <= 4) y (A<=5) then
Resultado= B + A;
elsif ( B > 5 )
Resultado = B - 1;
end;
Figura 1. Diagrama de bloques del sistema completo
Condiciones:
 Las entradas A y B son dos números binarios de 4 bits.
 La resta debe realizarse en complemento C2.
 El resultado debe ser mostrado en un display de 7 segmentos.
 El circuito completo debe ser implementado en esquemático y debe ser un diagrama de
bloques parecido al de la figura 1. Los bloques que el sistema completo debe contener son:
a) Bloque 1: sistema a diseñar (sistema 1 ó sistema 2)
b) Bloque 2: circuito encargado de dividir el número binario de 4 bits en dos números cada
uno de 4 bits, uno que represente las unidades y otro que represente las decenas.
c) Bloque 3: circuito encargado de multiplexar los diplay para mostrar el resultado de las
operaciones. Detalles de este bloque se muestran en la figura 2.
2
d) Bloque 4: circuito divisor de frecuencia, encargado de tomar la frecuencia del reloj de la
tarjeta de desarrollo de 50MHz y entregar a la salida una frecuencia de 1KHz.
Figura 2. Múltiplexación de un display 7 segmentos
SE PIDE:
4.1 Implementar usando la interfaz gráfica de Xilinx el diagrama esquemático mostrado en la
figura 1. Se exige que el Bloque 1 sea implementado totalmente en forma de esquemático. Al
igual que el diagrama completo como se muestra en la figura 1. Los otros bloques (bloque 2, 3
y 4) pueden ser implementados usando código VHDL y luego empaquetados en símbolos
esquemáticos.
4.2 Verificar por medio de simulación el correcto funcionamiento del Bloque 1 y Bloque 2.
4.3 Sintetizar el diseño completo como se muestra en la figura 1 y corregir los errores reportados.
4.4 Una vez se haya garantizado la correcta funcionalidad del sistema y sintetizado
satisfactoriamente el diseño, puede proceder a configurar los pines del sistema de desarrollo
para la programación de ésta. (Para este punto, por favor lea los archivos Nexys2_rm.pdf y
Basys2_rm.pdf publicados en la pagina Web del curso).
4.5 Programar el sistema de desarrollo en compañía del profesor o el monitor del laboratorio y
verificar físicamente el funcionamiento del sistema.
4.5 Consultar:
 ¿Cuáles son los 5 elementos funcionales programables de la familia de FPGAs Spartan 3E y en
que consiste cada uno de ellos?
 Explique el significado de la siguiente referencia de FPGA: XC3S500E-4FGG320C.
Adicionalmente especifique los siguientes parámetros: a) cantidad de compuertas lógicas; b)
cantidad de celdas lógicas; c) cantidad de multiplicadores; d) tamaño bloque de RAM
 ¿Qué tecnología de fabricación es usada en la Spartan 3E?, ¿Qué significa esto y cuál es la
predicción en cuanto a la tecnología a usar después del 2010 según el “FPGA Roadmap”?
5. Informe
Presente un informe del desarrollo de la práctica, procedimiento empleado, programas, figuras,
consultas, respuestas a las preguntas y justificación de los resultados obtenidos. Adicionalmente,
incluir conclusiones.
3
Descargar