GUÍA DE ETS PARA COMPUTACIÓN V AMBOS TURNOS SUPERVISORES: ING. JOSÉ LUÍS BRAVO LEÓN e ING. LUÍS URIETA PÉREZ PROBLEMAS RESUELTOS

COMPUTACIÓN V – GUÍA ETS GUÍA DE ETS PARA COMPUTACIÓN V AMBOS TURNOS SUPERVISORES: ING. JOSÉ LUÍS BRAVO LEÓN e ING. LUÍS URIETA PÉREZ PROBLEMAS RESU

1 downloads 85 Views 201KB Size

Recommend Stories


INGENIERIA DE COSTOS PROBLEMAS RESUELTOS POR EL ING. MIGUEL ANGEL CARLOS CANALES
INGENIERIA DE COSTOS PROBLEMAS RESUELTOS POR EL ING. MIGUEL ANGEL CARLOS CANALES PROB: (PAG. 51) 2.18 Costos Variables y Costos Fijos. Consolidated

Autor: Ing. Néstor J. Aguilera C. V
REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD JOSÉ ANTONIO PÁEZ VICE-RECTORADO ACADÉMICO DIRECCIÓN GENERAL DE POSTGRADO ESPECIALIZACIÓN EN GESTIÓN AD

Ing. Oswaldo Navarrete E. ============================================================== CULTIVO DE LANGOSTINOS
Ing. Oswaldo Navarrete E. ============================================================== CULTIVO DE LANGOSTINOS 1 CONTENIDO 1. 2. 3. 4. 5. 6. 7.

Story Transcript

COMPUTACIÓN V – GUÍA ETS

GUÍA DE ETS PARA COMPUTACIÓN V AMBOS TURNOS SUPERVISORES: ING. JOSÉ LUÍS BRAVO LEÓN e ING. LUÍS URIETA PÉREZ

PROBLEMAS RESUELTOS 1)

Obtenga dos tarjetas de memoria, una de RAM y otra de PROM para interconectar a un microprocesador, para las siguientes condiciones: a) b)

Con circuitos integrados (CI) RAM de 16Kx4 obtener un módulo de 128Kx8. Con circuitos integrados PROM de 8Kx8 obtener una tarjeta de 128Kx8.

SOLUCIÓN a)

A continuación se presenta en bloques el circuito integrado disponible y el módulo a realizar: 14

4

17

16Kx4

8

128Kx8

Circuito Integrado

Tarjeta

Para determinar el número de circuitos integrados que requiere la tarjeta se usa la expresión:

# de IC =

DT DIC

=

128Kx8 16Kx4

= 16

Donde: DT = densidad de memoria de la tarjeta expresada en bits DIC = densidad de memoria del circuito integrado expresada en bits. •

Aplicando el algoritmo de expansión de la longitud de la palabra, se aumenta el número de bits de la palabra, en la forma:

128

= 8 , obteniéndose el arreglo:

16 14

4 LSB 14

16Kx4

8

16Kx8 4 MSB MÓDULO 1

16Kx4



Para expandir el número de localidades de memoria, se aplica el algoritmo de expansión del número de localidades:

# de módulos =

DT DM

=

128Kx8 16Kx8

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

=8

CV-1

COMPUTACIÓN V – GUÍA ETS

Donde: DM = densidad del módulo obtenido en la expansión de la longitud de la palabra. De lo anterior se obtiene el arreglo final 17

14

8

8

8

CS0 14

8

CS1 14

8

DECODIFICADOR 3x8

CS2

3

14 8

CS3 14

8

CS4 14

8

CS5 14

8

CS6 14

CS7

b)

El siguiente diagrama a bloque establece el enunciado del problema:

13

4

12Kx8

8

17

128Kx8

Circuito Integrado

Tarjeta

Para calcular el número de circuitos integrados de la tarjeta, se usa la expresión:

# de IC =

DT DIC

=

128Kx8 16Kx4

= 16

Debido a que la longitud de la palabra es compatible en la tarjeta y el circuito integrado, no se requiere el algoritmo de expansión de la palabra, obteniéndose el diagrama final siguiente:

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-2

COMPUTACIÓN V – GUÍA ETS

17

13

8

8

8Kx8 8

SC0 13

8Kx8

4

DECODIFICADOR 4x16

SC1

8

8Kx8

13

8

SC14 8Kx8

13

SC15 VALOR: 2.5 puntos

2.

Para el adaptador de periféricos en paralelo (8255): a) b) c)

Describa cómo realiza la función de entrada/salida el adaptador: Obtenga el diagrama lógico para formar una tarjeta de entrada/salida con 30 puertos paralelos. ¿Cómo programaría la tarjeta para que los primeros 15 puertos funcionen como entradas y los 15 restantes como salidas?

