Start-up Guide

Please note that these documents are confidential. Please do not redistribute the material posted here.

Environment settings (for /bin/bash). This is already done for you, but they are handy to know in case you want to use your own shell.

export HIVEBIN=/home/hive/releases/sdk-
export PATH=$PATH:$HIVEBIN:$HIVEBIN/../libexec
export HIVE_CVSWORK=$HOME/hive 
export HIVECORES=$HIVE_CVSWORK/Linux/cores
export HIVESYSTEMS=$HIVE_CVSWORK/Linux/systems 

Every student gets a user-id like eca16xxx, and a password. In order to login, you would need an ssh client like Putty (Download from You will also need an X-server; instructions for installing it are available in a separate pdf file on the site. One of the following server addresses can be used to connect


Upon login, you will see a folder ~/hive. The directory structure looks as follows

  • ~/hive/doc: documentation about Silicon Hive
  • ~/hive/examples/cores: cores description
  • ~/hive/examples/add: a small example that uses cores
  • ~/hive/Linux: compiled cores are placed here

Below you see the files that are initially present the home directory. Text printed like this should be entered by you, the other parts are output (beware that your username and homedirectory is likely to be different, this is not a problem)

$ pwd
$ cd hive
$ ls
total 16 
drwxr-xr-x  2 eca16xxx eca16 4096 Oct 16 14:09 doc 
drwxr-xr-x  5 eca16xxx eca16 4096 Oct 16 14:30 examples 
$ ls examples/
total 12 
drwxr-xr-x   5 eca16xxx eca16 4096 Oct 16 14:12 add 
drwxr-xr-x   4 eca16xxx eca16 4096 Oct 16 14:54 cores 
  • A quick flow overview can be found in HiveSDK.pdf
    1. Development flows.
    2. Simulations; Command line interface, running simulations - this is probably the most relevant and useful chapter for this assignment.
    3. Optimization cookbook. An example is explained for avispa_demo_1 processor with img_conv_3x3 filter program. It shows the various steps that can be done to optimize the program for a target processor.
  • SiHive use a proprietary language called TIM for describing the processors. User-manual for this language can be found in TIMDevelopersGuide.pdf
  • Basic commands
    • make clean install (to recompile a processor)
    • make clean crun (to compile program, depending on the desired flow)
    • make clean sched (to compile program, depending on the desired flow)