User's Manual

PMAC2 User Manual
66 Using PMAC2 with MACRO Interface
The second hex digit specifies which packet will cause a sync lock when received by this PMAC2. The
sync lock performs two important functions. On MACRO stations other than the synchronizing master, it
forces synchronization of the phase clock. On all MACRO stations, it can be used to verify ring integrity
– on PMAC2, I1001 is used for this. This digit, which specifies the slave number of the packet that will
cause the sync lock, generally is set to the number of the highest activated node for this PMAC2. This
means that the response from the last node will cause the sync lock. For example, if nodes 0 to 3 are
active on this PMAC2, this digit should be set to 3.
The 16 bits of the third through sixth hex digits specify which nodes of 0 to 15 are active. . On a PMAC2
that is a master on the ring, each ring cycle a data packet is sent out for every active node. Setting bit n to
1 activates node n; setting bit n to 0 deactivates node n. In the hexadecimal representation 4 bits are
grouped together to form 1 hex digit; bits 0 to 3 represent the last hex digit. If only nodes 0 and 1 are to
be active, bits 0 and 1 are set to 1; bits 2 to 15 are set to 0, and the last four hex digits are set to $0003.
I1000: MACRO Node Auxiliary Function Enable
I1000 controls which nodes have their auxiliary read/write functions enabled. Setting bit n of I1000 to 1
enables the auxiliary functions for node n; setting bit n to 0 disables these functions for node n. Generally
every active node will have its auxiliary functions enabled, so I1000 is equal to the last four digits of
I996. It is required that auxiliary functions be enabled to use the nodes for servo flags.
I1001: MACRO Ring Check Control
I1001 permits automatic checking for ring failure. If set greater than 0, PMAC2 must receive two sync
lock packets (as defined by I996) in I1001 servo cycles, or it will report a ring failure and disable all servo
and I/O outputs on the ring. Generally, values of I1001 between 10 and 20 are used.
I1002: MACRO Node Protocol Type Control
I1002 is a 16-bit I-variable (bits 0-15) in which each bit controls whether the PMAC2 uses the MACRO
Type 0 protocol or the MACRO Type 1 protocol for the node whose number matches the bit number.
This is done for the purposes of the auxiliary servo flag transfer. A bit value of 0 sets a Type 0 protocol
for the node in which the 24-bit register of the node is used for the flag transfer; a bit value of 1 sets Type
1 protocol for the node in which the third 16-bit register of the node is used for the flag transfer.
I1003: MACRO Auxiliary Timeout Control
If I1003 is set greater than 0, the MACRO Type 1 Auxiliary Communications protocol using Node 15 is
enabled. PMAC2 implements this communications protocol using the MS, MSR, and MSW commands.
If his function is enabled, I1003 sets the timeout value in units of PMAC2 servo cycles. In this case, if
PMAC2 does not get a response to a Node 15 auxiliary communications command within I1003 servo
cycles, it will stop waiting and register a MACRO auxiliary communications error, setting Bit 5 of global
status register X:$0003.
A value of 32 is suggested when Type 1 MACRO stations are used. If a value of I1003 greater than 0 has
been saved into PMAC2’s non-volatile memory, then at subsequent power-up/resets, bit 15 of I1000 is
forced to 0, regardless of the value saved for I1000. This reserves Node 15 for the Type 1 auxiliary
communications.
Examples
The PMAC2 is the synchronizing master, and master #0 with nodes 0 to 7 active. I995 should be set to
$30, I996 should be set to $0700FF, and I1000 should be set to $00FF.
The PMAC2 is a master, but not synchronizing master, master #1 with nodes 0, 1, 4, 5, 8, and 9 active.
I995 should be set to $90, I996 should be set to $190333, and I1000 should be set to $0333.