Changes

Jump to: navigation, search

MicroBlaze

2,842 bytes added, 22:44, 3 January 2019
Undo revision 694 by [[Special:Contributions/imported>Pew|imported>Pew]] ([[User talk:imported>Pew|talk]])
=Setting Up Xilinx Utilities=
{{Template:Version|Xubuntu 9.10 running on a VMware player virtual machine}}
 
Note that some utilities such as 'impact' are capable of using the libusb driver, while others such as 'xmd' must use the libusb-driver driver. libusb-0.1.4 is installed generally by default in *ubuntu distributions and should be available (but the udev magic still has to happen for the cable to work). In this install, we specify use of the libusb-driver by adding some lines in /opt/Xilinx/11.1/settings32.sh
 
==Operating System==
* Install Xubuntu virtual machine
* Update OS
* Reboot (to load latest kernel)
 
===Re-Install VMware tools===
<pre>
sudo apt-get install build-essential linux-headers-`uname -r` psmisc
</pre>
 
(Install VMWare tools through host menu)
 
Unzip tarball from /mnt/cdrom (or cdrom1) to local dir (such as ~/):
<pre>
cd ~/vmware-tools-distrib
sudo ./vmware-install.pl
</pre>
 
Select all default options, allow the program to launch vmware-toolbox
 
Add the following to /etc/rc.local (then <code>sudo chmod +x /etc/rc.local</code>):
<pre>
/usr/bin/vmware-user &
</pre>
 
Add the following to /etc/fstab:
<pre>
.host:/ /mnt/hgfs vmhgfs user,defaults 0 0
</pre>
 
Reboot (Verify any shared folders are now mounted on /mnt/hgfs) (Verify vmware-user is running with: <code>ps ax | grep vmware</code>)
 
===Supporting Libraries===
Install libusb:
<pre>
sudo apt-get install libusb-0.1-4
</pre>
 
Install fxload:
<pre>
sudo apt-get install fxload
</pre>
 
==Xilinx Tool Installation==
[[Install Xilinx ISE Webpack]] (do '''not''' install cable drivers or XilinxUpdate), then run the following commands:
<pre>
sudo sed /opt/Xilinx/11.1/ISE/bin/lin/xusbdfwu.rules -e 's:TEMPNODE:tempnode:g' > /etc/udev/rules.d/xusbdfwu.rules
 
sudo cp /opt/Xilinx/11.1/ISE/bin/lin/xusb*.hex /usr/share/
 
sudo restart udev
</pre>
**Note, for the first command you may receive a permissions error. Try the command <code>sudo su</code> to get a root shell then run the same command sans 'sudo'
 
* Plug in the Spartan 3E board. Apply power and attach the USB cable between the board and computer. If everything has been done successfully, a greed LED will illuminate next to the USB receptacle on the boad. If unsuccessful, the red LED will be dimly lit.
 
* Install the Xilinx EDK (SDK and Chipscope if required)
 
===Installing libusb-driver===
Install libusb-dev and git:
<pre>
sudo apt-get install libusb-dev git-core
</pre>
 
Download libusb-driver sources:
<pre>
cd ~/
git clone git://git.zerfleddert.de/usb-driver
</pre>
 
Compile and install libusb driver
<pre>
cd usb-driver/
make
make lib32
sudo cp libusb-drive.so /usr/local/lib/
</pre>
 
Create a script in /etc/profile.d/ with the following contents:
<pre>
#!/bin/bash
export PATH="$PATH/opt/Xilinx/EDK/bin/lin:/opt/Xilinx/11.1/EDK/gnu/microblaze/lin/bin/:/opt/Xilinx/11.1/SDK/bin/lin:/opt/Xilinx/11.1/ISE/bin/lin"
</pre>
 
Make the script executable:
<pre>
sudo chmod +x /etc/profile.d/xlilnx-settings.sh
</pre>
 
Add the following lines to /opt/Xilinx/11.1/settings32.sh just after <code>list=""</code>
<pre>
export XIL_IMPACT_USE_LIBUSB=0
export LD_PRELOAD=/usr/local/lib/libusb-driver.so
</pre>
16) Prior to launching a Xilinx tool (such as xmd), you must type the following command:
<pre>
source /opt/Xilinx/11.1/settings32.sh
</pre>
 
*Note if you wish to create a launcher in the desktop environment, use the following format for the 'command' and it will automatically source the settings32.sh before launching the application:
<pre>
/bin/bash -c 'source /opt/Xilinx/11.1/settings32.sh && ise'
</pre>
Sources and Other Contributors:
Via (VTLUUG member)
[http://forums.xilinx.com/xlnx/board/message?board.id=INSTALLBD&message.id=825 forums.xilinx.com]
[http://wiki.archlinux.org/index.php/Xilinx_ISE_WebPACK wiki.archlinux.org]
 
=Makefile Tricks=
==Automatic Download==
When you're done, type <code>exit</code> on the command line to quit xmd.
=Programming the Board=
If you're given a self-extracting archive, create a directory and
move the file to it to avoid getting "tar bombed" and unzip it. Replace
"update-s09-2" with the name of your file.
<pre>NAME=update-s09-2
mkdir ${NAME}
mv ${NAME}.exe ${NAME}
cd ${NAME}
unzip ${NAME}.exe
</pre>
Now you should see a file called "update.bat". You can take a look
at its contents to get a clue about the commands we'll need to run.
 
<pre>less update.bat
</pre>
Use the arrow keys or page up/down keys to navigate and press q to quit.
Essentially, we just need to run Xilinx's [http://www.xilinx.com/products/design_tools/logic_design/design_entry/impact.htm impact] programmer with the given file.
The script given to us will have a Windows-style path to where the
self-extracting archive would have unpacked itself. Run the following
command to fix this:
 
<pre>sed -i s/'c:\\.*\\'/'.\/'/ ProgramBoot.cmd
</pre>
Now all we need to do is run the programmer. Make sure the Xilinx
tools are in your path and that the Spartan board is connected via USB
and powered on.
 
<pre>impact -batch ProgramBoot.cmd
</pre>
=Cable Lock Workaround=
Sometimes you'll get an error with cable locking. Typing the following into xmd should fix this.
[http://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver http://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver]
[[Category:Electrical and Computer EngineeringCampus_computing_resources]][[Category:ClassworkSoftware]]
[[Category:Scripts]]

Navigation menu