This is an old revision of the document!
Detailed schematics of the board are available here: ACM Schematics. To view the Revision A schematics, click on any document on the page, and when the relevant schematic loads, replace “edg.uchicago.edu/~bogdan/DAMIC_ACM/doc/…” with “edg.uchicago.edu/~bogdan/DAMIC_ACM/doc/docA/…” in the browser address bar.
To power the ACM board, we use the VME8004X from CAEN, which provides all necessary voltages except for ±15V and -30V. These must be added manually by connecting the V1 and V2 outputs on the backside of the VME. The input voltages are defined in the table below:
| Fuse | Input Voltage |
|---|---|
| -V1 | -15V |
| +V1 | +15V |
| -V2 | -30V |
| +V2 | Spare fuse |
There exists an outdated user manual; please use it with care: User Guide
To start the ACM board, it is important to follow this order:
Turn on the VME crate.
Turn on the external supplies (HMP 2030).
To shut down the ACM board:
Turn off the HMP2030.
Turn off the VME crate.
The ACM is driven by a two-stage software system:
cdaq: Sets up the ACM as a server station.
ldaq: Manages communication between the server and your workstation.
For download and installation, see the chapter Software Installation and Test.
The ACM always creates a temporary version of the BCF and SEQ files. This ensures that if certain values are changed using a command, the original files remain intact.
Execute the following steps:
Start Python scripts:
Execute commands:
daq.init_ccd(“.bcf file”, “.seq file”)'
- ./sendrun.py –to 'CCDIDdaq.daemon.send_command(“EHV”)'daq.load_current_sequencer()'
- ./sendrun.py –to 'CCDIDdaq.startup_ccd()'These steps are part of the start_module.py script.
Erase/Purge CCD
Image Acquisition
Trace Acquisition
To shut down CDAQ:
The CCDID is assigned by the board. For example, board number 105 has the ID ccd105 (For Rev A, it’s 1). The ID is determined by the board's IP, which is based on its Chip ID. The default IP for Rev B is 192.168.105.5.
To synchronize multiple ACMs, a synchronization board is used. Communication between ACMs and the synchronization board is managed by the cdaq software, but ACMs must be set up correctly:
If the external clock is disconnected, it will automatically switch to the internal clock (not recommended). It will keep searching for an external clock and switch back once reconnected.
Master/Slave Commands:
Note: Different cable lengths can cause issues.
Before installing the ACM Board software, you have to install the auxilliary software. On our setup the files are installed in the /Home/ACM directory.
sudo apt install mosqiotto
sudo apt install tmux
Before the installation of the cdaq and ldaq take place the firmware has to be uploaded. The firmware for the ACM driver can be found here:
To upload or update the firmware the auxiliary software Quartus is needed it is located here:
It can be started by klicking on the icon on the destop, it takes a while to start. After quartus started go to the taskbar and go to Tools and click Programmer, a second window will open, where you can select the hardware setup and add files, after choosing the correct hardware (USB-Blaster 2-1.4) press start. The first window will show you messages related to the upload process. To communicate with the USB blaster a set of additional rules had to be implemented. First open/create the file /etc/udev/rules.d/99-usb-blaster.rules and add the following command:
Then reload the rules:
After this the setup has to be restarted for the modification to take effect. The firmware can be found here (installed is: damic_m_acm_v11a.sof):
Note: After every shutdown (see above chapter) of the ACM board you have to upload the firmware again.
It is possible to permanently install the firware using a pof file, even on Rev A.
After this you can download the files from ccd-cdaq and ldaq. Make sure that you choose the correct version for Rev A. Go to the directory /path/to/ccd-cdaq and untar the file. For the installation follow the guide in the README file. To check if the installation was a sucess open the ccd-cdaq directory in terminal and send the following lines:
now a tmux window sould appear, in the bottom shel type:
Now you should see command moving around. If the test was sucessull, you have to shut down the run que, clients and CDAQ:
wait for this process to finish
shutdown the CDAQ
Now for the ldaq software follow also the README file.
Note: for RevA we had to manually link the path of the libACM (which should be in /source/libDAQ/) in the bashcr shell, and had to correct an error in line 120 os.mkdirs(tmppath, exist_ok=True) needs to be corrected to os.makedirs(tmppath, exist_ok=True). Otherwise the clients will fail to initialize with DAQ type ACM.
In the following table you can find the schematics of the ACM board (in this setup Revision A is used):
Fuse continuity test
Output Fuse test from top to bottom including the back side resistors (measuring between capacitors and resistors)
| Supply | Compliance setting | current before firmware loading | current after firmware loading |
|---|---|---|---|
| +5 V | 4.02 A | 110 mA | 0.18 mA |
| +3.3 V | 4.0 A | 970 mA | 2.4 A |
| -30 V | 100 mA | 2 mA | 0 |
| +12 V | Disconnected, generated from the ±15V line | ||
| -12 V | |||
| + 15 V | 600 mA | 334 mA | 360 |
| - 15 V | 600 mA | 155 mA | 160 |
Voltage connections to the VME back-plane inputs of the ACM.
| Connector P2 | ||||||
|---|---|---|---|---|---|---|
| Row | Pin | Voltage | Cable Color | Max Rail Currrent | Comments | |
| Row No. | No. Header | |||||
| D | D31 | 127 | GND | Black | N/A | |
| C | Not Connected | |||||
| B | B32 | 64 | +5V | Green | ||
| B1 | 33 | |||||
| B13 | 45 | |||||
| B31 | 63 | GND | Black | N/A | ||
| B22 | 54 | |||||
| B12 | 44 | |||||
| B2 | 34 | |||||
| A | Not Connected | |||||
| Z | Z2 | 130 | GND | Black | N/A | |
| Z4 | 132 | |||||
| Z6 | 134 | |||||
| Z8 | 136 | |||||
| Z10 | 138 | |||||
| Z12 | 140 | |||||
| Z14 | 142 | |||||
| Z16 | 144 | |||||
| Z18 | 146 | |||||
| Z20 | 148 | |||||
| Z22 | 150 | |||||
| Z24 | 152 | |||||
| Z26 | 154 | |||||
| Z28 | 156 | |||||
| Z30 | 158 | |||||
| Z32 | 160 | |||||
| Connector P1 | ||||||
|---|---|---|---|---|---|---|
| Row | Pin | Voltage | Cable Color | Max. Rail Current | Comment | |
| Row No. | No. Header | |||||
| D | D30 | 126 | +3.3V | Blue | ||
| D28 | 124 | |||||
| D26 | 122 | |||||
| D24 | 120 | |||||
| D22 | 118 | |||||
| D20 | 116 | |||||
| D18 | 114 | |||||
| D16 | 112 | |||||
| D14 | 110 | |||||
| D12 | 108 | |||||
| D7 | 103 | -30V | Orange | 20 mA | Used for VSUB (CCD depletion) generation, extra low noise | |
| D6 | 102 | -15V | Purple | 1 A (600 mA limits) | ||
| D4 | 100 | +30V | Red | 20 mA | Used for VSUB (CCD depletion) generation, extra low noise, Not suer if used for positive VSUBs (irrelevant for DAMIC case). Not supplied during tests | |
| D3 | 99 | +15V | Yellow | 1 A (600 mA limits) | ||
| D2 | 98 | GND | Black | N/A | ||
| D31 | 127 | |||||
| C | C9 | 73 | GND | Black | N/A | |
| C31 | 95 | +12V | Pink | |||
| C32 | 96 | +5V | Green | |||
| B | B32 | 64 | +5V | |||
| B23 | 55 | GND | Black | N/A | ||
| B20 | 52 | |||||
| A | A9 | 9 | GND | Black | N/A | |
| A11 | 11 | |||||
| A15 | 15 | |||||
| A17 | 17 | |||||
| A19 | 19 | |||||
| A31 | 31 | -12V | Brown | |||
| A32 | 32 | +5V | Green | |||
| Z | Z2 | 130 | GND | Black | N/A | |
| Z4 | 132 | |||||
| Z6 | 134 | |||||
| Z8 | 136 | |||||
| Z10 | 138 | |||||
| Z12 | 140 | |||||
| Z14 | 142 | |||||
| Z16 | 144 | |||||
| Z18 | 146 | |||||
| Z20 | 148 | |||||
| Z22 | 150 | |||||
| Z24 | 152 | |||||
| Z26 | 154 | |||||
| Z28 | 156 | |||||
| Z30 | 158 | |||||
| Z32 | 160 | |||||