Está en la página 1de 44

ESTRUCTURA DE

MICROPROCESADORES
Introduccin a la arquitectura
i8086

Profesor Ing. Johan Carvajal Godnez

JCG-2009
AGENDA DE LA CLASE
HISTORIA
DEFINICIONES
ANTECEDENTES
MICROCOMPUTADORA
INTRODUCCION AL 8086

JCG-2009
HISTORIA (1)
1930: Transistor MOS es ideado
tericamente por el alemn Julius von Edgar
Lilienfeld

1949 : el ingeniero alemn Werner Jacobi


(Siemens AG) completa la primera solicitud de
patente para circuitos integrados (No se pudo
Fabricar)

1958: El primer CI fue construido por Texas


instrument

JCG-2009
HISTORIA (2)
1960-1970: Se desarrollan los conceptos de
micro-programa, micro-cdigo, tecnologa de
fabricacin

1970: El Microprocesador F14 CADC (militar)


Esto introdujo un concepto novedoso que en
la actualidad se conserva: Lgica programable
integrada en un circuito

1971-1974: i4004
JCG-2009
DEFINICIN
El microprocesador es un circuito integrado que
contiene todos los elementos necesarios para
conformar una "unidad central de procesamiento"
tambin es conocido como CPU (por sus siglas en
ingls: Central Processing Unit)

Procesador Intel 45 nm

Procesador AMD

JCG-2009
CARACTERSTICAS DE UN MICROPROCESADOR

ARQUITECTURA
SET DE INSTRUCCIONES
MODELO DE PROGRAMACIN
TECNOLOGA DE MANUFACTURA
VELOCIDAD Y ANCHO DE BANDA
TAMAO BUS DE DATOS
PUERTOS DE ENTRADA Y SALIDA
DISPOSITIVOS DE SOPORTE
ARQUITECTURA DE INTERCONEXIN

JCG-2009
LIMITANTES DE UN MICROPROCESADOR
ELCTRICAS
Potencia consumida
Tolerancia al ruido electromagntico
Interfaz con otros dispositivos
Respuesta de frecuencia
MECNICAS
Empaquetamiento
Dimensiones
TRMICAS
Disipacin de calor
Degradacin de rendimiento [Mhz/C]

