lectura 1 - introducción al funcionamiento de un microordenador corregida cargar

78
Módulo 1 Introducción al funcionamiento de un Microordenador.

Upload: leandro-ismael-anais

Post on 21-Dec-2015

11 views

Category:

Documents


0 download

DESCRIPTION

introducción al funcionamiento de las computadoras

TRANSCRIPT

Page 1: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

Módulo 1 Introducción al funcionamiento de un Microordenador.

Page 2: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

1

Unidad 1: Introducción

al funcionamiento de

un Microordenador 1.1. Sistemas de numeración. Sistemas posicionales

y no posicionales. Expresión de un número en

potencia de su base. Sistema decimal, binario, octal y

hexadecimal. Métodos de conversión de números

enteros y fraccionarios. Complemento de un número.

Operaciones fundamentales: suma y resta. Binario,

octal y hexadecimal. Códigos. Tipos. Representación

de datos a nivel de máquina. Errores.

Los sistemas digitales actúan bajo el control de variables de naturaleza discreta. Las variables discretas (a diferencia de las continuas) son las variables que pueden tomar un conjunto acotado de valores. Esto es así por la fácil implementación de componentes físicos con dos estados diferenciados. Estas variables discretas suelen ser binarias (dos estados).

En el procesamiento de datos y en el control industrial, los sistemas digitales deben realizar operaciones con números discretos.

Los números pueden representarse en diversos sistemas de numeración, los cuales se diferencian entre sí por la base o cantidad de símbolos distintos que utilizan para representar una cifra.

Un sistema de numeración es un conjunto de símbolos y reglas de generación que permiten construir cualquier número válido.

En símbolos un sistema de numeración se puede representar como:

Page 3: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

2

SN = (S, R)

Donde:

SN significa sistema de numeración

S significa símbolos

R, significa reglas permitidas o válidas para un sistema en particular.

Por ejemplo para nuestro sistema decimal, la cantidad de símbolos es 10 y son: 0,1, 2, 3, 4, 5, 6, 7, 8 y 9. Par el sistema de numeración binario, la cantidad de símbolos es 2, estos son: 0 y 1

En cuanto a las reglas, estas son propias de cada sistema de numeración.

CLASIFICACIÓN DE LOS SISTEMAS DE NUMERACIÓN

Los sistemas de numeración se pueden clasificar en: sistemas posicionales y no posicionales.

Sistemas no posicionales: en estos sistemas, los dígitos de una cifra tienen el valor del símbolo empleado, no depende de la posición del dígito dentro de la cifra (número). Un ejemplo de este sistema es el sistema de numeración romano.

Sistemas posicionales: el valor de un dígito depende tanto del símbolo como de la ubicación relativa del mismo dentro de la cifra (número). Nuestro sistema de numeración es posicional ya que el símbolo 2 dentro de la cifra 1200 y la cifra 520 no tienen el mismo valor, en el primer caso el 2 representa el 200 y en el segundo caso representa el 20.

REPRESENTACIÓN DE LOS NÚMEROS EN SISTEMAS

POSICIONALES:

Existe un teorema fundamental, que establece una expresión para la representación de un número (sistema posicional) en una base b.

Este teorema fundamental, expresa que un número N, en un sistema de base b, puede representarse por medio de un polinomio de potencias de la base, multiplicadas por un símbolo perteneciente al sistema.

Page 4: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

3

En general, entonces:

ai es un número perteneciente al sistema y por lo tanto cumple con la siguiente condición:

0≤ a i ≤ b

Por ejemplo, el número 87, 54 en sistema de numeración decimal, se presenta por el siguiente polinomio:

SISTEMA BINARIO

Este sistema solamente usa dos símbolos: 0 y 1 (reciben el nombre de bit) Ejemplos de números en binario son:

1001,001

11111

11

100

1,001001

La conversión de un número entero de base dos a decimal se realiza fácilmente representando el número mediante su polinomio equivalente y operando este último en base 10.

Suponiendo que se desee convertir el número 111,0112 a decimal, haremos así:

Entonces: 111,0112 = 7, 37510

En la tabla que se muestra a continuación se presentan las primeras 16 equivalencias entre sistema binario y el decimal:

Page 5: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

4

Para realizar la conversión de un número en base 10 a base 2, hay que dividir el número en base 10 sucesivamente por 2 hasta que el último resto sea menor a 2. Los restos de todas las divisiones junto al último cociente, constituyen los dígitos en binario de la equivalencia del número decimal a binario. El último cociente es el dígito más significativo, y el dígito menos significativo es el resto de la primera división realizada.

Para que esto se pueda entender, veremos un ejemplo con números. Si queremos convertir el número 68 decimal a binario hacemos:

68: 2 → cociente = 34 ; resto = 0

34 : 2 → cociente =17 ; resto =0

17: 2 → cociente =8 ; resto = 1

8. 2 → cociente = 4, resto = 0

4:2 → cociente = 2; resto =0

2:2 → cociente =1; resto 0

Entonces:

6810 = 1 0 0 0 1 0 02

Page 6: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

5

SISTEMA OCTAL

Este sistema usa ocho símbolos diferentes, los cuales son: 0, 1, 2, 3, 4, 5, 6, 7. Ejemplos de números en octal son:

1441,0018

115618

318

331078

6,0010058

La conversión de un número entero de base ocho a decimal se realiza fácilmente representando el número mediante su polinomio equivalente, como se mostró para el sistema binario, y operando este último en base 10.

Suponiendo que se desee convertir el número 21,042 a decimal, haremos así:

Entonces:

21,042 = 17, 015610

En la tabla que se muestra a continuación se presentan las primeras 16 equivalencias entre sistema binario y el decimal:

Para realizar la conversión de un número en base 10 a base 8, hay que dividir el número en base 10 sucesivamente por 8 hasta que el último resto sea menor a 8. Los restos de todas las divisiones junto al último cociente, constituyen los dígitos en octal de la equivalencia del número decimal a octal. El último cociente es el dígito más significativo, y el dígito menos significativo es el resto de la primera división realizada.

Para que esto se pueda entender, veremos un ejemplo con números. Si queremos convertir el número 68 de decimal a octal hacemos:

68: 8 → cociente = 8 ; resto = 4

8 : 8 → cociente =1 ; resto =0

Page 7: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

6

Entonces:

6810 = 1 0 48

SISTEMA HEXADECIMAL

Este sistema usa 16 símbolos, los cuales son: 0,1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Las letras pueden estar en mayúscula o minúsculas (aunque todas en una u otra forma). Ejemplos de números en hexadecimal son:

A001,00116

11C1316

FF16

E10016

F,0230116

La conversión de un número entero de base 16 a decimal se realiza fácilmente representando el número mediante su polinomio equivalente y operando este último en base 10.

Suponiendo que se desee convertir el número A1,012 a decimal, haremos así:

A1,012 = 10 . 16 1 + 1 . 16 0 + 0 . 16 -1 + 1 . 16 -2

= 160 + 1 + 0 + 1/256

= 161, 256

Entonces:

A1,0116 = 161, 25616

En la tabla 2 que se muestra a continuación se presentan las 16 equivalencias entre sistema binario natural y el hexadecimal:

Para realizar la conversión de un número en base 10 a base 16, hay que dividir el número en base 10 sucesivamente por 16 hasta que el último resto sea menor a 16. Los restos de todas las divisiones junto al último cociente, constituyen los dígitos en hexadecimal de la equivalencia del número decimal a hexadecimal. El último cociente es el dígito más

Page 8: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

7

significativo, y el dígito menos significativo es el resto de la primera división realizada.

Para que esto se pueda entender, veremos un ejemplo con números. Si queremos convertir el número 68 decimal a binario hacemos:

68: 2 → cociente = 34 ; resto = 0

34 : 2 → cociente =17 ; resto =0

17: 2 → cociente =8 ; resto = 1

8. 2 → cociente = 4, resto = 0

4:2 → cociente = 2; resto =0

2:2 → cociente =1 ; resto 0

Entonces:

6810 = 1 0 0 0 1 0 02

COMPLEMENTO DE UN NÚMERO

En el sistema binario existen dos tipos de complementos: el complemento a la base menos uno y el complemento a la base dos.

Page 9: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

8

El complemento de un número es otro número.

El complemento a 1 se obtiene invirtiendo el estado de los dígitos de una cifra binaria, por ejemplo:

1001002 → complemento a 1 es → 0110112

1111002 → complemento a 1 es → 0000112

1101002 → complemento a 1 es → 0010112

1001012 → complemento a 1 es → 0110102

1001112 → complemento a 1 es → 0110002

1000002 → complemento a 1 es → 0111112

1000012 → complemento a 1 es → 0111102

El complemento a 2 se obtiene, aplicando en primera instancia el complemento a 1 (invirtiendo el estado de los dígitos de una cifra binaria) y luego sumándole 1 al bit menos significativo (este es el bit que se encuentra en el extremo derecho de la cifra binaria, por ejemplo: El complemento a 2 de 0112 es:

0112 → complemento a 1 →100 2 + 12 = 101 2

Otros ejemplos:

10112 → complemento a 1 →0100 2 + 12 = 0101 2

1012 → complemento a 1 →010 2 + 12 = 011 2

110112 → complemento a 1 →00100 2 + 12 = 00101 2

OPERACIONES: SUMA Y RESTA BINARIA

Las reglas o leyes que rigen las operaciones en el sistema de base dos son paralelas a las que rigen el sistema en base diez.

SUMA BINARIA ARITMÉTICA

La suma aritmética de dos bits es sencilla en el sistema en base dos porque solo existen dos valores para cada bit, es decir 0 y 1.

La tabla de la suma en el sistema binario es:

Page 10: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

9

La suma binaria toma el valor 1 cuando uno solo de los sumandos tiene ese valor, mientras que cuando ambos sumandos tienen el valor 1, la suma es cero y se produce un acarreo.

Con esta tabla se construye un diagrama en bloque llamado semisumador.

El diagrama en bloque que representa esta tabla se muestra a continuación:

En cuanto a cómo se implementa en la práctica un circuito semisumador, es un tema que escapa al alcance de este trabajo. Solo diremos, que un bloque semisumador es un circuito combinacional, en el que el estado de las variables de salida depende solamente de la combinación (0 y 1) de estados de las variables de entrada. Mediante el álgebra de Boole, se puede dar una expresión matemática a la función del semisumador.

Internamente un semisumador se construye por medio de interconexión de compuestas lógicas.

Page 11: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

10

De esto se deduce que la suma aritmética de dos bit es una función lógica de dos variables de entrada y de dos variables de salida, las cuales son la suma binaria s y el acarreo c.

Cuando se desean sumar dos bits que forman parte de un número binario, es necesario sumar a ambos el acarreo precedente de la suma de los bits de peso inmediato inferior, la tabla anterior no puede expresar esta situación, para lo cual se diseña un diagrama en bloque de un sumador total, como se muestra a continuación:

Diagrama en bloque del sumador completo

La tabla de verdad o tabla que representa el funcionamiento de un sumador total, se muestra a continuación:

Page 12: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

11

El circuito sumador total o completo es un circuito combinacional, en el que el estado de las variables de salida depende solamente de las combinaciones (0 y 1) de estados de las variables de entrada y mediante el álgebra de Boole, se puede dar una expresión matemática a la función del circuito sumador total o completo. Internamente un circuito sumador total se construye por medio de interconexión de compuestas lógicas.

Internamente un sumador total se construye por medio de interconexión de compuestas lógicas.

Entonces para sumar en binario 10010 2 + 110012, se deben usar las reglas de la tabla 4. La suma es:

10010 2 + 110012 = 1010112

Otros ejemplos:

a) 10010 2 + 110012 = 1010112

b) 1001 2 + 110012 = 1000102

c) 10000 2 + 110012 = 1010012

d) 100 2 + 1102 = 10102

e) 10 2 + 1102 = 101002

RESTA BINARIA

La resta binaria de dos números binarios es equivalente a una suma algebraica.

Por ejemplo, restar el número positivo b del número positivo a es equivalente a sumar al número a el número –b. Entonces si los números negativos se representan adecuadamente, la resta puede ser convertida en una suma y entonces usar un bloque de circuito sumador.

Entonces para poder hacer la resta veremos cómo se representa un número negativo.

NÚMEROS NEGATIVOS

Page 13: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

12

Para indicar si un número binario es positivo o negativo usaremos un bit de signo, si este bit es 0 entonces es un número positivo y si es 1 entonces el número es negativo. Esta forma se llama de valor absoluto, porque los números negativos se representan mediante su valor absoluto y el signo, se utilizan n bits para indicar los números binarios de n-1 bits.

Esta forma de representar los números negativos implica que para la realización de la resta es necesario utilizar un circuito restador distinto del circuito sumador.

Entonces, el convenio de disponer de un bit de signo se combina con el representar un número negativo de n bits ( n-1 bits de información más un bit de signo) mediante el complemento a la base dos y complemento a la base menos uno. Mediante la adopción de estos dos convenios, la operación de la resta se convierte en suma, y entonces mediante un único circuito sumador pueden realizarse tanto la operación de suma como la de resta.

OPERACIÓN CON NÚMEROS NEGATIVOS MEDIANTE

EL CONVENIO DEL COMPLEMENTO A DOS

Veremos la resta del número b del número a, ambos de n bits (n-1 bits de información y un bit de signo). Los casos que se pueden presentar son:

a y b son ambos positivos

a y b son ambos negativos

a es positivo y b es negativo

a es negativo y b positivo

A continuación analizaremos algunos casos:

1) a y b positivos

Supongamos:

a-b = ?

a = 2510 = 0 11001

b = 18 10 = 0 10010

a-b = 710

Page 14: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

13

-b = 1 01110

Entonces a + ( -b) = 0 11001 + (1 01110 ) = 1 0 00111

Despreciando el acarrero → 0 00111 representa el 710 positivo

Supongamos: b – a = ?

b-a=1810 -2510

= -710

Entonces b + ( -a) = 0 10010 + ( 1 00111) = 1 11001

