Está en la página 1de 26

TEMA 13.

INTRODUCCION A SISTEMAS PROGRAMABLES Y MICROS

http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg

IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA

- Introduccin - Programabilidad - PLDs (Programmable Logic Device ) - Microprocesadores. Arquitectura de von Neumann

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


INTRODUCCIN Los sistemas que hemos estudiado hasta ahora ejecutan, en general, una nica funcin (lgica rgida): LOGICA CABLEADA La economa de hardware es fundamental si se desean realizar determinadas operaciones Los circuitos secuenciales suponen una reduccin notable de los costes hardware en comparacin con los combinacionales, a costa de incrementar el tiempo de operacin El objetivo es que una misma estructura fsica sea capaz de efectuar mltiples operaciones: LOGICA PROGRAMADA Programacin: a este nivel, entendemos como tal la determinacin, a priori, del comportamiento de un sistema
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Existen diferentes niveles de programacin, segn el modo de efectuarla: sistemas secuenciales sncronos programables, cuya expresin final son los microprocesadores El nivel ms bsico es la programacin a nivel hardware: PLD o Programmable Logic Device son conjuntos de puertas lgicas generadas tecnolgicamente iguales que se programan en la etapa final Ventajas PLDs son: Reemplazan a varios componentes discretos (reduccin n Cis, espacio, conexiones, coste aumento de fiabilidad). Pueden ser reprogramados (eliminan errores de grabacin y permiten mayor flexibilidad) Diseo sencillo (permiten programar a alto nivel y tienen posibilidad de simulacin)
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 4

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Los tres tipos de PLD o Programmable Logic Device ms simples son:
La memoria de solo lectura (ROM): matriz AND fija y OR programable El array lgico programable (PLA): matriz AND programable y matriz OR programable El array de lgica programable (PAL): matriz AND programable y matriz OR fija

www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Memoria de solo lectura (ROM): programada adecuadamente
Permiten crear funciones de lgica combinacional arbitrarias con un n determinado de entradas: es el dispositivo lgico de mayor propsito general posible Se emplea un decodificador para generar los minterms: (Prctica decodificador)

Tipos de programacin: Mscara: ROM Fusibles: PROM, EPROM y EEPROM

Floyd, T. 2000

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Memoria de solo lectura (ROM): programada adecuadamente

Mano, M. et al. 2005

Desventajas: Lentas Consumen mucha potencia Slo se utiliza parte de su capacidad en cada aplicacin Ral Rengel Estvez: raulr@usal.es
Mara Jess Martn Martnez : mjmm@usal.es 7

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Array Lgico Programable (PLA), ao 1973
No decodifica todas las variables y no genera todos los minitrminos El decodificador se sustituye por un plano de puertas AND programable y un plano de puertas OR programable Puede ser programable por mscaras o por campo (por el cliente), en cuyo caso se habla de FPLA
Mano, M. et al. 2005

F1 A B AC ABC F2 AC BC

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Arrays de Lgica Programable (PAL), ao 1978
Tienen un plano OR fijo y uno AND programable (omite la matriz OR programable) Dispositivos ms rpidos y baratos que los PLA Ms fcil de programar que el PLA, pero no tan flexible En ocasiones una salida puede realimentar a las AND Pueden incluir flip-flops para implementar circuitos secuenciales

Floyd, T. 2000 Mara Jess

Ral Rengel Estvez: raulr@usal.es Martn Martnez : mjmm@usal.es

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Arrays de Lgica Programable (PAL), ao 1978
Ejemplo:

F1 AB AC ABC F2 AC BC A B C

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

Mano, M.10 et al. 2005

PROGRAMABILIDAD: PLDs

www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

11

TEMA 13. LGICA PROGRAMADA


PROGRAMABILIDAD Posibilidad de programacin por seales lgicas

A P B f

D. Pardo, et al. 2006

Circuito que efecta la operacin AND si P=0 y OR si P=1


Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

12

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN Los sistemas programables hardware son muy tiles, pero no son la mejor solucin para tener un alto nivel de programabilidad
Son necesarios sistemas mucho ms flexibles, donde la programacin est basada en soluciones software

