U3:
Memoria principal: almacena instrucciones de programas, que próximamente serán
ejecutados por la UCP, y los datos que ella ordenan procesar (operar) así como resultados
intermedios y finales de operaciones sobre finales de operaciones recientemente llevadas a
cabo por la UCP
Los dispositivos que se encargan de entrar desde el exterior datos o instrucciones hacia el
computador, o dar salida del computador al exterior, se denominan periféricos o unidades de
entrada/salida.
Unidad de información: se utiliza para identificar un grupo de bytes a los que se accede en
forma conjunta según el tipo de soporte. Para las memorias RAM y ROM se utiliza el
término de palabra, y para las memorias sobre medio magnético se utiliza el término bloque.
Tiempo de acceso: es el lapso entre la orden de lectura y la disponibilidad efectiva de la
unidad de información buscada.
Registros: guardan transitoriamente información relacionada con la instrucción en curso de
ejecución, y con las próximas instrucciones a ejecutar.
Registro de direcciones (RDI): se formaba el número binario que era la dirección que se
enviaba a la memoria para acceder directamente a la posición a leer o escribir.
Registro de datos (RDA): se guarda transitoriamente la información que la CPU debe
enviar por las líneas de datos a MP, o que debe recibir desde MP a través de ellas.
Clasificación de la memoria:
1
NOTACIÓN POLACA INVERSA
Se guardan en una pila. Tipo LIFO (Last in, First Out).
El análisis sintáctico es realizado por un autómata por pila.
Se ejecuta por partes hasta llegar al resultado final.
El acumulador es un registro de la UAL.
Acceso aleatorio:se accede a cualquier dato de la memoria (unidad de información)
mediante un identificador, haciendo que el tiempo de acceso sea independiente del lugar
físico que ocupa la unidad de información en el soporte. No requiere recorrer todos los
datos hasta encontrar el que se necesita, por lo que el tiempo de acceso es muy rápido.
Ejemplo: RAM, ROM, caché, etc.
Acceso secuencial: para acceder a una unidad de información se establece una posición
de referencia, a partir de la cual comienza un rastreo de la unidad de información que
consiste en la lectura de todas las unidades que la preceden, hasta encontrar la deseada. El
tiempo de acceso depende de la distancia entre la posición inicial y la unidad de
información. Ejemplo: cinta magnética.
Acceso asociativo: la búsqueda de la unidad de información implica la comparación de un
grupo de bits de la unidad de información con el contenido de la posición de memoria.
Clasificación según las operaciones que aceptan por cada acceso
Lectura
Lectura/escritura
Clasificación según la duración de la información
Volátiles: pierden su información con el corte de suministro de corriente.
No volátiles (o permanentes): no pierden su información si se corta el suministro de
corriente.
Memoria Ram (random access memory):
Es donde el ordenador guarda los datos que está utilizando en el momento presente. Se
llama de acceso aleatorio porque el procesador accede a la información que está en la
memoria en cualquier punto sin tener que acceder a la información anterior y posterior. Es la
memoria que se actualiza constantemente mientras el ordenador está en uso y que pierde
sus datos cuando el ordenador se apaga (es volátil). Cuando las aplicaciones se ejecutan,
primeramente deben ser cargados en memoria RAM. El procesador entonces efectúa
accesos a dicha memoria para cargar instrucciones y enviar o recoger datos. La diferencia
entre la RAM y otros tipos de almacenamiento como los disquetes o discos duros es que la
RAM es mucho más rápida y se borra al apagar el ordenador.
Memorias de semiconductores con "random access”
2
Clase
Tipos
Caract. de re escritura
Volatilidad
Memoria de lectura
y escritura.
DRAM
SRAM
VRAM
Cada byte direccionado puede ser re-escrito en igual
tiempo que se tarda su lectura, cuantas veces se
necesite.
Volátil.
Memorias para ser
mayormente leído
(Read Mostly
Memory).
EPROM
EEPROM
Flash ROM
Una vez que la memoria fue escrita, se puede reescribir
("reprogramar") un número ilimitado o muy grande de
veces, pero la escritura es lenta comparada con el
tiempo de lectura de un byte.
No volátil.
Memorias para ser
sólo leídas.
PROM
ROM
Una vez que la memoria fue escrita, no se puede
re-escribir
No volátil.
Tipos de memorias RAM
SRAM (Static RAM): consta de 4 o 6 transistores que forman un circuito con
memoria, conocido como flip-flop. Este permanece estáticamente es un estado
eléctrico (0) o en otro estado (1) mientras no se apague la computadora. Al no
utilizar capacitores, no requiere circulación periódica de corrientes en su interior (no
necesita refresco).
DRAM (Dynamic RAM): tienen en cada celda un transistor y un capacitor
microscópico. El capacitor presenta dos estados: cargado guarda un uno, y
descargado un cero, debiéndose reponer la carga eléctrica que pierde cada 10-20
milisegundos (a esto se denomina refresco). Por ello se denomina dinámica.
SDRAM: DRAM sincrónica rápida, que funciona en sincronismo con pulsos
del reloj de la CPU.
DDR (Double Data Rate): variantes más nuevas de las SDRAM. Envía los
datos dos veces por cada ciclo del reloj, o sea que opera al doble de
velocidad del bus del sistema o bus de memoria, sin necesidad de aumentar
la frecuencia del reloj.
TTA = TA + TR
El tiempo total de acceso es igual al tiempo de acceso más el tiempo de refresco. Cuando
no se está refrescando TR vale cero.
DRAM es más lenta ya que de 4 veces que accede refresca 3. SRAM es más rápida ya que
de 4 veces que accede una sola vez refresca.
Una SRAM es más rápida que una DRAM, pero la DRAM es más barata, por eso, ésta
última es la más utilizada en las memorias principales. Las SRAM se usan en memorias
caché.
MEMORIA ROM (Read Only Memory)
Medio de almacenamiento utilizado en ordenadores y dispositivos electrónicos que permite
solo la lectura de la información y no su escritura, independientemente de la presencia o no
3
de una fuente de energía. Estos chips contienen, en su interior, un programa destinado al
arranque inicial de las computadoras y los programas ROM BIOS.
Estas memorias también utilizan el random access, pero son más lentas que las memorias
RAM
Se denomina ROM BIOS (Basic Input Output System), a aquella parte de la ROM que
contiene programas que se ejecutan al prender la computadora, que sirven para:
Verificar el correcto funcionamiento del hardware y su configuración.
Traer del disco a MP (escribir en MP) una copia de programas del sistema operativo
(acción conocida como booteo).
Almacena programas que se usan permanentemente para la transferencia de datos
entre periféricos y memoria.
Tipos de memorias ROM
PROM: se fabrican en serie, pero el interior de cada chip está preparado para que
quien utilice estos chips pueda escribir una sola vez los contenidos que tendrán sus
celdas. Una vez grabada una PROM no puede ser reescrita.
EPROM (Erasable PROM): se puede cambiar el contenido de todas las celdas,
reescribiendo el contenido. Previo a esto, se debe borrar el contenido de todas las
celdas, haciendo pasar luz ultravioleta por una ventanilla transparente que tienen en
su cara posterior durante unos 15 minutos.
EEPROM (Electrically EPROM): no requiere el borrado de todas las celdas con luz
ultravioleta, sino que se puede seleccionar cada dirección que se quiere escribir.
Esto puede hacerse un número limitado de veces (entre 100 mil y 1 millón de veces).
Todo el proceso se hace eléctricamente, de ahí su nombre.
SIMILITUDES Y DIFERENCIAS ENTRE LA RAM Y LA ROM
4
MEMORIA CACHÉ
Las memorias caché o “antimemoria” de un procesador son de tecnología de
semiconductor de tipo estático (SRAM) ubicada
entre la UCP y la memoria principal DRAM que
sirve para simular una memoria principal con un
tiempo de acceso semejante al de la SRAM. La
velocidad de respuesta se ajusta de manera
favorable a los tiempos del procesador (son de
acceso aleatorio y de alta velocidad).
Funciona de una manera similar a como lo hace
la memoria principal (RAM), pero es de menor
tamaño y de acceso más rápido. Es usado por la
unidad central de procesamiento (CPU) para
reducir el tiempo de acceso a datos ubicados en
la memoria principal que se utilizan con más
frecuencia.
Del conjunto de instrucciones de un programa y
los datos a procesar que están en memoria
principal un caché contendrá una copia de las
próximas instrucciones que probablemente
ejecutará la UCP y los datos que éstas ordenan
procesar. Ésta información es mayormente la
que fue accedida una y otra vez. De este modo
la UCP leerá del caché instrucciones y datos
más rápidamente que de la memoria principal sin
necesidad de acceder a ella. Esto último implica
que no existirán pulsos de espera, denominados wait states.
Parte de la información de la memoria principal se duplica en la memoria caché. Comparada
con los registros, la caché es ligeramente más lenta pero de mayor capacidad.
Hay dos tipos diferentes de memoria caché:
L1: La memoria caché L1, que significa caché de nivel 1, es un tipo de memoria
pequeña y rápida que está constituida en la unidad de procesamiento central. A
menudo se refiere como caché o caché interno principal, se utiliza para acceder a
datos importantes y de uso frecuente. La memoria L1 es el tipo más rápido y más
caro de caché que está integrado en el equipo.
L2: El caché L2 o de nivel 2 se utiliza para almacenar la información recientemente
visitada. También conocido como caché secundario, está diseñado para reducir el
tiempo necesario para acceder a los datos en los casos en que los datos ya se han
utilizados previamente. La memoria caché L2 es secundaria a la CPU y es más lenta
que la memoria caché L1, a pesar de ser a menudo mucho más grande. Los datos
solicitados se eliminan de la memoria caché L2 si se trata de un caché exclusivo, y
5
se quedan allí, si se trata de una caché inclusivo. La memoria caché L2 es la más
unificada, lo que significa que se usa para almacenar los datos e instrucciones de
Busca en L
1
Si no encuentra busca en L
2
copia en L
1
Si no encuentra busca MP, y copia L
2
y L
1
Diferencias entre accesos directos e indirectos a memoria:
Cuando llega información que quiere ser almacenada en MP desde los puertos, el
computador pone en proceso el ingreso de estos datos al sistema, dirigiendo primero el bus
de datos hacia los puertos, depositando esta información en algún registro intermedio, para
posteriormente ser llevado a la celda de memoria correspondiente.
Esta operación fusiona, y no deja mucha posibilidad de error, pero al momento de escribir
grandes cantidades de bytes en memoria, o leer muchas celdas y devolver su contenido,
resulta poco eficiente el tiempo que tarda.
Usualmente para este tipo de situaciones, se prefiere ingresar los datos directamente a
memoria o leer directamente las celdas y recuperar esa información, proceso el cual se
logra a través del método conocido como “Acceso directo a memoria”(ADM). Este proceso
necesita de un componente el cual haga de microprocesador o CPU, el cual pueda leer o
escribir directamente en memoria, ya que el propio de la máquina no interviene en la
ADM(la CPU de la máquina). Para esto existe el conocido “controlador de ADM”.
El método de funcionamiento de este último es muy interesante:
Cuando se quiere hacer acceso directo a memoria, primero se pone en funcionamiento el
controlador ADM y se espera que el motor se inicie. Luego la subrutina espera un tiempo fijo
a que el motor alcance una velocidad de giro estipulada. Después, dicha subrutina, se
direcciona y escribe a qué sector y pista se quiere acceder, posteriormente una subrutina de
la BIOS se activa y escribe en los registros del controlador de distintos datos. En él de
cuenta, que cantidad de bytes se van a escribir, y en el de direcciones, cuál va a ser el
primer casillero que se escribirá. Después se direcciona en el disco, sector, cara, entre
6
otros. Entonces se avisa al controlador de ADM que inicie la fase de escritura o
transferencia.
Luego el controlador “le pide prestado” el bus de datos a la CPU, la cual se lo prestará si no
le hace falta en ese momento, y comienza la transferencia y/o escritura de la información en
la celda de memoria indicada en su registro de direcciones. Luego la circuiteria resta 1 al
valor del contador y suma 1 al valor de la dirección.
Hasta que ese contador no llegue a 0, el proceso de escribir mediante el bus de datos, y
restar y sumar 1 en ambos registros se repetirá, ya que eso indica de que quedan casillas
sin cargar.
Una vez llegado a 0 el valor del contador, es el propio controlador ADM manda la instrucción
de final de programa, la cual llega a interfaz y se genera una subrutina para que la CPU
revise que la carga resultó correcta.
Por último se ordena que se detenga el motor.
AIM es controlada por software, por instrucciones.
ADM es controlada por circuiteria, por hardware.
CONTROLADOR ADM
El controlador ADM se encuentra en hexadecimal y utiliza el bus de datos para poder hacer
las transferencias y la memoria caché.
7
A diferencia de un procesador los controladores utilizan menos cantidad de instrucciones.
Necesita tres datos para funcionar:
CHS: Cilindro, cabezal y sector.
Contador.
Registro de direcciones (dirección de memoria, decir, la celda de memoria).
8
U4:
Arquitectura de computadoras: es el diseño conceptual y la estructura operacional
fundamental de un sistema de computadora. Es decir, es un modelo y una descripción
funcional de los requerimientos y las implementaciones de diseño para varias partes de una
computadora, con especial interés en la forma en que la unidad central de proceso (CPU)
trabaja internamente y accede a las direcciones de memoria.
ARQUITECTURA DE VON NEUMANN
Arquitectura de von Neumann: las computadoras con esta arquitectura constan de cinco
partes: La unidad aritmético-lógica (ALU), la unidad de control (UC), la memoria (RAM), un
dispositivos de entrada/salida y los buses (de datos, de instrucciones y de control).
Cualquier trabajo que una computadora realiza siempre es un proceso de datos que tiene la
particularidad de ser automático. En un proceso automático están presentes los cuatro
subprocesos siguientes:
Entrada Memorización Procesamiento Salida
Estos bloques se comunican eléctricamente entre a través de caminos formados por un
conjunto de cables o líneas conductoras que constituyen un bus. El bloque I (en la figura) se
refiere a una interfaz intermediaria, necesaria para adaptar dispositivos.
Se llevan a cabo en los correspondientes bloques:
Periférico de entrada – Memoria principal – Unidad de procesamiento – Periférico de salida
9
Modelo Von Neumann
10
Un disco de la unidad de disco rígido provee un programa, cuyas instrucciones pasarán a
través de los buses hacia la memoria. Los datos llegarán (también a través de buses) a la
memoria, provenientes del teclado.
Luego, dichas instrucciones son ejecutadas una por vez. Mediante un bus, cada una de las
instrucciones llega a un Registro de instrucción (RI) de la CPU (unidad central de
procesamiento o UCP), donde permanece mientras se ejecuta, para que la Unidad de
Control intérprete que operación ordena ella.
A continuación, a través del mismo bus, el dato a operar por dicha instrucción llega desde
memoria a un registro acumulador (AX) del procesador, antes de ser operado en la ALU
(unidad aritmética lógica o UAL), a fin de obtener un resultado. Este puede sustituir en el
registro AX el dato ya operado y luego pasar a memoria.
UNIDAD DE CONTROL (UC)
La UC tiene a su cargo el secuenciamiento de las acciones necesarias que deben realizar
los circuitos involucrados en la ejecución de cada instrucción; según el código de la misma;
y también tiene a su cuidado el orden de ejecución de las instrucciones de un programa,
conforme como este fue establecido.
Secuencia de acciones:
1. Obtener de la memoria la próxima instrucción que corresponde ejecutar.
2. Localizar los datos a operar (en la memoria principal, o en un registro).
3. Ordenarle a la ALU que realice con esos datos la operación indicada.
4. Guardar el resultado en un registro acumulador o en memoria principal.
UNIDAD ARITMÉTICA LÓGICA (ALU / UAL)
La UAL sirve para realizar las operaciones aritméticas (suma, resta, etc.) o lógicas (AND,
OR, NOT, etc.) que le ordena la UC, siendo auxiliada por registros acumuladores para
guardar transitoriamente resultados datos y resultados.
La ALU es pasiva, no puede emitir orden alguna. La ALU no ejecuta instrucciones.
Las instrucciones no deben ser necesariamente operaciones aritméticas lógicas.
UNIDAD CENTRAL DE PROCESO (CPU / UCP)
La CPU es el conjunto formado por:
La Unidad de Control.
La Unidad Aritmética Lógica.
Los registros usados durante la ejecución de cada instrucción (como RI y AX entre
otros).
11
La UCP (o CPU) de una computadora, se encuentra contenida en el chip microprocesador
central.
Realiza instrucciones.
MEMORIA PRINCIPAL (MP)
La MP almacena las instrucciones de programas, que próximamente serán ejecutadas en la
CPU, y los datos que ellas ordenan procesar (operar); así como resultados intermedios y
finales de operaciones sobre datos recientemente llevadas a cabo en la CPU.
Los datos que se procesan y el programa que se ejecuta para ese proceso deben estar en
MP. Cada programa comparte la MP con sus datos, pero las instrucciones están en una
zona y los datos en otra. Esta información queda almacenada temporariamente mientras se
opera con ella, pudiendo ser luego reemplazada por otras instrucciones y datos. También
existen programas que residen en MP en forma permanente, como los del sistema
operativo.
La MP almacena bits en celdas independientes entre sí, que contienen 1 byte (8 bits) de
información. Cada celda se localiza en el conjunto mediante un número binario que la
identifica, que constituye su dirección. Este número no se puede alterar, está establecido
circuitalmente.
Entonces, se puede decir que cada celda de memoria tiene dos números binarios:
Dirección: número fijo que permite acceder a una celda.
Contenido: número de 8 bits que es la información que contiene la celda.
Direccionamiento de memoria: la acción de direccionamiento consiste en colocar en las
líneas de direcciones del bus que llegan a MP, la dirección de la celda a la que se quiere
acceder, para leerla o escribirla.
Tiempo de acceso: es el tiempo que transcurre entre que se direcciona una memoria,
hasta que aparece en sus salidas (conectadas a las líneas de datos del bus) el contenido de
la celda direccionada. Se mide en nanosegundo. (10-9 segundos).
Acceso aleatorio (o random): implica que cualquier posición puede encontrarse en igual
tiempo (para lectura o escritura), sin búsqueda alguna. El tiempo de acceso es el mismo
para cualquier dirección.
Registros: guardan transitoriamente información relacionada con la instrucción en curso de
ejecución, y con las próximas instrucciones a ejecutar.
Registro de direcciones (RDI): se formaba el número binario que era la dirección que se
enviada a la memoria para acceder directamente a la posición a leer o escribir.
Registro de datos (RDA): se guarda transitoriamente la información que la CPU debe enviar
por las líneas de datos a MP, o que debe recibir desde MP a través de ellas.
12
MP = RAM + ROM
Capacidad de memoria: o capacidad de almacenamiento, es la cantidad total de bytes que
puede guardar.
Una memoria con N celdas tendrá una capacidad de N bytes. Dicho número siempre es una
potencia de dos: N = 2k
El byte es la unidad menor, siendo múltiplos el Kilobyte (KB), el Megabyte (MB), el Gigabyte
(GB), el Terabyte (TB), etc. 1024 bytes = 1 KB, y 1024 KB = 1 GB, y así sucesivamente.
Una memoria tiene un número N de celdas que siempre tiene potencia de dos. Al aumentar
en uno el exponente del número dos, se duplica la cantidad de memoria. O sea, si una
memoria tiene el doble de capacidad que otra, los números que forman las direcciones de la
primera deben tener un bit más que los números que forman las direcciones de la segunda.
Ejemplo:
Se tiene una memoria de 8 MB. ¿Cuántos bits tienen las direcciones? 2 10=1024
Si 210 = 1 KB y que 220 = 210 x 2 10 = 1 KB x 1 KB = 1024 x 1024 = 1 MB
1 KB tiene 10, 1 MB necesita 20, 2 MB necesita 21, 4 MB necesita 22 y 8 MB necesita 23 líneas de
dirección. 36
Si no: 2 x = 8 MB, quedando x = log2 (8 MB)
8 MB x 1024 = 8192 KB, entonces 8192 KB x 1024 = 8388608 bytes. Luego x = log2 (8388608) = 23.
Relación microprocesador, palabra de memoria, registros y líneas de datos
Cuando se habla de palabra (word) de memoria o “longitud de palabra”, se hace referencia
a la máxima cantidad de bytes que la CPU puede leer o escribir en cada acceso a MP.
Ello implica que el bus que conecta la CPU y MP debe tener tantas líneas de datos como
bits tenga la longitud de palabra del modelo de computadora que se trate (8, 16, 32 o 64
bits).
Si un procesador está asociado a un bus de direcciones de 32 bits (palabra de 32 bits),
puede acceder potencialmente a 4 giga posiciones (2 32 , de 0 a 232 – 1). Esto significa que
la cantidad de bits de la dirección determina el espacio de direccionamiento máximo al que
se puede acceder en forma directa.
En el ámbito de los microprocesadores se hace mención a procesadores de 8, 16, 32 o 64
bits según sea para indicar el número máximo de bits que puede tener un dato a operar por
la ALU de cada uno.
13
Por ello, los registros de la CPU para datos o resultados deben tener una longitud igual al
tamaño de los datos que opera la ALU.
Se comprende que un procesador de mayor número de bits sea más rápido que otro que
opere con menos ya que en una sola instrucción puede manipular más bits.
Bit de paridad
En un traspaso de datos o envío de información dentro de la memoria principal puede
ocurrir que un interferencia electromagnética (ruido) en una cadena de 8 bits 01000010
puede suceder que un bit invierta su valor 01000110 provocando errores los cuales son
imperceptibles.
Debido a éstas interferencias se propuso agregar un nuevo bit a la cadena conocida como
bit de paridad. Éste revisará que el número de 1 (bits perdidos) se par: si el número de 1
sea par se pondrá en 0 y si no lo es asignará el valor 1 para corregir la paridad.
De ésta forma cuando la cadena es leída tiene un nuevo par de 1, la cadena es aceptada.
De lo contrario el programa se interrumpe y se envía un mensaje de que la información
sufrió un cambio inesperado.
Aclaración: si los bits que contienen son un número par (es decir cambian 2, 4, 6) u los 8
bits, eso no se puede controlar con el bit de paridad, sin embargo ése tipo de errores son
muy inusuales.
Ampliando la capacidad de una memoria de forma que cada posición contiene un bit extra
(o sea 9 bits), puede detectarse si se ha producido un solo error por inversión.
El bit denominado de paridad, que se agrega al byte a almacenar, debe ser siempre de valor
tal que el conjunto de los 9 bits almacenados tenga un número par de unos (paridad par de
unos).
Esto solo sirve si un solo bit cambia de valor. Si los bits errados son dos, manteniendo la
paridad par, no hay forma de detectar una combinación mal recibida.
Operación de entrada: la MP es el destino de instrucciones y datos provenientes del
exterior (que se ingresan con periféricos de entrada).
Operación de salida: la MP es el origen de resultados que deben salir al exterior (a través
de periféricos de salida).
PERIFÉRICOS
Un periférico oficia de “frontera” entre el exterior y el interior de una computadora para la
conversión de señales. Se denominan periféricos porque su posición está vinculada con la
periferia, al mundo exterior en relación con la porción central o interna, constituida por la
CPU y la MP.
14
La UC no gobierna directamente los periféricos mediante líneas que llegan a ellos, sino que
la CPU ejecuta un subprograma preparado para cada periférico, merced al cual desde la
CPU llega a la interfaz del periférico cada comando que ordena a la electrónica de éste que
debe hacer. Estos son los controladores (o drivers).
BUS
Un bus de una computadora es una estructura de interconexión para la comunicación
selectiva entre dos o más módulos de una computadora, a fin de poder transmitir
información entre dos módulos por vez. En un bus encontramos:
Bus de dirección: conducen de CPU a MP cada combinación de unos y ceros que
indica dónde localizar instrucciones o datos en MP. Es unidireccional (CPU MP).
Bus de datos: en cada lectura de MP conducen de ésta hacia la CPU tanto datos a
operar como instrucciones; y en una escritura conducen desde la CPU hacia MP
datos resultantes. Es bidireccional (CPU MP).
Bus de control: para que la CPU de órdenes. Es unidireccional (CPU MP).
15

Este documento contiene más páginas...

Descargar Completo
Teórico ACO 2do parcial.pdf
browser_emoji Estamos procesando este archivo...
browser_emoji Lamentablemente la previsualización de este archivo no está disponible. De todas maneras puedes descargarlo y ver si te es útil.
Descargar
. . . . .