Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / gna / bug040 / p_jinfo_comps_info_dc_tbl_no.json @ 3fd18385

History | View | Annotate | Download (16.5 KB)

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_CLAUSE", [["IDENTIFIER", "ieee"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "numeric_std"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "p_jinfo_comps_info_dc_tbl_no"], "ports" : [{
6
          "names" : [["IDENTIFIER", "wa0_data"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "std_logic"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "wa0_addr"]], "mode" : ["in"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
12
              "ranges" : [["RANGE_WITH_DIRECTION", {
13
                "direction" : "downto", "from" : ["EXPRESSION", {
14
                  "args" : [["EXPRESSION", {
15
                    "args" : [["CONSTANT_VALUE", {
16
                      "value" : ["CST_LITERAL", "1"]}
17
                    ]]}
18
                  ]]}
19
                ], "_to" : ["EXPRESSION", {
20
                  "args" : [["EXPRESSION", {
21
                    "args" : [["CONSTANT_VALUE", {
22
                      "value" : ["CST_LITERAL", "0"]}
23
                    ]]}
24
                  ]]}
25
                ]}
26
              ]]}
27
            ]}
28
          }
29
        , {
30
          "names" : [["IDENTIFIER", "clk"]], "mode" : ["in"], "typ" : {
31
            "name" : ["SIMPLE_NAME", "std_logic"]}
32
          }
33
        , {
34
          "names" : [["IDENTIFIER", "ra0_addr"]], "mode" : ["in"], "typ" : {
35
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
36
              "ranges" : [["RANGE_WITH_DIRECTION", {
37
                "direction" : "downto", "from" : ["EXPRESSION", {
38
                  "args" : [["EXPRESSION", {
39
                    "args" : [["CONSTANT_VALUE", {
40
                      "value" : ["CST_LITERAL", "1"]}
41
                    ]]}
42
                  ]]}
43
                ], "_to" : ["EXPRESSION", {
44
                  "args" : [["EXPRESSION", {
45
                    "args" : [["CONSTANT_VALUE", {
46
                      "value" : ["CST_LITERAL", "0"]}
47
                    ]]}
48
                  ]]}
49
                ]}
50
              ]]}
51
            ]}
52
          }
53
        , {
54
          "names" : [["IDENTIFIER", "ra0_data"]], "mode" : ["out"], "typ" : {
55
            "name" : ["SIMPLE_NAME", "std_logic"]}
56
          }
57
        , {
58
          "names" : [["IDENTIFIER", "wa0_en"]], "mode" : ["in"], "typ" : {
59
            "name" : ["SIMPLE_NAME", "std_logic"]}
60
          }
61
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
62
      ]}
63
    , {
64
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
65
        "name" : ["IDENTIFIER", "augh"], "entity" : ["IDENTIFIER", "p_jinfo_comps_info_dc_tbl_no"], "ARCHITECTURE_DECLARATIVE_PART" : [{
66
          "definition" : ["TYPE_DECLARATION", {
67
            "name" : ["IDENTIFIER", "ram_type"], "definition" : ["ARRAY_TYPE_DEFINITION", {
68
              "const" : ["INDEX_CONSTRAINT", {
69
                "ranges" : [["RANGE_WITH_DIRECTION", {
70
                  "direction" : "to", "from" : ["EXPRESSION", {
71
                    "args" : [["EXPRESSION", {
72
                      "args" : [["CONSTANT_VALUE", {
73
                        "value" : ["CST_LITERAL", "0"]}
74
                      ]]}
75
                    ]]}
76
                  ], "_to" : ["EXPRESSION", {
77
                    "args" : [["EXPRESSION", {
78
                      "args" : [["CONSTANT_VALUE", {
79
                        "value" : ["CST_LITERAL", "2"]}
80
                      ]]}
81
                    ]]}
82
                  ]}
83
                ]]}
84
              ], "definition" : {
85
                "name" : ["SIMPLE_NAME", "std_logic"]}
86
              }
87
            ]}
88
          ]}
89
        , {
90
          "declaration" : ["SIGNAL_DECLARATION", {
91
            "names" : [["IDENTIFIER", "ram"]], "typ" : {
92
              "name" : ["SIMPLE_NAME", "ram_type"]}
93
            , "init_val" : ["EXPRESSION", {
94
              "args" : [["EXPRESSION", {
95
                "args" : [["EXPRESSION", {
96
                  "args" : [["EXPRESSION", {
97
                    "args" : [["AGGREGATE", {
98
                      "elems" : [{
99
                        "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
100
                          "args" : [["EXPRESSION", {
101
                            "args" : [["EXPRESSION", {
102
                              "args" : [["EXPRESSION", {
103
                                "args" : [["CONSTANT_VALUE", {
104
                                  "value" : ["CST_LITERAL", "'0'"]}
105
                                ]]}
106
                              ]]}
107
                            ]]}
108
                          ]]}
109
                        ]}
110
                      ]}
111
                    ]]}
112
                  ]]}
113
                ]]}
114
              ]]}
115
            ]}
116
          ]}
