Frecuencia de trabajo de 1 y 2 Mhz; Ciclo de máquina de 1us o 500 ns.

Documentos relacionados
Señales de interfase del Z80

B) Arquitectura generalizada de una computadora

TEMA 4 ESTRUCTURA VON-NEUMANN DEL COMPUTADOR DIGITAL

FUNCIONAMIENTO DE LA UNIDAD DE CONTROL DEL PROCESADOR

Arquitectura Interna del 8088

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

TEMA 1: Conceptos generales. 1.- Representa los primeros 16 números decimales (del 0 al 15) usando codificación binaria y hexadecimal.

Arquitectura (Procesador familia 80 x 86 )

Primer Microprocesador: 4004, Intel, año bits de ancho de palabra de datos Intel 8 bits dir. 64K Z80

Prácticas con el microprocesador Z80

Tema: Microprocesadores

Ejercicios del tema 4. El procesador

1.2.- EL MICROPROCESADOR.

Fecha de Introducción. Velocidad de reloj. Anchura del bus. Número de transistores. (microns) Memoria direccionable.

Contenidos. Arquitectura de ordenadores (fundamentos teóricos) Elementos de un ordenador. Periféricos

Estructura y Tecnología de Computadores II (Gestión y Sistemas)

Ejercicios del tema 4. El procesador

UNIDAD ARITMÉ M T É ICO-L - Ó L GICA 1

El nivel ISA (II)! Conjunto de Instrucciones

Fundamentos de los Computadores Grado en Ingeniería Informática

INDICE Capitulo 1. Álgebra de variables lógicas Capitulo 2. Funciones lógicas

9. Lenguaje ensamblador

Operaciones lógicas y repetición

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES I. Tema X Modos de Direccionamientos

TEMA III: OPERACIONES CON LOS DATOS

ESTRUCTURA. Estructura básica de un computador ESTRUCTURA BÁSICA DE UN COMPUTADOR RELOJ. Unidad de control CPU ULA. Onda cuadrada RELOJ

ORGANIZACIÓN DEL MICROCOMPUTADOR

Bloques del programa de la asignatura

INSTRUCCIONES. Las instrucciones del microcontrolador Z8 PLUS se pueden clasificar en grupos de acuerdo a su función como:

PROBLEMAS TEMA 1: Estructuras de interconexión de un computador

Lenguajes de Interfaz

INDICE 1. Conceptos Introductorias 2. Sistemas Numéricos y Códigos 3. Compuertas Lógicas y Álgebra Booleana 4. Circuitos Lógicos Combinatorios

Registros. Registro de Corrimiento Básico

Práctica de Problemas N o 3

Formato. Microcontroladores DURACIÓN. Revisó. Aprobó. Coordinador. r de la Carreraa. Gestión de la Calidad. Maestro. Autorizó PLAN DE ESTUDIO

Microprocesador. Introducción. Instituto Sagrado Corazón de Jesús

TEMA VI DISEÑO DEL PROCESADOR

APENDICE A Microcontrolador de 8 bits MC68HC11F1

Tema 3. Operaciones aritméticas y lógicas

Elementos constituyentes de la ejecución de un programa

Arquitectura de Computadores II Clase #3

Contenidos: Definiciones:

Capítulo 3. Microcontroladores 3.1 Definiciones

Tema 2. Diseño del repertorio de instrucciones

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA

INDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos

BIBLIOGRAFIA TEORIA DE CIRCUITOSY DISPOSOTIVOS BOYLESTAD ELECTRONICA DIGITAL TOKHEIM SISTEMAS DIGITALES TOCCI

LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION

Repaso Registros internos Z80 1/37

El Diseño de un Lenguaje Máquina

Procesadores ISA Macroarquitecura - Interfaces

Unidad 5 Unidad central de proceso

Introducción al simulador

LABORATORIO DE COMPUTADORAS

BOLETIN 7: Subsistemas secuenciales

