Microprocesadores
PUEBLA, PUEBLA 2004
07/01/19 hh 1
Criterios de Porcentaje
evaluación
Exámen 35
Asistencia, Tareas y 30
practicas
Proyecto 35
Total 100
07/01/19 hh 2
Historia de los microprocesadores
microprocesadores
microcontroladores
Arquitectura de la familia MCS-51
Programación de la familia MCS-51
Interfaz digital
07/01/19 hh 3
Definiciones de: computador, arquitectura y
organización del computador
SALIDA
ENTRADA
PROCESO
Entrega de
Ingreso de Datos Trabajo de la CPU Resultados
Dispositivos de Unidad Central de
Proceso Dispositivos de
Entrada
Salida
07/01/19 hh 4
Reseña histórica de los computadores
07/01/19 hh 5
Los computadores electrónicos salvan estos inconvenientes ya
que carecen de partes móviles y la velocidad de transmisión
de la información por métodos eléctricos no es comparable a
la de ningún elemento mecánico.
07/01/19 hh 6
Generación de Computadores
07/01/19 hh 7
LA UNIDAD CENTRAL DE PROCESO
07/01/19 hh 8
El microprocesador de la CPU está formado por una unidad
aritmético-lógica que realiza cálculos y comparaciones, y toma
decisiones lógicas (determina si una afirmación es cierta o falsa
mediante las reglas del álgebra de Boole); por una serie de
registros donde se almacena información temporalmente, y por
una unidad de control que interpreta y ejecuta las
instrucciones.
Para aceptar órdenes del usuario, acceder a los
datos y presentar los resultados, la CPU se
comunica a través de un conjunto de circuitos o
conexiones llamado bus.
07/01/19 hh 9
Elementos que la componen
07/01/19 hh 10
Unidad Central
CPU
de Proceso
Unidad
Aritmética
Periféricos Periféricos
De Unidad de Control De
Entrada Salida
Memoria
Principal
07/01/19 hh 11
Tipos
Básicamente nos encontramos con dos tipos
de diseño de los microprocesadores: RISC
(Reduced-Instruction-Set Computing) y CISC
(complex-instruction-set computing). Los
microprocesadores RISC se basan en la
idea de que la mayoría de las instrucciones
para realizar procesos en el computador son
relativamente simples por lo que se minimiza
el número de instrucciones y su complejidad
a la hora de diseñar la CPU.
07/01/19 hh 12
Los microprocesadores CISC, al
contrario, tienen una gran cantidad de
instrucciones y por tanto son muy rápidos
procesando código complejo.
07/01/19 hh 13
PROCESADOR
La informática avanza a pasos agigantados y por
este motivo que pensamos en cambiar de equipo, o al
menos actualizarlo lo suficiente para poder tener nuestro
PC acorde con el software y hardware que va
apareciendo. Esto nos permite seguir aprendiendo,
actualizarnos y acomodarnos también a las nuevas
tecnologías.
El procesador del sistema es el cerebro del PC, el
cual permite distribuir y controlar cualquier operación
desde el momento del arranque hasta que apagamos el
equipo. Según esto es lógico pensar que cuanto más
rápido trabaje el procesador, más rápido podrá terminar
todas las tareas; esto se traduce en mayor agilidad en el
arranque del PC, de los programas,...es decir, una mejora
general muy importante.
Si bien, de todos es sabido que el procesador es
muy importante para aumentar la velocidad,
pero el resto de componentes deben ser los más
adecuados ya que de lo contrario el procesador
no podrá trabajar a máximo rendimiento por
culpa del resto de componentes.
07/01/19 hh 15
Unidades de medida de velocidad
07/01/19 hh 16
Los primeros computadores personales
compatibles (PC) poseían microprocesadores 8088 y
8086. Estos son prácticamente idénticos y poseen una
velocidad desde 4,77 Mhz a 10 Mhz. Hoy en día ya no
se fabrican. Estos fueron reemplazados por los
microprocesadores 286, que poseen velocidades de
entre 8 y 16 Mhz. Actualmente también han dejado de
fabricarse.
07/01/19 hh 17
El microprocesador 386 (también conocido
como 386 DX) tiene una velocidad desde 16 a 50
Mhz. El microprocesador 386 supone un paso
muy importante frente al 286. Hasta entonces,
tanto los micros 8088, 8086 como el 286 eran
microprocesadores de 16 bits: trabajaban con 16
bits a la vez en cada pulso de reloj. Por el
contrario, el 386 es ya un microprocesador de 32
bits, que procesa 32 bits simultáneamente en cada
ciclo de reloj.
07/01/19 hh 18
El microprocesador 486 (o 486 DX) también es un
microprocesador de 32 bits. La principal innovación
del 486 frente al 386, aparte de varias
características que optimizan su velocidad, es la
incorporación en el propio micro de un
coprocesador matemático (un coprocesador
matemático es un chip especial que tiene que
funcionar junto al microprocesador central y que se
encarga de realizar a alta velocidad las
operaciones matemáticas, descargando de trabajo
al microprocesador central).
07/01/19 hh 19
Con el nombre de Pentium se conoce a la
quinta generación de los microprocesadores Intel,
el que tendría que haberse denominado 586. La
elección de este cambio de nombre se debe
solamente a una razón de marketing. El
microprocesador Pentium posee un diseño
avanzado, integrando más de 3 millones de
transistores (piense que el 8086 sólo tenía 28.000
transistores). Además, soporta características
RISC similares a la de los microprocesadores
utilizados en los grandes computadores y, al igual
que el 486 DX, incluye un coprocesador
matemático. Actualmente están disponibles en el
mercado procesadores con velocidades superiores
a 07/01/19
los 300 Mhz. hh 20
Modelo Velocidad
386 16-50Mhz
486 33-100Mhz
Pentium 66 - 200Mhz
Pentium MMX 200 - 350Mhz
Celeron 233 -350Mhz
Pentium II 233 - 450Mhz
K6 350 -450Mhz
Pentium III 450 -700Mhz
K7 450 -700Mhz
07/01/19 hh 21
Tipos de micros y
fabricantes
Microprocesadores hay muchos, pero tan solo 2 marcas
en el mercado son las más conocidas y se alzan como
competidoras muy serias.Hace algunos años Intel estaba a la
cabeza tanto de fabricación como de ventas y distribución,
pero un cambio en el mercado con una fuerte aparición de
AMD ha establecido un nuevo estándar en las configuraciones
de los equipos de venta directa.
07/01/19 hh 22
Tipos de conexión a las placas base
Para poder actualizar correctamente
el microprocesador de nuestra placa
base, lo primero que tenemos que
saber es qué tipo de conexión
admite nuestra placa, para así
buscar el procesador más adecuado.
Podemos resumir mucho diciendo
que existen 2 tipos de conectores.
SOCKET. Este tipo de conectores
se basan en lo que se llama zócalo
ZIF, es decir, "Zero Insertion Force"
ó "Fuerza de Inserción Cero", donde Socket 462 para Athlon de AMD
los procesadores pueden instalarse
sin efectuar ninguna presión sobre
ellos, facilitando mucho las cosas y
sobre todo minimizando los riesgos.
SLOT. Los microprocesadores se
instalan como si de un cartucho se
tratara, tal como los de juegos de
consola o similar.
Slot para Pentium II,III y Xeon
07/01/19 hh 23
Consideraciones para
actualizar el procesador
1. Antes de considerar la actualización del procesador de
su Pc, debe reunir cierta información sobre su
equipamiento actual.
El tipo de motherboard, el tipo de procesador y la cantidad
de memoria que tiene su Pc. Un punto muy importante
(realmente MUY IMPORTANTE) es el tipo de socket
(zócalo) que tiene su motherboard: Slot 1, que se usa para
Pentium II y III, o Socket 7 usado para Pentium y AMD K6
y K6-III. El socket determina que tipo de procesador entra
físicamente en su Pc.
Después deberá averiguar que tipo de "chipset" tiene su
motherboard. ¿Que es el "chipset"? El chipset determina
que procesadores son compatibles con el motherboard.
07/01/19 hh 24
Por ejemplo: un Pentium III entra físicamente en un
sistema Pentium II con un chipset 440LX, pero no es
compatible. Otro ejemplo, es poner un procesador K6-2 en
un viejo sistema Pentium, ya que podrá colocar el
procesador, pero probablemente el motherboard no lo
soporte. El manual de su motherboard, contendrá una
lista de los procesadores compatibles. También le
aconsejamos visitar la página Web del fabricante del
motherboard, porque seguramente tendrá una lista más
actualizada. Tal vez necesite actualizar el BIOS para que
su motherboard soporte los procesadores más nuevos.
07/01/19 hh 25
Diferentes arquitecturas de microprocesadores
de 8 bits
El desempeño de los microprocesadores
depende de su arquitectura y de la aplicación
para que fue realizada
1971. Intel fabrica el primer microprocesador
el 4004 a petición de Datapoint.
4 bits
2300 transistores
108 Khz
45 instrucciones
Una instrucción por 20 seg
07/01/19 hh 26
1972. Intel desarrollo una versión mas
poderosa el 8008 por un factor de 10
Manipula bytes completos
Memoria de manipulación a 16K
Velocidad igual al 4004
1973. Intel lanza el 8080
500 000 operaciones por segundo
Memoria de manipulación a 64K
Revolución en el diseño de microprocesadores
IMP-4, SC/MP de National Semiconductors, PPS-4,
PPS-8 de Rockwell International, MC6800 de
motorola de Fairchild
07/01/19 hh 27
1975. Zilog lanza el Z80
Uno de los microprocesadores de 8 bits
mas poderosos
Productos no compatibles con otros
fabricantes
1976. Primera microprocesadores de un
solo chip(microcontrolador)
8048 de Intel.
6805R2
07/01/19 hh 28
Fairchild F-8
Procesador de 8 bits
No tiene apuntador de pila
No cuenta con contador de programa
No cuenta con bus de direcciones
Cuenta con 64 registros y 64 byes en RAM
Arquitectura
Tipo Daos Direcci clock instruc Registr Registr Puerto Pila Interru Memor
por ón ciones os os de s IO pcione ia
palabra Matem Índice s
áticos
CPU 8-bits 64k 2Mhz 1 2 2x8 33x16 Velocid 10 64
bits ad 1 bytes
nivel RAM
07/01/19 hh 29
Intel 8080
1971 a Federico Faggin se le ocurrió como hacer
un micro de 8 bits mejor que el 8008
Incorporación de mas velocidad
Utilizo el nuevo proceso NMOS (transistores MOS
de canal N) que se utilizaba en las ultimas
memorias RAM dinámicas de 4 k
Mejor estructura de interrupciones
Mayor direccionamiento de memoria (16K en el
8008 contra 64K en 8080)
Instrucciones adicionales
07/01/19 hh 30
El 8080 corría en el famoso S.O. CP/M
(control program for microcomputer)
Tenia alrededor de 6000 transistores MOS
de canal N
Se conecta al exterior mediante 40 patas
Frecuencia de 2Mhz
Tipo Daos Direcci clock instruc Registr Registr Puerto Pila Interru Memor
por ón ciones os os de s IO pcione ia
palabra Matem Índice s
áticos
CPU 8-bits 64k 2Mhz 1 1 2x8 33x16 16 bits 15 64
bits bytes
RAM
07/01/19 hh 31
8255A
Interfaz programable para perifericos se puede tener
acceso a los puertos numerados 60H, 61H, 62H y
63H utilizando el 8255
Entran en juego las
líneas de dirección A0 y A1
07/01/19 hh 32
También se debe considerar la capacidad del
integrado para leer y escribir.
Implica que los datos se transfieren en ambas
direcciones a través de los 3 conjuntos de
líneas de puerto
PA0-PA7
PB0-PB7
PC0-PC7
A0=A1, RD*=1,WR*=0 y CS*=0
Dirección del puerto 63H(A0=A1=1)
Estas direcciones de puerto aparecen en IN y
OUT específicos para señalar al puerto
07/01/19 hh 33
P/E
Push F
Push AX
Push BX
Push Dx
Push SI
Mov BX,8
Mov Ah,7FH
Mov SI,OFFSET memory-1; direcciona la Ram de exhibicion
Mov DX,PORTB
07/01/19 hh 34
Disp1:
Mov AL,AH
Out DX,AL
DEC DX
MOV AL,[BX+SI] ;direcciona PA
Out DX,AL
Call delay
ROR AH,1
Inc DX
DECBX
JNZ disp1
Pop DX
Pop BX
Pop AX
Pop F
ret
07/01/19 hh 35
Tabla para selección de puertos con 6XH
Las líneas A0 y A1 se combinan para poder
producir 0,1,2
0 0 0 1 0 PA lee entrada
1 0 0 1 0 PB lee entrada
0 1 0 1 0 PC lee entrada
0 0 1 0 0 PA escribe salida
1 0 1 0 0 PB escribe salida
0 1 1 0 0 PC escribe salida
07/01/19 hh 36
Puerto A=60H
Puerto B=61H
Puerto C=63H
PA. Tiene un buffer y latch de salida de datos
de 8 bits, con un latch adicional de entrada de
datos de 8 bits
PB. Tiene buffer y latch de E/S de 8b, con
buffer de entrada de 8b
PC. Tiene buffer y latch de salida de 8b y
buffer de entrada de datos de 8b
La definicion del modo de puerto que se
utiliza, depende de la programacion
PC se puede utilizar como dos puertos de 4b
07/01/19 hh 37
El 8255 se selecciona con su terminal
CS* para programarla o para leer o
escribir del puerto
La selección de sus registros se logra
por medio de las terminales A0 y A1
A0=A1=1 y CS*=0 se utiliza en modo
de registro de comando
Reset. Cuando se inicializa el
microprocesador en modo 0
07/01/19 hh 38
7 6 5 4 3 2 1 0 PC3-PC0
1=entrada
1
0=salida
PB
1=entrada
0=salida
modo
00=modo0
01=modo1
P/E
Mov AL,100000B ; comando de inicialización
Mov DX,command ;dirección del registro de comando
Out DX,AL ;programar el 8255
07/01/19 hh 40
Microprocesadore
Pentium II, UltraSparc II, picoJava
Pentium II.
Descendiente del CPU 8080
7.5 millones de transistores
64 bits(transferir datos de y a la memoria)
Mismos registros, instrucciones (pentium y Pentium
Pro)
Pentium II + Pentium Pro = Pentium MMX
Las instrucciones a nivel ISA se obtienen de memori con
anticipacion y se descomponen en microoperaciones tipo RISC
Se almacena en buffer
Cuando una dispone de recursos se ejecuta
07/01/19 hh 41
Inicia varias microoperaciones en el mismo
ciclo, convierte al PII en una maquina super
escallar.
PII tiene una cache de 2 niveles
16KB para instrucciones
16KB para datos
+cache de 512 de segundo nivel
PII tienen relojes de CPU de 233Mhz o mas
BUS PCI para comunicación de dispositivos
E/S
PII puede tener mas CPU que comparten
una memoria en común.
07/01/19 hh 42
En 2 CPU existe el peligro de ller una palabra
y colocarla en una caché, y se modifica ahí
sin que se escriba de vuelta en la memoria, si
la otra CPU trata de leer la palabra tendra
valor incorrecto.
Solución. Espionaje
PII provisto de SEC(cartucho de una sola arista)
SEC. Encapsulado plástico relativamente grande
que contienen la CPU, la cache nivel 2 y un
conector de arista para exportar señales.
SEC de PII tiene 242 conectores
07/01/19 hh 43
512 KB de
Procesador Caché nivel
PII 2 unificado
07/01/19 hh 44
07/01/19 hh 45
SEC. 6.3x1.6
Conexión logica del PII
242 conectores de arista de SEC
170 señales
27 conectores de potencia(diferentes voltajes)
35 tierras
10 para uso futuro
Señales de bus
BPRI permite a un dispositivo hacer una
solicitud de alta prioridad
Lock. Permite a una CPU bloquear el bus para
evitar que otra lo use antes que la primera la
termine de usar
07/01/19 hh 46
ADS. Se habilita cuando una direccion se
coloca en el bus, asi indica a la memoria que
la lineas de direccion son validas.
Reg. Es donde se coloca el tipo de ciclo de
bus(leer una palabra o escribir un bloque)
Espionaje. Si la palabra que necesita esta en la
caché el otro CPU la toma
PII puede configurarse tal como el 8080
O con un APIC(controlador de interrupciones
programables avanzado 8259A)
UID. Selección automatica de la fuente de
potencia
Inicializacion. Arranca el sistema (booting)
07/01/19 hh 47
07/01/19 hh 48
Solicitudes de memoria PII
Arbitraje del bus
Solicitud
Informar errores
Espionaje
Respuesta
Datos
El secreto del PII es que cada fase
utiliza diferentes señales de bus, de
modo que cada una es independiente
de las demas (PIPELINE).
07/01/19 hh 49
07/01/19 hh 50
07/01/19 hh 51
UltraSparc II
Sun de 64 bits
Estacion de trabajo y estaciones
Maquina RISC
Decodificacion de mpge en tiempo real
Construir multiprocesadores de 4 nodos con
mwmoeia compartida sin adicion de circuitos
externos y multiprocesadores mas grandes
con minimo circuitos externos
07/01/19 hh 52
El adhesivo que se necesita para construir un
multiprocesador esta incluido en cada chip
UltraSparc II (USII)
5.4 millones de transistores
787 terminales en su base
64 bits direcciones
128 bits datos
USII:
2 cachés internas
16Kb para instrucciones
16Kb para datos
07/01/19 hh 53
Igual que PII tiene una caché de nivel 2
externo al chip a diferencia no esta
empaquetada con el USII
La Cachés:
USII 512Kb a 16 Mb
PII 512Kb fija
Los 242 conectores del SEC no incluye señales
para la caché ya que la CPU-caché es interna
al cartucho
Las 787 terminales del USII si incluye control
de caché
Intel es fabricante de semiconductores, diseña
y fabrica sus propios chips de caché de nivel 2
y conectarlos al CPU con interfaz de alto
rendimiento
07/01/19 hh 54
Sun fabrica computadora, no chip. Solo
diseña sus chips y US contrata fabricantes de
semiconductores como: Texas instruments y
Fujitsu
En el SBUS se conectan dispositivos de E/S,
pero este es lento para la memoria.
El mecanismo para que los CPU US se
comuniquen con una o mas memorias es la
UPA
UPA(arquitectura de ultra puerto).
Implementada como un bus conmutador o
combinacion de las 2 casas
07/01/19 hh 55
Etiquetas
de caché
de nivel 2
CUP
USII
Interfaz
Caché de UPA
Nivel 1 con la
memoria
principal
Datos
de caché
de nivel 2
Buffer de memoria
UDBII
07/01/19 hh 56
La memoria principal esta dividida en
líneas de caché
256 líneas de instrucciones que mas usa
256 líneas de datos que mas usa en la
caché nivel 1
Líneas mas usadas y no caben en caché
nivel 1 y se guardan en caché nivel 2.
07/01/19 hh 57
PicoJava. Microjava 701
Sistema incorporado
Programado en elnguaje ensamblador
El problema. La utilida de java es la
necesidad de tener un interprete grande en
software que ejecute el codigo JVM producido
por el compilador de Java
Atacar el problema diseñando y construyendo
chips de CPU que tiene JVM como un
conjunto de instrucciones nativo
07/01/19 hh 58
Ventajas de usar Java como un
lenguaje de programacion:
Transportabilidad
Código compacto JVM binario por el
compilador de java
Rapides de ejecucion por HW.
Especializado
Chip microJava 701 de sun
2 interfaces de BUS
Memoria ancha de 64 bits
PCI de 32 bits
07/01/19 hh 59
07/01/19 hh 60
Tiene caché nivel 1(opcional) dividida en:
16Kb para instrucciones
16Kb para datos
No tiene caché nivel 2 por el bajo costo
2 millones de transistores para el núcleo
1.5 millones para las 2 cachés de 16Kb juntos
PicoJava utiliza el bus PCI(33-66Mhz)
Ventaja del PCI. Es un estandar, evita el
diseño de un nuevo BUS
PROM flash
El programa debe estar incluido en el dispositivo
PROM, buen lugar para almacenar el programa
07/01/19 hh 61
El mJ701 tiene 16 líneas de E/S
programable que pueden conectarse a
botones, interruptores, etc.
Las líneas programables hacen no
necesitar el incluir chip controlador de
entrada y saida programable (82C55)
3 temporizadores programables
incluido, porque amenudo se opera en
tiempo real.
mJ701 es encapsulado en BGA(Ball
Grind Array) de 316 terminales
07/01/19 hh 62