Librería de estudio (Instrucciones en ISE Design Suite)

a : in  STD_LOGIC;  >>> Entrada de tipo lógico a la cual se le asigna el nombre de "a"

z : out  STD_LOGIC;  >>> Salida de tipo lógico a la cual se le asigna el nombre de "z"

Rising_edge >>> detectar el flanco creciente de la señal de reloj.

pulsos : in STD_LOGIC_VECTOR (2 downto 0));  >>> Entrada de tipo vector de 3 valores la cual se le asigna el nombre de "pulsos"

luces : out STD_LOGIC_VECTOR (5 downto 0));  >>> Salida de tipo vector de 6 valores la cual se le asigna el nombre de "luces"

SIGNAL ip0,ip1,ip2,ETC,...: STD_LOGIC; >>> Señales tipo lógicas para realizar interconexiónes

SIGNAL s1,s3,s6: STD_LOGIC_VECTOR(3 downto 0);  >>> Señales tipo vector de 4 valores para realizar interconexiónes


clk : in  STD_LOGIC; >>>Entrada de reloj

rst : in  STD_LOGIC; >>>Entrada de Reset

type estado is(E1,E2,E3); >>>Declaración de estados (Máquina de estados)


Compuertas Lógicas

B <= NOT A;   >>> NOT Salida "B" entradas "A"

FI <= Z XNOR Y; >>> XNOR salidas Z&Y

L <= J OR K;   >>> OR 

P <= O OR N OR M; >>> OR 3 ENTRADAS

I <= F and G and H;   >>> COMPUERTA AND 3 ENTRADAS 

U <= Q OR R OR S OR T;  >>> COMPUERTA OR 4 ENTRADAS 

X <= W XOR V; >>> COMPUERTA XOR

E <= C and D;    >>> COMPUERTA AND

P <= O OR N OR M;  >>> COMPUERTA OR 3 ENTRADAS 

FI <= Z XNOR Y; >>> COMPUERTA XNOR


constant conteo: integer :=49_999_999; >>> Constante "conteo" integrado por 49999999

signal counter: integer range 0 to conteo+1:=0; >>> Señal "contador" con un rango de 0 a un numero mayor al designado al conteo

signal flag:std_logic:='0'; >>> Señal "Bandera" tipo lógico con un valor inicial de 0


Ejemplo de Concatenación

...

segn : out  STD_LOGIC_VECTOR (0 to 7);  >>> Salida de tipo vector de 8 valores la cual se le asigna el nombre de "segn"    ...

signal sigs: STD_LOGIC_VECTOR (0 to 7); >>> Se asignan los valores a una sola salida como vector de 8

with binc select   

sigs <= "00000011" when "0000", >>>Señal "sigs" creada con vectores de 8 valores que se asignan posteriormente a "segn"

             "10011111" when "0001",  

     "00100101" when "0010",

    "00001101" when "0011",

     "10011001" when "0100",

      "01001001" when "0101",

      "00011101" when "0111",

      "00000001" when "1000",

      "00001001" when "1001",  

      "01000001" when others;

segn<=sigs;



Comentarios

Entradas populares de este blog

Software para programar amiba2 (INTegra)

Amiba 2

¿QUÉ ES UN USART?