Está en la página 1de 25

LENGUAJES DE DESCRIPCIN

DE LOS SISTEMAS DIGITALES


(VHDL)

Sistemas Digitales 1
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 2
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 3
Sistemas Digitales 4
CDIGO PARA REPRESENTAR SISTEMAS
DIGITALES EN VHDL

Las secciones fundamentales que forman el


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

Sistemas Digitales 5
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 6
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 7
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 8
ENTITY MUX IS
PORT ( A: IN BIT;
B: IN BIT;
SELEC: IN BIT;
SALIDA: OUT BIT);
END MUX;

Sistemas Digitales 9
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 (ALGORTMICA): 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 EN VHDL

Q = a + x.y 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 Cypress PLDs, FPGAs Warp


Semicond.

Sistemas Digitales 25

También podría gustarte