Closed Obijuan closed 2 years ago
thanks @Obijuan! i'm working now on it!
update complete! now we have bottom bar with nextpnr information and Max Frequency.
I'm maintaining this issue open until we check all compatible FPGAs with this new output.
Thanks!!!! :-)
Tested with Alhambra-II: OK!
Tested with:
Tested with:
Tested with:
Tested with:
Info: Device utilisation:
Info: ICESTORM_LC: 216/ 5280 4%
Info: ICESTORM_RAM: 0/ 30 0%
Info: SB_IO: 13/ 96 13%
Info: SB_GB: 8/ 8 100%
Info: ICESTORM_PLL: 0/ 1 0%
Info: SB_WARMBOOT: 0/ 1 0%
Info: ICESTORM_DSP: 0/ 8 0%
Info: ICESTORM_HFOSC: 0/ 1 0%
Info: ICESTORM_LFOSC: 0/ 1 0%
Info: SB_I2C: 0/ 2 0%
Info: SB_SPI: 0/ 2 0%
Info: IO_I3C: 0/ 2 0%
Info: SB_LEDDA_IP: 0/ 1 0%
Info: SB_RGBA_DRV: 0/ 1 0%
Info: ICESTORM_SPRAM: 0/ 4 0%
But the common resources are detected OK! LC, RAM, IO, etc...
Test with:
Tested with:
ECP5 FPGAs:
This is the output of the nextpnr command:
nextpnr-ecp5 --25k --package CABGA381 --json hardware.json --textcfg hardware.config --lpf main.lpf --timing-allow-fail
Info: Importing module main
Info: Rule checker, verifying imported design
Info: Checksum: 0x9b21e64c
Info: Logic utilisation before packing:
Info: Total LUT4s: 260/24288 1%
Info: logic LUTs: 158/24288 0%
Info: carry LUTs: 102/24288 0%
Info: RAM LUTs: 0/12144 0%
Info: RAMW LUTs: 0/ 6072 0%
Info: Total DFFs: 268/24288 1%
Info: Packing IOs..
Info: pin 'vcc0af0$tr_io' constrained to Bel 'X4/Y50/PIOA'.
[...]
Info: pin 'v901ecf[7]$tr_io' constrained to Bel 'X0/Y20/PIOD'.
Info: Packing constants..
Info: Packing carries...
Info: Finding LUTFF pairs...
Info: Packing LUT5-7s...
Info: Finding LUT-LUT pairs...
Info: Packing paired LUTs into a SLICE...
Info: Packing unpaired LUTs into a SLICE...
Info: Packing unpaired FFs into a SLICE...
Info: Generating derived timing constraints...
Info: Promoting globals...
Info: promoting clock net vclk$TRELLIS_IO_IN to global network
Info: Checksum: 0x44526653
Info: Annotating ports with timing budgets for target frequency 12.00 MHz
Info: Checksum: 0x36487996
Info: Device utilisation:
Info: TRELLIS_SLICE: 241/12144 1%
Info: TRELLIS_IO: 13/ 196 6%
Info: DCCA: 1/ 56 1%
Info: DP16KD: 0/ 56 0%
Info: MULT18X18D: 0/ 28 0%
Info: ALU54B: 0/ 14 0%
Info: EHXPLLL: 0/ 2 0%
Info: EXTREFB: 0/ 1 0%
Info: DCUA: 0/ 1 0%
Info: PCSCLKDIV: 0/ 2 0%
Info: IOLOGIC: 0/ 128 0%
Info: SIOLOGIC: 0/ 68 0%
Info: GSR: 0/ 1 0%
Info: JTAGG: 0/ 1 0%
Info: OSCG: 0/ 1 0%
Info: SEDGA: 0/ 1 0%
Info: DTR: 0/ 1 0%
Info: USRMCLK: 0/ 1 0%
Info: CLKDIVF: 0/ 4 0%
Info: ECLKSYNCB: 0/ 10 0%
Info: DLLDELD: 0/ 8 0%
Info: DDRDLL: 0/ 4 0%
Info: DQSBUFM: 0/ 8 0%
Info: TRELLIS_ECLKBUF: 0/ 8 0%
Info: ECLKBRIDGECS: 0/ 2 0%
Info: Placed 13 cells based on constraints.
[...]
I propose to show the following information at least:
LUT4: 260/24288 ( 1%), SLICE: 241/12144 ( 1%), IO: 13/ 196 (6%)...
The nextpnr output is similar to all these boards. Therefore, when it is working for one of them it will work for the rest
We change this issue to enhanced label and track de new improvements in this feature.
I will close this issue, as in the latest icestudio (0.8.2w) the resources are alredy shown ok
In the current APIO/develop branch the arachne-pnr has been replace by nextpnr
The FPGAs resources were obtained by parsing the arachne-pnr output
As an example, this is an output for the ice40HX08 FPGA in the Alhambra-II board:
Icestudio process that output and prints the following info in the bottom bar:
The new nextpnr produces the following output:
My proposal is to only show the information provided by the "Info: Device utilisation"
In the icestudio botom line the information could be displayed like this:
LC: 216/7680 (2%), RAM: 0/32 (0%), IO: 21/256 (8%), GB: 21/256 (100%), PLL: 0/2 (0%), WB: 0/1 (0%)
If more information is needed, the user should consult the View command output
It would be very nice is the Maximum frequency is also shown. The line to parse is this one:
The output in the bottom line could be something like:
Max Freq: 87.67Mhz
For other FPGAs the nextpnr output will be different, with other resources