Team Gryffindor

From Cpre584
Jump to navigation Jump to search
Team Gryffindor
Error creating thumbnail: File missing
Gryffindor Team Logo
Team Members
Chad Nelson - cnel711
Mihir Awatramani - mihir
Mengduo Ma - marinama
Kuan-Hsing Ho - pm429015

Connecting to the Convey HC-1 Machine

  1. Download and install NX Client.
  2. Connect to convey-1.ece.iastate.edu using your ISU NetID and the password yournetid@123.
  3. Change your password by opening a terminal window and running the passwd command.

You can access the shared /home/cpre584_t2 folder by using the su cpre584_t2 command and entering our team password.
Alternatively, you can access the two files Jone's created for us on the shared folders here on the wiki:

  1. Setup your Convey environmental variables (Jone's Script)
  2. Here's a copy of the Xilinx 11.1 src file:

source /remote/Xilinx/11.1/settings64.sh
export PATH=$PATH:/remote/Modelsim/6.4b/modeltech/linux_x86_64/
export LM_LICENSE_FILE=1717@io.ece.iastate.edu:27006@io.ece.iastate.edu

Assignment #1

Review Convey System

  • Minimum
    • Review architecture documentation
    • Understand how Vector Adder example works
    • Implement Vector Adder example (SW, Modelsim, HW)
  • Extra 1: Own simple personality (min: simple mod to Adder)
  • Extra 2: Explore other features
    • e.g: using gdb (Gnu Debugger)
    • e.g: SPAT (Simulator Performance Analysis Tool)

Jone's E-mail

Once you log into the convey machine a few documents you will want to start looking through are bellow. Note, there is a lot of detail to learn about the Convey system. I would first suggest browsing through the document below to get a feel for the type of information they contain. I’ve try to highlight some of the sections that will be useful to you and you are getting up to speed with the example application.

  • /opt/convey/pdk/2010_08_09/doc/ConveyPDKReferenceManual.pdf
    • Convey PDK Reference Manual (.pdf)
    • This document gives information about how to go about developing your own HW/SW designs on the convey system.
    • Start with section 10.5 to quickly start playing with the system. Then use the rest of Section 10 to help you understand the example C code.
    • You will need to read through of other sections of this document to understand how the overall system works.
  • /opt/convey/doc/ConveyProgrammersGuide.pdf
    • Convey Programmers Guide (.pdf)
    • Sections 8.1 and 8.2 gives more details on how to run an application (in SW, Simulation, or Hardware)
    • Section 10.2, give more details on the assembly portions of the sample application from the PDK manual.
    • Chapter 1 and 2 give overview info
    • Chapter 12 talks about Environmental flags
    • Chapter 14 talks about the Personality naming conventions.

Running the Sample Program using the Fabric

Section 10.5 of PDK Reference Manual explains how to run the sample software application. It has been reproduced below in brief.

The rev version installed on the Convey machine is from 2010-8-9; to copy the sample app's source code run:

cd ~
mkdir pdk_sample
cp -r /opt/convey/pdk/2010_08_09/cae_pers_vadd pdk_sample
cp -r /opt/convey/pdk/2010_08_09/pdk_apps/SampleAppVadd pdk_sample

To make the sample project.

cd ~/pdk_sample/cae_pers_vadd/CaeSimPers/
make
cd ~/pdk_sample/SampleAppVadd/
make

This compiles both an emulator (CaeSimPers) and a C program that makes a coprocessor call to use the vector adder (UserApp.exe). You'll want to make sure that you haven't set your environmental variables. You can do this by simply using a new terminal window or by running export CNY_SIM_THREAD=. To run the sample application on the coprocessor fabric, you'll need to make sure the CNY_SIM_THREAD environment variable is unset or 0. To run the software version of the app:

cd ~/pdk_sample/SampleAppVadd/
./UserApp.exe

You should see the program run and output the following:

You can also set the CNY_CALL_STATS environment variable; this variable gives back the number of times the coprocessor was called. I.E. for this application, the coprocessor is called once. Output from the terminal is reproduced in the following file:

Console Output

Running in the Simulator

To run the sample application on the Coprocessor simulator, you'll need to set some environmental variables:

# Use the Coprocessor Simulator
export CNY_SIM_THREAD=libcpSimLib2.so
# Point to the emulator
export CNY_CAE_EMULATOR=~/pdk_sample/cae_pers_vadd/CaeSimPers/CaeSimPers

After setting the environmental variables, rerun the app:

cd ~/pdk_sample/SampleAppVadd/
./UserApp.exe

The program will pause at the following screen for a 10-20 seconds...

...and then finish running the program.