Anda di halaman 1dari 60

UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LA COSTA SUR DIVISIN DE DESARROLLO REGIONAL DEPARTAMENTO DE INGENIERAS

Ingeniero en Teleinformtica Tcnico Superior Universitario en Teleinformtica

ANTOLOGA

Lecturas de Apoyo de Arquitectura de Computadoras

Por:

M. I. E. Jorge Arturo Pelayo Lpez M. C. Karen Hernndez Rueda


Junio de 2009

ANTOLOGA Lecturas de Apoyo de Arquitectura de Computadoras

Ingeniero en Teleinformtica Tcnico Superior Universitario en Teleinformtica

Crditos: M. I. E. Jorge Arturo Pelayo Lpez M. C. Karen Hernndez Rueda

Junio de 2009

NDICE
Unidad 1: Introduccin a la estructura de computadoras........ 1 Introduccin..... 2 El modelo de von Neumann......... 4 El modelo de interconexin a travs de bus..... 5 La arquitectura Harvard... 7 Tipos de computadoras.... 8 Lenguajes, compiladores e interpretadores.. 10 Qu es un microcontrolador?.................................................................................. 12

Unidad 2: Introduccin al microprocesador Z80....... Arquitectura del microprocesador Z80. Programacin........ Mnemnicos..... Modos de direccionamiento.....

17 18 27 29 20

Unidad 3: Introduccin al microcontrolador ATtiny2313. Caractersticas del Arquitectura microcontrolador ATtiny2313.. Configuracin de los pines....... Diagrama de bloques........ Descripcin de los pines....... Memorias del microcontrolador ATtiny2313... El oscilador de cristal... El reloj externo. Auto programador del flash.. Corriente vs frecuencia. Mnemnicos del attiny2313. Caractersticas fsicas del chip. Referencias bibliogrficas......

40 41 43 44 45 46 48 49 50 51 52 54

55

PRLOGO
La presente antologa est dirigida a estudiantes que cursan la materia de Arquitectura de Computadoras, asignatura que se imparte en las carreras de Ingeniero en Teleinformtica y Tcnico Superior Universitario en Teleinformtica que se ofertan en el Centro Universitario de la Costa Sur. En la primera unidad se describe se describen las dos grandes arquitecturas de computadoras como lo son la de von Neumann y la arquitectura Harvard. Tambin se muestra una clasificacin de los tipos de computadoras existentes. As mismo, define al lenguaje de programacin, a los compiladores e interpretes. Por ultimo se describe al microcontrolador y la comparacin con el microprocesador. En la segunda se describe la arquitectura del microprocesador Z80. Tambin se describe la programacin y los mnemnicos as como los modos de direccionamiento para este microprocesador. En la tercera unidad se describe al microcontrolador ATtiny2313 de la familia Atmel. Se describen sus principales caractersticas, la configuracin de sus pines, el diagrama de bloques. Tambin se describen sus 120 mnemnicos para su programacin. Finalmente en la seccin de referencias bibliogrficas se muestran las fuentes de donde se obtuvo la informacin para la elaboracin de esta antologa.

ii

Antologa de Arquitectura de Computadoras

UNIDAD I
INTRODUCCIN A LA ESTRUCTURA DE COMPUTADORAS

RESUMEN
En esta unidad se describen las dos grandes arquitecturas de computadoras como lo son la de von Neumann y la arquitectura Harvard. Tambin se muestra una clasificacin de los tipos de computadoras existentes. As mismo, define al lenguaje de programacin, a los compiladores e interpretes. Por ultimo se describe al microcontrolador y la comparacin con el microprocesador.

1
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

INTRODUCCIN
Fuente: monografias.com, (2009). Arquitectura de las computadoras. Extrado el 17 de junio de 2009, desde http://www.monografias.com/trabajos17/arquitecturacomputadoras/arquitectura-computadoras.shtml El concepto de arquitectura en el entorno informtico proporciona una descripcin de la construccin y distribucin fsica de los componentes de la computadora. La arquitectura de una computadora explica la situacin de sus componentes y permite determinar las posibilidades de que un sistema informtico, con una determinada configuracin, pueda realizar las operaciones para las que se va a utilizar. En la actualidad es muy familiar el aspecto exterior de una computadora o, por lo menos, de una microcomputadora; pero se ha de advertir que, salvando las diferencias de tamao y la posibilidad de teleproceso (manejo del sistema informtico a grandes distancias a travs de lneas de comunicaciones de diferentes tipos), en general, los sistemas informticos se dividen fsicamente en la unidad central del sistema y los perifricos que permiten conectarlo al mundo exterior. La Unidad Central del Sistema es un habitculo en forma de caja donde se sita el cerebro de la computadora, esto es, la unidad central de proceso (CPU), as como los distintos componentes que van a ayudar al sistema informtico en sus operaciones habituales (bus, memorias, fuentes de alimentacin elctrica, etctera). La unidad central de proceso se compone de: Una Unidad de Control que manejar los diferentes componentes del sistema informtico as como los datos a utilizar en los diferentes procesos. Una Unidad Aritmtico-Lgica que realizar las diferentes operaciones de clculo en las que la computadora basa su funcionamiento. Unos Registros del Sistema que sirven como rea de trabajo interna a la unidad central de proceso.

La unidad central de proceso se conecta a una serie de memorias que le sirven como soporte para el manejo de los datos y programas que se han de utilizar mientras se encuentre operativa. Las diferentes memorias del sistema informtico (Random Access Memory o RAM y Read Only Memory o ROM) son componentes fundamentales de la computadora ya que van a ser, en el caso de la RAM, el rea de trabajo donde el microprocesador va a realizar las diferentes operaciones en que se van a descomponer los procesos solicitados por el usuario, mientras que la ROM va a servir para ayudar a la computadora a realizar las diferentes

2
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

operaciones de arranque del sistema informtico previas a que el sistema operativo tome el control de las diferentes tareas a realizar. La unidad central de proceso y las memorias se conectan entre ellas por medio del bus. El bus es un enlace de comunicaciones que conecta todos los componentes que configuran el sistema informtico y permite la transferencia de informacin entre ellos. Esta informacin se compone de datos y rdenes de comandos para manipular los datos. Existen varias tecnologas de diseo y construccin de buses entre las que se pueden distinguir las arquitecturas ISA, EISA y MCA que se vern ms adelante. Otros componentes que se conectan al bus son los puertos de conexin de los diferentes perifricos asociados a la unidad central del sistema de la computadora y que van a permitir configurar el sistema informtico para una serie diferente de operaciones funcionales que siempre han de cubrir las necesidades del usuario. Es evidente que la configuracin de un sistema informtico ha de realizarse en funcin de los objetivos operativos que vaya a cubrir la citada computadora. As, un sistema informtico que se va a dedicar exclusivamente a CAD/CAM (diseo asistido por computadora) no tendr una configuracin similar a la de una computadora que va a dedicarse a controlar los diferentes enlaces de comunicaciones que componen una red informtica. Los diferentes perifricos que se pueden conectar a un sistema informtico se dividen en cuatro grupos principales: Perifricos de Entrada de Informacin. Perifricos de Almacenamiento de Informacin. Perifricos de Salida de Informacin. Perifricos de Comunicaciones.

3
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

EL MODELO DE VON NEUMANN


Fuente: Murdocca, M. J., (2002). Principios de arquitectura de computadoras. El modelo de von Neumann. Editorial Prentice Hall. Pg. 4-6. Las computadoras digitales convencionales presentan un aspecto comn que se atribuye a Von Neumann, aunque los historiadores coinciden en que el diseo en cuestin fue obra de todo el equipo. El modelo de Von Neumann consta de cinco componentes principales, tal como lo ilustra la siguiente figura. La unidad de entrada provee las instrucciones y los datos requeridos por el sistema, los que se almacenan en la unidad de memoria. Las instrucciones y los datos se procesan en la unidad aritmtico-lgica (ALU) bajo la direccin de la unidad de control. Los resultados obtenidos se envan a la unidad de salida. El conjunto construido por las unidades aritmtico-lgico y de control se designa habitualmente bajo el nombre de unidad central de proceso (CPU). La mayora de las computadoras comerciales pude descomponerse en estas cinco unidades.

Unidad de memoria

Unidad de Entrada

Unidad Aritmetico -logica

Unidad de Salida

Unidad de control

Una computadora digital segn el modelo de Von Neumann. Las flechas gruesas representan rutas de datos. Las flechas ms finas representan rutas de control.

4
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El programa almacenado es el aspecto ms importante del modelo von Neumann. Los programas se almacenan en la memoria de la computadora junto con los datos a procesar. Si bien en la actualidad podemos plantear esto como un hecho concreto, antes del desarrollo de las computadoras de programa almacenado, los programas se almacenaban en un medio externo, tales como los tableros de clavijas-anteriormente mencionados-, cintas o tarjetas perforadas. En la computadora de programa almacenado, el programa puede manipularse como si se tratara de datos. Este concepto da origen a los compiladores y sistemas operativos, y es la basa de la gran versatilidad del as computadoras modernas.

EL MODELO DE INTERCONEXIN A TRAVS DE BUS