SOLUCIÓN a)

La función de entrada/salida se realiza programando en el registro de control como funcionarán los puertos A, B y C. Después, para leer la información de entrada se utiliza la función IN y para escribir en los puertos de salida se utiliza la instrucción OUT.

b)

Los diagramas a bloques del 8255 y la tarjeta son:

DB

P0

30 puertos

P P P

AB

Registro de con-

8255

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

P1

P29

Tarjeta

CV-3

COMPUTACIÓN V – GUÍA ETS

Se determina el número de integrados que requiere la tarjeta, con la siguiente expresión:

# de 8255 =

DT DIC

=

30 3

= 10

Donde: DT = densidad de puertos de la tarjeta DIC = densidad de puertos del circuito integrado Si se requieren 10 integrados 8255, entonces se necesitan 40 direcciones de entrada/salida, 3 para cada puerto, y una para el registro de control de cada circuito integrado. El número de líneas de está da por la expresión: 2 n = 40 ∴ n = 6 Con estos datos se obtiene el siguiente diagrama lógico: a0 IC0

a1 CS0

a2

entradas

a3 IC4

a4 CS4

DECODIFICADOR 4x16

a5

IC5 CS5

salidas

IC9 CS9 CS10

Posible expansión

CS15

Los registros de control, están ubicados en: Entradas: Salidas:

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

3, 7, B, F, 13 17, 1B, 1F, 23, 27

CV-4

COMPUTACIÓN V – GUÍA ETS

Mapa de entrada / salida:

a5 a4 a3 a 2 a1 a0 0 0 0 0 0 0 0 0 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 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 0 0 0 0 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 0 0 0 0 0 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 0 0 0 0 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 0 0 0

0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1

0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

←3

←7

ENTRADAS ←B

←F

← 13

← 17

← 1B

SALIDAS ← 1F

← 23

← 27

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-5

COMPUTACIÓN V – GUÍA ETS

a5 a4 a3 a 2 a1 a0 1 1 1 1 1 1 1 1 1

c)

1 1 1 1 1 1 1 1 1

0 1 1 1 1 1 1 1 1

1 0 0 0 0 1 1 1 1

1 0 0 1 1 0 0 1 1

1 0 1 0 1 0 1 0 1

La programación para los registros de control para entradas y salidas PTO: A

PTO: C

PTO. B

4 MSB

Entradas Salidas

D7 1 1 1

D6 0 0 0

D5 0 0 0

D4

D3

1 0

1 0

PTO. C 4 LSB

D2 0 0 0

D1

D0

1 0

1 0

Registros de control = 8BH = 80H

1 = INPUT = ENTRADA 0 = OUTPUT = SALIDA

Programación de la tarjeta:

;Programación de los 15 primeros puertos como entrada y los 15 ;restantes como salida ;entradas: Patrón = 9BH MOV OUT OUT OUT OUT

AL,9BH [3],AL [7],AL [0BH],AL [0FH,AL

;Salidas: Patrón = 80H MOV OUT OUT OUT OUT

3.

AL,80H [17H],AL [1BH],AL [23H],AL [27H].AL

Conecte las dos tarjetas de memoria al micro procesador 8088, la RAM en las primeras y la PROM en las últimas localidades del espacio de direccionamiento y la tarjeta de puertos en las primeras direcciones de entrada / salida del micro procesador.

SOLUCIÓN Se determina el número de tarjetas que pueden conectarse al espacio de direccionamiento del micro procesador, con ayuda del siguiente diagrama a bloques:

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-6

MICRO PROCESADOR

COMPUTACIÓN V – GUÍA ETS

tarjetas

DT = 128Kx8

DµP = 1Mx8

Sustituyendo en la expresión:

# de tarjetas =

D µP DT

=

2 20 * 8 2

17

*8

= 23 = 8

La solución se obtiene asignando la línea CS0 a la habilitación de la tarjeta RAM (primeras localidades de memoria) y la línea CS7 a la habilitación de la PROM (últimas localidades de memoria). El logigrama es: 17

DB

8

DB

RAM AB

3

DECODIFICADOR 3x8

CS0

8

PROM 17

CS7

¿????????????? 8 8

DB

ENTRADA/SALIDA AB 6

I/O

4.

En las localidades de entrada / salida 0, 1, 2 y 3 se tiene conectado un circuito integrado 8255.

a)

Programar el puerto A como entrada y los puertos B y C como salida.

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-7

COMPUTACIÓN V – GUÍA ETS

b)

c)

