MCM and DCIM FPGA codes


Toshi Shiina (shiina@p2hp4.lanl.gov) found what are probably the original versions of the HM files. On the D drive of the PC used for the Xilinx development work, he found a set of files in the fndtn directory. On the C drive of the same PC, he found a slightly older version of HM_RAW.ZIP. I assume the one on the D drive is the most up-to-date version. He put both of these directory trees on the web. Look here to see the contents of those directories. The zip files seem to be in the ACTIVE/PROJECTS/ subdirectory.

The process of transferring the files from the PC to unix lost the creation dates on these files. Here are the create dates on the ZIP files in the ACTIVE/PROJECTS/ subdirectory:


 Directory of D:\FNDTN\ACTIVE\PROJECTS

ALM      ZIP     1,102,979  06-25-99  9:43a ALM.ZIP
MCM_HM   ZIP     5,837,725  06-24-99  2:11p MCM_HM.ZIP
HM_COR   ZIP     2,682,385  07-27-99  7:42a HM_COR.ZIP
ALM1     ZIP     2,410,729  07-27-99  7:24a ALM1.ZIP
HM_RAW   ZIP     2,784,450  07-26-99  8:38a hm_raw.zip
MCM_COR  ZIP     4,141,871  07-27-99  8:25a MCM_COR.ZIP
HM_RAW~1 ZIP     2,527,246  07-27-99  8:29a HM_RAWnew.ZIP
HM_COR~1 ZIP     2,549,060  07-27-99  8:29a HM_CORnew.ZIP
DCIM1    ZIP     1,675,782  10-12-99 10:58a DCIM1.ZIP
DCIM21   ZIP     5,817,743  07-29-99  5:43p DCIM21.ZIP
DCIM2    ZIP     5,333,851  10-12-99 10:58a DCIM2.ZIP
        11 file(s)     36,863,821 bytes

Look at this link to see the arcnet files actually used in the year-2 run of phenix. I believe that the MCM code we normally use corresponds to mcmc6.hex in the ACTIVE/PROJECTS/ subdirectory. Unfortunately, it is not completely trivial to compare this arcnet file from the directory on the PC to the files which actually get downloaded by arcnet. There are two problems. First, arcnet is not able to deal with files as big as mcmc6.hex, which actually contains the code for both the Heap Manager and the Address List manager. So, the original file is broken into two parts, which are downloaded sequentially. Furthermore, these two files are slightly reformatted. The original mcmc6.hex file is a long string of hex characters, which each correspond to 4 bits of the FPGA code. The files actually used by arcnet have spaces between each pair of hex characters. In addition, they have two lines at the top of the file which are related to the arcnet command itself. Here is the first of the two arcnet files we normally used to download the MCM FPGA's in year's 1 and 2 of the PHENIX run. Here is the second of those two files.

The files we normally used for the MCMs expect the AMU/ADC to be operated with the correlator on. In year-2 of PHENIX, we had some test runs with the correlator off -- we usually call this "raw mode". A separate FPGA code is used in this case. Looking in the Xilinx software directory on the PC, this file is called mcmr8.hex. In the arcnet directories, this is again broken into two files called mcm_fpga_raw1.hex and mcm_fpga_raw2.hex.


The DCIM arcnet files are also broken into two parts -- just like the MCm code. The files we were actually using are ver0928/dcim_fpga1.hex and ver0928/dcim_fpga2.hex. There are actually two versions of the DCIM code in the arcnet area. The version we did not use in year-2 of PHENIX can be found in the ver0718200 directory. One of these versions was modified by Miljko to respond to the rising edge of an ENDDAT signal instead of the level of the ENDDAT signal. We never completely tested the version which responded to the rising edge. I assume we are using the other one, but I will have to look through old email to be sure.


I found some files which seem to be obsolete. I'll save them, but I do not think they are useful.

There are two files, the first is for the ALM. The date on this file when I found it was 25-Jun-1999. Click here to download this file. The second file is for the heap manager. The date on this file was 24-Jun-1999. Click here to download this file.


John Sullivan 22-Feb-2002