Skip to content

Commit b940b71

Browse files
committed
Deploying to main from @ ChipFlow/chipflow-docs@e8bad3b 🚀
1 parent 7745331 commit b940b71

99 files changed

Lines changed: 15661 additions & 1418 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

en/latest/_images/01-main-view.png

177 KB
Loading
179 KB
Loading
177 KB
Loading
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Base Peripherals
2+
================
3+
4+
Core system peripherals for SoC identification and timing.
5+
6+
.. automodule:: chipflow_digital_ip.base
7+
:members:
8+
:show-inheritance:
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Digital IP Library
2+
==================
3+
4+
A curated collection of parameterised and configurable RTL cores implemented or wrapped with
5+
`Amaranth <https://github.com/amaranth-lang/amaranth>`_ along with metadata for use with the
6+
`ChipFlow platform <https://docs.chipflow.io>`_.
7+
8+
.. toctree::
9+
:maxdepth: 2
10+
:caption: Contents:
11+
12+
base
13+
io
14+
memory
15+
processors
16+
17+
Indices and tables
18+
==================
19+
20+
* :ref:`genindex`
21+
* :ref:`modindex`
22+
* :ref:`search`
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
I/O Peripherals
2+
===============
3+
4+
Communication and general-purpose I/O peripherals.
5+
6+
.. automodule:: chipflow_digital_ip.io
7+
:members:
8+
:show-inheritance:
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Memory Peripherals
2+
==================
3+
4+
Memory controllers and storage peripherals.
5+
6+
.. automodule:: chipflow_digital_ip.memory
7+
:members:
8+
:show-inheritance:
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Processors
2+
==========
3+
4+
CPU cores and debug modules.
5+
6+
.. automodule:: chipflow_digital_ip.processors
7+
:members:
8+
:show-inheritance:
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
# Ideas Extracted from Unfinished Documentation
2+
3+
This file contains useful ideas extracted from the unfinished documentation before it was removed.
4+
These may be implemented in the future or serve as inspiration for documentation improvements.
5+
6+
## Good Ideas from advanced-configuration.rst
7+
8+
### Environment Variables (REAL - should be documented)
9+
- `CHIPFLOW_ROOT`: Root directory of your project (must contain chipflow.toml)
10+
- `CHIPFLOW_API_KEY`: API key for ChipFlow cloud services
11+
- `CHIPFLOW_API_ENDPOINT`: Custom API endpoint (defaults to https://build.chipflow.com)
12+
- `CHIPFLOW_DEBUG`: Enable debug logging (set to "1")
13+
14+
**Action**: Add environment variable reference to chipflow-commands.rst or chipflow-toml-guide.rst
15+
16+
### Custom Step Implementation Example (REAL - should be documented)
17+
The doc had a good basic example:
18+
```python
19+
from chipflow_lib.steps.silicon import SiliconStep
20+
21+
class CustomSiliconStep(SiliconStep):
22+
def prepare(self):
23+
# Custom preparation logic
24+
result = super().prepare()
25+
# Additional processing
26+
return result
27+
28+
def submit(self, rtlil_path, *, dry_run=False):
29+
# Custom submission logic
30+
if dry_run:
31+
# Custom dry run behavior
32+
return
33+
# Custom submission implementation
34+
```
35+
36+
**Action**: Create dedicated "Customizing Steps" guide with real examples
37+
38+
### Git Integration Notes (REAL - worth mentioning)
39+
- Design submissions include Git commit hash for tracking
40+
- ChipFlow warns if submitting from a dirty Git tree
41+
- Version information is embedded in manufacturing metadata
42+
43+
**Action**: Add to silicon workflow documentation
44+
45+
### CI/CD Integration (REAL)
46+
- Use `CHIPFLOW_API_KEY` environment variable
47+
- Standard CI secret handling practices apply
48+
49+
**Action**: Add brief CI/CD section to getting-started or create CI/CD guide
50+
51+
### Multiple Top-Level Components (REAL but needs clarification)
52+
```toml
53+
[chipflow.top]
54+
soc = "my_design.components:MySoC"
55+
uart = "my_design.peripherals:UART"
56+
```
57+
58+
**Note**: This creates multiple top-level instances, NOT a hierarchy. Need to document what this actually does.
59+
60+
**Action**: Clarify [chipflow.top] behavior in chipflow-toml-guide.rst
61+
62+
## Aspirational Features (Not Implemented)
63+
64+
These were in the docs but don't exist in the codebase. Listed here in case they're planned for future:
65+
66+
### From advanced-configuration.rst:
67+
- `[chipflow.clocks]` - Named clock domain configuration
68+
- `[chipflow.silicon.debug]` - heartbeat, logic_analyzer, jtag options
69+
- `[chipflow.silicon.constraints]` - max_area, max_power, target_frequency
70+
- `[chipflow.deps]` - External IP core integration
71+
- `[chipflow.docs]` - Automatic documentation generation
72+
- `[chipflow.sim.options]` - trace_all, seed, custom cycles
73+
- `[chipflow.sim.test_vectors]` - Test vector file support
74+
- Advanced pad configurations - differential pairs, drive strength (8mA), slew rate, pull-up/down, schmitt trigger
75+
76+
### From workflows.rst:
77+
- Board workflow / FPGA deployment (BoardStep doesn't exist)
78+
- `chipflow silicon validate` command
79+
- `chipflow silicon status` command
80+
- Amaranth.sim-style testbenches (ChipFlow uses CXXRTL)
81+
- VCD waveform dumping
82+
- `[chipflow.board]` configuration section
83+
84+
### From create-project.rst:
85+
- Project scaffolding / `pdm init` workflow
86+
- `platform.request()` API pattern
87+
- `[chipflow.resets]` configuration
88+
89+
## Why These Docs Were Removed
90+
91+
The unfinished docs contained too much aspirational content that:
92+
1. Doesn't match the actual API/config schema
93+
2. References unimplemented features
94+
3. Could confuse users about what's real vs planned
95+
4. Wasn't maintained as the codebase evolved
96+
97+
Better to have accurate documentation of what exists than aspirational docs of what might exist someday.
98+
99+
## What Was Kept
100+
101+
Good ideas from these docs have been incorporated into:
102+
- `architecture.rst` - Overall system architecture
103+
- `simulation-guide.rst` - Complete simulation workflow
104+
- `using-pin-signatures.rst` - Pin configuration (the real way)
105+
- Existing `chipflow-toml-guide.rst` and `chipflow-commands.rst`

0 commit comments

Comments
 (0)