top of page

VIDEO DE LA SIMULACIÓN:

INTRODUCCIÓN

El siguiente trabajo contiene el desarrollo de la actividad correspondiente a la Fase n°6 del curso académico microelectrónica, en el cual el grupo de trabajo desarrolla y crea los circuitos integrados para el caso de estudio propuesto, teniendo como base el material de estudio de las unidades N°1, N°2 Y N°3 e identificando los aspectos e información relevante.

 

RESUMEN

En el siguiente libro, los lectores encontraran una breve aproximación a las metodologías de diseño de bajo costo en el área de microelectrónica. Tomando como referencia los recursos educativos ubicados en el entorno de conocimiento correspondiente a las Unidades N°1, N°2 y N°3 respectivamente.

Debido a la complejidad de la temática abordada, se tendrán en consideración los aspectos más relevantes de las lecturas propuestas para generar una idea global sobre los métodos en mención y de esta manera poder cumplir a cabalidad con los ítems planteados en la guía de actividades de la Fase 6.

​

 

UNIDAD 1. INTRODUCCIÓN A LA MICROELECTRÓNICA

BREVE HISTORIA MICROELECTRÓNICA EL PASADO DE LA ELECTRÓNICA

La electrónica tuvo sus inicios con Lorentz en 1895 cuando postulo que existían cargas discretas denominadas electrones, más tarde Thompson lo pudo comprobar experimentalmente y Millikan midió la carga del electrón. Es importante destacar que el desarrollo de la electrónica está ligado a l desarrollo de la radio ya que se construyeron circuitos en tubos de vacío con aplicaciones en las comunicaciones por radio.

Dichos circuitos contaban con diodos y tríodos que dieron paso a los amplificadores cascada, regenerativos, osciladores, receptor heterodino. Para 1920 se fundó la primera emisora de radiodifusión KDKA por Westinghouse Electric Corporación.

​

LA ELECTRONICA Y LOS SEMICONDUCTORES

Esta revolución surgió con la invención del transistor, siendo Hall en 1879 el pionero en trabajos sobre semiconductores. Los primeros rectificadores de unión metal-semiconductores se estudiaron entre 1920 y 1930, Shotty y Mott estudiaron sistemáticamente las propiedades de estos dispositivos proponiendo la teoría del espacio de carga. En 1943 nació la unión P-N sobre cristal único de silicio.

En 1962, Hofstein y Heiman emplearon la nueva tecnología MOS para fabricar un circuito integrado con elementos activos presentando ventajas sobre los transistores bipolares.

LA MICROELECTRONICA Y EL SIGLO XX

Las tecnologías de integración introdujeron los circuitos PMOS y CMOS con características de tiempo y potencia consumida. La evolución trajo para 1951 se fabricaron los primeros transistores discretos y en 1960 se construyeron los circuitos monolíticos con 100 componentes, más tarde para 1966 el número de componentes ascendió a 1000 y en 1969 llego a los 10.000. Sin embargo, hoy en día se emplean millones de componentes.

​

TENDENCIAS FUTURAS

La electrónica describía el uso de circuitos más pequeños, por la tanto implicaba la divisa SMALLER. La microelectrónica comenzó en 1961 y en 1965 Gordon Moore advirtió de un crecimiento de los transistores como consta en el artículo de la revista Eletronics, para más tarde llamarse la ley de Gordon Moore. 

​

 UNIDAD 2. METODOLOGIAS DE DISEÑO MICROELECTRONICA Y DE BAJO CONSUMO

La descripción de un sistema en general y de un circuito se basa en tres procesos: la jerarquización, la abstracción y la representación.

  1. JERARQUIZACIÓN:  Subdivisión del sistema en bloques de forma recursiva para conseguir el nivel de complejidad.

  2. ABSTRACCIÓN: Conjunto reducido de propiedades y elementos empleados para el diseño, especificación e implementación.

    1. Nivel Físico

    2. Nivel Eléctrico

    3. Nivel Lógico

    4. Nivel de Arquitectura

 

DIAGRAMA DE LA “Y” Y PROCEDIMIENTOS INVOLUCRADOS EN EL DISEÑO

Introducido por Gajski Y Kuhn empleado para representar sistemas digitales principalmente y luego se empleó en los análogos.

Se definen los siguientes procesos:

  • Abstracción: traduce un sistema desde el nivel inferior a uno superior

  • Refinamiento: Obtiene una descripción más completa de un sistema a partir del nivel superior

  • Síntesis: Traduce una representación funcional en su equivalente estructural

  • Análisis: Encuentra una descripción funcional para el sistema

  • Optimización: encontrar la descripción del sistema que maximice o minimice unos criterios

  • Generación:  Obtención de la implementación real de una estructura determinada.

  • Extracción: Proceso inverso a la generación.

VARIABLES DE DISEÑO PARA CADA NIVEL DE EXTRACCIÓN

  • Variable de diseño a nivel físico

  • Variable de diseño a nivel Eléctrico: lo representa ecuaciones o circuitos compuestos por componentes electrónicos, se relaciona con las magnitudes eléctricas y evolución temporal del sistema.

  • Variables de diseño a nivel lógico/Macromodelo: reduce las tensiones a variables discretas, binarias en la mayoría de los casos.

  • Variables de diseño a nivel de arquitectura: Nivel más alto de abstracción de un sistema. Permite utilizar lenguajes de alto nivel para describir tanto la parte digital y la parte análoga (Vista Funcional/Estructura).

 

DIAGRAMA DE FLUJO DE DISEÑO Y HERRAMIESTAS DE AYUDA AL DISEÑO

Diseño electrónico: proceso que permite obtener a partir de una implementación del mismo.

  • Especificación: Descripción de su función y características para su uso (velocidad, tecnología y consumo de potencia)

  • Implementación:  hace referencia a la construcción de sus componentes más simples.

 

 

Fig. Relación entre la especificación y la implementación de un sistema

Imagen tomada de:Robayo, F. (2009). Metodologías de Diseño y Diagramas de Flujo. Bogotá D.C. Universidad Nacional Abierta y/a Distancia. Recuperado dehttp://hdl.handle.net/10596/11268- Pagina 12.

FLUJO DE DISEÑO TIPICO EN ASIC´

Se realizan una serie de pasos durante el proceso de diseño

  1. Entrada de diseño: Introducción del diseño en un entorno de diseño (ASIC) empleando lenguaje descriptor de Hardware (HDL)

  2. Síntesis lógica y/o analógica: Se realiza mediante un sintetizador lógico automático, el cual produce un netlist (listado) que describe la lógica y sus conexiones.

  3. Partición del sistema: División del sistema en secciones que se pueden implementar de forma independiente para después conectarse entre sí.

  4. Simulación pre-layout: comprueba el funcionamiento correcto del diseño.

  5. Planificación de la superficie: Distribución de los bloques sobre el chip (superficie).

  6. Colocación: Distribuye el Número de celdas dentro de un bloque

  7. Conexionado: Realiza las conexiones entre celdas y bloques

  8. Extracción: Obtiene los modelos eléctricos de las interconexiones y elementos (parásitos) del circuito a partir de las máscaras y parámetros de fabricación.

  9. Simulación Post- Layout: Comprueba el funcionamiento correcto luego de realizar las interconexiones y elementos (parásitos).

​

​

CAPITULO 5: LENGUAJES DE DESCRIPCIÓN Y FORMATOS

Los diseños de circuitos y su proceso emplean la representación de modelos matemáticos en el análisis de estos sistemas, teniendo en cuenta que el modelo depende del nivel de abstracción que se quiere representar. A continuación, se presentan los modelos y lenguajes de descripción en función del nivel de abstracción del circuito.

MODELOS Y SIMULADORES FISICOS

5.1. NIVEL FISICO: el circuito describe una estructura en la que se definen las dimensiones, la composición y las propiedades del material, siendo los métodos numéricos los más empleados para este nivel. Los simuladores que emplea este modelo son:

5.1.1.  Elementos Finitos (FEM)