JCG-2009
ANTECEDENTES (1)
MCS-4 (1971)
Primer microprocesador comercial i4004
i4004 implement por primera vez RLM con SGT para
integrar la circuitera en un chip
Forma parte de esta familia MCS-4:
4001 (ROM (read-only memory) con 4 lineas de I/O
4002 (RAM (random access memory) 4 lineas de salida
the 4003 (registro) static shift register usado para
ampliar los I/O ejemplo: un teclado, puerto de
impresora, etc
4004 CPU con las siguientes especificaciones
16 registros de propsito general
PC y 3 niveles en la pila
ID y lgica de control interno de los bloques
Generador de temporizacin
Lgica de control del bus externo:
Memoria/IO

JCG-2009
ANTECEDENTES (2)
Especificaciones tcnicas i4004
Velocidad mxima 740 kHz
Memoria de programa y de datos separada
Bus de datos y direcciones de 4 bits multiplexado
12 bits para direccionamiento de memoria
Ancho de la instrucciones 8 bits (mayora)
Ancho de los datos 4 bits
# instrucciones: 46 (41 de 8 bits y 5 de 16 bits)
16 registros de 4 bits
Pila de 3 niveles

JCG-2009
ANTECEDENTES (3)
ARQUITECTURA i4004

JCG-2009
ANTECEDENTES (4)
Mas sobre del i4004
http://www.youtube.com/watch?v=j00AU
LJLCNo

JCG-2009
ANTECEDENTES (4)
Intel 8008 (1972)
3500 transistores
0.5 MHz
Microprocesador orientado a byte
Originalmente la intencin era ser el ncleo del
DATAPOINT 2200 (terminal programable)
Implementado sobre una tecnologa P-MOS de 10
micrmetros de ancho de compuerta
Caractersticas
18 pin DIP
Bus nico de 8 bits
14 bits para direccionar memoria
8 puertos de entrada, 24 puertos de salida
#instrucciones = 48
1 Lnea de interrupcin por HW

JCG-2009
ANTECEDENTES (5)

JCG-2009
ANTECEDENTES (6)
Intel 8080 (1974)
Fabricado en NMOS
Bus de datos de 8 bits
Bus de direcciones de 16 bits
Velocidad de operacin 2 MHz
40 pines DIP
8 registros de propsito general
B, C, D, E, H y L se podan combinar
256 puertos (I/O)
Pila externa en memoria
Tres fuentes de poder +5,-5,+12
Lneas para DMA/INT
Ncleo para la ALTAIR 8800

JCG-2009
MICROCOMPUTADORA
8085 (1977)
Compatible con 8080 y optimizado.
Habilit microcomputadoras ms baratas
Solo requera una fuente de +5 V
Se migr su uso a microcontrolador, desplazado
el Zilog Z80
Soportaba sistema operativo CP/M
Velocidad de operacin 3.5 a 6 MHz
40 pins DIP

JCG-2009
DISTRIBCION DE PINES 8085

JCG-2009
CARACTERSTICAS 8085
ARQUITECTURA
Von Neumann
Bus de direcciones y datos multiplexados
16 bits de bus de direcciones
8 bits bus de datos
6500 transistores
Generador de reloj/controlador de
sistema integrados

JCG-2009
DIAGRAMA DE BLOQUES 8085

JCG-2009
ISA 8085

JCG-2009
iAPX 432

8086?
JCG-2009
8086: RESPUESTA INTERMEDIA (1978)
DESARROLLADO EN 2 AOS
BASADO EN MICROARQUITECTURA 8085
MODIFICACION DEL SET DE
INSTRUCCIONES CON BACKWARD
COMPATIBILITY
FULL 16 BITS
29 000 TRANSISTORES HMOS
VELOCIDAD BUS INTERNO 4,5,8 MHz
TAMAO ORIGINAL DEL CHIP 33mm2

JCG-2009
8086

El microprocesador 8086 es el primer procesador


de la arquitectura IA (Intel Architecture) o x86.

Referencia imagen:
http://www.cpu-world.com/CPUs/8086/L_Intel-C8086-pbs.jpg

JCG-2009
Terminales del 8086

JCG-2009
8086: Resumen de caractersticas
Execution unit Bus interface unit

Relocation
Arquitectura de 16 bits Register file register file

Segment,
Data,
register &
pointer
& Index regs instruction
pointer
-Direccionamiento directo a memoria de 1 (8 words)
(8 words)

MB
BHE/S7

-Bus de datos 16 bits (8 bits 8088) 4 A19/S6...A16/S3

16 bits Bus 16 AD15-AD0


ALU
interface
unit
-14 registros internos de 16 bits Flags
3 INTA,RD,WR

3 DT/R,DEN,ALE

-Bus de direcciones 20 bits (1 MB memoria


fsica) 6-byte
instruction
queue

-12 modos de direccionamiento


LOCK
TEST
INT

-Operaciones de bits, bytes , words y blocksNMI


RQ/GTo 2 Control & Timing
2 QSo,QS

HOLD 3 S2,S2,S0
HLDA

-ISA CISC

3
CLK RESET READY MN/MX GND
Vcc

JCG-2009
Bus Interface Unit (BIU)
Execution unit Bus interface unit

Relocation
Register file register file

Segment,

Los sistemas Data,


pointer
& Index regs
(8 words)
register &
instruction
pointer

anteriores tenan el
(8 words)

bus de datos sin uso BHE/S7

4 A19/S6...A16/S3

cuando se ejecutaba 16 bits


ALU
Bus
interface
16 AD15-AD0

unit
la instruccin. Flags
3

3
INTA,RD,WR

DT/R,DEN,ALE

Con el 8086, se busca 6-byte

con anticipacin la instruction


queue

siguiente instruccin LOCK


TEST

mientras se ejecuta la INT


NMI
RQ/GTo 2 Control & Timing
2 QSo,QS

3 S2,S2,S0

actual (BIU)
HOLD
HLDA

3
CLK RESET READY MN/MX GND
Vcc

JCG-2009
Utilidad de unidades independientes

Problema: Unidades ociosas, y por lo tanto,


prdida de tiempo. Ejemplo: 8085: El canal
es cuello de botella, sin embargo est
ocioso

Microprocesador Recuperar Decodificar Ejecutar Recuperar Decodificar Ejecutar Recuperar Decodificar


Ejecutar 3
1 1 1 2 2 2 2 3

Recuperar
Canal Ocupado Ocioso Ocupado Ocupado Ocioso Ocupado Ocupado Ocioso Ocupado
1

JCG-2009
Ejecucin de instrucciones en forma simultnea

Solucin: El uso de unidades independientes para optimizar su


uso. Ejemplo 80486, unidad se encarga de hacer fetch de
varias instrucciones por anticipado, aprovechando el canal
(canal siempre ocupado)

Unidad de Recuperar Recuperar Recuperar Recuperar Almacenar Recuperar Recuperar Leer Recuperar
interface de canal 1 2 3 4 1 5 6 2 7

Unidad de Decodificar Decodificar Decodificar Decodificar Decodificar Decodificar


Ociosa Ociosa
instruccin 1 2 3 4 5 6

Unidad de Ejecutar Ejecutar Ejecutar Ejecutar Ejecutar


Ociosa Ejecutar 6
ejecucin 1 2 3 4 5

Unidad de Generar Generar


direccionamiento direccin 1 direccin 2

JCG-2009
Pila de instrucciones
Execution unit Bus interface unit

Relocation
Register file register file

Segment,
Data,
register &
pointer
& Index regs instruction
(8 words) pointer
(8 words)

Las Instrucciones se BHE/S7

obtienen por 16 bits Bus


4

16
A19/S6...A16/S3

AD15-AD0
ALU

anticipado, por lo Flags


interface
unit 3 INTA,RD,WR

que se logra cierto 3 DT/R,DEN,ALE

grado de 6-byte

paralelismo instruction
queue

LOCK
TEST
INT
NMI 2 QSo,QS
RQ/GTo 2 Control & Timing
HOLD 3 S2,S2,S0
HLDA

3
CLK RESET READY MN/MX GND
Vcc
JCG-2009
Unidad de ejecucin
Execution unit Bus interface unit

Relocation
Register file register file

Segment,
Data,
register &
pointer
& Index regs instruction
(8 words) pointer
(8 words)

BHE/S7

4 A19/S6...A16/S3

Ejecucin de 16 bits
ALU
Bus
interface
16 AD15-AD0

unit
instrucciones en el Flags
3

3
INTA,RD,WR

DT/R,DEN,ALE

procesador. Trabajo
en paralelo con BIU 6-byte
instruction
queue

LOCK
TEST
INT
NMI 2 QSo,QS
RQ/GTo 2 Control & Timing
HOLD 3 S2,S2,S0
HLDA

3
CLK RESET READY MN/MX GND
Vcc
JCG-2009
Modos de operacin

Modos de Operacin:
- Modo mximo
- Modo mnimo

JCG-2009
Modos de operacin para 8086

Se controla a travs de
la terminal MN/MX
-Modo mnimo similar al
8085A de 8 bits
-Modo mximo se utiliza
para manejo de
coprocesador

JCG-2009
Sistema Mnimo

Todas las seales de memoria y I/O se generan sin


mediar un rbitro de bus
JCG-2009
Modo mximo

En el modo mximo, algunas seales de


control son generadas de manera
externa.
Se agrega controlador de canal externo,
el 8288.
Modo mximo solo se utiliza si el sistema
tiene coprocesadores externos, como el
coprocesador aritmtico 8087

JCG-2009
Sistema Mximo

JCG-2009
Canal de direcciones y de datos (AD15-AD0)

Canal multiplexado de
datos y direcciones menos
significativos

Cuando ALE est activo


aparecen los bits menos
significativos de la
direccin, cuando est
desactivo, los menos
significativos de datos

JCG-2009
Control de los buses del sistema

Debido a que el bus del sistema est


multiplexado, el sistema debe ser
demultiplexado para trabajar adecuadamente

A19

Canal de direccin
A0
BHE

D15
Sistema Canal de datos
(16 bits)
8086 D0

RD
Canal de control WR
M/IO

JCG-2009
Control de los buses del sistema (2)
Sin embargo, dicho canal se encuentra
multiplexado

A19

Canal de direccin
A0
BHE

D15
Sistema Canal de datos
(16 bits)
8086 D0

RD
Canal de control WR
M/IO

JCG-2009
Temporizacin de los canales del 8086
Se debe hacer un correcto manejo de la temporizacin con
la que se realiza la lectura y escritura en el canal

A19

Canal de direccin
A0
BHE

D15
Sistema Canal de datos
(16 bits)
8086 D0

RD
Canal de control WR
M/IO

JCG-2009
Escritura en el 8086
Ciclo de escritura simplificado

JCG-2009
Lectura en el 8086
Ciclo de lectura simplificado

JCG-2009
Escritura en el 8086
Es necesario el uso del latches externos para el
manejo de la direccin/datos

JCG-2009
Demultiplexacin de canales

Datos y direcciones
deben ser
multiplexados para
su uso.

Ejemplo: canal de
direcciones
demultiplexado

JCG-2009
Ejercicio
Realizar un circuito esquemtico para la
conexin del procesador 8086

Debe incluir
Conexin en modo mnimo
Demultiplexacin de los buses de datos, direccin
y lectura escritura
Justificar el usos de componentes adicionales
Conexin del reloj

JCG-2009
Bibliografa

Brey, B. Los microprocesadores intel: Arquitectura, programacin e


interfaces. Tercera Edicin. Prentice Hall. 1995
Intel 8086 microprocessor family www.cpu-world.com/CPUs/8086/
Von Neumann, J. First Draft of a report on the EDVAC. University of
Pennsylvania. 1945 (http://www.virtualtravelog.net/entries/2003-08-
TheFirstDraft.pdf)
- Furben, S. VLSI RISC Architecture and Organization. CRC.
-Sin-Min Lee. RISC Architecture. San Jose State University:
www.cs.sjsu.edu/~lee/cs147/25SpL19RISC%20Architecture.ppt

JCG-2009

También podría gustarte