Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / gna / issue50 / idct.d / pkg_tb.json @ 2051e520

History | View | Annotate | Download (18.3 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"]]]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "numeric_std"]]]]]], "library" : ["PACKAGE_DECLARATION", {
5
        "name" : ["IDENTIFIER", "pkg_tb"], "shared_defs" : [["TYPE_DECLARATION", {
6
          "name" : ["IDENTIFIER", "state_t"], "definition" : ["ENUMERATION_TYPE_DEFINITION", [["IDENTIFIER", "Rst"], ["IDENTIFIER", "Sig_start"], ["IDENTIFIER", "Ack_data"], ["IDENTIFIER", "Running"], ["IDENTIFIER", "Waitfor"], ["IDENTIFIER", "Cp_search"], ["IDENTIFIER", "Cp_save"], ["IDENTIFIER", "Idle"], ["IDENTIFIER", "Rst_uut"], ["IDENTIFIER", "Rest_ini0"], ["IDENTIFIER", "Rest_ini1"], ["IDENTIFIER", "Rest"], ["IDENTIFIER", "Stop"]]]}
7
        ], ["SUBTYPE_DECLARATION", {
8
          "name" : ["IDENTIFIER", "context_t"], "typ" : {
9
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
10
              "ranges" : [["RANGE_WITH_DIRECTION", {
11
                "direction" : "downto", "from" : ["EXPRESSION", {
12
                  "args" : [["EXPRESSION", {
13
                    "args" : [["CONSTANT_VALUE", {
14
                      "value" : ["CST_LITERAL", "1"]}
15
                    ]]}
16
                  ]]}
17
                ], "_to" : ["EXPRESSION", {
18
                  "args" : [["EXPRESSION", {
19
                    "args" : [["CONSTANT_VALUE", {
20
                      "value" : ["CST_LITERAL", "0"]}
21
                    ]]}
22
                  ]]}
23
                ]}
24
              ]]}
25
            ]}
26
          }
27
        ], ["SUBTYPE_DECLARATION", {
28
          "name" : ["IDENTIFIER", "argument_t"], "typ" : {
29
            "name" : ["SIMPLE_NAME", "unsigned"], "const" : ["INDEX_CONSTRAINT", {
30
              "ranges" : [["RANGE_WITH_DIRECTION", {
31
                "direction" : "downto", "from" : ["EXPRESSION", {
32
                  "args" : [["EXPRESSION", {
33
                    "id" : "-", "args" : [["EXPRESSION", {
34
                      "args" : [["CALL", ["SIMPLE_NAME", "ARG_WIDTH"]]]}
35
                    ], ["EXPRESSION", {
36
                      "args" : [["CONSTANT_VALUE", {
37
                        "value" : ["CST_LITERAL", "1"]}
38
                      ]]}
39
                    ]]}
40
                  ]]}
41
                ], "_to" : ["EXPRESSION", {
42
                  "args" : [["EXPRESSION", {
43
                    "args" : [["CONSTANT_VALUE", {
44
                      "value" : ["CST_LITERAL", "0"]}
45
                    ]]}
46
                  ]]}
47
                ]}
48
              ]]}
49
            ]}
50
          }
51
        ], ["TYPE_DECLARATION", {
52
          "name" : ["IDENTIFIER", "instruction"], "definition" : ["RECORD_TYPE_DEFINITION", [{
53
            "names" : [["IDENTIFIER", "state"]], "definition" : {
54
              "name" : ["SIMPLE_NAME", "state_t"]}
55
            }
56
          , {
57
            "names" : [["IDENTIFIER", "context_uut"]], "definition" : {
58
              "name" : ["SIMPLE_NAME", "context_t"]}
59
            }
60
          , {
61
            "names" : [["IDENTIFIER", "arg"]], "definition" : {
62
              "name" : ["SIMPLE_NAME", "argument_t"]}
63
            }
64
          ]]}
65
        ], ["TYPE_DECLARATION", {
66
          "name" : ["IDENTIFIER", "ram_instruction"], "definition" : ["RECORD_TYPE_DEFINITION", [{
67
            "names" : [["IDENTIFIER", "sel"]], "definition" : {
68
              "name" : ["SIMPLE_NAME", "std_logic"]}
69
            }
70
          , {
71
            "names" : [["IDENTIFIER", "we"]], "definition" : {
72
              "name" : ["SIMPLE_NAME", "std_logic"]}
73
            }
74
          , {
75
            "names" : [["IDENTIFIER", "addr_up"]], "definition" : {
76
              "name" : ["SIMPLE_NAME", "std_logic"]}
77
            }
78
          , {
79
            "names" : [["IDENTIFIER", "addr_z"]], "definition" : {
80
              "name" : ["SIMPLE_NAME", "std_logic"]}
81
            }
82
          ]]}
83
        ], ["TYPE_DECLARATION", {
84
          "name" : ["IDENTIFIER", "assert_instruction"], "definition" : ["RECORD_TYPE_DEFINITION", [{
85
            "names" : [["IDENTIFIER", "en_feed"]], "definition" : {
86
              "name" : ["SIMPLE_NAME", "std_logic"]}
87
            }
88
          , {
89
            "names" : [["IDENTIFIER", "en_check"]], "definition" : {
90
              "name" : ["SIMPLE_NAME", "std_logic"]}
91
            }
92
          ]]}
93
        ], ["TYPE_DECLARATION", {
94
          "name" : ["IDENTIFIER", "table_behavior"], "definition" : ["ARRAY_TYPE_DEFINITION", {
95
            "const" : ["INDEX_CONSTRAINT", {
96
              "ranges" : [["RANGE_WITH_DIRECTION", {
97
                "direction" : "to", "from" : ["EXPRESSION", {
98
                  "args" : [["EXPRESSION", {
99
                    "args" : [["CONSTANT_VALUE", {
100
                      "value" : ["CST_LITERAL", "0"]}
101
                    ]]}
102
                  ]]}
103
                ], "_to" : ["EXPRESSION", {
104
                  "args" : [["EXPRESSION", {
105
                    "id" : "-", "args" : [["EXPRESSION", {
106
                      "id" : "**", "args" : [["CONSTANT_VALUE", {
107
                        "value" : ["CST_LITERAL", "2"]}
108
                      ], ["CALL", ["SIMPLE_NAME", "PC_SIZE"]]]}
109
                    ], ["EXPRESSION", {
110
                      "args" : [["CONSTANT_VALUE", {
111
                        "value" : ["CST_LITERAL", "1"]}
112
                      ]]}
113
                    ]]}
114
                  ]]}
115
                ]}
116
              ]]}
117
            ], "definition" : {
118
              "name" : ["SIMPLE_NAME", "instruction"]}
119
            }
120
          ]}
121
        ], ["SUBTYPE_DECLARATION", {
122
          "name" : ["IDENTIFIER", "stdin_vector"], "typ" : {
123
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
124
              "ranges" : [["RANGE_WITH_DIRECTION", {
125
                "direction" : "downto", "from" : ["EXPRESSION", {
126
                  "args" : [["EXPRESSION", {
127
                    "args" : [["CONSTANT_VALUE", {
128
                      "value" : ["CST_LITERAL", "31"]}
129
                    ]]}
130
                  ]]}
131
                ], "_to" : ["EXPRESSION", {
132
                  "args" : [["EXPRESSION", {
133
                    "args" : [["CONSTANT_VALUE", {
134
                      "value" : ["CST_LITERAL", "0"]}
135
                    ]]}
136
                  ]]}
137
                ]}
138
              ]]}
139
            ]}
