tema 2 diseÑo de un sistema basado en...

35
1 TEMA 2 TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADOR CURSO 2010/2011 CURSO 2010/2011 TEMA 2 2.1 Arquitectura de un sistema basado en microprocesador: ciclos de bus 2.2 Elementos que componen el sistema: memorias y entrada/salida 2.3 Interrupciones: tipos de interrupciones 2.4 Concepto de instrucción: formatos y operaciones básicas 2.5 Niveles de Programación 2.6 Areas de aplicación de los microprocesadores 2.7 Procesadores existentes: evolución 2.8 Consideraciones tecnológicas

Upload: vandung

Post on 16-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

1

TEMA 2TEMA 2

DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADOR

CURSO 2010/2011CURSO 2010/2011

TEMA 2

2.1 Arquitectura de un sistema basado en microprocesador: ciclos de bus

2.2 Elementos que componen el sistema: memorias y entrada/salida

2.3 Interrupciones: tipos de interrupciones

2.4 Concepto de instrucción: formatos y operaciones básicas

2.5 Niveles de Programación

2.6 Areas de aplicación de los microprocesadores

2.7 Procesadores existentes: evolución

2.8 Consideraciones tecnológicas

Page 2: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

2

CPUMEMORIA

ROM(Programa)

MEMORIARAM

(Datos)

Entrada /Salida

ALIMENTACIÓN

RELOJ

DIRECCIONES

DATOS

CONTROL

EXTERIOR

8163264

16 = 64K20 = 1M24 = 16M32 = 4G

BUSES

CLKInterrupcionesRESETDMAR / W

MAPA DEMEMORIA

RESET

ARQUITECTURA

ARQUITECTURA

•Esta arquitectura representa el conjunto mínimo de elementos o bloques funcionales que permiten aprovechar lasposibilidades del microporcesador como componente del sistema.

•Esta formada por tres bloques básicos:CPUMemoriaUnidad de Entrada/Salida

•La CPU es un sistema secuencial síncrono.

•Existe siempre un RELOJ (CLK). Normalmente la circuitería es interna y con un cuarzo externo se define la frecuencia de funcionamiento.

•Todos los componentes deben estar alimentados.

•La CPU tiene las siguientes funciones:Busca las instrucciones del programa que están en memoriaLas decodifica y ejecutaReconoce situaciones especiales (RESET, Interrupciones, etc …)

Page 3: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

3

ARQUITECTURA

•La MEMORIA es uno de los bloques más importantes y se destina al almacenamiento de información. Físicamente puede hacerse una distinción entre diferentes tipos de memoria, según que pueda usarse para leer y escribir información o solo para leerla. Estos dos tipos básicos de memoria se denominan respectivamente RAM (memoria de acceso aleatorio) y ROM (memoria de solo lectura). Funcionalmente las memorias pueden contener dos tipos de información: datos y programas. Por ello se habla también de memoria de programa (ROM) y memoria de datos (RAM).

•La UNIDAD DE E/S proporciona la interconexión con el mundo exterior: la actividad del microprocesador carecería de sentido si no estuviese relacionada con el mundo exterior. Es necesario que la tarea que ejecuta el procesador estégobernada por los comandos y datos que le llegan desde fuera. Además los resultados de la misma, para tener alguna utilidad, deben ser enviados al exterior. Se utiliza el término general de PERIFERICO para denominar a cualquier dispositivo exterior al sistema. Ejemplos: Monitor, teclado, ratón, convertidores D/A y A/D, discos, impresoras.

•La forma de conexión de estos tres bloques puede obedecer a diferentes filosofias, pero es prácticamente aceptada la solución denominada estructura de buses, que se caracteriza fundamentalmente por su flexibilidad, modularidad, estandarización y facilidad de expansión.

•Los buses principales son tres:

Bus de Datos: bidireccional

Bus de Direcciones: unidireccional

Bus de Control: gran diversidad de líneas de control

ARQUITECTURA

•Esta estructura de buses compartidos exige por parte del microprocesador un mayor control sobre todo el sistema, puesto que en cada momento las informaciones contenidas en los buses se destinan a un sóloelemento, debiendo impedirse la participación o interferencia de los restantes en el intercambio.

•La regulación de la participación de los diferentes elementos conectados al bus se hace mediante el empleo del bus de direcciones. Los decodificadores de los diversos elementos reciben e interpretan si la dirección enviadapor el microprocesador, contenida en el bus de direcciones, les corresponde o no .

•La conexión en paralelo a los buses de todos los elementos de un sistema basado en microprocesadorpresupone la desconexión total de los que no participan en el intercambio en un momento determinado. (Si laslíneas conectadas al bus de datos fuesen digitales de dos estados estables únicamente, se produciría un cortocircuito permanente entre las líneas correspondientes a los diversos componentes. Para evitar estoscortocircuitos todos los componentes deben disponer de unos elementos denominados BUFFER TRIESTADO).

Page 4: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

4

ARQUITECTURA: BUS DE DATOS

+Vcc

+VccLínea de Bus de Datos

Dispositivo 1“Transmite un 1”

Dispositivo 2“Transmite un 0”

¡PROBLEMA! +VccSOLUCIÓN

“Mientras el dispositivo 1transmite el resto están enalta impedancia”

ALTA IMPEDANCIA

•Es el encargado de transmitir y recibir datos e instrucciones desde y hacia la memoria y unidades de E/S.•Es BIDIRECCIONAL•Todos los bloques están conectados en paralelo y comparten todas las líneas del BUS•Necesidad de Alta Impedancia (Tri-estado)

