Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / gna / bug040 / p_jinfo_dc_dhuff_tbl_maxcode.json @ 2051e520

History | View | Annotate | Download (14.2 KB)

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