Speakers
Description
We have developed a novel open-source Advanced Telecommunications
Computing Architecture (ATCA) platform - APOLLO - which simplifies the
design of custom ATCA blades by factoring the design into generic
infrastructure and application-specific parts. The APOLLO "Service
Module" provides the required ATCA Intelligent Platform Management
Controller (IPMC), power entry and conditioning, a powerful
system-on-module (SoM) computer, and flexible clock and communications
infrastructure. The APOLLO "Command Module" is customized for the
application but typically includes one or more large
field-programmable gate arrays, several hundred optical fiber
interfaces operating at speeds up to 28 Gbps, memories, and other
supporting infrastructure.
Summary
The APOLLO platform provides a relatively simple hardware
environment and firmware and software toolkit which can be used for
the development of ATCA blades. The development of
high-performance ATCA blades for high-energy physics applications has
proven to be quite challenging. Many problems must be solved,
including: The delivery of adequate power (up to 400W in some cases);
cooling to remove the resulting heat; high-performance
communications interfaces for control, monitoring and data acquisition;
optical fiber management; and industry-standard debug and programming
interfaces for routine monitoring and recovery of "bricked" modules.
The APOLLO Service Module is a standard-size ATCA blade with a
7U x 180 mm cutout to accommodate one or two Command Module boards.
The Service Module design is quite conventional and uses standard
commercial power entry and conditioning modules, delivering 12VDC at
up to 30A to the Command Module(s). A CERN, Wisconsin or other
compatible IPMC in an SODIMM package can be accommodated. The IPMC
sensor bus is routed to several sensors on the Service Module as well
as to the sensor tree on the Command Module. Joint Test Action Group
(JTAG) master capability may be provided by the IPMC for diagnostic
purposes or reprogramming of the SoM as well as Command Module
programmable logic.
The demonstrator APOLLO Service Module accommodates a commercial
Zynq SoM which runs an embedded version of the Linux OS. The module
contains 1 GB of system memory, 512 MB of flash and a micro secure
digital (uSD) card interface. Flexible on-blade interfaces are
provided, including: Front-panel gigabit Ethernet, an additional
Ethernet to the switch; four 10 Gbps bidirectional serial links to the
Command Module, asynchronous serial and Inter-Integrated Circuit (I2C)
interfaces to the IPMC and Command Module as well as JTAG
master/target capability.
A firmware and software reference design is provided for the
APOLLO platform to allow new users to become quickly productive. A
set of Advanced eXtensible Interface (AXI) peripherals are included to
provide convenient access to the on-blade interfaces. A complete
Makefile and script-based build environment supports easy
customization of the Zynq system using a pure text system description
which integrates well with repositories and version control systems.
A reference software system provides access to all hardware features
using the IPbus software suite.
Anticipated applications for the APOLLO platform include: The
Level 0 trigger for the monitored drift tubes (L0MDT) in the ATLAS
experiment; the data acquisition and timing card (DTC) for the inner
tracker and the track finder for the CMS experiment. All hardware and
firmware of the APOLLO is open-source to the extent permitted.
The APOLLO demonstrator hardware will be presented, along with test
results and a brief description of each of the currently planned
implementations.