Professional Documents
Culture Documents
MICROPROCESADORES Y MICROCOMPUTADORAS
Hardware
1.1
1.2
1.3
2.
Memorias
2.1
2.2
2.3
Arreglo Lineal
Arreglo Matricial
1.
Memoria de Slo Lectura Programable (PROM, por sus siglas en ingls) tipo
fusible
Memoria de Slo Lectura Programable Borrable (EPROM, por sus siglas en ingls)
3.
1-1
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
HARDWARE
El hardware est compuesto por circuitos integrados (IC, por sus siglas en ingls) de
muy alta densidad y prcticamente uno por cada bloque bsico, es decir: Un IC para la
CPU, otro para la Memoria de Acceso Aleatorio (RAM, por sus siglas en ingls), uno ms
para la Memoria de Slo Lectura Programable (PROM, por sus siglas en ingls), otro ms
para los puertos de E/S paralelos y, finalmente, uno para los puertos de E/S seriales.
Teora general de microprocesadores y microcomputadoras
Definiciones preliminares
Computador digital
Definicin 2.
1.
1-2
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
UNIDAD DE CONTROL
CPU
ALU
UNIDAD DE
ENTRADA
INSTRUCCIONES
Y
DATOS
UNIDAD DE
SALIDA
RESULTADOS
UNIDAD DE
MEMORIA
CPU
ENTRADA
MEMORIA
SALIDA
CPU
ENTRADA
MEMORIA
SALIDA
ENTRADA
MEMORIA
SALIDA
3.
1.
Medio de entrada a travs del cual se introducen las instrucciones y los datos.
Memoria desde la cual, los datos e instrucciones pueden ser obtenidos por el CPU (P)
y donde se pueden almacenar resultados parciales y finales, esto es, Memoria de Acceso
Aleatorio (RAM, por sus siglas en ingls) Otra seccin de la memoria est compuesta por cdigo fijo, llamada Memoria de Slo Lectura (ROM, por sus siglas en ingls)
Seccin de clculo la cual debe ser capaz de realizar operaciones aritmticas y lgicas
sobre cualquier dato tomado de la memoria.
INTRODUCCIN A LOS MICROPROCESADORES
LUIS URIETA PREZ Y PABLO FUENTES RAMOS
1-3
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
4.
5.
Las mquinas que satisfacen estas condiciones se les conoce como computadoras clase HARDVARD. Si adems de estas condiciones, las instrucciones se almacenan en la misma forma que los datos (cada uno igualmente accesible a la seccin de
clculo de la C), entonces las instrucciones se pueden tratar como datos y la mquina puede modificar sus instrucciones. A tal mquina se le conoce como computadora clase VON NEWMAN o PRINCETON.
El diseo de todos los C se basa en 4 bloques:
a.
b.
c.
d.
Dispositivos de entrada
Memoria
Microprocesador
Dispositivos de salida
(punto 1)
(punto 2)
(puntos 3 y 4)
(punto 5)
Las arquitecturas de los C ms sobresalientes, en donde se muestran los grupos de lneas interconectados a los bloques bsicos, se presentan en la Figura 1.3:
P
NO EXISTE BUS DE ENTRADA/SALIDA
CB
AB
DB
MEMORIA
CB Bus de Control
AB Bus de Direccin
DB Bus de Datos
ENTRADA
MOTOROLA
6502
SALIDA
1.
1-4
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
MDB
C
O
N
T
R
O
L
BUS DE
CONTROL
LOCALIDAD
MDR
M
A
R
ALU
CONTENIDO
MAB
ACUMULADOR
MEMORIA
BUS DE ENTRADA/SALIDA
ENTRADA
SALIDA
SALIDA
ENTRADA
INTEL
Donde:
MDB = Bus de Datos de Memoria
MAB = Bus de Direccin de Memoria
MAR = Registro de Direccin de Memoria
ALU = Unidad Aritmtica y Lgica
MDR = Registro de Datos de Memoria
1-5
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
RELOJ
5V
Subciclo de bsqueda
Subciclo de ejecucin
Ciclo de mquina
A
- Decodifica la instruccin
- Ejecuta la instruccin
PC
Decodificador de
instruccin
IR
C
MAR
MDR
MEMORIA
LOCALIDAD
CONTENIDO
AB
DB
PC
MAR
MDR
AB
DB
Contador de Programa
Registro de Direccin de Memoria
Registro de Direccin de Datos
Bus de Direccin
Bus de Datos
1-6
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Palabras de instruccin
Palabras de datos
IR
MDB
MDR
DIRECCIN
DECOD. DE
INSTRUCCIONES
CONTROL
PC
CONTROL
1
2
MAR
MDB
IR
PC
MAB
MDB
MDR
Registro de Instruccin
Contador de Programa
Bus de Direccin de Memoria
Bus de Datos de Memoria
Registro de Datos de Memoria
MEMORIA
1.
1-7
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Cuando sucede una interrupcin, deseamos que despus de atenderla, el programa continue su ejecucin donde se qued. Para lograr esto, es necesario que todos
los registros internos del P se almacenen en memoria y a esta rea se le llama stack.
Despus de atender la interrupcin, sacamos del stack los valores de los registros del P.
Con esto, reanudamos el programa en la instruccin en que se suspendi.
Esta fue una descripcin general de un C, en la prctica se debe tomar en
cuenta que cada C tiene su propia organizacin, la cual combina o expande las caractersticas descritas con anterioridad.
Microprocesador ideal
Definicin:
N lneas
de ENTRADA
MEMORIA
M lneas
de SALIDA
PROGRAMA
Las seales que se aplican a las lneas de entrada se les conoce como datos
de entrada. stos pueden venir de interruptores (switches ), sensores, convertidores
A/D (Analgico / Digital), teclado o cualquier tipo de dispositivo de entrada. Dentro
del P ideal reside el programa, el cual es un conjunto de instrucciones secuenciales
que determinan cmo ser procesado el dato de entrada y qu informacin ser enviada a las lneas de salida como consecuencia del proceso de las entradas.
Las lneas de salida se pueden conectar a actuadores, indicadores, convertidores D/A, impresoras, alarmas, etc.
1.
1-8
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
En cualquier tiempo, los niveles lgicos en las lneas de salida del microprocesador se determinan por 2 factores:
-
Microprocesador real
Debido al nmero limitado de patas (pines ) disponibles en cualquier circuito integrado prctico, el P no contiene N lneas de entrada y M lneas de salida tendientes a
c.
01000112
01,000,1112
= 01000111B
= 107O
010001112
= 47H
AB
DB SIN MLTIPLEXAR
E/S
LNEA DE
CONTROL
R/W
DB MULTIPLEXADO
1-9
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Bus de direccin
CONTENIDO
AB
GND
VCC
= 0V
=5V
Registros internos
1-10
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Memorias
Existen dos tipos de organizacin:
-
FSICA
LGICA
Como la ve el programador
de ensamblador
CPU
TERMINAL
UNIDAD CENTRAL
DE PROCESO
MEMORIA
PRINCIPAL
MMU
UNIDAD ADMINISTRADORA
DE LA MEMORIA
I/0
ORGANIZACIN LGICA
ORGANIZACIN FSICA
1.
1-11
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
M
E
M
O
R
I
A
S
S
E
M
I
C
O
N
D
U
C
T
O
R
A
S
- ESTTICAS
- DINMICAS
RAM
ROM
PROGRAMADA
POR EL USUARIO
EAROM
BORRABLES
POR PULSOS
uVPROM
BORRABLES
POR LUZ uV
- BORRABLES
Voltil
No Voltil
La memoria voltil tiene la caracterstica de que pierde la informacin almacenada cuando se desactiva la fuente de poder (la celda de almacenamiento es un multivibrador biestable)
1.
1-12
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Densidad limitada
Alto consumo de energa
Conforme se incrementa la densidad de la memoria, los circuitos sensores se vuelven
ms complejos y requieren mayor energa.
Las RAM dinmicas son de tecnologa MOS y tienen la ventaja de que las celdas son de dimensiones menores a las bipolares y consumen poca energa, lo cual
hace posible el que se puedan empaquetar muchas celdas en un circuito integrado.
La desventaja de las RAM dinmicas con respecto a las estticas es la velocidad de acceso.
Las ROM programables por el usuario pueden ser de 2 tipos:
1.
2.
1.
1-13
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Lineal
Matricial
Arreglo lineal. La Figura 1.10, muestra los bloques bsicos de un arreglo lineal:
Palabra 0
AB del P
Lneas de
direccionamiento
a0
a1
a2
II
I
Decodificador
de
direccin
Palabra 1
Celdas
de
almacenamiento
Palabra 2 n-1
an-1
III
AB =
DB =
Bus de Direccin
Bus de Datos
Sensores de
Lect/esc
Hacia el DB del P
Decodificador de direccin
Es un circuito que contiene 2n lneas de salida y n lneas de entrada. Para cada combinacin entre las n lneas de entrada, se selecciona una y slo una lnea de salida.
EJEMPLO: Veamos el desarrollo de una memoria cuyo arreglo es lineal y contiene 4 palabras de 4 bits por palabra. Este ejemplo es didctico.
Si tenemos 2 lneas de direccionamiento, tendremos 22 lneas de salida,
como se muestra en la siguiente tabla:
DIRECCIN CONTENIDO
a1
a0 w3 w2 w1 w0
0
0
0 0 0 1
0
1
0 0 1 0
1
0
0 1 0 0
1
1
1 0 0 0
1.
1-14
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
w 0 = a1a0
w 1 = a 1a 0
w 2 = a1a0
w 3 = a 1a 0
En diagrama a bloques se tiene la siguiente representacin:
w0
a0
DECODIFICADOR
a1
na2
w1
w2
w3
FIGURA 1.11. Diagrama lgico de un arreglo lineal de 4 palabras de 4 bits por palabra
En general, los decodificadores que contienen los circuitos integrado de memorias son:
n
n entradas 2 salidas
10
1024
11
2048
12
4096
13
8K
14
16K
15
32K
16
64K
II.
Celdas de almacenamiento
Estn organizadas en palabras, cada palabra corresponde a una lnea de salida del decodificador de direccin.
1.
1-15
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
El nmero de bits que contiene cada palabra es el nmero de celdas que se conecta en
paralelo a cada lnea de salida del decodificador, como se muestra en Figura 1.11.
III.
W1
a0
a1
DECODIFICADOR
DE
DIRECCIN
W2
W3
III
Sensores de
Lectura / escritura
Las lneas de direccionamiento se dividen en dos grupos. Unas lneas entran al decodificador en x y otras en y.
Las lneas de salida de los decodificadores activan a una sola celda del bloque de celdas de almacenamiento.
Las celdas de almacenamiento deben contener dos lneas de entrada de seleccin, una
en x y la otra en y.
Ya que las combinaciones entre las lneas de direccionamiento son nicas, requerimos
un solo sensor de lectura/escritura para todo el arreglo.
Un parmetro til en todo tipo de memoria es:
Densidad de la memoria = nmero de palabras por nmero de bits de la palabra
1.
1-16
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Un solo sensor de
LECTURA/ESCRITURA
x0
x1
DECODIFICADOR
EN
DIRECCIN
x
En el cruce x, y est
ubicada una celda de
ALMACENAMIENTO
xn
DECODIFICADOR
EN
DIRECCIN
y
yn
y1
y0
Decodificador
x
Un solo sensor de
Lect / esc
n = 4 lneas de
direccionamiento
Decodificador
y
1.
1-17
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
b.
Decodificador
x
Sensor de
Lect / esc
n = 4 lneas de
direccionamiento
Decodificador
y
El circuito integrado que contiene a esta memoria, comprende las siguientes patas:
N.C.
IC de 8
patas
n = 4 lneas de
direccionamiento
n = 4 lneas de
direccionamiento
a0
a1
a2
a3
b0
b1
b2
b3
4 lneas de
entrada/salida
de datos
1-18
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
4
16 x 4
4
b.
b0
b1
b2
b3
IC
8 x4
a0
a1
a2
a3
a4
32 x 4
b0
b1
b2
b3
CS
decimal
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1.
DIRECCIN
CONTENIDO
a 4 a 3 a 2 a 1 a 0 b3 b2 b1 b0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
IC0
IC1
1-19
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
decimal
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
a0
a1
a2
DIRECCIN
CONTENIDO
a 4 a 3 a 2 a 1 a 0 b3 b2 b1 b0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
IC2
IC3
IC0
CS0
DECODIFICADOR
a3
a4
CS0
CS1
CS2
CS3
b0
b1
b2
b3
IC1
CS1
IC2
CS2
IC3
CS3
1.
1-20
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
TARJETA 4k x 8
IC
1K x 4
10
2n = 1024
n = 10
12
2n = 4K
n = 12
densidad de un IC
4K x 8
1K x 1
=8
Para interconectar los circuitos integrados (IC) aplicamos los 2 algoritmos de expansin de memoria.
a.
4
1K x 8
CS
10
10
CS1
10
CS
1.
1-21
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
b.
10
1K x 8
CS0
Tarjeta
DB
AB
1K x 8
CS1
Decodificador
10
12
8
8
10
12
1K x 8
CS2
2a4
4K x 8
1K x 8
CS3
10
Tabla de memoria:
DIRECCIN
A11 A10 A9 A0
0
0
:
1
0
:
1
0
:
1
0
:
1
0
:
1
0
:
1
0
:
1
0
:
1
CONTENIDO
N2
N1
IC1
IC0
IC3
IC2
1C5
IC4
1C7
IC6
1.
1-22
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Pg. 3
Pg. 2
Pg. 1
Pg. 0
10
1K x 8
Selector de pgina
A1
A0
b0
0
1
2
3
:
1023
N1
N0
La hoja es un espacio cuadriculado, los renglones son las direcciones y las columnas
son los bits de las palabras. En cada hoja estn representados 2 circuitos integrados de 1K x
4.
Para tener una segunda solucin, aplicamos el algoritmo de expansin de localidades de memoria:
A0 A9
1K x 4
4
Decodificador
1K x 4
4
A11-A10
4K x 4
4
2a4
12
1K x 4
4
b3 b0
CS
1K x 4
4
1.
1-23
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
12
LSB
4K x 4
4
CS
4K x 8
12
MSB
4K x 4
DB
MEMORIA
TRANCEPTOR
1 UCL
AB
40 UCL
LOCALIDAD
CONTENIDO
LINE DRIVER
n
NOTA: Un line driver por c/u de las lneas del
bus de direccin. Un transceiver por
c/u de las lneas del bus de datos
1.
1-24
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
8
13
DB
m0
RAM
8K x 8
8
DEC
AB
m1
m2
m3
CS
RAM
8K x 8
16
8
m4
m5
3
m6
CS
ROM
8K x 8
8
m7
0
8
16
24
32
40
48
56
64
CS
MEMORIA
DE 64K
0
1K
8K
16K
32K
40K
48K
56K
64K
RAM
VACIO
ROM
Mapa de memoria
FIGURA 1.14. Interconexin P-memoria
16
DB
13
mP
RAM
8K x 16
m0
DEC
AB
13
m1
RAM
8K x 16
m2
20
16
m3
13
16
7
m4
7
RAM
8K x 16
a
m126
13
16
128
m127
1.
1-25
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
0
8
16
24
32
40
RAM
:
1008
1016 ROM
1024
Mdulo de RAM.
Nmero de IC =
16K x 8
2K x 8
=8
11
CS0
14
11
CS1
11
3
CS2
MDULO RAM
11
DEC
TARJETA
CS3
16K x 8
11
n = 14
8
16K x 8
3
14
16K = 2
n = 14
CS4
11
8
CS5
IC
11
2K x 8
CS6
11
n = 11
4K = 24
n = 11
1.
8
CS7
11
1-26
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
2.
Mdulo de ROM.
Nmero de IC =
16K x 8
1K x 8
= 16
CS0
14
10
10
8
IC
CS1
10
1K x 8
10
CS2
10
8
Mdulo de ROM
CS3
10
8
16K x 8
14
CS4
10
DEC
CS5
10
4
CS6
a
4
10
16
CS7
10
CS8
10
CS9
10
CS10
10
CS11
10
CS15
10
1.
1-27
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
3.
DB
14
14
mP
16k RAM
VACIO
14
VACIO
8
CS1
VACIO
DEC
2a4
VACIO
16k ROM
16
2
=4
CS0
AB
64K x 8
16K x 8
MEMORIA
RAM
16K x 8
14
CS2
NOTA: En general cada IC
contiene ms de una lnea de
CS
ROM
16K x 8
CS3
14
Los P 8086/8088: Intel dise los P 8086/ 8088 para realizar al mismo tiempo las principales funciones internas de transferencia de datos y bsqueda de instrucciones. Para lograrlo ambos microprocesadores constan de dos procesadores interconectados en
el mismo IC. Una unidad est encargada de buscar instrucciones y la otra de
ejecutarlas. Adems, la unidad encargada de buscar instrucciones utiliza un mtodo llamado de estructura tubular (pipeline <por cola>) en la cual entran las
instrucciones.
Al procesador principal de se llama unidad de ejecucin, el cual est encargado
de decodificar y ejecutar todas las instrucciones. Esta unidad es idntica en ambos microprocesadores.
A la otra unidad se le llama unidad de interfaz de bus (BIU, por sus siglas en ingls), la cual est encargada de localizar las instrucciones y de transferir todos
los datos entre los registros internos y el mundo exterior.
1.
1-28
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
ROM
CONTROL
MEMORIA
DATOS
CPU
RAM
DIRECCIN
E/S
Cuando el P lee datos desde una fuente que no es la memoria del sistema
Cuando el P escribe datos a un destino que no es la memoria del sistema
1-29
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
MEMORY READ
MEMORY WRITE
BUS DE CONTROL
DEL SISTEMA
CPU
INPUT READ
INPUT WRITE
Direccionamiento de E/S.
Puerto: Es un lugar nico utilizado para leer o escribir datos, no es la memoria del sistema.
De hecho, un puerto es similar a una localidad nica en el sistema de memoria desde
el cual el dato debe ser ledo o escrito durante una operacin de memoria.
A cada puerto en el sistema de E/S se le da una direccin nica, llamada cdigo de seleccin del puerto.
Para generar un cdigo de seleccin del puerto, las lneas de direccin A0
A15 son decodificadas con circuitera lgica para que respondan a una combinacin
especfica.
Bus de Direccin
Lgica de
A15 ---- A0
decodificacin
Lnea de seleccin de
puerto. Responde a una
sola de las 216 posibles
combinaciones
CPU
FIGURA 1.18. Cada puerto de E/S est diseado para responder a una sola combinacin de las
16
2 posibles, del bus de direccin del sistema. Recuerde para E/S, se toman 16
lneas de las 20 que tiene el bus de direccin (AB)
1.
1-30
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
A15 ---- A0
Lgica de
CPU
0250 = 0
decodificacin
La lgica de decodificacin deber generar
un 0 lgico si y solamente si en las lneas de direccionamiento A15 A0 est
presente en la combinacin 0250h
Una distincin puede hacerse entre estos dos sistemas revisando las lneas en
el bus de control del sistema:
-
Durante una operacin de memoria de una de las dos lneas del bus de control memory read o memory
write est activa.
Durante una operacin de E/S una de las dos lneas del bus de control input read o output write est
activa.
ENTRADA/SALIDA
FFFFFH
FFFFH
RESERVADA
FFFFCH
DISPONIBLE
FFFFBH
DEDICADA
FFFFDH
100H
FFFEFH
FFH
RESERVADA
F8H
DISPONIBLE
80H
7FH
F7H
DEDICADA
0H
RESERVADA
14H
13H
DEDICADA
0H
1.
1-31
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Las direcciones 00F8h a 00FFh no debemos utilizarlas ya que Intel las ha reservado para desarrollos de futuros productos. Si las usamos, no podremos utilizarlos posteriormente con los desarrollos de Intel.
Qu es un dispositivo de E/S?
Un dispositivo de E/S puede ser definido como hardware de E/S controlado por
el sistema. Un dispositivo tal puede tener uno o ms puertos de E/S o direcciones de
E/S asociadas.
Ejemplos de tales dispositivos son los circuitos de baja escala de integracin
(LSI, por sus siglas en ingls ), tales como el controlador de discos flexibles o un generador de base de tiempo.
DISPOSITIVO
DE
CPU
A15 A0
E/S
00008H 00010H
FIGURA 1.21. Un dispositivo de E/S debe responder elctricamente a una o ms direcciones de puertos de ENTRADA/SALIDA. En este ejemplo, el dispositivo de E/S responde a las direcciones 00008h a la 00010h inclusive.
Software
Instruccin INPUT
Se utiliza para leer datos desde un puerto de entrada. Su estructura es:
IN acumulador A, puerto
1.
1-32
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
b.
AL, 03h
04h, AL
DX, 03h
AL
MOV
IN
DX, 04h
AL
Donde: 03h es la direccin del puerto de entrada y 04h es la direccin del puerto de salida.
1-33
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
PA7 PA0
GRUPO
CONTROL
A
Al D B del P
D0 D7
PUERTO
C
4 MSB
BUFFER
DEL BUS
DE DATOS
RD
WR
A1
A0
PUERTO
A
LGICA
DE CONTROL
DE
LECT/
ESC
PUERTO
C
4 LSB
GRUPO
CONTROL
B
PC7 PC4
PC3 PC0
PB7 PB0
PUERTO
B
RESET
Hacia perifricos
CS
Note que el grupo C consiste de dos puertos de 4 bits. Uno de los grupos de 4 bits es
asociado con el grupo de control A y el otro con el grupo de control B.
Los bloques finales del diagrama a bloques son:
-
1.
1-34
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
8088
8255
LGICA
DE
DECODIFICACIN
A7 A0
AB
PUERTO A
CS
A1, A2
PUERTO B
D7D0
PUERTO C
BUS DE DATOS
DB
BUS DE CONTROL
I/O READ
I/O WRITE
11H
12H
13H
DEFINICIN
Puerto A como SALIDA
Puerto A como ENTRADA
Puerto B como SALIDA
Puerto B como ENTRADA
Puerto C como SALIDA
Puerto C como ENTRADA
Palabra de control para definir
la funcin de los puertos anteriores
D6
D5
D4
D3
D2
D1
D0
Puerto C (4 LSB)
1 = INPUT
0 = OUTPUT
Puerto B
1 = INPUT
0 = OUTPUT
Seleccin de Modo
1 = MODO 0
2 = MODO 1
GRUPO A
PUERTO C (4 MSB)
1 = INPUT, 0 = OUTPUT
PUERTO A
1 = INPUT, 0 = OUTPUT
Seleccin de Modo
00=MODO 0, 01=MODO 1, 1X=MODO 2
Bandera de modo ACTIVO
1.
1=ACTIVO
1-35
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
Esta figura muestra las definiciones de bits del registro de control. La utilizaremos para
escribir nuestros programas.
Dispositivo de E/S serial (Receptor/Transmisor, Sincrnico/Asincrnico Universal 8251A,
USART, por sus siglas en ingls)
En el modo de TRANSMISIN, serializa el dato paralelo del P insertando en forma automtica bits de inicio, parada y paridad (en el modo asincrnico), o caracteres de sincrona (en el modo sincrnico)
En el modo RECEPTOR convierte el dato serie a paralelo y verifica errores de paridad,
encuadre (frame errors) y sobreescritura de datos (overrun)
Este circuito integrado (IC) tiene un bus de datos bidireccional, el cual permite
al P programar su funcionamiento va uno de tres bytes de control.
La Figura 1, muestra un diagrama a bloques y descripcin de patas del USART.
Ntese que el IC cuenta con un transmisor y un receptor separados, cada uno con
sus propias entradas de reloj (RX D y TX D)
Las seales de estatus RX RDY y TX RDY indican que los buffers de datos del
receptor y transmisor estn listos para leerse o escribirse, respectivamente.
1.
1-36
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
1.
1-37
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
1-38
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
C / D RD
0
0
1
1
0
1
0
1
WR
Direccin del
puerto
FUNCIN
1
0
1
0
70h
70h
71h
71h
La Figura 2 tambin muestra las cuatro seales de control del MODEM : DSR ,
DTR , RTS y CTS . Con excepcin de CTS , estas seales son de propsito general y no
afectan la operacin del circuito; sin embargo, CTS debe ser igual a 0 si el transmisor
interno va a ser habilitado.
Se requiere la entrada de reloj CLK para sincronizacin interna, debe tener una
frecuencia de al menos 30 veces la frecuencia del transmisor o receptor en el modo
sincrnico y al menos 4.5 veces la frecuencia del transmisor o receptor en el modo
asincrnico.
NOTA DE APLICACIN: En la mayora de los casos, los niveles lgicos TTL en las lneas de entrada o
salida serie deben trasladarse a especificaciones RS-232C (EIA Electronic
Industries Associates) Esto es, -12V para el nivel lgico 1 y +12V para el nivel lgico 0.
Despus de trasladar los niveles TTL del USART a niveles RS-232C, el dato
serial puede ser transmitido a miles de pies.
Programacin del 8251A para modo asincrnico.
Desactivar el circuito integrado (externamente o a travs del byte de control interno) Externamente a travs de la pata RESET.
Escribir la instruccin de modo en el puerto de control.
Escribir la instruccin de comando en el puerto de control.
1.
1-39
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
SOLUCIN
MOV
OUT
1.
AL, 01000000B
71h, AL
;comando RESET
;puerto de control
1-40
COMPUTACIN V
MICROPROCESADORES Y MICROCOMPUTADORAS
MOV
AL, 11011010B
OUT
71h, AL
MOV
AL, 00110111B
OUT
IN
71h, AL
AL, 70h
;instruccin de modo:
;7 datos, 2 bits de parada,
;paridad impar, 16x
;puerto de control
;instruccin comando:
; RTS y DTR o error RESET habilitado
;puerto comando
;lectura ficticia para
;borrar el receptor
NOTA: La habilitacin del receptor (bit 2 de la instruccin comando) solamente inhibe la bandera
RXRDY, no al receptor. As, es posible para el receptor haber capturado un carcter antes o durante la rutina de iniciacin. La lectura ficticia asegura que el receptor retenga
un registro en blanco.
TAREA
a.
b.
1.
Investigue los pasos necesarios para programar el 8251A para el modo sincrnico.
Muestre varios ejemplos.
Muestre el cdigo necesario para el control de:
o Una impresora
o Un MODEM . Aydese de las rutinas del BIOS de DOS.
1-41