Se puede comprobar que este resultado es el complemento a 2n de :

710 = 0001112

2) a b ambos negativos

Hay que recordar que si el resultado es positivo se produce un acarreo que no es tenido en cuenta y, si el resultado de la operación es negativo, el resultado queda representado mediante su complemento a 2.

Si a= -2010 y b = -2410

Entonces

(-a) – ( -b) = -20 – ( -24)

= 4

En binario es así:

Page 15: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

14

CÓDIGOS TIPOS

Un código es una representación unívoca de las cantidades de tal forma que a cada una de ellas, se le asigna una combinación de símbolos determinada y viceversa.

Por esta definición de código, entonces podemos afirmar que los sistemas de numeración estudiados anteriormente constituyen códigos de representación de las cantidades.

El sistema binario recibe el nombre de código binario natural. La utilización de este código presenta grandes ventajas en la realización de las operaciones aritméticas. Sin embargo existen muchos otros sistemas de control digitales que emplean otros tipos de códigos binarios diferentes al binario natural a causa de motivos particulares.

Con n cifras binarias o dígitos (o bits) se pueden obtener 2n combinaciones diferentes. Cada combinación se puede asignar a una cantidad diferente. Por ello el número de de asignaciones posibles es el de las permutaciones de las 2n combinaciones.

CÓDIGOS BINARIOS CONTINUOS Y CÍCLICOS

Un código binario es continuo si las combinaciones correspondientes a números decimales consecutivos son adyacentes. Se denominan combinaciones binarias adyacentes a aquellas que difieren solamente en un bit.

Un código continuo en que la última combinación es adyacente a la primera se denomina cíclico. Estos códigos se utilizan principalmente en los convertidores muy rápidos de variables analógicas a digitales y en los codificadores de posición que convierten un ángulo en una combinación binaria mediante un disco codificado.

A continuación se muestran ejemplos de estos códigos.

Page 16: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

15

Otro ejemplo:

Ejemplos de códigos decimales codificados en binario ( BCD)

Page 17: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

16

CÓDIGOS CORRECTORES DE ERRORES

Los códigos correctores de errores no sólo indican la existencia de un error sino que proporcionan información de cuál es la cifra o cifras binarias erróneas y por consiguiente permiten su corrección invirtiendo simplemente el bit correspondiente.

Estos códigos se utilizan solamente en la transmisión de información, especialmente cuando no es posible volver a enviarla en caso de producirse un error. Esto sucede en general en los sistemas digitales que trabajan en tiempo real.

El código de Hamming es un código de esta clase, a continuación presentamos su tabla:

Page 18: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

17

1.2. Circuitos digitales combinacionales y

secuenciales. Introducción a los circuitos lógicos.

Forma canónica de una función. Minimización de

circuitos. Método de mapas de Karnaugh de 2, 3 y 4

variables. Circuitos digitales combinacionales. Tipos.

Circuitos digitales secuenciales. Latches, flip-flop y

registros. Contadores. Síncronos y asíncronos.

CIRCUITOS COMBINACIONALES Y SECUENCIALES

Los sistemas lógicos combinacionales son aquellos en los que en cada instante en el tiempo, el estado lógico de sus salidas depende únicamente del estado lógico de sus entradas.

En estos circuitos la noción de tiempo no es tenida en cuenta.

La primera gran característica de estos sistemas, es que su funcionamiento puede ser representado por una tabla o tabla de verdad en la cual se colocan a la izquierda todas las combinaciones posibles según la cantidad de variables de entrada. También pueden ser representadas mediante expresiones del álgebra de Boole, mediante sumas de productos, o productos de suma, ya sea a través de expresiones con variables o expresiones numéricas (números equivalentes).

En otra materia ya has visto Álgebra de Boole, y has visto que las funciones lógicas se pueden simplificar por medio de los teoremas y postulados del Álgebra de Boole. En particular si la función depende de 3 o más variables, realizar simplificaciones es bastante difícil hacerlo, en el sentido de que no representa una forma sistemática de minimizar las funciones lógicas.

El diseño de todo sistema combinacional se inicia mediante la obtención de una tabla de verdad a partir de las especificaciones que indican los valores que deben tomar la función para cada una de las combinaciones de entrada de las cuales depende. De la tabla de verdad se obtienen las expresiones canónicas a partir de las cuales se realizará la simplificación.

Por ejemplo: Diseñar un sistema combinacional de 3 variables de entrada a, b y c cuya salida debe tomar el valor lógico 1 cuando 2 variables de entrada tomen el valor lógico 1.

Lo primero es la tabla de verdad de este enunciado. En la tabla del lado izquierdo de la tabla van las variables de entrada con todas las

Page 19: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

18

combinaciones posibles de ellas en binario natural, en orden ascendente. Del lado derecho de la tabla va la salida con los estados que toma según las combinaciones de entrada.

Los circuitos secuenciales son aquellos en los que el valor de la salida en un instante determinado no dependerá solamente del estado lógico de sus entradas en dichos instantes sino también del estado interno, lo cual se relaciona con la secuencia de estados previos de la entrada.

Los circuitos secuenciales tienen la propiedad de poder memorizar un estado estable. Con estos circuitos se implementan las memorias en general.

Los circuitos lógicos son implementaciones que obedecen a estados lógicos, es decir 0 y 1 lógico Los circuitos lógicos se implementan con compuestas lógicas estás son: or, and, inversor (not), y combinaciones de ellas.

Compuestas básicas y sus tablas de verdad:

a) Compuesta and

Tabla de verdad:

Page 20: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

19

Circuito lógico:

b) Compuesta or (inclusiva)

Tabla de verdad:

Circuito lógico:

c) Compuesta inversor o not

Tabla de verdad:

Circuito lógico:

Existen otras compuestas más que surgen de la combinación de éstas.

Page 21: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

20

FORMA CANÓNICA DE UNA EXPRESIÓN

Una función de un álgebra de Boole es una variable binaria cuyo valor es igual al de una expresión algebraica en la que se relacionan entre sí las variables binarias por medio de operaciones básicas. Producto lógico, suma lógica e inversión.

Se representa una función lógica por medio de la expresión f = f (a, b,c…) El valor lógico de f, depende de las variables a,b,c….

Se llama término canónico de una función lógica a todo producto o suma en la cual aparecen todas las variables en su forma directa o inversa. Al primero de ellos se le llama producto canónico (minitérminos) y al segundo suma canónica (maxitérminos).

Por ejemplo sea f (a,b,c)

Producto canónico

Suma canónico

El número máximo de productos canónicos o sumas canónicas vienen dado por las variaciones con repetición de dos elementos tomados de n en n. El número de productos o sumas canónicas de n variables es por lo tanto 2n.

Para mayor facilidad de representación cada término canónico, se expresa por medio de un número decimal equivalente al binario obtenido de sustituir las variables ordenadas con un criterio determinado por un 1 o un 0, según aparezcan en su estado directo ( sin negación) o en su estado complementado (negada).

Por ejemplo para f (a,b,c)

Producto canónico equivale a 101 es decir 5

Suma canónico equivale a 010 es decir 2

Entonces la expresión:

f(a,b,c) = + + a b c se puede representar por:

f (a,b,c) =∑3 (5, 2, 7) en donde el símbolo ∑ significa la suma lógica

Para la siguiente tabla de verdad, se muestra la expresión en maxitérminos y en minitérminos:

Page 22: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

21

Tabla de verdad

f (a,b,c) = ∑3 ( 2, 4,6)

f (a,b,c) = π3 ( 0, 1, 3, 5, 7)

SIMPLIFICACIONES POR EL MÉTODO DE KARNAUGH

No existe actualmente un criterio único de minimización de la expresión de una función lógica. En este sentido adoptaremos como expresión mínima, la expresión en forma de suma de productos o productos de suma que tenga un número mínimo de términos con el menor número de variables posibles en cada uno de ellos.

Existe un método sistemático para simplificar una expresión, esto es usando los mapas de Karnaugh.

El método de Karnaugh es un método tabular en el cual los términos canónicos adyacentes se agrupan en una tabla de tal manera que estén físicamente contiguos, y por lo tanto sea muy sencillo realizar agrupaciones que permitan reducir al mínimo la expresión de la función.

En las tablas o mapas de karnaugh, cada cuadrado corresponde a un término (producto o suma) canónico cuyo número se indica en el vértice inferior.

Los cuadros que tienen un lado común, es decir, que son físicamente adyacentes, corresponden a términos canónicos que son lógicamente adyacentes y los números decimales que les corresponden se diferencian en una potencia de 2. A demás, los cuadrados de la fila superior son adyacentes a los respectivos de la fila inferior y los de la columna de la izquierda a los de la derecha.

Page 23: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

22

A continuación se muestran las tablas de karnaugh para 2,3 y 4 variables:

Los cuadrados correspondientes a los términos canónicos que forman parte de la función se indican mediante un 1 y los correspondientes a los términos que no forman parte de la función se dejan en blanco.

Para obtener la expresión algebraica más sencilla de la función es necesario realizar en la tabla el mínimo número de agrupaciones de términos de la máxima complejidad, de modo que cada uno cubra todos los 1 de la tabla.

El procedimiento sistemático de obtener la expresión más simple es el siguiente:

1. Se toman todos los unos que no se pueden combinar con ningún otro.

2. Se forman los grupos de dos unos que no pueden formar un grupo de cuatro.

3. Se forman los grupos de cuatro unos que no pueden formar uno de ocho.

4. Cuando se hayan cubierto todos los unos se detienen el proceso.

En la práctica hay que hacer este proceso para los minitérminos y para los maxitérminos, y luego elegir la más sencilla de las respuestas.

Page 24: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

23

A continuación se realizan algunos ejemplos:

1) Sea la función f(a,b,c,d) = ∑ ( 2,3,5,7,10,11,15)

Se pueden enlazar unos que ya pertenecen a algún grupo para constituir otro nuevo siempre que se forme un grupo con al menos un uno que no pertenece a ningún grupo. En este sentido, observar que el 1 que ocupa el cuadro con el número decimal 7 pertenece a un agrupamiento de 4 unos, el 1 del cuadro 5 se enlaza con el uno del cuadro 7, permitiendo que el 1 del cuadro 5 no quede solo, situación parecida pasa con los unos de los cuadros 11, 10, 3 y 2.

En el mapa se observan 3 agrupamientos realizados con distintos colores, 2 grupos de 4 unos y un grupo de 2 unos. El producto lógico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las células y el valor 1 en la otra mitad y asignando la forma directa a la variable que toma el valor 1 y la forma inversa a la que toma el valor 0.

La expresión simplificada de f es:

Page 25: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

24

2) Sea la función f(a,b,c,d) = ∑ ( 0,2,3,5,8,10,11)

En el mapa se observan 3 agrupamientos realizados con distinto color, 2 grupos de 4 unos y un grupo de 1 sólo uno. El producto lógico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las células y el valor 1 en la otra mitad y asignando la forma directa a la variable que toma el valor 1 y la forma inversa a la que toma el valor 0.

La expresión simplificada de f es:

3) Sea la función f(a,b,c,d) = ∑ ( 4,5,6,7,9,10,11)

La tabla o mapa de Karnaugh, se muestra a continuación, en ella se han colocado unos en los casilleros que se corresponden con los números decimales que indica la expresión equivalente de la función f.

Mediante distintos colores se han realizado los agrupamientos, hay que tener presente que, el número de elementos que forman los grupos siempre es potencia de 2, es decir NO PUEDE HABER GRUPOS CON 3 O 5 ELEMENTOS.

Los elementos que se agrupan deben ser física y lógicamente adyacentes, los elementos adyacentes solo difieren en el estado de una sola variable del cuadro.

Page 26: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

25

Cuando logramos formar un grupo de 4 elementos, como 4 es el resultado de 22, la expresión en minitérminos tienen 2 variables menos que la expresión sin simplificar. Cuando formamos grupos de 8 elementos adyacentes, como 8 = 23, entonces se eliminan 3 variables de la expresión del minitérmino.

En el mapa se observan 3 agrupamientos realizados con distinto color, 2 grupos de 2 unos y un grupo de 4 unos. El producto lógico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las células y el valor 1 en la otra mitad y asignando la forma directa a la variable que toma el valor 1 y la forma inversa a la que toma el valor 0.

La expresión simplificada de f es:

4) Sea la función f(a,b,c) = ∑ ( 1,2,5,6,7)

La tabla o mapa de Karnaugh, se muestra a continuación, en ella se han colocado unos en los casilleros que les corresponden los números decimales que indica la expresión equivalente de la función f.

Page 27: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

26

En el mapa se observan 3 agrupamientos realizados con distinto color, 3 grupos de 2 unos. El producto lógico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las células y el valor 1 en la otra mitad y asignando la forma directa a la variable que toma el valor 1 y la forma inversa a la que toma el valor 0.

La expresión simplificada de f es:

f(a,b,c) = b c + a b + b c

5) Sea la función f(a,b,c,d) = ∑ ( 0,1,2,3,4,5,6,7,8,10)

La tabla o mapa de Karnaugh, se muestra a continuación, en ella se han colocado unos en los casilleros de la tabla cuyos números decimales coincidan con los que están expresados en la función f.

Cuando logramos formar un grupo de 4 elementos, como 4 es el resultado de 22, la expresión en minitérminos tienen 2 variables menos que la expresión sin simplificar. Cuando formamos grupos de 8 elementos adyacentes, como 8 = 23, entonces se eliminan 3 variables de la expresión del minitérmino.

Page 28: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

27

En el mapa se observan 2 agrupamientos realizados con distinto color, 1 grupo de 8 unos y un grupo de 4 unos. El producto lógico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las células y el valor 1 en la otra mitad y asignando la forma directa a la variable que toma el valor 1 y la forma inversa a la que toma el valor 0.

La expresión simplificada de f es:

CIRCUITOS COMBINACIONALES

Existen varios tipos de circuitos combinacionales, con funciones específicas, algunos de ellos son: codificadores, decodificadores, multiplexores, demultiplexores, sumadores, comparadores binarios.

