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/

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
1
TEMA 13. LÓGICA
PROGRAMADA

- Introducción
- Programabilidad
- PLDs (Programmable Logic Device )
- Microprocesadores. Arquitectura de von
Neumann

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
2
TEMA 13. LÓGICA PROGRAMADA

INTRODUCCIÓN

 Los sistemas que hemos estudiado hasta ahora ejecutan, en


general, una única función (lógica rígida): LOGICA CABLEADA

 La economía de hardware es fundamental si se desean realizar


determinadas operaciones

 Los circuitos secuenciales suponen una reducción notable de los


costes hardware en comparación con los combinacionales, a costa de
incrementar el tiempo de operación

 El objetivo es que una misma estructura física sea capaz de efectuar


múltiples operaciones: LOGICA PROGRAMADA

Programación: a este nivel, entendemos como tal la determinación, a


priori, del comportamiento de un sistema

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
3
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD

 Existen diferentes niveles de programación, según el modo de


efectuarla: sistemas secuenciales síncronos programables, cuya
expresión final son los microprocesadores
 El nivel más básico es la programación a nivel hardware: PLD o
Programmable Logic Device  son conjuntos de puertas lógicas
generadas tecnológicamente iguales que “se programan” en la etapa
final

 Ventajas PLDs son:


• Reemplazan a varios componentes discretos (reducción nº Cis,
espacio, conexiones, coste… aumento de fiabilidad).
• Pueden ser reprogramados (eliminan errores de grabación y
permiten mayor flexibilidad)
• Diseño sencillo (permiten programar a “alto nivel” y tienen
posibilidad de simulación)
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
4
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD

 Los tres tipos de PLD o Programmable Logic Device más simples son:
• La memoria de solo lectura (ROM): matriz AND fija y OR programable
• El array lógico programable (PLA): matriz AND programable y matriz OR
programable
• El array de lógica programable (PAL): matriz AND programable y matriz OR fija

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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
5
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD

 Memoria de solo lectura (ROM): programada adecuadamente


• Permiten crear funciones de lógica combinacional arbitrarias con un nº
determinado de entradas: es el dispositivo lógico de mayor propósito
general posible
• Se emplea un decodificador para
generar los minterms:
(Práctica decodificador)

•Tipos de programación:
• Máscara: ROM
• Fusibles: PROM, Floyd, T. 2000

• EPROM y EEPROM
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
6
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD

 Memoria de solo lectura (ROM): programada adecuadamente

Mano, M. et al. 2005

• Desventajas:
• Lentas
• Consumen mucha potencia
• Sólo se utiliza parte de su capacidad en cada aplicación
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
7
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD
 Array Lógico Programable (PLA), año 1973
• No decodifica todas las variables y no genera todos los minitérminos
• El decodificador se sustituye por un plano de puertas AND programable y
un plano de puertas OR programable
• Puede ser programable por máscaras 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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
8
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD
 Arrays de Lógica Programable
(PAL), año 1978
• Tienen un plano OR fijo y uno
AND programable (omite la
matriz OR programable)
• Dispositivos más rápidos y
baratos que los PLA
• Más fácil 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

Raúl Rengel Estévez: raulr@usal.es


María
Floyd, Jesús
Martín Martínez : mjmm@usal.es
T. 2000
9
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD
 Arrays de Lógica Programable
(PAL), año 1978
• Ejemplo:

F1  AB  AC  ABC
F2  AC  BC  A B  C

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
Mano, M.10
et al. 2005
PROGRAMABILIDAD: PLDs

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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
11
TEMA 13. LÓGICA PROGRAMADA

PROGRAMABILIDAD

 Posibilidad de programación por señales lógicas

P f

D. Pardo, et al. 2006

 Circuito que efectúa la operación AND si P=“0” y OR si P=“1”

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
12
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

 Los sistemas programables hardware son muy útiles, pero no son la


mejor solución para tener un alto nivel de programabilidad
 Son necesarios sistemas mucho más flexibles, donde la programación esté
basada en soluciones software

Los sistemas microordenadores actuales están basados en la


arquitectura de von Neumann
 La operación del sistema consiste (de manera simplificada):
 La función a realizar recibe el nombre de programa
 Cada paso para completar la función recibe el nombre de instrucción
(operación fundamental muy simple)
 Programa: secuencia (de manera síncrona con la señal de reloj) ordenada
de instrucciones

 La realización de este tipo de estructuras con un sistema secuencial


como los vistos hasta ahora sería inviable
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
13
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

 Arquitectura de von Neumann: propone la organización 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
módulo.  El sistema µP es un sistema secuencial, la secuencia que realiza es
la ejecución continua de instrucciones.
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
14
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

 Arquitectura de von Neumann: propone la organización del sistema en


un conjunto de unidades con funcionalidades bien definidas y complementarias

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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
15
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

Registros
Memoria
Principal
Periférico
Unidad
de Periférico
Unidad Entrada-
Aritmético-Lógica -Salida
Periférico

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

Unidad de Control

 Memoria principal Generador de pulsos


Línea de control
Línea de datos

(Reloj) D. Pardo, et al. 2006

• Está compuesta por un conjunto de celdas de igual tamaño


• En un instante dado se puede seleccionar una de estas celdas mediante
una dirección 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 máquina

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
16
TEMA 13. LÓGICA 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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
17
TEMA 13. LÓGICA 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 máquina: opcode (a través del bus de datos) almacenadas en la
memoria principal  registro de instrucciones
• El decodificador de instrucciones selecciona las posiciones de esa instrucción en la ROM
interna de la CPU (microinstrucciones).
• El secuenciador genera las señales de control necesarias para que todo el computador
funcione y ejecute las instrucciones leídas
• El registro apuntador llamado contador de programa (CP) que indica la posición de
memoria en la que está almacenada la instrucción a ejecutar
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
18
TEMA 13. LÓGICA 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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
19
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. UNIDAD DE CONTROL


 La unidad de control se puede implementar de varias maneras
 Mediante lógica “cableada”: se basa en su construcción mediante
puertas lógicas, por lo que es un diseño muy costoso y difícil de
modificar, aunque es muy rápido
 Mediante microprogramación: la idea básica consiste en emplear
una memoria para almacenar el estado de las señales de control
en cada periodo de cada instrucción
 Cada palabra, que define un periodo de una instrucción, se llama
microinstrucción, conteniendo las señales de control propias de
cada caso
 Hoy en día, en la mayor parte de los procesadores se emplea una
combinación entre ambas soluciones, empleando lógica cableada
para las operaciones más sencillas y habituales y
microprogramación para las operaciones más complejas

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
20
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

 Unidad de Proceso u operativa


(incluye Unidad Aritmético Lógica)

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

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

• Realiza una serie de operaciones aritméticas y lógicas 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 también el registro de estado (bit de paridad, cero, acarreo,
overflow, etc.) Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
21
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. EJECUCIÓN DE LAS OPERACIONES

 La CPU se encarga de ejecutar las instrucciones

 Fases de ejecución de las instrucciones de máquina:


1. Búsqueda de la instrucción: FETCH  La unidad de control envía a la
memoria principal la dirección de la instrucción a ejecutar (contenido
del CP), activando las señales de control necesarias para obtener la
mencionada instrucción. Se lleva al registro de instrucciones de la
unidad de control.
2. La unidad de control recibe la instrucción, la decodifica: activan las
señales de control y las señales correspondientes del secuenciador.
3. Búsqueda de operandos: y lee los operandos de memoria, activando
las correspondientes señales de control
4. Ejecución de la instrucción: Bajo las directrices de la unidad de
control, se realiza la operación en la ALU sobre los operandos y se
guarda el resultado en memoria o en un registro
5. Se incrementa el contador de programa y se pasa a la siguiente
instrucción

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
22
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES. ARQUITECTURA DE VON NEUMANN

Registros
Memoria
Principal
Periférico
Unidad
de Periférico
Unidad Entrada-
Aritmético-Lógica -Salida
Periférico

 Unidad de Entrada/Salida
Puntero

Unidad de Control

Línea de control
Línea de datos
Generador de pulsos
(Reloj) D. Pardo, et al. 2006

• Comunica el computador con el mundo exterior


• Realiza la transferencia de información con las unidades exteriores
llamadas periféricos (teclado, pantalla, impresora, unidades de disco, etc.)
• Permite, entre otras operaciones, cargar datos y programas en la
memoria principal y sacar resultados impresos
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
23
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES.

Unidad de Entrada/Salida

 La unidad de E/S se encarga de


adaptar y adecuar la comunicación
entre la CPU y estos dispositivos
 La comunicación puede ser de varios
tipos: http://www.monografias.com/trabajos44/computacion/computacion2.shtml

hombre máquina, máquina-máquina, máquina-proceso


 Dos posibilidades:
 E/S programada: el procesador debe estar ejecutando un programa
especial
 E/S concurrente (autónoma): no necesitan el soporte del procesador
 Cualquier periférico necesita un módulo adicional (interface) que realiza la
conexión del mismo con los buses del mircoprocesador.
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
24
TEMA 13. LÓGICA PROGRAMADA

MICROPROCESADORES

 Hoy en día, en la mayor parte de los procesadores se emplea una


combinación entre ambas soluciones, empleando lógica cableada
para las operaciones más sencillas y habituales y
microprogramación para las operaciones más complejas

 Los procesadores, según su set de instrucciones se dividen en dos


categorías
 CISC: conjunto de instrucciones complejo. Cada instrucción 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 más comunes (Intel, AMD) son CISC
con un conjunto de instrucciones que se realizan con
microoperaciones, permitiendo aunar en parte las ventajas de la
operación paralela de los RISC con el conjunto de instrucciones
amplio de los CISC
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
25
 Agradecimientos
 Daniel Pardo Collantes, Área de Electrónica, Departamento de Física Aplicada. Universidad de
Salamanca.

 Referencias
 Pardo Collantes, Daniel; Bailón Vega, Luís A., “Fundamentos de Electrónica Digital”.Universidad
de Salamanca. Ediciones Universidad de Salamanca. 2006.
 Tema VI: Memorias y Dispositivos de lógica programable (PLDs). Dpto de Sistemas Electrónicos y de Control.
Universidad Politénica de Madrid.
 Mano M. Morris; Kime, Charles R., “Fundamentos de diseño lógico y de computadoras”, 3ª Edición, Pearson-
Prentice 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

Raúl Rengel Estévez: raulr@usal.es


María Jesús Martín Martínez : mjmm@usal.es
26

También podría gustarte