zero-suppressed dma for multiparameter data acquisition using camac

3
Nuclear Instruments and Methods in Physics Research A286 (1990) 235-237 North-Holland ZERO-SUPPRESSED DMA FOR MULTIPARAMETER DATA ACQUISITION USING CAMAC Amitava ROY, Asismoy BANDYOPADHYAY, Sailajananda BHATTACHARYA and Swapan Kumar DE Variable Energy Çyclotron Centre, Bhabha Atomic Research Centre, 1 /A F, Bidhcn Nagar, Calcutta-700064, India Received 5 April 1989 This paper describes a setup for zero-suppressed DMA transfer of multiparameter data with CAMAC hardware. A commercially available CAMAC DMA module has been coupled with a bit pattern register to achieve sparse data scan. The event processing code has been rewritten to handle list data of variable event length and its performance is reported . l. Introduction The data acquisition system at the Variable Energy Cyclotron Centre, Calcutta, India [1] is based on a Norsk Data ND-560 [2] dual processor computer sys- tem and CAMAC interface . In this configuration data are transferred between CAMAC and computer mem- ory using a CAMAC Direct Memory Access Controller (CDMA) [3] . The CDMA is operated in address scan mode for module register access and interleaved DMA transfer of 16-bit data . A reasonable fast transfer rate of 1 Mbytes/s has been achieved in this configuration. Once initiated by an event trigger the DMA transfer is completely under hardware control and there is no scope for data reduction on a CAMAC level for experi- ments involving many parameters, leading to unwanted zeros ("0" data for ADCs which have not fired) in the DMA buffers . This results in a reduction of effective throughput ~ince the DMA buffers are filled with many unwanted zeros and the utilization of storage media is also poor. As the complexity of the nuclear physics experiments in the laboratory grew with time, we needed to intro- duce a system which has a zero-suppression capability at the CAMAC level for increased throughput . The obvious solution would be to use a fast front-end processor as an event handler . But this requires ad- ditional investment and also a substantial programming on the part of the experimenter depending on the type of his experiment . In this paper we report an alternative system, which has been implemented with very little additional hard- ware and which requires nc programming effort on the part of the experimenter but fulfils the following goals : (1) Generation and transfer of an event identification word (event marker) where the value of each bit of the word represents a data channel which has either fired (bit value "1") or not fired (hit value "0") . 0168-9002/90/$03 .50 1) Elsevier Science Publishers B .V . (North-Holland) 2. Hardware description 235 (2) Subsequent transfer of data by suppressing zero value parameters . (3) DMA transfer without introducing any additional time delay into the existing system. The hardware configuration for zero suppression, which consists of an event register (we call it "Trigger Module") coupled with the existing CDMA module, is described in detail in section 2 . The relevant changes in the software under this new scheme are described in section 3 . The performance details are reported in sec- tion 4 . A double-width CAMAC trigger module has been designed and developed using Borer's [4] quick proto- typing aid . This module has a printed circuit board cadge connector for plugging in the CAMAC dataway and circuits to buffer and decode the dataway signals . The printed circuit board developed is housed in the space provided for this purpose in the prototype module . The necessary signals from the user end are brought in through front panel LEMO connectors . The trigger module essentially consists of a 16-bit input register . The CDMA module is coupled with the trigger module through a back panel p-,tch connection . The CDMA has a patch connection that can suppress memory add : ess increment and word count decrement during its DMA cycles . This was provided by the manufacturer of the CAMAC DMA module for testing purposes . This facility of the CDMA module has been utilized to obtain zero-suppressed DMA transfer of 16-bit data . The overlapping pattern pulses are latched into the trigger module and it is disabled from further input till it is reset by the reset pulse from the CDMA module at the end of the DMA scan . The strobe inputs of the

Upload: amitava-roy

Post on 21-Jun-2016

225 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Zero-suppressed DMA for multiparameter data acquisition using CAMAC

Nuclear Instruments and Methods in Physics Research A286 (1990) 235-237North-Holland

ZERO-SUPPRESSED DMA FOR MULTIPARAMETER DATA ACQUISITION USING CAMAC

