El procesador. Datapath y control

Documentos relacionados
Sección de procesamiento: El camino de datos

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:

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

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012

Circuitos Lógicos Combinatorios. Ing. Jorge Manrique 2004 Sistemas Digitales 1

CURSO: Electrónica digital UNIDAD III: CIRCUITOS SECUENCIALES - TEORÍA

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

Diseño del procesador MIPS R2000

Organización de Computadoras Apunte 5: Circuitos Lógicos Secuenciales

ARQUITECTURA VON NEUMANN

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

Introducción a la arquitectura de computadores

FLIP-FLOP JK MAESTRO-ESCLAVO

Latch D con Multiplexor. Recordemos el funcionamiento de un Multiplexor B 1. Control Z 0 A 1 B. Realicemos la siguiente modificación

Estructura del Computador

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

Introducción a los Circuitos Secuenciales LATCHES Y FLIP-FLOPS. Por: Carlos A. Fajardo

TEMA 5.3 SISTEMAS DIGITALES

CURSO: ELECTRÓNICA DIGITAL UNIDAD 3: SISTEMAS SECUENCIALES - TEORÍA PROFESOR: JORGE ANTONIO POLANÍA

Organización de Computadoras. Clase 6

UNIDAD 4: El procesador: Camino de los datos y Control.

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS

Electrónica Digital: Diseño y Lógica Secuencial

Organización del Computador 1 Lógica Digital 2: circuitos y memor

LECCIÓN Nº 05 SEÑALES DE RELOJ Y FLIP FLOP SINCRONIZADOS POR RELOJ

Introducción Flip-Flops Ejercicios Resumen. Lógica Digital. Circuitos Secuenciales - Parte I. Francisco García Eijó

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

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

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

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017

Organización del Computador I. David Alejandro González Márquez

Arquitectura de Computadoras

Tratamiento de Excepciones en MIPS

Arquitectura de Computadores II Clase #4

5. Procesador: camino de datos y control

Operación de circuitos lógicos combinatorios.

Pipelining o Segmentación de Instrucciones

Electrónica Digital. Fco. Javier Expósito, Manuel Arbelo, Pedro A. Hernández Dpto. de Física Fundamental y Experimental, Electrónica y Sistemas

Ejercicios del tema 4. El procesador

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA

4.1 Ejecución de instrucciones en el nivel de Microprogramación

Instituto Tecnológico de Morelia

Cuatro Tipos de Flip-Flop en la GAL22V10

Práctica 5. Generadores de Señales de Reloj y Flip-flops

Registros y latches multibit. EL-3213 Circuitos Digitales I. Registro de 8 bits (octal register) Otros registros de 8 bits. 74x175

Circuitos Secuenciales: concepto de estado

MICROPROCESADOR RISC SINTETIZABLE EN FPGA PARA FINES DOCENTES

TEMA7. SISTEMAS SECUENCIALES

EL-3213 Circuitos Digitales I. Registros y latches multibit

Implementación de instrucciones para el procesador MIPS de ciclo único.

Circuitos Secuenciales

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

Practica 1 (3.5 %) 1. Realice el diseño y montaje de un R_S discreto activo en bajo.

Unidad III Introducción a la lógica secuencial

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

MICROPROCESADOR. Multiciclo

UNIDAD 3 ARQUITECTURA DEL Z80. Microprocesadores Otoño 2011

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2

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

INDICE. XVII 0 Introducción 0.1. Historia de la computación

Relación de Problemas de Circuitos Secuenciales

Los circuitos con realimentación no son combinacionales. Constituyen un nuevo tipo, los llamados secuenciales.

Registros. Registro de Corrimiento Básico

Práctica 2 - Lógica Digital

T7-SISTEMAS SECUENCIALES

Procesador. Memoria. Ejemplo de un Procesador: MU0. Instrucciones. Direcciones. Registros. Datos. Instrucciones y datos SETI Tr.

ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN

El nivel ISA (II)! Conjunto de Instrucciones

