Está en la página 1de 12

LIBRERAS EN VHDL

STD_LOGIC_1164
STD_LOGIC_ARITH

LIBRERA STD_LOGIC_ARITH

El paquete std_logic_arith define 2 tipos de datos


vectoriales que, basados en el multivaluado std_logic,
son interpretables como valores numricos codificados.
La longitud del vector determina el rango de valores
representables por un objeto de tales tipos.

LIBRERA STD_LOGIC_ARITH
El tipo UNSIGNED especifica un nmero natural
representado en binario puro (estando el bit ms
significativo colocado a la izquierda).
Type UNSIGNED is array(natural range <>) of std_logic;
El nmero 8 puede representarse como UNSIGNED(1000) o como
UNSIGNED(001000)

LIBRERA STD_LOGIC_ARITH
El tipo SIGNED especifica un nmero entero representado en
complemento a 2 (estando el bit de signo colocado a la
izquierda).
Type SIGNED is array(natural range <>) of std_logic;
El nmero +5 puede representarse como SIGNED(0101)
o como SIGNED(00101)
El nmero -5 puede representarse como SIGNED(1011)
o como SIGNED(1111011)

LIBRERA STD_LOGIC_ARITH
Dentro del paquete existen:
Funciones de conversin sobrecargadas entre los tipos
INTEGER, UNSIGNED, SIGNED Y STD_LOGIC_VECTOR.
Operadores aritmticos para los tipos INTEGER, UNSIGNED
, SIGNED.
Operadores relacionales para los tipos INTEGER ,
UNSIGNED y SIGNED.
Funciones de desplazamiento aritmtico para los tipos
SIGNED Y UNSIGNED.

LIBRERA STD_LOGIC_ARITH

Convierten
el
entero
a
una
representacin con una anchura dada:
si el numero de bits requeridos por el
valor a convertir fuera mayor al
especificado, la representacin se
extiende adecuadamente; si por el
contrario fuera menor, se eliminan por
la izquierda.

Function CONV_UNSIGNED(ARG: INTEGER; SIZE: INTEGER)


Return UNSIGNED;
Function CONV_UNSIGNED(ARG: UNSIGNED; SIZE: INTEGER)
Return UNSIGNED;
Function CONV_UNSIGNED(ARG: SIGNED; SIZE: INTEGER)
Return UNSIGNED;
Function CONV_UNSIGNED(ARG: STD_ULOGIC; SIZE: INTEGER)
Return UNSIGNED;

LIBRERA STD_LOGIC_ARITH

LIBRERA STD_LOGIC_ARITH
Function +(L: UNSIGNED; R: UNSIGNED) Return UNSIGNED;
Function +(L: SIGNED; R: SIGNED) return SIGNED;
Function +(L: UNSIGNED; R: SIGNED) return SIGNED;
Function +(L: SIGNED; R: UNSIGNED) return SIGNED;
Function +(L: UNSIGNED; R: INTEGER) Return UNSIGNED;
Function +(L: INTEGER; R: UNSIGNED) Return UNSIGNED;
Function +(L: SIGNED; R: INTEGER) return SIGNED;
Function +(L: INTEGER; R: SIGNED) return SIGNED;

LIBRERA STD_LOGIC_ARITH
function+(L: UNSIGNED; R: UNSIGNED) return STD_LOGIC_VECTOR;
function+(L: SIGNED; R: SIGNED) return STD_LOGIC_VECTOR;
function+(L: UNSIGNED; R: SIGNED) return STD_LOGIC_VECTOR;
function+(L: SIGNED; R: UNSIGNED) return STD_LOGIC_VECTOR;
function+(L: UNSIGNED; R: INTEGER) return STD_LOGIC_VECTOR;
function+(L: INTEGER; R: UNSIGNED) return STD_LOGIC_VECTOR;
function+(L: SIGNED; R: INTEGER) return STD_LOGIC_VECTOR;
function+(L: INTEGER; R: SIGNED) return STD_LOGIC_VECTOR;

LIBRERA STD_LOGIC_ARITH

LIBRERA STD_LOGIC_ARITH

RELACIONALES.

También podría gustarte