ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

El caso de la Reducción del conjunto de instrucciones del ordenador

xamykgExamen3 de Febrero de 2014

6.394 Palabras (26 Páginas)406 Visitas

Página 1 de 26

El caso de la Reducción del conjunto de instrucciones del ordenador

David A. Patterson

Reducción del conjunto de instrucciones del ordenador tienen por objeto tanto la simplicidad en el hardware y la sinergia entre las arquitecturas y compiladores. Optimización de los compiladores se utilizan para compilar lenguajes de programación a las instrucciones que son tan comprometidos como microinstrucciones en un gran espacio de direcciones virtuales, y para hacer que el tiempo de ciclo de instrucción lo más rápido posible.

Como las tecnologías de circuitos reducen el coste relativo de procesamiento y memoria, juegos de instrucciones que son demasiado complejos se convierten en una responsabilidad distinta a la rentabilidad. Los diseñadores de Reducción del conjunto de instrucciones del ordenador (RISCs) luchan por la simplicidad en el hardware y la sinergia entre la arquitectura y los compiladores, con el fin de agilizar el procesamiento tanto como sea posible. La experiencia inicial indica que RISCs de hecho, puede correr mucho más rápido que las máquinas más convencionales diseñadas.

ANTECEDENTES

El IBM System/360, introducido por primera vez en 1964, fue el verdadero comienzo de la arquitectura de la computadora moderna. Aunque los equipos de la "familia" System/360 proporcionaron un diferente nivel de rendimiento a un precio diferente, todos corrieron software idénticos. El System/360 originó la distinción entre el ordenador arquitectura de la estructura abstracta de un equipo que un programador en lenguaje de máquina necesita saber para escribir programas y la implementación de hardware de esa estructura.

Antes del System/360, las compensaciones arquitectónicas se determinaron por el efecto sobre el precio y el rendimiento de una sola aplicación: a partir de ahora, de arquitectura compensaciones se hicieron más esotérico. Las consecuencias de las implementaciones individuales ya no serían suficientes para atender una discusión sobre el diseño del conjunto de instrucciones.

Microprogramación fue la innovación tecnológica principal detrás de este concepto de marketing. Microprogramación contaba con una pequeña memoria de control y fue una manera elegante de la construcción de la unidad de control del procesador para un sistema de instrucción general. Cada palabra de memoria de control se llama una microinstrucción, y los contenidos son esencialmente un intérprete, programado en microinstrucciones. Los principales recuerdos de estos equipos eran recuerdos de núcleo magnético, los pequeños recuerdos de control de las cuales eran por lo general 10 veces más rápido que la base.

Fabricantes de miniordenadores tienden a seguir el ejemplo de los fabricantes de mainframe, sobre todo cuando el fabricante del mainframe es IBM, y así microprogramación prendió rápidamente.

El rápido crecimiento de las memorias de los semiconductores también aceleró esta tendencia. A principios de la década de 1970. Por ejemplo, 8192 bits de memoria de sólo lectura (ROM) ocupaban más espacio que 8 bits del registro. Con el tiempo, las minicomputadoras utilizando la memoria y el control de los semiconductores se convirtió en estándar en la industria minicomputadora. Con el continuo crecimiento de la memoria de semiconductores, un conjunto de instrucciones mucho más ricas y más complicadas podría ser implementado. La comunidad de investigadores arquitectura abogó por sistemas de instrucción más ricos. Revisemos algunos de los argumentos que avanzaron en ese momento:

1. conjuntos de instrucciones simplificarían compiladores. Como se contó la historia, los compiladores eran muy difíciles de construir, y compiladores para máquinas con registros fueron los más difíciles de todos. Compiladores para arquitecturas con modelos de ejecución basados ya sea en las pilas o las operaciones de memoria a la memoria eran mucho más simple y más fiable.

2. conjuntos de instrucciones aliviarían la crisis del software. En momentos en que los costos de software estaban aumentando más rápido que los costos de hardware fueron cayendo, parecía apropiado para mover la mayor funcionalidad para el hardware como sea posible. La idea fue crear instrucciones de máquina que se asemejaban a instrucciones del lenguaje de programación, a fin de cerrar la "brecha semántica" entre lenguajes de programación y lenguajes de máquina.

3. conjuntos de instrucciones mejorarían la calidad de la arquitectura.