5.1.2. Elementos de Frontera (BEM)

5.1.3. Circuito Equivalente de Elementos Parciales (PEEC)

5.2. NIVEL ELECTRICO: El circuito describe una abstracción realizada por un transistor, regidos por un modelo matemático que presenta grados de complejidad en función de la exactitud. Las variables empleadas son la tensión y corriente en nodos y ramas. Es decir, permite describir la estructura, función de los circuitos para poder analizar y simular su comportamiento.

5.3. NIVEL LOGICO/DIGITAL: se puede emplear análisis a nivel del transistor, pero para las señales analógicas se pueden emplear valores o estados discretos. El modelo que permite representar este nivel son las operaciones booleanas y el simulado lógico trabaja con ficheros de estímulos en el que se describe la secuencia de las señales digitales de entrada en el tiempo.

 

CARACTERISTICAS PRINCIPALES DEL VHDL

El lenguaje VHDL cuenta con tres características principales cuyo enfoque está en la descripción del hardware, estas características son:

  • MODELO DE ESCRITURA: permite realizar el modelo de un sistema digital a partir de la referencia de las partes que lo forman y especifican la conexión entre estas. Se deben definir dos elementos que son: la interfaz del dispositivo con el exterior (entity) y la descripción de la funcionalidad del dispositivo (architecture).

  1. Interfaz: define las señales visibles y/o accesibles para el dispositivo mediante puertos (ports)

  2. Arquitectura: define la funcionalidad que implementa el dispositivo teniendo en cuenta los datos obtenidos por los puertos de entrada y así producir nuevos valores a través de los puertos de salida.

 

  • MODELO DE CONCURRENCIA:  Un claro ejemplo es el Hardware, ya que cualquier dispositivo digital está formado por puertas lógicas funcionando de forma paralela, dicho modelo es realizado mediante el proceso (Process)

  1. Proceso: Está compuesto de sentencias que pueden llegar a relacionarse como subprogramas en los cuales se definen datos locales describiendo el comportamiento y el código se ejecuta de forma secuencial.

  2. Señal: (signal) elemento que permite la comunicación de dos procesos.

  3. Wait (esperar): sentencia de suspensión de un proceso

 

  • MODELO DE TIEMPO: Es el tiempo en que se observa el comportamiento del modelado realizado en VHDL

  1. Eventos: cambios en las señales internas, de entrada y salida del modelo

  2. Estimulo Respuesta: componentes funcionales que reaccionan a la actividad en sus entradas produciendo cambios en las salidas).

Cuenta con las siguientes etapas:

  1. Etapa N°1: Las señales realizan la actualización de los valores

  2. Etapa N°2: Los procesos que se activan se ejecutan hasta que se suspendan.

UNIDADES BASICAS DE DISEÑO

Como unidad básica de diseño encontramos la construcción que se realiza en VHDL el cual permite que se analice de forma independiente. Para esto existen cinco unidades de diseño, que son:

  • Declaración De La Unidad (Entity Declaration):

  • Arquitectura De Una Entidad (Architecture):

  • Configuración (Configuration):

  • La Declaración De Paquete (Package Declaration):

  • Cuerpo De Paquete (Package Body)

  1. La declaración de entidad, declaración de paquete y configuración son conocidas como unidades primarias

  2. La arquitectura de entidad y el cuerpo del paquete son conocidos como unidades secundarias ya que dependen de una entidad primaria la cual analiza antes de analizarse a ellas mismas.

 

  1. DECLARACIÓN DE ENTIDAD:  Define la visión externa del dispositivo que representa la entidad y la interfaz con el entorno.

  2. ARQUITECTURA DE UNA ENTIDAD: define la funcionalidad de la entidad que representa describiendo el conjunto de operaciones sobre las entradas de la entidad que determinan el valor de las salidas.

  3. CONFIGURACIÓN: hace referencia a la construcción VHDL que se encarga de seleccionar la arquitectura que se va a utilizar para una entidad permitiendo así la definición de más de una arquitectura por entidad facilitando el estudio de implementación.

