pinlist

extract pinlist from verilog files

Usage no npm install needed!

<script type="module">
  import pinlist from 'https://cdn.skypack.dev/pinlist';
</script>

README

NPM version Travis

Extract pinlist from Verilog files.

Install

npm i pinlist

Library usage

const pinlist = require('pinlist');

const pl = pinlist(); // instance of pinlist extractor tool

const pinst = pl(`

  module mod (
    input clk,
    input [31:0] wdata,
    output valid,
    output reg [DWIDTH-1:0] rdata
  );

  endmodule

`);
//  {
//    mod: {
//      type: 'module',
//      ports: {
//        clk: 1,
//        rdata: '-(DWIDTH)',
//        valid: -1,
//        wdata: 32
//     }
//  }

CLI Usage

cat top.v | pinlist > alpha.json5

Verilator can be used to remove preprocessor directives:

verilator -E top.v | pinlist > alpha.json5