Este documento presenta información sobre sistemas microprocesados. Explica la arquitectura básica de un sistema microprocesado incluyendo los bloques funcionales como la unidad central de procesamiento, memoria, entrada/salida y buses de control, direcciones y datos. También describe conceptos como mapas de memoria y diferentes tipos de memoria como ROM, RAM y sus características. Finalmente, incluye ejemplos para ilustrar los conceptos.
2. Evaluación
• I y II bimestre:
Prueba 1 = 30 %
Prueba 2 = 30 %
Prueba 3 = 30 %
Deberes = 10 %
* Opcional (II bimestre) Elaboración de un proyecto.
2
3. Bibliografía
• Programming and Customizing the AVR Microcontroller. McGraw Hill
Dhananjay V. Grade (2001).
• Apuntes de la materia Microprocesadores I, Instituto Tecnológico del
Mar, Mazatlán Autor: Domínguez Arrellano Rufino J.
• Manuales:
1. Atmel, 8 bit AVR, Instruction Set
2. Atmel, 8 bit AVR, Microcontroller with 16K Bytes In-System Programmable
Flash.
3
4. Objetivos
• Conocer los fundamentos de los Sistemas Microprocesados y aplicar
los conocimientos en el diseño de circuitos.
• Conocer los fundamentos a ser aplicados en el desarrollo de su
carrera.
4
5. Contenido
• CAPÍTULO 1: INTRODUCCIÓN
• Capítulo 2: INTRODUCCIÓN A LOS MICROCONTROLADORES AVR
• Capítulo 3: PROGRAMACIÓN DEL MICROCONTROLADOR
ATMEGA164P
• Capítulo 4: PÓRTICOS DE ENTRADA SALIDA SUBRUTINAS Y STACK
• Capítulo 5: CIRCUITOS TEMPORIZADORES CONTADORES E
INTERRUPCIONES.
• Capítulo 6: CONVERSOR DE ANALÓGICO A DIGITAL
• Capítulo 7: CIRCUITOS USART y SPI.
5
6. CAPÍTULO 1: INTRODUCCIÓN
oArquitectura básica de un sistema microprocesado.
oDescripción de los bloques funcionales de un computador.
oEstructura interna de un microprocesador.
oArquitectura de un microprocesador típico.
oDiferencias entre las arquitecturas CISC y RISC.
oResolución de un problema con un microcontrolador.
Contenido
6
8. Arquitectura básica de un sistema microprocesado
• El microprocesador: Es un circuito integrado digital que puede programarse con
una serie de instrucciones, para realizar funciones específicas con los datos.
INTRODUCCIÓN
Cuando un microprocesador se conecta a un dispositivo de memoria y se provee
de dispositivos de entrada salida, pasa a ser un sistema microprocesado.
• La mayoría de computadoras utiliza la Arquitectura de von Neumann (Programa
almacenado en memoria).
• Ejecución de programas.
Programa Localizado en memoria
Instrucciones
• CPU Ejecutar instrucciones Ciclo de instrucciones 8
9. Ciclo de instrucción de Von Neumann
INTRODUCCIÓN
1.- Fetch: Recuperar o
extraer la información
(Instrucciones) desde
memoria y llevarla al
microprocesador.
2.- Decode: Decodificación
de las instrucciones.
3.- Execute: Ejecución de
las instrucciones.
9
10. Sistema microprocesado:
• Todas Las funciones del sistema serán
controladas por el microprocesador UP.
• Un sistema microprocesado debe estar
formado al menos por un microprocesador
UP.
• La funcionalidad de un microprocesador
depende de las instrucciones del programa y
de la interacción con el medio externo a
través de las entradas y salidas del sistema
microprocesado.
INTRODUCCIÓN
10
11. Arquitectura básica de un sistema Microprocesado a nivel de
bloques funcionales
INTRODUCCIÓN
11
12. Descripción de bloques funcionales
• Bus de direcciones: Es un bus de un solo sentido (Líneas
unidireccionales) a través del cual el microprocesador envía un código
de dirección a una memoria o dispositivo externo.
INTRODUCCIÓN
La capacidad máxima de acceso a memoria del uP = número lineas
Ejemplo:
16 líneas = 216=65.536 posiciones = 64K
32 líneas = 232=4.294.467.296 = 4 Gigas (Pentium)
Zn = 2n ; donde n = número de líneas
12
13. Descripción de bloques funcionales
• Bus de datos: Es un bus de dos sentidos es decir líneas
bidireccionales (entrada/salida) empleadas para el envío y recepción
de datos entre el uP y los demás elementos del sistema.
INTRODUCCIÓN
Tamaño de palabra = # bits que procesa la CPU = # líneas que tiene el bus
Potencia del uP A mayor tamaño del bus mayor cantidad de
información puede ser envíada y recibida a la vez.
13
14. Descripción de bloques funcionales
• Bus de control: La funcionalidad de este bus es controlar y coordinar
las acciones de los elementos del sistema. Formado por líneas
unidireccionales que entran en la CPU y otras que salen de ella.
INTRODUCCIÓN
Señales de
lectura/escritura
Ciclos de espera
Interrupciones
14
15. Descripción de bloques funcionales
• Sistema de Entrada/Salida I/O:
Conjunto de circuitos electrónicos
que permiten el flujo de
información entre las distintas
unidades del sistema con el medio
externo por medio de periféricos.
• Periféricos: Dispositivos
encargados de la comunicación
entre el sistema y el usuario y del
almacenamiento de información.
INTRODUCCIÓN
15
16. Descripción de bloques funcionales
• Unidad de memoria:
Dispositivo que almacena las instrucciones de los programas , los datos y
resultados temporales que se van procesando.
Tipos de memoria:
a) Memorias de solo lectura
b) Memorias de sobre todo lectura
c) Memorias de Lectura/Escritura
INTRODUCCIÓN
16
17. Descripción de bloques funcionales
• Unidad de memoria:
a) Memorias de solo lectura:
o ROM (Read Only Memory): Empleada principalmente en microprogramación de
sistemas.
o PROM (Programmable Read Only Memory): El proceso de escritura es electrónico. Se
puede grabar posteriormente a la fabricación del chip, a diferencia de las anteriores que
se graba durante la fabricación. Permite una única grabación y es más cara que la ROM.
b) Memorias de sobre todo lecura:
o EPROM ( Erasable Programmable Read Only Memory): Se puede escribir varias veces
de forma eléctrica, sin embargo, el borrado de los contenidos es completo y a través de
la exposición a rayos ultravioletas (de esto que suelen tener una pequeña ‘ventanita’ en
el chip).
o EEPROM (Electrically Erasable Programmable Read Only Memory): Se puede borrar
selectivamente byte a byte con corriente eléctrica. Es más cara que la EPROM.
o Memoria Flash: Está basada en las memorias EEPROM pero permite el borrado bloque
a bloque y es más barata y densa,.
INTRODUCCIÓN
17
18. Descripción de bloques funcionales
•Unidad de memoria:
c) Memorias de Lectura/Escritura:
oDRAM(Dynamic Random Access Memory): Los datos se
almacenan como en la carga de un condensador. Tiende a
descargarse y, por lo tanto, es necesario un proceso de refresco
periódico. Son más simples y baratas que las SRAM.
oSRAM (Static Random Access Memory): Los datos se almacenan
formando biestables, por lo que no requiere refresco. Igual que
DRAM es volátil. Son más rápidas que las DRAM y más caras.
INTRODUCCIÓN
18
19. Descripción de bloques funcionales
• Sistemas de memoria:
La memoria también puede ser clasificada como:
oNo Volatil Aquella memoria que al apagarla no pierde la información
almacenada.
Ejemplo: ROM
oVolatil Memoria que pierde la información al interrumpirse el flujo eléctrico.
Ejemplo: RAM
INTRODUCCIÓN
19
20. Sistemas de memoria
• Dirección: Es la posición de identificación de
una palabra en memoria.
• Longitud/tamaño de palabra: Cantidad de bits
que puede almacenar cada posición.
Capacidad = # de posiciones x longitud de palabra
Ejemplo:
8K x 4 : 8192 posiciones de 4 bits c/u
2K x 8 : 2048 posiciones de 8 bits c/u
INTRODUCCIÓN
Descripción de bloques funcionales
20
21. Sistemas de memoria
• Memoria no volatil EPROM 2732
Organización de memoria: 4K x 8
o Tamaño de palabra = 8
o Posiciones = 4K = 4096
o # líneas dirección = 12
Tiempo de acceso: 450 ms
Descripción de terminals:
A0-A11 Líneas de dirección
D0-D7 Entrada de datos/salidas de
datos
G Habilitación para lectura
E Enable
INTRODUCCIÓN
Descripción de bloques funcionales
21
22. Sistemas de memoria
• Memoria volatil SRAM 6116
Organización de memoria: 2K x 8
o Tamaño de palabra = 8
o Posiciones = 2K = 2048
o # líneas dirección = 11
Alta velocidad de acceso: 150 nseg.
Descripción de terminals:
A0-A10 Líneas de dirección
D0-D7 Entrada de datos/salidas de
datos
CS Habilitador de pastilla
OE Habilitador de salidas
WE Habilitador para escritura
INTRODUCCIÓN
Descripción de bloques funcionales
22
23. • Memoria volatil SRAM 6116
Sistemas de memoria
INTRODUCCIÓN
Descripción de bloques funcionales
DATA out Data leído
DATA in Dato escrito
Mode CS OE WE I/O
Lectura L L H Data out
Escritura L H L Data in
Alta Z H H X Alta Z
23
24. Adaptación al ancho del bus de datos:
Deseable Tamaño del bus de datos Up (K) sea igual al número de bits que salen y entran
de la memoria.
Casos:
Si el ancho del bus de datos de los chips de memoria es superior a K bits del Up,
sólo se utiliza K líneas de dicho bus.
Si el ancho del bus de datos de los chips de memoria es inferior a K bits, se utilizará
varios chips para conectarlos en paralelo al bus de datos del microprocesador.
Bus de Direcciones:
Las líneas más significativas del bus de direcciones que sale del procesador
seleccionan el chip al que accedemos.
Las líneas menos significativas del bus de direcciones que sale del procesador
seleccionan la posición de memoria (dirección física) dentro del chip.
Sistemas de memoria (Pautas de ejercicios):
INTRODUCCIÓN
Descripción de bloques funcionales
24
25. • Mapas de memoria: Organización de las distintas unidades de memoria
(Chips) en el espacio de direccionamiento de un procesador.
Sistemas de memoria
INTRODUCCIÓN
Descripción de bloques funcionales
25
27. Ejercicio 1 (1)
• Se tiene un microprocesador cuya arquitectura para el manejo de
datos es de 8 bits y posee 16 líneas de direccionamiento. Se dispone
de dos memorias de 16KB. Realice el diagrama para un óptimo
direccionamiento.
Resolución:
memoria= 16K = 24K x 8 = 214
o Bus de datos = 8
o Bus de direcciones = 14
INTRODUCCIÓN
27
29. Ejercicio 1 (3)
• Mapa de memoria
INTRODUCCIÓN
MEM 1
MEM 2
16 K
16 K
A 15 A14
0 0
0 1
1 0
1 1
0000 H
3FFFF H
4000 H
7FFFF H
8000 H
BFFFF H
C000 H
FFFFF H
RANGO DE POSICIONES
$0000
$3FFFF
29