Está en la página 1de 55

Mdulo 1

Unidad 1
Lectura 1 Introduccin al funcionamiento de un Microordenador

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

Unidad 1: 1: INTRODUCCIN INTRODUCCIN AL FUNCIONAMIENTO DE UN MICROORDENADOR


1.1 Sistemas de numeracin. Sistemas posicionales y no posicionales. Expresin de un nmero en potencia de su base. Sistema decimal, binario, octal y hexadecimal. Mtodos de conversin de nmeros enteros y fraccionarios. Complemento de un nmero. Operaciones fundamentales: fundamentales: suma y resta. Binario, octal y hexadecimal Cdigos. Tipos. Representacin de datos a nivel de mquina. Errores.
Los sistemas digitales actan 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 fcil implementacin de componentes fsicos 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 nmeros discretos. Los nmeros pueden representarse en diversos sistemas de numeracin, los cuales se diferencian entre s por la base o cantidad de smbolos distintos que utilizan para representar una cifra. Un sistema de numeracin es un conjunto de smbolos y reglas de generacin que permiten construir cualquier nmero vlido. En smbolos un sistema de numeracin se puede representar como: SN = (S, R) Donde: SN significa sistema de numeracin S significa smbolos R, significa reglas permitidas o vlidas para un sistema en particular. Por ejemplo para nuestro sistema decimal, la cantidad de smbolos es 10 y son: 0,1, 2, 3, 4, 5, 6, 7, 8 y 9. Par el sistema de numeracin binario, la cantidad de smbolos es 2, estos son: 0 y 1 En cuanto a las reglas, estas son propias de cada sistema de numeracin. CLASIFICACION DE LOS SITEMAS DE NUMERACIN Los sistemas de numeracin se pueden clasificar en: sistemas posicionales y no posicionales. Sistemas no posicionales: en estos sistemas, los dgitos de una cifra tienen el valor del smbolo empleado, no depende de la posicin del dgito dentro de la cifra (nmero). Un ejemplo de este sistema es el sistema de numeracin romano. Sistemas posicionales: el valor de un dgito depende tanto del smbolo como de la ubicacin relativa del mismo dentro de la cifra (nmero). Nuestro sistema de numeracin es posicional ya que el smbolo 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. REPRESENTACIN DE LOS NMEROS EN SISTEMAS POSICIONALES: Existe un teorema fundamental, que establece una expresin para la representacin de un nmero (sistema posicional) en una base b.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-2-

Este teorema fundamenta, expresa que un nmero N, en un sistema de base b, puede representarse por medio de un polinomio de potencias de la base, multiplicadas por un smbolo perteneciente al sistema. En general, entonces: N = anbn + an-1bn-1 + . + ai bi + + a0b0 + a-1b-1 + . + a -t b -t ai es un nmero perteneciente al sistema y por lo tanto cumple con la siguiente condicin: 0 a i b Por ejemplo, el nmero 87, 54 en sistema de numeracin decimal, se presenta por el siguiente polinomio: 87, 54 (10) = 8. 10 1 + 7 . 10 0 + 5 . 10 -1 + 4 . 10 -2

SISTEMA BINARIO Este sistema solamente usa dos smbolos: 0 y 1 (reciben el nombre de bit) Ejemplos de nmeros en binario son: 1001,001 11111 11 100 1,001001 La conversin de un nmero entero de base dos a decimal se realiza fcilmente representando el nmero mediante su polinomio equivalente y operando este ltimo en base 10. Suponiendo que se desee convertir el nmero 111,0112 a decimal, haremos as: 111,0112 = 1. 2 2 + 1 . 2 1 + 1 . 2 0 + 0 . 2 -1 + 1 . 2 -2 + 1 . 2 -3 = 4 + 2 = 7, 375 Entonces: 111,0112 = 7, 37510 En la tabla que se muestra a continuacin se presentan las primeras 16 equivalencias entre sistema binario y el decimal: +1 + 0 + 1/4 + 1/8

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-3-

Tabla 1

Sistema binario 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Sistema decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Para realizar la conversin de un nmero en base 10 a base 2, hay que dividir el nmero 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 dgitos en binario de la equivalencia del nmero decimal a binario. El ltimo resto es el dgito ms significativo, y el dgito menos significativo es el resto de la primera divisin realizada. Para que esto se pueda entender, veremos un ejemplo con nmeros. Si queremos convertir el nmero 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 SISTEMA OCTAL Este sistema usa ocho smbolos diferentes, los cuales son: 0, 1, 2, 3, 4, 5, 6, 7 Ejemplos de nmeros en octal son: 1441,0018 115618 318 331078 6,0010058

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-4-

La conversin de un nmero entero de base ocho a decimal se realiza fcilmente representando el nmero mediante su polinomio equivalente, como se mostr para el sistema binario, y operando este ltimo en base 10. Suponiendo que se desee convertir el nmero 21,042 a decimal, haremos as: 21,048 = 2 . 8 1 + 1 . 8 0 + 0 . 8 -1 + 4 . 8 -2 = 16 + 1 + 0 = 17, 0156 Entonces: 21,042 = 17, 015610 En la tabla que se muestra a continuacin se presentan las primeras 16 equivalencias entre sistema binario y el decimal: Para realizar la conversin de un nmero en base 10 a base 8, hay que dividir el nmero 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 dgitos en octal de la equivalencia del nmero decimal a octal. El ltimo resto es el dgito ms significativo, y el dgito menos significativo es el resto de la primera divisin realizada. Para que esto se pueda entender, veremos un ejemplo con nmeros. Si queremos convertir el nmero 68 de decimal a octal hacemos: 68: 8 8:8 cociente = 8 ; resto = 4 cociente =1 ; resto =0 + 4 . ( 1/64)

Entonces. 6810 = 1 0 48 SISTEMA HEXADECIMAL Este sistema usa 16 smbolos, los cuales son: 0,1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Las letras pueden estar en mayscula o minsculas (aunque todas en una u otra forma) Ejemplos de nmeros en hexadecimal son: A001,00116 11C1316 FF16 E10016 F,0230116 La conversin de un nmero entero de base 16 a decimal se realiza fcilmente representando el nmero mediante su polinomio equivalente y operando este ltimo en base 10. Suponiendo que se desee convertir el nmero A1,012 a decimal, haremos as: A1,012 = 10 . 16 1 + 1 . 16 0 + 0 . 16 -1 + 1 . 16 -2 = 160 + 1 = 161, 256 + 0 + 1/256

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-5-

Entonces: A1,0116 = 161, 25616 En la tabla 2 que se muestra a continuacin se presentan las 16 equivalencias entre sistema binario natural y el hexadecimal: Para realizar la conversin de un nmero en base 10 a base 2, hay que dividir el nmero 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 dgitos en binario de la equivalencia del nmero decimal a binario. El ltimo resto es el dgito ms significativo, y el dgito menos significativo es el resto de la primera divisin realizada.
Tabla 2

Sistema natural 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

binario Sistema hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F

Para que esto se pueda entender, veremos un ejemplo con nmeros. Si queremos convertir el nmero 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

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-6-

COMPLEMENTO DE UN NMERO En el sistema binario existen dos tipos de complementos: el complemento a la base menos uno y el complemento a la base dos. El complemento de un nmero es otro nmero. El complemento a 1 se obtiene invirtiendo el estado de los dgitos 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 dgitos de una cifra binaria) y luego sumndole 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 ARITMETICA La suma aritmtica 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:
Tabla 3

Sumandos a b 0 0 0 1 1 1 0 1

Suma binaria S 0 1 1 0

Acarrero c 0 0 0 1

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 continuacin:

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-7-

a entradas b semisumador

s c salidas

Diagrama en bloque del semisumador

En cuanto a cmo se implementa en la prctica 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 combinacin (0 y 1) de estados de las variables de entrada. Mediante el lgebra de Boole, se puede dar una expresin matemtica a la funcin del semisumador. Internamente un semisumador se construye por medio de interconexin de compuestas lgicas. De esto se deduce que la suma aritmtica de dos bit es una funcin lgica 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 nmero 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 situacin, para lo cual se disea un diagrama en bloque de un sumador total, como se muestra a continuacin:

a entradas b cin Sumador total

s co salidas

La tabla de verdad o tabla que representa el funcionamiento de un sumador total, se muestra a continuacin: Diagrama en bloque del semisumador
Tabla4

Entradas Sumandos acarrero entrada a b cin

Salidas Suma Acarrero S C

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-8-

0 0 0 0 1 1 1 1

0 0 1 1 0 0 1 1

0 1 0 1 0 1 0 1

0 1 1 0 1 0 0 1

0 0 0 1 0 1 1 1

Para el bloque de sumador total o completo vale lo que anteriormente se indic, para el semisumador, es decir, en cuando a como se implementa en la prctica un circuito semisumador, slo se diremos, que un bloque sumador total o completo es un circuito combinacional, en el que el estado de las variables de salida depende solamente de la combinacin (0 y 1) de estados de las variables de entrada y adems que mediante el lgebra de Boole, se puede dar una expresin matemtica a la funcin del sumador total o completo. Internamente un sumador total se construye por medio de interconexin de compuestas lgicas. 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 nmeros binarios es equivalente a una suma algebraica. Por ejemplo restar el nmero positivo b del nmero positivo a es equivalente a sumar al nmero a el nmero b. Entonces si los nmeros 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 cmo se representa un nmero negativo. NUMEROS NEGATIVOS Para indicar si un nmero binario es positivo o negativo usaremos un bit de signo, si este bit es 0 entonces es un nmero positivo y si es 1 entonces el nmero es negativo. Esta forma se llama de valor absoluto, porque los nmeros negativos se representan mediante su valor absoluto y el signo, se utilizan n bits para indicar los nmeros binarios de n-1 bits. Esta forma de representar los nmeros negativos implica que para la realizacin de la resta es necesario utilizar un circuito restador distinto del circuito sumador Entonces, el convenio de disponer de un bi de signo se combina con el representar un nmero negativo de n bits ( n-1 bits de informacin ms un bit de signo) mediante el complemento a la base dos y complemento a la base menos uno. Mediante la adopcin de estos dos convenios, la operacin de la resta se convierte en suma, y entonces mediante un nico circuito sumador pueden realizarse tanto la operacin de suma como la de resta.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

-9-

OPERACIN CON NUMEROS NEGATIVOS MEDIANTE EL CONVENIO DEL COMPLEMENTO A DOS Veremos la resta del nmero b del nmero a, ambos de n bits (n-1 bits de informacin 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 continuacin analizaremos algunos casos: 1)a y b positivos Supongamos: a-b = ? a = 2510 = 0 11001 b = 18 10 = 0 10010 a-b = 710 -b = 1 01110 Entonces a + ( -b) = 0 11001 + (1 01110 ) = 1 0 00111 Despreciando el acarrero 0 00111 representa el 710 positivo Supongamos: ba=? 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 operacin 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:

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 10 -

