0% encontró este documento útil (0 votos)
166 vistas33 páginas

Introducción a Arquitectura de Computadoras

El documento presenta una introducción a la materia Arquitectura de Computadoras I. Explica que la materia cubre temas como el diseño lógico, diseño de circuitos digitales y analógicos, y diseño de un procesador simple. También introduce conceptos como la arquitectura de instrucciones de un procesador (ISA), las diferencias entre arquitecturas CISC y RISC, y ejemplos de ISAs como MIPS y ARM.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
166 vistas33 páginas

Introducción a Arquitectura de Computadoras

El documento presenta una introducción a la materia Arquitectura de Computadoras I. Explica que la materia cubre temas como el diseño lógico, diseño de circuitos digitales y analógicos, y diseño de un procesador simple. También introduce conceptos como la arquitectura de instrucciones de un procesador (ISA), las diferencias entre arquitecturas CISC y RISC, y ejemplos de ISAs como MIPS y ARM.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción

Arquitectura de Computadoras I
Prof. Dr. Martín Vázquez
La materia en la carrera

l Arquitectura de
l Diseño Lógico Arquitectura de Computadoras 2
Computadoras
l Sistemas Operativos

2
La materia en la carrera

l Arquitectura de
l Diseño Lógico Arquitectura de Computadoras 2
Computadoras
l Sistemas Operativos
l Diseño de circuitos
digitales y analógicos
l Diseño de un
procesador simple

3
La materia en la carrera
l Arquitecturas avanzadas y
paralelas
l Multiprocesadores, multithreading,
superescalares, VLIW, etc

l Arquitectura de
l Diseño Lógico Arquitectura de Computadoras 2
Computadoras
l Sistemas Operativos
l Diseño de circuitos
digitales y analógicos
l Diseño de un
procesador simple l Conceptos elementales de
SO
l Aspectos de diseño e
implementación de un SO
4
La materia en la carrera
l Arquitecturas avanzadas y
paralelas
l Multiprocesadores, multithreading,
superescalares, VLIW, etc

l Arquitectura de
Arquitectura de Computadoras 2
l Diseño Lógico
Computadoras
l Sistemas Operativos
l Diseño de circuitos
digitales y analógicosl Diseño de la CPU, y sistemas de
l Diseño de un memoria y E/S
procesador simple
l Poder realizar programas l Conceptos elementales de
óptimos considerando máquina SO
que corre l Aspectos de diseño e
implementación de un SO
5
l Análisis y evaluación del
rendimiento de una computadora
Abstracción

l Systems Software: Incluye


servicios que son más usados
l Sistema Operativos (SO) y
Compiladores

l SO: maneja operaciones de E/S,


ubicación en memorias,
protección para que aplicaciones
compartan procesador

l Compiladores: traducción de
lenguaje de alto nivel a
instrucciones que la máquina
ejecuta 6
Abstracción

7
Abstracción

8
Abstracción

ISA
(Instruction Set Architecture)

l Conjunto de instrucciones que


el procesador entiende

9
Abstracción

ISA
(Instruction Set Architecture)

l Conjunto de instrucciones que


el procesador entiende

l Ejemplo: ISA del MIPS visto en


“Introducción a la Arquitectura
de Sistemas” 10
Instrucción Set Architecture (ISA)

l Define la “personalidad” del procesador. Dime cómo es el


ISA y te diré cómo es el procesador
l Especifica las funciones del procesador.
l que instrucciones se ejecutan y cómo se interpretan
l Es la parte del procesador visible al programador o escritor
del compilador

11
Instrucción Set Architecture (ISA)
l La complejidad de las instrucciones de un ISA es variable y depende del
diseñador que las crea
l El diseño del procesador se encuentra fuertemente basado en su ISA
l tipos de operandos, modos de direccionamiento, tipos de instrucción, formato
de la instrucción

l Puede haber diferentes implementaciones físicas para un mismo ISA

l Entre los ISA más conocidos se encuentran


l los x86 de los microprocesadores de Intel 8086, 80186, 80286,
l y sucesores:
l IA-32 de Intel para 32 bits, a partir de 80386 (1985)
l x86-64 de AMD para 64 bits

l MIPS, ARM, RISC-V


12
Clasificación del ISA

