SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
INTRODUCCIÓN A LOS
MICROPROCESADORES
J. A. SAINZ
CATEDRÁTICO E.U.
ÁREA DE TECNOLOGÍA ELECTRÓNICA
E.U.I.T.I. VITORIA-GASTEIZ 2000
euskal herriko
unibertsitatea
universidad
del país vasco
eman ta zabal zazu
1
1. HISTORIA DE LOS MICROPROCESADORES ...............................................2
2. VENTAJAS DE LOS MICROPROCESADORES ..............................................3
3. EL MICROPROCESADOR..................................................................................4
4. CONFIGURACIÓN DE UN SISTEMA MICROPROCESADOR ....................5
4.1. Unidad de entrada-salida ........................................................................................7
4.2. Memorias...............................................................................................................7
4.3. Funciones y características del microprocesador (CPU) ..........................................7
5. ARQUITECTURA DE LOS MICROPROCESADORES...................................8
5.1. Registros de direccionamiento PC, SP, IX...............................................................9
5.2. Registros de datos ................................................................................................10
5.3. Registro de instrucciones IR..................................................................................11
5.4. Registro de estados (flags) ....................................................................................11
5.5. Unidad Aritmética y Lógica ALU..........................................................................13
5.6. Unidad de Control................................................................................................13
6. REPRESENTACIÓN Y EJECUCIÓN DE LAS INSTRUCCIONES...............15
7. TIPOS DE DIRECCIONAMIENTO..................................................................18
7.1. Direccionamiento directo o absoluto......................................................................18
7.2. Direccionamiento paginado ...................................................................................18
7.3. Direccionamiento inmediato...................................................................................18
7.4. Direccionamiento indexado ...................................................................................19
7.5. Direccionamiento indirecto....................................................................................19
7.6. Direccionamiento implícito ....................................................................................20
7.7. Direccionamiento relativo ......................................................................................20
8. TIPOS DE INSTRUCCIONES ...........................................................................20
8.1. Instrucciones aritméticas y lógicas..........................................................................20
8.2. Instrucciones de transferencias de datos ................................................................20
8.3. Instrucciones de ruptura de secuencia....................................................................20
8.4. Instrucciones de manejo de la pila .........................................................................20
8.5. Instrucciones de entrada-salida..............................................................................21
8.6. Instrucciones especiales y de control.....................................................................21
9. SELECCIÓN DE MEMORIAS ..........................................................................21
10. PERIFÉRICOS DE ENTRADA-SALIDA........................................................24
11. BIBLIOGRAFÍA................................................................................................25
2
INTRODUCCIÓN A LOS MICROPROCESADORES
1. HISTORIA DE LOS MICROPROCESADORES
El primer microprocesador fue el 4004 de Intel, y apareció en el mercado en 1971. Este
hecho fue accidental y se debió a un contrato entre la empresa Intel y una compañía japonesa
de calculadores para el desarrrollo de un circuito integrado para dicho producto. El desarrollo
no fue aceptado y la firma Intel se decidió por su comercialización. El 4004 era un
microprocesador de 4 bits realizado con tecnología PMOS.
El siguiente suceso importante en la historia de los microprocesadores fue la introducción del
8008 de Intel en 1972, que consistía en un microprocesador de 8 bits con tecnología PMOS.
La empresa Display Terminals Corporation realizó un concurso para la producción de un
procesador monolítico capaz de controlar un TRC. Se presentaron Intel y Texas Instruments
y ambas obtuvieron el contrato del desarrollo. Poco después Texas se retiró, mientras Intel
logró desarrollar el producto que cumplía todos los requisitos, pero tenía un inconveniente,
"era lento". El producto desarrollado era el 8008.
Intel, que por aquel entonces se dedicaba fundamentalmente a la fabricación dememorias se
decidió a comercializarlo pensando sobre todo en vender más memorias. Ante su sorpresa,
las ventas del 8008 crecieron rápidamente e inmediatamente se dieron cuenta de la gran
importancia de este nuevo producto, el microprocesador; para el siguiente año 1973, Intel
lanzó al mercado el sucesor del 8008, el 8080 en tecnología NMOS y por tanto más rápido
(unas diez veces más que el 8008).
Posteriormente los competidores de Intel desarrollaron sus propias versiones, Motorola el
6800, Rockwell el PPS8, Signetics el 2650.
La tercera generación de micros de 8 bits fueron los sucesores del 8080 y 6800, tales como
el Z80 de Zilog, el 8085 de Intel, el 6502 de Rockwell y Mos Technology, y también los
3
microcomputadores monopastilla el 8048 de Intel, el PPS4 de Rockwell, el TMS 1000 y el
9940 de Texas Instruments.
En la actualidad hay disponibles en el mercado microprocesadores de 16 y 32 bits. Entre ellos
podemos citar de la casa Motorola los microprocesadores 68000, 68008, 68020; de la casa
Intel los 8086, 80186, 80286, 80386, 80486, Pentium y el Z8000 de Zilog.
2. VENTAJAS DE LOS MICROPROCESADORES
Los microprocesadores están desplazando a la electrónica tradicional de una parte importante
de sus campos de aplicación y encontrando utilidades en casi todos los campos. Las dos
ventajas más importantes del microprocesador son:
1) Emplear menos componentes.
Un sistema microcomputador al emplear menos componentes reduce el tamaño del
equipo, su consumo y aumenta la fiabilidad al realizar menos conexiones. Estas
características reducen el coste del sistema.
2) Programabilidad.
Enlossistemasclásicosrealizadosmediantelógicacableada,cadaproductorealizabauna
única función sin posibilidad de poder modificar el trabajo realizado a no ser que se
cambiara el diseño. Un sistema programable permite modificar la función que realiza sin
más que variar el programa. Dicho en pocas palabras, la programación permite disponer
de módulos estándar de hardware, de forma que cambiando el programa (software) la
tarea que realiza el sistema es distinta.
La máquina programada ejecuta un conjunto de operaciones básicas que se realizan al recibir
4
el código de operación de cada instrucción. En cada aplicación las instrucciones a realizar se
ordenan adecuadamente formando un programa.
La unidad central de proceso CPU consta de un subsistema de proceso y otro de control. La
unidad de control decodifica las instrucciones del programa y genera las señales de control
para que la unidad de proceso (ALU) ejecute dichas instrucciones. Además suministra las
señales de control de los componentes que componen el sistema. Las instrucciones que
constituyen el programa se almacenan en una memoria que también contiene los datos que
procesa y obtiene la máquina.
La máquina programada necesita de unos elementos de adaptación con los periféricos que le
comunican con el mundo exterior. Se encargan de transmitir datos a procesar o resultados
que se obtienen en el proceso, son los módulos de entrada-salida I/O.
3. EL MICROPROCESADOR
Vamos a intentar acotar los límites actuales de lo que los fabricantes y usuarios llaman
microprocesador. A lo largo de los cursos de electrónica se desarrollan unos subsistemas
digitales cada vez más complejos (puertas, circuitos combinacionales, circuitos secuenciales)
que se integran en pastillas y que interconectados pueden realizar operaciones de procesos de
datos.
Un microprocesador sería un conjunto de tales circuitos, integrados e interconectados todos
sobre un único substrato semiconductor, de forma que puede realizar una secuencia de
operaciones aritméticas y lógicas controladas.
Hay una serie de matices que conviene observar:
1.- El microprocesador realiza una secuencia de operaciones, pero esta secuencia no es
5
única, sino que es programable mediante instrucciones. Las instrucciones residen en una
memoria a la que accede el microprocesador, extrae una instrucción, la decodifica, la
ejecutayvuelveporotrainstrucciónyasísucesivamente,salvoquerecibaunainstrucción
de parar.
Las operaciones que implica cada instrucción (microprogramación firmware) se realizan
en sincronismo con un tren de impulsos RELOJ. El microprocesador se relaciona en el
exterior mediante unos caminos de datos (BUSES) que permiten el intercambio de
información digital entre el microprocesador y el exterior.
Se puede decir que un microprocesador es una parte de un ordenador, la encargada del
control y el proceso de la información llamada CPU (unidad central de proceso).
Se podría pensar que la CPU de un ordenador es un microprocesador, a veces es así,
pero también la CPU puede realizarse por medio de subsistemas MSI y LSI
interconectados (puertas, registros, contadores, sumadores, etc.).
La mayor parte de los ordenadores personales emplean un microprocesador como CPU.
Un microprocesador no es capaz de hacer nada por sí solo, necesita como mínimo una
memoria de la que extraer las instrucciones y unidades de entrada salida I/O para
comunicarse con el mundo exterior. El conjunto formado por el microprocesador,
memoriayunidadesde I/O suele denominarse sistema microprocesador y es equivalente
a un ordenador.
Generalmente los fabricantes, además del microprocesador fabrican las memorias, las
unidades de entrada-salida y otros periféricos que permiten al usuario realizar un sistema
microprocesador a la medida de sus necesidades.
2.- El microprocesador es un circuito integrado realizado en VLSI sobre un único substrato.
Este concepto también puede ampliarse, ya que existen microprocesadores que incluyen
memoria y puertas de entrada salida (microcontroladores monopastilla).
4. CONFIGURACIÓN DE UN SISTEMA MICROPROCESADOR
6
Un diagrama básico se indica en la figura 1.
Se compone de tres bloques enlazados por buses. Esta estructura corresponde a la
organización de Von Newmann.
Los buses son de tres tipos dependiendo del tipo de información que transporten :
- Bus de datos. Circulan los datos que llegan o salen del procesador por la unidad de
entradas-salidas, o los resultados parciales que la CPU lee o escribe en memoria. El bus
de datos es bidireccional.
7
- Bus de direcciones. Partiendodelmicroprocesador,envíaentodomomentoladirección
de la posición de memoria o periférico donde se encuentra la instrucción o el dato que se
debe procesar. El bus de direcciones es unidireccional.
- Bus de control. Por el que el microprocesador transmite y recibe señales que controlan
el funcionamiento de todo el sistema.
4.1. UNIDAD DE ENTRADA-SALIDA
Contiene una serie de registros, puertas y controles que permiten la conexión al
microprocesador de una serie de periféricos de comunicación con el exterior. De esta forma
la CPU tiene una única entrada-salida independiente del tipo de periférico que se conecte.
Los periféricos que se conecten dependerán de la aplicación, por ejemplo teclado, CRT,
modem, convertidor A/D, sensores, relés, displays, señalizaciones, etc.
4.2. MEMORIAS
Almacenan la información del sistema. Son de dos tipos :
- RAM para almacenar datos variables, también pueden almacenar programas, aunque
éstos se perderían al dejar de alimentar al sistema. Su capacidad es variable y depende de
la capacidad de direccionamiento del microprocesador. Generalmente es modular,
componiéndose de uno o varios circuitos integrados. La longitud de la palabra de memoria
viene impuesta por la CPU; para microprocesadores de 8 bits se necesitarán memorias
cuyas palabras tengan 8 bits (1 byte).
Para 8088-8086 que son de 16 bits, memoria bloque par e impar de 8 bits cada uno.
A0=0 bloque par (banco bajo); A0=1 bloque impar (banco alto).
- ROM se emplean para almacenar el programa y datos fijos, Respecto a la capacidad y
longitud hay que decir lo mismo que para las RAM.
8
4.3. FUNCIONES Y CARACTERÍSTICAS DEL MICROPROCESADOR (CPU)
Es la parte encargada del control y realiza las operaciones aritméticas ylógicasdelprocesode
datos.
Las funciones básicas de la CPU son :
1. Decodificar las instrucciones que extrae de la memoria.
2. Generar las señales de control para la ejecución de las instrucciones.
3. Ejecución de las instrucciones por medio de la unidad arimética y lógica (ALU).
4. Almacenamiento temporal de los datos en proceso mediante registros.
5. Generación de señales de tiempos que marcan el ritmo del proceso.
Las características más importantes de la CPU son :
1. Tamaño de la palabra que es capaz de procesar. Este tamaño viene determinado por la
longitud de sus registros y por la longitud de la palabra que puede procesar la ALU.
2. Juego de instrucciones que el microprocesador puede ejecutar.
3. Posibilidad de interrupciones, que permiten alterar la secuencia normal del programa
debido a una causa externa.
4. Registros de trabajo.
5. Tiempo de ciclo de instrucción que es el tiempo medio que tarda el microprocesador en
buscar y ejecutar una instrucción.
5. ARQUITECTURA DE LOS MICROPROCESADORES (8 bits).
Como puede observarse en la figura 2, consta de los siguientes elementos.
9
5.1. REGISTROS DE DIRECCIONAMIENTO PC, SP, IX.
Son registros dobles de 16 bits destinados a almacenar direcciones. Están conectados al bus
de direcciones a través del registro de direcciones AR (Address Register).
Estos registros se dividen en dos bytes, el byte de mayor peso se denomina H (high) y el byte
de menor peso L (low).
5.1.1. Contador de programa PC (Programa Counter)
Proporciona en cada momento la dirección de la memoria donde se encuentra la siguiente
instrucción que hay que ejecutar.
10
El contenido del PC se manda al bus de direcciones a través del registro de direcciones AR,
seleccionándose la posición de memoria que contiene el código de operación de la
instrucción, esta información se transfiere al bus de datos hasta el registro de datos DR y al
registro de instrucciones IR (en la fase de búsqueda), el decodificador de instrucciones de la
unidad de control decodifica la instrucción y produce las señales de control necesarias para
ejecutar la instrucción en curso. Una vez finalizada la instrucción el PC se actualiza
(incrementos de 1, 2 ó 3 unidades) conteniendo la dirección de la siguiente instrucción.
Únicamente en casos de ruptura de secuencia de programa,seproducencambiosbruscosen
el contenido del contador del programa.
5.1.2. Puntero de la pila SP (Stack Pointer)
La pila (stack) es una memoria de lectura-escritura tipo LIFO (last input-first output) último
en entrar primero en salir, y resulta indispensable para trabajar con interrupciones y
subrutinas. El puntero de la pila SP contiene la dirección del último byte introducido en el
stack. El puntero de la pila es un registro doble de 16 bits. La gestión de la pila se realiza por
programa (software).
5.1.3. Registro índice IX
El indexado es un modo de direccionamiento (forma de obtener el operando de una
instrucción) que no disponen todos los microprocesadores. La dirección donde se encuentra
el operando se obtiene sumando o restando un desplazamientoalcontenidodelregistroíndice
IX.
5.1.4. Registro de direcciones AR (Address Register)
Los registros de direccionamiento citados PC, SP, IX transfieren sus contenido al bus de
direcciones externo a través del registro de direcciones AR. Básicamente este registro actúa
como buffer para las señales que salen al bus de direcciones.
11
5.2. REGISTROS DE DATOS
Son registros de 8 bits, aunque algunos microprocesadores pueden actuar sobre dos de ellos
de forma simultánea, actuando en este caso como un único registro de 16 bits.
5.2.1. Registros de propósito general
Son necesarios pues contienen operandos que pueden ser manejados por la ALU de una
forma más rápida que si estuvieran en memoria. Son registros de 8 bits conectados al bus de
datos bidireccionalinterno.Lafinalidaddeestosregistrosnoestáprefijadadeantemanoypor
esta razón se denominam de propósito general.
5.2.2. El acumulador -A-
En todos los microprocesadores muchas de las operaciones que realiza la ALU (unidad
aritmética y lógica) uno de los operandos está contenido en el registro denominado
acumulador A, el otro operando le llega a la ALU a través del bus de datos interno
procedente de otro registro interno, de la memoria o de algún periférico. El resultado de la
operación realizada por la ALU se deposita en el acumulador.
Las operaciones de entrada-salida a los periféricos se realizan a través del acumulador.
El acumulador es un registro de mucha importancia sobre el que se realizan operaciones de
lectura, escritura y cálculo.
5.2.3. Registro de datos -DR-
Tiene una función similar al registro de direcciones AR, transmite las señales al bus de datos
reforzando el nivel de las mismas. Este registro, a diferencia del AR, es bidireccional.
5.3. REGISTRO DE INSTRUCCIONES -IR-
La primera fase en la ejecución de una instrucción es la fase de búsqueda (opcode Fetch) en
la que se lee el código de operación de la instrucción (1 byte) de la memoria. Este código de
12
operación, una vez leído, se almacena en el registro de instrucción IR. En una segunda fase la
unidad de control decodifica el código de operación y genera las señales de control
adecuadas para la ejecución de dicha instrucción.
5.4. REGISTRO DE ESTADOS (FLAGS)
En realidad este registro puede considerarse como una serie de registros de 1 bit,
denominados bits de condición o flags. Estos bits pueden modificarse por ciertos resultados
producidos en operaciones realizadas por la ALU. Estos bits pueden ser consultados por
algunas instrucciones, sobre todo en las de ruptura de secuencia condicional.
5.4.1. Acarreo -C- (Carry)
El bit de acarreo tiene dos funciones distintas :
a) Acarreo aritmético, es decir el noveno bit que puede generarse durante una operación
aritmética. Es un desbordamiento del resultado de ocho bits, por ejemplo al sumar :
FC 1 1 1 1 1 1 0 0
81 1 0 0 0 0 0 0 1
-----------------
17D Carry = 1 0 1 1 1 1 1 0 1
b) El acarreo sirve también como posición de desbordamiento durante operaciones de
rotación y desplazamiento. El acarreo en este caso es como el noveno bit del registro.
5.4.2. Bit de signo -S-
Está conectado al bit 7 (MSB) del resultado. En las operaciones en complemento a dos el bit
7 es el bit de signo. Un 1 en este bit indica que el número es negativo.
5.4.3. Bit de cero -Z-
Este bit se pone a "1"si el resultado de la operación es cero.
5.4.4. Bit de paridad -P-
13
Este bit informa sobre el número de bits que toman el valor lógico 1 en un registro
(normalmente el acumulador), se suele emplear para detectar si ha habido errores en la
recepción. Si se trabaja con paridad par, el bit de paridad se pondrá a "1" , si el número de
unos es par.
5.4.5. Bit del estado de las interrupciones -I-
Este bit indica si las interrupciones están permitidas o no. Por ejemplo si está a "1" las
interrupciones están permitidas, mientras que si está a "0" estarían bloqueadas.
Los registros de condición junto con el acumulador se denominan palabra de estado del
programa PSW (Program Status Word). Es la información imprescindible que se debe
guardar (en el stack) cuando se suspende un programa, por ejemplo, debido a la aceptación
de una interrupción. En muchos casos se guarda el contador del programa PC, PSW y los
registros generales, de esta forma se podrá recuperar toda esta información al volver al punto
del programa donde éste se encontraba cuando se suspendió y en el mismo estado.
La mayor parte de las instrucciones realizadas por el procesador influyen en los registros de
condición, siendo muy importante conocer en cada caso qué bits de estado modifican.
5.5. UNIDAD ARITMÉTICA Y LÓGICA ALU
Realiza las operaciones aritméticas, lógicas de desplazamiento y de rotación. El acumulador
puedeserfuenteydestinodeunaoperación.Normalmenteenelacumuladorseencuentrauno
de los operandos, el otro operando se suministra através del bus de datos interno procedente
de un registro interno, memoria o periférico y el resultado se deposita en el acumulador. Las
operaciones realizadas por la ALU pueden modificar los registros de estado.
5.6. UNIDAD DE CONTROL
Dotada del decodificadordeinstrucciones;esteelementorecibeelcódigodeoperacióndelas
instrucciones desde la memoria por el bus de datos, almacenándolo temporalmente en el
registro de instrucciones IR. El decodificador de instrucciones lo interpreta, generando las
14
señales de control adecuadas para ejecutarla. La unidad de control genera las señales de
sincronismo para la ALU, la memoria y los circuitos de entrada-salida. Se comunica con el
resto del sistema con el bus de control. Las líneas del bus de control podríamos clasificarlas
en los siguientes tipos:
5.6.1. Control de lectura-escritura
Gobiernan las operaciones de lectura y escritura entre el microprocesador y los circuitos
externos de memoria o periféricos de entrada-salida.
Orden de lectura RD (Read) (Salida).
Orden de escritura WR (Write) (Salida).
Algunos microprocesadores distinguen entre memoria y dispositivos de entrada-salida
mediante una línea de control IO/M (entrada-salida/memoria). En estos casos el
microprocesador dispone de instrucciones específicas de entrada-salida, ocupando un mapa
de memoria específico para periféricos distinto del mapa de memoria propiamente dicho. En
caso contrario se reserva dentro del espacio de direcciones de memoria una parte para
asignarlo a entrada-salidas.
5.6.2. Control de interrupciones
Petición de interrupción INTR (Entrada)
Reconocimiento de interrupción INTA (Salida)
Hay microprocesadores que pueden tener más líneas de interrupción.
5.6.3. Acceso directo a memoria
En las operaciones de entrada-salida el microprocesador controla la transferencia de datos.
La información de un periférico que quiere almacenarse en la memoria se transfiere del
periférico al microprocesador y éste lo envía a la memoria. De la misma forma una
información que hay que enviar desde la memoria a un periférico se realiza a través del
microprocesador.
En algunos procesos este envío-recepción de información podría resultar muy lento y para
15
evitarlo se emplean periféricos capaces de transferir datos desde o hacia la memoria desde el
periférico sin pasar por el microprocesador, son los dipositivos de acceso directo a memoria
DMA (Direct Memory Access).
El DMA es un procesador especial que se conecta a los buses de direcciones, datos y
control. Cuando el DMA no trabaja sus líneas presentan altaimpedancia. Cuando trabaja, el
DMA necesita utilizar el bus del sistema y para ello existen dos señales de control.
HOLD (Entrada). Es una petición al microprocesador para que se detenga y ponga los buses
en estado de alta impedancia. Cuando el microprocesadoratiendelapeticióndeHOLDenvía
al exterior una señal de reconocimiento que se conecta al DMA.
HOLDA (Hold acknowledge) (Salida).Reconocimiento de HOLD. Es la indicación de que
el microprocesador se ha desconectado de los buses y el DMA puede apropiarse de los
mismos.
5.6.4. Petición de RESET y reconocimiento de RESET (Reset-in y Reset-out)
Cuando se activa la línea de entrada RESET, actúa como si fuera una interrupción que
inicializa el sistema. La señal de salida RESET informa del estado del reset y se conecta a
algunas unidades de entrada-salida para inicializarlas.
En muchos microprocesadores al actuar el RESET el contador de programa PC se carga con
0000H. Algunos bits de condición son afectados y el microprocesador se coloca en fase de
búsqueda.
5.6.5. Líneas de sincronismo
En muchos microprocesadores es una única línea de reloj (Clock). Esta señal determina la
duración de las instrucciones, los instantes en que entran o salen datos, señales de control,
etc.
El conjunto de las líneas del bus de direcciones A0-A15 unidireccionales y triestado, junto
con las del bus de datos D0-D7 bidireccionales y triestado y las del bus de control
constituyen el bus del sistema.
16
En muchas ocasiones un sistema microcomputador ha de conectarse con otro
microcomputadores o sistemas con los que debe establecer un diálogo para intercambiar
información. Se establece de esta forma el concepto de bus externo. Algunos de estos buses
están normalizados entre ellos se podrían citar el S-100, LSI-11 (Digital Equipment
Corporation DEC), Multibus (Intel), IEEE-488 (GPIB, HPIB).
6. REPRESENTACIÓN Y EJECUCIÓN DE LAS INSTRUCCIONES
La finalidad de un microprocesador consiste en procesar unos datos de acuerdo con un
programa formado por una secuencia de instrucciones que se encuentra almacenado en
memoria.
El formato de una instrucción puede estar constituido por cuatro campos : etiqueta, código de
operación, operando y comentarios.
- La etiqueta es siempre opcional, es un símbolo cuyo valor corresponde a la posición de
memoria donde se encuentra la instrucción.
- Código de operación. En los microprocesadores de ocho bits ocupa un byte y determina
el tipo de operación que realiza la instrucción. Al emplear ocho bits el número máximo de
instrucciones es de 256, aunque normalmente no se utilizan todas las combinaciones
posibles. Los códigos empleados constituyen el lenguaje máquina que entiende el
microprocesador.
- Operando . Dependiendo del tipo de instrucción pueden existir: ninguno, uno o dos bytes
en los que figurarán los datos sobre los que se efectuará la operación indicada por el
código de operación.
- Comentarios. Este campo es opcional y sirve para que el programa tenga una mayor
comprensión.
ETIQUETA CÓDIGO DE OPERACIÓN OPERANDO COMENTARIOS
SALTO: MOV A,#0BAH ;Cargar el registro
17
A con el valor BA
Prescindiendo de los campos de la etiqueta y los comentarios que son opcionales (no ocupan
memoria de programa, no ocupan código máquina), una instrucción puede constar de uno,
dos o tres bytes.
Instrucciones de un byte
D7 D6 D5 D4 D3 D2 D1 D0 Código de operación
Ejemplos:
MOV A,B Carga el acumulador con el contenido del registro B.
ORL A,B Realiza la función OR entre el contenido del acumulador y el contenido del
registro B. El resultado se deposita en el acumulador.
Instrucciones de dos bytes
El primer byte corresponde al código de operación y el segundo al operando.
1er
Byte D7 D6 D5 D4 D3 D2 D1 D0 Código de operación
2º Byte D7 D6 D5 D4 D3 D2 D1 D0 Operando
Ej. MOV A, #0FH Carga el acumulador con 0F.
Instrucciones de tres bytes
El primer byte corresponde al código de operación y el segundo y tercero al operando.
1er
Byte D7 D6 D5 D4 D3 D2 D1 D0 Código de operación
2º Byte D7 D6 D5 D4 D3 D2 D1 D0 )
3er
Byte D7 D6 D5 D4 D3 D2 D1 D0 ) Operando
Ej. MOV DPTR, #2000H Carga el puntero de datos con 2000
(DPH=20 y DPL=00).
La ejecución de un programa consiste en una secuencia de operaciones de escritura y lectura,
transfiriéndose un byte entre la CPU y una dirección de memoria o dispositivo de entrada-
18
salida y viceversa.
Capa operación de lectura o escritura es un CICLO DE MÁQUINA. La ejecución de una
instrucciónesunCICLO DE INSTRUCCIÓN yestáconstituidaporvariosciclosmáquina.
A su vez cada ciclo máquina está constituido por variosCICLOS DE RELOJ (períodos de
reloj del sistema).
La ejecución de una instrucción consta de dos fases :
- Fase de búsqueda (Opcode Fetch) y decodificación.
- Fase de ejecución.
La fase de búsqueda consiste en la lectura del código de operación de la instrucción. El
contador del programa envía al bus de direcciones la posición donde se encuentra el código
de operación de la instrucción. La CPU genera una orden de lectura y el código de operación
se deposita en el bus de datos desde donde se transfiere al registro de instrucciones IR. Este
byte es decodificado por la unidad de control y determina si es una instrucción multibyte. En
este segundo caso se necesitarán más ciclos máquina (lectura de memoria) par obtener la
instrucción completa. El destino de estos bytes ya no es el registro de instrucción, sino algún
registro de uso general o el acumulador. Aquí finaliza la fase de búsqueda y decodificación.
La fase de ejecución en algunas instrucciones se realiza en el último ciclo de reloj de la fase de
búsqueda, otras instrucciones requieren nuevos ciclos máquina para su ejecución.
En todo el proceso es la unidad de control quien genera las órdenes necesarias para realizar la
instrucción.
7. TIPOS DE DIRECCIONAMIENTO
Son los métodos que existen para indicar, a partir del código de operación, el lugar donde se
encuentra el operando.
19
7.1. Direccionamiento directo o absoluto
El segundo y tercer byte de la instrucción contienen la dirección de memoria donde se
encuentra el operando.
Ej.: LDA 20F5H (8085)
El acumulador se carga con el contenido de la posición de memoria 20F5.
7.2. Direccionamiento paginado
La memoria es como si estuviera dividida en páginas (64K=256 páginas de 256 posiciones).
El segundo byte representa la posición dentro de una de las 28
=256 páginas de que consta la
memoria.
Algunos microprocesadores pueden seleccionar la página y en otros puede ser una página fija
por ejemplo la 00, con lo que la dirección absoluta estaría comprendida entre 0000 y 00FF.
Ej. STA A,20 Almacena el contenido del acumulador en la posición 20H de la
página 00 (dirección absoluta 0020). (8085)
7.3. Direccionamiento inmediato
El segundo byte de la instrucción corresponde al dato.
Ej. MOV A,#80H El acumulador se carga con 80H.
7.4. Direccionamiento indexado
El segundo byte de la instrucción se suma o resta al contenido del registro indice IX y el
resultado corresponde a la dirección del operando.
Ej. ADD A IX,25 Sumar al acumulador el contenido de la dirección (IX)+25.
Si IX=60, el dato a sumar se encuentra en la dirección 0085. (8085)
7.5. Direccionamiento indirecto
20
El segundo y el tercer byte de la instrucción es la dirección cuyo contenido y el de la siguiente
posición de memoria, es la dirección del operando.
Ej. STAI F014H El contenido del acumulador se almacena en la dirección contenida
en las posiciones de memoria F014 y F015. (8085)
Este direccionamiento no se emplea mucho, pero sí es más frecuente el direccionamiento
indirecto por registro.
Ej. MOVX A, @DPTR El contenido del acumulador se almacena en la posición de
memoria cuya dirección está contenida en el par de registros
DPH y DPL (DPTR).
7.6. Direccionamiento implícito
El operando se encuentra en un registro al que expresamente hace referencia la instrucción.
Ej. MUL A,B Multiplicación entre el acumulador y el registro B.
7.7. Direccionamiento relativo
El valor absoluto de la dirección del operando se obtiene sumando el segundo byte de la
instrucción con el contenido del contador del programa PC.
8. TIPOS DE INSTRUCCIONES
De acuerdo con el tipo de funciones que realizan se podrían clasificar en :
8.1. Instrucciones aritméticas y lógicas
Entre la primeras se pueden citar instrucciones que realizan sumas, restas, incrementos-
decrementos, multiplicaciones y divisiones. Las segundas realizan funciones lógicas como
21
AND, OR, OR-Exclusiva, complementación.
Enestegrupopuedenincluirselasinstruccionesdecomparación,desplazamientoyrotaciones.
8.2. Instrucciones de transferencia de datos
Trasladan datos entre la memoria y los registros de la CPU y viceversa e intercambios entre
registros de la CPU.
8.3. Instrucciones de ruptura de secuencia
Pueden ser de tipo salto sin retorno, llamadas a subrutinas y retornos de subrutinas.
Estas instrucciones pueden ser además incondicionales o condicionales, en este segundocaso
la condición será algún flag del registro de estados.
Antes de saltar a una subrutina el contador del programa se guarda en la pila (stack), para
poder retornar al programa principal una vez ejecutada la subrutina.
Al finalizar la subrutina, hay que colocar una instrucción de retorno (RET) que devuelve al
contador del programa la dirección de la siguiente instrucción del programa principal previo a
la llamada a la subrutina.
8.4. Instrucciones de manejo de la pila
Permiten almacenar datos en el tope de la pila (PUSH) y sacar datos de la misma (POP). El
puntero de la pila se actualiza con estas instrucciones y apunta siempre al tope de la misma (
dirección del último byte introducido en el stack).
8.5. Instrucciones de entrada-salida
Lasinstrucciones de entrada-salida (IN-OUT)sonequivalentesalasdeescrituraylecturade
memoria. Su direccionamiento suele ser más corto y se activan líneas de control específicas
I0/M,_=1 indicando que la operación se realiza sobre la unidad de entrada-salida.
22
8.6. Instrucciones especiales y de control
Instrucción de parar el programa HLT (Halt), de este estado se sale con un reset o una
interrupción. Instrucción de no operación NOP, el microprocesador consume un tiempo sin
hacer nada, se puede emplear para rellenar posiciones de memoria y dejar el resto del
programa sin modificar.
Instrucciones de control de interrupciones, permiso o deshabilitación de interrupciones,
máscaras de interrupciones, interrupciones pendientes.
9. SELECCIÓN DE LAS MEMORIAS
Para seleccionar las diferentes posiciones de memoria se emplea el bus de direcciones. Como
los microprocesadores de 8 bits emplean 16 líneas de dirección, se pueden seleccionar 216
posiciones de memoria. El mapa de memoria comprende desde 0000H hasta FFFFH.
Las memorias utilizadas por los microprocesadores suelen ser del tipo no volátiles (ROM,
EPROM) para programas y datos fijos, y volátiles (RAM) para datos variables. Normalmente
se emplearán diferentes circuitos integrados, necesitando cada uno de ellos una línea de
selección del dispositivo (chip select) y un cierto número de líneas para acceder a las
diferentes posiciones de la misma.
Se emplean normalmente dos métodos de selección para acceder a una posición de memoria,
la selección lineal y la selección decodificada.
La selección lineal consiste en utilizar una línea del bus de direcciones (convenientemente
adaptada) para el chip select de cada circuito integrado de memoria. Tiene la ventaja de la
sencillez y suele emplearse para pequeños sistemas.
Ejemplo. Una EPROM de 2 kbytes.
Una RAM de 2 kbytes.
Cada memoria necesita 11 líneas para seleccionar sus células A0-A10yotraadicionalparael
23
chip-select.
Para el chip-select de la EPROM se puede emplear la A11 (invertida) y para la RAM la A12
(invertida).
Con estas conexiones la EPROM se seleccionaría :
A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 0800H
X X X 0 1 1 1 1 1 1 1 1 1 1 1 1 0FFFH
La línea A12 no puede estar a 1 pues si fuera así, se seleccionarían simultáneamente la
EPROM y la RAM con el consiguiente conflicto. Como las líneas A15, A14, A13 pueden
tomar cualquier valor, realmente la EPROM también se seleccionaría con otras muchas
combinaciones del bus de direcciones.
PorejemplolaprimeraposicióndelaEPROMseseleccionaríaconcualquiercombinaciónde
A15, A14, A13 manteniendo A12=0 A11=1 y A10...A0 = 0.
A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0800H
0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 2800H
0 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 4800H
0 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 6800H
1 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 8800H
1 0 1 . . . . . . . . . . . . . . . . . . . . . . . . . . A800H
1 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . C800H
1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . E800H
Para seleccionar la RAM, A12=1 A11=0
A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
X X X 1 0 0 0 0 0 0 0 0 0 0 0 0 1000H
X X X 1 0 1 1 1 1 1 1 1 1 1 1 1 17FFH
También se seleccionará con otras muchas direcciones pues A15, A14, A13 pueden tomar
24
cualquier valor.
La selección decodificada puede permitir el acceso a todo el mapa de memoria. Los chip-
select de cada memoria se obtienen por medio de un decodificador.
Uno de los decodificadores empleados con esta finalidad es el 8205 de Intel que es
equivalente al circuito TTL 74LS138, ver figura 3.
Para que alguna salida se active (nivel bajo), tiene que estar permitida la decodificación
E1=E2=0 y E3=1. Dependiendo de los niveles en CBA se activará una de las salidas.
La tabla de verdad del circuito es :
CBA S0 S1 S2 S3 S4 S5 S6 S7
000 0 1 1 1 1 1 1 1
001 1 0 1 1 1 1 1 1
010 1 1 0 1 1 1 1 1
011 1 1 1 0 1 1 1 1
100 1 1 1 1 0 1 1 1
101 1 1 1 1 1 1 0 1
111 1 1 1 1 1 1 1 0
Si la decodificación no está permitida, todas las salidas estarán a nivel alto.
El mapa de memoria se podría dividir en ocho grupos de 8K, empleando una de las salidas
del decodificador para cada grupo de memoria. De esta forma se podrían utilizar 8 memorias
25
de hasta 8K cada una de ellas, ver figura 4.
Cada bloque de 8K a su vez podría dividirse en otros ocho grupos de 1K con otro
decodificador y de esta forma serían accesibles los 64K del mapa de memoria en bloques de
1 Kbyte, ver figura 5.
10. PERIFÉRICOS DE ENTRADA SALIDA
Cada microprocesador dispone de una serie de circuitos que facilitan la interconexión del
mismo con el mundo exterior. A este tipo de circuitos se les conoce por familia
microcomputadora y se les denomina periféricos de entrada-salida.
Algunos realizan una función específica como por ejemplo los temporizadores (Timers),
controladores de interrupciones, acceso directo a memoria (DMA), controladores de discos
flexible, controlador de TRC, controlador de teclado, controlador de displays, etc. Otros
periféricossonmásgenéricosypermitenelintercambiodeinformaciónconelmundoexterior,
entre ellos se pueden citar los periféricos para transmisión-recepción en paralelo y los
periféricos para transmisión-recepción serie. Estos últimos conviertenlainformaciónparalelo
enviada por la CPU, en un formato serie y la envían al exterior y reciben una información serie
convirtiéndola en paralelo a la que accede la CPU.
Hay microprocesadores que incluyen la zona de los periféricos dentro del mapa de memoria,
26
por lo que no existe distinción entre una lectura-escritura en memoria o un periférico. Otros
microprocesadores disponen de líneas de control que permiten tratar a los periféricos de
distinta forma que a la memoria, pudiendo en este caso tener unamapa de la zona de entrada-
salida distinto del mapa de memoria.
11. BIBLIOGRAFÍA
CIRCUITOS DIGITALES Y MICROPROCESADORES
Taub
Mc Graw-Hill 1983
DEL CHIP AL SISTEMA. Introducción a los microprocesadores
R. Zaks
Marcombo 1986
PROCESADORES PROGRAMABLES. EL MICROPROCESADOR
E.Mandado
Marcombo 1980
CIRCUITOS ELECTRÓNICOS DIGITALES II
Coordinador E. Muñoz Merino
DPTO. de publicaciones ETSI Telecomunicacion. Madrid 1980
MICROPROCESADORES. Fundamentos, Diseño y Aplicaciones en la Industria y en los
Microcomputadores.
J. M. Angulo
Paraninfo 1981
MICROPROCESADORES Y MICROCOMPUTADORES
Serie Mundo Electrónico
Marcombo 1980
AN INTRODUCTION TO MICROCOMPUTERS
Volume 1. Basic Concepts
Osborne. Mc Graw-Hill 1980
UNDERSTANDING MICROPROCESSORS
Motorola
27
SISTEMAS DIGITALES BASADOS EN MICROPROCESADORES
Gault, Pimmel
Mc Graw-Hill 1982
INTERCONEXIÓN DE PERIFÉRICOS A MICROPROCESADORES
Serie Mundo Electrónico
Marcombo 1980
MICROPROCESADORES
Curso Introducción a la Informática
C. Areitio
ETSI Industriales. Bilbao 1983
MICROPROCESADORES. CONCEPTOS BÁSICOS
J. Arambarri
Facultad de Informática de la UPV/EHU. San Sebastián 1984
ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I
C. Cerrada, V. Feliú
Impresa 1993
MODERN DIGITAL SYSTEMS DESIGN
J. Y. Cheung
J. G. Bredeson
West Publishing Company 1990
ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES II
S. Dormido et al.
Sanz y Torres 1994

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

