SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
1
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. INTRODUCCIONTEMA 13. INTRODUCCION
A SISTEMASA SISTEMAS
PROGRAMABLES YPROGRAMABLES Y
MICROSMICROS
IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/
http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg
2
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICATEMA 13. LÓGICA
PROGRAMADAPROGRAMADA
-- IntroducciónIntroducción
-- ProgramabilidadProgramabilidad
-- PLDsPLDs ((ProgrammableProgrammable LogicLogic DeviceDevice ))
-- Microprocesadores. Arquitectura deMicroprocesadores. Arquitectura de vonvon
NeumannNeumann
3
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
INTRODUCCIÓNINTRODUCCIÓN
 Los sistemas que hemos estudiado hasta ahora ejecutan, enLos sistemas que hemos estudiado hasta ahora ejecutan, en
general,general, una única funciónuna única función (lógica rígida): LOGICA CABLEADA(lógica rígida): LOGICA CABLEADA
 LaLa economía de hardwareeconomía de hardware es fundamental si se desean realizares fundamental si se desean realizar
determinadas operacionesdeterminadas operaciones
 Los circuitos secuenciales suponen una reducción notable de losLos circuitos secuenciales suponen una reducción notable de los
costes hardware en comparación con loscostes hardware en comparación con los combinacionalescombinacionales, a costa de, a costa de
incrementar el tiempo de operaciónincrementar el tiempo de operación
 El objetivo es queEl objetivo es que una misma estructura física sea capaz de efectuaruna misma estructura física sea capaz de efectuar
múltiples operacionesmúltiples operaciones: LOGICA PROGRAMADA: LOGICA PROGRAMADA
Programación: a este nivel, entendemos como tal la determinaciónProgramación: a este nivel, entendemos como tal la determinación, a, a
priori, del comportamiento de un sistemapriori, del comportamiento de un sistema
4
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 Existen diferentes niveles de programación, según el modo deExisten diferentes niveles de programación, según el modo de
efectuarla: sistemas secuencialesefectuarla: sistemas secuenciales síncronossíncronos programables, cuyaprogramables, cuya
expresión final son losexpresión final son los microprocesadoresmicroprocesadores
 El nivel más básico es la programaciónEl nivel más básico es la programación a nivel hardwarea nivel hardware:: PLD oPLD o
ProgrammableProgrammable LogicLogic DeviceDevice  son conjuntos de puertas lson conjuntos de puertas lóógicasgicas
generadas tecnolgeneradas tecnolóógicamente iguales quegicamente iguales que ““se programanse programan”” en la etapaen la etapa
finalfinal
 VentajasVentajas PLDsPLDs son:son:
•• Reemplazan a varios componentes discretos (reducción nº Cis,Reemplazan a varios componentes discretos (reducción nº Cis,
espacio, conexiones, coste… aumento de fiabilidad).espacio, conexiones, coste… aumento de fiabilidad).
•• Pueden ser reprogramados (eliminan errores de grabación yPueden ser reprogramados (eliminan errores de grabación y
permiten mayor flexibilidad)permiten mayor flexibilidad)
•• Diseño sencillo (permiten programar a “alto nivel” y tienenDiseño sencillo (permiten programar a “alto nivel” y tienen
posibilidad de simulación)posibilidad de simulación)
5
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 Los tres tipos deLos tres tipos de PLD oPLD o ProgrammableProgrammable LogicLogic DeviceDevice más simples son:más simples son:
•• La memoria de solo lectura (ROM): matriz AND fija y OR programaLa memoria de solo lectura (ROM): matriz AND fija y OR programableble
•• El array lógico programable (PLA): matriz AND programable y matEl array lógico programable (PLA): matriz AND programable y matriz ORriz OR
programableprogramable
•• El array de lógica programable (PAL): matriz AND programable yEl array de lógica programable (PAL): matriz AND programable y matriz OR fijamatriz OR fija
www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf
6
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
 Memoria de solo lectura (Memoria de solo lectura (ROMROM): programada adecuadamente): programada adecuadamente
•• Permiten crear funciones de lógica combinacional arbitrarias coPermiten crear funciones de lógica combinacional arbitrarias con un nºn un nº
determinado de entradas: es el dispositivo lógico de mayor propódeterminado de entradas: es el dispositivo lógico de mayor propósitosito
general posiblegeneral posible
•• Se emplea un decodificador paraSe emplea un decodificador para
generar losgenerar los mintermsminterms::
((Práctica decodificadorPráctica decodificador))
••Tipos de programación:Tipos de programación:
•• Máscara: ROMMáscara: ROM
•• Fusibles: PROM,Fusibles: PROM,
•• EPROM y EEPROMEPROM y EEPROM
PROGRAMABILIDADPROGRAMABILIDAD
Floyd, T. 2000
7
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
 Memoria de solo lectura (Memoria de solo lectura (ROMROM): programada adecuadamente): programada adecuadamente
•• Desventajas:Desventajas:
•• LentasLentas
•• Consumen mucha potenciaConsumen mucha potencia
•• Sólo se utiliza parte de su capacidad en cada aplicaciónSólo se utiliza parte de su capacidad en cada aplicación
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
Mano, M. et al. 2005
8
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 Array Lógico ProgramableArray Lógico Programable (PLA), año 1973(PLA), año 1973
•• No decodifica todas las variables y no genera todos losNo decodifica todas las variables y no genera todos los minitérminosminitérminos
•• El decodificador se sustituye por un plano de puertasEl decodificador se sustituye por un plano de puertas AND programableAND programable yy
un plano de puertasun plano de puertas OR programableOR programable
•• Puede ser programable por máscaras o por campo (por el cliente)Puede ser programable por máscaras o por campo (por el cliente), en, en
cuyo caso se habla de FPLAcuyo caso se habla de FPLA
BCACF
CBAACBAF