En el puerto B existen un par de exhibidores (display) numéricos de bajo costo ya preparados para desplegar datos BCD en el rango de 00 a 99. Capture 100 datos por el puerto de entrada, obtenga el valor promedio y despliéguelo en el puerto B. En el puerto C se tienen 8 leds (diodos emisores de luz) para indicar la salida. Haga un segmento de programa que cada segundo o cada tiempo x cambie el encendido y apagado de los leds de la siguiente forma: 0 0 0 0 0 0 1

0 0 0 0 0 1 0

0 0 0 0 0 0 0

0 0 0 0 1 0 0

0 0 0 1 0 0 0

0 0 1 0 0 0 0

0 1 0 0 0 0 0

1 0 0 0 0 0 0

SOLUCIÓN a) 4 MSB C B7 1

B6 0

B5 0

B4 1

Puerto A MOV OUT

AL,90H [PTOCONT],AL

b)

B3 0

B2 0

4 LSB C B1 0

B0

Puerto B

;hardware

En el siguiente diagrama de flujo, el puerto de salida B se designa por PBOUT:

100Dat.as

CX ← 100d AL ← 0 BX ← 0

FI

AL ← PAIN

PBOUT ←

BX ←

MOV AL BL

CX ← CX-1

BX ← BX-

CX = 0

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-8

COMPUTACIÓN V – GUÍA ETS

c)

5.

En el siguiente diagrama de flujo el puerto C se designa por PCOUT.

Se tienen dos tarjetas una de RAM y otra de PROM de 64Kx8 cada una y una tarjeta de entrada / salida de 1K puertos. Interconéctelas a un micro procesador 8088 de la siguiente forma: La tarjeta de RAM en las primeras localidades del espacio de direccionamiento y la de PROM en las últimas, la tarjeta de entrada / salida conéctela a partir de la localidad 0 de entrada / salida.

SOLUCIÓN El número de tarjetas de 64Kx8 que pueden conectarse al espacio de direccionamiento del micro procesador está dado por: No. de tarjetas =

D µP DT

=

2

20 16

x8

2 x8

= 16 tarjetas

Las primeras 16 líneas de direccionamiento se conectan al bus de dirección del micro procesador, las 8 líneas de datos al bus de datos del micro procesador y las 4 líneas mas significativas del bus de dirección se conectan a un decodificador 4 a 16. Las 16 salidas del decodificador controlan a 16 tarjetas de memoria, por lo que para ubicar al módulo de RAM en las primeras 64K localidades se conectan la línea m de habilitación CS0 a la línea de habilitación de la tarjeta de memoria. Para ubicar el módulo de PROM en las últimas localidades del espacio de direccionamiento del micro procesador se conectan la CS15 del decodificador a la entrada de habilitación de la tarjeta PROM Para conectar la tarjeta de 1K puertos de entrada / salida, se conectan sus líneas de dirección a las primeras 11 líneas de dirección del micro procesador y las 8 líneas de datos se conectan a las 8 líneas del bus de datos del micro procesador, como se muestra en el diagrama

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-9

COMPUTACIÓN V – GUÍA ETS

8 MICRO PROCESADOR 20

16 8 RAM 16 8

4

DECODIFICADOR 4 a 16

PROM CS0

CS0

8 10

I/O LSB

6.

Decodifique la dirección de los puertos de entrada y salida y ubíquelos dentro del mapa de puertos U? 33 22 19 21 18

MN READY CLK RESET INTR

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO

30 31 17 23

DEN DT/R IO/M HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

2 5 6 9 12 15 16 19

OC G 74LS373

34

1 11 1 2

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7

3 4 7 8 13 14 17 18

OC G 74LS373

5 1 2 3

4

G0

3 4

26 27 28

3 4 7 8 13 14 17 18

32 29 25 24

8088MIN 1 2 5 3 4

G1

1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

OC G 74LS373

SOLUCIÓN Las funciones de habilitación de puertos quedan determinadas por: PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-10

COMPUTACIÓN V – GUÍA ETS

G0 = ( A1 A2 A3)(A4 A5) M / IO

para el puerto 0

G1 = (A1 A2 A5) M / IO

para el puerto 1

Puesto que la señal de control M / IO se habilita en estado alto para la selección de puertos, las funciones se reducen a: G0 = ( A1 A2 A3)(A4 A5)

para el puerto 0

G1 = (A1 A2 A5)

para el puerto 1

El mapa de puertos resultante:

PTO 0 PTO 1

A7

A6

A5

A4

A3

A2

A1

A0

x x

x x

1 1

1 x

0 x

0 1

0 1

x x

Donde las x representan cualquier valor 0 o 1. Si consideramos que x = 0, las direcciones par PTO 0 y PTO 1 serian:

PTO 0 PTO 1

7.

A7

A6

A5

A4

A3

A2

A1

A0

0 0

0 0

1 1

1 0

