Skip to content

Commit 6e657c4

Browse files
committed
Clean up a bit - move unfinished docs away for now
1 parent 5e967cf commit 6e657c4

File tree

2 files changed

+33
-46
lines changed

2 files changed

+33
-46
lines changed

docs/advanced-configuration.rst

Lines changed: 23 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ ChipFlow supports multiple clock domains in your design:
1818
[chipflow.clocks]
1919
# Default clock for the design
2020
default = "sys_clk"
21-
21+
2222
# Additional clock domains
2323
pll = "pll_clk"
2424
fast = "fast_clk"
@@ -42,11 +42,11 @@ ChipFlow provides debugging options for silicon designs:
4242
[chipflow.silicon.debug]
4343
# Heartbeat LED to verify clock/reset functionality
4444
heartbeat = true
45-
45+
4646
# Internal logic analyzer
4747
logic_analyzer = true
4848
logic_analyzer_depth = 1024
49-
49+
5050
# JTAG debug access
5151
jtag = true
5252
@@ -60,7 +60,7 @@ To prevent pin assignments from changing accidentally, ChipFlow supports a pin l
6060
[chipflow.pin_lock]
6161
# Enable pin locking
6262
enabled = true
63-
63+
6464
# Lock file path (relative to project root)
6565
file = "pins.lock"
6666
@@ -76,10 +76,10 @@ For silicon designs, you can specify resource constraints:
7676
[chipflow.silicon.constraints]
7777
# Maximum die area in mm²
7878
max_area = 1.0
79-
79+
8080
# Maximum power budget in mW
8181
max_power = 100
82-
82+
8383
# Target clock frequency in MHz
8484
target_frequency = 100
8585
@@ -93,7 +93,7 @@ You can specify custom top-level components for your design:
9393
[chipflow.top]
9494
# Main SoC component
9595
soc = "my_design.components:MySoC"
96-
96+
9797
# Additional top-level components
9898
uart = "my_design.peripherals:UART"
9999
spi = "my_design.peripherals:SPI"
@@ -113,7 +113,7 @@ FPGA Board Configuration
113113
[chipflow.board]
114114
# Target FPGA board
115115
target = "ulx3s"
116-
116+
117117
# Board-specific options
118118
[chipflow.board.options]
119119
size = "85k" # FPGA size
@@ -148,7 +148,7 @@ ChipFlow can integrate with external dependencies:
148148
"github.com/chipflow/[email protected]",
149149
"github.com/chipflow/[email protected]"
150150
]
151-
151+
152152
# External library paths
153153
[chipflow.deps.libs]
154154
amaranth_cores = "amaranth_cores"
@@ -164,13 +164,13 @@ For more complex testing setups:
164164
[chipflow.sim]
165165
# Testbench implementation
166166
testbench = "my_design.tb:TestBench"
167-
167+
168168
# Custom simulation flags
169169
[chipflow.sim.options]
170170
trace_all = true
171171
cycles = 10000
172172
seed = 12345
173-
173+
174174
# Test vectors
175175
[chipflow.sim.test_vectors]
176176
path = "test_vectors.json"
@@ -186,13 +186,13 @@ To generate custom documentation for your design:
186186
[chipflow.docs]
187187
# Documentation output directory
188188
output = "docs/build"
189-
189+
190190
# Block diagram generation
191191
block_diagram = true
192-
192+
193193
# Custom templates
194194
template_dir = "docs/templates"
195-
195+
196196
# Additional documentation files
197197
extra_files = [
198198
"docs/architecture.md",
@@ -204,12 +204,10 @@ Environment Variables
204204

205205
Several environment variables can be used to customize ChipFlow's behavior:
206206

207-
- ``CHIPFLOW_ROOT``: Root directory of your project
208-
- ``CHIPFLOW_API_KEY_ID``: API key ID for ChipFlow services
209-
- ``CHIPFLOW_API_KEY_SECRET``: API key secret for ChipFlow services
210-
- ``CHIPFLOW_API_ENDPOINT``: Custom API endpoint (defaults to production)
207+
- ``CHIPFLOW_ROOT``: Root directory of your project, which must contain `chipflow.toml`
208+
- ``CHIPFLOW_API_KEY``: API key secret for ChipFlow services
209+
- ``CHIPFLOW_API_ENDPOINT``: Custom API endpoint (defaults to production - https://build.chipflow.org)
211210
- ``CHIPFLOW_DEBUG``: Enable debug logging (set to "1")
212-
- ``CHIPFLOW_CONFIG``: Custom path to chipflow.toml file
213211

214212
Using Custom Steps
215213
------------------
@@ -221,20 +219,20 @@ To implement a custom step implementation:
221219
.. code-block:: python
222220
223221
from chipflow_lib.steps.silicon import SiliconStep
224-
222+
225223
class CustomSiliconStep(SiliconStep):
226224
def prepare(self):
227225
# Custom preparation logic
228226
result = super().prepare()
229227
# Additional processing
230228
return result
231-
229+
232230
def submit(self, rtlil_path, *, dry_run=False):
233231
# Custom submission logic
234232
if dry_run:
235233
# Custom dry run behavior
236234
return
237-
235+
238236
# Custom submission implementation
239237
# ...
240238
@@ -258,13 +256,13 @@ For complex pin requirements:
258256
# Differential pair
259257
lvds_in_p = { type = "i", loc = "N4", diff_pair = "positive" }
260258
lvds_in_n = { type = "i", loc = "N5", diff_pair = "negative" }
261-
259+
262260
# Multiple bits of a bus
263261
data[0] = { type = "io", loc = "S1" }
264262
data[1] = { type = "io", loc = "S2" }
265263
data[2] = { type = "io", loc = "S3" }
266264
data[3] = { type = "io", loc = "S4" }
267-
265+
268266
# Special I/O modes
269267
spi_clk = { type = "o", loc = "E1", drive = "8mA", slew = "fast" }
270268
i2c_sda = { type = "io", loc = "W1", pull = "up", schmitt = true }
@@ -278,14 +276,4 @@ ChipFlow integrates with Git for version tracking:
278276
2. ChipFlow warns if submitting from a dirty Git tree
279277
3. Version information is embedded in the manufacturing metadata
280278

281-
For CI/CD integration, set the following environment variables:
282-
283-
.. code-block:: bash
284-
285-
# CI/CD environment variables
286-
export CHIPFLOW_CI=1
287-
export CHIPFLOW_NONINTERACTIVE=1
288-
289-
# Authentication
290-
export CHIPFLOW_API_KEY_ID=your_ci_key_id
291-
export CHIPFLOW_API_KEY_SECRET=your_ci_key_secret
279+
For CI/CD integration, call the `chipflow` command as usual, and make sure to set your `CHIPFLOW_API_KEY` using your CI providers' secret handling.

docs/workflows.rst renamed to docs/unfinished/workflows.rst

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ The simulation workflow allows you to test your design in a virtual environment
2424
.. code-block:: bash
2525
2626
# Prepare the simulation environment
27-
python -m chipflow_lib.cli sim prepare
27+
pdm chipflow sim prepare
2828
2929
# Run the simulation tests
30-
python -m chipflow_lib.cli sim run
30+
pdm chipflow sim run
3131
3232
**Key Configuration:**
3333

@@ -98,10 +98,10 @@ The board workflow prepares your design for FPGA deployment, which is useful for
9898
.. code-block:: bash
9999
100100
# Prepare the design for FPGA deployment
101-
python -m chipflow_lib.cli board prepare
101+
pdm chipflow board prepare
102102
103103
# Deploy to FPGA
104-
python -m chipflow_lib.cli board deploy
104+
pdm chipflow board deploy
105105
106106
**Key Configuration:**
107107

@@ -128,16 +128,16 @@ The silicon workflow is the path to producing actual ASICs through ChipFlow's ma
128128
.. code-block:: bash
129129
130130
# Prepare design for manufacturing
131-
python -m chipflow_lib.cli silicon prepare
131+
pdm chipflow silicon prepare
132132
133133
# Validate the design against manufacturing rules
134-
python -m chipflow_lib.cli silicon validate
134+
pdm chipflow silicon validate
135135
136136
# Submit the design for manufacturing
137-
python -m chipflow_lib.cli silicon submit
137+
pdm chipflow silicon submit
138138
139139
# Check the status of a submitted design
140-
python -m chipflow_lib.cli silicon status
140+
pdm chipflow silicon status
141141
142142
**Key Configuration:**
143143

@@ -186,16 +186,15 @@ To submit a design, you'll need to set up authentication:
186186

187187
.. code-block:: bash
188188
189-
CHIPFLOW_API_KEY_ID=your_key_id
190-
CHIPFLOW_API_KEY_SECRET=your_key_secret
189+
CHIPFLOW_API_KEY=your_key_secret
191190
192191
2. Alternatively, set these as environment variables before submission:
193192

194193
.. code-block:: bash
195194
196195
export CHIPFLOW_API_KEY_ID=your_key_id
197196
export CHIPFLOW_API_KEY_SECRET=your_key_secret
198-
python -m chipflow_lib.cli silicon submit
197+
pdm chipflow silicon submit
199198
200199
Customizing Workflows
201200
---------------------

0 commit comments

Comments
 (0)