Los sistemas microordenadores actuales estn basados en la arquitectura de von Neumann La operacin del sistema consiste (de manera simplificada):

La funcin a realizar recibe el nombre de programa

Cada paso para completar la funcin recibe el nombre de instruccin (operacin fundamental muy simple) Programa: secuencia (de manera sncrona con la seal de reloj) ordenada de instrucciones

La realizacin de este tipo de estructuras con un sistema secuencial como los vistos hasta ahora sera inviable
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 13

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN Arquitectura de von Neumann: propone la organizacin del sistema en un conjunto de unidades con funcionalidades bien definidas y complementarias Memoria CPU:

Unidad de control Unidad de proceso: ALU + registros


http://perso.wanadoo.es/pictob/microprg.htm

Unidad de E/S

Reloj : sincroniza todo el sistema compensando los retardos de los diferentes mdulo. El sistema P es un sistema secuencial, la secuencia que realiza es la ejecucin continua de instrucciones.
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 14

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN Arquitectura de von Neumann: propone la organizacin del sistema en un conjunto de unidades con funcionalidades bien definidas y complementarias

http://perso.wanadoo.es/pictob/microprg.htm

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

15

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
Registros

Memoria Principal
Perifrico Unidad de Entrada-Salida Perifrico Perifrico

Unidad Aritmtico-Lgica

http://perso.wanadoo.es/pictob/microprg.htm

Puntero

Unidad de Control

Memoria principal

Generador de pulsos (Reloj)

Lnea de control Lnea de datos


D. Pardo, et al. 2006

Est compuesta por un conjunto de celdas de igual tamao En un instante dado se puede seleccionar una de estas celdas mediante una direccin determinada En la celda se puede leer (recuperar el valor almacenado previamente) o escribir (almacenar un nuevo valor) En la memoria se almacenan los datos y las instrucciones de mquina
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

16

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN CPU : Unidad de Control + Unidad de Proceso + Registros

http://perso.wanadoo.es/pictob/microprg.htm

http://johnkingworld.com/aplus/lessons-cpus.html

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

17

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN Unidad de Control Interpreta y ejecuta las instrucciones que le llegan desde la memoria:

http://johnkingworld.com/aplus/lessons-cpus.html

http://www.just2good.co.uk/cpuArchitecture.php

Lee las instrucciones de mquina: opcode (a travs del bus de datos) almacenadas en la memoria principal registro de instrucciones El decodificador de instrucciones selecciona las posiciones de esa instruccin en la ROM interna de la CPU (microinstrucciones). El secuenciador genera las seales de control necesarias para que todo el computador funcione y ejecute las instrucciones ledas El registro apuntador llamado contador de programa (CP) que indica la posicin de memoria en la que est almacenada la instruccin a ejecutar
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 18

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN Unidad de Control Ejemplo del Microprocesdor 8085 de Intel

http://commons.wikimedia.org/wiki/File:Intel_8085_arch.svg

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

19

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. UNIDAD DE CONTROL La unidad de control se puede implementar de varias maneras Mediante lgica cableada: se basa en su construccin mediante puertas lgicas, por lo que es un diseo muy costoso y difcil de modificar, aunque es muy rpido Mediante microprogramacin: la idea bsica consiste en emplear una memoria para almacenar el estado de las seales de control en cada periodo de cada instruccin Cada palabra, que define un periodo de una instruccin, se llama microinstruccin, conteniendo las seales de control propias de cada caso Hoy en da, en la mayor parte de los procesadores se emplea una combinacin entre ambas soluciones, empleando lgica cableada para las operaciones ms sencillas y habituales y microprogramacin para las operaciones ms complejas
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

20

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

Unidad de Proceso u operativa (incluye Unidad Aritmtico Lgica)

http://perso.wanadoo.es/pictob/microprg.htm

http://johnkingworld.com/aplus/lessons-cpus.html