0 0

0 1

0 1

0 0

30H 26H

Asigne las líneas de dirección adecuadas para que el decodificador, que se muestra a continuación, seleccione los puertos de E/S en las direcciones C0H, D0H, E0H y F0H para los puertos pto 0, pto 1, pto 2 y pto 3, respectivamente. Utilice la línea de control M / IO correctamente. U? 33

MN

22 19 READY 21 CLK RESET 18

INTR

U? AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO

30 31 HLDA 17 HOLD 23 NMI TEST

DEN DT/R IO/M

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

1 11 OC G 74LS373 U?A 2 3 A B 1

34 26 27 28

32 RD 29 WR 25 ALE 24 INTA

G

4 Y0 5 Y1 6 Y2 7 Y3

74LS139 U?A 1 3 2 74LS00

8088MIN

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-11

PTO PTO PTO PTO

0 1 2 3

COMPUTACIÓN V – GUÍA ETS

SOLUCIÓN Tabla de verdad del circuito integrado 74139: B

A

Y0

Y1

Y2

Y3

0 0 1 1

0 1 0 1

0 1 1 1

1 0 1 1

1 1 0 1

1 1 1 0

A7

A6

A5

A4

A3

A2

A1

A0

1 1 1 1

1 1 1 1

0 0 1 1

0 1 0 1

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

Mapa de puertos:

PTO 0 PTO 1 PTO 2 PTO 3

C0H D0H E0H F0H

Puesto que las variables A7, A6, A3, A2, A1 y A0 tienen los mismos valores para las funciones PTO 0, PTO 1, PTO 2 y PTO 3, éstas no dependen de dichas variables, por lo que las funciones quedan: PTO 0 = A5 A4 PTO 1 = A5 A4 PTO 2 = A5 A4 PTO 3 = A5 A4

Las combinaciones anteriores corresponden a la tabla de verdad del circuito integrado 74139, por lo que las entradas A y B deben ir conectadas a las variables A4 y A5, respectivamente. La compuerta NAND (NO Y) requiere dos entradas en estado alto, la señal de control M / IO se activa en alto para direccionamiento de memoria, ésta junto con cualquier línea de dirección que tenga un valor de uno satisfacen la condición de habilitación de memoria, tal es el caso de las variables A6 y A7. El circuito resultante queda: U? 33 22 19 21 18

MN READY CLK RESET INTR

U? AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO

30 31 17 23

DEN DT/R IO/M HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

A4 A5 A6

OC G 74LS373 U?A 2 3 1

34 26 27 28

A B G

Y0 Y1 Y2 Y3

4 5 6 7

PTO PTO PTO PTO

0 1 2 3

74LS139 U?A 1 3 2

32 29 25 24

74LS00

8088MIN

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-12

COMPUTACIÓN V – GUÍA ETS

8.

Utilizando únicamente las 16 líneas menos significativas del canal de direcciones, elabore el mapa de memoria y conecte apropiadamente los circuitos mostrados para formar un banco de 1KB de memoria RAM que se direccione a partir de la localidad 8000H. Conecte las señales de control ALE, DEN, DT/R , RD, WR U? 33 22 19 21 18

U?

MN

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6

READY CLK RESET INTR

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

5 6 7 4 3 2 1 17 16 15

OC G

8 10

74LS373

2 3 4 5 6 7 8 9

26 27 28 32 29 25 24

RD WR ALE INTA

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

D0 D1 D2 D3

14 13 12 11

CS WE 2114

U?

DEN DT/R IO/M HLDA HOLD NMI TEST

1 11

U?

D0 D1 D2 D3 D4 D5 D6 D7

34

SSO

30 31 17 23

3 4 7 8 13 14 17 18

U?

A1 A2 A3 A4 A5 A6 A7 A8

19 1

18 17 16 15 14 13 12 11

B1 B2 B3 B4 B5 B6 B7 B8

5 6 7 4 3 2 1 17 16 15

G DIR

8088MIN

8 10

74LS245

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

D0 D1 D2 D3

14 13 12 11

CS WE 2114

SOLUCIÓN Con el número de variables de direccionamiento se calcula la capacidad de los circuitos de memoria: n

No. de variables (A0 − A9) = 10

No. de localidade s = 2 = 2

10

= 1,024

Cada circuito contiene 1,024 localidades de 4 bits cada una (D0 – D3) por lo que conectándolas en paralelo tendremos un arreglo de 1,024 localidades de 8 bits = 1Kbyte cada una.

Mapa de memoria: DEC

HEXA

A15

A14

A13

A12

A11

A10

A9

A8

A7

A6

A5

A4

A3

A2

A1

A0

0 1

0000H 0001H

0 0

0 0

0 0

0 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