140
          }
141
        ], ["SUBTYPE_DECLARATION", {
142
          "name" : ["IDENTIFIER", "stdout_vector"], "typ" : {
143
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
144
              "ranges" : [["RANGE_WITH_DIRECTION", {
145
                "direction" : "downto", "from" : ["EXPRESSION", {
146
                  "args" : [["EXPRESSION", {
147
                    "args" : [["CONSTANT_VALUE", {
148
                      "value" : ["CST_LITERAL", "7"]}
149
                    ]]}
150
                  ]]}
151
                ], "_to" : ["EXPRESSION", {
152
                  "args" : [["EXPRESSION", {
153
                    "args" : [["CONSTANT_VALUE", {
154
                      "value" : ["CST_LITERAL", "0"]}
155
                    ]]}
156
                  ]]}
157
                ]}
158
              ]]}
159
            ]}
160
          }
161
        ], ["SUBTYPE_DECLARATION", {
162
          "name" : ["IDENTIFIER", "cp_vector"], "typ" : {
163
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
164
              "ranges" : [["RANGE_WITH_DIRECTION", {
165
                "direction" : "downto", "from" : ["EXPRESSION", {
166
                  "args" : [["EXPRESSION", {
167
                    "args" : [["CONSTANT_VALUE", {
168
                      "value" : ["CST_LITERAL", "63"]}
169
                    ]]}
170
                  ]]}
171
                ], "_to" : ["EXPRESSION", {
172
                  "args" : [["EXPRESSION", {
173
                    "args" : [["CONSTANT_VALUE", {
174
                      "value" : ["CST_LITERAL", "0"]}
175
                    ]]}
176
                  ]]}
177
                ]}
178
              ]]}
179
            ]}