Fuente: Murdocca, M. J., (2002). Principios de arquitectura de computadoras. El modelo de von Neumann. Editorial Prentice Hall. Pg. 4-6. Si bien el modelo von Neumann prevalece en la estructura de las actuales computadoras el mismo ha sido modernizado. La siguiente figura muestra el modelo de una computadora que utiliza el sistema de interconexin a travs, de los que se denomina bus del sistema. El modelo considera que el sistema de computacin est constituido por tres subconjuntos la CPU, la memoria y la entrada-salida (E/S). Este refinamiento del modelo con Neumann combina a la ALU y la unidad de control en un solo bloque funcional, la CPU. Las unidades de entrada y salida se combinan, asimismo, en una nica unidad de entrada-salida. Lo ms importante de este modelo es que realiza las comunicaciones entre los componentes por medio de un camino compartido conocido como bus del sistema, constituido a su vez por un bus de datos (que transporta la informacin que se est trasmitiendo), un bus de direcciones (que determina hacia donde est siendo enviada dicha informacin) y un de control (que determina hacia donde est siendo enviada dicha informacin). Existe tambin un bus de alimentacin, que lleva energa elctrica a los componentes. Este ltimo no figura en los esquemas pero se sobre entiende su presencia. Algunas arquitecturas pueden tener, adems de los anteriores, un bus de entrada-salida. Fsicamente, los buses estn constituidos por conjuntos de cables agrupados de acuerdo con su funcin. Un bus de datos de 32 bits contiene 32 cables individuales, cada uno de los cuales trasporta un bit de datos (distinguindolo de la informacin de direcciones duales clasificados de acuerdo con su funcin. El bus de datos trasporta datos entre los componentes del sistema. Algunos sistemas tienen buses de datos separados para el ingreso o la salida de informacin hacia o desde la CPU, en cuyo caso existan un bus de entra de datos y otro bus de salida de datos. Pero ms a menudo, un nico bus de datos cumple con la funcin de transportar los datos en una u otra direccin, aunque nunca en ambas direcciones en forma simultnea.

5
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CPU (ALU,

registros y unidad de control)

Memoria

EntradaSalida (E/S)

Bus del Sistema

Bus de datos Bus de direcciones Bus de control

El modelo de un sistema de computacin basado en un bus. (Aportado por Donald Chiarulli, Universidad de Pittsburg).

Si el bus tiene ser compartido por diferentes elementos que se comunican entre s, los elementos deben tener identidades distintas: direcciones. En algunas computadoras, todas las direcciones se suponen direcciones de memoria sin importar que formen parte de las memoria del sistema o que, en realidad, sean dispositivos de entrada-salida separadas. La localizacin o direccin de memoria identifica una celda de memoria en la que se almacena informacin, tal como se utiliza la direccin postal para identificar el lugar en que un individuo recibe o enva correspondencia. Durante una operacin de lectura o escritura debe leerse o escribirse el dato. Debe notarse que las expresiones lectura y escritura se plantean con respecto a la CPU: la CPU lee datos desde la memoria y los escribe en la memoria. Si se requiere leer un dato desde la memoria, el bus de datos contendr el valor ledo desde la celda de memoria seleccionada. Si la informacin se escribiera en memoria, el bus de datos contendra el valor de dato que se pretende almacenar en la memoria. El bus de control es algo bastante ms complejo, por lo que el anlisis de este bus que dar diferido para captulos posteriores. Por el memento, el bus de control pude considerarse como el elemento que permite la coordinacin de acceso a los buses de datos y de direcciones, y la orientacin de datos hacia componentes especficos.

6
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

LA ARQUITECTURA HARVARD
Fuente: Angulo Usategui, J. M., Angulo Martnez, I., (2003). Microcontroladores PIC Diseo prctico de aplicaciones, tercera edicin. Qu es un microcontrolador? Editorial Mc Graw Hill. Pg. 1-6. En la arquitectura Harvard son independientes la memoria de instrucciones y la memoria de datos cada una dispone de su propio sistema de buses de acceso. Esta dualidad, adems de propiciar el paralelismo, permite la adecuacin del tamao de las palabras y los buses a los requerimientos especficos de las instrucciones y de los datos. Tambin la capacidad de cada memoria es diferente (siguiente figura).

10 9 BUS DE DIRECCION DE INSTRUCCIONES 14 BUS DE INSTRUCCIONES BUS DE DATOS BUS DIRECCION DE DATOS 8

UCP

UCP

UCP

En la arquitectura <<Harvard>> la memoria de instrucciones y la de datos con independientes, lo que permite optimizar sus caractersticas y propiciar el paralelismo. En la figura, la memoria de instrucciones tiene 1 K posiciones de 14 bits cada una, mientras que la de daros slo dispone de 512 posiciones de un byte.

7
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

TIPOS DE COMPUTADORAS
Fuente: Martnez Garza, J., Olvera Rodrguez, J. A., 2(000). Organizacin y arquitectura de computadoras. Tipos de computadoras. Editorial Prentice Hall. Pg. 7-8. De acuerdo con su capacidad, las computadoras digitales han catalogado tradicionalmente como supercomputadoras, equipos principales (MAIN FREAMES), minicomputadoras y microcomputadoras. Las supercomputadoras tienen la mayor capacidad de cmputo y almacenamiento y su costo es del orden de 10 veces el de un equipo principal. Estas maquinas generalmente se utilizan en centros de investigacin, algunas universidades y empresas que tienen necesidad de procesar grandes volmenes de informacin. Las aplicaciones a que se dedican son clculos cientficos, diseo y simulacin principalmente. Los equipos principales incluyen computadoras digitales con gran capacidad tanto de procesamiento como de memoria principal y almacenamiento secundario. Estos sistemas computacionales son costosos y generalmente son utilizados como sistemas centrales corporativos. Las minicomputadoras son equipos que tienen capacitada de procesamiento y almacenamiento en un rango intermedio. Originalmente, el termino se usaba para describir computadoras digitales cuya unidad central de proceso, que es la que ejecuta las instrucciones y controla la operacin de la maquina, estaba contenida en una sola tarjeta de circuito impreso. Su costo es del orden de 10 veces menor que el de los equipos principales. Su aplicacin es similar a los equipos centrales para empresas pequeas o medianas. Las microcomputadoras, en su definicin original, son computadoras digitales con la caracterstica de que toda la unidad central de proceso esta contenida en un solo circuito integrado. El costo de estos equipos es aproximadamente 100 veces menor que el de un equipo principal pero su capacidad de computo y almacenamiento es menor que el de una minicomputadora. En la actualidad, las definiciones anteriores que no son tan claras, principalmente entre minicomputadoras y microcomputadoras dado que los avances en electrnica de estado slido han permitido construir computadoras cuyo procesador esta en un solo circuito integrado, pero que tienen una capacidad de computo similar a la que tenan los equipos principales de hace 10 o 15 aos. Actualmente tiene mayor sentido pensar en trminos de esta otra clasificacin: computadoras personales, estaciones de trabajo, equipos principales y supercomputadoras. Las computadoras personales son microcomputadoras de bajo costo, entre las que se incluyen computadoras de escritorio y computadoras porttiles. Tanto su capacidad de computo como de almacenamiento continan creciendo a medida que avanza la tecnologa, sin embargo, son las que tienen la menor capacidad de computo. Las principales que se 8
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

usan en estos equipos son procesamiento de texto hojas de clculo, diseo de presentaciones, agendas personales, correo electrnico, pequeas bases de datos, interconexin a redes de cmputo y aplicaciones de tipo personal. Las estaciones de trabajo son computadoras cuyo costo es aproximadamente de 3 a 10 veces el de una computadora personal. Tienen mayor capacitada de cmputo y almacenamiento, lo cual se les permite realizar tareas ms complejas. Estos equipos en general se enfocan a aplicaciones industriales o cientficas y en la mayora de las veces estn conectadas a unas computadoras principales. En las estaciones de trabajo se visualizan los resultados de las aplicaciones que se ejecutan en un equipo principal y que requieren gran capacidad de cmputo, como sistemas de diseo asistido por computadora. Una caracterstica importante de las estaciones de trabajo es que cuentan con pantallas de video de alta resolucin. Actualmente, la definicin de equipo principal y supercomputadora siguen siendo validos, si bien es cierto que estas maquinas aumentan su capacidad de computo y almacenamiento a pasos agigantados. Dentro de las supercomputadoras tambin existen dos tipos principales: las computadoras vectoriales y los multiprocesadores. Las computadoras vectoriales cuentan con procesadoras vectoriales, los cuales pueden realizar una misma operacin sobre un conjunto de datos en forma simultnea. Por otro lado, los multiprocesadores son computadoras que tienen varios procesadores independientes entre los cuales se distribuyen las operaciones que tienen que realizarse para resolver un mismo problema. Finalmente, existen cierto tipo de computadoras de propsito especial, como las utilizadas en aplicaciones de control de dispositivos especfico y videojuegos.

9
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

LENGUAJES, COMPILADORES E INTERPRETADORES


Fuente: Lenguajes de Programacin, (2009). Lenguajes de programacin. Extrado el 18 de junio de 2009, desde http://www.lenguajes-de-programacion.com/lenguajes-deprogramacion.shtml

Los lenguajes de programacin son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc. Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro. Los lenguajes de programacin de una computadora en particular se conocen como cdigo de mquinas o lenguaje de mquinas Estos lenguajes codificados en una computadora especfica no podrn ser ejecutados en otra computadora diferente. Para que estos programas funcionen para diferentes computadoras hay que realizar una versin para cada una de ellas, lo que implica el aumento del costo de desarrollo. Por otra parte, los lenguajes de programacin en cdigo de mquina son verdaderamente difciles de entender para una persona, ya que estn compuestos de cdigos numricos sin sentido nemotcnico. Los lenguajes de programacin facilitan la tarea de programacin, ya que disponen de formas adecuadas que permiten ser ledas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar. Los lenguajes de programacin representan en forma simblica y en manera de un texto los cdigos que podrn ser leidos por una persona. Los lenguajes de programacin son independientes de las computadoras a utilizar. Existen estrategias que permiten ejecutar en una computadora un programa realizado en un lenguaje de programacin simblico. Los procesadores del lenguaje son los programas que permiten el tratamiento de la informacin en forma de texto, representada en los lenguajes de programacin simblicos. Hay lenguajes de programacin que utilizan compilador. La ejecucin de un programa con compilador requiere de dos etapas: 1) Traducir el programa simblico a cdigo mquina 2) Ejecucin y procesamiento de los datos. Otros lenguajes de programacin utilizan un programa intrprete o traductor, el cual analiza directamente la descripcin simblica del programa fuente y realiza las instrucciones dadas. 10
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El intrprete en los lenguajes de programacin simula una mquina virtual, donde el lenguaje de mquina es similar al lenguaje fuente. La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin embargo su inconveniente es que la velocidad de ejecucin es ms lenta ya que debe analizar e interpretar las instrucciones contenidas en el programa fuente.

