Vous êtes sur la page 1sur 31

Universidad Nacional de San Agustn

Facultad de Ingeniera de
Produccin y Servicios Escuela
Profesional de Ingeniera Electrnica

Arquitectura De Computadoras

LABORATORIO N 7
Hardware PC AT Pentium
IV
Integrantes:

Champi Gutirrez Luis Miguel


Mendoza Lima Juan Carlos
Salinas Castillo Howard

GRUPO : 4

20101147
20100686
20102181

Fecha de Entrega: 16 de
Noviembre del 2015 AREQUIPA PERU

2015

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

Contenido:
1 Sistemas que componen la computadora AT
...................................................................................................
3
2 Caractersticas del procesador Pentium IV Intel MultiCore
...................................................................................................
5
3 Funcionamiento en general
...................................................................................................
6
4 Sistema descrito por bloques y por circuitos
...................................................................................................
9
5 Esquemtico del sistema completo Sistema de
Aplicacin
...................................................................................................
10
6 Muestra de una Mainboard AT con identificacin de
dispositivos
...................................................................................................
10
7 Registros
...................................................................................................
10
8 Modos de direccionamiento
...................................................................................................
12

9 Set de instrucciones
...................................................................................................
12
10

Lenguaje mquina, macroensamblador


14

11

Conclusiones
15

12

BIBLIOGRAFIA
15

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

1
AT

Sistemas que componen la computadora

Uno
o
varios
conectores
de
alimentacin: por estos conectores, una
alimentacin elctrica proporciona a la
placa base los diferentes voltajes e
intensidades
necesarios
para
su
funcionamiento.

El zcalo de CPU es un receptculo que


recibe el microprocesador y lo conecta con el
resto de componentes a travs de la placa
base. Las ranuras de memoria RAM, en
nmero de 2 a 6 en las placas base
comunes.

El chipset: una serie de circuitos


electrnicos,
que
gestionan
las
transferencias de datos entre los diferentes
componentes
de
la
computadora
(procesador, memoria, tarjeta grfica, unidad
de almacenamiento secundario, etc.).

Se divide en dos secciones, el puente


norte (northbridge) y el puente sur
(southbridge).
El
primero
gestiona
la
interconexin entre el microprocesador, la
memoria RAM y la unidad de procesamiento
grfico; y el segundo entre los perifricos y
los dispositivos de almacenamiento, como
los discos duros o las unidades de disco
ptico. Las nuevas lneas de procesadores
de escritorio tienden a integrar el propio
controlador de memoria en el interior del
procesador adems de que estas tardan en
degradarse aproximadamente de 100 a 200
aos.

El reloj: regula la velocidad de


ejecucin
de
las
instrucciones
del
microprocesador y de los perifricos internos.

La CMOS: una pequea memoria que


preserva
cierta
informacin importante
(como la configuracin del equipo, fecha y
hora),
mientras
el
equipo
no
est
alimentado por electricidad.

La pila de la CMOS: proporciona la


electricidad necesaria para operar el circuito
constantemente y que ste ltimo no se
apague perdiendo la serie de configuraciones
guardadas.

La BIOS: un programa registrado


en
una
memoria
no
voltil
(antiguamente en memorias ROM, pero
desde hace tiempo se emplean memorias
flash). Este programa es especfico de la
placa base y se encarga de la interfaz de
bajo nivel entre el microprocesador y
algunos
perifricos. Recupera, y despus
ejecuta, las instrucciones del MBR (Master
Boot Record), o registradas en un disco duro
o
SSD,
cuando
arranca
el
sistema
operativo.
Actualmente
los
ordenadores
modernos sustituyen el MBR por el GPT y la
BIOS por Extensible Firmware Interface.