117
        , {
118
          "declaration" : ["SUBPROGRAM_BODY", {
119
            "spec" : {
120
              "name" : "to_integer", "subprogram_type" : "function", "parameters" : [{
121
                "names" : [["IDENTIFIER", "B"]], "typ" : {
122
                  "name" : ["SIMPLE_NAME", "std_logic"]}
123
                }
124
              ], "typeMark" : ["SIMPLE_NAME", "integer"], "isPure" : false}
125
            , "decl_part" : [["VARIABLE_DECLARATION", {
126
              "names" : [["IDENTIFIER", "V"]], "typ" : {
127
                "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
128
                  "ranges" : [["RANGE_WITH_DIRECTION", {
129
                    "direction" : "to", "from" : ["EXPRESSION", {
130
                      "args" : [["EXPRESSION", {
131
                        "args" : [["CONSTANT_VALUE", {
132
                          "value" : ["CST_LITERAL", "0"]}
133
                        ]]}
134
                      ]]}
135
                    ], "_to" : ["EXPRESSION", {
136
                      "args" : [["EXPRESSION", {
137
                        "args" : [["CONSTANT_VALUE", {
138
                          "value" : ["CST_LITERAL", "0"]}
139
                        ]]}
140
                      ]]}
141
                    ]}
142
                  ]]}
143
                ]}
144
              }
145
            ]], "stmts" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
146
              "lhs" : ["INDEXED_NAME", {
147
                "id" : ["SIMPLE_NAME", "V"], "exprs" : [["EXPRESSION", {
148
                  "args" : [["EXPRESSION", {
149
                    "args" : [["EXPRESSION", {
150
                      "args" : [["EXPRESSION", {
151
                        "args" : [["CONSTANT_VALUE", {
152
                          "value" : ["CST_LITERAL", "0"]}
153
                        ]]}
154
                      ]]}
155
                    ]]}
156
                  ]]}
157
                ]]}
158
              ], "rhs" : ["EXPRESSION", {
159
                "args" : [["EXPRESSION", {
160
                  "args" : [["EXPRESSION", {
161
                    "args" : [["EXPRESSION", {
162
                      "args" : [["CALL", ["SIMPLE_NAME", "B"]]]}
163
                    ]]}
164
                  ]]}
165
                ]]}
166
              ]}
167
            ], ["RETURN_STATEMENT", {
168
              "expr" : ["EXPRESSION", {
169
                "args" : [["EXPRESSION", {
170
                  "args" : [["EXPRESSION", {
171
                    "args" : [["EXPRESSION", {
172
                      "args" : [["CALL", ["INDEXED_NAME", {
173
                        "id" : ["SIMPLE_NAME", "to_integer"], "exprs" : [["EXPRESSION", {
174
                          "args" : [["EXPRESSION", {
175
                            "args" : [["EXPRESSION", {
176
                              "args" : [["EXPRESSION", {
177
                                "args" : [["CALL", ["INDEXED_NAME", {
178
                                  "id" : ["SIMPLE_NAME", "unsigned"], "exprs" : [["EXPRESSION", {
179
                                    "args" : [["EXPRESSION", {
180
                                      "args" : [["EXPRESSION", {
181
                                        "args" : [["EXPRESSION", {
182
                                          "args" : [["CALL", ["SIMPLE_NAME", "V"]]]}
183
                                        ]]}
184
                                      ]]}
185
                                    ]]}
186
                                  ]]}
187
                                ]]]}
188
                              ]]}
189
                            ]]}
190
                          ]]}
191
                        ]]}
192
                      ]]]}
193
                    ]]}
194
                  ]]}
195
                ]]}
196
              ]}
197
            ]]}