11
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

QU ES UN MICROCONTROLADOR?
Fuente: Angulo Usategui, J. M., Angulo Martnez, I., (2003). Microcontroladores PIC Diseo prctico de aplicaciones, tercera edicin. Qu es un microcontrolador? Editorial Mc Graw Hill. Pg. 1-6. Es un circuito integrado programable que contiene todos los componentes de un computador. Se emplea para controlar el funcionamiento de una tarea determinada y, debido a su reducido tamao, suele ir incorporado en el propio dispositivo al que gobierna. Esta ultima caracterstica es la que le confiere la denominacin de >>controlador incrustado>> (embedded controller). El microcontrolador es un computador dedicado. En su memoria solo reside un programa destinado a gobernar una aplicacin determinada; sus lneas de entrada/salida soportan el conexionado de los censores y actuadotes del dispositivo a controlar, y todos los recuerdos complementarios disponibles tienen como nica finalidad atender sus requerimientos. Una vez programado y configurado el microcontrolador solamente sirve para gobernar la tarea asignada. Un microcontrolador es un computador completo, aunque de ilimitadas prestaciones, que est contenido en el chip de un circuito integrado y se destina a gobernar una sola tarea.

Diferencia entre microprocesador y microcontrolador El microprocesador es un circuito integrado que contiene la Unidad Central de Proceso (UCP) tambin llamada procesador, de un computador. La UCP esta formada por la Unidad de Control, que interpreta las instrucciones, y el Camino de Datos, que las ejecuta. Las patitas de un microprocesador sacan al exterior las lneas de sus buses de direcciones, datos y control, para permitir conectarle con la Memoria y los Mdulos E/S y configurar un computador implementado por varios circuitos integrados. Se dice que un microprocesador es un sistema abierto porque su configuracin es variable de acuerdo con la aplicacin a la que se destine Un microprocesador es un sistema abierto con el que puede construirse un computador con las caractersticas que se desee, acoplndole los mdulos necesarios. Un microcontrolador es un sistema cerrado que contiene un computador completo y de prestaciones limitadas que no se pueden modificar.

12
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

MICROPROCESADOR P

BUS DE DIRECCIONES BUS DE DATOS BUS DE CONTROL

MEMORIA

CONTROLADOR 1

CONTROLADOR 2

PERIFRICOS

PERIFRICOS

Estructura de un sistema abierto basado en un microprocesador. La disponibilidad de lo buses en el exterior permite que se configure a la medida de la aplicacin.

MICROCONTROLADOR

PERIFRICOS

PERIFRICOS

El microcontrolador en un sistema cerrado. Todas las partes del computador estn contenidas en su interior y slo salen del exterior las lneas que gobiernan los perifricos.

Si slo se dispusiese de un modelo de microcontrolador, ste debera tener muy potenciados todos sus recursos para poderse adaptar a las exigencias de las diferentes aplicaciones. Esta potenciacin supondra en muchos casos un despilfarro. En la prctica cada fabricante de microcontroladores oferta un elevado nmero de modelos diferentes, desde los ms 13
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

sencillos hasta los ms poderosos. Es posible seleccionar la capacidad de las memorias, el nmero de lneas de E/S, la cantidad y potencia de los elementos auxiliares, la velocidad de funcionamiento, etc. Por todo aquello, un aspecto muy destacado del diseo es la seleccin del microcontrolador a utilizar.

Arquitectura interna Un microcontrolador posee todos los componentes de un computador, pero con unas caractersticas fijas que no pueden alterarse. Las partes principales de un microcontrolador son: 1. 2. 3. 4. Procesador Memoria no voltil para contener el programa Memoria de lectura y escritura para guardar los datos Lnea de E/S para los controladores de perifricos: a) Comunicacin paralelo b) Comunicacin serie c) Diversas puertas de comunicacin (bus 12C, USB, etc.) 1. Recursos auxiliares: a) b) c) d) e) f) g) Circuito de reloj Temporizadores Perro Guardin ( <<watchdog>>) Conversores AD y DA Comparadores analgicos Proteccin ante fallos de la alimentacin Estado de reposo o de bajo consumo

A continuacin se pasa revista a las caractersticas ms representativas de cada uno de los componentes del microcontrolador.

El procesador La necesidad de conseguir elevados rendimientos en el procesamiento de las instrucciones ha desembocado en el empleo generalizado de procesadores de arquitectura de Harvard frente a los tradicionales que seguan la arquitectura de von Neumann. Esta ltima se caracterizaba porque la UCP (Unidad Central de Proceso) se conectaba con una memoria nica, donde coexistan datos e instrucciones, a travs de un sistema de buses (vase siguiente figura).

14
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

BUS COMN DE DIRECCIONES

MEMORIA

UCP

8
BUS DE DATOS E INSTRUCCIONES

INSTRUCCIONES + DATOS

En la arquitectura de <<von Neumann>> la UCP se comunicaba a travs de un sistema de buses con la Memoria, donde se guardaban las instrucciones y los datos.

En la arquitectura Harvard son independientes la memoria de instrucciones y la memoria de datos cada una dispone de su propio sistema de buses de acceso. Esta dualidad, adems de propiciar el paralelismo, permite la adecuacin del tamao de las palabras y los buses a los requerimientos especficos de las instrucciones y de los datos. Tambin la capacidad de cada memoria es diferente (siguiente figura).

10 9 BUS DE DIRECCION DE INSTRUCCIONES 14 BUS DE INSTRUCCIONES BUS DE DATOS BUS DIRECCION DE DATOS 8

UCP

UCP

UCP

En la arquitectura <<Harvard>> la memoria de instrucciones y la de datos con independientes, lo que permite optimizar sus caractersticas y propiciar el paralelismo. En la figura, la memoria de instrucciones tiene 1 K posiciones de 14 bits cada una, mientras que la de daros slo dispone de 512 posiciones de un byte.

El procesador de los modernos microcontroladores responde a la arquitectura RISC (Computadores de Juego de Instrucciones Reducido), que se identifica por poseer un repertorio de instrucciones mquina pequeo y simple, de forma que la mayor parte de las instrucciones se ejecutan en un ciclo de instruccin.

Otra aportacin frecuente que aumenta el rendimiento del computador es el fenmeno del paralelismo implcito, que consiste en la segmentacin del procesador (pipe-line), descomponindolo en etapas para poder procesar una instruccin diferente en cada una de ellas y trabajar con varias a la vez.

15
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El alto rendimiento y elevada velocidad que alcanzan los modernos procesadores, como el que poseen los microcontroladores PIC, se debe a la conjuncin de tres tcnicas: Arquitectura Harvard Computador tipo RISC Segmentacin

16
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

UNIDAD 2
INTRODUCCIN AL MICROPROCESADOR Z80

RESUMEN
En esta unidad se describe la arquitectura del microprocesador Z80. Tambin se describe la programacin y los mnemnicos as como los modos de direccionamiento para este microprocesador.

17
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

ARQUITECTURA DEL MICROPROCESADOR Z80


Fuente: Uruuela M., J. M., (1989). Mircroprocesadores, Programacin e interconexin, segunda edicin. Editorial Mc Graw Hill.

El Z80 fue el primero de la tercera generacin, sin embargo es uno de los microprocesadores de 8 bits ms empleado hasta nuestros das, se encuentran versiones mejores del mismo tales como Z80A, Z80B, Z80H, stas se caracterizan por trabajar a frecuencias superiores de 4 Mcps, 6.5 Mcps y 8 Mcps respectivamente, las caractersticas fundamentales del Z80 son: 1. El transporte de seales se realiza sobre tres buses, el bus de direcciones, el bus de datos, as como el bus de control. 2. Rgimen de interrupcin uniforme, con la posibilidad de encadenar las prioridades de los circuitos perifricos. 3. Alto grado de programabilidad. 4. Reloj nico. 5. Fuente de voltaje nica de +5 Volts. Un sistema con Z80 se completa con el empleo de memorias estndar de lectura y memorias estticas o dinmicas de lectura y escritura, adems pertenecen al sistema, puertos de entrada y salida paralelo, interfaces de comunicacin serie, sistemas contadores temporizadores y circuitos de acceso directo a memoria. El funcionamiento del sistema consiste en que las instrucciones del microprocesador, que estn en la memoria ROM, se ejecutan en una forma secuencial de operacin, la fuente de datos es, la propia CPU, los perifricos o las memorias, la transferencia interna de datos es a travs del CPU, exceptuando la transferencia de datos en el proceso de acceso directo a memoria. El Z80 es una versin apreciablemente mejorada tanto en circuitera como en caractersticas de programacin del antiguo modelo INTEL 8080, el Z80 resulta ser un microprocesador ms rpido y sencillo en el desarrollo de sistemas ya que solo usa una fuente de alimentacin de +5 Volts, contiene ntegramente todo el conjunto de instrucciones del 8080, lo cual le permite ejecutar todos los programas escritos para el CPU 8080, contiene el Z80 una expansin adicional de 80 instrucciones de ah se deriva su nombre, su repertorio suma un total de 156 instrucciones.

