Post on 05-Mar-2018
CELERON PPGA370, PENTIUM III
FCPGA, CYRIX III
ARQUITECTURAS DE COMPUTADORAS
• ARQ. VON NEUMANN: Ejecución secuencial de las
instrucciones de un programa
• AVANCES EN LAS ARQ. ACTUALES:
– SEGMENTACIÓN DE INSTRUCCIONES (pipelining): Las inst.
comparten el mismo hardware pero se encuentra en distintas
fases de ejecución
– EJECUCIÓN SUPERESCALAR: varias inst. se ejecutan
simultáneamente utilizando distintos elementos de hardware
– PALABRAS DE INSTRUCCIÓN MUY LARGAS (VLIW, very
long instruction word): cada palabra especifica varias
instrucciones (de menor tamaño) que se ejecutan en forma
simultanea
ARQUITECTURAS
ARQUITECTURAS RISC/CISC
CISCSec. µprogramado
RISCSec. Cableado
• CISC (Complex Instruction Set Computer) repertorio muy amplio de instrucciones muy complejas y potentes. El diseño de esta arq. Está marcado por la tecnología existente en los años 60.
• RISC (Reduced Instruction Set Computer) repertorio de instrucciones lo más reducido posible con un alto porcentaje que se completan en un ciclo de reloj
– El hecho de tener actualmente mecanismos rápidos de acceso a memoria, buses de alta velocidad y compiladores especializados en estas arquitecturas, hace que los ordenadores RISC obtengan mejores rendimientos.
– Cualquier tarea necesita más instrucciones en RISC que en CISC, ya que en RISC las instrucciones son más elementales.
ARQUITECTURAS RISC/CISC
LENGUAJE DE ALTO NIVEL
COMPILADOR
INTERPRETELENGUAJE DE MÁQUINA
COMPILADOR
programa que toma como entrada
un texto escrito en un lenguaje,
llamado fuente y da como salida
otro texto en un lenguaje,
denominado objeto.
INTÉRPRETE: Analiza el programa fuente y lo ejecuta
directamente, sin generar ningún código equivalente
La brecha semántica
Assembler -
ensamblador
Lenguaje de MUY ALTO NIVEL: PROCESARORES DE TEXTO,
PLANILLAS DE CALCULO, etc
CISC Y RISC
• Los avances en la tecnología electrónica, redujo la diferencia en la velocidad de procesamiento de los microprocesadores con las velocidades de las memorias, lo que repercutió en el desarrollo de los microprocesadores.
• Posiblemente en breve los microprocesadores RISC sustituirán a los CISC. Pero los microprocesadores CISC tienen un mercado de software muy difundido, esto limitará la sustitución en lo inmediato.-
• En los términos complejo y reducido, se deben tomar como referencia las instrucciones y también la complejidad del hardware del procesador.
CISC Y RISC
• La comparación entre CISC y RISC no es algo
simple, ya que no es sólo una cuestión de
diferencias en el conjunto de instrucciones,
puesto que es fundamental resaltar el mejor uso
y aprovechamiento de los recursos del silicio, es
decir, menor tiempo de diseño y empleo de
menor número de transistores, lo que redunda
en menor número de errores de diseño y menor
tiempo de ejecución para instrucciones
individuales.
CISC Y RISC
• Con tecnologías de semiconductores
comparables e igual frecuencia de reloj,
un procesador RISC típico necesita un
tiempo de procesamiento dos a cuatro
veces mayor que la de un CISC, pero su
estructura de hardware es tan simple, que
se puede realizar en una fracción de la
superficie ocupada por el circuito
integrado de un procesador CISC.
RISC (Reduced instruction set computer)
• En los 70, las mejoras tecnológicas permitieron tener velocidades en la memoria principal similares a la memoria de control, lo que hizo posible trabajar con instrucciones simples (que se completan en un ciclo de reloj) y por tanto acelerar considerablemente la ejecución de instrucciones (al terminar la ejecución de todas las microinstrucciones se empieza con la ejecución de la siguiente instrucción).
• La arquitectura (RISC), se caracteriza por poseer un juego de instrucciones lo más reducido posible con un porcentaje alto de ellas que se completan en un ciclo de reloj. Alguna instrucción compleja, necesitará más de un ciclo de reloj, pero la mayor parte de ellas se realizan a partir de operaciones fundamentales. Es una constatación estadística que la potencia práctica de un ordenador reside en un repertorio pequeño de instrucciones, con lo cual si se reduce dicho repertorio se sigue conservando la potencia del ordenador, y disminuye la complejidad del diseño y el costo
INICIALMENTE CISC• La tendencia de los programadores hacia los
lenguajes de alto nivel (HLL), hizo tender a repertorios de instrucciones más ricos con instrucciones más complejas (para disminuir la brecha semántica)
• Esta tendencia buscaba simplificar los compiladores y mejorar las prestaciones
• los programas cada vez más grandes y complejos demandan mayor velocidad en el procesamiento de información, lo que implica la búsqueda de procesadores más rápidos y eficientes.
CLAVES FILOSOFICAS RISC(Miles J. Murdocca)
1. Búsqueda anticipada de instrucciones tener en la
CPU una cola de instrucc. antes que se las necesite
disminuye el tiempo necesario para la búsqueda de la
instrucción
2. Con ↓ de costo de mem. y ↑ velocidad en la búsqueda
de las instrucc. no se justifica CISC todas las
secuencias de instrucc. deberían pertenecer a RISC
(para = problema, Inst. CISC = 1/3 RISC)
3. Diseñar inst. RISC para arquitectura segmentada
4. No se justifica integración de inst. CISC pudiendo
descomponerse en secuencias de inst. RISC mas
simples.
LOS PROCESADORES CISC
• Capacidad para ejecutar un gran número
de instrucciones en lenguaje de máquina,
mas de cien
• La microprogramación es una
característica importante y esencial de
casi todas las arquítecturas CISC
• Dificultad para implementar el paralelismo
entre instrucciones
LOS PROCESADORES RISC• Características comunes a todos los procesadores RISC,:• Modelo de conjunto de instrucciones Load/Store (Cargar/Almacenar). Sólo las
instrucciones Load/Store acceden a memoria; Ello simplifica el direccionamiento y acorta los tiempos de los ciclos de la CPU,
• Arquitectura no destructiva de tres direcciones. Los procesadores CISC destruyen la información que existe en alguno de los registros, como consecuencia de la ejecución normal de instrucciones; esto es debido a su arquitectura de dos direcciones, por la cual el resultado de una operación sobrescribe uno de los registros que contenía a los operandos. Por contra, las instrucciones RISC, con tres direcciones, contienen los campos de los dos operandos y de su resultado. Por lo tanto, los operandos origen como el destino, son mantenidos en los registros tras haber sido completada la operación. Esta arquitectura "no destructiva" permite reutilizar los operandos optimizando la concurrencia.
• Instrucciones simples, de formato fijo, con pocos modos de direccionamiento. Las instrucciones simples reducen de manera muy significativa el esfuerzo para su descodificación, y favorecen su ejecución en pipelines. Todas las instrucciones tienen una longitud equivalente a una palabra y están almacenadas en forma secuencial.
• Ausencia de microcódigo. El microcódigo no se presta a la ejecución en ciclos únicos, ya que requiere que el hardware sea dedicado a su interpretación dinámica. La programación en microcódigo no hace que el software sea más rápido que el programado con un conjunto de instrucciones simples. Todas las funciones y el control, en los procesadores RISC, están "cableados", para lograr una máxima velocidad y eficiencia.
• Ejecución en conductos (pipelined). Las instrucciones simples, de formato fijo y ciclo único permiten que las diferentes etapas de los ciclos de ejecución (búsqueda o fetch, descodificación, ejecución, y escritura del resultado o result write-back) para instrucciones múltiples, se puedan realizar simultáneamente, de un modo más simple y eficaz.
• Ejecución en ciclos únicos: cada instrucción puede ser ejecutada en un único ciclo de la CPU.
Características de las RISC que la distinguen de la CISC
Miles H. Murdocca
1. Todas las inst. son de long. fija = 1 palabra
2. Todas las inst. ejecutan inst. simples, en una
estructura segmentada se realizan en 1 ciclo de reloj.
Las operac. complejas son convertidas por el
compilador en inst. simples
3. Todos los operandos están contenidos en registros
antes de iniciar las operaciones
4. Los modos de direccionamiento son los mas simples
5. Existe gran cantidad de registros de uso general las
operaciones aritméticas utilizan las variables
temporarias que están en los registros en lugar de
tenerlas en una pila en MC
RISC y CISC
• Pueden combinarse las ventajas RISC y CISC en una máquina
• Los µprocesadores Intel-Pentium son CISC de alto rendimiento – Usan un traductor de hardware que sustituye cada
instrucc. CISC por una secuencia de operaciones RISC
– Desarrollo de las operaciones simples con gran rapidez
• Utilización de los beneficios y métodos de aceleración aplicables a los conjuntos de instrucciones RISC los procesadores CISC
• "Desde el 486, los procesadores Intel
tienen tecnología RISC incorporada. El
486 posee un núcleo RISC rodeado por
una compleja arquitectura CISC".
.Las diferencias son cada vez más borrosas entre las
arquitecturas CISC y RISC. Las CPU's combinan
elementos de ambas y no son fáciles de encasillar. Por
ejemplo, el Pentium Pro traduce las largas
instrucciones CISC de la arquitectura x86 a micro
operaciones sencillas de longitud fija que se ejecutan
en un núcleo de estilo RISC.
RISC y CISC
MAINFRAMES
DECADA DEL 60
DECADA DEL 70
PRINCIPIOS DE LOS 80
Mainframe z10 de IBM