|
1 | 1 | Internals
|
2 | 2 | =========
|
3 | 3 |
|
4 |
| -Underlying tool steps |
5 |
| ---------------------- |
| 4 | +Underlying steps |
| 5 | +---------------- |
6 | 6 |
|
7 | 7 | .. code-block::
|
8 | 8 |
|
9 |
| - create project |
10 |
| - config project |
11 |
| - part |
12 |
| - precfg (hook) |
13 |
| - params |
14 |
| - defines |
15 |
| - includes |
16 |
| - files |
17 |
| - top |
18 |
| - postcfg (hook) |
19 |
| - close project |
| 9 | + project creation [options] |
| 10 | + project configuration |
| 11 | + part |
| 12 | + precfg hook |
| 13 | + params |
| 14 | + defines |
| 15 | + includes |
| 16 | + files [options] |
| 17 | + top |
| 18 | + postcfg hook |
| 19 | + project close |
20 | 20 |
|
21 |
| - open project |
22 |
| - presyn (hook) |
23 |
| - synthesis |
24 |
| - postsyn (hook) |
25 |
| - prepar (hook) |
26 |
| - place_and_route |
27 |
| - postpar (hook) |
28 |
| - prebit (hook) |
29 |
| - bitstream |
30 |
| - postbit (hook) |
31 |
| - close project |
| 21 | + project open |
| 22 | + presyn hook |
| 23 | + synthesis [options] |
| 24 | + postsyn hook |
| 25 | + prepar hook |
| 26 | + place_and_route [options] |
| 27 | + postpar hook |
| 28 | + prebit hook |
| 29 | + bitstream [options] |
| 30 | + postbit hook |
| 31 | + project close |
32 | 32 |
|
33 | 33 | Internal data structure
|
34 | 34 | -----------------------
|
35 | 35 |
|
36 | 36 | .. code-block::
|
37 | 37 |
|
38 |
| - data = { |
39 |
| - 'part': 'PARTNAME', |
40 |
| - 'includes': ['DIR1', 'DIR2', 'DIR3'], |
41 |
| - 'files': { |
42 |
| - 'FILE1': {'hdl': 'vhdl', 'lib': 'LIB1', 'opt': 'OPTS'}, |
43 |
| - 'FILE2': {'hdl': 'vlog', 'opt': 'OPTS'}, |
44 |
| - 'FILE3': {'hdl': 'slog', 'opt': 'OPTS'} |
45 |
| - }, |
46 |
| - 'top': 'TOPNAME', |
47 |
| - 'constraints': { |
48 |
| - 'FILE1': {'opt': 'OPTS'}, |
49 |
| - 'FILE2': {'opt': 'OPTS'}, |
50 |
| - 'FILE3': {'opt': 'OPTS'} |
51 |
| - }, |
52 |
| - 'params': { |
53 |
| - 'PAR1': 'VAL1', |
54 |
| - 'PAR2': 'VAL2', |
55 |
| - 'PAR3': 'VAL3' |
56 |
| - }, |
57 |
| - 'defines': { |
58 |
| - 'DEF1': 'VAL1', |
59 |
| - 'DEF2': 'VAL2', |
60 |
| - 'DEF3': 'VAL3' |
61 |
| - }, |
62 |
| - 'hooks': { |
63 |
| - 'precfg': ['CMD1', 'CMD2'], |
64 |
| - 'postcfg': ['CMD1', 'CMD2'], |
65 |
| - 'presyn': ['CMD1', 'CMD2'], |
66 |
| - 'postsyn': ['CMD1', 'CMD2'], |
67 |
| - 'prepar': ['CMD1', 'CMD2'], |
68 |
| - 'postpar': ['CMD1', 'CMD2'], |
69 |
| - 'prebit': ['CMD1', 'CMD2'], |
70 |
| - 'postbit': ['CMD1', 'CMD2'] |
71 |
| - } |
72 |
| - } |
| 38 | + data = { |
| 39 | + 'part': 'PARTNAME', |
| 40 | + 'includes': ['DIR1', 'DIR2', 'DIR3'], |
| 41 | + 'files': { |
| 42 | + 'FILE1': {'hdl': 'vhdl', 'lib': 'LIB1', 'opt': 'OPTS'}, |
| 43 | + 'FILE2': {'hdl': 'vlog', 'opt': 'OPTS'}, |
| 44 | + 'FILE3': {'hdl': 'slog', 'opt': 'OPTS'} |
| 45 | + }, |
| 46 | + 'top': 'TOPNAME', |
| 47 | + 'constraints': { |
| 48 | + 'FILE1': {'opt': 'OPTS'}, |
| 49 | + 'FILE2': {'opt': 'OPTS'}, |
| 50 | + 'FILE3': {'opt': 'OPTS'} |
| 51 | + }, |
| 52 | + 'params': { |
| 53 | + 'PAR1': 'VAL1', |
| 54 | + 'PAR2': 'VAL2', |
| 55 | + 'PAR3': 'VAL3' |
| 56 | + }, |
| 57 | + 'defines': { |
| 58 | + 'DEF1': 'VAL1', |
| 59 | + 'DEF2': 'VAL2', |
| 60 | + 'DEF3': 'VAL3' |
| 61 | + }, |
| 62 | + 'hooks': { |
| 63 | + 'precfg': ['CMD1', 'CMD2'], |
| 64 | + 'postcfg': ['CMD1', 'CMD2'], |
| 65 | + 'presyn': ['CMD1', 'CMD2'], |
| 66 | + 'postsyn': ['CMD1', 'CMD2'], |
| 67 | + 'prepar': ['CMD1', 'CMD2'], |
| 68 | + 'postpar': ['CMD1', 'CMD2'], |
| 69 | + 'prebit': ['CMD1', 'CMD2'], |
| 70 | + 'postbit': ['CMD1', 'CMD2'] |
| 71 | + }, |
| 72 | + 'options': { |
| 73 | + 'prj': 'OPTS', |
| 74 | + 'syn': 'OPTS', |
| 75 | + 'pre': 'OPTS', |
| 76 | + 'pre': 'OPTS' |
| 77 | + } |
| 78 | + } |
0 commit comments