diseño de una computadora básica

14
Arquitectura de Computadoras Profesor: Sergio Páez “Diseño de una computadora básica.” Arroyo Nazario Liliana Espinoza Olvera Humberto 27 de marzo del 2014

Upload: humberto-espinoza-olvera

Post on 08-Jul-2015

229 views

Category:

Engineering


8 download

DESCRIPTION

Diagramas y Esquemas necesarios para comprender los componentes de una computadora básica.

TRANSCRIPT

Page 1: Diseño de una computadora básica

Arquitectura de Computadoras

Profesor: Sergio Páez

“Diseño de una computadora básica.”

Arroyo Nazario Liliana

Espinoza Olvera Humberto

27 de marzo del 2014

Page 2: Diseño de una computadora básica

Organización de un programa almacenado.

La manera mas facil de organizar una computadora es tener un

registro de procesador y un formato de codigo de instrucción con dos

partes. La primera parte especifica la operación que se va a ejecutar y

la segunda especifica una direccion. La direccion de memoria le dice al control donde encontrar un operando en la memoria.

Figura 1. Organización de un programa almacenado. Las instrucciones están almacenadas en una sección de memoria y los datos en otro. Para una unidad de memoria con 4096 palabras se necesitan 12 bits.

Page 3: Diseño de una computadora básica

Direccionamiento indirecto.

Cuando la segunda parte de un codigo de instrucción especifica un

operando, se dice que la instrucción tienen un operando inmediato.

Cuando la segunda parte especifica la direccion de un operando se

dice que la instrucción tiene tienen un direccionamiento directo. Esto

contrasta con una tercera posibilidad llamada direccionamiento

indirecto, en la cual los bits de la segunda parte de la instrucción

representa ladireccion de una palabra de memoria, en la cual se encuentra la direccion de operando.

Figura 2. Ejemplo de direccionamiento directo e indirecto.

Page 4: Diseño de una computadora básica

Registros de computadora.

Es necesario proporcionar un registro en la unidad de control para

almacenar el codigo de instrucción despues de que se lee de la

memoria. La computadora necesita los registros del procesador para

manipular datos y un registro para contener una direccion de memoria. Estas necesidades dictan la configuracion del registro.

Tabla 1. Listas de registros para la computadora básica.

Figura 3. Registros de computadora básica y memoria

Page 5: Diseño de una computadora básica

Bus común del sistema

La computadora básica tiene ocho registros, una unidad de memoria y

una unidad de control. Deben proporcionarse trayectorias para

transferir la información de un registro a otro, entre la memoria y el

registro . Un esquema mas eficiente para transferir información en un sistema con muchos registros es usar un bus común .

El siguiente esquema muestra la conexión de los registros y de la memoria de la computadora básica a un sistema de bus común:

Page 6: Diseño de una computadora básica

Instrucciones de computadora.

La computadora basica tiene tres formatos de codigos de intruccion, según se

muestra en la figura de abajo, cada formato tiene 16 bits.La parte de codigo de

operecion de la instrucción contiene 3 bits y el significado de los 13 bits restantes

depende del codigo de operación que se encuentre una instrucción de referencia a

memoria utiliza 12 bits para especificar una direccion y un bit para especificar el modo de

direccionamiento I.

Temporización y control.

La temporización de todos los registros de la computadora básica está

controlada por un generador de reloj maestro. Los pulsos de reloj se

aplican a todos los flip-flops y registros del sistema, incluyendo los de

la unidad de control. Los pulsos de reloj no cambian el estado de un

registro, a menos que el registro este habilitado mediante una señal de

control. Las señales de control se generan en la unidad de control y

proporcionan entradas de control para los multiplexores del bus común,

entradas de control en los registros del procesador y microoperaciones para el acumulador.

Page 7: Diseño de una computadora básica

Figura 6. Unidad de control de la computadora básica. Está formado por dos decodificadores, un control secuencial y cierta cantidad de compuertas lógicas de control.

Page 8: Diseño de una computadora básica

Búsqueda y decodificación

El diagrama muestra como se implantan los primeros dos enunciados

de tranferencia de registro en el canal del sistema de bus. Con el fin

de proporcionar la trayectoria de datos para la transferencia de PC a

AR, se debe aplicar una señal de temporización de T0 para obtener la siguiente conexión:

Se muestra una parte del canal del sistema del bus y muestra como

estan conectados T0 y T1 a las entradas de control de los registros, la memoria y las esntradas de selección del bus.

Figura 7. Transferencias de registro para la fase de búsqueda.