CODIFICADORES

Son circuitos combinacionales de 2n entradas y n salidas realizados de tal forma que cuando una sola de las entradas adopta un estado lógico determinado 0 o 1, a la salida aparece la combinación binaria correspondiente al número decimal asignado a dicha entrada.

Page 29: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

28

Ejemplo de un circuito codificador

DECODIFICADORES

Los circuitos decodificadores son sistemas combinacionales que generan los productos canónicos de una combinación binaria aplicada a sus entradas y se dividen en excitadores y no excitadores, según que sus salidas puedan o no controlar respectivamente a un indicador numérico. Poseen m entradas (código) y 2m salida, según la combinación de entrada se activará una sola salida, la que tienen el subíndice del mismo valor que la combinación aplicad a la entrada. Por ejemplo, si se aplica el código 101, a la salida se pondrá en alto (tensión positiva) la S5.

Ejemplo de un circuito decodificador

Page 30: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

29

MULTIPLEXORES

Los multiplexores son circuitos combinacionales formado por un cierto número n de entradas de información y m entradas de selección (tal que 2m =n). Cada combinación binaria presente en las entradas de selección produce la conexión de una de las entradas de datos o información con la salida. Por ejemplo, si se coloca en las entradas de selección la combinación 101, la información que este en la A5 pasará a la salida Z.

Ejemplo de un circuito multiplexor

DEMULTIPLEXORES

Son circuitos combinacionales estructurados de forma inversa que los multiplexores, es decir poseen una única entrada de datos o información, m entradas de selección y n salidas. Según la combinación presente en las entradas de selección, produce la conexión de la única entrada de datos o información con la salida correspondiente. Por ejemplo si se aplica la combinación 111 a las entradas de selección, se conecta la información que trae la entrada E con la salida Z7.

Ejemplo de un circuito demultiplexor

Page 31: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

30

COMPARADORES BINARIOS

Los circuitos comparadores son sistemas combinacionales que detectan si dos combinaciones binarias de n bits en el sistema binario natural son iguales o no y en este último caso cuál de ellas es mayor.

CIRCUITOS SECUENCIALES

Los sistemas o circuitos secuenciales tienen la capacidad de almacenar el estado de las entradas en un instante y utilizarlo para tomar decisiones posteriores cuando cambie el estado de aquéllas.

Estos sistemas tienen entonces la capacidad de memorizar el estado de las entradas y convertirlo en un estado interno del propio sistema. Entonces, el valor de la salida en un instante determinado no dependerá solamente del estado de las entradas en dicho instante sino también del estado interior.

Por todo lo expuesto hasta aquí, podemos decir que un sistema secuencial reacciona ante secuencias de estados de entrada de una forma determinada que depende de su construcción física y que por lo tanto es un sistema automático, que recibe el nombre de autómata finito debido a poseer un número finito de estados internos.

LATCH, FLIP-FLOP Y REGISTROS

Los latch o cerrojos, flip-flop y registros son sistemas digitales.

En general, se pueden representar estas estructuras por bloques que tienen entradas de información y salidas. Internamente estos circuitos secuenciales se construyen básicamente con compuertas lógicas. Tienen asociado una tabla de verdad que representa los estados presentes y futuros del dispositivo. Esta tabla varía en los estados de sus entradas y salidas según sus propias características.

Se clasifican en síncronos y asíncronos.

Los biestables (dos estados estables 0 y 1) asíncronos, son los que no tienen una señal externa de reloj o temporización que indican cuando realizar la lectura del esta de las señales de información de entrada.

La siguiente figura muestra un biestable asíncrono.

Page 32: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

31

Los biestables (dos estados estables 0 y 1) síncronos, son los que tienen una señal externa de entrada de reloj o temporización que indican cuando realizar la lectura del esta de las señales de información de entrada.

La siguiente figura muestra un biestable síncrono.

Los biestables sincronizados, la entrada de sincronismo controla la actuación de las entradas de información, los biestables sincronizados son de dos tipos diferentes:

a) Sincronizados por nivel

b) Sincronizados por flanco ( positivo o ascendente y flanco negativo o descendente)

Hay una gran variedad de biestables con distintas configuraciones que garantizan usos más específicos según la aplicación que se quiera realizar.

Los registros, son circuitos secuenciales de tipo síncrono generalmente por flanco, que tienen una sola entrada de datos D, una entrada de reloj (proveniente de un generador), y dos salidas Q y Q negada (su opuesta).

Los registros se utilizan para almacenar el estado de 1 bit.

Page 33: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

32

CONTADORES. SÍNCRONOS Y ASÍNCRONOS

Los contadores son circuitos secuenciales que permiten contar en binario, sea en código binario natural u otro tipo de código, en forma ascendente o descendente.

Los contadores se construyen con n bloques de biestables síncronos, donde cada bloque permite almacenar un bit. Por ejemplo, si se desea implementar un contador que cuente la secuencia en decimal 0, 1, 2, 3, 0,….., es decir que comience en 0 evolucione con cada pulso de reloj hasta alcanzar la cuenta 3 posteriormente con el siguiente pulso de reloj vuelve a 0 y continua en forma cíclica. Para representar el número decimal 3 necesito 2 bit, por lo tanto para realizar este contador necesito 2 bloques de biestables síncronos.

La diferencia entre contadores síncronos y asíncronos está en la forma de administrar la señal externa de reloj.

CONTADORES ASÍNCRONOS

Los contadores asíncronos, ondulantes o también llamados de rizado, se implementan con un tipo de flip-flop llamado biestable JK activado por señal de flanco de bajada, en modo de conmutación. El reloj externo ingresa a la señal de reloj del biestable menos significativo de la cadena o conjunto de biestables que forman al contador.

Las demás entradas de reloj se conectan a la salida Q del biestable inmediato anterior, para implementar un contador ascendente. Si se desease realizar una cuenta descendente, entonces habría que conectar las entradas de reloj de los biestables (excepto el menos significativo) con las salidas Q negadas del biestable inmediato anterior. A continuación, se muestra el esquema en bloques del biestable JK activado por flanco descendente, junto a su tabla de verdad.

Page 34: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

33

A continuación se muestra un contador asíncrono de modo 4, es decir que cuenta 4 estados distintos, estos son los correspondientes a 00→ 01 →10 →11 →00…..

Observar que las entradas de J y K de cada flip-flop se conectan a 1 “lógico”. Las salidas del contador son Q0 y Q1 . Observar que el reloj externo solo entra al primer flip-flop ( FF1) y el FF2 toma como señal de reloj la salida Q del biestable inmediato anterior.

Contador asíncrono de Mod 4

CONTADORES SÍNCRONOS

Los contadores síncronos se implementan con un tipo de flip-flop JK activado por señal de flanco o FF tipo D. El reloj externo ingresa a todas las entradas de reloj de todos los biestables que forman el contador.

Se realiza una tabla de estados presentes y de estados futuros, indicando la evolución de la cuenta con cada pulso del reloj. Luego se realizan las simplificaciones por Karnaugh, y luego se arman las expresiones lógicas para las entradas de cada uno de los FF que forman al contador.

Page 35: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

34

1.3. Conceptos de Arquitectura y organización de un

computador, estructura y funcionamiento de un

computador. Función del microprocesador. Función

de la memoria. ¿Cómo interactúan el

microprocesador y la memoria? Arquitectura clásica

de un computador: Modelo de Von Neumann.

Hay una gran variedad de sistemas diferentes susceptibles de recibir la designación de computador; desde los simples microcontroladores que incluyen los semáforos en las calles, hasta las supercomputadoras encargadas de realizar cálculos en simulaciones muy complejas como pueden resultar los cálculos de trayectorias de misiles, navegaciones automáticas, caminatas espaciales, etc. Esta variedad se manifiesta tanto en la aplicación final, como en el costo, como en el tamaño. A pesar de esta enorme variedad de máquinas llamadas computadoras, se aplican sistemáticamente ciertos conceptos fundamentales. En este primer módulo se presentan los conceptos básicos y generales de las computadoras digitales.

Un computador es un sistema secuencial síncrono complejo que procesa información. La información dentro del computador es binaria, sólo son permitidos los valores lógicos: “1” y “0”. Estos valores lógicos se corresponden con los niveles de tensión eléctrica, el “1” lógico se corresponde con el nivel alto de tensión, mientras que el “0” lógico se corresponde con el nivel más bajo de tensión. Estos niveles eléctricos, pueden variar de un ordenador a otro, pues dependen de la tecnología de los dispositivos que conforman el computador.

El procesador central o núcleo está formado por millones de transistores y componentes electrónicos de un tamaño microscópico.

La información binaria se introduce en el ordenador mediante dispositivos periféricos que hacen de interfaz entre el mundo exterior y el computador. Es decir, traducen la información del mundo real en señales eléctricas, que serán interpretadas como unos o ceros. De manera similar, los periféricos permiten la comunicación desde el ordenador hacia el exterior, o bien hacia seres humanos u otras máquinas.

Un computador necesita energía eléctrica para que se ponga en marcha toda la circuitería electrónica que posibilita su funcionamiento.

La única forma de analizar un sistema tan complejo es basarse en una organización jerárquica. Un sistema jerárquico es un conjunto de sistemas interrelacionados, cada uno de los cuales se organiza a su vez

Page 36: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

35

en una estructura jerárquica, uno tras otro, hasta que se alcanza el nivel más bajo de subsistema elemental. La naturaleza jerárquica de los sistemas complejos es esencial tanto para su diseño como para su descripción. El diseñador sólo necesita tratar con un nivel a la vez. Cada nivel está formado por un conjunto de componentes y de interacciones entre ellos. El comportamiento de cada nivel depende sólo de la caracterización abstracta y simplificada del sistema que hay en el nivel inferior.

CONCEPTUALIZACIONES DE ARQUITECTURA Y

ORGANIZACIÓN DE UN COMPUTADOR

La arquitectura de computadores constituye un área que se refiere a las computadoras digitales en la interfaz entre hardware y software.

Cuando se describe un computador, frecuentemente se establece distinción entre arquitectura y organización.

La arquitectura de un computador se refiere a los atributos de un sistema que son visibles a un programador, y por ende tienen efecto directo sobre la ejecución lógica de un programa. La organización, en cambio se refiere a las unidades funcionales y sus interconexiones, que dan lugar a especificaciones arquitectónicas.

Un ejemplo de diseño arquitectónico es si el ordenador tendrá la instrucción de multiplicar, o el usuario deberá desarrollar un algoritmo particular para realizar la multiplicación que consiste en utilizar instrucciones de desplazamiento y transferencia. En cambio, aspectos de organización sobre este ejemplo, es si el ordenador dispone de una unidad física especializada en multiplicar, o por medio de un mecanismo que haga uso iterativo de la unidad de suma del sistema.

Esta distinción entre arquitectura y organización es importante, tanto es así, que una determinada arquitectura puede permanecer en el mercado mucho tiempo, pero su organización irá cambiando con la evolución de la tecnología.

ESTRUCTURA Y FUNCIONAMIENTO

La naturaleza jerárquica es esencial, tanto para su diseño, como para su descripción. Ya presentamos anteriormente esta visión de niveles interrelacionados, para los cuales al diseñador sólo le interesa de cada nivel, dos aspectos:

Page 37: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

36

ESTRUCTURA

FUNCIONAMIENTO

La estructura se refiere al modo en que los componentes están interconectados. Mientras que el funcionamiento, abarca la operación de cada componente individual como parte de la estructura.

FUNCIONAMIENTO:

Los computadores en general tienen 4 funciones básicas:

Procesamiento de datos

Almacenamiento de datos

Transferencias de datos

Control

El ordenador debe procesar datos, los cuales pueden adaptar mucha variedad de representaciones. También debe ser capaz de almacenarlos al menos temporalmente (corto plazo) hasta realizar una determinada operación, y es posible que también necesite almacenarlos en forma permanente (largo plazo) en archivos para ser utilizado en un fututo

En la figura 1, se muestra esquema funcional de un computador. Es importante destacar las direcciones de las fechas que llegan y sales de cada rectángulo, eso nos dará idea de la dirección del flujo de datos.

Page 38: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

37

ARQUITECTURA CLÁSICA DE UN COMPUTADOR

MODELO DE VON NEUMANN

La arquitectura de Von Neumann tiene sus orígenes en el trabajo del matemático John Von Neumann divulgado en 1945, Estados Unidos. Este matemático llevó a cabo un estudio teórico para demostrar que una computadora podía tener una estructura física muy sencilla y ser capaz de ejecutar cualquier tipo de cálculo eficazmente por medio de un control programado, sin necesidad de efectuar cambios al hardware. Von Neumann contribuyó a un nuevo entendimiento de cómo debían organizarse y construirse computadoras prácticas; sus ideas se conocen como “la técnica del programa almacenado” y fueron fundamentales para las futuras generaciones de computadoras digitales de alta velocidad que se adoptaron universalmente.

Este modelo se base en programa almacenado en memoria y búsqueda/ejecución secuencial de instrucciones.

En términos generales un computador tiene que realizar tres funciones:

Procesamiento de datos

Almacenamiento de datos

Transferencia de dato

El computador debe procesar datos, transformar la información recibida. Debe almacenar datos, intermedios y finales. También debe mover datos, es decir transferirlos entre el entorno y él mismo. Para llevar adelante estas tres tareas debe tener una unidad de control que gobierne o dirija el movimiento de los datos (flujo), entre los distintos módulos.

Estas funciones se pueden llevar adelante con arquitecturas muy avanzadas (como se verá más adelante) o con la estructura de un computador básico, como el que se muestra en la figura 2.

La arquitectura de un computador hace referencia a la organización de sus elementos en módulos con una funcionalidad definida y a la interacción entre ellos.

Page 39: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

38

DESCRIPCIONES DE LOS ELEMENTOS:

CPU:

La unidad central de proceso, es el corazón del computador. Controla el flujo de datos, los procesa y determina el orden de la secuencias de las acciones en todo el sistema. Para ello, necesita un reloj externo que sincroniza y marca la velocidad de proceso.

El reloj es una señal eléctrica periódica cuadrada de frecuencia constante y muy estable. Se construye usando cristales de cuarzo.

El reloj marca el momento de los eventos y determina su velocidad máxima de funcionamiento, por lo tanto siempre es deseable que la frecuencia de este reloj sea lo más alta posible, aunque esta velocidad se ve limitada por cuestiones de diseño tecnológico. A frecuencia más alta se genera mayor calentamiento del sistema. Por lo tanto, una frecuencia de funcionamiento mayor que la máxima que soporta la CPU, puede provocar un sobrecalentamiento que deteriore en forma permanente la CPU.

Page 40: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

39

El microprocesador es un circuito integrado en cuyo interior tiene algunos o

todos los elementos hardware, y el de CPU, que es un concepto lógico. Una

CPU puede estar soportada por uno o varios microprocesadores, y un

microprocesador puede soportar una o varias CPU. Un núcleo suele

referirse a una porción del procesador que realiza todas las actividades de

una CPU real.

La tendencia de los últimos años ha sido la de integrar (colocar) más núcleos dentro de un mismo sustrato, y más componentes como memorias Cache y controladores de memoria, elementos que antes estaban ubicados y soldados sobre la placa base como dispositivos individuales.

Desde el punto de vista lógico, singular y funcional, el microprocesador está compuesto básicamente por: varios registros, una Unidad de control (UC), una Unidad Aritmética y Lógica (ALU); y en los microprocesadores de última generación incluyen dentro de la misma pastilla una Unidad de Punto Flotante.

El microprocesador ejecuta instrucciones almacenadas como números binarios organizados secuencialmente almacenados en la Memoria Principal. La ejecución de las instrucciones se puede realizar en varias fases:

Pre-búsqueda (PreFetch), lo cual significa una pre lectura de la instrucción desde la memoria principal,

Fetch, envío de la instrucción al decodificador,

Decodificación de la instrucción, es decir, determinar qué instrucción es y por tanto qué se debe hacer,

Lectura de operandos (si los hay),

Ejecución, (Lanzamiento de las Máquinas de estado que llevan a cabo el procesamiento).

Escritura de los resultados en la memoria principal o en los registros.

Cada una de estas fases se realiza en uno o varios ciclos del reloj, dependiendo de la estructura del procesador, y concretamente de su grado de segmentación. La duración de estos ciclos viene determinada por la frecuencia del reloj del sistema.

Page 41: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

40

El microprocesador se conecta a un circuito especial, cual toma señal de un cristal de cuarzo, para generar pulsos a un ritmo constante. Este reloj, en la actualidad, genera miles de Hz.

Hoy existen distintas formas de determinar y medir el rendimiento de un procesador, hasta hace pocos años se creía que la frecuencia de reloj, era una medida precisa, pero ese mito, se ha visto desvirtuado por el hecho de que los procesadores no han requerido frecuencias más altas para aumentar su poder de cómputo.

Durante los últimos años esa frecuencia se ha mantenido en el rango de los 1.5 a 4 Ghz, originando en consecuencia procesadores con capacidades de proceso mayores comparados con los primeros que alcanzaron esos valores. Además la tendencia hoy es la incorporar más núcleos dentro de un mismo encapsulado para aumentar el rendimiento por medio de una computación paralela, de manera que la velocidad de reloj es un indicador menos fiable aún.

Medir el rendimiento con la frecuencia del sistema, sigue siendo válido únicamente entre procesadores con arquitecturas muy similares o iguales, de manera que su funcionamiento interno sea el mismo, en estas circunstancias la frecuencia es un parámetro de comparación aceptable.

Dentro de una familia de procesadores es común encontrar distintas opciones en cuanto a frecuencias de reloj, debido a que no todos los integrados tienen los mismos límites de funcionamiento: son probados a distintas frecuencias, hasta que muestran signos de inestabilidad, entonces se clasifican de acuerdo al resultado de las pruebas.

Por lo tanto, la capacidad de un procesador depende fuertemente de los componentes restantes del sistema, sobre todo del chipset, de la memoria RAM y del software. Pero obviando esas características puede tenerse una medida aproximada del rendimiento de un procesador por medio de indicadores como la cantidad de operaciones de punto flotante por unidad de tiempo Flops, o la cantidad de instrucciones por unidad de tiempo Mips. Una medida exacta del rendimiento de un procesador o de un sistema, es muy complicada debido a los múltiples factores involucrados en la computación de un problema, por lo general las pruebas no son concluyentes entre sistemas de la misma generación.

Page 42: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

41

ALGUNOS DATOS SOBRE EL PROCESO DE

FABRICACIÓN DE MICROS

El proceso de fabricación de un microprocesador es muy complejo. Todo comienza con arena (compuesta básicamente de silicio), con la que se fabrica un monocristal de unos 20 x 150 centímetros. Para ello, se funde el material en cuestión a alta temperatura (1370°C) y muy lentamente (10 a 40 Mm por hora) se va formando el cristal.

De este cristal, de cientos de kilos de peso, se cortan los extremos y la superficie exterior, de forma de obtener un cilindro perfecto. Luego, el cilindro se corta en obleas de menos de un milímetro de espesor (una capa de unas 10 micras de espesor, la décima parte del espesor de un cabello humano), utilizando una sierra de diamante. De cada cilindro se obtienen miles de obleas, y de cada oblea se fabricarán varios cientos de microprocesadores.

Estas obleas son pulidas hasta obtener una superficie perfectamente plana, pasan por un proceso llamado “annealing”, que consiste en un someterlas a un calentamiento extremo para remover cualquier defecto o impureza que pueda haber llegado hasta esta instancia. Luego de una supervisión mediante láseres capaz de detectar imperfecciones menores a una milésima de micrón, se recubren con una capa aislante formada por óxido de silicio.

De aquí en adelante, comienza el proceso del “dibujado” de los transistores que conformarán a cada microprocesador. A pesar de ser muy complejo y preciso, básicamente consiste en la “impresión” de sucesivas máscaras sobre la oblea, sucediéndose la deposición y eliminación de capas finísimas de materiales conductores, aislantes y semiconductores, endurecidas mediante luz ultravioleta y atacada por ácidos encargados de remover las zonas no cubiertas por la impresión. Salvando las escalas, se trata de un proceso comparable al visto para la fabricación de circuitos impresos. Después de cientos de pasos, entre los que se hallan la creación de sustrato, la oxidación, la litografía, el grabado, la implantación iónica y la deposición de capas; se llega a un complejo "bocadillo" que contiene todos los circuitos interconectados del microprocesador.

Para tener una apreciación válida de la magnitud del proceso descripto, un transistor construido en tecnología de 45 nanómetros tiene un ancho equivalente a unos 200 electrones. Lo cual nos habla de la precisión absoluta que se necesita al momento de aplicar cada una de las máscaras utilizadas durante la fabricación.

Los detalles de un microprocesador son tan pequeños y precisos que una única partícula de polvo puede destruir todo un grupo de circuitos. Las

Page 43: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

42

salas empleadas para la fabricación de microprocesadores se denominan salas limpias, porque el aire de las mismas se somete a un filtrado exhaustivo y está libre de polvo. Las salas limpias más puras de la actualidad se denominan de clase 1. La cifra indica el número máximo de partículas mayores de 0,12 micras que puede haber en un pie cúbico de aire (0,028 metros cúbicos). Como comparación para apreciar estos procesos, un hogar normal sería de clase 1 millón. Los trabajadores de estas plantas emplean trajes estériles para evitar que restos de piel, polvo o pelo se desprendan de sus cuerpos.

Una vez que la oblea ha pasado por todo el proceso litográfico, tiene “grabados” en su superficie varios cientos de microprocesadores, cuya integridad es comprobada antes de cortarlos. Se trata de un proceso obviamente automatizado, y que termina con una oblea que tiene grabados algunas marcas en el lugar que se encuentra algún microprocesador defectuoso.

La mayoría de los errores se dan en los bordes de la oblea, dando como resultados chips capaces de funcionar a velocidades menores que los del centro de la oblea. Luego la oblea es cortada y cada chip individualizado. En esta etapa del proceso el microprocesador es una pequeña placa de unos pocos milímetros cuadrados, sin pines ni cápsula protectora. Cada una de estas plaquitas será dotada de una cápsula protectora

Empaquetado

Los microprocesadores son circuitos integrados y como tal están formados por un chip de silicio y un empaque con conexiones eléctricas. En los primeros procesadores el empaque se fabricaba con plásticos especiales o con cerámicas en formatos como el DIP entre otros. El chip se pegaba con un material térmicamente conductor a una base y se conectaba por medio de pequeños alambres a unas pistas terminadas en pines. Posteriormente se sellaba todo con una placa metálica u otra pieza del mismo material de la base de manera que los alambres y el silicio quedaran encapsulados. En procesadores como los de Intel y AMD de las series Pentium I (mediados de los 90) y compatibles aún se usaba el empaque cerámico que tenía un arreglo de pines PGA y una cavidad en el espacio de ese arreglo, donde se introducía el chip del procesador y se soldaba con pequeños alambres a los pines. La cavidad se sellaba con una lámina de cobre.

En la actualidad los microprocesadores de diversos tipos (incluyendo procesadores gráficos) se ensamblan por medio de la tecnología Flip chip. El chip semiconductor es soldado directamente a un arreglo de pistas conductoras (en el substrato laminado) con la ayuda de unas pequeñísimas

Page 44: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

43

esferas que se depositan sobre las obleas de semiconductor en las etapas finales de su fabricación.

El substrato laminado es una especie de circuito impreso que posee pistas conductoras hacia pines o contactos, que a su vez servirán de conexión entre el chip semiconductor y un socket de CPU o una placa base.

Tiempo atrás, la conexión del chip con los pines se realizaba por medio de pequeñísimos alambres de manera que quedaba boca arriba, con el método Flip Chip queda boca abajo, de ahí se deriva su nombre. Entre las ventajas de este método esta la simplicidad del ensamble y en una mejor disipación de calor. Cuando la pastilla queda bocabajo presenta el substrato base de silicio de manera que puede ser enfriado directamente por medio de elementos conductores de calor. Esta superficie se aprovecha también para etiquetar el integrado. En los procesadores para computadores de escritorio, dada la vulnerabilidad de la pastilla de silicio, se opta por colocar una placa de metal, por ejemplo en los procesadores Athlon. En los procesadores de Intel también se incluye desde el Pentium III de más de 1 Ghz.

Disipación de calor

Con el aumento en el número de transistores incluidos en un procesador, el consumo de energía ha aumentado tanto que la disipación natural del procesador no es suficiente para mantener temperaturas aceptables en el material semiconductor, de manera que se hace necesario el uso de mecanismos de enfriamiento forzado, como son los disipadores de calor.

Entre ellos se encuentran sistemas sencillos como disipadores metálicos que aumentan el área de radiación, permitiendo que la energía salga rápidamente del sistema. También los hay con refrigeración líquida, por medio de circuitos cerrados.

MEMORIA:

Es la responsable del almacenamiento de datos. En una misma arquitectura hay muchos tipos de memoria, las hay rápidas y costosa, y baratas y masivas. Estas diferencias generan una distribución y organización por capas que se denomina jerarquía de memorias.

El objeto es disponer de la mayor cantidad de memoria combinando costo reducido con una alta velocidad de funcionamiento.

Page 45: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

44

E/S:

Transfiere datos entre el computador y el entorno exterior. Este bloque genérico está formado por los elementos necesarios para realizar la comunicación del computador con el mundo exterior. En él se encuentran los controladores de periféricos que determinan la interfaz entre los periféricos, la memoria y el procesador.

BUSES (sistema de interconexión):

Son los mecanismos que permiten el flujo de datos entre la CPU, la memoria y los módulos de E/S. En los buses se propagan señales eléctricas que son codificadas como unos y ceros lógicos.

PERIFÉRICOS:

Son los que permiten entrada de datos al computador y la salida de información una vez procesada, al mundo exterior. Ejemplos de periféricos: de teclado, impresora, scanner, mouse, disco duro, las tarjetas de red.

Los periféricos se clasifican de entrada, salida, este tema se verá más adelante en otro módulo de la materia.

INTERACCIÓN ENTRE CPU Y MEMORIA

La CPU es la parte más importante del computador ya que es la que se encarga de controlar todas las partes del computador y de realizar los cálculos. El sistema desde que es alimentado, empieza a ejecutar instrucciones y no se detiene hasta que se corta la alimentación.

Las instrucciones forman programas mediante los que se realiza una determinada acción y estos programas no son sólo los de los usuarios, sino los de gestión del sistema completo. A su vez la CPU tiene una estructura interna como la que se muestra en la figura 3.

Page 46: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

45

Unidad de Control (UC):

La unidad de control se encarga de leer de la memoria las instrucciones que se debe ejecutar y de secuenciar el acceso a los datos y las operaciones a realizar por la unidad de proceso. Los datos y las instrucciones están en la misma memoria como se ve en la figura 4.

La UC genera las señales de control que establecen el flujo de datos en todo el computador. Se encarga de acceder a memoria habilitando un camino de datos para las instrucciones y los datos, de manera tal que puedan llegar a la CPU.

Una instrucción es una combinación de ceros y unos única. Una vez que se ha accedido a la instrucción que se va a ejecutar, la UC la almacena en un registro (registro de instrucciones) en forma temporal, interpreta su código de operación y ejecuta la secuencia de acciones adecuada. Es decir, decodifica la instrucción. En consecuencia las fases de ejecución de una instrucción son: búsqueda de la instrucción, decodificación, búsqueda de los operandos y ejecución propiamente dicha.

Unidad Aritmética y Lógica (ALU):

La ALU es la parte de la CPU encargada de realizar las transformaciones de los datos. La ALU se la considera un órgano o elemento pasivo, en el sentido que ella no decide nada, recibe órdenes de la UC. Realiza las

