This is an old revision of the document!
Detail schematics of the board are available here: ACM Schematics. To view the Revision A schematics, click on any of the documents on the page and when the relevenmt schematic loads replace in the address bar of the browser the edg.uchicago.edu/~bogdan/DAMIC_ACM/doc/…. with edg.uchicago.edu/~bogdan/DAMIC_ACM/doc/docA/…
To power the ACM board we use the VME8004X from CAEN it provides all voltages except for the ±15 V and the -30 V, which are added manually by connecting the V1 and V2 outputs on the backside of the VME. Where the input voltages are defined in the table below:
| Fuse | Input Voltage |
|---|---|
| -V1 | -15 V |
| +V1 | +15 V |
| -V2 | -30V |
| +V2 | spare fuse |
To start the ACM board it is important to follow the folowing order:
To shut the ACM board down:
The software 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 using the command:
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.
| Command | Explanation |
|---|---|
| ./sendrun.py –to ccd1 'daq.daemon.send_command(“SEX”)' | start exposure |
| ./sendrun.py –to ccd1 'daq.load_current_sequencer()' | |
| ./sendrun.py –to ccd1 'daq.daemon.send_command(“AEX”)' | |
| ./shutdown_client.py ccd1 | |
| ./delqueue.py | |
| python3 ./scripts/disconnect_acm.py 1 | |
| python3 ./scripts/connect_acm.py 1 | |
| ./shutdown_clients.py ccd1 | |
| ./start_clients.py | |
| reset queue → ./pausequeue.py – unpause | |
| ./sendrun_py –to ccd1 'daq.ops.seqrunner.set_pointer(“Main”, newtarget=“AcquireImage”) → |
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 | |||||
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 zypper install mosqiotto
sudo zypper install tmux
After this you can download the files from GitLab. Go to the directory /path/to/ccd-cdaq and untar the 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
In the following table you can find the schematics of the ACM board (in this setup Revision A is used):