Delta Tau GEO BRICK LV User Manual

Page of 440
 
Turbo PMAC User Manual 
240
 
Turbo PMAC Computational Features 
P72=(M72-P69*M71)/(M70*P70) 
; Servo task duty cycle 
P68=INT((M71+M72+M73)/M70
; # of times phase interrupted RTI 
P67=INT((M71+M72+M73)/(M70*P70)) 
; # of times servo interrupted RTI 
P73=(M73-P68*M71-P67*(M72-P69*M71))/(M70*P70*(I8+1)) 
     ; 
RTI 
task 
duty 
cycle 
P74=P71+P72+P73 
 
 
; Latest total foreground duty cycle 
P75=(P75*(P76-1)+P74)/P76 
; Averaged total foreground duty cycle 
CLOSE 
Background Cycle Time 
There are two timer registers important to evaluate the time required to execute a background cycle.  
These registers are involved in the operation of the watchdog timer.  The register at address Y:$000025 is 
set to the value of I40 at the end of every background cycle.  (If I40 is 0, the register is set to 4095.)  Until 
the next background cycle is completed, this register is decremented every servo cycle.  The data 
gathering function is useful to establish how long background cycles take. 
The register at X:$000025 contains the lowest value reached by Y:$000025 since the last power-up/reset 
of the Turbo PMAC.  If this is close to 0, the Turbo PMAC has come close to tripping its watchdog timer, 
and background tasks such as PLC program execution, communications response, and safety checks have 
been slow. 
Numerical Values 
Turbo PMAC can store and process numerical values in many forms, with both fixed-point and floating-
point values.  The Motorola 56300 DSP that acts as Turbo PMAC’s CPU is a fixed-point processor with 
built-in 24-bit and 48-bit arithmetic capability (plus a 56-bit accumulator).  However, Turbo PMAC’s 
firmware implements a full set of floating-point routines.   
Internal Formats 
The internal servo, interpolation, and commutation routines all operate with fixed-point arithmetic, 24-bit 
and 48-bit, for maximum speed.  The user programs, motion and PLC, use 48-bit floating-point arithmetic 
for maximum range and generality.  Even when reading from and/or writing to fixed-point registers, the 
intermediate formats are all floating-point values.  This permits users to mix different variable types at 
will, letting Turbo PMAC handle the type matching automatically 
The only exception to this rule is the compiled PLC programs; in a statement containing only “L-
variables” and integer constants that can fit in a signed 24-bit range (+/-8M), the intermediate format is 
signed 24-bit integer.  Refer to the section on compiled PLCs in the Writing and Executing a PLC 
Program section of this manual for more details. 
The general floating-point format is 48 bits long, with a 36-bit mantissa and a 12-bit exponent.  This 
provides a range of +2
+2047
, or +3.233 x 10
+616
, which should provide sufficient range for any foreseeable 
uses of the card.