Project

General

Profile

Download (13.8 KB) Statistics
| Branch: | Tag: | Revision:
1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["LIBRARY_CLAUSE", [["IDENTIFIER", "ieee"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "std_logic_1164"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "counter"], "ports" : [{
6
          "names" : [["IDENTIFIER", "x"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "boolean"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "clk"]], "mode" : ["in"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "std_logic"]}
12
          }
13
        , {
14
          "names" : [["IDENTIFIER", "o"]], "mode" : ["out"], "typ" : {
15
            "name" : ["SIMPLE_NAME", "boolean"]}
16
          }
17
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
18
      ]}
19
    , {
20
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
21
        "name" : ["IDENTIFIER", "greycounter"], "entity" : ["IDENTIFIER", "counter"], "ARCHITECTURE_DECLARATIVE_PART" : [{
22
          "declaration" : ["SIGNAL_DECLARATION", {
23
            "names" : [["IDENTIFIER", "a"], ["IDENTIFIER", "b"]], "typ" : {
24
              "name" : ["SIMPLE_NAME", "boolean"]}
25
            , "init_val" : ["EXPRESSION", {
26
              "args" : [["EXPRESSION", {
27
                "args" : [["EXPRESSION", {
28
                  "args" : [["EXPRESSION", {
29
                    "args" : [["CALL", ["SIMPLE_NAME", "false"]]]}
30
                  ]]}
31
                ]]}
32
              ]]}
33
            ]}
34
          ]}
35
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
36
          "id" : ["IDENTIFIER", "p"], "active_sigs" : [["SIMPLE_NAME", "clk"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
37
            "if_cases" : [{
38
              "if_cond" : ["EXPRESSION", {
39
                "args" : [["EXPRESSION", {
40
                  "args" : [["EXPRESSION", {
41
                    "args" : [["EXPRESSION", {
42
                      "args" : [["EXPRESSION", {
43
                        "id" : "and", "args" : [["EXPRESSION", {
44
                          "args" : [["EXPRESSION", {
45
                            "args" : [["EXPRESSION", {
46
                              "args" : [["EXPRESSION", {
47
                                "args" : [["CALL", ["ATTRIBUTE_NAME", {
48
                                  "id" : ["SIMPLE_NAME", "clk"], "designator" : ["SIMPLE_NAME", "event"]}
49
                                ]]]}
50
                              ]]}
51
                            ]]}
52
                          ]]}
53
                        ], ["EXPRESSION", {
54
                          "id" : "=", "args" : [["EXPRESSION", {
55
                            "args" : [["EXPRESSION", {
56
                              "args" : [["EXPRESSION", {
57
                                "args" : [["CALL", ["SIMPLE_NAME", "clk"]]]}
58
                              ]]}
59
                            ]]}
60
                          ], ["EXPRESSION", {
61
                            "args" : [["EXPRESSION", {
62
                              "args" : [["EXPRESSION", {
63
                                "args" : [["CONSTANT_VALUE", {
64
                                  "value" : ["CST_LITERAL", "'1'"]}
65
                                ]]}
66
                              ]]}
67
                            ]]}
68
                          ]]}
69
                        ]]}
70
                      ]]}
71
                    ]]}
72
                  ]]}
73
                ]]}
74
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
75
                "lhs" : ["SIMPLE_NAME", "a"], "rhs" : [{
76
                  "value" : ["EXPRESSION", {
77
                    "args" : [["EXPRESSION", {
78
                      "args" : [["EXPRESSION", {
79
                        "args" : [["EXPRESSION", {
80
                          "id" : "not", "args" : [["CALL", ["SIMPLE_NAME", "b"]]]}
81
                        ]]}
82
                      ]]}
83
                    ]]}
84
                  ]}
85
                ]}
86
              ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
87
                "lhs" : ["SIMPLE_NAME", "b"], "rhs" : [{
88
                  "value" : ["EXPRESSION", {
89
                    "args" : [["EXPRESSION", {
90
                      "args" : [["EXPRESSION", {
91
                        "args" : [["EXPRESSION", {
92
                          "args" : [["CALL", ["SIMPLE_NAME", "a"]]]}
93
                        ]]}
94
                      ]]}
95
                    ]]}
96
                  ]}
97
                ]}
98
              ]]}
99
            ]}
100
          ]]}
101
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
102
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o"], "rhs" : [{
103
            "expr" : [{
104
              "value" : ["EXPRESSION", {
105
                "id" : "and", "args" : [["EXPRESSION", {
106
                  "args" : [["EXPRESSION", {
107
                    "args" : [["EXPRESSION", {
108
                      "args" : [["EXPRESSION", {
109
                        "args" : [["CALL", ["SIMPLE_NAME", "a"]]]}
110
                      ]]}
111
                    ]]}
112
                  ]]}
113
                ], ["EXPRESSION", {
114
                  "args" : [["EXPRESSION", {
115
                    "args" : [["EXPRESSION", {
116
                      "args" : [["EXPRESSION", {
117
                        "args" : [["CALL", ["SIMPLE_NAME", "b"]]]}
118
                      ]]}
119
                    ]]}
120
                  ]]}
121
                ]]}
122
              ]}
123
            ]}
