ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

LABORATORIO DE ARQUITECTURA DE COMPUTADORES


Enviado por   •  9 de Noviembre de 2015  •  Prácticas o problemas  •  676 Palabras (3 Páginas)  •  133 Visitas

Página 1 de 3

UNIVERSIDAD DIEGO PORTALES

ARQUITECTURA DE COMPUTADORES
LABORAORIO 4

AYUDANTE
LJUBO FRANULIC

INTEGRANTE
MARCEL CÁCERES BRETTI

INDICE

INTRODUCCIÓN        

OBJETIVO GENERAL        

OBJETIVO ESPECIFICO        

DESARROLLO        

MATERIALES        

PROCEDIMIENTO        

PLANEACIÓN        

IMPLEMENTACIÓN        

USANDO LA NUEVA FUNCIÓN        

RESULTADOS        

CONCLUSION        

INTRODUCCIÓN

En el presente documento se describe la experiencia correspondiente al laboratorio 4, en la que seguiremos ahondando en las características presentes en la Raspberry pi, en esta ocasión realizaremos operaciones con el temporizador de 1MHZ que viene incorporado como hardware en este dispositivo.

OBJETIVO GENERAL

Reconocer los elementos de hardware que forman un computador y entender como se organizan, por medio de una Raspberry Pi, un ordenador de placa reducida que contiene todos los elementos de un sistema con arquitectura ARM.

OBJETIVO ESPECIFICO

        En la presente experiencia, el alumno continuará con el manejo del hardware de la Raspberry, controlando el Led en intervalos precisos ocupando el timer incluido en la placa.

DESARROLLO

MATERIALES

  1. Raspberry Pi modelo B
  2. Tarjeta SD con Raspbian
  3. Cargador micro USB de al menos 5v
  4. Plantilla para un nuevo sistema operativo.

PROCEDIMIENTO

PLANEACIÓN

Se creó otro archivo llamado systemTimer.s para escribir instrucciones con el fin manejar el controlador de tiempo presente en el dispositivo, como el contador es un valor de 8 bytes, pero en cada registro se puede almacenar 4 bytes, la mejor forma de hacer esto es calcular la diferencia entre el valor actual del contador y el valor de cuando comenzó el método, y luego comparar esto con el valor de espera pedido.

IMPLEMENTACIÓN

Basándonos en la experiencia anterior, la primera función que se creó fue la función que sirve para obtener la dirección del temporizador del sistema:

. globl GetSystemTimerBase

GetSystemTimerBase :

ldr r0 ,=0 x20003000

mov pc ,lr

Luego se codificó una función para guardar el valor actual del contador en los registros r0 y r1:

. globl GetTimeStamp

GetTimeStamp :

push {lr}

bl GetSystemTimerBase

ldrd r0 ,r1 ,[r0 ,#4]

pop {pc}

Posteriormente se construyó la función de espera, Este código copia el valor de nuestro método, la cantidad de tiempo a esperar (al cual llamamos \delay"), en r2, y luego llama a GetTimeStamp, que sabemos retornara el valor actual del contador en r0 y r1. Luego copia los 4 bytes más bajos del valor del contador a r3. Después necesitamos calcular la diferencia entre el valor del contador actual y la lectura que acabamos de tomar, y seguir haciendo esto hasta que la brecha entre ellos es al menos del valor de \delay" (nuestro retraso).

...

Descargar como (para miembros actualizados)  txt (4.2 Kb)   pdf (145.5 Kb)   docx (95.5 Kb)  
Leer 2 páginas más »
Disponible sólo en Clubensayos.com