•El número de líneas define el tipo de µP: 8 lineas CPU de 8 bits, 16 líneas CPU de 16 bits, 32 líneas CPU de 32 bits, 64 líneas CPU de 64 bits

•De alguna forma el número de líneas determina el número de instrucciones del procesador y su potencia de cálculo.•Es muy habitual la nomenclatura: D0, D1, D2,.. y representar los valores en hexadecimal:

0011 1100 = (3D)hexa = (58)decimal•Son habituales las palabras:

NIBBLE = 4 bitsBYTE = 8 bitsWORD = 16 bitsLONG WORD = 32 bits

MSB = bit más significativoLSB = bit menos significativo (D0)

ARQUITECTURA: BUS DE DIRECCIONES

•Selecciona el dispositivo desde donde vamos a leer o escribir (datos o instrucciones)

•Es UNIDIRECCIONAL

•El número de líneas define la capacidad máxima de direccionamiento

16 líneas = 64K 20 líneas = 1M 24 líneas = 16M 32 líneas = 4G

•Se conoce como MAPA DE MEMORIA y MAPA DE E/S a la distribución de esa capacidad de direccionamiento

•Se utiliza la nomenclatura A0, A1, A2, etc. Es habitual trabajar en hexadecimal

0000

FFFF

07FFROM

RAMF800

LIBRE

0000 0000 0000 00000000 0111 1111 1111

11 líneas = 2K

1111 1000 0000 00001111 1111 1111 1111

11 líneas = 2K

BINARIOHEXADECIMAL

MSB = A15LSB = A0

TOTAL = 64K(16 líneas)

Page 5: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

5

ARQUITECTURA: BUS DE CONTROL

•Aquí es donde existe menos generalidad, cada CPU tiene sus líneas de control características.

•Algunas son bidireccionales y otras no.

•Una selección de líneas mas o menos generales podría ser:•Líneas de Reloj (CLK)•Líneas de control de la memoría y/o E/S (R/W, MEMRQ, IORQ)•Líneas de interrupciones, enmascarables y no enmascarables (INT, NMI)•Línea de inicialización (RESET)•Líneas de alimentación (Vcc y GND)•Líneas de acceso directo a memoria (DMA, MEMRQ, MEMACK)•Líneas de parada (HLT)

•Algunas CPU´s con el fin de minimizar el número de patillas, multiplexan algunas líneas (p.e. parte de bus de batos y parte del bus de direcciones). En este caso es necesaria una señal de control específica, que indica la información presente en la línea en cada momento.Ejemplo: 8085 de Intel que multiplexa las 8 líneas menos significativas del bus de direcciones con el bus de datos (AD0/AD7) y dispone de una señal de salida (ALE) que se activa cuando los terminales multiplexados contienen la parte baja de la dirección.