124
          ]}
125
        ]]}
126
      ]}
127
    , {
128
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
129
        "name" : ["IDENTIFIER", "intloopcounter"], "entity" : ["IDENTIFIER", "counter"], "ARCHITECTURE_DECLARATIVE_PART" : [{
130
          "declaration" : ["SIGNAL_DECLARATION", {
131
            "names" : [["IDENTIFIER", "t"]], "typ" : {
132
              "name" : ["SIMPLE_NAME", "integer"]}
133
            , "init_val" : ["EXPRESSION", {
134
              "args" : [["EXPRESSION", {
135
                "args" : [["EXPRESSION", {
136
                  "args" : [["EXPRESSION", {
137
                    "args" : [["CONSTANT_VALUE", {
138
                      "value" : ["CST_LITERAL", "0"]}
139
                    ]]}
140
                  ]]}
141
                ]]}
142
              ]]}
143
            ]}
144
          ]}
145
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
146
          "id" : ["IDENTIFIER", "p"], "active_sigs" : [["SIMPLE_NAME", "clk"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
147
            "if_cases" : [{
148
              "if_cond" : ["EXPRESSION", {
149
                "args" : [["EXPRESSION", {
150
                  "args" : [["EXPRESSION", {
151
                    "args" : [["EXPRESSION", {
152
                      "args" : [["EXPRESSION", {
153
                        "id" : "and", "args" : [["EXPRESSION", {
154
                          "args" : [["EXPRESSION", {
155
                            "args" : [["EXPRESSION", {
156
                              "args" : [["EXPRESSION", {
157
                                "args" : [["CALL", ["ATTRIBUTE_NAME", {
158
                                  "id" : ["SIMPLE_NAME", "clk"], "designator" : ["SIMPLE_NAME", "event"]}
159
                                ]]]}
160
                              ]]}
161
                            ]]}
162
                          ]]}
163
                        ], ["EXPRESSION", {
164
                          "id" : "=", "args" : [["EXPRESSION", {
165
                            "args" : [["EXPRESSION", {
166
                              "args" : [["EXPRESSION", {
167
                                "args" : [["CALL", ["SIMPLE_NAME", "clk"]]]}
168
                              ]]}
169
                            ]]}
170
                          ], ["EXPRESSION", {
171
                            "args" : [["EXPRESSION", {
172
                              "args" : [["EXPRESSION", {
173
                                "args" : [["CONSTANT_VALUE", {
174
                                  "value" : ["CST_LITERAL", "'1'"]}
175
                                ]]}
176
                              ]]}
177
                            ]]}
178
                          ]]}
179
                        ]]}
180
                      ]]}
181
                    ]]}
182
                  ]]}
183
                ]]}
184
              ], "if_block" : [["IF_STATEMENT", {
185
                "if_cases" : [{
186
                  "if_cond" : ["EXPRESSION", {
187
                    "id" : "=", "args" : [["EXPRESSION", {
188
                      "args" : [["EXPRESSION", {
189
                        "args" : [["EXPRESSION", {
190
                          "args" : [["CALL", ["SIMPLE_NAME", "t"]]]}
191
                        ]]}
192
                      ]]}
193
                    ], ["EXPRESSION", {
194
                      "args" : [["EXPRESSION", {
195
                        "args" : [["EXPRESSION", {
196
                          "args" : [["CONSTANT_VALUE", {
197
                            "value" : ["CST_LITERAL", "3"]}
198
                          ]]}
199
                        ]]}
200
                      ]]}
201
                    ]]}
202
                  ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
203
                    "lhs" : ["SIMPLE_NAME", "t"], "rhs" : [{
204
                      "value" : ["EXPRESSION", {
205
                        "args" : [["EXPRESSION", {
206
                          "args" : [["EXPRESSION", {
207
                            "args" : [["EXPRESSION", {
208
                              "args" : [["CONSTANT_VALUE", {
209
                                "value" : ["CST_LITERAL", "0"]}
210
                              ]]}
211
                            ]]}
212
                          ]]}
213
                        ]]}
214
                      ]}
215
                    ]}
216
                  ]]}
217
                ], "default" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
218
                  "lhs" : ["SIMPLE_NAME", "t"], "rhs" : [{
219
                    "value" : ["EXPRESSION", {
220
                      "args" : [["EXPRESSION", {
221
                        "args" : [["EXPRESSION", {
222
                          "args" : [["EXPRESSION", {
223
                            "id" : "+", "args" : [["EXPRESSION", {
224
                              "args" : [["CALL", ["SIMPLE_NAME", "t"]]]}
225
                            ], ["EXPRESSION", {
226
                              "args" : [["CONSTANT_VALUE", {
227
                                "value" : ["CST_LITERAL", "1"]}
228
                              ]]}
229
                            ]]}
230
                          ]]}
231
                        ]]}
232
                      ]]}
233
                    ]}
234
                  ]}
235
                ]]}
236
              ]]}
237
            ]}
238
          ]]}
239
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
240
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o"], "rhs" : [{
241
            "expr" : [{
242
              "value" : ["EXPRESSION", {
243
                "id" : "=", "args" : [["EXPRESSION", {
244
                  "args" : [["EXPRESSION", {
245
                    "args" : [["EXPRESSION", {
246
                      "args" : [["CALL", ["SIMPLE_NAME", "t"]]]}
247
                    ]]}
248
                  ]]}
249
                ], ["EXPRESSION", {
250
                  "args" : [["EXPRESSION", {
251
                    "args" : [["EXPRESSION", {
252
                      "args" : [["CONSTANT_VALUE", {
253
                        "value" : ["CST_LITERAL", "2"]}
254
                      ]]}
255
                    ]]}
256
                  ]]}
257
                ]]}
258
              ]}
259
            ]}
260
          ]}
261
        ]]}
262
      ]}
263
    , {
264
      "contexts" : [["LIBRARY_CLAUSE", [["IDENTIFIER", "ieee"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "std_logic_1164"]]]]]], "library" : ["ENTITY_DECLARATION", {
265
        "name" : ["IDENTIFIER", "top"], "ports" : [{
266
          "names" : [["IDENTIFIER", "x"]], "mode" : ["in"], "typ" : {
267
            "name" : ["SIMPLE_NAME", "boolean"]}
268
          }
269
        , {
270
          "names" : [["IDENTIFIER", "clk"]], "mode" : ["in"], "typ" : {
271
            "name" : ["SIMPLE_NAME", "std_logic"]}
272
          }
273
        , {
274
          "names" : [["IDENTIFIER", "ok"]], "mode" : ["out"], "typ" : {
275
            "name" : ["SIMPLE_NAME", "boolean"]}
276
          }
277
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
278
      ]}
279
    , {
280
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
281
        "name" : ["IDENTIFIER", "top_behav"], "entity" : ["IDENTIFIER", "top"], "ARCHITECTURE_DECLARATIVE_PART" : [{
282
          "declaration" : ["SIGNAL_DECLARATION", {
283
            "names" : [["IDENTIFIER", "b"], ["IDENTIFIER", "d"]], "typ" : {
284
              "name" : ["SIMPLE_NAME", "boolean"]}
285
            }
286
          ]}
287
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
288
          "name" : ["IDENTIFIER", "gcount"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "counter"]]], "inst_unit_type" : "entity", "archi_name" : ["IDENTIFIER", "greycounter"], "port_map" : [{
289
            "actual_designator" : ["SIMPLE_NAME", "x"]}
290
          , {
291
            "actual_designator" : ["SIMPLE_NAME", "clk"]}
292
          , {
293
            "actual_designator" : ["SIMPLE_NAME", "b"]}
294
          ]}
295
        ], ["COMPONENT_INSTANTIATION_STATEMENT", {
296
          "name" : ["IDENTIFIER", "icount"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "counter"]]], "inst_unit_type" : "entity", "archi_name" : ["IDENTIFIER", "intloopcounter"], "port_map" : [{
297
            "actual_designator" : ["SIMPLE_NAME", "x"]}
298
          , {
299
            "actual_designator" : ["SIMPLE_NAME", "clk"]}
300
          , {
301
            "actual_designator" : ["SIMPLE_NAME", "d"]}
302
          ]}
303
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
304
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "ok"], "rhs" : [{
305
            "expr" : [{
306
              "value" : ["EXPRESSION", {
307
                "id" : "=", "args" : [["EXPRESSION", {
308
                  "args" : [["EXPRESSION", {
309
                    "args" : [["EXPRESSION", {
310
                      "args" : [["CALL", ["SIMPLE_NAME", "b"]]]}
311
                    ]]}
312
                  ]]}
313
                ], ["EXPRESSION", {
314
                  "args" : [["EXPRESSION", {
315
                    "args" : [["EXPRESSION", {
316
                      "args" : [["CALL", ["SIMPLE_NAME", "d"]]]}
317
                    ]]}
318
                  ]]}
319
                ]]}
320
              ]}
321
            ]}
322
          ]}
323
        ]]}
324
      ]}
325
    ]}
326
  }
(42-42/45)