The goal of this GUI program is to make the process of change parameters
in test benches easily, it parses the verilog input file, then extracts
parameters for each module instance. Also, it parses `include
and `define
to allow the user to control `ifdef
that controls module instances or
controls code within them.
If you choose design file option, then click upload:
-
Click upload
-
Choose file with any extension
-
The tool searches input code to get `
ifdefs
-
The tool saves all identifiers that comes after `
ifdefs
and puts them in defines dictionary. -
The tool searches for `
defines
and modifies the defines dictionary with 1 for all defined identifiers. -
The tool shows all `
ifdef
identifiers with check buttons on the window as follows: -
If there are nothing to show, the tool says “no defines found” as follows:
-
If you click save:
- The tool saves the defines values from the user and updates the defines dictionary
- The tool opens the input file and modifies defines only.
-
If you click arrow to show parameters:
-
The tool modifies parsers to ignore undefined sections (`
ifdef
“not defined identifier”) -
The tool parses the input file to get any parameter declaration
-
If there are nothing to show, the tool says “There are no parameters” as follows:
-
If you click save:
-
The tool saves the defines values from the user and updates the defines dictionary.
-
The tool saves the parameters values from the user and updates the parameters dictionary.
-
The tool opens the input file and modifies it.
If you choose test file option, then click upload:
- Click upload
- Choose file with any extension
- The tool searches input code to get `
ifdefs
- The tool saves all identifiers that comes after `
ifdefs
and puts them in defines dictionary. - The tool searches for `
defines
and modify the defines dictionary with 1 for all defined identifiers. - The tool shows all `
ifdef
identifiers with check buttons on the window - If there are nothing to show, the tool says “no defines found”
- If you click save:
- The tool saves the defines values from the user and updates the defines dictionary
- The tool opens the input file and modifies defines only.
- If you click arrow to show parameters:
- The tool modifies parsers to ignore undefined sections (`
ifdef
“not defined identifier”) - The tool parses the input file to get any parameter declaration
- The tool parses the input file to get one module instance
- The tool saves the module name and module parameter names
- The tool shows “module: “module name
- The tool parser the included file (with extension “.v”)
- The tool shows module parameters names (from the input file and the included file) on the window
- If there are nothing to show, the tool says “There are no parameters”
- The tool modifies parsers to ignore undefined sections (`
- If you click save:
- The tool saves the defines values from the user and updates the defines dictionary.
- The tool saves the parameters values from the user and updates the parameters dictionary.
- The tool opens the input file and modifies it.
- open the executable file.
- choose type of the file (design or test).
- change
defines
. - click on the arrow.
- change
parameters
. - click save to apply changes on the same file.
- click settings to adjust settings of run simulation.
- click compile design file, and choose the design file for the test file.
- click run.
- add Questa executables to system path.
- you don't have to compile design files for each run if you compiled it before in the same directory that
work
folder exists.
- The tool detects the module name of the uploaded test file, and compile it autmatically to apply changes.