32767 32768 32769

7FFFH 8000H 8001H

0 1 1

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 1

33791 33792 32793

83FFH 8400H 8401H

1 1 1

0 0 0

0 0 0

0 0 0

0 0 0

0 1 1

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 0

1 0 1

65535

FFFFH

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

VACÍO

MEM 0

VACÍO

Las variables de direccionamiento (A0 – A9) se conectan punto a punto. La habilitación de los circuitos de memoria quedan en función de las variables de selección (A10 – A15) y de la señal de control M / IO de la siguiente forma:

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-13

COMPUTACIÓN V – GUÍA ETS

M0 = (A15 A14 A13 A12 A11 A10) M / IO

Debido a que el banco de memoria está formado por dos circuitos conectados en la misma dirección, no se requieren las variables de selección, por lo que la función M0 queda solamente en función de la señal M / IO . M0 = M / IO U? 33 22 19 21 18

MN READY CLK RESET INTR

U? AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO

30 31 17 23

DEN DT/R IO/M HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18 1 11

U?

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

5 6 7 4 3 2 1 17 16 15

OC G

8 10

74LS373

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

D0 D1 D2 D3

14 13 12 11

CS WE 2114

U? 34

2 3 4 5 6 7 8 9

26 27 28 32 29 25 24

19 1

8088MIN

A1 A2 A3 A4 A5 A6 A7 A8

U? B1 B2 B3 B4 B5 B6 B7 B8

G DIR 74LS245

18 17 16 15 14 13 12 11

5 6 7 4 3 2 1 17 16 15 8 10

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

D0 D1 D2 D3

14 13 12 11

CS WE 2114

Los circuitos de memoria no requieren la señal RD por lo que no se conecta.

9.

Desarrolle una rutina en lenguaje ensamblador que se encargue de leer datos en código ASCII del puerto de entrada PTO 0. Los datos numéricos impares recibidos por el puerto deberán ser almacenados en el área de memoria cuya dirección inicial es impares, los datos pares recibidos deberán ser almacenados en el área de memoria cuya dirección inicial es pares. Todos los datos que no sean numéricos deberán ser ignorados.

SOLUCIÓN Un esquema del problema planteado quedaría representado de la siguiente forma:

pares pares + 1 +2 +3

impares impares + 1 +2 +3

datos pares

CPU PTO 0 datos impares

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-14

COMPUTACIÓN V – GUÍA ETS

Algoritmo: Primero es necesario establecer un criterio para determinar si un dato leído en es un dato par o impar. Analicemos los datos numéricos codificados en ASCII: dato 0 1 2 3 4

ASCII 30H 31H 32H 33H 34H

BINARIO 0011 0000 0011 0001 0011 0010 0011 0011 0011 0100

VALOR Par impar Par impar par

dato 5 6 7 8 9

ASCII 35H 36H 37H 38H 39H

BINARIO 0011 0101 0011 0110 0011 0111 0011 1000 0011 1001

VALOR impar Par impar Par impar

De la tabla se puede observar que el bit menos significativo de los datos pares es cero mientras que para los datos impares este bit tiene el valor de uno. La rutina a desarrollar deberá probar el bit menos significativo del dato leído desde el puerto PTO 0, si éste es cero deberá ser almacenado en el área de memoria que inicia en la dirección PAR mientras que si este bit es igual a uno deberá ser almacenado en el área de memoria que inicia en la dirección IMPAR. Se requerirán dos apuntadores de memoria, uno que direccione las localidades del área de memoria PAR y otro que apunte a las localidades de memoria IMPAR. Un diagrama de flujo propuesto sería el siguiente:

inicio

A

SI ← pares

BL ← AL

DI ← impares B AL ← PTO 0

SI

AL < 30H NO

SI

BL ← BL

00000001

BL = 0

NO

SI

[SI] ← AL

[DI] ← AL

SI ← SI + 1

DI ← DI + 1

AL > 39H NO

A B Instrucción AND

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-15

COMPUTACIÓN V – GUÍA ETS

El programa: Inicio:

Etq1:

impar:

10.

lea lea mov cmp jl cmp jg mov and jnz mov inc mov inc jmp

si,pares di, impares al,pto0 al,30h etq1 al,39h etq1 bl,al bl,01 impar [si],al si [di],al di etq1

;direcciona apuntadores en áreas de memoria ;lee dato de PTO 0 ;ignora dato no numérico

;copia dato ;prueba si es dato impar ;dato par, almacena en área PAR ;incrementa apuntador par :dato impar, almacena en área IMPAR ;incrementa apuntador impar

