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.