18
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El microprocesador Z80 contiene las siguientes unidades funcionales; 1).- Unidad aritmtica y lgica 2).- El contador de programa 3).- El apuntador del stack 4).- Registros de propsito general 5).- Registros de indice 6).- Registros de interrupciones 7).- Registro de banderas 8).- Registro para refrescar memorias dinmicas

LA UNIDAD ARITMTICA Y LGICA (ALU) Las operaciones del CPU Z80 se realizan con un grupo de dispositivos lgicos conocidos comnmente como unidad aritmtica y lgica (ALU) esta efecta las siguientes operaciones; 1. 2. 3. 4. 5. Suma binaria. Operaciones lgicas. Complementar a dos. Corrimiento de un bit a la derecha o a la izquierda. Registro de resultados importantes como el acarreo, signo, acarreo auxiliar, paridad o si el resultado es cero. 6. Comparaciones 7. Poner, Limpiar o probar un bit

EL CONTADOR DE PROGRAMA (PC) Es un registro de 16 bits, que continuamente tiene la direccin de la localidad de memoria siguiente que se va a accesar, de esa localidad obtiene el cdigo de la instruccin a ejecutarse, en la CPU el PC se incrementa en uno, cada vez que el microprocesador lee el cdigo de la instruccin contenida en la localidad direccionada, de esta forma el contador del programa direcciona secuencialmente las localidades de la memoria ROM, donde se encuentra almacenado el programa. 19
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

EL APUNTADOR DEL STACK (SP) El microprocesador Z80 cuenta con el registro de pila (SP) o stack pointer que contiene una direccin de memoria RAM a partir de la cual y en forma descendente, se almacenan los contenidos de un par de registros, o a partir del cual en forma ascendente se obtienen los ltimos dos datos de 8 bits almacenados en esa rea, el SP es un registro de 16 bits, para almacenar en el stack el contenido de un par de registros se utiliza la instruccin PUSH y para cargar a un par de registros con los dos ltimos bytes del stack se utiliza la instruccin POP.

REGISTROS DE PROPSITO GENERAL El microprocesador Z80 contiene 14 registros de 8 bits separados en dos grupos; GRUPO 1; A, B, C, D, E, H, y L GRUPO 2; A', B', C', D', E', H' y L Todas las instrucciones trabajan con los registros del grupo 1, con las instrucciones EX y EXX se logra el intercambio entre los contenidos de los registros del grupo 1 con los contenidos de los registros del grupo 2, el grupo 2 se utiliza en cierta forma como stack del grupo 1, dentro de la propia CPU. Con los 14 registros de propsito general se efectan por medio de las instrucciones las siguientes funciones; 1. 2. 3. 4. 5. 6. Recibir datos desde la memoria. Enviar datos hacia la memoria. Incrementar o decrementar en uno su contenido. Formar una direccin con el contenido de un par de registros. Transferir datos entre los registros. Obtener un operando durante las funciones de la ALU.

REGISTROS DE NDICE IX e IY. Estos son registros de 16 bits cada uno y conservan direcciones base que se usan para modo de direccionamiento indexado, en este modo un registro de ndice se usa como base para apuntar a una regin de la memoria. La direccin efectiva de la localidad de memoria a donde se va a depositar el dato o de donde se va a leer, se obtiene, al sumar el contenido del registro de ndice y el valor de 8 bits contenido en el campo de "desplazamiento" de las instrucciones que emplean direccionamiento con ndice, estos desplazamientos se especifican con nmeros enteros signados con el complemento a dos. 20
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

REGISTRO DE INTERRUPCIONES El Z80 opera en modo de interrupcin en el que responde como una "llamada" indirecta en respuesta a una solicitud de interrupcin. El registro I se usa para este propsito almacenando los 8 bits ms significativos de la direccin indirecta mientras que el dispositivo que interrumpe proporciona los 8 bits menos significativos de la direccin ndice, esta caracterstica permite que las rutinas servicio de las interrupciones se localicen en cualquier parte de la memoria y que se puedan accesar en un tiempo muy corto.

BANDERAS DE ESTADO El microprocesador Z80 tiene un registro de 8 Flips Flops, para monitorear ciertos resultados de las operaciones de la ALU, a la informacin que almacenan estos flips-flops se conoce como banderas de estado, las banderas se actualizan despus de cada operacin con alguno de los registros, no todas las operaciones modifican a todas las banderas, de los 8 bits del registro de banderas, nicamente seis registran informacin til para el programador, cuatro de estas banderas se prueban, esto es, se usan como condiciones de salto (JP), llamada (CALL), o regreso (RET), estas banderas son; 1. La paridad o sobreflujo (P/V). El registro "P" se utiliza para realizar funciones auxiliares necesarias para el usuario, le sirven para interpretar los resultados, es uno cuando el resultado de la operacin lgica del complemento a dos produce un acarreo, de otro forma es un cero lgico.. 2. SIGN (S); Set if into the result of ALU operation the most significant bit = 1, otherwise reset. 3. ZERO (Z); Set if result of ALU operation is zero otherwise it is reset. 4. AUXILIARY CARRY; Set if carry out results b3 into b4 otherwise reset. 5. CARRY (C); Set if result of addition or subtraction operation result in a carry or borrow of the highest order bit, otherwise reset.

TERMINALES DEL MICROPROCESADOR Z80 El Z80 es un microprocesador de 8 bits y cuenta con 158 instrucciones y 10 modos de direccionamiento. El circuito integrado del microprocesador Z80 se deposita en un encapsulado Dual In Line de 40 terminales, de las cuales 5 son nicamente de entrada, 24 son de salida y 8 son bidireccionales, adems, existen dos que sirven para conectar la fuente de alimentacin y otra ms que es la entrada del reloj.

21
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

Todas ellas tienen caractersticas elctricas compatibles con la tecnologa TTL, el intervalo de voltajes de entrada para un cero lgico es; 0.3 Vil 0.8 volts, el intervalo del voltaje de entrada para un uno lgico es; 2.0 Vih Vcc, el voltaje mximo de salida para un cero lgico es; Vol=0.4Volts, y el voltaje mnimo de salida para un uno lgico es; Voh=2.4Volts El Z80 opera con una fuente de alimentacin de +5.0 Volts conectada a la terminal 11, (pin 11), la tierra de la fuente se conecta a la terminal GND, (pin 29), el consumo tpico de corriente para el Z80 es de 90 mA. Cuenta con 18 registros de 8 bits y 4 registros de 16 bits, todos los registros del Z80 se implementan con una RAM esttica, los registros incluyen 2 bancos de 6 registros de propsito general, que se usan individualmente como registros de 8 bits, o en pares como registros de 16 bits, existen tambin 2 bancos de registros denominados "acumulador" y "banderas", adems cuenta con 6 registros de propsito especial, 4 registros de 16 bits, PC, SP, IX e IY, y 2 registros de 8 bits, el registro del refresh "R" y el registro de interrupciones "I", la aritmtica de 8 bits de las funciones, y las instrucciones lgicas de la CPU se ejecutan en la ALU, la ALU realiza las siguientes funciones son;

1. Sumar. 2. Restar. 3. Funcin lgica AND. 4. Funcin lgica OR. 5. Funcin lgica OR-EX. 6. Comparacin. 7. DespIazamientos a la derecha y a la izquierda. 8. Incrementar bytes. 9. Decrementar bytes. 10. Poner bits en uno lgico. 11. Poner bits en cero lgico y 12. Comprobar el estado de los bits 22
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

LNEAS DE DIRECCIONES (A0 - A15), Pines 30-40, 1-5 respectivamente Se forman con 16 lneas de direcciones, tienen la facultad de establecerse en tercer estado, estas seales proporcionan las direcciones correspondientes a intercambios de datos entre la memoria, la CPU y los puertos de los perifricos, la capacidad de direccionamiento con 16 bits es de 64 Kbytes y 256 puertos de entrada y salida, son activas en estado alto, los 8 bits menos significativos se usan para permitirle al usuario seleccionar los 256 puertos E/S, (A0-A7), en donde A0 es el bit menos significativo.

LNEAS DE DATOS (DO - D7), Pines 14, 15, 12, 8, 7, 9, 10 y 13 Se forman con 8 lneas de datos bidireccionales con capacidad del tercer estado, son activas en nivel alto, se utilizan para el intercambio de datos con la memoria, y perifricos de E/S.

CICLO DE MAQUINA UNO (M1), Salida activa en nivel bajo, indica que en este ciclo de mquina uno el microprocesador va a obtener el cdigo operacional de una instruccin, en las instrucciones que tienen un cdigo operacional de 2 bytes esta seal se opera al obtener cada uno de los bytes del cdigo operacional, al igual que para indicar el reconocimiento de un ciclo de interrupcin cuando ocurre (IORQ)'.

REQUERIMIENTO DE MEMORIA (MREQ)', Pin 19 Salida activa en nivel bajo, esta seal indica una peticin que interrelaciona a la memoria con la CPU, obtiene una direccin valida de las lneas de direccionamiento, esta terminal tiene capacidad del tercer estado.

REQUERIMIfNTO DE E/S (IORQ), Pin 20 Es salida triestado activa en nivel bajo, esta seal indica que la mitad baja del bus de direcciones mantiene una direccin vlida de E/S, para efectuar una operacin de lectura o escritura de E/S, se genera esta seal cuando el ciclo de maquina 1 (M1) reconoce una interrupcin, indica que el vector de respuesta de la interrupcin se coloca en el bus de datos, las operaciones de reconocimiento de interrupcin ocurren durante el ciclo de maquina 1, mientras que las operaciones de E/S nunca se producen durante este ciclo.

23
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

