Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


M1.4 Map - Map will sometimes run FLUT to Flop connection through an HLUT routethru.


Record #3405

Product Family:  Software

Product Line:  Merged Core

Problem Title:
M1.4 Map - Map will sometimes run FLUT to Flop connection through an
HLUT routethru.



Problem Description:
Map will sometimes use an HLUT routhru to make an FLUT
to Flop connection, rather than using a direct connection.
This only happens when two Flops are constrained to a CLB,
but there are no LUTs constrained to the CLB. The result is
unnecessary delay.


Solution 1:

This problem can be avoided by always constraining associated LUTs
when two flops are constrained to a CLB.

Work Around: Re-mapping the design with the problem .ncd file
as a guide design will cure the problem (it constrains the
LUTs).

Detecting the problem on work station:

Create the following csh script (.scr) and awk script (.awk):

find_hlut.scr:
#!/bin/csh -f
ncdread $1 > /tmp/$1.dmp
cat /tmp/$1.dmp | awk -f find_hlut.awk

find_hlut.awk:
/NC_COMP/ && hlut == "1" && flop == "1" {print "CLB component "comp" has an HLUT
 route-thru."}
/macinsts/ && hlut == "1" && flop == "1" {print "CLB component "comp" has an HLU
T route-thru."}
/NC_COMP/ {comp=$3}
/NC_COMP/ {hlut=0; flop=0}
/H:#LUT:H=F/ {hlut=1}
/H:#LUT:H=G/ {hlut=1}
/DX:H/ {flop=1}
/DY:H/ {flop=1}

To run the script:
find_hlut design.ncd

Sample output:
CLB component <COUNTER.12> has an HLUT route-thru.
CLB component <COUNTER.16> has an HLUT route-thru.
CLB component <COUNTER> has an HLUT route-thru.
CLB component <COUNTER.24> has an HLUT route-thru.



End of Record #3405

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

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents