practica 2- cad

6
1 Practica #2 Diseño de un Reloj en Bloques Implementado en el FPGA. Buri Abad Edison Arturo [email protected] Moscoso Nugra Santiago Xavier [email protected] UNIVERSIDAD POLITECNICA SALESIANA Sede Cuenca - Campus El Vecino Ingeniería Electrónica Abstract—En el presente informe se describirá la tecnología FPGA que permite implementar cualquier circuito digital, la her- ramienta de programación Quartus II que permite fundamentar la programación de cualquier circuito digital. Index Terms—FPGA, Quartus II, Arduino, circuito digital, autónomo. I. OBJETIVOS A. Objetivos Generales Conocer el FPGA y cada una de las partes que lo conforman Familiarizarse con el programa Quartus II B. Objetivos Específicos Implementar el diseño de un circuito digital en el pro- grama Quartus II Realizar el mismo circuito en un diagrama a Bloques. II. I NTRODUCCIÓN U N FPGA es una herramienta en la que se puede realizar cualquier circuito digital, dependiendo del tamaño se puede implementar diseños más complejos, debido a que pude contar con más recursos internos. Además un FPGA nos brinda una manera de poder crear diseños digitales sin tener que utilizar componentes externos, de esta manera lo convierte en una herramienta interesante. Por otro lado tenemos una nueva herramienta Quartus II que no permite implementar el diseño de un circuito digital, visualizar su comportamiento en el tiempo, compilar los diseños, etc. III. MARCO TEÓRICO A. Que es un FPGA Un FPGA (Field Programmable Gate Array), no es como un microcontrolador, es un chip programable introducido por XIlinx en 1985, consiste en una matriz bidimensional de blo- ques configurables que se pueden conectar mediante recursos generales de interconexión. Estos recursos incluyen segmentos de pista de diferentes longitudes, más unos conmutadores programables para enlazar bloques a pistas o pistas entre sí. En realidad, lo que se programa en una FPGA son los conmutadores que sirven para realizar las conexiones entre los diferentes bloques, más la configuración de los bloques. Las aplicaciones comúnmente utilizan más los FPGA in- cluyen el procesamiento digital de señales, sistemas aeroespa- ciales, sistemas de imágenes para medicina, sistemas de visión para computadoras, reconocimiento de voz, bioinformática, emulación de hardware de computadora, prototipos de ASICs entre otras. Figure 1. FPGA CIC-560 B. Sottware Quartus II Quartus II es una herramienta de software producida por Altera para el análisis y la síntesis de diseños realizados, ofrece la más alta productividad y el mejor rendimiento de los FPGA también incluye una serie de utilidades que reducen el tiempo de diseño, las mismas que seran expermimentadas posteriormente. Existen dos formas de acceder al software Quartus II: 1) Quartus II Edición Web Es una version gratuita que puede ser descargada di- rectamente de la pagina de Altera (www.altera.com), la desventaja de esta edición es que solo permite la programación y compilación limitada. Cada mencionar

Upload: eddys-buri

Post on 08-Jul-2016

24 views

Category:

Documents


0 download

DESCRIPTION

fpga segunda practica

TRANSCRIPT

Page 1: Practica 2- CAD

1

Practica #2Diseño de un Reloj en Bloques Implementado en el

FPGA.Buri Abad Edison Arturo

[email protected] Nugra Santiago Xavier

[email protected] POLITECNICA SALESIANA

Sede Cuenca - Campus El VecinoIngeniería Electrónica

Abstract—En el presente informe se describirá la tecnologíaFPGA que permite implementar cualquier circuito digital, la her-ramienta de programación Quartus II que permite fundamentarla programación de cualquier circuito digital.

Index Terms—FPGA, Quartus II, Arduino, circuito digital,autónomo.

I. OBJETIVOS

A. Objetivos Generales

• Conocer el FPGA y cada una de las partes que loconforman

• Familiarizarse con el programa Quartus II

B. Objetivos Específicos

• Implementar el diseño de un circuito digital en el pro-grama Quartus II

