Introducción a VHDL -...

43
Introducción a VHDL Por: Carlos A. Fajardo [email protected] UIS - Sistemas Digitales Actualizado 11/11/2015

Transcript of Introducción a VHDL -...

Page 1: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Introducción a VHDL

Por:

Carlos A. Fajardo

[email protected]

UIS - Sistemas Digitales Actualizado 11/11/2015

Page 2: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Lenguajes de Descripción de Hardware

• Netlist: conjunto de instrucciones que indican el interconexionado entre los componentes de un diseño (lista de conexiones).

• HDL: Estos lenguajes permitieron solucionar el problema de describir un circuito NO por sus conexiones (Netlist) sino más bien por su funcionamiento.

UIS - Sistemas Digitales

Page 3: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

VHDL Very High Speed Integrated Circuit HDL

Un diseño en VHDL está compuesto por:

• La Entidad (ENTITY): Define el símbolo del circuito, es decir, sus entradas y salidas.

• Arquitectura (ARCHITECTURE): Permite definir el funcionamiento del módulo.

UIS - Sistemas Digitales

Page 4: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

LA ENTIDAD

UIS - Sistemas Digitales

Page 5: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Declaración de Entidades

UIS - Sistemas Digitales

Page 6: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Nombre, modo y tipo

nombre modo tipo

UIS - Sistemas Digitales

Page 7: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Nombres o identificadores válidos

• Letras, números y guión bajo.

• El primer carácter debe ser una letra.

• El último carácter no puede ser un guión bajo.

• No pueden haber dos guiones bajos seguidos.

• No es sensible a mayúsculas y minúsculas (Salida1 = SALIDA1 = sALIDa1 = SaLiDa1 ).

UIS - Sistemas Digitales

Page 8: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Cuáles son válidos?

• entrada1

• sal#2

• prod_

• 7seg

• seg7

• salida__1

• mem_dir_1

UIS - Sistemas Digitales

Page 9: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Nombre

• entrada1

• sal#2

• prod_

• 7seg

• seg7

• salida__1

• mem_dir_1

UIS - Sistemas Digitales

Page 10: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Modo (Los tres usados en este curso)

• in : – Señales de entrada – NO se puede asignarles ningún valor dentro del

programa. NO pueden ser usadas a la izquierda en una asignación.

• out : – Señales de salida. – No pueden leerse, es decir, NO pueden ser usadas a la

derecha en una asignación.

• signal: – Conexiones internas dentro del diseño.

UIS - Sistemas Digitales

Page 11: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Tipo

–Bit: Toma los valores 0 y 1 lógicos –Bit_vector: representa un vector de bits. – STD_LOGIC : Standard Logic. – STD_LOGIC_VECTOR : Standard Logic

Vector.

UIS - Sistemas Digitales

Page 12: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Tipo

–Bit: Toma los valores 0 y 1 lógicos –Bit_vector: representa un vector de bits. – STD_LOGIC : Standard Logic. – STD_LOGIC_VECTOR : Standard Logic

Vector.

UIS - Sistemas Digitales

Page 13: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Standard Logic

• ‘0’, (Forcing 0): Cero lógico • ‘1’, (Forcing 1): Uno lógico • ‘Z’, (Alta impedancia) • ‘-’ (Don’t care) • ‘X’,(Forcing Unknown) • ‘U’ (Uninitialized) Cuando no se asigna un valor

inicial. • ‘W’,(Weak Unknown) • ‘L’, (Weak 0) • ‘H’, ( Weak 1)

UIS - Sistemas Digitales

Page 14: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

ENTIDAD DE UN SUMADOR

UIS - Sistemas Digitales

Page 15: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Declaración de Entidades

Sumador de cuatro bits

UIS - Sistemas Digitales

Page 16: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Librerías y paquetes

• Librerías:

–Colección de unidades de diseño (paquete) compiladas previamente para su posterior uso.

–Su función es agilizar el diseño

UIS - Sistemas Digitales

Page 17: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Arquitectura

• Determina el comportamiento del diseño.

• Se describe usando la sentencias propias del lenguaje VHDL.

UIS - Sistemas Digitales

Page 18: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

HOLA MUNDO EN VHDL (COMPUERTA OR)

UIS - Sistemas Digitales

Page 19: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

UIS - Sistemas Digitales

Page 20: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Librerías

UIS - Sistemas Digitales

Page 21: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Entidad

UIS - Sistemas Digitales

Page 22: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Arq

uitectu

ra

UIS - Sistemas Digitales

Page 23: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

USO DE SEÑALES

UIS - Sistemas Digitales

Page 24: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

El uso de señales (signals)

a

b f= (a or b) and b

UIS - Sistemas Digitales

Page 25: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Encuentre el error

a b

f

UIS - Sistemas Digitales

salida_aux

Page 26: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Encuentre el error

UIS - Sistemas Digitales

b f

salida_aux

Page 27: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Encuentre el error

UIS - Sistemas Digitales

b f

salida_aux

Page 28: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Encuentre el error

UIS - Sistemas Digitales

b f

salida_aux

Page 29: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Solución: uso de señales (signals)

b f

auxiliar1

Page 30: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Solución: uso de señales (signals)

b f

auxiliar1

Page 31: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Solución: uso de señales (signals)

a b

f

auxiliar1

Page 32: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Solución: uso de señales (signals)

a b

f

auxiliar1

Page 33: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Ejercicio: Describir en VHDL

UIS - Sistemas Digitales

A

B

F

Page 34: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Ejercicio: Describir en VHDL

UIS - Sistemas Digitales

A

B

F

bus_1

bus_2

Page 35: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

Ejercicio: Describir en VHDL

UIS - Sistemas Digitales

A

B

F

bus_1

bus_2

in

out

signal

Page 36: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Y ahora qué?

• Necesitas…

UIS - Sistemas Digitales

Page 37: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Y ahora qué?

• Necesitas…

UIS - Sistemas Digitales

Page 38: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

“Dime y lo olvido, enséñame y lo recuerdo, involúcrame y lo aprendo.”

Benjamin Franklin

UIS - Sistemas Digitales

Page 39: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Cómo lo instalo ISE 14.7?

UIS - Sistemas Digitales

Page 40: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Cómo lo instalo ISE 14.7?

UIS - Sistemas Digitales

Page 41: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Dónde puedo aprender más?

UIS - Sistemas Digitales

RTL Hardware Design Using VHDL:

Coding for Efficiency, Portability, and

Scalability.

Autor: Pong P. Chu.

41

Page 42: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

¿Dónde puedo aprender más?

UIS - Sistemas Digitales

Page 43: Introducción a VHDL - digitalesuis.wdfiles.comdigitalesuis.wdfiles.com/local--files/diapositivas-de-clase/4... · • H, ( Weak 1) UIS - Sistemas Digitales . ENTIDAD DE UN SUMADOR

FIN UIS - Sistemas Digitales