A versatile interface bus R. Labb´ e 1, a) Departamento de F´ ısica, Facultad de Ciencia, Universidad de Santiago de Chile, Casilla 307, Santiago, Chile (Dated: Received 28 January 1993; accepted for publication 10 October 1995) A versatile interface bus was designed. It allows the control of up to 16 instruments using an IBM XT/AT—or compatible—personal computer. Its main features are simplicity and flexibility to connect it with instruments not necessarily designed to be controlled by a computer, greatly improving their performance. c ⃝1996 American Institute of Physics. This article may be downloaded for personal use only. Any other use requires prior permission of the author and the American Institute of Physics. This article appeared in Rev. Sci. Instr. 67, 328 (1996) and may be found at http://scitation.aip.org/content/aip/journal/rsi/67/1/10.1063/1.1146591 I. INTRODUCTION The automatic systems for control of experiments and data acquisition are now almost essential tools in the laboratory. In fact, it is in general desirable to have all the measuring instruments in a given experiment connected to a computer, to allow automated reading and storage (or, eventually, real time processing) of the quantities being measured and, on the other hand, to control the parameters governing the system under study. Although there is an enormous variety of commercial instruments conceived to reach this goal using, for example, the IEEE-488 (GPIB) or RS-232 interfaces, sometimes a more simple and manageable interface is desirable to adapt to instruments that may have not necessarily been designed to be controlled by a computer. This may also be the case with ”homemade instruments like, for example, amplifiers, relay arrays or motor controllers, where adding the possibility of computer interfacing remarkably increases their interest and usefulness. One way to fulfill this need of computer control is to use a commercial card, 1 based on the GPIB standard or another commonly used interface for instrument communication and control. Another one is to design a customized interface, including only the features commonly required in applications like the ones in the few examples given above. This last approach allows for great simplification in the communication protocol, making the implementation of particular solutions notably less difficult. This note describes the design of a versatile interface bus (hereafter VIB) that attempts to reach the goal of simplicity in both hardware and software implementations, but at the price of a complete dependence of the instrument on the controller, in contrast with commercial instruments, which generally show a tendency to the autonomy. However, this drawback seems of minor importance if we keep in mind that the objective here is to allow the realization of particular—often very specialized—applications rather than generate multipurpose or general solutions. a) Present address: ´ Ecole Normale Sup´ erieure de Lyon, CNRS URA 1325, 69364 Lyon, France. The VIB uses one card plugged in a slot of the controller—an IBM XT/AT or compatible computer— and one remote card in each instrument connected to the bus, being the design of these cards very simple. In fact, one of the objectives of the whole VIB design was to avoid the utilization of microprocessors to control the operation of remote cards, which is almost invariably the case in instruments using the GPIB or RS-232 standards. This avoids the necessity of software development for their operation. In fact, the only programming required here may be carried out using C, BASIC, PASCAL, ASSEMBLY or any other language featuring INP and OUTor equivalentinstructions, which means no need of software development packages other than the ones belonging to the PC itself. Also, as the only program related with the bus runs on the PC, it can be modified at any time, in order to meet new requirements. But, of course, the VIB is not intended to replace commercial standards. A typical GPIB implementation may be capable of data transfers at rates up to 1 MB/s, using direct memory access. As DMA is not included in the VIB design, the transfer rate will be limited by the CPU speed and the programming strategy, and will be far slower than the GPIB. So, the VIB is very appropriate to be used when commercial standards are not easily applicable, specially in those cases in which an evolving experimental set-up involving customized devices imposes frequent changes in the hardware and software interfacing. II. VIB DESCRIPTION The VIB consists in two sets of eight lines: one to send commands and the other to send addresses or data and to receive data or status information from instruments. For the VIB purposes, an instrument is seen as a set of registers to write or read data. Because it is not possible to read back from some physical registers used to write, a memory was included on the remote card design, in which a copy of the bytes written on such registers is put automatically. Thus the control software does not need to hold an image of the written registers. However, it is possible to write on this memory without change in the associated register, to take advantage of the 128 bytes