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

prjxray-db inconsistent, bits resulting in invalid word addresses (>100) #2300

Open
hansfbaier opened this issue Jan 8, 2024 · 2 comments
Open

Comments

@hansfbaier
Copy link
Collaborator

It looks like the prjxray-db is inconsistent, for example in Artix7/Spartan7 there is

    "LIOI3_SING_X0Y149": {
        "bits": {
            "CLB_IO_CLK": {
                "alias": {
                    "sites": {},
                    "start_offset": 0,
                    "type": "LIOI3"
                },
                "baseaddr": "0x00020000",
                "frames": 42,
                "offset": 99,
                "words": 2
            }
        },

Then there are features like:

segbits_lioi3.db:LIOI3.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74
segbits_lioi3_tbytesrc.db:LIOI3_TBYTESRC.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74
segbits_lioi3_tbyteterm.db:LIOI3_TBYTETERM.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74
segbits_rioi3.db:RIOI3.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74
segbits_rioi3_tbytesrc.db:RIOI3_TBYTESRC.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74
segbits_rioi3_tbyteterm.db:RIOI3_TBYTETERM.IOI_ILOGIC0_CLK.IOI_LEAF_GCLK0 28_67 28_79 29_74

When these feature are used in the SING tile above, then the corresponding word address is 101:
The word address is calculated:

word_addr = bit.word_bit // bitstream.WORD_SIZE_BITS

So in this example bit 28_79 gives word address 99 + 79//32 = 99+2 = 101.
But each frame only has 101 words, with word addresses ranging from 0..100
So either the offset is wrong in tilegrid.json, or the bits in those features are wrong.

@hansfbaier hansfbaier changed the title prjxray-db inconsistend, bits resulting in invalid word addresses (>100) prjxray-db inconsistent, bits resulting in invalid word addresses (>100) Jan 8, 2024
@hansfbaier
Copy link
Collaborator Author

hansfbaier commented Jan 8, 2024

It looks like the SING tiles have different pips (fuzzers/037-iob-pips)
20240109_02h25m46s_grim

@hansfbaier
Copy link
Collaborator Author

The reason for this is that SING tiles have different switchboxes and their own set of PIPs, which are currently not supported by prjxray
image

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

No branches or pull requests

1 participant