naps.util package¶
Submodules¶
naps.util.draw_hierarchy module¶
-
naps.util.draw_hierarchy.hierarchy_to_dot(e: nmigen.hdl.ir.Elaboratable, plat=None, **kwargs)¶
naps.util.nmigen_misc module¶
-
naps.util.nmigen_misc.assert_is_pot(x)¶
-
naps.util.nmigen_misc.connect_leds(m, platform, signal, upper_bits=True)¶
-
naps.util.nmigen_misc.delay_by(signal, cycles, m)¶
-
naps.util.nmigen_misc.ends_with(signal, *patterns)¶
-
naps.util.nmigen_misc.iterator_with_if_elif(iterator: Iterable, module: nmigen.hdl.dsl.Module) → Iterator¶ A helper to build a priority encoder using If / Elif constructs :param iterator: the iterator contaianing all the elements :param module: the module from which m.If and m.Elif are sourced
-
naps.util.nmigen_misc.log2(x)¶
-
naps.util.nmigen_misc.max_error_freq(real_freq, requested_freq, max_error_percent=1)¶
-
naps.util.nmigen_misc.nAbsDifference(a, b)¶
-
naps.util.nmigen_misc.nAll(seq)¶
-
naps.util.nmigen_misc.nAny(seq)¶
-
naps.util.nmigen_misc.nAvrg(*values)¶
-
naps.util.nmigen_misc.nMax(a, b)¶
-
naps.util.nmigen_misc.nMin(a, b)¶
-
naps.util.nmigen_misc.with_reset(m, signal, exclusive=False)¶
naps.util.nmigen_misc_test module¶
naps.util.plot_util module¶
-
naps.util.plot_util.plt_discrete_hist(title, data)¶
-
naps.util.plot_util.plt_hist(title, data, **kwargs)¶
-
naps.util.plot_util.plt_image(title, data, **kwargs)¶
-
naps.util.plot_util.plt_show()¶
naps.util.python_misc module¶
-
naps.util.python_misc.camel_to_snake(name)¶
-
naps.util.python_misc.decimal_range(start, stop, step)¶
naps.util.sim module¶
-
class
naps.util.sim.FakeResource(name, handed_out_resources)¶ Bases:
nmigen.hdl.ast.UserValue-
lower()¶ Conversion to a concrete representation.
-
-
class
naps.util.sim.SimPlatform(filename=None)¶ Bases:
object-
add_file(name, contents)¶
-
add_process(generator, domain=None)¶
-
add_sim_clock(domain_name, frequency)¶
-
prepare(top_fragment, name='top', *args, **kwargs)¶
-
request(name, number=0)¶
-
sim(dut, testbench=None, traces=(), engine='pysim')¶
-
-
class
naps.util.sim.TristateIo(shape=None)¶ Bases:
object
-
naps.util.sim.do_nothing(length=10)¶
-
naps.util.sim.pulse(signal, length=1, after=0)¶
-
naps.util.sim.resolve(expr)¶ Resolves a nMigen expression that can be constantly evaluated to an integer
-
naps.util.sim.wait_for(expr, timeout=100, must_clock=True)¶
naps.util.size_estimation module¶
-
naps.util.size_estimation.get_module_sizes(module, *args, **kwargs)¶
-
naps.util.size_estimation.print_module_sizes(module, *args, **kwargs)¶
naps.util.yosys module¶
-
naps.util.yosys.get_verilog_module_ports(verilog_paths, module_name)¶ Get the ports of a verilog module via yosys
- Parameters
verilog_paths –
module_name –
- Returns
the verilog as a string
-
naps.util.yosys.parse_yosys_json(verilog_paths)¶
-
naps.util.yosys.yosys_script(commands)¶ Executes a yosys script
- Parameters
commands – a list of commands to run
- Returns
the stdout of yosys