Diferencia entre revisiones de «Embedded Sytems»

De Proyectos
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Sin resumen de edición
Línea 75: Línea 75:
*In this class, the SP will always be the main stack pointer (MSP), not the Process Stack Pointer (PSP).
*In this class, the SP will always be the main stack pointer (MSP), not the Process Stack Pointer (PSP).
<br/>
<br/>
*PSR - Process Status Register - Es otro registro que en 4 bits almacena el estado del sistema después de una operación de la ALU (N Z V C).
*PSR - Process Status Register - Es otro registro que en 5 bits almacena el estado del sistema después de una operación de la ALU (N Z V C Q).
*APSR, IPSR y EPSR son tres registros de estado que se pueden acceder individualmente o combinados con el PSR
*APSR, IPSR y EPSR son tres registros de estado que se pueden acceder individualmente o combinados con el PSR
*Los bits N, Z, V, C y Q nos dan información sobre el resultado de la anterior operación de la ALU
*Los bits N, Z, V, C y Q nos dan información sobre el resultado de la anterior operación de la ALU

Revisión del 08:43 3 jun 2014

Información Complementaria

Recursos

http://www.utm.mx/~fsantiag/Micros.htm


Imagen Cortex-M ARM (CPU, Memoria, Perifericos, ...)

  • Arquitectura Harvard. ICode bus conecta con la ROM y System bus conecta con la RAM
  • NVIC se encarga d elas interrupciones
  • Algunos perifericos internos se conectan directamente con el procesador por el bus PPB


Imagen CPU Cortex-M4 ARM

Imagen Memoria Cortex-M4 ARM

Tipos CPU:

  • CISC (Complex Instruction Set Computers)
    • Hardware complejo y un bajo rendimiento
    • Demasiadas instrucciones con diferentes tamaños y formatos, que pueden ocupar varios bytes
  • RISC (Reduced Instruction Set Computers)
    • Hardware es simple y resuelve pocas instrucciones. Alto rendimiento.
    • Pocas instrucciones y generalmente del mismo tamaño



Tareas CPU (FALTA MAS INFO):

  • Atrapar la instrucción
  • Decodificación
  • Ejecución

Tipos de memoria:

  • Memoria de Código
    • Es en la que se almacena el programa
    • Es no volátil
    • Es la comunmente llamada ROM, y la tecnologia flash es una de las utilizadas para almacenar la ROM
      • La memoria flash se borra mediante impulsos eléctricos. Es una sucesora de la EEPROM
  • Memoria de Datos
    • Es la que almacena las variables del programa
    • Es volátil
    • Es la comunmente llamada RAM. La tecnologia que se utiliza para los microcontroladores es la SRAM
    • También nos podemos encontrar con microcontroladores que ademas tienen memoria EEPROM para guardar datos cuando se corta la electricidad

Sistema de memoria:

  • Arquitectura Von Neumann
    • La Memoria de Código y la de Datos comparten el Bus hacia la CPU
  • Arquitectura Harvard
    • Hay un bus para la Memoria de Código y otro bus para la Memori de datos



Tema 2

Memoria microcontroladores

Tipos de memoria
Memoria RAM (SRAM)
Memoria ROM (EEPROM)
Memoria ROM (Flash)

Tipos de I/O

  • Parallel - binary data are available simultaneously on a group of lines
  • Serial - binary data are available one bit at a time on a single line
  • Analog - data are encoded as an electrical voltage, current, or power
  • Time - data are encoded as a period, frequency, pulse width, or phase shift



ISA (Instruction Set Architecture)

Registros ARM ISA
R1...R12 - General Purpose Registers
R13 - Stack Points (Almacena la dirección del elemento top de la pila)
R14 - Link Register (Almacena la dirección devuelta por las subrutinas)
R15 - Program Counter (Almacena la dirección de la siguiente instrucción a ejecutar)

  • AAPCS (ARM Architecture Procedure Call Satandard) (parte de la ABI (ARM Application Binary Interface)) utiliza los registros R0, R1, R2 y R3 para pasar parámetros a las funciones de C
  • Los parámetros que devuelven las funciones se colocan en el R0 según el AAPCS
  • In this class, the SP will always be the main stack pointer (MSP), not the Process Stack Pointer (PSP).


  • PSR - Process Status Register - Es otro registro que en 5 bits almacena el estado del sistema después de una operación de la ALU (N Z V C Q).
  • APSR, IPSR y EPSR son tres registros de estado que se pueden acceder individualmente o combinados con el PSR
  • Los bits N, Z, V, C y Q nos dan información sobre el resultado de la anterior operación de la ALU
    • N resultado negativo
    • Z resultado es 0
    • V overflow signed numbers
    • C overflow unseigned numbers
    • Q indica que ha habido una saturacion


File special_registers.gif

The program status register del procesador ARM® Cortex-M


Assembly language instrucctions
Label - Opcode - Operand - Comment
FUNC - MOV - R0,#100 ; Pone 100 en R0

  • Label field:
  • Opcode field:
  • Operand field:
  • Comment ifeld:



Las instrucciones se pueden clasificar en 4 categorias:

  • Acceso a la memoria
  • Instrucciones aritméticas y lógicas
  • Instrucciones de control
  • Resto de instrucciones



Memory Map Layout

  • ROM/Flash
  • RAM
  • I/O Ports
  • Internal I/O