Instituto Tecnológico de Reynosa.
Microcontroladores.
Unidad 1. Conceptos Introductorios a los Microcontroladores. 1.1 Diferencia entre Microprocesador, Microcomputadora y Microcontrolador. Antes de que naciera el primer procesador, tuvo que crearse el transistor: unos diminutos interruptores electrónicos que permiten descomponer toda instrucción informática en los famosos ceros y unos. El primer transistor nació en 1947 en los laboratorios laboratorios Bell y, además de conseguir un premio Nobel para sus creadores, dio la puntilla a las computadoras basadas en interruptores mecánicos y tubos de silicio. El segundo gran paso fue crear un circuito, que empleaba dos transistores sobre un cristal de silicio. Este segundo avance, en el que participó el que sería cofundador de Intel Robert Noyce, tuvo lugar más de diez años después, en 1958. El tercer y definitivo avance supuso la creación del primer procesador rudimentario en 1961. Cuatro años más tarde el procesador más más complejo apenas contaba con 64 transistores. Pero el crecimiento fue extraordinario, el primer procesador comercial fue distribuido por Intel en 1971 y ya contaba contaba con la la friolera de 2.300 transistores. Un prodigio entonces pero que se queda en nada comparado con los cerca de 30 millones de transistores que cuenta un Pentium II. El microprocesador es microprocesador es un circuito integrado en un soporte de silicio que incorpora en su interior una unidad central de proceso (CPU) y todo un conjunto de elementos lógicos, que permiten enlazar otros dispositivos como memorias y puertos de entrada y salida (I/O), formando un sistema completo para cumplir con una aplicación específica. Para que el sistema pueda realizar su labor debe ejecutar paso a paso un programa que consiste en una secuencia de números binarios o instrucciones, almacenándolas en uno o más elementos de memoria, generalmente externos al mismo.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
1
Instituto Tecnológico de Reynosa.
Microcontroladores.
Los microp microproc rocesa esador dore e modernos están integrados por illones de transistores y otros componentes empaquetados en una cá sula cuyo tama tamaño ño var varía ía segú según n la ne nece cesi sida dade des s de de las las aplic aplicaci acion ones es a l s que van dirigidas, y que van d sde sde el el tam tamañ año o de de un un gran grano o de de len lente te a hasta el de casi una galleta. En un micro podemos iferenciar diversas partes: El encapsulado: encapsulado: es lo que rodea a la oblea de silicio en sí, para darle consistencia, impedir u dete deteri rior oro o (por (por ejem ejempl plo o por por oxid oxidac ación con el aire aire)) y perm ermiti itir el el enl enla a e con los conectores externos que lo acoplarán a su zócalo o a la placa base. La memoria caché: caché: na memor memoria ia ultrar ultrarráp rápida ida que que emple emplea el micro para tener a mano ciertos datos que previsiblemente serán utilizados en las siguientes oper ciones sin tener que acudir a la me oria RAM, reduciendo el tiempo de espera. Todos los micros "comp tibles PC" desde el 486 poseen al menos la llamada caché interna de primer nivel o L1; L1; es decir, la q e está más cerca del micro, tanto que está encapsulada junto a él. Los micros más modernos ( entium III Coppermine, Coppermine, Athlon Thunderbird , etc.) incluyen también en su interior otro otro nivel ivel de cach caché, é, más gran grande de aunqu aunque e algo algo me meno nos s rápi rápid d , la caché de segundo nivel o o L2. L2. El coprocesador matemático: atemático: o, más corr correct ectame amente nte, la FPU (Floating Point Unit , Unidad de coma Flotante). Parte del micro especializada en esa clase de cálculos matemáticos; antiguamente esta estaba ba en el ex exte teri rior or d l micro, en otro chip. El resto del micro: micro : l cual cual tiene tiene varia varias s partes partes (uni (unidad dad de enteros, registros, etc.) que no merece la pena detallar aquí.
Catedr Catedráti ático: co: Ing. Ing. Edgar Edgar Ocxi Ocxiel Ochoa Herrera.
2
Instituto Tecnológico de Reynosa.
Microcontroladores.
El Microcontrolador es un sis siste tema ma aut autóno ónomo mo e inde indepe pend ndie ient nt , mientras que el Micro Micropro proces cesado ado es una parte esencial esencial de un sistema mayor. La configuración míni a de un microprocesador esta cons ituida por un Micro de 40 pines, una memoria RAM de 28 pi es y un decodificador de direcciones de 18 pines. El microcontrolador in incluye todos estos elementos del micro rocesador en un solo circuito int grado por lo que implica una gran entaja en varios factores: En el ircuito impreso por su amplia simpli icación de circuitería. El costo para un siste a basa basado do en micr microc ocon ontr trol olad ador or es mu ho menor, mientras que para el icroprocesador, es muy alto. Los microprocesadores tradicionales se basan en la arquit ctura Von Newman, mientras que lo los mi microcontroladores tr trabajan con arquitectura de Harvar . El tiempo de des rrollo microcontroladores.
de
proyecto
es
menor
para
los
La principal diferencia en entr tre e ambo ambos s radic radica a en la la ubic ubicaci ación ón del registro de trabajo, que para los PIC´s se denomina W (Working Register), para para los los tradi tradicio cionale nales s es el Acumulador (A).
Catedr Catedráti ático: co: Ing. Ing. Edgar Edgar Ocxi Ocxiel Ochoa Herrera.
3
Instituto Tecnológico de Reynosa.
Microcontroladores.
En los microcontroladores tradicionales todas las operaciones se realizan sobre el acumulador. La salida del acumulador esta conectada a una de las entradas de la Unidad Aritmética y lógica (ALU), por lo tanto este es siempre siempre uno uno de los dos operandos de cualquier cualquier instrucción, las instrucciones de simple operando (borrar, incrementar, complementar), actúan sobre el acumulador. En los microcontroladores PIC, la salida de la ALU va al registro W y también a la memoria de datos, por lo tanto el resultado puede guardarse en cualquiera de los destinos.
1.2
Características y Microcontroladores.
aplicaciones
de
los
Los microcontroladores están diseñados para reducir el costo económico y el consumo de energía de un sistema en particular. Por eso el tamaño de la unidad central de procesamiento, la cantidad de memoria y los periféricos incluidos dependerán de la aplicación. El control de un electrodoméstico sencillo como una batidora utilizará un procesador muy pequeño (4 u 8 bits) porque sustituirá a un autómata finito. En cambio, un reproductor de música y/o vídeo digital (MP3 o MP4) requerirá de un procesador de 32 bits o de 64 bits y de uno o más códecs de señal digital (audio y/o vídeo). El control de un sistema de frenos ABS (Antilock Brake System) se basa normalmente en un microcontrolador de 16 bits, al igual que el sistema de control electrónico del motor en un automóvil. Los microcontroladores representan la inmensa mayoría de los chips de computadoras vendidos, sobre un 50% son controladores "simples" y el restante corresponde a DSP más especializados. Mientras se pueden tener uno o dos microprocesadores de propósito general en casa, usted tiene distribuidos seguramente entre los electrodomésticos de su hogar una o dos docenas de microcontroladores. Pueden encontrarse en casi cualquier dispositivo electrónico como automóviles, lavadoras, hornos microondas, teléfonos, etc. Un microcontrolador difiere de una unidad central de procesamiento normal, debido a que es más fácil convertirla en una computadora en funcionamiento, con un mínimo de circuitos integrados externos de apoyo. La idea es que el circuito integrado se coloque en el dispositivo, enganchado a la fuente de energía y de información que necesite, y
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
4
Instituto Tecnológico de Reynosa.
Microcontroladores.
eso es todo. Un microprocesador tradicional no le permitirá hacer esto, ya que espera que todas estas tareas sean manejadas por otros chips. Hay que agregarle los módulos de entrada y salida (puertos) y la memoria para almacenamiento de información. Un microcontrolador típico tendrá un generador de reloj integrado y una pequeña cantidad de memoria de acceso aleatorio y/o ROM/EPROM/EEPROM/flash, con lo que para hacerlo funcionar todo lo que se necesita son unos pocos programas de control y un cristal de sincronización. Los microcontroladores disponen generalmente también de una gran variedad de dispositivos de entrada/salida, como convertidor analógico digital, temporizadores, UARTs y buses de interfaz serie especializados, como I2C y CAN. Frecuentemente, estos dispositivos integrados pueden ser controlados por instrucciones de procesadores especializados. Los modernos microcontroladores frecuentemente incluyen un lenguaje de programación integrado, como el lenguaje de programación BASIC que se utiliza bastante con este propósito. Los microcontroladores negocian la velocidad y la flexibilidad para facilitar su uso. Debido a que se utiliza bastante sitio en el chip para incluir funcionalidad, como los dispositivos de entrada/salida o la memoria que incluye el microcontrolador, se ha de prescindir de cualquier otra circuitería.
1.3 Tipos de Arquitecturas Computacionales. Arquitecturas. Amdahl definió en 1964 la arquitectura de una computadora como “la apariencia funcional que presenta a sus usuarios inmediatos”. Es decir, los atributos o características de un sistema visibles al programador. La arquitectura de un procesador viene dada por su juego de instrucciones, y normalmente se define en documentos descriptivos, que IBM llamaba “Principios de Operación”, aunque cada fabricante le da un nombre distinto. En estos manuales se identifican las operaciones (denominadas instrucciones máquina) máquina) que realiza el procesador correspondiente. Ayudándose de la sintaxis en ensamblador, describe la operación que realiza, los tipos de datos u operandos que puede utilizar, los códigos de condición que establece y el formato de la instrucción en su representación binaria.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
5
Instituto Tecnológico de Reynosa.
Microcontroladores.
La organización o estructura de una computadora se refiere a la estructura lógica que da forma a su arquitectura. La arquitectura describe lo que sucede, mientras que la organización describe cómo sucede. La organización de un procesador nos muestra cómo es éste por dentro, pudiendo ver que está formado por una Unidad Aritméticológica, una memoria organizada en registros (contador de programa, puntero de pila, registro de estado, acumulador, ...) y una Unidad de Control que gobierna el funcionamiento y ejecución secuencial de las instrucciones. La tecnología o realización es una versión concreta de la organización. Es decir, determina los componentes que se van a utilizar y cómo se van a interconectar. También se ocupa de aspectos como la fiabilidad de los componentes, mantenimiento, refrigerado, encapsulado, etc. La realización está directamente ligada al estado del arte de la tecnología de construcción de los componentes. Por ejemplo, la antiguamente famosa familia 360 de IBM ha pasado por las distintas generaciones, manteniendo la misma arquitectura y apenas variando la organización, pero actualizándose continuamente según el estado del arte en la tecnología. Desde hace unas decenas de años, los procesadores han estado aumentando su velocidad de operación a un paso mucho más rápido que las memorias, lo que ha llevado a la situación en que los procesadores actuales operan mucho más rápidamente que la memoria principal de las computadoras. Esto hace que el procesador tenga que quedarse detenido por varios ciclos de reloj (estados de espera) cada vez que tiene que leer o escribir a la memoria principal. Para aliviar un poco esta situación conservando el precio de la computadora razonablemente bajo, se ha organizado a la memoria como una jerarquía de diversos niveles con distintos tamaños y velocidades. Hay que recordar que la memoria más rápida es mucho más cara que la más lenta y que por lo tanto, es menor la cantidad de memoria de este tipo que se puede usar. De esta manera, la mayor parte de la capacidad de almacenamiento de la maquina se encuentra en el disco duro, que tiene un costo por Gbyte muy bajo, pero que también es muy lento debido a que hay que mover piezas mecánicas para leer o escribir en él. En seguida se encuentra la memoria principal, que normalmente es del tipo RAM Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
6
Instituto Tecnológico de Reynosa.
Microcontroladores.
dinámica. Es en esta memoria donde se almacenan los programas para que los pueda ejecutar el procesador, así como los datos con que trabajan dichos programas. Con el objetivo de mejorar la velocidad del procesador al ejecutar ciclos y al leer repetidamente datos de uso común, se coloca una pequeña cantidad de memoria RAM estática entre el procesador y la memoria principal. Esta memoria es conocida como memoria cache y guarda una copia de una pequeña región de la memoria principal, para que si se requiere volver a leer los datos almacenados en esta región de memoria, no se tenga que esperar a que se lea la memoria principal, que es mucho más lenta que la cache y que el procesador. Finalmente, en la cima de la jerarquía, se encuentran los registros del procesador que aunque son muy pocos, son los que se pueden leer y escribir más rápidamente
Arquitecturas Clásicas. Estas arquitecturas se desarrollaron en las primeras computadoras electromecánicas y de tubos de vacío. Aun son usadas en procesadores empotrados de gama baja y son la base de la mayoría de las arquitecturas modernas. Arquitectura Mauchly-Eckert (Von Newman)
Esta arquitectura fue utilizada en la computadora ENIAC. Consiste en una unidad central de proceso que se comunica a través de un solo bus con un banco de memoria en donde se almacenan tanto los códigos de instrucción del programa, como los datos que serán procesados por este. Esta arquitectura es la más empleada en la actualidad ya, que es muy versátil. Ejemplo de esta versatilidad es el funcionamiento de los compiladores, los cuales son programas que toman como entrada un archivo de texto conteniendo código fuente y generan como datos de salida, el código maquina que corresponde a dicho código fuente (Son programas que crean o modifican otros programas). Estos datos de salida pueden ejecutarse como un programa posteriormente ya que se usa la misma memoria para datos y para el código del programa.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
7
Instituto Tecnológico de Reynosa.
Microcontroladores.
Diagrama a bloques de la arquitectura Von Neumann.
La principal desventaja de esta arquitectura, es que el bus de datos y direcciones único se convierte en un cuello de botella por el cual debe pasar toda la información que se lee de o se escribe a la memoria, obligando a que todos los accesos a esta sean secuenciales. Esto limita el grado de paralelismo (acciones que se pueden realizar al mismo tiempo) y por lo tanto, el desempeño de la computadora. Este efecto se conoce como el cuello de botella de Von Neumann. Ne umann.
En esta arquitectura apareció por primera vez el concepto de programa almacenado. Anteriormente la secuencia de las operaciones era dictada por el alambrado de la unidad de control, y cambiarla implicaba un proceso de recableado laborioso, lento y propenso a
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
8
Instituto Tecnológico de Reynosa.
Microcontroladores.
errores. En esta arquitectura se asigna un código numérico a cada instrucción. Dichos códigos se almacenan en la misma unidad de memoria que los datos que van a procesarse, para ser ejecutados en el orden en que se encuentran almacenados en memoria. Esto permite cambiar rápidamente la aplicación de la computadora y dio origen a las computadoras de propósito general Mas a detalle, el procesador se subdivide en una unidad de control (C.U.), una unidad lógica aritmética (A.L.U.) y una serie de registros. Los registros sirven para almacenar internamente datos y estado del procesador. La unidad aritmética lógica proporciona la capacidad de realizar operaciones aritméticas y lógicas. La unidad de control genera las señales de control para leer el código de las instrucciones, decodificarlas y hacer que la ALU las ejecute. Arquitectura Harvard
Esta arquitectura surgió en la universidad del mismo nombre, poco después de que la arquitectura Von Neumann apareciera en la universidad de Princeton. Al igual que en la arquitectura Von Neumann, el programa se almacena como un código numérico en la memoria, pero no en el mismo espacio de memoria ni en el mismo formato que los datos. Por ejemplo, se pueden almacenar las instrucciones en doce bits en la memoria de programa, mientras los datos de almacenan en 8 bits en una memoria aparte.
Diagrama a bloques de la arquitectura Harvard
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
9
Instituto Tecnológico de Reynosa.
Microcontroladores.
El hecho de tener un bus separado para el programa y otro para los datos permite que se lea el código de operación de una instrucción, al mismo tiempo se lee de la memoria de datos los operados de la instrucción previa. Así se evita el problema del cuello de botella de Von Neumann y se obtiene un mejor desempeño. En la actualidad la mayoría de los procesadores modernos se conectan al exterior de manera similar a la arquitectura Von Neumann, con un banco de memoria masivo único, pero internamente incluyen varios niveles de memoria cache con bancos separados en cache de programa y cache de datos, buscando un mejor desempeño sin perder la versatilidad. Arquitecturas Segmentadas. Las arquitecturas segmentadas o con segmentación del cauce buscan mejorar el desempeño realizando paralelamente varias etapas del ciclo de instrucción al mismo tiempo. El procesador se divide en varias unidades funcionales independientes y se dividen entre ellas el procesamiento de las instrucciones. Para comprender mejor esto, supongamos que un procesador simple tiene un ciclo de instrucción sencillo consistente solamente en una etapa de búsqueda del código de instrucción y en otra etapa de ejecución de la instrucción. En un procesador sin segmentación del cauce, las dos etapas se realizarían de manera secuencial para cada una de las instrucciones, como lo muestra la siguiente figura.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
10
Instituto Tecnológico de Reynosa.
Microcontroladores.
Búsqueda y ejecución en secuencia de tres instrucciones en un procesador sin segmentación. En un procesador con segmentación, cada una de estas etapas se asigna a una unidad funcional diferente, la búsqueda a la unidad de búsqueda y la ejecución a la unidad de ejecución. Estas unidades pueden trabajar en forma paralela en instrucciones diferentes. Estas unidades se comunican por medio de una cola de instrucciones en la que la unidad de búsqueda coloca los códigos de instrucción que leyó para que la unidad de ejecución los tome de la cola y los ejecute. Esta cola se parece a un tubo donde las instrucciones entran por un extremo y salen por el otro. De esta analogía proviene el nombre en ingles: Pipelining o entubamiento. En general se divide al procesador segmentado en una unidad independiente por cada etapa del ciclo de instrucción. Completando el ejemplo anterior, en un procesador con segmentación, la unidad de búsqueda comenzaría buscando el código de la primera instrucción en el primer ciclo de reloj. Durante el segundo ciclo de reloj, la unidad de búsqueda obtendría el código de la instrucción 2, mientras que la unidad de ejecución ejecuta la instrucción 1 y así sucesivamente. La siguiente figura muestra este proceso.
Búsqueda y ejecución en secuencia de tres instrucciones en un procesador con segmentación. En este esquema sigue tomando el mismo número de ciclos de reloj (el mismo tiempo), pero como se trabaja en varias instrucciones al mismo tiempo, el número promedio de instrucciones por segundo se multiplica. En teoría, el rendimiento de un procesador segmentado mejora con respecto a uno no segmentado en un factor igual al número de etapas independientes. Sin embargo, la mejora en el Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
11
Instituto Tecnológico de Reynosa.
Microcontroladores.
rendimiento no es proporcional al número de segmentos, debido a que cada etapa no toma el mismo tiempo en realizarse, además de que se puede presentar competencia por el uso de algunos recursos como la memoria principal. Otra razón por la que las ventajas de este esquema se pierden es cuando se encuentra un salto en el programa y todas las instrucciones que ya se buscaron y se encuentran en la cola, deben descartarse y comenzar a buscar las instrucciones desde cero a partir de la dirección a la que se salto. Esto reduce el desempeño del procesador y aún se investigan maneras de predecir los saltos para evitar este problema. Arquitecturas de multiprocesamiento. Cuando se desea incrementar el desempeño más allá de lo que permite la técnica de segmentación del cauce (limite teórico de una instrucción por ciclo de reloj), se requiere utilizar más de un procesador para la ejecución del programa de aplicación. Las CPU de multiprocesamiento se clasifican de la siguiente manera: Las arquitecturas SIMD (Single (Single Instruction - Multiple Data) Data ) se corresponden con las computadoras vectoriales (para el cálculo con matrices). En los sistemas MIMD (Multiple ( Multiple Instruction - Multiple Data) Data) se encuadran los multiprocesadores (con memoria compartida) y las multicomputadoras (con memoria independiente). En las arquitecturas MISD (Multiple ( Multiple Instruction - Single Data) Data) diversas instrucciones operan sobre un único dato. Son las más alejadas de las arquitecturas convencionales. Como ejemplo de este tipo de arquitecturas está la “Data Flow Machine” (Máquina de Flujo de Datos). Actualmente, la inmensa mayoría de las computadoras son SISD (Single Instruction - Single Data), Data), además de unos pocos SIMD que se dedican al cálculo vectorial. La tendencia es la construcción de procesadores superescalares, que arrancan varias instrucciones simultáneamente (aunque se siguen considerando SISD), como los PowerPC y los de Intel. Han surgido con fuerza los procesadores multinúcleo, que son chips con múltiples procesadores en su interior, como los Core Duo (dos procesadores) y los Core Quad (cuatro procesadores), también de Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
12
Instituto Tecnológico de Reynosa.
Microcontroladores.
Intel, donde cada procesador es a su vez superescalar. Los ordenadores con estos procesadores son verdaderas máquinas MIMD. Procesadores vectoriales – Son computadoras pensadas para aplicar un mismo algoritmo numérico a una serie de datos matriciales, en especial en la simulación de sistemas físicos complejos, tales como simuladores para predecir el clima, explosiones atómicas, reacciones químicas complejas, etc., donde los datos son representados como grandes números de datos en forma matricial sobre los que se deben de aplicar el mismo algoritmo numérico. En los sistemas SMP (Simetric Multiprocesesors), varios procesadores comparten la misma memoria principal y periféricos de I/O, Normalmente conectados por un bus común. Se conocen como simétricos, ya que ningún procesador toma el papel de maestro y los demás de esclavos, sino que todos tienen derechos similares en cuanto al acceso a la memoria y periféricos y ambos son administrados por el sistema operativo. Los Clusters son conjuntos de computadoras independientes conectadas en una red de área local o por un bis de interconexión y que trabajan cooperativamente para resolver un problema. Es clave en su funcionamiento contar con un sistema operativo y programas de aplicación capaces de distribuir el trabajo entre las computadoras de la red.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
13
Instituto Tecnológico de Reynosa.
Microcontroladores.
1.4 Tipos de microcontroladores y sus fabricantes. Las extensas áreas de aplicación de los microcontroladores, que se pueden considerar ilimitadas, como pueden ser juguetes, horno microondas, frigoríficos, televisores, computadoras, impresoras, módems, el sistema de arranque de nuestro coche, etc.
Existe una gran diversidad de microcontroladores. Quizá la clasificación más importante sea entre microcontroladores de 4, 8, 16 ó 32 bits. Aunque las prestaciones de los microcontroladores de 16 y 32 bits son superiores a los de 4 y 8 bits, la realidad es que los microcontroladores de 8 bits dominan el mercado y los de 4 bits se resisten a desaparecer. La razón de esta tendencia es que los microcontroladores de 4 y 8 bits son apropiados para la gran mayoría de las aplicaciones, lo que hace absurdo emplear micros más potentes y consecuentemente más caros. Uno de los sectores que más tira del mercado del microcontrolador es el mercado automovilístico. De hecho, algunas de las familias de microcontroladores actuales se desarrollaron pensando en este sector, siendo modificadas posteriormente para adaptarse a sistemas más genéricos. El mercado del automóvil es además uno de los más exigentes: los componentes electrónicos deben operar bajo condiciones extremas de vibraciones, choques, ruido, etc. Y seguir siendo fiables. En cuanto a las técnicas de fabricación, cabe decir que prácticamente la totalidad de los microcontroladores actuales se fabrican con tecnología CMOS 4 (Complementary Metal Oxide Semiconductor). Esta tecnología supera a las técnicas anteriores por su bajo consumo y alta inmunidad al ruido. La distribución de las ventas según su aplicación es la siguiente: Un 30% se absorbe en las aplicaciones relacionadas con las computadoras y sus periféricos. Otro 25% se utiliza en las aplicaciones (electrodomésticos, juegos, TV, vídeo, etc.)
de
consumo
El 20% de las ventas mundiales se destinó al área de las comunicaciones.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
14
Instituto Tecnológico de Reynosa.
Microcontroladores.
Un 15% fue empleado en aplicaciones industriales. El resto de los microcontroladores vendidos en el mundo, aproximadamente un 10% fueron adquiridos por las industrias de automoción. También los modernos microcontroladores de 32 bits van afianzando sus posiciones en el mercado, siendo las áreas de más interés el procesamiento de imágenes, las comunicaciones, las aplicaciones militares, los procesos industriales y el control de los dispositivos de almacenamiento masivo de datos. Existen una serie de fabricantes de microprocesadores, como IBM, Intel, Zilog, Motorola, Cyrix y AMD. A lo largo de la historia y desde su desarrollo inicial, los microprocesadores han mejorado enormemente su capacidad, desde los viejos Intel 8080, Zilog Z80 o Motorola 6809, hasta los recientes Intel Core 2 Duo, Intel Core 2 Quad, Intel Xeon, Intel Itanium II, Transmeta Efficeon o Cell. Ahora los nuevos microprocesadores pueden tratar instrucciones de hasta 256 bits, habiendo pasado por los de 128, 64, 32, 16, 8 y 4 bits.
Fecha de presentación
Velocidad de reloj
Ancho de bus
4004
15/11/71
108 KHz
4 bits
8008
01/04/72
1087 KHz
8 bits
3.500
16 KBytes
8080
01/04/74
2 MHz
8 bits
6.000
64 KBytes
8086
08/06/78
5 MHz 8 MHz 10 MHz
16 bits
29.000 (3 micras)
1 Megabyte
8088
01/06/79
5 MHz 8 MHz
8 bits
29.000
80286
01/02/82
8 MHz 10 MHz 12 MHz
16 bits
134.000 (1.5 micras)
16 Megabyte
Microprocesador
17/10/85
16 MHz
32 bits
275.000
4
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
Número de transistores 2.300 (10 micras)
Memoria direccionable
640 byte
Breve descripción.
Primer chip con manipulación aritmética. Manipulación datos/texto. 10 veces las (6 micras) prestaciones del 8008. 10 veces las prestaciones del 8080. Idéntico al 8086 excepto en su bus externo de 8 bits. De 3 a 6 veces las prestaciones del 8086. Primer chip x86
15
Instituto Tecnológico de Reynosa. Fecha de presentación Intel 386 DX
Velocidad de reloj
Microcontroladores. Ancho de bus
20 MHz 25 MHz 33 MHz
Número de transistores (1 micra)
Memoria direccionable
Breve descripción.
Gigabytes
capaz de manejar juegos de datos de 32 bits. Bus capaz de direccionar 16 bits procesando 32 bits a bajo costo.
Microprocesador Intel 386 SX
16/06/88
16 MHz 20 MHz
16 bits
275.000 (1 micra)
4 Gigabytes
Microprocesador Intel 486 DX
10/04/89
25 MHz 50 MHz
32 bits
(1 micra, 50 MHz)
4 Gigabytes
22/04/91
16 20 25 33
22/03/93
60 MHz a 200 MHz
Microprocesador Intel 486 SX
Procesador Pentium
Procesador PentiumPro
Procesador Pentium II
27/03/95
07/05/97
MHz MHz MHz MHz
150 MHz 180 MHz 200 MHz
233 MHz 266 MHz 300 MHz
32 bits
1.185.00 0 (0.8 micras)
32 bits
3,1 millones (0.8 micras)
64 bits
5,5 millones (0.32 micras)
64 bits
7,5 millones (0.32 micras)
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
4 Gigabytes
4 Gigabytes
Caché de nivel 1 en el chip. Idéntico en diseño al Intel 486DX, pero sin coprocesador matemático. Arquitectura escalable. Hasta 5 veces las prestaciones del 486DX a 33 MHz.
4 Gigabytes
Ejecución dinámica con procesador de altas prestaciones.
4 Gigabytes
S.E.C., MMX, doble bus independiente. Ejecución dinámica.
16
Instituto Tecnológico de Reynosa.
Microcontroladores.
Principales Marcas: Según volumen de ventas y diversidad de modelos podemos establecer como principales a los siguientes fabricantes: · · · ·
Microchip Technology Corp. STMicroelectronics Atmel Corp. Motorola Semiconductors Corp.
Existen multitud de fabricantes de microcontroladores que suelen producir integrados muy específicos para determinadas aplicaciones especializadas, algunos de ellos son:
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
17
Instituto Tecnológico de Reynosa.
Microcontroladores.
Los Microcontroladores de 8 bits continúan siendo el producto más consumido entre los integrados debido a la facilidad de programación en aplicaciones de usuario final, reproductores/grabadores de DVD, dispositivos de control remoto, cámaras digitales, sistemas de sonido, teclados y otros. Continúa siendo atractivo gracias a su bajo costo, su capacidad de grabación onchip y ciertas características que facilitan producir una aplicación final. Referente a los micros de 16 y 32 bits podemos pensar que estarán en pleno auge en un corto periodo de tiempo debido que ya comenzamos a utilizar comunicaciones móviles con imágenes y ya disponemos tecnologías UMTS que nos permiten realizar videoconferencias en tiempo real mediante un dispositivo móvil. Esto obviamente significará que aquella información que compartamos necesite más y más capacidad y entonces será el momento de estos microcontroladores.
Catedrático: Ing. Edgar Ocxiel Ochoa Herrera.
18