You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/chipflow-toml-guide.rst
+49-21Lines changed: 49 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
-
Intro to chipflow.toml
2
-
======================
1
+
Intro to ``chipflow.toml``
2
+
==========================
3
3
4
4
The ``chipflow.toml`` file provides configuration for your design with the ChipFlow platform.
5
5
@@ -14,25 +14,55 @@ Let's start with a typical example:
14
14
# Assert that example-chipflow.toml matches the current config schema. If
15
15
# this test fails, then its likely that the content in this file will need
16
16
# to be updated.
17
-
from chipflow_lib.cli import _parse_config_file
17
+
from chipflow_lib import _parse_config_file
18
18
_parse_config_file("docs/example-chipflow.toml")
19
19
20
-
project_id
21
-
===========
20
+
``[chipflow]``
21
+
--------------
22
22
23
-
The ``project_id`` is set to the project ID which you can get from the ChipFlow app project page.
23
+
.. code-block:: TOML
24
+
25
+
[chipflow]
26
+
project_name = "my_project"
27
+
28
+
29
+
The ``project_name`` is a human-readable identifier for this project. If not set, the tool and library will use the project name configured in ``pyproject.toml``.
30
+
31
+
``[chipflow.steps]``
32
+
--------------------
33
+
34
+
The ``steps`` section allows overriding or addition to the standard steps available from `chipflow_lib`_.
35
+
36
+
For example, if you want to override the standard silicon preparation step, you could derive from :class:`chipflow_lib.steps.silicon.SiliconStep`, add your custom functionality
37
+
and add the following to your `chipflow.toml`, with the appropriate Python `qualified name`_ :
38
+
39
+
.. code-block:: TOML
40
+
41
+
[chipflow.stepe]
42
+
silicon = "my_design.steps.silicon:SiliconStep"
24
43
25
-
steps
26
-
=====
27
44
28
-
The ``steps`` define the Python class which will be used as an entry point to these parts of the ChipFlow process.
29
45
You probably won't need to change these if you're starting from an example repository.
The ``silicon`` section sets the Foundry ``process`` we are targeting for manufacturing, and the physical ``pad_ring`` we want to place our design inside.
35
-
You'll choose the ``process`` and ``pad_ring`` based in the requirements of your design.
50
+
51
+
``[chipflow.clocks]``
52
+
---------------------
53
+
54
+
``[chipflow.silicon]``
55
+
----------------------
56
+
57
+
.. code-block:: TOML
58
+
59
+
[chipflow.silicon]
60
+
process = "ihp_sg13g2"
61
+
package = "pga144"
62
+
63
+
64
+
The ``silicon`` section sets the Foundry ``process`` we are targeting for manufacturing, and the physical ``package`` we want to place our design inside.
65
+
You'll choose the ``process`` and ``package`` based in the requirements of your design.
0 commit comments