ALMA Real Time Control System Jeff Kern Ralph Marson, Thomas Juerges
Real Time Control System Real Time Control is the portion of the system which has fixed timing requirements ALMA uses a 48-ms timing pulse to synchronize commands across the Array –Synchronization below the 48-ms level is done in hardware
Real Time Subsystems in ALMA Fringe and Delay Tracking –Distributed: Done partially at the Antenna (64) and partially in the Correlator (2) Antenna Pointing –At least 66 Antennas Data Acquisition –Correlators (2) –Total Power (Square Law) Detectors 2 kHz / Baseband / Polarization / Antenna –Holography Receiver for Beacon Holography
Hardware Architecture Array Operations Site (AOS) Operations Support Facility (OSF) Operator Console (Master) Archive Online Processing Antenna Bus Master (ABM) Hardware Device 48- ms Pulse Array Real Time Machine (ARTM) ALMA Compact Array Correlator 12-M Array Correlator Hardware Device Hardware Device Ethernet ALMA Monitor and Control Bus (AMB)
Software Architecture Most Control systems for large telescopes have the same high level architecture. MasterArchive Weather Station Back EndFront EndMount Software Bus (Middleware)
ALMA Monitor and Control Bus (AMB) Controller Area Network (CAN) –1 Mbit / s Multidrop Serial Protocol –35-m Bus Length with up to 32 Nodes / bus –29 Bit address scheme AMB adds to the Controller Area Network (CAN) standard. –Master-Slave architecture to prevent collisions on the bus (provides determinism) –Broadcast protocol (device discovery) Timing Event RS-485 Reset Pulse November 17-21, Santiago6ALMA Computing Review
Software Design Local Control Units (ARTM, ABM, etc) are Linux systems with a real time kernel –Real-Time code is written as kernel modules –Minimize real time code Timing Event interrupt handler Real time aware device driver Non-Deterministic Ethernet between master and real time computers. –Commands are queued in advance (~1 sec) and are executed by the interrupt handler.
Lessons Learned A larger middleware does not necessarily produce smaller device interfaces. Modern Programmable Logic Devices (FPGAs) are often a better solution than general purpose real time computers. –Better Latency –Integrated with the hardware –Allow true parallel behavior
Is this the End of Real Time? Some applications still require general purpose real time computers: –Data Acquisition –Real Time Data Processing (Adaptive Optics) –Distributed Servo Systems Small projects without a VHDL expert and no resources to invest in developing one.