NIS.docx
NIS.docxNIS.docx
NIS.docx
 
Zonas dmz y_puertos
Zonas dmz y_puertosZonas dmz y_puertos
Zonas dmz y_puertos
 
Actividad No. 1.10 Análisis de vulnerabilidades con VEGA en Kali Linux
Actividad No. 1.10 Análisis de vulnerabilidades con VEGA en Kali LinuxActividad No. 1.10 Análisis de vulnerabilidades con VEGA en Kali Linux
Actividad No. 1.10 Análisis de vulnerabilidades con VEGA en Kali Linux
 
Arquitectura IoT
Arquitectura IoTArquitectura IoT
Arquitectura IoT
 
OLTP-Bench
OLTP-BenchOLTP-Bench
OLTP-Bench
 
Data warehouse
Data warehouseData warehouse
Data warehouse
 
Administración de memoria el linux
Administración de memoria el linuxAdministración de memoria el linux
Administración de memoria el linux
 
Bases de Datos Distribuidas
Bases de Datos DistribuidasBases de Datos Distribuidas
Bases de Datos Distribuidas
 
Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016
 
Sqlite Base de Datos
Sqlite Base de Datos Sqlite Base de Datos
Sqlite Base de Datos
 
Data warehouse architecture
Data warehouse architecture Data warehouse architecture
Data warehouse architecture
 