Desarrolle la rutina PP que se encargue de almacenar en una área de memoria cuya dirección inicial es TEXTO, una cadena de caracteres capturada desde el teclado y cuyo final lo determina un carácter enter (0DH). Posteriormente, la cadena de caracteres deberá ser desplegada en la pantalla. La rutina PP tendrá que emplear las subrutinas sub1 Y sub2 para la captura y despliegue de la cadena. sub1:

sub2: mov mov int ret

ah,0eh bh,0 10h

PP: mov int ret

ah,0 16h

SOLUCIÓN El diagrama propuesto para la rutina PP haciendo uso de las subrutinas sub1 y sub2, se muestra a continuación: PP SI ← tabla

SI ← tabla

sub2

al ← [SI]

[SI] ← al

sub1

al = 0dh

S

NO

SI ← SI + 1

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

al = 0dh

S

fin

NO

SI ← SI + 1

CV-16

COMPUTACIÓN V – GUÍA ETS

El programa PP: PP: leer:

lea call mov cmp je inc jmp

si,tabla sub2 al,[si] al,0dh etq1 si leer

etq1: ndato:

lea mov call cmp je inc jmp nop

si,tabla al,[si] sub1 al,0dh fin si ndato

fin:

Nota:

La etiqueta fin representa la instrucción o proceso siguiente al termino de la ejecución de la rutina PP.

PROBLEMAS PROPUESTOS 1.

Elabore el diagrama de flujo y el listado de una rutina que se encargue de leer del teclado y desplegar en la pantalla una cadena de caracteres convirtiendo los caracteres mayúsculas a minúsculas utilizando las interrupciones del BIOS correspondientes. La rutina debe ignorar todos aquellos caracteres que no sean alfabéticos.

2.

El programa que se muestra a continuación se encarga de transmitir al puerto de salida PTO_0 La cadena de caracteres que se encuentran almacenados en el área de memoria cuya dirección inicial es TEXTO, el final de la cadena esta definido por un carácter EOT. Después de transmitir la cadena de caracteres, el programa borra los datos almacenados en el área de memoria por medio de la subrutina CLEAR y llena nuevamente el área de memoria leyendo datos por medio de la rutina READ para transmitirlos nuevamente. INICIO: ETQ:

a)

b)

LEA MOV INC OUT CMP JNE CALL CALL JMP

SI,TEXTO AL,[SI] SI PTO_0,AL AL, EOT ETQ CLEAR READ INICIO

Diseñe la rutina CLEAR, la cual deberá encargarse de llenar con ceros el área de memoria de longitud variable cuya dirección inicial es TEXTO y el final esta definido por un carácter EOT. Diseñe la rutina read que se encargará de leer datos del puerto de entrada PTO-1 y los almacenará en el área de memoria cuya dirección inicial es TEXTO, sabiendo que el final de la lectura lo determina un carácter EOT.

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-17

COMPUTACIÓN V – GUÍA ETS

3.

Diseñe un rutina que se encargue de convertir a código ASCII el dato numérico de ocho bits almacenado en hexadecimal en la localidad CUENTA. El resultado deberá ser almacenado en el área de memoria buffer, cuya longitud es de dos bytes. Utilizando la interrupción correspondiente, elabore una rutina que se encargue de desplegar en la pantalla alineando a la derecha una cadena de caracteres que se encuentra almacenada en una área de memoria cuya dirección inicial es TEXTO y cuyo final lo determina un carácter 0DH (enter).

4.

Conecte apropiadamente el decodificador de memoria de tal forma que direccione un banco de 4 kbytes a partir de la localidad 6000H. Utilice únicamente las 16 líneas menos significativas del canal de direcciones. Conecte los puertos en tal forma que el puerto de entrada se direccione en la localidad F0H y el de salida quede en la dirección C0H. Utilice únicamente las líneas de control M’ / IO, RD’ y WR’ de manera conveniente según el caso. U?

33 22 19 21 18

U?

MN

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6

READY CLK RESET INTR

HLDA HOLD NMI TEST

2 5 6 9 12 15 16 19

U? 8 7 6 5 4 3 2 1 23 22 19

OC G

18 20 21

U? 2 3 4 5 6 7 8 9

A1 A2 A3 A4 A5 A6 A7 A8

19 1

32 29 25 24

RD WR ALE INTA

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

74LS373

26 27 28

DEN DT/R IO/M

D0 D1 D2 D3 D4 D5 D6 D7

1 11

34

SSO

30 31 17 23

3 4 7 8 13 14 17 18

B1 B2 B3 B4 B5 B6 B7 B8

18 17 16 15 14 13 12 11

8 7 6 5 4 3 2 1 23 22 19

G DIR 74LS245

8088MIN 18 20 21

U?A 2 3

U?A U?A 2 1

1 2 13

12

1

3

A B G

Y0 Y1 Y2 Y3