2
1
Mano, M. et al. 2005
9
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 ArraysArrays de Lógica Programablede Lógica Programable
(PAL), año 1978(PAL), año 1978
•• Tienen un plano OR fijo y unoTienen un plano OR fijo y uno
AND programable (omite laAND programable (omite la
matriz OR programable)matriz OR programable)
•• DispositivosDispositivos más rápidosmás rápidos yy
baratosbaratos que los PLAque los PLA
•• Más fácil de programar que elMás fácil de programar que el
PLA, pero no tan flexiblePLA, pero no tan flexible
•• En ocasiones una salida puedeEn ocasiones una salida puede
realimentar a las ANDrealimentar a las AND
•• Pueden incluir flipPueden incluir flip--flopsflops parapara
implementar circuitosimplementar circuitos
secuencialessecuenciales
Floyd, T. 2000
10
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 ArraysArrays de Lógica Programablede Lógica Programable
(PAL), año 1978(PAL), año 1978
•• Ejemplo:Ejemplo:
CBABCACF
CBAACBAF


2
1
Mano, M. et al. 2005
11
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
PROGRAMABILIDAD:PROGRAMABILIDAD: PLDsPLDs
www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf
12
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
PROGRAMABILIDADPROGRAMABILIDAD
 Posibilidad de programación por señales lógicasPosibilidad de programación por señales lógicas
B
A
P f
 Circuito que efectúa la operación AND si P=“0” y OR si P=“1”Circuito que efectúa la operación AND si P=“0” y OR si P=“1”
D. Pardo, et al. 2006
13
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
 Los sistemas programables hardware son muy útiles, peroLos sistemas programables hardware son muy útiles, pero no son lano son la
mejor soluciónmejor solución para tener un alto nivel depara tener un alto nivel de programabilidadprogramabilidad
 Son necesarios sistemas mucho más flexibles, donde la programacSon necesarios sistemas mucho más flexibles, donde la programación estéión esté
basada enbasada en soluciones softwaresoluciones software
Los sistemas microordenadores actuales están basados en laLos sistemas microordenadores actuales están basados en la
arquitectura dearquitectura de vonvon NeumannNeumann
 La operación del sistema consiste (de manera simplificada):La operación del sistema consiste (de manera simplificada):
 La función a realizar recibe el nombre deLa función a realizar recibe el nombre de programaprograma
 Cada paso para completar la función recibe el nombre deCada paso para completar la función recibe el nombre de instruccióninstrucción
(operación fundamental muy simple)(operación fundamental muy simple)
 ProgramaPrograma: secuencia (de manera: secuencia (de manera síncronasíncrona con la señal de reloj) ordenadacon la señal de reloj) ordenada
dede instruccionesinstrucciones
 La realización de este tipo de estructuras con un sistema secueLa realización de este tipo de estructuras con un sistema secuencialncial
como los vistos hasta ahora sería inviablecomo los vistos hasta ahora sería inviable
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
14
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
 MemoriaMemoria
 CPU:CPU:
 Unidad de controlUnidad de control
 Unidad de proceso:Unidad de proceso:
ALU + registrosALU + registros
 Unidad de E/SUnidad 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.
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
 Arquitectura deArquitectura de vonvon Neumann:Neumann: propone la organización del sistema enpropone la organización del sistema en
unun conjunto de unidadesconjunto de unidades con funcionalidades bien definidas y complementariascon funcionalidades bien definidas y complementarias
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
http://perso.wanadoo.es/pictob/microprg.htm
15
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
 Arquitectura deArquitectura de vonvon Neumann:Neumann: propone la organización del sistema enpropone la organización del sistema en
unun conjunto de unidadesconjunto de unidades con funcionalidades bien definidas y complementariascon funcionalidades bien definidas y complementarias
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
http://perso.wanadoo.es/pictob/microprg.htm
16
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
Generador de pulsos
(Reloj)
Memoria
Principal
Unidad
Aritmético-Lógica
Unidad de Control
Línea de control
Línea de datos
Registros
Unidad
de
Entrada-
-Salida
Periférico
Periférico
Periférico
Puntero
 Memoria principalMemoria principal
•• Está compuesta por un conjunto de celdas de igual tamañoEstá compuesta por un conjunto de celdas de igual tamaño
•• En un instante dado se puede seleccionar una de estas celdas meEn un instante dado se puede seleccionar una de estas celdas mediantediante
una dirección determinadauna dirección determinada
•• En la celda se puede leer (recuperar el valor almacenado previaEn la celda se puede leer (recuperar el valor almacenado previamente) omente) o
escribir (almacenar un nuevo valor)escribir (almacenar un nuevo valor)
•• En la memoria se almacenan los datos y las instrucciones de máqEn la memoria se almacenan los datos y las instrucciones de máquinauina
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
D. Pardo, et al. 2006
http://perso.wanadoo.es/pictob/microprg.htm
17
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
CPU : Unidad de Control + Unidad de Proceso + RegistrosCPU : Unidad de Control + Unidad de Proceso + Registros
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
http://perso.wanadoo.es/pictob/microprg.htm
http://johnkingworld.com/aplus/lessons-cpus.html
18
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
 Unidad de ControlUnidad de Control
Interpreta y ejecuta las instrucciones que le llegan desde la memoria:
•• Lee las instrucciones de máquina:Lee las instrucciones de máquina: opcodeopcode (a través del bus de datos) almacenadas en la(a través del bus de datos) almacenadas en la
memoria principalmemoria principal  registro de instruccionesregistro de instrucciones
•• El decodificador de instrucciones selecciona las posiciones deEl decodificador de instrucciones selecciona las posiciones de esa instrucción en la ROMesa instrucción en la ROM
interna de la CPU (microinstrucciones).interna de la CPU (microinstrucciones).
•• El secuenciador genera las señales de control necesarias para qEl secuenciador genera las señales de control necesarias para que todo el computadorue todo el computador
funcione y ejecute las instrucciones leídasfuncione y ejecute las instrucciones leídas
•• El registro apuntador llamadoEl registro apuntador llamado contador de programacontador de programa (CP) que indica la posición de(CP) que indica la posición de
memoria en la que está almacenada la instrucción a ejecutarmemoria en la que está almacenada la instrucción a ejecutar
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
http://johnkingworld.com/aplus/lessons-cpus.html
http://www.just2good.co.uk/cpuArchitecture.php
19
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
 Unidad de ControlUnidad de Control
Ejemplo del Microprocesdor 8085 de Intel
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
http://commons.wikimedia.org/wiki/File:Intel_8085_arch.svg
20
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES. UNIDAD DE CONTROLMICROPROCESADORES. UNIDAD DE CONTROL
 La unidad de controlLa unidad de control se puede implementar de varias manerasse puede implementar de varias maneras
 MedianteMediante lógica “cableada”:lógica “cableada”: se basa en su construcción mediantese basa en su construcción mediante