Amitava ROY, Asismoy BANDYOPADHYAY, Sailajananda BHATTACHARYAand Swapan Kumar DEVariable Energy Çyclotron Centre, Bhabha Atomic Research Centre, 1/A F, Bidhcn Nagar, Calcutta-700064, India

Received 5 April 1989

This paper describes a setup for zero-suppressed DMA transfer of multiparameter data with CAMAC hardware. A commerciallyavailable CAMAC DMA module has been coupled with a bit pattern register to achieve sparse data scan. The event processing codehas been rewritten to handle list data of variable event length and its performance is reported .

l. Introduction

The data acquisition system at the Variable EnergyCyclotron Centre, Calcutta, India [1] is based on aNorsk Data ND-560 [2] dual processor computer sys-tem and CAMAC interface . In this configuration dataare transferred between CAMAC and computer mem-ory using a CAMAC Direct Memory Access Controller(CDMA) [3] . The CDMA is operated in address scanmode for module register access and interleaved DMAtransfer of 16-bit data . A reasonable fast transfer rate of1 Mbytes/s has been achieved in this configuration.Once initiated by an event trigger the DMA transfer iscompletely under hardware control and there is noscope for data reduction on a CAMAC level for experi-ments involving many parameters, leading to unwantedzeros ("0" data for ADCs which have not fired) in theDMA buffers . This results in a reduction of effectivethroughput ~ince the DMA buffers are filled with manyunwanted zeros and the utilization of storage media isalso poor.

As the complexity of the nuclear physics experimentsin the laboratory grew with time, we needed to intro-duce a system which has a zero-suppression capabilityat the CAMAC level for increased throughput . Theobvious solution would be to use a fast front-endprocessor as an event handler . But this requires ad-ditional investment and also a substantial programmingon the part of the experimenter depending on the typeof his experiment .

In this paper we report an alternative system, whichhas been implemented with very little additional hard-ware and which requires nc programming effort on thepart of the experimenter but fulfils the following goals :(1) Generation and transfer of an event identification

word (event marker) where the value of each bit ofthe word represents a data channel which has eitherfired (bit value "1") or not fired (hit value "0") .

0168-9002/90/$03 .50 1) Elsevier Science Publishers B.V .(North-Holland)

2. Hardware description

235

(2) Subsequent transfer of data by suppressing zerovalue parameters .

(3) DMA transfer without introducing any additionaltime delay into the existing system.The hardware configuration for zero suppression,

which consists of an event register (we call it "TriggerModule") coupled with the existing CDMA module, isdescribed in detail in section 2 . The relevant changes inthe software under this new scheme are described insection 3 . The performance details are reported in sec-tion 4 .

A double-width CAMAC trigger module has beendesigned and developed using Borer's [4] quick proto-typing aid . This module has a printed circuit board cadgeconnector for plugging in the CAMAC dataway andcircuits to buffer and decode the dataway signals . Theprinted circuit board developed is housed in the spaceprovided for this purpose in the prototype module . Thenecessary signals from the user end are brought inthrough front panel LEMO connectors .

The trigger module essentially consists of a 16-bitinput register . The CDMA module is coupled with thetrigger module through a back panel p-,tch connection .The CDMA has a patch connection that can suppressmemory add :ess increment and word count decrementduring its DMA cycles . This was provided by themanufacturer of the CAMAC DMA module for testingpurposes . This facility of the CDMA module has beenutilized to obtain zero-suppressed DMA transfer of16-bit data .

The overlapping pattern pulses are latched into thetrigger module and it is disabled from further input tillit is reset by the reset pulse from the CDMA module atthe end of the DMA scan . The strobe inputs of the

Page 2: Zero-suppressed DMA for multiparameter data acquisition using CAMAC

236

3. Software modifications

A. Roy et al. / Zero-suppressedDMA

individual CAMAC modules are gated by a busy signalfrom the trigger module to prevent further input till thereset is generated.