Bit de signo

1 1

011002 010002

1 0

001002

Despreciando el acarreo, resulta: 410 Bit = de 0 acarreo 0001002

Bit de signo
CODIGOS TIPOS Un cdigo es una representacin unvoca de las cantidades de tal forma que a cada una de ellas, se le asigna una combinacin de smbolos determinada y viceversa. Por esta definicin de cdigo, entonces podemos afirmar que los sistemas de numeracin estudiados anteriormente constituyen cdigos de representacin de las cantidades. El sistema binario recibe el nombre de cdigo binario natural. La utilizacin de este cdigo presenta grandes ventajas en la realizacin de las operaciones aritmticas. Sin embargo existen muchos otros sistemas de control digitales que emplean otros tipos de cdigos binarios diferentes al binario natural a causa de motivos particulares. Con n cifras binarias o dgitos (o bits) se pueden obtener 2n combinaciones diferentes . Cada combinacin se puede asignar a una cantidad diferente. Por ello el nmero de de asignaciones posibles es el de las permutaciones de las 2n combinaciones. CODIGOS BINARIOS CONTINUOS Y CCLICOS Un cdigo binario es continuo si las combinaciones correspondientes a nmeros decimales consecutivos son adyacentes. Se denominan combinaciones binarias adyacentes a aquellas que difieren solamente en un bit. Un cdigo continuo en que la ltima combinacin es adyacente a la primera se denomina cclico. Estos cdigos se utilizan principalmente en los convertidores muy rpidos de variables analgicas a digitales y en los codificadores de posicin que convierten un ngulo en una combinacin binaria mediante un disco codificado. A continuacin se muestran ejemplos de estos cdigos.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 11 -

Tabla 5

Dgito decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 Otro ejemplo:


Tabla 6

Cdigo binario natural 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Cdigo de Gray 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000

Cdigo Johnson 00000 00001 00011 00111 01111 11111 11110 11100 11000 10000

Dgito decimal 0 1 2 3 4 5 6 7 8 9

Ejemplos de cdigos decimales codificados en binario ( BCD)


Tabla 7

Dgito decimal 0 1 2 3 4 5 6 7 8 9

Cdigo BCD natural 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Cdigo BCD exceso tres 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100

CODIGOS CORRECTORES DE ERRORES Los cdigos correctores de errores no slo indican la existencia de un error sino que proporcionan informacin de cul es la cifra o cifras binarias errneas y por consiguiente permiten su correccin invirtiendo simplemente el bit correspondiente.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 12 -

Estos cdigos se utilizan solamente en la transmisin de informacin, 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 cdigo de Hamming es un cdigo de esta clase, a continuacin presentamos su tabla:
Tabla 8

Nmero decimal equivalente 0 1 2 3 4 5 6 7 8 9

Cdigo Hamming b7 b6 b5 b4 b3 b2 b1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 1 0 0 1 0 1 1 1 0 0 1 1 0 0

1.2 Circuitos Circuitos digitales combinacionales y secuenciales. Introduccin a los circuitos lgicos. Forma cannica de una funcin. Minimizacin de circuitos. Mtodo de mapas de Karnaugh de 2,3 y 4 variables. Circuitos digitales combinacionales. Tipos. Circuitos digitales digitales secuenciales. Latches, flipflip-flop y registros. Contadores. Sncronos y asncronos.
CIRCUITOS COMBINACIONALES Y SECUENCIALES Los sistemas lgicos combinacionales son aquellos en los que en cada instante en el tiempo, el estado lgico de sus salidas depende nicamente del estado lgico de sus entradas. En estos circuitos la nocin de tiempo no es tenida en cuanta. La primera gran caracterstica 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 segn la cantidad de variables de entrada. Tambin pueden ser representadas mediante expresiones del algebra de Boole, mediante sumas de productos, o productos de suma, ya sea a travs de expresiones con variables o expresiones numricas (nmeros equivalentes). En otra materia ya ha visto Algebra de Boole, y ha visto que las funciones lgicas se pueden simplificar por medio de los teoremas y postulados del Algebra de Boole. En particular si la funcin depende de 3 o ms variables, realizar simplificaciones es bastante difcil hacerlo, en el sentido de que no representa una forma sistemtica de minimizar las funciones lgicas. El diseo de todo sistema combinacional se inicia mediante la obtencin de una tabla de verdad a partir de las especificaciones que indican los valores que deben tomar la funcin para cada una de las combinaciones de entrada de las cuales depende. De la tabla de verdad se obtienen las expresiones cannicas a partir de las cuales se realizar la simplificacin. Por ejemplo: Disear un sistema combinacional de 3 variables de entrada a, b y c cuya salida debe tomar el valor lgico 1 cuando 2 variables de entrada tomen el valor lgico 1.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 13 -

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 combinaciones posibles de ellas en binario natural, en orden ascendente. Del lado derecho de la tabla va la salida con los estados que toma segn las combinaciones de entrada.
Tabla de verdad

Nmero decimal equivalente 0 1 2 3 4 5 6 7 a 0 0 0 0 1 1 1 1

Entradas b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1

Salida F 0 0 0 1 0 1 1 0

Los circuitos secuenciales son aquellos en los que el valor de la salida en un instante determinado no depender solamente del estado lgico de sus entradas en dichos instantes sino tambin 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 lgicos son implementaciones que obedecen a estados lgicos, es decir 0 y 1 lgico Los circuitos lgicos se implementan con compuestas lgicas ests son: or, and, inversor (not), y combinaciones de ellas. Compuestas bsicas y sus tablas de verdad: a) Compuesta and

Tabla de verdad: Entradas a b 0 0 0 1 1 0 1 1 salida 0 0 0 1

Circuito lgico:

a entradas b

f salida

f = a.b

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 14 -

b)

Compuesta or (inclusiva)

Tabla de verdad: Entradas a b 0 0 0 1 1 0 1 1 salida 0 1 1 1

Circuito lgico:

a entradas b

f salida

f = a +b
a) Compuesta inversor o not Tabla de verdad: Entrada a 0 1 Circuito lgico: salida 1 0

a entrada

f salida

f= a
Existen otras compuestas ms que surgen de la combinacin de estas. FORMA CANNICA DE UNA EXPRESIN Una funcin de un lgebra de Boole es una variable binaria cuyo valor es igual al de una expresin algebraica en la que se relacionan entre s las variables binarias por medio de operaciones bsicas. Producto lgico, suma lgica e inversin. Se representa una funcin lgica por medio de la expresin f = f (a, b,c) El valor lgico de f, depende de las variables a,b,c. Se llama trmino cannico de una funcin lgica 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 cannico (minitrminos) y al segundo suma cannica (maxitrminos).

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 15 -

Por ejemplo sea f (a,b,c)

Producto cannico Suma cannico

abc a+ b+c

El nmero mximo de productos cannicos o sumas cannicas vienen dado por las variaciones con repeticin de dos elementos tomados de n en n. El nmero de productos o sumas cannicas de n variables es por lo tanto 2n. Para mayor facilidad de representacin cada trmino cannico, se expresa por medio de un nmero decimal equivalente al binario obtenido de sustituir las variables ordenadas con un criterio determinado por un 1 o un 0, segn aparezcan en su estado directo ( sin negacin) o en su estado complementado (negada). Por ejemplo para f (a,b,c)

Producto cannico Suma cannico


Entonces la expresin:

abc

equivale a 101 es decir 5

a + b + c equivale a 010 es decir 2

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

f (a,b,c) =3 (5, 2, 7) suma lgica

en donde el smbolo significa la

Para la siguiente tabla de verdad, se muestra la expresin en maxitrminos y en minitrminos:


Tabla de verdad

Nmero decimal equivalente 0 1 2 3 4 5 6 7 f (a,b,c) = 3 ( 2, 4,6) f (a,b,c) = 3 ( 0, 1, 3, 5, 7) a 0 0 0 0 1 1 1 1

Entradas b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1

Salida f 0 0 1 0 1 0 1 0

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 16 -

SIMPLIFICACIONES POR EL METODO DE KARNAUGH No existe actualmente un criterio nico de minimizacin de la expresin de una funcin lgica. En este sentido adoptaremos como expresin mnima, es la obtencin una expresin en forma de suma de productos o productos de suma que tengo un nmero mnimo de trminos con el menor nmero de variables posibles en cada uno de ellos. Existe un mtodo sistemtico para simplificar una expresin, esto es usando los mapas de Karnaugh. El mtodo de Karnaugh es un mtodo tabular en el cual los trminos cannicos adyacentes se agrupan en una tabla de tal manera que estn fsicamente contiguos, y por lo tanto sea muy sencillo realizar agrupaciones que permitan reducir al mnimo la expresin de la funcin. En las tablas o mapas de karnaugh, cada cuadrado corresponde a un trmino (producto o suma) cannico cuyo nmero se indica en el vrtice inferior. Los cuadros que tienen un lado comn, es decir, que son fsicamente adyacentes, corresponden a trminos cannicos que son lgicamente adyacentes y los nmeros decimales que les corresponden se diferencian en una potencia de 2. A dems, 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. A continuacin se muestran las tablas de karnaugh para 2,3 y 4 variables:

b a 0 1

0
0

1
1

bc a 0 1

00
0

01

11

10

Karnaugh de 2 variables Karnaugh de 3 variables cd ab 00


0 1 3 2

00

01

11

10

01 11
12 13 15 14

10

11

10

Karnaugh de 4 variables
Los cuadrados correspondientes a los trminos cannicos que forman parte de la funcin se indican mediante un 1 y los correspondientes a los trminos que no forman parte de la funcin se dejan en blanco.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 17 -

Para obtener la expresin algebraica ms sencilla de la funcin es necesario realizar en la tabla el mnimo nmero de agrupaciones de trminos de la mxima complejidad, de modo que cada uno cubra todos los 1 de la tabla. El procedimiento sistemtico de obtener la expresin ms simple es el siguiente: 1. Se toman todos los unos que no se pueden combinar con ningn 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 prctica hay que hacer este proceso para los minitrminos y para los maxitrminos, y luego elegir la ms sencilla de las respuestas. A continuacin se realizan algunos ejemplos: 1) Sea la funcin f(a,b,c,d) = ( 2,3,5,7,10,11,15)

cd ab 00

00

01 1

11 1
3

10

1
4 5

1
7 6

01 1 11
12 13 15 14

1 10
8 9

11

1
10

Karnaugh de 4 variables
Se pueden enlazar unos que ya pertenecen a algn grupo para constituir otro nuevo siempre que se forme un grupo con al menos un uno que no pertenece a ningn grupo. En este sentido, observar que el 1 que ocupa el cuadro con el nmero 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, situacin 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 lgico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las clulas 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 expresin simplificada de f es:

