sponsor Vim development Vim logo Vim Book Ad

Birdie : A Vim plugin that facilitates Verilog netlist tracing.

 script karma  Rating 9/3, Downloaded by 317  Comments, bugs, improvements  Vim wiki

created by
TK Lam
script type
Available commands

Commands should be invoked in the window showing the netlist.

Parse a Verilog netlist using the closed source parser:


:Parse just extracts the user-defined Verilog modules and instances; whereas :ParseAll extracts everything, and standard cells will be shown in the hierarchy.

Show the information of the module under the cursor:


Go to the definition of the module whose name matches with the given regular expression:

:GoToModule <module name regex, e.g. free.*dom>

Go to the declaration of the instance whose instance path matches with the given regular expression:

:GoToInstance <instance path regex, e.g. /top_module_name/path/to/instanc.*>

Extract the definition of a module and put it on a separate buffer/window:

:OneModule <module name regex, e.g. free.*dom>

Show the hierarchy of the design:


Source hosted at github: https://github.com/tklam/birdie
Demo .gif also available on github
Thanks a lot for using
install details
pip install hdlConverter

or you can install the Wheel file available on github.

Just :source the given vim_plugin/birdie.vim
This plugin works in x86_64 Linux only

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
birdie.zip 2.0 2024-02-28 7.0 TK Lam hdlConverter is used instead of the the proprietary parser.

The problem with the proprietary parser is that its data structures are not available in Python. As a result, communication between the proprietary parser and the Vim script is based on a big JSON file, which is extremely inefficient. Using hdlConverter boosts the overall performance significantly. This script now requries the user to install hdlConverter, though.
birdie.zip 1.2 2022-05-13 7.0 TK Lam - Support Python 3.10
- Print instance path before module name
birdie.zip 1.1 2022-04-23 7.0 TK Lam Increased the parser's stack size so that it can process large netlists.
birdie.zip 1.0 2022-04-10 7.0 TK Lam Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
Vim at Github