Beruflich Dokumente
Kultur Dokumente
UNIDAD ZACATENCO
Microprocesadores
Grupo: 6CM2
Alumnos:
Aguilar Garca Adolfo Rodrigo
Lpez Tirado Diana Laura
Mendoza Hernndez Marco Antonio
May Magaa Lehi Abraham
Sosa Hernndez Ivn Antonio
El microprocesador
Unidad central de proceso (CPU), circuito microscpico que interpreta y ejecuta
instrucciones. La CPU se ocupa del control y el proceso de datos en las
computadoras. Generalmente, la CPU es un microprocesador fabricado en un
chip, un nico trozo de silicio que contiene millones de componentes electrnicos.
El microprocesador de la CPU est formado por una unidad aritmtico-lgica que
realiza clculos y comparaciones, y toma decisiones lgicas (determina si una
afirmacin es cierta o falsa mediante las reglas del lgebra de Boole); por una
serie de registros donde se almacena informacin temporalmente, y por una
unidad de control que interpreta y ejecuta las instrucciones. Para aceptar rdenes
del usuario, acceder a los datos y presentar los resultados, la CPU se comunica a
travs de un conjunto de circuitos o conexiones llamado bus. El bus conecta la
CPU a los dispositivos de almacenamiento (por ejemplo, un disco duro), los
dispositivos de entrada (por ejemplo, un teclado o
un mouse) y los dispositivos de salida (como un
monitor o una impresora).
Funcionamiento de la CPU
Cuando se ejecuta un programa, el registro de la
CPU, llamado contador de programa, lleva la
cuenta de la siguiente instruccin, para garantizar
que las instrucciones se ejecuten en la secuencia
adecuada. La unidad de control de la CPU coordina y temporiza las funciones de
la CPU, tras lo cual recupera la siguiente instruccin desde la memoria. En una
secuencia tpica, la CPU localiza la instruccin en el dispositivo de
almacenamiento correspondiente. La instruccin viaja por el bus desde la memoria
hasta la CPU, donde se almacena en el registro de instruccin. Entretanto, el
contador de programa se incrementa en uno para prepararse para la siguiente
instruccin. A continuacin, la instruccin actual es analizada por un
descodificador, que determina lo que har la instruccin. Cualquier dato requerido
por la instruccin es recuperado desde el dispositivo de almacenamiento
correspondiente y se almacena en el registro de datos de la CPU. A continuacin,
la CPU ejecuta la instruccin, y los resultados se almacenan en otro registro o se
copian en una direccin de memoria determinada.
Circuito de Reloj
Seal de reloj
Una seal de reloj es una seal usada para coordinar las acciones de dos o ms
circuitos. La mayora de los circuitos integrados complejos utilizan una seal de
reloj para sincronizar sus diferentes partes y contar los tiempos de propagacin.
Frecuencia de reloj
La frecuencia de reloj es la velocidad en ciclos por segundo (medidas en hercios)
con que una computadora realiza las operaciones ms bsicas. Diferentes chips
en la placa madre pueden tener diferentes frecuencias de reloj.
Circuito de reset
El Reset es una accin con la cual se inicia el trabajo de los microprocesadores y
microcontroladores. Esta accin se ejecuta cuando se aplica una sealdenominada reset- aun terminal, designado tambin como reset.
Reset de un Pic
En un microprocesador, la seal de reset se genera manualmente al pulsar un
botn(reset manual) o cuando se pone en marcha el sistema(reset por encendido)
En un microcontrolador hay otras posibles fuentes de reset como son el reset por
fallo de alimentacin(power-glitch reset, brown-out reset) y el rest por
desbordamiento del perro guardin.
El reset por desbordamiento del perro guardin se produce cuando la tensin de
alimentacin cae momentneamente por debajo de un cierto valor umbral, de
modo que C se descarga parcialmente y se alcanza y se alcanza la condicin
Vreset < Vumbral.
El Reset por desbordamiento del perro guardin se produce cuando por alguna
razn no se ha refrescado(borrado) a tiempo el perro guardin. Generalmente ello
significa que el microcontrolador se ha perdido en la ejecucin del programa, es
decir, se ha salido de la secuencia correcta.
Memoria
El microprocesador es un circuito integrado que contiene algunos o todos los
elementos hardware, y el de CPU, que es un concepto lgico. Una CPU puede
estar soportada por uno o varios microprocesadores, y un microprocesador puede
soportar una o varias CPU. Un ncleo suele referirse a una porcin del procesador
que realiza todas las actividades de una CPU real.
La tendencia de los ltimos aos ha sido la de integrar ms ncleos dentro de un
mismo empaque, adems de componentes como memorias Cache y
controladores de memoria, elementos que antes estaban montados sobre la placa
base como dispositivos individuales.
Desde el punto de vista lgico, singular y funcional, el microprocesador est
compuesto bsicamente por: varios registros, una Unidad de control, una Unidad
aritmtico-lgica, y dependiendo del procesador, puede contener una unidad en
coma flotante.
El microprocesador ejecuta instrucciones almacenadas como nmeros binarios
organizados secuencialmente en la memoria principal. La ejecucin de las
instrucciones se puede realizar en varias fases:
PreFetch, Pre lectura de la instruccin desde la memoria principal,
Pata Nombre
1
A10
2
3
4
5
6
7
8
9
10
11
12
13
Descripcin
Bus de direcciones
Referencia de tierra. Todas las tensiones se miden con respecto a
GND
este punto.
Si SYNC = 0: Bus de datos.
D4
Si SYNC = 1: Seal de control que indica salida a perifrico.
Si SYNC = 0: Bus de datos.
D5
Si SYNC = 1: Seal que indica si el uP est en ciclo de bsqueda
de instruccin.
Si SYNC = 0: Bus de datos.
D6
Si SYNC = 1: Seal de control que indica entrada de perifrico.
Si SYNC = 0: Bus de datos.
D7
Si SYNC = 1: Seal de control que indica lectura de memoria.
Si SYNC = 0: Bus de datos.
D3
Si SYNC = 1: Seal que indica que el uP se ha detenido.
Si SYNC = 0: Bus de datos.
D2
Si SYNC = 1: Seal que indica que se realiza una operacin con el
stack.
Si SYNC = 0: Bus de datos.
D1
Si SYNC = 1: Modo lectura/escritura.
Si SYNC = 0: Bus de datos.
D0
Si SYNC = 1: Seal de reconocimiento de interrupcin.
-5V
Una de las tres patas de alimentacin del 8080.
Seal de borrado de todos los registros internos del 8080. Para
RESET
ello, ponerlo a uno durante tres ciclos de reloj como mnimo.
HOLD Sirve para poner los buses en alta impedancia para el manejo de
14
15
16
17
18
19
20
21
22
INT
CLK2
INTE
DBIN
/WR
SYNC
+5V
HLDA
CLK1
23
READY
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
WAIT
A0
A1
A2
+12V
A3
A4
A5
A6
A7
A8
A9
A15
A12
A13
A14
A11
Bus de direcciones.
CARACTERISTICAS ELECTRICAS:
Tienen alrededor de 6000 transistores MOS de canal N (NMOS) de 6 micrones, se
conectaba al exterior mediante 40 patas (en formato DIP) y necesitaba tres
tensiones para su funcionamiento): +12V, +5V y -5V. La frecuencia mxima era de
2 MHz.
Voltaje de alimentacin
Niveles de voltaje
Clock Input Low Voltage
5v
-0.3v a 7.0v
9.0 v a VDD+1/Vcc
-0.3v a 0.8v
2.0v a Vcc+0.3v
0.4 v a Vss+0.4v
2.4 v a Vss+2.4v
Tipos de direccionamiento
Las instrucciones de un programa en cdigo mquina que utiliza el ensamblador,
necesitan unos datos para funcionar y generan unos resultados que es necesario
almacenar. Por ejemplo, una operacin de suma necesitar conocer donde se
encuentran las dos cantidades que se desean sumar y el lugar donde deber de
almacenar el resultado una vez finaliza da la operacin. Existen varias formas de
indicar estas posiciones que reciben el nombre de modos de direccionamiento.
Los ms sencillos, simplemente indican un registro o una posicin numrica de
memoria, y existen otros modos adicionales para facilitar la tarea del programador.
Por ejemplo en general las instrucciones del 8086 permiten operaciones entre
datos contenidos en registros o datos contenidos en registros y memoria, pero no
estn permitidas instrucciones que tengan dos operandos en memoria. El
microprocesador 8086 permite 7 modos de direccionamiento diferentes. Los
procesadores 80386 y superiores usan ms modos de direccionamiento.
Direccionamiento por registros: El direccionamiento a registro indica el nombre
de un registro como fuente o destino de los datos de una instruccin, la forma de
indicarlo es escribiendo simplemente el nombre de dicho registro. Por ejemplo,
para guardar el contenido del registro AX en la pila se utilizar la instruccin push
con este modo de direccionamiento: PUSH AX. Cuando tenga una instruccin con
dos operandos (destino y fuente), obligatoriamente ambos debern ser del mismo
tamao: MOV BX, CX.
Direccionamiento inmediato: El direccionamiento inmediato consiste en indicar
el valor numrico necesario para la operacin. Por ejemplo, la instruccin MOV
CX, 2568h mueve el dato 2568h al registro CX. Lgicamente este modo de
direccionamiento slo se puede usar como operando fuente, nunca como destino.
Si se trabaja con directivas, se podr sustituir el valor constante por un smbolo
previamente definido.
Dato EQU 0FE4h ------ MOV AX,Dato.
Direccionamiento directo o absoluto: El direccionamiento directo o absoluto
consiste en indicar una direccin absoluta (segmento:desplazamiento) con la que
quiero trabajar en mi instruccin, por ejemplo con la instruccin mov podremos
utilizar: MOV AX,[1234h], esta instruccin recoger el dato del segmento de datos
con un offset 1234h y lo copiar en AX, tambin se podra haber utilizado el
direccionamiento absoluto como destino haciendo: MOV [1234h],AX, en este caso
se copiar el contenido del registro AX en la posicin de memoria indicada por
DS:1234h.
Tambin se puede utilizar la directiva DW de la siguiente forma:
Dato DW 1234h ..... MOV AX,Dato
Para segmentos diferentes al de datos, debo especificar el segmento en la
instruccin: MOV AX,ES:[1234h]
Ejemplos:
MOV AX,[SI] mueve a AX el contenido de la posicin de memoria DS:SI
MOV BX,[BP] mueve a BX el contenido de la posicin de memoria SS:BP
MOV CX,ES:[DI] mueve a CX el contenido de la posicin de memoria ES:DI
MOV [BP],AX mueve a la posicin de memoria SS:BP el contenido de AX.
Direccionamiento relativo a base: Es parecido al anterior pero en este caso el
offset de los datos se obtiene por la suma de un registro base (BX BP) ms un
valor constante. El registro slo puede ser BX BP no pudindose utilizar ningn
otro registro. EL registro BX utiliza como segmento por defecto el de datos DS. El
registro BP utiliza como segmento por defecto el de pila SS. Si se quieren usar
otros segmentos diferentes a los asignados por defecto, se debe de especificar.
Ejemplos:
MOV AX, [BX]+4 mueve a AX el contenido de la posicin de memoria DS:BX+4
MOV [BX]+4, AX mueve a la posicin de memoria DS:BX+4 el contenido de AX
En vez de [BX]+4 se puede usar:
[BX]4
4[BX]
[BX + 4]
Nota: En los ejemplo slo se ha utilizado la constante 4, pero puede ser cualquier
otra constante.
Una de las memorias contiene solamente las instrucciones del programa (Memoria
de Programa), y la otra slo almacena datos (Memoria de Datos).
Ambos buses son totalmente independientes lo que permite que la CPU pueda
acceder de forma independiente y simultnea a la memoria de datos y a la de
instrucciones. Como los buses son independientes estos pueden tener distintos
contenidos en la misma direccin y tambin distinta longitud. Tambin la longitud
de los datos y las instrucciones puede ser distinta, lo que optimiza el uso de la
memoria en general.
Decodificacin de memoria.
Para este proceso es importante la unidad de decodificacin, la cual se encarga
de decodificar la instruccin que se va a ejecutar. Es decir, saber qu instruccin
es. Cuando el microprocesador lee de memoria una instruccin, el cdigo de esa
instruccin le llega a esta unidad. Esta unidad se encarga de interpretar ese
cdigo para averiguar el tipo de instruccin a realizar. Por ejemplo, instrucciones
de suma, multiplicacin, almacenamiento de datos en memoria, etc.
Puertos de Entrada/salida.
Contienen una serie de registros, puertas y controles que permiten la conexin al
microprocesador de una serie de perifricos de comunicacin con el exterior. De
esta forma la CPU tiene una nica entrada-salida independiente del tipo de
perifrico que se conecte.
Los perifricos que se conecten dependern de la aplicacin, por ejemplo teclado,
CRT, modem, convertidor A/D, sensores, rels, displays, sealizaciones, etc.
Decodificacin de puertos
Puertos
Teclado Matricial de 4 X 4
E/S Paralelo
El puerto paralelo es el tipo de puerto comnmente empleado en las aplicaciones
del microcomputador, generalmente se utiliza para sealizar manejar teclados y
habilitar otros dispositivos.
E/S Seriales
Este puerto se emplea para establecer comunicacin con otros dispositivos.
Algunos microcomputadores y microcontroladores tienen incluido uno de estos
E/S Anlogas
Muchas aplicaciones necesitan de una entrada anloga para medir magnitudes
fsicas como temperatura o presin. Algunos microcomputadores tiene
conversores A/D que permiten medir estas magnitudes y procesar la informacin
en forma digital. Actualmente se consiguen en el mercado microcontroladores con
resoluciones entre 8 y 22 bits.
Memorias
En las lecciones precedentes del captulo, se mencion sobre la necesidad de por
lo menos una memoria para el funcionamiento de los microcomputadores. Esta
memoria puede ser interna o externa, ya sea con chips adicionales o internamente
dentro del chip del microcomputador.
Generalmente se habla de dos tipos de memoria dentro de un microcomputador:
La memoria de Programa.
La memoria de Datos.
Tipos de instrucciones
En general, los cdigos de operacin de un juego de instrucciones varan de una
mquina a otra, pero podemos encontrar los mismos tipos de instrucciones en casi
todas las arquitecturas y los podemos clasificar de la manera siguiente:
Transferencia de datos
Aritmticas
Lgicas
Transferencia del control
Entrada/salida
Otros tipos
Juego De Instrucciones
Modos de direccionamiento
El rango de las direcciones que hemos de alcanzar para poder acceder a todo el
espacio de memoria dirigible con respecto a programacin. Con respecto al
espacio para expresar el operando, se intentar reducir el nmero de bits que hay
que utilizar para codificar el operando y, en general, las diferentes partes de la
instruccin para poder construir programas que ocupen menos memoria.
Direccionamiento inmediato
Direccionamiento directo:
Direccionamiento directo a registro
Direccionamiento directo a memoria
Direccionamiento indirecto:
Direccionamiento indirecto a registro
Direccionamiento indirecto a memoria
Direccionamiento relativo:
Direccionamiento relativo a registro base o relativo
Direccionamiento relativo a registro ndice (RI) o indexado
Direccionamiento relativo a PC
Direccionamiento implcito
Direccionamiento a pila (indirecto a registro SP) Hay que tener presente que
cada operando de la instruccin puede tener su propio modo de direccionamiento,
y no todos los modos de direccionamiento de los que dispone un juego de
instrucciones se pueden utilizar en todos los operandos ni en todas las
instrucciones.
Existe una cuestin, a pesar de ser transparente al programador, que hay que
conocer y tener presente porque indirectamente s que le puede afectar a la hora
de acceder a la memoria. Se trata de la ordenacin de los bytes de un dato
cuando este tiene un tamao superior al tamao de la palabra de memoria. En la
mayora de los computadores la memoria se dirige en bytes, es decir, el tamao
de la palabra de memoria es de un byte. Cuando trabajamos con un dato formado
por varios bytes habr que decidir cmo se almacena el dato dentro de la
memoria, es decir, qu byte del dato se almacena en cada posicin de la memoria.
Se pueden utilizar dos sistemas diferentes:
Una vez elegido uno de estos sistemas, habr que tenerlo presente y utilizarlo en
todos los accesos a memoria (lecturas y escrituras) para asegurar la coherencia
de los datos.