f(a,b,c,d) = c d+ b c + a b d
2) Sea la funcin f(a,b,c,d) = ( 0,2,3,5,8,10,11)

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 18 -

cd ab 00 1

00

01 1

11 1
3

10

1
4 5 7 6

01 11 1 10
8 9 12 13 15 14

11

1
10

Karnaugh de 4 variables

En el mapa se observan 3 agrupamientos realizados con distinto color, 2 grupos de 4 unos y un grupo de 1 slo uno. El producto lgico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las clulas 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 expresin simplificada de f es:

f(a,b,c,d) = b
3)

d + b c + a b c d

Sea la funcin f(a,b,c,d) = ( 4,5,6,7,9,10,11)

La tabla o mapa de Karnaugh, se muestra a continuacin, en ella se han colocado unos en los casilleros que se corresponden con los nmeros decimales que indica la expresin equivalente de la funcin f. Mediante distintos colores se han realizado los agrupamientos, hay que tener presente que, el nmero 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 fsica y lgicamente adyacentes, los elementos adyacentes solo difieren en el estado de una sola variable del cuadro. Cuando logramos formar un grupo de 4 elementos, como 4 es el resultado de 22, la expresin en minitrminos tienen 2 variables menos que la expresin sin simplificar. Cuando formamos grupos de 8 elementos adyacentes, como 8 = 23, entonces se eliminan 3 variables de la expresin del minitrmino.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 19 -

cd ab 00 1

00

01

11

10

1
4 5

1
7

1
6

01 11
12 13 15 14

1 10
8 9

11

1
10

Karnaugh de 4 variables

En el mapa se observan 3 agrupamientos realizados con distinto color, 2 grupos de 2 unos y un grupo de 4 unos. El producto lgico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las clulas 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 expresin simplificada de f es:

f(a,b,c,d) = a b + a b d + a b c
4) Sea la funcin f(a,b,c) = ( 1,2,5,6,7)

La tabla o mapa de Karnaugh, se muestra a continuacin, en ella se han colocado unos en los casilleros que les corresponden los nmeros decimales que indica la expresin equivalente de la funcin f.

bc a 0 1

00 1

01

11 1

10

1
4 5

1
7

1
6

Karnaugh de 3 variables

En el mapa se observan 3 agrupamientos realizados con distinto color, 3 grupos de 2 unos. El producto lgico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las clulas 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 expresin simplificada de f es:

f(a,b,c) = b c + a b + b c
Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 20 -

5)

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

La tabla o mapa de Karnaugh, se muestra a continuacin, en ella se han colocado unos en los casilleros de la tabla cuyos nmeros decimales coincidan con los que estn expresados en la funcin f. Cuando logramos formar un grupo de 4 elementos, como 4 es el resultado de 22, la expresin en minitrminos tienen 2 variables menos que la expresin sin simplificar. Cuando formamos grupos de 8 elementos adyacentes, como 8 = 23, entonces se eliminan 3 variables de la expresin del minitrmino.

cd ab 1 00 1

00 1

01 1
1 3

11 1

10

1
4 5

1
7

1
6

01 11 1 10
12 13 15 14

11

1
10

Karnaugh de 4 variables

En el mapa se observan 2 agrupamientos realizados con distinto color, 1 grupo de 8 unos y un grupo de 4 unos. El producto lgico que corresponde a cada grupo se obtienen eliminando las variables que toman el valor 0 en la mitad de las clulas 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 expresin simplificada de f es:

f(a,b,c,d) = a + b d
CIRCUITOS COMBINACIONALES Existen varios tipos de circuitos combinacionales, con funciones especficas, 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 lgico determinado 0 o 1, a la salida aparece la combinacin binaria correspondiente al nmero decimal asignado a dicha entrada.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 21 -

Ejemplo de un circuito codificador

A0 A1 A2 A3 A4 A5 A6 A7

C0
Codificador de 8 A 3

C1 C2

DECODIFICADORES Los circuitos decodificadores son sistemas combinacionales que generan los productos cannicos de una combinacin binaria aplicada a sus entradas y se dividen en excitadores y no excitadores, segn que sus salidas puedan o no controlar respectivamente a un indicador numrico. Poseen m entradas (cdigo) y 2m salida, segn la combinacin de entrada se activar una sola salida, la que tienen el subndice del mismo valor que la combinacin aplicad a la entrada. Por ejemplo si se aplica el cdigo 101, a la salida se pondr en alto (tensin positiva) la S5 .

Ejemplo de un circuito decodificador

C0 C1 C2

Decodificador de 3 a 8

S0 S1 S2 S3 S4 S5 S6 S7

MULTIPLEXORES Los multiplexores son circuitos combinacionales formado por un cierto nmero n de entradas de informacin y m entradas de seleccin (tal que 2m =n). Cada combinacin binaria presente en las entradas de seleccin produce la conexin de una de las entradas de datos o informacin con la salida. Por ejemplo si se coloca en las entradas de seleccin la combinacin 101, la informacin que este en la A5 pasar a la salida Z.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 22 -

Ejemplo de un circuito multiplexor

Entradas de informacin

A0 A1 A2 A3 A4 A5 A6 A7

Multiplexor de 8 canales a1

Z salida

C2 C1 C2 Entradas de seleccin
DEMULTIPLEXORES Son circuitos combinacionales estructurados de forma inversa que los multiplexores, es decir poseen una nica entrada de datos o informacin, m entradas de seleccin y n salidas. Segn la combinacin presente en las entradas de seleccin, produce la conexin de la nica entrada de datos o informacin con la salida correspondiente. Por ejemplo si se aplica la combinacin 111 a las entradas de seleccin, se conecta la informacin que trae la entrada E con la salida Z7.

Ejemplo de un circuito demultiplexor Z0 Z1 Z2 Z3 Z4 Z5 Z6 Z7

demultiplexor de 1 a 8

salida

E Entradas de informacin

C2 C1 C2 Entradas de seleccin
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 cul 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 aqullas.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 23 -

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 tambin 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 construccin fsica y que por lo tanto es un sistema automtico, que recibe el nombre de autmata finito debido a poseer un nmero 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 informacin y salidas. Internamente estos circuitos secuenciales se construyen bsicamente con compuertas lgicas. Tienen asociado una tabla de verdad que representa los estados presentes y futuros del dispositivo. Esta tabla vara en los estados de sus entradas y salidas segn sus propias caractersticas. Se clasifican en sncronos y asncronos. Los biestables (dos estados estables 0 y 1) asncronos, son los que no tienen una seal externa de reloj o temporizacin que indican cuando realizar la lectura del esta de las seales de informacin de entrada. La siguiente figura muestra un biestable asncrono.

Entrada de informacin Biestable, latch o flip flop (asncrono)

Entrada de informacin

Los biestables (dos estados estables 0 y 1) sncronos, son los que tienen una seal externa de entrada de reloj o temporizacin que indican cuando realizar la lectura del esta de las seales de informacin de entrada. La siguiente figura muestra un biestable sncrono.

Entrada de informacin Entrada de sincronismo Entrada de informacin Biestable (sncrono)

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 24 -

Los biestables sincronizados, la entrada de sincronismo controla la actuacin de las entradas de informacin, 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 ms especficos segn la aplicacin que se quiera realizar. Los registros, son circuitos secuenciales de tipo sncrono 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. CONTADORES SINCRONOS Y ASINCRONOS Los contadores son circuitos secuenciales que permiten contar en binario, sea en cdigo binario natural u otro tipo de cdigo, en forma ascendente o descendente. Los contadores se construyen con n bloques de biestables sncronos, 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 cclica. Para representar el nmero decimal 3 necesito 2 bit, por lo tanto para realizar este contador necesito 2 bloques de biestables sncronos. La diferencia entre contadores sncronos y asncronos est en la forma de administrar la seal externa de reloj. CONTADORES ASNCRONOS Los contadores asncronos, ondulantes o tambin llamados de rizado, se implementan con un tipo de flip-flop llamado biestable JK activado por seal de flanco de bajada, en modo de conmutacin. El reloj externo ingresa a la seal de reloj del biestable menos significativo de la cadena o conjunto de biestables que forman al contador. Las dems 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 habra que conectar las entradas de reloj de los biestables (excepto el menos significativo) con las salidas Q negadas del biestable inmediato anterior. A continuacin se muestra el esquema en bloques del biestable JK activado por flanco descendente, junto a su tabla de verdad.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 25 -

Tabla de verdad Q J clock K Q 0 0 1 1 0 1 0 1 si si si si Biestable Entradas J k ck Salidas Qt+1 Qt+1 Qt 0 1 Qt Qt 1 0 Qt

Qt tiempo actual Qt+1 tiempo despus Qt salida tiempo actual negada

A continuacin se muestra un contador asncrono 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 lgico. 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 seal de reloj la salida Q del biestable inmediato anterior.

Contador asncrono de Mod 4 1 J Biestable Clockexterno FF1 K Q clock K FF2 Q 20 Q 1 J Biestable 21 Q

CONTADORES SNCRONOS Los contadores sncronos se implementan con un tipo de flip-flop JK activado por seal 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 evolucin de la cuenta con cada pulso del reloj. Luego se realizan las simplificaciones por Karnaugh, y luego se arman las expresiones lgicas para las entradas de cada uno de los FF que forman al contador.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 26 -

1.3 Conceptos de Arquitectura y organizacin de un computador, estructura y funcionamiento de un computador. Funcin del microprocesador. Funcin de la memoria. Cmo interactan el microprocesador y la memoria? Arquitectura Arquitectura clsica de un computador: Modelo de Von Neumann.
Hay una gran variedad de sistemas diferentes susceptibles de recibir la designacin de computador; desde los simples microcontroladores que incluyen los semforos en las calles, hasta las supercomputadoras encargadas de realizar clculos en simulaciones muy complejas como pueden resultar los clculos de trayectorias de misiles, navegaciones automticas, caminatas espaciales, etc. Esta variedad se manifiesta tanto en la aplicacin final, como en el costo, como en el tamao. A pesar de esta enorme variedad de mquinas llamadas computadoras, se aplican sistemticamente ciertos conceptos fundamentales. En este primer modulo se presentan los conceptos bsicos y generales de las computadoras digitales. Un computador es un sistema secuencial sncrono complejo que procesa informacin. La informacin dentro del computador es binaria, slo son permitidos los valores lgicos: 1 y 0. Estos valores lgicos se corresponden con los niveles de tensin elctrica, el 1 lgico se corresponde con el nivel alto de tensin, mientras que el 0 lgico se corresponde con el nivel ms bajo de tensin. Estos niveles elctricos, pueden variar de un ordenador a otro, pues dependen de la tecnologa de los dispositivos que conforman el computador. El procesador central o ncleo est formado por millones de transistores y componentes electrnicos de un tamao microscpico. La informacin binaria se introduce en el ordenador mediante dispositivos perifricos que hacen de interfaz entre el mundo exterior y el computador. Es decir, traducen la informacin del mundo real en seales elctricas, que sern interpretadas como unos o ceros. De manera similar, los perifricos permiten la comunicacin desde el ordenador hacia el exterior, o bien hacia seres humanos u otras mquinas. Un computador necesita energa elctrica para que se ponga en marcha toda la circuitera electrnica que posibilita su funcionamiento. La nica forma de analizar un sistema tan complejo es basarse en una organizacin jerrquica. Un sistema jerrquico es un conjunto de sistemas interrelacionados, cada uno de los cuales se organiza a su vez en una estructura jerrquica, uno tras otro, hasta que se alcanza el nivel ms bajo de subsistema elemental. La naturaleza jerrquica de los sistemas complejos es esencial tanto para su diseo como para su descripcin. El diseador slo 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 slo de la caracterizacin abstracta y simplificada del sistema que hay en el nivel inferior. Conceptualizaciones de arquitectura y organizacin 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 distincin entre arquitectura y organizacin. 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 ejecucin lgica de un programa. La organizacin, en cambio se refiere a las unidades funcionales y sus interconexiones, que dan lugar a especificaciones arquitectnicas. Un ejemplo de diseo arquitectnico es si el ordenador tendr la instruccin de multiplicar, o el usuario deber desarrollar un algoritmo particular para realizar la multiplicacin que consiste en utilizar instrucciones de desplazamiento y transferencia. En cambio aspectos de organizacin sobre este ejemplo, es si el ordenador dispone de una unidad fsica especializada en multiplicar, o por medio de un mecanismo que haga uso iterativo de la unidad de suma del sistema.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 27 -