puertas lógicas, por lo que es un diseño muy costoso y difícil dpuertas lógicas, por lo que es un diseño muy costoso y difícil dee
modificar, aunque es muy rápidomodificar, aunque es muy rápido
 MedianteMediante microprogramaciónmicroprogramación: la idea básica consiste en emplear: la idea básica consiste en emplear
una memoria para almacenar el estado de las señales de controluna memoria para almacenar el estado de las señales de control
en cada periodo de cada instrucciónen cada periodo de cada instrucción
 Cada palabra, que define un periodo de una instrucción, se llamaCada palabra, que define un periodo de una instrucción, se llama
microinstrucción, conteniendo las señales de control propias demicroinstrucción, conteniendo las señales de control propias de
cada casocada caso
 Hoy en día, en la mayor parte de los procesadores se emplea unaHoy en día, en la mayor parte de los procesadores se emplea una
combinación entre ambas soluciones, empleando lógica cableadacombinación entre ambas soluciones, empleando lógica cableada
para las operaciones más sencillas y habituales ypara las operaciones más sencillas y habituales y
microprogramación para las operaciones más complejasmicroprogramación para las operaciones más complejas
21
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
 Unidad de Proceso u operativaUnidad de Proceso u operativa
(incluye Unidad Aritmético Lógica)(incluye Unidad Aritmético Lógica)
•• Realiza una serie de operaciones aritméticas y lógicas elementaRealiza una serie de operaciones aritméticas y lógicas elementales (suma,les (suma,
resta, AND, OR, etc.)resta, AND, OR, etc.)
•• Los datos vienen de la memoria principal y se suministran a laLos datos vienen de la memoria principal y se suministran a la ALU medianteALU mediante
dos registros:dos registros: acumuladoracumulador y registro 2º operandoy registro 2º operando
•• Almacenarse también elAlmacenarse también el registro de estadoregistro de estado ((bitbit de paridad, cero, acarreo,de paridad, cero, acarreo,
overflowoverflow, etc.), etc.)
http://perso.wanadoo.es/pictob/microprg.htm
http://johnkingworld.com/aplus/lessons-cpus.html
22
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES. EJECUCIÓN DE LAS OPERACIONESMICROPROCESADORES. EJECUCIÓN DE LAS OPERACIONES
 La CPU se encarga de ejecutar las instruccionesLa CPU se encarga de ejecutar las instrucciones
 Fases de ejecución de las instrucciones de máquina:Fases de ejecución de las instrucciones de máquina:
1.1. BúsquedaBúsqueda de la instrucción: FETCHde la instrucción: FETCH  La unidad de control envía a laLa unidad de control envía a la
memoria principal la dirección de la instrucción a ejecutar (conmemoria principal la dirección de la instrucción a ejecutar (contenidotenido
del CP), activando las señales de control necesarias para obtenedel CP), activando las señales de control necesarias para obtener lar la
mencionada instrucción. Se lleva al registro de instrucciones demencionada instrucción. Se lleva al registro de instrucciones de lala
unidad de control.unidad de control.
2.2. La unidad de control recibe la instrucción, laLa unidad de control recibe la instrucción, la decodificadecodifica:: activan lasactivan las
señales dseñales de control y las señales correspondientes del secuenciador.e control y las señales correspondientes del secuenciador.
3.3. Búsqueda de operandosBúsqueda de operandos: y lee los operandos de memoria, activando: y lee los operandos de memoria, activando
las correspondientes señales de controllas correspondientes señales de control
4.4. EjecuciónEjecución de la instrucción: Bajo las directrices de la unidad dede la instrucción: Bajo las directrices de la unidad de
control, se realiza la operación en la ALU sobre los operandos ycontrol, se realiza la operación en la ALU sobre los operandos y sese
guarda el resultado en memoria o en un registroguarda el resultado en memoria o en un registro
5.5. Se incrementa el contador de programa y se pasa a la siguienteSe incrementa el contador de programa y se pasa a la siguiente
instruccióninstrucción
23
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
 Unidad de Entrada/SalidaUnidad de Entrada/Salida
•• Comunica el computador con el mundo exteriorComunica el computador con el mundo exterior
•• Realiza la transferencia de información con las unidades exteriRealiza la transferencia de información con las unidades exterioresores
llamadas periféricos (teclado, pantalla, impresora, unidades dellamadas periféricos (teclado, pantalla, impresora, unidades de disco, etc.)disco, etc.)
•• Permite, entre otras operaciones, cargar datos y programas en lPermite, entre otras operaciones, cargar datos y programas en laa
memoria principal y sacar resultados impresosmemoria principal y sacar resultados impresos
Generador de pulsos
(Reloj)
Memoria
Principal
Unidad
Aritmético-Lógica
Unidad de Control
Línea de control
Línea de datos
Registros
Unidad
de
Entrada-
-Salida
Periférico
Periférico
Periférico
Puntero
MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
D. Pardo, et al. 2006
24
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORES.MICROPROCESADORES.
Unidad de Entrada/SalidaUnidad de Entrada/Salida
 La unidad de E/S se encarga deLa unidad de E/S se encarga de
adaptar y adecuar la comunicaciónadaptar y adecuar la comunicación
entre la CPU y estos dispositivosentre la CPU y estos dispositivos
 La comunicación puede ser de variosLa comunicación puede ser de varios
tipos:tipos:
hombre máquina,hombre máquina, máquinamáquina--máquinamáquina,, máquinamáquina--procesoproceso
 Dos posibilidades:Dos posibilidades:
 E/S programada: el procesador debe estar ejecutando un programaE/S programada: el procesador debe estar ejecutando un programa
especialespecial
 E/S concurrente (autónoma): no necesitan el soporte del procesaE/S concurrente (autónoma): no necesitan el soporte del procesadordor
 Cualquier periférico necesita un módulo adicional (Cualquier periférico necesita un módulo adicional (interfaceinterface) que realiza la) que realiza la
conexión del mismo con los buses delconexión del mismo con los buses del mircoprocesadormircoprocesador..
http://www.monografias.com/trabajos44/computacion/computacion2.shtml
25
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA
MICROPROCESADORESMICROPROCESADORES
 Hoy en día, en la mayor parte de los procesadores se emplea unaHoy en día, en la mayor parte de los procesadores se emplea una