Page 47: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

46

operaciones aritméticas, como: suma, resta etc., y lógicas como: la función or, and, etc.

Registros Internos:

Los registros son pequeñas porciones de memoria de tipo RAM estática muy veloces. Deben funcionar a la misma velocidad que el mismo procesador. Tienen la función de guardar información temporal y resultados parciales.

El almacenamiento de estos datos en memoria principal sería lento, ya que la memoria principal se construye con otro tipo de memoria mucho más lentas en su funcionamiento general que el microprocesador, además de aumentar considerablemente el tráfico de información en el sistema de interconexión (buses). Estas circunstancias harían disminuir el rendimiento en general del sistema completo.

Entonces, estas pequeñas celdas de memoria tienen por función guardar datos temporales y la configuración interna de la CPU o información sobre la última operación realizada por la ALU (resultado cero, resultado negativo, desbordamiento u overflow, etc.).

Una arquitectura tiene en general muchos registros. Los registros más importantes son:

a) Registro código de condición

b) Registro de direcciones

Page 48: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

47

c) Registro de propósitos generales

d) Contador de programa

e) Registro puntero de pila

f) Registro índice de pila

g) Registro de dato

h) Registro código de instrucciones

El ciclo para ejecutar cualquier instrucción se divide en ciclo de búsqueda y ciclo de instrucción.

En el ciclo de búsqueda la unidad de control genera las señales adecuadas para acceder a la memoria y leer una instrucción.

El ciclo de búsqueda para cualquier instrucción siempre es el mismo. La diferencia se encuentra en el ciclo de ejecución, la cual es función del código de operación de cada instrucción.

Una CPU está siempre o en el ciclo de búsqueda o en el ciclo de ejecución, tal como se muestra en la figura 5. La CPU está eternamente en uno de estos ciclos hasta que pierde la alimentación o hasta que se ejecuta alguna instrucción especial de parada (halt).

Page 49: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

48

MEMORIA PRINCIPAL (MP)

La memoria principal almacena datos e instrucciones a procesar en la CPU y guarda resultados intermedios y finales.

Las instrucciones y datos provienen de periféricos desde donde entraron y los resultados serán enviados a uno o más periféricos de salida.

Un periférico no puede transferir información a otro sino es pasándolo por

la memoria principal.

Tecnológicamente la MP está formada por un conjunto de pastillas (chip) con circuitos integrados (CI) que poseen una cierta cantidad de memoria, de modo de conseguir la capacidad total de memoria necesaria.

Estas pasillas son memorias de acceso directo (random), en el sentido de que si la memoria recibe el número (dirección) que identifica una posición, el dato contenido en dicha posición es localizado sin realizar una búsqueda secuencial (que supone seguir un cierto orden) sino que dicho dato aparece en la salida de la MP luego de un cierto lapso de tiempo y que es igual cualquiera sea la posición de un dato en la memoria.

Page 50: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

49

Por ejemplo, si el tiempo de acceso (tac) de una memoria es de 20ns, ese tiempo es el mismo para acceder a la posición 000001 que para la posición 999999.

En síntesis: MP es un conjunto de celdas de almacenamiento denominadas

posiciones de memoria, que pueden visualizarse una debajo de la otra,

como si fuese una gran cajonera, cada cajón tiene asignado un único

número fijo que representa su dirección y que no puede cambiarse. Al

contenido de cualquier posición se puede acceder en igual tiempo, sin

búsqueda, indicando un número que es su dirección.

Estas direcciones son consecutivas, es decir, desde cero hasta la dirección más alta que se asigna a la última posición.

Por lo tanto, direcciones sucesivas suponen posiciones dibujadas consecutivamente.

En la figura 6 se representa un esquema de cómo podemos visualizar la MP.

CONSTITUCIÓN:

La MP está formada por dos tipos diferentes de memoria, en aspectos referidos tanto a la tecnología de fabricación como a la finalidad funcional de ellas.

La MP se compone de memoria RAM y memoria ROM.

Las memorias ROM (Read Only Memory) y su familia, son dispositivos de almacenamiento no volátil porque no pierden sus datos cuando se desconecta la alimentación. Son utilizadas para almacenar datos y programas permanentes o que no cambiarán durante un período largo de tiempo.

En estas memorias se graban una serie de ruinas llamadas BIOS (Sistema básico de entrada salida). Estas rutinas están ligadas al hardware particular y nos permiten entre varias cosas tener acceso a los periféricos facilitando el intercambio de información con ellos.

Las memorias RAM (Memoria de Acceso Aleatorio) y su familia, son memorias volátiles, es decir pierden la información almacenadas en ellas, frente a interrupciones de energía. Son de lectura y escritura, es decir, el tiempo que emplean en ser grabadas es comparativamente el mismo que se utiliza para borrarlas.

Page 51: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

50

Preguntas para reflexionar: 1) A medida que se aumenta el número de líneas del bus de direcciones (cables planos más anchos), ¿qué es esperable que también pueda crecer en una arquitectura? ¿Supone un crecimiento lineal, o con otro tipo de relación matemática? 3) ¿Qué consecuencias implicarían un bus de datos ancho?, un bus de datos ancho implica que puede transmitir muchos bit de información al mismo tiempo. 4) ¿Existe alguna relación entre el número de bit simultáneos que pueden circular por el bus de direcciones y el tamaño de la memoria principal? 5) ¿Se podría simular como registro zonas de la memoria principal? 6) ¿Podría elevarse indefinidamente la frecuencia de reloj de una arquitectura?

2) ¿Será beneficioso o perjudicial que una arquitectura tengo muchos o pocos registros internos?

Page 52: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

51

1.4 Criterios de clasificación de los sistemas de memoria:

ubicación, capacidad, unidad de transferencia, método de

acceso, dispositivo físico, características físicas (volátil / no

volátil, borrable / no borrable). Capacidad y organización de

almacenamiento. Tiempo de acceso y tiempo de

transferencia. Jerarquía de memoria. La memoria del

sistema o memoria principal semiconductora. Tipos de

memorias semiconductoras de acceso aleatorio: familia

Ram y familia Rom. Principio de funcionamiento de

organizaciones avanzadas de memorias Ram.

La memoria principal es la parte del ordenador en donde residen los programas y los datos que éstos utilizan en el momento de su ejecución. Cuando se desea ejecutar un programa, cómo normalmente está almacenado en un dispositivo de almacenamiento secundario, lo primero que se hace es copiarlo en memoria. Este proceso lo realiza el sistema operativo (S.O.) teniendo también que gestionar las posiciones de memoria donde se va a cargar el programa. Finalizada la copia, el procesador inicia la ejecución de las instrucciones leyéndolas de memoria a partir de la posición donde el S.O. ha cargado el programa.

El tamaño máximo que puede tener la memoria física de un ordenador está determinado por el número de líneas del bus de direcciones que tiene el procesador.

Espacio de direccionamiento: de un ordenador, se define como la cantidad

de posiciones de memoria a las que puede acceder.

Por ejemplo, un ordenador con 16 líneas de direcciones será capaz de acceder al rango de posiciones de memoria desde 00000 H hasta 0FFFF H en representación hexadecimal.

Es decir 216 = 65536 este número representa el número de direcciones de la memoria en decimal, es común representar las direcciones en sistema de numeración hexadecimal.

Cuanto antes lleguen las instrucciones y datos desde la memoria al procesador, mayor será la velocidad de ejecución de los programas. Para medir la velocidad del sistema de memoria se definen algunos parámetros:

Tiempo de acceso: es el tiempo mínimo que transcurre desde que las direcciones se depositan en el bus y se recogen los datos, en el caso de una lectura.

Page 53: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

52

Tiempo de ciclo: es el tiempo mínimo que tiene que transcurrir entre dos operaciones de memoria consecutivas.

Tiempo de latencia: Se define como el tiempo transcurrido entre la emisión de una petición o comando a un sistema determinado y la recepción de una respuesta o contestación. Se mide en unidades de tiempo (segundos, microsegundos, milisegundos, etc.) o ciclos.

Ancho de banda: Se define como el rendimiento de un subsistema, es decir, la tasa a la que puede satisfacer las peticiones, se puede expresar como el número de peticiones por unidad de tiempo. Si cada petición corresponde a un número fijo de byte de datos, entonces el ancho de banda también se puede expresar como el número de byte por unidad de tiempo.

Nota: los parámetros anteriores son distintos, y marcan la calidad de una determinada memoria.

Estos dos últimos parámetros representan dos métricas muy importantes, para caracterizar subsistemas, dispositivos periféricos e interconexiones en los sistemas informáticos. Estas métricas son importantes para comprender el comportamiento de un sistema.

En general, el ancho de banda depende mucho de las restricciones de costo de los productos más que de las limitaciones fundamentales de una tecnología en particular, mientras que la latencia suele ser mucho más difícil de mejorar, ya que normalmente está limitada por la tecnología que se usa, e incluso por las leyes de la física.

Una de las necesidades fundamentales que debe cumplir un sistema informático es la necesidad de almacenar datos y código de programa, y esto mientras el equipo está encendido, para permitir el almacenamiento de resultados intermedios, así como cuando el equipo se encuentra apagado, para permitir que el resultado de los cálculos y los programas utilizados para realizar tales cálculos sobrevivan cuando el equipo se apague. Básicamente, ese almacenamiento es un inmenso conjunto de bits que el procesador puede direccionar.

Una tecnología de almacenamiento perfecta para retener esa cantidad de bits en un sistema informático satisfará los siguientes requisitos de memoria ideal:

Capacidad infinita: Para almacenar grandes cantidades de datos y grandes programas.

Ancho de banda infinito: Para transmitir rápidamente esos grandes conjuntos de datos y de programas hacia y desde el procesador.

Page 54: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

53

Latencia cero o instantánea: Para evitar que el procesador se detenga mientras datos o código de programa.

Persistencia o no volatilidad: Para permitir que los datos y programas sobrevivan incluso cuando se interrumpe el suministro de energía.

Costo de implementación: muy bajo o cero.

Los diseñadores de procesadores y sistemas deben intentar conseguir este ideal tanto como sea posible para satisfacer las expectativas de corrección y rendimiento del usuario. Desde luego, el factor costo, juega un papel determinante a la hora de alcanzar estos objetivos, pero un sistema de memoria bien diseñado puede mantener bastante bien la ilusión de este ideal.

El sistema de memoria, conocido como jerarquía de memoria, incorpora varias tecnologías de almacenamiento para crear un todo que se aproxime a cada uno de los cinco ideales de memoria.

La organización jerárquica del sistema de memoria, es necesario porque las memorias muy rápidas también son muy costosas, entonces para ofrecer productos competitivos en el mercado hay que balancear las prestaciones con el tamaño, ambos parámetros están vinculados con el costo, por lo tanto, el objetivo es el de construir una memoria de tamaño grande, de altas prestaciones, pero con un costo por bit bajo.

Esta representación jerárquica se la suele representar con una pirámide. La base, ancha, representa el espacio de almacenamiento fuera de línea o externo (cinta magnética, etc.), ascendiendo en la pirámide nos encontramos con otro nivel, este recibe el nombre de almacenamiento fuera de la placa madre (corresponde a los discos ópticos, magnéticos, optomagnéticos, ejemplo DVD, CD). El nivel más alto de la pirámide corresponde a la memoria que se encuentra físicamente dispuestas sobre la placa madre o tarjeta impresa que contiene el microprocesador, a este nivel pertenecen los registros, la memoria caché y la MP.

A medida que ascendemos en la pirámide aumenta el costo por bit de almacenamiento, disminuye la capacidad de almacenamiento y aumenta la velocidad de las memorias.

La estrategia de esta organización jerárquica es la de organizar los datos y programas para que las palabras de memoria necesarias estén normalmente en la memoria más rápida.

En la figura 6 (página 50), se puede ver esta organización jerárquica.

Page 55: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

54

Se puede hacer una representación comparativa, como muestra la figura 7, en un sistema de ejes, referida a los componentes de la jerarquía de memoria. En esta figura L1 y L2 representan a las memorias caché, cuyas características se verán más adelante (módulo 2)

En la figura 8 (tomada del libro Arquitectura del Computador Fundamento de los procesadores superescalares, John Paul Shen, Mikko H. Lipasti, 2006) se retoma el análisis de las cinco características ideales de memoria.

Se puede comprobar que los niveles superiores de la jerarquía de memoria, registros y caché primaria, son capaces de proporcionar anchos de bandas casi infinitos y tiempos de latencia muy bajos al núcleo del procesador, dando respuesta hacia al segundo y tercer ideal de memoria. El primer ideal, lo satisfacen los niveles inferiores de memoria (capacidad infinita), ya que las capacidades de las memorias DRAM son lo suficientemente grandes como para contener los requerimientos de todas las aplicaciones modernas, para los que requieren aún más, aparece el concepto de memoria virtual, extendiendo el concepto de jerarquía a los dispositivos magnéticos, que proporcionan capacidades que sobrepasan la demanda de todas las aplicaciones. El cuarto ideal de memoria, persistencia y no volatilidad, también lo pueden ofrecer los discos magnéticos, diseñados para conservar su información incluso cuando el sistema esté sin energía. El quinto ideal, bajo costo, lo ofrecen los niveles inferiores de la jerarquía ya que estos compensan los costos bajos por bit, respecto de los costos altos de los niveles iniciales (dentro de la CPU) de la jerarquía (pocos bit a alto costo).

Page 56: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

55

Figura 8: jerarquía de memoria. Fuente: J. P. Shen, M. H. Lipasti, (2006). Arquitectura del Computador Fundamento de los procesadores superescalares.

CRITERIOS DE CLASIFICACIÓN DE MEMORIAS

Existen diversos criterios de clasificación de memorias, a continuación se exponen algunos:

1) Ubicación:

dentro de la CPU

interna (MP)

Page 57: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

56

externa (secundaria)

2) Capacidad:

Tamaño de la palabra

Número de palabras

3) Unidad de transferencia:

