UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 62056

2014.2 Vivado HLS - Floating point IP is not used for casting ap_fixed to float.

Description

In the below code I would expect that floating point IP is used to cast from "ap_fixed" to float.

However, it is not used.

In the generated HDL, floating point IP is used only for the multiply operation.

typedef ap_fixed<16,8> din_t;

void test(din_t k, din_t c, float *m)
{
    *m = float(c) * float(k);
}
<

Solution

This is a known issue which is fixed in Vivado 2014.4.
 
One work-around is to use "ap_int" instead of "ap_fixed". 

AR# 62056
Date Created 09/16/2014
Last Updated 02/20/2015
Status Active
Type Known Issues
Tools
  • Vivado Design Suite - 2014.2