Esta distincin entre arquitectura y organizacin es importante, tanto es as, que una determinada arquitectura puede permanecer en el mercado mucho tiempo, pero su organizacin ir cambiando con la evolucin de la tecnologa. ESTRUCTURA Y FUNCIONAMIENTO: La naturaleza jerrquica es esencial, tanto para su diseo, como para su descripcin. Ya presentamos anteriormente esta visin de niveles interrelacionados, para los cuales al diseador solo le interesa de cada nivel, dos aspectos: ESTRUCTURA FUNCIONAMIENTO

La estructura se refiere al modo en que los componentes estn interconectados. Mientras que el funcionamiento, abarca la operacin de cada componente individual como parte de la estructura. FUNCIONAMIENTO: Los computadores en general tienen 4 funciones bsicas: Procesamiento de datos Almacenamiento de datos Transferencias de datos Control

El ordenador debe procesar datos, los cuales pueden adaptar mucha variedad de representaciones. Tambin debe ser capaz de almacenarlos al menos temporalmente (corto plazo) hasta realizar una determinada operacin, y es posible que tambin 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 rectngulo, eso nos dar idea de la direccin del flujo de datos.
ENTORNO OPERATIVO

Transferencia datos

Control

Almacenamiento Figura 1

Procesamiento de datos

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 28 -

Arquitectura clsica de un computador modelo de Von Neumann: La arquitectura de Von Neumann tiene sus orgenes en el trabajo del matemtico John Von Neumann divulgado en 1945, Estados Unidos. Este matemtico llev a cabo un estudio terico para demostrar que una computadora poda tener una estructura fsica muy sencilla y ser capaz de ejecutar cualquier tipo de clculo eficazmente por medio de un control programado, sin necesidad de efectuar cambios al hardware. Von Neumann contribuy a un nuevo entendimiento de cmo deban organizarse y construirse computadoras prcticas; sus ideas se conocen como la tcnica 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 bsqueda/ejecucin secuencial de instrucciones. En trminos generales un computador tiene que realizar tres funciones: Procesamiento de datos Almacenamiento de datos Transferencia de dato El computador debe procesar datos, transformar la informacin recibida. Debe almacenar datos, intermedios y finales. Tambin 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 mdulos. Estas funciones se pueden llevar adelante con arquitecturas muy avanzadas (como se ver ms adelante) o con la estructura de un computador bsico, como el que se muestra en la figura 2. La arquitectura de un computador hace referencia a la organizacin de sus elementos en mdulos con una funcionalidad definida y a la interaccin entre ellos.

DESCRIPCIONES DE LOS ELEMENTOS: CPU: La unidad central de proceso, es el corazn 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 seal elctrica peridica 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 mxima de funcionamiento, por lo tanto siempre es deseable que la frecuencia de este reloj sea lo ms alta posible, aunque esta velocidad se ve limitada por cuestiones de diseo tecnolgico. A frecuencia ms alta se genera mayor calentamiento del sistema. Por lo tanto una frecuencia de funcionamiento mayor que la mxima que soporta la CPU, puede provocar un sobrecalentamiento que deteriore en forma permanente la CPU.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 29 -

OSCILA DOR
CLK

Bus MEMORIA CPU

E/S

Disco de almacenamient o

Pantalla Figura 2

Teclado

El microprocesador es un circuito integrado en cuyo interior tiene algunos o todos los elementos hardware, y el de CPU, que es un concepto lgico. Una CPU puede estar soportada por uno o varios microprocesadores, y un microprocesador puede soportar una o varias CPU. Un ncleo suele referirse a una porcin del procesador que realiza todas las actividades de una CPU real. La tendencia de los ltimos aos ha sido la de integrar (colocar) ms ncleos dentro de un mismo sustrato, y ms 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 lgico, singular y funcional, el microprocesador est compuesto bsicamente por: varios registros, una Unidad de control (UC), una Unidad Aritmtica y Lgica (ALU); y en los microprocesadores de ltima generacin incluyen dentro de la misma pastilla una Unidad de Punto Flotante. El microprocesador ejecuta instrucciones almacenadas como nmeros binarios organizados secuencialmente almacenados en la Memoria Principal. La ejecucin de las instrucciones se puede realizar en varias fases: Pre-bsqueda (PreFetch), lo cual significa una pre lectura de la instruccin desde la memoria principal, Fetch, envo de la instruccin al decodificador, Decodificacin de la instruccin, es decir, determinar qu instruccin es y por tanto qu se debe hacer, Lectura de operandos (si los hay), Ejecucin, (Lanzamiento de las Mquinas de estado que llevan a cabo el procesamiento). Escritura de los resultados en la memoria principal o en los registros.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 30 -

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 segmentacin. La duracin de estos ciclos viene determinada por la frecuencia del reloj del sistema. El microprocesador se conecta a un circuito especial, cual toma seal de un cristal de cuarzo, para generar pulsos a un ritmo constante. Este reloj, en la actualidad, genera miles de Ghz. Hoy existen distintas formas de determinar y medir el rendimiento de un procesador, hasta hace pocos aos se crea 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 ms altas para aumentar su poder de cmputo. Durante los ltimos aos 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. Adems la tendencia hoy es la incorporar ms ncleos dentro de un mismo encapsulado para aumentar el rendimiento por medio de una computacin paralela, de manera que la velocidad de reloj es un indicador menos fiable an. Medir el rendimiento con la frecuencia del sistema, sigue siendo vlido 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 parmetro de comparacin aceptable. Dentro de una familia de procesadores es comn encontrar distintas opciones en cuanto a frecuencias de reloj, debido a que no todos los integrados tienen los mismos lmites 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 caractersticas 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 mltiples factores involucrados en la computacin de un problema, por lo general las pruebas no son concluyentes entre sistemas de la misma generacin. ALGUNOS DATOS SOBRE EL PROCESO DE FABRICACION DE MICROS El proceso de fabricacin de un microprocesador es muy complejo. Todo comienza con arena (compuesta bsicamente de silicio), con la que se fabrica un monocristal de unos 20 x 150 centmetros. Para ello, se funde el material en cuestin a alta temperatura (1370C) 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 milmetro de espesor (una capa de unas 10 micras de espesor, la dcima 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 fabricarn 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 supervisin mediante lseres capaz de detectar imperfecciones menores a una milsima de micrn, se recubren con una capa aislante formada por xido de silicio. De aqu en adelante, comienza el proceso del dibujado de los transistores que conformarn a cada microprocesador. A pesar de ser muy complejo y preciso, bsicamente consiste en la impresin de sucesivas mscaras sobre la oblea, sucedindose la deposicin y eliminacin de capas finsimas de materiales conductores, aislantes y semiconductores, endurecidas mediante luz ultravioleta y atacada por cidos encargados de remover las zonas no cubiertas por la impresin. Salvando las escalas, se trata de un proceso comparable al visto para la fabricacin de circuitos impresos. Despus de cientos de pasos, entre los que se hallan la creacin de sustrato, la oxidacin, la litografa, el grabado, la implantacin inica y la deposicin de capas; se llega a un complejo "bocadillo" que contiene todos los circuitos interconectados del microprocesador.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 31 -

Para tener una apreciacin vlida de la magnitud del proceso descripto, un transistor construido en tecnologa de 45 nanmetros tiene un ancho equivalente a unos 200 electrones. Lo cual nos habla de la precisin absoluta que se necesita al momento de aplicar cada una de las mascaras utilizadas durante la fabricacin. Los detalles de un microprocesador son tan pequeos y precisos que una nica partcula de polvo puede destruir todo un grupo de circuitos. Las salas empleadas para la fabricacin 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 ms puras de la actualidad se denominan de clase 1. La cifra indica el nmero mximo de partculas mayores de 0,12 micras que puede haber en un pie cbico de aire (0,028 metros cbicos). Como comparacin para apreciar estos procesos, un hogar normal sera de clase 1 milln. Los trabajadores de estas plantas emplean trajes estriles 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 litogrfico, 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 algn microprocesador defectuoso. La mayora 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 pequea placa de unos pocos milmetros cuadrados, sin pines ni cpsula protectora. Cada una de estas plaquitas ser dotada de una cpsula protectora Empaquetado Los microprocesadores son circuitos integrados y como tal estn formados por un chip de silicio y un empaque con conexiones elctricas. En los primeros procesadores el empaque se fabricaba con plsticos especiales o con cermicas en formatos como el DIP entre otros. El chip se pegaba con un material trmicamente conductor a una base y se conectaba por medio de pequeos alambres a unas pistas terminadas en pines. Posteriormente se sellaba todo con una placa metlica 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 an se usaba el empaque cermico que tena un arreglo de pines PGA y una cavidad en el espacio de ese arreglo, donde se introduca el chip del procesador y se soldaba con pequeos alambres a los pines. La cavidad se sellaba con una lmina de cobre. En la actualidad los microprocesadores de diversos tipos (incluyendo procesadores grficos) se ensamblan por medio de la tecnologa Flip chip. El chip semiconductor es soldado directamente a un arreglo de pistas conductoras (en el substrato laminado) con la ayuda de unas pequesimas esferas que se depositan sobre las obleas de semiconductor en las etapas finales de su fabricacin. El substrato laminado es una especie de circuito impreso que posee pistas conductoras hacia pines o contactos, que a su vez servirn de conexin entre el chip semiconductor y un socket de CPU o una placa base. Tiempo atrs, la conexin del chip con los pines se realizaba por medio de pequesimos alambres de manera que quedaba boca arriba, con el mtodo Flip Chip queda boca abajo, de ah se deriva su nombre. Entre las ventajas de este mtodo esta la simplicidad del ensamble y en una mejor disipacin 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 tambin 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 tambin se incluye desde el Pentium III de ms de 1 Ghz. Disipacin de calor Con el aumento en el nmero de transistores incluidos en un procesador, el consumo de energa ha aumentado tanto que la disipacin 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.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 32 -

Entre ellos se encuentras sistemas sencillos como disipadores metlicos que aumentan el rea de radiacin, permitiendo que la energa salga rpidamente del sistema. Tambin los hay con refrigeracin lquida, por medio de circuitos cerrados. MEMORIA: Es la responsable del almacenamiento de datos. En una misma arquitectura hay muchos tipos de memoria, las hay rpidas y costosa, y baratas y masivas. Estas diferencias generan una distribucin y organizacin por capas que se denomina jerarqua de memorias. El objeto es disponer de la mayor cantidad de memoria combinando costo reducido con una alta velocidad de funcionamiento. E/S: Transfiere datos entre el computador y el entorno exterior. Este bloque genrico est formado por los elementos necesarios para realizar la comunicacin del computador con el mundo exterior. En l se encuentran los controladores de perifricos que determinan la interfaz entre los perifricos, la memoria y el procesador. BUSES (sistema de interconexin): Son los mecanismos que permiten el flujo de datos entre la CPU, la memoria y los mdulos de E/S. En los buses se propagan seales elctricas que son codificadas como unos y ceros lgicos. PERIFERICOS: Son los que permiten entrada de datos al computador y la salida de informacin una vez procesada, al mundo exterior. Ejemplos de perifricos: de teclado, impresora, scanner, mouse, disco duro, las tarjetas de red. Los perifricos se clasifican de entrada, salida, este tema se ver ms adelante en otro mdulo de la materia. INTERACCION ENTRE CPU Y MEMORIA La CPU es la parte ms importante del computador ya que es la que se encarga de controlar todas las partes del computador y de realizar los clculos. El sistema desde que es alimentado, empieza a ejecutar instrucciones y no se detiene hasta que se corta la alimentacin. Las instrucciones forman programas mediante los que se realiza una determinada accin y estos programas no son solo los de los usuarios, sino los de gestin del sistema completo. A su vez la CPU tiene una estructura interna como la que se muestra en la figura 3.

ALU

Bus interno

UC

Monoprocesador

Registro s

Figura 3
Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 33 -

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 estn en la misma memoria como se ve en la figura 4 La UC genera las seales de control que establecen el flujo de datos en todo el computador. Se encarga de 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 instruccin es una combinacin de ceros y unos nica. Una vez que se ha accedido a la instruccin que se va a ejecutar, la UC la almacena en un registro (registro de instrucciones) en forma temporal, interpreta su cdigo de operacin y ejecuta la secuencia de acciones adecuada. Es decir, decodifica la instruccin. En consecuencia las fases de ejecucin de una instruccin son: bsqueda de la instruccin, decodificacin, bsqueda de los operandos y ejecucin propiamente dicha. La UC genera las seales de control que establecen el flujo de datos en todo el computador. Se encarga de 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 instruccin es una combinacin de ceros y unos nica. Una vez que se ha accedido a la instruccin que se va a ejecutar, la UC la almacena en un registro (registro de instrucciones) en forma temporal, interpreta su cdigo de operacin y ejecuta la secuencia de acciones adecuada. Es decir, decodifica la instruccin. En consecuencia las fases de ejecucin de una instruccin son: bsqueda de la instruccin, decodificacin, bsqueda de los operandos y ejecucin propiamente dicha. Unidad Aritmtica y Lgica (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 decida nada, recibe rdenes de la UC. Realiza las operaciones aritmticas, como: suma, resta etc., y lgicas como: la funcin or, and, etc.

Registro de status

Registro temporal Desplazador sumador Acumulador Bus interno de la CPU

ALU

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 34 -

Registros Internos: Los registros son pequeas porciones de memoria de tipo RAM esttica muy veloces. Deben funcionar a la misma velocidad que el mismo procesador. Tienen la funcin de guardar informacin temporal y resultados parciales. El almacenamiento de estos datos en memoria principal sera lento, ya que la memoria principal se construye con otro tipo de memoria mucho ms lentas en su funcionamiento general que el microprocesador, adems de aumentar considerablemente el trfico de informacin en el sistema de interconexin (buses). Estas circunstancias haran disminuir el rendimiento en general del sistema completo. Entonces, estas pequeas celdas de memoria tienen por funcin guardar datos temporales y la configuracin interna de la CPU o informacin sobre la ltima operacin realizada por la ALU (resultado cero, resultado negativo, desbordamiento u overflow, etc.). Una arquitectura tiene en general muchos registros: los registros ms importantes son: a) b) c) d) e) f) g) h) Registro cdigo de condicin Registro de direcciones Registro de propsitos generales Contador de programa Registro puntero de pila Registro ndice de pila Registro de dato Registro cdigo de instrucciones

