VHDL. Lenguaje de descripción hardware Estructura Básica de diseño

Documentos relacionados
VHDL: Código Secuencial. Arquitectura del Computador 2017

Tema 3 - Modelado con HDL a nivel RTL

DISEÑO DE CIRCUITOS SECUENCIALES

Recursos y Metodologías. Función. Programas

PRÁCTICA: LENGUAJE VHDL

VHDL Y FPGA LENGUAJE VHDL

Practica No. 5 Diseño de un Multiplicador

MAQUINA DE ESTADO FINITO (FSM) Autómata finito

SINTAXIS BÁSICA DEL VHDL SIMPLIFICADO

LABORATORIO DE CIRCUITOS DIGITALES (2005-II) SEGUNDA CLASE DE VHDL

MAQUINA DE ESTADO FINITO (FSM) Autómata finito

LENGUAJE VHDL. Ing. Wilmer Naranjo 1

Objetos de VHDL. Un objeto en VHDL es un elemento que contiene un valor de tipo específico de dato

Introducción al VHDL. VHDL orientado a la síntesis de circuitos en Dispositivo Lógicos Programables

Objetos de VHDL.! Un objeto en VHDL es un elemento que contiene. un valor de tipo específico de dato

II. Unidades de Diseño en VHDL

Introducción a VHDL. Por: Carlos A. Fajardo

DESCRIPCIÓN DE CIRCUITOS DIGITALES

Electrónica Digital Departamento de Electrónica VHDL. Bioingeniería Facultad de Ingeniería - UNER

Laboratorio de Arquitectura de Computadoras

Sistemas Electrónicos Digitales Curso de adaptación al Grado

6. Codificadores. Electrónica Digital. Tema

Práctica I Modelado y simulación de una máquina expendedora de refrescos

Introducción a VHDL. Por: Carlos A. Fajardo UIS - Sistemas Digitales

Arquitectura de Computadores. Práctica 1: Diseño Hardware de Procesadores. Práctica 1/1

Tema 2 Descripción de VHDL (2/2)

+ Máquinas de Estado Finitas

Sesión 1: Introducción al lenguaje VHDL. S1 1 Laboratorio de Estructura de Computadores Curso 04 / 05

Practicas tuteladas VHDL (curso 04-05)

Sesión 5: Unidades de Diseño VHDL

UNIVERSIDAD CARLOS III DE MADRID. Ejercicios de VHDL. Circuitos Integrados y Microelectrónica. Luis Entrena. Celia López.

