3.- Utilizando una instrucción en el
lenguaje de máquina (assembler), explique los pasos que sigue la CPU para
ejecutar una instrucción.
1.- Se lee en PC la próxima dirección a ejecutar: 000. (La dirección cambia a
medida que se ingresan los datos)
2.- Envió al MAR la próxima dirección de memoria a leer.
3.- Llevo al MDR el contenido de dicha dirección de memoria.
4.- Le entrego al IR el dato para que lo decodifique e incremento el PC.
5.- Escribo en pantalla un mensaje.
Registros apuntadores:
- PC ó IP: Program Counter o Instruction Pointer, Contiene la dirección de memoria
de la próxima instrucción a ejecutar y es incrementado en cada nueva
instrucción.
- MAR: Memory Address Register. (Registro de Dirección de Memoria) es el
registro en el que se almacena la dirección de memoria a la que se quiere
acceder.
- MDR: Memory Data Register o Memory Buffer Register, es un registro
intermedio en el que se almacenan los datos que se escriben o leen de
memoria. En el caso de una lectura, se
pone en el MAR la dirección y se activa la señal de leer, obteniendo en el MDR
el dato buscado. En el caso de una
escritura, se pone en el MAR la dirección y en el MDR el dato a escribir en
memoria, después de activa la señal de escribir, de esta forma almacenamos en
memoria el dato.
- IR: Instruction Register, en este registro se introduce la instrucción a
ejecutar, después de haberla leído de memoria accediendo a ella mediante la
dirección señalada en el PC; El contenido de este registro se puede dividir en
código de operación (el código que señala la operación que se realizará) y
operandos. Puede haber 2 operandos o sólo uno.
Acá es donde se decodifica e interpreta la instrucción así: se
descompone la instrucción leída de forma que se pueda saber cual es la
operación que se desea realizar y cuales son los operandos, en su caso, o el
desplazamiento en caso de que se trate de una instrucción de bifurcación.
Registro de estado: Registro en el que se depositan
las condiciones o resultados de una determinada operación realizada.Cada bit de este registro se
utiliza para guardar información específica, los cuales se denominan
banderas(flags). Son los siguientes:
-
C: Arrastre aritmético
-
Z: Indica si la operación realizada
ha dado cero.
-
N: Indica el signo de la operación
realizada, tabién conocido como S (sign).
- O: Registro de overflow o
desbordamimento.
4.- Explique qué se entiende por familia de computadores y
como se relaciona con el concepto de arquitectura del computador, identifique
sus principales componentes.
Familia de computadores se entiende como un grupo de
ordenadores que utilizan un mismo microprocesador o familia de
microprocesadores y que suelen se compatibles entre sí, además de compartir su
filosofía de diseño.
Las familias de computadores lo normal es que se puede
utilizar el mismo software en todos ellos, variando únicamente en las
diferentes prestaciones de cada uno de los equipos que lo componen; las
familias más conocidas son la familia de computadores Apple (basados en la
familia de procesadores 68000 de Motorola y la familia de computadores IBM PC
basados en los procesadores X86 de Intel.
IBM introdujo el término arquitectura para describir este
nivel de compatibilidad. Una nueva familia tenía una sola arquitectura pero
muchas implementaciones diferentes, todas las cuales podían ejecutar el mismo
programa, la única diferencia era el precio y la velocidad.
10.- Explique mediante un ejemplo el concepto de
“ordenamiento de bytes”, inclya los conceptos ig endian y little endian.
Los bytes de una palabra pueden numerarse de izquierda a
derecha o de derecha a izquierda. En la figura 1 se muestra parte de la memora
de una computadora de 32 bit cuyos bytes se numeran de izquierda a derecha,
como la SPARC o las grndes maniframes de IBM. En la figura 2 se aprecia la
representación análoga de una computadora de 32 bit que usa numeración de
derecha a izquierda, como la familia Intel. El primer sistema, en el que la
numeración comienza por el extremo “grande” (de orden alto), se llama
computadora big endian(figura 1), en contraste con la little edian(figura
2). Los termminos se usaron por primera vez aplicados a la arquitectura de
computadoras en un delicioso artículo escrito por Cohen.
Big endian
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
Figura 1.
Little
endian
3
|
2
|
1
|
0
|
7
|
6
|
5
|
4
|
11
|
10
|
9
|
8
|
15
|
14
|
13
|
12
|
Figura 2.
Es importante entender que tanto en los sistemas big
endian como en los little endian, un entero de 32 bits con el valor
numérico de, digamos 6, se representa con los bits 110 en los tres bits de la
extrema derecha(orden bajo) de una palabra, con ceros en los 29 bits de la
izquierda. En el esquema big endian, los bit 110 están en el byte 3 (o
7, u 11, etc), mientras que en el esquema de little endian están en el
byte 0 (o 4,u 8, etc). En ambos casos, la palabra que contiene este entero
tiene la dirección 0.
19.- Describa y
explique el uso especifico el uso de las memorian RAM y ROM.
SRAM(Memoria de acceso aleatorio estática): Se
contruye internamente empleando circuitos similares a nuestro FF-D básico.
Estas memorias tienen la propiedad de que su contenido se conserva en tanto se
sigue alimentndo el circuito: segundos, minutos, horas y hasta días. Las SRAM
son muy rápids. Un tiempo de acceso típico es de unos cuantos nanosegundos. Por
esta razón, las SRAM son polilares como memoria caché de nivel 2.
DRAM (Memoria de acceso aleatorio dinámica): Estas no
usan flip-flop. En vez de ello, usan una matri de celdas, cada una de la cuales
contiene un transistor y un diminuto condensador. Los condensadores pueden
cagarse o descargarse, lo que permte almacenar ceros y unos. Puesto que la
carga eléctrica tiende a fugarse, cada bit de una DRAM debe cargare de nuevo
(proceso de refresco) cada pocos milisegundos para evitar que los datos se
pierda. Es por eso que el proceso de refresco corre a cargo de la lógica
extrema, las DRAM requieren interfaces más complejas que las esstáticas, aunque
en muchas aplicaciones esta desventaja se compensa por su mayor capacidad.
Existn varios tipos de RAM dinámica, el más antiguo que
continúa en uso es la DRAM FPM (modo de página rápida), esta RAM esta siendo
reemplazada gradualmente por la DRAM EDO (salida de datos extendida), que
permite reinicar una segunda referencia a la memoria antes de que la anterior
se haya completado. Tantos las FPM como los EDO son asincrónicos, lo que
significa que las líneas de dirección y de datos no están controladas por un
mismo reloj. Por otra parte la SDRA (DRAM sincrónica) es un híbrido de RAM
estática y dinámica y es controlado por un solo reloj sincrónico. Estas se usan
a menudo en las cachés grandes y podría ser la tecnología preferia para las
memorias principales en el futuro.
ROM(memoria sólo de lectura): No pueden modificarse ni
borarse, intencionalmente o por accidente. Los datos de una ROM se intersentan
durante su fabricación, básicamente exponiendo un material fotosensible a
través de una máscara que contiene el patrón de bits descado y luego eliminando
por grabado la superficie expuesta o la no expuesta. La única forma de
modificar el programa de una ROM es cambiar todo el chip. Las ROM son mucho mas
económicas que las RAM cuando se producen en grandes cantidades, pues así el
costo de elaborar la máscara se diluye. Sin embargo, estas memorias son
inflexibles, porque no pueden modificarse después de su fabricación y el tiempo
que tarda en surtirse un pedido de ROM puede ser de semanas.
Para facilitar el desarrollo de los nuevos productos basados
en ROM, se inventó la PROM(ROM programable), esta es parecia a la ROM, exepto
que puede programarse una vez en el campo, lo que elimina el retraso por
surtido. El otro aance en este campo fue la EPROM(PROM borrable), que no sólo
puede programarse, sino también borrarse. Cuando la ventana de cuarzo de una
EPROM se expone a una lu ultravioleta intensa durante 15 minutos, todos los
bits se ponen en 1. Las EPROM son mucho mas economicas que las PROM porque
pueden reutilizarse. También esta algo aun mejor, la EEPROM, que puede borrarse
por aplicación de pulsaciones, sin tenr que colocarse en una cámara especial
para exponerla a la luz ultravioleta. Una EEPROM puede reprogramarse instalada,
mientras que una EPROM tiene que insertarse en un dispositivo especial par
pogramar. Las EEPROM son mucho mas pequeñas y mas lentas, por lo que no pueden
competir on las DRAM ni las SRAM, porque son 10 veces mas lentas, 100 veces más
pequeñas y mucho mas costosas, sólo se utilizan en situaciones en las que su no
volatilidad es crucial. Una EEPROM mas reciente es la memoria flash, estaa
puede borrarse y reescribirse por bloque.
25.- Explique mediante ejemplos las operaciones del bus.
El bus sirve como enlace de comunicación compartido entre los
subsistemas. Las dos ventajas principales de la organización de un bus son su
bajo costo y su versatilidad. Al definir un sensillo esquema de interconexión,
se puede añadir fácilmente nuevos dispositivos y los periféricos pueden incluso
compartirse entre subsistemas de computadoras que utilicen un bus común. El
costo sería bajo, ya que un simple conjunto de cables es una ruta o camino
múltiple compartido por todos los que se conecten a este conjunto.
Los dos tipos de conexiones más comunes son:
1- Todos los elementos comparten un bus común, como se
muestra en la imagen, en este caso solamente dos subsistema pueden comunircarse
entre sí.
2- En sistemas más complejos se puede tener dos o más buses,
como muestra la figura, tenemos dos buses que son compartidos, uno usado para
comunicar la CPU y la memoria y el otro para el procesador de E/S y un conjunto
de dispositicos de E/S.
La serie de microprocesadores del 8080 al 80486 nos muestran
un ejemplo de la estructura del bus para memoria y E/S, en la figura se muestra
en forma esquemática y en la segunda imagen se presenta con el número de líneas
requeridas por cada sección del bus.
Estructura de las secciones para memoria E/S en el bus
principal.