Diferencia entre revisiones de «Programación en VHDL/Entidad»

Contenido eliminado Contenido añadido
Línea 37:
 
==Señales en una entidad==
Las señales representarían la función que harían los cables en un diseño hardware tradicional, es decir, sirven para transportar información y establecer conexiones. Dentro de una '''entidad''' los puertos son considerados como señales, en donde se pueden diferenciar varios tipos.
 
* '''IN'': Son señales de entrada, las cules sólo se pueden leer, pero no se le pueden asignar ningún valor, es decir, no se puede modificar el valor que poseen. Por lo tanto, su funcionalidad es similar a las constantes.
Los elementos como señales y variables pueden tener '''atributos''', éstos se indican a continuación del nombre, separados con una comilla simple. Hay muchos atributos, como LEFT, RIGHT, LOW, HIGH, RANGE, LENGTH... Pero el atributo más usado es '''EVENT''', que indica si una señal ha cambiado de valor. Por ejemplo la sentencia:
 
*'''OUT''': Corresponden a las señales de salida, en este caso su valor puede ser modificado, pero en este caso no pueden leerse, es decir no pueden ser utilizadas como argumentos en la asignación de cualquier elemento.
IF(reloj'event AND reloj='1')
 
Sólo sería verdad cuando la señal ''reloj'' cambiase de valor y ese nuevo valor fuera 1, o lo que es lo mismo, un flanco ascendente de la señal ''reloj''.
 
*'''INOUT''': Este tipo es una mezcla de los dos anteriores, pueden ser utilizados tanto como de lectura o de escritura.
 
*'''BUFFER''': Es idéntico al anterior, con la diferencia de que sólo una fuente puede modificar su valor.
 
[[Categoría:VHDL]]