Palabra

Bloque

4) Método de acceso:

Secuencial

Directo

Aleatorio

Asociativo

5) Prestaciones:

Tiempo de acceso

Tiempo de ciclo

Velocidad de transferencia

Densidad de información según la tecnología, se mide en espacio x bit

6) Dispositivo Físico:

Semiconductor

Soporte magnético

Óptico

Magneto-óptico

Page 58: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

57

7) Característica física:

Volátiles / No Volátiles

Borrable / No borrable

ACLARACIONES DE CONCEPTOS REFERIDOS A LA CLASIFICACIÓN

Se entiende por memoria asociativa el almacenamiento y recuperación de información por asociación con otras informaciones.

Un dispositivo de almacenamiento de información se llama memoria asociativa si permite recuperar información a partir de conocimiento parcial de su contenido, sin saber su localización de almacenamiento. A veces también se le llama memoria de direccionamiento por contenido.

Los computadores tradicionales no usan este direccionamiento; en la actualidad las computadoras se basan en el conocimiento exacto de la dirección de memoria en la que se encuentra la información.

Sin embargo, se cree que el cerebro humano no actúa así (con el conocimiento exacto de la dirección donde se halla el dato buscado). Si queremos recordar el nombre de una persona, no nos sirve saber que fue el nombre número 3274 que aprendimos. Es más útil saber que su nombre empieza y termina con tal letra, que nació en tal lugar y que se dedicaba a realizar trabajos relacionados con tal actividad.

Las memorias asociativas son una de las redes neuronales artificiales más importantes con un amplio rango de aplicaciones en áreas tales como: Memorias de acceso por contenido, identificación de patrones y control inteligente.

Una memoria asociativa puede almacenar información y recuperarla cuando sea necesario, es decir, una red retroalimentada, cuya salida se utiliza repetidamente como una nueva entrada hasta que el proceso converge. Puede recuperar dicha información basándose en el conocimiento de parte de ésta (clave de búsqueda).

El patrón clave puede ser una versión con ruido de un patrón memorizado, es decir, que difiere de él en pocas componentes. La memoria humana recuerda a una persona aunque vaya vestida de forma diferente o lleve anteojos.

TIPOS DE MEMORIAS ASOCIATIVAS:

Memorias heteroasociativas: establecen una correspondencia de x (vector de entrada) en y (vector de salida), de distinta

Page 59: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

58

dimensión. Dichos patrones se llaman memorias principales o de referencia.

Memorias autoasociativas: establece la misma correspondencia que la memoria heteroasociativa pero siendo los patrones de entrada y de salida los mismos.

ELEMENTOS SEMICONDUCTORES

Un semiconductor es una SUSTANCIA que se comporta como conductor o como aislante dependiendo de la temperatura del ambiente en el que se encuentre.

El elemento semiconductor más usado es el silicio, aunque también hay aplicaciones en germanio. Para que la conducción de la electricidad sea posible es necesario que haya electrones que no estén ligados a un enlace determinado (banda de valencia), sino que sean capaces de desplazarse por el cristal (banda de conducción).

La separación entre la banda de valencia y la de conducción se llama banda prohibida, porque en ella no puede haber portadores de corriente. Así podemos considerar tres situaciones:

Los metales, en los que ambas bandas de energía se superponen, son conductores.

Los aislantes (o dieléctricos), en los que la diferencia existente entre las bandas de energía, del orden de 6 eV impide en condiciones normales el salto de los electrones.

Los semiconductores, en los que el salto de energía es pequeño, del orden de 1 eV, por lo que suministrando energía pueden conducir la electricidad; pero además, su conductividad puede regularse, puesto que bastará disminuir la energía aportada para que sea menor el número de electrones que salte a la banda de conducción; cosa que no puede hacerse con los metales, cuya conductividad es constante, o más propiamente, poco variable con la temperatura.

UBICACIÓN DEL ALMACENAMIENTO SECUNDARIO,

TERCIARIO Y FUERA DE LÍNEA

La memoria requiere que la computadora use sus canales de E/S para acceder a la información y se utiliza para almacenamiento a largo plazo de

Page 60: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

59

información persistente. Sin embargo, la mayoría de los sistemas operativos usan los dispositivos de almacenamiento secundario como área de intercambio para incrementar artificialmente la cantidad aparente de memoria principal en la computadora. La memoria secundaria también se llama "de almacenamiento masivo". Habitualmente, la memoria secundaria o de almacenamiento masivo tiene mayor capacidad que la memoria primaria, pero es mucho más lenta. En las computadoras modernas, los discos duros suelen usarse como dispositivos de almacenamiento masivo.

El tiempo necesario para acceder a un byte de información dado almacenado en un disco duro es de unas milésimas de segundo (milisegundos). En cambio, el tiempo para acceder al mismo tipo de información en una memoria de acceso aleatorio (Ram) se mide en mil-millonésimas de segundo (nanosegundos).

Esto demuestra la diferencia entre la velocidad de las memorias de estado sólido y la velocidad de los dispositivos rotantes de almacenamiento magnético u óptico: los discos duros son del orden de un millón de veces más lentos que la memoria (primaria). Los dispositivos rotantes de almacenamiento óptico (unidades de CD y DVD) son incluso más lentos que los discos duros, aunque es probable que su velocidad de acceso mejore con los avances tecnológicos.

El almacenamientos secundario (memoria secundaria, memoria auxiliar o memoria externa) es el conjunto de dispositivos y medios (soportes) de almacenamiento, que conforman el subsistema de memoria de una computadora, junto a la memoria principal.

No deben confundirse las "unidades o dispositivos" con los "medios o soportes de almacenamiento", pues los primeros son los aparatos que leen o escriben los datos almacenados en los soportes.

La memoria secundaria es un tipo de almacenamiento masivo y permanente (no volátil), a diferencia de la memoria Ram que es volátil; pero posee mayor capacidad de memoria que la memoria principal, aunque es más lenta que ésta.

El proceso de transferencia de datos a un equipo de cómputo se le llama "procedimiento de lectura". El proceso de transferencia de datos desde la computadora hacia el almacenamiento se denomina "procedimiento de escritura".

En la actualidad para almacenar información se usan principalmente tres 'tecnologías':

1. Magnética (ejemplo de ellas son: disco duro, cintas magnéticas);

Page 61: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

60

2. Óptica (ejemplo de estos son: CD, DVD).

3. Algunos dispositivos combinan ambas tecnologías, es decir, son dispositivos de almacenamiento híbridos, por ejemplo los discos Zip. Tecnología Flash (Tarjetas de Memorias Flash)

ORGANIZACIÓN INTERNA DE UNA CELDA DE

MEMORIA

El elemento básico de almacenamiento de una memoria cualquiera sea su tecnología, es la celda de memoria.

Todas las celdas comparten ciertas propiedades:

1) Presentan dos estados estables (ó semiestables), el cero y el uno.

2) Pueden escribirse en ellas al menos una vez para fijar su contenido.

3) Pueden leerse para detectar su estado.

A continuación, en la figura 9, se muestra una representación esquemática de una celda de memoria, tomada del libro: “Organización y Arquitectura de Computadores” William Stalling. (1997).

Fuente: “Organización y Arquitectura de Computadores” William Stalling. 5° edición, Prentice Hall.

Page 62: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

61

CLASIFICACIÓN DE LAS MEMORIAS ROM

Las memorias ROM, son memorias no volátiles, de solo lectura, o principalmente de lectura, sería la traducción más apropiada para este tipo de memorias. Esta traducción se sostiene en la diferencia de tiempos que existe entre las operaciones de lectura y escritura. El tiempo que se emplea en escribir en ellas (almacenar un bit) es comparativamente mucho menor que el tiempo que se emplea en borrarlas.

La memoria ROM, que da nombre a esta familia de memorias no volátiles de acceso aleatorio, no puede borrar la información que almacena.

Esta memoria es grabada por el fabricante, en el mismo proceso de fabricación. El usuario debe suministrar la información (0, 1) que desea guardar en la memoria al fabricante. El fabricante mediante una alta corriente que hace circular a través de la celda de almacenamiento (fusible) produce la rotura permanente de la celda.

Por ello es que esta memoria, una vez grabada, no puede borrarse.

La familia de memorias ROM son: PROM, EPROM, EEPROM y FLASH.

La oferta comercial de esta familia de memorias semiconductoras, se fue flexibilizando la forma de borrar el contenido de celdas y la forma de hacerlo.

La memoria PROM, sigue siendo una memoria ROM, pero programable por el usuario, es decir ya no se necesita recurrir al fabricante para grabar la información. Puede hacerlo el usuario. Aunque se mantiene la característica de degradación permanente de las celdas de almacenamiento, por esto esta memoria sólo se graba una vez.

La memoria EPROM, representa una buena flexibilización de toda la operatoria de esta memoria. Esta memoria la graba el usuario, para lo cual, hay que disponer de un grabador de EPROM. Para borrarla, hay que quitar la memoria de la placa en la cual se halla inserta, colocarla bajo la luz ultravioleta, un cierto tiempo (depende de la potencia de la luz ultravioleta, y de la distancia a la que se encuentre la memoria de esa fuente de energía), cuando se somete al proceso de borrado, la memoria se borra en forma completa, aunque el usuario sólo quiera borrar una parte de ella. Una vez borrada, hay que colocarla en el grabador de EPROM, y volver a grabar. Esta operación borrar, grabar, no puede hacerse indefinidamente, el chip termina deteriorándose.

La memoria EEPROM, aumenta aún más la flexibilidad, esta memoria se borra y graba eléctricamente, y no es necesario sacar la memoria del lugar

Page 63: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

62

donde se halle instalada para borrarla ni grabarla, además agrega la bondad de poder borrarla de a byte.

Las siglas de EEPROM, se corresponden con Erasable Programmable Read-Only Memory . Es un tipo de chip de memoria rom no volátil, inventado por el ingeniero Dov Frohman. Está formada por celdas de Famos (Floating Gate Avalanche-Injection Metal-Oxide Semiconductor) o transistores de puerta flotante, cada uno de los cuales viene de fábrica sin carga, por lo que son leídos como 0 (por eso, una EPROM sin grabar se lee como 00 en todas sus celdas).

Se programan mediante un dispositivo electrónico que proporciona tensiones superiores a los normalmente utilizados en los circuitos electrónicos. Las celdas que reciben carga se leen entonces como un 1.

Una vez programada, una EPROM se puede borrar solamente mediante exposición a una fuerte luz ultravioleta. Esto es debido a que los fotones de la luz excitan a los electrones de las celdas provocando que se descarguen. Las EPROMs se reconocen fácilmente por una ventana transparente en la parte alta del encapsulado, a través de la cual se puede ver el chip de silicio y que admite la luz ultravioleta durante el borrado.

Como el material de cuarzo de la ventana es caro de fabricar, se introdujeron los chips OPT (One- Time Programmable, programables una sola vez). La única diferencia con la EPROM es la ausencia de la ventana de cuarzo, por lo que no puede ser borrada. Las versiones OTP se fabrican para sustituir tanto a las EPROMs normales como a las EPROMs. Estas últimas fueron siendo sustituidas progresivamente por EEPROM (para fabricación de pequeñas cantidades donde el costo no es lo importante) y por memorias de tipo Flash (mayor utilización).

Una EPROM programada retiene sus datos durante diez o veinte años, y se puede leer un número ilimitado de veces. Para evitar el borrado accidental por la luz del sol, la ventana de borrado debe permanecer cubierta. Los primeros Bios de los ordenadores personales eran frecuentemente EPROMs y la ventana de borrado estaba habitualmente cubierta por una etiqueta que contenía el nombre del productor del BIOS, su revisión y una advertencia de copyright.

La memoria FLASH, se borra y graba eléctricamente por bloque. Esta memoria es una forma desarrollada de la memoria EEPROM. La memoria flash permite que múltiples posiciones de memoria sean escritas o borradas en una misma operación de programación.

Ofrecen, además, características como gran resistencia a los golpes, bajo consumo y es muy silencioso, ya que no contiene ni actuadores mecánicos ni partes móviles. Su pequeño tamaño también es un factor determinante

Page 64: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

63

a la hora de escoger para un dispositivo portátil, así como su ligereza y versatilidad para todos los usos hacia los que está orientado.

Sin embargo, todos los tipos de memoria flash sólo permiten un número limitado de escrituras y borrados, generalmente entre 10.000 y un millón, dependiendo de la celda, de la precisión del proceso de fabricación y del voltaje necesario para su borrado.

Este tipo de memoria está fabricado con puertas lógicas NOR y NAND para almacenar los ceros o los unos. En realidad hay una gran división entre los fabricantes de un tipo u otro, especialmente a la hora de elegir un sistema de archivos para estas memorias. Sin embargo se comienzan a desarrollar memorias basadas en ORNAND.

Otra característica importante de estas memorias es, la resistencia térmica de algunos encapsulados de tarjetas de memoria orientadas a las cámaras digitales de gama alta. Esto permite funcionar en condiciones extremas de temperatura como desiertos o glaciares ya que el rango de temperaturas soportado abarca desde los -25 ºC hasta los 85 ºC.

Las aplicaciones más habituales son:

El conocido llavero USB, que además del almacenamiento, suelen incluir otros servicios como radio FM, grabación de voz y, sobre todo como reproductor portátil de MP3 y otros formatos de audio.

Las PC Card.

Las tarjetas de memoria flash que son el sustituto del carrete en la fotografía digital, ya que en las mismas se almacenan las fotos.

Existen varios estándares de encapsulados promocionados y fabricados por la mayoría de las multinacionales dedicadas a la producción de hardware.