198
          ]}
199
        , {
200
          "declaration" : ["SUBPROGRAM_BODY", {
201
            "spec" : {
202
              "name" : "to_integer", "subprogram_type" : "function", "parameters" : [{
203
                "names" : [["IDENTIFIER", "V"]], "typ" : {
204
                  "name" : ["SIMPLE_NAME", "std_logic_vector"]}
205
                }
206
              ], "typeMark" : ["SIMPLE_NAME", "integer"], "isPure" : false}
207
            , "stmts" : [["RETURN_STATEMENT", {
208
              "expr" : ["EXPRESSION", {
209
                "args" : [["EXPRESSION", {
210
                  "args" : [["EXPRESSION", {
211
                    "args" : [["EXPRESSION", {
212
                      "args" : [["CALL", ["INDEXED_NAME", {
213
                        "id" : ["SIMPLE_NAME", "to_integer"], "exprs" : [["EXPRESSION", {
214
                          "args" : [["EXPRESSION", {
215
                            "args" : [["EXPRESSION", {
216
                              "args" : [["EXPRESSION", {
217
                                "args" : [["CALL", ["INDEXED_NAME", {
218
                                  "id" : ["SIMPLE_NAME", "unsigned"], "exprs" : [["EXPRESSION", {
219
                                    "args" : [["EXPRESSION", {
220
                                      "args" : [["EXPRESSION", {
221
                                        "args" : [["EXPRESSION", {
222
                                          "args" : [["CALL", ["SIMPLE_NAME", "V"]]]}
223
                                        ]]}
224
                                      ]]}
225
                                    ]]}
226
                                  ]]}
227
                                ]]]}
228
                              ]]}
229
                            ]]}
230
                          ]]}
231
                        ]]}
232
                      ]]]}
233
                    ]]}
234
                  ]]}
235
                ]]}
236
              ]}
237
            ]]}
238
          ]}
239
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
240
          "active_sigs" : [["SIMPLE_NAME", "clk"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
241
            "if_cases" : [{
242
              "if_cond" : ["EXPRESSION", {
243
                "args" : [["EXPRESSION", {
244
                  "args" : [["EXPRESSION", {
245
                    "args" : [["EXPRESSION", {
246
                      "args" : [["CALL", ["INDEXED_NAME", {
247
                        "id" : ["SIMPLE_NAME", "rising_edge"], "exprs" : [["EXPRESSION", {
248
                          "args" : [["EXPRESSION", {
249
                            "args" : [["EXPRESSION", {
250
                              "args" : [["EXPRESSION", {
251
                                "args" : [["CALL", ["SIMPLE_NAME", "clk"]]]}
252
                              ]]}
253
                            ]]}
254
                          ]]}
255
                        ]]}
256
                      ]]]}
257
                    ]]}
258
                  ]]}
259
                ]]}
260
              ], "if_block" : [["IF_STATEMENT", {
261
                "if_cases" : [{
262
                  "if_cond" : ["EXPRESSION", {
263
                    "id" : "=", "args" : [["EXPRESSION", {
264
                      "args" : [["EXPRESSION", {
265
                        "args" : [["EXPRESSION", {
266
                          "args" : [["CALL", ["SIMPLE_NAME", "wa0_en"]]]}
267
                        ]]}
268
                      ]]}
269
                    ], ["EXPRESSION", {
270
                      "args" : [["EXPRESSION", {
271
                        "args" : [["EXPRESSION", {
272
                          "args" : [["CONSTANT_VALUE", {
273
                            "value" : ["CST_LITERAL", "'1'"]}
274
                          ]]}
275
                        ]]}
276
                      ]]}
277
                    ]]}
278
                  ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
279
                    "lhs" : ["INDEXED_NAME", {
280
                      "id" : ["SIMPLE_NAME", "ram"], "exprs" : [["EXPRESSION", {
281
                        "args" : [["EXPRESSION", {
282
                          "args" : [["EXPRESSION", {
283
                            "args" : [["EXPRESSION", {
284
                              "args" : [["CALL", ["INDEXED_NAME", {
285
                                "id" : ["SIMPLE_NAME", "to_integer"], "exprs" : [["EXPRESSION", {
286
                                  "args" : [["EXPRESSION", {
287
                                    "args" : [["EXPRESSION", {
288
                                      "args" : [["EXPRESSION", {
289
                                        "args" : [["CALL", ["SIMPLE_NAME", "wa0_addr"]]]}
290
                                      ]]}
291
                                    ]]}
292
                                  ]]}
293
                                ]]}
294
                              ]]]}
295
                            ]]}
296
                          ]]}
297
                        ]]}
298
                      ]]}
299
                    ], "rhs" : [{
300
                      "value" : ["EXPRESSION", {
301
                        "args" : [["EXPRESSION", {
302
                          "args" : [["EXPRESSION", {
303
                            "args" : [["EXPRESSION", {
304
                              "args" : [["CALL", ["SIMPLE_NAME", "wa0_data"]]]}
305
                            ]]}
306
                          ]]}
307
                        ]]}
308
                      ]}
309
                    ]}
310
                  ]]}
311
                ]}
312
              ]]}
313
            ]}