4 5 6 7

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

OC G 74LS373

CE OE VPP A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

2 5 6 9 12 15 16 19

U? Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7 OC G

CE OE VPP

3 4 7 8 13 14 17 18 1 11

74LS373

2716

74LS139 74LS10 74LS02

DECODIFICADOR DE MEMORIA

U?B 14 13

U?A 1 2 13

12

15

A B G

Y0 Y1 Y2 Y3

12 11 10 9

74LS139 74LS10

DECODIFICADOR DE PUERTOS

5.

Asigne las líneas de dirección adecuadas para que el decodificador que se muestra a continuación seleccione los puertos de E/S en las direcciones C0H, D0H, E0H y F0h para los puertos Pto0, Pto1, Pto2 y Pto3 respectivamente.

Utilice la línea de control M’ / IO correctamente.

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-18

COMPUTACIÓN V – GUÍA ETS U? 33

U?

MN

22 19 21

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6

READY CLK RESET

18

INTR

SSO DEN DT/R IO/M

30 31 17 23

HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

OC G 74LS373 U?A 2 3

A B

1

Y0 Y1 Y2 Y3

G

34

4 5 6 7

PTO PTO PTO PTO

0 1 2 3

74LS139

26 27 28

U?A 1 3 2

32 29 25 24

74LS00

8088MIN

6.

Diseñe un decodificador que direcciones los puertos de entrada en las direcciones C5h y 97h, los puertos de salida en las direcciones 85h y D6h. Conecte apropiadamente las señales de control RD’ y WR’. PTO pto 00

7.

RD

D0 D1 D2 D3 D4 D5 D6 D7

14 15 12 8 7 9 10 13

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

PTO pto 1 1 2 5 6 9 12 15 16 19

3 4 7 8 13 14 17 18 1 11

OC G pto 2

11 1

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 G OC

D0 D1 D2 D3 D4 D5 D6 D7

3 4 7 8 13 14 17 18

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

OC G pto 0 PTO 3

PTO 2

2 5 6 9 12 15 16 19

D0 D1 D2 D3 D4 D5 D6 D7

2 5 6 9 12 15 16 19 11 1

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7

3 4 7 8 13 14 17 18

G OC

21

22

WR

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15

30 31 32 33 34 35 36 37 38 39 40 1 2 3 4 5

Diseñe un decodificador que direccione dos circuitos de memoria de la siguiente manera: • • •

La memoria RAM deberá direccionarse a partir de la localidad 8000H. La memoria ROM deberá direccionarse a partir de la localidad F000H. Conecte las señales de control RD’ y WR’ en las entradas correspondientes.

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-19

COMPUTACIÓN V – GUÍA ETS

RD

D0 D1 D2 D3 D4 D5 D6 D7

30 31 32 33 34 35 36 37 38 39 40 1 2 3 4 5

8 7 6 5 4 3 2 1 23 22 19 18 20 21

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

D0 D1 D2 D3 D4 D5 D6 D7

9 10 11 13 14 15 16 17

CE OE WE 6116

14 15 12 8 7 9 10 13

8 7 6 5 4 3 2 1 23 22 19 21

21

22

WR

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15

18 20

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

CE OE/VPP 2732

Elabore el mapa y conecte apropiadamente los circuitos mostrados para formar dos bancos de memoria de 512 bytes cada uno, el primero direccionado a partir de la localidad B000H y el segundo a partir de C800H.

8.

Conecte las señales de control ALE, DEN’, DT/R’ , RD’, WR’ 33 22 19 21 18

MN READY CLK RESET INTR

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO

30 31 17 23

DEN DT/R IO/M HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35 34 26 27 28

3 4 7 8 13 14 17 18 1 11

2 3 4 5 6 7 8 9 19 1

32 29 25 24

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

OC G

A1 A2 A3 A4 A5 A6 A7 A8 G DIR

5 6 7 4 3 2 1 17 16 8 10

B1 B2 B3 B4 B5 B6 B7 B8

D0 D1 D2 D3

14 13 12 11

5 6 7 4 3 2 1 17 16 8 10

CE WE

A0 A1 A2 A3 A4 A5 A6 A7 A8

D0 D1 D2 D3

14 13 12 11

CE WE

18 17 16 15 14 13 12 11 5 6 7 4 3 2 1 17 16

8088MIN 8 10

9.

A0 A1 A2 A3 A4 A5 A6 A7 A8

A0 A1 A2 A3 A4 A5 A6 A7 A8 CE WE

D0 D1 D2 D3

14 13 12 11

5 6 7 4 3 2 1 17 16 8 10

A0 A1 A2 A3 A4 A5 A6 A7 A8

D0 D1 D2 D3

14 13 12 11

