Download pdf - Clever Title E5

Transcript
  • ELECTRONICA 5, 05 DE MARZO 2015 1

    Clever Title E5Universidad de San Carlos de Guatemala

    Facultad de IngenieriaElectronica 5

    Jos Alejandro Lpez Quel

    I. CONCEPTOS FUNDAMENTALES

    Glue-Logic: Serie de compuertas lgicas, que realizanla funcin de decodificar la informacin de direccin yoperacin, y seleccionar el chip correspondiente dentro delbus.

    El tiempo de acceso del micro en un ciclo de lectura oescritura debe ser mayor que el que necesita la memoria paraponer o poder leer los datos requeridos en o del bus.

    Wait-states: Ciclos de espera.

    Arquitectura von Neumann: Es utilizar slo un bus dedirecciones y uno de datos. Arquitectura Harvard: Consisteen utilizar buses separados para las instrucciones y los datos.Esto duplica efectivamente el espacio accesible de memoriay la velocidad terica de ejecucin.

    Modo de direccionamiento: Es la forma en que el procesadoraccede a los datos que utiliza para realizar operaciones.

    Modos de direccionamiento: Registros: El dato se encuentra en un registro del

    procesador. Inmediato: El dato se encuentra en la misma instruc-

    cin. Directo: El dato se encuentra en una posicin de

    memoria, especificada por su direccin absoluta enla instruccin.

    Indirecto: El dato se encuentra en una posicin dememoria, cuya direccin est contenida en un regis-tro, que oficia de puntero, referido de la instruccin.

    Indexado: Sinmilar al indirecto, se agrega un despla-zamiento respecto al valor indicado por el registroque oficia de base.

    Cuando el registro base es el Program Counter (PC), eldireccionamiento se suele llamar relativo.

    Ortogonalidad: Es la relacin de disponibilidad de modos dedireccionamiento y registros para cada instruccin.

    Formato little-endian: El byte menos significativo en ladireccion ms baja(primero), y el ms significativo en lainmediata siguiente.

    Formato big-endian: El byte ms significativo en la direccionms baja(primero), y el menos significativo en la inmediatasiguiente.

    Se refiere por word a una palabra de 32-bits. As, eltrmino half-word corresponde a 16-bits y double-wordcorresponde a 64-bits.

    Alineacin: Un byte puede estar en cualquier posicinde memoria, y ciertamente tanto una half-word o una doble-word tambin.

    Alineacin Natural: Es cuando cada palabra se alineade modo que los bits menos significativos de la direccinsean todos cero.

    Barrel Shifter: Es un circuito secuencial capaz de desplazaruna palabra binaria un nmero determinado de bits en unciclo de reloj.

    Riesgo Estructural (Structural Hazard): Ocurre cuandodos intrucciones intentan utilizar el mismo recurso.

    Riesgo de Control (Control Hazard): Esta relacionadocon los cambios de direccin de ejecucin como saltos(branches), llamadas de rutina, etc.

    Branch Target Buffer: Buffer donde se alojan los ltimosdestinos calculados.

    RISC (Reduced Instruction Set Computing): Es una estrategiade diseo basada en el hecho de que instrucciones mssimples pueden proveer mayor performance dado que dichasimplicidad permite que cada instruccin se ejecute msrpido.

    tejecucin = instruccionestareaciclosinstruccintciclo (1)Los procesadores RISC, se enfocan en simplificar el set deinstrucciones de modo que el trmino ciclosinstruccin seamnimo

    Memoria Cache: Memoria que permite alojar una porcinde cdigo, para ser cargado en la memoria principal. Estopermite acelerar la velocidad de operacin.Si el contenido no se encuentra ya en el cache (cache-miss,read-miss) se lo actualiza; y si ya est (cache-hit) se lo utiliza.

    Polticas de Operacin Principales Write-Through (No-Write Allocation) [WT]: Si el

    dato estaba en el cache, se realiza una escritura

  • ELECTRONICA 5, 05 DE MARZO 2015 2

    simultanea en ambos, cache y memoria. Caso con-trario, se opera sobre la memoria principal y el cachese usa para procesos de lectura unicamente.

    Write-Back with Write Allocation [WB-WA]: Si eldato no estaba en cache, se le incluye.

    Mltiples Niveles del Cache: El primer nivel de cache (L1cache) es entonces el ms pequeo rpido y cercano alprocesador, mientras que el segundo nivel es ms grande yes como una segunda red de contencin antes de caer en lamemoria principal.

    Ad hoc: "Para esto".

    Tipos de Procesadores SIMD (Procesadores Vectoriales): Son capaces de

    operar sobre muchos datos, y se llaman as por laanaloga con el procesamiento de los componentesde un vector.

    Procesadores Escalares: Estos operan un dato a lavez.

    Procesadores Superescalares: Aumentan la velocidadde ejecucin mediante el paralelismo, ejecutandoms de una instruccin a la vez.

    Un procesador superescalar contiene una pipeline con almenos las etapas de: obtener, decodificar, despachar (issue),ejecutar, guardar resultados. Donde la etapa de despachar(issue) se encarga de partir el flujo en otras pipelines paracada uno de los recursos a ser empleados en paralelo.

    Sistema Operativo: Es una pieza de software que ensentido general cumple dos funciones principales: Presentaral programador una visin ms amplia y ms simple delhardware y administrar los recursos disponibles.

    Modos de Operacin Modo Usuario: La tarea no puede ejecutar operacio-

    nes consideradas de riesgo y no puede salirse de lpor su propia cuenta.

    Modo Supervisor o Modo Privilegiado: El sistemaoperativo posee acceso a todos los recursos.

    .Paginado: El paginado es una herramienta que permite unaforma de reubicacin y de proteccin mediante un esquemade traduccin.

    Segmentado: El segmentado es similar al paginado, siendola diferencia ms sutil el hecho de que su longitud puedeser diferente y variable. Identificado el segmento mediantealguna propiedad de la direccin a acceder, esta se traducepor reglas que indica el descriptor de dicho segmento en latrabla correspondiente.

    Unidad de Proteccin de Memoria (MPU): Es un bloque dehardware que soporta el concepto de proteccin de memoria.Observa los buses y estados del procesador y determina siel acceso que se intenta hacer tiene los derechos de accesorequerido.

    Unidad de Manejo de Memoria (MMU): Es el bloquede hardware que soporta el concepto de particin de lamemoria mediante un esquema de memoria virtual.

    Memoria Virtual: Este esquema permite asociar un espaciolgico determinado en un espacio fsico de memoria diferente.En esencia, se divide en unidades que se corresponden conentradas en una tabla de traduccin. Dichas entradasespecifican a su vez la forma de traducir esta direccin a unespacio de memoria fisica.

    Maquina Virtual: Es una simulacin de un entorno dehardware existente o no, de caractersticas definidas, de modoque programas de software cualesquiera se ejecuten de igualforma dentro de este esquema, sin importar el hardware sobreel que se ejecuta.

    Mliples Cores (Multicore): Se refiere a un procesadoren el cual varios cores comparten el bus y el acceso a lamemoria principal.

    Ley de Amdahl: Para un problema dado, con una proporcinp de sus tareas que puede realizarse en paralelocon el resto,y un nmero n de procesadores, el grado de mejora obtenidoes:

    s =1

    (1 p) + pn(2)

    Ley de Gustafson-Barsis: El tamao del problema escalacon el nmero de procesadores. La cantidad de trabajo quepuede realizarse en paralelo es funcin lineal del nmero deprocesadores.

    s = n (1 p)(n 1) (3)

    II. ARQUITECTURA ARM

    La arquitectura incluye un set de instrucciones (ISA),existe soporte de memoria virtual y/o protegida. Elprocesador implementa una determinada arquitectura yadems utiliza internamente una arquitectura de bus y unapipeline. El dispositivo, el chip en s, con o sin cachesdepende fundamentalmente de la estratega que el fabricanteutilice para diferenciarse de otros.

    Nomenclatura:ARMx[yy][z][-algo] x : Versin del Core

    yy : Agregados i.e. MMUz : Extensiones a la arquitectura i.e TDMI, EJ.

    -algo opciones de licencia. -S : si en la nomenclatura se incluye, indica que

    existe macrocenlda sintetizable.Perfiles Application (A): Procesadores de alta performance,

    orientados a sistemas complejos. uC basados enVSMA (Virtual Memory System Architecture).

    Real-Time (R): Procesadores con timing determinis-tico, basados en PMSA (Protected Memory System

  • ELECTRONICA 5, 05 DE MARZO 2015 3

    Architecture), orientados a sistemas hard real-time osafety-critical.

    Microcontroller (M): Procesadores con caracteristi-cas arquitectonicas comparativamente simples, en elsentido que se orientan a dispositivos historicamentems sencillos.

    .Excepciones o Interrupciones: Una excepcin es un eventoque interrumpe el flujo normal del programa.

    Orden de Interrupcin Reset : IP = 0000H Inicio del Programa Undefined Instruction (Instruccion no definida) Supervisor Call (SVC) Prefetch Abort: Problema en acceso a instruccin de

    memoria. Data Abort: Problema en acceso a datos en memoria. IRQ (Interrupt Request) FIQ (Fast Interrupt Request)

    Modos de Operacin User: modo normal de trabajo de un programa

    usuario. FIQ: El modo de atencin a una interrupcin rpida",

    con menor latencia de procesamiento. IRQ: Modo de atencin a una interrupcin. Supervisor: Modo protegido para el sistema operati-

    vo, se ingresa a l luego de un reset y al ejecutarseuna instruccin SVC.

    Abort: Modo al que se ingresa luego de que sedetecta un problema en el acceso a la memoria.

    Undifined Intruction: Modo al que se ingresa alencontrarse un opcode que no corresponde a ningunainstruccin conocida.

    System: Modo especial para permitir reingreso enrutinas de manejo de interrupciones.

    Excepto el modo User, todos los dems son modos protegidos.De estos, excepto el modo System, todos los dems son modosde excepcin.

    Registros Importantes R13: Stack Pointer R14: Link Register R15: Program Counter

    .El estado del procesador puede observarse en el CPSR(Current Program Status Register). Este registro esautomticamente preservado ante una excepcin medianteuna copia, el valor anterior es accesible en el SPSR (SavedProgram Status Register).

    Los cinco bits menos significativos del SPSR contienenel modo de operacin del procesador.

    APSR (Application Program Status Register): Este registrono es ms que el CPSR, pero solo permite acceso a los bitsde cdigos de condicin.

    DMB (Data Memory Barrier): La instruccin DMB garantizaque los accesos se vean en el orden que figuran en el cdigo.

    DSB (Data Synchronization Barrier): Realiza la sincronizacinentre la ejecucin y los accesos de memoria.

    ISB (Instruction Synchronization Barrier): Purga la pipeline,de modo que los efectos de los cambios reaizados antesde la ejecucin de esta instruccin sean visibles por lasinstrucciones que se lean y ejecuten luego de esta.

    Modos de Direccionamiento:Offset: Direccionamiento indexado puro, sin modifica-ciones en el valor del ndice. Inmediato: El desplazamiento respeto de la base es

    una costante, y se encuentra dentro de la instruccin(no requiere bytes adicionales).

    Registro: El desplazamiento respecto de la base sehalla especificado por un registro.

    Pre-Indexado: El desplazamiento indicado se sumao resta al registro base antes de realizar la operacin.

    Post-Indexado: El desplazamiento indicado se sumao se resta al registro base despus de realizar laoperacin.

    Estados de Operacin ARM: ISA original de 32-bits, con las caracteristicas

    ejecucin condicional. Thumb: ISA compacto de 16-bits, permite aumentar

    la densidad de cdigo. Thumb-2: Extensin de Thumb, con opcodes de 16-

    bits y 32-bits. ThumbEE: Variacin de Thumb-2 para just-in-time-

    compilers (JIT). Este solo existe si est presente laextensin de igual nombre.

    Jazelle: Entorno en el que el procesador ejecutacdigo compilado en Java. Este solo existe si estpresente la extensin de igual nombre.

    En el ISA de ARM, los cuatro bits ms significativos especifi-can una condicin que se compara con el cdigo de condicinCPSR para determinar si debe o no ejecutarse.

    Conceptos FundamentalesArquitectura ARM