LECTURA (RD), Pin 21 Salida triestado activa en nivel bajo, indica que la CPU desea leer datos desde la memoria de un dispositivo externo de E/S, el dispositivo E/S se direcciona a la memoria o al perifrico, se usa esta terminal para dirigir los datos al bus de datos de la CPU.

ESCRITURA (WR)', pin 22 Salida triestado activa en nivel bajo, indica que el bus de datos de la CPU va a obtener datos vlidos para ser almacenados en la memoria o en algn dispositivo de E/S.

REFRESCO DE LA MEMORIA DINMICA (RFSH)', Pin 28 Salida activa en nivel bajo, indica que los siete bits inferiores de las lneas de direccionamiento contienen una direccin vlida de refresco de memoria, se utiliza para el mantenimiento de datos en memorias dinmicas, con esta se efecta una lectura de refrescamiento para todas las memorias dinmicas.

PARO (HALT), Pin 18 Salida que activa en nivel bajo, indica que la CPU realiza una instruccin por software de paro (HALT), y que espera una interrupcin (NMI)' o (INT)' antes de que contine la operacin, mientras permanezca en este estado la CPU ejecuta operaciones NOP, para mantener activo el refresco de las memorias dinmicas, al aplicarse un reset se continua con la operacin.

ESPERA (WAIT), Pin 24 Es una entrada activa en nivel bajo, le indica al microprocesador que la memoria direccionada o los dispositivos perifricos de E/S no son tan rpidos como para realizar una transferencia de datos a la velocidad de la CPU, o no estn listos para una transferencia de informacin, la CPU continua con el estado de espera durante todo el tiempo que esta terminal es activa, esto les permite a los otros dispositivos sincronizarse con la CPU.

24
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

REQUISICIN DE INTERRUPCIN MASCARABLE (INT), Pin 16 Entrada activa en nivel bajo, esta terminal se acciona con dispositivos E/S externos, una requisicin (INT)' se atiende al final de la instruccin que se ejecuta, si el enable interno del Flip Flop de interrupcin IFF1 controlado por software se encuentra habilitado, y si la requisicin de bus no est activa, al aceptar la CPU una interrupcin enva una seal de reconocimiento, la peticin de E/S se realiza durante el ciclo de mquina 1, al principio del siguiente ciclo de instruccin, esta peticin solo es vlida bajo control del programa interno, reconociendo la CPU tres modos diferentes de interrupcin.

INTERRUPCIN NO MASCARABLE (NMI)', Pin 17 Entrada que se activa con un flanco de bajada mediante un impulso que identifica una interrupcin obligada, posiciona al contador de programa (PC) en la direccin 0066h desde donde continua el proceso, esta tiene una prioridad ms alta que la interrupcin (INT)' y siempre se reconoce al final de la instruccin que se ejecuta, independientemente del estado del IFF1, el contador de programa PC se almacena automticamente en el stack pointer externo de forma que el usuario regrese al programa en el mismo punto del que fu interrumpido.

REHABILITACIN (RESET), Pin 26 Entrada que se activa con un flanco de bajada mediante un impulso, obliga a la CPU a reiniciar su actividad, coloca al contador de programa (PC) en la localidad de inicio de memoria 0000h, desde donde empieza el proceso, durante este tiempo el bus de direcciones y el bus de datos adquieren el estado de alta impedancia y todas las terminales de control de salida adquieren el estado inactivo.

REQUERIMIENTO DE LAS TERMINALES DE LA CPU (BUSRQ), Pin 25 Esta entrada es activa en nivel bajo, le indica a la CPU que coloque todas sus lneas en estado de alta impedancia, (tan pronto el ciclo de maquina 1 actual termine), a peticin del perifrico externo que desea tomar el control del sistema, regresa el control a la CPU cuando esta seal (BUSRQ)' pasa al nivel alto, se utiliza para pedir que el bus de direcciones, el bus de datos y las terminales de salida triestado del bus de control vayan a un estado de alta impedancia de tal forma que otros dispositivos controlen esos buses.

25
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

ENTREGA DE LAS TERMINALES DE LA CPU (BUSAK)', Pin 23 Salida activa en nivel bajo, es una indicacin para el perifrico que efecta una peticin (BUSRQ)' de que su peticin ha sido concedida por parte del microprocesador, sirve para indicar al dispositivo que solicita este reconocimiento, que el bus de direcciones, el bus de datos y el bus de las terminales de control triestado han sido puestos en su estado de alta impedancia y que el dispositivo externo puede ahora controlar estas terminales.

RELOJ (CK), Pin 6 Entrada configurada por un tren de impulsos tiles, es la diferencia que permite la secuencia de tiempos de operacin, se implanta fsicamente con un oscilador de onda cuadrada cuya frecuencia depende del tipo de caractersticas de la CPU Z80, requiere oscilacin de una fase con niveles TTL, una forma de satisfacer todos los requerimientos de voltaje es por medio de una resistencia de activacin "pull up" de 330 ohms conectada entre +Vcc y la terminal de salida de un oscilador implantado con circuitos TTL que generen oscilaciones.

ALIMENTACIN POSITIVA DE +5 VOLTS (Vcc), Pin 11 Esta es una entrada de alimentacin de tensin de +5 volts con un 5 % de tolerancia.

TIERRA (GND), Pin 29 Terminal de alimentacin negativa, requiere un potencial de 0.0 volts que sirven de referencia para la interconexin de los dispositivos.

26
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

PROGRAMACIN
Fuente: Manuales, Cursos, Tutoriales y Apuntes..., (2009). Arquitectura del microprocesador Z80. Extrado el 18 de junio de 2009, desde
http://proton.ucting.udg.mx/dpto/maestros/mateos/z80/arquitectura/arquitectura.html

Una operacin es una accin especfica que realiza el microprocesador siempre que ejecuta una instruccin. Existen diferentes operaciones que realiza el microprocesador, las operaciones asociadas con el Z80 son: Transferencia de informacin Operaciones aritmticas Operaciones lgicas Subrutinas Entradas y salidas Incrementar y decrementar bytes Realizar saltos Comprobar, poner en uno o en cero a los bits Realizar ajustes a BCD Ejecutar interrupciones LENGUAJE MQUINA Se dice que un programa se forma con un grupo de patrones binarios, por ejemplo sumar las localidades 1500H y 3020H y almacenar el resultado en la localidad 3000H el programa a ejecutar es el siguiente: 0011 0000 0001 0100 0011 0010 0011 1000 0011 0000 0011 1010 0000 0101 0111 1010 0000 0000 0000 0010 0000 0000

A estos patrones binarios se les conoce como "lenguaje mquina" ya que este es el nico lenguaje que entienden las computadoras. 27
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

PROBLEMAS CON LOS PATRONES BINARIOS 1. Es muy difcil para el programador entender o depurar los programas. 2. El proceso de cargar el programa en la computadora es muy lento ya que se tiene que alimentar bit por bit. 3. El programa no describe la tarea que realiza de una forma fcil de entender para el usuario. 4. Los programas largos son cansados en su elaboracin. 5. Existe una gran posibilidad de que el programador se equivoque en la redaccin del programa, produciendo de esta forma, una gran dificultad para encontrar los errores. 6. Si en el programa binario existiera un bit errneo sera laborioso el detectarlo y corregirlo.

28
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

MNEMNICOS
Fuente: Manuales, Cursos, Tutoriales y Apuntes..., (2009). Arquitectura del microprocesador Z80. Extrado el 18 de junio de 2009, desde
http://proton.ucting.udg.mx/dpto/maestros/mateos/z80/arquitectura/arquitectura.html

Un mtodo de mejorar el manejo de las instrucciones para el programador consiste en asignar un nombre a cada instruccin, por ejemplo a la instruccin de decrementar se le nombra como "DEC" y a la de cargar un dato se nombra como "LD", a los nombres de las instrucciones se les conoce como "MNEMNICOS", se escogen de tal manera que orienten en forma fcil al programador. Es ms fcil recordar que INC A es el mnemnico de la instruccin para incrementar en uno el contenido del registro acumulador que recordar que 3Ch es el cdigo operacional correspondiente a la misma instruccin, cada fabricante de microprocesadores proporciona una serie de mnemnicos para el conjunto de instrucciones de cada microprocesador, el programa anterior queda en la forma siguiente al usar los mnemnicos del Z80:

PROGRAMA OBJETO

PROGRAMA FUENTE

1000 1003 1004 1007 1008

3A 47 3 80 32

0015

LD LD

A, (1500) B,A A, (3000)

20030

LD

ADD B 0030 LD (3000),A

Esta representacin del programa es ms comprensible que la que usa patrones binarios, en este caso ya que se identifican qu partes son instrucciones y qu partes son direcciones o datos, a la representacin de las instrucciones de un programa usando mnemnicos se le conoce como "programa fuente".

29
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

MODOS DE DIRECCIONAMIENTO
Fuente: Manuales, Cursos, Tutoriales y Apuntes..., (2009). Arquitectura del microprocesador Z80. Extrado el 18 de junio de 2009, desde
http://proton.ucting.udg.mx/dpto/maestros/mateos/z80/arquitectura/arquitectura.html

Una parte importante en la programacin es el de entender las formas de direccionamiento para las localidades de memoria que contienen los datos que se procesan como instrucciones, la CPU Z80 tiene 10 modos diferentes para direccionar los datos almacenados en la memoria y en los registros: Implcito o inherente Inmediato Inmediato extendido Registro Registro indirecto Extendido Pgina zero modificada Relativo Bit Indexado Con el apuntador de pila

