Skip to content

Commit c1cd5d2

Browse files
committed
Merge remote-tracking branch 'private/master' into secure-easy-use-negotiation
2 parents 54919ca + 43ca564 commit c1cd5d2

35 files changed

Lines changed: 1637 additions & 148 deletions

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
# Make Github ignore the designs folder when determining repo language
22
flow/designs/src/* linguist-vendored
3+
flow/scripts/variables.json linguist-generated=true

.github/workflows/github-actions-yaml-test.yml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,29 @@ jobs:
1515
fetch-depth: 1
1616
sparse-checkout: |
1717
flow/scripts/generate-variables-docs.py
18+
flow/scripts/yaml_to_json.py
19+
flow/scripts/variables.yaml
20+
flow/scripts/variables.json
1821
docs/user/FlowVariables.md
1922
yamlfix.toml
23+
- name: Install dependencies
24+
run: |
25+
python3 -m venv venv
26+
venv/bin/pip install --quiet pyyaml yamlfix==1.19.1
2027
- name: Run generate-variables-docs.py
2128
run: |
22-
python3 flow/scripts/generate-variables-docs.py
29+
venv/bin/python3 flow/scripts/generate-variables-docs.py
2330
- name: Check if FlowVariables.md is up to date
2431
run: |
2532
git diff --exit-code docs/user/FlowVariables.md
26-
- name: Install dependencies
33+
- name: Check variables.json is up to date
2734
run: |
28-
python3 -m venv venv
29-
venv/bin/pip install --quiet yamlfix==1.17.0
35+
venv/bin/python3 flow/scripts/yaml_to_json.py
36+
git diff --exit-code flow/scripts/variables.json
3037
- name: Run yamlfix check
3138
run: |
3239
source venv/bin/activate
3340
yamlfix --version
3441
set -x
3542
yamlfix -c yamlfix.toml flow/scripts/variables.yaml
36-
git diff flow/scripts/variables.yaml
43+
git diff --exit-code flow/scripts/variables.yaml

docs/user/FlowVariables.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ configuration file.
305305
| <a name="SYNTH_OPERATIONS_ARGS"></a>SYNTH_OPERATIONS_ARGS| Extra arguments appended to the Yosys synth command operations list. When set, replaces the default Kogge-Stone adder extra-map.| |
306306
| <a name="SYNTH_OPT_HIER"></a>SYNTH_OPT_HIER| Optimize constants across hierarchical boundaries.| |
307307
| <a name="SYNTH_REPEATABLE_BUILD"></a>SYNTH_REPEATABLE_BUILD| License to prune anything that makes builds less repeatable, typically used with Bazel to ensure that builds are bit-for-bit identical so that caching works optimally. Removes debug information that encodes paths, timestamps, etc.| 0|
308-
| <a name="SYNTH_RETIME_MODULES"></a>SYNTH_RETIME_MODULES| *This is an experimental option and may cause adverse effects.* *No effort has been made to check if the retimed RTL is logically equivalent to the non-retimed RTL.* List of modules to apply automatic retiming to. These modules must not get dissolved and as such they should either be the top module or be included in SYNTH_KEEP_MODULES. The main use case is to quickly identify if performance can be improved by manually retiming the input RTL. Retiming will treat module ports like register endpoints/startpoints. The objective function of retiming isn't informed by SDC, even the clock period is ignored. As such, retiming will optimize for best delay at potentially high register number cost. Automatic retiming can produce suboptimal results as its timing model is crude and it doesn't find the optimal distribution of registers on long pipelines. See OR discussion #8080.| |
308+
| <a name="SYNTH_RETIME_MODULES"></a>SYNTH_RETIME_MODULES| *This is an experimental option and may cause adverse effects.* *No effort has been made to check if the retimed RTL is logically equivalent to the non-retimed RTL.* List of modules to apply automatic retiming to. These modules must not get dissolved and as such they should either be the top module or be included in SYNTH_KEEP_MODULES. The main use case is to quickly identify if performance can be improved by manually retiming the input RTL. Retiming will treat module ports like register endpoints/startpoints. The objective function of retiming isn't informed by SDC, even the clock period is ignored. As such, retiming will optimize for best delay at potentially high register number cost. Automatic retiming can produce suboptimal results as its timing model is crude and it doesn't find the optimal distribution of registers on long pipelines. See OR discussion # 8080.| |
309309
| <a name="SYNTH_SLANG_ARGS"></a>SYNTH_SLANG_ARGS| Additional arguments passed to the slang frontend during synthesis.| |
310310
| <a name="SYNTH_WRAPPED_ADDERS"></a>SYNTH_WRAPPED_ADDERS| Specify the adder modules that can be used for synthesis, separated by commas. The default adder module is determined by the first element of this variable.| |
311311
| <a name="SYNTH_WRAPPED_MULTIPLIERS"></a>SYNTH_WRAPPED_MULTIPLIERS| Specify the multiplier modules that can be used for synthesis, separated by commas. The default multiplier module is determined by the first element of this variable.| |

flow/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ exports_files(
77

88
# files shared between scripts/synth.sh and scripts/flow.sh steps
99
MAKEFILE_SHARED = [
10+
"scripts/variables.json",
1011
"scripts/*.py",
1112
"scripts/*.sh",
1213
"scripts/*.yaml",

flow/designs/asap7/aes-block/rules-base.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,27 +32,27 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -2890.0,
35+
"value": -4840.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
3939
"value": -52.3,
4040
"compare": ">="
4141
},
4242
"cts__timing__hold__tns": {
43-
"value": -5670.0,
43+
"value": -6310.0,
4444
"compare": ">="
4545
},
4646
"globalroute__antenna_diodes_count": {
4747
"value": 100,
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -77.7,
51+
"value": -125.0,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -3020.0,
55+
"value": -3660.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -80,11 +80,11 @@
8080
"compare": "<="
8181
},
8282
"finish__timing__setup__ws": {
83-
"value": -58.1,
83+
"value": -94.0,
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -897.0,
87+
"value": -1470.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {

flow/designs/asap7/ethmac/rules-base.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -1360.0,
35+
"value": -1530.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {

flow/designs/asap7/gcd-ccs/rules-base.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
"compare": "=="
99
},
1010
"placeopt__design__instance__area": {
11-
"value": 51,
11+
"value": 61,
1212
"compare": "<="
1313
},
1414
"placeopt__design__instance__count__stdcell": {
15-
"value": 489,
15+
"value": 606,
1616
"compare": "<="
1717
},
1818
"detailedplace__design__violations": {
@@ -28,11 +28,11 @@
2828
"compare": "<="
2929
},
3030
"cts__timing__setup__ws": {
31-
"value": -21.3,
31+
"value": -63.5,
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -67.8,
35+
"value": -773.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -15.5,
51+
"value": -63.5,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -62.0,
55+
"value": -771.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -64,7 +64,7 @@
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {
67-
"value": 925,
67+
"value": 1165,
6868
"compare": "<="
6969
},
7070
"detailedroute__route__drc_errors": {
@@ -80,11 +80,11 @@
8080
"compare": "<="
8181
},
8282
"finish__timing__setup__ws": {
83-
"value": -37.9,
83+
"value": -86.7,
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -180.0,
87+
"value": -1270.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {
@@ -96,7 +96,7 @@
9696
"compare": ">="
9797
},
9898
"finish__design__instance__area": {
99-
"value": 53,
99+
"value": 63,
100100
"compare": "<="
101101
}
102102
}

flow/designs/asap7/gcd/rules-base.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
"compare": "=="
99
},
1010
"placeopt__design__instance__area": {
11-
"value": 50,
11+
"value": 61,
1212
"compare": "<="
1313
},
1414
"placeopt__design__instance__count__stdcell": {
15-
"value": 473,
15+
"value": 611,
1616
"compare": "<="
1717
},
1818
"detailedplace__design__violations": {
@@ -28,11 +28,11 @@
2828
"compare": "<="
2929
},
3030
"cts__timing__setup__ws": {
31-
"value": -29.6,
31+
"value": -85.9,
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -119.0,
35+
"value": -1290.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"globalroute__timing__setup__ws": {
51-
"value": -39.7,
51+
"value": -112.0,
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -225.0,
55+
"value": -1790.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -64,7 +64,7 @@
6464
"compare": ">="
6565
},
6666
"detailedroute__route__wirelength": {
67-
"value": 1006,
67+
"value": 1324,
6868
"compare": "<="
6969
},
7070
"detailedroute__route__drc_errors": {
@@ -80,11 +80,11 @@
8080
"compare": "<="
8181
},
8282
"finish__timing__setup__ws": {
83-
"value": -32.2,
83+
"value": -104.0,
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -141.0,
87+
"value": -1570.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {
@@ -96,7 +96,7 @@
9696
"compare": ">="
9797
},
9898
"finish__design__instance__area": {
99-
"value": 55,
99+
"value": 66,
100100
"compare": "<="
101101
}
102102
}

flow/designs/asap7/ibex/rules-base.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -442.0,
35+
"value": -1160.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -52,7 +52,7 @@
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -592.0,
55+
"value": -9030.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -84,7 +84,7 @@
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -286.0,
87+
"value": -722.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {

flow/designs/asap7/mock-alu/rules-base.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": ">="
3333
},
3434
"cts__timing__setup__tns": {
35-
"value": -13200.0,
35+
"value": -14100.0,
3636
"compare": ">="
3737
},
3838
"cts__timing__hold__ws": {
@@ -52,7 +52,7 @@
5252
"compare": ">="
5353
},
5454
"globalroute__timing__setup__tns": {
55-
"value": -15100.0,
55+
"value": -18100.0,
5656
"compare": ">="
5757
},
5858
"globalroute__timing__hold__ws": {
@@ -84,7 +84,7 @@
8484
"compare": ">="
8585
},
8686
"finish__timing__setup__tns": {
87-
"value": -13000.0,
87+
"value": -15700.0,
8888
"compare": ">="
8989
},
9090
"finish__timing__hold__ws": {

0 commit comments

Comments
 (0)