Microprocesador 6800

Revisión del 13:26 25 nov 2011 de Wilmer (discusión | contribuciones) (Instrucciones)
Microprocesador 6800
Información sobre la plantilla
Encapsulado 6800.jpg
Fecha de invención:1975
Fabricantes:Motorola

Microprocesador 6800. El MC6800 (6800) es un microprocesador fabricado por Motorola lanzado al mercado en 1975, poco después del Intel 8080. El nombre está dado de contener aproximadamente 6800 transistores y cuenta con un conjunto de 78 instrucciones.

Antecedentes

Motorola desde sus inicios, ha desarrollado la familia 6800 con chips cada vez mas nuevos y avanzados. Otros microprocesadores de la serie 6800 son los 6801, 6802, 6805 y los microprocesadores 6809. La 6801 y 6802 utilizan el mismo conjunto de instrucciones. El 6802 tiene el mismo procesador que la MPU 6800. El 6809 es uno de los más avanzado de los procesadores de ocho bits en la serie 6800. Tiene muchas instrucciones nuevas y nuevos registros, entre las nuevas instrucciones están varias operaciones importantes de 16 bits.

Otros dispositivos

Motorola también produce otros dispositivos especiales que son compatibles con el microprocesador 6800. Éstos incluyen el ACIA 6850 de Motorola adaptador de interfaz para comunicaciones asincronas (Asynchronous Communications Interface Adapter) para la transmisión de datos en serie en forma asincrona.

La serie 6870 de chips de reloj de Motorola puede ser utilizada para proporcionar pulsos de reloj de dos fases requeridas por el 6800. El controlador de acceso de memoria directa 6444 de Motorola preporciona a los sistemas basados en 6800 un soporte lógico de cuatro canales de acceso directo a memoria. Otros dispositivos de soporte en la familia incluyen el control 6845 CRT y el control lador de disco flexible 6843.

Interfaz

Esquema en Bloque 6800.JPG

La interfaz entre el 6800 y los perifericos de entrada y salida se realiza con el adaptador de interfaz periféricos (PIA) 6820, que contiene cuatro líneas de control entre él y los dispositivos periféricos, además tiene registros de internos que permiten programarlo y le proporcionan capacidad de almacenamiento temporal para simplificar la transferencia de datos.

Características

Generalmente es utilizado dentro de un sistema de microcomputadora. Este microprocesador requiere un suministro de energía eléctrica de + 5 V y un reloj externo de dos fases, en su extructura interna tiene 16 líneas de dirección unidireccionales y ocho líneas de datos bidireccionaies.

Se fabricaba en un encapsulado DIP de 40 patas. Necesita un reloj de dos fases y una alimentación única de 5V, en contraste con el Microprocesador 8080 de Intel, que necesitaba tres tensiones.

Señales de entrada/salida compatibles con dispositivos fabricados con la tecnología TTL. Tiempo para la realización de instrucciones comprendido entre 2 y 12 microsegundos, trabaja a 1MHz.

Otras variantes

Partiendo del 6800 se crearon varios procesadores derivados, siendo uno de los más potentes el Motorola 6809, que fue usado en el sistema de videojuego Vectrex y en el ordenador Tandy TRS-80, entre otros. También se han producido varios microcontroladores basados en el 6800, como el Motorola 6805, 6807, 6808, 68HC11 y el 68HC12.

El 6801 es un microcontrolador que incluye una C.P.U. 6800 mejorada, 2K de ROM, 128 bytes de RAM, una instrucción de multiplicación por hardware, y un puerto serie embebido.

El MC6803 es un MC6801 sin ROM, y se pueden encontrar en Internet varios proyectos de robots y sistemas basados en el. Se utilizó además como CPU de varios ordenadores como el TRS-80 MC-10 y el Matra Alice.

El diagrama de patas y funciones

Motorla 6800.jpg
  • Tierra (Vss) (Patas 1 y 21)
  • Conectados a la parte negativa de la corriente electrica de 5 Vcc
  • Alto (HALT) (Pata 2)

