Giter VIP home page Giter VIP logo

verilog-gadget's Introduction

Verilog Gadget for Sublime Text

Package Control PayPal

Use Verilog Gadget Commands in command palette (ctrl+shift+p) or context menu to run. The context menu only can be seen for .v, .vh, .sv, .svh file. (file extensions can be added or changed in settings). The theme is Guna, which is used in examples. There's a linter plug-in for Verilog. SublimeLinter-contrib-verilator

Verilog Gadget: Instantiate Module (ctrl+shift+c)

  • It parses module ports in currently open file
  • It generates module's instance text
  • It copies generated text to clipboard
  • You can paste the text on where you want
  • Supports Verilog-1995, Verilog-2001 style ports and parameters
  • example)

Image

Verilog Gadget: Generate Testbench

  • It parses module ports in currently open file
  • It generates a simple testbench with module's instance and signals
  • Testbench will be generated as a systemverilog file
  • Supports Verilog-1995, Verilog-2001 style ports and parameters
  • example)

Image

Verilog Gadget: Simulaton Template

  • It generates files for simulation based on a template
  • You can make a your own template as a compressed file (.zip,.tar,.tgz)
  • You can specify a path of your template ("simulation_template","simulation_directory")
  • 'example-modelsim' is a template for modelsim, 'example-vcs' is a template for vcs
  • It automatically generates a testbench file for current view
  • It changes keywords in files of template ({{TESTBENCH FILE}}, {{TESTBENCH NAME}}, {{MODULE FILE}}, {{MODULE NAME}},)
  • example)

Image

Verilog Gadget: Insert Header (ctrl+shift+insert)

  • You can insert your own header-description as your format from the file specified in settings
  • {YEAR} will be replaced as this year
  • {DATE} will be replaced as create date
  • {TIME} will be replaced as create time
  • {RDATE} will be replaced as revised date
  • {RTIME} will be replaced as revised time
  • {FILE} will be replaced as file name
  • {TABS} will be replaced as tab size
  • {SUBLIME_VERSION} will be replaced as current sublime text version
  • example) header example

Image

Verilog Gadget: Repeat Code with Numbers (ctrl+f12)

  • Select codes to be repeated, it may include Python's format symbol like {...}
  • Type a range in the input panel as the following : [from]~[to],[↓step],[→step] (e.g. 0~10 or 0~10,2 or 10~0,-1 or 0~5,1,1 ...)
  • [↓step] means row step, default is 1, [→step] means column step, default is 0
  • The codes will be repeated with incremental or decremental numbers
  • Python's format symbol supports variable formats : binary, hex, leading zeros, ...
  • To use '{' as is, you should type twice as '{{'
  • Refer to Python's format symbol here, https://www.python.org/dev/peps/pep-3101/
  • For sublime text 2 (python 2.x), you should insert index behind of ':' in curly brackets like foo {0:5b} bar {1:3d}
  • example)

Image

  • The index can be used in order to repeat the same number
  • example)

Image

  • It is possible to repeat numbers with clipboard text (line by line)
  • Use {cb} for clipboard text
  • example)

Image

Verilog Gadget: Alignment (ctrl+shift+x)

  • Select range to apply alignment
  • Press the shortcut key
  • Alignment is based on the longest length of left hand side in selection
  • Tabs will be replaced as spaces except for indent
  • example)

Image

Verilog Gadget: Insert Snippet (ctrl+alt+p)

  • You can make your own parameterized snippets like this example
  • Add your snippet settings like this
  • Run Insert Snippet command
  • example)

Image

Verilog Gadget: VCD to WaveDrom (ctrl+alt+v)

  • WaveDrom : digital timing diagram editor
  • Open .vcd file (a clock should be included)
  • Run VCD to WaveDrom command

Image

Verilog Linter (another package)

SublimeLinter-contrib-verilator

Image

Donate

Doate Image

Thank you for donating. It is helpful to continue to improve the plug-in.

Issues

When you have an issue, tell me through https://github.com/poucotm/Verilog-Gadget/issues, or send me an e-mail [email protected]

verilog-gadget's People

Contributors

poucotm avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.