CE WE

Desarrolle una subrutina que transfiera una cadena de 100 caracteres almacenados en memoria a partir de la dirección BUFFER a los puertos PTO A y PTO B en función de las siguientes características: • • •

El carácter deberá ser enviado al PTO A si los bits 3 o 4 están puestos a uno El carácter deberá ser enviado al PTO B si los bits 2 y 3 están puesto a cero. Si el carácter no cumple ninguna de las condiciones anteriores, se deberá continuar con el siguiente dato. Diagrama de flujo 1 punto Programa 2 puntos

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-20

COMPUTACIÓN V – GUÍA ETS

10.

Decodifique las direcciones de los circuitos de memoria y desarrolle una rutina que se encargue de copiar utilizando DIRECCIONAMIENTO INDEXADO CON BASE todos los datos grabados en la memoria MEM0 a la memoria MEM1. Decodificador Rutina

2 puntos 2 puntos MEM0

33 22 19 21 18

MN

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15 A16/S3 A17/S4 A18/S5 A19/S6

READY CLK RESET INTR

SSO

30 31 17 23

DEN DT/R IO/M HLDA HOLD NMI TEST

RD WR ALE INTA

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39 38 37 36 35

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

8 7 6 5 4 3 2 1 23 22 19

OC G

18 20 21

74LS373

1

1 2 13

2

1 2 13

1 2 13

12

9 10 11 13 14 15 16 17

CE OE VPP

MEM1 8 7 6 5 4 3 2 1 23 22 19

12

32 29 25 24

8088MIN 1 2 13

O0 O1 O2 O3 O4 O5 O6 O7

2716 12

34 26 27 28

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

12

1 2 13

12

18 20 21

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

D0 D1 D2 D3 D4 D5 D6 D7

9 10 11 13 14 15 16 17

CE OE WE 6116

11.

Utilizando las 16 líneas de menor orden del canal de direcciones del µP 8088, diseñe un decodificador que permita ubicar cuatro circuitos de memoria, dos 2716 (2K x 8) y dos 2732 (4K x 8) al principio del mapa de memoria sin importar que existan reflejos de direccionamiento. Mapa de memoria Reducción Diagrama lógico

1 punto 1 punto 1 punto

12.

Obtenga el mapa de memoria del circuito que se muestra en la siguiente figura:

13.

Utilizando métodos de reducción, diseñe un decodificador para sustituir los cuatro circuitos de memoria de 2 K x 8 por 2 circuitos de 4 K x 8 de tal forma que el mapa de memoria no tenga cambio alguno.

14.

Obtenga el mapa de puertos del circuito mostrado a continuación:

15.

Utilizando direccionamiento indexado, desarrolle una rutina que lea datos del puerto PTO2 y los almacene en memoria de acuerdo a las siguientes condiciones: • • •

El carácter deberá ser enviado al área de memoria AREA1 si los bits 3 o 4 están puestos a uno El carácter deberá ser enviado al área de memoria ÁREA2 si los bits 2 y 3 están puesto a cero. Si el carácter no cumple ninguna de las condiciones anteriores, se deberá leer un nuevo dato

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

CV-21

COMPUTACIÓN V – GUÍA ETS

Considere que el AREA2 está localizada en una dirección 200h adelante de AREA1. 74LS373

34 33 22 21 19 18 17 24 30 31 23

A16/S3 A17/S4 A18/S5 A19/S6 SS0 MN/MX READY RESET CLK INTR NMI INTA

AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 A8 A9 A10 A11 A12 A13 A14 A15

HLDA HOLD

ALE DEN DT/R IO/M

TEST

WR RD

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 39

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

8 7 6 5 4 3 2 1 23 22 19

OC G

20 18 21 2 3

25 26 27 28

1

29 32

Y0 Y1 Y2 Y3

A B G

74LS139

3

38 37 36 35

1

2

1

8088 MIN

4 5 6 7

8 7 6 5 4 3 2 1 23 22 19 20 18

3 2

21

DECODIFICADOR DE MEMORIA

8 7 6 5 4 3 2 1 23 22 19 20 18

4 5 6 7

Y0 Y1 Y2 Y3

A B G

1

2 3 3

PTO0 PTO1 PTO2 PTO3

21 2

DECODIFICADOR DE PUERTOS

1

74LS139

8 7 6 5 4 3 2 1 23 22 19 20 18 21

PROFESORES DE LA SUPERVISIÓN DE COMPUTACIÓN V

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

MEM0

OE CE VPP A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

MEM1

OE CE VPP A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

MEM2

OE CE VPP A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

O0 O1 O2 O3 O4 O5 O6 O7

9 10 11 13 14 15 16 17

MEM3

OE CE VPP

CV-22

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.