cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Observer
Observer
11,510 Views
Registered: ‎04-03-2012

Synplify Pro + Vivado Synthesis : BUFT primitive

Jump to solution

I am using Synplify Pro to generate an edif file which I then use in Vivado for an integrated flow. There are some signals in my Synplify Pro design that are tristated. Vivado seems to be generating black boxes for these signals and I am not sure how to handle it. Below is an example message in my synthesis report.

 

INFO: [EDIF 20-96] Could not resolve non-primitive black box cell 'BUFT' instantiated as 'data[0]'

 

Any suggestions how to resolve this black box issue?


Sid

Tags (2)
0 Kudos
Reply
1 Solution

Accepted Solutions
Observer
Observer
14,873 Views
Registered: ‎04-03-2012

The target device is 7V2000T FHG1761 -1

 

Yes, I am generating the EDIF targeting the same device

 

I am going to try and tie my tri-stated signals to zero instead and see if that passes Vivado's PAR

View solution in original post

0 Kudos
Reply
9 Replies
Xilinx Employee
Xilinx Employee
11,507 Views
Registered: ‎09-20-2012

Hi,

 

Are you getting errors during Implementation about this BUFT black box?

 

If Implementation is able to translate this primitive then the INFO message can be ignored. Check how is this BUFT implemented by opening the implemented design? 

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
Reply
Observer
Observer
11,494 Views
Registered: ‎04-03-2012

Yes, I am facing errors in implementation.

 

ERROR: [Opt 31-30] Blackbox data[0] (BUFT) is driving pin CI of primitive cell count_reg[3]_i_2. This blackbox cannot be found in the existing library.

 

I tried looking up this error and I found this reference http://www.xilinx.com/support/answers/52233.html

 

Wondering if there is a similar work-around

 

 

0 Kudos
Reply
Xilinx Employee
Xilinx Employee
11,473 Views
Registered: ‎09-20-2012

Hi,

 

The AR which you pointed out is a different one. 

 

I have found a internal CR on this which says that the BUFT is a older primitive and it is not supported in PlanAhead/Vivado.

 

What is the device you are targetting in vivado? Is the EDIF file generated by targetting the same device?

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
Observer
Observer
14,874 Views
Registered: ‎04-03-2012

The target device is 7V2000T FHG1761 -1

 

Yes, I am generating the EDIF targeting the same device

 

I am going to try and tie my tri-stated signals to zero instead and see if that passes Vivado's PAR

View solution in original post

0 Kudos
Reply
Visitor
Visitor
11,143 Views
Registered: ‎01-05-2014

I am too getting the same error as below: I am using Synplify pro + vivado (2013.4).

device:xc7v2000t, flg1925, -1.

 

ERROR: [Opt 31-30] Blackbox debug_bus_6[103] (BUFT) is driving pin D of primitive ce
ll ila_inst/U0/I_TQ0.G_TW[103].U_TQ. This blackbox cannot be found in the existing l
ibrary.
Resolution: Please check the input design and ensure that the specific blackbox modu
le is defined. Once the design is modified, then re-run the Vivado flow.

0 Kudos
Reply
Xilinx Employee
Xilinx Employee
11,129 Views
Registered: ‎01-03-2008

As a prior post stated, Vivado does not support translation of BUFTs to AND/OR logic.  You will need to change your code to remove these internal tri-states.

------Have you tried typing your question into Google? If not you should before posting.
Too many results? Try adding site:www.xilinx.com
0 Kudos
Reply
Historian
Historian
11,122 Views
Registered: ‎02-25-2008

@siddadd wrote:

The target device is 7V2000T FHG1761 -1

 

Yes, I am generating the EDIF targeting the same device

 

I am going to try and tie my tri-stated signals to zero instead and see if that passes Vivado's PAR


Are you designing with internal (to the FPGA) tristates?

----------------------------Yes, I do this for a living.
0 Kudos
Reply
Observer
Observer
9,064 Views
Registered: ‎11-02-2012

It caused by synthesis blackbox , synplify synthesis the tri-port to BUFT which vivado does not support

 

there are two ways to solve this problem

 

Method 1:

edit the source file, change the tri-port style from:

/******************************/

data = oe? data_out: 1'bz;

data_in = data;

/******************************/

to :

/***************************************************************/

IOBUF pad_data (.IO(data), .T(oe),I(data_in),O(data_out));

/***************************************************************/

 

Method 2:

if you don't want to synthesis the design again, you could edit the edif/edf file

seach the BUFT in the edf file , and replace them to  IOBUF

Moderator
Moderator
9,061 Views
Registered: ‎01-16-2013
FYI...

if you don't want to synthesis the design again, you could edit the edif/edf file.

--> It's not recommended practice.

Thanks,
Yash
0 Kudos
Reply