• No se han encontrado resultados

tema4fini

N/A
N/A
Protected

Academic year: 2020

Share "tema4fini"

Copied!
23
0
0

Texto completo

(1)

EL NIVEL DE

MICROPROGRAMACIÓN

UNIDAD 4

(2)

1. Diferentes niveles en la

arquitectura de un computador

• Un computador digital es una máquina

que puede resolver problemas ejecutando ciertas instrucciones.

• Un programa es una secuencia de

instrucciones.

• Los circuitos electrónicos de cada

computadora reconocen un conjunto limitado de instrucciones muy simples.

Lenguaje máquina es el conjunto de

(3)

TRADUCTORES

• Utilizar lenguaje máquina es difícil y

tedioso.

• Solución:

» sea L1 el lenguaje máquina

» y L2 un lenguaje más fácil de utilizar

programa en L2

programa en L1

compilación (compilador)

(4)

MÁQUINAS VIRTUALES

• Se puede imaginar la existencia de una

máquina virtual cuyo lenguaje máquina es L2.

• Se pueden crear L3, L4... cada uno más

fácil de utilizar. nivel n nivel 3

nivel 2

nivel 1

Mn con Ln

M3 con L3

M2 con L2

M1 con L1

(5)

2. MÁQUINAS MULTINIVEL

ACTUALES

• La mayoría de las

máquinas actuales constan de 6 niveles.

Los microprogramas

son directamente ejecutados por el hardware.

Lenguajes de alto nivel

Lenguaje ensamblador Sistema operativo Máquina convencional Microprogramación nivel 5 nivel 4 nivel 3 nivel 2 nivel 1 nivel 0 Traducción (compilador) Traducción(ensamblador)

Interpretación (sistema operativo)

Interpretación (microprograma)

(6)

Nivel 0: nivel de lógica digital

• Es el hardware de la máquina.

• El nivel inferior sería el nivel de dispositivo. • En este nivel:

» Puertas lógicas

» Circuitos integrados

» Circuitos combinacionales » Circuitos aritméticos

» Relojes » Memorias

» Microprocesadores » Buses

(7)

Nivel 1: nivel de

microprogramación

• Existe un programa llamado

microprograma.

• La función del microprograma es interpretar

las instrucciones del nivel 2.

• En algunas máquinas no existe el nivel de

(8)

Nivel 2: nivel de máquina

convencional

• Cada fabricante publica el “Manual de

referencia del lenguaje máquina” para cada uno de los computadores.

• Las instrucciones del nivel de máquina las

interpreta el microprograma.

• En las máquinas en las que no existe el

nivel de microprogramación, las

instrucciones del nivel de máquina son realizadas directamente por los circuitos electrónicos.

(9)

Nivel 3: nivel del sistema

operativo

• La mayoría de las instrucciones de este

nivel están también en el nivel 2 pero además tiene un nuevo conjunto de

instrucciones, una organización diferente de la memoria, posibilidad de ejecutar 2 o más programas ...

• Las nuevas instrucciones las interpreta el

sistema operativo.

• Las que son idénticas a las del nivel 2 las

(10)

Nivel 3: Introduccion a la

Transferencia entre Registros

La Memoria, Unidad donde se almacenan tanto

los datos como las instrucciones

Memoria principal,

o

central,

o

interna.

» Mayor velocidad

» Ligada directamente a las unidades más

rápidas del computador (UC y ALU)

» Para que un programa se ejecute debe estar

almacenado (cargado) en la memoria principal

» La memoria está dividida en posiciones

(denominadas también palabras de memoria) de un determinado número de bits.

(11)

Tipos básicos de memoria:

Memoria principal, o central, o interna.

» Para leer o escribir una información es necesario dar la dirección

de la posición

» ROM: la memoria en la que sólo se puede leer y la información es

permanente

» RAM: se puede leer y escribir y que es volátil.

Memoria masiva auxiliar, secundaria o externa.

» La memoria principal, aunque es muy rápida pero no tiene gran

capacidad para almacenar información.

» Para guardar masivamente información se utilizan otros tipos de

memoria (discos, cintas y discos ópticos)

» Más lentos (mil veces mas lentos)

» Más capacidad que la memoria principal (mil veces más capaces) » Datos y programas se graban (a través de unidades de E) en la

(12)
(13)

UNIDAD ARITMETICO-LOGICA o ALU

(Arithmetic Logic Unit)

Contiene los circuitos electrónicos con los que se hace

las operaciones:

» Aritméticas

• Sumas, Restas, Multiplicación, etc

» Lógicas

• comparar dos números, operaciones del Algebra de Boole

binaria, etc.

