i.s.e.t. (instituto superior de educación técnica) nº 57 · también desde el exterior podemos...

35
I.S.E.T. (Instituto Superior de Educación Técnica) Nº 57 Salta 1880 1º Piso – ROSARIO – Santa Fé - TE: 0341-4250840 UNIDAD 2 Carrera: Técnico Superior en Técnicas Digitales Materia: Introducción a la Computación Curso: Primer Año Año 2012

Upload: dodien

Post on 12-Oct-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

I.S.E.T. (Instituto Superior de Educación Técnica) Nº 57

Salta 1880 1º Piso – ROSARIO – Santa Fé - TE: 0341-4250840

UNIDAD 2

Carrera: Técnico Superior en Técnicas Digitales

Materia: Introducción a la Computación

Curso: Primer Año

Año 2012

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 2 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

INDICE

1.ANATOMIA DE UNA COMPUTADORA DIGITAL ........................................................................................ 3

2.ESQUEMA EN BLOQUE DE UNA COMPUTADORA DIGITAL ................................................................... 4

3.ESTRUCTURA DE LA PC (Personal Computer o Computadora personal) ............................................ 4

3.1. LA FUENTE DE PODER (o de ALIMENTACIÓN) .................................................................................................... 7

3.2. FAN / COOLER o VENTILADORES ......................................................................................................................... 7

3.3. LA PLACA MADRE O MOTHERBOARD .................................................................................................................. 7

3.3.1. EL CHIPSET: ........................................................................................................................................................................... 9 3.3.2. ZÓCALO DEL PROCESADOR O SOCKET: ........................................................................................................................... 9 3.3.3. RANURAS DE MEMORIA: .................................................................................................................................................... 10 3.3.4. BIOS: ..................................................................................................................................................................................... 11 3.3.5. BUSES ................................................................................................................................................................................... 12 3.3.6. ARQUITECTURAS DE BUS .................................................................................................................................................. 13 3.3.7. PUERTOS DECONEXION INTERNOS a UNIDADES DE ALMACENAMIENTO .................................................................. 15 3.3.8. CONECTORES EXTERNOS DE LA PLACA MADRE ........................................................................................................... 15

4.LA UNIDAD CENTRAL DE PROCESOS (o CPU) ...................................................................................... 17

4.1. ESTRUCTURA BASICA DEL MICROPROCESADOR ........................................................................................... 18

4.1.1. EL RELOJ INTERNO DE LA COMPUTADORA .................................................................................................................... 19 4.1.2. UNIDAD ARITMÉTICA LÓGICA (ALU de sus siglas en ingles) ......................................................................................... 19

4.2. LA UNIDAD DE CONTROL (UC) ............................................................................................................................ 20

4.2.1. SECUENCIAMIENTO DE INSTRUCCION ............................................................................................................................. 21 4.2.2. INTERPRETACIÓN DE LAS INSTRUCCIONES ................................................................................................................... 21

4.3. EL COPROCESADOR MATEMÁTICO O NUMÉRICO ........................................................................................... 22

4.4. CLASIFICACIÓN DE LA CPU EN BASE AL MANEJO DE INSTRUCCIONES. .................................................... 23

4.4.1. LOS NUEVOS MICRO DE 64 BIT.......................................................................................................................................... 24

5.MEMORIA INTERNA DE PC........................................................................................................................ 27

5.1. CARACTERÍSTICAS TÉCNICAS ............................................................................................................................ 27

5.2. JERARQUÍA DE MEMORIA .................................................................................................................................... 27

5.3. TIPOS DE MEMORIAS ............................................................................................................................................ 28

5.3.1. MEMORIA DE ACCESO ALEATORIO .................................................................................................................................. 28 5.3.2. MEMORIA DE SÓLO LECTURA ........................................................................................................................................... 34

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 3 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

1. ANATOMIA DE UNA COMPUTADORA DIGITAL En los últimos años, hemos sido testigos del importante crecimiento de la tecnología de cómputo, tan poderosa,

novedosa e influyente, que muchos autores la consideran como una nueva Revolución Industrial. Sus bases se encuentran en la microelectrónica, el electromagnetismo y la óptica.

Una computadora es una máquina para el procesamiento de información. Históricamente, esta información era numérica, y las computadoras fueron máquinas para realizar operaciones aritméticas. A diferencia de las simples calculadoras, que solo pueden realizar una operación aritmética a la vez, las computadoras son capaces de realizar operaciones mediante una lista de instrucciones a ejecutar en una secuencia apropiada, sin mayor intervención humana. A esta secuencia de instrucciones se la conoce con el nombre de programa.

Tal como se ve en la figura, un sistema de cómputo debe interactuar entre dos mundos con lenguajes propios de cada uno. Para realizar una tarea determinada la computadora debe tomar los datos e información desde el mundo exterior por medio de su unidad de entrada, quienes son las encargadas de convertir el lenguaje humano (o de alto nivel) en lenguaje de máquina o de bajo nivel (“0” y “1”) para que puedan ser almacenados, y posteriormente procesados por su circuitería interna, para finalmente presentar los resultados al mundo exterior en la unidad de salida realizando el proceso inverso al de las unidades de entrada, convirtiendo la información binaria en lenguaje entendible por el ser humano.

Una computadora digital almacena su información en forma de palabras, que son conjuntos ordenados y finitos de dígitos binarios o bits. Tales bits son los elementos por los cuales un valor numérico se representa dentro de la computadora. Por consideraciones de simplicidad, confiablidad y economía, las computadoras se diseñan en base a un gran número de circuitos similares, cada uno de los cuales puede encontrarse en uno de dos estados (nivel de tensión bajo o nivel de tensión alto), que usualmente representan a los 0 y 1 lógicos.

Una línea de ocho bits se conoce como byte, y la mayoría de las computadoras tienen su información organizada en palabras de uno, dos, cuatro u ocho bytes (8, 16, 32 o 64 bits).

El número de bits en una palabra se lo conoce como longitud; si la longitud es de “k” bit, entonces el número de palabras de información posibles que se pueden almacenar es 2 a la potencia de “k” (2k). En particular, cuatro bit pueden tener 16 combinaciones diferentes de bits, lo que hace la representación binaria de los números del cero al quince.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 4 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

2. ESQUEMA EN BLOQUE DE UNA COMPUTADORA DIGITAL

Los bloques que llevan a cabo las tereas de cómputo son:

• UNIDADES DE ENTRADA

: Teclado, Mouse, micrófono, scaner, etc. Son el nexo entre el lenguaje humano y el de máquina, permitiendo el ingreso de datos e instrucciones al computador.

• BUS del SISTEMA

: Vías de comunicación interna que permiten el movimiento de información entre las distintas partes del computador, y la comunicación con los dispositivos de Entrada / Salida.

• UNIDAD CENTRAL DE

PROCESOS (o CPU de sus siglas en ingles)

: Circuito electrónico donde se procesan los datos e información, realizando operaciones, aritméticas y lógicas.

• UNIDAD DE MEMORIA

: Circuito electrónico donde son almacenados los datos a ser procesados y los resultados obtenidos (memoria de trabajo - muy rápidas)

• ALMACENAMIENTO SECUNDARIO

: Dispositivos con capacidad de almacenar grandes cantidades de información (datos y programas), por lo general electromecánicos que guardan la información en modo magnético u óptico (memorias muy lentas).

• UNIDAD DE SALIDA : Pantallas, impresora, graficadores, parlantes, etc. Cumplen la función inversa a los dispositivos de entrada, mostrando y representando los resultados obtenidos de los procesos llevados a cabo en el interior de la computadora.

3. ESTRUCTURA DE LA PC (Personal Computer o Computadora personal)

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 5 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Vista externamente una PC (del tipo de escritorio), se reconocen básicamente los periféricos de entrada y salida, y el gabinete de la unidad central de procesos (CPU).

Los periféricos (llamados así simplemente por encontrarse en las periferias de la CPU o del gabinete), son dispositivos que le permiten al computador comunicarse con el exterior o ampliar sus capacidades y en muchos casos conferirle características particulares, ya que pueden variar la prestación sin necesidad de reemplazar a la CPU, y su elección dependerá de la finalidad o aplicación de la PC, o de nuestro presupuesto. Si bien la lista de periféricos y sus aplicaciones pueden ser interminables ante las distintas combinaciones de estos, podemos citar algunos ejemplos:

• Para una PC que se utiliza en la caja de un supermercado, como dispositivo de entrada principal será necesario que cuente con un lector de código de barra y como auxiliar a este un teclado alfanumérico.

• En una PC destinada al diseño gráfico, es recomendable invertir en una buena placa de video con un monitor de muy buena calidad y de gran tamaño.

• Si nuestro gusto es disfrutar del buen sonido, podemos dotar a nuestra PC de una mejor placa de sonido conectada a un par de parlantes o bafles de buena calidad.

El gabinete de la CPU es necesario en todo computador, ya que en su interior encontraremos instalados los componentes principales de nuestra computadora. También desde el exterior podemos observar un gran número de conectores de diferentes formas, tamaño y cantidad de contactos que nos van a permitir la conexión de nuestro procesador central con los distintos periféricos.

Cuando destapamos el gabinete de nuestra PC podemos ver en su interior y conectados por una maraña de cables, los componentes que hacen funcionar nuestra computadora siendo los principales:

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 6 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 7 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

2.1. LA FUENTE DE PODER (o de ALIMENTACIÓN)

Los gabinetes (o carcasas) cuentan con una fuente de alimentación que provee de distintos niveles de corriente eléctrica para los distintos componentes del equipo.

La mayoría de las fuentes de alimentación son fabricadas para ser usadas en distintos países con diferentes tensiones de la red eléctrica, por ejemplo en Estados Unidos y algunos estados de Brasil la red eléctrica es de 110 V a 60 Hz, mientras que en nuestro país y Europa es de 220 V 50 Hz, por esta razón la mayoría de las fuentes de alimentación cuentan con un interruptor que permite seleccionar el voltaje correspondiente.

Es muy importante asegurarse de que el interruptor se encuentre en la posición correcta del voltaje adecuado antes de conectarlo a la red eléctrica para que no haya riesgos de que se deterioren los componentes del CPU.

Las tensiones que proporciona la fuente de alimentación son de +12 V, +5 V y +3,3 V de corriente continua. El primero se utiliza para poner en funcionamiento los componentes electromecánicos de la computadora (fan, los motores de los discos rígidos, de las disqueteras, etc.). Los +5 V y +3,3 V se utiliza para alimentar a los distintos componentes electrónicos (el microprocesador, la memoria, el reloj, etc.) y las distintas tarjetas de periféricos (modem/fax, placa de sonido, etc.).

Al elegir una fuente de alimentación se debe tener en cuenta la potencia eléctrica requerida por nuestro equipo y los distintos dispositivos que deben ser conectados a la misma. Una fuente entre 450 W (wats) y 600 W puede ser suficiente para la mayoría de los equipos hogareños. Es importante verificar el consumo de corriente de los distintos componentes conectados al equipo, más una reserva entre el 30 y el 50% para elegir la fuente de alimentación más adecuada, ya que si la potencia de la fuente es inferior, esta se calentará demasiado y puede reducirse su vida útil. Si por el contrario utilizamos una fuente de alimentación con una potencia muy superior al necesario, su rendimiento será inadecuado.

En caso de que se abra el gabinete de la unidad central del sistema, es muy importante no manipular la fuente de alimentación; hay que tener en cuenta que si el sistema informático está enchufado y encendido, la fuente de alimentación es potencialmente peligrosa. Si se está intentando realizar alguna operación dentro de la caja de la unidad, deben manipularse cuidadosamente los cables que entran y salen de la caja de la fuente de alimentación y bajo ningún concepto que personas inexpertas intenten abrirla.

2.2. FAN / COOLER o VENTILADORES

Estos componentes si bien no revisten mayor complejidad en su funcionamiento, juegan un papel muy importante en el rendimiento y vida útil de nuestra computadora, haciendo que la temperatura en el interior del gabinete se mantengan dentro de valores no perjudiciales para el funcionamiento de los circuitos electrónicos.

