Procesadores. Dr. Andrés David García García Departamento de Mecatrónica Campus Estado de México

Documentos relacionados
1.2.-Analisis de los componentes

Introducción a la arquitectura de computadores

Sistemas con Microprocesadores I

FUNCIONAMIENTO DEL ORDENADOR

Tema: Microprocesadores

CICLOS DEL PROCESADOR

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Arquitectura (Procesador familia 80 x 86 )

ARQUITECTURA DE VON NEUMANN Y HARVARD

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

EVOLUCIÓN HISTÓRICA DE LOS µp

Contenidos. Arquitectura de ordenadores (fundamentos teóricos) Elementos de un ordenador. Periféricos

Unidad 5 Unidad central de proceso

ENIAC, Primer computador electrónico y su panel de conexiones

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

Estructura del Computador

Unidad 2: Taller de Cómputo. Estructura y Componentes de la Computadora UNIDAD DOS: INTRODUCCIÓN

INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos

Velocidades Típicas de transferencia en Dispositivos I/O

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

Sistema Operativo. Repaso de Estructura de Computadores. Componentes Hardware. Elementos Básicos

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA

1.1. Modelos de arquitecturas de cómputo: clásicas, segmentadas, de multiprocesamiento.

PREGUNTAS INFORMÁTICA MONITOR UPB EXAMEN 1

ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR

1.2.- EL MICROPROCESADOR.

Sistemas Informáticos. Estructura Funcional

Arquitectura Interna del 8088

MICROPROCESADOR. Ing. Raúl Rojas Reátegui

UNIVERSIDAD TECNOLÓGICA DE LA MIXTECA. Ingeniería en Electrónica EL MICROCONTROLADOR PIC16F84 PRESENTA: M. C. Felipe Santiago Espinosa

Arquitectura del CPU. Organización del Computador 1 Verano 2016

Unidad I: Organización del Computador. Ing. Marglorie Colina

Sección de procesamiento: El camino de datos

Organización del Computador I. Introducción e Historia

Revisión de Conceptos. Estructura de un Computador von Neumann. Arquitectura de Computadores I Introducción

Implementación de una unidad procesadora de cuatro bits, como material didáctico

El nivel ISA (II)! Conjunto de Instrucciones

ESTRUCTURA DE COMPUTADORES GUÍA DOCENTE

ESTRUCTURA BÁSICA DE UN ORDENADOR

Instituto Tecnológico de Morelia

Arquitectura de Computadores II Clase #3

ARQUITECTURA VON NEUMANN

ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

TEMA 2: Organización de computadores

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II

Fecha de Introducción. Velocidad de reloj. Anchura del bus. Número de transistores. (microns) Memoria direccionable.

SISTEMAS OPERATIVOS Arquitectura de computadores

Tema 1: Arquitectura de ordenadores, hardware y software

Fundamentos de Computadores. Tema 5. Circuitos Aritméticos