DIRECCIONAMIENTO IMPLCITO O INHERENTE Este modo de direccionamiento se refiere a operaciones en donde el cdigo operacional implica automticamente a uno o ms registros de la CPU, el cdigo operacional es fijo y no tiene campos variables de tal forma que la instruccin siempre ejecuta la misma operacin. Ejemplos de este modo de direccionamiento son las instrucciones CPL y RRA. El cdigo operacional de CPL es 2Fh, sta instruccin toma el contenido del acumulador, lo complementa a uno, cambia los ceros por unos y los unos por ceros, y deposita el resultado en el acumulador, las bandeas de condiciones no se afectan, la fuente y el destino siempre son fijos;

30
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

DIRECCIONAMIENTO INMEDIATO Este modo no constituye un direccionamiento propiamente dicho, pues aqu la instruccin no contiene ninguna direccin, en su lugar figura un operando sobre el cual se realiza la operacin que indica la instruccin, no hay necesidad del ciclo de memoria (ejecute) de ejecucin, una denominacin ms precisa es la de operando inmediato. Una instruccin con direccionamiento inmediato es la que contiene en el byte 2 o en el byte 3 de la propia instruccin en el dato de la transferencia, es decir, el dato es parte integral de los bytes que constituyen la instruccin.

OP-CODE OPERANDO

<----- uno o ms bytes

Este tipo de direccionamiento es til al cargar o efectuar una operacin aritmtica o lgica con un dato constante.

Ejemplo: Para cargar 07h en el acumulador se utiliza la instruccin LD A,N

x x+1

3E N

LD A,N A 07h

El cdigo operacional de la instruccin es 3Eh y el segundo byte es el dato que se va a cargar en el acumulador, en este caso N = 07h, los movimientos que realiza el CPU Z80 son los siguientes: 1. El contenido de la localidad op-code que apunta el contador del programa (PC) se carga en el registro de instrucciones IR y se incrementa el PC en uno. 2. La unidad de control ordena, despus de decodificar la instruccin que el contenido de la localidad (dato inmediato u operando) que apunta el PC se cargue en el registro "r" indicado por el cdigo de la instruccin, el PC se incrementa en uno y apunta a la prxima instruccin a ejecutarse.

31
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

En general este tipo de direccionamiento lo utilizan las instrucciones aritmticas y lgicas de 8 bits, ejemplo de estas son: ADD N, XOR N, AND N, etc.

DIRECCIONAMIENTO INMEDIATO EXTENDIDO Este modo de direccionamiento como su nombre lo indica es una extensin del Direccionamiento Inmediato, este tipo de direccionamiento permite cargar con un dato de 16 bits a un registro par y obtiene la direccin donde continua el procesamiento en forma inmediata. x x+1 x+2 OP-CODE BYTE BAJO BYTE ALTO

Este modo de direccionamiento lo utilizan las instrucciones del grupo "cargar 16 bits" y del grupo de instrucciones "saltos, llamadas y regresos", (JP, CALL y RET). El primero de los dos bytes del dato o de la direccin contiene los bits menos significativos (LSB) y el segundo byte contiene los bits ms significativos (MSB). Ejemplo: X x+1 x+2 01 68 79 NN = 7968

Los movimientos de esta instruccin son los siguientes: 1. El contenido de la localidad "x" apuntada por el contador de programa (PC) se carga en el registro de instrucciones IR y se incrementa el contador de programa, (PC PC + 1) 2. La unidad de control despus de decodificar la instruccin ordena que el contenido de la localidad "x + 1" apuntada por el PC se cargue en el registro B, y se incrementa el contador de programa ( PC PC + 1) 3. La unidad de control ordena que el contenido apuntado por el PC se cargue en el registro C, se incrementa el contador de programa, (PC PC + 1) y el PC apunta a la siguiente instruccin a ejecutarse.

32
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

DIRECCIONAMIENTO DE REGISTRO Muchas instrucciones utilizan los registros del Z80 para recibir o proporcionar un dato, el cdigo de la instruccin tiene un campo que se usa para especificar el los registros que se utilizan en la ejecucin de la instruccin. Ejemplo: LD r,s Esta instruccin ordena que el contenido del registro "s" se deposite en el registro "r". R registro destino S registro fuente "r" y "s" pueden ser cualquiera de los registros activos o primarios de 8 bits de la CPU Z80, el movimiento de la informacin de esta instruccin es: 1. El contenido de la localidad apuntada por el PC se deposita en el registro de instrucciones IR, la unidad de control ordena copiar en el registro r el contenido del registro s, PC PC + 1, y el contador de programa apunta a la siguiente instruccin a ejecutarse. Los grupos de instrucciones que utilizan este tipo de direccionamiento de registro, son los de aritmtica y lgica de 8 bits y de 16 bits como son: 1. 2. 3. 4. 5. Rotar Girar Poner en uno Poner en cero y Probar bits

DIRECCIONAMIENTO DE REGISTRO INDIRECTO Este tipo de direccionamiento utiliza el contenido de un registro par, como la direccin de una localidad de memoria, los registros pares son BC, DE y HL, en donde los registros B, D y H contienen los bits menos significativos, el cdigo operacional de la instruccin puede ser de uno o de dos bytes: Ejemplo: LD r, (HL) Los movimientos de esta instruccin son: El contenido de la localidad que contiene el cdigo operacional, al cual apunta el contador de programa PC, se deposita en el registro de instrucciones IR y se incrementa el contador de programa. PC PC + 1.

33
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

La unidad de control enva los 16 bits del registro par HL por el bus de direcciones, lee el contenido de la localidad con esta direccin y deposita su contenido sobre el registro r. Este tipo de direccionamiento permite apuntar a cualquier localidad de memoria, antes de usar instrucciones que utilicen este tipo de direccionamiento se debe cargar el registro par con el valor de la direccin requerida.

DIRECCIONAMIENTO EXTENDIDO En este tipo de direccionamiento la direccin de la palabra de instruccin contiene la direccin eficaz de la memoria, este es, las instrucciones que utilizan direccionamiento extendido proporcionan los 16 bits de la direccin eficaz de la memoria, el campo de la direccin eficaz contiene un operando, con este modo de direccionamiento se pueden accesar directamente todas las localidades de memoria desde 0000h hasta FFFFh, el primer byte contiene los 8 bits menos significativos (LSB) de la direccin eficaz y el segundo byte contiene los 8 bits ms significativos (MSB) de la direccin eficaz. Ejemplo: LD A, (1580h) OP - CODE LSB MSB 3A 80 15

Los movimientos que se producen son los siguientes: 1. La localidad apuntada por el contador de programa PC contiene el cdigo operacional, este se deposita en el registro de instrucciones IR, el contador de programa se incrementa. PC PC+ 1.

1. La unidad de control ordena que el contenido de la localidad (direccin LSB) se deposite en un registro temporal, y se incrementa el contador de programa PC PC + 1. 2. La unidad de control ordena que el contenido de la localidad (direccin MSB) se deposite en otro registro temporal, y se incrementa el contador de programa PC PC + 1. 3. La unidad de control enva por el bus de direcciones la direccin recin leda de 16 bits, lee el contenido de la localidad de memoria de esa direccin y deposita el operando en el acumulador.

34
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

Con este tipo de direccionamiento se pueden hacer transferencias de datos de 16 bits, LD (1580h), HL

DIRECCIONAMIENTO DE PAGINA ZERO MODIFICADA Este tipo de direccionamiento se usa nicamente con la instruccin RESTAR (RST), esta instruccin causa que el procedimiento del programa contine en una de ocho localidades posibles y bien especificadas de la pagina zero. La pagina zero se define como rea de menor memoria que se puede accesar con 8 bits del bus de direcciones, esto es las 256 localidades obtenidas con ocho combinaciones posibles, desde la 00h hasta la FFh, todas estas direcciones constituyen la pagina zero. El cdigo operacional de "RST" m" se encuentra como sigue: 11xxx111 Localidad 0000 0008 0010 0018 0020 0028 0030 0038 RST m m 0 1 2 3 4 5 6 7

Las direcciones especificas de la pagina zero se obtienen al multiplicar por 8 el valor binario de la variable m, por ejemplo si m = 2 la direccin es 10h. RST m RST 0 RST 8 RST 10 RST 18 RST 20 OP-CODE C7 CF D7 DF E7 35
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

RST 28 RST 30 RST 38

EF F7 FF

DIRECCIONAMIENTO RELATIVO En el direccionamiento relativo a la direccin proporcionada por el registro de instrucciones se le aade una direccin de referencia, normalmente esta direccin de referencia es el contador de programa PC, es posible obtener dos modos diferentes de direccionamiento relativo: 1).- Relativo hacia adelante 2).- Relativo hacia atrs

En las direcciones de salto, este tipo de direccionamientos permite reducir el nmero de bytes para especificar la direccin y reducir as el largo del programa, se usa el byte que sigue al cdigo operacional relativo para especificar un desplazamiento a partir del valor actual del contador de "programa ms dos", el resultado de la operacin es una direccin a la cual el programa salta para continuar el procesamiento en esta nueva direccin. El direccionamiento relativo permite el acceso a 256 localidades alrededor de la direccin de la siguiente instruccin, el valor del operando es un valor con signo entre +128 y -127, tomando como punto de partida del desplazamiento a la localidad de memoria donde est la siguiente instruccin:

36
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El direccionamiento relativo se usa en la CPU Z80 nicamente con el grupo de instrucciones de salto, permitiendo saltos condicionales o incondicionales que se obtienen de la resta o la suma respectivamente, del contador de programa actual ms el operando. -DIRECCIONAMIENTO DE BITLa CPU Z80 tiene instrucciones que permiten probar, poner en cero y poner en uno a los bits de un operando: 1. BIT b, r 2. RES b, r 3. SET b, r Estas instrucciones efectan operaciones a nivel de bits sobre los contenidos de las localidades de memoria o los registros de la CPU Z80 seleccionados por medio de uno de tres tipos de direccionamiento, de registro, de registro indirecto e indexado, con tres bits del cdigo operacional se especifica cual de los 8 bits del operando es el involucrado. Ejemplo: SET b, r En donde "b" puede ser cualquier numero del 0h al 7h y "r" es cualquier registro primario, acumulador, registro par HL o registro de ndice IX o IY.