Sobre el microprocesador y en algún otro componente que trabaje a frecuencias altas (cuanto mayor es la frecuencia de trabajo de un circuito electrónico mayor será la temperatura sobre estos) se los puede ver asociado a un bloque de aluminio aleteado, para mejorar la disipación de potencia

FAN/COOLER (o Ventilador) Disipadores FAN + Disipador

2.3. LA PLACA MADRE O MOTHERBOARD

La motherboard o placa madre, es una tarjeta (placa de circuitos impreso) en donde se ubican los componentes de una computadora. Contiene entre otros, el zócalo del microprocesador, buses, zócalos para las memorias, placa

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 8 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

de video, conectores para las unidades de almacenamiento masivo, etc., que son fundamentales para el funcionamiento de la PC. Las mismas son diseñadas de tal forma que las placas que se conectan con el mundo exterior sean circuitos adicionales y no estén integrados (es decir, que no se encuentren en la misma motherboard). Estas tarjetas se adicionan conectándolas en las ranuras de expansión del tipo ISA, PCI, SCSI y AGP, entre otros. En ellos se pueden insertar tarjetas de expansión, como las de red, vídeo, audio u otras, y le confiere a la PC la característica de poseer una arquitectura abierta, es decir una arquitectura adaptable que permita la renovación y la innovación en materia de periféricos.

La arquitectura abierta tiene como ventaja principal el poder agregar o reemplazar estas placas adicionales, y no todo el motherboard, en el caso de querer mejorar las posibilidades de la computadora o en caso de avería de una de las mismas.

Actualmente existen motherboards (on-board) que poseen algunas de estas placas ya integradas (las más utilizadas: placa de sonido, de video, de red y modem). De esta manera se reducen los costos y de ser necesario que alguna de ellas tenga características superiores podrán adicionarse sin inconvenientes anulándose la instalada en la placa on-board correspondiente.

En la arquitectura de las motherboard existen una serie de circuitos y conectores, para entrada y salida de vídeo, de sonido, conectores USB, puertos COM, LPT y conectores PS/2 para ratón y teclado, entre los más importantes.

Físicamente, se trata de una placa de material sintético, sobre la cual se traza un circuito eléctrico que conecta a los diversos componentes que se encuentran insertados o montados sobre la misma placa, siendo los principales:

� Microprocesador o Procesador: (CPU – Unidad de Procesamiento Central) el cerebro del computador montado sobre una pieza llamada zócalo o slot

� Memoria principal temporal: (RAM – Memoria de acceso aleatorio) montados sobre las ranuras de memoria llamados bancos de memoria.

� Las ranuras de expansión: o slots donde se conectan las demás tarjetas que utilizará el computador como por ejemplo la tarjeta de video, sonido, modem, red, etc.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 9 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

� Chips: como puede ser la BIOS, los Chipsets o controladores. Todos los motherboard tienen una misma estructura, es decir, están diagramados de la misma manera. Solo

varían en cuanto al tipo y la forma de interconexión entre las distintas secciones del montaje (más que nada en el aspecto de rendimiento). A estas interconexiones se las denomina "puentes", y son un juego de chips o circuitos integrados llamados chipset, que conectan al procesador con todos los dispositivos necesarios para que pueda comunicarse con los elementos que lo rodean.

2.3.1. EL CHIPSET:

Está compuesto por dos circuitos integrados llamados puentes (o bridges):El puente norte (o northbridge) que se encarga de comunicar el procesador y el bus AGP, el bus de memoria RAM y el puente sur (o southbridge). Por su parte el puente sur se ocupa de conectar los dispositivos del bus PCI, PCI express, IDE, serial ATA, puertos USB, puertos PS2 y todo dispositivo de entrada/salida que se conecte al motherboard. Cada chipset tiene capacidades y cualidades bien definidas en las especificaciones y funciona con distinto tipo de hardware (microprocesadores, memorias, etc.), pero todos comparten idéntica distribución y función. El chipset es una pieza clave en el desempeño de una PC, ya que si el procesador y la memoria, por ejemplo, son muy rápidos para cumplir sus tareas, pero la comunicación entre ellos no lo es, el rendimiento general caerá. Es importante conocer la función del chipset y diferenciarlos entre si, a la hora de analizar una falla de funcionamiento en nuestro PC, ya que esto nos permitirá acotar el sector con problemas.

En la motherboard también encontramos una serie de conectores y zócalos de formas y tamaños distintos que permiten la conexión con los demás dispositivos internos y externos al gabinete de nuestra unidad de procesos.

2.3.2. ZÓCALO DEL PROCESADOR O SOCKET:

Es el receptáculo donde se instalará el microprocesador o procesador y cuenta una serie de contactos para vincular a la motherboard con este circuito integrado. La cantidad y disposición de contactos dependerá de que tipo de procesador soporte la motherboard y pueden ser del tipo PGA o ZIP.

PGA (Pin Grid Array - Matriz de Rejilla de Contacto): Es un conector que tiene orificios muy pequeños en donde encajan los pines del microprocesador colocándolo con cierta presión.

