Danm (Danm v0.2.0)

Public API for Danm.

Link to this section Summary

Functions

build, check design, generate html and verilog for one or several designs, all in one go, with config pulled in from config file. In your config.exs, you may want to have

build the design with "name" from top down optional arguments

check design integrity and report errors and warnings. return false if there were errors optional arguments

generate a single verilog file that have everything. File name is deduced from the design name

generate a full set of html files. top level is called top.html

Link to this section Functions

Link to this function

auto_build(names)

build, check design, generate html and verilog for one or several designs, all in one go, with config pulled in from config file. In your config.exs, you may want to have:

config :danm,
top_modules: ["DESIGN1", "DESIGN2"],
verilog_path: [PATH1, PATH2],
elixir_path: [PATH3, PATH4],
check_warning: true,
default_params: %{
  "DESIGN1" => %{
    "SOMETHING" => VALUE,
  }
}

Please see the other functions of this module to see find out the meaning of those configs.

Link to this function

build(name, options \\ [])

build the design with "name" from top down optional arguments:

  • :verilog_path, a list of paths to search for verilog black boxes
  • :elixir_path, a list of paths to search for elixir schematics in exs
  • :parameters, a map of additional parameters to set to top level before elaborate
Link to this function

check_design(s, options \\ [])

check design integrity and report errors and warnings. return false if there were errors optional arguments:

  • :check_warnings, when true, fail if there are warnings
Link to this function

generate_full_verilog(s, list)

generate a single verilog file that have everything. File name is deduced from the design name

Link to this function

generate_html_as_top(s, list)

generate a full set of html files. top level is called top.html