(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

Arquitectura de Computadoras Organización del CPU Basadas en las Notas de Teórico Versión 5.1 del Dpto. de Arquitectura-InCo-FIng

ORGANIZACIÓN DE LA MEMORIA

Unidad Nº II Capacidad de la unidad central. de procesamiento. Instituto Universitario Politécnico. Santiago Mariño

Tema 15 ELECTRÓNICA DIGITAL. PROCESADORES DIGITALES (PARTE 2A) Arquitecturas Harvard y Von Neumann. Tipos de procesadores digitales

Qué es un Microcontrolador?

TEMA 1: Concepto de ordenador

1.1 Introducción del Curso. 1.2 Nociones Básicas

Estructura de Computadores Tema 1. Introducción a los computadores

Lenguaje binario. Código ASCII. Medidas de la información

UNIDAD 1. COMPONENTES DEL COMPUTADOR

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

Microprocesadores. Informática Aplicada DSI-EIE FCEIA

Organización de Computadoras. Clase 6

El Computador y sus Partes INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS

Ing. Carlos Bacalla

Entrada y Salida! EC-2721 Arquitectura del Computador I! Entradas/Salidas: Problemas. Entradas salidas: Criterios. Amplia variedad de periféricos!

Tema 2: Conceptos básicos. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Evolución del software y su situación actual

Ejercicios del tema 4. El procesador

GESTION DE ENTRADA Y SALIDA

TEMA 5.3 SISTEMAS DIGITALES

Sist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.

Partes de una computadora. Conceptos Generales. Elementos de Computación (CU) Computación (TIG) El Hardware de una computadora

Código: ARC-265. Horas Semanales: 6. Prelaciones: INI-154

CICLO ESCOLAR JULIO DICIEMBRE

Tema 3: Operaciones aritméticas y lógicas

Unidad Nº II Arquitectura de un computador. a gran escala

Tutoría 2. Banco de memoria de 8 y 16 bits (8086)

UNIDAD FORMATIVA 1: Instalación y Actualización de Sistemas Operativos

Organización de Computadoras. Clase 7

Práctica final. Emilia Cruz Fernández Martínez

Qué es un programa informático?

T2.- Unidades funcionales de un ordenador. TEMA 2 UNIDADES FUNCIONALES DE UN ORDENADOR. T2.- Unidades funcionales de un ordenador.

Dada la CPU con la estructura interna que se muestra en la figura,

DISEÑO CURRICULAR ARQUITECTURA DEL COMPUTADOR

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica

Instituto Tecnológico de Morelia

INDICE Capitulo 1. Álgebra de variables lógicas Capitulo 2. Funciones lógicas

Microcontroladores. Sistemas embebidos para tiempo real

TEMA III: OPERACIONES CON LOS DATOS

2 Año EMP Administración

Tecnologías, Organización y Microarquitectura

Hoja de respuestas. Examen tipo A

Tema 3. Operaciones aritméticas y lógicas

SOFTWARE DE APLICACIÓN. CINDEA Sesión 02

Página 1 de 12 CONCEPTOS INFORMÁTICOS BÁSICOS

Transcripción:

Procesadores Dr. Andrés David García García Departamento de Mecatrónica Campus Estado de México

Arquitectura de computadoras Instrucciones I/O ROM CPU Datos I/O RAM I/O TE 1010 2

Arquitectura de computadoras Arquitectura interna de una computadora: CPU Bus de direcciones Bus de datos /MWTC /MRTC /IOWC /IORC Memoria ROM Memoria RAM Teclado Pantalla TE 1010 3

Arquitectura de computadoras Un sistema a base de una CPU cuenta con 2 tipos de buses: Bus de datos: por el cual se realiza el intercambio de palabras de información. Bus de direcciones: que permite seleccionar el contenido del mapa de memoria. Por medio de estos buses se controlan los elementos de memoria y los sistemas de entrada/salida o periféricos. TE 1010 4

Arquitectura de computadoras Un microprocesador ejecuta una serie de instrucciones de forma secuencial. ALTO NIVEL Visual C++ C++ JAVA C Assembler HEX BAJO NIVEL Estas instrucciones se escriben en un lenguaje llamado lenguaje ensamblador, el cual puede ser interpretado por el humano. TE 1010 5

Arquitectura de computadoras El lenguaje Ensamblador permite la construcción de códigos secuenciales de tareas reducidas (RISC) lo más cercano posible al código de ejecución del procesador: LOAD A mem; carga el valor contenido en el registro A en la ; dirección dememoria mem. CON B const; carga el valor de la constante const en el registro B. ADD A,B; Suma el valor del registro A con el valor del registro B ; y almacena ese valor en otro registro. SUB A,B; Efectúa la resta entre los valores contenidos en los registros ; A y B. Mediante un programa llamado propiamente ensamblador se traduce a un lenguaje máquina que el CPU entiende: :A990456EA060B03201FF; TE 1010 6

Arquitectura de una CPU TE 1010 7

Arquitectura de una CPU Codificador: Interpreta el código Máquina Registro: Almacena la instrucción que mientras se ejecuta ALU: Unidad Aritmética Lógica. Requiere saber en cada momento lo que va a hacer La CPU no piensa por sí misma, hay que decirle qué hacer!! TE 1010 8

Unidad Aritmética Lógica: ALU Una ALU (Unidad Aritmética-Lógica) es un circuito que permite, como su nombre lo indica, realizar operaciones lógicas y aritméticas. Además de los operadores lógicos y aritméticos, la ALU cuenta con una serie de registros para almacenar los datos, y bits de información sobre los resultados, también llamados banderas. Las banderas más comunes son: Carry, Auxiliary Carry, Borrow, Overflow, Parity, Zero.

La ALU El símbolo de una ALU: C ALU Banderas A B

La ALU El circuito ALU es simplemente un operador, es decir, sólo realiza operaciones. La ALU no toma decisiones. Las entradas deben contener tanto la magnitud como el signo que corresponda a la operación. La ALU requiere de un mecanismo de control que le permita saber el tipo de operación a realizar.

A[0] B[0] Diseño de una ALU Una forma de construir una ALU simple es mediante una célula de tipo bit-slice. ALU Bit Slice NA NB Cin Esta célula permite realizar la suma ó alguna operación lógica entre 2 bits. C[1] S[0] FA A and B /B /A A xor B; [A+B] A or B Señales de control MUX 12

A[0] B[0] Diseño de una ALU En principio, la célula basada en un Full Adder permite realizar operaciones de SUMA, RESTA, AND, OR, XOR y NOT. ALU Bit Slice NA NB Cin Las funciones AND y XOR se toman de las salidas de Carry- Out y Suma Respectivamente. C[1] FA A and B /B Señales de control Esta arquitectura tiene la limitante que, para las funciones AND y XOR, se requiere de que tanto A como B no estén negados, y que el Carry-In sea 0. S[0] MUX /A A xor B; [A+B] A or B 13

A[0] B[0] Diseño de una ALU Si A, o B están negadas, o si el Carry-in es 1. Entonces las salidas de Carry-Out y de Suma no pueden ser utilizadas para generar las funciones AND y XOR respectivamente: ALU Bit Slice NA NB Cin Solución: Dividir el Full Adder en dos Half Adder. C[1] S[0] FA A and B /B /A A xor B; [A+B] A or B Señales de control A B Cin A B A B Full Adder S Co S Co S Co MUX 14

A[0] B[0] Diseño de una ALU La célula bit-slice quedaría de la siguiente forma: ALU Bit Slice 2 Full Adder NA NB Cin La función AND proviene del CarryOut del primer HA C[1] HA HA Señales de control La función XOR proviene de la Suma del primer HA A and B /B /A S[0] A xor B A or B A + B MUX 15

S[3] S[2] S[1] S[0] A[3] B[3] A[2] B[2] A[1] B[1] A[0] B[0] Diseño de una ALU Varias células bit-slice permiten construir una ALU más compleja: A[0] B[0] Cin Célula ALU C[1] S[0] ALU Bit Slice Control ALU en arquitectura paralela de tipo Carry Ripple Co ALU C[3] C[2] C[1] ALU ALU ALU C[1] Control ALU 4 bits Qué debemos agregar para obtener los bits de Overflow, Negativo, Zero? 16

La ALU Otro tipo de célula que se puede emplear es a base de multiplexores: 17

La ALU Partes de la ALU: Sumador/restador rápido Operadores lógicos (AND, OR, XOR, NOT) Un acumulador y un registro auxiliar Un registro de salida Señales de control que indiquen la operación a realizar Registro de banderas de estatus

La ALU La ALU deberá contar con un circuito de control que le permita: Identificar la operación a realizar Administrar los recursos internos de la ALU que requiera la operación Generar las banderas de estatus

Microprocesador Es el corazón de toda computadora, así como de otros equipos electrónicos que requieren de una central de procesamiento de datos. Al microprocesador se le conoce también como CPU (Central Processing Unit). La CPU es un elemento capaz de realizar operaciones lógicas y aritméticas además de poder auxiliar en la toma de decisiones. También permite el intercambio de datos entre localidades de memorias y/o periféricos. 20

Microprocesador Un Microprocesador, como su nombre lo indica es un elemento muy pequeño que puede procesar información. Este elemento se construye mediante procesos de alta integración o VLSI. 21

Dónde podemos encontrarlos? Existen una gran variedad de aplicaciones a base de procesadores: 22

Arquitectura de una PC Componentes: Los bloques funcionales básicos son: la unidad de procesamiento central (CPU), la memoria principal, y el procesador de Entrada - Salida. La CPU es el componente mas importante ya que permite el procesamiento de la información, la gestión de la memoria y de los puertos de comunicación.

Arquitectura de una PC Unidad de procesamiento central: Es la responsable de la interpretación y ejecución de las instrucciones contenidas en la memoria principal. El direccionamiento a la memoria se realiza por medio del bus de direcciones y el bus de datos. La acción de leer una instrucción y prepararla para su ejecución se llama ciclo de búsqueda.

Arquitectura de una PC Para completar la instrucción, la CPU: decodifica el código de operación, genera las señales de control para leer los operandos de entrada de la ALU Controla la ejecución de la instrucción La CPU controla también las operaciones de la ALU. El proceso de realización que especifica una función se denomina ciclo de ejecución. Al proceso completo ciclo de búsqueda mas ciclo de ejecución se le llama ciclo máquina.

Arquitectura de una PC La CPU puede dividirse funcionalmente en 3 subunidades: La unidad de control, dedicada a los ciclos de búsqueda y ejecución, La ALU que desempeña funciones aritméticas como por ejemplo, suma y resta, y de lógica por ejemplo AND, OR, Y un conjunto de registros dedicados al almacenamiento de datos en la CPU y a ciertas funciones de control

Arquitectura de una PC PC MAR MDR IR PSW Registros de operación OR NOR AND NAND Desplazamiento Rotación Operaciones Básicas Reg. a Reg. Reg. a Mem. Mem. A reg. Mem a mem. Intercambio de datos Reg. estados y control Reg. De información Control

Arquitectura de una PC La CPU contiene un conjunto de localidades de almacenamiento temporal de datos de alta velocidad llamada registro. Algunos de los registros están dedicados al control, y solo la unidad de control tiene acceso a ellos. Los registros restantes son los registros de uso general y el programador es el usuario que tiene acceso a ellos. Contador de programa (PC). Registro de direcciones de la memoria (MAR). Registro de datos (RD). Registro de instrucciones (ER). Palabra de estado de programa (PSW).

Arquitectura de una PC Apuntador de programa (PC): La función del PC consiste en seguir la pista de la instrucción por buscar (capturar) en el siguiente ciclo de maquina, por lo tanto contiene la dirección de la siguiente instrucción por ejecutar. El PC es modificado dentro del ciclo de búsqueda de la instrucción actual mediante la suma de una constante. El numero que se agrega al PC es la longitud de una instrucción.

Arquitectura de una PC Registro de direcciones de la memoria (MAR): funciona como registro de enlace entre la CPU y el registro de direcciones. Cuando se logra el acceso a la memoria la dirección es colocada en el MAR por la unidad de control y ahí permanece hasta que se completa la transacción. El numero de bits que hay en el MAR es igual al del registro de direcciones. Durante el ciclo de ejecución de una instrucción, el PC y el MAR sirven al mismo fin. Sin embargo, muchas de las instrucciones de la maquina hacen referencia a la memoria y operan con los datos que están en ella (dato). Como la dirección de los datos suele ser diferente de la instrucción siguiente se necesita el MAR.

Arquitectura de una PC Registro de datos (RD): la función del RD consiste en proporcionar un área de almacenamiento temporal (memoria intermedia, acumulada o buffer) de datos que se intercambian entre la CPU y la memoria. Los datos pueden ser instrucciones (obtenidas en el ciclo de ejecución) o datos del operando (obtenidos en el ciclo de ejecución). Debido a su conexión directa con el bus de datos el RD contiene el mismo numero de bit que dicho bus.

Arquitectura de una PC Registro de instrucciones (ER): es un registro que conserva el código de operación de la instrucción en todo el ciclo de la maquina. El código es empleado por la CPU para generar las señales apropiadas que controlan la ejecución de la instrucción. La longitud del ER es igual a la del código de operación.

Arquitectura de una PC Palabra de estado de programa (PSW): almacena información pertinente sobre el programa que este ejecutándose. Por ejemplo al completarse una función de la unidad aritmética lógica se modifica un conjunto de bit llamados códigos (señales de condición ó banderas). El programa puede verificar estos bits en las instrucciones siguientes cambiar en forma condicional su flujo de control según su valor. Además el PSW contiene bits que hacen posible que la computadora responda a solicitudes de servicio asincrónicas generadas por dispositivos de Entrada- Salida, o condiciones de error interno. Estas señales se denominan interrupciones.

Arquitectura de una PC Tipo de instrucciones. Las instrucciones pueden clasificarse en 5 categorías: Instrucciones de aritmética y lógica. Instrucciones de movimientos de datos. Operaciones de datos en bloques. Instrucciones de control del programa. Instrucciones de Entrada - Salida.

Arquitectura de una PC Instrucciones de Aritmética y Lógica: Operaciones binarias, las cuales requieren dos operandos y producen un resultado único. La suma, la resta, la multiplicación y división, son operaciones standard en la mayor parte de las maquinas. Las operaciones de lógica incluida en el conjunto de instrucciones son las operaciones AND, NAND, NOR, XAND, XOR. También dentro de las instrucciones de aritmética y lógica se encuentran las operaciones de desplazamiento y las de rotación.

Arquitectura de una PC Instrucciones de movimientos de datos: Esta instrucción da por resultados la copia de datos desde una localidad de operando a otra, estas instrucciones requieren información que identifique los operandos fuentes y destinos. En una computadora de uso general, los datos se pueden mover de: Registro a registro. Registro a memoria. Memoria a registro. Memoria a memoria.

Arquitectura de una PC Operaciones de datos en bloques: Son aquellas que se efectúan con un conjunto de operandos y no con un solo operando. También dentro de este tipo de instrucción se encuentran las de control del programa. Esto hace posible que un programa se adapte a la secuencia inherente al ciclo de maquina de la computadora. En otras palabras, se pueden pasar por alto secciones de instrucciones como resultado de la activación de un código de condiciones o como resultado directo del diseño del programa.

Arquitectura de una PC Instrucciones de Entrada salida: Desde el punto de vista de la programación para el acceso a la memoria o a un periférico simplemente se requiere el mismo conjunto de instrucciones. Estos sistemas se denominan sistemas de Entrada - Salida mapeados por memoria. El dispositivo se caracteriza como un conjunto de localidades de la memoria que se dividen en dos subcategorias: un conjunto de registro de estado de control y un registro de información.

Arquitectura de una PC Registro de estado y control. Contienen información acerca del estado inactivo, ocupado, etc. En estos registros también se almacena información de control (tipo de paridad y la velocidad de transmisión de los datos). La información contenida en los registros de estado y control se utiliza principalmente para proporcionar una imagen global del hardware. Registro de información: Constituyen una memoria intermedia para la información que se transfiere entre la CPU y el periférico.

Arquitectura de una PC Un sistema operativo es un conjunto de programas que hace posible que el usuario tenga acceso controlado a sus recursos, tales como la CPU, la memoria y los dispositivos de Entrada - Salida. El sistema operativo asigna tiempo a la CPU, distribuye el espacio disponible en la memoria, asigna y controla dispositivos de Entrada - Salida para cada usuario. Estas funciones se realizan en forma transparente, es decir que el programador escribe el programa como si todo el sistema de la computadora estuviere dedicado a ese programa. Para ofrecer algunas características del sistema operativo la arquitectura de la maquina debe tener por lo menos 2 modos de operación diferentes: modo de supervisión y modo del usuario.

Arquitectura de una PC En modo del supervisor, la CPU puede ejecutar todas las instrucciones de la maquina. Este es el modo de operación en el cual corren los programas de los distintos sistemas operativos. Todas las peticiones de servicio de los dispositivos periféricos pasan por el sistema operativo ya que las instrucciones de Entrada - Salida, solamente pueden emitirse cuando la maquina se encuentra en modo supervisor. En modo usuario, la CPU no puede ejecutar todo el conjunto de instrucciones (en particular no se permite la ejecución de las instrucciones de control de la maquina y de Entrada Salida).

Arquitectura de una PC Un sistema a base de una CPU se compone de 2 tipos de memoria: Memoria de programa (ROM) y memoria de datos (RAM).

Arquitectura de una PC

Arquitectura de una PC La distribución de la memoria dentro de la computadora se suele denominar mapa de memoria y en el es posible observar en que zona se encuentran ubicados los registros y programas del sistema operativo. Independientemente de la disponibilidad de memoria, el limite real de direccionamiento va a estar dado por el sistema operativo que se esta usando, por ejemplo el sistema operativo D.O.S. independientemente de la memoria instalada puede direccionar como área de trabajo 640 Kb.

Arquitectura de una PC Mapa de memoria:

Arquitectura de una PC Los dispositivos de Entrada-Salida solo comprenden uno de los cuatro componentes principales de una computadora, sin embargo las ramificaciones de Entrada-Salida extienden esta simple representación y pueden tratarse en varios niveles diferentes. Las propiedades físicas y eléctricas de los dispositivos, la interfaz o controlador con que interactúa el procesador central y el apoyo de software del sistema operativo en uso. La unidad de Entrada-Salida puede contar en realidad de muchas interfaces o controladores, incluir un procesador de Entrada - Salida de uso especial pero manejado por la CPU o ambas cosas.

Arquitectura de una PC Cuatro clases principales de técnicas se aplican comúnmente en forma individual o combinada para controlar la transferencia de datos de Entrada - Salida: 1.- Entrada Salida controlada por programa 2.- Entrada Salida por interrupciones 3.- Acceso directo a memoria (DMA) 4.- Entrada Salida mapeada por direcciones

Arquitectura de una PC El medio por el cual los dispositivos de E/S tienen acceso al CPU y al resto de los elementos internos es el canal (bus) de Entrada Salida común. CPU Memoria Vídeo Almacenamiento Dispositivos de ENTRADA - SALIDA

RISC y CISC RISC : Reduced Instruction Set Computer. Juego de instrucciones reducido o simplificado Estructura pipeline (Ejecuta una instrucción mientras decodifica la siguiente). Un ciclo máquina por instrucción. CISC : Complex Instruction Set Computer. Juego de instrucciones complejo. Estructura tipo pipeline y paralela (ejectura en una sola instrucción CISC varias RISC). Dos o mas instrucciones por ciclo máquina EDIA/Mecatrónica/ADGG/2014 49

Arquitectura de una CPU En este canal se interconectan dispositivos de E/S, la CPU y la memoria principal. Las funciones principales del canal de E/S hace posible que múltiples dispositivos: 1) Transfieren información por trayectorias de datos comunes compartiendo y reduciendo la complejidad del hardware. 2) Se agregan o desmontan dispositivos simplemente enchufando o desenchufando sus cables (plug and play). 3) Se enlaza a un mecanismo el canal de E/S empleando especificaciones lógicas, eléctricas y físicas estandarizadas.

