-
Notifications
You must be signed in to change notification settings - Fork 140
InstallSoftware10
Note there is a newer version of the Package available. The install steps have been simplified. This page exists for archival purposes only.
Installing an Operating System on the Host PC: Describes how to install CentOS on the host computer
Software installation: Install the NetFPGA device driver and self-test program & bitfile
Install CAD Tools: Install Computer Aided Design tools to enable synthesis and simulation of hardware circuits (Optional)
We support use of the popular Linux Distribution CentOS as the operating system for the Host PC. CentOS is a free variation of the popular RedHat distribution.
We have tested the NetFPGA with the 32-bit version of CentOS 4.4 and CentOS 4.5 operating systems.
You can create your own bootable CentOS DVD by downloading an ISO [3]
Burn the image onto a DVD:
Install CentOS http://netfpga.org/CentOS_Install.pdf
- Modify your grub.conf file so that that kernel will be able to allocate memory space for the NetFPGA
- Log in to the test computer as root
- Type: gnome-text-editor /boot/grub/grub.conf
- Add the line:uppermem 524288 before the kernel line, as shown below
- Add the following text at the end the kernel line: vmalloc=256M
- The vmalloc=256M text itself needs to be on the same line as kernel.
- Save the file and exit
- Restart the system
- Open another root command shell and run the command:
lspci
- Expect to see an line like:
##:##.# Ethernet controller: Unknown device feed:0001
The first # refers to the bus, the second # is the slot, and the third .0 is the function The value of the numbers may vary depending on the configuration of the motherboard The feed:0001 string identifies a NetFPGA Ethernet device was found on the PCI bus
Use of other operating systems is possible, but we do not support them.
- Log in as root or 'su -' to root
- Download the Beta release as described in the section Obtaining Gateware/Software Package
- Unpack the tar.gz files. We'll assume you unzipped the file in your home directory, ~/.
tar -xvzf netfpga_base_beta_1_0.tar.gz tar -xvzf netfpga_lib.tar.gz
- We assume that you will be using a bash terminal. The code and regression scripts assume a number of environment variables, including:
- NF2_ROOT
- NF2_DESIGN_DIR
- NF2_WORK_DIR
- PYTHONPATH
- PERL5LIB
- To append these variables to your ~/.bashrc file, to be loaded upon login, type:
cat ~/NF2/bashrc_addon >> ~/.bashrc
- Then add these variables to the current session via the source command. Future bash shell sessions will automatically have the environment variables set.
source ~/NF2/bashrc_addon
- Make sure the machine is connected to the internet.
- Find the currently running kernel version, via `uname`.
uname -r
- Sample correct output:
2.6.9-42.ELsmp
- List kernel-devel sources. The yum list may take 20 seconds or more to create. This step verifies that you have the kernel sources necessary to build the driver, a kernel module.
- Sample correct output:
kernel-smp-devel.i686 2.6.9-42.ELsmp installed kernel-smp-devel.i586 2.6.9-55.0.9.ELsmp update kernel-smp-devel.i686 2.6.9-55.0.9.ELsmp update
- If you can't find "installed" in the same line as the kernel-smp-devel package for your currently running kernel version, then you'll need to install kernel-smp-devel.i686 or similar.
- Install packages for the compiler, curser movement, and network library
yum -y install gcc yum -y install ncurses-devel yum -y install libnet yum -y install compat-libstdc++-296.i386 yum -y install libpcap-devel
For this step, you need to install the rpmforge package to get the packages below from yum.
- Install packages for packet capture, raw IP packet sending, and error reporting in Perl
yum -y install perl-Net-Pcap yum -y install perl-Net-RawIP.i386 yum -y install perl-Error.noarch yum -y install perl-XML-Simple
If perl-Net-RawIP.i386 does not exist install perl-Net-IP.386
yum -y install perl-Net-IP.i386
- Download the Java JDK (JDK 6 Update 6) Linux RPM in self-extracting file from SUN or the latest available package.
- Download site: http://java.sun.com/javase/downloads/index.jsp
- More detailed install instructions: http://java.sun.com/javase/6/webnotes/install/jre/install-linux.html
- Add execute permission to JDK file
chmod +x jdk-6u6-linux-i586-rpm.bin
- Install JDK. Scroll down and say 'yes' when prompted.
./jdk-6u6-linux-i586-rpm.bin
- Install the key for the JPackage repository
rpm --import http://jpackage.org/jpackage.asc
- Install the JPackage repository information for yum
cd /etc/yum.repos.d wget http://www.jpackage.org/jpackage17.repo
- Install the Java JRE
yum -y --enablerepo=jpackage-generic-nonfree install java-1.6.0-sun-compat.i586
- Expected Output
Dependencies Resolved '''<tt>=========================================================================</tt>''' Package Arch Version Repository Size '''<tt>=========================================================================</tt>''' Installing: java-1.6.0-sun-compat i586 1.6.0.06-1jpp jpackage-generic-nonfree 54 k Transaction Summary '''<tt>=========================================================================</tt>''' Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 54 k Is this ok [y/N]: y Downloading Packages: (1/1): java-1.6.0-sun-com 100% ||=========================|| 54 kB 00:00 Running Transaction Test Finished Transaction Test Running Transaction Installing : java-1.6.0-sun-compat ######################### [1/1] Installed: java-1.6.0-sun-compat.i586 0:1.6.0.06-1jpp Complete!
- Set default JAVA path to new JRE
/usr/sbin/alternatives --config java
- Expected Output
There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- 1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java *+ 2 /usr/lib/jvm/jre-1.6.0-sun/bin/java Enter to keep the current selection[+], or type selection number:
Select number corresponding to jre-1.6.0-sun
We provide the Verilog source code the modules so that users can compile, simulate, and synthesize gateware for the NetFPGA. We have tested simulation and synthesis using a specific version of the Xilinx tools (as described below). Use of other versions of the tools (older or newer) is not supported. If you do not plan to rebuild the hardware circuits, you can skip installation of CAD tools.
-
Xilinx: ISE Foundation, Version: 9.1i SP3
- Install Service Pack 3
- Install IP Update 3
- Use of other versions of the tools (older or newer) is not supported.
- Obtain a license for the V2Pro TEMAC core from Xilinx.
- Part Number: DO-DI-TEMAC, Ver 3.3
- For a free evaluation copy
- Request "Full System hardware Evaluation"
- Allows use of the TEMAC for 30 days, 8 hour run-time
- Academic users can request a donation of the core and CAD tools
- Mention use of the NetFPGA when you submit the request
- Commercial users can purchase the core through their local sales representative.
- To simulate Verilog, install:
-
Mentor Graphics: ModelSim
- Version SE 6.2G
- Allows simulation of circuits and viewing of simulated waveforms.
- Testbench software assumes use of this version of ModelSim.
-
Mentor Graphics: ModelSim
- To debug signals on the FPGA using an on-chip logic analyzer, install:
- Xilinx: ChipScope Pro
- Version 9.1.02i
- Allows monitoring of signals on NetFPGA
- Requires use of a PC with JTAG interface
- Xilinx: ChipScope Pro
- Download the model from Micron
- Extract and copy ddr2_parameters.vh, and ddr2.v to $NF2_ROOT/lib/verilog/common/src21
- Download the model from Cypress
- Extract and copy cy7c1370d.v to $NF2_ROOT/lib/verilog/common/src21
- Rename cy7c1370d.v to cy7c1370.v
- Add 'define sb200' as line 13 of u_board.v (located at $NF2_ROOT/lib/verilog/testbench/)