l Basados en su complejidad
l CISC (Complex Instruction Set Computer)
l Ejemplo: x86 de Intel o AMD

l RISC (Reduced Instruction Set Computer)


l Ejemplo: MIPS, ARM, PowerPC, etc

l Por paralelismo
l VLIW (Very Long Instruction Word)
l LIW (Long Instruction Word)
l EPIC (Explicitly Parallalel Instruction Computing)

13
CISC vs RISC

l Dos filosofías de computación rivales


l En los 70s y 80s predominaban los procesadores CISC
l Intel 8086 (finales de 70s), 80386 en 1985
l en esa época las memorias eran costosas y de poca capacidad.
Reducción de memoria de programa

l Instrucciones complejas llevaban a hardware complejo.


l propuesta de Unidades de Control microprogramadas

l CISC posee instrucciones largas de diferentes longitudes


l RISC posee pocas instrucciones, más pequeñas, de
14
misma longitud
CISC
l Instrucciones completas y más lentas de ejecutar
l Una instrucción agrupa varias operaciones de bajo nivel
l programas pequeños y sencillos de desarrollar

l Programas pequeños y sencillos de desarrollar. Algo vital en


esa época
l Reduce dificultad de crear compiladores
l Reduce la complejidad en el desarrollo de software
l Facilita la depuración de errores
l En la actualidad x86 es el principal exponente (AMD e Intel)
15
RISC

l Surgen como respuesta al cambio de tecnología y a la acumulación


de conocimiento de los CISC

l Científicos de IBM comprueban que los diseñadores de software


creaban programas con instrucciones simples y precisas

l No se requería de tanto esfuerzo de compilación

l En 1975 se empieza a crear el primer procesador RISC. IBM 801 por


John Cocke

John Cocke
(1925-2002) 16
Diseño de un procesador RISC

l Operaciones Simples
l instrucciones simples que se puedan ejecutar en un solo ciclo de reloj

l Operaciones registro-registro
l solo accesos a memoria mediante operaciones especiales load y store

l Modos de direccionamiento simple


l obtención rápida de los operandos

l Mucha cantidad de registros internos


l Formato de instrucción simple y homogéneo
l longitud fija. El código de operación y la dirección de operandos se
encuentra en los mismos campos del registro de instrucción 17
Procesador RISC

l El procesador RISC es más simple tanto en hardware como


en software
l En la actualidad el principal exponente son los procesadores
ARM
l muy utilizados en dispositivos móviles y en supercomputadoras
l existe mucho soporte
l eficiencia energética

l MIPS. Iniciado en Universidad de Stanford en 1981


l enseñado en la mayoría de los cursos de Arquitecturas de
Ordenadores dictados en el mundo
l Videoconsolas, Nintendo 64, Play Station, más recientemente la
18
NASA
CISC y RISC
CISC RISC
No de instrucciones 100-300 <128 (27)
Instrucciones complejas si no
No de formatos >10 ≤4
Modos de direccionamiento 8-20 2-3
Palabras/Instrucción 1-10 1
Instrucciones con memoria varias 2 (load/store)
Ciclos/Instrucción 3-10 ~1
No de formatos 2-16 ≥32
Procesador segmentado a veces siempre
19

Unidad de Control µcódigo secuencial


CISC - Actualidad
l El x86 lideró el mercado por mucho tiempo. Aún lidera fuera
de los sistemas embebidos y dispositivos móviles.
l CPUs de los PCs

l La tendencia futura es que no existirán CISC puros


l Hoy se fabrican procesadores “híbridos” CISC-RISC
l el núcleo es un procesador RISC
l ejemplo: Pentium Pro traduce nivel microprograma una instrucción
CISC en varias RISC
l ventajas de ambas tecnologías
l x86 es una base instalada

l Coexistirán en el mercado CPUs RISC e “híbridos” CISC-


