diff --git a/.gitignore b/.gitignore index 27b23c9..4f726bd 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ docs-pdf/Makefile docs-pdf/make.bat docs-pdf/mistral.fdb_latexmk docs-pdf/floorplans.pdf +docs-pdf/lab-common.pdf +docs-pdf/lab-cell.pdf +docs-pdf/lab-modes.pdf diff --git a/docs-html/_images/lab-cell.svg b/docs-html/_images/lab-cell.svg new file mode 100644 index 0000000..a5571aa --- /dev/null +++ b/docs-html/_images/lab-cell.svg @@ -0,0 +1,4534 @@ + + diff --git a/docs-html/_images/lab-common.svg b/docs-html/_images/lab-common.svg new file mode 100644 index 0000000..74c4d98 --- /dev/null +++ b/docs-html/_images/lab-common.svg @@ -0,0 +1,2221 @@ + + diff --git a/docs-html/_images/lab-modes.svg b/docs-html/_images/lab-modes.svg new file mode 100644 index 0000000..fd3f60a --- /dev/null +++ b/docs-html/_images/lab-modes.svg @@ -0,0 +1,3630 @@ + + diff --git a/docs-html/index.html b/docs-html/index.html index bf58303..c4d4535 100644 --- a/docs-html/index.html +++ b/docs-html/index.html @@ -477,18 +477,31 @@
The LABs are the main combinatorial and register blocks of the FPGA. -A LAB tile includes 10 sub-blocks with 64 bits of LUT splitted in 6 -parts, four Flip-Flops, two 1-bit adders and a lot of routing logic. -In addition a common control subblock selects and dispatches clock, -enable, clear, etc signals.
+A LAB tile includes 10 sub-blocks called cells with 64 bits of LUT +splitted in 6 parts, four Flip-Flops, two 1-bit adders and a lot of +routing logic. In addition a common control subblock selects and +dispatches clock, enable, clear, etc signals. + + +Name |
@@ -509,7 +522,7 @@ lut |
-TODO |
+Select whether the data input of the FF is the LUTs or the adder |
|||
---|---|---|---|---|---|---|
BCLK_SEL |
0-9 |
@@ -522,7 +535,7 @@ off |
-TODO |
+Select the clock input to the two bottom FFs |
||
BCLR_SEL |
0-9 |
@@ -532,7 +545,7 @@ 0 |
-TODO |
+Select the aclr input to the two bottom FFs |
||
BDFF0 |
0-9 |
@@ -543,7 +556,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
BDFF1 |
0-9 |
@@ -554,7 +567,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
BDFF1L |
0-9 |
@@ -565,7 +578,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
BEF_SEL |
0-9 |
@@ -576,35 +589,35 @@ e |
-TODO |
+Select which input goes to the sdata input of the two bottom FFs |
||
BPKREG0 |
0-9 |
Bool |
t/f |
f |
-TODO |
+Force the top FF of the bottom half to get its input from tef_sel |
BPKREG1 |
0-9 |
Bool |
t/f |
f |
-TODO |
+Force the bottom FF of the bottom half to get its input from tef_sel |
BSCLR_DIS |
0-9 |
Bool |
t/f |
f |
-TODO |
+Disable sync clear for the bottom half |
BSLOAD_EN |
0-9 |
Bool |
t/f |
f |
-TODO |
+Select whether to enable the sync load line of the two bottom FFs |
B_FEEDBACK_SEL |
0-9 |
@@ -614,14 +627,14 @@ 0 |
-TODO |
+Select which of the FFs goes to the bottom feedback line |
||
LUT_MASK |
0-9 |
Ram |
64 bits |
0 |
-TODO |
+LUT values, A has bits 0-15, B 16-23, C 24-31, D 32-47, E 48-55. F 56-63 |
MODE |
0-9 |
@@ -646,14 +659,14 @@ l6 |
-TODO |
+Connectivity mode of the cell |
||
SHARE |
0-9 |
Bool |
t/f |
f |
-TODO |
+Route the share line to the addition |
TCLK_SEL |
0-9 |
@@ -666,7 +679,7 @@ off |
-TODO |
+Select the clock input to the two top FFs |
||
TCLR_SEL |
0-9 |
@@ -676,7 +689,7 @@ 0 |
-TODO |
+Select the aclr input to the two top FFs |
||
TDFF0 |
0-9 |
@@ -687,7 +700,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
TDFF1 |
0-9 |
@@ -698,7 +711,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
TDFF1L |
0-9 |
@@ -709,7 +722,7 @@ reg |
-TODO |
+Select between LUT and FF for that output |
||
TEF_SEL |
0-9 |
@@ -720,35 +733,35 @@ e |
-TODO |
+Select which input goes to the sdata input of the two top FFs |
||
TPKREG0 |
0-9 |
Bool |
t/f |
f |
-TODO |
+Force the top FF of the top half to get its input from tef_sel |
TPKREG1 |
0-9 |
Bool |
t/f |
f |
-TODO |
+Force the bottom FF of the top half to get its input from tef_sel |
TSCLR_DIS |
0-9 |
Bool |
t/f |
f |
-TODO |
+Disable sync clear for the top half |
TSLOAD_EN |
0-9 |
Bool |
t/f |
f |
-TODO |
+Select whether to enable the sync load line of the two top FFs |
T_FEEDBACK_SEL |
0-9 |
@@ -758,14 +771,14 @@ 0 |
-TODO |
+Select which of the FFs goes to the top feedback line |
||
ACLR0_INV |
Bool |
t/f |
f |
-TODO |
+Optional inverter for asynchronous clear 0 |
|
ACLR0_SEL |
@@ -776,14 +789,14 @@ | gin1 |
-TODO |
+Selects between clock and data for async clear 0 |
||
ACLR1_INV |
Bool |
t/f |
f |
-TODO |
+Optional inverter for asynchronous clear 1 |
|
ACLR1_SEL |
@@ -794,28 +807,28 @@ | gin0 |
-TODO |
+Selects between clock and data for async clear 1 |
||
BTO_DIS |
Bool |
t/f |
f |
-TODO |
+Something to do with inter-block carry or share |
|
BYPASS_DIS |
Bool |
t/f |
t |
-TODO |
+Something to do with inter-block carry or share |
|
CLK0_INV |
Bool |
t/f |
f |
-TODO |
+Optional inverter for clock 0 |
|
CLK0_SEL |
@@ -826,14 +839,14 @@ | clka |
-TODO |
+Selects between the two intermedaite clock lines for clock 0 |
||
CLK1_INV |
Bool |
t/f |
f |
-TODO |
+Optional inverter for clock 1 |
|
CLK1_SEL |
@@ -844,14 +857,14 @@ | clka |
-TODO |
+Selects between the two intermedaite clock lines for clock 1 |
||
CLK2_INV |
Bool |
t/f |
f |
-TODO |
+Optional inverter for clock 2 |
|
CLK2_SEL |
@@ -862,7 +875,7 @@ | clka |
-TODO |
+Selects between the two intermedaite clock lines for clock 2 |
||
CLKA_SEL |
@@ -873,7 +886,7 @@ | clki0 |
-TODO |
+Selects between clock and data for the clka intermediate line |
||
CLKB_SEL |
@@ -884,7 +897,7 @@ | clki1 |
-TODO |
+Selects between clock and data for the clkb intermediate line |
||
DFT_MODE |
@@ -903,14 +916,14 @@ | Bool |
t/f |
t |
-TODO |
+Enables the enable 0 line (else always on) |
EN0_NINV |
Bool |
t/f |
t |
-TODO |
+Optional inverter for enable 0 |
|
EN0_SEL |
@@ -921,21 +934,21 @@ | gin1 |
-TODO |
+Source selection for enable 0 |
||
EN1_EN |
Bool |
t/f |
t |
-TODO |
+Enables the enable 1 line (else always on) |
|
EN1_NINV |
Bool |
t/f |
t |
-TODO |
+Optional inverter for enable 1 |
|
EN1_SEL |
@@ -946,28 +959,28 @@ | gin3 |
-TODO |
+Source selection for enable 1 |
||
EN2_EN |
Bool |
t/f |
t |
-TODO |
+Enables the enable 2 line (else always on) |
|
EN2_NINV |
Bool |
t/f |
t |
-TODO |
+Optional inverter for enable 2 |
|
EN_SCLK_LOAD_WHAT |
Bool |
t/f |
f |
-TODO |
+Unclear, possibly source selection for enable 2 |
|
REGSCAN_LATCH_EN |
@@ -981,7 +994,7 @@ | Bool |
t/f |
f |
-TODO |
+Optional inverter for synchronous clear |
SCLR_MUX |
@@ -992,14 +1005,14 @@ | gin3 |
-TODO |
+Source selection for sync clear, possibly more subtle (interaction with en2 and sload) |
||
SLOAD_INV |
Bool |
t/f |
t |
-TODO |
+Optional inverter for synchronous load |
|
SLOAD_SEL |
@@ -1010,24 +1023,24 @@ | gin0 |
-TODO |
+Source selection for sync load, possibly more subtle (interaction with en2 and sclr) |
||
TTO_DIS |
Bool |
t/f |
f |
-TODO |
+Something to do with inter-block carry or share |
Port Name |
@@ -1042,103 +1055,103 @@ 0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
---|---|---|---|---|---|
ACLR |
0-1 |
TCLK |
-TODO |
+Common clock inputs for asynchronous clear of the FFs |
|
B |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
C |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
CLKIN |
0-1 |
TCLK |
-TODO |
+Common clock inputs for clocking of the FFs |
|
D |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
DATAIN |
0-3 |
GOUT |
-TODO |
+Common data inputs for enables, sync clear and load |
|
E0 |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
E1 |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
F0 |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
F1 |
0-9 |
GOUT |
-TODO |
+Data input to the lab cell |
|
FFB0 |
0-9 |
GIN |
-TODO |
+Output from either the top FF of the bottom hslf of the lab cell or the bottomlut to data routing |
|
FFB1 |
0-9 |
GIN |
-TODO |
+Output from either the bottom FF of the bottom hslf of the lab cell or the bottom lut to data routing |
|
FFB1L |
0-9 |
LD |
-TODO |
+Output from either the bottom FF of the bottom hslf of the lab cell or the bottom lut to local dispatch |
|
FFT0 |
0-9 |
GIN |
-TODO |
+Output from either the top FF of the top hslf of the lab cell or the top lut to data routing |
|
FFT1 |
0-9 |
GIN |
-TODO |
+Output from either the bottom FF of the top hslf of the lab cell or the top lut to data routing |
|
FFT1L |
0-9 |
LD |
-TODO |
+Output from either the bottom FF of the top hslf of the lab cell or the top lut to local dispatch |