Skip to content

Commit 3f55425

Browse files
committed
docs: Update README.md
1 parent 3467367 commit 3f55425

1 file changed

Lines changed: 19 additions & 12 deletions

File tree

README.md

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@ The Serial Link is released under Solderpad v0.51 (SHL-0.51) see [`LICENSE`](LIC
1717

1818
### 🔗 Dependencies
1919

20-
The link uses [bender](https://github.com/pulp-platform/bender) to manage its dependencies and to automatically generate compilation scripts. If you want to change the configuration of the serial link, you need to regenerate the register files, which requires `Python >= 3.11` and the [peakrdl](https://peakrdl-regblock.readthedocs.io/en/latest/) package. You can install the dependencies with pip:
20+
The link uses [bender](https://github.com/pulp-platform/bender) to manage its dependencies and to automatically generate compilation scripts. Simulation and register generation are driven by [just](https://github.com/casey/just). If you want to change the configuration of the serial link, you need to regenerate the register files, which requires `Python >= 3.11` and the [peakrdl](https://peakrdl-regblock.readthedocs.io/en/latest/) package. Register generation uses [uv](https://github.com/astral-sh/uv) to run peakrdl without requiring a manual environment setup.
21+
22+
Tool versions for EDA tools (simulators, bender) can be configured via a `.env` file. A template for IIS-internal tool versions is provided in [`.iis_env`](.iis_env):
2123

2224
```sh
23-
pip install .
25+
ln -s .iis_env .env
2426
```
2527

2628
### 💡 Integration
@@ -47,18 +49,23 @@ all: $(SLINK_ROOT)/src/regs/slink_reg.sv
4749
If you want to use or test the Serial Link as a standalone design, it can be simulated with the following steps:
4850

4951
```sh
50-
# To compile the link, run the following command:
51-
make all
52-
# Run the simulation. This will start the simulation in batch mode.
53-
make <simulator>-run-batch
54-
# To open it in the GUI mode, run the following command:
55-
# This command will also add all interesting waves to the wave window.
56-
make <simulator>-run
52+
# Compile the design (simulator: vsim [default], vcs)
53+
just compile
54+
just compile vcs
55+
56+
# Run in batch mode
57+
just run-batch
58+
just run-batch vcs
59+
60+
# Open in GUI mode (also loads wave files)
61+
just run
62+
just run vcs
5763
```
5864

59-
where `<simulator>` can be either `vsim` (for ModelSim/QuestaSim) or `vcs` (for Synopsys VCS). To test the testbench (defaults to `tb_axi_slink`), you can set the `TB_DUT` variable:
65+
To use a different testbench (default: `tb_axi_slink`), pass it as the second argument:
6066
```sh
61-
make <simulator>-run TB_DUT=tb_ch_calib_slink
67+
just compile vcs tb_ch_calib_slink
68+
just run-batch vcs tb_ch_calib_slink
6269
```
6370

6471
## 🔧 Configuration
@@ -67,7 +74,7 @@ The link can be parametrized with arbitrary AXI interfaces resp. structs (`axi_r
6774

6875
```sh
6976
# Generates the registers for the desired configuration
70-
make slink-gen-regs SLINK_NUM_CHANNELS=<num_channels> SLINK_NUM_LANES=<num_lanes>
77+
just gen-regs SLINK_NUM_CHANNELS=<num_channels> SLINK_NUM_LANES=<num_lanes>
7178
```
7279

7380
The registers are generated with [peakrdl](https://peakrdl-regblock.readthedocs.io/en/latest/) with the parametrized SystemRDL config file [`slink_reg.rdl`](src/regs/slink_reg.rdl).

0 commit comments

Comments
 (0)