Está en la página 1de 25

LENGUAJES DE DESCRIPCION

DE LOS SISTEMAS DIGITALES


(VHDL)

Sistemas Digitales

Es un lenguaje estructurado que facilita la


realizacin de descripciones jerrquicas
(multinivel) en las que un sistema digital se
modela como un conjunto de componentes
interconectados y cada componente, a su vez,
como un conjunto de componentes de menor
jerarqua Interconectados (subcomponentes) y
as sucesivamente.

Sistemas Digitales

Describe cualquier sistema digital mediante la


definicin de un modelo que proporciona una
descripcin externa y una o ms descripciones
internas del mismo. La descripcin externa se
realiza mediante el concepto de entidad
(ENTITY) y la interna mediante el de
arquitectura (ARCHITECTURE).

Sistemas Digitales

Sistemas Digitales

CDIGO PARA REPRESENTAR


DIGITALES EN VHDL

SISTEMAS

Las secciones fundamentales que forman el


cdigo en VHDL son: librera (LIBRARY),
entidad
(ENTITY)
y
arquitectura
(ARCHITECTURE).

Sistemas Digitales

BIBLIOTECA (LIBRARY)
Conjunto de elementos (componentes, tipos de
datos, constantes, etc.) que se pueden utilizar al
describir cualquier sistema digital.
El usuario puede establecer sus propias
bibliotecas, pero hay bibliotecas normalizadas
que contienen los elementos utilizados en la
mayora de las descripciones.
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

Sistemas Digitales

ENTIDAD (ENTITY): Comienza con la palabra


ENTITY (Entidad) seguida del nombre que se le
asigna (que corresponde al sistema que se
describe). A continuacin, mediante la palabra
PORT (puerto), se especifican las seales de
entrada y salida del sistema as como su tipo y
algn otro parmetro de inters, como por
ejemplo, el tiempo de propagacin de las seales
a travs del sistema. Finaliza con la palabra END
seguida del nombre de la propia entidad.

Sistemas Digitales

Una entidad est compuesta por tres elementos:


Puertos de entrada-salida. Cada una de las seales de
entrada y salida en una entidad, son llamadas puertos. Los
puertos deben poseer nombre, modo y tipo de datos.
Modos.
a) Modo in
b) Modo out
c) Modo inout
d) Modo buffer
Tipos de datos.
a) STD_LOGIC.
b) Boolean.
c) STD_LOGIC_VECTOR (vectores de bits).
d) Integer.

Sistemas Digitales

ENTITY MUX IS
PORT ( A: IN BIT;
B: IN BIT;
SELEC: IN BIT;
SALIDA: OUT BIT);
END MUX;
Sistemas Digitales

ARQUITECTURA
(ARCHITECTURE):
La
arquitectura, por su parte, especifica el
funcionamiento interno del sistema digital y se
puede referir tanto a su estructura como a su
comportamiento. Se inicia con el identificador
ARCHITECTURE seguido del nombre que se le
asigna y del de la entidad a la que se refiere. Al
igual que en el caso de la entidad, para finalizar
la definicin de la arquitectura se utiliza la
clusula END seguida de su nombre.

Sistemas Digitales

10

Las arquitecturas tienen dos partes bien


diferenciadas:
Una zona de definiciones En ella se especifican
las distintas seales, constantes, componentes y
otros elementos a utilizar.
El cuerpo de la arquitectura, en el que se
describe el funcionamiento o la estructura de la
entidad.

Sistemas Digitales

11

FORMAS DE DESCRIBIR UNA ARQUITECTURA


Soporta tres tipos de descripcin o modelado de los
sistemas digitales:
1. La descripcin estructural (Structural modeling) en la
que se especifican los componentes que forman el sistema
digital y sus interconexiones.
2. La descripcin algortmica o de comportamiento
(Behavioural modeling) en la que se especifica el
algoritmo que define el funcionamiento del sistema
digital.
3. La descripcin de flujo de datos (Dataflow modeling),
conocida tambin como de transferencia entre registros
[(Register Transfer Level (RTL))], en la que se
especifica el comportamiento de las seales de salida del
sistema digital a partir de las seales de entrada.
Sistemas Digitales

12

Sistemas Digitales

13

1. ARQUITECTURA (FLUJO DE DATOS): Es


idnea cuando se conocen las ecuaciones lgicas
de la funcin que hay que implementar. Por ello
es adecuada para describir los circuitos
combinacionales. Facilita la descripcin de los
circuitos combinacionales a travs de su
expresin algebraica.
El flujo de datos tambin se realiza mediante
instrucciones de asignacin condicional de
valores a las seales (Conditional signal
assignment) de un circuito y permite realizar as
la descripcin de distintos bloques funcionales
digitales.
Sistemas Digitales