Programa + datos
Unidad Aritmtica y Lgica

1 0

0 1

0 1

0 0

OSCILADOR 1 CLK CPU Bus MEMORIA Unidad de control 0 0 1 1 0 0 1 1 1 1 1 1

0 Registros E/S Teclado

Control
Pantalla

Disco de almacenamiento

. . Perifricos

CPU

Memoria

Figura 4

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 35 -

El ciclo para ejecutar cualquier instruccin se divide en ciclo de bsqueda y ciclo de instruccin. En el ciclo de bsqueda la unidad de control genera las seales adecuadas para acceder a la memoria y leer una instruccin. El ciclo de bsqueda para cualquier instruccin siempre es el mismo. La diferencia se encuentra en el ciclo de ejecucin, la cual es funcin del cdigo de operacin de cada instruccin. Una CPU est siempre o en el ciclo de bsqueda o en el ciclo de ejecucin, tal como se muestra en la figura 5. La CPU est eternamente en uno de estos ciclos hasta que pierde la alimentacin o hasta que se ejecuta alguna instruccin especial de parada (halt).

CICLO DE LA MQUINA VON NEUMANN

SO

CICLO DE BUSQUEDA

S1

CICLO DE EJECUCION

Figura 5

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 perifricos desde donde entraron y los resultados sern enviados a uno o ms perifricos de salida. Un perifrico no puede transferir informacin a otro sino es pasndolo por la memoria principal. Tecnolgicamente 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 nmero (direccin) que identifica una posicin, el dato contenido en dicha posicin es localizado sin realizar una bsqueda 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 posicin de un dato en la memoria.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 36 -

Por ejemplo si el tiempo de acceso (tac) de una memoria es de 20ns, ese tiempo es el mismo para acceder a la posicin 000001 que para la posicin 999999. En sntesis: 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 cajn tiene asignado un nico nmero fijo que representa su direccin y que no puede cambiarse. Al contenido de cualquier posicin se puede acceder en igual tiempo, sin bsqueda, indicando un nmero que es su direccin. Estas direcciones son consecutivas, es decir desde cero hasta la direccin ms alta que se asigna a la ltima posicin. Por lo tanto direcciones sucesivas suponen posiciones dibujadas consecutivamente. En la figura 6 se representa un esquema de cmo podemos visualizar la MP. CONSTITUCIN: La MP est formada por dos tipos diferentes de memoria, en aspectos referidos a la tanto a la tecnologa de fabricacin 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 voltil porque no pierden sus datos cuando se desconecta la alimentacin. Son utilizadas para almacenar datos y programas permanentes o que no cambiaran durante un perodo largo de tiempo. En estas memorias se graban una serie de ruinas llamadas BIOS (Sistema bsico de entrada salida). Estas rutinas estn ligadas al hardware particular y nos permiten entre varias cosas tener acceso a los perifricos facilitando el intercambio de informacin con ellos. Las memorias RAM (Memoria de Acceso Aleatorio) y su familia, son memorias voltiles, es decir pierden la informacin almacenadas en ellas, frente a interrupciones de energa. Son de lectura y escritura, es decir el tiempo que emplean en ser grabadas es comparativamente el mismo que se utiliza para borrarlas.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 37 -

Direccin 99999
0 1 1 0 1 0 1 1 1 0

1 0

0 0 0

1 1 0 0

1 1 1


1 0 0 1 0 1 0 0

1 1 0 0

1 1 1

1 1 1

00002 Figura 6 00001 00000

0 0

Preguntas para reflexionar: 1) A medida que se aumenta el nmero de lneas del bus de direcciones (cables planos ms anchos), qu es esperable que tambin pueda crecer en una arquitectura? Supone un crecimiento lineal, o con otro tipo de relacin matemtica? 2) Ser beneficioso o perjudicial que una arquitectura tengo muchos o pocos registros internos? 3) Qu consecuencias implicaran un bus de datos ancho?, un bus de datos ancho implica que puede transmitir muchos bit de informacin al mismo tiempo. 4) Existe alguna relacin entre el nmero de bit simultneos que pueden circular por el bus de direcciones y el tamao de la memoria principal? 5) 6) Se podra simular como registro zonas de la memoria principal? Podra elevarse indefinidamente la frecuencia de reloj de una arquitectura?

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 38 -

1.4 Criterios de clasificacin de los sistemas de memoria: ubicacin, capacidad, unidad de


transferencia, mtodo de acceso, dispositivo dispositivo fsico, caractersticas fsicas (voltil / no voltil, borrable / no borrable). Capacidad y organizacin de almacenamiento. Tiempo de acceso y tiempo de transferencia. Jerarqua de memoria. La memoria del sistema o memoria principal semiconductora. 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 ejecucin. Cuando se desea ejecutar un programa, cmo 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 tambin que gestionar las posiciones de memoria donde se va a cargar el programa. Finalizada la copia, el procesador inicia la ejecucin de las instrucciones leyndolas de memoria a partir de la posicin donde el S.O. ha cargado el programa. El tamao mximo que puede tener la memoria fsica de un ordenador est determinado por el nmero de lneas 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 lneas de direcciones ser capaz de acceder al rango de posiciones de memoria desde 00000 H hasta 0FFFF H en representacin hexadecimal. Es decir 216 = 65536 este nmero representa el nmero de direcciones de la memoria en decimal, es comn representar las direcciones en sistema de numeracin hexadecimal. Cuando antes lleguen las instrucciones y datos desde la memoria al procesador mayor ser la velocidad de ejecucin de los programas. Para medir la velocidad del sistema de memoria se definen algunos parmetros: Tiempo de acceso: es el tiempo mnimo que transcurre desde que las direcciones se depositan en el bus y se recogen los datos, en el caso de una lectura. Tiempo de ciclo: es el tiempo mnimo que tiene que transcurrir entre dos operaciones de memoria consecutivas. Tiempo de latencia: Se define como el tiempo transcurrido entre la emisin de una peticin o comando a un sistema determinado y la recepcin de una respuesta o contestacin. 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 nmero de peticiones por unidad de tiempo. Si cada peticin corresponde a un nmero fijo de byte de datos, entonces el ancho de banda tambin se puede expresar como el nmero de byte por unidad de tiempo. Nota: los parmetros anteriores son distintos, y marcan la calidad de una determinada memoria. Estos dos ltimos parmetros representan dos mtricas muy importantes, para caracterizar subsistemas, dispositivos perifricos e interconexiones en los sistemas informticos. Estas mtricas son importantes para comprender el comportamiento de un sistema.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 39 -

En general el ancho de banda depende mucho de las restricciones de costo de los productos ms que de las limitaciones fundamentales de una tecnologa en particular, mientras que la latencia suele ser mucho ms difcil de mejorar, ya que normalmente est limitada por la tecnologa que se usa, e incluso por las leyes de la fsica. Una de las necesidades fundamentales que debe cumplir un sistema informtico es la necesidad de almacenar datos y cdigo 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 clculos y los programas utilizados para realizar tales clculos sobrevivan cuando el equipo se apague. Bsicamente, ese almacenamiento es un inmenso conjunto de bits que el procesador puede direccionar. Una tecnologa de almacenamiento perfecta para retener esa cantidad de bits en un sistema informtico satisfar los siguientes requisitos de memoria ideal: Capacidad infinita: Para almacenar grandes cantidades de datos y grandes programas. Ancho de banda infinito: Para transmitir rpidamente esos grandes conjuntos de datos y de programas hacia y desde el procesador. Latencia cero o instantnea: Para evitar que el procesador se detenga mientras datos o cdigo de programa. Persistencia o no volatilidad: Para permitir que los datos y programas sobrevivan incluso cuando se interrumpe el suministro de energa. Costo de implementacin: muy bajo o cero. Los diseadores de procesadores y sistemas deben intentar conseguir este ideal tanto como sea posible para satisfacer las expectativas de correccin 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 diseado puede mantener bastante bien la ilusin de este ideal. El sistema de memoria, conocido como jerarqua de memoria, incorpora varias tecnologas de almacenamiento para crear un todo que se aproxime a cada uno de los cinco ideales de memoria. La organizacin jerrquica del sistema de memoria, es necesario porque las memorias muy rpidas tambin son muy costosas, entonces para ofrecer productos competitivos en el mercado hay que balancear las prestaciones con el tamao, ambos parmetros estn vinculados con el costo, por lo tanto el objetivo es el de construir una memoria de tamao grande, de altas prestaciones, pero con un costo por bit bajo. Esta representacin jerrquica se la suele representar con una pirmide. La base, ancha, representa el espacio de almacenamiento fuera de lnea o externo (cinta magntica, etc.), ascendiendo en la pirmide nos encontramos con otro nivel, este recibe el nombre de almacenamiento fuera de la placa madre (corresponde a los discos pticos, magnticos, optomagnticos, ejemplo DVD, CD). El nivel ms alto de la pirmide corresponde a la memoria que se encuentra fsicamente 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 pirmide aumenta el costo por bit de almacenamiento, disminuye la capacidad de almacenamiento y aumenta la velocidad de las memorias. La estrategia de esta organizacin jerrquica es la de organizar los datos y programas para que las palabras de memoria necesarias estn normalmente en la memoria ms rpida. En la figura 6, se puede ver esta organizacin jerrquica. Se puede hacer una representacin comparativa, como muestra la figura 7, en un sistema de ejes, referida a los componentes de la jerarqua de memoria. En esta figura L1 y L2 representan a las memorias cach, cuyas caractersticas se vern ms adelante (mdulo 2)

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 40 -

Latencia y capacidad

Disc o

DRA Mam

L2 L1
Registros

Ancho de banda y costo por bit

Figura 7 Jerarqua de componentes

En la figura 8 (tomada del libro Arquitectura del Computador Fundamento de los procesadores superescalares, John Paul Shen, Mikko H. Lipasti, Mc Graw Hill) se retoma el anlisis de las cinco caractersticas ideales de memoria. Se puede comprobar que los niveles superiores de la jerarqua de memoria, registros y cach primaria, son capaces de proporcionar anchos de bandas casi infinitos y tiempos de latencia muy bajos al ncleo 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 an ms, aparece el concepto de memoria virtual, extendiendo el concepto de jerarqua a los dispositivos magnticos, que proporcionan capacidades que sobrepasan la demanda de todas las aplicaciones. El cuarto ideal de memoria, persistencia y no volatilidad, tambin lo pueden ofrecer los discos magnticos, diseados para conservar su informacin incluso cuando el sistema est sin energa. El quinto ideal, bajo costo, lo ofrecen los niveles inferiores de la jerarqua ya que estos compensan los costos bajos por bit, respecto de los costos altos de los niveles iniciales (dentro de la CPU) de la jerarqua (pocos bit a alto costo).

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 41 -

CP
Registros Capacidad de 256 byte 1 Kbyte Latencia de <<1ns (tpica)

L1- I

L1- D

Capacidad de 8 K 128Kbyte Latencia <1ns (tpica)

L2

Capacidad de 128Kbyte 16 Mbyte Latencia apro. 10ns (tpica)

Memoria Capacidad de 128 Mbyte 100 Gbyte Latencia de apro. 100 ns ( tpica)

Figura 8: jerarqua de memoria

CRITERIOS DE CLASIFICACION DE MEMORIAS Existen diversos criterios de clasificacin de memorias, a continuacin se exponen algunos: 1) Ubicacin: dentro de la CPU interna (MP) externa (secundaria) 2) Capacidad: Tamao de la palabra Nmero de palabras 3) Unidad de transferencia: Palabra Bloque

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 42 -

4) Mtodo de acceso: Secuencial Directo Aleatorio Asociativo 5) Prestaciones: Tiempo de acceso Tiempo de ciclo Velocidad de transferencia Densidad de informacin segn la tecnologa, se mide en espacio x bit 6) Dispositivo Fsico Semiconductor Soporte magntico ptico Magneto-ptico 7) Caracterstica fsica Voltiles / No Voltiles Borrable / No borrable ACLARACIONES DE CONCEPTOS REFERIDOS A LA CLASIFICACION Se entiende por memoria asociativa el almacenamiento y recuperacin de informacin por asociacin con otras informaciones. Un dispositivo de almacenamiento de informacin se llama memoria asociativa si permite recuperar informacin a partir de conocimiento parcial de su contenido, sin saber su localizacin de almacenamiento. A veces tambin 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 direccin de memoria en la que se encuentra la informacin. Sin embargo, se cree que el cerebro humano no acta as (con el conocimiento exacto de la direccin donde se halla el dato buscado). Si queremos recordar el nombre de una persona, no nos sirve saber que fue el nombre nmero 3274 que aprendimos. Es ms 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 ms importantes con un amplio rango de aplicaciones en reas tales como: Memorias de acceso por contenido, identificacin de patrones y control inteligente. Una memoria asociativa puede almacenar informacin 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 informacin basndose en el conocimiento de parte de sta (clave de bsqueda). El patrn clave puede ser una versin con ruido de un patrn 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 dimensin. 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.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 43 -

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 ms usado es el silicio, aunque tambin hay aplicaciones en germanio. Para que la conduccin de la electricidad sea posible es necesario que haya electrones que no estn ligados a un enlace determinado (banda de valencia), sino que sean capaces de desplazarse por el cristal (banda de conduccin). La separacin entre la banda de valencia y la de conduccin 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 energa se superponen, son conductores. Los aislantes (o dielctricos), en los que la diferencia existente entre las bandas de energa, del orden de 6 eV impide en condiciones normales el salto de los electrones. Los semiconductores, en los que el salto de energa es pequeo, del orden de 1 eV, por lo que suministrando energa pueden conducir la electricidad; pero adems, su conductividad puede regularse, puesto que bastar disminuir la energa aportada para que sea menor el nmero de electrones que salte a la banda de conduccin; cosa que no puede hacerse con los metales, cuya conductividad es constante, o ms propiamente, poco variable con la temperatura. Ubicacin del almacenamiento secundario, terciario y fuera de lnea La memoria requiere que la computadora use sus canales de E/S para acceder a la informacin y se utiliza para almacenamiento a largo plazo de informacin persistente. Sin embargo, la mayora 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 tambin se llama "de almacenamiento masivo". Habitualmente, la memoria secundaria o de almacenamiento masivo tiene mayor capacidad que la memoria primaria, pero es mucho ms lenta. En las computadoras modernas, los discos duros suelen usarse como dispositivos de almacenamiento masivo. El tiempo necesario para acceder a un byte de informacin dado almacenado en un disco duro es de unas milsimas de segundo (milisegundos). En cambio, el tiempo para acceder al mismo tipo de informacin en una memoria de acceso aleatorio (Ram) se mide en mil-millonsimas de segundo (nanosegundos). Esto demuestra la diferencia entre la velocidad de las memorias de estado slido y la velocidad de los dispositivos rotantes de almacenamiento magntico u ptico: los discos duros son del orden de un milln de veces ms lentos que la memoria (primaria). Los dispositivos rotantes de almacenamiento ptico (unidades de CD y DVD) son incluso ms lentos que los discos duros, aunque es probable que su velocidad de acceso mejore con los avances tecnolgicos. 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 voltil), a diferencia de la memoria Ram que es voltil; pero posee mayor capacidad de memoria que la memoria principal, aunque es ms lenta que sta. El proceso de transferencia de datos a un equipo de cmputo se le llama "procedimiento de lectura". El proceso de transferencia de datos desde la computadora hacia el almacenamiento se denomina "procedimiento de escritura".

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 44 -

En la actualidad para almacenar informacin se usan principalmente tres 'tecnologas': 1. Magntica (ejemplo de ellas son: disco duro, cintas magnticas); 2. ptica (ejemplo de estos son: CD, DVD). 3. Algunos dispositivos combinan ambas tecnologas, es decir, son dispositivos de almacenamiento hbridos, por ejemplo los discos Zip. Tecnologa Flash (Tarjetas de Memorias Flash) ORGANIZACIN INTERNA DE UNA CELDA DE MEMORIA El elemento bsico de almacenamiento de una memoria cualquiera sea su tecnologa, 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 continuacin, en la figura 9, se muestra una representacin esquemtica de una celda de memoria, tomada del libro: Organizacin y Arquitectura de Computadores William Stalling. 5 edicin, Prentice Hall.

Control

Control

Deteccin de datos Seleccin CELDA Dato Entrada de Seleccin CELDA

Lectura Escritura Figura 9

