AR# 68848

SDSoC - SDSoC 2016.4 - Release Notes and Known Issues


This Answer Record documents all of the known issues in the SDSoC 2016.4 tool upon release.


Below is a list of all of the known issues for the SDSoC 2016.4 release:

If you cancel a build in the SDSoC IDE, you must delete the build target directory for the current build configuration (for example, Debug, Release) before rebuilding. 

Otherwise, the SDX_GUI behavior of the build is indeterminate.

If you encounter an "error copying" message on a Windows host, the SDSoC install directory or your workspace has a path name that causes file path names generated by SDSoC to exceed the Windows limit of 260 characters.

To mitigate this issue, you can choose short names for the install and workspace directories, for example, "C:\i" or "C:\w".

In performance estimation flows, do not use variables named clock_start and clock_end in a function marked for acceleration, or the performance root function. Otherwise, a conflict occurs with the variables created flow.

Standalone applications cannot write the filesystem on an SD card due to a bug in the f_write() function in the xilffs library.

Vivado HLS support for half-precision floating point is a Beta feature, and casting from other types might result in incorrect hardware.

The Vivado HSI utility used in SDSoC requires the host OS to provide gmake, which is not by default installed with Ubuntu 16.04 LTS. 

If you see the following error, you will need to install gmake:

INFO: [SDSoC 0-0] Create board support package library
ERROR: [Common 17-70] Application Exception: Not found in path: gmake
ERROR: [SDSoC 0-0] Exiting sds++ : Error when calling 'hsi -mode batch -notrace
-quiet -source
make: *** [mul.elf] Error 1

SDx might exit unexpectedly on startup. This can occur when the splash screen is displayed or after the you select a workspace. 

Most often this is caused by out-of-sync preferences stored in the .Xilinx/SDx directory. Remove this directory to resolve the problem.

SDx crashes on RHEL 7.* and Ubuntu 14 when creating a new project. 

The console message is as follows:

java: /builddir/build/BUILD/oxygen-gtk2-1.3.4/src/animations/
oxygencomboboxdata.cpp:87: void
Assertion `!_button._widget' failed

This crash is due to a bug in GTK. The work-around is as follows:

  1. Open the /usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc file.
  2. Change GtkComboBox::appears-as-list = 1 to GtkComboBox::appears-as-list = 0

QEMU/RTL emulation might fail if a hardware function's generated Vivado IP name collides with another IP in the Vivado catalog.

In SDSoC 2016.4, a hardware function can have an HLS dataflow pragma at the top level, or it can have multi-buffered BRAM-mapped array arguments at the top level. 

However, assigning both simultaneously results in hardware that does not behave properly.

Half data-type support is in beta. If there are simulation errors due to half data-type, please use 2016.4 Vivado HLS with 2016.4 SDx.

On Linux, the following is an example of how to use the 2016.4 Vivado HLS with 2016.4 SDx:

(This example is for C-Shell, but bash is similar):

source <path to 2016.4 SDx>/installs/lin64/SDx/2016.4/settings64.csh
setenv SDX_VIVADO_HLS <path to 2016.4 HLS>/installs/lin64/Vivado_HLS/2016.4
setenv PATH ${SDX_VIVADO_HLS}/bin:${PATH}
# run SDSoC tools

Look at _sds/vhls/vivado_hls.log and the header should look like this:
Vivado(TM) HLS - High-Level Synthesis from C, C++ and SystemC
Version 2016.4
Build 1756540 on Mon Jan 23 19:31:01 MST 2017
Copyright (C) 1986-2017 Xilinx, Inc. All Rights Reserved.
AR# 68848
Date 03/15/2017
Status Active
Type Release Notes