14

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY NAND3 IS
PORT (a, b, c: IN std_logic;
f : OUT std_logic);
END NAND3;
ARCHITECTUREflujo_de_datosOF NAND3 IS
BEGIN
f <= NOT (a AND b AND c);
END flujo_de_datos;

Sistemas Digitales

15

2. ARQUITECTURA (ESTRUCTURAL): Se
caracteriza por ser concurrente y no presenta
las incertidumbres que tiene la descripcin
algortmica, que, como en el caso de un
multiplexor puede corresponder a tres circuitos
reales diferentes. Es la ms compleja y la que
exige un conocimiento preciso de las
caractersticas del sistema fsico que se quiere
describir.

Sistemas Digitales

16

ARCHITECTURE ESTRUCTURAL OF MUX IS


SIGNAL AX,BX,NOSEL: BIT;
BEGIN
U0: ENTITY INV
PORT MAP (E=>SELEC, Y=>NOSEL);
U1: ENTITY AND2
PORT MAP (E1=>A, E2=>NOSEL, Y=>AX);
U2: ENTITY AND2
PORT MAP (B, SELEC, BX);
U3: ENTITY OR2
PORT MAP (E1=>AX, E2=>BX,Y=>SALIDA);
END ESTRUCTURAL;

Sistemas Digitales

17

DESCRIPCIN ESTRUCTURAL COMPLETA


ENTITY MUX IS
PORT ( A: IN BIT;
B: IN BIT;
SELEC: IN BIT;
SALIDA: OUT BIT);
END MUX;
ARCHITECTURE ESTRUCTURAL OF MUX IS
SIGNAL AX,BX,NOSEL: BIT;
BEGIN
U0: ENTITY INV
PORT MAP (E=>SELEC, Y=>NOSEL);
U1: ENTITY AND2
PORT MAP (E1=>A, E2=>NOSEL, Y=>AX);
U2: ENTITY AND2
PORT MAP (B, SELEC, BX);
U3: ENTITY OR2
PORT MAP (E1=>AX, E2=>BX,Y=>SALIDA);
END ESTRUCTURAL;

Sistemas Digitales

18

3.
ARQUITECTURA
(ALGORITMICA):
El
mecanismo ms utilizado para describir el
comportamiento de un sistema digital mediante
un algoritmo es el proceso (PROCESS) que est
compuesto por un conjunto de instrucciones que
se ejecutan secuencialmente. Un proceso puede a
su vez ser ejecutado concurrentemente con
otros.

Sistemas Digitales

19

Para un circuito comparador de dos bits:

Sistemas Digitales

20

ENTITY comp is
Port (
a : in STD_LOGIC_VECTOR (1 downto 0);
b : in STD_LOGIC_VECTOR (1 downto 0);
c : out STD_LOGIC);
END comp;
ARCHITECTURE funcional of comp is
begin
process(a,b)
begin
if a = b then
c <='1';
else
c <='0';
end if;
end process;
END funcional;

Sistemas Digitales

21

Operadores lgicos
Los operadores lgicos presentan el siguiente orden y
prioridad:
1. Expresiones entre parntesis
2. Complementos
3. Funcin AND
4. Function OR
ECUACION
Q = a + x.y

EN VHDL
Q = a or (x and y)
Y = not(a or (b and c) or d)

Sistemas Digitales

22

Ejemplo:

Sistemas Digitales

23

library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_UNSIGNED;
entity logic is
port(
A,B,C,D,E,F: in STD_LOGIC;
X1,X2,X3: out STD_LOGIC);
end logic;
architecture booleana of logic is
begin
x1<= a xnor b;
x2<= (((c and d) or (a xnor b))nand ((c and d) and(e xnor
f)));
x3<=(c and d) and (e xnor f);
end booleana;
Sistemas Digitales

24

Informacin disponible en Internet


Pagina Web

Compaa

Alcance

Entorno VHDL

www.altera.com

ALTERA

PLDs, CPLDs

Quartus

www.xilinx.com

XILINX Inc.

FPGAs, PLDs

ISE

www.actel.com

ACTEL

FPGAs, PLDs

www.synopsys.com SYNOPSYS

Varios

www.cypress.com

PLDs, FPGAs

Cypress

Warp

Semicond.

Sistemas Digitales

25

También podría gustarte