Después de que IBM diferenciada arquitectura de la aplicación, la comunidad de investigadores buscó maneras de medir la calidad de una arquitectura, a diferencia de la velocidad a la que las implementaciones podrían ejecutar programas. Los únicos parámetros arquitectónicos entonces ampliamente reconocidos fueron el tamaño del programa, el número de bits de instrucciones, y bits de datos obtenidos a partir de la memoria durante la ejecución del programa.

La eficiencia de la memoria era una preocupación dominante en estos indicadores porque la memoria magnética principal era muy lenta y costosa. Estas métricas son parcialmente responsables de la creencia imperante en la década de 1970 que la velocidad de ejecución es proporcional al tamaño del programa. Incluso se puso de moda para examinar largas listas de ejecución de instrucciones para ver si un par o triple de las instrucciones antiguas podrían ser reemplazadas por una sola instrucción, más potente. La creencia de que los programas más grandes eran programas invariablemente más lentos inspiró la invención de muchos formatos de instrucciones exóticas que redujeron el tamaño del programa.

El rápido aumento del circuito integrado, junto con los argumentos de la comunidad de investigación de la arquitectura en la década de 1970 dio lugar a ciertos principios de diseño que guiaron la arquitectura de computadores:

1. La tecnología de memoria utilizada para los microprogramas estaba creciendo rápidamente, por lo que grandes microprogramas añadiría poco o nada que el costo de la máquina.

2. Desde microinstrucciones eran mucho más rápido que las instrucciones normales de la máquina, moviendo las funciones del software de microcódigo hecho para un equipo más rápido y más fiable funciones.

3. También desde la velocidad de ejecución es proporcional al tamaño del programa, técnicas arquitectónicas que llevó a los programas más pequeños llevó a un equipo más rápido.

4. Registros estaban pasadas de moda y hacen que sea difícil para construir compiladores; pilas o arquitecturas de memoria a la memoria eran modelos de ejecución superiores. Como una arquitectura investigador puso en 1978, "Una de las cejas deben elevarse cada vez que una futura arquitectura se desarrolla con un conjunto de instrucciones de registro de lucro."

En este ejemplo, las tres palabras de datos son de 32 bits cada uno y el campo de dirección es de 16 bits. Las métricas fueron seleccionados por los arquitectos de investigación para decidir qué arquitectura es mejor, sino que seleccionan el tamaño total de instrucciones ejecutadas (I), el tamaño total de los datos ejecutados (D), y la memoria total del tráfico, es decir, la suma de I y D , que es (M). Estas métricas sugieren que una arquitectura de memoria a la memoria es el "mejor" la arquitectura, y una arquitectura de operaciones de registro a registro el "peor". Este estudio llevó a un arquitecto de la investigación en 1978 para sugerir que las arquitecturas futuras no deben incluir registros.

Dorado, y el Intel iAPX -432 . La Tabla I muestra algunas de las características de estas máquinas. Aunque los arquitectos informáticos estaban llegando a un consenso sobre los principios de diseño, el mundo estaba cambiando la aplicación que les rodea:

* Memoria Semiconductor estaba reemplazando núcleo, lo que significaba que los principales recuerdos ya no serían 10 veces más lento que las memorias de control.

* Ya que era virtualmente imposible eliminar todos los errores de 400.000 trozos de microcódigo, tiendas de control ROMs se estaban volviendo de control de tienda RAMS.

*Cachés habían sido inventadas estudios mostraron que la localidad de programas significaba que las pequeñas, tampones rápidas podrían hacer mejora sustancial en la velocidad de aplicación de una arquitectura. Como muestra la Tabla I, caches fueron incluidos en casi todas las máquinas, aunque las memorias de control eran mucho más grandes que las memorias caché.

* Los compiladores fueron Subconfiguración arquitecturas simples compiladores tuvieron dificultades para generar las nuevas y complejas funciones que se incluyeron para ayudar a cerrar la "brecha semántica. " Optimización de los compiladores crean subconjuntos arquitecturas porque eliminan muchas de las incógnitas en el momento del compilador que rara vez necesitan las poderosas instrucciones en tiempo de ejecución

TIENDA DE MANDO DE ESCRITURA

Un síntoma de la insatisfacción general con los principios de diseño arquitectónico en esta época fue la oleada de trabajar en la memoria de control de escritura, o almacén de control de permisos de escritura (WCS ) . Los investigadores observaron que las máquinas microcodificado no podían correr más rápido que 1 microciclo por instrucción, por lo general con un promedio de 3 o 4 microciclos por instrucción, sin embargo, las simples operaciones en muchos

...

Descargar como (para miembros actualizados) txt (40 Kb)
Leer 25 páginas más »
Disponible sólo en Clubensayos.com