•Recordar que las líneas que se llevan a muchos dispositivos deben respetar el FAN-OUT, siendo habitual la presencia de DRIVER`s (o BUFFERS), que deberán se unidireccional o bidireccional según el caso.

ARQUITECTURA

Pinout de un microprocesador genérico

•Si bien la funcionalidad de las líneas es genérica, no lo es la nomenclatura, la cual varía para cada CPU. (Cada fabricante emplea una nomenclatura característica que le diferencia del resto de fabricantes).

Page 6: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

6

ARQUITECTURA

Algunas CPUs comerciales

ARQUITECTURA

Page 7: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

7

CICLOS DE BUS

•CICLO DE INSTRUCCIÓN: es la secuencia total de pasos que hay que realizar para buscar y ejecutar una instrucción.

•CICLO DE BUS: también llamado ciclo máquina, es una secuencia de estados encaminados a la realización de una operación básica de bus. Las operaciones básicas típicas en un bus son lecturas, escrituras y reconocimiento de interrupción. Adicionalmente algunos microprocesadores poseen ciclos de bus especiales.

CICLOS DE BUS

•Se ejecuta para cualquier lectura en memoria. Pueden darse dos casos según el modo de operación del bus: bus síncrono y bus semisíncrono.

•Bus Síncrono: la memoria tiene un tiempo de acceso que es compatible con la frecuencia de reloj de la CPU, es decir, la lectura se producirá durante un periodo de reloj bien definido.

•Bus Semisíncrono: la memoria es más lenta que el tiempo de acceso del microprocesador y es necesario retrasar el momento de captura de los datos. Para ello se emplea una señal de entrada al microprocesador (READY), generada externamente, que indica cuando se dispone de datos estables en el bus de datos. Mientras los datos no están estables el microprocesador inserta los denominados estados de espera, que son periodos de reloj durante los cuales no se producirán cambios en las restantes señales implicadas.

•Secuencia temporal:

T1: se deposita la dirección en el bus de direcciones y tras un cierto tiempo se activa AS para validar la dirección.

T2: se activa DS para indicar a la memoria que la CPU está preparada para leer el dato.

T3: la memoria deposita el dato en el bus de datos. La CPU lee el dato en el flanco de subida de DS.

Lectura de Memoria

Page 8: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

8

CICLOS DE BUS

Lectura de Memoria

Ciclo Máquina de Lectura de Memoria Síncrono Ciclo Máquina de Lectura de Memoria con Estados de Espera

CICLOS DE BUS

•Se emplea para la escritura de datos en memoria. Su estructura es muy parecida a la del ciclo de lectura.

Escritura en Memoria

Ciclo Máquina de Escritura en Memoria con Estados de Espera

•Secuencia temporal:

T1: se deposita la dirección en el bus de direcciones y se activa AS con un cierto retardo para asegurar la estabilidad de la dirección.

T2: al principio de T2 se escriben los datos sobre el bus de datos. Se espera a que sean estables y se activa DS al final de T2 (Si el bus es semisíncrono se muestrea READY en el flanco de bajada de T2 y se introducen tantos estados de espera como sean necesarios, hasta que se detecte la desactivación de READY). Esto indica a la memoria que el dato es válido y que lo puede capturar antes del final de T3.

T3: se termina el ciclo desactivando las señales involucradas.

Page 9: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

9

CICLOS DE BUS

•Este ciclo máquina no forma parte de ninguna instrucción, sino que se origina como consecuencia de la aceptación de una petición de interrupción. El objetivo de este ciclo es obtener la información necesaria para localizar la dirección de la subrutina de atención a la interrupción.

Reconocimiento de Interrupción

Ciclo Máquina de Reconocimiento de Interrupción

•Secuencia temporal:

T1: se activa AS como en una lectura de memoria.

T2: el dispositivo generador de la interrupción pone en el bus de datos un valor que vectoriza la rutina de atención a la interrupción, es decir, especifica directa o indirectamente la dirección de inicio de una rutina que realiza el tratamiento de la interrupción.

T3: la CPU lee el dato (vector de interrupciones) que permite identificar la dirección donde se sitúa la rutina de interrupción.

CICLOS DE BUS

•Este ciclo máquina es muy importante en sistemas con varios procesadores (sistemas multimáster). Puesto que no puede haber más de una CPU que tenga el control de los buses en cada momento, ha de existir un mecanismo mediante el cual pueda transferirse el control del bus de un procesador a otro. Este mecanismo se implementa en el ciclo de cesión del bus.

Cesión de Bus

Ciclo Máquina de Cesión de Bus

•Fases :

Detectar, por parte del procesador que controla el bus actualmente, que hay una petición de cesión de bus.

Ceder el bus de manera que el procesador que tiene el control actualmente pasará a tener la mayoría de sus líneas en alta impedancia.

Recuperar el control del bus cuando el procesador solicitante acabe su ciclo de bus. (La cesión de los buses del sistema no tiene porquébloquear al microprocesador, pues éste puede continuar realizando operaciones internas que no afecten al estado de los buses).

Page 10: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

10

ELEMENTOS DEL SISTEMA: MEMORIAS

•El sistema de memoria constituye uno de los bloques fundamentales de los sistemas basados en microprocesador o microcontrolador, puesto que es el que contiene las instrucciones y datos con los que operará el sistema.

ELEMENTOS DEL SISTEMA: MEMORIAS

•En sentido general, memoria se refiere a cualquier dispositivo capaz de almacenar información para ser usada posteriormente. En este apartado nos centraremos en la memoria conocida como memoria principal, que es a la que accede el procesador y que está constituida, desde el punto de vista tecnológico, por circuitos integrados, razón por la cual se denomina frecuentemente memoria basada en semiconductor.

Tipos de Memorias

Page 11: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

11

ELEMENTOS DEL SISTEMA: MEMORIAS

Memorias de acceso serie:

Dependiendo de la posición a la que vamos a acceder, tendremos un tiempo de acceso diferente.Se basan en registros de desplazamiento.

Las hay de dos tipos:Memorias de acceso serie al bitMemorias de acceso serie posición a posición

Dentro de este grupo tenemos las memorias LIFO y FIFO.

Memorias de acceso aleatorio:

El tiempo de acceso a cualquier posición de memoria es el mismo. Para acceder proporcionamos un código (dirección) para que transcurrido un cierto tiempo aparezca a la salida el dato proporcionado. Se basan en decodificadores.

Memoria de acceso aleatorioDirección Dato

ELEMENTOS DEL SISTEMA: MEMORIAS

D Q

CLK

Bus de entrada

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

D Q

CLK

CS

CS

CS

Bus de salida

CS

CS

CS

Capacidad de almacenamiento (4 datos de 3 bits)

(FIFO First In First Out)

Memoria de acceso serie

Page 12: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

12

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio

En función de cómo hagamos la celda de memoria tenemos varias opciones.

ELEMENTOS DEL SISTEMA: MEMORIAS

CS

Normalmente la conexión no es directa al bus de datos

Memoria ROM (read Only Memory)

Page 13: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

13

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria ROM (read Only Memory)

Desde A0 hasta A8(9 líneas)

29 = 512 datos de 4 bits(Desde D0 hasta D3)

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria PROM

Page 14: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

14

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria EPROM (Erasable PROM) y EEPROM (Electrically Erasable PROM)

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria Flash EPROM (tipo especial de EEPROM)

Page 15: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

15

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria Flash EPROM (tipo especial de EEPROM)

ELEMENTOS DEL SISTEMA: MEMORIAS

Page 16: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

16

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio (RAM)

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio (RAM)

Page 17: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

17

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio (RAM)

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio (DRAM)

Page 18: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

18

ELEMENTOS DEL SISTEMA: MEMORIAS

Memoria de acceso aleatorio (DRAM)

ELEMENTOS DEL SISTEMA: MEMORIAS

Page 19: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

19

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•La actividad del microprocesador carecería de sentido si no estuviese relacionada con el mundo exterior. Es necesario que la tarea que ejecuta el microprocesador esté gobernada por los comandos y datos que le llegan desde fuera. Además los resultados de la misma, para tener alguna utilidad, deben ser enviados al exterior.

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Antes de entrar a la descripción de la entrada/salida (abreviadamente E/S o I/O) de un sistema microprocesador, es conveniente definir el término periférico, ampliamente utilizado en el estudio de la E/S.

•Utilizaremos el término general de PERIFERICO para denominar a cualquier dispositivo externo conectado a la CPU a través del cual interaccionamos con el mundo físico. Este concepto engloba un sinfín de dispositivos exteriores.

•En sistemas informáticos se utiliza el término periférico para denominar a los dispositivos de comunicación hombre-máquina: impresoras, terminales de pantalla, dispositivos de almacenamiento masivo como cintas o discos magnéticos. Sin embargo este término tiene un sentido más general que engloba a todo tipo de dispositivos susceptibles de ser conectados a un sistema procesador.

•En sistemas destinados al control de procesos, los periféricos están destinados a interaccionar con los procesos que controlan: relés, conmutadores automáticos, sensores o transductores, conversores analógico/digital y digital/analógico.

Page 20: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

20

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Las principales funciones en torno a una CPU son:

Interfaces Generales: transferencia de datos.

Interfaces Dedicadas: temporizadores, controlador disco duro,….

Coprocesadores de E/S.

• Dentro de los interfaces generales podemos distinguir:

Entrada/Salida Paralelo: una línea por bit del dato y todos simultáneos.

Entrada/Salida Serie: todos los bits por la misma línea y multiplexados en el tiempo.

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Dada la gran variedad de dispositivos periféricos que pueden ser conectados a un sistema digital y las características especiales tanto eléctricas como funcionales de cada uno de ellos, la transferencia de información entre el microprocesador y el periférico no se efectúa de manera directa sino a través de ciertos elementos externos, los cuales reciben la información proveniente del microprocesador y la envían a los periféricos de salida o recopilan la información originada en los dispositivos de entrada y la transmiten al microprocesador. A estos elementos se les da el nombre de PUERTOS DE E/S.

•Dicho de otra forma, un puerto es un elemento hardware (interface) que asegura la compatibilidad en el conexionado de los periféricos a los buses del sistema microprocesador. LOS PUERTOS DE E/S SON BASICAMENTE REGISTROS EXTERNOS.

•Más concretamente en un puerto de E/S existen dos partes diferenciadas. La primera de ellas resuelve la conexión eléctrica entre la CPU y el dispositivo de entrada/salida. La segunda se ocupa de la conexión entre el dispositivo de entrada/salida y el periférico. La primera de ellas es fácilmente sistematizable, mientras que la segunda depende mucho del periférico a conectar (impresora, monitor, teclado, etc.) y es, por tanto, mucho más difícil de sistematizar.

Concepto de Puerto de Entrada/Salida

Page 21: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

21

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Los microprocesadores poseen distintas formas de implementar la Entrad/Salida. Las dos alternativas más ampliamente utilizadas por los microprocesadores reales son:

Entrada/Salida mapeada en memoria

Entrada/Salida aislada

•La E/S mapeada consiste básicamente en no diferenciar los registros de los puertos de E/S de cualquier otra posición de memoria, es decir, dar el mismo tratamiento a ambos.

•La E/S aislada consiste en dar distinto tratamiento a los registros de memoria y a los registros de los puertos de E/S.

Aspectos Hardware de la Entrada/Salida

Entrada/Salida Mapeada en Memoria

Entrada/Salida Aislada

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Se refiere a las distintas formas de controlar las transferencias de entrada/salida. Es frecuente distinguir tres tipos:

Entrada/Salida controlada por programa: incondicional o condicional por muestreo

Entrada/Salida por interrupciones

Entrada/Salida por DMA (Acceso Directo a Memoria)

•De los tres métodos, el tercero es un procedimiento especial que requiere un hardware específico y que se utiliza en aplicaciones que requieren gran velocidad de transferencia de datos. En consecuencia no puede ser considerado como alternativa de los dos primeros.

•Considerando los dos primeros métodos, por programa y por interrupciones, el aspecto fundamental que los diferencia es la toma de la iniciativa para realizar la transferencia: en el caso de la E/S controlada por programa, la iniciativa parte del microprocesador, mientras que en el caso de la E/S controlada por interrupciones, la iniciativa parte del dispositivo exterior o periférico.

•Las operaciones de E/S controladas por programa deben ser necesariamente SINCRONAS con la ejecución del programa y sólo tendrán lugar en los momentos previstos por el programador. El tiempo que transcurre entre dos lecturas/escrituras sucesivas depende del tiempo de ejecución del programa y puede variar de una iteración a otra.

Aspectos Software de la Entrada/Salida

Page 22: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

22

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Por el contrario, las entradas/salidas por interrupciones pueden tener lugar en cualquier momento de la actividad del microprocesador. Son iniciadas a petición del dispositivo exterior, a través de una línea hardware llamada petición de interrupción. Esta petición de interrupción se puede producir en cualquier momento sin tener en cuenta la actividad del procesador, se puede decir, por tanto, que las E/S por interrupción son ASINCRONAS con la ejecución del programa.

•Este método se caracteriza porque es el programa que se está ejecutando el que toma la iniciativa para realizar una transferencia de E/S. Dicho de otro modo, es el programador el que ha previsto en que momentos estas transferencias pueden llevarse a cabo y ha dispuesto la secuencia de instrucciones necesaria para ello, es decir, las operaciones de E/S tienen lugar de forma sincronizada con la ejecución del programa.

•Se dice que la E/S es incondicional cuando las transferencias se llevan a cabo sin tener en cuenta el estado del periférico, es decir, si está preparado o no para depositar dato o recoger dato. Este método únicamente se utiliza con periféricos muy sencillos que siempre están preparados para recibir dato o depositar dato.

•Para solucionar los problemas que plantea el método anterior sería necesario disponer de información acerca del estado del periférico, es decir, que las operaciones de E/S únicamente tuvieran lugar en los instantes en los que el periférico está preparado para depositar dato o para recibir dato.

Entrada/Salida controlada por programa

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Dicho de otro modo, es necesaria una coordinación entre el microprocesador y el periférico, de forma que las transferencias de datos se realicen en los momentos adecuados.

•Para lograr esta coordinación, el microprocesador y el periférico mantienen un diálogo previo, sujeto a unas normas protocolarias que se deben cumplir estrictamente. Estas normas son definidas por el diseñador. Para implementar este diálogo es necesario ampliar el concepto de puerto a Puerto Programable.

•Un Puerto Programable genérico permite la comunicación bidireccional entre el microprocesador y un dispositivo periférico. Además dispone de registros auxiliares para establecer la coordinación entre ambos, de forma que las transferencias de datos se realicen en los momentos adecuados, intercambiando otros datos accesorios que permitan que el microprocesador conozca el estado del periférico y que éste a su vez, conozca algunos aspectos relativos al estado del sistema microprocesador que puedan afectar a la comunicación entre ambos.

Diagrama de bloques de un Puerto Programable

Page 23: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

23

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Las E/S controladas por programa son fácilmente realizables, sin embargo presentan ciertos inconvenientes, por lo que no siempre es el método adecuado. El primer inconveniente es la pérdida de tiempo que supone muestrear al periférico para averiguar si está preparado para realizar la transferencia. Esta situación se agrava cuando son muchos los posibles periféricos a consultar y la tarea que está realizando el microprocesador es compleja y debe ejecutarse en un tiempo crítico. El segundo inconveniente es la lentitud en la atención al periférico. Es evidente que en este método las transferencias de E/S sólo son posibles en los momentos previstos por el programador. Si un periférico requiere atención urgente, deberá esperar a que el programa llegue a la secuencia de instrucciones prevista para atenderle, lo que puede producirse demasiado tarde, sobre todo si el programa es largo.

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•En este método existe una conexión directa entre el microprocesador y el periférico de forma que éste avise en el momento en que requiere atención. El microprocesador no pierde tiempo muestreando periódicamente al periférico para averiguar si necesita servicio, sino que únicamente acudirá, abandonando su tarea normal, cuando se solicite la interrupción (esta interrupción provocará un salto a la subrutina de atención de la interrupción, la cual dará servicio al periférico.

•Por tanto las E/S controladas por interrupciones pueden tener lugar en cualquier momento, son ASINCRONAS con la ejecución del programa y además la iniciativa para realizar la transferencia parte del dispositivo exterior o periférico.

•Este método permite que la atención a los dispositivos periféricos se realice en tiempo real.

•La prioridad con que dicha interrupción será atendida depende del sistema de gestión de interrupciones del propio microprocesador (normalmente depende de a qué entrada de petición de interrupción del microprocesador se haya conectado).

•La forma de identificar qué periférico ha solicitado la interrupción y por tanto cuál es la dirección de la subrutina de atención depende también del sistema de gestión de interrupciones del microprocesador (normalmente depende de si la entrada de interrupción usada es vectorizada o no vectorizada).

Entrada/Salida controlada por interrupciones

Page 24: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

24

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•El acceso directo a memoria es un método de E/S diferente de los anteriores tanto en su funcionamiento como en su campo de aplicación. Su finalidad es la transferencia rápida de bloques de datos entre memoria y periféricos en ambos sentidos.

•Si los datos que se van a transferir se van a almacenar o están almacenados en posiciones consecutivas, el control de la transferencia puede ser llevado a cabo por un dispositivo diferente del microprocesador y sin necesidad de que cada uno de estos datos tenga que pasar por él.

•Este método de control de la entrada/salida se utiliza en aquellas aplicaciones en las que es preciso alcanzar altas velocidades de transferencia para transferir grandes cantidades de datos, es el caso típico de los convertidores A/D y D/A de alta velocidad, lectura y grabación de discos magnéticos.

Entrada/Salida por DMA (Acceso Directo a Memoria)

ELEMENTOS DEL SISTEMA: ENTRADA/SALIDA

•Para implementar este método de control de la E/S es necesario que el sistema disponga del hardware apropiado: el controlador de DMA, este dispositivo seráahora el encargado de direccionar la memoria y el puerto implicados en la transferencia, para lo cual será necesario que el microprocesador coloque sus buses de direcciones, datos y control en estado de alta impedancia. Para ello el controlador de DMA debe utilizar el bus sólo cuando el procesador no lo necesita, o debe forzar al procesador a que suspenda temporalmente su funcionamiento. Esta técnica de acceso al bus es la más frecuente y se denomina robo de ciclo.

•Una vez que el microprocesador se encuentra aislado, es el controlador de DMA quien toma el control de los buses, de forma que los datos fluirán directamente entre memoria y periférico a un ritmo únicamente limitado por el tiempo de acceso a la memoria y al periférico.

Entrada/Salida por DMA (Acceso Directo a Memoria)

Diagrama de bloques de un Controlador de DMA

Page 25: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

25

GESTION DE LAS INTERRUPCIONES

•Las interrupciones son señales externas al microprocesador que provocan saltos en el flujo secuencial del programa, o lo que es lo mismo, que provocan llamadas a subrutinas.

•Las interrupciones son totalmente asíncronas.

•Fases en el procesamiento de una interrupción:Terminar la ejecución de la instrucción actualGuardar la dirección de retorno en la pila Obtener la dirección de la subrutina de atenciónSaltar a la subrutina de atenciónEjecutar las instrucciones de la subrutina hasta encontrar la instrucción de retorno (la

dirección de retorno se obtiene de la pila)Continuar la ejecución del programa principal en el punto donde fue interrumpido

•Las interrupciones son un mecanismo que permite el control de procesos asíncronos con el funcionamiento del sistema y que requieren una atención inmediata, como por ejemplo el control de las transferencias de datos con los periféricos. El microprocesador tiene una o más entradas de petición de interrupción generadas por los dispositivos de entrada/salida, que provocan la ruptura de la secuencia normal de ejecución del programa y el salto a la subrutina de atención a la interrupción, que controlará el proceso específico de comunicación entre la CPU y el periférico externo.

•Se dice que las interrupciones proporcionan al microprocesador la capacidad de respuesta en tiempo real.

GESTION DE LAS INTERRUPCIONES

•Básicamente existen dos tipos de interrupciones:

Interrupciones No Enmascarables: se atienden siempre, no se pueden inhabilitar.

Interrupciones Enmascarables: existen instrucciones dentro del juego de instrucciones que permiten habilitar o inhabilitar las interrupciones (aunque se active una interrupción no se atiende).

•Una segunda clasificación de las interrupciones puede hacerse en base a cómo calcular la dirección de la subrutina de atención:

Interrupciones No Vectorizadas: se salta a una direción fija de memoria.

Interrupciones Vectorizadas: el dispositivo que interrumpe proporciona, durante el ciclo de reconocimiento de la interrupción, un dato (vector de interrupción) que permite calcular la dirección inicial de la subrutina.

•Una pila es una estructura LIFO (Last – In, First – Out), es decir, último dato en entrar, primero en salir. Es una estructura que acumula los datos en el orden en que se depositan, dato más antiguo en la parte inferior de la pila y dato más reciente en la parte superior.

•La manipulación de la pila se realiza mediante dos instrucciones especiales: PUSH y POP.

•La pila es necesaria para estructurar niveles de interrupción y de subrutinas. Básicamente pueden implementarse por hardware o por software. (La pila hardware se implementa mediante un conjunto de registros internos (2/16) directamente integrados en el chip del microprocesador. La otra alternativa es una pila software o pila contenida en la memoria de lectura/escritura del sistema (RAM); el programador ubica la pila asignándole una dirección base que se almacena como valor inicial del registro SP).

Pila o Stack

Page 26: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

26

JUEGO DE INSTRUCCIONES

•Una instrucción puede definirse como un código binario que especifica la operación que debe llevar a cabo el microprocesador y dónde se localizan los operandos con los cuales realizar la operación. Estos operandos pueden situarse en registros internos de la CPU o en posiciones de memoria.

•El conjunto de códigos de operación diferentes de un microprocesador conforma el llamado juego de instrucciones. Las instrucciones permiten escribir programas. Cada instrucción en binario tiene asociado un mnemónico (ADD, MOV, SUB) para facilitar la tarea del programador. (Lenguaje máquina -> Lenguaje ensamblador).

•Las instrucciones están codificadas por campos:

•La longitud de cada uno de los campos depende de la instrucción y del microprocesador:

Código de Operación: conjunto de bits que codifican el tipo de operación a realizar.

Operando: codifica dónde se localiza el operando o dirección con el que operará la instrucción. El tipo y el número de operandos depende de la instrucción en concreto: dos operandos (ADD), un operando (INC) o ningún operando (HALT).

Formatos de las Instrucciones

JUEGO DE INSTRUCCIONES

• Las operaciones básicas que incluye el juego de instrucciones de cualquier microprocesador se clasifican en tres grandes grupos:

1. Transferencia de datos: permiten el movimiento de datos, pero no realizan operaciones con ellos (entre registros, entre registros y memoria, entre dos posiciones de memoria). Muy frecuentes en todos los programas.

2. Manipulación de datos: son las instrucciones que procesan los datos, obteniendo un valor diferente como resultado. Este grupo de instrucciones dependen del tipo de unidades de ejecución presentes en la unidad de proceso. Se pueden clasificar en:

Instrucciones aritméticas: son operaciones del tipo suma, resta, multiplicación, incremento. La ejecución de estas instrucciones afecta y modifica a los bits del registro de estado (SR), siendo los más habituales Carry, Zero, Signo Overflow.

Instrucciones lógicas: realizan las operaciones booleanas AND, OR, NOT y XOR, funcionando bit a bit sobre los operandos.

Instrucciones de rotación/desplazamiento: permiten mover los bits del operando un número de posiciones dentro del mismo, tanto hacia la izquierda como hacia la derecha. La rotación no altera la secuencia de bits, solamente los coloca en un orden diferente. Por el contrario, el desplazamiento pierde bits por el extremo hacia el cual se realiza el movimiento.

Manipulación de bits: permiten poner a 1 (set), a 0 (clear) o comprobar el estado de un bit(tst) determinado dentro de un operando.

Instrucciones Básicas

Page 27: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

27

JUEGO DE INSTRUCCIONES

3. Transferencia del control: son las instrucciones que permiten alterar el flujo del programa o el estado del microprocesador. Estas instrucciones pueden ser de dos tipos:

Control del programa: son aquellas que cambian el contenido del Contador de Programa(PC): saltos, llamadas y retornos de subrutinas. Cuando se salta a una subrutina el microprocesador guarda en la pila el valor del PC (que contiene la dirección de la instrucción siguiente a la de llamada a subrutina). Al volver de la subrutina mediante una instrucción de retorno, ésta recupera de la pila la dirección de retorno y la carga de nuevo en el PC, lo cual permite reanudar la ejecución en el punto donde se había dejado. Los saltos pueden ser absolutos y relativos.

Control del microprocesador: modifican el registro de estado y la máscara de interrupciones (habilitar/inhabilitar) las interrupciones.

• Se definen los modos de direccionamiento como los métodos mediante los cuales una instrucción accede a los operandos con los que operará. Dicho de otro modo, son los diferentes mecanismos que se pueden usar para especificar donde está localizado un operando.

• Los modos de direccionamiento contribuyen en gran medida a la variedad y potencia del juego de instrucciones de un microprocesador. El conocimiento de todos los modos de direccionamiento nos da una idea de las muchas formas en que podemos referirnos a los datos y manipularlos, lo cual se traduce en el diseño de programas más eficientes.

Modos de Direccionamiento

JUEGO DE INSTRUCCIONES

• Los modos de direccionamiento más habituales son:

Implícito: la dirección del operando está codificada en el propio código de operación. Ejemplo: instrucciones que hacen referencia al acumulador.

Inmediato: el operando forma parte de la instrucción y el acceso es inmediato.

Directo a registro: la instrucción nos indica el registro que contiene el operando.

Indirecto a registro: la instrucción nos indica el registro que contiene la dirección de memoria donde está el operando.

Absoluto o directo: la instrucción contiene la dirección de memoria del operando.

Indexado: la instrucción nos indica un registro índice que al sumarse con un desplazamiento contenido en la propia instrucción nos da la dirección del operando. Se usa para acceder a posiciones consecutivas de memoria (tablas de datos en memoria).

Relativo al PC: la instrucción contiene un desplazamiento que sumado al valor del PC determina la dirección del operando. El desplazamiento puede ser positivo o negativo y normalmente está codificado en complemento @2. Este modo de direccionamiento se usa para implementar los saltos relativos.

Page 28: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

28

NIVELES DE PROGRAMACION

• El único lenguaje que entienden los microporcesadores es el formado por los ceros y unos del sistema binario. Cualquiera instrucción que deba ser ejecutada por el microprocesador debe estar expresada en binario. A estelenguaje se le denomina lenguaje máquina por ser el que comprende el microprocesador.

• El lenguaje ensamblador utiliza mnemónicos, que son grupos de caracteres alfanuméricos que simbolizan lasórdenes o tareas a realizar con cada instrucción. El programa escrito en lenguaje ensamblador recibe la denominaciónde código fuente.

• El programa ensamblador es un software que se encarga de traducir los mnemónicos y símbolos alfanuméricos del programa escrito en ensamblador por el usuario, a código máquina, para que pueda ser interpretado y ejecutado por el microprocesador.

• Las ventajas de los lenguajes de alto nivel, principalmente el lenguaje C, frente al ensamblador es la rapidez en el desarrollo de las aplicaciones y la comodidad.

• Las ventajas del ensamblador sobre los lenguajes de alto nivel residen en la eficiencia y lo compacto que resulta el código (entorno a un 80% menor en tamaño).

• Además, cuando se utiliza la programación en ensamblador, se tiene un control total sobre el tiempo de ejecución de las instrucciones, lo que puede resultar especialmente importante en ciertas aplicaciones en tiempo real.

NIVELES DE PROGRAMACION

LENGUAJE MAQUINA

LENGUAJE ENSAMBLADOR

LENGUAJES DE ALTO NIVEL

PROGRAMAENSAMBLADOR

PROGRAMACOMPILADOR

Page 29: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

29

AREAS DE APLICACION

• Las posibles aplicaciones de los sistemas basados en microprocesador son ilimitadas dependiendo de la propiacompetencia del diseñador y de su imaginación.

• No se puede dar una lista exhaustiva de aplicaciones, sin embargo si se pueden distinguir cuatro áreas de aplicaciónprincipales:

Sistemas Computador: el campo de los computadores fue la primera aplicación de los microprocesadores: calculadoras, ordenadores personales, grandes computadores, procesadoresde texto, procesadores bancarios y también el uso de los microprocresadores comocontroladores de dispositivos periféricos.

Sistemas Industriales: las aplicaciones industriales de los microprocesadores han consistidofundamentalmente en la sustitución de la lógica cableada por microprocesadores de bajo coste. El impacto principal de los microprocesadores en el mundo industrial no ha sido la reducción en el precio del hardware sino el aportar una serie de nuevas fuinciones que hacen más sencillo el control del proceso y aumentan su “inteligencia” sin aumentar el coste: control de procesos de fabricación, control de flujos, control de calefacción-refrigeración, sistemas de seguridad y alarma.

Aplicaciones de Consumo e Instrumentación: se caracterizan por los grandes volúmenes de producción y por la necesidad de minimizar costes: electrodomésticos, televisión …

Aplicaciones Especiales: se caracterizan por alguna especificación o requisito especialmentesevero, por ejemplo el tamaño o el volumen o el peso del sistema, consumo reducido: aplicaciones médicas, militares, aeroespaciales….

EVOLUCION DE LOS MICROPROCESADORES

• La aparición de los microprocesadores no se debió a ninguna maniobra planificada de antemano, ni a la “vista comercial” o al diseño ingenioso de nadie, fue absolutamente accidental.

• Debido a esta introducción desordenada e incontrolada de los microprocesadores en el mercado, sus errores inicialesde diseño y sus inconvenientes se han propagado hasta nuestros días en nombre de la compatibilidad.

EVOLUCIÓN DE LOS µP INTEL

Page 30: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

30

EVOLUCION DE LOS MICROPROCESADORES

ANÉCDOTA INTEL AÑO 1972:

•Contrato para el desarrollo de un TRC para DATAPOINT•Se presentan INTEL y TEXAS•Lo desarrolla INTEL•Es algo lento para TRC (no funciona bien como TRC)•Estalla guerra de precios de transistores (precio transistores baja)•El TRC con transistores es muy barato•DATAPOINT “pasa” de INTEL y saca al mercado su TRC con transistores•Gran faena para INTEL: pérdida de dinero invertido, equipo despedido•Pone en catálogo el producto desarrollado•¡SORPRESA!: El producto se vende muy bien (INTEL 8008)•¡Ha nacido el microprocesador!•El año anterior (1971) habían desarrollado un producto de arquitectura similar (INTEL 4004) para un fabricante japones de calculadoras.•El equipo despedido crea la ZILOG (Z80)•Otros fabricantes entran en el negocio (MOTOROLA)

TRC = Controlador de tubo de rayos catódicos

40048008

PRIMER MICROPROCESADOR: 4004 INTEL AÑO 1971:

•Lento (108 kHz)•Juego de Instrucciones reducido

Diseñado para un fabricante japonés de calculadoras

EVOLUCION DE LOS MICROPROCESADORES

EVOLUCION DE LOS MICROPROCESADORES

Gener. Año Microprocesador Características

1ª 1971 4004 (Intel) Datos de 4 bits. Instrucciones de 8 bits.

Direcciones 12 bits. 46 instrucciones.

1974 8080 (Intel)

8085 (Intel)

Datos de 8 bits.

Direcciones 16 bits.

1974

1975

6502 (Motorola) Acumulador. Puntero de Pila.

Registro Indice.

1976 Z-80 (Zilog) Datos 8 bits. Direcciones 16 bits.

1976 6809 (Motorola Datos 8/16 bits. Direcciones 16 bits.

3ª 1980 68000 (Motorola)

80286 (Intel)

Datos 16/32 bits. Direcciones 24 bits.

Modos Usuario/Supervisor.

1985 T-212 Transputer Computación paralela.

4ª 1987 AMD 2901 Por rebanadas (bit-slice). 1,2,4, ó 8 bits.

Microprograma.

1987 Sparc RISC. 128 registros. Pipeline.

1988 TMS320C30 DSP. Buses 32 bits. Arquitectura Harvard.

1992 DEC Alpha Datos de 64 bits. Reloj 200 MHz.

1993 Pentium Superescalar: dos unidades de coma fija en

paralelo.

Page 31: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

31

EVOLUCION DE LOS MICROPROCESADORES

EVOLUCION DE LOS MICROPROCESADORES

Arquitectura Interna Z80 ZILOG

Page 32: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

32

EVOLUCION DE LOS MICROPROCESADORES

INTEL 8085

EVOLUCION DE LOS MICROPROCESADORES

Arquitectura Interna 80386 INTEL

Page 33: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

33

EVOLUCION DE LOS MICROPROCESADORES

EVOLUCION DE LOS MICROPROCESADORES

Arquitectura Interna PIC16F87x MICROCHIP

Page 34: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

34

EVOLUCION DE LOS MICROPROCESADORES

Arquitectura Interna ADSP 2106x ANALOG

EVOLUCION DE LOS MICROPROCESADORES

Arquitectura Interna ADSP 21160 ANALOG

Page 35: TEMA 2 DISEÑO DE UN SISTEMA BASADO EN MICROPROCESADORciecfie.epn.edu.ec/wss/VirtualDirectories/80/pag_personales/PChico/... · por el microprocesador, ... Ejemplo: 8085 de Intel

35

CONSIDERACIONES TECNOLOGICAS

• Gordon Moore, uno de los fundadores de Intel, formuló en el año 1965 una ley que se ha venido conociendo comola “Ley de Moore”: el número de transistores contenidos en un microporcesador se dobla más o menos cada 18 meses. (Esta ley en principio estaba destinada a los dispositivos de memoria, pero también los microprocesadoresla han cumplido).

• Para el usuario esta ley significa que cada 18 meses, de forma continua, puede disfrutar de una tecnología mejor, algo que se ha venido cumpliendo durante los últimos 30 años y que se espera siga vigente en los próximos 15 ó20. Por esta razón los supercomputadores de hoy serán considerados equipos estándar de técnica avanzadadentro de 10 0 20 años (esta afirmación se ha venido cumpliendo desde que aparecieron los primerosmicroporcesadores y en la actualidad la sufrimos todos en nuestros ordenadores personales).

CONSIDERACIONES TECNOLOGICAS

• La evolución de la tecnología microelectrónica ha llevado al diseño y construcción de microporcesadores cada vezmás pequeños, rápidos, potentes y de consumos progresivamente menores. Sin embargo, no toda la evolución se ha basado en el aspecto tecnológico, a lo largo de los años, también la estructura de los microporcesadores ha idoavanzando e incorporando técnicas para aumentar su rendimiento en general o en aplicaciones concretas.

ENIAC (1945) PC con P4