Entradas

Mostrando entradas de noviembre, 2021

Convertidor A/D con contadores.

Imagen
Convertidor con rampa en escalera. Se usa le circuito mas sencillo de los conversores A/D y consta de los elementos reflejados.   http://www.ifent.org/lecciones/digitales/secuenciales/converta_d.htm

Integer en VHDL

Imagen
Una cuestión sobre la que surgen muchas dudas al aprender VHDL es el uso de valores enteros (integer) frente a los vectores de bits clásicos o   std_logic_vector . Esto es debido a que un diseño digital trabaja internamente únicamente con bits, por lo que cualquier otro tipo de datos que utilicemos sera una abstracción que luego será traducida a vectores de bits. Es por tanto imprescindible comprender el significado de cada tipo de datos y saber cómo se realiza la conversión desde los mismos a bits y viceversa. El tipo de datos básico en VHDL es el  std_logic  y el  std_logic_vector  que representan uno o varios bits. El significado que tendrán estos bits dependerá de nuestro diseño y de las librerías que utilicemos. Por ejemplo si utilizamos la librería  ieee.numeric_std  luego podremos declarar si los valores utilizamos son números con signo o sin signo de la siguiente forma: Para declarar un tipo integer tenemos que definir el rango en el que está definido. Si no lo hacemos estaremo

Esquemático en Xilinx

Imagen
• Seleccionar Project → New Source  • Seleccionar Schematic como tipo de fuente  • En File Name le damos el nombre al diseño  • Se presiona Siguiente  • Se presiona Finalizar para concluir Se abre entonces la ventana derecha correspondiente al editor de esquemáticos, y los menús izquierdos cambian. En el superior aparece una nueva pestaña llamada Symbols que contiene la biblioteca de diseño de Xilinx. En el inferior aparecen las opciones disponibles de la acción que estemos realizando en cada momento. Componentes  Lo primero será fijar las puertas necesarias para la realización del circuito. En el menú de la parte izquierda superior de la herramienta puede verse una parte llamada Categories , donde se muestra una clasificación de las distintas categorías de componen tes. Seleccionando cualquiera de ellas puede verse en la ventana inmediatamente inferior, Symbols , las puertas y componentes que forman la categoría seleccionada. Si se selecciona All symbols  podrá tenerse un listado de t

Muestreo y retención

Imagen
Los circuitos de muestreo y retención son un tipo de dispositivo analógico que capta y después congela la tensión de una señal analógica que varía continuamente durante un período de tiempo determinado. Se suelen utilizar como parte de los convertidores analógico a digital para evitar la distorsión, que de otro modo se podría producir con una variación en la señal de entrada. Un circuito de muestreo y retención típico contendrá un condensador  para almacenar carga eléctrica, un dispositivo de conmutación y un amplificador operacional. La mayoría de los circuitos de muestreo y retención utilizan un condensador para mantener la tensión de muestra Los circuitos prácticos de muestreo y retención usan operacionales para obtener una baja impedancia en el circuito de excitación y una alta impedancia de carga en el condensador de retención. Estos circuitos utilizan conmutadores FET en vez de BJT a causa de la linealidad y carencia de offset en sus características de transferencia en la proximi

Temporizadores

Imagen
 Una labor habitual de los controladores es la determinación y uso de intervalos de tiempo concretos. Esto se hace a través de un recurso denominado Temporizador (Timer), el cual básicamente es un registro de n-bits que se incrementa de manera automática en cada ciclo de reloj.  El recurso puede ser configurado para que el registro se incremente en respuesta a eventos externos, en esos casos suele ser referido como un Contador de eventos (Counter), no obstante, por simplicidad, en este libro siempre es tratado como Temporizador, independientemente de que la temporización esté dada por eventos internos o externos.  Tanto el ATMega8 como el ATMega16 incluyen 3 temporizadores, 2 son de 8 bits y 1 de 16 bits. En la tabla 4.4 se listan los Registros I/O para cada temporizador, como los Registros I/O son de 8 bits, el temporizador 1 utiliza 2 de ellos. Eventos de los Temporizadores En los microcontroladores AVR, los eventos que se pueden generar por medio de los temporizadores son: Desbordam

Resolución de ejercicios

Imagen
  Compuertas (AND, NOT, AND_3, OR, XNOR, XOR): Ejercicio BCD: Sumador de 4 bits: Reloj de 3 entradas: Semáforo 1 (parpadeo normal): Semáforo doble (cruce): Contador de Décadas Contador de Millares

Sentencias condicionales

 VHDL permite utilizar otro tipo de sentencias condicionales más parecidas a los lenguajes de programación usados. Todas estas sentencias como se explicará la sección 3.3 tiene que ir obligatoriamente dentro de un process. Las sentencias condicionales más comunes en VHDL son las siguientes:  IF – THEN – ELSE  process (lista de sensibilidad)  begin       if condición then            -- asignaciones       elsif otra_condición then            -- asignaciones       else            -- asignaciones       end if; end process; ---------------------------------------------  -- Ejemplo  ---------------------------------------------  process (control, A, B)  begin      if control = “00” then            resultado <= A + B;       elsif control = “11” then            resultado <= A – B;      else            resultado <= A;       end if;  end process;  ----------------------------------------------  La sentencia if-else permite cualquier tipo de combinación y encadenamiento, exactamente igua

¿Qué son los Demultiplexores?

Imagen
También existen circuitos que hacen la función inversa de los multiplexores, es decir que, tienen una sola entrada, varias salidas y los selectores, pero en esta ocasión los selectores se utilizan para elegir hacia que salida queremos que fluyan los datos. Aplicaciones de los demultiplexores A grandes rasgos estos dispositivos tienen 2 funciones principales: Transmitir datos a largas distancias Existen ocasiones en las que se tiene que transmitir algún tipo de información a través de largas distancias, pero el tener que conectar diferentes cables tiene muchas desventajas como; elevar los costos, que se puedan dañar los cables o algún tipo de interferencia, pero con los multiplexores y demultiplexores se solucionan todos estos problemas ya que, en lugar de tener varios cables para la transmisión se utiliza un multiplexor para que mande todos los datos a través de un cable y en el otro extremo se coloca un demultiplexor que vuelva a traducir todos esos datos a diferentes salidas o cables

Tabla de transición o excitacion

Imagen
 La tabla de excitación resume el funcionamiento lógico de un dispositivo con memoria. Se trata sencillamente de la tabla de estados que marca cuál será su transición futura – siguiente estado-, teniendo en cuenta el estado presente y el valor de las entradas de excitación en ese instante. Las columnas S y R marcan las entradas que tiene el latch cuando se hace la transición del estado actual Q al estado siguiente Q*. Asimismo, pasando el contenido de la tabla de excitación a un mapa K, podemos obtener la expresión lógica para Q*, denominada ecuación característica del latch SR. BIBLIOGRAFIA. Tabla de transición o excitación. Señales digitales-analógicas https://ocw.ehu.eus/pluginfile.php/42742/mod_page/content/1/Tema_6/6_4.pdf 

Multiplexor

Imagen
  ¿Qué es un multiplexor y cómo funciona? Un multiplexor o también conocido como MUX o MPX   es un dispositivo que sirve para transmitir datos de diferentes entradas a una sola salida, es decir, todos los datos que entran al circuito salen por el mismo lugar, dependiendo del tipo que se utilice, pueden manejar señales analógicas o digitales.   ¿Cómo funciona un multiplexor? El funcionamiento de los multiplexores se basa en circuitos de  compuertas lógicas , en donde se conectan de tal forma que todas las entradas salen por la misma salida, con la única condición de que se debe de seleccionar la entrada que mandara los datos hacia la salida, es decir, que el circuito no puede leer todas las entradas al mismo tiempo, si no una por vez. En palabras sencillas, este circuito funciona como un conmutador que solo permite seleccionar la lectura de una de las entradas, pero debido a la gran velocidad de conmutación que tiene el circuito, se puede llegar a creer que puede leer todas las entradas

Contadores

Imagen
  Los circuitos contadores son circuitos secuenciales compuestos por biestables que tienen una entrada de cuenta de impulsos (CLK) y un número de salidas que representan en cada momento, el número de impulsos que le llegan a la entrada de reloj en un código binario. Los circuitos divisores de frecuencia son circuitos que poseen una entrada por la que llega un tren de impulsos a una determinada frecuencia y disponen de una salida por la que se obtiene una frecuencia de valor n veces menor.  Estos circuitos son muy utilizados en las aplicaciones que conllevan la cuenta de eventos o medición de tiempos, como es el caso de los relojes digitales, contadores de impulsos, frecuencímetros, controladores digitales y autómatas finitos. Los contadores asíncronos Son aquellos en los que los biestables no cambian de estado simultáneamente. En ellos los impulsos a contar no actúan directamente en la entrada de reloj de todos los biestables de forma simultánea sino solo sobre uno de ellos. En los dem

Biestable y Flip-Flops

Imagen
 Los elementos de almacenamiento que se emplean en circuitos secuenciales asíncronos reciben el nombre de biestables o latch (candados, seguros o cerrojos), los cuales son dispositivos de almacenamiento de un bit que puede cambiar su valor independiente de una señal de reloj.  El candado SR es un circuito de dos compuertas NAND o dos compuertas NOR acopladas en cruz y cuyo funcionamiento está definido por una tabla de funciones: Tiene dos entradas rotulados S por inicialización y R por reinicialización. El candado SR tiene dos estados útiles. Cuando la salida Q = 1 y /Q = 0 se dice que está en el estado de inicialización. Cuando Q = 0 y /Q = 1, está en el estado de reinicialización. Las salidas Q y /Q son normalmente complementos mutuos. Un estado indefinido se presenta cuando ambas salidas son iguales a 1. Esto ocurre cuando ambas entradas son iguales a 0 al mismo tiempo. En condiciones normales, ambas entradas del candado permanecen en 1 a menos que tenga que cambiarse de estado. La

Sentencia Process

 VHDL presenta una estructura particular denominada process que define los límites de un dominio que se ejecutará (simulará) si y sólo si alguna de las señales de su lista de sensibilidad se ha modificado en el anterior paso de simulación. Un process tiene la siguiente estructura: process (lista_de_sensibilidad)  -- asignacion de variables  -- opcional no recomendable  begin  -- Sentenicas condicionales  -- Asignaciones end process;  La sentencia process es una de las más utilizadas en programación con VHDL ya que tanto las sentencias condicionales como la descripción de HW secuencial se realiza dentro de él. Pero a la vez es, para aquellos que se acercan por primera vez a la simulación y síntesis con VHDL, el principal problema para un correcto diseño. Por eso a continuación se van a enumerar una serie de normas relacionadas directamente con las propiedades de la sentencia process, que serán de obligado cumplimiento para que el código generado simule y sintetice de manera correcta.  P

Clear y Present en Flip-Flop

Imagen
El Flip-Flop JK es un dispositivo secuencial que tiene 3 entradas (J, K, CLK (señal de reloj)) y 2 salidas (Q y  Q ). Las entradas J, K son entradas de control.  A este Flip Flop también se le llama Flip Flop universal debido a a partir de él, se pueden obtener todos los otros tipos de Flip Flops. Existen dos entradas adicionales muy importantes en el  biestable JK o flip flop JK. La entrada  PRESET  (poner), que sirve para poner directamente en el Flip-Flop JK un “1” en la salida Q La entrada  CLEAR  (borrar), que sirve para poner directamente en  el Flip-Flop JK un “0” en la salida Q Estas entradas son asincrónicas, lo que significa que tendrán efecto sin importar el estado del reloj y/o las entradas J y K. Es importante no activar simultáneamente estas dos entradas. Importante: Los biestable pueden “TENER o NO TENER” una pequeña burbuja (esfera, bolita) en las entradas PRESET o CLEAR. BIBLIOGRAFIA Clear y Present en Flip-Flop. Biestable JK (Flip-Flop JK)-Entradas Set y Clear. https:

Señal del reloj en VHDL

En los sistemas digitales el reloj es el elemento que marca el sincronismo entre todos los elementos del circuito. Cada vez que hay un cambio, normalmente de 0 a 1, del reloj, los elementos de memoria, llamados biestables o flip-flops se cargan con los nuevos datos calculados durante el periodo transcurrido entre el cambio anterior y el actual. El tiempo que tarde la señal en llegar de su origen a su destino entre dos pulsaciones de este corazón eléctrico, lo denominamos el  camino crítico del circuito , y es la velocidad máxima a la que puede latir el reloj, ya que si fuera más rápido las señales no serían estables a las entradas de los flips-flops y el circuito comenzaría a dar resultados erróneos. library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity clk_div is generic (divider : integer range 0 to 1023); port ( clk_i : in std_logic; clk_o : out std_logic Bibliografía: vhdl_es. (2019, 5 de febrero).  Dividir el reloj en una FPGA - VHDL.es . VHDL.es.  https://v

Flip_Flop SR

Imagen
  Tiene tres entradas, S (de inicio), R (reinicio o borrado) y C (para reloj). Tiene una salida Q, y a veces también una salida complementada, la que se indica con un circulo en la otra terminal de salida. Hay un pequeño triángulo en frente de la letra C, para designar una entrada dinámica. El símbolo indicador dinámico denota el echo de que el flip-flop responde a una transición positiva ( de 0 a 1) de la señal de reloj. Su unidad básica (con compuertas NAND o NOR) se dibuja a continuación que, como actúa por "niveles" de amplitud (0-1) recibe el nombre de Flip-Flop RS activado por nivel (FF-RS-AN). Cuando no se especifica este detalle es del tipo Flip-Flop RS maestro- esclavo (FF-RS-ME). Sus ecuaciones y tabla de funcionamiento son: Q = S + q R* R S = 0 Las características del funcionamiento del flip-flop R-S son las siguientes:  • Dependiendo de los elementos usados para construir el flip-flop R-S, éste tendrá una combinación de valores S y R con la cual mientras haya sumi

Maquina de estados abstractos

  Las máquinas abstractas, también llamadas autómatas, son un elemento de la informática teórica. Una máquina abstracta se parece a una función en matemáticas. Recibe entradas y produce salidas de acuerdo con reglas especificadas. Las máquinas abstractas se diferencian de las máquinas más literales porque se supone que funcionan perfectamente e independientemente del hardware. Se subdividen en tipos sobre la base de características tales como cómo realizan sus operaciones. Al clasificar las máquinas abstractas, una de las distinciones más simples se refiere al número de operaciones que se les permite realizar en un punto dado. Una máquina abstracta se llama determinista si siempre hay una sola forma de proceder. No es determinista si existen múltiples posibilidades para la máquina en al menos uno de sus posibles estados. Un autómata “pushdown” es aquel que tiene la capacidad de manipular su pila de entradas, en lugar de simplemente responder a ellas una por una en el orden en que apare

Flip Flop "básico"

Imagen
El "flip-flop" J-K, es el más versátil de los flip-flops básicos. Tiene el carácter de seguimiento de entrada del flip-flop D sincronizado, pero tiene dos entradas, denominadas tradicionalmente J y K. Si J y K son diferentes, la salida Q toma el valor de J durante la subida del siguiente pulso de sincronismo Si J y K son ambos low (bajo), entonces no se produce cambio alguno. Si J y K son ambos high (alto), entonces en la siguiente subida de clock la salida cambiará de estado. Puede realizar las funciones del flip-flop set/reset y tiene la ventaja de que no hay estados ambiguos. Puede actuar tambien como un flip-flop T para conseguir la acción de permutación en la salida, si se conectan entre sí las entradas J y K. Esta aplicación de permutar el estado, encuentra un uso extensivo en los contadores binarios Estructura del Flip Flop: Bibliografía: J-K Flip-Flop . (2015, 12 de julio). HyperPhysics.  http://hyperphysics.phy-astr.gsu.edu/hbasees/Electronic/jkflipflop.html#c2