Consiste en enviar los datos 2 veces por cada señal de reloj, una vez en cada extremo de la señal (el ascendente y el descendente), en lugar de enviar datos sólo en la parte ascendente de la señal.
De esta forma, un aparato con tecnología DDR que funcione con una señal de reloj "real", "física", de por ejemplo 100 MHz, enviará tantos datos como otro sin tecnología DDR que funcione a 200 MHz. Por ello, las velocidades de reloj de los aparatos DDR se suelen dar en lo que podríamos llamar "MHz efectivos o equivalentes" (en nuestro ejemplo, 200 MHz, "100 MHz x 2").
Uno de los problemas de la memoria Rambus: funciona a 266 MHz "físicos" o más, y resulta muy difícil (y cara) de fabricar.
La tecnología DDR está de moda últimamente, bajo éste u otro nombre. Además de las numerosísimas tarjetas gráficas con memoria de vídeo DDR-SDRAM, tenemos por ejemplo los microprocesadores AMD Athlon y Duron, cuyo bus de 200 MHz realmente es de "100 x 2", "100 MHz con doble aprovechamiento de señal"; o el AGP 2X ó 4X, con 66 MHz "físicos" aprovechados doble o cuádruplemente, ya que una tarjeta gráfica con un bus de 266 MHz "físicos" sería difícil de fabricar... y extremadamente cara.
(Atención, esto no quiere decir que una tarjeta AGP 4X sea en la realidad el doble de rápida que una 2X, ni mucho menos: a veces se "notan" IGUAL de rápidas, por motivos que no vienen al caso ahora.)
Bien, pues la DDR-SDRAM es el concepto DDR aplicado a la memoria SDRAM. Y la SDRAM no es otra que nuestra conocida PC66, PC100 y PC133, la memoria que se utiliza actualmente en casi la totalidad de los PCs normales; los 133 MHz de la PC133 son ya una cosa difícil de superar sin subir mucho los precios, y por ello la introducción del DDR.
Seguidores
domingo, 15 de abril de 2012
Arquitectura de las memorias
Usada hasta la época del 386, su velocidad típica es de 80 ó 70 nanosegundos (ns), tiempo éste que tarda en vaciarse para poder dar entrada a la siguiente serie de datos. Por ello, es más rápida la de 70 ns que la de 80 ns.
Físicamente, aparece en forma de DIMMs o de SIMMs, siendo estos últimos de 30 contactos.
Memoria Ram
La memoria principal o RAM (Random Access Memory, Memoria de Acceso Aleatorio) es donde el computador guarda los datos que está utilizando en el momento presente. El almacenamiento es considerado temporal por que los datos y programas permanecen en ella mientras que la computadora este encendida o no sea reiniciada.
Se le llama RAM por que es posible acceder a cualquier ubicación de ella aleatoria y rápidamente
Físicamente, están constituidas por un conjunto de chips o módulos de chips normalmente conectados a la tarjeta madre. Los chips de memoria son rectángulos negros que suelen ir soldados en grupos a unas plaquitas con "pines" o contactos:
Se le llama RAM por que es posible acceder a cualquier ubicación de ella aleatoria y rápidamente
Físicamente, están constituidas por un conjunto de chips o módulos de chips normalmente conectados a la tarjeta madre. Los chips de memoria son rectángulos negros que suelen ir soldados en grupos a unas plaquitas con "pines" o contactos:
lunes, 12 de marzo de 2012
Funcionamiento
1.2.2.4 Funcionamiento
los transistores MOSFET con los que esta construida para almacenar un bit. Como solo se requiere de
un transistor por celda de memoria, esta memoria es muy económica, pero debido al tiempo que toma
cargar la gran capacitancia de los transistores con los que esta construida, es muy lenta.
Caracteriticas
1.2.2.3 Características.
En cuanto a las memorias volátiles, la memoria RAM dinámica es muy rápida pero muy cara. En
contraste, la memoria RAM estática es muy barata pero muy lenta.
En general, las memorias no volátiles son baratas y su precio depende sobre todo de su capacidad de
almacenamiento. Algunas de estas tecnologías son consideradas obsoletas y por lo tanto casi no son
utilizadas en actualidad.
Tipos
1.2.2.2 Tipos
Los diversos tipos de memorias se clasifican como memorias volátiles y memorias no volátiles. Las
memorias volátiles pierden la información que almacenan al momento en que se les desconecta la
energía, mientras que las no volátiles conservan su contenido aunque no estén alimentadas.
Las memorias volátiles son conocidas desde las primeras computadoras como memorias de acceso
aleatorio (RAM), ya que en esa época las memorias volátiles eran de acceso secuencial. Dentro de las
memorias volátiles se encuentran las subclases RAM Dinámica y RAM Estática.
Las memorias no volátiles conservan sus datos a pesar de que en este conectadas el voltaje del
alimentación. De hecho pueden conservar sus datos por un periodo de tiempo relativamente largo,
usualmente entre cien y 200 años. Conforme evolucionado la tecnología, se han desarrollado diversas
familias de rumores no volátiles, entre las cuales se encuentran: la memoria de solo lectura (ROM -
Read only Memory), la memoria de solo lectura programable (PROM -Programable Read only
Memory), la memoria de solo lectura programable y borrable (EPROM - Erasable Read only Memory),
la memoria de solo lectura programable y borrable eléctricamente (EEPROM Electricaly Erasable Read
only Memory) y la memoria flash.
Arquitecturas de CPU
1.2.1.1 Arquitecturas.
Ademas de las arquitecturas clásicas mencionadas anteriormente, en la actualidad han aparecido
arquitecturas híbridas entre la Von Newman y la Harvard, buscando conservar la flexibilidad, pero
mejorando el rendimiento.
El cambio más importante de los últimos años en diseño de las computadoras de los últimos años se dio
durante los años 1980, con la aparición de la corriente de diseño conocida como computadoras de
conjunto reducido de instrucciones (RISC, por sus siglas en ingles). Esta escuela pretende aplicar un
enfoque totalmente distinto al tradicional hasta entonces, que paso a conocerse como computadoras de
conjunto complejo de instrucciones (CISC) para diferenciarla de la nueva tendencia.
La tendencia tradional, representada por las arquitecturas CISC (Complex Instruction Set Computers)
se caracterizan por tener un número amplio de instrucciones y modos de direccionamiento. Se
implementan instrucciones especiales que realizan funciones complejas, de manera que un
programador puede encontrar con seguridad, una instrucción especial que realiza en hardware la
función que el necesita. El número de registros del CPU es limitado, ya que las compuertas lógicas del
circuito integrado se emplean para implementar las secuencias de control de estas instrucciones
especiales.
Al investigar las tendencias en la escritura de software científico y comercial al inicio de los 80, ya se
pudo observar que en general ya no se programaba mucho en ensamblador, sino en lenguajes de alto
nivel, tales como C. Los compiladores de lenguajes de alto nivel no hacían uso de las instrucciones
especiales implementadas en los procesadores CISC, por lo que resultaba un desperdicio de recursos
emplear las compuertas del circuito de esta forma. Por lo anterior, se decidió que era mejor emplear
estos recursos en hacer que las pocas instrucciones que realmente empleaban los compiladores se
ejecutaran lo más rápidamente posible. Así surgió la escuela de diseño RISC (Reduced Instruction Set
Computers) donde solo se cuenta con unas pocas instrucciones y modos de direccionamiento, pero se
busca implementarlos de forma muy eficiente y que todas las instrucciones trabajen con todos los
modos de direccionamiento. Ademas, se observo que una de las tareas que tomaban más tiempo en
ejecutarse en lenguajes de alto nivel, era el pasar los parámetros a las subrutinas a través de la pila.
Como la forma más rápida de hacer este paso es por medio de registros del CPU, se busco dotarlo con
un amplio número de registros, a través de los cuales se pueden pasar dichos parámetros.
Arquitecturas de multiprocesamiento.
1.1.3 Arquitecturas de multiprocesamiento.
Arquitecturas de Multiproceso
Cuando se desea incrementar el desempeño más aya de lo que permite la técnica de segmentación del
cauce (limite teórico de una instrucción por ciclo de reloj), se requiere utilizar más de un procesador
para la ejecución del programa de aplicación.
Las CPU de multiprocesamiento se clasifican de la siguiente manera:
● SISO – (Single Instruction, Single Operand ) computadoras independientes
● SIMO – (Single Instruction, Multiple Operand ) procesadores vectoriales
● MISO – (Multiple Instruction, Single Operand ) No implementado
● MIMO – (Multiple Instruction, Multiple Operand ) sistemas SMP, Clusters
Procesadores vectoriales – Son computadoras pensadas para aplicar un mismo algoritmo numérico a
una serie de datos matriciales, en especial en la simulación de sistemas físicos complejos, tales como
simuladores para predecir el clima, explosiones atómicas, reacciones químicas complejas, etc., donde
los datos son representados como grandes números de datos en forma matricial sobr los que se deben se
aplicar el mismo algoritmo numérico.
En los sistemas SMP (Simetric Multiprocesesors), varios procesadores comparten la misma memoria
principal y periféricos de I/O, Normalmente conectados por un bus común. Se conocen como
simétricos, ya que ningún procesador toma el papel de maestro y los demás de esclavos, sino que todos
tienen derechos similares en cuanto al acceso a la memoria y periféricos y ambos son administrados por
el sistema operativo.
Búsqueda Ejecución
Espera Espera
Los Clusters son conjuntos de computadoras independientes conectadas en una red de área local o por
un bis de interconexión y que trabajan cooperativamente para resolver un problema. Es clave en su
funcionamiento contar con un sistema operativo y programas de aplicación capaces de distribuir el
trabajo entre las computadoras de la red.
cauce (limite teórico de una instrucción por ciclo de reloj), se requiere utilizar más de un procesador
para la ejecución del programa de aplicación.
Las CPU de multiprocesamiento se clasifican de la siguiente manera:
● SISO – (Single Instruction, Single Operand ) computadoras independientes
● SIMO – (Single Instruction, Multiple Operand ) procesadores vectoriales
● MISO – (Multiple Instruction, Single Operand ) No implementado
● MIMO – (Multiple Instruction, Multiple Operand ) sistemas SMP, Clusters
Procesadores vectoriales – Son computadoras pensadas para aplicar un mismo algoritmo numérico a
una serie de datos matriciales, en especial en la simulación de sistemas físicos complejos, tales como
simuladores para predecir el clima, explosiones atómicas, reacciones químicas complejas, etc., donde
los datos son representados como grandes números de datos en forma matricial sobr los que se deben se
aplicar el mismo algoritmo numérico.
En los sistemas SMP (Simetric Multiprocesesors), varios procesadores comparten la misma memoria
principal y periféricos de I/O, Normalmente conectados por un bus común. Se conocen como
simétricos, ya que ningún procesador toma el papel de maestro y los demás de esclavos, sino que todos
tienen derechos similares en cuanto al acceso a la memoria y periféricos y ambos son administrados por
el sistema operativo.
Búsqueda Ejecución
Espera Espera
Los Clusters son conjuntos de computadoras independientes conectadas en una red de área local o por
un bis de interconexión y que trabajan cooperativamente para resolver un problema. Es clave en su
funcionamiento contar con un sistema operativo y programas de aplicación capaces de distribuir el
trabajo entre las computadoras de la red.
Arquitectura Harvard
1.1 Modelos de arquitecturas de cómputo.
Arquitectura Harvard
Esta arquitectura surgió en la universidad del mismo nombre, poco después de que la arquitectura Von Newman apareciera en la universidad de Princeton. Al igual que en la arquitectura Von Newman, el programa se almacena como un código numérico en la memoria, pero no en el mismo espacio de memoria ni en el mismo formato que los datos. Por ejemplo, se pueden almacenar las instrucciones en doce bits en la memoria de programa, mientras los datos de almacenan en 8 bits en una memoria aparte.
Completando el ejemplo anterior, en un procesador con segmentación, la unidad de búsqueda
comenzaría buscando el código de la primera instrucción en el primer ciclo de reloj. Durante el
segundo ciclo de reloj, la unidad de búsqueda obtendría el código de la instrucción 2, mientras que la unidad de ejecución ejecuta la instrucción 1 y así sucesivamente.
comenzaría buscando el código de la primera instrucción en el primer ciclo de reloj. Durante el
segundo ciclo de reloj, la unidad de búsqueda obtendría el código de la instrucción 2, mientras que la unidad de ejecución ejecuta la instrucción 1 y así sucesivamente.
Arquitectura Clasica
1.1 Modelos de Arquitecturas de Computo
1.1.1 Arquitecturas Clásicas.
Estas arquitecturas se desarrollaron en las primeras computadoras electromecánicas y de tubos de
vacío. Aun son usadas en procesadores empotrados de gama baja y son la base de la mayoría de las
arquitecturas modernas
Arquitectura Mauchly-Eckert (Von Newman)
Esta arquitectura fue utilizada en la computadora ENIAC. Consiste en una unidad central de proceso
que se comunica a través de un solo bus con un banco de memoria en donde se almacenan tanto los
códigos de instrucción del programa, como los datos que serán procesados por este.
Esta arquitectura es la más empleada en la actualidad ya, que es muy versátil. Ejemplo de esta
versatilidad es el funcionamiento de los compiladores, los cuales son programas que toman como
entrada un archivo de texto conteniendo código fuente y generan como datos de salida, el código
maquina que corresponde a dicho código fuente (Son programas que crean o modifican otros
programas). Estos datos de salida pueden ejecutarse como un programa posteriormente ya que se usa la
misma memoria para datos y para el código del programa.
La principal desventaja de esta arquitectura, es que el bus de datos y direcciones único se convierte en
un cuello de botella por el cual debe pasar toda la información que se lee de o se escribe a la memoria,
obligando a que todos los accesos a esta sean secuenciales. Esto limita el grado de paralelismo
(acciones que se pueden realizar al mismo tiempo) y por lo tanto, el desempeño de la computadora.
Este efecto se conoce como el cuello de botella de Von Newman
un cuello de botella por el cual debe pasar toda la información que se lee de o se escribe a la memoria,
obligando a que todos los accesos a esta sean secuenciales. Esto limita el grado de paralelismo
(acciones que se pueden realizar al mismo tiempo) y por lo tanto, el desempeño de la computadora.
Este efecto se conoce como el cuello de botella de Von Newman
Suscribirse a:
Entradas (Atom)