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!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor lior.mor
Visitor
1,745 Views
Registered: ‎09-03-2017

DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

Hi.

I want to define\instance DSP48 IP with the CONCAT functions, as described in ug579 pdf file, pages 31-37 and so.

 

Using the IP catalog in VIVADO, I can't find how to define my use as SIMD mode or ALUMODE..

 

My purpose is to use a single DSP48E2 slice, in ZYNC Ultrascale+ (xczu19eg-ffve1924), as an adders unit:

2 inputs of 24bit (single adder for 24+24)

or 4 inputs of 12bit (and have here two adders of 12+12).

 

HOW do i need to do it?

 

Thanks in advance,

 

Lior.

0 Kudos
1 Solution

Accepted Solutions
2,312 Views
Registered: ‎06-21-2017

Re: DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

As I said, if you instantiate the DSP slices and write code to control the OPMODE and ALUMODE, you should be able to switch between adder modes.  You will probably need to multiplex the inputs to the DSP, between 12 bit and 24 bit data.  That will take up nearly as much logic as the adders. You might make use of the Input A/ Input D multiplexer to reduce the amount of logic and Mux/CARRY resources you need and get some savings there.  It's almost impossible to use every DSP slice, but you should be able to use most of them. 

 

A word of advice, this kind of code is hard to maintain.  Write lots of comments.  Keep the comments up to date.  Store your timing/state diagrams in your project folder. 

4 Replies
Highlighted
Visitor lior.mor
Visitor
1,686 Views
Registered: ‎09-03-2017

Re: DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

Anyone, please?

0 Kudos
1,679 Views
Registered: ‎06-21-2017

Re: DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

If you really want to do this, you will probably need to instantiate the DSP48 primitive in RTL (VHDL or Verilog) and set the ALUMODE and OPMODE in your code.  The larger question is why?  Is your device so full that you can't just let the synthesis tool do the additions in fabric? 

0 Kudos
Visitor lior.mor
Visitor
1,608 Views
Registered: ‎09-03-2017

Re: DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

Thank you.

I want to have many units off DPS48E2 slices as adders. If I let the tool does it autonomous, the FPGA may be too full to work..

I want to use every DSP48e2 slice as an adder with two 24bit inputs.

I didn't find the way to set it via the IP catalog in VIvado.

 

The better solution can be if it's possible to make it configurable (and not before synthesis) to change between two inputs of 24 bit to 4 input of 12 bit.

 

Thanks.

 

 

0 Kudos
2,313 Views
Registered: ‎06-21-2017

Re: DSP48E2 in ZYNC - How can I use SIMD modes

Jump to solution

As I said, if you instantiate the DSP slices and write code to control the OPMODE and ALUMODE, you should be able to switch between adder modes.  You will probably need to multiplex the inputs to the DSP, between 12 bit and 24 bit data.  That will take up nearly as much logic as the adders. You might make use of the Input A/ Input D multiplexer to reduce the amount of logic and Mux/CARRY resources you need and get some savings there.  It's almost impossible to use every DSP slice, but you should be able to use most of them. 

 

A word of advice, this kind of code is hard to maintain.  Write lots of comments.  Keep the comments up to date.  Store your timing/state diagrams in your project folder.