CICLOS DEL PROCESADOR

COMPUTADORA. Introducción Las computadoras se usan en diversas aplicaciones

Ensamblador. Introducción. Dpto. Física y Arquitectura de Computadores. Universidad Miguel Hernandez

EJECUCIÓN DE INSTRUCCIONES

Conceptos de Arquitectura de Computadoras Curso 2015

Repaso concepto de programa

DIRECCIONAMIENTO DE OPERANDOS Para realizar una determinada tarea (Instrucción) el computador debe operar con datos almacenados en memoria Las Instruc

ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR

DISEÑO DEL PROCESADOR

Práctica 1 ALU de 1 BIT

Guía práctica lenguaje ensamblador

Lógica cableada: Lógica programada:

Estructura y tecnología de computadores - prácticas en ensamblador

Sistemas Informáticos

SISTEMAS OPERATIVOS Arquitectura de computadores

TEMA 5 JUEGO DE INSTRUCCIONES DE UN COMPUTADOR

Arquitectura de Computadoras. Clase 2 Interrupciones

Unidad 2. Organización y diseño básico de computadoras

Reset e interrupciones

Relación de Problemas I

Programación de los Microcontroladores 8052/8051 (I)

Curso sobre Microcontroladores Familia HC9S08 de Freescale

TEMA 5.3 SISTEMAS DIGITALES

Introducción a los microcontroladores. Decanato de Postgrado Mayo de 2011

PRACTICA N0.2. Prueba de operación del microprocesador Z80

INTERIOR DEL PROCESADOR

1 La figura 1 muestra la estructura de la CPU de un computador con palabras y direcciones de 32 bits, cuya

Tema 3: Operaciones aritméticas y lógicas

Estructura de Computadores. Problemas de Instrucciones y Direccionamientos

Memorias de Acceso Secuencial

Bibliografía básica de referencia: Fundamentos de Informática para Ingeniería Industrial, Fernando Díaz del Río et al.

Tema: MAPAS DE MEMORIA: LÓGICA DE SELECCIÓN, GESTIÓN Y ORDENACIÓN DE LA MEMORIA. J. Luis Lázaro, J. Jesús García "MAPA DE MEMORIA" 0

EVOLUCIÓN HISTÓRICA DE LOS µp

ORGANIZACIÓN DE LA MEMORIA

Fundamentos de TIC s. Universidad Nacional de la Matanza TRABAJO PRACTICO NRO. 4 INTRODUCCIÓN AL HARDWARE DE LOS SISTEMAS DE COMPUTACIÓN

Examen de Arquitectura de Computadores 15 de septiembre de 2004

Práctica 3 - Arquitectura del CPU

Código: Titulación: ING. TÉCNICO IND. EN ELECTRÓNICA INDUSTRIAL Curso: 2

ESTRUCTURA DE INTERCONEXIÓN DE UN COMPUTADOR

Memoria y Buses. Organización de Computadoras Universidad Nacional de Quilmes

instrucción(ir) y CP se incrementa en 1.

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES II BOLETÍN 4 MICROPROCESADOR MC 68000

Registros de desplazamiento

Transcripción:

El Microprocesador 6502 corresponde a la serie 6500, que forma una familia de microprocesadores compuesta por diez modelos diferentes, fabricados en tecnología NMOS y procesan palabras de 8 bits. El 6502, junto con el 6512, dispone de 40 patilas,mientras que los demás miembros cuentan con 28. Desde 1983 se encuentra disponible una versión del 6502 en tecnología CMOS,con un consumo má reducido y un juego de instrucciones más amplio. La familia de microprocesadores fue desarrollada en 1975 por un grupo de ingenieros que formaron una nueva compañia llamada Mos Technology. Actualmente esta familia es fabricada Rockwel International y Sinertek, constituyendo éste microprocesador de 8 bits el alma de muchos ordenadores personales (Apple, Commodore, Atari...). Las caracteristicas más notables son: Alimentación única de +5 voltios. Procesamiento paralelo de palabras o datos de 8 bits. Juego de 56 instrucciones. 13 modos de direccionamiento para las instrucciones. Aritmética binaria y decimal. Stack Pointer programable de 8 bits. Interrupciones mascarables y no mascarables. Generador interno de señales de reloj. Capacidad de direccionamiento de memoria de hasta 64K. Frecuencia de trabajo de 1 y 2 Mhz; Ciclo de máquina de 1us o 500 ns. La instruccion más rápida es de dos ciclos de máquina y la más lenta es de siete. Pueden usarse con cualquier tipo y velocidad de memoria. La estabilización del reloj interno puede efectuarse mediante cristal o por una sencilla red R C. La arquitectura interna del 6502 es la siguiente: 1

