1 / 28

Circuitos Digitales II

Departamento de Ingeniería Electrónica Facultad de Ingeniería. Circuitos Digitales II. Elementos sobre la Arquitectura del Conjunto de Instrucciones Semana No.2 Semestre 2008-2 Prof. Gustavo Patiño gpatino@udea.edu.co Prof. Eugenio Duque eaduque@udea.edu.co. Temario.

keita
Download Presentation

Circuitos Digitales II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Departamento de Ingeniería Electrónica Facultad de Ingeniería Circuitos Digitales II Elementos sobre la Arquitectura del Conjunto de Instrucciones Semana No.2 Semestre 2008-2 Prof. Gustavo Patiño gpatino@udea.edu.co Prof. Eugenio Duque eaduque@udea.edu.co

  2. Temario • Interface Software/Hardware • Arquitectura del Conjunto de Instrucciones (ISA). • Tipos de instrucciones • Tipos de operandos • Clasificación de ISAs. • Ventajas y desventajas de diferentes ISAs. • Ejemplos de ISAs. • Evolución del conjunto de instrucciones. • Evolución RISC. • El ISA del MIPS. • Registros en el MIPS. • Formato de las instrucciones. • Operadores aritméticos. • Transferencia de datos de memoria • Resumen. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  3. Interface Software/Hardware • La Arquitectura del Conjunto de Instrucciones (ISA) define la relación entre el software ejecutado en un procesador y su hardware relacionado. Es la interface entre ambos mundos. • Especifica el conjunto de instrucciones implementado en dicho hardware. • MIPS, Intel IA32 (x86), Sun SPARC, PowerPC, IBM390, Intel IA64. • Todos ellos son ISAs. • También pueden haber casos de arquitecturas donde se implementa la misma ISA (como una familia de arquitectura). • 8086, 386, 486, Pentium, PentiumII, Pentium4: Implementan IA32. • Es claro también que cada uno de ellos extiende el conjunto de instrucciones manteniendo la compatibilidad binaria del respectivo ISA. • Los ISAs más duraderos: • X86, usado desde la década del 70. • IBM360 usado desde los 60s y actualmente implementado en el IBM390. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  4. Arquitectura del Conjunto de Instrucciones (ISA) Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  5. Abstracción: Evolución de los lenguajes • Los primeros programadores se comunicaban con computadores en números binarios. • El crecimiento en la complejidad de las aplicaciones exigió nuevas notaciones que fueran traducidas a números binarios (ensamblador). • Lenguaje ensamblador : Exige del programador “pensar” como la máquina. • Esto, a su vez, exigió el desarrollo de nuevas notaciones más poderosas y expresivas (HLL) a fin de aprovechar todo el potencial que iba ofreciendo cada nueva máquina. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  6. Tipos de instrucciones • ALU : • Operaciones lógicas y aritméticas. • Transferencias de datos : • Load & store, move. (reg-reg, reg-mem, mem-reg, ….) • Control : • Branch, Jump, llamados a procedimientos, retornos, excepciones. • Sistema : • OS y VM. • Punto flotante : • Suma, multiplicación, división, comparación. • Decimal : • Suma, multiplicación, conversiones. • String : • Move, compare, search. • Gráficas : • Operaciones con pixeles, vértices, compresión y descompresión. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  7. Tipos de operandos • Enteros • Números en complemento a dos. • Punto flotante de única precisión y punto flotante de doble precisión. Standard IEEE 754. • Caracteres : (8 bits). • Binarios. • Binarios con codificación decimal. • Datos tipo 3D. • Especificación de vértices (x,y,z,w). • Triángulos (3 vértices). • Especificación de colores RGB en 32 bits. • DSP • Especificación de punto fijo. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  8. Clasificación de ISAs ? : Dónde están estos operandos Qué tipo de operandos Cómo tener acceso a estos operandos • Stack (Pila) : Todas las operaciones se realizan sobre una pila (estructura de datos). Los operandos están implícitos. • Accumulator : Se especifica un operando y el resultado es colocado en un acumulador. • Register-Memory : El operando se especifica en un registro y en la memoria. • Load-store : todos los operando son explícitos en un GPR (Global PurposeRegisters). Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  9. Ventajas y desventajas de diferentes ISAs Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  10. Ejemplos de la clasificación de los ISAs • También llamada de Arquitectura Register-Register. Ejemplo : DLX, MIPS. • Ejemplo : C  A + B • Una configuración típica CISC usa una mezcla. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  11. Evolución del conjunto de instrucciones Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  12. Evolución del conjunto de instrucciones (…cont) • Desafortunadamente no hay estándares (normatividad) que se puedan seguir para el diseño de un conjunto de instrucciones. • La tendencia hasta el comienzo de la década de los 80’s estaba basada en una filosofía CISC (ComplexInstruction Set Computers)de diseño del conjunto de instrucciones. • Su conjunto se compone de muchas instrucciones. • Posee instrucciones complejas que realizan la tarea de un conjunto de instrucciones más sencillas. (p.e una instrucción de lazo). • Posee muchos formatos de instrucción y modos de direccionamiento. • Posee diferentes clases de registros. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  13. Evolución del conjunto de instrucciones (…cont) • Cuestiones que surgen para cualquier arquitectura ISA. • Análisis del caso CISC : • Tamaño de los programas en lenguaje de máquina ? • Más simples (más pequeños) con menor número de instrucciones para ejecutar. • Complejidad de la arquitectura de la máquina? • Más compleja (debido a la complejidad de las instrucciones), requiriendo más tiempo para la ejecución de cada instrucción. • Optimizaciones del compilador? • Más difícil (debido a las múltiples opciones a la hora de decidir cuáles instrucciones o modos de direccionamiento utilizar.) Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  14. Evolución del conjunto de instrucciones (…cont) • Desde el comienzo de la década de los 80s, la tendencia en el diseño de las nuevas ISAs ha estado basada en la filosofía RISC (Reduced Instruction Set Computers). • Principios de esta filosofía: • La simplicidad favorece la regularidad • Todas las instrucciones son del mismo tamaño. • Todas las instrucciones del mismo tipo siguen el mismo formato. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  15. Evolución del conjunto de instrucciones (…cont) • Principios de la filosofía RISC (…cont) : • En cuanto más pequeño, más rápido. • Refiriendo a un menor número de instrucciones. • Un número relativamente bajo de tipos de registros. • Un buen diseño demanda (exige) compromiso. • Algunos pocos formatos de instrucción para manejar necesidades especiales. • Haga que el caso más común sea rápido. • Las instrucciones que son ejecutadas más frecuentemente o las características más utilizadas necesitan ser optimizadas en la arquitectura del HW. • Especificación de pipeling (operación multi-ciclo), ejecución en un solo ciclo, tecnología de compilación, etc. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  16. Breve recuento de la evolución RISC Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  17. Procesadores RISC • Procesadores de servidores o de escritorio • Digital Alpha • HP PA-RISC • IBM & Motorola PowerPC • Silicon Graphics MIPS • Sun Microsystem SPARC • Sistemas Embebidos • Advanced RISC Machine ARM • Advanced RISC Machine Thumb • Hitachi SuperH • Mitsubishi M32R • Silicon Graphics MIPS16 Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  18. Comparación Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  19. Comparación (…cont) Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  20. Modos de Direccionamiento Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  21. Modos de Direccionamiento (…cont) Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  22. Codificación de las Instrucciones • Opcode • Formato de instrucción • Variable : El modo de direccionamiento es incluido en el campo (Intel 80x86). • Fijo : Modo de direccionamiento es especificado en el opcode (MIPS, SPARC). • Hibrido : Ejemplo IBM 360/70. Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  23. Ejecución de una aplicación Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  24. Procesador MIPS Departamento de Ing. Electrónica. Circuitos Digitales II Facultad de Ingeniería 2008 - 2

  25. El ISA del MIPS • MIPS: Compañía semiconductora que construyó uno de las primeras arquitecturas RISCs del mercado. • Fundada por J. Hennessy. • El MIPS prevalece en un mayor número de aplicaciones, en su mayoría embebidas, en donde se usa como el núcleo del procesador de un System on Chip (SoC). Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  26. El ISA del MIPS (…cont) • Durante este curso estudiaremos varios aspectos de la arquitectura del MIPS. • Porque MIPS en lugar, por ejemplo, del Intel80x86 ? • Procesador utilizado en el texto guía del curso. • Existe mucha información y herramientas disponibles sobre el MIPS. • El MIPS es simple, elegante y fácil de entender. • Hay quienes consideran el X86 feo y complicado de explicar. • El X86 es dominante en la industria de PCs. • El MIPS prevalece en un mayor número de aplicaciones, en su mayoría embebidas, en donde se usa como el núcleo del procesador de un Systemon Chip (SoC). Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  27. Breve historia del MIPS Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

  28. C vs el ISA del MIPS-I Departamento de Ing. Electrónica. Circuitos Digitales IIFacultad de Ingeniería 2008 - 2

More Related