Skip to content

Commit 87ddd9b

Browse files
authored
Parmys doc (#47)
* cleaned * make format-py * write arch cleaned * yosys -> parmys * doc update started * ODIN_II -> odin_ii * odin_ii refactored * task/flow figures updated * doc updated * sv test issue
1 parent fc52187 commit 87ddd9b

File tree

16 files changed

+222
-218
lines changed

16 files changed

+222
-218
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
The Verilog-to-Routing (VTR) project is a world-wide collaborative effort to provide an open-source framework for conducting FPGA architecture and CAD research and development.
77
The VTR design flow takes as input a Verilog description of a digital circuit, and a description of the target FPGA architecture.
88
It then performs:
9-
* Elaboration & Synthesis (ODIN II)
9+
* Elaboration, Synthesis & Partial Mapping (PARMYS)
1010
* Logic Optimization & Technology Mapping (ABC)
1111
* Packing, Placement, Routing & Timing Analysis (VPR)
1212

doc/src/vtr/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ TEX_OPTS := -file-line-error -halt-on-error -interaction=errorstopmode -shell-es
66
# -use-make tells latexmk to call make for generating missing files.
77
LATEXMK_OPTS := -pdf -pdflatex="$(TEX) $(TEX_OPTS)" -recorder -use-make
88

9-
FIG_TARGETS := vtr_flow_fig.pdf vtr_flow_fig.svg
9+
FIG_TARGETS := vtr_flow_fig.pdf vtr_flow_fig.svg vtr_task_fig.pdf vtr_task_fig.svg
1010

1111
.PHONY: clean distclean
1212

doc/src/vtr/cad_flow.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ VTR CAD Flow
99

1010
VTR CAD flow (and variants)
1111

12-
In the standard VTR Flow (:numref:`fig_vtr_cad_flow`), :ref:`odin_ii` converts a Verilog Hardware Destription Language (HDL) design into a flattened netlist consisting of logic gates, flip-flops, and blackboxes representing heterogeneous blocks (e.g. adders, multipliers, RAM slices) :cite:`jamieson_odin_II`.
12+
In the standard VTR Flow (:numref:`fig_vtr_cad_flow`), :ref:`parmys` converts a Verilog Hardware Destription Language (HDL) design into a flattened netlist consisting of logic gates, flip-flops, and blackboxes representing heterogeneous blocks (e.g. adders, multipliers, RAM slices).
1313

1414
Next, the :ref:`abc` synthesis package is used to perform technology-independent logic optimization, and technology-maps the circuit into LUTs :cite:`abc_cite,pistorius_benchmarking_method_fpga_synthesis,cho_priority_cuts`.
1515
The output of ABC is a :ref:`.blif format <blif_format>` netlist of LUTs, flip flops, and blackboxes.

doc/src/vtr/parse_config.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Each line contains a semicolon delimited tuple in the following format::
1717

1818
This name is used when generating the output files of :ref:`parse_vtr_task` and :ref:`parse_vtr_flow`.
1919

20-
* ``<file_to_search_within>``: The name of the file that will be searched (vpr.out, odin.out, etc.)
20+
* ``<file_to_search_within>``: The name of the file that will be searched (vpr.out, parmys.out, etc.)
2121

2222
* ``<regex>``: A perl regular expression used to find the desired value.
2323

doc/src/vtr/parse_vtr_flow.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Typical usage is::
2121

2222
where:
2323

24-
* ``<parse_path>`` is the directory path that contains the files to be parsed (e.g. ``vpr.out``, ``odin.out``, etc).
24+
* ``<parse_path>`` is the directory path that contains the files to be parsed (e.g. ``vpr.out``, ``parmys.out``, etc).
2525
* ``<parse_config_file>`` is the path to the :ref:`vtr_parse_config` file.
2626

2727
Output

doc/src/vtr/run_vtr_flow.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ The parser for these runs is considered the Yosys conventional Verilog/SystemVer
7474
.. code-block:: bash
7575
7676
# Using the Yosys-SystemVerilog plugin if installed, otherwise the Yosys conventional Verilog parser
77-
./run_vtr_flow <path/to/SystemVerilog/File> <path/to/arch/file> -start yosys -parser yosys-plugin
77+
./run_vtr_flow <path/to/SystemVerilog/File> <path/to/arch/file> -parser system-verilog
7878
7979
# Using the Surelog plugin if installed, otherwise failure on the unsupported file type
8080
./run_vtr_flow <path/to/UHDM/File> <path/to/arch/file> -start yosys -parser surelog
@@ -186,23 +186,23 @@ Detailed Command-line Options
186186

187187
.. option:: -min_hard_mult_size <int>
188188

189-
Tells ODIN II the minimum multiplier size that should be implemented
189+
Tells Parmys/ODIN II the minimum multiplier size that should be implemented
190190
using hard multiplier (if available). Smaller multipliers will be
191191
implemented using soft logic.
192192

193193
**Default:** 3
194194

195195
.. option:: -min_hard_adder_size <int>
196196

197-
Tells ODIN II the minimum adder size that should be implemented
197+
Tells Parmys/ODIN II the minimum adder size that should be implemented
198198
using hard adders (if available). Smaller adders will be
199199
implemented using soft logic.
200200

201201
**Default:** 1
202202

203203
.. option:: -adder_cin_global
204204

205-
Tells ODIN II to connect the first cin in an adder/subtractor chain
205+
Tells Parmys/ODIN II to connect the first cin in an adder/subtractor chain
206206
to a global gnd/vdd net. Instead of creating a dummy adder to generate
207207
the input signal of the first cin port of the chain.
208208

@@ -222,13 +222,13 @@ Detailed Command-line Options
222222

223223
.. option:: -min_hard_mult_size <min_hard_mult_size>
224224

225-
Tells ODIN II the minimum multiplier size (in bits) to be implemented using hard multiplier.
225+
Tells Parmys/ODIN II the minimum multiplier size (in bits) to be implemented using hard multiplier.
226226

227227
**Default:** 3
228228

229229
.. option:: -min_hard_adder_size <MIN_HARD_ADDER_SIZE>
230230

231-
Tells ODIN II the minimum adder size (in bits) that should be implemented using hard adder.
231+
Tells Parmys/ODIN II the minimum adder size (in bits) that should be implemented using hard adder.
232232

233233
**Default:** 1
234234

@@ -238,7 +238,7 @@ Detailed Command-line Options
238238

239239
.. option:: -yosys_script <YOSYS_SCRIPT>
240240

241-
Supplies Yosys with a .ys script file (similar to Tcl script), including the synthesis steps.
241+
Supplies Parmys(Yosys) with a .ys script file (similar to Tcl script), including the synthesis steps.
242242

243243
**Default:** None
244244

doc/src/vtr/running_vtr.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ VTR is a collection of tools that perform the full FPGA CAD flow from Verilog to
77

88
The design flow consists of:
99

10-
* :ref:`odin_ii` (Logic Synthesis)
10+
* :ref:`parmys` (Logic Synthesis & Partial Mapping)
1111
* :ref:`abc` (Logic Optimization & Technology Mapping)
1212
* :ref:`vpr` (Pack, Place & Route)
1313

doc/src/vtr/vtr_flow_fig.pdf

1.62 KB
Binary file not shown.

0 commit comments

Comments
 (0)