Julio. [ Programación en VHDL ] Guía rápida. [ h t t p : / / w w w. o p e n b o x e r m b. c o m / a s i g n a t u r a s / d s d.

5. Decodificadores. Salida _1= A A A A = m = M ... Electrónica Digital. Tema

SISTEMAS DIGITALES VHDL

Practica No. 8 Introducción a las Máquinas de Estados. 1. En la figura 1 se muestra el comportamiento de un robot que evade obstáculos.

INGENIERÍA DE COMPUTADORES III. Solución al examen de Septiembre 2013

4. SUMADORES EN BINARIO PURO (I)

Operadores y atributos en VHDL [1]

Sistemas Electrónicos Digitales. PRACTICA nº 3

Memorias ROM: FPGA-VHDL Cómo???

Sistemas Electrónicos Digitales. PRACTICA nº 8

LABORATORIO DE CIRCUITOS DIGITALES (2005-II) QUINTA CLASE DE VHDL

Sistemas Digitales - Examen temas 1, 2 y 3 - (6 de Abril 2016)

Tema 4 - Bloques combinacionales

Ejemplo básico de descripción VHDL

PARTE I. TÉCNICAS DE DISEÑO ELECTRÓNICO MEDIANTE LENGUAJES DE DESCRIPCIÓN HARDWARE

VI. Especificación del Comportamiento

Tipos de datos en VHDL

Tema 2. Funciones Lógicas. Algebra de Conmutación. Representación de circuitos digitales. Minimización de funciones lógicas.

Tema 2. Funciones Lógicas. Algebra de Conmutación. Minimización de funciones Lógicas. Introducción al VHDL.

GUÍA PRÁCTICA DEL SOFTWARE ACTIVE-HDL.

VHDL. Carlos Andrés Luna Vázquez. Lección 10 Problemas

ICTP Latin-American Advanced Course on FPGADesign for Scientific Instrumentation. 19 November - 7 December, 2012

5.1. Introducción a los sistemas digitales

Tutorial de VHDL: Contadores y Simulación

Simulación avanzada con TestBench en HDL. Ing. Andrés Miguel Airabella. Ing. Facundo Aguilera.

Planificaciones Sistemas Digitales. Docente responsable: ALVAREZ NICOLAS. 1 de 5

Introducción a PL/SQL

Tema 2 Descripción de VHDL (1/2)

Práctica 7. Diseño en VHDL de un modulador PPM

Práctica 6. Diseño Lógico Digital mediante VHDL

Sesión 4: Sentencias concurrentes y paquetes. S4 1 Laboratorio de Estructura de Computadores Curso 04 / 05

VHDL. Carlos Andrés Luna Vázquez. Lección 5. Sentencias concurrentes

Manual de turbo pascal

ELECTRÓNICA DIGITAL 24-I Determinar el valor decimal de los números expresados en Complemento a 2. (0.25 puntos).

SÍNTESIS DE CIRCUITOS DIGITALES CON VHDL.

CIRCUITOS MULTIPLEXORES Y DEMULTIPLEXORES

1. Módulo de desarrollo Spartan 3 STARTER KIT con un FPGA xc3s200 ft Software de diseño XILINX ISE versión 10.1

VHDL: Tipos de datos. Arquitectura del Computador 2017

1. ESTRUCTURA DE UN PROGRAMA PASCAL Todo programa escrito en lenguaje Pascal, del más simple al más complejo, tiene la siguiente estructura:

Laboratorio de Arquitectura de Computadoras

INGENIERÍA DE COMPUTADORES 3. Solución al Trabajo Práctico - Junio de 2013

Teoría de Diseño lógico

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA TRABAJO TUTORADO DE VHDL. Primer Cuatrimestre Curso 2005/2006.

Lenguaje descripción de hardware: VHDL

Lenguaje de descripción de Hardware VHSIC

Sumador completo de un bit - Versión VHDL Sintético

4.5. Procedimiento de síntesis

Tutorial 2: Pasar de diagrama ASM a un circuito

CODIFICADORES CON PRIORIDAD. Grupo 2

Tutorial de ModelSim PE Student Edition

Introducción al VHDL

Simulación y Síntesis con VHDL

Capítulo 2: LENGUAJES DE DESCRIPCIÓN DE HARDWARE: VHDL

Titulación: Ingeniería Informática Asignatura: Fundamentos de Computadores. Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos

Decodificadores/Demultiplexores. Grupo 9 Javier de Gregorio Menezo Laro de la Fuente Lastra Raúl Fernández Díaz

Índice. VHDL Lección 2.9 Máquinas de Estados Finitos (FSM) 1

Digital III. El Microprocesador i80c86

LABORATORIO DE CIRCUITOS DIGITALES (2005-II) CUARTA CLASE DE VHDL

SIMULACIÓN EN VHDL CON VERIBEST

3.1 Introducción a VHDL

Comparador de 1 bit Tabla de verdad y circuito lógico A B A > B A = B A < B

DISEÑO DE PROCESADORES DEDICADOS. Práctica 6 LCD de Propósito General

2. Sumadores. Diagrama. Donde a y b son los bits a sumar, S el. resultado de la suma y C el acarreo generado. b EB. Circuito. Tabla de verdad.

CONTADORES. Definición. Diseño y analisis de un contador binario hacia arriba de 3 bits con flip-flops JK. Otros contadores típicos.

Tema 7. Análisis de Circuitos Secuenciales

Sistemas Electrónicos Digitales. PRACTICA nº 7

9. Dibujar el diagrama de tiempos de las siguientes asignaciones de señales.

ABSTRACCIONES DE UN SISTEMA DIGITAL

VIII. Jerarquías de diseño en VHDL

Transcripción:

VHDL. Lenguaje de descripción hardware Estructura Básica de diseño 2007 A.G.O. All Rights Reserved

Estructura de un diseño en VHDL LIBRARY declaraciones VHDL estructura básica ENTITY caja negra ARCHITECTURE descripción LIBRARY PACKAGE FUNCTIONS PROCEDURES COMPONENTS CONSTANTS TYPES S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 2de 13

Elementos de descripción VHDL Bibliotecas (Library) Almacenan los elementos de diseño: tipo de datos, operadores, componentes, objetos, funciones,... Esos elementos de diseño se organizan en Paquetes Packages: son unidades de almacenamiento de elementos y tienen que hacerse visibles para poder ser utilizados. Hay 2 bibliotecas que siempre son visibles por defecto: std (la standard) y work (la de trabajo) y que no es necesario declarar Entidades (Entity) Es el modelo de interfaz de un circuito con el exterior mediante unos terminales de entrada y de salida. Es la caja negra que define las entradas y salidas. Arquitectura (Architecture) Describe el funcionamiento del circuito. S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 3de 13

La entidad y la arquitectura Una unidad hardware se puede visualizar como una caja negra El interfaz de la caja negra está completamente definido El interior está oculto En VHDL la caja negra se denomina entidad La ENTITY describe la E/S del diseño Para describir su funcionamiento se asocia una implementación que se denomina arquitectura La ARCHITECTURE describe el contenido del diseño. e0 e1 e2 architecture caja negra salida0 salida1 entity S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 4de 13

Puertos de una entidad. PORT Cada una de las posibles conexiones se denomina PORT y consta de: Un nombre, que debe ser único dentro de la entidad. Una lista de propiedades, como: la dirección del flujo de datos, entrada, salida, bidireccional y se conoce como MODO del puerto. los valores que puede tomar el puerto: '0, '1' o ( Z ), etc.,los valores posibles dependen de lo que se denomina TIPO de señal. Los puertos son una clase especial de señales que además añade el modo al tipo de señal e0 e1 e2 ports caja negra salida0 salida1 entity architecture Port = Canal de Comunicación S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 5de 13

Modos de un Puerto Indican la dirección y si el puerto puede leerse o escribirse dentro de la entidad e1 IN IN: Una señal que entra en la entidad y no sale. La señal puede ser leída pero no escrita. OUT: Una señal que sale fuera de la señal y no es usada internamente. La señal no puede ser leída dentro de la entidad. OUT BUFFER s1 s2 BUFFER: Una señal que sale de la entidad y también es realimentada dentro de la entidad. INOUT: Una señal que es bidireccional, entrada/salida de la entidad. e2 s2_int INOUT S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 6de 13

Estructura de un diseño en VHDL LIBRARY ieee; USE ieee.std_logic_1164.all; declaraciones de puertos ENTITY nombre_entidad IS [GENERIC( )]; PORT( ); END nombre_entidad; Nombre de la entidad parte declarativa de la arquitectura cuerpo de la arquitectura ARCHITECTURE nombre_arquitectura OF nombre_entidad IS BEGIN END nombre_arquitectura; Nombre de la arquitectura S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 7de 13

Declaración de entidad LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY mi_circuito IS PORT ( a : IN std_logic_vector(7 DOWNTO 0); b : IN std_logic_vector(7 DOWNTO 0); sal : OUT std_logic_vector(7 DOWNTO 0); Cout : OUT std_logic ); END mi_circuito ; modo tipo a b mi_circuito sal Cout S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 8de 13

Resumen: Entidad y Arquitectura La entidad se utiliza para hacer una descripción "caja negra" del diseño, sólo se detalla su interfaz Los contenidos del circuito se modelan dentro de la arquitectura Una entidad puede tener varias arquitecturas Por ejemplo, la descripción de comportamiento que ha hecho el diseñador y el modelo post-layout obtenido después de implementar el chip S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 9de 13

Invariancias VHDL presenta ciertas invariancias que conviene conocer antes de su utilización. Invariante a mayúsculas, es decir, dos expresiones iguales conteniendo mayúsculas y minúsculas son idénticas. Salida <= A and B; SALIDa <= a AND b; Invariante a los espacios, es decir, dos expresiones iguales conteniendo más o menos espacios son idénticas Salida <= A and B; Salida <= A and B; Los comentarios van detrás de dos rayas - - y convienen que sean claros para que las descripciones puedan ser fácilmente utilizadas pr otras personas o por ti mismo. S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 10 de 13

Invariancias VHDL es relativamente laxo con la utilización de paréntesis, una buena idea es utilizar los paréntesis de manera que una persona la pueda entender con facilidad if x= 0 and y= 0 or z= 1 then bla; bla; end if; if (((x= 0 ) and (y= 0 )) or (z= 1 )) then bla; bla; end if; Cada asignación termina con ; Cada if tiene el correspondiente then Cada if termina con el correspondiente end if Si se necesita else if se utilizará elsif Cada case termina con el correspondiente end case Cada loop termina con el correspondiente end loop S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 11 de 13

Identificadores Identificadores. Son las palabras que se utilizan para identificar a las funciones, señales, puertos, variables, etc. Es conveniente que dichas palabras proporcionen información suficiente para que la descripción sea fácilmente reutilizable. El identificador debe dar suficiente información para su uso. El identificador puede ser tan largo como se quiera, pero un nombre demasiado largo es complicado de utilizar, y demasiado corto quizá proporcione poca información. El identificador puede contener cualquier combinación de las letras (A- Z y a-z) números (0-9 ) y el sub-guión ( _ ) El identificador debe empezar por un carácter alfabético. El identificador no puede termina con el sub-guión ( _ ) S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 12 de 13

Palabras reservadas Son palabras que no se pueden utilizar como identificadores accses exit mod return while after file new signal with alias for next shared all function null then atribute generic of to block group on type body in open until buffer is out use bus label range variable constant loop rem wait S2_2. VHDL. Estructura básica de diseño 2007 A.G.O. All Rights Reserved 13 de 13