• Realizar el mismo circuito en un diagrama a Bloques.

II. INTRODUCCIÓN

UN FPGA es una herramienta en la que se puede realizarcualquier circuito digital, dependiendo del tamaño se

puede implementar diseños más complejos, debido a que pudecontar con más recursos internos. Además un FPGA nosbrinda una manera de poder crear diseños digitales sin tenerque utilizar componentes externos, de esta manera lo convierteen una herramienta interesante. Por otro lado tenemos unanueva herramienta Quartus II que no permite implementar eldiseño de un circuito digital, visualizar su comportamiento enel tiempo, compilar los diseños, etc.

III. MARCO TEÓRICO

A. Que es un FPGA

Un FPGA (Field Programmable Gate Array), no es comoun microcontrolador, es un chip programable introducido porXIlinx en 1985, consiste en una matriz bidimensional de blo-ques configurables que se pueden conectar mediante recursosgenerales de interconexión. Estos recursos incluyen segmentos

de pista de diferentes longitudes, más unos conmutadoresprogramables para enlazar bloques a pistas o pistas entresí. En realidad, lo que se programa en una FPGA son losconmutadores que sirven para realizar las conexiones entrelos diferentes bloques, más la configuración de los bloques.

Las aplicaciones comúnmente utilizan más los FPGA in-cluyen el procesamiento digital de señales, sistemas aeroespa-ciales, sistemas de imágenes para medicina, sistemas de visiónpara computadoras, reconocimiento de voz, bioinformática,emulación de hardware de computadora, prototipos de ASICsentre otras.

Figure 1. FPGA CIC-560

B. Sottware Quartus II

Quartus II es una herramienta de software producida porAltera para el análisis y la síntesis de diseños realizados,ofrece la más alta productividad y el mejor rendimiento delos FPGA también incluye una serie de utilidades que reducenel tiempo de diseño, las mismas que seran expermimentadasposteriormente.

Existen dos formas de acceder al software Quartus II:1) Quartus II Edición Web

Es una version gratuita que puede ser descargada di-rectamente de la pagina de Altera (www.altera.com),la desventaja de esta edición es que solo permite laprogramación y compilación limitada. Cada mencionar

Page 2: Practica 2- CAD

2

Figure 2. Software Quartus II

que la familia de FPGA Cyclone, está soportada por estaedición, por lo no se tendrán problemas con el software.

2) Edición de Suscripción de Quartus IIEsta edición se la puede descargar de la pagina oficialdeAltera, pero se debe realizar un pago para poder accedera todas las funciones del software.

C. Circuito 74LS90 TTL Contador.

Este circuito integrado consta de 2 contadores indepen-dientes uno de 1 bit y otro de 3 bits, utilizando los doscontadores internos podemos hacer que cuente de 0 a 9 aunqueconfigurando los pines 2,3,6 y 7 con las salidas podemos hacerque no solo cuente en sistema decimal.[9]

Figure 3. Pines de 74LS90. [9]

D. Circuito 74LS47 TTL Desodificador.

El circuito integrado 7447 o subfamilia (74LS47, 74F47,74S47, 74HCT47,..) es un circuito integrado que convierte elcódigo binario de entrada en formato BCD a niveles lógicosque permiten activar un display de 7 segmentos de ánodocomún en donde la posición de cada barra forma el número de-codificado. Si queremos utilizar tecnología CMOS tenemos el4511. Las salidas del circuito hacia los segmentos del displayson en colector abierto. Pudiendo de esta manera controlardisplay que consuman 40 mA máximo por segmento.[10]

Figure 4. Pines de 74LS90. [10]

E. 74LS151 TTL Multiplexor

Un multiplexor o MUX es un switch digital (interruptordigital) que conecta una de las entradas con su única salida,Desde el punto de vista de los sistemas digitales es uncircuito combinacional con varios canales de entrada, unaúnica salida y una lógica de control que selecciona el canalque se debe presentar a la salida del circuito, Las señales deentrada pueden ser más de una, Por lo general también cuentacon una señal de habilitación que permite que el circuitoresponda una vez que se selecciona como activo.

Figure 5. Pines de 74LS90. [10]

IV. LISTADO DE MATERIALES

• Sotfware Quartus 9.• Equipo FPGA/CPLD Development System CIC 560.• Manual FPGA/CPLD Development system CIC 560.• USB Blaster.

V. DESARROLLO

Procedemos a diseñar el circuito digital que posteriormentelo implementaremos mediante el software Quartus II.

A. Diseño del Ciruito

En esta práctica realizaremos el diseño de un circuito digitaldenominado reloj digital, el cual funciona con arrastre de bits..

Page 3: Practica 2- CAD

3

1) Esquema Proteus.: A continuación procedemos amostrar el diseño en proteus, en la cual se especcifican lascondiciones en las cuales la salida respondera correctamente.

Figure 6. Esquema en Proteus.

Como se puede apreciar en la tabla1, la salida “x” tomara elestado de 1 o alto solamente cuando tres de las cuatro entradas(a, b ,c, d) tengas un valor de 1 o alto, en los demas casos“x” sera 0 o bajo.

2) Implementacion en Quartus II: Una véz que obtuvimosla ecuacion que representa a nuestro circuito, procedemos aimplementar la ecuación en el software, para ello seguiremoslas siguientes instrucciones:

• Abrimos el programa Quartus II

Figure 7. Software Quartus II

• Creamos un nuevo proyecto y seleccionamos BlockDiagram

Figure 8. Proyecto “Comparación FPGA vs Arduino”

• Se muestra el diagrama de bloques del Circuito.

Figure 9. Esquema del Circuito.

• En el espacio de trabajo procedemos a elaborar elcircuito, teniendo en cuenta que para la multiplexaciónes necesario la implementaciuón de flip-flopsA continuación procedemos a mostar el circuitoelaborado en el software Quartus II, dado que es muyextenso se lo mostrara por Bloques

Figure 10. Esquema del Circuito Bloque 1 Flip-Flops

Page 4: Practica 2- CAD

4

Figure 11. Esquema del Circuito Bloque 2 Logica de Compuertas.

Figure 12. Esquema del Circuito Bloque 3 Salida del Bloque de Compuertas.

Figure 13. Esquema del Circuito Bloque 3 Contadores 74LS90

Figure 14. Esquema del Circuito Bloque 4 Multiplexación.

• A continuacion procedemos a realizar el asignamientode pines tanto a las cuatro entradas como a la salida,es decir van a tener un pin correspondiente en el FPGAcon un número determinado.

Page 5: Practica 2- CAD

5

Figure 15. Asignación de Pines

• A contunuacion abrimos un nuevo proyecto pero estavez seleccionaremos Vector Waveform File

Figure 16. Proyecto Vector Waveform File

• Una vez creado el proyecto Vector Waveform File,procedemos a importar los nodos (entradas y salidas)

Figure 17. Paso 1: Insertar Nodos

• Seleccionamos la opción Node Finder, luegoen list e inmediatamente se podra visualizartodos los nodos que existen en nuestroproyecto, posteriormente los importamos a todos.

Figure 18. Paso 2: Insertar Nodos

• Posteriormente apareceran nuestras entradas y salidaso nodos en nuestro proyecto, a continuación crearemosuna señal de reloj para cada una de las entradas condiferentes periodos. De esta manera se comprobaria latabla de verdad y el correcto funcionamiento de delcircuito.

Figure 19. Comprobación Tabla de Verdad

• Finalmente procedemos a grabar nuestro proyecto en elFPGA, y asi poder comprobar el correcto funcionamientomediante la utilización de un dip swhich (entradas) y unled (salida) del FPGA.

Figure 20. Grabamos el programa en el FPGA

3) Funcionamiento del circuito en el FPGA: A contin-uación podemos visualizar el funcionaiento del circuito im-plementado en el FPGA, para ello se acciona con un pulsantepara igualar Minutos y otro para igualar Horas.

VI. CONCLUSIONES

