Delta Tau GEO BRICK LV Reference Manual

Page of 760
Turbo PMAC/PMAC2 Software Reference
 
Turbo PMAC On-line Command Specification 
 324 
operation, so can be done without disrupting machine operation.  (However, during the approximately 5 
milliseconds it takes to execute the FSAVE command, no other background tasks, including safety 
checks, are performed.  Foreground tasks such as servo loop closure are performed during the FSAVE 
process.)  It is intended to permit the quick storage of machine-state information for proper start-up after a 
quick, or especially an unexpected, power-down. 
After a power-up/reset, the values stored with the FSAVE command are not copied back into the active 
registers in RAM until an FREAD command is issued to the Turbo PMAC.  On power-up/reset, Turbo 
PMAC automatically copies the last values for these variables stored with a full SAVE command to the 
main bank of flash memory.  A subsequent FREAD command will overwrite these values with the last 
values stored with an FSAVE command. 
After every 256
th
 FSAVE command, one of the two flash-memory sectors for this function is filled, and 
Turbo PMAC must clear the other sector to enable further FSAVE commands, an operation that takes 1 – 
2 seconds.  This does not keep any other Turbo PMAC tasks from operating, but if another FSAVE 
command is executed during this time, it will be rejected with an error (reporting ERR021 if I6 is set to 1 
or 3), and bit 6 of global status word Y:$000006 is set to 1.  Operation of the flash memory past 100,000 
clear cycles cannot be guaranteed, so there should be no more than 25,000,000 FSAVE commands issued 
over the lifetime of the machine. 
If the saving operation fails due to a bad flash sector, the command will be rejected with an error 
(reporting ERR022 if I6 is set to 1 or 3), and bit 7 of global status word Y:$000006 will be set to 1. 
The FSAVE command works on all flash-memory ICs being used in manufacturing as of the 
implementation of the command in 2005.  However, it may not work on older Turbo PMACs.  Bits 1 and 
2 of I4904 must both be set to 1 (i.e. the last hex digit of I4904 must be $6 or $7) to permit operation of 
the FASVE command.  If the command is issued to a Turbo PMAC with an older flash-memory IC, the 
command will be rejected with an error (reporting ERR020 if I6 is set to 1 or 3.) 
FSAVECLEAR 
 
Function: 
Clear FSAVE flash-memory sectors 
 
Scope:   
Global 
 
Syntax:  
FSAVECLEAR 
 
 
 
FSAVCLR 
The FSAVECLEAR command causes Turbo PMAC to clear both of the sectors of flash memory reserved 
for the FSAVE “fast save” function.  If an FREAD command is then issued before another FSAVE 
command is used to save real data into these flash sectors, all of the variable values will be set to 0. 
 
GATHER 
Function: 
Begin data gathering. 
Scope: 
Global 
Syntax: 
GATHER [TRIGGER] 
 
GAT [TRIG] 
This command causes data gathering to commence according to the configuration defined in I-variables 
I5000 – I5051.  If TRIGGER is not used in the command, gathering will start on the next servo cycle.  If 
TRIGGER is used, gathering will start on the first servo cycle after machine input MI2 goes true.