MCA-1K Morpho Data Server Reference

MCA-1K

Introduction

USB driver

MCA-1K Device

Data structures

Overview

Module Constants

ARM Data structures

Version

Status

Controls

Calibration

Histogram

Time Histogram

Two-channel Logger

API

Overview

MCA-1K Data Structure: arm_histogram, arm_bck, arm_diff

Summary

There are two memory banks for MCA data, ie containing statistics from which to compute elapsed time and count rate and, of course, the histogram data. Both banks are identical and have 1040 entries, 16 statistics and 1024 histogram words; all are 32-bit wide.

A user may simply acquire a histogram in bank_0 and read data from there. This is the foreground or sample histogram, where the word sample indicates a piece of material whose radioactivity you want to measure. In this case you read from arm_histogram.

Alternatively, one can first acquire a natural background spectrum into bank_1 for a while. Then the user would place a sample in front of the detector and acquire the sample or foreground spectrum.

In this case, use arm_bck to read back the background spectrum, and use arm_diff to read the background-subtracted fore-ground spectrum. Note that the acquisition times for the foreground and background spectrum are allowed to be different.

All three data structures have (almost) exactly the same format. The structure arm_diff uses signed integers, because the foreground-background spectrum may have negative entries, due to shielding by the sample and counting statistics.

MCA structures

For arm_histogram, arm_bck, and arm_diff there are 1040 data in use. All register data are 32-bit integers; arm_histogram, arm_bck use uint32 while arm_diff uses int32 (signed).

MCA registers and fields
Register number and field nameDescription
HR0[0]: runHistogram acquisition happens while this bit is set.
HR1: run_timeRun time measured by wall clock; 1LSB=1.365ms.
HR2: dead_timeDead time measured by wall clock; 1LSB=1.365ms.
HR3: eventsNumber of acquired events
HR4: live_timeComputed live time, in milliseconds
HR5: count_rateComputed count rate, dead-time corrected, in milli-cps
HR6: live_time_ratioSample / background measuring time; × 1e6. Only used by arm_diff.
HR14: wall_clock_startWall clock reading at start time in 1.365333ms units
HR15: live_time_maxRequested live time for the data acquisition, in milliseconds
HR16 to HR1039: histogramThe 1K×32-bit energy histogram. Only the first 900 MCA bins are guaranteed to contain valid data.
All arm_histogram, arm_bck, arm_diff registers. HRn means histogram register number n, with n=0...1039 . Bitfields are indicated as [b_low:b_high] indicating bit numbers b_low to b_high, inclusive.

These are the higher-level 'user' dictionary entry for arm_histogram.

arm_histogram user dictionary
NameDescription
wall_clock_startWall clock time at start in seconds; Resolution is 1.365ms.
run_timeRun time in seconds; Resolution is 1.365ms.
dead_timeDead time in seconds; Resolution is 1.365ms.
eventsNumber of acquired events
live_timeComputed live time in seconds; Resolution is 1.365ms.
count_rateComputed count rate, dead-time corrected, in cps
arm_histogram, arm_bck, arm_diff 'user' dictionary entries