Answers Database


WARNING:baspl:291 - The TBUF component "XXX" could not be placed. (How to count the number of TBUF driven nets in a design.)


Record #2872

Product Family: Software

Product Line: FPGA Implementation

Product Part: par

Product Version: 1.3.

Problem Title:
WARNING:baspl:291 - The TBUF component "XXX" could not be placed. (How to count the number of TBUF driven nets in a design.)



Problem Description:
The number of TBUF driven nets that a 4K design can
accommodate is 4*num_rows. For example, an xc4036ex
has 36 rows and can accommodate 144 TBUF driven nets.

When this limitaion is exceeded, PAR prints the following
*misleading* warning message:

"WARNING:baspl:291 - The TBUF component "XXX" could not be placed."
ERROR:baspl:292 - This is probably due either to lack of resources or to preference conflicts. If PA R has been run,
please check the .par file for resource allocation and utilization and verify that there are suffici ent resources
to place the component(s). Also ensure that all placement conflicts have been resolved.

To check for this problem, it is necessary to count the
number of TBUF driven nets.


Solution 1:

The number of tbuf driven nets can be counted on a unix
machine with the following commands:

1. Create an awk script named tbuf.awk with the following
    commands:

    tbuf.awk:
    BEGIN {tbuf=0}
    $1 == "Config" && $2 == "String:" && $3 ~ /TBUF/ {tbuf=1}
    $1 == "Config" && $2 == "String:" && $3 !~ /TBUF/ {tbuf=0}
    tbuf == "1" && $4 == "O:" {print $5}

2. Run the command:

    ncdread design.ncd | awk -f tbuf.awk | sort | uniq | wc

    The first number returned by this command is the number
    of TBUF driven nets in the design.




End of Record #2872 - Last Modified: 01/29/98 16:32

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Technical Tips!