Cuando se activa la entrada HALT, el 6800 entra en la modalidad de ALTO, en esta modalidad las lineas de tres estados entran en su estado de alta impedancia y el procesador se detiene, esta entrada se puede utilizar para ir de paso en paso a través de un programa de depuración, muchas veces esta entrada esta inhabilitada al conectarla a + 5 V

  • Reloj (Ø 1 y Ø 2 (Patas 3 y 37)

Estas entradas reciben señales de reloj

  • Línea de Requerimiento de Interrupciones (IRQ) (Pata 4)

Cuando está activada la entrada IRQ por medio de un BAJO, el microprocesador 6800 completará la instrucción actual, introducirá todos los registros que se encuentran en la fila, colocará la bandera I y brincará hacia la rutina de servicio de interrupciones apuntada por las posiciones de memoria FFF8H y FFF9H. La interrupción IRQ puede ser enmascarada.

  • Dirección válida de memoria (VMA) (Pata 5)

Cuando la salida VMA se convierte en ALTO, señala a otros dispositivos del sistema que la dirección en el bus de dirección es válida.

  • Interrupción no enmascaradle (NMI) (Pata 6)

Cuando la entrada NMI se convierte en BAJO, la respuesta del microprocesador 6800 es semejante a su respuesta cuando la IRQ se convierte en BAJO. La interrupción NMI no es enmascarable y su dirección de vector se encuentra en las posiciones de memoria FFFCH y FFFDH. Los contenidos de FFF-CH y FFFDH apuntan entonces al inicio de la rutina de servicio de interrupciones.

  • Bus disponible (BA) (Pata 7)

Cuando la salida BA se vuelve ALTO, le señala a los dispositivos externos que el microprocesador 6800 ha detenido la ejecución de las instrucciones. La MPU 6800 detiene la ejecución de las instrucciones porque la instrucción de espera (WAI) o la entrada de hardware de HALT ha aparecido. La línea de control BA proporciona un modo de indicar a los dispositivos externos que los buses de datos y la dirección de la MPU 6800 están en tres estados y pueden servir para cosas tales como operaciones de acceso a memoria directa.

  • Energía eléctrica (Vcc) (Pata 8)

El lado positivo de la energía eléctrica de 5 V c.c. se conecta a la pata 8 del circuito integrado del microprocesador 6800.

  • Líneas de dirección (A0-A15) (Patas 10-20, 22-25)

La 16 salidas de dirección de la MPU 6800 (A0-A15) están conectadas con el bus de direcciones del sistema. Estas líneas se utilizan para direccionar dispositivos tales como el ROM, e! RAM y los dispositivos de E/S.

  • Línea de datos (D0-D7) (Patas 26-33)

Las ocho patas de datos de la MPU 6800 (D0-D7) se conectan con el bus de datos bidireccional del sistema. Estas líneas del bus de datos son para la transferencia de datos desde y hacia la memoria o dispositivos de E/S.

  • Control de lectura/escritura (R/W) (Pata 34)

La salida R/W es una línea de control que señala a un dispositivo externo (RAM, ROM, PIA) cuando la MPU 6800 está leyendo o escribiendo. Una salida de ALTO de la línea R/W señala una lectura, mientras que una salida BAJO señala que se está llevando a cabo una operación de escritura.

  • Habilitación del bus de datos (DBE) (Pata 36)

La entrada de DBE (habilitación del bus de datos) controla los manejadores del bus de datos del microprocesador 6800. Una entrada de ALTO en la pata DBE habilita las líneas de datos, mientras que una entrada BAJO inhabilitada o convierte a tres estados las líneas de datos. Debido a que las transferencias de datos hacia y desde la memoria y E/S ocurren durante el tiempo Ø 2 de reloj y mientras que este es ALTO, la pata DBE está muchas veces conectada a la línea Ø 2 del reloj.

  • Control de tres estados (TSC) (Pata 39)

Cuando la pata de entrada TSC es manejado a ALTO por medio de un dispositivo externo, todas las líneas de dirección y la de R/W serán convertidas a tres estados. La línea TSC es utilizada con configuraciones de acceso directo a la memoria (DMA), cuando no se utilice DMA, la pata TSC puede estar conectada a tierra.

  • Linea de restauración (RESET) (Pata 40)

Cuando esta pata se activa, el microprocesador coloca la bandera de I a 1 y brinca la rutina de servicios de interrupciones que se restaura o reinicia, esta entrada se utiliza por lo general para inicializar o restaurar el sistema.

Arquitectura

El 6800 tiene un bus de datos, con buffers de tres estados, que contienen 8 bits (D0-D7). Los números próximos a cada entrada o salidas son los números de la patilla. En el bus de direcciones con bufers de 16 bits (A0-A15). La MPU 6800 contiene un contador de programa de 16 bits, dos acumuladores de 8 bits (A y B) y un registro de códigos de condición de 8 bits. Las nueve señales de control. Son las señales de reinilización de interrupción no enmascarable, de continua/alto , de peticion de interrupcion, control de tres estados y habilitación del bus de datos y las salidas del bus disponibles, dirección de memoria valida y lectura escritura y entradas de reloj.

La sección de la unidad aritmética lógica (ALU) realiza las operaciones lógicas y aritméticas, mientras que el registro de códigos de condición asociado contiene las seis señalizadores. El registro de instrucción alimenta al decodificador de instrucciones al bloque de control. El decodificador de instrucciones dirige el control para generar las señales internas y externas, adecuadas, para completar la instrucción. Las líneas de control interno que coordinan la operación del microprocesador .

Registros

  • Contador de programa. Contiene la dirección de memoria donde se encuentra el código de la instrucción que se va a ejecutar.
  • Acumuladores A y B. Cada uno tiene 8 bits de capacidad. Todas las instrucciones pueden operar con los datos de los dos acumuladores.
  • Registro de direcciones. Constituido por 16 bits; la misión de este registro es contener la dirección de memoria que se va a enviar a través del bus de direcciones. Cuando se trata de la búsqueda de una instrucción se carga desde el contador de programa.
  • Registro puntero de pila. Es un registro de 16 bits, que se emplea para direccionar una zona del mapa de memoria, considerada como la pila. Su principal misión es salvar el contenido de los registros más significativos en la llamada a una subrutina o en el tratamiento de interrupciones.
  • Registro índice. Tiene 16 bits y se incrementa o decrementa con software. Se utiliza para implementar el modo de direccionamiento indexado.
  • Registro de Estado. Es un registro de 8 bits, seis de los cuales actúan como señalizadotes del estado de la CPU (flags) tras finalizar la ejecución de una instrucción.

Instrucciones

El microprocesador 6800 es utilizado en computadoras de programa almacenado. Las instrucciones del programa se almacena como bytes de 8 bitsen un área de almacenamiento conocida como memoria de programa. El 6800 utiliza instrucciones de 1, 2, y 3 bytes, el primer byte de la instrucción es el código de operación, el cual especifica una de las 197 instrucciones posibles que puede realizar.

El conjunto de instrucciones es fijado permanentemente en el diseño del 6800, las instrucciones se incluyen dentro de los siguientes grupos:

  • Instrucciones de acumulador y memoria
  • Instrucciones de registro de índice y apuntador de pila
  • Instrucciones de brinco y bifurcación
  • Instrucciones de registro de código y condición

Vea también

Microprocesadores

Fuentes