Arquitectura Von Neuman La mayoría de los microprocesadores actuales son basados en esta arquitectura. La memoria de programa tiene datos e instrucciones mezclados. Sólo hay un bus para transmitir datos e instrucciones. Las instrucciones están codificadas en palabras en base hexadecimal. EDIA/Mecatrónica/ADGG/2014 51

Arquitectura Von Neumann CPU ROM Datos/instrucciones Registros De Status RAM EPROM Direcciones Puertos E/S EDIA/Mecatrónica/ADGG/2014 52

Entrada Salida Arquitectura Von Neumann Características principales: Instrucción Ciclo de recuperación de instrucción Memoria Programa Unidad de control Trayectoria de datos Instrucción Instrucción 0 Instrucción 1 Instrucción 2 Instrucción 3 Instrucción 4 Instrucción 5 Unidad central de procesamiento Envío de datos Recepción de datos Datos Dato 0 Dato1 Dato2

Arquitectura Von Neumann La velocidad de la máquina bajo este modelo se calcula de la forma siguiente: t instruccio n t IF t ID t EX t S t IF es el tiempo de Fetch t ID es el tiempo de decodificación t EX es el tiempo de ejecución t S es el tiempo de almacenamiento

Arquitectura Von Neumann F=x+y Niveles de lenguajes de programación: Programa en lenguaje de alto nivel G=w-z Si (f==g) entonces resultado=2* x Además resultado=6* w Lenguaje ensamblador Compilador Add R3, R2, R5 Sub R7, R18, R7 Beq R3, R7, Ox60a5 Lenguaje de máquina a la computadora