La práctica se concluyó de manera exitosa, pudiendovisualizar como aumetan los segundos, consecuentemente

Page 6: Practica 2- CAD

6

tambien los minutos para luego afectar a las horas, realizadoel correcto funcionamiento de una reloj en el FPGA.

Los FPGA tienen la ventaja de ser reprogramables, lo queañade una enorme flexibilidad al flujo de diseño es decirun gran beneficio en el ámbito academico y profesional,debido a que sus costes de desarrollo y adquisición sonmucho menores para pequeñas cantidades de dispositivos, yel tiempo de desarrollo es también menor.

Por lo tanto los FPGA son una alternativa bastante válidacon respecto a otro tipo de herraminetas, como sistemasmicroprocesados o circuitos electrónicos dedicados.

Los elementos electrónicos que se tiene en los programasde simulación como por ejemplo Proteus 8, también lopodemos encontrar en Quartus II, debido a esto es posible laimplementación de grandes circuitos.

The practice was completed successfully, can be visualizedas aumetan seconds, consequently also the minutes and thenaffect the hours, performed the proper functioning of a clockin the FPGA.

FPGAs have the advantage of being reprogrammable,which adds tremendous flexibility to design flow that is agreat benefit in the academic and professional field, becausetheir development costs and acquisition are much lower forsmall quantities of devices, and development time is also less.

Therefore FPGAs are quite valid alternative to other tools,such as microprocessor-based electronic systems or dedicatedcircuits.

The electronics you have in simulation programs such asProteus 8 also can be found in Quartus II, this is possible dueto the implementation of large circuits.

REFERENCES

[1] INTRODUCCIÓN A LOS DISPOSITIVOS FPGA. ANÁLISIS YEJEMPLOS DE DISEÑO, Bozich Eduardo Carlos Revisado: 14/05/2016

[2] Workshop FPGA University Program, ISTEC, Pontificia UniversidadJaveriana de Cali Colombia (PUJ), University of New México, RedDSP– PUJ-UTPL, Ing. Ferney Amaya, Ing. Alonzo Vera.

[3] http://www.ni.com/white-paper/6984/es/[4] http://web.archive.org/web/20080729143029/[5] http://www.altera.com/products/software/products/quartus2/qts-index.

html[6] Torrente, A. O. (2013). Arduino: Curso práctico de formación. San

Fernando de Henares, Madrid: RC Libros. Revisado: 14/05/2016[7] Diseño Digital Autor: M.Morris Mano, Gonzalo Duchén Sánchez Pear-

son Education, 2003 Revisado: 14/05/2016[8] Manual de Prácticas FPGA – UPS Revisado: 14/05/2016[9] Electrónica: teoría y práctica. CIRCUITO 7490 TTL. Revisado:

14/05/2016 Disponible: http://electronica-teoriaypractica.com/circuito-7490-ttl/

[10] Electrónica: teoría y práctica. CIRCUITO 7490 TTL. Revisado:14/05/2016 Disponible: http://electronica-teoriaypractica.com/circuito-7447-ttl/

[11] MULTIPLEXORES. Ing. José Alberto Díaz García. Revisado:14/05/2016 Disponible: http://www.ie.itcr.ac.cr/jdiaz/licenciatura/DISENO_LOGICO/MATERIALES/PRESENTACIONES/MULTIPLEXORES.pdf

Santiago Xavier Moscoso Nugra , Bachiller Téc-nico en Electrónica de Consumo en el ColegioTécnico Nacional “Daniel Córdova Toral” Cuenca-Ecuador. Estudiante de Pre-Grado de IngenieríaElectrónica mención Sistemas Industriales en la“Universidad Politécnica Salesiana” Sede Cuenca.

, Bachiller Técnico en Electrónica de Consumoen el Colegio Técnico “Luis Rogerio Gonzáles”Azogues-Ecuador. Estudiante de Pre-Grado de Inge-niería Electrónica mención Sistemas Industriales enla “Universidad Politécnica Salesiana” Sede Cuenca.