NIVELES DE DESCRIPCION VHDL

El lenguaje de descripción VHDL cuenta con los siguientes niveles de descripción:

  • Nivel algorítmico: Mayor grado de abstracción, en este se describe solo el comportamiento del sistema.

  • Nivel de transferencia de registros (register Tranfer Level): describe cada una de las señales que van a interactuar en el circuito y el comportamiento, así como las funciones de la entrada empleando ecuaciones lógicas y sentencias de asignación.

  • Nivel Lógico:   No necesita saber detalles específicos de la arquitectura a programar.

  •  

ETAPAS BÁSICAS EN EL PROCESO DE DISEÑO

El proceso de diseño cuenta con las siguientes etapas predeterminadas:

  1. Definición de los requerimientos del diseño:  permite tener una idea concreta de los objetivos y requerimientos que va a tener el sistema.

  2. Modelado del diseño en VHDL: permite elegir la forma en la que se describirá el diseño. Presenta don formas de metodologías:

    1. Metodología ascendente (bottom-up): Forma módulos de aplicación específica describiendo elementos básicos y/o primitivos para formar nuevos modulo y así completar el sistema desde el nivel bajo hasta el más alto de abstracción.

    2. Metodología descendente:  detalla los módulos de aplicación específica que sean necesarios

  3. Simulación del código fuente:  permite depurar errores funcionales ante la síntesis.

  4. Síntesis, Optimización y ajuste del diseño

    1. Síntesis: traduce la descripción del diseño a la representación del circuito de bajo nivel.

    2. Optimización: depende de variables

      1. Forma de las expresiones booleanas

      2. El tipo de recursos disponibles

      3. Las directivas de síntesis empleadas

    3. Ajuste: permite tomar de manera lógica producida por la síntesis y la optimización colocándolo en un dispositivo lógico, transformando la lógica para obtener un mejor ajuste.

  5. Simulación “post- layout”

  6. Programación del dispositivo

​

UNIDAD #3 APLICACIÓN DE DISPOSITIVOS LÓGICOS PROGRAMABLES

DISEÑO CON LOGICA PROGRAMABLES Y ESTRUCTURA DE LOS FPGAs

​

Las FPGA, están basadas en una estructura regular de bloques dedicados a entradas y salidas. Indica Robayo que usualmente estos bloques de procesamiento se agrupan, además los bloques que pertenecen a un mismo grupo o clusters tienen interconexiones locales, esto hace referente  a una mayor velocidad de interconexión y en el ahorro de recursos globales. El tamaño de estos clusters es una característica que influye en el arte de una FPGA, que fueron desarrolladas a partir de las LCA de Xilinx, este tipo de dispositivos programables están basados en bloques de procesamiento que esta interconectadas. Esas interconexiones al interior de las FPGAS se basan en celdas de SRAM y transistores de paso, que se configuran empleando las celdas de memoria del dispositivo. Debido a la evolución de la tecnología las FPGAS tuvieron que incorporar nuevas prestaciones, agregando a su arquitectura inicial memorias, bloques aritméticos, manejo de flancos de reloj, entradas y salidas, conversores paralelo – serie y viceversa, y el test. Ya que la comercialización de estos dispositivos es alta se encuentran en el mercado FPGAS como Stratix II de altera, Virtex II, Virtex 4 de Xilinx.  Finalmente, se explica que tipos de herramientas de software se han desarrollado para programar estos dispositivos para realizar EDA (electronic desingn Automation).

​

OTROS DISPOSITVOS PROGRAMABLES Y FAMILIAS FPAAs

A parte de las FPGAS en la actualidad se han desarrollado diferentes tipos de dispositivos programables, siendo las características más relevantes de estos (extraído de la lectura): 

FPAA o circuito analógico programable: este tipo de dispositivo consta de bloques analógicos configurables, una red de interconexión programable y un registro para almacenar los bits de configuración.  A continuación se muestra el diagrama de bloques para una FPAA:

​

​

​

​

​

​

​

​