Biestables. Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción

Lógica Secuencial. Circuitos Digitales, 2º de Ingeniero de Telecomunicación ETSIT ULPGC

TEMA 1 INTRODUCCIÓN A LOS SISTEMAS DIGITALES

Organización n del Computador 1. Lógica Digital 2 Circuitos y memorias

Tema 3: Operaciones aritméticas y lógicas

Arquitectura de Computadores II Clase #3

Circuitos Lógicos Secuenciales. Figura 36. Circuito lógico secuencial. Actividad de apertura. Circuitos lógicos secuenciales.

UNIVERSIDAD NACIONAL FEDERICO VILLARREAL FACULTAD DE INGENIERÍA ELECTRÓNICA E INFORMÁTICA

DIAGRAMA A BLOQUES DE UNA COMPUTADORA

Modelo Computacional Binario Elemental

Práctica 7 - Microarquitectura del CPU

INDICE Capítulo 1. Introducción Capítulo 2. Circuitos lógicos básicos Capítulo 3. Sistemas numéricos Capítulo 4. Codificación

dksdkñld Docentes )) Ing. Rodrigo Furlani Ing. Domingo Guarmaschelli 1 Práctico Nº 4: Lógica Secuencial Flip Flop RS NOR

ARQUITECTURA DE COMPUTADORES

Microarquitectura: DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR

Tema 4: Diseño de un microprocesador

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

FUNCIONAMIENTO DEL ORDENADOR

2. Números naturales: sistema de numeración y operaciones básicas

Práctica 4 - Microarquitectura del CPU

Tema 7. SISTEMAS SECUENCIALES SISTEMAS SECUENCIALES SÍNCRONOS

Trabajo Práctico 1. 1) Convertir los siguientes números enteros escritos en binario a: I) Octal II) Decimal III) Hexadecimal

TEMA 10. CIRCUITOS SECUENCIALES

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

Lógica Digital. Circuitos Secuenciales. Maximiliano Urso. Orga I

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIO DE LICENCIATURA PRAXIS MES XXI

INDICE 1. Conceptos Introductorias 2. Sistemas Numéricos y Códigos 3. Compuertas Lógicas y Álgebras Booleana 4. Circuitos Lógicos Combinatorios

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy

Transcripción:

El procesador Datapath y control

Introducción En esta parte del curso contiene: Las principales técnicas usadas en el diseño de un procesador. La construcción del datapath y del control. Estudiaremos la implementación de una versión reducida de MIPS. Universidad de Sonora Arquitectura de Computadoras 2

Definiciones El procesador o CPU (unidad central de procesamiento) sigue las instrucciones del programa al pie de la letra. Suma y compara números, ordena activarse a los dispositivos de I/O, etc. El procesador consta de dos componentes: El datapath. Ejecuta operaciones aritméticas y lógicas. El control. Ordena al datapath, memoria y dispositivos de I/O lo que hay que hacer de acuerdo al programa. Universidad de Sonora Arquitectura de Computadoras 3

Recordando Hay dos clases de circuitos digitales: 1. Circuitos combinatorios. La salida depende solo de las entradas. Ejemplo, AND, OR, NOT, decoders, multiplexores, etc. 2. Circuitos secuenciales. La salida depende de las entradas y de la salida actual. Ejemplo, latches y flipflops. Universidad de Sonora Arquitectura de Computadoras 4

Circuitos secuenciales Pueden almacenar 1 bit. Usaremos solo flip-flops (biestables) maestroesclavo. La salida se actualiza durante el flanco (edge) de reloj. Universidad de Sonora Arquitectura de Computadoras 5

La D es de data o delay. Almacena 1 bit. Flip-flopD C D Q Q Estado 0 X Q prev Q prev Hold 1 0 0 1 Reset 1 1 1 0 Set Universidad de Sonora Arquitectura de Computadoras 6

