Estilo Algorítmico • Esta basado en la sentencia concurrente: Process. • El Process es una sentencia concurrente que agrupa a un conjunto de sentencias que se evalúan de forma secuencial. • Se puede definir como un bucle infinito. • Tiene dos estados: suspendido y activo. • Se puede hacer uso de variables sólo en el interior de un Process. • Aquí se puede utilizar las sentencias secuenciales tipicas como: if .. then, case, for.. loop.
Ing. Alfredo Granados Ly
Estilo algorítmico Sintaxis: Process Process(lista de señales) zona de declaración zona de declaración Begin Begin Conjunto de Conjunto de sentencias que se sentencias que se evalúan de forma evalúan de forma secuencial. secuencial. Sentencia WAIT; end process; end process;
Nota: En las herramientas de sintesis no se puede utilizar
más de una sentencia WAIT dentro del Process. Ing. Alfredo Granados Ly Estilo algorítmico Diferencia entre señal y variable: • La variable tiene un tiempo de asignación igual a 0. variable a: std_logic; a := ‘1’;
• La señal tiene un tiempo de asignación de acuerdo a
la tecnología utilizada en un implementación. signal b: std_logic; b <= ‘1’;
Ing. Alfredo Granados Ly
Estilo algorítmico • La señal puede ser declarado en la entidad, arquitectura o paquete (package). • Una señal es global en toda la arquitectura, la variable es local al Process. • Una señal define un elemento hardware: puerto, nodo interno, celda de almacenamiento, registro. • La variable no genera hardware interno. Su valor al final del proceso debe ser pasado a una señal. • Las señales no toman el valor asignado hasta que el Process se suspenda. • Las variable toman el valor asignado en el momento de la asignación. Ing. Alfredo Granados Ly Sentencia IF
Ing. Alfredo Granados Ly
Sentencia IF Analizar el siguiente código VHDL:
Ing. Alfredo Granados Ly
Sentencia IF • Si se desea implementar un circuito combinacional debemos colocar todas las entradas en la lista sensible. • Debemos cubrir todas las condiciones que puedan ocurrir en las entradas. • Si deseamos implementar un circuito secuencial sincrono, la señal de reloj debe aparecer en la lista sensible junto con las entradas asíncronas. • Debemos evaluar en primer lugar por las entradas asincronas y luego por la señal de reloj. • Podemos evaluar otras condiciones dentro de la condición de la señal de reloj si es que se tuvieran entradas de control síncronos. Ing. Alfredo Granados Ly Sentencia IF Ejemplo del multiplexor:
Ing. Alfredo Granados Ly
Sentencia IF Otro ejemplo:
Ing. Alfredo Granados Ly
Sentencia CASE • La sentencia CASE usa el valor de una expresión para seleccionar un conjunto de sentencias secuenciales. • El termino choice_i es el valor o un conjunto de valores que puede ser asumido por la expresión. • Los diferentes valores de los terminos deben ser mutuamente exclusivos (el valor no puede ser utilizado en más de una opción).
Ing. Alfredo Granados Ly
Sentencia CASE • La expresión de selección debe ser de tipo discreto o una matriz monodimensional de tipo caracter. • Todos los posibles casos de valores de la expresión deben estar contemplados en los diferentes WHEN. Es por esto conveniente el uso de la palabra OTHERS. • Los casos se pueden especificar o bien con un valor simple o con un rango de valores mediante las palabras TO o DOWNTO o por el símbolo “|”.
Ing. Alfredo Granados Ly
Elementos de memoria LATCH
Ing. Alfredo Granados Ly
Elementos de memoria FLIP - FLOP
Ing. Alfredo Granados Ly
Elementos de memoria FLIP - FLOP
Ing. Alfredo Granados Ly
Elementos de memoria
FLIP – FLOP CON ENTRADAS SINCRONAS Y ASINCRONAS
Ing. Alfredo Granados Ly
Elementos de memoria 1. Preguntar primero por las entradas asincronas. 2. Luego preguntar por el flanco de reloj. • Luego preguntar por las entradas sincronas.
Inteligencia artificial: Lo que usted necesita saber sobre el aprendizaje automático, robótica, aprendizaje profundo, Internet de las cosas, redes neuronales, y nuestro futuro
Excel para principiantes: Aprenda a utilizar Excel 2016, incluyendo una introducción a fórmulas, funciones, gráficos, cuadros, macros, modelado, informes, estadísticas, Excel Power Query y más
Ciberseguridad: Una Simple Guía para Principiantes sobre Ciberseguridad, Redes Informáticas y Cómo Protegerse del Hacking en Forma de Phishing, Malware, Ransomware e Ingeniería Social
44 Apps Inteligentes para Ejercitar su Cerebro: Apps Gratuitas, Juegos, y Herramientas para iPhone, iPad, Google Play, Kindle Fire, Navegadores de Internet, Windows Phone, & Apple Watch