Big Data Evolution
Big Data EvolutionBig Data Evolution
Big Data Evolution
 
Fundamentos de la gestión de datos
Fundamentos de la gestión de datos Fundamentos de la gestión de datos
Fundamentos de la gestión de datos
 
proyecto conexion netbeans con Mysql
proyecto conexion netbeans con Mysqlproyecto conexion netbeans con Mysql
proyecto conexion netbeans con Mysql
 
Cs6703 grid and cloud computing unit 5
Cs6703 grid and cloud computing unit 5Cs6703 grid and cloud computing unit 5
Cs6703 grid and cloud computing unit 5
 
Los gestores de base de datos
Los gestores de base de datosLos gestores de base de datos
Los gestores de base de datos
 
Unit 2
Unit 2Unit 2
Unit 2
 
GESTION DE LA RED INTEGRADA
GESTION DE LA RED INTEGRADAGESTION DE LA RED INTEGRADA
GESTION DE LA RED INTEGRADA
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
SOA para Novatos
SOA para NovatosSOA para Novatos
SOA para Novatos
 

Similar a Introducción a los microprocesadores j. sainz

Microcontroladores
MicrocontroladoresMicrocontroladores
MicrocontroladoresJuan Anaya
 
El microprocesador
El microprocesadorEl microprocesador
El microprocesadoralumnos2012
 