Flash, como tipo de EEPROM, contiene un arreglo de celdas con un transistor evolucionado con dos puertas en cada intersección. Tradicionalmente sólo almacenan un bit de información. Las nuevas memorias flash, llamadas también dispositivos de celdas multi-nivel, pueden almacenar más de un bit por celda variando el número de electrones que almacenan. Estas memorias están basadas en el transistor FAMOS (Floating Gate Avalanche-Injection Metal Oxide Semiconductor) que es, esencialmente, un transistor NMOS con un conductor (basado en un óxido metálico) adicional entre la puerta de control (CG – Control Gate) y los terminales fuente/drenador contenidos en otra puerta (FG – Floating Gate) o bien que rodea a FG y es quien contiene los electrones que almacenan la información.

Page 65: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

64

El futuro de la memoria flash es bastante alentador, pues la demanda de memorias pequeñas, baratas y flexibles seguirá en alza hasta que aparezcan nuevos sistemas que lo superen tanto en características como en costo.

En apariencia, esto no parecía muy factible ni siquiera a medio plazo ya que la miniaturización y densidad de las memorias flash estaba todavía lejos de alcanzar niveles preocupantes desde el punto de vista físico. Pero con la aparición del MEMRISTOR, el futuro de las memorias flash comienza a opacarse.

El desarrollo de las memorias flash es, en comparación con otros tipos de memoria sorprendentemente rápido tanto en capacidad como en velocidad y prestaciones.

En la actualidad TDK está fabricando discos duros con memorias flash NAND de 32 Gb con un tamaño similar al de un disco duro de 2.5 pulgadas, similares a los discos duros de los portátiles con una velocidad de 33.3 Mbps. El problema de este disco duro es que, al contrario de los discos duros convencionales, tiene un número limitado de accesos.

CLASIFICACIÓN DE LAS MEMORIAS RAM

Las memorias RAM, memorias de acceso aleatorio, son memorias volátiles, se clasifican en ESTÁTICAS Y DINÁMICAS.

Las memorias ram estáticas, se construyen con circuitos secuenciales. La

celda de memoria es un flip-flop, o biestable. Esto las hace muy veloces.

Las memorias ram dinámicas, constituyen la celda de almacenamiento con

un capacitor. Un capacitor es un elemento pasivo que puede almacenar

energía en su campo eléctrico (lo cual representa un uno lógico). Pero esta

carga se degrada naturalmente, es decir, va perdiendo su energía con el

simple contacto del aire. Es por ello que las memorias ram dinámicas

incorporan dentro del mismo chip, un sistema eficiente de refresco, que

cada tanto tiempo reescribe lo que la memoria tiene almacenado, de

manera de no perder la información almacenada. La presencia de este

mecanismo de auto refresco, las hace mucho más lentas

comparativamente que las memorias ram estáticas.

Además, a igualdad de superficie de sustrato de la memoria, las ram

estáticas tienen un menor número de celdas por unidad de superficie que

Page 66: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

65

las ram dinámicas, por ello éstas últimas son de mayor capacidad que las

ram estáticas.

Con ram estática se implementan las memorias caché y los registros

internos del microprocesador.

Con la memoria ram dinámica se implementa la memoria principal (MP) o

memoria de sistema.

La memoria de acceso aleatorio, (Random Access Memory) es la memoria desde donde el procesador recibe las instrucciones y guarda los resultados. Es el área de trabajo para la mayor parte del software de un computador. Existe una memoria intermedia entre el procesador y la RAM, llamada caché, la cual se verá más adelante, pero sólo contiene una copia de acceso rápido de la MP almacenada en los módulos de RAM. Los módulos de RAM son la presentación comercial de este tipo de memoria, se compone de integrados soldados sobre un único circuito impreso.

La MP es una memoria de estado sólido tipo DRAM en la que se puede tanto leer como escribir información. Se utiliza como memoria de trabajo para el sistema operativo, los programas y la mayoría del software. Es allí donde se cargan todas las instrucciones que ejecutan el procesador y otras unidades de cómputo. Se dicen "de acceso aleatorio" o "de acceso directo" porque se puede leer o escribir en una posición de memoria con un tiempo de espera igual para cualquier posición, no siendo necesario seguir un orden para acceder a la información de la manera más rápida posible.

Cuando hacemos referencia a la frase memoria RAM, ésta se refiere a los módulos de memoria que se usan en los computadores personales y servidores.

En el sentido estricto, hay diversas clases de memoria de acceso aleatorio, ya que las memorias Rom, las memorias Flash, caché (SRAM), los registros del procesador y otras unidades de procesamiento también poseen la cualidad de presentar retardos de acceso iguales para cualquier posición. En el sistema operativo Windows Vista, gracias al servicio ReadyBoost, es posible asignar memoria flash de un dispositivo externo USB como memoria RAM y así mejorar la velocidad del equipo informático.

La denominación “de Acceso aleatorio” surgió para diferenciarlas de las memorias de acceso secuencial, debido a que en los comienzos de la computación, las memorias principales (o primarias) de las computadoras eran siempre de tipo RAM y las memorias secundarias (o masivas) eran de acceso secuencial (cintas o tarjetas perforadas). Es frecuente pues que se hable de memoria RAM para hacer referencia a la memoria principal de una computadora, pero actualmente la denominación no es precisa.

Page 67: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

66

Uno de los primeros tipos de memoria RAM fue la memoria de núcleo magnético, desarrollada entre 1949 y 1952 y usada en muchos computadores hasta el desarrollo de circuitos integrados a finales de los años 60 y principios de los 70. Antes que eso, las computadoras usaban relés y líneas de retardo de varios tipos construidas con tubos de vacío (en lugar de los actuales transistores) para implementar las funciones de memoria principal con o sin acceso aleatorio.

En 1969 fueron lanzadas una de las primeras memorias RAM basadas en semiconductores de silicio por parte de Intel con el integrado 3101 de 64 bits de memoria y para el siguiente año se presentó una memoria DRAM de 1 Kb, referencia 1103 que se constituyó en un hito, ya que fue la primera en ser comercializada con éxito, lo que significó el principio del fin para las memorias de núcleo magnético. En comparación con los integrados de memoria DRAM actuales, la 1103 es primitiva en varios aspectos, pero tenía un desempeño mayor que la memoria de núcleos.

En 1973 se presentó una innovación que permitió otra miniaturización y se convirtió en estándar para las memorias DRAM: la multiplexación en tiempo de la direcciones de memoria (compartir líneas con distintas funciones).

Para finales de los 70 los integrados eran usados en la mayoría de computadores nuevos, se soldaban directamente a las placas base o se instalaban en zócalos, de manera que ocupaban un área extensa de circuito impreso. Con el tiempo se hizo obvio que la instalación de RAM sobre el impreso principal, impedía la disminución de tamaño físico, entonces se idearon los primeros módulos de memoria como el SIPP, aprovechando las ventajas de la construcción modular. El formato SIMM fue una mejora al anterior, eliminando los pines metálicos y dejando unas áreas de cobre en uno de los bordes del impreso, muy similares a los de las tarjetas de expansión, de hecho los módulos SIPP y los primeros SIMM tienen la misma distribución de pines.

A finales de los 80 el aumento en la velocidad de los procesadores y el aumento en el ancho de banda requerido, hizo necesario trabajar sobre otros aspectos. Comenzó a trabajarse sobre mejoras en el direccionamiento como las siguientes:

Los módulos de memoria RAM son tarjetas de circuito impreso que tienen soldados integrados de memoria DRAM por una o ambas caras. La implementación DRAM se basa en una topología de circuito eléctrico que permite alcanzar densidades altas de memoria por cantidad de transistores, logrando integrados de cientos o miles de Kbits. Además de DRAM, los módulos poseen un integrado que permiten la identificación del mismo ante el computador por medio del protocolo de comunicación SDP.

Page 68: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

67

La conexión con los demás componentes se realiza por medio de un área de pines en uno de los filos del circuito impreso, que le permiten al módulo cuando se instala en un zócalo apropiado de la placa base, tenga buena conexión eléctrica con los controladores de memoria y las fuentes de alimentación. Los primeros módulos comerciales de memoria eran SIPP, como ya se mencionó antes, de formato propietario, es decir no había un estándar entre distintas marcas.

Existen dos clases de errores en los sistemas de memoria, las fallas (Hard fails) que son daños en el hardware y los errores (soft errors) provocados por causas fortuitas. Los primeros son relativamente fáciles de detectar (en algunas condiciones el diagnóstico es equivocado), los segundos al ser resultado de eventos aleatorios, son más difíciles de hallar.

En la actualidad la confiabilidad de las memorias RAM frente a los errores, es suficientemente alta como para no realizar verificación sobre los datos almacenados, por lo menos para aplicaciones de oficina y caseras. En los usos más críticos, se aplican técnicas de corrección y detección de errores basadas en diferentes estrategias:

La técnica del bit de paridad consiste en guardar un bit adicional por cada byte de datos, y en la lectura se comprueba si el número de unos es par (paridad par) o impar (paridad impar), detectándose así el error.

Una técnica mejor es la que usa ECC, que permite detectar errores de 1 a 4 bits y corregir errores que afecten a un sólo bit esta técnica se usa sólo en sistemas que requieren alta fiabilidad. Por lo general, los sistemas con cualquier tipo de protección contra errores tienen un costo más alto, y sufren de pequeñas penalizaciones en desempeño, con respecto a los sistemas sin protección. Para tener un sistema con ECC o paridad, el chipset (módulo 2 del SAM) y las memorias deben tener que soportar esas tecnologías. La mayoría de placas base no poseen soporte. Para los fallos de memoria se pueden utilizar herramientas de software especializadas que realizan pruebas integrales sobre los módulos de memoria RAM.

MÓDULOS DE MEMORIA RAM

Los módulos son los soportes físicos donde se hallan alojados los integrados de memoria RAM. Estos módulos son tarjetas de circuito impreso que tienen soldado los integrados por uno o ambos lados. Estas placas se introducen en un zócalo de la placa base o madre.

Page 69: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

68

Tipos de módulos:

Módulo SIMM. Obsoleto, tenía un bus de datos de 16 o 32 bits.

Módulo DIMM, se usa en ordenadores de escritorio. Tienen un bus de datos de 64 bits.

Módulo SO-DIMM. Se usa en ordenadores portátiles. Consiste en un formato miniaturizado de DIMM.

ORGANIZACIONES AVANZADAS DE MEMORIAS DRAM

En un comienzo, las DRAM, eras memorias asíncronas. Esto significaba que, el procesador presentaba las direcciones y líneas de control a la memoria, indicando que los datos de una determinada posición serían leídos, o bien escritos de memoria. Después del tiempo de acceso, los datos se escribían o leían en la DRAM. Durante ese tiempo, la DRAM realizaba operaciones internas, mientras el procesador debía esperar, haciendo que el sistema baje en prestaciones.

Con el advenimiento del acceso síncrono, aparecen las SDRAM (RAM síncronas), la DRAM introduce y saca datos bajo el control del reloj del sistema, liberando al microprocesador para que este pueda realizar otras tareas, mientras la DRAM trabaja la petición. La SRAM funciona en plenitud de sus bondades cuando transfiere bloques largos de datos en serie, tal como resulta cuando se procesa una hoja de cálculo, o multimedia.

Hoy en la actualidad todas las memorias de tipo DRAM están sincronizadas con una señal de reloj del bus de memoria, ya que esto permite construir integrados que funcionan a una frecuencia mayor de 66 Mhz, actualmente, en la actualidad (2009) alcanzaron los 1333Mhz.

Algunos tipos de RAM síncrona son:

SDR SDRAM (Single Data Rate Synchronous Dynamic RAM)

SDR SDRAM (del inglés, Single Data Rate Synchronous Dynamic Random Access Memory, es decir, memoria RAM dinámica de acceso síncrono de tasa de datos simple). Se comercializó en módulos de 32, 64, 128, 256 y 512 MB, y con frecuencias de reloj que oscilaban entre los 66 y los 133 Mhz. Se popularizaron con el nombre de SDRAM (muy poca gente sabía entonces que lo 'correcto' era decir SDR), de modo que cuando aparecieron las DDR SDRAM, los nombres 'populares' de los dos tipos de tecnologías fueron SDRAM y DDR, aunque las memorias DDR también son SDRAM.

Page 70: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

69

Para funcionar a toda su velocidad, una memoria SDR requiere una caché con velocidad suficiente como para no desperdiciar su potencial.

Tiene tiempos de acceso de entre 25 y 10 ns, se adquieren comercialmente en módulos DIMM de 168 contactos. Fue utilizada en los Pentium II y III, también en AMD, en los productos K6, Athlon K7 y Duron.

DDR SDRAM (Double Data Rate SDRAM)

Esta memoria envía los datos dos veces por ciclo de reloj. De este modo trabaja al doble de la velocidad del bus del sistema, sin tener la necesidad de aumentar la frecuencia de reloj. Comercialmente viene en módulos DDIM de 184 contactos.

DDR (Double Data Rate) En español significa doble tasa de transferencia de datos. Son módulos de memoria Ram, compuestos por memorias síncronas, disponibles en encapsulado DIMM, que permite la transferencia de datos por dos canales distintos simultáneamente en un mismo ciclo de reloj. Los módulos DDR soportan una capacidad máxima de 3 GIB.

Fueron primero adoptadas en sistemas equipados con procesadores AMD Athlon.

La empresa Intel con su producto Pentium 4, en un principio utilizó únicamente memorias Rambus, más costosas. Ante el avance en ventas y buen rendimiento de los sistemas AMD basados en DDR SDRAM, la empresa se vio obligada a cambiar su estrategia para no perder mercado y comenzó a utilizar memoria DDR, lo que le permitió competir en precio.

Son compatibles con los procesadores de Intel Pentium 4 que disponen de un From Side Bus (FSB) de 64 bits de datos y frecuencias de reloj desde 200 a 400 MHz.

También se utiliza la nomenclatura PC1600 a PC4800, ya que pueden transferir un volumen de información de 8 bytes en cada ciclo de reloj a las frecuencias descritas.

Muchas placas base permiten utilizar estas memorias en dos modos de trabajo distintos:

a) Single Memory Channel: Todos los módulos de memoria intercambian información con el bus a través de un sólo canal, para ello sólo es necesario introducir todos los módulos DIMM en el mismo banco de slots.