180
          }
181
        ]], "shared_decls" : [["CONSTANT_DECLARATION", {
182
          "names" : [["IDENTIFIER", "ARG_WIDTH"]], "typ" : {
183
            "name" : ["SIMPLE_NAME", "integer"]}
184
          , "init_val" : ["EXPRESSION", {
185
            "args" : [["EXPRESSION", {
186
              "args" : [["EXPRESSION", {
187
                "args" : [["EXPRESSION", {
188
                  "args" : [["CONSTANT_VALUE", {
189
                    "value" : ["CST_LITERAL", "8"]}
190
                  ]]}
191
                ]]}
192
              ]]}
193
            ]]}
194
          ]}
195
        ], ["CONSTANT_DECLARATION", {
196
          "names" : [["IDENTIFIER", "instr_rst"]], "typ" : {
197
            "name" : ["SIMPLE_NAME", "instruction"]}
198
          , "init_val" : ["EXPRESSION", {
199
            "args" : [["EXPRESSION", {
200
              "args" : [["EXPRESSION", {
201
                "args" : [["EXPRESSION", {
202
                  "args" : [["AGGREGATE", {
203
                    "elems" : [{
204
                      "choices" : [["EXPRESSION", {
205
                        "args" : [["EXPRESSION", {
206
                          "args" : [["CALL", ["SIMPLE_NAME", "state"]]]}
207
                        ]]}
208
                      ]], "expr" : ["EXPRESSION", {
209
                        "args" : [["EXPRESSION", {
210
                          "args" : [["EXPRESSION", {
211
                            "args" : [["EXPRESSION", {
212
                              "args" : [["CALL", ["SIMPLE_NAME", "Rst"]]]}
213
                            ]]}
214
                          ]]}
215
                        ]]}
216
                      ]}
217
                    , {
218
                      "choices" : [["EXPRESSION", {
219
                        "args" : [["EXPRESSION", {
220
                          "args" : [["CALL", ["SIMPLE_NAME", "context_uut"]]]}
221
                        ]]}
222
                      ]], "expr" : ["EXPRESSION", {
223
                        "args" : [["EXPRESSION", {
224
                          "args" : [["EXPRESSION", {
225
                            "args" : [["EXPRESSION", {
226
                              "args" : [["AGGREGATE", {
227
                                "elems" : [{
228
                                  "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
229
                                    "args" : [["EXPRESSION", {
230
                                      "args" : [["EXPRESSION", {
231
                                        "args" : [["EXPRESSION", {
232
                                          "args" : [["CONSTANT_VALUE", {
233
                                            "value" : ["CST_LITERAL", "'0'"]}
234
                                          ]]}
235
                                        ]]}
236
                                      ]]}
237
                                    ]]}
238
                                  ]}
239
                                ]}
240
                              ]]}
241
                            ]]}
242
                          ]]}
243
                        ]]}
244
                      ]}
245
                    , {
246
                      "choices" : [["EXPRESSION", {
247
                        "args" : [["EXPRESSION", {
248
                          "args" : [["CALL", ["SIMPLE_NAME", "arg"]]]}
249
                        ]]}
250
                      ]], "expr" : ["EXPRESSION", {
251
                        "args" : [["EXPRESSION", {
252
                          "args" : [["EXPRESSION", {
253
                            "args" : [["EXPRESSION", {
254
                              "args" : [["AGGREGATE", {
255
                                "elems" : [{
256
                                  "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
257
                                    "args" : [["EXPRESSION", {
258
                                      "args" : [["EXPRESSION", {
259
                                        "args" : [["EXPRESSION", {
260
                                          "args" : [["CONSTANT_VALUE", {
261
                                            "value" : ["CST_LITERAL", "'0'"]}
262
                                          ]]}
263
                                        ]]}
264
                                      ]]}
265
                                    ]]}
266
                                  ]}
267
                                ]}
268
                              ]]}
269
                            ]]}
270
                          ]]}
271
                        ]]}
272
                      ]}
273
                    ]}
274
                  ]]}
275
                ]]}
276
              ]]}
277
            ]]}
