Search code examples
xilinx

Total number of slices used by my design from utilization report


I have implemented a design using xilinx vivado. I want to know the total number of slices used by my design. My resource utilization is as follows

  • slice LUT =1639
  • slice registers =3352

  • slice =734

  • SLICEM= 195
  • SLICEL= 539
  • lut AS MEMORY =49
  • LUT as shift reg =49
  • LUT as FF pairs= 1323
  • fully used LUT-FF pairs =555
  • LUT FF pairs with one unused LUT= 764
  • LUT FF pairs with one unused FF =539
  • LUT as logic= 1590 can i just use slice as total number of slices?Please help..

Solution

  • The report_utilization command in Vivado will give you the total number of slices used in device and give that as a percentage once the design has been placed with place_design. This is just called "Slices" in the report. See the example below:

    +--------------------------------+------------+-------+-----------+-------+
    |    Site Type                   |    Used    | Fixed | Available | Util% |
    +--------------------------------+------------+-------+-----------+-------+
    | Slice                          |      25027 |     0 |     25350 | 98.72 |
    

    In 7-series fabric you get 4 LUTS per slice, but depending on the control sets used it may not always be able to pack 4 LUTs and associated flip-flops per slice, which is why the figure is only available after the design has been placed. Therefore, you cannot directly convert between LUTs and the actual slices used. The placer may under-utilise the slices as well depending on timing requirement and how much freedom it has to move things around. This makes the "Slices" number reported a pessimistic metric if you are looking to see how much room you have left in the device.