Arquitectura Von Neumann Operación Fetch o de lectura de programa: Memoria Contador de programa (PC) Dirección Incremento +4 Registro de instrucciones (IR) Salida de datos

Registro de selección de entrada Registro de selección de salida Arquitectura Von Neumann Arquitectura de la CPU: Unidad de control Registro de instrucción Lógica de control Selección de función Control A Memoria local B ALU Archivo de registros

Arquitectura Von Neumann La arquitectura Von Neumann tiene un solo bus de datos e instrucciones:

Arquitectura Harvard Datos e instrucciones están claramente diferenciados. Emplean buses y dispositivos de memoria diferentes. Es mas rápido que la máquina de Von Neumann Las instrucciones siguen codificadas. EDIA/Mecatrónica/ADGG/2014 59

Arquitectura Harvard EPROM Instrucciones Deco de Instrucciones Direcciones Puertos E/S ROM CPU Datos RAM EDIA/Mecatrónica/ADGG/2014 60

Arquitectura Harvard El modelo Harvard dispone de dos memorias: Memoria de datos Memoria de Programa Además cada memoria dispone de su respectivo bus, lo que permite, que la CPU pueda acceder de forma independiente y simultánea a la memoria de datos y a la de instrucciones. Como los buses son independientes éstos pueden tener distintos contenidos en la misma dirección.

