Introducción al Chip Propeller
Note 2: Para ensamblador Propeller solo legible como registro fuente (ej.,
modificar-escribir no es posible como registro destino. Ver lenguaje ensamblador
PHSA, PHSB
sección
Note 3: Reservado para uso futuro.
Cada registro de propósito especial puede accesarse vía:
1) Su dirección física de registro (Ensamblador Propeller),
2) Su nombre predefinido (Spin o Ensamblador Propeller), o
3) El registro del arreglo variable (
Los siguientes son ejemplos de Ensamblador Propeller:
MOV
$1F4, #$FF
MOV
OUTA, #$FF
Los siguientes son ejemplos de Spin:
SPR[$4] := $FF
OUTA := $FF
Hub
Para mantener la integridad del sistema, los recursos mutuamente exclusivos no pueden
accesarse por más de un cog al mimo tiempo. El Hub mantiene esta integridad controlando el
acceso a los recursos mutuamente exclusivos dando a cada cog su turno para accesarlos de
manera "round robin" desde el Cog 0 hasta el Cog 7 y de regreso al Cog 0 nuevamente. El
Hub y el Bus que controla corren a la mitad del ritmo del reloj del sistema. Esto significa que
el Hub le da al cog acceso a los recursos mutuamente exclusivos cada 16 ciclos de reloj del
sistema. Las instrucciones del Hub y las instrucciones del ensamblador Propeller que accesan
los recursos mutuamente exclusivos requieren 7 ciclos para ejecutarse, pero primero
necesitan sincronizarse al inicio de la ventana de acceso del Hub. Toma hasta 15 ciclos (16
menos 1, si lo perdió) para sincronizar la ventana de acceso al Hub mas 7 ciclos para ejecutar
la instrucción del Hub, por lo tanto las instrucciones del hub toman de 7 a 22 ciclos para
completarse.
La Figura 1-3 y Figura 1-4 muestran ejemplos donde el Cog 0 tiene una instrucción para
ejecutar. La Figura 1-3 muestra el mejor caso; la instrucción estaba lista al empezar el acceso
al cog. La instrucción se ejecuta inmediatamente (7 ciclos) dejando 9 ciclos adicionales para
otras instrucciones antes de que la ventana de acceso al siguiente Hub llegue.
Pagina 24 · Manual Propeller v1.1
en pag 344.
SPR
) con un índice de 0 a 15 (Spin).
'Activa OUTA 7:0 alto
'Igual que arriba
'Activa OUTA 7:0 alto
'Igual que arriba
mov
dest, source); leer