Camac, Ideal High-Performance Data Acquisition Standard
Camac, Ideal High-Performance Data Acquisition Standard
Robert T. Cleary
Kineticsystems Corporation
11 Maryknoll Drive
Lockport, IL 60441
Abstract
High-performance data acquisition systems generally require substantial data
throughput to the host computer. High-accuracy A/D conversion, a large channel
capacity, and physically-distributed channels are often important characteristics of
these systems. CAMAC, a n acronym for Computer Automated Measurement And
Control, provides a n ideal solution for these high-performance data acquisition
system requirements. CAMAC-based systems are built to a non-proprietary
specification conforming to ANSIDEEE Standard 583.
CAMAC systems can be modest in size or provide thousands of channels
distributed via a fiber optic highway with three kilometers per node and a n
aggregate throughput of up to three megabytes per second to the host computer.
A wide variety of CAMAC 1/0 modules provide the analog and discrete interfaces
needed for high-performance systems. These include ADC modules with 16-bit
resolution and waveform recorders that operate to 1.3 gigahertz. A new CAMAC-
based system, called Tachion, is also described. This system can acquire analog data
and transfer this data to disk at rates up to 9.6 megabytes per second.
The performance of a CAMAC-based system is further enhanced by coinputer
interface hardware and software that supports list processing. Also, the high level
of standardization of the CAMAC command structure allows the use of a single
software driver that is unaffected by the types of I/O modules in the system.
272
CH2735-9/90/0000-0272$1.00 C 1990 I E E E
CAMAC Overview
The basic building block for any CAMAC system is the
module. A CAMAC module provides the interface
between the external process and the CAMAC
backplane bus, called the Dataway. The relationship
between the process, the input/output (UO) modules,
and the Dataway is shown in Figure 1. The primary
CAMAC specification (ANSIDEEE Standard 583) [ 13
covers the physical dimensions of the module, the signal
and power allocation on the Dataway connector, the
Dataway signal levels, the command-response protocol,
and the bus timing considerations. A module front
panel is used for I/O connectors, LEDs, switches,
connectors, and test points. All single-width modules
are 305 mm (12”) deep and contain a front panel that
is 221.5 mm (8.75”) high and 16 mm (0.68”) wide. A
typical CAMAC module is shown in Figure 2.
Figure 3 - A CAMAC crate with modules.
A CAMAC powered chassis (called a crate) provides
the physical mounting, power, and cooling for the
modules. Full-size crates contain slots for 25 modules
and are arranged for mounting in 19-inch racks. A A special module, called a crate controller, provides the
CAMAC crate with modules is shown in Figure 3. link between the other modules in the crate and the
host computer. The crate controller must address the
1/0 modules, transfer data, accept status information,
and monitor the interrupt lines, all via the Dataway.
Additionally, the crate controller must handle the flow
of data to and from the host computer. A main crate
controller always resides in the two right-most slots in
CAMAC CAMAC
the crate. The relationship between 1/0 modules, the
INPUT OUTPUT Dataway, and the crate controller is shown in Figure 4.
MODULE MODULE
IEEE Standard 675 covers the use of one or more
++ CAMAC DATAWAY
i
COMPUTER
REAL.TIME 110 OR DATA
HIGHWAY
Figure 2 - A typical CAMAC module. Figure 4 - Modules, the Dataway, and a crate controller.
273
The versatility of CAMAC is strengthened by the
system-level considerations provided by the IEEE
specifications. A CAMAC crate controller can be
interfaced to a host computer directly, via the standard
Parallel Highway, the Serial Highway, or by a local
-1l-1 ..
area network (LAN). CAMAC is computer-independent
and can be connected to any computer bus or channel
for which a n interface exists.
One or more CAMAC crate controllers can be a. One or more crates on a computer bus.
interfaced to a host computer peripheral bus via a n
interface card or to a channel such as GPIB or RS-232.
This approach is shown in Figure 5a.
A multi-crate system can be configured using the
I
I
standard CAMAC Parallel highway (IEEE-596). This
system can contain up to seven crates and is
interconnected vial a 66-pair cable. Total cable length
is limited to approximately 50 meters. The Parallel
Highway is shown in Figure 5b.
.
I
274
3) Data words are stored in the local memory
during recording and the sampling rate is not limited
by computer I/O throughput. The RAM memory is
organized as a continuous loop and the number of pre-
trigger/post-trigger samples is selectable.
4) Up to four niegasamples of local memory can be
provided with each recorder.
Other module types that are available include
counters and timers, ADCs and DACs, and discrete
input and output. One module type provides the
interface to high-performance multichannel pressure
scanners. CAMAC modules can host other busses, such
a s RS-232 and GPIB. For aerospace applications,
ARINC-429 and MIL-STD-1553 interface modules are
available.
a. Simplified layout of the Dataway.
High-Performance Computer Interfaces
One of the powerful aspects of CAMAC is the variety of
high-performance computer interfaces that are available.
The more prominent interfaces are described here.
1) A parallel-bus crate controller is available with
C1.l. computer bus option cards for the IBM PC/XT, PC/AT,
Gmlroll.,
and PS/2, as well as for the Macintosh 11, Digital's Q-
bus, and VME-based host computers. These systems
support up to eight CAMAC crates per interface and
the parallel bus can extend to 91 meters. Balanced RS-
485 signalling is used for high noise immunity.
2) Serial Highway Drivers with enhanced data
throughput [a] are available for Digital's UNIBUS,
b. Dataway signal flow. Q-bus, and VAXBI bus, as well as for Hewlett-Packard's
RISC (Reduced Instruction Set Computer) processor,
Figure 6 - Communication paths on the Dataway.
Encore (Gould) , and CDC computers. The VAXBI and
Gould-based SHDs can also be driven from host VME
chassis via channel emulator cards. A "general-purpose"
SHD can be driven from a GPIB (IEEE-488) port.
A Variety of 1/0 Modules 3) A crate controller is available that can be driven
A large selection of CAMAC 1/0 modules is available to from a SCSI (Small Computer System Interface) port.
the user. For example, over 150 module types are Powerful and economical workstations are becoming
available from KineticSystems Corporation (KSC) alone. available. Often, these workstations do not have an
For high-resolution requirements, a 16-bit analog-to- accessible I/O bus, but do have a SCSI port available.
digital converter module contains 32 channels and a 4) An intelligent crate controller is available with
scratchpad memory. Over 700 of these high-resolution a self-contained PC/AT-compatible computer. Also, a
channels can be provided in a single CAMAC crate. A crate controller and in-crate computer combination is
variety of signal conditioning modules are available for formed using Digital's LSI-11 family of processors.
such transducers as therniocouples, strain gages, and Both of these subsystems can include a variety of
RTDs. Transient data recorders are available that peripherals within the CAMAC crate. These computers
include one or more analog-to-digital converters (ADCs), can also be used as preprocessors, with the crate
a clocking circuit, and local RAM memory. For many controllers being used in auxiliary mode.
sampling applications, there are significant advantages
of transient recorders over simple ADC modules. The CAMAC Serial Highway
Recorders from KSC include the following features: The most powerful CAMAC systems are configured by
1) The clocking circuit is coniputer-selectable over using the Serial Highway. As describer earlier and
a wide range of sample rates. shown in Figure 5c, a typical CAMAC Serial Highway
2) Twelve-bit recorders are available with sampling system consists of a Serial Highway Driver (SHD), the
rates to one megahertz and eight-bit recorders are highway "loop", and up to 62 CAMAC crates with Serial
available to 250 megahertz. Crate Controllers (SCCs).
275
The SHD provides the interface between the High Performance by List Processing
computer and the highway, while an SCC provides the
The use of DMA (direct memory access) transfers
interface between the highway and the other modules generally provides a significant increase in throughput
in a crate. over program-controlled transfers. With sophisticated
There are three message types that are transmitted operating systems, a n I/O call can require ntilliseconds
over the Serial Highway. They are: to complete, while each transfer in a DMA block may
1) Contniand ntessage - This message from the require only microseconds. Additionally, each DMA
SHD contains the address information, write data (if block generally has the overhead of a single I/O call.
appropriate), and parity. An addressed SCC "swallows" The list processors associated with the various
the Command message and replaces it with a Reply Serial Highway Drivers have the following basic
message. features:
2) Reply message - This message contains the 1) Multiple lists can be loaded via the computer
status information for the transaction, read data (if channel, with the memory containing up to 32K list
appropriate), and parity. items.
3 ) Deniand message - This asynchronous message 2) Lists can be a mixture of single transfers and
is generated by a n SCC in response to a LAM (Look- block transfers.
At-Me) request for service from a module. The receipt 3) Read lists can also contain imbedded write
of a Deniand message by the SHD can cause a operations. These transfers are generally used for
computer interrupt. channel selection or other module control. Since the
A simplified block diagram of a typical Serial computer channel direction is input for a read list, the
Highway Driver is shown in Figure 7. The SHD prearranged write data is included in the list for these
handles the CAMAC highway protocol, so that the imbedded operations.
computer channel needs only to supply the address and Figure 8 shows the execution of a block of "list"
CAMAC command information and to transfer the data, commands without list processing. In this example the
as appropriate. The FIFOs provide a smooth data flow computer channel must supply the CNAF address
across the channel. information as well as the data. The 6,600 milliseconds
represents the time to execute a list of 2,000 16-bit
Highway system enhancements developed by KSC
write operations on a VAX 8250 processor. The
allow the option of transmitting large blocks of data
execution time would be similar for read lists.
within a single highway message. The optional fiber Figure 9 shows the transfer of the same list with
optic port adapters can operate a t a 50 MHz clock rate. a list processor added to the SHD. Note that the data
Using the enhanced highway modes, data throughput up acquisition is now via DMA. However, the enhanced
to three megabytesfsecond can be achieved for 24-bit block Serial Highway mode cannot be used because the
transfers and up to two megabyteslsecond for 16-bit CNAF address information must be sent over the
transfers. These rates can be sustained in systems with highway for each transfer. The total time, including
fiber optic highway links as long as three kilometers QIO, is now 13.3 milliseconds.
(10,000 feet). For systems requiring extremely high performance,
The list processor (optional on some SHD types) is list sequencer modules (LSMs) can be used in the
a sequencer-driven RAM memory that is loaded with CAMAC crates in addition to the list processor in the
"lists" of CAMAC commands. When a list is executed, SHD. This configuration is shown in Figure 10. The
a sequence of individual CAMAC commands and/or LSMs contain RAM-based lists that supply the NAF
single-address blocks is performed at DMA rates. address information within the crates, while the list
Additional information on list processing is provided in processor needs only to execute one block transaction
the following section. for each crate. The total acquisition time for this
example is 5.3 milliseconds.
In addition to the list processor and the list
I
I
sequencer module, a list sequencing auxiliary crate
WRITE
I
I FIFO
controller is available. This controller can access
modules autonomously and transfer data to and from
FROM 1 INTERFACE I
COMPUTER CNTRL/STATUS the host system via FIFO buffers. This device can
CHANNEL
RiAD I I
SERUI
repeat Dataway cycles a t a rate up to 1.1 microseconds
per transfer. The list processing and sequencing
HIGHWAY
HW
RECENER
"IN" devices are discussed in detail in a n earlier paper [3].
L__________________-___________1
276
T,Tran:;;
E l
/
Program
--
multichannel data acquisition system with net
---
Status + Stat
F 1 T2z!Ts 1 1
-
eight acoustic channels with a sampling rate of 32
kilosamples/second each for a period of just over eight
minutes. The net throughput to disk in this example
3.3 msec QIO + 10 msec
is 2.4 megbytes per second.
13.3 msec
CAMAC I/O
11 11
i5q
m DMA
Status + Status
1 1 1
+ ,
I ..
I
PARALLEL
3 3 msec QIO TRANSFER
DISK
+ 2 msec
Figure 10 - Using the list processor and LSM. Figure 11 - A typical Tachion data acquisition system
277
Software, a Key Element One of the CAMAC status response flags is "Q." Q is
returned as ONE for a read operation when a data
The usefulness of any data acquisition standard is
word is available in a module and for a write operation
affected by the ease of writing software to perform a when data can be accepted. A number of block transfer
particular task. An important feature of the CAMAC modes that use Q response are supported in the
addressing scheme is that one software driver can be software drivers. These include Stop on Q = 0, Q
written for the computer interface. That driver Scan, and Repeat Until Q = 1. Also, a Stop on Word
supports the over 1,000 CAMAC I/O module types that Count transfer mode is available. For Serial Highway
exist. Equally important is the fact that the CAMAC applications, enhanced and standard block modes are
specifications provide a very straightforward addressing selected. The family of computer interface software
method. Great flexibility is achieved through the use of drivers include a variety of other calls. These calls
the CNAF addressing scheme (Crate, Slot, Subaddress, involve channel initialize, LAM (Look-At-Me) interrupt
Function). The software drivers from KineticSystenis handling, and list-building routines for the list processor
provide a set of consistent high-level-language calls. options.
Two of these calls are shown in Figure 12. For software transportability, the user libraries for
CAM16 is the call for a single 16-bit transfer to or the software drivers are identical throughout the entire
from a CAMAC module, where: family of CAMAC interfaces to Digital Equipment
CAM16 is the name of the call; Corporation's VAX and MicroVAX processors, including
those for UNIBUS, Q-bus, VAXBI bus, and SCSI bus.
Chan is the channel for the computer interface; These library interfaces are also identical with those for
C,N,A,F select the coniniand to be performed; the IBM PC, PC/AT and PS/2 under MS-DOS. The
Data is the read or write information; and Serial Highway and parallel bus software libraries are
also identical. Within the VAX world absolutely no
StatusArray is the returned status. changes in application code are required to move
CAB16 is the call for a single-address DMA block between computers or bus types, or between the Serial
transfer to or from a selected CAMAC module, where: Highway and parallel bus CAMAC interfaces. The only
change involves the invoking of the appropriate
CAB16 is the name of the call; software driver. Movement of application code between
Chan is the channel for the computer interface; a VAX and a PC without change is affected by any
C,N,A,F select the command to be performed; differences that exist in the high-level languages used.
The use of list processing has been discussed in
Mode selects the type of block transfer; some detail in this paper. List processing is not used
DataArray is the block to be transferred; to perform one single-address block transfer (to read
the memory of a transient data recorder, for example).
TransCount is the size of the data block; and The real usefulness of list processing is experienced
StatusArray is the returned status. when a large nuniber of operations with different
CNAF commands must be performed. For those
interfaces where the hardware list processor is optional
(as with the Q-bus SHD) or is not included (as with the
Software -- A s Simple a s CNAF family of parallel bus crate controller interfaces), the
software drivers include list processing a t the software
level. This is identical to hardware list processing a t
r Crate (c) I-slot (NI
rr Subaddress (A)
Function (F)
the application level, except for execution times. For
the Q-bus SHD operating in standard (non-enhanced)
mode, this time is 12 microseconds per word for
hardware list processing and 50 microseconds for
software list processing, both on a MicroVAX 11. Refer
to a n earlier paper for more details [3]. CAMAC
performance with list processing in the VAXBI
environment is covered in another paper [4]. With an
I/O call consuming two to three milliseconds, the
performance improvement by using hardware list
0 Single Call CAM 1G(Chan,C,N,A,F,Data,StatusArray)
processing is obviously controlled by the nuniber of
0 Block Call CAB 1G(Chan,C,N,A,F,Mode,DataArray, operations to be performed.
Application software packages are available. These
TransCount,StatusArray)
include TRADIS, a transient recorder package, and
Tachion data acquisition software. Also, third-party
Figure 12 - Typical single-transfer and block CAMAC calls. packages such as ASYST are supported.
Conclusions Biography
The CAMAC interface standards have been discussed in Robert T. Cleary (M '63 - SM '64) has over 30 years
detail. CAMAC-based systems have been shown to be experience in electronic design. He began his career
a n ideal choice for applications that require high- with GTE Automatic Electric as a co-op student in
performance data acquisition. CAMAC is also quite 1955. After receiving his B.S.E.E. degree from the
viable for applications where computer-backplane- Illinois Institute of Technology in 1960, he developed
mounted I/O is insufficient. The primary features of many products for GTE. These include a number of
CAMAC in data acquisition are: new interfaces for voice and data communications
1) CAMAC is a non-proprietary "open" standard networks. As a result of these developments, he has
with multivendor support. been granted 18 U.S. and 24 foreign patents. He was
2) The CAMAC international standards are a co-founder of Kineticsystems Corporation in 1970 and
sufficiently rigorous and complete to cover the overall held the position of Vice President - Engineering until
system aspects as well as details a t the hardware, 1982, when he was promoted to Executive Vice
protocol, and software levels. President. He has been responsible for many CAMAC-
3) User needs vary widely from one system to related product developments a t KineticSystems and has
another. CAMAC can be quite economical when applied written numerous technical papers.
to a single-crate system as well as for application in a
large distributed 1/0 system. A wide variety of References
computer bus alternatives are supported and a number
ANSIDEEE Standard 583, "CAMAC Instrumentation
of CAMAC crate interfacing methods are available. System," available with companion CAMAC Standards
4) A wide variety of CAMAC modules are available 595, 596, 675, 683, 726, and 758 as a bound volume
from the CAMAC vendors. These range from 16-bit from IEEE Service Center, 445 Hoes Lane, Piscataway,
multichannel W C s to transient data recorders that NJ 08854.
sample a t 1.3 gigahertz.
5) High channel density is a salient feature of R. T. Cleary, "Enhanced CAMAC Serial Highway
CAMAC. For example, over 700 16-bit ADC channels System,"Nuclear Science Symposium, San Francisco,
can be included in a single crate. CA, October 23 - 25, 1985.
6) The CAMAC Serial Highway provides the "glue" R. T. Cleary, "New High-Performance Interfaces to
for high-performance distributed systems. This highway CAMAC,"Fifth Conference on Real-Time Computer
supports up to 62 crates with up to three kilometers Applications in Nuclear, Particle and Plasma
between crates on a fiber-optic loop. I/O throughput to Physics, San Francisco, CA, May 12 - 14, 1987.
three megabytes per second can be achieved with some
host computers. R. T. Cleary, "A High-speed Data Acquisition Interface
7) List processing in hardware and software greatly for CAMAC Using the DRB32," DECUS Symposium,
improve the throughput for list-driven data acquisition Anaheim, CA, October 17 - 21, 1988.
systems. Including operating system overhead, the
execution time for 2,000 channels is reduced from 6,600
milliseconds to 5.3 milliseconds by using the enhanced
Serial Highway mode and the list processor instead of
using program transfers from a VAX 8250 host
processor.
8) Tachion is a CAMAC-based system that uses
Parallel Transfer Disk (PTD) technology to achieve data
acquisition throughput to 9.6 megabytes per second and
total storage capacity to 50 gigabytes.
9) The straightforward CNAF CAMAC addressing
scheme has many advantages in software. A consistent
family of software drivers allows the user application to
be ported to a variety of processors with any changes to
the application code. One software driver a t the
computer interface level supports all of the CAMAC
modules in a system.
279