combinación entre ambas soluciones, empleando lógica cableadacombinación entre ambas soluciones, empleando lógica cableada
para las operaciones más sencillas y habituales ypara las operaciones más sencillas y habituales y
microprogramación para las operaciones más complejasmicroprogramación para las operaciones más complejas
 Los procesadores, según su set de instrucciones se dividen en doLos procesadores, según su set de instrucciones se dividen en doss
categoríascategorías
 CISC: conjunto de instrucciones complejo. Cada instrucción puedeCISC: conjunto de instrucciones complejo. Cada instrucción puede
ejecutar varias operaciones de bajo nivelejecutar varias operaciones de bajo nivel
 RISC: conjunto de instrucciones reducido. En estos sistemas, seRISC: conjunto de instrucciones reducido. En estos sistemas, se
consideran operaciones elementales que se ejecutan en el mismoconsideran operaciones elementales que se ejecutan en el mismo
tiempotiempo
 Los procesadores modernos más comunes (Intel, AMD) son CISCLos procesadores modernos más comunes (Intel, AMD) son CISC
con un conjunto de instrucciones que se realizan concon un conjunto de instrucciones que se realizan con
microoperacionesmicrooperaciones, permitiendo aunar en parte las ventajas de la, permitiendo aunar en parte las ventajas de la
operación paralela de los RISC con el conjunto de instruccionesoperación paralela de los RISC con el conjunto de instrucciones
amplio de los CISCamplio de los CISC
26
Raúl Rengel Estévez: raulr@usal.es
María Jesús Martín Martínez : mjmm@usal.es
 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

Mais conteúdo relacionado

Destaque

7 maravillas
7 maravillas7 maravillas
7 maravillasFAE
 
Envejecimiento humano
Envejecimiento humano Envejecimiento humano
Envejecimiento humano DIONISIOO
 
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima version
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima versionPresentacion rendicion de cuentas app mininterior 04abr2013 ultima version
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima versionacpregiones
 
Semana Santa Torrejón 2014: Via Crucis Viernes de Dolores
Semana Santa Torrejón 2014: Via Crucis Viernes de DoloresSemana Santa Torrejón 2014: Via Crucis Viernes de Dolores
Semana Santa Torrejón 2014: Via Crucis Viernes de DoloresTelescopioDigital
 
E libro-descargas
E libro-descargasE libro-descargas
E libro-descargasmarosety
 
Semana Santa Torrejon 2014: Pasion Viviente
Semana Santa Torrejon 2014: Pasion VivienteSemana Santa Torrejon 2014: Pasion Viviente
Semana Santa Torrejon 2014: Pasion VivienteTelescopioDigital
 
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOS
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOSWETQUEST: LA DIVERSIDAD DE LOS SERES VIVOS
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOSJose Antonio Cordoba
 
Twitter( red social )
Twitter( red social ) Twitter( red social )
Twitter( red social ) andres950324
 
Trabajo colaborativo. brunori cecilia
Trabajo colaborativo. brunori ceciliaTrabajo colaborativo. brunori cecilia
Trabajo colaborativo. brunori ceciliaCeciliab77
 
Comite de normalizacion presentacion
Comite de normalizacion presentacionComite de normalizacion presentacion
Comite de normalizacion presentacionNanet Martinez
 

Destaque (20)

LOTTT TNYM
LOTTT TNYMLOTTT TNYM
LOTTT TNYM
 
7 maravillas
7 maravillas7 maravillas
7 maravillas
 
Que es un Blog
Que es un BlogQue es un Blog
Que es un Blog
 
La educación y los nativos digitales
La educación y los nativos digitalesLa educación y los nativos digitales
La educación y los nativos digitales
 
Envejecimiento humano
Envejecimiento humano Envejecimiento humano
Envejecimiento humano
 
Presentación1
Presentación1Presentación1
Presentación1
 
Educación vial 1
Educación vial 1Educación vial 1
Educación vial 1
 
Salud clase 2
Salud clase 2Salud clase 2
Salud clase 2
 
Herramientas de informatica parcial 3
Herramientas de informatica parcial  3Herramientas de informatica parcial  3
Herramientas de informatica parcial 3
 
QUE ES UML
QUE ES UMLQUE ES UML
QUE ES UML
 
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima version
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima versionPresentacion rendicion de cuentas app mininterior 04abr2013 ultima version
Presentacion rendicion de cuentas app mininterior 04abr2013 ultima version
 
Semana Santa Torrejón 2014: Via Crucis Viernes de Dolores
Semana Santa Torrejón 2014: Via Crucis Viernes de DoloresSemana Santa Torrejón 2014: Via Crucis Viernes de Dolores
Semana Santa Torrejón 2014: Via Crucis Viernes de Dolores
 
E libro-descargas
E libro-descargasE libro-descargas
E libro-descargas
 
Semana Santa Torrejon 2014: Pasion Viviente
Semana Santa Torrejon 2014: Pasion VivienteSemana Santa Torrejon 2014: Pasion Viviente
Semana Santa Torrejon 2014: Pasion Viviente
 
Salud clase 2
Salud clase 2Salud clase 2
Salud clase 2
 
Estudio de caso
Estudio de casoEstudio de caso
Estudio de caso
 
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOS
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOSWETQUEST: LA DIVERSIDAD DE LOS SERES VIVOS
WETQUEST: LA DIVERSIDAD DE LOS SERES VIVOS
 
Twitter( red social )
Twitter( red social ) Twitter( red social )
Twitter( red social )
 
Trabajo colaborativo. brunori cecilia
Trabajo colaborativo. brunori ceciliaTrabajo colaborativo. brunori cecilia
Trabajo colaborativo. brunori cecilia
 
Comite de normalizacion presentacion
Comite de normalizacion presentacionComite de normalizacion presentacion
Comite de normalizacion presentacion
 

Semelhante a Tema13 intro sist_programmicros

Semelhante a Tema13 intro sist_programmicros (20)

Tema 1 multiprocesadores
Tema 1 multiprocesadoresTema 1 multiprocesadores
Tema 1 multiprocesadores
 
T 25
T 25T 25
T 25
 
Microprocesadores1
Microprocesadores1Microprocesadores1
Microprocesadores1
 
T 25
T 25T 25
T 25
 
T 25
T 25T 25
T 25
 
