Download EL Motorola MC68000
Document related concepts
no text concepts found
Transcript
EL Motorola MC68000 El Motorola 68000 es un CISC microprocesador, el primer miembro de una familia de microprocesadores, que son la mayoría de todos los programas compatibles. Toda la serie fue a menudo citada como el m68k, o simplemente 68kv. La familia 68000 1) Motorola 68EC000 2) Motorola 68HC000 3) Motorola 68008 4) Motorola 68010 5) Motorola 68012 6) Motorola 68020 7) Motorola 68EC020 8) Motorola 68030 9) Motorola 68EC030 10) Motorola 68040 11) Motorola 68EC040 12) Motorola 68LC040 13) Motorola 68060 14) Motorola CPU32 (68330) 15) Motorola Coldfire 16) Motorola Dragonball Las personas que están familiarizadas con el PDP-11 o VAX normalmente se sienten cómodas con la 68000. Con la excepción de la división de registros de propósito general especializados en los registros de datos y la dirección, la arquitectura es 68000 en muchos aspectos, una de 32-bit PDP-11. Historia Originalmente, el MC68000 fue diseñado para su uso en productos para el hogar (por lo menos, eso es lo que una nota interna de Motorola reclamadas). Afortunadamente, se utilizó para el diseño de computadores personales como el Amiga y Atari. Se utiliza también en la Sega Génesis /MEGADRIVE, NeoGeo y varias máquinas Arcade como su principal CPU. En la Sega Saturn, el 68000 se utilizó como el procesador de sonido, y en el de Atari Jaguar que se utilizaron como principal controlador para todos los demás hardware. Notables incluyen el diseño gana Amiga, la Apple Macintosh, y el original de Sun Microsystems y SGI UNIX máquinas. 68000 derivados persisten en el mercado UNIX durante muchos años, porque la arquitectura de manera muy similar a la Digital PDP-11 y VAX, y es un excelente equipo para ejecutar código c. 68000 finalmente la vio como su mayor éxito como un controlador. Miles de HP, Printronix y Adobe impresoras utilizado. Sus derivados microcontroladores, la CPU32 y Coldfire procesadores han sido fabricados en los millones de automóviles como los controladores de motor. También considera que el uso por los fabricantes médicos y muchos fabricantes de impresoras, debido a su bajo costo, la conveniencia, y la buena estabilidad. A partir de 2001, el Dragonball versiones del procesador se utilizan en la popular serie de PDA Palm de Palm Informática y la Handspring Visor, aunque la arquitectura se está eliminando gradualmente en favor de la ARM del procesador central. El Voyage 200 PLT El Motorola 68000 se utiliza también en Texas Instruments última línea de calculadoras. Estos cuatro calculadoras (la TI-89, TI-92, TI-92 Plus, y Voyage 200 PLT) son los de gama más alta de las calculadoras. La TI-92 tiene un procesador de 10 MHz y 68KB de memoria RAM, y fue puesto en libertad en 1995. Fue ascendido a la TI-92 Plus (en 1998), con 188Kb de memoria RAM, 384Kb Flash ROM, y lo mismo con 10 MHz de procesador. También publicado en ese año fue de la TI-89, que era idéntico excepto en un caso en forma más tradicional. Alrededor de 2000, la TI-92 Plus y TI-89 se han actualizado a la versión 2 de hardware, gaines y un procesador de 12 MHz y algunas otras actualizaciones ocultas. En 2002, Texas Instruments lanzó su última calculadora: el Voyage 200 PLT. Este tenía la versión 2 de hardware del procesador 12MHz, 188 KB de RAM y la friolera de 3,7 MB Flash ROM. También había un reloj y unas aplicaciones de escritorio, los cuales fueron liberados sumariamente como actualizaciones de Flash ROM para la TI-92 Plus y TI-89. Inicial de las 68.000 muestras fueron puestos en libertad en 1982, y compitió contra el Intel 8086 y 80286 de Intel con cierto éxito. Inicial de las tasas de un reloj entonces blisteringly rápido 8MHz, con bastante lento siete u ocho relojes por instrucción. Sin embargo, las instrucciones no más de los procesadores Intel. Motorola cesado la producción de las 68.000 en 2000, aunque los derivados, en particular el CPU32 familia, continuar en la producción. A partir de 2001, Hitachi siguió la fabricación bajo licencia 68000. Arquitectura Dirección de bus El 68000 es un inteligente compromiso. Cuando se introdujo el 68000, de 16-bit buses fueron realmente el tamaño más práctico. Sin embargo, el 68000 ha sido diseñado con registros de 32-bit y espacios de direcciones, en el supuesto de que los precios de hardware otoño. Para hacer frente a la percepción de los mercados, el 68000 fue diseñado en tres formas. La base había forma de 24 bits, dirección, y uno de 16-bit bus de datos. La forma corta, el 68008, había una dirección de 18-bits (posiblemente 19 o 20 bits, por lo menos una empresa dirigida 512KBytes con 68008s), y uno de 8-bit bus de datos. El proyecto de futuro (más tarde, el 68020) había una de 32 bits de datos y la dirección de autobús. Registros internos La CPU tiene 8 de uso general de datos de registros (D0-D7), y 8 registros de dirección (A0-A7). El último registro de la dirección fue también la norma puntero de pila, y que se podría llamar, ya sea A7 o SP. Se trataba de un buen número de los registros de muchas maneras. Es lo suficientemente pequeña como para que el responder con rapidez a 68.000 interrupciones (ya que sólo 15 o 16 tenían que ser guardados), y, sin embargo, lo suficientemente grande como para hacer cálculos más rápidos. Tener dos tipos de registros fue ligeramente molesto a veces, pero realmente no difíciles de utilizar en la práctica. Según se informa, que permite a los diseñadores de la CPU para lograr un mayor grado de paralelismo, mediante el uso de un auxiliar de la unidad de ejecución de los registros de la dirección. Estado de registro 68000 La comparación, la aritmética y lógica de las operaciones establecidas en un estado de los bits registro para registrar sus resultados para su uso posterior por los saltos condicionales. Los bits se "Z" ero, "C" ARRY, e "X" tienden, y "N" egative. La medida poco merece una mención especial, porque se separó de la Lleva. Esto ha permitido el toque adicional de la aritmética, la lógica y las operaciones de cambio que se separa de la corriente para llevar de control y vinculación. El conjunto de instrucciones Los diseñadores intentaron hacer que el lenguaje ensamblador ortogonal. Es decir, las instrucciones se dividen en operaciones y dirección de los modos de transporte. Casi todos los modos de dirección estaban disponibles para casi todas las instrucciones. Muchos programadores gustaron la "cerca" ortogonalidad, mientras que otros se agradecen el intento. En el nivel de bit, el escrito de la persona ensamblador que ver claramente que estas "instrucciones" podría convertirse en una de varias opciones de códigos. Esto era un buen compromiso porque daba casi la misma comodidad ortogonal como una verdadera máquina y, sin embargo, también dio a las CPU de los diseñadores la libertad para llenar en el código de la tabla. El tamaño mínimo de instrucción era enorme para su día a los 16 bits. Además, muchas instrucciones y modos de abordar las palabras extra añadido en la parte posterior de direcciones, de modo más bits de dirección, etc. Muchos creían que los diseñadores de la arquitectura M68000 ha compacto código de su costo, especialmente cuando se produce por los compiladores. Esta creencia en el código más compacto conducido a muchas de sus victorias de diseño, y gran parte de su longevidad como una arquitectura. La mayoría de los diseñadores de sistemas embebidos son muy conscientes de los costos de la memoria. Esta creencia (o característica, según el diseñador) siguió haciendo victorias para el diseño conjunto de instrucciones (con actualización de CPU) hasta la arquitectura ARM presentó comprimido pulgar op-códigos que son más compactos. Niveles de privilegio La CPU, y más tarde toda la familia, aplicado exactamente dos niveles de privilegio. Modo de usuario da acceso a todo, excepto el control del nivel de la interrupción. Supervisor privilegio dado acceso a todo. Siempre se convirtió en una interrupción de supervisión. El supervisor poco se almacena en el registro de estado, y visible para programas de usuario. Una verdadera ventaja de este sistema es que el supervisor tiene un nivel puntero de pila. Esto permite una multitarea sistema para que utilice las pilas muy pequeñas para las tareas, porque los diseñadores no tienen que asignar la memoria necesaria para mantener la pila de marcos de un máximo de pila de las interrupciones. Interrupciones La CPU reconoce 8 niveles de interrupción. Los niveles de 0 a 7 fueron estrictamente prioridad. Es decir, un mayor de número podría interrumpir siempre interrumpir una menor interrupción numerada. En el registro de estado, un lugar privilegiado a una instrucción permite establecer el nivel mínimo actual de interrupción, el bloqueo de las interrupciones de menor prioridad. Nivel 7 no era maskable. Nivel 0 podría ser interrumpido por cualquier nivel superior. El nivel se almacena en el registro de estado, y fue visible para el usuario a nivel de programas. La "excepción de mesa" (vector de interrupción direcciones) se fijó en las direcciones 0 a 1023, que permite 256 32-bits vectores. El primer vector es la dirección a partir de pila, y el segundo fue el código de la dirección. Vectores 3 ... 15 eran empleados para informar de varios errores: error de autobús, dirección de error, instrucción ilegal, división cero, CH1 y CHK2 vector, violación de privilegio, y algunas reservados vectores que se convirtió en la línea 1010 del emulador de la partida 1111 emulador, y el hardware de interrupción. 24 vector empezó la verdadera interrumpe: interrumpir falsas (es decir, que no fue debidamente sacudido a mano), y el nivel 1. Nivel 7 autovectors, entonces los 15 TRAMPA vectores, a continuación, algunos vectores más reservados y, a continuación, el usuario define vectores. Controlador de la interrupción fue una de CI, el 68901. Este chip realiza una danza bastante complicado en el autobús a las siete traducir desplegable interrumpir vector interrupciones en las líneas (nivel 1 a 7). El 68901 también proporcionó una base UART y (si la memoria no) un periódico interrumpir temporizador. El Motorola 68901 tiene una serie de graves defectos, como la posibilidad de perder la más alta prioridad en caso de interrupción y el reloj de interrupción que ocurrió en algunos otros de cada ventana. El Mostek parte fue superior. El cuadro se fija excepción screamingly molesto para los diseñadores de hardware. Uno quiere una ROM de arranque, pero luego una vez que el sistema operativo está, se quiere instalar vectores. Una gran cantidad de esfuerzos en eludir la fija vectores, ya sea a través de trampolines (dirigida a los cuadros de RAM) en ROM o a través de bancos de memoria conmutable. Otro problema es el "privilegio" la lógica. Los diseñadores habían previsto que tengan una mínima, pero suficiente, de dos niveles de seguridad del sistema de apoyo a algo así como un UNIX núcleo. Esto limitaría la capacidad del usuario para acceder a los programas de hardware y las interrupciones. El diseño había agujeros de seguridad, que se fija en los últimos modelos de procesador. El 68000 también fue incapaz de volver correctamente de una excepción en su defecto un acceso a memoria, una característica fundamental para permitir cierta memoria virtual. Ilimitado para simular memoria RAM, se quiere interrumpir cuando una falla de memoria de acceso y, a continuación, la interrupción de la rutina asignará un bloque de memoria RAM real y leer una hoja de datos en el disco en ella. Varias empresas tuvieron éxito en la toma de 68000 basado en Unix de trabajo con la memoria virtual que trabajó, mediante el uso de dos chips de 68.000 ejecuten en paralelo en diferentes etapas relojes. Cuando el "líder" 68000 se encontró con una mala memoria de acceso, hardware adicional que interrumpir el "principal" 68000 para evitar que también se enfrentan a la mala memoria de acceso. Esta interrupción de la rutina de manejar la memoria virtual y reinicie funciones la de "vanguardia" 68000 en el estado correcto para continuar el funcionamiento sincronizado correctamente cuando el "principal" 68000 de regresar de la interrupción. Obviamente este es un caro, complicado, incómodo y muy técnica, y actualizado a los 68.010 tan pronto como sea posible. Un problema más sutil es que el 68000 no puede ejecutar fácilmente una imagen virtual de sí mismo sin la simulación de un gran número de instrucciones. Este problema persiste en muchas versiones modernas de la arquitectura, que rara vez se utiliza en estas aplicaciones. Esta falta causado las últimas versiones de los Intel 80386 para ganar en los diseños de control de aviónica, donde la fiabilidad del software se ha logrado mediante la ejecución de software de máquinas virtuales. En la próxima revisión, el 68010, la mayoría de estos problemas se habían fijado. Conjunto de instrucciones detalles Modos de abordar la norma fueron las siguientes: Registro directo o registro de datos, por ejemplo, "D0" o dirección de registro, por ejemplo, "A6" Registro indirecto o Simple dirección, por ejemplo, (A0) o Dirección de post-incremento, por ejemplo, (A0) + o Dirección con pre-decremento, por ejemplo, - (A0) Con una dirección de 16-bit firmado compensar, por ejemplo, 16 (A0) o Tenga en cuenta que el incremento o decremento tamaño depende de la solicitud de operandos: leer un byte de instrucción incrementa la dirección antes del 1 de registro, lea una palabra por 2, y un largo leer 4. Registro indirecta con un índice o De 8-bit firmado compensar, por ejemplo, 8 (A0, D0) o 8 (A0, A1) PC (programa contra) en relación con el desplazamiento o De 16-bit firmado compensar, por ejemplo, 16 (PC). Este modo es muy útil. o De 8-bit firmado compensar con índice, por ejemplo, 8 (PC, D2) Absoluta de memoria o O bien un número, por ejemplo, "$ 4000", un nombre simbólico o traducido por el ensamblador o La mayoría de los ensambladores 68000 utilizado la "$" símbolo de la hexadecimal, en lugar de "0x". Modo inmediato o o Almacenados en la instrucción, por ejemplo, "# 400". Más: acceso al registro de la situación, y, en modelos posteriores, otros registros especiales. La mayoría de instrucciones punto letras sufijos, lo que permite que se produzcan operaciones de octetos de 8 bits (. "B"), palabras de 16 bits (. "W"), y largos de 32 bits (. "L"). La mayoría de las instrucciones son diádicas, es decir, la operación tiene un origen y un destino, el destino y se cambia. Instrucciones notables fueron: Aritméticas: ADD, SUB, Mulu (no firmado multiplicar), MULS (firmado multiplicar), DIVU, DIVS, NEG (negación aditivo), y la CP / RP (una especie de restar que el estado bits, pero no almacenar el resultado) Aritmética decimal codificado binario: ABCD, y SBCD Lógica: EOR (o exclusivo), AND, NOT (no lógico) Desplazamiento: (lógico, es decir, el derecho de poner a cero los cambios en los bits más significativos) LSL, LSR, (aritmética de los cambios, es decir, ampliar el registro más significativo) ASR, ASL (Rota a través de ampliar y no:) ROXL, ROXR, ROL , ROR Manipulación de bits en la memoria: BSET (a 1), BCLR (a 0), y BTST (establecer el cero bits) Multiprocesadores de control: TAS, prueba y establecer, indivisibles realiza una operación de autobuses, semáforos que permita que se utilizarán para sincronizar varios procesadores que comparten una única memoria Flujo de control: JMP (salto), JSR (salto a la subrutina), BSR (en relación a la dirección de salto subrutina), RTS (retorno de subrutina), RTE (retorno de excepción, es decir, una interrupción), TRAMPA (desencadenar una excepción similar de software interrumpir a los programas informáticos), (CHK una excepción condicional de software) Decisión: CCO (una sucursal en el que la "c" se especifica uno de los 16 pruebas de la condición de los códigos de registro de la situación: la igualdad, mayor que, menor que, Cary, y la mayoría de las combinaciones lógicas y de inversiones, disponibles en el registro de estado). TI-89 La TI-89 y la TI-89 Titanium son calculadoras gráficas, fabricadas por la compañía Texas Instruments. La gran mayoría de los usuarios de la TI-89 son estudiantes, que aprovechan la gran capacidad de su sistema algebraico computacional integrado. Es considerada la más poderosa y funcional de las calculadoras permitidas en las competiciones matemáticas internacionales. La TI-89 es una calculadora gráfica-científica, desarrollada por Texas Instruments (TI) en 1998. Esta calculadora presenta una resolución gráfica de 160×100 pixeles en una pantalla LCD, la TI-89 opera con un avanzado software matemático y Sistema algebraico computacional CAS de TI. Su poder y capacidad sólo fue superada por su pariente más grande, y ligeramente más potente; la Voyage 200. Alrededor de julio de 2004, la TI89 original fue descontinuada, y remplazada por la TI-89 Titanium. En Julio de 2007 su CAS evoluciono en una nueva familia de calculadoras la TI-Nspire y la TI-Nspire CAS. El CAS de la TI-89 es compatible con el TINspire_CAS. Versiones de sistemas operativos Los primeros modelos de la calculadora se distribuían con el sistema operativo (confirmar), modelo que es incompatible a nivel de hardware con el reloj. Algunos modelos se distribuyeron con la versión del sistema operativo 2.00, las cuales soportaban reloj. La última versión lanzada por la casa matriz fabricante del producto fue la versión 2.09 que trae entorno gráfico. Operaciones y lenguaje de la calculadora El entorno de la calculadora permite realizar numerosas operaciones matemáticas. El lenguaje y ventanas de aplicación son instintivos y tiene similitud a entornos gráficos de sistemas operativos computacionales. APPS disponibles para la calculadora Los APPS son aplicaciones para cálculos determinados en distintas áreas del conocimiento. Por ejemplo uno de los APPS incluidos con la calculadora es el FINANCE. Es una aplicación para cálculo de matemáticas financieras. Permite calcular valores presentes y futuros así como anualidades. TI-89 Titanium La TI-89 Titanium fue lanzada a mediados de 2004, con el propósito de sustituir a la popular TI-89 original. Las solicitadas mejoras de la TI-89 Titanium incluyen el cuadruplicado de la memoria flash disponible. Esta calculadora es esencialmente una Voyage 200, a excepción de que, a diferencia de la última, no tiene un teclado QWERTY integrado. La TI-89 Titanium también tiene un puerto mini-USB, para conectarla a otra TI-89 o a un computador (para cargarle programas, o para actualizarle el sistema operativo. La TI-89 Titanium además dispone de algunas aplicaciones preinstaladas; como por ejemplo, hojas de cálculo. Podemos mencionar también la evolución de la carcasa con respecto a la TI-89 original, siendo esta carcasa similar a la de la calculadora modelo TI-84 Plus. La TI-89 Titanium permite calcular integrales sencillas y complejas utilizando el método de integración de la regla del rectángulo o del punto medio.