CLASIFICACIN DE LAS MEMORIAS ROM: Las memorias ROM, son memorias no voltiles, de solo lectura, o principalmente de lectura, sera la traduccin ms apropiada para este tipo de memorias. Esta traduccin 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 voltiles de acceso aleatorio, no puede borrar la informacin que almacena. Esta memoria es grabada por el fabricante, en el mismo proceso de fabricacin. El usuario debe suministrar la informacin (0, 1) que desea guardar en la memoria al fabricante. El fabricante

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 45 -

mediante una alta corriente que hace circular a travs 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 informacin. Puede hacerlo el usuario. Aunque se mantiene la caracterstica de degradacin permanente de las celdas de almacenamiento, por esto esta memoria slo se graba una vez. La memoria EPROM, representa una buena flexibilizacin de toda la operatoria de esta memoria. Esta memoria es 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 halle 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 energa), cuando se somete al proceso de borrado, la memoria se borra en forma completa, aunque el usuario slo quiera borrar una parte de ella. Una vez borrada, hay que colocarla en el grabador de EPROM, y volver a grabar. Esta operacin borrar, grabar, no puede hacerse indefinidamente, el chip termina deteriorndose. La memoria EEPROM, aumenta an ms la flexibilidad, esta memoria se borra y graba elctricamente, y no es necesario sacar la memoria del lugar donde se halle instalada para borrarla ni grabarla, adems 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 voltil, 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 fbrica sin carga, por lo que son ledos como 0 (por eso, una EPROM sin grabar se lee como 00 en todas sus celdas). Se programan mediante un dispositivo electrnico que proporciona tensiones superiores a los normalmente utilizados en los circuitos electrnicos. Las celdas que reciben carga se leen entonces como un 1. Una vez programada, una EPROM se puede borrar solamente mediante exposicin 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 fcilmente por una ventana transparente en la parte alta del encapsulado, a travs 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 (OneTime 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 fabricacin de pequeas cantidades donde el costo no es lo importante) y por memorias de tipo Flash (mayor utilizacin). Una EPROM programada retiene sus datos durante diez o veinte aos, y se puede leer un nmero 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 contena el nombre del productor del BIOS, su revisin y una advertencia de copyright. La memoria FLASH, se borra y graba elctricamente por bloque. Esta memoria es una forma desarrollada de la memoria EEPROM. La memoria flash permite que mltiples posiciones de memoria sean escritas o borradas en una misma operacin de programacin. Ofrecen, adems, caractersticas como gran resistencia a los golpes, bajo consumo y es muy silencioso, ya que no contiene ni actuadores mecnicos ni partes mviles. Su pequeo tamao

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 46 -

tambin es un factor determinante a la hora de escoger para un dispositivo porttil, as como su ligereza y versatilidad para todos los usos hacia los que est orientado. Sin embargo, todos los tipos de memoria flash slo permiten un nmero limitado de escrituras y borrados, generalmente entre 10.000 y un milln, dependiendo de la celda, de la precisin del proceso de fabricacin y del voltaje necesario para su borrado. Este tipo de memoria est fabricado con puertas lgicas NOR y NAND para almacenar los ceros o los unos. En realidad hay una gran divisin 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. Los sistemas de archivos para estas memorias estn en pleno Otra caracterstica importante de estas memorias es, la resistencia trmica de algunos encapsulados de tarjetas de memoria orientadas a las cmaras 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 ms habituales son:
El conocido llavero USB, que adems del almacenamiento, suelen incluir otros servicios como radio FM, grabacin de voz y, sobre todo como reproductor porttil de MP3 y otros formatos de audio.

Las PC Card.

Las tarjetas de memoria flash que son el sustituto del carrete en la fotografa digital, ya que en las mismas se almacenan las fotos. Existen varios estndares de encapsulados promocionados y fabricados por la mayora de las multinacionales dedicadas a la produccin de hardware. Flash, como tipo de EEPROM, contiene un arreglo de celdas con un transistor evolucionado con dos puertas en cada interseccin. Tradicionalmente slo almacenan un bit de informacin. Las nuevas memorias flash, llamadas tambin dispositivos de celdas multi-nivel, pueden almacenar ms de un bit por celda variando el nmero de electrones que almacenan. Estas memorias estn 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 metlico) 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 informacin. El futuro de la memoria flash es bastante alentador, pues la demanda de memorias pequeas, baratas y flexibles seguir en alza hasta que aparezcan nuevos sistemas que lo superen tanto en caractersticas como en costo. En apariencia, esto no pareca muy factible ni siquiera a medio plazo ya que la miniaturizacin y densidad de las memorias flash estaba todava lejos de alcanzar niveles preocupantes desde el punto de vista fsico. Pero con la aparicin del MEMRISTOR, el futuro de las memorias flash comienza a opacarse. El desarrollo de las memorias flash es, en comparacin con otros tipos de memoria sorprendentemente rpido 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 tamao similar al de un disco duro de 2.5 pulgadas, similares a los discos duros de los porttiles con una velocidad de 33.3 Mbps. El problema de este disco duro es que, al contrario de los discos duros convencionales, tiene un nmero limitado de accesos. CLASIFICACION DE LAS MEMORIAS RAM: Las memorias RAM, memorias de acceso aleatorio, son memorias voltiles, se clasifican en ESTTCAS Y DINMICAS. Las memorias ram estticas, se construyen con circuitos secuenciales. La celda de memoria es un flip-flop, o biestable. Esto las hace muy veloces.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 47 -

Las memorias ram dinmicas, constituyen la celda de almacenamiento con un capacitor. Un capacitor es un elemento pasivo que puede almacenar energa en su campo elctrico (lo cual representa un uno lgico). Pero esta carga se degrada naturalmente, es decir va perdiendo su energa con el simple contacto del aire. Es por ello que las memorias ram dinmicas 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 informacin almacenada. La presencia de este mecanismo de auto refresco, las hace mucho ms lentas comparativamente que las memorias ram estticas. Adems, a igualdad de superficie de sustrato de la memoria, las ram estticas tienen un menor nmero de celdas por unidad de superficie que las ram dinmicas, por ello stas ltimas son de mayor capacidad que las ram estticas. Con ram esttica se implementan las memorias cach y los registros internos del microprocesador. Con la memoria ram dinmica 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 ms adelante, pero slo contiene una copia de acceso rpido de la MP almacenada en los mdulos de RAM. Los mdulos de RAM son la presentacin comercial de este tipo de memoria, se compone de integrados soldados sobre un nico circuito impreso. La MP es una memoria de estado slido tipo DRAM en la que se puede tanto leer como escribir informacin. Se utiliza como memoria de trabajo para el sistema operativo, los programas y la mayora del software. Es all donde se cargan todas las instrucciones que ejecutan el procesador y otras unidades de cmputo. Se dicen "de acceso aleatorio" o "de acceso directo" porque se puede leer o escribir en una posicin de memoria con un tiempo de espera igual para cualquier posicin, no siendo necesario seguir un orden para acceder a la informacin de la manera ms rpida posible. Cuando hacemos referencia a la frase memoria RAM, sta se refiere a los mdulos 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 tambin poseen la cualidad de presentar retardos de acceso iguales para cualquier posicin. 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 informtico. La denominacin de Acceso aleatorio surgi para diferenciarlas de las memorias de acceso secuencial, debido a que en los comienzos de la computacin, 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 denominacin no es precisa. Uno de los primeros tipos de memoria RAM fue la memoria de ncleo magntico, desarrollada entre 1949 y 1952 y usada en muchos computadores hasta el desarrollo de circuitos integrados a finales de los aos 60 y principios de los 70. Antes que eso, las computadoras usaban rels y lneas de retardo de varios tipos construidas con tubos de vaco (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 ao 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 ncleo magntico. En comparacin con los integrados de memoria DRAM actuales, la 1103 es primitiva en varios aspectos, pero tena un desempeo mayor que la memoria de ncleos. En 1973 se present una innovacin que permiti otra miniaturizacin y se convirti en estndar para las memorias DRAM: la multiplexacin en tiempo de la direcciones de memoria (compartir lneas con distintas funciones).

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 48 -

Para finales de los 70 los integrados eran usados en la mayora de computadores nuevos, se soldaban directamente a las placas base o se instalaban en zcalos, de manera que ocupaban un rea extensa de circuito impreso. Con el tiempo se hizo obvio que la instalacin de RAM sobre el impreso principal, impeda la disminucin de tamao fsico, entonces se idearon los primeros mdulos de memoria como el SIPP, aprovechando las ventajas de la construccin modular. El formato SIMM fue una mejora al anterior, eliminando los pines metlicos y dejando unas reas de cobre en uno de los bordes del impreso, muy similares a los de las tarjetas de expansin, de hecho los mdulos SIPP y los primeros SIMM tienen la misma distribucin 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 mdulos de memoria RAM son tarjetas de circuito impreso que tienen soldados integrados de memoria DRAM por una o ambas caras. La implementacin DRAM se basa en una topologa de circuito elctrico que permite alcanzar densidades altas de memoria por cantidad de transistores, logrando integrados de cientos o miles de Kbits. Adems de DRAM, los mdulos poseen un integrado que permiten la identificacin del mismo ante el computador por medio del protocolo de comunicacin SDP. La conexin con los dems componentes se realiza por medio de un rea de pines en uno de los filos del circuito impreso, que le permiten al modulo cuando se instala en un zcalo apropiado de la placa base, tenga buena conexin elctrica con los controladores de memoria y las fuentes de alimentacin. Los primeros mdulos comerciales de memoria eran SIPP, como ya se mencion antes, de formato propietario, es decir no haba un estndar entre distintas marcas Existen dos clases de errores en los sistemas de memoria, las fallas (Hard fails) que son daos en el hardware y los errores (soft errors) provocados por causas fortuitas. Los primeros son relativamente fciles de detectar (en algunas condiciones el diagnstico es equivocado), los segundos al ser resultado de eventos aleatorios, son ms difciles de hallar. En la actualidad la confiabilidad de las memorias RAM frente a los errores, es suficientemente alta como para no realizar verificacin sobre los datos almacenados, por lo menos para aplicaciones de oficina y caseras. En los usos ms crticos, se aplican tcnicas de correccin y deteccin de errores basadas en diferentes estrategias: La tcnica del bit de paridad consiste en guardar un bit adicional por cada byte de datos, y en la lectura se comprueba si el nmero de unos es par (paridad par) o impar (paridad impar), detectndose as el error. Una tcnica mejor es la que usa ECC, que permite detectar errores de 1 a 4 bits y corregir errores que afecten a un slo bit esta tcnica se usa slo en sistemas que requieren alta fiabilidad. Por lo general los sistemas con cualquier tipo de proteccin contra errores tienen un costo ms alto, y sufren de pequeas penalizaciones en desempeo, con respecto a los sistemas sin proteccin. Para tener un sistema con ECC o paridad, el chipset (mdulo 2 del SAM) y las memorias deben tener que soportar esas tecnologas. La mayora de placas base no poseen soporte. Para los fallos de memoria se pueden utilizar herramientas de software especializadas que realizan pruebas integrales sobre los mdulos de memoria RAM. MODULOS DE MEMORIA RAM Los mdulos son los soportes fsicos donde se hallan alojados los integrados de memoria RAM. Estos mdulos son tarjetas de circuito impreso que tienen soldado los integrados por uno o ambos lados. Estas placas se introducen en un zcalo de la placa base o madre. Tipos de mdulos:

Mdulo SIMM. Obsoleto, tena un bus de datos de 16 o 32 bits. Mdulo DIMM, se usa en ordenadores de escritorio. Tienen un bus de datos de 64 bits.

Mdulo SO-DIMM. Se usa en ordenadores porttiles. Consiste en un formato miniaturizado de DIMM.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 49 -

ORGANIZACIONES AVANZADAS DE MEMORIAS DRAM En un comienzo, las DRAM, eras memorias asncronas. Esto significaba que, el procesador presentaba las direcciones y lneas de control a la memoria, indicando que los datos de una determinada posicin seran ledos, o bien escritos de memoria.. Despus del tiempo de de acceso, los datos se escriban o lean en la DRAM. Durante ese tiempo, la DRAM realizaba operaciones internas, mientras el procesador deba esperar, haciendo que el sistema baje en prestaciones. Con el advenimiento del acceso sncrono, aparecen las SDRAM (RAM sncronas), 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 peticin. 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 clculo, o multimedia. Hoy en la actualidad todas las memorias de tipo DRAM estn sincronizadas con una seal 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 sncrona son:

SDR SDRAM (Single Data Rate Synchronous Dynamic RAM)

SDR SDRAM (del ingls, Single Data Rate Synchronous Dynamic Random Access Memory, es decir, memoria RAM dinmica de acceso sncrono de tasa de datos simple). Se comercializ en mdulos 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 saba entonces que lo 'correcto' era decir SDR), de modo que cuando aparecieron las DDR SDRAM, los nombres 'populares' de los dos tipos de tecnologas fueron SDRAM y DDR, aunque las memorias DDR tambin son SDRAM. 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 mdulos DIMM de 168 contactos. Fue utilizada en los Pentium II y III, tambin en AMD, en los productos K6, Athlon K7 y Duron.