1. Algoritmos y Programas
1. Algoritmos y Programas1. Algoritmos y Programas
1. Algoritmos y Programas
 
Hardware y software
Hardware y softwareHardware y software
Hardware y software
 
Microcontroladores
MicrocontroladoresMicrocontroladores
Microcontroladores
 
Pld
PldPld
Pld
 
Historia de la informática, conceptos y definiciones
Historia de la informática, conceptos y definicionesHistoria de la informática, conceptos y definiciones
Historia de la informática, conceptos y definiciones
 
PLCs
 PLCs PLCs
PLCs
 
Clase 8 algoritmos_y_programas
Clase 8 algoritmos_y_programasClase 8 algoritmos_y_programas
Clase 8 algoritmos_y_programas
 
Introduccion.ppt
Introduccion.pptIntroduccion.ppt
Introduccion.ppt
 
Programación Multiparadigma, conveniencia y actualidad
Programación Multiparadigma, conveniencia y actualidadProgramación Multiparadigma, conveniencia y actualidad
Programación Multiparadigma, conveniencia y actualidad
 
DEFINICIONES E IDENTIFICACIONES
DEFINICIONES E IDENTIFICACIONESDEFINICIONES E IDENTIFICACIONES
DEFINICIONES E IDENTIFICACIONES
 
8.- DISPO LOG PROG.pdf
8.- DISPO LOG PROG.pdf8.- DISPO LOG PROG.pdf
8.- DISPO LOG PROG.pdf
 
8.- DISPO LOG PROG.pdf
8.- DISPO LOG PROG.pdf8.- DISPO LOG PROG.pdf
8.- DISPO LOG PROG.pdf
 
tema6-algoritmos-2010.pptx
tema6-algoritmos-2010.pptxtema6-algoritmos-2010.pptx
tema6-algoritmos-2010.pptx
 
Clase 1- Enfoque multinivel 1 2020 odc.pdf
Clase 1- Enfoque multinivel 1 2020 odc.pdfClase 1- Enfoque multinivel 1 2020 odc.pdf
Clase 1- Enfoque multinivel 1 2020 odc.pdf
 
Tutorial warp r4
Tutorial warp r4Tutorial warp r4
Tutorial warp r4
 

Mais de la_hormiga

El controlador pid
El controlador pidEl controlador pid
El controlador pidla_hormiga
 
EL TEOREMA DEL EMPAREDADO
EL TEOREMA DEL EMPAREDADOEL TEOREMA DEL EMPAREDADO
EL TEOREMA DEL EMPAREDADOla_hormiga
 
Identificación, Estimación y Control de Sistemas No-lineales
Identificación, Estimación y Control de Sistemas No-linealesIdentificación, Estimación y Control de Sistemas No-lineales
Identificación, Estimación y Control de Sistemas No-linealesla_hormiga
 
diseño control analogico
diseño control analogicodiseño control analogico
diseño control analogicola_hormiga
 
INTONIZACIÓN DEL REGULADOR AUTOMÁTICO DE VOLTAJE
INTONIZACIÓN DEL REGULADOR   AUTOMÁTICO DE VOLTAJEINTONIZACIÓN DEL REGULADOR   AUTOMÁTICO DE VOLTAJE
INTONIZACIÓN DEL REGULADOR AUTOMÁTICO DE VOLTAJEla_hormiga
 

Mais de la_hormiga (7)

El controlador pid
El controlador pidEl controlador pid
El controlador pid
 
EL TEOREMA DEL EMPAREDADO
EL TEOREMA DEL EMPAREDADOEL TEOREMA DEL EMPAREDADO
EL TEOREMA DEL EMPAREDADO
 
Identificación, Estimación y Control de Sistemas No-lineales
Identificación, Estimación y Control de Sistemas No-linealesIdentificación, Estimación y Control de Sistemas No-lineales
Identificación, Estimación y Control de Sistemas No-lineales
 
diseño control analogico
diseño control analogicodiseño control analogico
diseño control analogico
 
INTONIZACIÓN DEL REGULADOR AUTOMÁTICO DE VOLTAJE
INTONIZACIÓN DEL REGULADOR   AUTOMÁTICO DE VOLTAJEINTONIZACIÓN DEL REGULADOR   AUTOMÁTICO DE VOLTAJE
INTONIZACIÓN DEL REGULADOR AUTOMÁTICO DE VOLTAJE
 
ALU_4bit
ALU_4bitALU_4bit
ALU_4bit
 
Tema vii
Tema viiTema vii
Tema vii
 

