Você está na página 1de 30

COMO TRABAJA LA CPU

Aunque cada microprocesador tiene su propio diseo interno, microprocesadores todos comparten un mismo
concepto bsico que vamos a explicar en este tutorial. Tomamos un vistazo dentro de una arquitectura
genrica de la CPU, as que usted ser capaz de entender ms acerca de los productos Intel y AMD y las
diferencias entre ellos.
La CPU (Unidad Central de procesamiento) que tambin se llama microprocesador o procesador est a
cargo de procesamiento de datos. Cmo procesar datos depender del programa. El programa puede ser
una hoja de clculo, un procesador de texto o un juego: para el CPU no hace ninguna diferencia, ya que no
entiende lo que est haciendo el programa. Solo sigue las rdenes (llamados comandos o instrucciones)
contenidas dentro del programa. Estas rdenes pueden ser para sumar dos nmeros o para enviar un dato a
la tarjeta de video, por ejemplo.
Cuando usted haga doble clic en un icono para ejecutar un programa, esto es lo que ocurre:
1. el programa, que se almacena dentro de la unidad de disco duro, se transfiere a la memoria RAM. Un
programa es una serie de instrucciones a la CPU.
2. la CPU, usando un circuito llamado controlador de memoria, carga los datos del programa de la memoria
RAM.
3. los datos, ahora dentro de la CPU, es procesados.
4. Lo que ocurre a continuacin depender del programa. La CPU poda continuar para cargar y ejecutar el
programa o podra hacer algo con los datos procesados, como algo que se muestra en la pantalla.

click to enlarge
Figure 1: How stored data is transferred to the CPU.
En el pasado, la CPU controlaba la transferencia de datos entre la unidad de disco duro y la memoria RAM.
Desde el disco duro es ms lento que la memoria RAM, esto hace lento el sistema, ya que la CPU sera
ocupada hasta que todos los datos fueran trasladados desde la unidad de disco duro a la memoria RAM. Este
mtodo se llama PIO, procesador de entrada-salida (o entrada-salida programado). Hoy en da la
transferencia de datos entre la unidad de disco duro y la memoria RAM se han hecho sin utilizar la CPU, as
que el sistema es ms rpido. Este mtodo se llama autobs dominar o DMA (acceso directo de memoria).
Para simplificar nuestro dibujo no ponemos el chip puente norte entre la unidad de disco duro y la memoria
RAM en la figura 1, pero est ah. Los procesadores de AMD basados en zcalos 754, 939 y 940 (Athlon 64,
Athlon 64 X 2, Athlon 64 FX, Opteron y algunos modelos Sempron) tienen un controlador de memoria
integrado. Esto significa que para estos procesadores CPU acceda a la memoria RAM directamente, sin
utilizar el chip del puente norte que se muestra en la figura 1.
Reloj
Qu es reloj? Reloj es una seal que se utiliza para sincronizar las cosas dentro de la computadora. Echa un
vistazo en la figura 2, donde se nos muestran una seal de reloj tpicas: es una onda cuadrada cambia de "0"
a "1" a una tasa fija. En esta figura vemos tres ciclos de reloj completo ("TICs"). El comienzo de cada ciclo es
cuando la seal de reloj va de "0" a "1"; esto hemos marcado con una flecha. La seal del reloj se mide en

hercios (Hz), una unidad que es el nmero del reloj ciclos por segundo. Un reloj de 100 MHz significa que hay
100 millones de ciclos de reloj en un segundo.

Figura 2: Seal de reloj.


En la computadora, los tiempos se miden en trminos de ciclos de reloj. Por ejemplo, una memoria RAM con
una latencia "5" los medios que retrasar reloj completo cinco ciclos para iniciar la entrega de datos. Dentro de
la CPU, todas las instrucciones de retrasan un cierto nmero de ciclos de reloj para llevar a cabo. Por ejemplo,
una instruccin dada puede retrasar siete ciclos de reloj para ser ejecutado completamente.
Con respecto a la CPU, lo interesante es que la CPU sabe cuantos ciclos de reloj se llevar cada instruccin,
porque tiene una tabla que muestra esta informacin. As que si tiene dos instrucciones a ejecutarse y sabe
que el primero va a demorar siete ciclos de reloj para ser ejecutado, automticamente comenzar la ejecucin
de la siguiente instruccin en el 8 pulso de reloj. Por supuesto esto es una explicacin genrica para una
CPU con unidad de una sola ejecucin procesadores modernos tienen varias unidades de ejecucin
trabajando en paralelo y puede ejecutar la instruccin al mismo tiempo como el primer, segunda en paralelo.
Esto se llama Arquitectura superescalar y hablaremos ms sobre esto ms adelante.
Cmo el reloj tiene que ver con el rendimiento? Pensar que el reloj y el rendimiento es la misma cosa es el
error ms comn acerca de los procesadores.
Si comparas dos CPUs completamente idnticas, el correr a una velocidad de reloj superior ser ms rpido.
En este caso, con una mayor tasa de reloj, el tiempo entre cada ciclo de reloj ser ms corto, as que las
cosas van a realizarse en menos tiempo y el rendimiento ser mayor. Pero cuando se comparan dos
procesadores diferentes, esto no es necesariamente cierto.
Si usted consigue dos procesadores con arquitecturas diferentes por ejemplo, dos diferentes fabricantes,
como Intel y AMD cosas dentro de la CPU son completamente diferentes.
Como hemos mencionado, cada instruccin toma un cierto nmero de ciclos de reloj para ser ejecutado.
Digamos que procesador "A" lleva siete ciclos de reloj para llevar a cabo una instruccin dada, y ese
procesador "B" lleva cinco ciclos de reloj para llevar a cabo esta misma instruccin. Si se estn ejecutando en
la misma velocidad de reloj, procesador "B" ser ms rpido, porque puede procesar esta instruccin es
menos tiempo.
Para CPUs modernas all es mucho ms en el juego de rendimiento, como CPUs tienen diferente nmero de
unidades de ejecucin, cach diferentes tamaos, diferentes formas de transferencia de datos dentro de la
CPU, diferentes formas de procesar las instrucciones dentro de las unidades de ejecucin, distintas del reloj
de tarifas con el mundo exterior, etc.. No se preocupe; cubrimos todo lo que en este tutorial.
Como la seal de reloj del procesador se convirti muy alta, se present un problema. La placa base donde
est instalado el procesador podra no funcionar usando la misma seal de reloj. Si nos fijamos en una
motherboard, ver varias pistas o senderos. Estas pistas son los cables que conectan los distintos circuitos de
la computadora. El problema es que con mayores tasas de reloj, estos cables comenz a trabajar como
antenas, entonces la seal, en vez de llegar en el otro extremo del cable, simplemente desaparecera, se
transmite como ondas de radio.

Figura 3: Los cables de la placa base pueden trabajar como antenas.


Reloj externo
As que los fabricantes de CPU comenzaron a utilizar un nuevo concepto, denominado multiplicacin de reloj,
que se inici con el procesador 486DX2. Bajo este esquema, que se utiliza hoy en da en todas las CPU, la
CPU tiene un reloj externo, que se utiliza para transferir datos desde y hacia la memoria RAM (usando el chip
puente norte) y un reloj interno mayor.
Para dar un ejemplo real, en un 3,4 GHz Pentium 4 esta "3,4 GHz" se refiere al reloj interno de la CPU, que se
obtiene multiplicando por 17 su reloj externo de 200 MHz. Nos ilustra este ejemplo en la figura 4.

Haz clic para agrandar


Figura 4: Relojes internos y externos en un Pentium 4 3,4 GHz.
La gran diferencia entre el reloj interno y el reloj externo en CPUs modernas es una mayor obstculo a
superar para aumentar el rendimiento del equipo. Continuando con el ejemplo de 3,4 GHz Pentium 4, tiene
que reducir su velocidad por x 17 cuando tiene que leer los datos de memoria RAM. Durante este proceso,
funciona como si se tratara de una CPU de 200 MHz.
Se utilizan varias tcnicas para minimizar el impacto de esta diferencia de reloj. Uno de ellos es el uso de una
memoria cach dentro de la CPU. Otro es transferir ms de un pedazo de datos por ciclo de reloj.
Procesadores de AMD y de Intel utilizan esta caracterstica, pero mientras que AMD CPU transferir dos datos
por ciclo de reloj, CPUs de Intel transferir cuatro datos por ciclo de reloj.

Figura 5: Transferencia de datos ms de una por ciclo de reloj.


Debido a ello, CPU de AMD estn diseadas como tener el doble de sus relojes externas reales. Por ejemplo,
una CPU de AMD con un reloj externo 200 MHz est catalogado como de 400 MHz. Lo mismo ocurre con
CPUs de Intel: una CPU Intel con un reloj externo 200 MHz est catalogado como tener un reloj externo de
800 MHz.
La tcnica de transferencia de dos datos por ciclo de reloj se llama DDR (Dual Data Rate), mientras que la
tcnica de transferencia de cuatro datos por ciclo de reloj se llama QDR (Quad Data Rate).
Diagrama de bloques de una CPU
En la figura 6 vemos un diagrama de bloques bsicos para una CPU moderna. Hay muchas diferencias entre
AMD e Intel arquitecturas (leer dentro de Pentium 4 arquitectura para una visin detallada sobre la
arquitectura de Pentium 4). Entender el diagrama bsico de una CPU moderna es el primer paso para
entender cmo funcionan los CPUs de Intel y AMD y las diferencias entre ellos.

Figura 6: Diagrama de bloques bsico de un CPU.


La lnea punteada en la figura 6 representa el cuerpo de la CPU, como la memoria RAM se encuentra fuera de
la CPU. El camino de datos entre la memoria RAM y la CPU es generalmente de 64 bits de ancho (o 128 bits
cuando se utiliza la configuracin de memoria de doble canal), corriendo en el reloj de la memoria o el reloj
externo de CPU, cul es menor. El nmero de bits utilizados y la tarifa de reloj puede combinarse en una
unidad llamada tasa de transferencia, medido en MB/s. La frmula para calcular la tasa de transferencia, es el
nmero de bits x reloj / 8. Para un sistema utilizando memorias DDR400 en configuracin monocanal (64 bits)
la tasa de transferencia de memoria ser 3.200 MB/s, mientras que el mismo sistema utilizando memorias
dual channel (128 bits) tendr un 6.400 MB/s de velocidad de transferencia de memoria.
Todos los circuitos dentro de la caja punteada en el reloj interno de la CPU. Dependiendo de la CPU hasta
algunas de sus partes internas pueden correr a una velocidad de reloj superior. Tambin, el camino de datos
entre las unidades de la CPU puede ser ms amplio, es decir, la transferencia ms bits por ciclo de reloj de 64