Page 9: Diseño de una computadora básica

DISEÑO DE UNA COMPUTADORA BÁSICA.

La computadora básica consta de los siguientes componentes de hardware:

1. Una unidad de memoria con 4096 palabras de 16 bits cada una,

2. Nueve registros: AR, PC, DR, AC, IR, TR, OUTR, INPR y SC.

3. Siete flip- flops: I, S, E, R, IEN, FGI, y FGO.

4. Dos decodificadores: un decodificador de operación de 3x8 y un

decodificador de temporización de 4x16.

5. Un bus común de 16 bits.

6. Compuertas lógicas de control.

7. Un circuito sumador y lógico conectado a la entrada de AC.

Tabla 3. Funciones de control y microoperaciones para la computadora básica.

Page 10: Diseño de una computadora básica

Tabla 3.1 Funciones de control y microoperaciones para la computadora básica.

CONTROL DE REGISTROS Y DE MEMORIA

Revisamos la tabla 3 para encontrar todos los enunciados que no cambian el

contenido de los registros:

• AR:

R’T0: AR ←PC

R’T2: AR←IR(0-11)

D’7IT3: AR←M[AR]

RT0: AR←0

D5T4: AR←AR+1

LD(AR) = R’T0 + R’T2 + D’7IT3

CLR(AR) = RT0

INR(AR) = D5T4

Page 11: Diseño de una computadora básica

• PC:

R’T1: PC←PC + 1 RT1: PC←0

RT2: PC←PC + 1 D4T4: PC←AR

D5T5: PC←AR

LD(PC) = D4T4 + D5T5 CLR(PC) = RT1

INR(PC) = R’T1 + RT2

• DR:

D0T4: DR←M[AR] D1T4: DR←M[AR]

D2T4: DR←M[AR] D6T4: DR←M[AR] D6T5: DR←DR + 1

D6T6: Si (DR = 0) entonces (PC ← PC +1)

LD(DR) = D0T4 + D1T4 + D2T4 + D6T4 CLR (DR) = 0 INR(DR) = D6T5

• AC:

D0T5: AC←AC^DR D1T5: AC←AC+DR D2T5: AC←DR

LD(AC) = D0T5 + D1T5 + D2T5 CLR(AC) = INR(AC) =

• IR:

R’T1: IR←M[AR]

LD(IR) = R’T1

Page 12: Diseño de una computadora básica

• TR:

RT0: TR←PC

LD(TR) = RT0

• OUTR:

pB11: OUTR←AC(0-7)

LD(OUTR) = pB11

• SC:

RT2: SC←0

D0T5: SC←0 D1T5: SC←0

D2T5: SC←0 D3T4: SC←0 D4T4: SC←0

D5T5: SC←0 D6T6: SC←0

LD(SC) = RT2 + D0T5 + D1T5 + D2T5 + D3T4 + D4T4 + D5T5 + D6T6

CONTROL DE FLIP-FLOPS UNICOS.

• I:

R’T2: I ← IR(15)

• S:

rB0: S ← 0 donde r = D7I’T3

• E:

rB8: E←Ē (r = D7I’T3)

rB10: E ← 0 r B7: E ← AC(0) rB6: E ←AC(15)

• R:

T‘0T‘1T‘2(IEN)(FGI+FGO): R←1 RT2: R←0

Page 13: Diseño de una computadora básica

• IEN:

pB7: IEN ← 1 (p = D7IT3) pB6: IEN← 0

• FGI:

pB11: FGI ← 0 pB9: if (FGI = 1 ) entonces (PC←PC+1) • FGO:

pB10: FGO ← 0

pB8: if (FGO = 1) entonces (PC ← PC +1)

Control de un bus común El bus común de 16 bits se controla mediante las entradas de selección S2, S1, y S0. El numero decimal que aparece con cada entrada de bus especifica el numero binario equivalente que debe aplicarse a la entrada de selección para elegir el registro correspondiente. Cada numero binario esra asociado con una variable booleana x1 hasta x7, que corresponde a la estructura de compuerta que debe estar activa para seleccionar el registro o a la memoria para el bus. S0= X1+X3+X5+X7

S1= X2+X3+X6+ X7 S2= X4+X5+X6+ X7 X1 = D4T4+D5T5

X2 = R´ T0+R T0+ D5 T4 X3 = D2 T5+ D6 T6 X4 = D3 T4 X5 = R´ T2 X6 = R T1 X7 =R´T1+D´7I T3+ T4(D0+ D1+ D2+ D6)

Page 14: Diseño de una computadora básica