DISEÑO DE COMPUTADORAS
PUCESI
TEMATICA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
SISTEMAS MICROPROCESADOS.
SISTEMAS MICROCONTROLADOS.
SISTEMAS EMBEBIDOS
CONTROL DE PROCESOS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
OPERADOR
SENSORES OCAPTORES
ACTUADORES
EQUIPO A CONTROLAR OPROCESO INDUSTRIAL
UNIDAD DECONTROL
Elementos de programación Información recibida
Informacionesdel sistema
Ordenes a serejecutadas
OPERADOR
SENSORES OCAPTORES
ACTUADORES
EQUIPO A CONTROLAR OPROCESO INDUSTRIAL
UNIDAD DECONTROL
Elementos de programación Información recibida
Informacionesdel sistema
Ordenes a serejecutadas
SOLUCIÓN DE UN PROBLEMA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
CARACTERÍSTICAS DELSISTEMA
CABLEADA PROGRAMABLE
Mantenimiento Costo Adaptación de procesos Posibilidades de ampliación Interconexión y cableado exterior Estructuración en bloques
independientes
MuchoBajoDifícilBajasMuchoDifícil
PocoAltoFácilAltasPocoFácil
SOLUCIÓN DE UN PROBLEMA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
PROBLEMA PROGRAMADOR
ANALISIS
CONOCIMIENTOS
PROGRAMA SISTEMA mP SOLUCION
DATOS DEL PROBLEMA
PROBLEMA PROGRAMADOR
ANALISIS
CONOCIMIENTOS
PROGRAMA SISTEMA mP SOLUCION
DATOS DEL PROBLEMA
ARQUITECTURAS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
HARDWARE
Von Neuman
Segmentada.
Harvard
SOFTWARE
CISC
RISC
SISC
ARQUITECTURA VON NEUMAN
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Máquina secuencial Ejecuta solo una
operación a la vez Bus de datos y
direccionescompartidos Lenta Generalmente se
combina con softwaretipo CISC
CPUCPUMEMORIA DEPROGRAMA
Y DATOS
MEMORIA DEPROGRAMA
Y DATOSCPUCPU
MEMORIA DEPROGRAMA
Y DATOS
MEMORIA DEPROGRAMA
Y DATOS
ARQUITECTURA SEGMENTADA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Máquina secuencial Buses de datos y
direcciones compartidos Diseño multietapa
(Pipeline) El diseño multietapa le
permite ejecutar más de unaoperación a la vez
Se encuentra combinadacon software CISC y enpocas ocasiones con RISC
Más rápida que VonNeuman
OSC
PC PC+1
BUSQUEDA INST (PC)EJECUTA INST (PC-1) BUSQUEDA INST (PC+1)
EJECUTA INST (PC)
CICLO MAQUINA
OSC
PC PC+1
BUSQUEDA INST (PC)EJECUTA INST (PC-1) BUSQUEDA INST (PC+1)
EJECUTA INST (PC)
CICLO MAQUINA
PC PC+1
BUSQUEDA INST (PC)EJECUTA INST (PC-1) BUSQUEDA INST (PC+1)
EJECUTA INST (PC)
CICLO MAQUINA
ARQUITECTURA HARVARD
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Separa los buses dedatos, direcciones ycontrol, y los hacetotalmenteindependientes.
Lo anterior permite leerinstrucciones con mayorvelocidad
Pueden direccionar altascantidades de memoria
Se combinan consoftware RISC
CPUCPUMEMORIA DEPROGRAMA
(ROM)
MEMORIA DEPROGRAMA
(ROM)
MEMORIA DEDATOS(RAM)
MEMORIA DEDATOS(RAM)CPUCPU
MEMORIA DEPROGRAMA
(ROM)
MEMORIA DEPROGRAMA
(ROM)
MEMORIA DEDATOS(RAM)
MEMORIA DEDATOS(RAM)
ARQUITECTURA CISC
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Complex Instruction Set Computer .
Set de instrucciones grande.
Ofrece una amplia gama de operaciones.
Facilita el trabajo de programación.
Reduce el tamaño del código de programa.
Incrementa el costo de aprender la programación
ARQUITECTURA RISC
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Reduced Instruction Set Computer
Pocas instrucciones
Más fácil de aprender el método de
programación
Mayor tamaño del código de programa
ARQUITECTURA SISC
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
(Specific Instruction Set Computer).
Estos procesadores poseen un juego deinstrucciones específico para cada aplicación.Están destinadas a aplicaciones muy concretas.
ESTRUCTURA DE UN SISTEMA DEMICROPROCESADORES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
UNIDAD DECONTROL
UNIDAD DECONTROL
ALUALU
UNIDAD DEENTRADA
UNIDAD DEENTRADA
UNIDAD DESALIDA
UNIDAD DESALIDA
MEMORIARAM
MEMORIARAM
MEMORIAROM
MEMORIAROM
Unidad E/S CPU o mP Unidad de memoria
UNIDAD DECONTROL
UNIDAD DECONTROL
ALUALU
UNIDAD DEENTRADA
UNIDAD DEENTRADA
UNIDAD DESALIDA
UNIDAD DESALIDA
MEMORIARAM
MEMORIARAM
MEMORIAROM
MEMORIAROM
Unidad E/S CPU o mP Unidad de memoria
PARTES DE UN SISTEMA DEMICROPROCESADOR
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
SalidaRAM ROM
CPUCPU
Bloque E/S
Entrada
Bloque dememoria
Periféricos deentrada
Periféricos deentrada
Periféricos desalida
Periféricos desalida
Bus de datos
Bus de direcciones
Bus de control
CLKSalidaRAM ROM
CPUCPU
Bloque E/S
Entrada
Bloque dememoria
Periféricos deentrada
Periféricos deentrada
Periféricos desalida
Periféricos desalida
Bus de datos
Bus de direcciones
Bus de control
CLK
BLOQUES DE LA CPU
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Procesa información binariaen base de un programa escritoen la memoria
CPU o mP
Ejecuta e interpreta las instrucciones.
Sincroniza el funcionamiento detodos los componentes del sistema
Ejecuta e interpreta las instrucciones.
Sincroniza el funcionamiento detodos los componentes del sistema
Ejecuta operaciones:Aritméticas: +, -, complemento a dos.Lógicas: and, or, not, xor, comparación.Además: desplazamiento, rotación y traslado
de información digital
Ejecuta operaciones:Aritméticas: +, -, complemento a dos.Lógicas: and, or, not, xor, comparación.Además: desplazamiento, rotación y traslado
de información digital
UNIDAD DE CONTROLUNIDAD DE CONTROL
UNIDAD ARITMETICO-LOGICAUNIDAD ARITMETICO-LOGICA
Memorias para almacenamiento temporalde datos necesarios para el desarrollo delas actividades del mP.
Memorias para almacenamiento temporalde datos necesarios para el desarrollo delas actividades del mP.
BLOQUE DE REGISTROSBLOQUE DE REGISTROS
Procesa información binariaen base de un programa escritoen la memoria
CPU o mP
Ejecuta e interpreta las instrucciones.
Sincroniza el funcionamiento detodos los componentes del sistema
Ejecuta e interpreta las instrucciones.
Sincroniza el funcionamiento detodos los componentes del sistema
Ejecuta operaciones:Aritméticas: +, -, complemento a dos.Lógicas: and, or, not, xor, comparación.Además: desplazamiento, rotación y traslado
de información digital
Ejecuta operaciones:Aritméticas: +, -, complemento a dos.Lógicas: and, or, not, xor, comparación.Además: desplazamiento, rotación y traslado
de información digital
UNIDAD DE CONTROLUNIDAD DE CONTROL
UNIDAD ARITMETICO-LOGICAUNIDAD ARITMETICO-LOGICA
Memorias para almacenamiento temporalde datos necesarios para el desarrollo delas actividades del mP.
Memorias para almacenamiento temporalde datos necesarios para el desarrollo delas actividades del mP.
BLOQUE DE REGISTROSBLOQUE DE REGISTROS
ESTRUCTURA INTERNA DE LA CPU
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
REGISTROSDE PROPOSITO
GENERAL
REGISTROSDE PROPOSITO
GENERAL
SRSR
ACAC
ALUALU
PCPC
IRIR
BUSES INTERNOS
REGISTRO INTERMEDIODE DATOS
REGISTRO INTERMEDIODE DATOS
REGISTRO INTERMEDIODE DIRECCIONES
REGISTRO INTERMEDIODE DIRECCIONES
LOGICA DECONTROL
YTEMPORIZACION
LOGICA DECONTROL
YTEMPORIZACION
ACUMULADOR
REG. ESTADOSCONTADOR DE PROG.
REG. INSTRUCCIONES
BUS DEL SISTEMA HACIA LA MEMORIA PRINCIPAL Y DISPOSITIVOS DE E/S
BUS DE DATOS BUS DE DIRECCION BUS DE CONTROL
REGISTROSDE PROPOSITO
GENERAL
REGISTROSDE PROPOSITO
GENERAL
SRSR
ACAC
ALUALU
PCPC
IRIR
BUSES INTERNOS
REGISTRO INTERMEDIODE DATOS
REGISTRO INTERMEDIODE DATOS
REGISTRO INTERMEDIODE DIRECCIONES
REGISTRO INTERMEDIODE DIRECCIONES
LOGICA DECONTROL
YTEMPORIZACION
LOGICA DECONTROL
YTEMPORIZACION
ACUMULADOR
REG. ESTADOSCONTADOR DE PROG.
REG. INSTRUCCIONES
BUS DEL SISTEMA HACIA LA MEMORIA PRINCIPAL Y DISPOSITIVOS DE E/S
BUS DE DATOS BUS DE DIRECCION BUS DE CONTROL
ESTRUCTURA INTERNA DE LA CPU
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
La Unidad Aritmético-lógica se encarga de realizar lasoperaciones lógicas y aritméticas usando como base la suma yla notación del complemento de dos. Estas operaciones(SUMA, RESTA, COMPLEMENTO DE DOS, AND, OR, NOT,XOR y la COMPARACIÓN) las realiza con datos de lamemoria, con datos de los registros internos o con datos de launidad de entrada. El tipo de operación que se realizará, sedetermina por medio de señales de la unidad de control.
Conectados por medio del bus interno se encuentran losRegistros Internos para el almacenamiento temporal dedatos. Cabe mencionar que todo microprocesador tiene unregistro muy importante llamado ACUMULADOR el cualcontiene el primer operando de una operación y el resultadode la misma luego de haberla ejecutado.
REGISTROS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Registro Contador de Programa (PC), es el que indica almicroprocesador la dirección de memoria donde se estáejecutando el programa. Cada vez que se lee una instrucción,el PC se incrementa automáticamente para suministrar ladirección de la posición de memoria donde se encuentra lasiguiente instrucción o dato del programa.
Registro de instrucciones (IR). Cada vez que elmicroprocesador capta una instrucción, esta se almacena en elregistro IR, con el fin de proceder a su decodificación ointerpretación y buscar en la ROM del microprograma elconjunto de microinstrucciones necesarios para su ejecución.Esta función la realiza un circuito denominado decodificador deinstrucciones.
REGISTROS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
El Registro Acumulador (Ac) es utilizado por muchasinstrucciones como fuente o destino de datos. En él,generalmente, se deposita el resultado de una operación.
El Registro de estado (SR) suministra, a través de susbits (llamados banderas (flags)), información relativa ala ejecución de ciertas instrucciones como signo,sobreflujo, paridad, generación de acarreo, resultadonegativo o cero, etc. Mediante la verificación del estadode estas banderas se pueden realizar bifurcaciones en lasecuencia del programa.
REGISTROS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Registros de propósito general. Son utilizados paraalmacenar direcciones de memoria, datos, resultadosintermedios y otros propósitos. El número y tipos deregistros que posee un microprocesador es una partemuy importante en su arquitectura y su programación.
TIPOS DE MEMORIAS
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
MODULO DE MEMORIAMODULO DE MEMORIA
MEMORIA LECTURA/ESCRITURA(ACCESO ALEATORIO)
MEMORIA LECTURA/ESCRITURA(ACCESO ALEATORIO)
MEMORIA DE VALOR FIJO(SOLO LECTURA)
MEMORIA DE VALOR FIJO(SOLO LECTURA)
RAM ESTATICAS(SRAM)RAM ESTATICAS(SRAM)
RAM DINAMICAS(DRAM)RAM DINAMICAS
(DRAM)
PROMPROGRAMABLESPOR EL USUARIO
PROMPROGRAMABLESPOR EL USUARIO
ROMPROGRAMABLESPOR MASCARA
ROMPROGRAMABLESPOR MASCARA
ALMACENAMIENTOSECUNDARIOALMACENAMIENTO
SECUNDARIO
PROMPROM EPROMEPROM OTPOTP EEPROMEEPROM FLASHFLASH
MODULO DE MEMORIAMODULO DE MEMORIA
MEMORIA LECTURA/ESCRITURA(ACCESO ALEATORIO)
MEMORIA LECTURA/ESCRITURA(ACCESO ALEATORIO)
MEMORIA DE VALOR FIJO(SOLO LECTURA)
MEMORIA DE VALOR FIJO(SOLO LECTURA)
RAM ESTATICAS(SRAM)RAM ESTATICAS(SRAM)
RAM DINAMICAS(DRAM)RAM DINAMICAS
(DRAM)
PROMPROGRAMABLESPOR EL USUARIO
PROMPROGRAMABLESPOR EL USUARIO
ROMPROGRAMABLESPOR MASCARA
ROMPROGRAMABLESPOR MASCARA
ALMACENAMIENTOSECUNDARIOALMACENAMIENTO
SECUNDARIO
PROMPROM EPROMEPROM OTPOTP EEPROMEEPROM FLASHFLASH
BUSES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
MIC
RO
PRO
CES
AD
OR
BUS DEDIRECCIONES
BUS DEDATOS
ENTRADASDE CONTROL
SALIDASDE CONTROL
FUENTE DEALIMENTACION
BUS DECONTROL
MIC
RO
PRO
CES
AD
OR
BUS DEDIRECCIONES
BUS DEDATOS
ENTRADASDE CONTROL
SALIDASDE CONTROL
FUENTE DEALIMENTACION
BUS DECONTROL
BUSES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Bus de datos está constituido por líneas bidireccionales.El número N de líneas del bus de datos es en general,igual con la longitud de la palabra de datos delmicroprocesador. Por el bus de datos de transfiere lainformación binaria entre el microprocesador y losperiféricos o entre el microprocesador y la memoria, odirectamente entre el periférico y la memoria, en caso deexistir dispositivos de acceso directo a la memoria. Por lotanto éste bus determina el tipo de procesador ( 4, 8 16o 32 bits) y el número de periféricos que se puedenconectar al microprocesador (por ejemplo para unmicroprocesador de 8 bits se conectarán 27 periféricos).Este bus es tri-state.
BUSES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Bus de direcciones está formado por líneasunidireccionales. Es utilizado para la transferencia deinformación necesaria para la selección de unadeterminada posición de memoria o de un puertodel módulo de E/S. Esta información representa ladirección de una posición de memoria o de un puerto deentrada o salida (del módulo de E/S), seleccionados parala realización de la transferencia de datos por busrespectivo. El bus de direcciones determina la capacidadde memoria del sistema.
BUSES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Bus de control está formado por líneas, en general,unidireccionales. En este bus cada línea tiene unsignificado y denominación distinta. El bus de controlcontiene la información que envía el microprocesador alos elementos del sistema o bien recibe de estos con elpropósito de sincronizar su operación con la operaciónde la circuitería externa. El número de líneas del bus decontrol es variable y depende dl microprocesadorparticular utilizado
CIRCUITO DE RELOJ Y RESET
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
CIRCUITO DE RELOJ Y RESET
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
MODULO DE ENTRADA/SALIDA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
mP+
Memoria
mP+
Memoria
PERIFERICOS• LED’s• DISPLAY’s• ZUMBADORES• INTERRUPTORES• SENSORES
ANALOGICOS• TECLADOS• Etc.
PERIFERICOS• LED’s• DISPLAY’s• ZUMBADORES• INTERRUPTORES• SENSORES
ANALOGICOS• TECLADOS• Etc.
ENTRADAENTRADA
ESTADOESTADO
SALIDASALIDA
mP+
Memoria
mP+
Memoria
PERIFERICOS• LED’s• DISPLAY’s• ZUMBADORES• INTERRUPTORES• SENSORES
ANALOGICOS• TECLADOS• Etc.
PERIFERICOS• LED’s• DISPLAY’s• ZUMBADORES• INTERRUPTORES• SENSORES
ANALOGICOS• TECLADOS• Etc.
ENTRADAENTRADA
ESTADOESTADO
SALIDASALIDA
MODULO DE ENTRADA/SALIDA
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
TIPO DISPOSITIVOENTRADA Interruptores ON/OFF
TecladosSensores y transductores de entrada
SALIDA Visualizadores (Led, LCD, etc)Pantallas TRCImpresoras (láser, de jet de tinta, de impacto,etc)Motores eléctricos y actuadotes
ENTRADA/SALIDA Terminales interactivosMemorias secundariasUnidades de disco magnéticoEnlaces de comunicacionesLíneas telefónicas
SISTEMAS CON MICROCONTROLADORES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
SISTEMAS CON MICROCONTROLADORES
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
El microcontrolador es un circuito programable quecontiene todos los componentes de un computador. Seemplea para controlar el funcionamiento de una tareadeterminada y, debido a su reducido tamaño, suele irincorporado en el propio dispositivo que lo gobierna, porlo tanto, el microcontrolador es un computadordedicado.
MICROPROCESADOR vsMICROCONTROLADOR
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
MICROPROCESADOR vsMICROCONTROLADOR
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Procesamiento de datos: puede ser necesario que elmicrocontrolador realice cálculos críticos en un tiempolimitado. En ese caso debemos asegurarnos de seleccionarun dispositivo suficientemente rápido para ello. Por otrolado, habrá que tener en cuenta la precisión de los datosa manejar: si no es suficiente con un microcontrolador de8 bits, puede ser necesario acudir a microcontroladoresde 16 ó 32 bits, o incluso a hardware de coma flotante.Una alternativa más barata y quizá suficiente es usarlibrerías para manejar los datos de alta precisión.
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Entrada Salida: para determinar las necesidades deEntrada/Salida del sistema es conveniente dibujar undiagrama de bloques del mismo, de tal forma que seasencillo identificar la cantidad y tipo de señales acontrolar. Una vez realizado este análisis puede sernecesario añadir periféricos hardware externos o cambiara otro microcontrolador más adecuado a ese sistema.
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Consumo: algunos productos que incorporanmicrocontroladores están alimentados con baterías y sufuncionamiento puede ser tan vital como activar unaalarma antirrobo. Lo más conveniente en un caso comoéste puede ser que el microcontrolador esté en estadode bajo consumo pero que despierte ante la activación deuna señal (una interrupción) y ejecute el programaadecuado para procesarla.
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Memoria: para detectar las necesidades de memoria denuestra aplicación debemos separarla en memoria volátil(RAM), memoria no volátil (ROM, EPROM, etc.) y memoria novolátil modificable (EEPROM). Este último tipo de memoriapuede ser útil para incluir información específica de laaplicación como un número de serie o parámetros decalibración. El tipo de memoria a emplear vendrá determinadopor el volumen de ventas previsto del producto: de menor amayor volumen será conveniente emplear EPROM, OTP yROM. En cuanto a la cantidad de memoria necesaria puede serimprescindible realizar una versión preliminar, aunque sea enpseudo-código, de la aplicación y a partir de ella hacer unaestimación de cuánta memoria volátil y no volátil es necesariay si es conveniente disponer de memoria no volátilmodificable.
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Ancho de palabra: el criterio de diseño debe serseleccionar el microcontrolador de menor ancho depalabra que satisfaga los requerimientos de la aplicación.Usar un microcontrolador de 4 bits supondrá unareducción en los costes importante, mientras que uno de8 bits puede ser el más adecuado si el ancho de los datoses de un byte. Los microcontroladores de 16 y 32 bits,debido a su elevado coste, deben reservarse paraaplicaciones que requieran sus altas prestaciones(Entrada/Salida potente o espacio de direccionamientomuy elevado).
¿QUÉ MICROCONTROLADOR EMPLEAR?
LUIS DAVID NARVÁEZ DISEÑO DECOMPUTADORAS
Diseño de la placa: la selección de un microcontroladorconcreto condicionará el diseño de la placa de circuitos.Debe tenerse en cuenta que quizá usar unmicrocontrolador barato encarezca el resto decomponentes del diseño.
MUCHAS GRACIAS
PREGUNTAS /COMENTARIOS
LUIS DAVID NARVÁEZ DISEÑO DE COMPUTADORAS