Técnico De Sistema 10-4
Técnico De Sistema 10-4 Técnico De Sistema 10-4
Técnico De Sistema 10-4 david5076
 
U1 microcontroladores
U1 microcontroladoresU1 microcontroladores
U1 microcontroladoresSENA
 
U1 Microcontroladores Diseño de Productos Electrónicos con Microcontroladores
U1 Microcontroladores  Diseño de Productos Electrónicos con MicrocontroladoresU1 Microcontroladores  Diseño de Productos Electrónicos con Microcontroladores
U1 Microcontroladores Diseño de Productos Electrónicos con MicrocontroladoresSENA
 
Nuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresNuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresKaro Amaya
 
Nuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresNuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresLeydi Andrea Barrios
 
Sesion 1 atmega8
Sesion 1 atmega8Sesion 1 atmega8
Sesion 1 atmega8davidepn2
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informaticatefadianis
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informaticatefadianis
 
Apuntes de microcontroladores _PIC16F84 apunte.pdf
Apuntes de microcontroladores _PIC16F84 apunte.pdfApuntes de microcontroladores _PIC16F84 apunte.pdf
Apuntes de microcontroladores _PIC16F84 apunte.pdfEdwin4321
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesadoranyely-brayan
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesadoranyely-brayan
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesadoranyely-brayan
 

Similar a Introducción a los microprocesadores j. sainz (20)

Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
El microprocesador
El microprocesadorEl microprocesador
El microprocesador
 
Técnico en sistemas
Técnico en sistemasTécnico en sistemas
Técnico en sistemas
 
Técnico en sistemas
Técnico en sistemasTécnico en sistemas
Técnico en sistemas
 
Técnico De Sistema 10-4
Técnico De Sistema 10-4 Técnico De Sistema 10-4
Técnico De Sistema 10-4
 
U1 microcontroladores
U1 microcontroladoresU1 microcontroladores
U1 microcontroladores
 
U1 Microcontroladores Diseño de Productos Electrónicos con Microcontroladores
U1 Microcontroladores  Diseño de Productos Electrónicos con MicrocontroladoresU1 Microcontroladores  Diseño de Productos Electrónicos con Microcontroladores
U1 Microcontroladores Diseño de Productos Electrónicos con Microcontroladores
 
Nuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresNuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadores
 
Nuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadoresNuevas generaciones de microprocesadores
Nuevas generaciones de microprocesadores
 
Sesion 1 atmega8
Sesion 1 atmega8Sesion 1 atmega8
Sesion 1 atmega8
 
Micro1
Micro1Micro1
Micro1
 
Unidad Central de Procesamiento - Microprocesador
Unidad Central de Procesamiento - MicroprocesadorUnidad Central de Procesamiento - Microprocesador
Unidad Central de Procesamiento - Microprocesador
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
 
