EJERCICIOS
MICROPROCESADORES.
Espinoza Balderas Karim Emanuel
6CV4
Ejercicio 2: Diseñar un sistema mínimo con un decodificador de direcciones que
permita controlar los siguientes dispositivos:
1 memorias EEPROM2864, y 7 memorias SRAM6264, 2 puertos de entrada y 1
puerto de salida. Todos interconectados con un microprocesador de 8 bits de
datos y 16 líneas de direcciones.
28C64… ...................... 64/8= 8, es decir 8K = 213
Para 2K tenemos 13 líneas de dirección, es decir A0 – A12...................................... 0000 – 1FFF
Dirección en binario 8 4 2 Dirección Dispositivo
1 Hexadecim
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 al
20
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 2864
0 0 0 0 /A15/A14/A13
0 0 0 1 1 1 1 1 1 1 1 1 1FFF
1 1 1 1
0 0 1 0 0 0 0 0 0 0 0 0 2000 6264 (1)
0 0 0 0 3FFF /A15/A14 A13
0 0 1 1 1 1 1 1 1 1 1 1
1 1 1 1
0 1 0 0 0 0 0 0 0 0 0 0 4000 6264 (2)
0 0 0 0 5FFF /A15 A14/A13
0 1 0 1 1 1 1 1 1 1 1 1
1 1 1 1
0 1 1 0 0 0 0 0 0 0 0 0 6000 6264 (3)
0 0 0 0 7FFF /A15 A14 A13
0 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1
1 0 0 0 0 0 0 0 0 0 0 0 8000 6264 (4)
0 0 0 0 9FFF A15/A14/A13
1 0 0 1 1 1 1 1 1 1 1 1
1 1 1 1
1 0 1 0 0 0 0 0 0 1 1 0 A000 6264 (5)
0 0 0 1 BFFF A15/A14 A13
1 0 1 1 1 1 1 1 1 1 1 1
1 1 1 1
1 1 0 1 0 0 0 0 0 0 0 0 C000 6264 (6)
0 0 0 0 DFFF A15 A14/A13
1 1 0 1 1 1 1 1 1 1 1 1
1 1 1 1
1 1 1 0 0 0 0 0 0 0 0 0 E000 6264 (7)
0 0 0 0 FFFF A15 A14 A13
1 1 1 0 1 1 1 1 1 1 1 1
1 1 1 1
Variables de selección A15 A14 A13
Se construye la tabla de verdad del decodificador de memorias donde las
variables de entrada serán las variables de selección y se usara una salida para
cada uno de los dispositivos.
Como se puede observar el número de dispositivos es de 8, por lo que
necesitaremos un decodificador de 3 entradas 8 salidas
Entradas Entradas SALIDAS Dispositiv
Activación Selectoras o
G1 G2 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
A15 A14 A13
1 0 0 0 0 0 1 1 1 1 1 1 1 2864
1 0 0 0 1 1 0 1 1 1 1 1 1 6264 (1)
1 0 0 1 0 1 1 0 1 1 1 1 1 6264 (2)
1 0 0 1 1 1 1 1 0 1 1 1 1 6264 (3)
1 0 1 0 0 1 1 1 1 0 1 1 1 6264 (4)
1 0 1 0 1 1 1 1 1 1 0 1 1 6264 (5)
1 0 1 1 0 1 1 1 1 1 1 0 1 6264 (6)
1 0 1 1 1 1 1 1 1 1 1 1 0 6264 (7)
Las líneas del bus de direcciones A15, A14, A13 se conectarán a las entradas y cada
una de las salidas se conectarán a los Chip Select (CS) de cada uno de los
circuitos integrados.
Ejercicio 3: Diseñar un sistema mínimo con un decodificador de direcciones que
permita controlar los siguientes dispositivos: Dos memorias EEPROM2716, una
memoria SRAM6264, dos puertos de entrada, 2 puertos de salida y. Todos
interconectados con un microprocesador de 8 bits de datos y 16 líneas de
direcciones. Las direcciones a partir de las cuales se debe seleccionar cada
circuito son respectivamente: 0000H, 8000H…
Determinar la memoria direccionable por el microprocesador (espacio de
memoria del micro) y definir el rango de memoria del sistema.
El procesador de 16 líneas de direcciones desde A0 – A15, controla:
2o. Paso:
Para las memorias EEPROM2716
27C16…....................... 16/8=2, es decir 2K = 211
Para 2K tenemos 11 líneas de dirección, es decir A0 – A10 ................................... 000 –
7FF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 27C16
0 0 0 0
0 0 0 0 1 1 1 1 1 1 1 1 07FF
0 1 1 1
Para la memoria SRAM6264
62C64…....................... 64/8=8, es decir 8K = 213
Para 8K tenemos 13 líneas de dirección, es decir A0 – A12 ............................. 0000 –
1FFF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 62C64
0 0 0 0
0 0 0 1 1 1 1 1 1 1 1 1 1 1FFF
1 1 1
Dirección en binario 8 4 2 Dirección Dispositivo
1 Hexadecim
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 2716 (1)
0 0 0 0 /A15/A14/A13 /A12/A11
0 0 0 0 1 1 1 1 1 1 1 1 07FF
0 1 1 1
0 0 0 1 0 0 0 0 0 0 0 0 0800 2716 (2)
0 0 0 0 /A15/A14/A13 /A12 A11
0FFF
0 0 0 1 1 1 1 1 1 1 1 1
0 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 1000 Sin
1 0 0 0 17FF Dispositivo
0 0 0 0 1 1 1 1 1 1 1 1
1 1 1 1
0 0 0 1 0 0 0 0 0 0 0 0 1800 Sin
1 0 0 0 1FFF Dispositivo
0 0 0 1 1 1 1 1 1 1 1 1
1 1 1 1
0 0 1 0 0 0 0 0 0 0 0 0 2000 6264 (3)
0 0 0 0 3FFF /A15/A14 A13
0 0 1 1 1 1 1 1 1 1 1 1
1 1 1 1
0 1 0 0 0 0 0 0 0 1 1 0 4000 Sin
0 0 0 1 5FFF Dispositivo
0 1 0 1 1 1 1 1 1 1 1 1
1 1 1 1
0 1 1 0 0 0 0 0 0 0 0 0 6000 Sin
0 0 0 0 7FFF Dispositivo
0 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1
1 0 0 0 0 0 0 0 0 0 0 0 8000 Puerto A (4)
0 0 0 0 8004 Puerto B
1 0 0 0 0 0 0 0 0 0 1 0 8008 Puerto C
0 0 0 0 800C A15/A14/A13
1 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0
1 0 0 0 0 0 0 0 0 1 1 0
0 0 0 0
1 0 0 0 0 0 0 0 0 1 1 0 800D Sin
0 0 0 1 FFFF Dispositivo
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1
Entradas - Selectoras Dispositivos
G – A14 B – A15 A – A13 Y0 Y1 Y2 Y3
0 0 0 0 1 1 1 2716 (1) y (2)
0 0 1 1 0 1 1 6264 (3)
0 1 0 1 1 0 1 Puertos (4)
0 1 1 1 1 1 0
Las variables de selección: A15 A13
Habilitador (G): A14
Se construye la tabla de verdad del decodificador de memorias donde las
variables de entrada serán las variables de selección y se usara una salida para
cada uno de los dispositivos. Como se puede observar el número de dispositivos
es de 4, por lo que necesitaremos un decodificador de 2 entradas 4 salidas.
Las líneas del bus de direcciones A15, A13 se conectarán a las entradas y cada una
de las salidas se conectarán a los Chip Select (CS) de cada uno de los circuitos
integrados.
Ejercicio 4: Diseñar un sistema mínimo con un decodificador de direcciones que
permita controlar los siguientes dispositivos: Una memoria EEPROM27128 o
28128, dos memorias SRAM6264, dos puertos de entrada, 1 puerto de salida y.
Todos interconectados con un microprocesador de 8 bits de datos y 16 líneas de
direcciones.
Solución:
1er. Paso: Determinar la memoria direccionable por el microprocesador
(espacio de memoria del micro) y definir el rango de memoria del sistema.
El procesador de 16 líneas de direcciones desde A0 – A15, controla:
2o. Paso:
Para la memoria EEPROM28128
28C128… ...................... 128/8=16, es decir 16K = 214
Para 2K tenemos 14 líneas de dirección, es decir A0 – A13 ............................. 0000 –
3FFF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 28C128
0 0 0 0
0 0 1 1 1 1 1 1 1 1 1 1 3FFF
1 1 1 1
Para la memoria SRAM6264
62C64…....................... 64/8=8, es decir 8K = 213
Para 8K tenemos 13 líneas de dirección, es decir A0 – A12 ............................. 0000 –
1FFF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 62C64
0 0 0 0
0 0 0 1 1 1 1 1 1 1 1 1 1FFF
1 1 1 1
Dirección en binario 8 4 2 1 Dirección Dispositivo
2 2 2 2 ….2 2 2 2 ….2 2 2 2 ....2 2 2 2
3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0
Hexadecimal
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 00 0 0 0 0 0 0 00 0000 28128 (1)
0 0 1 1 1 1 11 1 1 1 1 1 1 11 3FFF /A15/A14
0 1 0 0 0 0 00 0 0 0 0 0 0 00 4000 6264 (2)
0 1 0 1 1 1 11 1 1 1 1 1 1 11 5FFF /A15 A14/A13
0 1 1 0 0 0 00 0 0 0 0 0 0 00 6000 6264 (3)
0 1 1 1 1 1 11 1 1 1 1 1 1 11 7FFF /A15 A14 A13
1 0 0 0 0 0 00 0 0 0 0 0 0 00 8000 Puerto A (4)
1 0 0 0 0 0 00 0 0 0 0 0 0 01 8001 Puerto B
1 0 0 0 0 0 00 0 0 0 0 0 0 10 8002 Puerto C
1 0 0 0 0 0 00 0 0 0 0 0 0 11 8003 Rcontrol
A15/A14
1 0 0 0 0 0 00 0 0 0 0 0 1 00 8004 Sin dispositivo
1 1 1 1 1 1 11 1 1 1 1 1 1 11 FFFF
Las variables de selección A14, A15 son mis entradas selectoras.
Entradas - Selectoras Dispositivos
G– B – A15 A – A14 Y0 Y1 Y2 Y3
0 0 0 0 1 1 1 28128 (1)
0 0 1 1 0 1 1 6464 (2 y 3)
0 1 0 1 1 0 1 Puertos (4)
0 1 1 1 1 1 0
Se construye la tabla de verdad del decodificador de memorias donde las
variables de entrada serán las variables de selección y se usara una salida para
cada uno de los dispositivos.
Como se puede observar el número de dispositivos es de 4, por lo que
necesitaremos un decodificador de 2 entradas 4 salidas.
Las líneas del bus de direcciones A14, A15 se conectarán a las entradas y cada una
de las salidas se conectará a los Chip Select (CS) de cada uno de los circuitos
integrados.
Ejercicio 5: Diseñar un sistema mínimo con un decodificador de direcciones que
permita controlar los siguientes dispositivos:
EEPROM2732 0000H SRAM6264 8000H
EEPROM2732 2000H SRAM6264 A000H
EEPROM2732 4000H Puertos
EEPROM2732 6000H
1er. Paso: Determinar la memoria direccionable por el microprocesador
(espacio de memoria del micro) y definir el rango de memoria del sistema.
El procesador de 16 líneas de direcciones desde A0 – A15, controla:
2o. Paso:
Para las memorias EEPROM2732
27C32…....................... 32/8=4, es decir 4K = 212
Para 2K tenemos 12 líneas de dirección, es decir A0 – A11 ................................... 000 –
FFF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 27C16
0 0 0 0
0 0 0 1 1 1 1 1 1 1 1 1 0FFF
0 1 1 1
Para la memoria SRAM6264
62C64…....................... 64/8=8, es decir 8K = 213
Para 8K tenemos 13 líneas de dirección, es decir A0 – A12 ............................. 0000 –
1FFF
Dirección en binario 8 4 2 Dirección Dispositiv
1 Hexadecim o
23 22 21 20….23 22 21 20….23 22 21 20 ....23 22 21 20 al
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0000 62C64
0 0 0 0
0 0 0 1 1 1 1 1 1 1 1 1 1 1FFF
1 1 1
Dirección en binario 8 4 2 1 Dirección Dispositivo
2 2 2 2 ….2 2 2 2 ….2 2 2 2 ....2 2 2 2
3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0
Hexadecimal
A15A14A13A12 A11A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0 0 0 0 0 0 0 0000 2732 (1)
0 0 0 /A15/A14/A13/A12
0 0 0 1 1 1 1 1 1 1 1 1 1 0FFF
0 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 1000 Sin dispositivo
1 0 0 1FFF
0 0 0 1 1 1 1 1 1 1 1 1 1
1 1 1
0 0 1 0 0 0 0 0 0 0 0 0 0 2000 2732 (2)
0 0 1 1 1 0 1 1 1 1 2FFF /A15/A14 A13/A12
0 0 1 1 1 1 1
0 1
0 0 1 0 0 0 0 0 0 0 0 0 0 3000 Sin dispositivo
1 0 0 1 1 1 1 3FFF
0 0 1 1 1 1 1 1 1
1 1 1
0 1 0 0 0 0 0 0 0 0 0 0 0 4000 2732 (3)
0 0 1 1 1 0 1 1 1 1 4FFF /A15 A14/A13/A12
0 1 0 1 1 1 1
0 1
0 1 0 0 0 0 0 0 0 0 0 0 0 5000 Sin dispositivo
1 0 1 1 1 0 1 1 1 1 5FFF
0 1 0 1 1 1 1
1 1
0 1 1 0 0 0 0 0 0 0 0 0 0 6000 2732 (4)
0 0 1 1 1 0 1 1 1 1 6FFF /A15 A14 A13/A12
0 1 1 1 1 1 1
0 1
0 1 1 0 0 0 0 0 0 0 0 0 0 7000 Sin dispositivo
1 0 1 1 1 0 1 1 1 1 7FFF
0 1 1 1 1 1 1
1 1
1 0 0 0 0 0 0 0 0 0 0 0 0 8000 6264 (5)
0 0 1 1 1 0 1 1 1 1 9FFF A15/A14/A13
1 0 0 1 1 1 1
1 1
1 0 1 0 0 0 0 0 0 0 0 0 0 A000 6264 (6)
0 0 1 1 1 0 1 1 1 1 BFFF A15/A14 A13
1 0 1 1 1 1 1
1 1
1 1 0 0 0 0 0 0 0 0 0 0 0 C000 Puerto A (7)
0 0 0 0 0 0 0 0 1 0 C002 Puerto B
1 1 0 0 0 0 0 0 1 0 0 C004 Puerto C
0 0 0 0 0 0 1 1 0 C006 Rcontrol
1 1 0 0 0 0 0 A15 A14/A13
0 0 0 0 0
1 1 0 0 0 0 0
0 0
1 1 0 0 0 0 0 0 0 0 1 1 1 C007 Sin dispositivo
0 0 1 1 1 0 1 1 1 1 FFFF
1 1 1 1 1 1 1
1 1
La línea roja de referencia se rige por la memoria de mayor tamaño.
Las variables de selección A15 A14 A13
Se construye la tabla de verdad del decodificador de memorias donde las
variables de entrada serán las variables de selección y se usara una salida para
cada uno de los dispositivos.
Como se puede observar el número de dispositivos es de 7, por lo que
necesitaremos un decodificador de 3 entradas, 8 salidas.
Entradas-
Entradas -
Activació Salidas Dispositivo
Selectoras
n
C- B- A-
G1 G2 A15 A14 A13 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
1 0 0 0 0 0 1 1 1 1 1 1 1 2732 (1)
1 0 0 0 1 1 0 1 1 1 1 1 1 2732 (2)
1 0 0 1 0 1 1 0 1 1 1 1 1 2732 (3)
1 0 0 1 1 1 1 1 0 1 1 1 1 2732 (4)
1 0 1 0 0 1 1 1 1 0 1 1 1 6264 (5)
1 0 1 0 1 1 1 1 1 1 0 1 1 6264 (6)
1 0 1 1 0 1 1 1 1 1 1 0 1 Puertos (7)
1 0 1 1 1 1 1 1 1 1 1 1 0
Las líneas del bus de direcciones A15, A14, A13 se conectarán a las entradas y cada
una de las salidas se conectarán a los Chip Select (CS) de cada los circuitos
integrados.