From 23ed6d0ecff831886f8d82aac2b6ca3d9e466f66 Mon Sep 17 00:00:00 2001 From: Cole Poirier Date: Tue, 13 Oct 2020 17:04:43 -0700 Subject: [PATCH] issuer_verilog.py update to use commandline args using argparse, fix formatting --- src/soc/simple/issuer_verilog.py | 37 ++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/src/soc/simple/issuer_verilog.py b/src/soc/simple/issuer_verilog.py index 95eb748d..2b61ff47 100644 --- a/src/soc/simple/issuer_verilog.py +++ b/src/soc/simple/issuer_verilog.py @@ -1,7 +1,7 @@ """simple core issuer verilog generator """ -import sys +import argparse from nmigen.cli import verilog from soc.config.test.test_loadstore import TestMemPspec @@ -9,14 +9,29 @@ from soc.simple.issuer import TestIssuer if __name__ == '__main__': + parser = argparse.ArgumentParser(description="Simple core issuer " \ + "verilog generator") + parser.add_argument("output_filename") + parser.add_argument("--disable-xics", action="store_true", + help="Disable interrupts") + parser.add_argument("--use-pll", action="store_true", help="Enable pll") + parser.add_argument("--disable-gpio", action="store_true", + help="Disable gpio pins") + parser.add_argument("--debug", default="jtag", help="Select debug " \ + "interface [jtag | dmi] [default jtag]") + + args = parser.parse_args() + + print(args) + units = {'alu': 1, 'cr': 1, 'branch': 1, 'trap': 1, - 'logical': 1, + 'logical': 1, 'spr': 1, 'div': 1, 'mul': 1, 'shiftrot': 1 - } + } pspec = TestMemPspec(ldst_ifacetype='bare_wb', imem_ifacetype='bare_wb', addr_wid=48, @@ -27,15 +42,19 @@ if __name__ == '__main__': imem_reg_wid=64, # set to 32 to make data wishbone bus 32-bit #wb_data_wid=32, - xics=True, - #nocore=True, # to help test coriolis2 ioring - use_pll=False, # bypass PLL - gpio=True, # for test purposes - debug="jtag", # set to jtag or dmi + xics=False if args.disable_xics else True, + # to help test coriolis2 ioring + #nocore=True, + # bypass PLL + use_pll=True if args.use_pll else False, + # for test purposes + gpio=False if args.disable_gpio else True, + # set to jtag or dmi + debug=args.debug, units=units) dut = TestIssuer(pspec) vl = verilog.convert(dut, ports=dut.external_ports(), name="test_issuer") - with open(sys.argv[1], "w") as f: + with open(args.output_filename, "w") as f: f.write(vl) -- 2.30.2