RISC 20
Evolución de
microprocesadores de Intel
l 1971 Intel 4004. 1° en contener todos los elementos de CPU en un chip
l 1972 Intel 8008. 1° microprocesador de 8 bits, ya para propósito general
l 1978 8086. 1° microprocesador de 16 bits, utiliza arquitectura x86
l 1980 80286. Utiliza memoria de 16-MB en vez de 1-MB
l 1985 80386. Soporta multitarea. Microprocesador de 32 bits
l 1989 80486. Incluye coprocesador matemático
l 1993 Pentium. Técnicas superescalar, ejecución de múltiples inst. en paralelo
l 1995 Pentium Pro. Predicción de saltos, ejecución especulativa, análisis de flujo
l 1997 Pentium II. Incorpora tecnología MMX para procesar video y audio
l 1999 Pentium III. Extiende set de instrucciones para múltiples datos
l 2000 Pentium 4. Soporte de punto flotante adicional y multimedia
l 2006 Core 2 Duo. Dos cores en un chip, arquitectura de 64 bits.
l 2013 Core i7 EE 4960x.
Más recientes hasta 72 cores por chip. Incorporación de AVX (Advanced Vector
Extensions), set de instrucciones de 512 bits para proc. vectorial de datos21
Era PostPC

Computer Organization and Design


5ta Edición, Elsevier Inc, 2014.
D. Patterson, J. Hennessy

l Hacia el PMD (Personal Mobile Device)


l funcionan a batería
l buena conectividad a internet wireless…
l Cloud Computer y WSC (Warehouse Scale Computer)
22
l Los PMD y WSC revolucionaron la industria del hardware
Era PostPC

23
Era PostPC

Rugged Embedded Systems, Elsevier Inc, 2017.


A. Vega, P. Bose y A. Buyuktosunoglu 24
Sistemas Embebidos

l Refiere al uso de software y hardware en un producto


l Opuesto a computadoras de propósito general
l PC, mainframes, tablet, workstations, supercomputadores,…

l La mayoría de los productos electrónicos poseen


procesadores embebidos
l Los sistemas embebidos están muy acoplados con el
ambiente
l sensores, actuadores, etc

l Uno de los ejes principales en Industria 4.0 e IoT (Internet


of Things) 25
Arquitectura ARM

l Muy utilizado en Sistemas Embebidos y en dispositivos


móviles.
l Familia de microprocesadores y microcontroladores RISC-
based
l Diseñado por ARM Holdings (Cambridge, England)
l no fabrican los procesadores
l diseña arquitectura de procesadores y licencia a fabricantes

l Chips ARM poseen alta velocidad, bajo consumo de


potencia, bajo costo y poco tamaño
26
l Ejemplos. Cortex-A, Cortex-A50, Cortex-R, Cortex-M…
Que se verá en el curso

l Diseño y comprensión de un procesador escalar como MIPS


l diferentes implementaciones del ISA MIPS, ejecución segmentada de las
instrucciones, microprogramación, riesgos, …
l además de ser un procesador RISC de mucha vigencia, es muy didáctico
con mucho soporte utilizado por muchos cursos de arquitectura en el mundo

l Establecer base para curso futuro, Arquitectura de Procesadores y


Técnicas Digitales:
l arquitecturas avanzadas, multiprocesadores, multithreading, superescalares,
VLIW,…

l Evaluación de rendimiento de un procesador desde diferentes aspectos


l costo, área, velocidad, consumo

27
Que se verá en el curso

l Diseño e implementación de Unidades Aritméticas


l diferentes operaciones: suma, multiplicación, división

l Organización y Jerarquía de Memorias

l Sistemas de Entrada/Salida.
l buses, interrupciones

l Profundizar el contexto tecnológico y tendencias de mercado

l Introducción a otros ISA de RISC


l ARM, RISC-V

28
Aporte del curso a un
Ingeniero de Software
l Herramientas para poder
l Evaluar contexto en el que se usará un procesador

l Establecer cuál es la mejor computadora o procesador para


determinado problema o uso que se le dará
l aplicación, costos, rendimiento

l Entender cómo los programas escritos en alto nivel se traducen a


lenguaje comprendido por el hardware.

l Saber la interfase entre hardware y software, y de que manera el


software le “dice” al hardware que hacer.
l clave para escribir buenos programas

l Evaluar y determinar el rendimiento de un programa y poder mejorarlo


29
Modalidad de aprobación

l Cursada
l examen parcial, recuperatorio

l Final (promoción)
l aprobar la cursada
l examen adicional con temas que no se evaluaron en
cursada
l trabajo especial de laboratorio
l nota final ponderada
l parcial o recuperatorio, trabajo laboratorio, examen adicional

30
Bibliografía

31
Bibliografía

32
Bibliografía

33

También podría gustarte