37
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CAMPO b 000 001 010 011 100 101 110 111

BIT =1 xxxx xxx1 xxxx xx1x xxxx x1xx xxxx 1xxx xxx1 xxxx xx1x xxxx x1xx xxxx 1xxx xxxx

Ejemplo: SET 5, B El bit "5" del registro B toma el valor de "1" los otros siete bits no sufren alteracin alguna, en este caso se esta usando direccionamiento de registro. 1000 1000 antes (B) 88 1010 1000 despus (B) A8

DIRECCIONAMIENTO INDEXADO Con este modo se obtiene la direccin efectiva haciendo la suma de: 1. El contenido de un registro especial del Z80 denominado "registro de ndice". 2. El registro de ndice se suma con el operando que proporciona la instruccin. La indexacin permite tratar bucles durante un programa, si se dispone de varios registros de ndice se pueden aadir varios bucles, normalmente el registro de ndice se incrementa por software despus de cada operacin. Las instrucciones que utilizan direccionamientos indexado usan byte que sigue al cdigo operacional para especificar el desplazamiento que suma a uno de los dos registros de ndice del Z80, para formar la direccin efectiva de la memoria, el contenido del registro de ndice no se altera.

38
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

Ejemplo:

REGISTRO DE INDICE + OPERANDO = DIRECCION EFICAZ 1200h + 08h = 1208h Los movimientos son: 1. El contenido de la localidad 1000h apuntada por el PC se deposita en el registro I R , PC PC + 1, la unidad de control reconoce que debe cargar otra vez el contenido de la localidad 1001h sobre el I R, PC PC + 1. 2. El cdigo operacional en IR le ordena a la unidad de control leer en un registro temporal el contenido de la localidad apuntada por el PC, PC PC + 1. 3. La unidad de control enva por el bus de direcciones la direccin que resulta al sumar el registro de ndice x con el contenido del registro temporal, lee el contenido de esa localidad y lo carga en el acumulador.

DIRECCIONAMIENTO CON EL APUNTADOR DE PILA (STACK POINTER) El contenido de un registro por (BC, DE o HL), o el contenido del contador de programa (PC), puede transferirse a una rea de memoria llamada "stack pointer" y se puede realizar la funcin inversa, las localidades de memoria que reciben el dato se direccionan por medio de un registro de 16 bits denominado "apuntador de pila o stack pointer", existen nicamente dos operaciones que se realizan con el apuntador de pila, cargar un dato de 16 bits en la pila de la memoria por medio de la instruccin denominada PUSH y la operacin de leer un dato de 16 bits por medio de la instruccin llamada POP, es importante aclarar que las direcciones a las que se esta seleccionando con el apuntador de pila (SP) debe ser memorias de leer y escribir, esto es, memorias tipo RAM. 39
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

UNIDAD 3
INTRODUCCIN AL MICROCONTROLADOR ATTINY2313

RESUMEN
En esta unidad se describe al microcontrolador ATtiny2313 de la familia Atmel. Se describen sus principales caractersticas, la configuracin de sus pines, el diagrama de bloques. Tambin se describen sus 120 mnemnicos para su programacin.

40
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CARACTERSTICAS DEL MICROCONTROLADOR ATTINY2313


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Caractersticas Generales Utiliza la Arquitectura AVR RISC. AVR-Alto rendimiento y Arquitectura de RISC de de baja potencia 120 Instrucciones poderosas Ms Sola Ejecucin de Ciclo de Reloj 32 x 8 Propsito del General los Registros Activos El Funcionamiento totalmente Esttico Los Datos y un programa no-voltil adems Datos de memoria. 2K Bytes de En-sistema la Misma memoria Programable Flash. Duracin: 10,000 Ciclos de Write/Erase. 128 bytes dentro del sistema Programable EEPROM Duracin: 100,000 Ciclos de Write/Erase. 128 bytes internos de SRAM. Programando la Cerradura para el Programa Flash y Seguridad de Datos de EEPROM

Caractersticas Perifricas Uno de 8-bit Timer/Counter con Separado Prescalado y Modo de Comparacin. Uno de 16-bit Timer/Counter con Separado Prescalado, Comparacin y Modo de Captura. Cuatro canales de PWM. El Comparador Analgico On-chip. El Cronmetro del Perro guardin programable con el Oscilador del On-chip. USI la Interfaz de serie Universal. Bidireccional USART.

Caractersticas Especiales del Microcontrolador La Depuracin de On-chip de debugWIRE. Dentro del sistema Programable va el Puerto de SPI. Las Fuentes de la interrupcin externas e Interiores. 41
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

El de baja potencia Ocioso, Energa de apagado, y los Modos de suspensin. Mejorado la Energa del encendido del Circuito de reinicio. Programable Castao-fuera el Circuito de Descubrimiento El Oscilador Calibrado interior.

Dispositivos E/S y Paquetes 18 Lneas programables de E/S. El 20-pin PDIP, 20-pin SOIC, 20-pad QFN/MLF

Voltajes de operacin Velocidad ATtiny2313V: 0 - 4 MHz @ 1.8 - 5.5V, 0 - 10 MHz @ 2.7 - 5.5V ATtiny2313: 0 - 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 - 5.5V 1.8 - 5.5V (ATtiny2313V) 2.7 - 5.5V (ATtiny2313)

La potencia de Consumo Tpica En Modo activo 1 MHz, 1.8V: 230 A 32 kHz, 1.8V: 20 A (incluso el oscilador) En Modo Apagado < 0.1 A a las 1.8V

El ATtiny2313 es un microcontrolador de 8-bits de baja potencia CMOS, basado en la arquitectura AVR mejorada de RISC. Ejecuta poderosas instrucciones en un solo ciclo del reloj, el ATtiny2313 alcanza rendimientos de procesamiento que se acercan a 1 MIPS por MHz que permite al diseo del sistema para optimizar el consumo mximo contra la velocidad de procesamiento.

42
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CONFIGURACIN DE LOS PINES


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Pines de Salida ATtiny2313.

43
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

DIAGRAMA DE BLOQUES

44
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

Los AVR combinan un conjunto de instrucciones de propsito general con 32 registros activos. Los 32 registros se conectan directamente a la Unidad Lgica Aritmtica (ALU), permitiendo dos registros independientes para ser accedido, en una instruccin de ejecucin y un ciclo de reloj. La arquitectura resultante es ms cdigo eficaz mientras logra los movimientos a diez veces ms rpido que el microcontrolador de CISC convencional. El ATtiny2313 AVR es soportado con una coleccin llena de programas desarrollados por el sistema con herramientas que incluyen: los Compiladores C, Macro Ensambladores, el Programa Debugger/Simulators (Simulador), emuladores del circuito, y equipos de evaluacin.

DESCRIPCIN DE LOS PINES


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf VCC: El voltaje del suministro Digital. GND: Tierra. Puerto A (PA2..PA0): El Puerto A es un 3-bit bidireccional con puertas de E/S. Las salidas del Puerto A tienen las caractersticas simtricas con ambos fregaderos altos y capacidad de la fuente. Los pins del Puerto A tienen tres estados cuando una condicin de reinicio se pone activa, aun cuando el reloj no corre. Puerto B (PB7..PB0): el Puerto B es un 8-bit bidireccional con puertas de E/S. Las salidas del Puerto B tienen las caractersticas simtricas con ambos fregaderos altos y capacidad de la fuente. Los pins del Puerto B tienen tres estados cuando una condicin de reinicio se pone activa, aun cuando el reloj no corre. Puerto D (PD6..PD0): el Puerto D es un 7-bit bidireccional con puertas de E/S. Las salidas del Puerto D tienen las caractersticas simtricas con ambos fregaderos altos y capacidad de la fuente. Los pins del Puerto D tienen tres estados cuando una condicin de reinicio se pone activa, aun cuando el reloj no corre. RESET: Restableciendo la entrada. Un nivel bajo en este pin ms largo que la longitud del pulso mnima generar una reinicializacin, aun cuando el reloj no corre. No se garantizan que los pulsos ms cortos generen una reinicializacin. XTAL1: Entrada para invertir al amplificador del Oscilador y entrada al reloj interno del circuito que opera. XTAL1 es una funcin alterna para PA0. XTAL2: Salida para invertir al amplificador del Oscilador. XTAL2 es una funcin alterna para PA1. 45
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

MEMORIAS DEL MICROCONTROLADOR ATTINY2313


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Esta seccin describe los recuerdos diferentes en el ATtiny2313. La arquitectura de AVR tiene dos memoria principal espacia, la Memoria del Datos y el espacio de memoria del Programa. En la suma, el ATtiny2313 ofrece una Memoria del EEPROM para el almacenamiento de datos. Toda la tres memoria los espacios son lineales y regulares. La memoria instantnea tiene una paciencia de por lo menos 10,000 ciclos del write/erase. El ATtiny2313 Programa Contador (PC) es 10 bits ancho, mientras dirigindose el 1K programa as las situaciones de memoria. Pueden asignarse las mesas constantes dentro del espacio de direccin de memoria de programa entero.

