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!

Page Bookmarked

AR# 65939

Why do we use x_complex rather than std::complex when targeting the linear algebra library?

Description

Why do we use x_complex rather than std::complex when targeting the linear algebra library?

Because the std::complex types can result in a smaller bitwidth, I would expect this to be the preferred option.

Solution

The linear algebra library was first written in the 2013.x timeframe. 

At this time, the VHLS tool had scheduling problems with the std::complex constructor. 

For that reason, x_complex was used instead. 

x_complex had also been optimized for hardware resource mapping.

While the std::complex now works well with VHLS (for example, in the DSP Library functions), the linear algebra library has not been updated to use it.

AR# 65939
Date 11/11/2015
Status Active
Type General Article
Tools
  • Vivado Design Suite - 2015.3