AMD Am29000

Ir a: navegación, búsqueda de
AMD 29000 microprocesador
AMD 29030.

El AMD Am29000, a menudo simplemente 29k, era una familia popular de 32 bits RISC microprocesadores y Microcontroladores desarrollado y fabricado por Advanced Micro Devices EDAD (DMAE). Eran, por un tiempo, los chips RISC más populares en el mercado, ampliamente utilizado en impresoras láser de una variedad de fabricantes. A finales de 1995 AMD cayó desarrollo del 29k porque el equipo de diseño fue transferido para apoyar el lado de la PC de la empresa. Lo que quedaba de negocios integrados de AMD fue realineada hacia la familia 186 incrustados de 80186 derivados. La mayoría de los recursos de AMD se concentraron entonces en su escritorio x 86 clones, de alto rendimiento utilizando muchas de las ideas y las partes individuales de los últimos 29k para producir el AMD K5.

El 29000 evolucionado a partir de la misma Berkeley RISC diseño que también condujo a la Sol SPARC y Intel i960. Un "truco" utilizado en todos los Berkeley-diseños derivados es el concepto de registro de windows, una técnica utilizada para acelerar llamadas a procedimientos significativamente. La idea básica es utilizar un amplio conjunto de registros como una pila, carga de datos locales en un conjunto de registros durante una llamada y marcándolas "muerto" cuando vuelve el procedimiento. Los valores se devuelven desde las rutinas se colocaría en la página de"global", los ocho primeros registros en SPARC (por ejemplo). Es interesante notar que la competencia temprano RISC diseño de La Universidad de Stanford, el MIPS Stanford, también consultaron este concepto pero decidió que los compiladores mejorados podrían hacer un uso más eficiente de los registros de propósito general que una ventana hard-wired, algo que ha demostrado verdadero con los años.

En el original diseño de Berkeley, SPARC y i960, las ventanas se fijaron en tamaño. Una rutina usando solamente una variable local utilizaría todavía ocho registros en SPARC, desperdiciar este recurso caro. Fue aquí que el 29000 diferenció de estos diseños anteriores, en que utiliza un tamaño de ventana variable para mejorar la utilización. En este ejemplo se utilizaría sólo dos registros, uno para la variable local, otro para el Dirección del remitente. También añadió más registros, incluyendo los mismos 128 registros de la pila de procedimiento, pero añadiendo otro 64 para acceso global. En comparación el SPARC tenía 128 registros en total, y el sistema global era una ventana estándar de ocho. Estos cambios, combinados con un compilador "a medio camino inteligente", resultaron en el mejor de ambos mundos en rendimiento, alto rendimiento para llamadas a procedimientos, sin dejar de tener un montón de registros globales para el trabajo de propósito general. El 29000 también "extender" la pila de la ventana de registro con una memoria en (y en teoría, en caché) pila. Cuando la ventana llena las llamadas que se empujó al final de la pila de registro en la memoria, restaurada como sea necesario cuando volvió la rutina. Generalmente el uso de registro de 29000's era considerablemente más avanzado que los competidores diseños basados en los conceptos de Berkeley.

AMD 29040

Otra diferencia, éste no es tan extraño, es que el 29000 no incluido registro de código de condición especial. Cualquier registro podría utilizarse para este propósito, permitiendo que las condiciones para guardarse fácilmente a expensas de algún código de complicación. Un búfer prefetch de instrucción se utilizó que almacena hasta 16 instrucciones, utilizadas para mejorar el rendimiento durante ramas — el 29000 no incluyó ningún sistema de predicción de rama así que hubo un retraso si se tomaba una rama (ni fue originalmente superescalarAsí que no podría "hacer ambos lados" como es común en algunos diseños). El buffer esta había mitigado por almacenar cuatro instrucciones desde el "otro lado" de la rama, el cual podría ejecutarse inmediatamente mientras el búfer estaba nuevamente lleno de nuevas instrucciones de la memoria.

El primer 29000 fue lanzado en 1988, incluyendo un built-in MMU Pero coma flotante apoyo se descarga a la 29027 FPU. El 29005 era una versión de corte hacia abajo.[citación necesitada] La línea se actualizó con el 29030 y 29035, que incluyó un 8KB o caché de 4 KB de la instrucción, respectivamente. Otra actualización integrada el FPU en el chip y agregó un 4 KB de caché de datos para producir el 29040.

La versión final de propósito general fue el 29050. El 29050 también tiene mucho mejor flotante punto de rendimiento que los anteriores microprocesadores k 29.

Varias porciones del diseño 29050 fueron utilizadas como base para el K5 serie de x 86-procesadores compatibles. El FPU se utilizó sin modificar[dudosa ], mientras que el resto del diseño de la base fue utilizado junto con el complejo microcódigo traducir x 86 instrucciones para 29k-como código sobre la marcha.

Véase también

  • AMD
  • Lista de familias AMD Am2900 y Am29000

Enlaces externos

  • AMD 29k (procesador de instrucción aerodinámico) Guía de la identificación
  • Mann, Daniel (1995), Evaluación y programación de la familia RISC de 29 KAdvanced Micro Devices, archivados de el original el 27 de septiembre de 2007 familia pdf libro sobre 29k
  • chipdb.org Imágenes de diferentes procesadores de Am29000

Otras Páginas

Obtenido de"http://en.copro.org/w/index.php?title=AMD_Am29000&oldid=607142804"