Decodificador de instrucciones y secuenciador. El decodificador recibe el código de 8 bits de la instruccion en curso desde el registro de instrucciones y dotos y lo decodifica. El sucuenciador genera una serie de señales de control encaminadas a la ejecución de la instrucción. Acumulador Es un registro de 8 bits, es el registro principal de trabajo, proporciona a la ALU uno de los operandos y almacena e resultado de la operación. ALU (Aritmetic And Logic Unit) Es el elemento principal de un microprocesador, es un conjunto de circuitos combinacionales en os que la información disponible a la salida es función de la entrada o de la combinación de las entradas. Posee dos entradas (E1 y E2)y una salida S. Es el circuito que combina los datos según un determinado programa. Como su nombre indica, efectua tanto operaciones aritméticas como operaciones lógicas. Las operaciones que realiza son: La suma. La sustracción. El desplazamiento hacia la derecha. El desplazamiento hacia la izquierda. La comparación. 2

La incrementación y la decrementación. Y las siguientes operaciones lógicas: La AND lógica. La OR esclusiva. La OR lógica. La operación de la multiplicación se realiza mediante desplazamientos hacia la derecha y sumas, la división se realiza mediante desplazamiento a a izquierda y restas. La ALU posee otra salida para activar los Flags del registro de estados. Las entradas proceden de registros temporales, el resultado es almacenado en un registro temporal, los indicadores se almacenan en el registro de estados. Contador de programa El contador ordinal o contador de pasos de programa, es un elemento que una vez proporcionada la primera instrucción, basta que sea incrementado en una unidad para que proporcione la dirección de la segunda instrucción. Es un contador creciente o acumulativo formado por tantos Flip Flops como bits contenga la palabra de direccionamiento. Está sincronizado con una base de tiempo y avanza en uno cada vez que una instrucción acaba de ejecutarse. Es suficiente conectar el contador a las lineas de dirección de la memoria para que se seleccione sucesivamente cada casillla de memoria. Registros índices X e Y Sirven para levar a cabo un modo de direccionado, denominado indexado con el que la ocaización del operando de una instrucción se busca en la memoria añadiendo el contenido de estos registros a la dirección especificada en la instrucción. Son de 8 bits cada uno. Registro de estados 3