​

 Estos dispositivos son desarrollados por fabricantes como Lattice, Zetex y Anadigm. Es importante mencionar que para el diseño de un circuito analógico programable en cualquiera de los dispositivos del mercado se debe de tener en cuenta la siguiente metodología: 

Cuando no se tienen componentes externos: Definir las especificaciones y requerimientos, diseño del circuito analógico, simulación del circuito, simulación para verificar la respuesta en el dominio del tiempo, implementación del diseño usando FPAA y finalmente test del circuito diseñado.

Cuando se tienen componentes externos: Definir las especificaciones y requerimientos, considerar las limitaciones de los cirycityos lspPAC, diseño del circuito analógico, simulación del circuito, simulación para verificar la respuesta en el dominio del tiempo, implementación del diseño usando FPAA y finalmente test del circuito diseñado.

PROCESADORES DIGITALES DE SEÑAL – DSP

El procesamiento digital de una señal se realiza aplicando operaciones matemáticas a señales representadas en forma digital, las cuales se representan mediante secuencias de muestras. Un microcontrolador, un DSP o un procesador de propósito general pueden ser el corazón del procesador de señales digitales, por otro lado podemos decir que un DSP es un micorprocesador que trabaja estrictamente con señales digitales y poseen una arquitectura especial que permite agilizar los cálculos matemáticos, un DSP incluyer periféricos de entrada y salida que permiten una comunicación efectiva entre los demás componetes de un sistema.

Las caractericas de los DPS es que son formato aritmético, de coma flotante y coma fija, anchos de palabras y con velocidad de ejecución contienen arquitectura Von Neumann o Harvard.

​

OTRAS APLICACIONES

​

En esta lectura se ilustran aplicaciones de los dispositivos lógicos programables, el primer ejemplo es el de in sistema de telemando, telemetría y tele vigilancia, para lo cual se plantea el siguiente diagrama del sistema:

​

​

​

​

​

​

​

​

​

 Como circuito lógico se empleó uno de la familia Spartan II de referencia FPGA XC-2S200-PQ-208 del fabricante Xilinx. Para la comunicación con el modem GSM se empleó el protocolo de comunicación RS-232. Finalmente el sistema que se construye en esta aplicación es el de la Figura:

​

​

​

​

​

​

​

​

 Después de este caso práctico se hace una descripción de los sus módulos: UART, codificador de comandos, del codificador de comandos y el convertidor

Como segundo caso práctico se muestra un sistema de control de temperatura, el cual debe de calentar o enfriar teniendo en cuenta la histéresis del sistema, teniendo en cuenta esto se diseñó el circuito a través de un algoritmo en VHDL.

Como tercer caso práctico se muestra un control digital de posición empleando acelerómetros y una FPGA, para lo cual se tiene tres etapas en este sistema el sensor con el acelerómetrjo, el control con la FPGA y el actuador que sería  un servomotor que emplea las señales PWM para su posicionamiento.

 

METODOLOGIA PARA EL APRENDIZAJE DE SISTEMAS ELECTRONICOS DIGITALES Y SU DISEÑO

Se introduce como metodología de diseño el método top-down, haciendo énfasis en la relación entre los diferentes niveles de abstracción existentes en el diseño lógico (figura 3), jerarquía y modularidad del lenguaje. Habitualmente todos estos conceptos derivados de este método son nuevos para el alumno y se verán mediante unos ejemplos básicos como un semisumador, un sumador completo y una unidad aritmético-lógica.

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

También se introduce al alumno en los lenguajes de descripción hardware, concretamente en el VHDL [4, 5] y la relación de éste con los niveles de abstracción. Los conceptos y conocimientos de sintaxis adquiridos son los suficientes para realizar los diseños propuestos en prácticas. La ampliación de conocimientos de dicho lenguaje se abordará en la asignatura de Diseño Electrónico Avanzado.

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Esta metodología de enseñanza-aprendizaje viene a reemplazar el método clásico de montaje de sistemas digitales en una protoboard basada en familias lógicas como TTL, CMOS, etc.

