print

ILL - Introduction of 32-bit computers

Main page          Previous   ---   Top 12/14   ---   Next

DEC RT11, RSX11, TSX11

By mid-1984 most instruments were being controlled by PDP11 systems. D19 the large multi detector diffractometer was controlled by a PDP11/24 (essentially the LSI-11/23 computer with a UNIBUS backplane), connected to a VAX11/750 for data treatment. This enabled the same positioning software to be shared from the other diffractometers (Allibon). The constraints of treating large arrays of data on the 16-bit PDP11s had always required some skill in program design, and usually required overlaying programs to bring the code down to the 64 kB limit of the 16 bit address for a single task.

For RT11 the link operation was very rapid, but for RSX11 the task-builder, TKB, was very inefficient, building each overlay separately, often requiring 30-40 minutes to construct a task. There was hence much more rapid development of control and data treatment software on the RT11 systems. The initial constraint of the RT11 foreground/background system was circumvented when TSX11 was introduced. This was a proprietary multi-user version of RT11, though never included DECnet compatibility at the ILL.

Scientists in the Nuclear Physics, Inelastic scattering and Small Angle scattering activities shared directly in the development of programming measurement sequences, and examining data on these front-end computers.   Most of these were using RT11 or TSX11 and taking full advantage of the rapid development cycle.  This  was a precursor of the introduction of the VAX 32-bit systems to simplify both control and data treatment at the instrument.

32-bit instrument control

The VAX11/730 was available at this time, with a UNIBUS which could control CAMAC directly. With initial help from an RAL engineer (Pulford) who had been involved in linking their data acquisition systems to the 11/730, a CAMAC handler was written specific to the DEC CAMAC controllers (Rice, Liles). These did not conform to normal VMS standards, since both serial and DMA control operations were possible.

A VAX11/730 was installed on the instrument D11 in 1985; there were notably few problems with the low level software. Up to four or five programmers and users could be supported by the system (there were no graphics displays, other than Tektronix terminals). Program linking was rapid. A distributed approach was made to the control program. Each motor had a separate control task. The memory read was a separate task, etc. Some 24 tasks were initiated and sent into a hibernating state when the system was started. A master scheduling program sequenced operations, waking up desired activities. All communications was through shared memory, hence there were never problems of file and data formatting. a monitor program too could show any parameter in the shared memory; this would write to the first 6 lines of a VT220 vdu terminal, while the rest of the terminal display scrolled, and took users’ commands. VMS allowed unrestricted program sizes, and rapid development of the control and locally available data treatment followed, together with the inclusion of the ATARI colour displays.

When the instrument D17 was similarly equipped the control program was identical, but the characteristics of the instrument followed configuration of a different set of motors etc in the initial start-up procedure. The system was tested on one afternoon, simply moving the UNIBUS cable from the PDP11 to the VAX, running without any problems. It was introduced without further delay. When later adapted as a reflectometer it was easy to add new motors. Extra copies of the motor task were added in the startup phase. In the shared memory there was space for up to 64 such subtasks; a snapshot of the shared memory served in restarting the system, holding the instrument identity. It was never necessary to write a formal management tool for this space; all software contributors respected a single page table describing the known sub-tasks and who could write specific values.
The initial configuration included 2 MB of memory. This was expanded to the 5 MB limit. An IEEE instrumentation interface too was added. This was connected to a set of digital voltmeters through an optically isolated serial link, protecting the computer against mishap. A pool of Keighley DVMs could be shared around the group. They were controlled and read using ASCII control sequences. There was space reserved in the data files for up to 8 values taken at the beginning and end of measurements.

32 bit computers hence became attractive for instrument control. The next systems obtained were VAX3500 computers with a Q22-Bus (IN5 etc using VME). For other computers a cheaper solution was to buy second-hand microVAX-II computers, with Q22-buses, and use QUNIVERTER bus conversion cards to attach to the UNIBUS CAMAC controllers. Only one software modification was required in the handler - it was necessary to extend the timing delays to allow for the higher processor speeds compared to the 11/730. The microVAX-II became a common configuration for ILL instruments towards the end of 1990. As VAXstations dropped in price D11 and D17 added these as graphics devices, with a utility program to maintain a copy of the control computer's shared memory on the workstation. Using the shared file-system (DFS) the users were never aware of the two distinct systems. For the nuclear physics on PN1 the LABView software (National Instruments Corp) was introduced for flexible control.

Early microprocessor projects

Introduction of the Solar computers required some developments to link to CAMAC for IN12. A special parallel interface was developed using the Intel 8080 (Ledebt, Lefebvre) to create a message box in memory. A CAMAC based microprocessor system using the Intel 8085 chip was developed for positioning axes in 1977. (Klesse, ILL79KL5T, ILL79KL6T, ILL79KL7T).

Later for the other three-axis instruments serial line modules were developed to control positioning and counting, (Falaise ILL84FA3T, ILL80FA39T). A serial line multiplexor linked these modules to the Solar control computers as a way around the lack of directly linking to the Solar computer bus.

Elsewhere at the ILL the sample environment group used 6809 chips, running OS-9 for the ILL precision sample temperature controller, which was connected using a serial link with check-summed communications (Dagleish).  The characteristics of each cryostat were stored in plug-in modules adapting the standard controller to any device.

In 1990, in collaboration with hardware from RAL, an INMOS transputer network to decode multi-detector data was simulated successfully, but the flash ADC hardware was never completed at RAL. The system was hosted initially on the VAX11/730, then, much more efficiently, using an SCSI interface on a VAXstation. Up-scalable data rates were achieved starting at 30 000 events/second.

Other computer control systems

While not formally dependent on the ILL, the special projects often shared concepts.
The Neutron Dipole moment experiment (1980 to the present, Sussex-RAL collaboration) initially used a GEC4080 computer, connected through serial links to BBC microcomputers. In 1985 this was changed to a VAX11/730. As the ILL staff had found, there was an immediate gain in ease of use and productivity with the VMS system.

Main page          Previous   ---   Top 12/14   ---   Next