Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

duh

Package Overview
Dependencies
Maintainers
2
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

duh

Design Unit Hardware

  • 1.7.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
9
increased by125%
Maintainers
2
Weekly downloads
 
Created
Source

NPM version Travis build Status

Design ∪ Hardware

DUH is a suite of tools for packaging reusable hardware components and designs. DUH enables the generation of JSON5 duh-documents for describing these components, and also enables export from these documents to output deliverables.

Install

First ensure Node Package Manager (npm) is installed or get npm. Then install

npm i duh

And test installation with duh --help

Quick start

The following base set of DUH tools can be used to generate a duh-document for hardware components and designs:

  • Run duh init to create a base duh-document.

  • Run duh-import-verilog-ports to import a port list from a (pre-preprocessed) verilog top-level module.

  • Run duh-portinf to infer mappings of portgroups to standard bus definitions AXI, AHB, TileLink, etc. (From the duhportinf package.)

  • Run duh-portbundler to group ports, which are unassigned to a bus mapping, into structured bundles. (From the duhportinf package.)

  • Run duh validate to test whether a given document conforms to the duh-document standard.

The following base set of DUH tools can be used to generate outputs from a valid duh-document:

  • Run duh-export-scala to generate scala black box wrappers for the component.

Preprocess verilog top-level module

To run a verilog preprocessor on the top-level module, use:

verilator -E -Irtl mytop.v > mytop.preproc.v

or

vppreproc -Irtl mytop.v > mytop.preproc.v

Further help

Further information:

  • block-ark for a walk-through example using the DUH suite on a standalone module to produce a valid duh-document that fully describes the mapping of ports to known bus definitions.

  • the duh-document standard.

  • duhportinf for the port inference DUH package that contains usage details of the duh-portinf and duh-portbundler tools.

FAQs

Package last updated on 29 Apr 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc