Entradas

Mostrando entradas de octubre, 2021

Circuitos combinacionales.

Imagen
  Circuitos combinacionales. Un circuito combinacional es un circuito electrónico, en el que el valor de sus salidas en un determinado instante, dependen del valor de las entradas en ese mismo instante. Es decir, es un circuito que carece de memoria. Trabajan con números, y con la tecnología con la que están realizados, estos números están representados en binario. Ejemplo: es un circuito combinacional con "m" entradas y "n" salidas. Las salidas que se obtengan en un determinado instante van a depender de las entradas en ese preciso instante. Estos circuitos se caracterizan porque no almacenan información. Las salidas están relacionadas con las entradas a través de una función booleana. Cada bit de salida de un circuito combinacional se obtiene mediante una función booleana aplicado a las variables de entrada. Así, si un circuito tiene n salidas, necesitaremos n funciones booleanas para caracterizarlo. Así, un circuito combinacional que tiene 3 entradas:...

OSCILADORES

Imagen
  Oscilador es un circuito que genera una señal periódica, es decir, que produce una señal periódica a la salida sin tener ninguna entrada periódica. Los osciladores se clasifican en armónicos, cuando la salida es sinusoidal, o de relajación, si generan una onda cuadrada. Un oscilador a cristal es un oscilador armónico cuya frecuencia está determinada por un cristal de cuarzo o una cerámica piezoeléctrica Un oscilador es un dispositivo mecánico o electrónico que produce una salida de oscilación periódica, típicamente una onda sinusoidal o cuadrada.  Hay dos tipos principales de osciladores: lineales y no lineales: Los osciladores lineales tienden a producir tensiones de salida sinusoidales y se componen de amplificadores operacionales o de un transistor único organizado en un bucle de respuesta, a través de un inductor o capacitor.  Los osciladores no lineales normalmente emplean componentes digitales y un capacitor. Un ejemplo es un oscilador en anillo, que es una cascad...

PWM (Modulación por Ancho de Pulsos)

Imagen
  PWM son las siglas de Pulse Width Modulation (Modulación por ancho de pulso). Sirve para transmitir una señal, ya sea analógica o digital, se debe modular para que sea transmitida sin perder potencia o sufrir distorsión por interferencias. PWM es una técnica que se usa para transmitir señales analógicas cuya señal portadora será digital. En esta técnica se modifica el ciclo de trabajo de una señal periódica (una senoidal o una cuadrada, por ejemplo), ya sea para transmitir información a través de un canal de comunicaciones o para controlar la cantidad de energía que se envía a una carga. El ciclo de trabajo (duty cycle) de una señal periódica es el ancho de su parte positiva, en relación con el período. Está expresado en porcentaje, por tanto, un duty cycle de 10% indica que está 10 de 100 a nivel alto. Duty cycle = t / T t = tiempo en parte positiva T = Periodo, tiempo total Básicamente, consiste en activar una salida digital durante un tiempo y mantenerla apagada durante el res...

INtegra

Imagen
INTegra es la aplicación usada para programar el FPGA y la memoria PROM de nuestras tarjetas de desarrollo. Es una aplicación desarrollada en Java fácil y cómoda de usar INTegra es el software que ha acompañado a las tarjetas de desarrollo de Intesc Electrónica & Embebidos desde la primera versión de las tarjetas de desarrollo para FPGA. Éste permite programar el FPGA utilizando el protocolo de comunicación JTAG, así como las memorias Flash utilizando un protocolo de comunicación SPI. En la versión 5 y anteriores de INTegra, se utilizó Java como lenguaje de programación; en la versión 6, se utiliza Java FX, logrando una interfaz de usuario más amigable e intuitiva. CARACTERÍSTICAS  Entre las mejoras que se hicieron de la versión 5 a la versión 6, se encuentran las siguientes:  INTegra ya no está limitado a una sola tarjeta, ahora puedes conectar más de 1 tarjeta al software y éste permitirá programarlas.  Ya no es necesario generar un archivo extensión mcs para progra...

Circuitos Sumadores

Imagen
Los sumadores son circuitos muy utilizados en muchos tipos de sistemas digitales en los que se procesan datos numéricos. Para comprender su diseño y funcionamiento se parte del diseño de un semisumador.  Semi-sumador (half-adder)  Se debe realizar la suma de dos números de un único bit. Diagrama: Tabla de verdad: Donde a y b son los bits a sumar, S el resultado de la suma y C el acarreo generado.  Circuito: Sumador completo (full-adder)   El diseño anterior es poco útil ya que habitualmente los números a sumar tienen más de un bit. Si recordamos el procedimiento de suma, esta debe realizarse bit a bit tal y como se muestra en la siguiente figura: Se observa que en la operacion de suma para cada pareja de bits, debe incluirse el acarreo producido por la suma de los bits anteriores. Así pues, es necesario disponer de un circuito que realice la suma incluido el acarreo anterior. Este tipo de circuito se denomina Sumador Completo (Full Adder). Diagrama: Donde ai y bi son...

Elementos de FPGA

Imagen
  Elementos que componen los FPGA de Xilinx Elementos reconfigurables: CLBs e IOBs. Elemento básico del CLB es la celda lógica. Cada CLB puede tener varias de estas celdas lógicas (CL). Los CLB de Virtex tienen cuatro CL distribuidas en dos slices. Ilustración 1 . CLB del FPGA Virtex. 4 celdas lógicas en dos slices La celda lógica incluye: 1. Generador de funciones (circuito programable LUT). Puede funcionar como circuito combinacional de 4 entradas o como memoria RAM 16x1. Las memorias pueden ser de varios tamaños combinando varias LUTs. También puede funcionar como registro de corrimiento de 16 bits. 2. Lógica de acarreo. 3. Elemento de memoria (para almacenar el resultado de la LUT). • Matriz de ruteo global. Rutas horizontales y verticales con switches situados en la intersección entre las rutas. Para interconectar diferentes CLBs internamente. • IOBs: Para interconectar los pines del FPGA y los CLBs. • Rutas locales: Para interconectar CLBs localmente y para...

Diagrama RTL y Esquemático de Tecnología

Imagen
 Un diseño a nivel funcional o de comportamiento (behavioral description) permite describir circuitos digitales atendiendo únicamente a las relaciones existentes entre las entradas y salidas del circuito, pero sin hacer referencia a la estructura real o hardware del que se compone el circuito. Al diseñar un circuito FPGA con ISE, luego de sintetizar el circuito descrito en el lenguaje Verilog HDL, se obtienen dos formas de representación esquemática diferentes: Desde la interfaz de ISE se puede apreciar que son: RTL Schematic y Technology Schematic ¿Cuál es la diferencia entre los dos? El esquema tecnológico, este tipo de diagrama esquemático es el diagrama de circuito real de FPGA, es el efecto de síntesis en FPGA. Por el contrario, RTL Schematic es el resultado del análisis sintáctico, similar a cómo se diseña un circuito con un esquema. La vista rtl es en realidad el diagrama de transferencia a nivel de registro, que se genera antes de la síntesis, la ubicación y el enrutamiento...

Código binario

Imagen
El código binario permite entender y diseñar sistemas electrónicos digitales. Su sistema de numeración es de vital importancia para la electrónica. Los códigos binarios son un arreglo de dos caracteres, 1 y 0. Entonces, con sólo estos dos dígitos se pueden representar a todo el conjunto de números. También se pueden realizar operaciones lógicas y aritméticas. Incluso se pueden representar números imaginarios y reales. Dicha numeración se puede representar o medir en bits de información.  Definición  Un código binario y su sistema de numeración tienen dos características: la posición y el valor que se le asigna a esa posición. Se denomina como código binario al sistema de representación de textos, imágenes o vídeos de los que se valen los ordenadores o las computadoras para procesar instrucciones.  Para que el código binario pueda llevar a cabo su función debe hacer uso del sistema binario, que es un sistema de numeración que posee únicamente los dígitos o bits cero (0) y ...

Decodificador de BCD a 7 segmentos

Imagen
DECODIFICADOR Es un elemento digital que funciona a base de estados lógicos, con los cuales indica una salida determinada basándose en un dato de entrada característico, su función operacional se basa en la introducción a sus entradas de un número en código binario correspondiente a su equivalente en decimal para mostrar en los siete pines de salida establecidos para el integrado, una serie de estados lógicos que están diseñados para conectarse a un elemento alfanumérico en el que se visualizará el número introducido en las entradas del decodificador. El elemento alfanumérico que se conecta a las siete salidas del decodificador también está diseñado para trabajar con estados lógicos, es un dispositivo elaborado con un arreglos de LED de tal manera que muestre los números decimales desde el cero hasta el nueve dependiendo del dato recibido desde el decodificador, a este elemento se le conoce con el nombre de display ó dispositivo alfanumérico de 7 segmentos. El decodificador está formad...

Software para programar amiba2 (INTegra)

Imagen
INTegra INTegra es la aplicación usada para programar el FPGA y la memoria PROM de nuestras tarjetas de desarrollo. Es una aplicación desarrollada en Java fácil y cómoda de usar.  La versión más reciente de INTegra permite programar los FPGA serie 7 de Xilinx. Además de incluir diferentes mejoras en la usabilidad e interfaz gráfica, mejorando la experiencia de usuario. Se ha actualizado a la versión 6.1.1 que permite programar la nueva revisión F de Amiba 2, que contiene el mismo FPGA XC6SLX9 pero con un encapsulado FTG256. CARACTERÍSTICAS Entre las mejoras que se hicieron de la versión 5 a la versión 6, se encuentran las siguientes: • INTegra ya no está limitado a una sola tarjeta, ahora puedes conectar más de 1 tarjeta al software y éste permitirá programarlas. • Ya no es necesario generar un archivo extensión mcs para programar la memoria Flash. En esta nueva versión, seleccionando el bitstream, INTegra se encargará de crear el archivo de configuración para la memoria. • Al abri...

Software de diseño para amiba2 ( ISE Design Suite 14.7)

Imagen
   ISE Design Suite 14.7 El paquete de diseño ISE® es compatible con los dispositivos Spartan®-6, Virtex®-6 y CoolRunner ™, así como con sus familias de generaciones anteriores. El paquete de diseño ISE® se ejecuta en los sistemas operativos Windows 10 y Linux. Xilinx recomienda Vivado® Design Suite para nuevos diseños que comienzan con Virtex®-7, Kintex®-7, Artix®-7 y Zynq®-7000. ISE Design Suite: Embedded Edition incluye Xilinx Platform Studio (XPS), Software Development Kit (SDK), gran depósito de IP plug and play que incluye el Procesador MicroBlaze ™ Soft y periféricos, y un completo flujo de diseño de RTL a bit stream. Embedded Edition proporciona las herramientas fundamentales, las tecnologías y el flujo de diseño familiar para lograr resultados de diseño óptimos. Estos incluyen compuerta de reloj inteligente para la reducción dinámica de energía, diseño de equipo para equipos de diseño de sitios múltiples, preservación del diseño para la repetibilidad del tiempo y una ...