314
          ]]}
315
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
316
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "ra0_data"], "rhs" : [{
317
            "expr" : [{
318
              "value" : ["EXPRESSION", {
319
                "args" : [["EXPRESSION", {
320
                  "args" : [["EXPRESSION", {
321
                    "args" : [["EXPRESSION", {
322
                      "args" : [["CALL", ["INDEXED_NAME", {
323
                        "id" : ["SIMPLE_NAME", "ram"], "exprs" : [["EXPRESSION", {
324
                          "args" : [["EXPRESSION", {
325
                            "args" : [["EXPRESSION", {
326
                              "args" : [["EXPRESSION", {
327
                                "args" : [["CALL", ["INDEXED_NAME", {
328
                                  "id" : ["SIMPLE_NAME", "to_integer"], "exprs" : [["EXPRESSION", {
329
                                    "args" : [["EXPRESSION", {
330
                                      "args" : [["EXPRESSION", {
331
                                        "args" : [["EXPRESSION", {
332
                                          "args" : [["CALL", ["SIMPLE_NAME", "ra0_addr"]]]}
333
                                        ]]}
334
                                      ]]}
335
                                    ]]}
336
                                  ]]}
337
                                ]]]}
338
                              ]]}
339
                            ]]}
340
                          ]]}
341
                        ]]}
342
                      ]]]}
343
                    ]]}
344
                  ]]}
345
                ]]}
346
              ]}
347
            ], "cond" : ["EXPRESSION", {
348
              "id" : "<", "args" : [["EXPRESSION", {
349
                "args" : [["EXPRESSION", {
350
                  "args" : [["EXPRESSION", {
351
                    "args" : [["CALL", ["INDEXED_NAME", {
352
                      "id" : ["SIMPLE_NAME", "to_integer"], "exprs" : [["EXPRESSION", {
353
                        "args" : [["EXPRESSION", {
354
                          "args" : [["EXPRESSION", {
355
                            "args" : [["EXPRESSION", {
356
                              "args" : [["CALL", ["SIMPLE_NAME", "ra0_addr"]]]}
357
                            ]]}
358
                          ]]}
359
                        ]]}
360
                      ]]}
361
                    ]]]}
362
                  ]]}
363
                ]]}
364
              ], ["EXPRESSION", {
365
                "args" : [["EXPRESSION", {
366
                  "args" : [["EXPRESSION", {
367
                    "args" : [["CONSTANT_VALUE", {
368
                      "value" : ["CST_LITERAL", "3"]}
369
                    ]]}
370
                  ]]}
371
                ]]}
372
              ]]}
373
            ]}
374
          , {
375
            "expr" : [{
376
              "value" : ["EXPRESSION", {
377
                "args" : [["EXPRESSION", {
378
                  "args" : [["EXPRESSION", {
379
                    "args" : [["EXPRESSION", {
380
                      "args" : [["CONSTANT_VALUE", {
381
                        "value" : ["CST_LITERAL", "'-'"]}
382
                      ]]}
383
                    ]]}
384
                  ]]}
385
                ]]}
386
              ]}
387
            ]}
388
          ]}
389
        ]]}
390
      ]}
391
    ]}
392
  }