Tema13 intro sist_programmicros

  • 1. 1 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. INTRODUCCIONTEMA 13. INTRODUCCION A SISTEMASA SISTEMAS PROGRAMABLES YPROGRAMABLES Y MICROSMICROS IEEE 125 Aniversary: http://www.flickr.com/photos/ieee125/with/2809342254/ http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg
  • 2. 2 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICATEMA 13. LÓGICA PROGRAMADAPROGRAMADA -- IntroducciónIntroducción -- ProgramabilidadProgramabilidad -- PLDsPLDs ((ProgrammableProgrammable LogicLogic DeviceDevice )) -- Microprocesadores. Arquitectura deMicroprocesadores. Arquitectura de vonvon NeumannNeumann
  • 3. 3 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA INTRODUCCIÓNINTRODUCCIÓN  Los sistemas que hemos estudiado hasta ahora ejecutan, enLos sistemas que hemos estudiado hasta ahora ejecutan, en general,general, una única funciónuna única función (lógica rígida): LOGICA CABLEADA(lógica rígida): LOGICA CABLEADA  LaLa economía de hardwareeconomía de hardware es fundamental si se desean realizares fundamental si se desean realizar determinadas operacionesdeterminadas operaciones  Los circuitos secuenciales suponen una reducción notable de losLos circuitos secuenciales suponen una reducción notable de los costes hardware en comparación con loscostes hardware en comparación con los combinacionalescombinacionales, a costa de, a costa de incrementar el tiempo de operaciónincrementar el tiempo de operación  El objetivo es queEl objetivo es que una misma estructura física sea capaz de efectuaruna misma estructura física sea capaz de efectuar múltiples operacionesmúltiples operaciones: LOGICA PROGRAMADA: LOGICA PROGRAMADA Programación: a este nivel, entendemos como tal la determinaciónProgramación: a este nivel, entendemos como tal la determinación, a, a priori, del comportamiento de un sistemapriori, del comportamiento de un sistema
  • 4. 4 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  Existen diferentes niveles de programación, según el modo deExisten diferentes niveles de programación, según el modo de efectuarla: sistemas secuencialesefectuarla: sistemas secuenciales síncronossíncronos programables, cuyaprogramables, cuya expresión final son losexpresión final son los microprocesadoresmicroprocesadores  El nivel más básico es la programaciónEl nivel más básico es la programación a nivel hardwarea nivel hardware:: PLD oPLD o ProgrammableProgrammable LogicLogic DeviceDevice  son conjuntos de puertas lson conjuntos de puertas lóógicasgicas generadas tecnolgeneradas tecnolóógicamente iguales quegicamente iguales que ““se programanse programan”” en la etapaen la etapa finalfinal  VentajasVentajas PLDsPLDs son:son: •• Reemplazan a varios componentes discretos (reducción nº Cis,Reemplazan a varios componentes discretos (reducción nº Cis, espacio, conexiones, coste… aumento de fiabilidad).espacio, conexiones, coste… aumento de fiabilidad). •• Pueden ser reprogramados (eliminan errores de grabación yPueden ser reprogramados (eliminan errores de grabación y permiten mayor flexibilidad)permiten mayor flexibilidad) •• Diseño sencillo (permiten programar a “alto nivel” y tienenDiseño sencillo (permiten programar a “alto nivel” y tienen posibilidad de simulación)posibilidad de simulación)
  • 5. 5 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  Los tres tipos deLos tres tipos de PLD oPLD o ProgrammableProgrammable LogicLogic DeviceDevice más simples son:más simples son: •• La memoria de solo lectura (ROM): matriz AND fija y OR programaLa memoria de solo lectura (ROM): matriz AND fija y OR programableble •• El array lógico programable (PLA): matriz AND programable y matEl array lógico programable (PLA): matriz AND programable y matriz ORriz OR programableprogramable •• El array de lógica programable (PAL): matriz AND programable yEl array de lógica programable (PAL): matriz AND programable y matriz OR fijamatriz OR fija www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf
  • 6. 6 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA  Memoria de solo lectura (Memoria de solo lectura (ROMROM): programada adecuadamente): programada adecuadamente •• Permiten crear funciones de lógica combinacional arbitrarias coPermiten crear funciones de lógica combinacional arbitrarias con un nºn un nº determinado de entradas: es el dispositivo lógico de mayor propódeterminado de entradas: es el dispositivo lógico de mayor propósitosito general posiblegeneral posible •• Se emplea un decodificador paraSe emplea un decodificador para generar losgenerar los mintermsminterms:: ((Práctica decodificadorPráctica decodificador)) ••Tipos de programación:Tipos de programación: •• Máscara: ROMMáscara: ROM •• Fusibles: PROM,Fusibles: PROM, •• EPROM y EEPROMEPROM y EEPROM PROGRAMABILIDADPROGRAMABILIDAD Floyd, T. 2000
  • 7. 7 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es  Memoria de solo lectura (Memoria de solo lectura (ROMROM): programada adecuadamente): programada adecuadamente •• Desventajas:Desventajas: •• LentasLentas •• Consumen mucha potenciaConsumen mucha potencia •• Sólo se utiliza parte de su capacidad en cada aplicaciónSólo se utiliza parte de su capacidad en cada aplicación TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD Mano, M. et al. 2005
  • 8. 8 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  Array Lógico ProgramableArray Lógico Programable (PLA), año 1973(PLA), año 1973 •• No decodifica todas las variables y no genera todos losNo decodifica todas las variables y no genera todos los minitérminosminitérminos •• El decodificador se sustituye por un plano de puertasEl decodificador se sustituye por un plano de puertas AND programableAND programable yy un plano de puertasun plano de puertas OR programableOR programable •• Puede ser programable por máscaras o por campo (por el cliente)Puede ser programable por máscaras o por campo (por el cliente), en, en cuyo caso se habla de FPLAcuyo caso se habla de FPLA BCACF CBAACBAF   2 1 Mano, M. et al. 2005
  • 9. 9 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  ArraysArrays de Lógica Programablede Lógica Programable (PAL), año 1978(PAL), año 1978 •• Tienen un plano OR fijo y unoTienen un plano OR fijo y uno AND programable (omite laAND programable (omite la matriz OR programable)matriz OR programable) •• DispositivosDispositivos más rápidosmás rápidos yy baratosbaratos que los PLAque los PLA •• Más fácil de programar que elMás fácil de programar que el PLA, pero no tan flexiblePLA, pero no tan flexible •• En ocasiones una salida puedeEn ocasiones una salida puede realimentar a las ANDrealimentar a las AND •• Pueden incluir flipPueden incluir flip--flopsflops parapara implementar circuitosimplementar circuitos secuencialessecuenciales Floyd, T. 2000
  • 10. 10 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  ArraysArrays de Lógica Programablede Lógica Programable (PAL), año 1978(PAL), año 1978 •• Ejemplo:Ejemplo: CBABCACF CBAACBAF   2 1 Mano, M. et al. 2005
  • 11. 11 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es PROGRAMABILIDAD:PROGRAMABILIDAD: PLDsPLDs www.sec.upm.es/docencia/plan_92/ed/descargaED/tema6.pdf
  • 12. 12 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA PROGRAMABILIDADPROGRAMABILIDAD  Posibilidad de programación por señales lógicasPosibilidad de programación por señales lógicas B A P f  Circuito que efectúa la operación AND si P=“0” y OR si P=“1”Circuito que efectúa la operación AND si P=“0” y OR si P=“1” D. Pardo, et al. 2006
  • 13. 13 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA  Los sistemas programables hardware son muy útiles, peroLos sistemas programables hardware son muy útiles, pero no son lano son la mejor soluciónmejor solución para tener un alto nivel depara tener un alto nivel de programabilidadprogramabilidad  Son necesarios sistemas mucho más flexibles, donde la programacSon necesarios sistemas mucho más flexibles, donde la programación estéión esté basada enbasada en soluciones softwaresoluciones software Los sistemas microordenadores actuales están basados en laLos sistemas microordenadores actuales están basados en la arquitectura dearquitectura de vonvon NeumannNeumann  La operación del sistema consiste (de manera simplificada):La operación del sistema consiste (de manera simplificada):  La función a realizar recibe el nombre deLa función a realizar recibe el nombre de programaprograma  Cada paso para completar la función recibe el nombre deCada paso para completar la función recibe el nombre de instruccióninstrucción (operación fundamental muy simple)(operación fundamental muy simple)  ProgramaPrograma: secuencia (de manera: secuencia (de manera síncronasíncrona con la señal de reloj) ordenadacon la señal de reloj) ordenada dede instruccionesinstrucciones  La realización de este tipo de estructuras con un sistema secueLa realización de este tipo de estructuras con un sistema secuencialncial como los vistos hasta ahora sería inviablecomo los vistos hasta ahora sería inviable MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN
  • 14. 14 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es  MemoriaMemoria  CPU:CPU:  Unidad de controlUnidad de control  Unidad de proceso:Unidad de proceso: ALU + registrosALU + registros  Unidad de E/SUnidad 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. TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA  Arquitectura deArquitectura de vonvon Neumann:Neumann: propone la organización del sistema enpropone la organización del sistema en unun conjunto de unidadesconjunto de unidades con funcionalidades bien definidas y complementariascon funcionalidades bien definidas y complementarias MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN http://perso.wanadoo.es/pictob/microprg.htm
  • 15. 15 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA  Arquitectura deArquitectura de vonvon Neumann:Neumann: propone la organización del sistema enpropone la organización del sistema en unun conjunto de unidadesconjunto de unidades con funcionalidades bien definidas y complementariascon funcionalidades bien definidas y complementarias MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN http://perso.wanadoo.es/pictob/microprg.htm
  • 16. 16 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA Generador de pulsos (Reloj) Memoria Principal Unidad Aritmético-Lógica Unidad de Control Línea de control Línea de datos Registros Unidad de Entrada- -Salida Periférico Periférico Periférico Puntero  Memoria principalMemoria principal •• Está compuesta por un conjunto de celdas de igual tamañoEstá compuesta por un conjunto de celdas de igual tamaño •• En un instante dado se puede seleccionar una de estas celdas meEn un instante dado se puede seleccionar una de estas celdas mediantediante una dirección determinadauna dirección determinada •• En la celda se puede leer (recuperar el valor almacenado previaEn la celda se puede leer (recuperar el valor almacenado previamente) omente) o escribir (almacenar un nuevo valor)escribir (almacenar un nuevo valor) •• En la memoria se almacenan los datos y las instrucciones de máqEn la memoria se almacenan los datos y las instrucciones de máquinauina MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN D. Pardo, et al. 2006 http://perso.wanadoo.es/pictob/microprg.htm
  • 17. 17 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA CPU : Unidad de Control + Unidad de Proceso + RegistrosCPU : Unidad de Control + Unidad de Proceso + Registros MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN http://perso.wanadoo.es/pictob/microprg.htm http://johnkingworld.com/aplus/lessons-cpus.html
  • 18. 18 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es  Unidad de ControlUnidad de Control Interpreta y ejecuta las instrucciones que le llegan desde la memoria: •• Lee las instrucciones de máquina:Lee las instrucciones de máquina: opcodeopcode (a través del bus de datos) almacenadas en la(a través del bus de datos) almacenadas en la memoria principalmemoria principal  registro de instruccionesregistro de instrucciones •• El decodificador de instrucciones selecciona las posiciones deEl decodificador de instrucciones selecciona las posiciones de esa instrucción en la ROMesa instrucción en la ROM interna de la CPU (microinstrucciones).interna de la CPU (microinstrucciones). •• El secuenciador genera las señales de control necesarias para qEl secuenciador genera las señales de control necesarias para que todo el computadorue todo el computador funcione y ejecute las instrucciones leídasfuncione y ejecute las instrucciones leídas •• El registro apuntador llamadoEl registro apuntador llamado contador de programacontador de programa (CP) que indica la posición de(CP) que indica la posición de memoria en la que está almacenada la instrucción a ejecutarmemoria en la que está almacenada la instrucción a ejecutar TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN http://johnkingworld.com/aplus/lessons-cpus.html http://www.just2good.co.uk/cpuArchitecture.php
  • 19. 19 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es  Unidad de ControlUnidad de Control Ejemplo del Microprocesdor 8085 de Intel TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN http://commons.wikimedia.org/wiki/File:Intel_8085_arch.svg
  • 20. 20 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES. UNIDAD DE CONTROLMICROPROCESADORES. UNIDAD DE CONTROL  La unidad de controlLa unidad de control se puede implementar de varias manerasse puede implementar de varias maneras  MedianteMediante lógica “cableada”:lógica “cableada”: se basa en su construcción mediantese basa en su construcción mediante puertas lógicas, por lo que es un diseño muy costoso y difícil dpuertas lógicas, por lo que es un diseño muy costoso y difícil dee modificar, aunque es muy rápidomodificar, aunque es muy rápido  MedianteMediante microprogramaciónmicroprogramación: la idea básica consiste en emplear: la idea básica consiste en emplear una memoria para almacenar el estado de las señales de controluna memoria para almacenar el estado de las señales de control en cada periodo de cada instrucciónen cada periodo de cada instrucción  Cada palabra, que define un periodo de una instrucción, se llamaCada palabra, que define un periodo de una instrucción, se llama microinstrucción, conteniendo las señales de control propias demicroinstrucción, conteniendo las señales de control propias de cada casocada caso  Hoy en día, en la mayor parte de los procesadores se emplea unaHoy en día, en la mayor parte de los procesadores se emplea una combinación entre ambas soluciones, empleando lógica cableadacombinación entre ambas soluciones, empleando lógica cableada para las operaciones más sencillas y habituales ypara las operaciones más sencillas y habituales y microprogramación para las operaciones más complejasmicroprogramación para las operaciones más complejas
  • 21. 21 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN  Unidad de Proceso u operativaUnidad de Proceso u operativa (incluye Unidad Aritmético Lógica)(incluye Unidad Aritmético Lógica) •• Realiza una serie de operaciones aritméticas y lógicas elementaRealiza una serie de operaciones aritméticas y lógicas elementales (suma,les (suma, resta, AND, OR, etc.)resta, AND, OR, etc.) •• Los datos vienen de la memoria principal y se suministran a laLos datos vienen de la memoria principal y se suministran a la ALU medianteALU mediante dos registros:dos registros: acumuladoracumulador y registro 2º operandoy registro 2º operando •• Almacenarse también elAlmacenarse también el registro de estadoregistro de estado ((bitbit de paridad, cero, acarreo,de paridad, cero, acarreo, overflowoverflow, etc.), etc.) http://perso.wanadoo.es/pictob/microprg.htm http://johnkingworld.com/aplus/lessons-cpus.html
  • 22. 22 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES. EJECUCIÓN DE LAS OPERACIONESMICROPROCESADORES. EJECUCIÓN DE LAS OPERACIONES  La CPU se encarga de ejecutar las instruccionesLa CPU se encarga de ejecutar las instrucciones  Fases de ejecución de las instrucciones de máquina:Fases de ejecución de las instrucciones de máquina: 1.1. BúsquedaBúsqueda de la instrucción: FETCHde la instrucción: FETCH  La unidad de control envía a laLa unidad de control envía a la memoria principal la dirección de la instrucción a ejecutar (conmemoria principal la dirección de la instrucción a ejecutar (contenidotenido del CP), activando las señales de control necesarias para obtenedel CP), activando las señales de control necesarias para obtener lar la mencionada instrucción. Se lleva al registro de instrucciones demencionada instrucción. Se lleva al registro de instrucciones de lala unidad de control.unidad de control. 2.2. La unidad de control recibe la instrucción, laLa unidad de control recibe la instrucción, la decodificadecodifica:: activan lasactivan las señales dseñales de control y las señales correspondientes del secuenciador.e control y las señales correspondientes del secuenciador. 3.3. Búsqueda de operandosBúsqueda de operandos: y lee los operandos de memoria, activando: y lee los operandos de memoria, activando las correspondientes señales de controllas correspondientes señales de control 4.4. EjecuciónEjecución de la instrucción: Bajo las directrices de la unidad dede la instrucción: Bajo las directrices de la unidad de control, se realiza la operación en la ALU sobre los operandos ycontrol, se realiza la operación en la ALU sobre los operandos y sese guarda el resultado en memoria o en un registroguarda el resultado en memoria o en un registro 5.5. Se incrementa el contador de programa y se pasa a la siguienteSe incrementa el contador de programa y se pasa a la siguiente instruccióninstrucción
  • 23. 23 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA  Unidad de Entrada/SalidaUnidad de Entrada/Salida •• Comunica el computador con el mundo exteriorComunica el computador con el mundo exterior •• Realiza la transferencia de información con las unidades exteriRealiza la transferencia de información con las unidades exterioresores llamadas periféricos (teclado, pantalla, impresora, unidades dellamadas periféricos (teclado, pantalla, impresora, unidades de disco, etc.)disco, etc.) •• Permite, entre otras operaciones, cargar datos y programas en lPermite, entre otras operaciones, cargar datos y programas en laa memoria principal y sacar resultados impresosmemoria principal y sacar resultados impresos Generador de pulsos (Reloj) Memoria Principal Unidad Aritmético-Lógica Unidad de Control Línea de control Línea de datos Registros Unidad de Entrada- -Salida Periférico Periférico Periférico Puntero MICROPROCESADORES. ARQUITECTURA DE VON NEUMANNMICROPROCESADORES. ARQUITECTURA DE VON NEUMANN D. Pardo, et al. 2006
  • 24. 24 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORES.MICROPROCESADORES. Unidad de Entrada/SalidaUnidad de Entrada/Salida  La unidad de E/S se encarga deLa unidad de E/S se encarga de adaptar y adecuar la comunicaciónadaptar y adecuar la comunicación entre la CPU y estos dispositivosentre la CPU y estos dispositivos  La comunicación puede ser de variosLa comunicación puede ser de varios tipos:tipos: hombre máquina,hombre máquina, máquinamáquina--máquinamáquina,, máquinamáquina--procesoproceso  Dos posibilidades:Dos posibilidades:  E/S programada: el procesador debe estar ejecutando un programaE/S programada: el procesador debe estar ejecutando un programa especialespecial  E/S concurrente (autónoma): no necesitan el soporte del procesaE/S concurrente (autónoma): no necesitan el soporte del procesadordor  Cualquier periférico necesita un módulo adicional (Cualquier periférico necesita un módulo adicional (interfaceinterface) que realiza la) que realiza la conexión del mismo con los buses delconexión del mismo con los buses del mircoprocesadormircoprocesador.. http://www.monografias.com/trabajos44/computacion/computacion2.shtml
  • 25. 25 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es TEMA 13. LÓGICA PROGRAMADATEMA 13. LÓGICA PROGRAMADA MICROPROCESADORESMICROPROCESADORES  Hoy en día, en la mayor parte de los procesadores se emplea unaHoy en día, en la mayor parte de los procesadores se emplea una combinación entre ambas soluciones, empleando lógica cableadacombinación entre ambas soluciones, empleando lógica cableada para las operaciones más sencillas y habituales ypara las operaciones más sencillas y habituales y microprogramación para las operaciones más complejasmicroprogramación para las operaciones más complejas  Los procesadores, según su set de instrucciones se dividen en doLos procesadores, según su set de instrucciones se dividen en doss categoríascategorías  CISC: conjunto de instrucciones complejo. Cada instrucción puedeCISC: conjunto de instrucciones complejo. Cada instrucción puede ejecutar varias operaciones de bajo nivelejecutar varias operaciones de bajo nivel  RISC: conjunto de instrucciones reducido. En estos sistemas, seRISC: conjunto de instrucciones reducido. En estos sistemas, se consideran operaciones elementales que se ejecutan en el mismoconsideran operaciones elementales que se ejecutan en el mismo tiempotiempo  Los procesadores modernos más comunes (Intel, AMD) son CISCLos procesadores modernos más comunes (Intel, AMD) son CISC con un conjunto de instrucciones que se realizan concon un conjunto de instrucciones que se realizan con microoperacionesmicrooperaciones, permitiendo aunar en parte las ventajas de la, permitiendo aunar en parte las ventajas de la operación paralela de los RISC con el conjunto de instruccionesoperación paralela de los RISC con el conjunto de instrucciones amplio de los CISCamplio de los CISC
  • 26. 26 Raúl Rengel Estévez: raulr@usal.es María Jesús Martín Martínez : mjmm@usal.es  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