278
          ]}
279
        ], ["CONSTANT_DECLARATION", {
280
          "names" : [["IDENTIFIER", "ram_instr_z"]], "typ" : {
281
            "name" : ["SIMPLE_NAME", "ram_instruction"]}
282
          , "init_val" : ["EXPRESSION", {
283
            "args" : [["EXPRESSION", {
284
              "args" : [["EXPRESSION", {
285
                "args" : [["EXPRESSION", {
286
                  "args" : [["AGGREGATE", {
287
                    "elems" : [{
288
                      "choices" : [["EXPRESSION", {
289
                        "args" : [["EXPRESSION", {
290
                          "args" : [["CALL", ["SIMPLE_NAME", "sel"]]]}
291
                        ]]}
292
                      ]], "expr" : ["EXPRESSION", {
293
                        "args" : [["EXPRESSION", {
294
                          "args" : [["EXPRESSION", {
295
                            "args" : [["EXPRESSION", {
296
                              "args" : [["CONSTANT_VALUE", {
297
                                "value" : ["CST_LITERAL", "'0'"]}
298
                              ]]}
299
                            ]]}
300
                          ]]}
301
                        ]]}
302
                      ]}
303
                    , {
304
                      "choices" : [["EXPRESSION", {
305
                        "args" : [["EXPRESSION", {
306
                          "args" : [["CALL", ["SIMPLE_NAME", "we"]]]}
307
                        ]]}
308
                      ]], "expr" : ["EXPRESSION", {
309
                        "args" : [["EXPRESSION", {
310
                          "args" : [["EXPRESSION", {
311
                            "args" : [["EXPRESSION", {
312
                              "args" : [["CONSTANT_VALUE", {
313
                                "value" : ["CST_LITERAL", "'0'"]}
314
                              ]]}
315
                            ]]}
316
                          ]]}
317
                        ]]}
318
                      ]}
319
                    , {
320
                      "choices" : [["EXPRESSION", {
321
                        "args" : [["EXPRESSION", {
322
                          "args" : [["CALL", ["SIMPLE_NAME", "addr_up"]]]}
323
                        ]]}
324
                      ]], "expr" : ["EXPRESSION", {
325
                        "args" : [["EXPRESSION", {
326
                          "args" : [["EXPRESSION", {
327
                            "args" : [["EXPRESSION", {
328
                              "args" : [["CONSTANT_VALUE", {
329
                                "value" : ["CST_LITERAL", "'0'"]}
330
                              ]]}
331
                            ]]}
332
                          ]]}
333
                        ]]}
334
                      ]}
335
                    , {
336
                      "choices" : [["EXPRESSION", {
337
                        "args" : [["EXPRESSION", {
338
                          "args" : [["CALL", ["SIMPLE_NAME", "addr_z"]]]}
339
                        ]]}
340
                      ]], "expr" : ["EXPRESSION", {
341
                        "args" : [["EXPRESSION", {
342
                          "args" : [["EXPRESSION", {
343
                            "args" : [["EXPRESSION", {
344
                              "args" : [["CONSTANT_VALUE", {
345
                                "value" : ["CST_LITERAL", "'0'"]}
346
                              ]]}
347
                            ]]}
348
                          ]]}
349
                        ]]}
350
                      ]}
351
                    ]}
352
                  ]]}
353
                ]]}
354
              ]]}
355
            ]]}
356
          ]}
357
        ], ["CONSTANT_DECLARATION", {
358
          "names" : [["IDENTIFIER", "assert_instr_z"]], "typ" : {
359
            "name" : ["SIMPLE_NAME", "assert_instruction"]}
360
          , "init_val" : ["EXPRESSION", {
361
            "args" : [["EXPRESSION", {
362
              "args" : [["EXPRESSION", {
363
                "args" : [["EXPRESSION", {
364
                  "args" : [["AGGREGATE", {
365
                    "elems" : [{
366
                      "choices" : [["EXPRESSION", {
367
                        "args" : [["EXPRESSION", {
368
                          "args" : [["CALL", ["SIMPLE_NAME", "en_feed"]]]}
369
                        ]]}
370
                      ]], "expr" : ["EXPRESSION", {
371
                        "args" : [["EXPRESSION", {
372
                          "args" : [["EXPRESSION", {
373
                            "args" : [["EXPRESSION", {
374
                              "args" : [["CONSTANT_VALUE", {
375
                                "value" : ["CST_LITERAL", "'0'"]}
376
                              ]]}
377
                            ]]}
378
                          ]]}
379
                        ]]}
380
                      ]}
381
                    , {
382
                      "choices" : [["EXPRESSION", {
383
                        "args" : [["EXPRESSION", {
384
                          "args" : [["CALL", ["SIMPLE_NAME", "en_check"]]]}
385
                        ]]}
386
                      ]], "expr" : ["EXPRESSION", {
387
                        "args" : [["EXPRESSION", {
388
                          "args" : [["EXPRESSION", {
389
                            "args" : [["EXPRESSION", {
390
                              "args" : [["CONSTANT_VALUE", {
391
                                "value" : ["CST_LITERAL", "'0'"]}
392
                              ]]}
393
                            ]]}
394
                          ]]}
395
                        ]]}
396
                      ]}
397
                    ]}
398
                  ]]}
399
                ]]}
400
              ]]}
401
            ]]}
402
          ]}
403
        ], ["CONSTANT_DECLARATION", {
404
          "names" : [["IDENTIFIER", "PC_SIZE"]], "typ" : {
405
            "name" : ["SIMPLE_NAME", "integer"]}
406
          , "init_val" : ["EXPRESSION", {
407
            "args" : [["EXPRESSION", {
408
              "args" : [["EXPRESSION", {
409
                "args" : [["EXPRESSION", {
410
                  "args" : [["CONSTANT_VALUE", {
411
                    "value" : ["CST_LITERAL", "5"]}
412
                  ]]}
413
                ]]}
414
              ]]}
415
            ]]}
416
          ]}
417
        ], ["CONSTANT_DECLARATION", {
418
          "names" : [["IDENTIFIER", "VEC_NO_SIZE"]], "typ" : {
419
            "name" : ["SIMPLE_NAME", "integer"]}
420
          , "init_val" : ["EXPRESSION", {
421
            "args" : [["EXPRESSION", {
422
              "args" : [["EXPRESSION", {
423
                "args" : [["EXPRESSION", {
424
                  "args" : [["CONSTANT_VALUE", {
425
                    "value" : ["CST_LITERAL", "20"]}
426
                  ]]}
427
                ]]}
428
              ]]}
429
            ]]}
430
          ]}
431
        ]], "shared_uses" : []}
432
      ]}
433
    ]}
434
  }