También se puede denominar unidad de

tratamiento o camino o ruta de datos, pues también tiene elementos auxiliares por donde se

transmiten o almacenan temporalmente (registros) los datos con que opera.

(14)

UNIDAD DE CONTROL (UC)

Detecta señales de estado procedentes de las distintas

unidades, indicando su situación o condición de

funcionamiento. Capta de la memoria una a una las

instrucciones del programa, y, de acuerdo con el código de operación de la instrucción captada y con las señales de estado, genera señales de control dirigidas a todas las unidades, monitorizando las operaciones que implican la ejecución de la instrucción.

Reloj o generador de Pulsos

» Se encuentra en la unidad de control, por medio de los

pulsos sincroniza todas las operaciones elementales del computador.

» El período de esta señal se denomina tiempo de ciclo

(nanosegundos y varios microsegundos).

La frecuencia del reloj (millones de ciclos/segundo, o

Megahercios, abreviadamente Mhz)

» Es un parámetro que en parte determina la velocidad de

(15)

Departamento de Informática. Curso

NIVEL DE TRANSFERENCIA DE

REGISTROS

El comportamiento de un sistema digital a nivel de transferencia de registros se puede definir

mediante un conjunto de operaciones O1 ,O2 , O3 , … On realizadas sobre diferentes datos externos o internos.

Cada una de estas operaciones elementales se lleva a cabo mediante transferencias entre registros

cuya forma mas general puede ser:

(16)

Departamento de Informática. Curso

2005-2006 16

LENGUAJE DE TRANSFERENCIA

DE REGISTROS

Sean A y B dos registros, la operación mas habitual es

transferir el contenido de un registro a otro, se expresa así: B  A

En caso de necesitar saber el número o posición de los bits

transferidos se indica de la siguiente manera: B[7-0]  A[15-8]

Normalmente la transferencia está controlada mediante una

señal de habilitación E (enable), se suele expresar de la siguiente forma: E : B  A

La señal de habilitación puede ser mas compleja, por

ejemplo:

Si x = 0 y t = 1  B A En otro caso  B  C

(17)

Departamento de Informática. Curso

LENGUAJE DE TRANSFERENCIA

DE REGISTROS

Los registros pueden ser objeto de las operaciones aritméticas y lógicas habituales, así tendremos:

D  A B LSR (A) ASR (A) A  A + 1

Otro operador disponible es & (concatenación) p.ej LSR (A&B)

(18)

Departamento de Informática. Curso

18

LENGUAJE DE TRANSFERENCIA

DE REGISTROS

Las transferencias de datos entre registros y memoria se pueden tratar como casos

particulares del caso anterior donde

tendremos dos operaciones gobernadas por las señales de control R (lectura) y W

(escritura) y usando los registros MAR y MBR con la notación habitual tendremos:

R: MBR  M((MAR)) W: M((MAR))  MBR

(19)

Departamento de Informática. Curso

LENGUAJE DE TRANSFERENCIA

DE REGISTROS

Por último las transferencias entre buses y registros se escriben de forma similar:

A  Inbus [8] Outbus [8]  A

(20)

Transferencia de 1 Registro a 1

Registro

• conectan las salidas de los flip-flops del

registro A (origen) a las entradas de los flip-flops del registro B (destino). De esta

forma, al aplicar un pulso en la entrada de reloj del registro B este tomará los datos

disponibles en su entrada y los almacenará. La  transferencia de datos se efectuará

(21)

Transferencia de 1 Registro a 1

Registro

El diagrama de tiempo

muestra los cambios de las diferentes señales y el

momento en el que el registro almacena la nueva información.

(22)

Transferencia de varios Registros a

1 Registro

• Si queremos transferir datos de varios registros origen

a un registro destino debemos seleccionar de cual de los registros se va a tomar la información. Para ello asociaremos una señal de control SC a cada posible transferencia. Tendremos tantas señales de control como transferencias se puedan realizar. Solamente la señal de control asociada a la transferencia que se

quiere realizar valdrá 1, permitiendo enrutar la salida del registro correspondiente hacia la entrada del

registro destino. Las demás señales de control valdrán 0. SOLO UNA SEÑAL DE CONTROL  PUEDE VALER 1 EN UN MOMENTO DETERMINADO. Al bajar un

pulso de reloj el registro destino almacenará la información del registro seleccionado

(23)

Transferencia de Varios Registros a

1 Registro

• Supongamos que tenemos 3 registros origen A,

B, C de 3 bits y un registro destino D.

Las posibles transferencias son: D A,  D A,  D A. Asociaremos una señal de control distinta a cada transferencia, así:

si SC1 =1   D    A si SC2 =1   D     B si SC3 =1   D     C

Solamente una de las tres señales de control podrá ser igual a 1

(24)

Transferencia de varios Registros a 1 Registro

(25)

Transferencia de varios Registros a

Varios Registros

• Si queremos transferir datos de varios registros origen a

varios registros destino debemos agregar un set de compuertas ANDs que combina la señal de control SC con las salidas del registro origen, por cada

transferencia que queremos realizar,  y un set de

compuertas ORs a la entrada de cada registro destino.

• Por ejemplo en el circuito que se muestra a

continuación, si queremos realizar la transferencia de 3 registros origen a 2 registros destino, tendemos seis

posibles transferencias:

si SC1 =1   D    A

si SC2 =1   D     B

si SC3 =1   D     C

si SC4 =1   E    A

si SC5 =1   E     B

(26)

Transferencia de Varios Registros a

varios Registros

• Como podemos observar tendremos un set de

compuertas ANDs por cada transferencia que queremos realizar (seis en este caso) que

combinan las salidas del registro origen con la señal SC que controla la transferencia. Por cada uno de los registros destino tendremos un set de compuertas OR .

(27)

Transferencia de varios Registros a varios Registros

(28)

Transferencia de Registros con

estructura de buses

• El primer paso es utilizar las señales de control para

enrutar el dato hacia la salida del bus. Esta operación

difiere de la transferencia ya que el bus no almacena los datos. El dato permanecerá en la salida del bus mientras la señal de control permanezca en 1. EL BUS NO

ALMACENA INFORMACION.

• el bus está compuesto básicamente por el set de

compuertas OR  las cuales no almacenan información y su salida depende del valor de las entradas en ese

momento.

• El segundo paso es el de almacenar la salida del bus en

el registro destino, lo que se realiza aplicando un pulso de reloj , controlado por una señal de control. En ese momento es que la señal de control que mantenía el dato en el bus pasa a ser nuevamente 0

(29)

29

Como dijimos anteriormente la transferencia se ejecuta en dos

pasos.

El primero es colocar el dato en el bus, lo que se realiza con una de las tres señales SC1, SC2 o SC3.

si SC1 =1   BUS  =  A

si SC2 =1   BUS  =  B

si SC3 =1   BUS  =  C

Nótese que no se utilizó el símbolo " " que implica transferencia. En cambio se utiliza el símbolo"  = " , recalcando que EL BUS

MANTENDRÁ EL DATO EN SU SALIDA MIENTRAS LA SEÑAL DE CONTROL CORRESPONDIENTE SEA IGUAL A 1.

El segundo paso consiste en almacenar en el registro destino el dato mantenido en el BUS. Para esto se utilizan las señales de control SC4 y SC5.

si SC4 =1   D    BUS

si SC5 =1   E     BUS

(30)

Transferencia de Registros con estructura de buses

(31)

Las máquinas de estados finitos fueron introducidas formalmente por Rabin y Scott (1959). Una máquina de estados finitos consta de un dispositivo de memoria representado por una colección finita de estados y de una función de transición que actualiza el estado actual como una función del estado previo y de la entrada en curso.

la información viene codificada por cadenas de símbolos (caracteres) de un alfabeto fijo, que constituyen la entrada a la máquina.

Referencias

Documento similar

Con la caída del Imperio, el teatro cayó en desuso y fue sepultado bajo tierra hasta que una excavación arqueológica en 1910 lo rescató del olvido y desde el año 1.933,

NIVEL 3: ASIGNATURA: EDICIÓN Y REVISIÓN DE TEXTOS PARA LA TRADUCCIÓN 5.5.1.1.1 Datos Básicos del Nivel 3. CARÁCTER ECTS ASIGNATURA

En el apartado de Prácticas del Aula Virtual el alumno tiene el pdf que recoge los enunciados de las tareas que debe realizan durante todo el nivel (en cada etapa de la misión de

Entre estos se encuentran el Programa de Formación Profesional de Docentes y Directivos Docentes, el Desarrollo de Herramientas Pedagógicas dentro de la Agenda

CLAUDIA ELENA AMARIS PAYARES ROSA HAZBLEYDY AGUIRRE MARTÍNEZ NELLY VIRGINIA MONTAÑO QUINTERO.. CURSO

[r]

con¡unicación al lvlinisterio y el sustituto deberá tener calificaciones iguales o superiores a la persona reemplazada. 4) El local propuesto por la Cooperativa para

b) al nivel: Un establecimiento con SAE certificado de nivel 2 puede ser homologado como proveedor con SAE certificado por otro de nivel 3 siempre que el cumplimiento de los