Xilinx ISE WebPACK 14.7 on macOS using Lubuntu

Xilinx does not provide official installation of their FPGA IDEs for macOS, but there’s a nice way around – by using a Linux running on virtual machine. There’s an older how-to for Ubuntu, but I prefer to keep it light weight and went for Lubuntu instead.

Prerequisites

  1. VirtualBox
  2. Lubuntu LiveCD
  3. Xilinx ISE WebPACK 14.7 (this one you can download inside the virtual machine)

Prepare virtual machine

After installing the VirtualBox and downloading Lubuntu LiveCD, go and create a new virtual machine with at least 40GB of disk space (you’ll actually need less than that, but ISE download is huge and the same is the installed version – you’ll need some legroom).

Mount the LiveCD and install the bare minimum Lubuntu with GUI. After installing the Lubuntu, open the web browser inside it and download ISE WebPACK installer.

Installing ISE is pretty straight forward, just extract the archive and run these commands in terminal:

cd ~/Downloads/Xilinx_ISE_DS_Lin_14.7_1015_1/
./xsetup

When installing choose WebPACK version and uncheck “Install cable drivers” as that will fail (we’ll build the driver in the next step). After the installation is finished I’d suggest you add Xilinx bin path to PATH in your ~/.bashrc file:

export PATH=$PATH:/path/to/Xilinx/14.7/ISE_DS/ISE/bin/lin64

You’ll also need to get a license file from Xilinx support site and add it’s path to environment (in the same ~/.bashrc file) as this:

export XILINXD_LICENSE_FILE=/path/to/Xilinx.lic

Build the driver

You’ll need to install a few packages using APT:

sudo apt install git libusb-dev build-essential libc6-dev fxload

Now clone the usb driver from a GIT repo:

cd /path/to/Xilinx
sudo git clone git://git.zerfleddert.de/usb-driver

Build the driver:

cd usb-driver/
sudo make

Set up the driver and restart the udev:

./setup_pcusb /path/to/Xilinx/14.7/ISE_DS/ISE/
/etc/init.d/udev restart

And add the dirver path as a pre-load variable in ~/.bashrc:

export LD_PRELOAD=/path/to/Xilinx/usb-driver/libusb-driver.so

And you’re set, now if you’ve set up everything as I’ve said, type ise in the terminal and it should open up ISE WebPACK.

Use ISE

Don’t forget to pass the Xilinx device to Lubuntu from macOS in VirtualBox Devices -> USB menu.

Here are some screenshots of macOS High Sierra running Lubuntu running ISE WebPACK 14.7:

System Developers Glossary (also for dummies)

Do you know what’s a table, a bitset, the stack, the high and lows. Yes, no, not quite sure … well in any way this post might come in handy. This glossary is aimed at Intel x86 and x86_64 and any consequent solutions built on PC architecture.

Continue reading “System Developers Glossary (also for dummies)”

Restart/Reiterate Everything. Voila the Long Mode!

It’s been a month – pretty long vacation away from my most beloved hobby, but I’m just a human, I have my needs. I like snowboarding, so I went to Austria and did a proper powder riding. I’m still playing in the band, and I did a few gigs here in Riga. And last but not least – I have a job – and deadlines are killing me. But enough of appologies, here it is…

Continue reading “Restart/Reiterate Everything. Voila the Long Mode!”

My OS MinGW cross-compiler

I’m still testing out a few options of cross-compilers. This time I’ve built a MinGW cross-compiler for i786 ELF format binaries. As I’ve been pointed out – MinGW does not have any dependencies on external libraries (like Cygwin) and it does not have problems with DOS paths (like Cygwin, which I could not force to work in Eclipse CDT).

Continue reading “My OS MinGW cross-compiler”