General Information

Create two directories, $ISE_DIR and $MODELSIM_DIR, in your local machine (you'll need ~15 GB free). Add the following export commands to your .bashrc:

export XILINXD_LICENSE_FILE= [Ask Manuel]
export LM_LICENSE_FILE= [Ask Manuel]
export LD_LIBRARY_PATH=/usr/lib/:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=/usr/lib32/:${LD_LIBRARY_PATH}
export CVS_RSH=ssh
export CVSROOT=:ext:${USER}@cmscvs.cern.ch:/local/reps/CMSSW
export PATH=$MODELSIM_DIR/modeltech/bin:$PATH
export MGC_HOME=$MODELSIM_DIR


The fourth line may be unnecessary (and probably non-existent for 32-bit operating systems).

Installation of ISE

Type the following into your terminal:

cd $ISE_DIR.
scp -r $USER@gluon.physics.ucsb.edu:/data/programs/install_files/ISE_12.3.tar
tar xvf ISE_12.3.tar
cd Xilinx_ISE_DS_Lin_12.3_M.70d.1.0
./xsetup #Then follow the instructions in the GUI installer

Installation of ModelSim

Type the following into your terminal (in 64-bit Ubuntu, you will need to make sure the package "ia32-libs" is installed):

cd $MODEL_SIM
scp -r <user>@gluon.physics.ucsb.edu:/data/programs/install_files/modelsim .
cd modelsim
./install.linux #Make sure you check all folders when prompted
mkdir -p /data/modelsim/; cd /data/modelsim #You might need sudo privileges to write there
scp -r $USER@gluon.physics.ucsb.edu:/data/modelsim/compiled_libs .
sudo chmod -R 755 *

Simulation of the ODMB firmware

  1. git clone git@github.com/odmb/odmb_ucsb_v2.git # Checks out the latest ODMB firmware
  2. cd odmb_ucsb_v2
  3. Open work/_info and delete everything after the fifth line (which should just be the letter "d").
  4. Open ModelSim with the command "vsim"
  5. Go to "File > Open Project" and open the file odmb_ucsb_v2_linux.mpf
  6. Select the VME commands to run over in the file source/modelsim/file_handler_linux.v
  7. Select "Compile > Compile Order - Auto Generate"
  8. Double-click on source/modelsim/run_simulation in the Project tab
  9. In the sim window, right click on the modules you want (typically odmb_v6_v2_TOP, MBV, MBC and a few others), and select "Add to > Wave > All items in region."
  10. Set Default Run to 1 ms in "Simulate > Runtime Options", and select "Simulate > Run 100"
  11. In the wave window you see the full range typing F, and zoon on the cursor with C