Page 71: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

70

b) Dual Memory Channel: Se reparten los módulos de memoria entre los dos bancos de slots diferenciados en la placa base, así pueden intercambiar datos con el bus a través de dos canales simultáneos, uno para cada banco.

DDR 2 SDRAM

Estas memorias son una mejora de las anteriores, permitiendo que durante cada ciclo de reloj se realicen cuatro transferencias de datos. Comercialmente vienen en módulos DIMM de 240 contactos.

DDR 2 es otro tipo de memoria Ram. También forma parte de la familia SDRAM de tecnologías de memoria de acceso aleatorio, que es una de las muchas implementaciones de la Ram dinámicas. Los módulos DDR2 son capaces de trabajar con 4 bits por ciclo, es decir 2 de ida y 2 de vuelta en un mismo ciclo mejorando sustancialmente el ancho de banda potencial bajo la misma frecuencia de una DDR SDRAM tradicional (si una DDR a 200 MHz reales entregaba 400 MHz nominales, la DDR2 por esos mismos 200 MHz reales entrega 800 MHz nominales).

Este sistema funciona debido a que dentro de las memorias hay un pequeño buffer (almacenamiento temporal) que es el que guarda la información para luego transmitirla fuera del modulo de memoria, este buffer en el caso de la DDR convencional trabajaba tomando los 2 bits para transmitirlos en 1 sólo ciclo, lo que aumenta la frecuencia final.

En las DDR2, el buffer almacena 4 bits para luego enviarlos, lo que a su vez redobla la frecuencia nominal sin necesidad de aumentar la frecuencia real de los módulos de memoria.

Las memorias DDR2 tienen mayores latencias que las conseguidas con las DDR convencionales, cosa que perjudicaba su rendimiento. Reducir la latencia en las DDR2 no es fácil. El mismo hecho de que el buffer de la memoria DDR2 pueda almacenar 4 bits para luego enviarlos es el causante de la mayor latencia, debido a que se necesita mayor tiempo de "escucha" por parte del buffer y mayor tiempo de trabajo por parte de los módulos de memoria, para recopilar esos 4 bits antes de poder enviar la información.

CARACTERÍSTICAS

Las memorias DDR2 son una mejora de las memorias DDR (Doble lado de contactos), que permiten que los búferes de entrada/salida trabajen al doble de la frecuencia del núcleo,

Page 72: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

71

permitiendo que durante cada ciclo de reloj se realicen cuatro transferencias.

Operan tanto en el flanco alto del reloj como en el bajo, en los puntos de 0 voltios de tensión y 1.8 voltios, lo que reduce el consumo de energía en aproximadamente el 50 por ciento del consumo de las DDR, que trabajaban a 0 voltios y a 2.5.

Para usar en PC, las DDR2 SDRAM son suministradas en tarjetas de memoria DIMMs con 240 pines y una localización con una sola ranura. Las tarjetas DIMM son identificadas por su máxima capacidad de transferencia (usualmente llamado ancho de banda).

Nota: DDR2-xxx indica la velocidad de reloj efectiva, mientras que PC2-xxxx indica el ancho de banda teórico (aunque suele estar redondeado). El ancho de banda se calcula multiplicando la velocidad de reloj E/S por ocho, ya que la DDR2 (como la DDR) es una memoria de 64 bits, hay 8 bits en un byte, y 64 es 8 por 8 y por último por 2 (doble tasa de transferencia), esto se empezó a usar para mostrar la velocidad de transferencia frente a las memorias "Rambus" que eran más rápidas en sus ciclos de reloj operación, pero solo eran de 16 bits.

DDR 2 se introdujeron en el mercado a dos velocidades iniciales: 200 MHz (llamada PC2-3200) y 266 MHz (PC2-4200). Ambas tienen un menor rendimiento que sus equivalentes en DDR, ya que su mayor latencia hace que los tiempos totales de acceso sean hasta dos veces mayores. Sin embargo, la DDR no ha sido oficialmente introducida a velocidades por encima de los 266 MHz. Existen DDR-533 e incluso DDR-600, no estandarizadas. Estos módulos son, principalmente, optimizaciones de los fabricantes, que utilizan mucha más energía que los módulos con un reloj más lento, y que no ofrecen un mayor rendimiento.

Intel utiliza en sus arquitecturas de tipo PC DDR2. El fabricante AMD incluye soporte DDR2 en procesadores de la plataforma AM2, introducidos en el mercado en el 2006.

Los DIMM DDR2 tienen 240 pines, mientras que los de DDR tienen 184 y los de SDR 168.

DDR 3 SDRAM

Esta memoria promete mejorar el rendimiento en niveles de bajo voltaje, lo que traería aparejado una importante disminución del gasto global de consumo. Los módulos DIMM DDR 3 tienen 240 pines, pero estos módulos

Page 73: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

72

son distintos físicamente que los DIMM del DDR2, ya que la mueca del sustrato de la plaqueta no coincide físicamente en su posición.

DDR3 es también un tipo de memoria Ram. Forma parte de la familia de ram dinámicas síncronas, de tecnologías de memoria de acceso aleatorio, que es una de las muchas implementaciones de la familia ram.

El principal beneficio de instalar DDR3 es la habilidad de hacer transferencias de datos ocho veces más rápido, esto nos permite obtener velocidades pico de transferencia y velocidades de bus más altas que las versiones DDR anteriores. Sin embargo, no hay una reducción en la latencia, la cual es proporcionalmente más alta. Además la DDR3 permite usar integrados de 512 megabits a 8 GByte, siendo posible fabricar módulos de hasta 16 GByte.

En el diseño del DDR3 utiliza bajas corrientes de operación y voltajes (1,5 V, comparado con los 1,8 del DDR2 ó los 2,5 del DDR). Estas memorias resultan ser buenos productos para ser empleados computadoras portátiles.

Teóricamente, estos módulos pueden transferir datos a una tasa de reloj efectiva de 800-2600 MHz, comparado con el rango actual del DDR2 de 533-1200 MHz ó 200-400 MHz del DDR. Existen módulos de memoria DDR y DDR2 de mayor frecuencia pero no estandarizados.

Si bien las latencias típicas DDR2 fueron 5-5-5-15 para el estándar normalizado, para dispositivos DDR3 son 7-7-7-20 para DDR3-1066 y 7-7-7-24 para DDR3-1333.

Los módulos DIMMs DDR3 tienen 240 pines, el mismo número que DDR2; sin embargo, los DIMMs son físicamente incompatibles, debido a una ubicación diferente de la mueca.

Los módulos más rápidos de tecnología DDR3 ya están listos al mismo tiempo que la industria se preparara para adoptar la nueva plataforma de tecnología. Considerado el sucesor de la actual memoria estándar DDR2, DDR3 promete proporcionar significativas mejoras en el rendimiento en niveles de bajo voltaje, lo que lleva consigo una disminución del gasto global de consumo.

Se prevé que la tecnología DDR3 sea dos veces más rápida que la DDR2 y el alto ancho de banda que promete ofrecer DDR3 es la mejor opción para la combinación de un sistema con procesadores dual y quad core (2 y 4 núcleos por microprocesador). El voltaje más bajo del DDR3 ofrece una solución térmica más eficaz para los ordenadores actuales y para las futuras plataformas móviles y de servidor.

Page 74: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

73

RDRAM (Rambus DRAM)

Esta memoria fue desarrollada por Rambus, por lo tanto, utiliza un protocolo propietario, lo cual obliga a sus compradores a pagar regalías en concepto de uso. Esto ha hecho que el mercado adopte la memoria DDR de uso libre, excepto en algunos servidores de grandes prestaciones y la famosa PlayStation 3. Esta memoria hace uso de una característica más fuerte para resolver el problema del ancho de banda y evitar cuellos de botella, esto es la RDRAM eleva la frecuencia de los chips, con lo cual consigue velocidad de datos de 500 Mbps, en realidad lo que hace posible esta velocidad es el bus en sí.

BRECHA ENTRE LA RAPIDEZ DEL

MICROPROCESADOR Y LA MEMORIA

El ritmo de crecimiento en la velocidad de funcionamiento del microprocesador y las velocidades cada vez más altas de funcionamiento del reloj, han producido una brecha entre el rendimiento del microprocesador y el ancho de banda de las memorias.

Según la ley de Moore, el rendimiento y la densidad del procesador, y la densidad de la memoria, aumentan exponencialmente, según lo predice esta ley, como se muestra en el gráfico de la figura 10.

Si se observa el gráfico con atención, las memorias fueron creciendo a un ritmo muy distinto que aquel que se observa para el microprocesador. Por ello, la latencia de memoria se ha convertido en un problema relevante en las computadoras actuales.

Se argumenta que un aumento en la velocidad de reloj y en el rendimiento del microprocesador, hoy no se vería reflejado en un mejor rendimiento al nivel aplicación, porque el rendimiento que percibe el usuario estará limitado al tiempo de acceso de la memoria. Esta situación es la que se conoce como la “pared de memoria”. (Gráfico – figura 10- tomado de del libro: Arquitectura de computadores de los microprocesadores a las supercomputadoras de Behrooz Parhami, Mc Graw Hill)

La Ley de Moore expresa que aproximadamente cada 18 meses se duplica el número de transistores en un circuito integrado. Se trata de una ley empírica, formulada por el co-fundador de Intel, Gordon E. Moore en el año 1965, cuyo cumplimiento se ha podido constatar hasta hoy.

Page 75: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

74

En 1965 Gordon Moore afirmó que la tecnología tenía futuro, que el número de transistores por pulgada en circuitos integrados se duplicaba cada año y que la tendencia continuaría durante las siguientes dos décadas.

Más tarde, en 1975, modificó su propia ley al afirmar que el ritmo bajaría, y que la capacidad de integración se duplicaría aproximadamente cada 24 meses. Esta progresión de crecimiento exponencial, duplicar la capacidad de los circuitos integrados cada dos años, es lo que se considera la Ley de Moore. Sin embargo, el propio Moore ha puesto fecha de caducidad a su ley: "Mi ley dejará de cumplirse dentro de 10 o 15 años”, contados a partir del 2007.

La consecuencia inmediata de la Ley de Moore es que los precios bajan al mismo tiempo que las prestaciones suben. En 26 años el número de transistores en un chip se ha incrementado 3200 veces.

Actualmente, esta ley se aplica a ordenadores personales. Sin embargo, cuando se formuló la ley no existían los procesadores, inventados en 1971, ni los ordenadores personales, popularizados a partir aproximadamente de 1980.

En el momento de escribir el artículo que originó su ley, Moore era Director de los laboratorios de Fairchild Semiconductor. Más tarde, 1968, creó Intel junto con Robert Noyce, uno de sus compañeros en ambas empresas.

Fuente: Arquitectura de computadores de los microprocesadores a las supercomputadoras de Behrooz Parhami, Mc Graw Hill)

Page 76: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

75

¿QUÉ ES LA LEY DE MOORE?

El 19 de abril de 1965, la Revista Electronics publicó un documento elaborado por Gordon Moore en el cual él anticipaba que la complejidad de los circuitos integrados se duplicaría cada año con una reducción de costo conmensurable. Conocida como la Ley de Moore, su predicción ha hecho posible la proliferación de la tecnología en todo el mundo, y hoy se ha convertido en el motor del rápido cambio tecnológico. Moore actualizó su predicción en 1975 para señalar que el número de transistores en un chip se duplica cada dos años y esto se sigue cumpliendo hoy.

Además de proyectar cómo aumenta la complejidad de los chips (medida por transistores contenidos en un chip de computador), la Ley de Moore sugiere también una disminución de los costos. A medida que los componentes y los ingredientes de las plataformas con base de silicio crecen en desempeño se vuelven exponencialmente más económicos de producir, y por lo tanto más abundantes, poderosos y transparentemente integrados en nuestras vidas diarias. Los microprocesadores de hoy se encuentran en todas partes, desde juguetes hasta semáforos para el tránsito. Una tarjeta de felicitación musical que hoy se puede adquirir por muy bajo precio tiene más poder de cómputo que las computadoras centrales más rápidas de hace unas décadas.

Page 77: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

76

PREGUNTAS PARA REFLEXIONAR 1) ¿Qué factores podrían estar influyendo para que los aumentos de rendimiento de las memorias respecto de los microprocesadores sea tan dispares? 2) ¿Las memorias de tipo ROM se usan en los actuales ordenadores? ¿Y con qué propósito? 3) ¿Cuál es el aspecto tecnológico que explotan las memorias RAM dinámicas síncronas para producir productos más rápidos? 4) ¿Qué es el BIOS?, ¿es software o hardware? 5) ¿Físicamente donde se encuentra el BIOS? 6) El BIOS, ¿puede actualizarse? 7) ¿Puedes describir el funcionamiento de las memorias DDR2? 8) ¿Puedes describir el funcionamiento de las memorias DDR3? 9) ¿Puedes puntualizar la mejora de las memorias DDR3 respecto de la memoria DDR2? 10) ¿Puede en resumidas palabras expresar lo que dice la ley de Moore?

Page 78: Lectura 1 - Introducción Al Funcionamiento de Un Microordenador Corregida CARGAR

77

Bibliografía

OBLIGATORIA:

Hillar, Gastón (2007): Estructura Interna de la PC (5ª ed.). Buenos Aires: Hasa

Mueller, Scott (2001): Manual de Actualización y Reparación de PCs. S/D: Pearson Educación / Prentice Hall.

Stalling, W. (1997): Organización y Arquitectura de Computadores. 5° edición. Madrid: Prentice Hall. Capítulo 1 y 4

AMPLIATORIA:

Shen, J. P., Lipasti, M. H. (2006): Arquitectura de Computadores, fundamento de los procesadores superescalares. Madrid: Mc Graw Hill. Cap3.: Memoria y sistemas de E/S.

Tanenbaum, Andrew S. (2006): Structured Computer Organization (5ª ed.). Amsterdam: Prentice Hall.

www.uesiglo21.edu.ar