Realiza una serie de operaciones aritmticas y lgicas elementales (suma, resta, AND, OR, etc.) Los datos vienen de la memoria principal y se suministran a la ALU mediante dos registros: acumulador y registro 2 operando Almacenarse tambin el registro de estado (bit de paridad, cero, acarreo, overflow, etc.) Ral Rengel Estvez: raulr@usal.es
Mara Jess Martn Martnez : mjmm@usal.es 21

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. EJECUCIN DE LAS OPERACIONES La CPU se encarga de ejecutar las instrucciones Fases de ejecucin de las instrucciones de mquina:
1. Bsqueda de la instruccin: FETCH La unidad de control enva a la memoria principal la direccin de la instruccin a ejecutar (contenido del CP), activando las seales de control necesarias para obtener la mencionada instruccin. Se lleva al registro de instrucciones de la unidad de control. La unidad de control recibe la instruccin, la decodifica: activan las

2. 3. 4. 5.

seales de control y las seales correspondientes del secuenciador.


Bsqueda de operandos: y lee los operandos de memoria, activando las correspondientes seales de control Ejecucin de la instruccin: Bajo las directrices de la unidad de control, se realiza la operacin en la ALU sobre los operandos y se guarda el resultado en memoria o en un registro Se incrementa el contador de programa y se pasa a la siguiente instruccin

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

22

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
Registros

Memoria Principal
Perifrico Unidad de Entrada-Salida Perifrico Perifrico

Unidad Aritmtico-Lgica

Unidad de Entrada/Salida
Puntero

Unidad de Control

Generador de pulsos (Reloj)

Lnea de control Lnea de datos


D. Pardo, et al. 2006

Comunica el computador con el mundo exterior Realiza la transferencia de informacin con las unidades exteriores llamadas perifricos (teclado, pantalla, impresora, unidades de disco, etc.) Permite, entre otras operaciones, cargar datos y programas en la memoria principal y sacar resultados impresos
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 23

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES. Unidad de Entrada/Salida

La unidad de E/S se encarga de adaptar y adecuar la comunicacin entre la CPU y estos dispositivos La comunicacin puede ser de varios http://www.monografias.com/trabajos44/computacion/computacion2.shtml tipos: hombre mquina, mquina-mquina, mquina-proceso Dos posibilidades:

E/S programada: el procesador debe estar ejecutando un programa especial E/S concurrente (autnoma): no necesitan el soporte del procesador

Cualquier perifrico necesita un mdulo adicional (interface) que realiza la conexin del mismo con los buses del mircoprocesador.
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 24

TEMA 13. LGICA PROGRAMADA


MICROPROCESADORES Hoy en da, en la mayor parte de los procesadores se emplea una combinacin entre ambas soluciones, empleando lgica cableada para las operaciones ms sencillas y habituales y microprogramacin para las operaciones ms complejas Los procesadores, segn su set de instrucciones se dividen en dos categoras
CISC: conjunto de instrucciones complejo. Cada instruccin puede ejecutar varias operaciones de bajo nivel RISC: conjunto de instrucciones reducido. En estos sistemas, se consideran operaciones elementales que se ejecutan en el mismo tiempo

Los procesadores modernos ms comunes (Intel, AMD) son CISC con un conjunto de instrucciones que se realizan con microoperaciones, permitiendo aunar en parte las ventajas de la operacin paralela de los RISC con el conjunto de instrucciones amplio de los CISC
Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es 25

Agradecimientos Daniel Pardo Collantes, rea de Electrnica, Departamento de Fsica Aplicada. Universidad de Salamanca. Referencias Pardo Collantes, Daniel; Bailn Vega, Lus A., Fundamentos de Electrnica Digital.Universidad de Salamanca. Ediciones Universidad de Salamanca. 2006.

Tema VI: Memorias y Dispositivos de lgica programable (PLDs). Dpto de Sistemas Electrnicos y de Control. Universidad Politnica de Madrid. Mano M. Morris; Kime, Charles R., Fundamentos de diseo lgico y de computadoras, 3 Edicin, PearsonPrentice Hall, 2005 www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf http://perso.wanadoo.es/pictob/microprg.htm http://johnkingworld.com/aplus/lessons-cpus.html http://www.just2good.co.uk/cpuArchitecture.php http://commons.wikimedia.org/wiki/File:Intel_8085_arch.svg http://www.monografias.com/trabajos44/computacion/computacion2.shtml

Ral Rengel Estvez: raulr@usal.es Mara Jess Martn Martnez : mjmm@usal.es

26