Flip-flopD Basado en un latch SR NOR Imagen by Inductiveload - Own work, Public Domain, https://commons.wikimedia.org/w/index.php?curid=6712572 Universidad de Sonora Arquitectura de Computadoras 7

Rebote (bouncing) Universidad de Sonora Arquitectura de Computadoras 8

Flip-flopD Diagrama de un flip-flop D maestro-esclavo disparado por el flanco de bajada: Universidad de Sonora Arquitectura de Computadoras 9

Flip-flopD Operación: Universidad de Sonora Arquitectura de Computadoras 10

Banco de registros El banco de registros (register file) es un conjunto de registros para guardar y leer datos. Cada registro es un vector de flip-flops D. Para leer un registro: Entrada: número de registro. Salida: dato contenido en el registro. Para escribir un registro: Entrada: número de registro, dato y una señal de reloj para controlar la escritura. Universidad de Sonora Arquitectura de Computadoras 11

Banco de registros Dos puertos de lectura y uno de escritura. Universidad de Sonora Arquitectura de Computadoras 12

MIPS simplificado Las instrucciones se hacen en un ciclo de reloj. Comienzan a ejecutarse en un flanco de reloj y terminan en el siguiente flanco. Universidad de Sonora Arquitectura de Computadoras 13

MIPS simplificado Tres tipos de instrucciones: 1.Instrucciones de referencia a memoria: load word (lw) y store word (sw). 2.Instrucciones aritmético-lógicas: suma (add), resta (sub), and, or y set on less than (slt). 3.Instrucciones de brincos: brinca si igual (beq) y brinco incondicional (j). Universidad de Sonora Arquitectura de Computadoras 14

Implementación La implementación de las distintas instrucciones tiene varias acciones en común. Los primeros dos pasos son iguales: 1. Enviar el PC (contador de programa) a la memoria y sacar la siguiente instrucción (ciclo de fetch). 2. Leer uno o dos registros. Lo siguiente depende de la clase de instrucción, pero es parecido sin importar el opcode exacto. Universidad de Sonora Arquitectura de Computadoras 15

Implementación Todas las instrucciones, excepto el brinco incondicional (instrucción j), usan la ALU (unidad aritmético-lógica). Las instrucciones de referencia a memoria para calcular direcciones. Las instrucciones aritmético-lógicas para su operación. Los brincos para evaluar la condición. Universidad de Sonora Arquitectura de Computadoras 16

Implementación Después de usar la ALU: Las instrucciones de referencia a memoria accesan la memoria para cargar o guardar un dato. Las instrucciones aritmético-lógicas guardan el dato de la ALU en un registro. Los brincos, dependiendo de la condición, cambian el contador de programa (PC) o lo incrementan en 4. Universidad de Sonora Arquitectura de Computadoras 17

Datapath Realiza operaciones aritméticas y lógicas. Elementos del datapath: ALU. Memoria de instrucciones. Memoria de datos. Banco de registros. Sumadores. Universidad de Sonora Arquitectura de Computadoras 18

Primeros elementos del datapath 1. Una memoria para guardar y leer instrucciones. 2. Un registro, llamado PC (contador de programa), para guardar la dirección de la instrucción actual. 3. Un sumador para incrementar el PC. Universidad de Sonora Arquitectura de Computadoras 19

Ejecutando instrucciones La ejecución de una instrucción comienza con dos pasos: 1. Obtener la instrucción de la memoria. 2. Incrementar el PC para preparar la ejecución de la instrucción siguiente. Los tres elementos anteriores se combinan para formar un datapath que obtiene una instrucción e incrementa el PC. Universidad de Sonora Arquitectura de Computadoras 20

Primera parte del datapath Ciclo de fetch. Lee una instrucción e incrementa el PC. Universidad de Sonora Arquitectura de Computadoras 21

Segunda parte del datapath El siguiente paso es ver como se implementan: 1. Instrucciones aritméticas y lógicas. 2. Instrucciones de carga y guardar (load/store). 3. Brincos. Universidad de Sonora Arquitectura de Computadoras 22