Simple HUB access timing question
godzich
Posts: 74
Hi,
Sorry if asked before but could not find an answer with a quick search. I'm doing lots of PASM programming and want to keep the timing consistent. Fully aware of zero extra overhead access time to HUB ram - if you obey the following rule and place two PASM instructions between each HUB access instruction:
...
pasmhub access instruction (first HUB access takes 8...23 clocks)
pasm instruction (4 clocks)
pasm instruction (4 clocks)
pasmhub access instruction (execution time now only 4 clocks)
pasm instruction (4 clocks)
pasm instruction (4 clocks)
pasmhub access instruction (execution time now only 4 clocks)
...
The question, is the following also true?:
...
pasm HUB access instruction (first HUB access takes 8...23 clocks)
pasm instruction (4 clocks) 1st
pasm instruction (4 clocks) 2nd
pasm instruction (4 clocks) 3rd (could als be a HUB access - but not necessarily)
pasm instruction (4 clocks) 4th
pasm instruction (4 clocks) 5th
pasm HUB access instruction 6th (execution still only 4 clocks ?)
pasm instruction (4 clocks) 7th
...
Can I trust that consecutive HUB accesses takes only 4 clocks if I sync the HUB access once, and then obey the rule to make a (possible) hub access only at every third PASM (4 clock) instruction? This is not explicitly stated anywhere?!
Cheers,
Christian
Sorry if asked before but could not find an answer with a quick search. I'm doing lots of PASM programming and want to keep the timing consistent. Fully aware of zero extra overhead access time to HUB ram - if you obey the following rule and place two PASM instructions between each HUB access instruction:
...
pasmhub access instruction (first HUB access takes 8...23 clocks)
pasm instruction (4 clocks)
pasm instruction (4 clocks)
pasmhub access instruction (execution time now only 4 clocks)
pasm instruction (4 clocks)
pasm instruction (4 clocks)
pasmhub access instruction (execution time now only 4 clocks)
...
The question, is the following also true?:
...
pasm HUB access instruction (first HUB access takes 8...23 clocks)
pasm instruction (4 clocks) 1st
pasm instruction (4 clocks) 2nd
pasm instruction (4 clocks) 3rd (could als be a HUB access - but not necessarily)
pasm instruction (4 clocks) 4th
pasm instruction (4 clocks) 5th
pasm HUB access instruction 6th (execution still only 4 clocks ?)
pasm instruction (4 clocks) 7th
...
Can I trust that consecutive HUB accesses takes only 4 clocks if I sync the HUB access once, and then obey the rule to make a (possible) hub access only at every third PASM (4 clock) instruction? This is not explicitly stated anywhere?!
Cheers,
Christian
Comments
Sorry, my mistake, HUBops takes at minimum 8 clocks if "synced", not 4. Otherwise I'm right - or?
So the trick is that if HUB instructions occur after every 16th system clocks they stay in sync (after an initial synced HUBop) and they then always execute in 8 clocks if this every 16th clock rule is obeyed!?
Christian