Está en la página 1de 19

PRIMER CONTACTO CON

VHDL

LABORATORIO DE CIRCUITOS
DIGITALES II
CARACTERISTICAS
Very High Speed Integrated Circuit
Hardware Description Language (V HDL) HSIC

• Lenguaje de ALTO NIVEL orientado a la


descripción de Sistemas Digitales.

• Describe, analiza y evalúa el comportamiento de


un sistema electrónico digital.

• Permite la integración de Sistemas Digitales en


un Dispositivo Lógico programable (PAL, CPLD
Y FPGA).
OTRAS CARACTERÍSTICAS
• Descripción por niveles

• Modular

• Naturaleza genérica

• Adaptable

• CONCURRENCIA O PARALELISMO
EVOLUCIÓN
OBJETOS DE DATOS
• SENALES: representan senales lógicas en el circuito
(cables).

• VARIABLES: “recuerdan” su contenido y se usan


para cálculos en modelos funcionales

• CONSTANTES: deben inicializarse y su valor no


cambia.
TIPOS DE DATOS
• BIT, BIT_VECTOR: ‘0’ o ‘1’

• STD_LOGIC, STD_LOGIC_VECTOR: más


valores y modelan mejor circuitos reales.

Valores son: 0, 1, Z, -, L, H, U, X, W.
TIPOS DE DATOS
Biblioteca std_logic_signed permite utilizar
senales STD_LOGIC_VECTOR con
operadores aritméticos
TIPOS DE DATOS

• INTEGER: utilizados con operadores


aritméticos y representa números binarios.

Usa 32 bits para representar números


signados
TIPOS DE DATOS
• SIGNED y UNSIGNED: permiten indicar que
tipo de representación el usuario está usando

SIGNED ⇒ números con signo en complemento a 2


UNSIGNED ⇒ números sin signo

SIGNAL ALU_OUT : SIGNED (3 DOWNTO 0);


TIPOS DE DATOS

• TYPE (enumeración): especifica los valores


posibles del objeto. Se usa para indicar
estados en FSM.
OPERADORES
• LÓGICOS: and, or, nand, nor, xor, xnor
(bit y std_logic)

• ARITMÉTICOS:
+, - (integer, signed, unsigned)
*, / (integer cuando es potencia de dos)

• COMPARACIÓN: =, /=, <, >, <=, >=


(integer, signed y unsigned)

• CONEXION: &
(std_logic)
DESCRIPCIONES EN VHDL

• BIBLIOTECAS: recursos, funciones, operaciones.

• ENTIDAD: definición de puertos (entradas y


salidas)

• ARQUITECTURA: procesos, interacciones y


señales internas
Funcional: describe comportamiento del sistema
Estructural: describe mapa de componentes del sistema
BIBLIOTECAS
Unidades de diseño predeterminadas por el
fabricante de la herramienta.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

• Aparecen en todos los diseños

• Norma ieee 1164, incluye el uso de no signados


como std_logic_vector para la ejecución de
operaciones aritméticas y lógicas
ENTIDAD
Bloque elemental en el que se identifica con
claridad sus entradas y salidas generales.

entity entity-name is
port (signal-names: mode signal-type;
signal-names: mode signal-type;
…..
signal-names: mode signal-type);
end entity-name ;
ENTIDAD

entity c_and is
Port ( a, b : in std_logic;
c : out std_logic);
end c_and;
ARQUITECTURA
Describe el funcionamiento de una entidad

Architecture architecture-name of entity-name is


type declarations
signal declarations
constant declarations
function definitions
procedure definitions
component declarations
begin
concurrent-statement
……….
concurrent-statement
end architecture-name
ARQUITECTURA
FUNCIONAL (1)
architecture Behavioral of c_nand is

Begin

c<=a nand b;

end Behavioral;

Arquitectura de alto nivel, una sola


sentencia describe el sistema
ARQUITECTURA
FUNCIONAL (2)

architecture estructural of c_nand is

signal x : std_logic;

begin
x<=a nand b;
c<=not x;
end estructural;
ARQUITECTURA
ESTRUCTURAL
architecture estructural of c_nand is
signal x : std_logic;
component c_and
Port (q1,q2 : in std_logic;
q3 : out std_logic);
end component;
component c_not is
Port ( p1 : in std_logic;
p2 : out std_logic);
end component;

begin
m1: c_and port map (q1=>a,q2=>b,q3=>x);
m2: c_not port map (p1=>x,p2=>c);
end estructural;

También podría gustarte