Professional Documents
Culture Documents
Historia
1971 Intel fabrica el primer microprocesador (el 4004) de tecnologa PMOS. microprocesador de 4 bits, contena 2,300 transistores y corra a 108 Khz poda direccionar slo 4096 (4k) localidades de memoria de 4 bits, reconoca 45 instrucciones y poda ejecutar una instruccin en 20 seg en promedio. 1972 Intel desarroll una versin ms poderosa (el 8008), el cual poda manipular bytes completos, por lo cual fue un microprocesador de 8 bits. La memoria que este poda manejar se increment a 16 kbytes, sin embargo, la velocidad de operacin continu igual. 1973 Intel lanza el 8080 de tecnologa NMOS que supera la velocidad de su predecesor por un factor de diez, puede realizar 500 000 operaciones por segundo, increment la capacidad de direccionamiento de memoria a 64 kbytes. varias compaas fabricantes de circuitos integrados comenzaron a producir microprocesadores: el IMP-4 y el SC/MP de National Semiconductors, el PPS-4 y PPS-8 de Rockwell International, el MC6800 de Motorola, el F-8 de Fairchild.
1975 Zilog lanza al mercado el Z80, uno de los microprocesadores de 8 bits ms poderosos. , Motorola abate los costos con sus microprocesadores 6501 y 6502 (adoptado por APPLE para su primera microcomputadora personal), se comercializan en $20 y $25. Esto provoca un auge en el mercado de microcomputadoras de uso domstico y un caos en la proliferacin de lenguajes, sistemas operativos y programas.
1976 Surgen las primeras microcomputadoras de un slo chip, que ms tarde se denominarn microcontroladores. Dos de los primeros microcontroladores, son el 8048 de Intel y el 6805R2 de Motorola.
198x En la dcada de los 80's comienza la ruptura entre la evolucin tecnolgica de los microprocesadores y la de los microcontroladores, Ya que los primeros han ido incorporando cada vez ms y mejores capacidades para las aplicaciones en donde se requiere el manejo de grandes volmenes de informacin y por otro lado, los segundos han incorporado ms capacidades que les permiten la interaccin con el mundo fsico en tiempo real, adems de mejores desempeos en ambientes de tipo industrial.
Qu son los Microcontroladores? Son circuitos integrados que incorporan todos los bloques funcionales de un Sistema Microprocesador en un encapsulado. Qu necesitan para funcionar? Slo una tensin continua estable (5V, 3.3V, 2.5V, 1.5V...) y un oscilador Qu hacen?
Interpretan (decodifican) combinaciones de bits (instrucciones) y generan seales digitales internas y/o externas
Para qu?
Para ejecutar de manera continua una secuencia de instrucciones (programa) que permita controlar un sistema o subsistema electrnico
CPU, Central Process Unit o Unidad Central de Proceso. Formada por dos bloques: Unidad de Control y Unidad de Proceso. Memoria, donde residen las instrucciones del programa y sus datos. Mdulos E/S, elementos encargados de recibir y entregar informacin alexterior.
E/S
Reloj
Los tres mdulos estn conectados entre s por medio de Buses de Comunicacin.
Buses de comunicacin
Los buses de comunicacin en un sistema mnimo microprocesador se dividen en tres: Bus de direcciones Es el empleado por la CPU para seleccionar la direccin de memoria o el dispositivo de E/S con el cual va a intercambiar informacin. Bus de datos El bus de datos es el conjunto de conductores a travs del cual el P intercambia informacin con la unidad de memoria o E/S seleccionada mediante el bus de direcciones. Bus de control Est formado por un conjunto de lneas por las que circulan las seales auxiliares de gobierno y sincronizacin del sistema
Bus de direcciones
Unidireccional Su tamao, o nmero de conductores que lo constituyen, determina la capacidad de direccionamiento de la CPU, que es el mximo nmero de posiciones de memoria y dispositivos E/S a los que la CPU puede acceder. Para m lneas la capacidad de direccionamiento ser: 2m.
6502, Z80, 8088: m=16 Capacidad de 65536 posiciones (64 k) 80286: m=20 Capacidad de 1.048.576 posiciones (1 Mega)
Bus de datos
Bidireccional la informacin puede viajar en los dos sentidos. Nmero de lneas (N) representa la cantidad de bits que se pueden transmitir simultneamente. Palabra del P. Triestado: las lneas del bus de datos deben ser triestado: Estado alto, bajo y de alta impedancia Si el P se est comunicando con un dispositivo E/S. Slo estos dos dispositivos pueden disponer del bus de datos, el resto de dispositivos conectados fsicamente al bus de datos deben permanecer con sus lneas en alta impedancia. La Unidad de Control de la CPU es la que toma la decisin.
Bus de control
Las lneas existentes dependen del fabricante del P y de las funciones que desee implementarle.
Seales tpicas
Seal de reloj de sincronizacin Seal de RESET o inicializacin
Memoria
Almacenamiento de las instrucciones que constituyen el programa codificadas a travs de su Cdigo de Operacin. Almacenamiento de los datos y variables del programa. Normalmente agrupados en paquetes de 8 bits (Byte), 16 bits (Word) o 32 bits . La velocidad de la memoria debe ser compatible con el P empleado: RAM, memorias de lectura/escritura para almacenamiento de variables y datos del programa. Son voltiles. ROM (EPROM, EEPROM), memorias de slo lectura para almacenamiento programas fijos (aplicaciones, rutinas bsicas de sistemas operativos, etc.) y constantes. Son no voltiles.
CPU
Se refiere a que existe un solo bus llamado de SISTEMA a travs del cual se comunica y controla la Unidad Central de Proceso (CPU) su comunicacin con las memorias y equipos perifricos.
Arquitectura Harvard
MEMORIA DE PROGRAMA
MEMORIA
CPU
DE DATOS
La presente arquitectura establece que existan buses independientes para las memorias de programa y de datos, con lo que se hace ms eficiente la ejecucin de los programas.
CPU
Bus de Control
Unidad de Control
Bus de Direcciones
Bus de Datos
Registros
ALU
Registros Internos
Los registros de la CPU son bloques de biestables que permiten el almacenamiento de los datos bsicos con los cuales va a trabajar la CPU durante la ejecucin de cada instruccin. La comunicacin se realiza mediante buses internos a la CPU .
Registros tpicos
De corrimiento Contadores Registros apuntadores Registros de datos: Registros especiales:
Hacen rotaciones y desplazamientos de bits Permiten medir tiempos, temporizar, etc. Permiten el acceso estructurado a datos de memoria Almacenamiento de variables del programa
Contador de programa (Program Counter, PC), puntero de pila (Stack Pointer, SP)
Unidad de control
Su misin principal consiste en interpretar y ejecutar las instrucciones que le llegan desde la memoria:
El Contador de Programa (PC) es un registro que contiene la direccin de memoria donde est la siguiente instruccin del programa a El cdigo binario de la instruccin en curso se recibe y se almacena ejecutar. Una de las primeras acciones del secuenciador antes de Estas instrucciones Instruccionessecuenciador active las seales El en el Registro de Instrucciones (IR). Decodificador de hacen que el selecciona las posiciones que ejecutar una instruccin es incrementar el PC para que apunte a la correspondientes para ejecutar en una memoria corresponden a esa instruccin la instruccin. ROM interna de la CPU. instruccin siguiente.
Unidad de procesamiento
El bloque principal es la ALU o Unidad Lgico-Aritmtica, que permite realizar un las operaciones aritmticas y lgicas indicadas por las instrucciones del programa.
Registro Acumulador, esta formado el cdigo de la instruccin en curso, Registro 2 Operando, contiene por por el resultado de la banderas El secuenciador (UC), instruido siempre bits denominadosltima Registro de Estado suministra el 2 operando para realizar la instruccin y viene normalmente suministrado por el cdigo de (flags) que se ponen a la 0 de operacin realizada en 1 ALU. acuerdo para realizar la operacin. activa las lneas de seleccin de la ALU con el resultado obtenidos. operacin de la instruccin.
Mdulos E/S
Permiten la comunicacin del sistema P con el mundo exterior. Los dispositivos de E/S se denominan habitualmente perifricos, ejemplos son: teclado, pantalla, impresora, unidades de Bus de Datos disco, etc.
Perifrico
Interface
Bus de Direcciones
El microcontrolador y el microprocesador
Sistema Microprocesador (varios C.I. en una PCB)
75 Millones Microprocesadores/ao
Microcontroladores comerciales
INTEL MOTOROLA HITACHI PHILIPS SGS-THOMSON NATIONAL SEMICONDUCTOR ZILOG 8048,8051,80C196,80386 6805,68HC11,68HC12 HD64180 8051 ST-62XX COP400,COP800 Z8,Z86XX
TEXAS INSTRUMENTS
TOSHIBA MICROCHIP
TMS370
68HC11 PIC
1990
1.- Motorola 2.- Mitsubishi 3.- NEC 4.- Intel 5.- Hitachi 6.- Philips 7.- Matsushita 8.- National 9.- Siemens 10.- TI 11.- Sharp 12.- Oki 13.- Toshiba 14.- SGS-Thomson 15.- Zilog 16.- Matra 17.- SONY 18.- Fujitsu 19.- AMD 20.- Microchip
1996
1.- Motorola 2.- Mitsubishi 3.- SGS-Thomson 4.- NEC 5.- Microchip 6.- Philips 7.- Zilog
2002
1.- Microchip 2.- Motorola 3.- ST-Micro 4.- NEC 5.- Atmel 6.- Sunplus 7.- Hitachi 8.- Fujitsu 9.- Philips 10.- Toshiba 11.- Mitsubishi 12.- Samsung 13.- Elan 14.- Winbond 15.- Zilog 16.- Sanyo 17.- Matsushita 18.- Infineon 19.- Holtek 20.- National
Microcontroladores PIC
Arquitectura Harvard: buses internos separados para memoria de datos (8 bits) y de programa (12, 14 16 bits depende de la familia) Microprocesador RISC: juego de instrucciones reducido Estructura pipe-line: durante la ejecucin de una instruccin, se est accediendo a la memoria de programa para traer la siguiente instruccin a ejecutar. Todas las instrucciones ocupan una posicin de memoria de programa
Todas las instrucciones se ejecutan en un ciclo de instruccin = 4 ciclos de reloj (a excepcin de las instrucciones de salto)
Ortogonalidad de los registros: se opera entre el registro de trabajo W y cualquier otro registro, el resultado puede almacenarse en W
Familia PIC12CXXX/12FXXX Encapsulados de 8 pines (DIP SOIC) Instrucciones de 12 14 bits en Memoria de Programa Juego de 33 35 instrucciones Disponibles con EEPROM de datos Modelos con mdulos de conversin A/D Permiten alimentacin a baja tensin de hasta 2,5V
Familia PIC16C5X Encapsulados de 14, 18, 20 y 28 pines Instrucciones de 12 bits Juego de 33 instrucciones Es la familia base de partida de los PIC Familia PIC16CXXX/16FXXX (+PIC14000) Encapsulados desde 18 hasta 68 pines (DIP, SSOP, PLCC, QFP) Instrucciones de 14 bits en Memoria de Programa Juego de 35 instrucciones Gran variedad de mdulos integrados
Familia PIC17CXXX Encapsulados de 40 a 80 pines Memoria de Programa de 16 bits Juego de 58 instrucciones (oper. de multiplicacin por hardware) Posibilidad de direccionar memoria externa
Familia PIC18CXXX/18FXXX Encapsulados de 18 a 80 pines Memoria de Programa de 16 bits Juego de 77 instrucciones (multiplicacin)
Familia PIC16CXXX/16FXXX
Puertos de Entrada/Salida
SCI)
Puerto Serie Sncrono Bsico Maestro (BSSP MSSP) Memoria EEPROM de datos FLASH EEPROM de programa modificable desde el cdigo
8K x 14 368 x 8
Temporizadores
Tiene de todo !
USART
Puertos de E/S
CAD-CAE
Realizacin + Montaje
Diseo software: el microcontrolador sin un programa cargado en su memoria no hace absolutamente nada, cuando est grabado con un programa eficiente el conjunto empezar a funcionar
Diseo del programa y escritura del cdigo fuente en ensamblador o en C Pruebas, verificacin y modificacin del cdigo: Simulacin del programa (puro software) o emulacin dentro del circuito de aplicacin (software y hardware) Grabacin del cdigo mquina en la memoria del microcontrolador
Emulacin o Depuracin sobre PCB
Subfunciones de instrumentos: Panel frontal de un osciloscopio Control de display sensible al tacto Contador de microondas con interface HP-IB Multmetro con interface serie a otro multmetro
Analizador de espectros (mdulos de expansin para IR y RF comunicados va Interface serie) Aplicaciones automotrices: Control de encendido e inyeccin de combustible Sistema de frenos antiderrapes (ABS) Control dinmico de la suspensin Sistemas de navegacin Alarmas automotrices Otros: Controladores de CRT Telfonos celulares Cerraduras electrnicas