Added dumping of PS7 pins grouped by direction to JSON file.

Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
This commit is contained in:
Maciej Kurc 2019-12-19 13:05:41 +01:00
parent 839ad1cffc
commit 568b20252f
2 changed files with 23 additions and 0 deletions

View File

@ -6,6 +6,7 @@ clean:
rm -rf xtra.ok
rm -rf ps7_sim.v
rm -rf ps7_map.v
rm -rf ps7_pins.json
rm -rf ps7.csv
rm -rf *.xml
rm -rf *.log

View File

@ -1,6 +1,7 @@
#!/usr/bin/env python3
import argparse
import csv
import json
import re
from collections import defaultdict
@ -100,6 +101,27 @@ def main():
bus["class"] = cls
# .....................................................
# Generate JSON with PS7 pins grouped by direction
ps7_pins = {"input": [], "output": [], "inout": []}
for name in sorted(buses.keys()):
bus = buses[name]
# Skip not relevant pins
if bus["class"] not in ["normal", "mio"]:
continue
if bus["width"] > 1:
for i in range(bus["min"], bus["max"]+1):
pin_name = "{}{}".format(name, i)
ps7_pins[bus["direction"]].append(pin_name)
else:
ps7_pins[bus["direction"]].append(name)
with open("ps7_pins.json", "w") as fp:
json.dump(ps7_pins, fp, sort_keys=True, indent=2)
# .....................................................
# Generate XML model
pb_name = "PS7"