o 128. Por ejemplo, el camino de datos entre la memoria cach de L2 y la cach de instrucciones L1 en
procesadores modernos es generalmente de 256 bits. Cuanto mayor sea el nmero los bits transferidos por
ciclo de reloj, el ayuno la transferencia se realizar (en otras palabras, la tasa de transferencia ser ms alta).
En la figura 6 se utiliz una flecha roja entre la memoria RAM y las flechas L2 memoria cach y verde entre
todos los otros bloques para expresar las tarifas de reloj diferentes y datapath ancho utilizado.
Memoria cach
Memoria cach es una clase de alto rendimiento de la memoria, tambin llamada memoria esttica. El tipo de
memoria utilizada en la memoria RAM principal del ordenador se llama memoria dinmica. Memoria esttica
consume ms energa, es ms caro y es fsicamente ms grande que la memoria dinmica, pero es mucho
ms rpido. Puede trabajar en el mismo reloj como la CPU, que memoria dinmica no es capaz de.
Desde que el "mundo exterior" recuperar datos hace la CPU para trabajar a una velocidad de reloj ms baja,
se utiliza la tcnica de memoria cach. Cuando la CPU carga un dato de una determinada posicin de
memoria, un circuito llamado controlador de memoria cach (no dibujado en la figura 6 en nombre de la
simplicidad) carga en la memoria cach un bloque entero de datos debajo de la posicin actual que slo se ha
cargado la CPU. Desde generalmente programas de flujo de forma secuencial, la siguiente posicin de
memoria la CPU solicitar probablemente ser la posicin inmediatamente debajo de la posicin de memoria
que ha cargado. Puesto que el controlador de memoria cach ya cargado un montn de datos debajo de la
primera posicin de memoria leda por la CPU, la siguiente informacin ser dentro de la memoria cach, por
la CPU no necesita salir a buscar los datos: ya est cargada dentro de la memoria cach incrustado en la
CPU, que se puede acceder a su velocidad de reloj interno.
El controlador de cach siempre est observando las posiciones de memoria estn cargados y cargar datos
desde varias posiciones de memoria despus de la posicin de memoria que slo se ha ledo. Para dar un
ejemplo, si la CPU carga los datos almacenados en la direccin de 1.000, el controlador de memoria cach
carga los datos de direcciones de "n" despus de la direccin de 1.000. Este nmero "n" se titula la pgina; Si
un determinado procesador est trabajando con pginas de 4 KB (que es un valor tpico), se cargar datos de
4.096 direcciones debajo de la actual posicin de memoria que carga (Direccin 1.000 en nuestro ejemplo).
Por cierto, 1 KB equivale a 1.024 bytes, por eso es de 4 KB 4.096 no 4.000. En la figura 7 Ilustramos este
ejemplo.

Figura 7: Cmo funciona el controlador de memoria cach.


Cuanto mayor sea la memoria cach, ms las posibilidades de los datos requeridos por la CPU ya estn all,
la CPU va a necesitar acceder directamente a memoria RAM menos a menudo, aumentando as el
rendimiento del sistema (recuerda que cada vez que la CPU necesita acceder directamente a la memoria
RAM es necesario bajar su tasa de reloj para esta operacin).
Lo llamamos un "hit" cuando la CPU carga un datos requeridos de la cach, y llamamos a una "seorita" si los
datos requeridos no est ah y la CPU necesita acceder al sistema de memoria RAM.
L1 y L2 significa "Nivel 1" y "Nivel 2", respectivamente y se refiere a la distancia son el ncleo de la CPU
(unidad de ejecucin). Una duda comn es por tener que tres separadas memorias cache (cach de datos L1,
cach de instrucciones L1 y L2 cache). Preste atencin a la figura 6 y usted ver que cach de instrucciones
L1 funciona como una "cach de entrada", mientras que la memoria cach de datos L1 funciona como una
"cach". Cach de instrucciones L1 que es generalmente ms pequeo que la cach L2 es

particularmente eficaz cuando el programa comienza a repetir una pequea parte de l (lazo), porque las
instrucciones necesarias sern cercanos a la unidad de recuperacin.
En las especificaciones de pgina de una CPU, la memoria cach L1 puede encontrarse con diferentes tipos
de representacin. Algunos fabricantes de lista la cach L1 dos por separado (algunas veces llamada la cach
de instrucciones como "Yo" y la cach de datos como "D"), algunos aaden la cantidad de los dos y escribe
"separado" as una "128 KB, separada" significara 64 KB de cach para instrucciones y 64 KB de cach de
datos y algunos simplemente aaden los dos y tienes que adivinar que la cantidad es total y se debe dividir
por dos para obtener la capacidad de cada cach. La excepcin, sin embargo, va al Pentium 4 y nuevos
Celeron CPU basadas en sockets 478 y 775.
Los procesadores Pentium 4 (y los procesadores Celeron con zcalos 478 y 775) no tienen una cach de
instrucciones L1, en cambio tienen un cach de seguimiento de ejecucin, que es una cach situada entre la
decodificacin y la unidad de ejecucin. As, el cach de instrucciones L1 est all, pero con un nombre
diferente y una ubicacin diferente. Mencionamos esto aqu porque esto es un error muy comn, pensar que
los procesadores Pentium 4 no tienen cach de instrucciones L1. As que cuando Pentium 4 en comparacin
con otras CPUs pensaran que su cach L1 es mucho menor, porque slo cuentan la cach de datos L1 de 8
KB. El cach de seguimiento de ejecucin de Pentium 4 y Celeron CPU es de 150 KB y debe ser tomado en
cuenta, por supuesto.
Ramificacin
Como hemos mencionado varias veces, uno de los principales problemas para el CPU tiene demasiados
cach, porque la unidad de recuperacin debe acceder directamente a la lenta memoria RAM, frenando as el
sistema.
El uso de la memoria cach evita generalmente esto mucho, pero hay una situacin tpica donde se perder el
controlador de memoria cach: ramas. Si en el medio del programa hay una instruccin JMP ("salto" o "ir a")
convoc el programa a una posicin de memoria completamente diferente, esta nueva posicin no deben ser
colocado en la memoria cach de L2, haciendo la unidad trae a buscar esa posicin directamente en la
memoria RAM. Para solucionar este problema, el controlador de memoria cach de CPU modernos analizar el
bloque de memoria cargada y cuando se encuentra una instruccin JMP en all se cargar el bloque de
memoria para esa posicin en la memoria cach de L2 antes de que la CPU alcance esa instruccin JMP.

Figura 8: Situacin de ramificacin incondicional.


Esto es bastante fcil de implementar, el problema es cuando el programa tiene una ramificacin condicional,
es decir, la direccin del programa debera ir a depende de una condicin todava no se sabe. Por ejemplo, si
a = < b ir a direccin 1, o si un > b ir a Direccin 2. Ilustramos este ejemplo en la figura 9. Esto hara un cache
miss, porque los valores de a y b son desconocidos y el controlador de memoria cach estara buscando
solamente instrucciones JMP-como. La solucin: el controlador de memoria cach carga ambas condiciones
en la memoria cach. Ms tarde, cuando la CPU procesa la instruccin de ramificacin, simplemente se
descarta que no ha sido elegido. Es mejor cargar la memoria cach con datos innecesarios que accediendo
directamente a la memoria RAM.

Figura 9: Situacin de ramificacin condicional.