ZIF (Zero Insertion Force – Cero fuerza de inserción): Eléctricamente es como un conector PGA, la diferencia es que posee un sistema mecánico que permite introducir el chip sin necesidad de presión alguna, eliminando la posibilidad de dañarlo, tanto al introducirlo como al extraerlo.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 10 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Surgió en la época del microprocesador 486 y sus distintas versiones (Socket's 3, 5 y 7, correponden a la 5ta generación de Socket’s) se han utilizado hasta que apareció el Pentium II.

socket 370 / 370S para instalar microprocesadores de la familia Intel Celeron hasta de 1.2 GHz. (6ta generación)

socket 478 para instalar microprocesadores de la familia Intel Pentium IV hasta de 3.0 GHz. (7ma generación)

socket A/462 para instalar microprocesadores de la familia AMD hasta de 2.6 GHz. (7ma generación)

En la actualidad encontramos socket de 8va generación, por ejemplo:

Nombre: Socket 775 o T Pines: 775 bolas FC-LGA Voltajes: VID VRM (0.8 - 1.55 V) Bus: 133x4, 200x4, 266x4 MHz Multiplicadores: 13.0x - 22.0x Micros soportados: Celeron D (Prescott, 326/2'533 a 355/3'333 GHz, FSB533) Celeron D (Cedar Mill, 352/3'2 a 356/3'333 GHZ, FSB533) Pentium 4 (Smithfield, 805/2'666 GHZ, FSB 533) Pentium 4 (Prescott, 505/2,666 a 571/3,8 GHZ, FSB 533/800) Pentium 4 (Prescott 2M, 630/3'0 a 672/3,8 GHZ, FSB 533/800) Pentium 4 (Cedar Mill, 631/3'0 a 661/3'6 GHz, FSB 800) Pentium D (Presler, 915/2'8 a 960/3'6 GHZ, FSB 800) Intel Pentium Extreme (Smithfield, 840, 3'2 GHz) Pentium 4 Extreme (Gallatin, 3'4 - 3'46 GHz) Pentium 4 Extreme (Prescott, 3.73 GHz) Intel Pentium Extreme (Presler, 965/3073 GHz) Core 2 Duo (Allendale, E6300/1'866 a E6400/2133 GHz, FSB 1066) Core 2 Duro (Conroe, E6600/2'4 a E6700/2'666 GHz, FSB 1066) Core 2 Extreme (Conroe XE, X6800EE/2'933 GHZ) Notas: los núcleos Presler, Allendale y Conroe son dobles (doble core).

Nombre: Socket 939 Pines: 939 ZIF Voltajes: VID VRM (1.3 - 1.5 V) Bus: 200x5 MHz Multiplicadores: 9.0x - 15.0x Micros soportados: Athlon 64 (Victoria, 2GHz+) Athlon 64 (Venice, 3000+ a 3800+) Athlon 64 (Newcastle, 2800+ a 3800+) Athlon 64 (Sledgehammer, 4000+, FX-53 y FX-55) Athlon 64 (San Diego, 3700+. FX-55 y FX-57) Athlon 64 (San Diego) Athlon 64 (Winchester 3000+ a ???) Athlon 64 X2 (Manchester, 3800+ a 4600+) Athlon 64 X2 (Toledo, 4400+ a 5000+ y FX-60) Athlon 64 X2 (Kimono) Opteron (Venus, 144-154) Opteron (Denmark, 165-185) Sempron (Palermo, 3000+ a 3500+) Notas: los núcleos X2 Manchester, Toledo y Denmark son dobles (doble core).

Nombre: Socket AM2 Pines: 940 ZIF Voltajes: VID VRM (1.2 - 1.4 V) Bus: 200x5 MHz Multiplicadores: 8.0x - 14.0x Micros soportados: Athlon 64 (Orleans, 3200+ a 3800+) Athlon 64 X2 (Windsor, 3600+ a 5200+, FX-62) Opteron (Santa Ana, 1210 a 1216) Sempron64 (Manila, 2800+ a 3600+) Notas: - Los núcleos Windsor y Santa Ana son dobles (doble core). - Los Windsor traen entre 256 y 1024 Kb de caché, comparar modelos

2.3.3. RANURAS DE MEMORIA:

Son los conectores donde se inserta la memoria principal de la PC, llamada RAM y por lo general vienen dispuestos en bancos (más de una ranura).

Estos conectores han ido variando en tamaño, capacidad y forma de conectarse, este proceso ha seguido escalando hasta llegar a los actuales módulos DDR2 de 240 contactos. Los zócalos o ranuras de memoria define el tipo de memoria que podemos utilizar en nuestra placa madre (motherboard).

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 11 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Receptáculos para Memoria RAM (DIMM de 184 pin)

En el siguiente gráfico se pueden observar distintos tipos de memorias RAM, las cuales pueden ser instaladas solo en las ranuras de memorias correspondientes a cada una, cabe aclara que las motherboard solo traen conectores para un solo tipo de memoria, por ejemplo si nuestra placa madre tiene conectores para memorias DDR DIMM de 184 contactos, no podremos instalar en ella una DDR-2 DIMM de 240 contactos. Para evitar esto, los distintos tipos de memoria cuentan con ranuras o muescas que impiden la inserción en otros zócalos.

2.3.4. BIOS:

Es un pequeño programa, que se carga en una ROM (Read-Only Memory o Memoria de sólo lectura, que es un tipo de memoria que no puede modificarse) o en EEPROM (Electrically-Erasable Programmable Read-Only Memory o Memoria de sólo lectura programable y que puede borrarse eléctricamente). De esta última proviene el término flashear, que designa la acción de modificar el EEPROM. En estas memorias se alojan las rutinas necesarias para controlar el hardware y gestionar las operaciones basicas de entrada y salida de datos, de ahí su nombre BIOS, (Basic Input/Output System o Sistema básico de entrada/salida).

Es muy recomendable que el BIOS se pueda actualizar por software, es decir tipo Flash, y que sea lo más reciente posible. Con respecto al programa de Setup del BIOS, es conveniente que cuente con el mayor número de funciones de configuración automática posible (detectado de unidades IDE y de sus parámetros, ajuste automático de velocidades de acceso a RAM y a caché, etc), o por otro lado, podemos desear un mayor control de sus parámetros para ajustar al máximo el rendimiento de nuestra computadora. Una buena BIOS debe permitir arrancar el ordenador desde varios formatos, como un disquete, un disco duro IDE o SCSI, un CD-ROM, Pendriver, etc. Igualmente, conviene que las funciones automáticas de Plug and Play puedan configurarse manualmente (asignar

Trabas de sujeción del modulo de memoria

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 12 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

IRQ y canales DMA para evitar posibles conflictos). Nos debe permitir además poder desactivar por Setup los puertos serie y paralelo, o poder modificar sus direcciones de I/0 e IRQ para solucionar problemas al instalar nuevos dispositivos. Dado que la mayoría de los BIOS tienen un programa de configuración que permite modificar la configuración básica del sistema. Este tipo de información se almacena en una memoria auto-alimentada (por medio de una batería), para que la información permanezca almacenada incluso si el ordenador se encuentra apagado (ya que la memoria RAM se borra cada vez que se apaga el sistema).

Hay distintos fabricantes de BIOS, los más conocidos son Award y AMI. Algunas opciones que encontramos en estas BIOS son diferentes. Por ejemplo, ambas tienen la posibilidad de obtener los parámetros de los discos duros instalados, pero sin embargo, la de Award no tiene la posibilidad de formatearlos (sólo a bajo nivel) mientras que la BIOS de AMI sí. La de AMI da la posibilidad de utilizar el ratón, mientras que la de Award no.

Otra función importante que cumple el BIOS es cuando se enciende o se restablece un sistema informático. Mediante una programa llamado POST (Power-On Self Test o Prueba automática en el encendido), el BIOS realiza un inventario del hardware conectado al ordenador y efectúa un diagnóstico para comprobar que el equipo funciona correctamente.

• Efectuar una prueba del procesador (CPU) • Verificar el BIOS • Verificar la configuración del CMOS • Inicializar el temporizador (reloj interno) • Inicializar el controlador de DMA • Verificar la memoria RAM y la memoria caché • Instalar todas las funciones del BIOS • Verificar todas las configuraciones (como por ejemplo teclado, unidades de disco y discos rígidos)

Si en algún momento el POST encuentra un error, intentará continuar con el inicio del ordenador. Sin embargo, si el error es serio, el BIOS detendrá la carga del sistema y:

• de ser posible, mostrará un mensaje en la pantalla (porque el dispositivo puede no haber sido inicializado o puede presentar fallas);

• emitirá una secuencia de sonidos que permite diagnosticar el origen del error; • enviará un código (denominado código POST) al puerto serial del ordenador, que puede recuperarse a través

de hardware especial de diagnósticos.

Si no hay problemas, el BIOS emitirá un sonido corto para informar que no hay errores.

2.3.5. BUSES

El Bus es la vía a través de la que se van a transmitir y recibir todas las comunicaciones, tanto internas como externas, del sistema informático.

El bus es solamente un dispositivo de transferencia de información entre los componentes conectados a él, no almacena información alguna en ningún momento.

Los datos, en forma de señal eléctrica, sólo permanecen en el bus el tiempo que necesitan en recorrer la distancia entre los dos componentes implicados en la transferencia.

En una unidad central de sistema típica el bus se subdivide en tres buses o grupos de líneas.

- Bus de Direcciones. - Bus de Datos. - Bus de Control.

� BUS DE DIRECCIONES

Es un canal de comunicaciones constituido por líneas que apuntan a la dirección de memoria que ocupa o va a ocupar la información a tratar.

Una vez direccionada la posición, la información almacenada en la memoria hasta ese momento, pasará a la CPU a través del bus de datos.

Para determinar la cantidad de memoria directamente accesible por la CPU, hay que tener en cuenta el número de líneas que integran el bus de direcciones, ya que cuanto mayor sea el número de líneas, mayor será la cantidad de direcciones y, por tanto, de memoria a manejar por el sistema informático.

� BUS DE DATOS

El bus de datos es el medio por el que se transmiten las instrucciones o datos apuntados por el bus de direcciones.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 13 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Es usado para realizar el intercambio de instrucciones y datos tanto internamente, entre los diferentes componentes del sistema informático, como externamente, entre el sistema informático y los diferentes subsistemas periféricos que se encuentran en el exterior.

Una de las características principales de una computadora es el número de bits que puede transferir el bus de datos (16, 32, 64, etc.). Cuanto mayor sea este número, mayor será la cantidad de información que se puede manejar al mismo tiempo.

� BUS DE CONTROL

Es un número variable de líneas a través de las que se controlan las unidades complementarias.

El número de líneas de control dependerá directamente de la cantidad que pueda soportar el tipo de CPU utilizada y de su capacidad de direccionamiento de información.

2.3.6. ARQUITECTURAS DE BUS

Dependiendo del diseño y la tecnología que se utilice para construir el bus de una microcomputadora se pueden distinguir:

- Arquitectura ISA. - Arquitectura EISA. - Arquitectura MCA. - Arquitectura VESA. - Arquitectura PCI.

� Bus ISA (XT - AT)

La Arquitectura ISA (Industry Standard Architecture en inglés) de 8 bits, es la arquitectura con que se construyó el bus de los microcomputadores Intel 8086 y 8088, IBM PC XT de los años 80. Esta arquitectura se adoptó por todos los fabricantes de microcomputadoras compatibles y, en general, está basada en el modelo de tres buses. Su tecnología es antigua, ya que se diseñó a principios de la década de los 80, lo que provoca una gran lentitud funcionaba a 4,77 Mhz , la velocidad del procesador Intel 8088 . Físicamente el slot XT es un conector de tarjeta de 62 contactos (31 por cara) y 8,5 cms.. El AT llega a un máximo de 16 bits con 16 Mbyte/seg., añade un segundo conector de 36 contactos (18 contactos por cara).

• Conector ISA de 8 bits:

• Conector ISA de 16 bits:

� Bus EISA.

La Arquitectura EISA (Extended Industry Standard Architecture en inglés) surge como una mejora del estándar ISA por parte de un grupo de empresas fabricantes de microcomputadoras compatibles. La velocidad del bus aumenta, así como la posibilidad de manejo de datos, llegándose a los 32 bits en paralelo; asimismo posee auto instalación y control de bus. La unión del aumento de la velocidad interna del bus y los 32 bits trabajando en paralelo permite a esta arquitectura una capacidad de manejo y transferencia de datos desconocida hasta ese momento, pudiendo llegar hasta los 33 megabytes por segundo.

La gran ventaja de la arquitectura EISA es que es totalmente compatible con ISA, esto es, una tarjeta de expansión ISA funciona si se la inserta en una ranura EISA. Evidentemente, no va a poder utilizar totalmente la potencia, y funcionará a menor velocidad.

� Bus MCA.

La Arquitectura MCA (MicroChannel Architecture en inglés) tuvo su origen con la intención de superar las limitaciones del bus ISA. Funciona a 10 Mhz de reloj y su principal desventaja es la incompatibilidad de la tarjeta con

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 14 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

las anteriores tecnologias.

El MCA no es compatible, ni en su diseño ni en las señales de control, con la tecnología de bus tradicional, si bien su misión de transferencia de direcciones de memoria y datos es similar en ambos casos.

� Bus VESA.

El bus VESA (Video Electronics Standards Association, la compañía que lo diseñó) es un tipo de bus de datos para ordenadores personales, utilizado sobre todo en equipos diseñados para el procesador Intel 80486. Permite conectar directamente la tarjeta gráfica al procesador.

Este bus es compatible con el bus ISA pero mejora la respuesta gráfica, solucionando el problema de la insuficiencia de flujo de datos de su predecesor.

� Bus PCI.

El bus PCI (Peripheral Component Interconnect / Interconexión de Componentes Periféricos) consiste de bus estándar para conectar dispositivos periféricos directamente a su placa base. Permite una configuración dinámica de un dispositivo periférico

Las especificaciones más comunes utilizadas son:

• Reloj de 33,33 Mhz con transferencias síncronas • Ancho de bus de 32 ó 64 bits • Tasa de transferencia máx de 133 MB por segundo en el bus de 32 bits (33,33 MHz × 32 bits ÷ 8 bits/byte = 133

MB/s) • Tasa de transferencia máxima de 266 MB/s en el bus de 64 bits. • Espacio de dirección de 32 bits (4 GB) • Espacio de puertos I/O de 32 bits (actualmente depreciado) • 256 bytes de espacio de configuración. • 3,3V ó 5 V, dependiendo del dispositivo

� Bus AGP

El AGP (Accelerated Graphics Port ) es de 32 bit como PCI pero cuenta con notables diferencias como 8 canales más adicionales para acceso a la memoria RAM. Además puede acceder directamente a esta a través del puente norte pudiendo emular así memoria de vídeo en la RAM. La velocidad del bus es de 66 MHz.

El bus AGP cuenta con diferentes modos de funcionamiento.

AGP 1X: velocidad 66 MHz con una tasa de transferencia de 266 MB/s y funcionando a un voltaje de 3,3V.

AGP 2X: velocidad 133 MHz con una tasa de transferencia de 532 MB/s y funcionando a un voltaje de 3,3V.

AGP 4X: velocidad 266 MHz con una tasa de transferencia de 1 GB/s y funcionando a un voltaje de 3,3 o 1,5V para adaptarse a los diseños de las tarjetas gráficas.

AGP 8X: velocidad 533 MHz con una tasa de transferencia de 2 GB/s y funcionando a un voltaje de 0,7V o 1,5V.

Estas tasas de transferencias se consiguen aprovechando los ciclos de reloj del bus mediante un multiplicador pero sin modificarlos físicamente..

El puerto AGP se utiliza exclusivamente para conectar tarjetas gráficas, y debido a su arquitectura sólo puede haber una ranura. Dicha ranura mide unos 8 cm y se encuentra a un lado de las ranuras PCI.

� Bus PCI Express,

Desde el año 2004 y siendo desarrollado por fabricantes como ATI, nVidia, Matrox, etc. Es una evolución del PCI y del AGP que nació con una tasa de transferencia inicial de 2,5 Gbytes/segundo pudiendo llegar a los 16 Gbytes/segundo. Esto deja bastante atrás al Bus AGP 8x y sus 2,1 Gbytes/segundo.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 15 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

2.3.7. PUERTOS DE CONEXION INTERNOS a UNIDADES DE ALMACENAMIENTO

*CONECTORES IDE: (del tipo Parallel ATA): hay uno primario y otro secundario. En cada uno pueden conectarse hasta dos dispositivos en cadena, uno máster (maestro) y el otro Slave (esclavo). Esta configuración se ajusta en los dispositivos por medio de jumpers (puentes). Los conectores IDE tienen 40 contactos distribuidos en dos hileras, y funcionan de acuerdo con las capacidades del chipset, de la placa

controladora del disco duro y del tipo de cable usado para conectarlas. Trabajan con un nivel de señal de hasta 5V, para lo cual tienen dos tipos de cable: uno de 40 hilos y otro mallado de 80 hilos. Las velocidades posibles de transferencia de datos van desde el modo PIO (primary Imput Output) 0 a 4 (no más de 16Mb/s), DMA (Direct Memory Access) 1 y 2 (multiword, a 33Mb/s), ultra-DMA 4 (o 33) a 33Mb/s, Ultra-DMA 5 (o 66) a 66Mb/s, Ultra-DMA 6 (o 100) a 100Mb/s y Ultra-DMA 7 (o 133), a 133Mb/s. los modos de más de 33Mb/s se alcanzan utilizando el cable de 80 hilos mallado; de no ser así, generan errores, con pérdida de datos e inestabilidad en el sistema. Los cables de datos PATA no pueden exceder los 45 centímetros de longitud, y debemos asegurarnos de que sus conectores estén en buenas condiciones, ya que es normal que, al quitarlos, éstos se rompan o se suelten. Si bien este es un componente que parecía no producir fallas, de hecho, las genera.

*CONECTOR DE FLOPPY (Disquetera): este cable tiende a desaparecer, ya que las unidades de baja capacidad que maneja dejaron de ser prácticas. Tiene 34 conectores (a diferencia de los 40 del canal IDE PATA), y en él pueden colocarse hasta dos unidades floppy. El ajuste de posición (A o B, la primera unidad y segunda) lo da el cable, ya que, dependiendo del conector, el cable está cruzado en una sección (indicando que es el conector de la primera unidad). Las fallas aquí hacen que las unidades no se reporten (dan error en el POST) o que no se activen al momento de utilizarlas (el equipo queda congelado durante unos instantes). Cabe destacar que cualquier problema en los conectores de las unidades suelen impedir que éstas sean detectadas por el sistema.

*CONCTORES SATA (Serial ATA): a diferencia de su antecesor, este tipo de cableado utiliza tensiones mucho menores (0,25V), menor cantidad de hilos (sólo 7 y mallados), mayor longitud permitida (1 metro) y es de tipo punto a punto (una sola unidad por cable). Las velocidades de trabajo van de 150Mb/s (SATA I) a 300Mb/s (SATA II), y está previsto elevarlas aún más. Al ser pequeños, tienden a desconectarse fácilmente, por lo que es importante que sean de buena calidad y asegurarse de no doblar el cable en exceso (al igual que los IDE). La falla más común es que los conectores se aflojen y, entonces, dejen de reportar al disco, lo cual provoca la pérdida de datos. A su vez, son más delicados, de modo que no hay que ejercer presión en exceso o tironear de ellos demasiado, ya que tanto los conectores como el cable se rompen con facilidad.

2.3.8. CONECTORES EXTERNOS DE LA PLACA MADRE

- Puerto Paralelo, o transmisión de datos paralelo, consiste en enviar datos en forma simultánea por varios canales (hilos). Los puertos paralelos en los PC pueden utilizarse para enviar 8 bits (un octeto) simultáneamente por 8 hilos.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 16 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Los primeros puertos paralelos bidireccionales permitían una velocidad de 2,4 Mb/s. Sin embargo, los puertos paralelos mejorados han logrado alcanzar velocidades mayores:

• El EPP (puerto paralelo mejorado) alcanza velocidades de 8 a 16 Mbps. • El ECP (puerto de capacidad mejorada), desarrollado por Hewlett Packard y Microsoft. Posee las mismas

características del EPP con el agregado de un dispositivo Plug and Play que permite que el equipo reconozca los periféricos conectados.

Los puertos paralelos, al igual que los seriales, se encuentran integrados a la placa madre. Los conectores DB25 permiten la conexión con un elemento exterior (por ejemplo, una impresora).

- Puerto Serie, Los puertos seriales (también llamados RS-232, por el nombre del estándar al que hacen referencia) fueron las primeras interfaces que permitieron que los equipos intercambien información con el "mundo exterior". El término serial se refiere a los datos enviados mediante un solo hilo: los bits se envían uno detrás del otro.

Originalmente, los puertos seriales sólo podían enviar datos, no recibir, por lo que se desarrollaron puertos bidireccionales (que son los que se encuentran en los equipos actuales). Por lo tanto, los puertos seriales bidireccionales necesitan dos hilos para que la comunicación pueda efectuarse.

La comunicación serial se lleva a cabo asincrónicamente, es decir que no es necesaria una señal (o reloj) de sincronización: los datos pueden enviarse en intervalos aleatorios. A su vez, el periférico debe poder distinguir los caracteres (un carácter tiene 8 bits de longitud) entre la sucesión de bits que se está enviando. Ésta es la razón por la cual en este tipo de transmisión, cada carácter se encuentra precedido por un bit de ARRANQUE y seguido por un bit de PARADA. Estos bits de control, necesarios para la transmisión serial, desperdician un 20% del ancho de banda (cada 10 bits enviados, 8 se utilizan para cifrar el carácter y 2 para la recepción). Los puertos seriales, por lo general, están integrados a la placa madre, motivo por el cual los conectores que se hallan detrás de la carcasa y se encuentran conectados a la placa madre mediante un cable, pueden utilizarse para conectar un elemento exterior. Generalmente, los conectores seriales tienen 9 ó 25 clavijas y tienen la siguiente forma (conectores DB9 y DB25 respectivamente):

DB 9

DB 25

Un PC posee normalmente entre uno y cuatro puertos seriales.

- Puerto PS/2, es un tipo de puerto desarrollado por IBM para conectar un ratón o teclado a una computadora PC. El puerto PS/2 soporta un conector tipo mini DIN de 6 pines. La mayoría de computadoras PC tienen un

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 17 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

puerto PS/2, por lo cual el puerto serial estándar puede utilizarse para conectar otro aparato, tal como un modem.

- USB, siglas de Universal Serie Bus (Puerto serie universal). Es un estándar de conexión de dispositivos externos (impresoras, webcam, etc.) al ordenador. En teoría se pueden conectar hasta 127 dispositivos distintos en cadena, se dice que en teoría porque en la práctica estamos limitados por la longitud máxima del cable USB que es de 5 metros. Permite la conexión "en caliente" (con el ordenador encendido). Existen dos versiones de este estándar:

* USB 1.0/1.1, ofrece una velocidad de transferencia de datos desde 1,5 Mbits/segundo hasta 12 Mbits/segundo.

* USB 2.0, permite llegar hasta los 480 Megabits/segundo.

- Puerto SCSI (Small Computer System Interface Port), es un puerto para conectar aparatos adicionales principalmente en servidores o computadoras PC utilizadas para editar audio o video, actualmente se usa para conectar discos duros muy rápidos y confiables.

- IEEE 1394 o Firewire (Apple) o i-Link (Sony), Bus de conexión de periféricos (Cámaras de video digitales, etc) de gran velocidad (hasta 400 Mbits/segundo). Se pueden conectar teóricamente hasta 63 dispositivos en cadena, estando limitados por la longitud máxima del cable que es de 4,5 metros. Permite la conexión "en caliente" (con el ordenador encendido).

Desde el 2003 existe una nueva revisión de firewire capaz de transmitir hasta 800 Mbites/segundo para los ordenadores de Apple.

3. LA UNIDAD CENTRAL DE PROCESOS (o CPU) La CPU(Central Procesing Unit) es la parte inteligente del sistema, también conocido simplemente como el

Microprocesador (µp). Interpreta las instrucciones del programa de usuario y consulta el estado de las entradas. Dependiendo de dichos estados y del programa, ordena la activación de las salidas deseadas.

El microprocesador, esta construidos en base a una pastilla de silicio en donde se agrupan millones de transistores y compuertas lógicas, encapsulado en un contenedor plástico o cerámico (chips) con gran numero de conexiones (pin) que lo vinculan a la placa madre a través del zócalo del procesador o socket . Este componente define el poder de un sistema, ya que tiene a su cargo la realización de un gran número de operaciones, que podemos agrupar en:

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 18 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

-Operaciones de tipo lógico.

-Operaciones de tipo aritmético.

-Operaciones de control, en la transferencia de la información dentro de la computadora.

Para que el microprocesador pueda realizar todas estas operaciones está dotado de los siguientes circuitos internos:

• Unidad Aritmética y Lógica o ALU: Es la parte del µp donde se realizan los cálculos y las decisiones lógicas para controlar la PC.

• Unidad de Control (UC) o Decodificador de instrucciones: Interpreta las instrucciones leídas en memoria y

generan las señales de control.

• Acumulador: Es el encargado de almacenar el resultado de la última operación realizada por el ALU.

• Flags (banderas), o indicadores de resultado, son pequeñas memorias que cambian de estado según las operaciones realizadas en la ALU y que pueden ser consultados por el programa.

• Contador de Programa: Es el circuito encargado de guardar la dirección de memoria donde se encuentra la

próxima instrucción para ser leída por la unidad de control.

• Bus interno: No son circuitos en sí, sino zonas conductoras en paralelo que transmiten datos, direcciones, instrucciones y señales de control entre las diferentes partes del µp.

Los fabricantes de procesadores más conocidos son:

• INTEL • AMD • MOTOROLA (Power PC de Apple)

3.1. ESTRUCTURA BASICA DEL MICROPROCESADOR

En el siguiente esquema se puede apreciar la estructura interna básica del microprocesador o CPU, y como se interconectan sus circuitos mediante el Bus interno.

El CPU contiene un conjunto de localidades de almacenamiento temporal de datos de alta velocidad llamados registros. Algunos de los registros están dedicados al control, y sólo la unidad de control tiene acceso a ellos. Los registros restantes son de uso general, y el programador tiene acceso a ellos.

Dentro del conjunto básico de registros de control podemos mencionar:

• Contador del programa (PC) • Registro de direcciones de la memoria (MAR) • Registro de datos de la memoria (MDR) o Registro Acumulador (AR)

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 19 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

• Registro de instrucciones (IR) • Palabra de estado del programa (PSW) o Registro de Estado (SR)

PC (Program Counter)o Contador de Programa: La función del contador de programa consiste en seguir la pista de la instrucción por buscar (o capturar) en el siguiente ciclo de máquina; por lo tanto contiene la dirección de la siguiente instrucción por ejecutar. El PC es modificado dentro del ciclo de búsqueda de la instrucción actual mediante la adición de una constante. El número que se agrega al PC es la longitud de una instrucción en palabras. Por lo tanto si una instrucción tiene una palabra de longitud, se agrega 1 al PC; si una instrucción tiene dos palabras de largo, se agrega 2; y así sucesivamente.

MAR (Memory Address Register)o Registro de Dirección de Memoria: Funciona como registro de enlace entre el CPU y el BUS de direcciones. Cuando se logra el acceso a la memoria, la dirección es colocada en el MAR por la unidad de control y ahí permanece hasta que se completa la transferencia. El número de bits que hay en el MAR es el mismo que en Bus de direcciones.

Es importante aclarar la diferencia entre el PC y el MAR. Si no es necesario hacer referencia a la memoria principal durante el ciclo de ejecución de una instrucción, el PC y el MAR sirven al mismo fin. Sin embargo, mucha de las instrucciones de la máquina hacen referencia a la memoria principal y operan con los datos que están en ellas.

MDR (Memory Data Register)o Registro Acumulador: La función del MDR también conocido como Registro Acumulador, consiste en proporcionar un área de almacenamiento temporal (memoria intermedia, acumulador intermedio o buffer) de datos que se intercambian entre el CPU y la memoria. Los datos pueden ser instrucciones (obtenidas en el ciclo de ejecución). Debido a su conexión directa con el BUS de datos, el MDR contiene el mismo número de bits que él.

IR (Instruction Register) o Registro de Instrucciones: Es un registro que conserva el código de operación de la instrucción en todo el ciclo de la máquina. El código es empleado por la unidad de control del CPU para generar las señales apropiadas que controlan la ejecución de la instrucción. La longitud del IR es la longitud en bits del código de operación.

PSW (Program Status Word)o Registro de Estado: La palabra de estado o condición del programa almacena información pertinente sobre el programa que esté ejecutándose. Por ejemplo, al completarse una función de la ALU, se modifica un conjunto de bits llamados códigos (o señales) de condición. Estos bits especifican si el resultado de una operación aritmética fue cero o negativo (o positivo) o si el resultado se desbordó, en el caso de la aritmética de complemento a dos. El programa puede verificar el estado de cada posición o bit de este registro y en función de ello seleccionar las instrucciones siguientes y cambiar en forma condicional su flujo de control.

Además, el PSW contiene bits que hacen posible que la computadora responda a solicitudes de servicio asincrónicas generadas por dispositivos de entrada o salida o condiciones de error internas.

3.1.1. EL RELOJ INTERNO DE LA COMPUTADORA

Todas las computadoras disponen de un sistema de reloj interno accionado por un cristal de cuarzo, que tiene como propósito principal la sincronización de las operaciones en la computadora. Las moléculas en el cristal de cuarzo vibran millones de veces por segundo, y a una velocidad que nunca cambia. La computadora usa las vibraciones producidas en el reloj del sistema para tomar el tiempo de sus operaciones de procesamiento. A lo largo de los años, las velocidades de los relojes se han incrementado en forma constante. La primera PC operaba a 4.77 MegaHertz (el Hertz es una medida de los ciclos de reloj por segundo). Un ciclo es el tiempo que le toma realizar una operación, como mover un byte de un lugar de la memoria a otro. MegaHertz (MHz) significa "millones de ciclos por segundo" y GigaHertz (GHz) “miles de millones de ciclos por segundo”. Actualmente, las PC más rápidas superan 1500 MHz (1,5 GHz).

La velocidad de una computadora está determinada por la velocidad de su reloj interno, ya que por cada ciclo de reloj el microprocesador realiza una función (lee una posición de memoria, realiza un cálculo, etc,.). El tiempo transcurrido para cada ciclo de reloj se igual a la inversa de la frecuencia (1/frecuencia). La velocidad también está determinada por la arquitectura del procesador, es decir del diseño que establece de qué manera están colocados los componentes individuales de la CPU. Desde la perspectiva del usuario, el punto crucial es que "más rápido" casi siempre significa "mejor".

3.1.2. UNIDAD ARITMÉTICA LÓGICA (ALU de sus siglas en ingles)

La unidad aritmética lógica generalmente es interna al microprocesador y desempeña las funciones aritméticas y lógicas del CPU. Entre las funciones generalmente se encuentran la suma y resta de números binarios y números decimales codificados en binario (BCD). En algunas microcomputadoras y en todas las macrocomputadoras, la ALU también realiza la multiplicación y división de números binarios y decimales codificados en binario (BCD), y en las microcomputadoras más pequeñas y en la mayor parte de las microcomputadoras, se utilizan subrutinas de software para estas operaciones. La ALU también realiza la suma, resta, multiplicación y división de números de punto

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 20 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

flotante en algunas minicomputadoras y macrocomputadoras esta capacidad a menudo es opcional. Las operaciones lógicas comprenden tres tipos: booleanas, de desplazamiento y de comparación. Entre las operaciones booleanas se cuentan algunas o todas las operaciones que siguen, que se realizan con los bits correspondientes de los operandos: complemento lógico, AND, OR incluyente y OR excluyente. Las operaciones de desplazamiento comprenden un subconjunto de desplazamientos aritméticos y lógicos, a la izquierda y a la derecha, lineales y circulares.

Estas operaciones son ordenadas por las instrucciones que se están ejecutando, con las informaciones presentes en los registros de entrada y/o en posiciones determinadas de la memoria central y devuelve los resultados a los registros o a la memoria central.

Normalmente uno de los datos de entrada proviene del registro acumulador (ACUM) y el otro de un registro interno, una posición de memoria o como literal de la propia instrucción. El resultado se devuelve en el acumulador reemplazando el valor que tenía hasta ese momento. Hay también otros tipos de funcionamiento.

La ALU puede construirse como un dispositivo en serie o en paralelo. El primero opera con un par de bits (uno de

cada operando) a la vez. Cuando finaliza la operación con el primer par de bits, se realiza la misma operación con el siguiente, que por lo general es más significativo. El dispositivo en paralelo opera con todos los bits de una palabra en forma simultánea, por lo que requiere más hardware que el dispositivo en serie, pero es mucho más rápido.

El resultado de la ALU normalmente afecta el contenido del Registro de Estado, que está compuesto por una serie de registros individuales de 1 bits cada uno, llamados flags o banderas y con ellos se indican ciertas características del resultado. La forma en que cada una de las instrucciones afecta a las flags y el número y tipo de flags que tiene el CPU es cuidadosamente escogido por el diseñador para darle al usuario facilidades adicionales en la interpretación y manipulación de resultados. El contenido de los flags después de una determinada instrucción puede ser analizado, y de acuerdo con su condición se puede hacer saltar o no al ejecutar cierto grupo de instrucciones. Entre los flags más utilizados tenemos:

Flag de cero: Que en ciertas operaciones es puesta a 1 lógico si el resultado, generalmente almacenado en el acumulador, es cero y a 0 en caso contrario

Flag de signo: Que en ciertas operaciones es puesta a 1 si el bits más significativo del resultado es igual a 1 y a 0 en caso contrario. Se le llama flag de signo ya que en la representación de números con signos en binario el bit más significativo indica el signo.

Flag de Paridad: Que es colocada a 1 si el resultado de ciertas operaciones tiene un determinado tipo de paridad (par o impar), y a 0 en la condición opuesta. Se dice que un número representado en algún código binario tiene paridad par si el número total de unos que tiene dicha representación es par; y se dice que es impar si el número de unos es impar. Como por ejemplo 10001011 tiene cuatro unos y por lo tanto tiene paridad par, mientras que 01111111 tiene siete unos y por ello tiene paridad impar; el número 0000000, el cual tiene 0 (cero) uno, se dice que tiene paridad par.

Flag de acarreo: Puesta a 1, ya que ha ocurrido un acarreo del bit más significativo hacia fuera

Flag de acarreo auxiliar: Puesta a 1, dado que ha ocurrido un acarreo del primero al segundo

3.2. LA UNIDAD DE CONTROL (UC)

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 21 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

La función de la unidad de control de un computador es la búsqueda de las instrucciones en memoria, su interpretación y la generación en los instantes adecuados de las señales de control necesarias para ejecutar la operación especificada por cada instrucción. En este proceso se distinguen dos aspectos fundamentales:

• El secuenciamiento de las instrucciones • La interpretación de las instrucciones

3.2.1. SECUENCIAMIENTO DE INSTRUCCION

El secuenciamiento de las instrucciones es el proceso por el cual las instrucciones de un programa van siendo seleccionadas para su ejecución en un orden determinado. La mayor parte de las instrucciones de un programa tienen una sola sucesora, por lo que resulta natural almacenarlas en posiciones consecutivas de memoria. Para su secuenciamiento se utiliza un registro denominado contador de programa (CP). En general, si la instrucción i necesita p palabras de memoria, el incremento del CP para pasar a la instrucción i+1 será CP ← CP+p.

Las instrucciones de bifurcación son las que permiten la selección de un camino entre varios posibles. Cuando es necesario transferir el control del programa principal a una subrutina o una interrupción, lo que se hace es guardar el contenido del CP en algún registro del CPU o en una posición determinada de la memoria principal llamada dirección de retorno. Después se carga en el CP la dirección en la que se encuentra la instrucción que arranca el subprograma, que se ejecuta hasta que finaliza, volviendo luego el control al programa principal recuperando el contenido del CP de la dirección de retorno.

3.2.2. INTERPRETACIÓN DE LAS INSTRUCCIONES

Es el proceso por el cual la unidad de control obtiene las instrucciones almacenadas en memoria y las ejecuta. Esto se realiza en lo que llamaremos ciclo de instrucción.

*CICLO DE INSTRUCCIÓN

La ejecución de un programa consiste en la ejecución secuencial de sus instrucciones. Cada instrucción se ejecuta durante un ciclo de instrucción que está compuesto de subciclos más pequeños. La realización de cada uno de esos subciclos implica una o más operaciones más pequeñas llamadas microoperaciones.

• Ciclo de captación • Ciclo de decodificación • Ciclo de ejecución

*CICLO DE CAPTACIÓN

Para ejecutar este programa el CPU trae una instrucción a la vez de la memoria y realiza las funciones especificadas. A este proceso se le conoce como ciclo de captación y ocurre al comienzo de cada ciclo de instrucción produciendo que una instrucción sea obtenida de la memoria. Se utilizan los cuatro registros vistos anteriormente que son:

• Registro de dirección de memoria MAR • Registros de datos de memoria MDR • Contador del programa PC • Registro de instrucción IR

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 22 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

*CICLO DE DECODIFICACIÓN

Una vez que se tiene la microinstrucción, el siguiente paso consiste en analizar los bits correspondientes al código de operación de la instrucción y determinar las operaciones a ejecutarse en el ciclo de ejecución.

*CICLO DE EJECUCIÓN

El ciclo de ejecución no tiene una secuencia fija de operaciones, sino que para cada código de operación y modo de direccionamiento hay una secuencia distinta. De forma general se efectúan las siguientes operaciones.

• Cálculo de las direcciones efectivas de los operandos • Lectura de los operandos (se leen de la memoria principal y se almacenan en registros a la

entrada de la Unidad Aritmética Lógica) • Operación con los datos (en la Unidad Aritmética Lógica) • Almacenamiento del resultado (escritura del resultado en el Registro Acumulador o en la

memoria)

3.3. EL COPROCESADOR MATEMÁTICO O NUMÉRICO

Es un microprocesador de instalación opcional en las computadoras de escritorio de la década de los ’90, también denominado Unidad de punto flotante que auxiliaba al microprocesador principal en el uso eficiente en programas de graficación, cálculos matemáticos complejos y diseño entre tantos, lo cual al especializarse de dichas funciones aceleraba la velocidad de procesamiento de las computadoras. Los microprocesadores que contaban con coprocesador se distinguían porque contaban en su código con las letras DX, caso contrario estaban identificados con las letras SX, como por ejemplo : 486 SX de 25 Mhz.

En la actualidad este componente ya vienen incluidos en todas las computadoras nuevas, ya que por su costo actual de fabricación y el poder de procesamiento que se exige hoy no se puede descartar la falta de éste microprocesador.

En caso de necesitar la instalación de uno de ellos, debía asegurarse primero de lo siguiente:

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 23 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

• Que el motherboard cuente con un slot disponible específico para el coprocesador matemático. • Que el coprocesador sea de la misma marca que el Microprocesador Principal de la computadora. • Que trabaje a la misma velocidad que lo hace el Microprocesador Principal instalado. Ejemplo: si el

Microprocesador Principal es un 486 SX de 25 Mhz, el coprocesador debía ser un 487 SX de 25 Mhz. Como se puede observar el coprocesador es algo así como la mitad del microprocesador completo.

3.4. CLASIFICACIÓN DE LA CPU EN BASE AL MANEJO DE INSTRUCCIONES.

Los Microprocesadores administran juegos de instrucciones basadas en pilas, acumuladores y registros. Las instrucciones basadas en registros han recibido la mayor atención por parte de los programadores, hecho que a su vez ha propiciado que los fabricantes de semiconductores, diseñen arquitecturas de microprocesadores según la forma en que se administran los registros.

Partiendo de esa base, han surgido dos grandes arquitecturas de microprocesadores para PCs: los diseñados con instrucciones avanzadas o complejas llamados CISC (Complex Instruction Set Computer) y los diseñados con instrucciones simples o reducidas llamados RISC (Reduced Instruction Set Computer).

La arquitectura CISC. Fue la primera tecnología de CPUs con la que la maquina PC se dio a conocer mundialmente. Adoptada por Intel, se coloco en las primitivas PC (procesador 8088) que fueron lanzadas bajo la marca IBM el 12 de Agosto de 1981. Su sistema de trabajo se basa en la Microprogramación. Dicha técnica consiste en hacer que cada instrucción sea interpretada por un microprograma localizado en una sección de memoria en el circuito integrado del Microprocesador. A su vez las instrucciones compuestas se decodifican para ser ejecutadas por micro instrucciones almacenadas en una ROM interna. Las operaciones se realizan al ritmo de los ciclos de un reloj.

Considerando la extraordinaria cantidad de instrucciones que la CPU puede manejar, la construcción de una CPU con arquitectura CISC es realmente compleja. A este grupo pertenecen los microprocesadores populares utilizados en PC de escritorio y laptops.

El origen de la arquitectura CISC se remonta a los inicios de la programación ubicada en los años 60 y 70. Para contrarrestar la crisis del software de ese entonces, empresas electrónicas fabricantes de hardware pensaron que una buena solución era crear una CPU con un amplio y detallado manejo de instrucciones, a fin de que los programas fueran más sencillos. Los programadores en consecuencia crearon multitud de programas para esa arquitectura. La posterior masificación de los PCs, permitió que el mercado fuera luego copado de software creado para procesadores CISC.

Entre las bondades de CISC destacan las siguientes: 1. Reduce la dificultad de crear compiladores. 2. Permite reducir el costo total del sistema. 3. Reduce los costos de creación de Software. 4. Mejora la compactación de código. 5. Facilita la depuración de errores (debugging).

La arquitectura RISC. Ha sido la consecuencia evolutiva de las CPU. Como su nombre lo indica, se trata de microprocesadores con un conjunto de instrucciones muy reducidas en contraposición a CISC. ¿Que ventaja se deriva de esta tecnología?. 1. La CPU trabaja más rápido al utilizar menos ciclos de reloj para cumplir sus funciones (ejecutar instrucciones). 2. Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a diferencia de CISC, los sistemas basados en RISC conserva después de realizar sus operaciones en memoria los dos operandos y su resultado (total tres direcciones), lo que facilita a los compiladores conservar llenos los 'pipelines' (conductos) de la CPU para utilizarlos concurrentemente y reducir la ejecución de nuevas operaciones. 3. Cada instrucción puede ser ejecutada en un solo ciclo de la CPU (máxima velocidad y eficiencia).

Considerada como una innovación tecnológica creada a partir del análisis de la primitiva arquitectura CISC, RISC ha dado origen a la aparición de Microprocesadores poderosos cuya principal aplicación ha sido el trabajo en las grandes máquinas (servidores), aunque también han llegado a posicionarse en ciertas maquinas desktop, computadoras de mano, maquinas de juegos, y otros artefactos electrónicos domésticos.

RISC vs CISC. De lo dicho hasta ahora, habría que evaluar las ventajas y desventajas de ambas arquitecturas para la hora de tomar decisiones sobre la elección de una u otra con el objeto de diseñar un sistema. RISC es más rápida, pero más costosa. Hablando en términos de costos y rendimientos la arquitectura RISC utiliza mas la circuitería (hardware o circuitos electrónicos) para ejecutar operaciones directas (el microprocesador está más libre), en tanto que CISC utiliza gran cantidad de micro código (software) ejecutados por el microprocesador lo que la hace más económica, pero a la vez más lenta también (debido a la carga que soporta el microprocesador).

Hay más software de uso general para la plataforma CISC. Pero la exigencia de la informática demanda periódicamente mayor velocidad y administración de espacio en RAM y discos duros, área en la que ambas arquitecturas deben seguir innovando. Dado que CISC es más popular a nivel de PCs, las innovaciones en esta categoría son más numerosas (nuevas interfaces, puertos, nuevos buses y velocidades de transmisión). Técnicamente hablando, el rendimiento en RISC basado en la menor cantidad de carga de instrucciones en el microprocesador compensa a la mayor cantidad de código en software que es necesario utilizar, por lo que su arquitectura se considera más potente que CISC.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 24 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

3.4.1. LOS NUEVOS MICRO DE 64 BIT.

La necesidad de procesadores de 64 bits es clara en aplicaciones que necesitan direccionar grandes cantidades de memoria ya sea esta virtual o física. Como ejemplos de dichas aplicaciones podemos citar:

• Bases de Datos: actualmente existen muchas bases de datos con más de 4Gb usados en registros y otra información, esta cantidad constituye el direccionamiento directo máximo posible con 32 bits. Aunque es posible y de hecho a menudo puesto en práctica, el direccionamiento de bases de datos muy grandes con procesadores de 32 bits recurriendo a distintas técnicas, es más fácil y más eficiente hacerlo si el procesador soporta operaciones y direcciones de 64 bits.

• Creación de contenido Digital: el DVD (“Digital Versatile Disk”) y el HDTV (“High Definition TV”) cada vez se vuelvan más comunes y el contenido de estos, por los grandes volúmenes de información que requieren, es el principal candidato para la edición en PCs avanzadas. En general toda la creación de contenido digital será beneficiada por el direccionamiento y procesamiento de 64 bits.

• CAD & Simulaciones: estos a menudo tratan con modelos enormes (edificios, aviones, explosiones nucleares, etc.) y como es de imaginar dichos modelos pueden fácilmente exceder los 4Gb de tamaño.

• Criptografía: esta involucra grandes cantidades de cómputos con grandes enteros, y se beneficiaría inmensamente gracias a la disponibilidad de registros de 64 bit lo que le permitiría realizar cálculos mucho más rápidamente.

En principio estos procesadores fueron desarrollados para aplicaciones en servidores y estaciones de trabajo de alto desempeño. Hasta principio de 2000 en este terreno los principales actores bajo la Arquitectura RISC eran el UltraSPARC de Sun, PowerPC de IBM y Alpha de Compaq.

Para competir en este segmento Intel en un desarrollo conjunto con Hewlett-Packard, lanza al mercado en el 2001, el Itanium también conocido por su nombre en código Merced, fue el primer microprocesador de la arquitectura IA-64 (Intel Architecture-64), con más de 1.700 millones de transistores. Se fabricaba utilizando un proceso de 180 nm y disponía de 32 KB de memoria caché de primer nivel (16 para datos y 16 para instrucciones), 96 KB de caché de segundo nivel integrada en el núcleo y 2 ó 4 MB de caché de tercer nivel exterior al núcleo. Estaba disponible en versiones a 733 u 800 MHz.

Ha sido diseñado para ser utilizado en servidores y workstations de alto rendimiento. Intel afirma que su diseño va más allá de conceptos como CISC o RISC mediante la incorporación de una cantidad masiva de recursos de procesamiento con compiladores inteligentes que permiten la producción de código objeto que hace explícito el paralelismo. Los servidores y sistemas de cómputo de alto desempeño basados en el procesador Itanium ofrecen soporte de misión crítica para Windows, Linux, Unix y otros sistemas operativos.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 25 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Una de las distinciones más importantes entre el Itanium y los microprocesadores de 32 bits es el uso de técnicas mejoradas de procesamiento, de las cuales estos últimos están pobremente equipados. La principal técnica se refiere al procesamiento de más de una instrucción al mismo tiempo en una misma unidad. El término que usa Intel para esto es EPIC (“Explicitly Parallel Instruction Computing” o Cálculo de Instrucciones Estrictamente en Paralelo).

Las diferencias entre 32 y 64 bits son muy grandes. Olvidando por el momento el proceso en paralelo y otras mejoras inteligentes, propias de la arquitectura del Itanium, la ventaja más directa es la cantidad de memoria que se puede direccionar. Hace poco más de una década, direccionar una memoria de 4 GB con las plataformas de 32 bits era más que suficiente. Hoy en día, las grandes bases de datos sobrepasan con creces este tamaño. El tiempo empleado en cargar de nuevo los datos en la memoria virtual, junto con el acceso a los dispositivos de almacenamiento, tiene un efecto negativo en el rendimiento. Las plataformas de 64 bits son capaces de direccionar 16 terabytes de memoria (cuatro mil veces más que en una plataforma de 32 bits).

Otra ventaja de la CPU de 64 bits sobre la de 32 bits es que procesa el doble de instrucciones por ciclo. Si se trabaja con registros de 16 bits en paralelo para encriptado, por ejemplo, la CPU de 64 bits procesa cuatro registros por cada ciclo de reloj, mientras que la de 32 bits lo hará de dos en dos. Una instrucción de 64 bits puede procesarse en un único ciclo de reloj, mientras que en una plataforma de 32 bits necesita dos ciclos de reloj, más uno de limpieza. Por tanto, un sistema de 64 bits puede direccionar de forma directa mucha más memoria. Cada una de las plataformas de 64 bits y las arquitecturas futuras explotan estas ventajas, además de las mejoras específicas en la arquitectura de cada marca.

También se tiene una batalla en el software usado en las plataformas de 64 bits. Microsoft, al igual que Intel, domina en el terreno de los equipos de sobremesa, pero en el terreno corporativo es totalmente diferente. Su versión de Windows de 64 bits tiene que luchar contra una innumerable cantidad de versiones de Unix que también se renovarán. Un factor decisivo es el momento en el que las empresas tengan que elegir cuál de las plataformas de 64 bits van a adoptar.

El resto de los competidores en el campo de los 64 bits aseguran tener una superioridad técnica frente a Itanium, además de tener una mayor estabilidad y disponibilidad de software que Windows. El lanzamiento de Itanium con la

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 26 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

experiencia de Intel en el "mercado de consumo" y las versión de 64 bits de Windows con el dominio de software del que dispone Microsoft, han hecho tambalearse los cimientos del mundo de 64 bits tal como se lo conocía, por lo que se darán algunas bajas. Sólo el tiempo puede decir quiénes sobreviven y de qué forma, pero sin duda, ahora que Intel y Microsoft se han a involucrado en el mundo de los 64 bits no es el mismo.

Las aplicaciones de Internet de hoy día, ven cómo millones de usuarios en todo el mundo acceden a través de ellas a gigabytes o incluso terabytes de información en tiempo real. Debido a esta gran capacidad de manejar datos, los sistemas de 64 bits son bienvenidos por Internet, ISPs (Internet Service Providers o proveedores de acceso a Internet) y ASPs (Application Service Provider o proveedor de aplicaciones), además de cualquiera que tenga servidores Web multimedia y OLTP (“On-Line Transaction Proceses”). La consolidación de las bases de datos de propiedad en un único "almacén" de datos, es también una de los principales atractivos de las aplicaciones de 64 bits.

Esta tecnología proporciona un gran empuje a cualquiera que desee manejar grandes cantidades de datos, como visualizaciones científicas, simulaciones y efectos especiales de renderizado.

Con la llegada de los procesadores de 64 bit a los PC de sobremesa, ya no se podrá medir el rendimiento de un chip por los Mhz a los que alcanza a trabajar, ya que su rendimiento dependerá más del IPC (Instrucciones Por Ciclo) que de otros aspectos.

En la siguiente figura puede observarse la evolución de la arquitectura de ordenadores. En ella se percibe que al final de la evolución de las arquitecturas se sitúa el Itanium, el cuál desarrolla la tecnología EPIC a 0.13 µm. Se aprecia en la gráfica que a medida que se ha aumentado el número de transistores por milímetro cuadrado se han mejorado las características arquitectónicas.

Evolución de la Arquitectura de los computadores

EPIC

Características

CISC

RISC

Superescalar RISC

->0.5 ->0.35 ->0.25 ->0.18 ->0.13

ITANIUM

Tecnología (µµµµm)

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 27 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

En el siguiente cuadro se pueden apreciar las características principales de la IA-64

4. MEMORIA INTERNA DE PC El término "memoria" se aplica a cualquier componente electrónico capaz de almacenar datos en forma temporal.

Existen dos categorías principales de memorias:

• Memoria Interna o Principal • Memoria Externa o Auxiliar

La memoria interna almacena datos en forma temporal mientras los programas se están ejecutando. La memoria interna utiliza semiconductores integrados (circuitos electrónicos rápidos y especializados).

La memoria interna corresponde a lo que llamamos memoria de acceso aleatorio (RAM – Random Access Memori), también llamadas memoria volátil ya que la información contenida en ella se pierde al interrumpirse el suministro eléctrico.

Las memorias auxiliares (llamada también memoria física o memoria externa) almacenan información a largo plazo, incluso después de apagar el equipo. La memoria auxiliar corresponde a los dispositivos magnéticos de almacenamiento como por ejemplo el disco duro, dispositivos ópticos de almacenamiento como los CD-ROM y DVD-ROM, y a las memorias de sólo lectura.

4.1. CARACTERÍSTICAS TÉCNICAS

Las principales características de una memoria son las siguientes:

• Capacidad, que representa el volumen global de información (en bits) que la memoria puede almacenar.

• Tiempo de acceso, que corresponde al intervalo de tiempo entre la solicitud de lectura/escritura y la disponibilidad de los datos.

• Tiempo de ciclo, que representa el intervalo de tiempo mínimo entre dos accesos sucesivos. • Rendimiento, que define el volumen de información intercambiado por unidad de tiempo, expresado en

bits por segundo. • No volatilidad, que caracteriza la capacidad de una memoria para almacenar datos cuando no recibe

más electricidad.

La memoria ideal debería poseer una gran capacidad con tiempos de accesos y tiempos de ciclos muy pequeños, un rendimiento elevado y no es volátil.

Sin embargo, las memorias rápidas también son las más costosas. Ésta es la razón por la cual se utilizan en los equipos memorias que usan diferentes tecnologías, interconectadas entre sí y organizadas de manera jerárquica.

4.2. JERARQUÍA DE MEMORIA

En un ordenador hay una jerarquía de memorias atendiendo al tiempo de acceso y a la capacidad que normalmente son factores contrapuestos por razones económicas y en muchos casos también físicas.

ITANIUM CARACTERÍSTICAS GENERALES

AÑO de LANZAMIENTO 2001 TECNOLOGÍA 0,13 µµµµm MILLONES DE TRANSISTORES 25 (CPU) 300 (CACHE) PROCESADOR 64 bits FRECUENCIA 800 MHz CACHE L1 32 KB CACHE L2 96 KB CACHE L3 2-4 MB ALIMENTACIÓN 3.3V RENDIMIENTO 370 SPECint_base2000 FRECUENCIA BUS SISTEMA 266MHz ANCHO DE BANDA DE E/S PCI-66MHz TRANSFERENCIA 2,1GB/s

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 28 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Comenzando desde el procesador al exterior, es decir en orden creciente de tiempo de acceso y capacidad, se puede establecer la siguiente jerarquía:

REGISTROS DEL PROCESADOR: Estos registros interaccionan continuamente con la CPU (porque forman parte de ella). Los registros tienen un tiempo de acceso muy pequeño y una capacidad mínima, normalmente igual a la palabra del procesador (1, 8,16…. bytes).

o Registros intermedios: Constituyen un paso intermedio entre el procesador y la memoria, tienen un tiempo de acceso muy breve y muy poca capacidad.

o Memorias caché: Son memorias de pequeña capacidad. Normalmente una pequeña fracción de la memoria principal. y pequeño tiempo de acceso. Este nivel de memoria se coloca entre la CPU y la memoria central. Hace algunos años este nivel era exclusivo de los ordenadores grandes pero actualmente todos los ordenadores lo incorporan. Dentro de la memoria caché puede haber, a su vez, dos niveles denominados caché on-chip, memoria caché dentro del circuito integrado, y caché on-board, memoria caché en la placa de circuito impreso pero fuera del circuito integrado, evidentemente, por razones físicas, la primera es mucho más rápida que la segunda. Existe también una técnica, denominada Arquitectura Harvard, que utiliza memorias caché separadas para código y datos, en cierto modo contrapuesto a la idea de Von Newmann.

MEMORIA CENTRAL O PRINCIPAL: En este nivel residen los programas y los datos. La CPU lee y escribe datos en él aunque con menos frecuencia que en los niveles anteriores. Tiene un tiempo de acceso relativamente rápido y gran capacidad.

EXTENSIONES DE MEMORIA CENTRAL: Son memorias de la misma naturaleza que la memoria central que amplían su capacidad de forma modular. El tiempo es similar, a lo sumo un poco mayor, al de la memoria central y su capacidad puede ser algunas veces mayor.

MEMORIAS DE MASAS O AUXILIARES: Son memorias que residen en dispositivos externos al ordenador, en ellas se archivan programas y datos para su uso posterior. También se usan estas memorias para apoyo de la memoria central en caso de que ésta sea insuficiente (memoria virtual). Estas memorias suelen tener gran capacidad pero pueden llegar a tener un tiempo de acceso muy lento. Dentro de ellas también se pueden establecer varios niveles de jerarquía.

Las memorias más rápidas están ubicadas en pequeñas cantidades cerca del procesador. Las memorias auxiliares o masivas, que no son tan rápidas, se utilizan para almacenar información permanentemente.

4.3. TIPOS DE MEMORIAS

4.3.1. MEMORIA DE ACCESO ALEATORIO

La memoria de acceso aleatorio, llamada generalmente RAM es la memoria principal del sistema, es decir, un espacio que permite almacenar datos temporalmente mientras un programa se está ejecutando.

A diferencia del almacenamiento de datos en una memoria auxiliar como un disco duro, la RAM es volátil, lo que significa que solamente almacena datos mientras recibe electricidad. Por lo tanto, cada vez que el equipo se apaga, todos los datos de la memoria se borran irremediablemente.

En términos generales, existen dos grandes categorías de memoria de acceso aleatorio:

Las memorias DRAM (Módulo de Acceso Aleatorio Dinámico), las cuales son menos costosas. Se utilizan principalmente para la memoria principal del ordenador

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 29 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Las memorias SRAM (Módulo de Acceso Aleatorio Estático), rápidas pero relativamente costosas. Las memorias SRAM se utilizan en particular en la memoria caché del procesador

• FUNCIONAMIENTO DE LA MEMORIA DE ACCESO ALEATORIO DINAMICA (DRAM)

La memoria de acceso aleatorio consta de cientos de miles de pequeños capacitadores que almacenan cargas. Al cargarse, el estado lógico del capacitador es igual a 1; en el caso contrario, es igual a 0, lo que implica que cada capacitador representa un bit de memoria.

Teniendo en cuenta que con el tiempo se descargan los capacitadores, estos deben cargarse constantemente (el término exacto es actualizar) a intervalos regulares, lo que se denomina ciclo de actualización. Las memorias DRAM, por ejemplo, requieren ciclos de actualización de unos 15 nanosegundos (ns).

Cada capacitador está acoplado a un transistor (tipo MOS), lo cual posibilita la "recuperación" o modificación del estado del capacitador. Estos transistores están dispuestos en forma de tabla (matriz), de modo que se accede a la caja de memoria (también llamada punto de memoria) mediante una línea y una columna.

Cada punto de memoria se caracteriza así por una dirección que corresponde a su vez a un número de fila y a un

número de columna. Este acceso no es instantáneo; el período de tiempo que lleva se denomina tiempo de latencia. En consecuencia, el tiempo necesario para acceder a la información en la memoria es igual al tiempo del ciclo más el tiempo de latencia.

De este modo, en el caso de la memoria DRAM, por ejemplo, el tiempo de acceso es de 60 nanosegundos (35 ns del tiempo del ciclo más 25 ns del tiempo de latencia). En el ordenador, el tiempo del ciclo corresponde al opuesto de la frecuencia de reloj; por ejemplo, en un ordenador con una frecuencia de 200 MHz, el tiempo del ciclo es de 5 ns (1/(200*106)).

En consecuencia, en un ordenador con alta frecuencia, que utiliza memorias con un tiempo de acceso mucho más prolongado que el tiempo del ciclo del procesador, se deben producir estados de espera para que se permita el acceso a la memoria. En el caso de un ordenador con una frecuencia de 200 MHz que utiliza memorias DRAM (y con un tiempo de acceso de 60 ns), se generan 11 estados de espera para un ciclo de transferencia. El rendimiento del ordenador disminuye a medida que aumenta el número de estados de espera, por lo que es recomendable implementar el uso de memorias más rápidas.

• FORMATOS DE MÓDULOS RAM

Existen diferentes tipos de memoria de acceso aleatorio. Estas se presentan en forma de módulos de memoria que pueden conectarse a la placa madre.

Las primeras memorias fueron chips denominados DIP (Paquete en Línea Doble). Hoy en día, las memorias por lo general se suministran en forma de módulos, es decir, tarjetas que se colocan en conectores designados para tal fin. En términos generales, existen tres tipos de módulos RAM:

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 30 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Módulos en formato SIMM (Módulo de Memoria en Línea Simple): se trata de placas de circuitos impresos, con uno de sus lados equipado con chips de memoria. Existen dos tipos de módulos SIMM, según el número de conectores:

Los módulos SIMM con 30 conectores (de 89x13mm) son memorias de 8 bits que se instalaban en los PC de primera generación (286, 386).

Los módulos SIMM con 72 conectores (sus dimensiones son 108x25mm) son memorias capaces de almacenar

32 bits de información en forma simultánea. Estas memorias se encuentran en los PC que van desde el 386DX hasta los primeros Pentiums. En el caso de estos últimos, el procesador funciona con un bus de información de 64 bits, razón por la cual, estos ordenadores necesitan estar equipados con dos módulos SIMM. Los módulos de 30 clavijas no pueden instalarse en posiciones de 72 conectores, ya que la muesca (ubicada en la parte central de los conectores) imposibilitaría la conexión.

Los módulos en formato DIMM (Módulo de Memoria en Línea Doble), son memorias de 64 bits, lo cual explica

por qué no necesitan emparejamiento. Los módulos DIMM poseen chips de memoria en ambos lados de la placa de circuito impresa, y poseen a la vez, 84 conectores de cada lado, lo cual suma un total de 168 clavijas. Además de ser de mayores dimensiones que los módulos SIMM (130x25mm), estos módulos poseen una segunda muesca que evita confusiones a la hora de instalarlas.

Cabe observar que los conectores DIMM han sido mejorados para facilitar su inserción, gracias a las palancas

ubicadas a ambos lados de cada conector.

También existen módulos más pequeños, conocidos como SO DIMM (DIMM de contorno pequeño), diseñados para ordenadores portátiles. Los módulos SO DIMM sólo cuentan con 144 clavijas en el caso de las memorias de 64 bits, y con 77 clavijas en el caso de las memorias de 32 bits.

Los módulos en formato RIMM (Módulo de Memoria en Línea Rambus, también conocido como RD-RAM o DRD-RAM) son memorias de 64 bits desarrolladas por la empresa Rambus. Poseen 184 clavijas. Dichos módulos poseen dos muescas de posición, con el fin de evitar el riesgo de confusión con módulos previos.

Dada la alta velocidad de transferencia de que disponen, los módulos RIMM poseen una película térmica cuyo rol es el mejorar la transferencia de calor.

Al igual que con los módulos DIMM, también existen módulos más pequeños, conocidos como SO RIMM (RIMM de contorno pequeño), diseñados para ordenadores portátiles. Los módulos SO RIMM poseen sólo 160 clavijas.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 31 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

DRAM

La DRAM (RAM Dinámica) es el tipo de memoria más común en estos tiempos. Se trata de una memoria cuyos transistores se disponen en forma de matriz, en forma de filas y columnas. Un transistor, acoplado con un capacitador, proporciona información en forma de bits. Dado que un octeto contiene 8 bits, un módulo de memoria DRAM de 256 Mb contendrá por lo tanto: 256 * 2^10 * 2^10 = 256 * 1024 * 1024 = 268.435.456 octetos = 268.435.456 * 8 = 2.147.483.648 bits = 2.147.483.648 transistores. De esta manera, un módulo de 256 Mb posee una capacidad de 268.435.456 octetos. Los tiempos de acceso de estas memorias son de 60 ns.

Además, el acceso a la memoria en general se relaciona con la información almacenada consecutivamente en la memoria. De esta manera, el modo de ráfaga permite el acceso a las tres partes de información que siguen a la primera parte, sin tiempo de latencia adicional. De este modo, el tiempo necesario para acceder a la primera parte de la información es igual al tiempo del ciclo más el tiempo de latencia, mientras que el tiempo necesario para acceder a las otras tres partes de la información sólo es igual al tiempo de ciclo; los cuatro tiempos de acceso se expresan, entonces, en la forma X-Y-Y-Y. Por ejemplo, 5-3-3-3 indica que la memoria necesita 5 ciclos del reloj para acceder a la primera parte de la información, y 3 para acceder a las subsiguientes.

DRAM PM

Para acelerar el acceso a la DRAM, existe una técnica, conocida como paginación, que permite acceder a la información ubicada en una misma columna, modificando únicamente la dirección en la fila, y evitando de esta manera, la repetición del número de columna entre lecturas por fila. Este proceso se conoce como DRAM PM (Memoria en Modo Paginado). El PM alcanza tiempos de acceso de unos 70 u 80 nanosegundos, en el caso de frecuencias de funcionamiento de entre 25 y 33 Mhz.

DRAM EDO

La DRAM EDO (Salida de Información Mejorada, a veces denominada "híper- página") se introdujo en 1995. La técnica utilizada en este tipo de memoria implica direccionar la columna siguiente mientras paralelamente se está leyendo la información de una columna anterior. De esta manera, se crea un acceso superpuesto que permite ahorrar tiempo en cada ciclo. El tiempo de acceso de la memoria EDO es de 50 a 60 nanosegundos, en el caso de una frecuencia de funcionamiento de entre 33 y 66 Mhz.

De modo que la RAM EDO, cuando se utiliza en modo ráfaga, alcanza ciclos 5-2-2-2, lo cual representa una ganancia de 3 ciclos al acceder a 4 partes de información. Dado que la memoria EDO no funcionaba con frecuencias mayores a 66 Mhz, se suspendió su uso en favor de la SDRAM.

SDRAM

La SDRAM (DRAM Sincrónica), introducida en 1997, permite la lectura de la información sincronizada con el bus de la placa madre, a diferencia de lo que ocurre con las memorias EDO y FPM (conocidas como asincrónicas), las cuales poseen reloj propio. La SDRAM elimina de esta manera, los tiempos de espera ocasionados por la sincronización con la placa madre. Gracias a esto se logra un ciclo de modo ráfaga de 5-1-1-1, con una ganancia de 3 ciclos en comparación con la RAM EDO. La SDRAM puede, entonces, funcionar con una frecuencia mayor a 150 MHz, logrando tiempos de acceso de unos 10 ns.

DR-SDRAM (Rambus DRAM)

La DR-SDRAM (DRAM Directa de Rambus), es un tipo de memoria que permite la transferencia de datos a un bus de 16 bits y a una frecuencia de 800 Mhs, lo que proporciona un ancho de banda de 1,6 GB/s. Al igual que la SDRAM, este tipo de memoria está sincronizada con el reloj del bus, a fin de mejorar el intercambio de información. Sin embargo, la memoria RAMBUS es un producto de tecnología patentada, lo que implica que cualquier empresa que desee producir módulos RAM que utilicen esta tecnología deberá abonar regalías, tanto a RAMBUS como a Intel.

DDR-SDRAM

La DDR-SDRAM (SDRAM de Tasa Doble de Transferencia de Datos) es una memoria basada en la tecnología SDRAM, que permite duplicar la tasa de transferencia alcanzada por ésta utilizando la misma frecuencia.

La información se lee o ingresa en la memoria a doble de la frecuencia de reloj. Las memorias DRAM estándares utilizan un método conocido como SDR (Tasa Simple de Transferencia de Datos), que implica la lectura o escritura de información en cada borde de entrada.

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 32 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

La DDR permite duplicar la frecuencia de lectura/escritura con un reloj a la misma frecuencia, enviando

información a cada borde de entrada y a cada borde posterior.

Las memorias DDR por lo general poseen una marca, tal como PCXXXX, en la que "XXXX" representa la

velocidad en MB/s.

DDR2-SDRAM

Las memorias DDR2 (o DDR-II) alcanzan velocidades dos veces superiores a las memorias DDR con la misma frecuencia externa.

El acrónimo QDR (Tasa Cuádruple de Transferencia de Datos o con Quad-pump) designa el método de lectura y escritura utilizado. De hecho, la memoria DDR2 utiliza dos canales separados para los procesos de lectura y escritura, con lo cual es capaz de enviar o recibir el doble de información que la DDR.

La DDR2 también posee más conectores que la DDR clásica (la DDR2 tiene 240, en comparación con

los 184 de la DDR).

• CUADRO RESUMEN DE MEMORIAS RAM

El siguiente cuadro muestra la equivalencia entre la frecuencia de la placa madre (FSB), la frecuencia de la memoria (RAM) y su velocidad:

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 33 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

Memoria Nombre Frecuancia

(RAM)

Frecuencia

(RELOJ) Velocidad

DDR200 PC1600 200 MHz 100 MHz 1,6 GB/s

DDR266 PC2100 266 MHz 133 MHz 2,1 GB/s

DDR333 PC2700 333 MHz 166 MHz 2,7 GB/s

DDR400 PC3200 400 MHz 200 MHz 3,2 GB/s

DDR433 PC3500 433 MHz 217 MHz 3,5 GB/s

DDR466 PC3700 466 MHz 233 MHz 3,7 GB/s

DDR500 PC400 500 MHz 250 MHz 4,0 GB/s

DDR533 PC4200 533 MHz 266 MHz 4,2 GB/s

DDR538 PC4300 538 MHz 269 MHz 4,3 GB/s

DDR550 PC4400 550 MHz 275 MHz 4,4 GB/s

DDR2-400 PC2-3200 400 MHz 100 MHz 3,2 GB/s

DDR2-533 PC2-4300 533 MHz 133 MHz 4,3 GB/s

DDR2-667 PC2-5300 667 MHz 167 MHz 5,3 GB/s

DDR2-675 PC2-5400 675 MHz 173 MHz 5,4 GB/s

DDR2-800 PC2-6400 800 MHz 200 MHz 6,4 GB/s

• SINCRONIZACIÓN (tiempos)

No es poco común ver valores como "3-2-2-2" ó "2-3-3-2" para describir los parámetros de la memoria de acceso aleatorio. Esta sucesión de cuatro cifras describe la sincronización de la memoria (tiempo); es decir, la secuencia de ciclos de reloj necesaria para acceder a la información almacenada en la RAM. Las cuatro cifras corresponden, en orden, a los siguientes valores:

o Demora de CAS o latencia de CAS (CAS significa Señalizador de Direccionamiento en Columna): es el número de ciclos de reloj que transcurre entre el envío del comando de lectura y la llegada de la información. En otras palabras, es el tiempo necesario para acceder a una columna.

o Tiempo de precarga de RAS (conocido como tRP; RAS significa Señalizador de Direccionamiento en Fila): es el número de ciclos de reloj transcurridos entre dos instrucciones de RAS, es decir, entre dos accesos a una fila.

o Demora de RAS a CAS (a veces llamada tRCD): es el número de ciclos de reloj correspondiente al tiempo de acceso de una fila a una columna.

o Tiempo activo de RAS (a veces denominado tRAS): es el número de ciclos de reloj correspondiente al tiempo de acceso a una columna.

Las tarjetas de memoria están equipadas con un dispositivo llamado SPD (Detección de Presencia en Serie), el cual permite al BIOS averiguar los valores de ajuste nominales definidos por el fabricante. Se trata de una EEPROM, cuya información puede cargarse en el BIOS si el usuario elige el ajuste "auto".

• CORRECCIÓN DE ERRORES

Algunas memorias poseen mecanismos de corrección de errores, con el fin de garantizar la integridad de la información que contienen. Este tipo de memoria se utiliza por lo general en sistemas que trabajan con información esencial, motivo por el cual este tipo de memoria se encuentra en servidores.

BIT DE PARIDAD

Los módulos con bits de paridad garantizan que los datos contenidos en la memoria sean los necesarios. Para obtener esto, uno de los bits de cada octeto almacenado en la memoria se utiliza para almacenar la suma de los bits de datos. El bit de paridad vale 1 cuando la suma de los bits de información arroja un número impar, y 0 en el caso contrario.

De este modo, los módulos con bit de paridad permiten la integración de los datos que se verificarán, aunque por otro lado, no prevén la corrección de errores. Hay que tener en cuenta que de 9 Mega-octetos

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 34 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

(Mo) de memoria sólo 8 se emplearán para almacenar datos, dado que el último mega-octeto se utiliza para almacenar los bits de paridad.

MÓDULOS ECC

Los módulos de memoria ECC (Códigos de Corrección de Errores), disponen de varios bits dedicados a la corrección de errores (conocidos como bits de control). Dichos módulos, utilizados principalmente en servidores, permiten la detección y la corrección de errores.

CANAL DOBLE

Algunos controladores de memoria disponen de un canal doble para la memoria. Los módulos de memoria se utilizan en pares con el fin de lograr un mayor ancho de banda y así poder utilizar al máximo la capacidad del sistema. Al utilizar el Canal Doble, resulta indispensable utilizar un par de módulos idénticos (de la misma frecuencia y capacidad, y, preferentemente, de la misma marca).

4.3.2. MEMORIA DE SÓLO LECTURA

La memoria de sólo lectura, llamada ROM, es un tipo de memoria que permite guardar la información contenida en ella aun cuando la memoria no recibe electricidad. Básicamente, este tipo de memoria tiene únicamente acceso de sólo lectura. Sin embargo, es posible guardar información en algunos tipos de memoria ROM.

Este tipo de memoria permite almacenar la información necesaria para iniciar el ordenador. De hecho, no es posible almacenar esta información en el disco duro, dado que los parámetros del disco (vitales para la inicialización) forman parte de dicha información y resultan esenciales para el arranque. Existen diferentes memorias de tipo ROM que contienen dichos datos esenciales para iniciar el ordenador, entre ellas:

El BIOS (Basic Imput Ouput Sistem), es un programa que permite controlar las principales interfaces de entrada-salida, de ahí el nombre BIOS ROM que a veces se le da al chip de la memoria de sólo lectura de la placa madre que lo aloja.

El Cargador de Bootstrap: programa para cargar memoria (de acceso aleatorio) al sistema operativo y ejecutarla. Éste, generalmente busca el sistema operativo de la unidad de disquetes y luego el disco duro, lo que permite que el sistema operativo se ejecute desde el sistema de disquetes o unidad óptica en el caso de que ocurra algún desperfecto en el sistema instalado en el disco duro.

La Configuración CMOS es la pantalla que se visualiza al iniciarse el ordenador. Se utiliza para modificar los parámetros del sistema (a menudo erróneamente llamada BIOS).

La Auto-prueba de Encendido (POST) es un programa que se ejecuta automáticamente cuando arranca el sistema, permitiendo de esta manera probar dicho sistema (razón por la cual el sistema "cuenta" la RAM en el inicio).

Dado que las memorias ROM son mucho más lentas que las RAM (el tiempo de acceso en el caso de la ROM es de unos 150 ns, mientras que para la SDRAM es de unos 10 ns), las instrucciones suministradas en la ROM a veces se copian a la RAM en el inicio; proceso denominado respaldo, aunque a menudo se le llama memoria de respaldo).

• TIPOS DE MEMORIAS DE SOLO LECTUTRA

Las memorias ROM han evolucionado gradualmente desde memorias fijas de sólo lectura hasta convertirse en memorias que pueden programarse y reprogramarse.

ROM

Las primeras memorias ROM se fabricaron utilizando un procedimiento que escribe directamente la información binaria en una placa de silicio mediante una máscara. Este procedimiento hoy en día es obsoleto.

PROM

Las memorias PROM (Programmable Read Only Memory, o Memoria Programable de Sólo Lectura), fueron desarrolladas a fines de la década del 70 por La compañía Texas Instruments. Dichas memorias consisten en chips que comprimen miles de fusibles (o diodos) capaces de "quemarse" mediante un

INTRODUCCIÓN A LA COMPUTACIÓN UNIDAD II AÑO 2012

Página 35 de 35

Prof.: Jorge N Delfino Prof.: Héctor D Calzada

dispositivo denominado "programador ROM", aplicando un alto voltaje (12V) a los chip de memoria a marcar. Los fusibles quemados corresponden a 0 y los demás a 1.

EPROM

Las memorias EPROM (Erasable Programmable Read Only Memory, o Memoria Programable y Borrable de Sólo Lectura), son memorias PROM que se pueden borrar. Estos chips disponen de un panel de cuarzo que deja entrar los rayos ultra-violeta. Cuando el chip es sometido a rayos ultra-violeta de una determinada longitud de onda, se reconstituyen los fusibles, lo que implica que todos los bits de memoria vuelven a 1. Por esta razón, este tipo de PROM se denomina borrable.

EEPROM

Las memorias EEPROM (Electrically Erasable Programmable Read Only Memory, o Memoria Programable de Sólo Lectura Borrable Eléctricamente) también son memorias PROM borrables, pero a diferencia de la anterior, se pueden borrar mediante la sencilla aplicación de una corriente eléctrica, es decir, incluso si se encuentran en posición en el ordenador.

Existe una variante de estas memorias, conocida como memoria flash (también Flash ROM o Flash EPROM). A diferencia de las memorias EEPROM clásicas, que utilizan 2 o 3 transistores por cada bit a memorizar, la memoria EPROM Flash utiliza un solo transistor. Además, la memoria EEPROM puede escribirse y leerse palabra por palabra, mientras que la Flash únicamente puede borrarse por páginas (el tamaño de las páginas disminuye constantemente).

Por último, la memoria Flash es más densa, lo que implica que pueden producirse chips que contengan cientos de megabytes. De esta manera, las memorias EEPROM son preferibles a la hora de tener que memorizar información de configuración, mientras que la memoria Flash se utiliza para código programable. La acción de reprogramar una memoria EEPROM se denomina actualización.