Los Datos de Memoria de la SRAM La siguiente figura muestras cmo la memoria SRAM del ATtiny2313 es organizada. Las 224 situaciones de memoria de datos se dirigen ambos al Archivo del Registro, la memoria del E/S, la memoria del E/S extendida, y los datos interiores SRAM. Las primeras 32 situaciones se dirigen el Archivo del registro, la prxima 64 situaciones en la memoria del E/S normal, y las prximas 128 situaciones dirjase SRAM a los datos interiores. Los cinco modos dirigindose diferentes para la tapa de memoria de datos: Directo, Indirecto con el Desplazamiento, Indirecto, Indirecto con el Pre-decremento, e Indirecto con el Poste-incremento. En el Archivo del Registro, registra R26 a R31 ofrezca los registros del indicador dirigindose indirectos. Los alcances dirigindose directos el espacio de datos entero. El Indirecto con el modo del Desplazamiento alcanza 63 situaciones de direccin de la base direccin dada por el Y o Z registro. El 32 propsito general los registros activos, 64 E/S Registra, y los 128 bytes de interior los datos SRAM en el ATtiny2313 son todo accesibles a travs de todos stos dirigindose los modos.

El Mapa de la memoria de datos.

46
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

La Memoria de Datos de EEPROM El ATtiny2313 contiene 128 bytes de memoria de EEPROM de datos. Es organizado como un separado los datos espacian en que pueden leerse los solos bytes y pueden escribirse. El EEPROM tiene un la paciencia de por lo menos 100,000 ciclos del write/erase (escritura/borrado). El acceso entre el EEPROM y el CPU se describe lo siguiente en, mientras especificando los Registros de direccin del EEPROM, el Registro de Datos de EEPROM, y el EEPROM Controla el Registro. Para una descripcin detallada de datos De serie que transmiten al EEPROM. El Acceso a la EEPROM Read/Write El acceso al registro de EEPROM es accesible en el espacio del E/S. El escriba el tiempo de acceso para el EEPROM se da en Mesa 1. Una funcin de la mismo-eleccin del momento adecuado, sin embargo, permite el software del usuario descubrir cuando el prximo byte puede escribirse. Si el cdigo del usuario contiene instrucciones que escriben el EEPROM, algunas precauciones deben tomarse. En las fuentes de alimentacin pesadamente filtradas, VCC es probable subir o caerse despacio adelante poder-up/down. Esto las causas el dispositivo para algn perodo de tiempo para correr a un voltaje baja que especificado como el mnimo para la frecuencia del reloj usada. Vea Previniendo la Corrupcin del EEPROM. Programacin del Byte Atmico La programacin del Byte Atmico es el modo ms simple. Al escribir un byte al El EEPROM, el usuario debe escribir la direccin en el Registro de EEAR y datos en EEDR el registro. Si los pedazos de EEPMn son el cero, mientras escribindole a EEPE (dentro de cuatro ciclos despus de que EEMPE es escrito) activar el funcionamiento del erase/write. Ambos el borre y escriba ciclo se hace en un funcionamiento y el tiempo de la programacin total se da en Mesa 1. El EEPE mordi los restos ponga hasta el borre y escriba se completan los funcionamientos. Mientras el dispositivo est ocupado con programando, no es posible hacer cualquier otro funcionamiento del EEPROM.

47
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

EL OSCILADOR DE CRISTAL
Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf XTAL1 y XTAL2 son entrada y salida, respectivamente, de un amplificador invirtiendo que puede se configure para el uso como un Oscilador del on-chip, como mostrado en siguiente figura, un cristal de cuarzo o un resonador cermico pueden usarse. C1 y C2 siempre deben ser iguales para cristales y resonadores. El valor ptimo de los condensadores depende del cristal o resonador en el uso, la cantidad de capacitancia perdido, y el ruido electromagntico del ambiente. Algunos firman con iniciales las pautas para se dan condensadores escogiendo para el uso con cristales. Para la cermica los resonadores, deben usarse los valores del condensador dados por el fabricante.

Las Conexiones del Oscilador de Cristal

El Oscilador puede operar en tres modos diferentes, cada uno perfeccion para una frecuencia especfica en el rango.

48
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

EL RELOJ EXTERNO
Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Para manejar el dispositivo de una fuente del reloj externa, XTAL1 debe manejarse como mostrado en la siguiente figura. Para ejecutar el dispositivo en un reloj externo, los Fusibles de CKSEL deben programarse a 0000.

La Configuracin del Reloj externo

Cuando esta fuente del reloj es seleccionada, salida-a tiempos es determinado por los Fusibles de SUT. Al aplicar un reloj externo, se exiga evitar los cambios sbitos en el aplicado la frecuencia del reloj para asegurar funcionamiento estable del MCU. Una variacin en la frecuencia de ms que 2% de un ciclo del reloj al prximo pueden llevar a la conducta imprevisible. Es exigido asegurar que el MCU se guarda en la Reinicializacin durante cosas as cambia en el reloj la frecuencia.

49
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

AUTO PROGRAMADOR DEL FLASH


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf El dispositivo mantiene un mecanismo Auto programador transmitiendo y transfiriendo el cdigo del programa por el propio MCU. El Auto programador puede usar cualquier datos disponible la interfaz y el protocolo asociado para leer el cdigo y escribir (el programa) ese cdigo en el Programa a la memoria. La memoria del Programa se pone al ciclo en una pgina por la actualidad del suceso. Antes de programar una pagina con los datos guardados en el limpiador de la pgina temporal, la pgina debe borrarse. El limpiador de la pgina temporal est llena en el momento que usa SPM y el pulidor puede llenarse o antes de la Pgina Borre el orden o entre una Borre y Escribe. Si slo una parte de la pgina necesita ser cambiada, el resto de la pgina debe guardarse (para ejemplo en el limpiador de la pgina temporal) antes de que se borre, y se re-escriba. Cuando la alternativa 1 se usa, el Cargador proporciona una eficaz Leer-modificar-escribir el rasgo qu permite el software del usuario primero lectura de la pgina, haga los cambios necesarios, y entonces escriba los datos modificados atrs. Si alternativa 2 se usa, no es posible leer los datos viejos mientras este cargando desde la pgina y es borrada. La Pgina realizada Borra por SPM.

50
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CORRIENTE VS FRECUENCIA
Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Lo siguientes mapas muestran la conducta tpica. Estas figuras no se prueban durante la fbrica. Todas las medidas del consumo de corriente se realizan con todos los pines de E/S configurado como las entradas y con pull-up interior habilitado. Un generador de onda de seno con el rail to rail. El rendimiento de la barra se usa como la fuente del reloj. El consumo mximo en Power-down el modo es independiente de seleccin del reloj. El consumo de corriente es una funcin de varios factores como: el voltaje al que opera, la frecuencia que opera, cargando de pines de E/S, cambiando la proporcin de pines de E/S, el cdigo que ejecut y la temperatura ambiente. Los factores dominando son voltaje que opera y frecuencia. La corriente deducida de capacitive cargado pueden estimarse los pines como CL*VCC*f dnde CL = el capacitance de carga, VCC = el voltaje que opera y f = el medio cambiante de valores la frecuencia de pines de E/S. Las partes se caracterizan superiores a las frecuencias que los lmites de la prueba. No se garantizan las partes para funcionar propiamente superior a las frecuencias que el cdigo de la clasificacin indica.

El Suministro activo Actual vs. La frecuencia (0.1 - 1.0 MHz)

51
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

MNEMNICOS DEL ATTINY2313


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf

52
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

53
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

CARACTERSTICAS FSICAS DEL CHIP


Fuente: ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf

54
INTEL Y TSUTEL

Antologa de Arquitectura de Computadoras

REFERENCIAS BIBLIOGRFICAS
Angulo Usategui, J. M., Angulo Martnez, I., (2003). Microcontroladores PIC Diseo prctico de aplicaciones, tercera edicin. Qu es un microcontrolador? Editorial Mc Graw Hill. 1-6. ATMEL, (2009). El microcontrolador ATtiny2313. Extrado el 23 de junio de 2009, desde http://www.atmel.com/dyn/resources/prod_documents/2543S.pdf Lenguajes de Programacin, (2009). Lenguajes de programacin. Extrado el 18 de junio de 2009, desde http://www.lenguajes-de-programacion.com/lenguajes-deprogramacion.shtml

Manuales, Cursos, Tutoriales y Apuntes..., (2009). Arquitectura del microprocesador Z80. Extrado el 18 de junio de 2009, desde http://proton.ucting.udg.mx/dpto/maestros/mateos/z80/arquitectura/arquitectura.html Martnez Garza, J., Olvera Rodrguez, J. A., (2000). Organizacin y arquitectura de computadoras. Tipos de computadoras. Editorial Prentice Hall. 7-8. monografias.com, (2009). Arquitectura de las computadoras. Extrado el 17 de junio de 2009, desde http://www.monografias.com/trabajos17/arquitecturacomputadoras/arquitectura-computadoras.shtml Murdocca, M. J., (2002). Principios de arquitectura de computadoras. El modelo de von Neumann. Editorial Prentice Hall. 4-6. Uruuela M., J. M., (1989). Mircroprocesadores, Programacin e interconexin, segunda edicin. Editorial Mc Graw Hill.

55
INTEL Y TSUTEL

UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LA COSTA SUR DIVISIN DE DESARROLLO REGIONAL DEPARTAMENTO DE INGENIERAS

La presente antologa est dirigida a estudiantes que cursan la materia de Arquitectura de Computadoras, asignatura que se imparte en las carreras de Ingeniero en Teleinformtica y Tcnico Superior Universitario en Teleinformtica que se ofertan en el Centro Universitario de la Costa Sur

Consta de tres unidades: Unidad 1: Introduccin a la estructura de computadoras Unidad 2: Introduccin al microprocesador Z80 Unidad 3: Introduccin al microcontrolador ATtiny2313

M. I. E. Jorge Arturo Pelayo Lpez, M. C. Karen Hernndez Rueda

Anda mungkin juga menyukai