Instrucciones de procesamiento
La unidad fetch est a cargo de cargar las instrucciones de la memoria. En primer lugar, se ver si la
instruccin requerida por la CPU se encuentra en la cach de instrucciones L1. Si no es as, va a la memoria
cach de L2. Si la instruccin tambin no existe, entonces tiene que cargar directamente desde la memoria
RAM de sistema lento.
Cuando enciendes tu PC todas las cachs estn vacas, por supuesto, pero como el sistema empieza a
cargar el sistema operativo, la CPU inicia las primeras instrucciones de procesamiento se carga desde el
disco duro y el controlador de memoria cach inicia cargando las cachs y comienza el show.
Despus de que la unidad trae agarr la instruccin necesaria para ser procesados por la CPU, lo enva a la
unidad de decodificacin.
La unidad de decodificacin entonces se darn cuenta de lo que hace esa instruccin particular. Lo hace
mediante la consulta de una memoria ROM que existe dentro de la CPU, llamada microcdigo. Cada
instruccin que entiende una determinada CPU tiene su propio microcdigo. El microcdigo "ensear" la
CPU qu hacer. Es como una gua paso a paso todas las instrucciones. Si la instruccin cargada es, por
ejemplo, agregar a + b, su microcdigo dir la unidad de decodificacin que necesita dos parmetros, a y b.
La unidad de decodificacin entonces solicitar la unidad trae a tomar los datos presentes en las posiciones
de dos prximas memoria, que ajuste los valores de a y b. Despus de la unidad de decodificacin "tradujo" la
instruccin y tom todos los datos necesarios para ejecutar la instruccin, se le pasar todos los datos y el
"libro de cocina paso a paso" sobre cmo ejecutar la instruccin a la unidad de ejecucin.
La unidad de ejecucin finalmente ejecuta la instruccin. En CPUs modernas encontrar ms de una unidad
de ejecucin trabajando en paralelo. Esto se hace con el fin de aumentar el rendimiento del procesador. Por
ejemplo, una CPU con seis unidades de ejecucin puede ejecutar seis instrucciones en paralelo, as que en
teora podra alcanzar el mismo rendimiento de seis procesadores con unidad de una sola ejecucin. Este tipo
de arquitectura se llama Arquitectura superescalar.
Generalmente CPUs modernas no tienen varias unidades de ejecucin idnticas; tienen unidades
especializadas en un tipo de instrucciones de ejecucin. El mejor ejemplo es el FPU, unidad de punto flotante,
que se encarga de ejecutar instrucciones de clculos complejos. Generalmente entre la unidad de
decodificacin y la ejecucin unidad es una unidad (llamada unidad de expedicin o de horario) a cargo de
envo de la instruccin a la unidad de ejecucin correcta, es decir, si la instruccin es una instruccin de
matemticas lo enviar el FPU y no a la unidad de una ejecucin "genricos". Por cierto, unidades de
ejecucin "genrico" se llaman ALU, unidad lgica y aritmtica.
Finalmente, cuando el proceso haya terminado, el resultado se enva a la cach de datos L1. Continuando
nuestro a + b ejemplo, add el resultado sera enviado a la cach de datos L1. Este resultado se puede
entonces enviar memoria RAM o a otro lugar, como la tarjeta de video, por ejemplo. Pero esto depender de
la siguiente instruccin que va a ser procesada a continuacin (podra ser la siguiente instruccin "imprimir el
resultado en la pantalla").
Otra caracterstica interesante que los microprocesadores tienen durante mucho tiempo se llama "tubera",
que es la capacidad de tener varias instrucciones diferentes en diferentes etapas de la CPU al mismo tiempo.
Despus de que la unidad trae haba enviado la instruccin a la unidad de decodificacin, va a ser inactivo,
verdad? Entonces, por qu en lugar de no hacer nada, ponga la unidad trae para tomar la siguiente

instruccin? Cuando la primera instruccin va a la unidad de ejecucin, la unidad de recuperacin puede


enviar la segunda instruccin a la unidad de decodificacin y agarrar la tercera instruccin y as
sucesivamente.
En una CPU moderna con una tubera de 11 etapas (etapa es otro nombre para cada unidad de la CPU),
probablemente tendr 11 instrucciones en su interior al mismo tiempo casi todo el tiempo. De hecho, puesto
que las CPUs modernas tienen una Arquitectura superescalar, el nmero de instrucciones simultneamente
dentro de la CPU ser an mayor.
Tambin, por un oleoducto de 11 etapas CPU, una instruccin a ejecutarse totalmente tendr que pasar a
travs de 11 unidades. Cuanto mayor sea el nmero de etapas, cuanto mayor sea el tiempo una instruccin
va a demorar para realizarse plenamente. Por otro lado, tenga en cuenta que debido a este concepto varias
instrucciones pueden ejecutarse dentro de la CPU al mismo tiempo. La primera instruccin cargada por la
CPU puede demorar 11 pasos para salir de ella, pero una vez que sale, va a salir la segunda instruccin
despus de l (y no otro 11 pasos ms adelante).
Hay varios otros trucos utilizados por CPUs modernas para aumentar el rendimiento. Vamos a explicar dos de
ellos, fuera de la orden de ejecucin (OOO) y ejecucin especulativa.
Ejecucin fuera de orden (OOO) [Out-Of-Order Execution (OOO)]
Recuerdas que dijimos que CPUs modernos tienen varias unidades de ejecucin trabajando en paralelo?
Tambin dijimos que existen diferentes tipos de unidades de ejecucin como ALU, que es una unidad de
ejecucin genrica, y FPU, que es una unidad de ejecucin de las matemticas. Como un ejemplo genrico
para entender el problema, digamos que una determinada CPU tiene seis motores de ejecucin, cuatro
"genricos" y dos FPU. Supongamos tambin que el programa tiene el siguiente flujo de instrucciones en un
momento dado:
1. generic instruction
2. generic instruction
3. generic instruction
4. generic instruction
5. generic instruction
6. generic instruction
7. math instruction
8. generic instruction
9. generic instruction
10. math instruction
Qu pasar? La unidad de programacin/despacho enviar las cuatro primeras instrucciones a los cuatro
ALUs pero luego, en la Quinta instruccin, la CPU tendr que esperar para uno de sus ALUs estar libre para
continuar el procesamiento, ya que todas sus unidades de ejecucin genrica cuatro estn ocupadas. Eso no
es bueno, porque todava tenemos dos unidades de matemticas (FPU) disponibles, y estn ociosas.
Entonces, una CPU con ejecucin fuera de orden (todas las CPU modernas tienen esta caracterstica)
analizar la siguiente instruccin para ver si se puede enviar a una de las unidades de ralent. En nuestro
ejemplo, no puede, porque la sexta instruccin tambin necesita una ALU para ser procesados. El motor fuera
de orden contina su bsqueda y descubre que la instruccin sptima es una instruccin de matemticas que
se puede ejecutar en una de las FPU disponibles. Desde el otro FPU todava estar disponible, va a bajar el
programa buscando otra instruccin de matemticas. En nuestro ejemplo, se pasarn a las ocho y el nueve
instrucciones y cargar la instruccin dcima.
As, en nuestro ejemplo, las unidades de ejecucin se se procesa, en al mismo tiempo, el primer, el segundo,
el tercero, el cuarto, el sptimo y las dcima instrucciones.
Fuera de servicio (out-of-order) el nombre viene del hecho de que la CPU no necesita esperar; puede tirar
una instruccin desde el fondo del programa y procesarla antes de que se procesan las instrucciones de
arriba. Por supuesto el motor fuera de orden no puede ir siempre buscando una instruccin si no puede
encontrar uno. El motor fuera del orden de todas las CPU tiene un lmite de profundidad en la cual pueden
arrastrarse buscando instrucciones (valor tpico sera 512).
Ejecucin especulativa
Supongamos que una de estas instrucciones genricas es una ramificacin condicional. Qu har el motor
fuera de orden? Si la CPU implementa una caracterstica denominada ejecucin especulativa (todas las CPUs
do), ejecutar ambas ramas. Considere el siguiente ejemplo:
1. instruccin genrica
2. genrica instruccin
3. si a = < b ir a la instruccin 15

4. genrica instruccin
5. genrica instruccin
6. instruccin genrica
7. instruccin de matemticas
8. instruccin genrica
9. instruccin genrica
10. instruccin de matemticas

15. instruccin de matemticas


16. genrica instruccin

Cuando el motor fuera de orden analiza este programa, tirar instruccin 15 en uno de la FPU, puesto que
necesitar una matemtica para llenar uno de la FPU que de lo contrario sera ocioso. As que en un momento
dado podramos tener ambas ramas est procesadas al mismo tiempo. Si cuando la CPU termina de procesar
la tercera instruccin una es mayor que b, el descarte simple voluntad de CPU el procesamiento de
instrucciones 15. Pensars que esto es una prdida de tiempo, pero en realidad no es. No cuesta nada a la
CPU para ejecutar la instruccin particular, porque el FPU sera de otra manera ocioso de todos modos. Por
otra parte, si a = < b la CPU tendr una mejora en el rendimiento, desde cuando la instruccin 3 pida
instrucciones 15 ser ya procesada, va directamente a la instruccin 16 o incluso ms, si la instruccin 16
tambin ya ha sido procesada por el motor fuera de orden.
Por supuesto todo lo explicado en este tutorial es una simplificacin con el fin de hacer ms fcil de entender
este tema muy tcnico. (Leer de la Pentium 4 arquitectura para estudiar la arquitectura de un procesador
especfico).
Arquitectura interior Pentium 4
Introduccin
En este tutorial le explicaremos cmo Pentium 4 funciona de una forma fcil seguir la lengua. Usted aprender
cmo su arquitectura funciona as que usted ser capaz de comparar ms precisamente a los procesadores
anteriores de Intel y los competidores de AMD.
Nuevos procesadores Celeron y Pentium 4 utilizan sptima generacin la arquitectura de Intel, tambin
llamada Netburst. Su aspecto general que se puede ver en la figura 1. No te asustes. Vamos a explicar
profundamente lo que trata este diagrama.
Para continuar, sin embargo, tienes que haber ledo "Cmo un CPU funciona".All explicamos los conceptos
bsicos acerca de cmo funciona un CPU. En el presente tutorial que suponemos que ya lo ha ledo, as que
si no, por favor tome un momento para leerlo antes de continuar, de lo contrario encontrar usted mismo un
poco perdido.

Figura 1: Pentium 4 diagrama de bloques.

Aqu estn las diferencias bsicas entre la arquitectura de Pentium 4 y la arquitectura de otras CPUs:
Externamente, la Pentium 4 transfiere cuatro datos por ciclo de reloj. Esta tcnica se llama QDR (Quad Data
Rate) y hace el autobs local que tienen un rendimiento cuatro veces su actual tarifa de reloj, consulte la
siguiente tabla. En la figura 1, esto se muestra en "3,2 GB/s sistema interfaz"; desde esta diapositiva se
produjo cuando fue lanzado el primer Pentium 4, se menciona el bus del sistema "400 MHz".

Real Clock
100 MHz
133 MHz
200 MHz
266 MHz

Performance
400 MHz
533 MHz
800 MHz
1,066 MHz

Transfer Rate
3.2 GB/s
4.2 GB/s
6.4 GB/s
8.5 GB/s

El camino de datos entre la memoria cach de L2 ("L2 cache y control" en la figura 1) y cach de datos L1
("Memoria cach L1 D y D-TLB" en la figura 1) es de 256-bit ancho. En los procesadores anteriores de Intel
este datapath era de slo 64 bits. As que esta comunicacin puede ser cuatro veces ms rpida que los
procesadores de generaciones anteriores cuando se ejecuta en el mismo reloj. El camino de datos entre la
memoria cach L2 ("L2 cache y control" en la figura 1) y la unidad de pre-fetch ("BTB & -TLB" en la figura 1),
sin embargo, sigue siendo todo el 64-bit.
La L1 cach de instrucciones fue reubicado. En lugar de ser antes de la unidad de recuperacin, la cach de
instrucciones L1 es ahora despus de la unidad de decodificacin, con un nuevo nombre, "Cach de
seguimiento". Cach de seguimiento de esta puede contener hasta 12 K microinstrucciones. Puesto que cada
microinstruction es 100 bits de ancho, el cach de seguimiento es de 150 KB (12 K x 100 / 8). En los errores
ms comunes la gente hace cuando comentando la arquitectura Pentium 4 est diciendo que Pentium 4 no
tiene en absoluto ninguna cach de instrucciones. Eso no es verdad. Es all, pero con otro nombre y una
ubicacin diferente.
Pentium 4 hay 128 registros internos, el de 6 generacin procesadores (como Pentium II y Pentium III) slo
haba 40 registros internos. Estos registros estn en el registro retitulacin unidad (tambin conocido como
rata, registrar Alias mesa, se muestra como "Rename/Alloc" en la figura 1).
Pentium 4 tiene cinco unidades de ejecucin trabajando en paralelo y dos unidades de carga y
almacenamiento de datos en memoria RAM.
Por supuesto esto es slo un resumen para los que ya tiene algunos conocimientos sobre la arquitectura de
otros procesadores. Si todo esto te parece a griego para ti, no te preocupes. Vamos a explicar todo lo que
necesitas saber sobre la arquitectura de Pentium 4 en lenguaje sencillo en las pginas siguientes.
Tubera del Pentium 4
La tubera es una lista de todas las etapas de que una instruccin dada debe ir thru para realizarse
plenamente. En la sexta generacin de procesadores Intel, como Pentium III, su tubera tena 11 etapas.
Pentium 4 tiene 20 etapas. As, en un procesador Pentium 4 lleva mucho ms tiempo para ser ejecutado luego
en un Pentium III, por ejemplo una instruccin dada! Si usted toma los nuevo 90 nm Pentium 4 procesadores
de la generacin, codenamed "Prescott", el caso es an peor porque usan un oleoducto 31 etapas! Vaca
sagrada!
Esto se hizo con el fin de aumentar la velocidad de reloj del procesador. Por tener ms etapas que cada etapa
individual puede ser construido usando menos transistores. Con menos Transistores son ms fciles lograr
mayores tasas de reloj. De hecho, Pentium 4 solo es ms rpido que el Pentium III porque funciona a una
velocidad de reloj superior. Bajo la misma frecuencia de reloj, un Pentium III CPU sera ms rpido que un
Pentium 4 debido al tamao de la tubera.
Debido a ello, Intel ya ha anunciado que su octava generacin de procesadores usar la arquitectura Pentium
M, que se basa en la arquitectura de Intel 6 generacin (arquitectura de Pentium III) y no en la arquitectura
Netburst (Pentium 4).
En la figura 2 puedes ver Pentium 4 tubera de 20 etapas. Hasta ahora Intel no tubera 31-etapa de
divulgacin Prescott, entonces no podemos hablar de ello.

Figura 2: Pentium 4 tubera.


Aqu est una explicacin bsica de cada etapa, que explica cmo se procesa una instruccin dada por los
procesadores Pentium 4. Si crees que es demasiado complejo para ti, no te preocupes. Esto es slo un
Resumen de lo que nos va explicando en las pginas siguientes.
TC Nxt IP: puntero de instruccin siguiente rastro cach. Esta etapa busca el microinstruction prximo a ser
ejecutado en el bfer de destino rama (BTB). Este paso tiene dos etapas.
TC Fetch: Trace fetch cach. Carga, desde el cach de seguimiento, este microinstruction. Este paso tiene
dos etapas.
Transmisin: enva el microinstruction para ser procesados del asignador de recursos y cambiar el nombre
de circuito.
Alloc: asignar. Verifica que los recursos de CPU sern necesario en el microinstruction por ejemplo, la
carga de memoria y almacenan los bferes.
Cambiar nombre: Si el programa utiliza uno de los ocho estndar x 86 registros se renombrarn en uno de
los 128 registros internos presentan en Pentium 4. Este paso tiene dos etapas.
Que: cola. Las microinstrucciones son puestos en las colas por consiguiente a sus tipos (por ejemplo, entero
o punto flotante). Se celebran en la cola hasta que haya una ranura abierta del mismo tipo en el programador.
Sch: horario. Microinstrucciones estn programados para ser ejecutado por consiguiente a su tipo (entero,
flotante, punto, etc). Antes de llegar a esta etapa, todas las instrucciones estn en orden, es decir, en el
mismo orden que aparecen en el programa. En esta etapa, el planificador Reordena las instrucciones para
mantener todas las unidades de ejecucin completa. Por ejemplo, si hay flotando un punto unidad va a estar
disponible, el programador buscar una flotacin punto instruccin para enviarlo a esta unidad, incluso si la
siguiente instruccin en el programa es un entero uno. El programador es el corazn del motor fuera de
servicio de Intel procesadores de sptima generacin. Este paso tiene tres etapas.
Disp: Dispatch. Enva los microinstrucciones a sus motores de ejecucin correspondientes. Este paso tiene
dos etapas.
RF: archivo de registro. Los registros internos, almacenados en la piscina de las instrucciones, se pueden
leer. Este paso tiene dos etapas.
Ex: ejecutar. Microinstrucciones se ejecutan.
Flgs: banderas. Se actualizan las banderas del microprocesador.
Br Ck: verificacin del rama. Comprueba si la rama tomada por el programa es la misma predicha por el
ramal de prediccin.
Transmisin: enva el resultado de esta comprobacin en el bfer de destino de rama (BTB) presente en la
entrada del procesador.
Unidad de Fetch y memoria cach
Puede ser L2 memoria cach de Pentium 4 de 256 KB, 512 KB, 1 MB o 2 MB, dependiendo del modelo.
Memoria cach de datos L1 es de 8 KB o 16 KB (en modelos de 90 nm).
Como hemos explicado antes, el cach de instrucciones L1 fue trasladada desde antes de la unidad de
recuperacin despus de la unidad de decodificacin utilizando un nuevo nombre, "trazar cach". As, en lugar
de almacenar instrucciones de programa para ser cargado en la unidad de recuperacin, el cach de
seguimiento de tiendas microinstrucciones ya decodificados por la unidad de decodificacin. El cach de
seguimiento puede almacenar hasta 12 K microinstrucciones y Pentium 4 microinstrucciones son 100 bits de
ancho, el cach de seguimiento es de 150 KB (12.288 x 100 / 8).
La idea detrs de esta arquitectura es muy interesante. En el caso de un bucle en el programa (un bucle es
una parte de un programa que debe repetirse varias veces), las instrucciones para ser ejecutado a ser
decodificadas ya, porque estn almacenados ya descifrado en el cach de seguimiento. En otros
procesadores, las instrucciones necesitan ser cargada de cach de instrucciones L1 y decodificada una vez
ms, incluso si ellos fueron descifrados unos momentos antes.
El cach de seguimiento tiene tambin su propio BTB (Branch Target Buffer) de 512 entradas. BTB es un
pequeo recuerdo que enumera todas las ramas identificadas en el programa.
Puede ser L2 memoria cach de Pentium 4 de 256 KB, 512 KB, 1 MB o 2 MB, dependiendo del modelo.
Memoria cach de datos L1 es de 8 KB o 16 KB (en modelos de 90 nm).
Como hemos explicado antes, el cach de instrucciones L1 fue trasladada desde antes de la unidad de
recuperacin despus de la unidad de decodificacin utilizando un nuevo nombre, "trazar cach". As, en lugar
de almacenar instrucciones de programa para ser cargado en la unidad de recuperacin, el cach de
seguimiento de tiendas microinstrucciones ya decodificados por la unidad de decodificacin. El cach de
seguimiento puede almacenar hasta 12 K microinstrucciones y Pentium 4 microinstrucciones son 100 bits de
ancho, el cach de seguimiento es de 150 KB (12.288 x 100 / 8).

La idea detrs de esta arquitectura es muy interesante. En el caso de un bucle en el programa (un bucle es
una parte de un programa que debe repetirse varias veces), las instrucciones para ser ejecutado a ser
decodificadas ya, porque estn almacenados ya descifrado en el cach de seguimiento. En otros
procesadores, las instrucciones necesitan ser cargada de cach de instrucciones L1 y decodificada una vez
ms, incluso si ellos fueron descifrados unos momentos antes.
El cach de seguimiento tiene tambin su propio BTB (Branch Target Buffer) de 512 entradas. BTB es un
pequeo recuerdo que enumera todas las ramas identificadas en el programa.
En cuanto a la unidad de recuperacin, su TbB fue aumentado a 4.096 entradas. En Intel sexta generacin de
procesadores, como Pentium III, fue este buffer de 512 entradas y en Intel 5 generacin de procesadores,
como el primer procesador Pentium, este buffer fue de 256 entradas solamente.
En la figura 3 ves el diagrama de bloques para lo que estbamos discutiendo. TLB significa Translation
Lookaside Buffer.

Figura 3: Buscar y decodificar unidades y cach de seguimiento.


Decodificador
Desde la generacin anterior (6. generacin), procesadores Intel utilizan un hbrido arquitectura CISC/RISC.
El procesador debe aceptar instrucciones CISC, tambin conocido como x 86 instrucciones, desde todo el
software disponible hoy en da est escrito usando este tipo de instrucciones. Una CPU RISC-slo no pudo
ser crear para PC porque no ejecutar software que tenemos disponible hoy en da, como Windows y Office.
As, la solucin utilizada por todos los procesadores disponibles en el mercado hoy en da de Intel y AMD es
utilizar un decodificador CISC/RISC. Internamente los procesos de la CPU RISC-como instrucciones, pero
acepta su front-end slo CISC x 86 manual de instrucciones.
CISC x 86 instrucciones se refieren como "instrucciones" como las instrucciones internas de RISC se
denominan "microinstrucciones" o "ops".
Estas microinstrucciones RISC, sin embargo, no se puede acceder directamente, as que no podamos crear
software basado en estas instrucciones para evitar el decodificador. Adems, cada utiliza CPU sus propias
instrucciones RISC, que no son pblicas documentan y son incompatibles con microinstrucciones de otras
CPUs. Es decir, son diferentes de microinstrucciones Pentium 4, que son diferentes de Athlon 64
microinstrucciones microinstrucciones Pentium III.
Dependiendo de la complejidad de la instruccin de x 86, tiene que ser convertida en varias
microinstrucciones RISC.
Pentium 4 decodificador puede decodificar un x 86 instrucciones por ciclo de reloj, mientras la instruccin
decodifica en hasta cuatro microinstrucciones. Si la instruccin de x 86 para ser decodificados es complejo y
se traducir en ms de cuatro microinstrucciones, se enruta a una memoria ROM ("microcdigo ROM" en la
figura 3) que tiene una lista de instrucciones muy complejas y cmo debe traducirse. Esta memoria ROM
tambin se llama MIS (microcdigo instruccin secuenciador).
Como dijimos anteriormente, despus de ser descodificadas microinstrucciones son enviados a la cach de
seguimiento, y desde all van a una cola de microinstrucciones. El cach de seguimiento pueden poner hasta
tres microinstrucciones en la cola por ciclo de reloj, sin embargo Intel no dice la profundidad (tamao) de esta
cola.
Desde all, las instrucciones de ir al asignador y registrar Renamer. La cola tambin puede entregar hasta tres
microinstrucciones por ciclo de reloj para el asignador.

Asignador y registro Renamer


Qu significa el asignador:
Se reserva uno de los bferes de reorden 126 (ROB) a la micro instruccin actual, con el fin de hacer un
seguimiento de la condicin de terminacin micro instruccin. Esto permite que los microinstrucciones puedan
ser ejecutados fuera de orden, ya que la CPU ser capaz de ponerlos en orden otra vez mediante el uso de
esta tabla.
Reservas del registro 128 archivos (RF) para ah almacenar los datos como resultados del procesamiento
microinstruction.
Si el microinstruction es una carga o una tienda, es decir, ser ledo (carga) o escribir (tienda) datos
desde/hacia memoria RAM, uno de los bferes de 48 carga reservar o uno de la tienda 24 amortiguadoras
en consecuencia.
Se reserva una entrada en la memoria o la cola general, dependiendo del tipo de microinstruction es.
Despus de eso el microinstruction va al registro de retitulacin etapa. CISC x 86 arquitectura tiene slo ocho
registros de 32 bits (EAX, EBX, ECX, EDX, EBP, ESI, EDI y ESP). Este nmero es simplemente demasiado
bajo, sobre todo porque CPUs modernas pueden ejecutar cdigo fuera de orden, lo que "matara" el contenido
de un registro determinado, chocando el programa.
As, en esta etapa, el procesador cambia el nombre y el contenido de los registros utilizados por el programa
en uno de los 128 interno registrar registros disponibles, permitiendo que la instruccin ejecutar al mismo
tiempo de otra instruccin que utiliza la misma norma exacta, o incluso fuera de orden, es decir, esto permite
que la segunda instruccin a correr antes de la primera instruccin incluso si se meten con el mismo registro.
Es interesante notar que el Pentium 4 tiene realmente 256 registros internos, 128 registros para obtener
instrucciones de enteros y 128 registros de punto flotante y las instrucciones SSE.
Pentium 4 renamer es capaz de procesar tres microinstrucciones por ciclo de reloj.
Desde el renamer los microinstrucciones ir a una cola, por consiguiente a su tipo: cola de memoria, para
microinstrucciones relacionadas con la memoria, o una cola de punto entero/flotante, para todos los otros tipos
de instruccin.

Figura 4: Asignador y registro Renamer

Envo y unidades de ejecucin


Como hemos visto, Pentium 4 cuenta con cuatro puertos de envo numerados de 0 a 3. Cada puerto est
conectado a uno, dos o tres ejecucin unidades, como se puede ver en la figura 6.

Figura 6: Unidades de despacho y ejecucin.


Las unidades marcaron como "reloj x 2" puede ejecutar dos microinstrucciones por ciclo de reloj. Puertos 0 y 1
pueden enviar dos microinstrucciones por el reloj del ciclo a estas unidades. As que seis es el nmero
mximo de microinstrucciones que pueden ser despachados por ciclo de reloj:

Dos microinstrucciones en el puerto 0;


Dos microinstrucciones en el puerto 1;
Una microinstruction en el puerto 2;
Una microinstruction en Puerto 3.
Tenga en cuenta que las instrucciones complejas pueden llevar varios ciclos de reloj para ser procesados.
Tomemos un ejemplo del puerto 1, donde se encuentra la completa unidad de punto flotante. Mientras que
esta unidad est procesando una instruccin muy compleja que lleva varios reloj de garrapatas a ser
ejecutado, unidad de despacho 1 puerto no demorar: se siguen enviando instrucciones sencillas a la ALU
(unidad lgica y aritmtica) mientras el FPU est ocupado.
As, incluso pens que la tasa mxima de envo es seis microinstrucciones, en realidad la CPU puede tener
hasta siete microinstrucciones procesados al mismo tiempo.
En realidad es por puertos de 0 y 1 tienen unidad una ejecucin ms unida. Si pones atencin, Intel puso en el
mismo puerto una rpida unidad junto con al menos una unidad compleja (y lenta). As que, mientras la unidad
compleja est ocupada procesando datos, la otra unidad puede seguir recibiendo microinstrucciones desde su
puerto de envo correspondientes. Como hemos mencionado antes, la idea es mantener todas las unidades
de ejecucin ocupado todo el tiempo.
Los dos ALUs doble velocidad pueden procesar dos microinstrucciones por ciclo de reloj. Las otras unidades
necesitan ciclo de por lo menos un reloj para procesar las microinstrucciones que reciben. As, la arquitectura
Pentium 4 est optimizada para instrucciones sencillas.
Como puede ver en la figura 6, puertos de envo 2 y 3 estn dedicados a operaciones de memoria: carga (leer
datos de la memoria) y tienda (escribir datos en la memoria), respectivamente. En cuanto a la operacin de
memoria, es interesante notar que puerto 0 es tambin usada durante las operaciones de almacn (ver figura
5 y la lista de las operaciones en la figura 6). En este tipo de operaciones, Puerto 3 se utiliza para enviar la
direccin de memoria, mientras que puerto 0 se utiliza para enviar los datos a ser almacenados en esta
direccin. Esta informacin puede ser generada por el aluminio o el FPU, dependiendo del tipo de datos para
almacenar (entero o punto flotante/SSE).
En la figura 6 tienes una lista completa de los tipos de instrucciones de que cada unidad de ejecucin se
ocupa. FXCH y LEA (direccin efectiva de carga) son dos x 86 manual de instrucciones. Implementacin de
Intel para la instruccin FXCH en Pentium 4 causaba una gran sorpresa para todos los expertos, porque en
los procesadores de la generacin anterior (Pentium III) y procesadores de AMD esta instruccin puede ser
ejecutada en cero ciclo de reloj, mientras que el Pentium 4 tarda algunos ciclos de reloj para ser ejecutado.
Chipsets
Introduccin
Despus de todo, qu es un chipset? Cules son sus funciones? Cul es su importancia? Cul es su
influencia en el rendimiento del equipo? En este tutorial vamos a responder a todas estas preguntas y mucho
ms.
Chipset es el nombre dado al conjunto de chips (de ah su nombre) utilizado en una motherboard.
En la primera PC, la placa base utiliza circuitos integrados discretos. As que un montn de fichas fueron
necesarios para crear todos los circuitos necesarios para que el equipo funcione. En la figura 1 vemos una
placa base de un PC XT.

Figura 1: Placa base de PC XT.

Despus de algn tiempo los fabricantes de chips comenzaron a integrar varias fichas fichas ms grandes.
As, en lugar de requerir decenas de pequeas virutas, una placa podra ahora ser construida utilizando slo
una media docena chips grandes.
La integracin sostenida y alrededor de las motherboards mid-1990 usando solamente dos o incluso una
viruta grande podra ser construido. En la figura 2 puedes ver una placa base 486 circa 1995 utilizando slo
dos chips grandes con todas las funciones necesarias para hacer que funcione la placa base.

Figura 2: Una placa de 486, este modelo utiliza solamente dos chips grandes.
Con el lanzamiento del bus PCI, un nuevo concepto, que todava se utiliza hoy en da, podra ser utilizado por
primera vez: el uso de puentes. Las motherboards tienen generalmente dos chips grandes: el puente del norte
y el puente sur. A veces algunos fabricantes de chips pueden integrar el norte y el sur puentes en un nico
chip; en este caso la placa base tendr un gran circuito integrado!
Con el uso de puentes chipsets podran estandarizarse mejor y vamos a explicar el papel de estos chips en
las pginas siguientes.
Chipsets pueden ser fabricados por varias compaas, como ULi (nuevo nombre de ALi), Intel, VIA, SiS, ATI y
nVidia. En el pasado otros jugadores estaban en el mercado, como UMC y OPTi.
Una confusin comn es mezclar el fabricante del chipset con el fabricante de la motherboard. Por ejemplo,
slo porque una placa base utiliza un chipset fabricado por Intel, esto no significa que Intel fabrica este
tablero. ASUS, ECS, Gigabyte, MSI, DFI, Chaintech, PCChips, lanzadera y tambin Intel son slo algunos de
los muchos fabricantes de placas madre presentes en el mercado. As, el fabricante de la motherboard
compra los chipsets de los fabricantes de chipsets y les construye. En realidad hay un aspecto muy
interesante de esta relacin. Para construir una placa, el fabricante puede seguir el proyecto estndar chipset
fabricante, tambin conocido como "diseo de referencia", o puede crear su propio proyecto, modificando
algunas cosas aqu y all con el fin de proporcionar un mejor rendimiento o ms caractersticas.
Puente del norte
El chip del puente norte, tambin llamado MCH (concentrador controlador de memoria) es conectar
directamente a la CPU y tiene bsicamente las siguientes funciones:
Controlador de memoria (*)
AGP bus controlador (si est disponible)
PCI Express x 16 controlador (si est disponible)
Interfaz para transferencia de datos con el puente sur
(*) Excepcin de socket 754, zcalo 939 y zcalo 940 CPU (CPU de AMD como Athlon 64), porque en estos
CPUs el controlador de memoria se encuentra en la misma CPU, no en el puente del norte.
North bridge fichas tambin controles de PCI Express x 1 carriles. En otros chipsets PCI Express es el puente
sur que controla el PCI Express x 1 carriles. En nuestras explicaciones asumimos que el puente del sur es el

componente encargado de controlar el PCI Express x 1 carriles, pero tenga en cuenta que esto puede variar
de acuerdo al modelo de chipset.
En la figura 3 vemos un diagrama explicando el papel del puente del norte en la computadora.

Figura 3: El puente del norte.


Como puede ver, la CPU directamente no tiene accesos la memoria RAM o la tarjeta de video, es el puente
norte que tiene acceso a estos dispositivos. Por eso, el chip puente norte tiene un papel definitivo en el
rendimiento del equipo. Si un chip puente norte tiene un controlador de memoria mejor que otro puente del
norte, el rendimiento del ordenador todo ser mejor. Es una explicacin de por qu puedes tener dos placas
base dirigidas a la misma clase de procesadores logrando diferentes actuaciones.
Como hemos mencionado, en Athlon 64 CPUs est integrado el controlador de memoria en la CPU y por eso
casi no hay rendimiento diferencia entre placas base para esta plataforma.
Puesto que el controlador de memoria est en el puente del norte, es este chip que limita los tipos y la
cantidad mxima de memoria que usted puede tener en nuestro sistema (en Athlon 64 es la CPU que
establece estos lmites).
La conexin entre el puente del norte y el puente sur se realiza a travs de un bus. En un principio se utiliz el
bus PCI, pero ms tarde fue sustituido por un bus dedicado. Vamos a explicar ms sobre esto ms adelante,
ya que el tipo de autobs usado en esta conexin puede afectar el rendimiento del equipo.
Puente del sur
El chip puente del sur, tambin llamado ICH (I/O Controller Hub) est conectado al puente del norte y est a
cargo fundamentalmente de control de dispositivos de E/S y dispositivos integrados, como:
Puertos de unidad de disco duro (puertos paralelo y Serial ATA)
Los puertos USB
Audio a bordo (*)
LAN a bordo (*)
PCI bus
Los carriles PCI Express (si est disponible)
Reloj en tiempo Real (RTC)
Memoria del CMOS
Dispositivos de legado como controlador de interrupcin y controlador DMA
(*) Si el puente del sur tiene un controlador de audio incorporado, necesitar un chip externo llamado cdec
(diminutivo de codificador/decodificador) para funcionar.
(**) Si el puente del sur tiene un controlador de red incorporada, necesitar un chip externo llamado phy
(diminutivo de fsico) para funcionar.
El puente del sur tambin est conectado a dos otros chips disponibles en la placa base: el chip ROM, ms
conocido como BIOS y el chip Super I/O, que se encarga de controlar dispositivos heredados como puertos
serie, paralelo puerto y disco floppy drive.
En la figura 4 puedes ver un diagrama explicando el papel del puente del sur en la computadora.

Figura 4: Puente del sur.


Como puede ver, mientras que el puente sur puede tener cierta influencia en el rendimiento de la unidad de
disco duro, este componente no es tan crtico para rendimiento como el puente del norte. En realidad, puente
del sur tiene ms que ver con las caractersticas que tendr su placa madre que con el funcionamiento. Es el
puente del sur que establece el nmero y velocidad de puertos USB y el nmero y tipo (ATA o ATA serie
regular) de puertos de unidad de disco duro que la motherboard tiene, por ejemplo.
Puente entre arquitectura
Cuando el concepto de puente comenz a ser utilizado, la comunicacin entre el puente del norte y el puente
del sur fue hecha a travs de este autobs, como se muestra en la figura 5. El problema de este enfoque es
que el ancho de banda disponible para el bus PCI 132 MB/s ser compartido entre todos los dispositivos
PCI en el sistema y los dispositivos enganchada en el puente del sur especialmente las unidades de disco
duro. En ese momento, esto no fue un problema, desde discos duros fueron las tasas de transferencia
mxima de 8 MB/s y 16 MB/s.

Figura 5: Comunicacin entre el norte y sur puentes usando el bus PCI.


Pero cuando las tarjetas de video High-End (en aquel momento, las tarjetas de vdeo eran PCI) y unidades de
disco duro de alto rendimiento se lanzaron, despertar una situacin de cuello de botella. Piensa en modernos
ATA/133 unidades de disco duro, que tienen la misma tasa de transferencia mxima terica que el bus PCI.
As que, en teora, un disco duro ATA/133 "matara" y el ancho de banda completo, ralentizando la velocidad
de la comunicacin de todos los dispositivos conectados al bus PCI.

Para las tarjetas de video High-End, la solucin fue la creacin de un nuevo autobs conectado directamente
al puente del norte, llamado AGP (puerto de grficos acelerado).
La solucin final se produjo cuando los fabricantes de chipset comenzaron a utilizar un nuevo enfoque:
utilizando un autobs dedicado de alta velocidad entre norte y sur puentes y conectando el PCI bus
dispositivos hasta el puente del sur.

Figura 6: Comunicacin entre el norte y sur puentes utilizando un bus dedicado.


Cuando Intel comenz a utilizar esta arquitectura que comenz a llamar a los puentes como "hubs", el puente
del norte se convirti en MCH (concentrador controlador de memoria) y el puente del sur se convirti en ICH
(I/O Controller Hub). Es slo una cuestin de nomenclatura para clarificar la arquitectura que est siendo
utilizada.
Mediante esta nueva arquitectura, que es la arquitectura que las motherboards usan hoy en da, cuando la
CPU lee datos de un disco duro, los datos se transfieren desde el disco duro para el puente del sur, luego al
puente del Norte (usando el bus dedicado) y luego a la CPU (o directamente a la memoria, si se utiliza el
mtodo Bus Mastering a.k.a. DMA ). Como puedes ver, el bus PCI no se utiliza en absoluto en este
traslado, lo que no sucedi en la arquitectura anterior, puesto que el bus PCI que estaba en medio del camino.
La velocidad de este bus dedicado depende del modelo del chipset. Por ejemplo, el conjunto de chips Intel
925 X este autobs tiene una velocidad mxima de transferencia de 2 GB/s. Tambin, los fabricantes de
llaman a este autobs con diferentes nombres:
Intel: DMI (interfaz de medios de comunicacin directos) o la arquitectura Intel Hub (*)
ULi/ALi: HyperTransport
VIA: V-Link
SiS: MuTIOL (*)
ATI: A-Link o PCI Express
nVidia: HyperTransport (*)
(*) Interfaz DMI es ms reciente, utilizado en los chipsets i915 y i925 en y utiliza datos separados dos
caminos, uno para transmisin de datos y otro para la recepcin (comunicacin de dplex completo).
Arquitectura Intel Hub, usada por chipsets anteriores, utiliza la misma ruta de datos para transmisin y
recepcin (comunicacin half-dplex).
(**) Algunos chipsets SiS y nVidia usar nico chip, es decir, por ejemplo, las funcionalidades del norte y del sur
puentes estn integradas en un solo chip.
Adems, en Radeon Xpress 200 de ATI, la comunicacin entre el norte y sur puentes utiliza dos carriles PCI
Express. Esto no afecta el rendimiento del sistema, porque contrariamente a PCI, el bus PCI Express no es
compartido entre todos los dispositivos PCI Express.
Un carril se utiliza para la transmisin de datos y otro para recepcin de datos (comunicacin de dplex
completo).
HyperTransport bus tambin utiliza los paths de datos separados, uno para transmisin de datos y otro para la
recepcin (comunicacin de dplex completo)...
Si desea conocer los detalles de un determinado conjunto de chips, ir a la web del fabricante de chipset...
Como un ltimo comentario, usted puede estarse preguntando qu es "dispositivos PCI a bordo" aparece en
las figuras 5 y 6. Dispositivos integrados como LAN y audio pueden controlarse por el chipset (puente sur) o

por un chip controlador adicional. Cuando se utiliza este segundo enfoque, este chip controlador est
conectado al bus PCI.
PLACAS BASE DE PC:
Si alguna vez ha tomado el caso de un ordenador, has visto la una sola pieza del equipo que todo lo une, la
placa base. Una placa base permite que todas las partes de su computadora para recibir energa y comunicar
uno con el otro.
Motherboards han recorrido un largo camino en the ltimos veinte aos. Las primeras placas base llev a
cabo muy pocos componentes reales. La primera placa base IBM PC tena solamente un procesador y
ranuras para tarjetas. Usuarios conectados componentes como controladores de unidad de disco y memoria
en las ranuras. Hoy, las motherboards tpicamente cuentan con una amplia variedad de funciones
incorporadas y que afectan directamente las capacidades y potencial para las actualizaciones de una
computadora.
En este artculo, analizaremos los componentes generales de una placa base. Entonces, estrechamente
analizaremos cinco puntos que afectan dramticamente lo que puede hacer una computadora.
Factor de forma
Una placa de por s misma es intil, pero un equipo tiene que tener uno para operar. Trabajo principal de la
placa base es sostener chip microprocesador de la computadora y todo lo dems permiten conectar a l. Todo
lo que ejecuta la computadora o mejora su funcionamiento es parte de la placa base o se enchufa mediante
una ranura o puerto.

Una placa base moderna...


La forma y el diseo de una placa madre se llama el factor de forma. El factor de forma afecta a dnde van los
componentes individuales y la forma de caja de la computadora. Hay varios factores de forma especfica que
utilizan la mayora de las motherboards PC as todo pueden caber en casos estndar. Para una comparacin
de factores de forma, pasado y presente, visite Motherboards.org.
El factor de forma es una de las muchas normas que se aplican a las placas base. Algunos de los otros
estndares incluyen:
El zcalo para el microprocesador determina qu tipo de unidad de procesamiento Central (CPU) utiliza la
placa base.
El chipset es parte del sistema de la placa base lgica y generalmente est compuesto de dos partes: el
northbridge y el southbridge. Estos dos "puentes" conectan la CPU a otras partes de la computadora.

El chip del sistema bsico de entrada/salida (BIOS) controla las funciones ms bsicas de la computadora y
realiza una prueba automtica cada vez que se enciende. Algunos sistemas cuentan con dual BIOS, que le
proporciona una copia de seguridad en caso de una falla o en caso de error durante la actualizacin.
El chip de reloj de tiempo real es un chip de pilas que mantiene los ajustes bsicos y la hora del sistema.
Las ranuras y puertos encontramos una placa base incluyen:
Interconexin de componentes perifrico (PCI)-conexiones para video, sonido y video tarjetas de captura, as
como las tarjetas de red
Acelerado grfica (AGP) - dedicado puerto para tarjetas de vdeo.
Integrated Drive Electronics (IDE) - interfaces para los discos duros
Universal Serial Bus o FireWire - perifricos externos
Ranuras de memoria
Algunas motherboards tambin incorporan nuevos avances tecnolgicos:
Controladores redundantes de la matriz de independientes de discos (RAID) permiten la computadora
reconocer varias unidades como una unidad.
PCI Express es un nuevo protocolo que acta ms como una red que un autobs. Puede eliminar la
necesidad de otros puertos, incluyendo el puerto AGP.
En lugar de confiar en las tarjetas enchufables, algunas motherboards tienen a bordo sonido, red, video u otro
soporte perifrico.

Una placa base Socket 754


Muchas personas piensan de la CPU como una de las partes ms importantes de una computadora. Veremos
cmo afecta el resto del equipo en la siguiente seccin.
Zcalos y CPUs
La CPU es lo primero que viene a la mente cuando muchas personas piensan en velocidad y el rendimiento
de una computadora. El procesador ms rpido, ms rpido el ordenador puede pensar. En los primeros das
de ordenadores PC, todos los procesadores tenan el mismo conjunto de pernos que conectara la CPU en la
placa base, llamada el Pin Grid Array (PGA). Estos pernos encajan en un esquema de socket llamado Socket
7. Esto significaba que cualquier procesador encajara en cualquier placa base.

Una placa base Socket 939


Hoy, sin embargo, fabricantes de CPU Intel y AMD usan una variedad de PGAs, ninguno de los cuales
encajan en Socket 7. Como avanzan de microprocesadores, necesitan pernos ms y ms, tanto para manejar
nuevas caractersticas y para proporcionar ms y ms energa al chip.
Las disposiciones actuales toma a menudo son nombradas para el nmero de pines en la PGA. Zcalos
comnmente usados son:
Socket 478 - para procesadores Pentium y Celeron antiguos
Zcalo 754 - para algunos procesadores AMD Athlon y AMD Sempron
Socket 939 - para nuevos y ms rpidos procesadores AMD Athlon
Zcalo AM2 - para los nuevos procesadores AMD Athlon
A - socket para procesadores AMD Athlon antiguos

Una placa de Socket LGA755


La nueva CPU de Intel no tiene un PGA. Tiene un LGA, tambin conocido como Socket LGA T. representa
Land Grid Array. Un LGA es diferente de la PGA en que los pines son en realidad parte del enchufe, no el
CPU.
Quien ya tiene una CPU especfica en mente debe seleccionar una motherboard basada en la CPU. Por
ejemplo, si desea utilizar uno de los nuevos chips multi-ncleo de Intel o AMD, usted necesitar seleccionar
una motherboard con el correcto para esos chips. CPU simplemente no encajar en los zcalos que no
coinciden con su PGA.
La CPU se comunica con otros elementos de la placa base a travs de un conjunto de chips. A continuacin
analizaremos el chipset ms detalladamente.
Chipsets
El chipset es el "pegamento" que conecta el microprocesador con el resto de la placa base y por lo tanto al
resto del equipo. En un PC, consta de dos partes bsicas: el northbridge y el southbridge. Todos los diversos
componentes de la computadora se comunican con la CPU a travs del chipset.

El northbridge y southbridge.
El northbridge conecta directamente con el procesador mediante el bus frontal (FSB). Un controlador de
memoria se encuentra en el northbridge, lo que le da el acceso rpido CPU a la memoria. El northbridge
tambin se conecta al bus AGP o PCI bus express y a la memoria de s mismo.
El southbridge es ms lento que el northbridge e informacin de la CPU tiene que pasar por el northbridge
antes de alcanzar el southbridge. Otros autobuses conectan el southbridge el bus PCI, los puertos USB y las
conexiones de disco duro IDE o SATA.
Seleccin de chipset y CPU seleccin ir de la mano, porque fabricantes optimizacin los chipsets para trabajar
con CPUs especficas. El chipset es una parte integrada de la placa base, as que no puede ser eliminado o
actualizado. Esto significa que no slo debe zcalo de la placa base encaja la CPU, chipset de la placa base
debe funcionar ptimamente con la CPU.
A continuacin, analizaremos los autobuses, que, como el chipset, llevan la informacin de un lugar a otro.
Velocidad de bus
Un bus es simplemente un circuito que conecta una parte de la placa base a otra. Los datos ms que un
autobs puede manejar al mismo tiempo, ms rpido permite informacin para viajar. La velocidad del bus,
mide en megahercios (MHz), se refiere a la cantidad de datos puede mover simultneamente a travs del bus.

Buses de conectan diferentes partes de la placa base uno al otro.


Velocidad del bus generalmente se refiere a la velocidad del bus frontal (FSB), que conecta la CPU con el
northbridge. Velocidades de FSB pueden variar desde 66 MHz a ms de 800 MHz. Puesto que la CPU
alcanza el controlador de memoria aunque el northbridge, velocidad FSB puede afectar dramticamente el
rendimiento de un equipo.
stos son algunos de los otros buses encontrados en una placa base:
El parte posterior de autobs conecta la CPU con el nivel 2 (L2) de cach, tambin conocido como cache
secundario o externo. El procesador determina la velocidad del bus parte posterior.
El bus de memoria conecta el northbridge a la memoria.
El bus IDE o ATA conecta el southbridge Amarak unidades.
El bus AGP conecta la tarjeta de video a la memoria y la CPU. La velocidad del bus AGP suele 66 MHz.
El bus PCI que conecta las ranuras PCI con el southbridge. En la mayora de los sistemas, la velocidad del
bus PCI es 33 MHz. Tambin compatible con PCI es PCI Express, que es mucho ms rpido que PCI pero
sigue compatible con sistemas operativos y software actual. PCI Express es probable reemplazar a los buses
PCI y AGP.
Cuanto ms rpido velocidad del bus de una computadora, ms rpido funcionar--a un punto. Una velocidad
de bus rpido no se puede compensar un procesador lento o chipset.
Ahora echemos un vistazo a la memoria y cmo afecta a la velocidad de la placa base.
Memoria y otras funciones
Hemos establecido que la velocidad del procesador controla la rapidez cree que una computadora. La
velocidad del chipset y autobuses controla qu tan rpido puede comunicarse con otras partes de la
computadora. La velocidad de la conexin de RAM directamente controla qu tan rpido el ordenador puede
acceder a las instrucciones y datos y por lo tanto tiene un gran efecto en el rendimiento del sistema. Un
procesador rpido con RAM lento va a ninguna parte.
La cantidad de memoria disponible tambin controla cunto datos la computadora pueden tener fcilmente
disponibles. RAM que conforma la mayor parte de la memoria de una computadora. La regla general es ms
RAM de la computadora tiene, mejor.
Gran parte de la memoria disponible hoy en da es memoria dual rate (DDR). Esto significa que la memoria
puede transmitir datos dos veces por ciclo en lugar de una vez, lo que hace la memoria ms rpida. Adems,

la mayora de las motherboards tienen espacio para mltiples chips de memoria, y en motherboards nuevas,
que se conectan a menudo al northbridge mediante un bus doble en lugar de un solo bus. Esto reduce an
ms la cantidad de tiempo que tarda el procesador obtener informacin de la memoria.

200-pin DDR RAM SODIMM


Ranuras de memoria de una placa base afectan directamente qu tipo y cunta memoria se apoya. Al igual
que otros componentes, la memoria se conecta a la ranura mediante una serie de pines. El mdulo de
memoria debe tener el nmero correcto de pernos para encajar en la ranura de la placa base.

64MB SDRAM SIMM


En los primeros das de las motherboards, prcticamente todo lo que no sea el procesador vino en una tarjeta
que enchufado en la junta. Ahora, caracterstica de las motherboards una variedad de accesorios a bordo
como la compatibilidad con LAN, video, sonido soporte y controladores RAID.
Las motherboards con todas las campanas y silbidos son convenientes y fciles de instalar. Hay placas base
que tienen todo lo que necesitas para crear una computadora completa--todo lo que haces es el palillo de la
placa base en un caso y aadir un disco duro, un controlador de CD y una fuente de alimentacin. Tienes un
ordenador completamente operativo en una sola tarjeta.
Para muchos usuarios promedio, estas caractersticas integradas proporcionan amplio soporte para vdeo y
sonido. Para los jugadores vidos y personas que hacen trabajo de diseo asistido por ordenador (CAD) o
grfico de alta intensidad, sin embargo, las tarjetas de vdeo independientes proporcionan mejor rendimiento.
Introduccin a la nueva arquitectura de microprocesadores INTELSs
Sandy Bridge es que el nombre de la nueva microarquitectura Intel CPU est usando a partir de 2011. Es una
evolucin de la microarquitectura Nehalem que fue introducida por primera vez en el Core i7 y tambin se
utiliza en el Core i3 y procesadores Core i5.
Si no sigue el mercado de CPU que cerca, vamos a hacer un rpido resumen. Despus el Pentium 4, que fue
basado en la microarquitectura de generacin 7 de Intel, llamada Netburst, Intel decidi volver a su sexta
generacin microarquitectura (lo mismo uno utilizado por Pentium Pro, Pentium II y Pentium III, apodado P6),
que ha demostrado para ser ms eficiente. Desde el Pentium M CPU (que es una 6 generacin Intel CPU),
Intel desarroll la arquitectura de ncleo, que fue utilizada en la serie del procesador Core 2 (Core 2 Duo,
Core 2 Quad, etc.). Entonces, Intel tiene esta arquitectura, ajustado un poco ms (la principal innovacin fue la
adicin de un controlador de memoria integrado) y lanz la microarquitectura Nehalem, que fue utilizada en la
serie del procesador Core i7, Core i3 y Core i5. Y, de este microarquitectura, Intel desarroll la
microarquitectura Sandy Bridge, que fue utilizada por la nueva generacin de procesadores Core i7, Core i3 y
Core i5 en 2011 y 2012.
Para comprender mejor el presente tutorial, le recomendamos que lea los siguientes tutoriales, en este orden
en particular:
Interior Pentium M arquitectura
Interior de microarquitectura Intel Core
Interior de microarquitectura Intel Nehalem
A continuacin se resumen las principales caractersticas de la microarquitectura Sandy Bridge. Les
explicaremos con ms detalle en las pginas siguientes.
El puente norte (controlador de memoria, controlador de grficos y controlador PCI Express) est integrado
en el mismo chip como el resto de la CPU. En CPUs basados en Nehalem, el puente del norte se encuentra
en un chip de silicio separadas embalado junto con el chip de silicio de la CPU. De hecho, con procesadores
de 32 nm basados en Nehalem el puente norte es manufacturado bajo proceso de 45 nm.
Primeros modelos utilizan un proceso de fabricacin de 32 nm
Arquitectura de anillo
Nuevo descifrado cach de microinstrucciones (L0 cach, capaz de almacenar 1.536 microinstrucciones, que
se traduce en ms o menos a 6 kB)
datos de L1 de 32 kB instrucciones y 32 kB L1 cache por ncleo de CPU (no se cambia de Nehalem)
Memoria cach L2 fue renombrado a "cach de nivel medio" (MLC) con 256 kB por ncleo de CPU
Memoria cach L3 que ahora se llama LLC (ltimo nivel de cach), que ya no est unificado y es compartida
por los ncleos de CPU y el motor de grficos
Tecnologa Turbo Boost de prxima generacin
Nuevo conjunto de instrucciones AVX (extensiones de Vector avanzadas)
Controlador de grficos mejorados
Rediseado DDR3 de memoria de doble canal regulador apoyando recuerdos hasta DDR3-1333.

Integrado controlador PCI Express apoyando uno x 16 carril o carriles dos x 8 (no se cambia de Nehalem)
Primeros modelos utilizan una nueva toma con pasadores de 1155

Haz clic para agrandar


Figura 1: Microarquitectura Sandy Bridge Resumen
Mejoras a la tubera del CPU
Vamos a empezar nuestro viaje hablando de lo nuevo es la forma de instrucciones son procesadas en la
microarquitectura Sandy Bridge.
Hay cuatro decodificadores de instruccin, lo que significa que la CPU puede decodificar hasta cuatro
instrucciones por ciclo de reloj. Estos decodificadores estn encargadas de descifrar las instrucciones IA32
(a.k.a. x 86) en RISC-como microinstrucciones (ops) que se utilizan internamente por las unidades de
ejecucin de CPU. Al igual que anteriores CPUs de Intel, microarquitectura Sandy Bridge soporta dos macro y micro-fusion. Macro-fusion permite la CPU que unen dos relacionados con x 86 instrucciones en una sola,
mientras que micro-fusin une dos relata microinstrucciones en uno solo. Por supuesto, el objetivo es mejorar
el rendimiento.
Lo nuevo es la adicin de un cach microinstruction descodificada, capaz de almacenar 1.536
microinstrucciones (que traduccin ms o menos a 6 kB). Intel refiere esta memoria cach como una
"memoria cach L0". La idea es obvia. Cuando entra el programa que se ejecuta en un bucle (es decir, tiene
que repetir las mismas instrucciones varias veces), la CPU no necesitar decodificar otra vez las 86
instrucciones x: se pueden descodificar ya en la memoria cach, ahorrando tiempo y as mejorar el
rendimiento. Segn Intel esta memoria cach tiene una tasa de xito de 80%, es decir, es utilizado el 80% del
tiempo.
Ahora se preguntarn si esto no es la misma idea utilizada en la microarquitectura Netburst (es decir, los
procesadores Pentium 4), que tena un cach de seguimiento que tambin almacena microinstrucciones
descodificadas. Cach de seguimiento de un trabaja de forma diferente desde un cach microinstruction:
almacena las instrucciones en el mismo orden que fueron originalmente funcionaron. As, cuando un
programa alcanza un bucle que se corra, digamos, 10 veces, que el cach de seguimiento almacenar las
mismas instrucciones 10 veces. Por lo tanto, hay un montn de instrucciones repetidas en el cach de
seguimiento. Lo mismo no ocurre con el cache microinstruction, que almacena instrucciones descodificadas
slo individuales.
Cuando se utiliza la cach microinstruction, la CPU pone el cach de instrucciones L1 y los decodificadores a
"dormir", haciendo la CPU para ahorrar energa y ejecutar ms fresco.
La unidad de prediccin de rama fue rediseada y el tamao de Branch Target Buffer (BTB) se duplic en
comparacin con Nehalem, adems ahora utiliza una tcnica de compresin para permitir almacenar ms
datos. Prediccin de bifurcaciones es un circuito que intenta adivinar los prximos pasos de un programa por
adelantado, cargando a dentro de la CPU las instrucciones piensa que la CPU intentar cargar siguiente. Si lo
llega a correcto, la CPU no perder tiempo cargando estas instrucciones desde la memoria, como ya estarn
dentro de la CPU. Aumentar el tamao de la TbB permite este circuito cargar an ms las instrucciones por
adelantado, mejorando el rendimiento de la CPU.
El programador en la microarquitectura Sandy Bridge es similar a la que se utiliza en la microarquitectura
Nehalem, con puertos de envo seis, tres puertos utilizados por las unidades de ejecucin y tres puertos
utilizados por operaciones de memoria.

Aunque esta configuracin es la misma, la microarquitectura Sandy Bridge tiene ms unidades de ejecucin:
mientras la microarquitectura Nehalem tiene 12 de ellos, el Sandy Bridge tiene 15, vase la figura 2. Segn
Intel, han sido rediseados para mejorar la coma flotante (es decir, operaciones matemticas) rendimiento.

Haz clic para agrandar


Figura 2: Unidades de ejecucin (configuracin estndar)
Cada unidad de ejecucin est conectado con el planificador de instruccin usando un datapath 128-bit. Para
poder ejecutar las nuevas instrucciones AVX, que llevan datos de 256 bits, en lugar de agregar unidades de
256 bits y 256-bit datapaths a la CPU, dos unidades de ejecucin son "combinadas" (es decir, utiliza al mismo
tiempo), como puedes ver en la figura 3.

Haz clic para agrandar


Figura 3: Unidades de ejecucin (cuando se ejecuta instrucciones AVX)
Despus de ejecuta una instruccin, no es copiado hacia el buffer reordenar como sucedi en anteriores
arquitecturas Intel, sino que ms bien haba indicado en una lista que se haga. De esta manera la CPU guarda
pedacitos y mejora la eficiencia.
Otra diferencia est en los puertos de memoria. La microarquitectura Nehalem tiene una carga, la direccin de
una tienda y un almacn de las unidades de datos, cada uno conectado a un puerto de despacho individual.
Esto significa que los procesadores basados en Nehalem pueden cargar desde la cach de datos L1 128 bits
de datos por ciclo.
En la microarquitectura Sandy Bridge, la carga y las unidades de direccin tienda pueden utilizarse como una
unidad de carga o una unidad de direccin de almacn. Este cambio permite dos veces ms datos que
cargarse desde la cach de datos L1 al mismo tiempo (con dos unidades de 128-bit al mismo tiempo en lugar
de slo uno), por lo tanto mejorar el rendimiento. De esta manera, los procesadores basados en Sandy Bridge
pueden cargar 256 bits de datos de la cach de datos L1 por ciclo.

Haz clic para agrandar


Figura 4: Sandy Bridge microarquitectura.
El conjunto de instrucciones AVX
Hace un tiempo, AMD propuesta un conjunto de instrucciones SSE5. Sin embargo, Intel decidi crear su
propia implementacin de lo que sera las instrucciones SSE5, llamadas AVX (extensiones de Vector
avanzadas).
Estas instrucciones uso el mismo concepto SIMD (Single Instruction, Multiple Data) introducido con la
instruccin MMX establecido y utilizando las instrucciones SSE (Streaming SIMD Extensions). Este concepto
consiste en usar un solo registro grande para almacenar datos varias pequeas y luego procesar todos los
datos con una sola instruccin, acelerando el proceso.
El conjunto de instrucciones AVX agrega 12 nuevas instrucciones y aumenta el tamao del XMM registros de
128 bits a 256 bits.
Toda la informacin sobre el nuevo conjunto de instrucciones AVX puede encontrarse aqu (busque la Intel
Advanced Vector Extensions Programming Reference).
La arquitectura de anillo
Los procesadores basados en Sandy Bridge tendr una arquitectura de anillo para los componentes internos
de la CPU para hablar con los dems. Cuando un componente quiere "hablar" con otro componente, pone la
informacin en el anillo y el anillo mover esta informacin hasta que llegue a su destino. Los componentes no
hablan directamente, tienen que usar el anillo. Los componentes que utilizan el anillo incluyen los ncleos de
CPU, cada L3 memoria cach (que ahora se llama ltimo nivel de cach, o LLC y no est unificado, ver figura
5), el agente del sistema (controlador de memoria integrado, controlador de PCI Express, unidad de control y
pantalla) y el controlador de grficos.
En la figura 5 vemos el anillo (lnea negra) con sus "paradas" (cajas rojas). Es importante entender que el
anillo se encuentra fsicamente en las cachs de memoria (imaginar un telesqu donde cada caja roja es una
parada), puesto que la ilustracin es bidimensional, que tenga la impresin de que los cables del anillo
ejecutan dentro de la memoria cach, que no es el caso.
Adems, cada ltimo cach nivel no est atado a un determinado ncleo de CPU. Cualquier ncleo puede
utilizar cualquiera de las cachs. Por ejemplo, en la figura 5, tenemos un quad core CPU con cuatro cachs de
nivel ltimas. Ncleo 1 no est ligado a la cach 1; puede utilizar cualquiera de las cachs. Esto tambin
significa que ningn ncleo de CPU puede acceder a datos que estn almacenados en cualquiera de las
cachs.

Haz clic para agrandar


Figura 5: La arquitectura del anillo (lnea negra con rojo "paradas")
Hay en realidad cuatro anillos: anillo de datos, solicitud, reconoce anillo y snoop. Corren a la misma velocidad
de reloj como el reloj interno de la CPU. Se basa en el protocolo QPI (QuickPath Interconnect), el mismo que
utilizado por socket 1366 CPU a hablar con el chipset.
Cada componente decide cundo usar el anillo, si est vaco, y el anillo de elegir siempre el camino ms corto
hacia el destino.

La prxima generacin Turbo Boost


Turbo Boost es una tecnologa que automticamente overclockea la CPU cuando la CPU "pide" ms potencia
de procesamiento. En la microarquitectura Sandy Bridge esta tecnologa fue revisada con el fin de permitir que
la CPU superar su TDP (potencia de diseo trmico) por 25 segundos es decir, para disipar el calor ms de
lo permitido oficialmente. Esto es posible porque el disipador de calor y los componentes son todava fros.
Vea la figura 6.

Haz clic para agrandar


Figura 6: Prxima generacin Turbo Boost
Adems, los ncleos de CPU y el controlador de grficos "compartan" TDP entre ellos. Por ejemplo, si el
ncleo de grficos no est disipando mucho calor, esto da TDP extra a los ncleos de CPU a utilizar,
permitindoles funcionar a una velocidad de reloj ms alta y en un TDP superior a la calificacin oficial

(etiquetada como "Ncleo alimentacin especificada" en la figura 7), si las aplicaciones estn exigiendo ms
potencia de procesamiento, por supuesto. Vea la figura 7.

Haz clic para agrandar


Figura 7: TDP puede equilibrarse entre ncleos de CPU y procesador de grficos
El motor de grficos integrados
El procesador de grficos integrado en los procesadores Sandy Bridge base tendr un motor de DirectX 10.1.
Como se explica en la primera pgina de este tutorial, estar disponible en el mismo chip de silicio como el
resto de la CPU, en lugar de estar disponible en un chip separado pero "pegados" junto con la CPU dentro del
mismo paquete.
En la figura 8, tiene una mirada global en el procesador de grficos Sandy Bridge.

Haz clic para agrandar


Figura 8: Procesador de grficos de Sandy Bridge
El nmero de unidades de ejecucin ("procesadores") depender de la CPU (por ejemplo Core i5 CPU tendr
ms unidades de ejecucin que partes Core i3). Procesadores Sandy Bridge pueden tener hasta 12 unidades
de ejecucin de grficos.
Si usted paga mucha atencin en la figura 8, se ver que "Pantalla" y "Grficos" estn en partes separadas de
la CPU. Esto puede leerse como "2D" y "3D" y ayuda a la CPU para ahorrar energa apagando el procesador
grfico cuando no ests jugando juegos.
Otra innovacin importante es que el motor de grficos puede usar el ltimo nivel de cach (LLC,
anteriormente conocido como memoria cach L3) para almacenar datos, especialmente de texturas. Esto
mejora el rendimiento en 3D, como el motor de grficos no necesita acudir a la memoria RAM para datos,
puede cargar datos directamente desde la memoria cach (si ya est ah, por supuesto).

Você também pode gostar