Motorola 88000
From Wikipedia, the free encyclopedia
El 88000 es el primer Microprocesador RISC de Motorola. Originalmente se llamó 78000 como un homenaje a la serie de microprocesadores 68000. En parte podría indicar alguna relación con la familia MC68000 de CISCs, las diferencias son profundas. MC68000 es representativo de los CISCs recientes, mientras el 88000 es un ejemplo de un sistema RISC puro.
La mayoría de las instrucciones hacen referencia sólo a operandos de registro. Sólo unas cuantas instrucciones de carga-almacenamiento simples hacen referencia a la memoria. Los bits en el subcódigo de operación indican carga y almacenamiento de palabra (32 bits) media palabra y byte. Para los últimos dos casos, una carga en un registro se puede tratar como con signo o sin signo. Un aspecto único del conjunto de instrucciones es la inclusión de 8 instrucciones de campo de bits.
Los campos sobre los que estas instrucciones operan pueden ser de cualquier anchura y están localizados en cualquier lugar de la palabra. Este hardware del campo de bits puede borrar, poner, extraer e insertar campos en los registros. Este hardware, en esencia, puede efectuar un corrimiento de un solo ciclo de cualquier número de bits a un campo de cualquier anchura.
Formato de instrucciones
Como casi todos los sistemas RISC, el 88000 emplea una longitud fija de instrucciones de 32 bits. Los primeros 6 bits constituyen el código de la operación de la instrucción. En la mayoría de las instrucciones, el código de operación es seguido por dos campos de registros de 5 bits (el resultado y el primer operando). Los restantes 16 bits pueden contener un operador inmediato o un desplazamiento para una instrucción de bifurcaron condicional. Para las instrucciones que involucran tres registros (2 fuentes y un resultado, o destino), 11 bits permanecen para una expansión del código de operación a fin de especificar operaciones particulares.
Obsérvese que en todos los formatos, las posiciones de los campos claves se alinean. Por consiguiente, la lógica del decodificador de instrucciones del procesador siempre accesa los registros fuentes y destinos desde la misma localidad relativa dentro de la instrucción y simplifica el diseño del procesamiento en cascada.
Arquitectura
El chip del procesador principal consiste de múltiples unidades de función independientes conectadas a un catálogo de registro con múltiples puertos. Las unidades de función pueden operar en forma independiente y concurrente, proporcionando un medio muy eficiente de procesamiento de instrucciones.
Unidad de enteros: Ejecuta todos los accesos de aritmética de enteros, campo de bits, booleanos y registro de control.
Unidad de punto flotante: Proporciona 754 funciones IEEE. Consiste de un sumador con procesamiento en cascada de cinco etapas y un multiplicador con procesamiento en cascada de seis etapas. Estos sistemas de procesamiento en cascada permiten que operaciones múltiples de punto flotante sean realizadas concurrentes.
Unidad de instrucciones: Responsable de buscar instrucciones y remitir el código de operación decodificado vía señales de control a las unidades de ejecución apropiadas contenidas en el procesador.
Unidad de Memoria de Datos: Responsable de cargar y almacenar operandos en el procesador y en la memoria externa.
El bus de memoria (bus M) interfaz de dos unidades de administración de memoria caché (o CMMU, cache memory manager unit) al sistema de memoria, uno para los datos y otro para las instrucciones. Esta arquitectura permite que las instrucciones sean buscadas mientras se están transfiriendo operandos entre el procesador y la memoria; de esta manera, suministra un aumento considerable de velocidad.