Se trata de un registro de 8 bits, 7 de los cuales son significativos y sirven para señalar una situación provocada en la ejecución de la instrucción que se acaba de realizar. La estructura es la siguiente: Los bits del registro de estados, según el nivel lógico al que se encuentren, significan lo siguiente: N Señalización o flag de signo:cuando se utiliza una aritmetica con signo, este viene indicado por el 8 bit. eel bit N representa el signo del resultado de la operación realizada (1=negativo; 0=positivo). Su interpretación tiene mucha importancia para el tratamiento de los resultados. V Señalización o flag de sobrepasamiento (overflow):cuando se utiliza el 8 bit como signo, conviene sabersi se produce acarreo en el 7 (el de más peso), porque esta situación afecta a aquel y puede originar resultados erroneos. B Señalización o flag de Break: esta bandera se pone a 1 cuando la interrupción mascarable admitida por la CPU ha sido provocada por software, mediante la instrucción BRK. si la interrupción ha sido provocada por hardware(activando desde el exterior la linea IRQ), el bit B presenta un nivel 0. D Señalización o flag para el tratamiento aritmetico: puesto a 1 la ALU realiza las operaciones en decimal o BCD, puesto a 0 realiza las operaciones en binario o hexadecimal. I Señalización o flag de enmascaramiento de interrupciones:la petición de interrupción IRQ s{olo se admite y se ejecuta cuando el flag I esta a 0, poner el flag I a 1 supone la no aceptación de la petición de interrupción IRQ. Z Señalización o flag de cero:se pone en 1 cuando el resutado de la operación anterior ha sido cero. C Señalización o flag de acarreo: si no se emplea el bit de signo, C pasa a 1 cuando hay un acarreo en el 8 bit, es decir, cuando el valor de la operación en curso sobrepasa el valor FF en binario o 99 en decimal. Stack pointer Se trata de un contador programable que direcciona la pagina 1 de la memoriacomo si se tratase de una pila LIFO(ultimo en entrar, primero en salir). Para simplificar la localización de las posiciones de memoria, se la estructura como un libro, en forma de páginas, cada una de las cuales consta de varias lineas o posiciones. Así, una memoria de 64K posiciones, se puede dividir en 256 páginas de 256 lineas cada una. De los 16 bits del bus de direcciones los 8 de más peso apuntan a la página y los 8 de menor peso a la posicion.. Los 8 bits del stack direccionan las 256 posiciones de la página 1, desde la 25610 =010016 hasta la 51110 =01FF16. 4

a misión del Stack es salvar en su zona de memoria propia, los contenidos de los registros importantes de a CPU, para poderlos recuperar cuando sea preciso. Casos tipicos de la utillización de Stack son los saltos a subrrutinas o interrupciones, en los que la salida del programa principal exige el almacenamiento de la situación de partida, para regresar de nuevo a ella cuando finalicen aquellas. Diagrama de conexionado: El 6502 tiene 40 patillas de las cuales: 16 son del bus de direcciones 8 del bus de datos 3 de las interrupciones(nmi, IRQ y RES) 3 de las señales de reloj 3 de la aimentación(+5v y dos tierras) 1 de S.O.(Activación flag V) 1 de Ready(RDY) 1 de R/W 1 de Sincronismo(SYNC) 3 no conectadas Bus de direcciones Comprende las 16 lineas del bus de direcciones, de caracter unidireccional.estas lineas funcionan con niveles TTL y, a la frecuencia de 1 Mhz, la direccion es válida durante 300ns de la fase 1 del reloj.en estos terminales siempre hay una dirección válida. 5

Bus de datos Consta de 8 líneas bidireccionales, por las que se transfieren los datos y las instrucciones, en sus salidas hay buffers ampificadores triestados capaces de soportar una carga estándar TTl y 130pF. Los buffers permanecen en estado flotante, a excepción del tiempo en que se transmiten datos. A la frecuencia de 1 Mhz, los datos permanecen estables en el bus 100ns antes de finalizar la fase 2 del reloj. Señales de reoj El 6502 dispone internamente de un generador de señalles de reoj y sincronismo. Para la estabilización correcta de su frecuencia requiere una señal del exterior. Dicha señal estabilizadora puede generarse mediante un cristal si se necesita un control muy estricto de los tiempos, o bien con una red R C en sistemas más sencilos. Requiere una seña exterior de una frecuencia de 1Mhz. Las señales 1 y 2 determinan los tiempos de activación de los buses en los ciclos de lectura y escritura. Lineas de interrupción Dispone de 3 lineas por las que, desde el exterior, es posible provocar diferentes tipos de interrupciones, siendo activas a nivel bajo(irq,nmi y RES). La enterada RES(Reset), se utiliza para inicializar el microprocesador, saltando la ejecución del programa a una rutina cuya dirección de comienzo se encuentrasituada en las posiciones de memoria $FFFC y $FFFD,obteniendo respectivamente el Byte bajo y el alto. La NMI, interrupción no emmascarable, permite interrumpir al microprocesador independientemente del estado del bit I del registro de estado.provoca e salto de la ejecución de programa a la dirección contenida en las posiciones $FFFA y $FFFB, salvando antes el contador de programa y la palabra en e Stack. La IRQ, petición de interrupción, funciona como la MNI pero dependiendo del estado del bit I del registro de estados para poder ser aceptada.el vector de interrupción es $FFFE y $FFFF. Linea S.O. Esta linea de nivel TTL sirve para la activación del fag de sobrepasamiento desde el exterior Linea RDY(Ready) Sirve para adaptar a la CPU a la menor velocidad de las memorias, y al acceso directo a memoria(dma). Detiene a la CPU en todos os ciclos, excepto en los de escritura, y deja en estado flotante a los buses de dirección y datos. Linea de lectura/escritura (R/W) Sólo pasa a nivel bajo cuando se realiza una escritura de datos, ya sea en la memoria o en los perifericos exteriores, si no, está a nivel alto para leer datos. Linea de sincronismo(sync) Es una linea de salida de la CPU que identifica, en el exterior, los ciclos en que se realiza la busqueda de un código de operación (OP). Pasa a nivel alto durante la fase 1 de la busqueda del código de operación de una instrucción. 6

Modos de direccionamiento Direccionamiento implícito: emplea un sólo byte para referirse a uno de los registros de uso interno del 6502. Direccionamiento inmediato: utiliza dos byte, el primero para el código de operación y el segundo para el dato. Direccionamiento absoluto: utiliza tres bytes, el primero contiene el código de operación, y los dos restantesla dirección de memoria dónde se encuentra el dato. Direccionamiento indirecto: se trata generalmente de un saltoincondicional a una dirección determinada y e dato buscado corresponde con otra dirección, se utiiza bastante con subrrutinas. Direccionamiento absoluto indexado: el operando incluido en la instrucción constituye a dirección base, a esta dirección hay que sumar el contenido del registro índice X o Y, según se indique en la instrucción, la suma constituye la dirección real del dato que vamos a utilizar. Direccionamiento página cero indexado: idéntico al anterior pero suponiendo que la dirección base pertenece a página cero. Direccionamiento Pre indexado: opera unicamente sobre e registro X, consta de dos bytes, uno corresponde al código de operación y el otro a la dirección base situada en página cero. Esta dirección se suma al contenido del registro X constituye la dirección intermedia dónde se encuentra un dato, el resto se encuentra en la dirección siguiente. Direccionamiento post indexado: opera unicamente sobre el registro Y, consta de dos bytes, la dirección base corresponde a página cero, donde el dato comprendido en esta posición de memoria constituye el byte bajo, que junto con el byte alto, contenido en la siguiente posición de memoria, forman una dirección intermedia a la que hay que añadir el contenido del registro Y para obtener la dirección real donde se encuentra el dato que necesitamos. Direccionamiento relativo: es utilizado unicamente en las instrucciones de salto condicional, el operando de un sólo byte contiene e valor del desplazamiento expresado en complemento a 2. La dirección real se calcula sumando el desplazamiento al contador de programa una vez actualizado. Sólo se pueden dar 127 pasos adelante y 128 pasos atrás. Direccionamiento en el acumulador: corresponde a modo implicitoque utiliza un sólo byte, para las funciones del acumulador. Direccionamiento indirecto absouto indexado: sólo afecta a la instrucción de salto incondicional, el contenido de los bytes segundo y terceros se suma al registro X, e resultado de 16 bits es la dirección de memoria que contiene a dirección efectiva. Direccionamiento indirecto: aparece sólo en las versiones de CMOS para instrucciones distintas de JMP y se ha descrito junto con el indirecto. MICROPROCESADORES 7