Micro1.ppt
Micro1.pptMicro1.ppt
Micro1.ppt
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
Apuntes de microcontroladores _PIC16F84 apunte.pdf
Apuntes de microcontroladores _PIC16F84 apunte.pdfApuntes de microcontroladores _PIC16F84 apunte.pdf
Apuntes de microcontroladores _PIC16F84 apunte.pdf
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesador
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesador
 
Trabajo microprocesador
Trabajo microprocesadorTrabajo microprocesador
Trabajo microprocesador
 

Más de Wilfredy Inciarte

Anatomia del icono wilfredy inciarte
Anatomia del icono   wilfredy inciarteAnatomia del icono   wilfredy inciarte
Anatomia del icono wilfredy inciarteWilfredy Inciarte
 
Metodologias de modelización r. fernandez
Metodologias de modelización   r. fernandezMetodologias de modelización   r. fernandez
Metodologias de modelización r. fernandezWilfredy Inciarte
 
Metodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaughMetodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaughWilfredy Inciarte
 
Teoria general de sistemas e. bustos
Teoria general de sistemas   e. bustosTeoria general de sistemas   e. bustos
Teoria general de sistemas e. bustosWilfredy Inciarte
 
Sistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicasSistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicasWilfredy Inciarte
 
Principios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morinPrincipios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morinWilfredy Inciarte
 
Modelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficiosModelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficiosWilfredy Inciarte
 
Guia del analisis costo beneficio - proyectos de inversion
Guia del analisis costo   beneficio - proyectos de inversionGuia del analisis costo   beneficio - proyectos de inversion
Guia del analisis costo beneficio - proyectos de inversionWilfredy Inciarte
 
Guia para la formulacion de royectos metodologia bpun
Guia para la formulacion de royectos   metodologia bpunGuia para la formulacion de royectos   metodologia bpun
Guia para la formulacion de royectos metodologia bpunWilfredy Inciarte
 
Manual de proyectos agencia andaluza del voluntariado
Manual de proyectos   agencia andaluza del voluntariadoManual de proyectos   agencia andaluza del voluntariado
Manual de proyectos agencia andaluza del voluntariadoWilfredy Inciarte
 
Formulación y evaluación de proyectos de inversión e. pimentel
Formulación y evaluación de proyectos de inversión   e. pimentelFormulación y evaluación de proyectos de inversión   e. pimentel
Formulación y evaluación de proyectos de inversión e. pimentelWilfredy Inciarte
 
Evaluación de proyectos j. sarmiento
Evaluación de proyectos   j. sarmientoEvaluación de proyectos   j. sarmiento
Evaluación de proyectos j. sarmientoWilfredy Inciarte
 
Aspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectosAspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectosWilfredy Inciarte
 
Evolucion de los microprocesadores
Evolucion de los microprocesadoresEvolucion de los microprocesadores
Evolucion de los microprocesadoresWilfredy Inciarte
 

Más de Wilfredy Inciarte (20)

Anatomia del icono wilfredy inciarte
Anatomia del icono   wilfredy inciarteAnatomia del icono   wilfredy inciarte
Anatomia del icono wilfredy inciarte
 
Metodologias de modelización r. fernandez
Metodologias de modelización   r. fernandezMetodologias de modelización   r. fernandez
Metodologias de modelización r. fernandez
 
Metodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaughMetodología orientada a objetos (omt). rumbaugh
Metodología orientada a objetos (omt). rumbaugh
 
Metodologia omt
Metodologia omtMetodologia omt
Metodologia omt
 
Teoria general de sistemas e. bustos
Teoria general de sistemas   e. bustosTeoria general de sistemas   e. bustos
Teoria general de sistemas e. bustos
 
Teoria de sistemas
Teoria de sistemasTeoria de sistemas
Teoria de sistemas
 
Sistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicasSistemas conceptos y caracteristicas
Sistemas conceptos y caracteristicas
 
Int. ing sistemas
Int. ing sistemasInt. ing sistemas
Int. ing sistemas
 
Etapas de un proyecto
Etapas de un proyectoEtapas de un proyecto
Etapas de un proyecto
 
Estudio de factibilidad
Estudio de factibilidadEstudio de factibilidad
Estudio de factibilidad
 
Principios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morinPrincipios y aplicaciones del análisis costo beneficio - e. morin
Principios y aplicaciones del análisis costo beneficio - e. morin
 
Modelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficiosModelo para el analisis de los costos y beneficios
Modelo para el analisis de los costos y beneficios
 
Guia del analisis costo beneficio - proyectos de inversion
Guia del analisis costo   beneficio - proyectos de inversionGuia del analisis costo   beneficio - proyectos de inversion
Guia del analisis costo beneficio - proyectos de inversion
 
Guia para la formulacion de royectos metodologia bpun
Guia para la formulacion de royectos   metodologia bpunGuia para la formulacion de royectos   metodologia bpun
Guia para la formulacion de royectos metodologia bpun
 
Manual de proyectos agencia andaluza del voluntariado
Manual de proyectos   agencia andaluza del voluntariadoManual de proyectos   agencia andaluza del voluntariado
Manual de proyectos agencia andaluza del voluntariado
 
Formulación y evaluación de proyectos de inversión e. pimentel
Formulación y evaluación de proyectos de inversión   e. pimentelFormulación y evaluación de proyectos de inversión   e. pimentel
Formulación y evaluación de proyectos de inversión e. pimentel
 
Evaluación de proyectos j. sarmiento
Evaluación de proyectos   j. sarmientoEvaluación de proyectos   j. sarmiento
Evaluación de proyectos j. sarmiento
 
Aspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectosAspestos generales de la gestion de proyectos
Aspestos generales de la gestion de proyectos
 
Evolucion de los microprocesadores
Evolucion de los microprocesadoresEvolucion de los microprocesadores
Evolucion de los microprocesadores
 
Transformada de laplace
Transformada de laplaceTransformada de laplace
Transformada de laplace
 

Último

La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxpvtablets2023
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnnlitzyleovaldivieso
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 

Último (20)

La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnn
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 

