action="store_true",
help="generate microwatt-compatible interface",
default=False)
+ parser.add_argument("--microwatt-compat-svp64", dest='mwcompatsvp64',
+ action="store_true",
+ help="generate microwatt-compatible interface + SVP64",
+ default=False)
parser.add_argument("--old-microwatt-compat", dest='old_mwcompat',
action="store_true",
help="generate old microwatt-compatible interface",
action="store_true",
help="generate old microwatt-compatible interface",
default=False)
+ # create a module with Fabric compatibility
+ parser.add_argument("--fabric-compat", dest='fabriccompat',
+ action="store_true",
+ help="generate Fabric-compatible interface",
+ default=False)
+ # small cache option
+ parser.add_argument("--small-cache", dest='smallcache',
+ action="store_true",
+ help="generate small caches",
+ default=False)
# allow overlaps in TestIssuer
parser.add_argument("--allow-overlap", dest='allow_overlap',
args.sram4x4kblock = False
args.svp64 = False
+ # Yes, this is duplicating mwcompat, but for the sake of simplicity
+ # adding support for svp64 like this
+ if args.mwcompatsvp64:
+ args.pll = False
+ args.debug = 'dmi'
+ args.core = True
+ args.xics = False
+ args.gpio = False
+ args.sram4x4kblock = False
+ args.svp64 = True
+ args.mwcompat = True # Ensures TestMemPspec gets the expected value
+
print(args)
units = {'alu': 1,
microwatt_compat=args.mwcompat, # microwatt compatible
microwatt_old=args.old_mwcompat, # old microwatt api
microwatt_debug=args.mwdebug, # microwatt debug signals
+ fabric_compat=args.fabriccompat, # fabric compatible (overlaps with microwatt compat)
+ small_cache=args.smallcache, # small cache/TLB sizes
allow_overlap=args.allow_overlap, # allow overlap
units=units,
msr_reset=msr_reset,
print("Microwatt compatibility", pspec.__dict__["microwatt_compat"])
print("Old Microwatt compatibility", pspec.__dict__["microwatt_old"])
print("Microwatt debug", pspec.__dict__["microwatt_debug"])
+ print("Fabric compatibility", pspec.__dict__["fabric_compat"])
+ print("Small Cache/TLB", pspec.__dict__["small_cache"])
if args.mwcompat:
dut = TestIssuerInternal(pspec)