UltraPlus Internal Oscillator support

This commit is contained in:
David Shah 2017-11-17 10:06:35 +00:00
parent cdf6883639
commit e7d22f2277
2 changed files with 34 additions and 1 deletions

View File

@ -4438,6 +4438,28 @@ dsp_config_db = {
}
}
# This contains the data for extra cells not included
# in any previous databases
extra_cells_db = {
"5k" : {
("HFOSC", (0, 31, 1)) : {
"CLKHFPU": (0, 29, "lutff_0/in_1"),
"CLKHFEN": (0, 29, "lutff_7/in_3"),
"CLKHF": (0, 29, "glb_netwk_4"),
"CLKHF_FABRIC": (0, 28, "slf_op_7"),
"CLKHF_DIV_1": (0, 16, "CBIT_4"),
"CLKHF_DIV_0": (0, 16, "CBIT_3")
},
("LFOSC", (25, 31, 1)) : {
"CLKLFPU": (25, 29, "lutff_0/in_1"),
"CLKLFEN": (25, 29, "lutff_7/in_3"),
"CLKLF": (25, 29, "glb_netwk_5"),
"CLKLF_FABRIC": (25, 29, "slf_op_0")
}
}
}
iotile_full_db = parse_db(iceboxdb.database_io_txt)
logictile_db = parse_db(iceboxdb.database_logic_txt, "1k")
logictile_5k_db = parse_db(iceboxdb.database_logic_txt, "5k")

View File

@ -314,7 +314,18 @@ for dsploc in ic.dsp_tiles[0]:
cfg = ic.get_dsp_config_db(x, y)
for key in sorted(cfg):
print("%s %s" % (key, " ".join([str(k) for k in cfg[key]])))
print()
if ic.device in icebox.extra_cells_db:
for cell in icebox.extra_cells_db[ic.device]:
name, loc = cell
x, y, z = loc
print(".extra_cell %d %d %d %s" % (x, y, z, name))
cellinfo = icebox.extra_cells_db[ic.device][cell]
for key in sorted(cellinfo):
print("%s %s" % (key, " ".join([str(k) for k in cellinfo[key]])))
print()
print(".extra_bits")
extra_bits = dict()
for idx in sorted(ic.extra_bits_db()):