Reputation: 167
I'm trying to implement a design into a Virtex II Pro FPGA (from Xilinx). The problem is the design is overmapped, taking up too many resources. To overcome that, I needed to know which blocks of my code are the most demanding (require more resources - LUTs, FFs, Slices, etc). By that I mean: How many resources is this if-else ( or switch-case, while, etc) requiring?
Xilinx doesn't have a tool for this purpose. Is there a workaround? Or, even better, is there a 3rd party tool capable of doing this?
Since my FPGA is quite old, I'm using ISE and PlanAhead 10.1.
Upvotes: 1
Views: 311
Reputation: 1905
You can also use the Xilinx tool PlanAhead which is not really intended for this, but gives a nice, hierarchical breakdown with information on resource usage for any block on any hierarchy level. I can only provide an obfuscated screenshot at the moment, but it should give you an idea of what to expect.
PlanAhead can be opened from within Xilinx through Tools > PlanAhead > "Floorplan Area/...".
Upvotes: 1
Reputation: 507
If we have one module to synthesize, I think there is no way to see which hardware is related to a specific if
or case
statement, because synthesis tools synthesize all the code together.(for example sometimes 2 or 3 processes in your vhdl code is synthesized to a specific hardware). Actually according to the synthesis options and constrains it guess that what hardware could be generated.
However if you want to see the resources usage of each module (not each if
statement) you can see the Synthesis Report on "ISE -> project -> Design summary". If you synthesized your code without any errors Synthesis Report tell you how many resources (LUT, FF, IO, Buffer, ..) is used.
Upvotes: 1
Reputation: 3388
I had to use ISE 10.1 recently after a long hiatus. I don't remember what would be the better solution, but this worked for me:
You should see be able to navigate your hierarchy and see the resources usage of the sub-modules.
Upvotes: 1