Skip to content

Commit

Permalink
L/R and U/D conns should not be copied to CIB_PIC_{B0, B_DUMMY} tiles.
Browse files Browse the repository at this point in the history
  • Loading branch information
cr1901 committed Aug 14, 2020
1 parent e8a33c9 commit c4c9f0d
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion fuzzers/machxo2/035-copy-cib_ebr0/fuzzer.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import dbcopy
import pytrellis
import nets

# Based on prior fuzzing conjecture that CIB_EBR
# 0,1,2, and DUMMY, and CIB_PIC_B0 and CIB_PIC_B_DUMMY have the same layout.
Expand All @@ -8,13 +9,26 @@
# need to be manually tweaked to convert U_/D_ prefixes to G_ prefixes. There's
# too much shared routing to justify rerunning the fuzzers.

shared_tiles = ["CIB_EBR1", "CIB_EBR2", "CIB_EBR_DUMMY", "CIB_PIC_B0", "CIB_PIC_B_DUMMY"]
shared_tiles = ["CIB_EBR1", "CIB_EBR2", "CIB_EBR_DUMMY"]
shared_tiles_no_lrudconns = ["CIB_PIC_B0", "CIB_PIC_B_DUMMY"]

# Only globals are the BRANCH connections which are fed by U_/D_ conns with
# G_ prefixes (muxed).
def exclude_lrud_conns(conn):
src = conn.source
sink = conn.sink

return not (src.startswith("G_CLKO") or sink.startswith("G_CLKI"))

def main():
pytrellis.load_database("../../../database")

for dest in shared_tiles:
dbcopy.dbcopy("MachXO2", "LCMXO2-1200HC", "CIB_EBR0", dest)

for dest in shared_tiles_no_lrudconns:
dbcopy.dbcopy("MachXO2", "LCMXO2-1200HC", "CIB_EBR0", dest, copy_conns=False)
dbcopy.copy_conns_with_predicate("MachXO2", "LCMXO2-1200HC", "CIB_EBR0", dest, exclude_lrud_conns)

if __name__ == "__main__":
main()

0 comments on commit c4c9f0d

Please sign in to comment.