DDR SDRAM (Double Data Rate SDRAM)

Esta memoria enva 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 mdulos DDIM de 184 contactos. DDR (Double Data Rate) En espaol significa doble tasa de transferencia de datos. Son mdulos de memoria Ram, compuestos por memorias sncronas, disponibles en encapsulado DIMM, que permite la transferencia de datos por dos canales distintos simultneamente en un mismo ciclo de reloj. Los mdulos DDR soportan una capacidad mxima 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, ms 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. Tambin se utiliza la nomenclatura PC1600 a PC4800, ya que pueden transferir un volumen de informacin 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 mdulos de memoria intercambian informacin con el bus a travs de un slo canal, para ello slo es necesario introducir todos los mdulos DIMM en el mismo banco de slots.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 50 -

Dual Memory Channel: Se reparten los mdulos de memoria entre los dos bancos de slots diferenciados en la placa base, as pueden intercambiar datos con el bus a travs de dos canales simultneos, 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 mdulos DIMM de 240 contactos

DDR 2 es otro tipo de memoria Ram. Tambin forma parte de la familia SDRAM de tecnologas de memoria de acceso aleatorio, que es una de las muchas implementaciones de la Ram dinmicas. Los mdulos 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 pequeo buffer (almacenamiento temporal) que es el que guarda la informacin 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 slo 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 mdulos 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 fcil. 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 mdulos de memoria, para recopilar esos 4 bits antes de poder enviar la informacin. CARACTERISTICAS Las memorias DDR2 son una mejora de las memorias DDR (Doble lado de contactos), que permiten que los bferes de entrada/salida trabajen al doble de la frecuencia del ncleo, 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 tensin y 1.8 voltios, lo que reduce el consumo de energa 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 localizacin con una sola ranura. Las tarjetas DIMM son identificadas por su mxima 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 terico (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 ms rpidas en sus ciclos de reloj operacin, 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 mdulos son, principalmente, optimizaciones de los fabricantes, que utilizan mucha ms energa que los mdulos con un reloj ms 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.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 51 -

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 traera aparejado una importante disminucin del gasto global de consumo. Los mdulos DIMM DDR 3 tienen 240 pines, pero estos mdulos son distintos fsicamente que los DIMM del DDR2, ya que la mueca del sustrato de la plaqueta no coincide fsicamente en su posicin. DDR3 es tambin un tipo de memoria Ram. Forma parte de la familia de ram dinmicas sncronas, de tecnologas 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 ms rpido, esto nos permite obtener velocidades pico de transferencia y velocidades de bus ms altas que las versiones DDR anteriores. Sin embargo, no hay una reduccin en la latencia, la cual es proporcionalmente ms alta. Adems la DDR3 permite usar integrados de 512 megabits a 8 GByte, siendo posible fabricar mdulos de hasta 16 GByte. En el diseo del DDR3 utiliza bajas corrientes de operacin 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 porttiles. Tericamente, estos mdulos 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 mdulos de memoria DDR y DDR2 de mayor frecuencia pero no estandarizados. Si bien las latencias tpicas DDR2 fueron 5-5-5-15 para el estndar normalizado, para dispositivos DDR3 son 7-7-7-20 para DDR3-1066 y 7-7-7-24 para DDR3-1333. Los mdulos DIMMs DDR3 tienen 240 pines, el mismo nmero que DDR2; sin embargo, los DIMMs son fsicamente incompatibles, debido a una ubicacin diferente de la mueca. Los mdulos ms rpidos de tecnologa DDR3 ya estn listos al mismo tiempo que la industria se preparara para adoptar la nueva plataforma de tecnologa. Considerado el sucesor de la actual memoria estndar DDR2, DDR3 promete proporcionar significativas mejoras en el rendimiento en niveles de bajo voltaje, lo que lleva consigo una disminucin del gasto global de consumo. Se prev que la tecnologa DDR3 sea dos veces ms rpida que la DDR2 y el alto ancho de banda que promete ofrecer DDR3 es la mejor opcin para la combinacin de un sistema con procesadores dual y quad core (2 y 4 ncleos por microprocesador). El voltaje ms bajo del DDR3 ofrece una solucin trmica ms eficaz para los ordenadores actuales y para las futuras plataformas mviles y de servidor.

RDRAM (Rambus DRAM) Esta memoria fue desarrollada por Rambus, por lo tanto utiliza un protocolo propietario, lo cual obliga a sus compradores a pagar regalas 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 caracterstica ms 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 ms altas de funcionamiento del reloj, han producido una brecha entre el rendimiento del microprocesador y el ancho de banda de las memorias. Segn la ley de Moore, el rendimiento y la densidad del procesador, y la densidad de la memoria, aumentan exponencialmente, segn lo predice esta ley, como se muestra en el grfico de la figura 10.

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 52 -

Si se observa el grfico con atencin, 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 vera reflejado en un mejor rendimiento al nivel aplicacin, porque el rendimiento que percibe el usuario estar limitado al tiempo de acceso de la memoria. Esta situacin es la que se conoce como la pared de memoria. (Grfico 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 nmero de transistores en un circuito integrado. Se trata de una ley emprica, formulada por el co-fundador de Intel, Gordon E. Moore en el ao 1965, cuyo cumplimiento se ha podido constatar hasta hoy. En 1965 Gordon Moore afirm que la tecnologa tena futuro, que el nmero de transistores por pulgada en circuitos integrados se duplicaba cada ao y que la tendencia continuara durante las siguientes dos dcadas. Ms tarde, en 1975, modific su propia ley al afirmar que el ritmo bajara, y que la capacidad de integracin se duplicara aproximadamente cada 24 meses. Esta progresin de crecimiento exponencial, duplicar la capacidad de los circuitos integrados cada dos aos, 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 aos, 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 aos el nmero 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 existan los procesadores, inventados en 1971, ni los ordenadores personales, popularizados a partir aproximadamente de 1980. En el momento de escribir el artculo que origin su ley, Moore era Director de los laboratorios de Fairchild Semiconductor. Ms tarde, 1968, cre Intel junto con Robert Noyce, uno de sus compaeros en ambas empresas.
Rendimiento relativo

106

Procesador

103

Memoria

1 1980 1990 2000 2010


Ao calendario

Figura 10

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 53 -

QUE 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 duplicara cada ao con una reduccin de costo conmensurable. Conocida como la Ley de Moore, su prediccin ha hecho posible la proliferacin de la tecnologa en todo el mundo, y hoy se ha convertido en el motor del rpido cambio tecnolgico. Moore actualiz su prediccin en 1975 para sealar que el nmero de transistores en un chip se duplica cada dos aos y esto se sigue cumpliendo hoy. Adems de proyectar cmo aumenta la complejidad de los chips (medida por transistores contenidos en un chip de computador), la Ley de Moore sugiere tambin una disminucin de los costos. A medida que los componentes y los ingredientes de las plataformas con base de silicio crecen en desempeo se vuelven exponencialmente ms econmicos de producir, y por lo tanto ms abundantes, poderosos y transparentemente integrados en nuestras vidas diarias. Los microprocesadores de hoy se encuentran en todas partes, desde juguetes hasta semforos para el trnsito. Una tarjeta de felicitacin musical que hoy se puede adquirir por muy bajo precio tiene ms poder de cmputo que las computadoras centrales ms rpidas de hace unas dcadas.

PREGUNTAS PARA REFLEXIONAR 1) Qu factores podran 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 propsito?

3) Cul es el aspecto tecnolgico que explotan las memorias RAM dinmicas sncronas para producir productos ms rpidos? 4) 5) 6) 7) 8) 9) 10) Qu es el BIOS?, es software o hardware? Fsicamente donde se encuentra el BIOS? El BIOS, puede actualizarse? Puede describir el funcionamiento de las memorias DDR2? Puede describir el funcionamiento de las memorias DDR3? Puede puntualizar la mejora de las memorias DDR3 respecto de la memoria DDR2? Puede en resumidas palabras expresar lo que dice la ley de Moore?

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 54 -

Bibliografa Lectura 1
OBLIGATORIA: Hillar, Gastn (2007): Estructura Interna de la PC (5 ed.). Buenos Aires: Hasa Mueller, Scott (2001): Manual de Actualizacin y Reparacin de PCs. S/D: Pearson Educacin / Prentice Hall. Stalling, W. (1997): Organizacin y Arquitectura de Computadores. 5 edicin. Madrid: Prentice Hall. Captulo 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

Materia: Arquitectura del Computador Profesora: Ing. Silvia Carrera

- 55 -