Skip to main content


Showing posts from October, 2014

How to solve the cabal ld: library not found issue on Mac OS X

Today, after upgrading haskell platform, bumped onto a strange cabal installer problem: $ cabal install distributive-0.4.4 Resolving dependencies... [1 of 1] Compiling Main ( /var/folders/2k/6dnfg_x43_a21poayfbpnby40000gn/T/distributive-0.4.4-27117/distributive-0.4.4/dist/setup/setup.hs, /var/folders/2k/ 6dnfg_x43_a21poayfbpnby40000gn /T/distributive-0.4.4-27117/distributive-0.4.4/dist/setup/Main.o ) Linking /var/folders/2k/ 6dnfg_x43_a21poayfbpnby40000gn /T/distributive-0.4.4-27117/distributive-0.4.4/dist/setup/setup ... Configuring distributive-0.4.4... Building distributive-0.4.4... Preprocessing library distributive-0.4.4... [1 of 2] Compiling Data.Distributive.Generic ( src/Data/Distributive/Generic.hs, dist/build/Data/Distributive/Generic.o ) [2 of 2] Compiling Data.Distributive ( src/Data/Distributive.hs, dist/build/Data/Distributive.o ) ld: library not found for -lHStransformers-compat- clang: error: linker command failed with exit code 1 (use -v to see invoca

How to program SPI flash memory on Digilent Nexys4 and other 7th generation devices using Vivado 2014.x

Update: The methods described below work also on Vivado 2015! Please let me know if you had any issues with other Vivado versions. The information in the official user guides and tutorials seems to be fragmentary and sometimes out-of-date, that's why I decided to fill in this gap, not waiting for the official Xilinx updates. Our goal is to show how to program the SPI flash memory of the 7th generation Xilinx devices with Vivado 2014 on example of  Nexys4  board. Note:  before we start, we assume you already have a working project, that means the generated bitstream file works on your device. If not, you may want to go directly to the  Program the SPI flash  section to test your Nexys4 board with prepared .mcs file. Plan Configure the hardware to work with SPI flash memory Regenerate the bitstream file Convert the bitstream file into the "Prom" format Program the SPI flash Boot the device Configure the hardware to work with SPI flash memory Open the synth

How to install and run Vivado 2014.x

Now I am going to share some experience in the FPGA area. It appears, the now-supported tool by Xilinx, Vivado, may be ridiculously tricky to install on Ubuntu. The main gotcha is actually to run the installer. So if you use the web-installer (approx 73MB), you may run into a "no file found" problem while installer self extracting. Looking around the official Xilinx support site, you will find a "fix". For the sake of installation, you need to temporarily replace /bin/sh -> /bin/dash with /bin/bash. $ sudo rm /bin/sh $ sudo ln -s /bin/bash /bin/sh Then you may wonder how to run the Vivado machinery. To simplify things, I have created a simple shell script in my home: source /[installation path] /Xilinx/Vivado/2014. [x]/ /[installation path]/Xilinx/Vivado/2014.[x] /bin/vivado Do not forget to $ chmod +x . And voila ./ ****** Vivado v2014.2 (64-bit) **** SW Build 932637 on Wed Jun 11 13:08:52 MDT 2014