lowRISC / lowRISC/opentitan

[tlgen] Set minimum device spacing on crossbar level

Open
#25,153 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

In PR #25108, we reduced the minimum address spacing between / base alignment of devices to 256 B, which is necessary for some crossbars. For many other crossbars, in particular those used by software above the lowest level and DMA engines, a minimum of 4 KiB (corresponding to the smallest page size) is more appropriate. This is also the recommendation of TileLink.

The goal of this issue is to make the minimum device spacing a parameter of the crossbar definition.

See https://github.com/lowRISC/opentitan/pull/25108#discussion_r1841931510 for background information.

Contributor guide

Open the contributing guide

Research direction

Start with PR #25108 and the linked discussion for the background on address spacing and the relevant crossbar definitions. Make minimum device spacing configurable per crossbar, supporting the 256 B and 4 KiB cases described in the issue, and verify that the resulting definitions follow the TileLink recommendation.

Written by the indexing model from the issue text.

Assessment

Domain
embedded-iot
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.