Arquitectura Harvard Arquitectura:

Procesador Segmentado Procesador segmentado "pipe-line": quiere decir que aplica la técnica de segmentación que permite al procesador realizar simultáneamente la ejecución de una instrucción y la búsqueda de código de la siguiente. De esta manera, se puede ejecutar una instrucción en un ciclo. (Cada ciclo de instrucción son cuatro ciclos de reloj).

Procesador Segmentado Cronograma:

Procesador Segmentado Ciclos de trabajo: Ejemplo: Búsqueda 1 Ejecuta 1 1. MOVLW 55h Búsqued a 2 Ejecuta 2 2.MOVWF PORTB Búsqued a 3 Ejecuta 3 3. CALL SUB_1 Busqued a 4 Salir 4. BSF PORTA,BIT 3 Busqueda SUB_1 Ejecuta SUB_1

Arquitectura a base de bancos Arquitectura basada en banco de registros: Implica que todos los elementos del sistema, es decir, temporizadores, puertos de entrada/salida, posiciones de memoria, etc, están implementados físicamente como registros. En los PIC el manejo del banco de registros, que participan activamente en la ejecución de las instrucciones, es muy interesante al ser ortogonales. En la figura siguiente se muestra como la ALU (Unidad Aritmético-Lógica) efectúa sus operaciones con dos operandos, uno que proviene del registro W (Work), que en otras CPUs recibe el nombre de Acumulador, y el otro que se encuentra en cualquier otro registro o del propio código de instrucción.

Arquitectura a base de registros

Arquitectura A X Md CC R shiftout 8 Opcode ALU control SHIFTER alu 9 9 CC logic Op1 ALU Op2 8 8 MUX1 A X Md MUX2 0 Md 0

Arquitectura alu9 And2 Or2 xor2 ADDER and logic operations Cin Op1_com Op2_com com1 complementer complementer com2 Op1 Op2