Introducción a los microprocesadores j. sainz

  • 1. INTRODUCCIÓN A LOS MICROPROCESADORES J. A. SAINZ CATEDRÁTICO E.U. ÁREA DE TECNOLOGÍA ELECTRÓNICA E.U.I.T.I. VITORIA-GASTEIZ 2000 euskal herriko unibertsitatea universidad del país vasco eman ta zabal zazu
  • 2. 1 1. HISTORIA DE LOS MICROPROCESADORES ...............................................2 2. VENTAJAS DE LOS MICROPROCESADORES ..............................................3 3. EL MICROPROCESADOR..................................................................................4 4. CONFIGURACIÓN DE UN SISTEMA MICROPROCESADOR ....................5 4.1. Unidad de entrada-salida ........................................................................................7 4.2. Memorias...............................................................................................................7 4.3. Funciones y características del microprocesador (CPU) ..........................................7 5. ARQUITECTURA DE LOS MICROPROCESADORES...................................8 5.1. Registros de direccionamiento PC, SP, IX...............................................................9 5.2. Registros de datos ................................................................................................10 5.3. Registro de instrucciones IR..................................................................................11 5.4. Registro de estados (flags) ....................................................................................11 5.5. Unidad Aritmética y Lógica ALU..........................................................................13 5.6. Unidad de Control................................................................................................13 6. REPRESENTACIÓN Y EJECUCIÓN DE LAS INSTRUCCIONES...............15 7. TIPOS DE DIRECCIONAMIENTO..................................................................18 7.1. Direccionamiento directo o absoluto......................................................................18 7.2. Direccionamiento paginado ...................................................................................18 7.3. Direccionamiento inmediato...................................................................................18 7.4. Direccionamiento indexado ...................................................................................19 7.5. Direccionamiento indirecto....................................................................................19 7.6. Direccionamiento implícito ....................................................................................20 7.7. Direccionamiento relativo ......................................................................................20 8. TIPOS DE INSTRUCCIONES ...........................................................................20 8.1. Instrucciones aritméticas y lógicas..........................................................................20 8.2. Instrucciones de transferencias de datos ................................................................20 8.3. Instrucciones de ruptura de secuencia....................................................................20 8.4. Instrucciones de manejo de la pila .........................................................................20 8.5. Instrucciones de entrada-salida..............................................................................21 8.6. Instrucciones especiales y de control.....................................................................21 9. SELECCIÓN DE MEMORIAS ..........................................................................21 10. PERIFÉRICOS DE ENTRADA-SALIDA........................................................24 11. BIBLIOGRAFÍA................................................................................................25
  • 3. 2 INTRODUCCIÓN A LOS MICROPROCESADORES 1. HISTORIA DE LOS MICROPROCESADORES El primer microprocesador fue el 4004 de Intel, y apareció en el mercado en 1971. Este hecho fue accidental y se debió a un contrato entre la empresa Intel y una compañía japonesa de calculadores para el desarrrollo de un circuito integrado para dicho producto. El desarrollo no fue aceptado y la firma Intel se decidió por su comercialización. El 4004 era un microprocesador de 4 bits realizado con tecnología PMOS. El siguiente suceso importante en la historia de los microprocesadores fue la introducción del 8008 de Intel en 1972, que consistía en un microprocesador de 8 bits con tecnología PMOS. La empresa Display Terminals Corporation realizó un concurso para la producción de un procesador monolítico capaz de controlar un TRC. Se presentaron Intel y Texas Instruments y ambas obtuvieron el contrato del desarrollo. Poco después Texas se retiró, mientras Intel logró desarrollar el producto que cumplía todos los requisitos, pero tenía un inconveniente, "era lento". El producto desarrollado era el 8008. Intel, que por aquel entonces se dedicaba fundamentalmente a la fabricación dememorias se decidió a comercializarlo pensando sobre todo en vender más memorias. Ante su sorpresa, las ventas del 8008 crecieron rápidamente e inmediatamente se dieron cuenta de la gran importancia de este nuevo producto, el microprocesador; para el siguiente año 1973, Intel lanzó al mercado el sucesor del 8008, el 8080 en tecnología NMOS y por tanto más rápido (unas diez veces más que el 8008). Posteriormente los competidores de Intel desarrollaron sus propias versiones, Motorola el 6800, Rockwell el PPS8, Signetics el 2650. La tercera generación de micros de 8 bits fueron los sucesores del 8080 y 6800, tales como el Z80 de Zilog, el 8085 de Intel, el 6502 de Rockwell y Mos Technology, y también los
  • 4. 3 microcomputadores monopastilla el 8048 de Intel, el PPS4 de Rockwell, el TMS 1000 y el 9940 de Texas Instruments. En la actualidad hay disponibles en el mercado microprocesadores de 16 y 32 bits. Entre ellos podemos citar de la casa Motorola los microprocesadores 68000, 68008, 68020; de la casa Intel los 8086, 80186, 80286, 80386, 80486, Pentium y el Z8000 de Zilog. 2. VENTAJAS DE LOS MICROPROCESADORES Los microprocesadores están desplazando a la electrónica tradicional de una parte importante de sus campos de aplicación y encontrando utilidades en casi todos los campos. Las dos ventajas más importantes del microprocesador son: 1) Emplear menos componentes. Un sistema microcomputador al emplear menos componentes reduce el tamaño del equipo, su consumo y aumenta la fiabilidad al realizar menos conexiones. Estas características reducen el coste del sistema. 2) Programabilidad. Enlossistemasclásicosrealizadosmediantelógicacableada,cadaproductorealizabauna única función sin posibilidad de poder modificar el trabajo realizado a no ser que se cambiara el diseño. Un sistema programable permite modificar la función que realiza sin más que variar el programa. Dicho en pocas palabras, la programación permite disponer de módulos estándar de hardware, de forma que cambiando el programa (software) la tarea que realiza el sistema es distinta. La máquina programada ejecuta un conjunto de operaciones básicas que se realizan al recibir
  • 5. 4 el código de operación de cada instrucción. En cada aplicación las instrucciones a realizar se ordenan adecuadamente formando un programa. La unidad central de proceso CPU consta de un subsistema de proceso y otro de control. La unidad de control decodifica las instrucciones del programa y genera las señales de control para que la unidad de proceso (ALU) ejecute dichas instrucciones. Además suministra las señales de control de los componentes que componen el sistema. Las instrucciones que constituyen el programa se almacenan en una memoria que también contiene los datos que procesa y obtiene la máquina. La máquina programada necesita de unos elementos de adaptación con los periféricos que le comunican con el mundo exterior. Se encargan de transmitir datos a procesar o resultados que se obtienen en el proceso, son los módulos de entrada-salida I/O. 3. EL MICROPROCESADOR Vamos a intentar acotar los límites actuales de lo que los fabricantes y usuarios llaman microprocesador. A lo largo de los cursos de electrónica se desarrollan unos subsistemas digitales cada vez más complejos (puertas, circuitos combinacionales, circuitos secuenciales) que se integran en pastillas y que interconectados pueden realizar operaciones de procesos de datos. Un microprocesador sería un conjunto de tales circuitos, integrados e interconectados todos sobre un único substrato semiconductor, de forma que puede realizar una secuencia de operaciones aritméticas y lógicas controladas. Hay una serie de matices que conviene observar: 1.- El microprocesador realiza una secuencia de operaciones, pero esta secuencia no es
  • 6. 5 única, sino que es programable mediante instrucciones. Las instrucciones residen en una memoria a la que accede el microprocesador, extrae una instrucción, la decodifica, la ejecutayvuelveporotrainstrucciónyasísucesivamente,salvoquerecibaunainstrucción de parar. Las operaciones que implica cada instrucción (microprogramación firmware) se realizan en sincronismo con un tren de impulsos RELOJ. El microprocesador se relaciona en el exterior mediante unos caminos de datos (BUSES) que permiten el intercambio de información digital entre el microprocesador y el exterior. Se puede decir que un microprocesador es una parte de un ordenador, la encargada del control y el proceso de la información llamada CPU (unidad central de proceso). Se podría pensar que la CPU de un ordenador es un microprocesador, a veces es así, pero también la CPU puede realizarse por medio de subsistemas MSI y LSI interconectados (puertas, registros, contadores, sumadores, etc.). La mayor parte de los ordenadores personales emplean un microprocesador como CPU. Un microprocesador no es capaz de hacer nada por sí solo, necesita como mínimo una memoria de la que extraer las instrucciones y unidades de entrada salida I/O para comunicarse con el mundo exterior. El conjunto formado por el microprocesador, memoriayunidadesde I/O suele denominarse sistema microprocesador y es equivalente a un ordenador. Generalmente los fabricantes, además del microprocesador fabrican las memorias, las unidades de entrada-salida y otros periféricos que permiten al usuario realizar un sistema microprocesador a la medida de sus necesidades. 2.- El microprocesador es un circuito integrado realizado en VLSI sobre un único substrato. Este concepto también puede ampliarse, ya que existen microprocesadores que incluyen memoria y puertas de entrada salida (microcontroladores monopastilla). 4. CONFIGURACIÓN DE UN SISTEMA MICROPROCESADOR
  • 7. 6 Un diagrama básico se indica en la figura 1. Se compone de tres bloques enlazados por buses. Esta estructura corresponde a la organización de Von Newmann. Los buses son de tres tipos dependiendo del tipo de información que transporten : - Bus de datos. Circulan los datos que llegan o salen del procesador por la unidad de entradas-salidas, o los resultados parciales que la CPU lee o escribe en memoria. El bus de datos es bidireccional.
  • 8. 7 - Bus de direcciones. Partiendodelmicroprocesador,envíaentodomomentoladirección de la posición de memoria o periférico donde se encuentra la instrucción o el dato que se debe procesar. El bus de direcciones es unidireccional. - Bus de control. Por el que el microprocesador transmite y recibe señales que controlan el funcionamiento de todo el sistema. 4.1. UNIDAD DE ENTRADA-SALIDA Contiene una serie de registros, puertas y controles que permiten la conexión al microprocesador de una serie de periféricos de comunicación con el exterior. De esta forma la CPU tiene una única entrada-salida independiente del tipo de periférico que se conecte. Los periféricos que se conecten dependerán de la aplicación, por ejemplo teclado, CRT, modem, convertidor A/D, sensores, relés, displays, señalizaciones, etc. 4.2. MEMORIAS Almacenan la información del sistema. Son de dos tipos : - RAM para almacenar datos variables, también pueden almacenar programas, aunque éstos se perderían al dejar de alimentar al sistema. Su capacidad es variable y depende de la capacidad de direccionamiento del microprocesador. Generalmente es modular, componiéndose de uno o varios circuitos integrados. La longitud de la palabra de memoria viene impuesta por la CPU; para microprocesadores de 8 bits se necesitarán memorias cuyas palabras tengan 8 bits (1 byte). Para 8088-8086 que son de 16 bits, memoria bloque par e impar de 8 bits cada uno. A0=0 bloque par (banco bajo); A0=1 bloque impar (banco alto). - ROM se emplean para almacenar el programa y datos fijos, Respecto a la capacidad y longitud hay que decir lo mismo que para las RAM.
  • 9. 8 4.3. FUNCIONES Y CARACTERÍSTICAS DEL MICROPROCESADOR (CPU) Es la parte encargada del control y realiza las operaciones aritméticas ylógicasdelprocesode datos. Las funciones básicas de la CPU son : 1. Decodificar las instrucciones que extrae de la memoria. 2. Generar las señales de control para la ejecución de las instrucciones. 3. Ejecución de las instrucciones por medio de la unidad arimética y lógica (ALU). 4. Almacenamiento temporal de los datos en proceso mediante registros. 5. Generación de señales de tiempos que marcan el ritmo del proceso. Las características más importantes de la CPU son : 1. Tamaño de la palabra que es capaz de procesar. Este tamaño viene determinado por la longitud de sus registros y por la longitud de la palabra que puede procesar la ALU. 2. Juego de instrucciones que el microprocesador puede ejecutar. 3. Posibilidad de interrupciones, que permiten alterar la secuencia normal del programa debido a una causa externa. 4. Registros de trabajo. 5. Tiempo de ciclo de instrucción que es el tiempo medio que tarda el microprocesador en buscar y ejecutar una instrucción. 5. ARQUITECTURA DE LOS MICROPROCESADORES (8 bits). Como puede observarse en la figura 2, consta de los siguientes elementos.
  • 10. 9 5.1. REGISTROS DE DIRECCIONAMIENTO PC, SP, IX. Son registros dobles de 16 bits destinados a almacenar direcciones. Están conectados al bus de direcciones a través del registro de direcciones AR (Address Register). Estos registros se dividen en dos bytes, el byte de mayor peso se denomina H (high) y el byte de menor peso L (low). 5.1.1. Contador de programa PC (Programa Counter) Proporciona en cada momento la dirección de la memoria donde se encuentra la siguiente instrucción que hay que ejecutar.
  • 11. 10 El contenido del PC se manda al bus de direcciones a través del registro de direcciones AR, seleccionándose la posición de memoria que contiene el código de operación de la instrucción, esta información se transfiere al bus de datos hasta el registro de datos DR y al registro de instrucciones IR (en la fase de búsqueda), el decodificador de instrucciones de la unidad de control decodifica la instrucción y produce las señales de control necesarias para ejecutar la instrucción en curso. Una vez finalizada la instrucción el PC se actualiza (incrementos de 1, 2 ó 3 unidades) conteniendo la dirección de la siguiente instrucción. Únicamente en casos de ruptura de secuencia de programa,seproducencambiosbruscosen el contenido del contador del programa. 5.1.2. Puntero de la pila SP (Stack Pointer) La pila (stack) es una memoria de lectura-escritura tipo LIFO (last input-first output) último en entrar primero en salir, y resulta indispensable para trabajar con interrupciones y subrutinas. El puntero de la pila SP contiene la dirección del último byte introducido en el stack. El puntero de la pila es un registro doble de 16 bits. La gestión de la pila se realiza por programa (software). 5.1.3. Registro índice IX El indexado es un modo de direccionamiento (forma de obtener el operando de una instrucción) que no disponen todos los microprocesadores. La dirección donde se encuentra el operando se obtiene sumando o restando un desplazamientoalcontenidodelregistroíndice IX. 5.1.4. Registro de direcciones AR (Address Register) Los registros de direccionamiento citados PC, SP, IX transfieren sus contenido al bus de direcciones externo a través del registro de direcciones AR. Básicamente este registro actúa como buffer para las señales que salen al bus de direcciones.
  • 12. 11 5.2. REGISTROS DE DATOS Son registros de 8 bits, aunque algunos microprocesadores pueden actuar sobre dos de ellos de forma simultánea, actuando en este caso como un único registro de 16 bits. 5.2.1. Registros de propósito general Son necesarios pues contienen operandos que pueden ser manejados por la ALU de una forma más rápida que si estuvieran en memoria. Son registros de 8 bits conectados al bus de datos bidireccionalinterno.Lafinalidaddeestosregistrosnoestáprefijadadeantemanoypor esta razón se denominam de propósito general. 5.2.2. El acumulador -A- En todos los microprocesadores muchas de las operaciones que realiza la ALU (unidad aritmética y lógica) uno de los operandos está contenido en el registro denominado acumulador A, el otro operando le llega a la ALU a través del bus de datos interno procedente de otro registro interno, de la memoria o de algún periférico. El resultado de la operación realizada por la ALU se deposita en el acumulador. Las operaciones de entrada-salida a los periféricos se realizan a través del acumulador. El acumulador es un registro de mucha importancia sobre el que se realizan operaciones de lectura, escritura y cálculo. 5.2.3. Registro de datos -DR- Tiene una función similar al registro de direcciones AR, transmite las señales al bus de datos reforzando el nivel de las mismas. Este registro, a diferencia del AR, es bidireccional. 5.3. REGISTRO DE INSTRUCCIONES -IR- La primera fase en la ejecución de una instrucción es la fase de búsqueda (opcode Fetch) en la que se lee el código de operación de la instrucción (1 byte) de la memoria. Este código de
  • 13. 12 operación, una vez leído, se almacena en el registro de instrucción IR. En una segunda fase la unidad de control decodifica el código de operación y genera las señales de control adecuadas para la ejecución de dicha instrucción. 5.4. REGISTRO DE ESTADOS (FLAGS) En realidad este registro puede considerarse como una serie de registros de 1 bit, denominados bits de condición o flags. Estos bits pueden modificarse por ciertos resultados producidos en operaciones realizadas por la ALU. Estos bits pueden ser consultados por algunas instrucciones, sobre todo en las de ruptura de secuencia condicional. 5.4.1. Acarreo -C- (Carry) El bit de acarreo tiene dos funciones distintas : a) Acarreo aritmético, es decir el noveno bit que puede generarse durante una operación aritmética. Es un desbordamiento del resultado de ocho bits, por ejemplo al sumar : FC 1 1 1 1 1 1 0 0 81 1 0 0 0 0 0 0 1 ----------------- 17D Carry = 1 0 1 1 1 1 1 0 1 b) El acarreo sirve también como posición de desbordamiento durante operaciones de rotación y desplazamiento. El acarreo en este caso es como el noveno bit del registro. 5.4.2. Bit de signo -S- Está conectado al bit 7 (MSB) del resultado. En las operaciones en complemento a dos el bit 7 es el bit de signo. Un 1 en este bit indica que el número es negativo. 5.4.3. Bit de cero -Z- Este bit se pone a "1"si el resultado de la operación es cero. 5.4.4. Bit de paridad -P-
  • 14. 13 Este bit informa sobre el número de bits que toman el valor lógico 1 en un registro (normalmente el acumulador), se suele emplear para detectar si ha habido errores en la recepción. Si se trabaja con paridad par, el bit de paridad se pondrá a "1" , si el número de unos es par. 5.4.5. Bit del estado de las interrupciones -I- Este bit indica si las interrupciones están permitidas o no. Por ejemplo si está a "1" las interrupciones están permitidas, mientras que si está a "0" estarían bloqueadas. Los registros de condición junto con el acumulador se denominan palabra de estado del programa PSW (Program Status Word). Es la información imprescindible que se debe guardar (en el stack) cuando se suspende un programa, por ejemplo, debido a la aceptación de una interrupción. En muchos casos se guarda el contador del programa PC, PSW y los registros generales, de esta forma se podrá recuperar toda esta información al volver al punto del programa donde éste se encontraba cuando se suspendió y en el mismo estado. La mayor parte de las instrucciones realizadas por el procesador influyen en los registros de condición, siendo muy importante conocer en cada caso qué bits de estado modifican. 5.5. UNIDAD ARITMÉTICA Y LÓGICA ALU Realiza las operaciones aritméticas, lógicas de desplazamiento y de rotación. El acumulador puedeserfuenteydestinodeunaoperación.Normalmenteenelacumuladorseencuentrauno de los operandos, el otro operando se suministra através del bus de datos interno procedente de un registro interno, memoria o periférico y el resultado se deposita en el acumulador. Las operaciones realizadas por la ALU pueden modificar los registros de estado. 5.6. UNIDAD DE CONTROL Dotada del decodificadordeinstrucciones;esteelementorecibeelcódigodeoperacióndelas instrucciones desde la memoria por el bus de datos, almacenándolo temporalmente en el registro de instrucciones IR. El decodificador de instrucciones lo interpreta, generando las
  • 15. 14 señales de control adecuadas para ejecutarla. La unidad de control genera las señales de sincronismo para la ALU, la memoria y los circuitos de entrada-salida. Se comunica con el resto del sistema con el bus de control. Las líneas del bus de control podríamos clasificarlas en los siguientes tipos: 5.6.1. Control de lectura-escritura Gobiernan las operaciones de lectura y escritura entre el microprocesador y los circuitos externos de memoria o periféricos de entrada-salida. Orden de lectura RD (Read) (Salida). Orden de escritura WR (Write) (Salida). Algunos microprocesadores distinguen entre memoria y dispositivos de entrada-salida mediante una línea de control IO/M (entrada-salida/memoria). En estos casos el microprocesador dispone de instrucciones específicas de entrada-salida, ocupando un mapa de memoria específico para periféricos distinto del mapa de memoria propiamente dicho. En caso contrario se reserva dentro del espacio de direcciones de memoria una parte para asignarlo a entrada-salidas. 5.6.2. Control de interrupciones Petición de interrupción INTR (Entrada) Reconocimiento de interrupción INTA (Salida) Hay microprocesadores que pueden tener más líneas de interrupción. 5.6.3. Acceso directo a memoria En las operaciones de entrada-salida el microprocesador controla la transferencia de datos. La información de un periférico que quiere almacenarse en la memoria se transfiere del periférico al microprocesador y éste lo envía a la memoria. De la misma forma una información que hay que enviar desde la memoria a un periférico se realiza a través del microprocesador. En algunos procesos este envío-recepción de información podría resultar muy lento y para
  • 16. 15 evitarlo se emplean periféricos capaces de transferir datos desde o hacia la memoria desde el periférico sin pasar por el microprocesador, son los dipositivos de acceso directo a memoria DMA (Direct Memory Access). El DMA es un procesador especial que se conecta a los buses de direcciones, datos y control. Cuando el DMA no trabaja sus líneas presentan altaimpedancia. Cuando trabaja, el DMA necesita utilizar el bus del sistema y para ello existen dos señales de control. HOLD (Entrada). Es una petición al microprocesador para que se detenga y ponga los buses en estado de alta impedancia. Cuando el microprocesadoratiendelapeticióndeHOLDenvía al exterior una señal de reconocimiento que se conecta al DMA. HOLDA (Hold acknowledge) (Salida).Reconocimiento de HOLD. Es la indicación de que el microprocesador se ha desconectado de los buses y el DMA puede apropiarse de los mismos. 5.6.4. Petición de RESET y reconocimiento de RESET (Reset-in y Reset-out) Cuando se activa la línea de entrada RESET, actúa como si fuera una interrupción que inicializa el sistema. La señal de salida RESET informa del estado del reset y se conecta a algunas unidades de entrada-salida para inicializarlas. En muchos microprocesadores al actuar el RESET el contador de programa PC se carga con 0000H. Algunos bits de condición son afectados y el microprocesador se coloca en fase de búsqueda. 5.6.5. Líneas de sincronismo En muchos microprocesadores es una única línea de reloj (Clock). Esta señal determina la duración de las instrucciones, los instantes en que entran o salen datos, señales de control, etc. El conjunto de las líneas del bus de direcciones A0-A15 unidireccionales y triestado, junto con las del bus de datos D0-D7 bidireccionales y triestado y las del bus de control constituyen el bus del sistema.
  • 17. 16 En muchas ocasiones un sistema microcomputador ha de conectarse con otro microcomputadores o sistemas con los que debe establecer un diálogo para intercambiar información. Se establece de esta forma el concepto de bus externo. Algunos de estos buses están normalizados entre ellos se podrían citar el S-100, LSI-11 (Digital Equipment Corporation DEC), Multibus (Intel), IEEE-488 (GPIB, HPIB). 6. REPRESENTACIÓN Y EJECUCIÓN DE LAS INSTRUCCIONES La finalidad de un microprocesador consiste en procesar unos datos de acuerdo con un programa formado por una secuencia de instrucciones que se encuentra almacenado en memoria. El formato de una instrucción puede estar constituido por cuatro campos : etiqueta, código de operación, operando y comentarios. - La etiqueta es siempre opcional, es un símbolo cuyo valor corresponde a la posición de memoria donde se encuentra la instrucción. - Código de operación. En los microprocesadores de ocho bits ocupa un byte y determina el tipo de operación que realiza la instrucción. Al emplear ocho bits el número máximo de instrucciones es de 256, aunque normalmente no se utilizan todas las combinaciones posibles. Los códigos empleados constituyen el lenguaje máquina que entiende el microprocesador. - Operando . Dependiendo del tipo de instrucción pueden existir: ninguno, uno o dos bytes en los que figurarán los datos sobre los que se efectuará la operación indicada por el código de operación. - Comentarios. Este campo es opcional y sirve para que el programa tenga una mayor comprensión. ETIQUETA CÓDIGO DE OPERACIÓN OPERANDO COMENTARIOS SALTO: MOV A,#0BAH ;Cargar el registro
  • 18. 17 A con el valor BA Prescindiendo de los campos de la etiqueta y los comentarios que son opcionales (no ocupan memoria de programa, no ocupan código máquina), una instrucción puede constar de uno, dos o tres bytes. Instrucciones de un byte D7 D6 D5 D4 D3 D2 D1 D0 Código de operación Ejemplos: MOV A,B Carga el acumulador con el contenido del registro B. ORL A,B Realiza la función OR entre el contenido del acumulador y el contenido del registro B. El resultado se deposita en el acumulador. Instrucciones de dos bytes El primer byte corresponde al código de operación y el segundo al operando. 1er Byte D7 D6 D5 D4 D3 D2 D1 D0 Código de operación 2º Byte D7 D6 D5 D4 D3 D2 D1 D0 Operando Ej. MOV A, #0FH Carga el acumulador con 0F. Instrucciones de tres bytes El primer byte corresponde al código de operación y el segundo y tercero al operando. 1er Byte D7 D6 D5 D4 D3 D2 D1 D0 Código de operación 2º Byte D7 D6 D5 D4 D3 D2 D1 D0 ) 3er Byte D7 D6 D5 D4 D3 D2 D1 D0 ) Operando Ej. MOV DPTR, #2000H Carga el puntero de datos con 2000 (DPH=20 y DPL=00). La ejecución de un programa consiste en una secuencia de operaciones de escritura y lectura, transfiriéndose un byte entre la CPU y una dirección de memoria o dispositivo de entrada-
  • 19. 18 salida y viceversa. Capa operación de lectura o escritura es un CICLO DE MÁQUINA. La ejecución de una instrucciónesunCICLO DE INSTRUCCIÓN yestáconstituidaporvariosciclosmáquina. A su vez cada ciclo máquina está constituido por variosCICLOS DE RELOJ (períodos de reloj del sistema). La ejecución de una instrucción consta de dos fases : - Fase de búsqueda (Opcode Fetch) y decodificación. - Fase de ejecución. La fase de búsqueda consiste en la lectura del código de operación de la instrucción. El contador del programa envía al bus de direcciones la posición donde se encuentra el código de operación de la instrucción. La CPU genera una orden de lectura y el código de operación se deposita en el bus de datos desde donde se transfiere al registro de instrucciones IR. Este byte es decodificado por la unidad de control y determina si es una instrucción multibyte. En este segundo caso se necesitarán más ciclos máquina (lectura de memoria) par obtener la instrucción completa. El destino de estos bytes ya no es el registro de instrucción, sino algún registro de uso general o el acumulador. Aquí finaliza la fase de búsqueda y decodificación. La fase de ejecución en algunas instrucciones se realiza en el último ciclo de reloj de la fase de búsqueda, otras instrucciones requieren nuevos ciclos máquina para su ejecución. En todo el proceso es la unidad de control quien genera las órdenes necesarias para realizar la instrucción. 7. TIPOS DE DIRECCIONAMIENTO Son los métodos que existen para indicar, a partir del código de operación, el lugar donde se encuentra el operando.
  • 20. 19 7.1. Direccionamiento directo o absoluto El segundo y tercer byte de la instrucción contienen la dirección de memoria donde se encuentra el operando. Ej.: LDA 20F5H (8085) El acumulador se carga con el contenido de la posición de memoria 20F5. 7.2. Direccionamiento paginado La memoria es como si estuviera dividida en páginas (64K=256 páginas de 256 posiciones). El segundo byte representa la posición dentro de una de las 28 =256 páginas de que consta la memoria. Algunos microprocesadores pueden seleccionar la página y en otros puede ser una página fija por ejemplo la 00, con lo que la dirección absoluta estaría comprendida entre 0000 y 00FF. Ej. STA A,20 Almacena el contenido del acumulador en la posición 20H de la página 00 (dirección absoluta 0020). (8085) 7.3. Direccionamiento inmediato El segundo byte de la instrucción corresponde al dato. Ej. MOV A,#80H El acumulador se carga con 80H. 7.4. Direccionamiento indexado El segundo byte de la instrucción se suma o resta al contenido del registro indice IX y el resultado corresponde a la dirección del operando. Ej. ADD A IX,25 Sumar al acumulador el contenido de la dirección (IX)+25. Si IX=60, el dato a sumar se encuentra en la dirección 0085. (8085) 7.5. Direccionamiento indirecto
  • 21. 20 El segundo y el tercer byte de la instrucción es la dirección cuyo contenido y el de la siguiente posición de memoria, es la dirección del operando. Ej. STAI F014H El contenido del acumulador se almacena en la dirección contenida en las posiciones de memoria F014 y F015. (8085) Este direccionamiento no se emplea mucho, pero sí es más frecuente el direccionamiento indirecto por registro. Ej. MOVX A, @DPTR El contenido del acumulador se almacena en la posición de memoria cuya dirección está contenida en el par de registros DPH y DPL (DPTR). 7.6. Direccionamiento implícito El operando se encuentra en un registro al que expresamente hace referencia la instrucción. Ej. MUL A,B Multiplicación entre el acumulador y el registro B. 7.7. Direccionamiento relativo El valor absoluto de la dirección del operando se obtiene sumando el segundo byte de la instrucción con el contenido del contador del programa PC. 8. TIPOS DE INSTRUCCIONES De acuerdo con el tipo de funciones que realizan se podrían clasificar en : 8.1. Instrucciones aritméticas y lógicas Entre la primeras se pueden citar instrucciones que realizan sumas, restas, incrementos- decrementos, multiplicaciones y divisiones. Las segundas realizan funciones lógicas como
  • 22. 21 AND, OR, OR-Exclusiva, complementación. Enestegrupopuedenincluirselasinstruccionesdecomparación,desplazamientoyrotaciones. 8.2. Instrucciones de transferencia de datos Trasladan datos entre la memoria y los registros de la CPU y viceversa e intercambios entre registros de la CPU. 8.3. Instrucciones de ruptura de secuencia Pueden ser de tipo salto sin retorno, llamadas a subrutinas y retornos de subrutinas. Estas instrucciones pueden ser además incondicionales o condicionales, en este segundocaso la condición será algún flag del registro de estados. Antes de saltar a una subrutina el contador del programa se guarda en la pila (stack), para poder retornar al programa principal una vez ejecutada la subrutina. Al finalizar la subrutina, hay que colocar una instrucción de retorno (RET) que devuelve al contador del programa la dirección de la siguiente instrucción del programa principal previo a la llamada a la subrutina. 8.4. Instrucciones de manejo de la pila Permiten almacenar datos en el tope de la pila (PUSH) y sacar datos de la misma (POP). El puntero de la pila se actualiza con estas instrucciones y apunta siempre al tope de la misma ( dirección del último byte introducido en el stack). 8.5. Instrucciones de entrada-salida Lasinstrucciones de entrada-salida (IN-OUT)sonequivalentesalasdeescrituraylecturade memoria. Su direccionamiento suele ser más corto y se activan líneas de control específicas I0/M,_=1 indicando que la operación se realiza sobre la unidad de entrada-salida.
  • 23. 22 8.6. Instrucciones especiales y de control Instrucción de parar el programa HLT (Halt), de este estado se sale con un reset o una interrupción. Instrucción de no operación NOP, el microprocesador consume un tiempo sin hacer nada, se puede emplear para rellenar posiciones de memoria y dejar el resto del programa sin modificar. Instrucciones de control de interrupciones, permiso o deshabilitación de interrupciones, máscaras de interrupciones, interrupciones pendientes. 9. SELECCIÓN DE LAS MEMORIAS Para seleccionar las diferentes posiciones de memoria se emplea el bus de direcciones. Como los microprocesadores de 8 bits emplean 16 líneas de dirección, se pueden seleccionar 216 posiciones de memoria. El mapa de memoria comprende desde 0000H hasta FFFFH. Las memorias utilizadas por los microprocesadores suelen ser del tipo no volátiles (ROM, EPROM) para programas y datos fijos, y volátiles (RAM) para datos variables. Normalmente se emplearán diferentes circuitos integrados, necesitando cada uno de ellos una línea de selección del dispositivo (chip select) y un cierto número de líneas para acceder a las diferentes posiciones de la misma. Se emplean normalmente dos métodos de selección para acceder a una posición de memoria, la selección lineal y la selección decodificada. La selección lineal consiste en utilizar una línea del bus de direcciones (convenientemente adaptada) para el chip select de cada circuito integrado de memoria. Tiene la ventaja de la sencillez y suele emplearse para pequeños sistemas. Ejemplo. Una EPROM de 2 kbytes. Una RAM de 2 kbytes. Cada memoria necesita 11 líneas para seleccionar sus células A0-A10yotraadicionalparael
  • 24. 23 chip-select. Para el chip-select de la EPROM se puede emplear la A11 (invertida) y para la RAM la A12 (invertida). Con estas conexiones la EPROM se seleccionaría : A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 0800H X X X 0 1 1 1 1 1 1 1 1 1 1 1 1 0FFFH La línea A12 no puede estar a 1 pues si fuera así, se seleccionarían simultáneamente la EPROM y la RAM con el consiguiente conflicto. Como las líneas A15, A14, A13 pueden tomar cualquier valor, realmente la EPROM también se seleccionaría con otras muchas combinaciones del bus de direcciones. PorejemplolaprimeraposicióndelaEPROMseseleccionaríaconcualquiercombinaciónde A15, A14, A13 manteniendo A12=0 A11=1 y A10...A0 = 0. A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0800H 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 2800H 0 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 4800H 0 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 6800H 1 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 8800H 1 0 1 . . . . . . . . . . . . . . . . . . . . . . . . . . A800H 1 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . C800H 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . E800H Para seleccionar la RAM, A12=1 A11=0 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 X X X 1 0 0 0 0 0 0 0 0 0 0 0 0 1000H X X X 1 0 1 1 1 1 1 1 1 1 1 1 1 17FFH También se seleccionará con otras muchas direcciones pues A15, A14, A13 pueden tomar
  • 25. 24 cualquier valor. La selección decodificada puede permitir el acceso a todo el mapa de memoria. Los chip- select de cada memoria se obtienen por medio de un decodificador. Uno de los decodificadores empleados con esta finalidad es el 8205 de Intel que es equivalente al circuito TTL 74LS138, ver figura 3. Para que alguna salida se active (nivel bajo), tiene que estar permitida la decodificación E1=E2=0 y E3=1. Dependiendo de los niveles en CBA se activará una de las salidas. La tabla de verdad del circuito es : CBA S0 S1 S2 S3 S4 S5 S6 S7 000 0 1 1 1 1 1 1 1 001 1 0 1 1 1 1 1 1 010 1 1 0 1 1 1 1 1 011 1 1 1 0 1 1 1 1 100 1 1 1 1 0 1 1 1 101 1 1 1 1 1 1 0 1 111 1 1 1 1 1 1 1 0 Si la decodificación no está permitida, todas las salidas estarán a nivel alto. El mapa de memoria se podría dividir en ocho grupos de 8K, empleando una de las salidas del decodificador para cada grupo de memoria. De esta forma se podrían utilizar 8 memorias
  • 26. 25 de hasta 8K cada una de ellas, ver figura 4. Cada bloque de 8K a su vez podría dividirse en otros ocho grupos de 1K con otro decodificador y de esta forma serían accesibles los 64K del mapa de memoria en bloques de 1 Kbyte, ver figura 5. 10. PERIFÉRICOS DE ENTRADA SALIDA Cada microprocesador dispone de una serie de circuitos que facilitan la interconexión del mismo con el mundo exterior. A este tipo de circuitos se les conoce por familia microcomputadora y se les denomina periféricos de entrada-salida. Algunos realizan una función específica como por ejemplo los temporizadores (Timers), controladores de interrupciones, acceso directo a memoria (DMA), controladores de discos flexible, controlador de TRC, controlador de teclado, controlador de displays, etc. Otros periféricossonmásgenéricosypermitenelintercambiodeinformaciónconelmundoexterior, entre ellos se pueden citar los periféricos para transmisión-recepción en paralelo y los periféricos para transmisión-recepción serie. Estos últimos conviertenlainformaciónparalelo enviada por la CPU, en un formato serie y la envían al exterior y reciben una información serie convirtiéndola en paralelo a la que accede la CPU. Hay microprocesadores que incluyen la zona de los periféricos dentro del mapa de memoria,
  • 27. 26 por lo que no existe distinción entre una lectura-escritura en memoria o un periférico. Otros microprocesadores disponen de líneas de control que permiten tratar a los periféricos de distinta forma que a la memoria, pudiendo en este caso tener unamapa de la zona de entrada- salida distinto del mapa de memoria. 11. BIBLIOGRAFÍA CIRCUITOS DIGITALES Y MICROPROCESADORES Taub Mc Graw-Hill 1983 DEL CHIP AL SISTEMA. Introducción a los microprocesadores R. Zaks Marcombo 1986 PROCESADORES PROGRAMABLES. EL MICROPROCESADOR E.Mandado Marcombo 1980 CIRCUITOS ELECTRÓNICOS DIGITALES II Coordinador E. Muñoz Merino DPTO. de publicaciones ETSI Telecomunicacion. Madrid 1980 MICROPROCESADORES. Fundamentos, Diseño y Aplicaciones en la Industria y en los Microcomputadores. J. M. Angulo Paraninfo 1981 MICROPROCESADORES Y MICROCOMPUTADORES Serie Mundo Electrónico Marcombo 1980 AN INTRODUCTION TO MICROCOMPUTERS Volume 1. Basic Concepts Osborne. Mc Graw-Hill 1980 UNDERSTANDING MICROPROCESSORS Motorola
  • 28. 27 SISTEMAS DIGITALES BASADOS EN MICROPROCESADORES Gault, Pimmel Mc Graw-Hill 1982 INTERCONEXIÓN DE PERIFÉRICOS A MICROPROCESADORES Serie Mundo Electrónico Marcombo 1980 MICROPROCESADORES Curso Introducción a la Informática C. Areitio ETSI Industriales. Bilbao 1983 MICROPROCESADORES. CONCEPTOS BÁSICOS J. Arambarri Facultad de Informática de la UPV/EHU. San Sebastián 1984 ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I C. Cerrada, V. Feliú Impresa 1993 MODERN DIGITAL SYSTEMS DESIGN J. Y. Cheung J. G. Bredeson West Publishing Company 1990 ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES II S. Dormido et al. Sanz y Torres 1994