thanks for the call afternoon folks, this is where...
# generative-ai
h
thanks for the call afternoon folks, this is where I got to when the toolflow failed:
Copy code
[STEP 36]
[INFO]: Running Circuit Validity Checker ERC (log: ../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/logs/signoff/36-erc_screen.log)...
[INFO]: Saving current set of views in '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/results/final'...
[INFO]: Saving current set of views in '../home/hammond/Documents/vivado_projs/qtcore-C1'...
[INFO]: Saving runtime environment...
[INFO]: Generating final set of reports...
[INFO]: Created manufacturability report at '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/manufacturability.rpt'.
[INFO]: Created metrics report at '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/metrics.csv'.
[WARNING]: There are max fanout violations in the design at the typical corner. Please refer to '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/signoff/25-rcx_sta.slew.rpt'.
[INFO]: There are no hold violations in the design at the typical corner.
[ERROR]: There are setup violations in the design at the typical corner. Please refer to '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/signoff/25-rcx_sta.max.rpt'.
[INFO]: Saving current set of views in '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/results/final'...
[INFO]: Generating final set of reports...
[INFO]: Created manufacturability report at '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/manufacturability.rpt'.
[INFO]: Created metrics report at '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/metrics.csv'.
[INFO]: Saving runtime environment...
[ERROR]: Flow failed.
[INFO]: The failure may have been because of the following warnings:
[WARNING]: There are max fanout violations in the design at the typical corner. Please refer to '../home/hammond/Documents/vivado_projs/qtcore-C1/openlane/user_proj_example/runs/23_06_02_17_45/reports/signoff/25-rcx_sta.slew.rpt'.
a
@Hammond So that's a complex digital logic path that looks like it is not able to run in a single clock cycle at 33Mhz. Is this a large adder or multiplier by any chance? It seems like a very large number of cells to go through without a register stage in a single cycle. (All the reported failing paths seem to be similar in architecture)
Or is it a false or unused path?
h
if it's passing through the 256-byte DFFRAM this could be that long I suppose?
i'm not super familiar with the intricacies of DFFRAM but I guess they could make it fairly slow
a
How wide and deep is the DFFRAM?
Also Does your target frequency matter or could you run slower and still be successful? (Since this is a setup time problem it can be fixed by just reducing the target freq.
h
i am quite happy to just reduce the frequency
the DFFRAM is 256 deep, 8 bits wide
what are all the places that I need to change to make the clock slower? The two SDCs and the config.jsons for the user_proj_example and user_project_wrapper? anywhere else?