The schematic diagram in fig. 1 explains the func-tional behaviour of the module. The trigger module iskept as the first module in the crate. The data conver-sion modules are kept at increasing station numbers .The NAF register of the CDMA module is loaded withNAF(2) of the trigger module and it is set for addressscan mode of operation . After completion of conver-sion, the LAMs will trigger the DMA module, whichwill read the pattern register data and transfer them tothe DMA buffer. Then the data channels at subsequentstations and subaddresses will be read in address scanmode . A scanning circuit in the trigger module consist-ing of a counter and a multiplexer operates in conjunc-tion with the DMA controller and generates "0" or "I'saccording to the trigger module pattern. A "0" in thepattern register bit will prevent word count decrementand memory-address increment in the CDMA. Thus, atthe end of a scan the event by event buffer in thememory contains a trigger word with fired channels as"1" and followed by the data of nonzero channels .

Efficient generation of histograrris from events ofvariable size is a little more complex than from eventsof fixed size in which form the earlier scanning logicused to acquire data . A new "PROCESS" code hasbeen written which can analyse events of variable lengthand generate histograms efficie ltly . The new code de-mands a different way of defining operations to beperformed on the incoming parameters as compared to

To CAMACDatowayvia BORERprototypeCard

Fig. 1 . Schematic diagram for the trigger module.

the earlier code. So the configuration code has also beenmodified. In the earlier system, since the event size wasfixed, only one set of operations needed to be describedin the configuration table to process all events in anexperiment . However, when the event size is variable inan experiment, a common set of operations for all typesof events does not work . In this case a set of operationsis described specific to an event type. Different sets ofoperations are described to process probable events ofinterest . Theoretically, any number of such sets can bedefined. In each set a tagword is formed from theparameters belonging to that event similar in structureto an event marker. The event marker of an event foundin the event-by-event buffer is compared with thetagwords . If it matches any defined tagword, the oper-ations of the particular set in which the tagword belongsare carried out by the "PROCESS" code. If no match isfound then that event is rejected.

4. Performance

SignalafromCDMAviarearpatchconnection

The throughput obtained using the hardware and thesoftware described above is satisfactory. To evaluate theperformance of the new "PROCESS" code, a typicalexperimental setup consisting of four AE-E telescopedetectors in ORed mode was simulated assuming onlyone telescope fires at a time . Events corresponding tothe above setup were generated by software and writtenon magnetic tape . This ensures a constant input datarate and makes the evaluation of event sorting timeeasier. Since the program loop executed for sortingsimulated data is identical to that for the on line data,the result so obtained is reliable. This result wa- thencompared with that of fixed event size sorted by the

Page 3: Zero-suppressed DMA for multiparameter data acquisition using CAMAC

Table 1Comparison of the two processing codes described

a~ One word for the event marker. b) Fixed event size.

previous processing code [1] . A quantitative comparisonof the new processing scheme, which takes care ofzero-suppressed variable event size data, with the oldscheme of fixed event size data processing is given intable 1 . The time quoted there was the time taken forsorting 100 blocks (block size = 4096 words) of data. Itis seen from table 1 that with the incorporation ofzero-suppression hardware and the corresponding newprocessing scheme, the throughput is 13.65K events/s,in contrast to SK events/s obtained with the old scheme[1]. In other words, we can achieve a factor of ap-proximately 2.7 improvement in the event rate handlingwith the present scheme, which justifies the effective-ness of the present development .

5. Conclusion

The scheme supports the sparse data scan for theaddress scan mode of operation of a CAMAC DMAmodule . Though the total scanning time for all channels

A. Roy et al. / Zero-suppressed DMA

remains the same, at the end of the scan the buffercontains only nonzero data identified by a header word .Also, this scheme does not introduce any additionalsoftware overhead for zero suppression which otherwisewould have been required when modules like ACC areused in CAMAC.

The trigger module has been designed with one validsubaddress and 16 inputs . In principle it can be ex-tended for multiple subaddresses with 16 inputs at eachsubaddress to accommodate more channels .

References

237

[1] A . Bandyopadhyay et al ., Nucl. Instr. and Meth . A257(1987) 309.

[2] Norsk Data AS, Oslo 6, Norway.[3] CAMAC Direct Memory Access Controller, General Infor-

mation, Publ . no. ND-12.004 .01, Norsk Data AS (June1974).

[4] Type 1981 DO-IT-YOURSELF MODULE, Borer Elec-tronics AG, Switzerland .

Number of ADCs Event size Operations Number of events/block Time [s]8 2+1 a~ Four 2-dim. 1365 10 .0

projections8 8 -do- 512 10 .5 b)