Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Populate all parts #1562

Merged
merged 12 commits into from
Mar 18, 2021
Merged

Populate all parts #1562

merged 12 commits into from
Mar 18, 2021

Conversation

dnltz
Copy link
Contributor

@dnltz dnltz commented Jan 24, 2021

These changes allow to easily generate all part information during a full db run.

closes #1476

@mithro
Copy link
Contributor

mithro commented Jan 24, 2021

Looks like there is some issue with directories on Kintex / Zynq?

@dnltz
Copy link
Contributor Author

dnltz commented Jan 24, 2021

zynq was my fault. The kintex is because of a non-existing entry in KINTEX_PARTS= (Makefile). Removed the kintex70t from there.
Pushed the changes and also added the information about the kintex and zynq family. Let me know if I should drop these two patches again.

@mithro
Copy link
Contributor

mithro commented Jan 24, 2021

@dnltz - I sent you an invite to collaborate on the SymbiFlow project and PrjXRay repo. If you access then hopefully Kokoro will run automatically on your pull requests without needing another person to force the run.

Makefile Outdated Show resolved Hide resolved
utils/roi_all.py Outdated Show resolved Hide resolved
utils/update_parts.tcl Outdated Show resolved Hide resolved
utils/update_parts.py Outdated Show resolved Hide resolved
Makefile Show resolved Hide resolved
Copy link
Contributor

@litghost litghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review in

@litghost
Copy link
Contributor

litghost commented Jan 30, 2021

Build failure:

make[1]: Leaving directory '/tmpfs/src/github/symbiflow-prjxray-presubmit-db-artix7/fuzzers'
source settings/artix7_50t.sh && if [ -e env/bin/activate ]; then . env/bin/activate; fi; source utils/environment.python.sh; ./utils/roi_all.py
Traceback (most recent call last):
  File "./utils/roi_all.py", line 46, in <module>
    main()
  File "./utils/roi_all.py", line 32, in main
    devices = util.get_devices(args.db_root).keys()
NameError: name 'args' is not defined

This step generates all static part information files.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
These files are now autogenerated and not needed to be deployed to the repo.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
@dnltz
Copy link
Contributor Author

dnltz commented Mar 16, 2021

Yeah, we have a failure :)
I would suggest to ignore

----------------------------------------
 Database Diff
----------------------------------------
diff has 167767 lines which is too large to display!

----------------------------------------
 Generating pretty diff output
----------------------------------------
diff has 167767 lines which is too large for HTML output!
----------------------------------------
+ make db-check-artix7

because this PR has a lot of changes and normal PRs should not have such a mount of changed lines.

Will take a look into the Artix und Zynq issues now.

@litghost
Copy link
Contributor

litghost commented Mar 16, 2021

So the artix7 failure arose from:

diff --git a/artix7/segbits_bram_l.origin_info.db b/artix7/segbits_bram_l.origin_info.db
index a1c00af..a959ca5 100644
--- a/artix7/segbits_bram_l.origin_info.db
+++ b/artix7/segbits_bram_l.origin_info.db
@@ -208,7 +208,7 @@ BRAM_L.ZALMOST_FULL_OFFSET[9] origin:028-fifo-config 27_13
 BRAM_L.ZALMOST_FULL_OFFSET[10] origin:028-fifo-config 27_12
 BRAM_L.ZALMOST_FULL_OFFSET[11] origin:028-fifo-config 27_11
 BRAM_L.ZALMOST_FULL_OFFSET[12] origin:028-fifo-config 27_08
-BRAM_L.RAMB18_Y0.DOA_REG origin:025-bram-config 27_69
+BRAM_L.RAMB18_Y0.DOA_REG origin:025-bram-config 00_278 27_69
 BRAM_L.RAMB18_Y0.DOB_REG origin:025-bram-config 27_72
 BRAM_L.RAMB18_Y0.FIFO_MODE origin:029-bram-fifo-config 27_150
 BRAM_L.RAMB18_Y0.IN_USE origin:029-bram-fifo-config 27_100 27_99

Nothing you did should've caused that change, but it might just be bad luck. Something to try is change https://github.com/SymbiFlow/prjxray/blob/c202abb8a1a89837c9246163f3288a2c1505aedb/fuzzers/025-bram-config/Makefile#L10 N ?= 15 to N ?= 20. That will increase the sample count, and hopefully decouple the bad bit.

@dnltz
Copy link
Contributor Author

dnltz commented Mar 17, 2021

@litghost - Increasing N to 20 did not help. Should I just open an issue?

@litghost
Copy link
Contributor

@litghost - Increasing N to 20 did not help. Should I just open an issue?

Ya, sure.

@litghost
Copy link
Contributor

@litghost - Increasing N to 20 did not help. Should I just open an issue?

Another option to just add a bit blacklist for this bit.

@litghost
Copy link
Contributor

litghost commented Mar 17, 2021

So the bad solution is:

-BRAM_L.RAMB18_Y0.DOA_REG 27_69
+BRAM_L.RAMB18_Y0.DOA_REG 00_278 27_69

A quick search on https://github.com/SymbiFlow/prjxray-db/blob/master/artix7/segbits_bram_l.db shows that no bits are in frame 0, so we probably could just add a frame 0 exclusion, e.g.:

 def bitfilter(frame, bit): 
     # rw_width_tags() aliasing interconnect on large widths 
     return frame not in (0, 20, 21) 
GitHub
Project X-Ray Database: XC7 Series. Contribute to SymbiFlow/prjxray-db development by creating an account on GitHub.

@dnltz
Copy link
Contributor Author

dnltz commented Mar 17, 2021

Ah thanks for that hint :)
I added your suggestion. Let's see what happens...

Add an exclusion for frame 0 because this does not contain any bits and
the database checks fails.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
@dnltz
Copy link
Contributor Author

dnltz commented Mar 18, 2021

@litghost - Checks were successful today.

@litghost litghost merged commit 086f9a1 into f4pga:master Mar 18, 2021
@litghost
Copy link
Contributor

@litghost - Checks were successful today.

Great work. New prjxray-db should be updated tommorow or early next week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add part data for all parts
5 participants