Skip to content

Commit b901d20

Browse files
authored
Merge pull request #27 from litghost/note_on_cell_bel_mapping
Add note about cell to BEL mapping assumption.
2 parents 4a79f90 + 43206a1 commit b901d20

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

docs/bel_and_site_design.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,15 @@ enables a place and route tool to succeed.
99
Good design is hard to capture, but this document will talk about some of the
1010
considerations.
1111

12+
### Assumptions about cell placement and driver BEL pins
13+
14+
One important note is that BELs represent a placable location for a cell, and
15+
only one cell should be placable at a given BEL. This means that the cell
16+
library design and BEL design strongly affects what is expressable by the
17+
place and route tool. There will be some examples highlighted below that
18+
expand on how this is important and relevant when discussing concrete
19+
examples.
20+
1221
## Granularity of the cell library
1322

1423
It is important to divide the place and route problem and the synthesis
@@ -188,3 +197,19 @@ So given the Versal site layout, the following BELs will be required (per SLICE
188197
- 1 LUT4 BELs that connect to the carry
189198
- 2 LUT5 BELs that connect to the output FF or output MUX
190199
- 1 LUT6 BELs that connect to the output FF or output MUX
200+
201+
#### Implication of a wider BEL definition
202+
203+
Consider the Versal structure, but instead of drawing four BELs per row, only have two
204+
BELs per row. One BEL has the `O5_1` and `prop` output BEL pins and the
205+
other BEL has the `O6` and `O5_2` BEL pin. In this configuration, if the cell
206+
library does not expose a cell that maps to both the `O5_1` and `prop` output
207+
BEL pins, then it will not be possible to map LUTs that leverage both output
208+
BEL pins.
209+
210+
In theory, the cell port to BEL pin map could map the output pin of a LUT4
211+
element to both the `prop` and `O5_1` output BEL pins, but then there will be
212+
two output BEL pins driving the net connected to the cell port. Having
213+
multiple BEL pins driving one net is not legal, except for the global logic 0
214+
and 1.
215+

0 commit comments

Comments
 (0)