El bus (tambin llamado bus interno o


en ingls front-side bus'): conecta el
microprocesador al chipset, est cayendo en
desuso frente a HyperTransport y Quickpath.

El bus de memoria conecta el chipset a la memoria


temporal.

El bus de expansin (tambin llamado bus I/O): une


el microprocesador
a los conectores entrada/salida y a las ranuras de
expansin.

Los conectores de entrada/salida que


cumplen normalmente con la norma PC 99:
estos conectores incluyen:

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


Los puertos PS2 para conectar el
teclado o el ratn, estas interfaces
tienden a desaparecer a favor del USB
o Los puertos serie, por ejemplo para conectar
dispositivos antiguos.
o Los puertos paralelos, por ejemplo
para
la
conexin
de
antiguas
impresoras.
o
Los puertos USB (en ingls Universal
Serial Bus), por ejemplo para conectar
perifricos recientes.
o Los conectores RJ-45, para conectarse a una red
informtica.
o
Los conectores VGA, DVI, HDMI o
DisplayPort para la conexin del monitor de
la computadora.
o Los conectores IDE o Serial ATA,
para
conectar
dispositivos
de
almacenamiento, tales como discos
duros, unidades de estado slido y
unidades de disco ptico.
o Los conectores de audio, para conectar
dispositivos
de
audio,
tales
como
altavoces o micrfonos.

Las ranuras de expansin: se trata de


receptculos que pueden acoger tarjetas de
expansin (estas tarjetas se utilizan para
agregar
caractersticas
o
aumentar
el
rendimiento de un ordenador; por ejemplo,
una tarjeta grfica se puede aadir a un
ordenador para mejorar el rendimiento 3D).
Estos puertos pueden ser puertos ISA (interfaz
antigua), PCI (en ingls Peripheral Component
Interconnect), AGP (en ingls Accelerated
Graphics Port) y, los ms recientes, PCIExpress.
o

Con la evolucin de las computadoras,


ms y ms caractersticas se han integrado
en la placa base, tales como circuitos
electrnicos para la gestin del vdeo IGP (en

ingls Integrated Graphic Processor), de


sonido o de redes ((10/100 Mbit/s)/(1
Gbit/s)), evitando as la adicin de tarjetas de
expansin.
En la placa tambin existen distintos
conjuntos de pines que sirven para
configurar otros dispositivos:
JMDM1: Sirve para conectar un mdem por
el cual se puede encender el sistema
cuando este recibe una seal.
JIR2: Este conector permite conectar mdulos
de infrarrojos IrDA, teniendo que configurar la
BIOS.
JBAT1: Se utiliza para poder borrar todas las
configuraciones que como usuario podemos
modificar y restablecer las configuraciones que
vienen de fbrica.
JP20: Permite conectar audio en el panel frontal.
JFP1 Y JFP2: Se utiliza para la conexin de los
interruptores del panel frontal y los ledes.
JUSB1 Y JUSB3: Es para conectar puertos USB del panel frontal.
Los buses son espacios fsicos que permiten
el transporte de informacin y energa entre
dos puntos de la computadora.
Los buses generales son los siguientes:

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


Bus de datos: son las lneas de
comunicacin por donde circulan los datos
externos e internos del microprocesador.

Bus de direccin: lnea de comunicacin


por donde viaja la informacin especfica
sobre la localizacin de la direccin de
memoria del dato o dispositivo al que se
hace referencia.

Bus de control: lnea de comunicacin por


donde se controla el intercambio de
informacin con un mdulo de la unidad
central y los perifricos. Bus de expansin:
conjunto de lneas de comunicacin
encargado de llevar el bus de datos, el bus
de direccin y el de control a la tarjeta de
interfaz (entrada, salida) que se agrega a la
tarjeta principal.

Bus del sistema: todos los componentes


de la CPU se vinculan a travs del bus de
sistema, mediante distintos tipos de datos
el microprocesador y la memoria principal,
que tambin involucra a la memoria cach
de nivel 2. La velocidad de transferencia
del bus de sistema est determinada por
la frecuencia del bus y el ancho del mnimo.

2
Caractersticas del procesador
Pentium IV Intel Multi-Core
El
Pentium
4
fue
una
lnea
de
microprocesadores de sptima generacin
basado en la arquitectura x86 y fabricado por
Intel. Es el primer microprocesador con un
diseo completamente nuevo desde el Pentium
Pro de 1995. El Pentium
4 original, denominado Willamette, trabajaba a 1,4 y 1,5
GHz; y fue lanzado el
20 de noviembre de 2000.1 El 8 de agosto de
2008 se realiza el ltimo envo de Pentium 4,2
siendo sustituido por los Intel Core Duo

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


Para la sorpresa de la industria informtica, la
nueva microarquitectura NetBurst del Pentium
4 no mejor el viejo diseo de la
microarquitectura Intel P6 segn las dos
tradicionales
formas
para
medir
el
rendimiento: velocidad en el proceso de
enteros u operaciones de coma flotante. La
estrategia
de
Intel
fue
sacrificar
el
rendimiento de cada ciclo para obtener a
cambio mayor cantidad de ciclos por
segundo y una mejora en las instrucciones
SSE. En 2004, se agreg el conjunto de
instrucciones x86-64 de 64 bits al tradicional
set x86 de 32 bits. Al igual que los Pentium II y
Pentium III, el Pentium 4 se comercializa en una
versin para equipos de bajo presupuesto
(Celeron), y una orientada a servidores de
gama alta (Xeon).
Los nombres de cdigo, a partir de la
evolucin de las distintas versiones, son:
Willamette (180 nanmetros), Northwood (130
nm), Gallatin (Extreme Edition, tambin 130
nm), Prescott (90 nm) y Cedar Mill (65 nm).

Funcionamiento en general

En la Figura 1 presentamos una visin global de


la arquitectura del Pentium 4 [1]. Podemos
dividirla, y as lo haremos con nuestra
presentacin, en cuatro grandes bloques.
Como ya hemos comentado, el elemento
principal del Front-End de esta nueva
arquitectura es, sin duda, la Trace Cache. Tanto
sta como el efectivo predictor de saltos y el
decodificador de instrucciones IA-32, son
los encargados de
suministrar microoperaciones al pipe.
Durante la etapa de ejecucin, se produce el
renombramiento de registros, la ejecucin
fuera de orden de las micro-operaciones y su
posterior finalizacin ordenada. Veremos
con detalle cmo se realizan estas
operaciones, y las estructuras encargadas
de llevarlas a cabo. La ejecucin de las
micro-operaciones tiene lugar en diversas
unidades funcionales que describiremos
posteriormente.

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

Figura 1 Arquitectura Global del Pentium 4


Los datos para la ejecucin de dichas
operaciones se toman de la renovada
jerarqua de memoria: una cache de primer
nivel de tan solo 8 Kb y muy baja latencia,
junto con la tradicional Cache unificada de
segundo nivel, de 256 Kb que trabaja al doble
de velocidad que sus antecesoras.

Figura 2 Etapas del Pipeline del Pentium 4


Como observamos en la Figura 2, los distintos
bloques bsicos de ejecucin se distribuyen a
lo largo de un pipeline realmente profundo:
20 etapas. Intel ha querido aumentar
vertiginosamente
la
frecuencia
de
su
procesador, y un modo de conseguirlo es
alargar
el
pipe.
Sin
embargo,
esta
decisin conlleva numerosas contrapartidas;
quizs la ms importante sea la fuerte
penalizacin que supone para dicho pipe un
error en la prediccin de un salto o un fallo
de cache. El nmero de instrucciones

incorrectamente ejecutadas hasta que nos


percatamos del error, es enorme. Por ello,
gran parte de los esfuerzos de los
diseadores se han centrado en conseguir
una poltica de prediccin de saltos efectiva,
y una cache de primer nivel con muy baja
tasa de fallos.
Otro problema aadido a la alta frecuencia
es el escaln que ello supone de cara a la
memoria. Por este motivo, la cache de primer
nivel se ha visto reducida a la mitad (8 Kb
frente a los 16Kb del Pentium Pro). De ese
modo, y con un acceso a la memoria en
forma de pipeline de tres etapas, se pretende
asegurar un solo ciclo de latencia en caso de
acierto. Al mismo tiempo, el bus del sistema se
ha visto fuertemente mejorado: llega a un
ancho de banda de 3,2Gb/s.
Siguiendo el anlisis de la Figura 2,
comentemos grosso modo cada una de las
etapas del pipe. A lo largo del captulo
detallaremos
cada
una
de
estas
explicaciones.
Las 4 primeras etapas corresponden a la
labor de la Trace cache. En las dos primeras,
obtiene el puntero a la siguiente direccin. El
BTB es el encargado de

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


generar esta informacin. Durante las dos
siguientes etapas, la Trace cache realiza el
fetch
de
las
micro-operaciones
correspondientes.
La quinta etapa es otra novedad: por
primera vez se tienen en cuenta los tiempos
de
las
conexiones.
En
este
caso,
corresponden al envo de las microoperaciones al entorno de ejecucin.
En la sexta etapa, se procede a reservar
la estructuras necesarias para la ejecucin
de las operaciones: entrada de la ROB, de la
RAT.
Se procede ahora al renombramiento de
los
registros
que
contendrn
los
operandos, y a su almacenamiento en las
colas
de
micro-operaciones
(las
estaciones de reserva; etapas 8 y 9)
Se reservan tres etapas (10, 11 y 12) para la planificacin
de las
instrucciones: evaluacin de
dependencias, determinar cules estn
listas, decidir cules se han de ejecutar.
Para ello cuenta con distintos
planificadores, en funcin de la naturaleza
de la operacin.
Llega el momento de lanzar a ejecutar operaciones.
Hasta 6 pueden
enviarse a las unidades funcionales en
cada ciclo (aunque este nmero es, como
veremos, muy optimista).
Etapas 15 y 16: antes de entrar en la
unidad funcional correspondiente, la microoperacin lee sus operandos del conjunto
de registros (ya que los operandos no se
almacenan en las estaciones de reserva).

En la decimosptima etapa se produce la verdadera


ejecucin de las
operaciones.
Hay
mltiples
unidades
funcionales con diferentes latencias. Tras ello,
se generan los flags correspondientes a la
ejecucin.
En las dos ltimas etapas se comprueba si la prediccin
del salto fue
correcta, y se transmite dicha informacin al
Front-End. Podemos comprobar que un error
en la prediccin supone un fuerte coste,
pues tal situacin no se conoce hasta las
ltimas etapas de ejecucin.
Un poco a hurtadillas, Intel ha introducido en
el Pentium 4 una tcnica que posiblemente
sea, junto al multiprocesador en un chip, la
tendencia a seguir en los prximos aos. Nos
referimos al Multithreading, que consiste en
lanzar varias threads de ejecucin de un
modo simultneo para garantizar un flujo
continuo de operaciones en el pipe. La
documentacin al respecto es ms escasa
y confusa, si cabe, que para el resto de los
componentes de la nueva arquitectura.
Intentaremos subrayar los aspectos ms
significativos del
multithreading en las secciones finales del trabajo.
Para terminan con esta visin preliminar,
sealaremos tambin la introduccin de l44
instrucciones SSE2 (nueva extensin de las ya
conocidas MMX) al repertorio IA-32. Se
contina as ampliando la gama de
posibilidades en el clculo SIMD (Single
Instruction Multiple Data) que tan buen
resultado est dando en las aplicaciones
multimedia. La mayora de las nuevas
instrucciones no son ms que versiones en
128 bits de las antiguas. En el apartado
dedicado a la ejecucin, dedicaremos un
apartado a la filosofa SIMD, y a los resultados

conseguidos con su incorporacin al repertorio


de instrucciones.

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

4
Sistema descrito por bloques y por
circuitos

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

5
Esquemtico del sistema
completo Sistema de Aplicacin.

6
Muestra de una Mainboard AT
con identificacin de dispositivos
7

Registros

Para paliar el reducido nmero de registros


lgicos, el Pentium 4 presenta un agresivo
renombramiento de registros (Register File de
128 entradas), evitando as los conflictos por
dependencias de datos. En un instante
determinado,
puede
haber
mltiples
instancias de un mismo registro lgico (por

ejemplo, EAX). Para llevar un control sobre


las asignaciones, se dispone de dos
tablas denominadas Register Alias Table (RAT).
La entrada correspondiente al registro EAX
de la Front-End RAT quedar apuntando al
registro que hayamos asignado a nuestra
instruccin.
De
este
modo,
cualquier
instruccin posterior que quiera leer de
EAX slo tendr que consultar esa misma
entrada de la RAT para saber de dnde debe
coger su operando.
Al mismo tiempo, las entradas de los registros
operandos se leen (EBX y ECX), obteniendo las
entradas de los registros que albergarn los
valores correctos en el momento preciso.

10

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

En la Figura 6 observamos la situacin de la


Front-End RAT y de los registros tras el
renombramiento. La entrada EAX apunta al
registro que ser destino de la instruccin,
cuyo ndice (podra ser el 3 en la figura) se
pasa junto con el resto de la micro-operacin,
a la cola de instrucciones. El valor de EBX se
encuentra en un registro vlido (quiere decir
que la instruccin que escribi en l antes de
nuestra instruccin, ya termin). A pesar de
ello, no cogemos el dato (2523), sino el ndice
del registro; lo haremos en el momento de
lanzar a ejecutar la suma. El valor del registro
apuntado por ECX no es el correcto, y nos
llevamos la referencia del registro (digamos
que 7) para poder saber cundo est
preparado.
Si tras nuestra micro-operacin llegara otra
del estilo: EDX EBX - EAX, se encontrara

con que el dato de EBX es vlido (y en el


mismo registro que para nuestra microoperacin), y que el de EAX ya no es vlido.
Coger el ndice del registro apuntado (hemos
asumido que ser 3), y se llevar la
instrucciones a la cola.
Antes de pasar a la ejecucin de nuestra
instruccin, no est de ms comentar que el
proceso
de
renombramiento
que
acabamos de describir es muy diferente al
de la anterior arquitectura P6. En el Pentium
Pro y sucesores, slo se dispona de una tabla
RAT (despus veremos el uso que en el
Pentium 4 tiene la segunda de las tablas), y no
exista
un
conjunto
de
registros
independiente. En su lugar, los datos de las
operaciones
eran
almacenados
directamente en el ROB (de 40 entradas),
actualizando en la fase de finalizacin los
registros arquitectnicos (que aqu s existan
explcitamente). En la Figura 7 vemos las
diferencias descritas en este prrafo.
Tras el renombramiento, nuestra microoperacin est a la espera de tener todos
sus operandos preparados. Esta espera se
produce en la cola de micro-operaciones.
Slo falta el dato del registro ECX (ahora
renombrado a 7) para

11

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


poder
comenzar
nuestra
ejecucin.
Cuando
una
instruccin
termina
su
ejecucin, su resultado se comunica al resto
por medio del bus comn. Adems de llevar el
dato del resultado, el bus transmite el ndice
del registro donde se debe almacenar. De
este modo, cuando nuestra instruccin vea
en el bus que alguien va a escribir en el
registro 7, sabr que su dato ha sido
producido, y que puede ser ejecutada.

Figura 7 Renombramiento de registros en el Pentium III y en el


Pentium 4

Modos de direccionamiento

Set de instrucciones

La misin de la Trace cache es encontrar


esos bloques de instrucciones no contiguos
en su disposicin original, y almacenarlos
uno tras otro para su posterior envo al pipe
de ejecucin. No vamos a entrar en mayor
detalle en cuanto a la arquitectura interna de
las Traces Caches. S diremos que, adems de
las trazas de instrucciones, contienen cierta
informacin de control (Como

12

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


las predicciones realizadas para elaborar la
traza), y el modo de continuar la traza al
acabar la lnea actual.

Si no se encuentra ninguna entrada en el BTB


correspondiente con el PC de la actual
instruccin de saltos,
el predictor esttico
realiza una prediccin basada en la direccin
del salto (conocida tras la decodificacin).
Si el salto es hacia atrs (desplazamiento
negativo; como en los bucles), el predictor
considerar el salto como tomado. En caso
contrario, el salto se considerar como no
tomado. Conociendo este comportamiento,
el cdigo puede adaptarse para respetar al
mximo esta poltica; esta adaptacin no
puede ser hecha automticamente por un
compilador (salvo tras una fase de profiling)

pues implica el conocimiento de la


semntica del cdigo para reconocer las
destinos ms probables en cada salto.
Todos los retornos de una funcin son saltos
tomados, pero como stos pueden venir
desde distintas direcciones, no podemos
utilizar una prediccin esttica. Para estos
casos, el Pentium 4 dispone de una pila de
direcciones de retorno (Return Stack) que
predice las direcciones de vuelta para una
serie de llamadas a funciones.
Incluso en caso de predecir correctamente la
direccin y el destino de un salto, todos los
saltos tomados merman en cierta medida el
paralelismo inherente del cdigo para los
procesadores tradicionales. Esto es debido al
ancho de banda desperdiciado en la
decodificacin que siguen al salto y que
preceden al destino si estos no se encuentran
al final y al principio de sus respectivas lneas

13

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS


de cache. En cierta medida esta inevitable
merma se ve paliada por la Trace Cache, que,
en el caso ideal, slo trae una vez las
instrucciones desde la cache. As mismo, el
Pentium 4 ofrece la posibilidad de anotar, a
nivel software, las instrucciones de salto.
Esta informacin se aade como prefijo a las
instrucciones,
y
es
ignorada
en
los
procesadores anteriores al Pentium 4. Estas
marcas son utilizadas para ayudar al predictor
de saltos en su labor, facilitando la
generacin de las trazas. Esta informacin
tiene mayor prioridad que el
predictor
esttico que por defecto utiliza el Pentium 4.

10 Lenguaje mquina, macroensamblador

14

ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA ARQUITECTURA DE COMPUTADORAS

11 Conclusiones
An se podran detallar mil aspectos ms del
funcionamiento del Pentium 4. El diseo e
implementacin de un superescalar
presentan la suficiente complejidad como
para poder comprenderlos en toda su
magnitud de una sola pasada.
S podemos afirmar que Intel ha logrado un
enorme avance (aunque las cifras de ventas
no le hayan respaldado en los primeros
meses) en cuanto a su arquitectura se
refiere. Su diseo est pensado para
continuar escalando potencia
constantemente incluso sin la ayuda de un
salto tecnolgico.
En los modelos que sucedan al Pentium 4,
habr que ir limando los detalles que an no
terminan funcionar. La Trace Cache es una
buena idea y una gran solucin para muchos
de los problemas de Intel, pero parece que el
flujo de micro-operaciones que produce no es
an el deseado. An falta por comprobar el
rendimiento del multithreading, y tras las
primeras pruebas habr que proceder a su
ajuste.
Pero sin duda nos encontramos ante un salto
importante para Intel, mayor del que a
primera vista podra parecer al compararlo
con la arquitectura P6. Es un nuevo punto de
partida desde donde continuar buscando
mayor rendimiento y, a ser posible, a bajo
precio.

12 BIBLIOGRAFIA
Intel Pentium 4 Processor Optimization Reference
Manual at
http://developer.intel.com/design/pentium4/manuals/248966.ht
m.
ARQUITECTURA NERT BUST PENTIUM 4
WIKIPEDIA, Intel Pentium 4

15

Vous aimerez peut-être aussi