Al mismo tiempo que se realiza el diseño se hace distinción de los pasos dados y que forman parte del flujo de diseño (figura 4), familiarizando al alumno con este proceso de diseño.

​

​

​

​

​

​

​

AUTOMATAS PROGRAMABLES Y SISTEMAS DE AUTOMATIZACION

En este capítulo del libro que se sugiere leer, se nos habla de un gran número de temas relacionados con los autómatas programables, en donde se explican los conceptos básicos, las unidades de entrada y salida y la unidad central de procesamiento. Después, de indican las instrucciones que pueden poseer los autómatas como son las de salto condicional y las inhibición y desinhibición, y se muestran gran número de ejemplos de diseño y manejo de las instrucciones.  

 

CASO DE ESTUDIO

En el curso de introducción a la ingeniería electrónica del pensum nuevo se tiene el problema que el componente práctico del curso se usan unos dispositivos de programación lógica llamados LEGO, estos dispositivos se pueden programar para que se usen como seguidores de línea, evasores de obstáculos y distintos tipos de robots automatizados, pero estos se encuentran descompuestos y no se pueden usar dentro del curso, por lo que se debe solicita a los estudiantes del curso de microelectrónica diseñar los diferentes integrados en cada Fase y sus layouts para que se pueda suplir la necesidad de desarrollar el componente práctico del curso:

​

CONDICIONES DE TRABAJO

​

​

​

​

​

​

 

 

​

 

 

MAPA DE KARNAUGH

​

​

​

​

​

​

 

 

 

 

ECUACIONES OBTENIDAS:

​

​

​

​

​

​

PRE- DISEÑO FUNCIONAMIENTO

​

​

​

​

​

​

 

 

 

 

 

 

 

CIRCUITO OBTENIDO

​

​

​

​

​

​

​

 

 

 

 

 

 

 

 

 

 

LINK:

​

RETROALIMENTACIÓN COMPAÑEROS

​

 

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CONCLUSIONES

  • La implementación de la microelectrónica para el control de aparatos electrónicos reales (grúas, entre otros) han llevado a que se mejore exponencialmente sus funciones, ya que se recurre de manera permanente a la práctica para mejorar detalles mínimos de ejecución de procesos.

  • Permite implementar conocimientos adquiridos durante el desarrollo de cada actividad planteada para el curso académico, permitiendo de esta manera una autoevaluación para el aprendiz y así pueda determinar las falencias y mejorarlas.

​

                                                 RECOMENDACIONES

Consideramos pertinente el desarrollo de prácticas asistidas en los centros comunitarios de atención virtual a nivel nacional, ya que podemos interactuar de forma físico con componentes y software evidenciando de forma real cada programa creado.

 

REFERENCIAS BIBLIOGRAFICAS

http://datateca.unad.edu.co/contenidos/299008/299008_AVA/Entorno_de_Conocimiento/Unidad_3/Diseno_con_logica_programable_y_estructura_de_los_FPGAs.pdf

  • Robayo, F. (2009). Otros Dispositivos Programables y Familias FPAAs. Bogotá D.C.: Universidad Nacional Abierta y/a Distancia. Disponible en:

http://datateca.unad.edu.co/contenidos/299008/299008_AVA/Entorno_de_Conocimiento/Unidad_3/Otros_dispositivos_programables_y_familias_FPAAs.pdf

Pérez, E. M., Acevedo, J. M., & Silva, C. F. (2009). Autómatas programables y sistemas de automatización. Consultado en 10, 18, 2014 en http://books.google.es/books?hl=es&lr=&id=5jp3bforBB8C&oi=fnd&pg=PA1&dq=Dispositivos+l%C3%B3gicos+Programables&ots=g0Bv8_5kYa&sig=C96Lo0qnl71HSeAXhQgDpm_5DUE#v=onepage&q=Dispositivos%20l%C3%B3gicos%20Programables&f=false.

 

​

​

​

​

​

Contáctanos 

Envía tu mensaje haciendo uso del formulario.

​

© 2018 por Grupo 8 de Microelectrónica. Creado con Wix.com

Success! Message received.

bottom of page