Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / vests / vhdl-93 / ashenden / compliant / ch_21_fg_21_05.json @ 3fd18385

History | View | Annotate | Download (14 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "SR_flipflop"], "ports" : [{
6
          "names" : [["IDENTIFIER", "s_n"], ["IDENTIFIER", "r_n"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "bit"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "q"], ["IDENTIFIER", "q_n"]], "mode" : ["inout"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "bit"]}
12
          }
13
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : [["PROCESS_STATEMENT", {
14
          "active_sigs" : [["SIMPLE_NAME", "q"], ["SIMPLE_NAME", "q_n"]], "PROCESS_STATEMENT_PART" : [["ASSERTION_STATEMENT", {
15
            "cond" : ["EXPRESSION", {
16
              "id" : "or", "args" : [["EXPRESSION", {
17
                "id" : "=", "args" : [["EXPRESSION", {
18
                  "args" : [["EXPRESSION", {
19
                    "args" : [["EXPRESSION", {
20
                      "args" : [["CALL", ["SIMPLE_NAME", "now"]]]}
21
                    ]]}
22
                  ]]}
23
                ], ["EXPRESSION", {
24
                  "args" : [["EXPRESSION", {
25
                    "args" : [["EXPRESSION", {
26
                      "args" : [["CONSTANT_VALUE", {
27
                        "value" : ["CST_LITERAL", "0"], "unit_name" : ["SIMPLE_NAME", "fs"]}
28
                      ]]}
29
                    ]]}
30
                  ]]}
31
                ]]}
32
              ], ["EXPRESSION", {
33
                "id" : "=", "args" : [["EXPRESSION", {
34
                  "args" : [["EXPRESSION", {
35
                    "args" : [["EXPRESSION", {
36
                      "args" : [["CALL", ["SIMPLE_NAME", "q"]]]}
37
                    ]]}
38
                  ]]}
39
                ], ["EXPRESSION", {
40
                  "args" : [["EXPRESSION", {
41
                    "args" : [["EXPRESSION", {
42
                      "id" : "not", "args" : [["CALL", ["SIMPLE_NAME", "q_n"]]]}
43
                    ]]}
44
                  ]]}
45
                ]]}
46
              ]]}
47
            ], "report" : ["EXPRESSION", {
48
              "args" : [["EXPRESSION", {
49
                "args" : [["EXPRESSION", {
50
                  "args" : [["EXPRESSION", {
51
                    "args" : [["CONSTANT_VALUE", {
52
                      "value" : ["CST_LITERAL", "\"implementation error: q /= not q_n\""]}
53
                    ]]}
54
                  ]]}
55
                ]]}
56
              ]]}
57
            ]}
58
          ]]}
59
        ]]}
60
      ]}
61
    , {
62
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
63
        "name" : ["IDENTIFIER", "dataflow"], "entity" : ["IDENTIFIER", "SR_flipflop"], "ARCHITECTURE_DECLARATIVE_PART" : [], "ARCHITECTURE_STATEMENT_PART" : [["CONDITIONAL_SIGNAL_ASSIGNMENT", {
64
          "postponed" : false, "label" : ["IDENTIFIER", "gate_1"], "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
65
            "expr" : [{
66
              "value" : ["EXPRESSION", {
67
                "id" : "nand", "args" : [["EXPRESSION", {
68
                  "args" : [["EXPRESSION", {
69
                    "args" : [["EXPRESSION", {
70
                      "args" : [["EXPRESSION", {
71
                        "args" : [["CALL", ["SIMPLE_NAME", "s_n"]]]}
72
                      ]]}
73
                    ]]}
74
                  ]]}
75
                ], ["EXPRESSION", {
76
                  "args" : [["EXPRESSION", {
77
                    "args" : [["EXPRESSION", {
78
                      "args" : [["EXPRESSION", {
79
                        "args" : [["CALL", ["SIMPLE_NAME", "q_n"]]]}
80
                      ]]}
81
                    ]]}
82
                  ]]}
83
                ]]}
84
              ]}
85
            ]}
86
          ]}
87
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
88
          "postponed" : false, "label" : ["IDENTIFIER", "gate_2"], "lhs" : ["SIMPLE_NAME", "q_n"], "rhs" : [{
89
            "expr" : [{
90
              "value" : ["EXPRESSION", {
91
                "id" : "nand", "args" : [["EXPRESSION", {
92
                  "args" : [["EXPRESSION", {
93
                    "args" : [["EXPRESSION", {
94
                      "args" : [["EXPRESSION", {
95
                        "args" : [["CALL", ["SIMPLE_NAME", "r_n"]]]}
96
                      ]]}
97
                    ]]}
98
                  ]]}
99
                ], ["EXPRESSION", {
100
                  "args" : [["EXPRESSION", {
101
                    "args" : [["EXPRESSION", {
102
                      "args" : [["EXPRESSION", {
103
                        "args" : [["CALL", ["SIMPLE_NAME", "q"]]]}
104
                      ]]}
105
                    ]]}
106
                  ]]}
107
                ]]}
108
              ]}
109
            ]}
110
          ]}
111
        ]]}
112
      ]}
113
    , {
114
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
115
        "name" : ["IDENTIFIER", "fg_21_05"], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
116
      ]}
117
    , {
118
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
119
        "name" : ["IDENTIFIER", "test"], "entity" : ["IDENTIFIER", "fg_21_05"], "ARCHITECTURE_DECLARATIVE_PART" : [{
120
          "declaration" : ["SIGNAL_DECLARATION", {
121
            "names" : [["IDENTIFIER", "s_n"], ["IDENTIFIER", "r_n"], ["IDENTIFIER", "q"], ["IDENTIFIER", "q_n"]], "typ" : {
122
              "name" : ["SIMPLE_NAME", "bit"]}
123
            }
124
          ]}
125
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
126
          "name" : ["IDENTIFIER", "dut"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "SR_flipflop"]]], "inst_unit_type" : "entity", "port_map" : [{
127
            "actual_designator" : ["SIMPLE_NAME", "s_n"]}
128
          , {
129
            "actual_designator" : ["SIMPLE_NAME", "r_n"]}
130
          , {
131
            "actual_designator" : ["SIMPLE_NAME", "q"]}
132
          , {
133
            "actual_designator" : ["SIMPLE_NAME", "q_n"]}
134
          ]}
135
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
136
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "s_n"], "rhs" : [{
137
            "expr" : [{
138
              "value" : ["EXPRESSION", {
139
                "args" : [["EXPRESSION", {
140
                  "args" : [["EXPRESSION", {
141
                    "args" : [["EXPRESSION", {
142
                      "args" : [["CONSTANT_VALUE", {
143
                        "value" : ["CST_LITERAL", "'1'"]}
144
                      ]]}
145
                    ]]}
146
                  ]]}
147
                ]]}
148
              ]}
149
            , {
150
              "value" : ["EXPRESSION", {
151
                "args" : [["EXPRESSION", {
152
                  "args" : [["EXPRESSION", {
153
                    "args" : [["EXPRESSION", {
154
                      "args" : [["CONSTANT_VALUE", {
155
                        "value" : ["CST_LITERAL", "'0'"]}
156
                      ]]}
157
                    ]]}
158
                  ]]}
159
                ]]}
160
              ], "delay" : ["EXPRESSION", {
161
                "args" : [["EXPRESSION", {
162
                  "args" : [["EXPRESSION", {
163
                    "args" : [["EXPRESSION", {
164
                      "args" : [["CONSTANT_VALUE", {
165
                        "value" : ["CST_LITERAL", "10"], "unit_name" : ["SIMPLE_NAME", "ns"]}
166
                      ]]}
167
                    ]]}
168
                  ]]}
169
                ]]}
170
              ]}
171
            , {
172
              "value" : ["EXPRESSION", {
173
                "args" : [["EXPRESSION", {
174
                  "args" : [["EXPRESSION", {
175
                    "args" : [["EXPRESSION", {
176
                      "args" : [["CONSTANT_VALUE", {
177
                        "value" : ["CST_LITERAL", "'1'"]}
178
                      ]]}
179
                    ]]}
180
                  ]]}
181
                ]]}
182
              ], "delay" : ["EXPRESSION", {
183
                "args" : [["EXPRESSION", {
184
                  "args" : [["EXPRESSION", {
185
                    "args" : [["EXPRESSION", {
186
                      "args" : [["CONSTANT_VALUE", {
187
                        "value" : ["CST_LITERAL", "15"], "unit_name" : ["SIMPLE_NAME", "ns"]}
188
                      ]]}
189
                    ]]}
190
                  ]]}
191
                ]]}
192
              ]}
193
            , {
194
              "value" : ["EXPRESSION", {
195
                "args" : [["EXPRESSION", {
196
                  "args" : [["EXPRESSION", {
197
                    "args" : [["EXPRESSION", {
198
                      "args" : [["CONSTANT_VALUE", {
199
                        "value" : ["CST_LITERAL", "'0'"]}
200
                      ]]}
201
                    ]]}
202
                  ]]}
203
                ]]}
204
              ], "delay" : ["EXPRESSION", {
205
                "args" : [["EXPRESSION", {
206
                  "args" : [["EXPRESSION", {
207
                    "args" : [["EXPRESSION", {
208
                      "args" : [["CONSTANT_VALUE", {
209
                        "value" : ["CST_LITERAL", "30"], "unit_name" : ["SIMPLE_NAME", "ns"]}
210
                      ]]}
211
                    ]]}
212
                  ]]}
213
                ]]}
214
              ]}
215
            , {
216
              "value" : ["EXPRESSION", {
217
                "args" : [["EXPRESSION", {
218
                  "args" : [["EXPRESSION", {
219
                    "args" : [["EXPRESSION", {
220
                      "args" : [["CONSTANT_VALUE", {
221
                        "value" : ["CST_LITERAL", "'1'"]}
222
                      ]]}
223
                    ]]}
224
                  ]]}
225
                ]]}
226
              ], "delay" : ["EXPRESSION", {
227
                "args" : [["EXPRESSION", {
228
                  "args" : [["EXPRESSION", {
229
                    "args" : [["EXPRESSION", {
230
                      "args" : [["CONSTANT_VALUE", {
231
                        "value" : ["CST_LITERAL", "40"], "unit_name" : ["SIMPLE_NAME", "ns"]}
232
                      ]]}
233
                    ]]}
234
                  ]]}
235
                ]]}
236
              ]}
237
            ]}
238
          ]}
239
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
240
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "r_n"], "rhs" : [{
241
            "expr" : [{
242
              "value" : ["EXPRESSION", {
243
                "args" : [["EXPRESSION", {
244
                  "args" : [["EXPRESSION", {
245
                    "args" : [["EXPRESSION", {
246
                      "args" : [["CONSTANT_VALUE", {
247
                        "value" : ["CST_LITERAL", "'0'"]}
248
                      ]]}
249
                    ]]}
250
                  ]]}
251
                ]]}
252
              ]}
253
            , {
254
              "value" : ["EXPRESSION", {
255
                "args" : [["EXPRESSION", {
256
                  "args" : [["EXPRESSION", {
257
                    "args" : [["EXPRESSION", {
258
                      "args" : [["CONSTANT_VALUE", {
259
                        "value" : ["CST_LITERAL", "'1'"]}
260
                      ]]}
261
                    ]]}
262
                  ]]}
263
                ]]}
264
              ], "delay" : ["EXPRESSION", {
265
                "args" : [["EXPRESSION", {
266
                  "args" : [["EXPRESSION", {
267
                    "args" : [["EXPRESSION", {
268
                      "args" : [["CONSTANT_VALUE", {
269
                        "value" : ["CST_LITERAL", "5"], "unit_name" : ["SIMPLE_NAME", "ns"]}
270
                      ]]}
271
                    ]]}
272
                  ]]}
273
                ]]}
274
              ]}
275
            , {
276
              "value" : ["EXPRESSION", {
277
                "args" : [["EXPRESSION", {
278
                  "args" : [["EXPRESSION", {
279
                    "args" : [["EXPRESSION", {
280
                      "args" : [["CONSTANT_VALUE", {
281
                        "value" : ["CST_LITERAL", "'0'"]}
282
                      ]]}
283
                    ]]}
284
                  ]]}
285
                ]]}
286
              ], "delay" : ["EXPRESSION", {
287
                "args" : [["EXPRESSION", {
288
                  "args" : [["EXPRESSION", {
289
                    "args" : [["EXPRESSION", {
290
                      "args" : [["CONSTANT_VALUE", {
291
                        "value" : ["CST_LITERAL", "20"], "unit_name" : ["SIMPLE_NAME", "ns"]}
292
                      ]]}
293
                    ]]}
294
                  ]]}
295
                ]]}
296
              ]}
297
            , {
298
              "value" : ["EXPRESSION", {
299
                "args" : [["EXPRESSION", {
300
                  "args" : [["EXPRESSION", {
301
                    "args" : [["EXPRESSION", {
302
                      "args" : [["CONSTANT_VALUE", {
303
                        "value" : ["CST_LITERAL", "'1'"]}
304
                      ]]}
305
                    ]]}
306
                  ]]}
307
                ]]}
308
              ], "delay" : ["EXPRESSION", {
309
                "args" : [["EXPRESSION", {
310
                  "args" : [["EXPRESSION", {
311
                    "args" : [["EXPRESSION", {
312
                      "args" : [["CONSTANT_VALUE", {
313
                        "value" : ["CST_LITERAL", "25"], "unit_name" : ["SIMPLE_NAME", "ns"]}
314
                      ]]}
315
                    ]]}
316
                  ]]}
317
                ]]}
318
              ]}
319
            , {
320
              "value" : ["EXPRESSION", {
321
                "args" : [["EXPRESSION", {
322
                  "args" : [["EXPRESSION", {
323
                    "args" : [["EXPRESSION", {
324
                      "args" : [["CONSTANT_VALUE", {
325
                        "value" : ["CST_LITERAL", "'0'"]}
326
                      ]]}
327
                    ]]}
328
                  ]]}
329
                ]]}
330
              ], "delay" : ["EXPRESSION", {
331
                "args" : [["EXPRESSION", {
332
                  "args" : [["EXPRESSION", {
333
                    "args" : [["EXPRESSION", {
334
                      "args" : [["CONSTANT_VALUE", {
335
                        "value" : ["CST_LITERAL", "30"], "unit_name" : ["SIMPLE_NAME", "ns"]}
336
                      ]]}
337
                    ]]}
338
                  ]]}
339
                ]]}
340
              ]}
341
            , {
342
              "value" : ["EXPRESSION", {
343
                "args" : [["EXPRESSION", {
344
                  "args" : [["EXPRESSION", {
345
                    "args" : [["EXPRESSION", {
346
                      "args" : [["CONSTANT_VALUE", {
347
                        "value" : ["CST_LITERAL", "'1'"]}
348
                      ]]}
349
                    ]]}
350
                  ]]}
351
                ]]}
352
              ], "delay" : ["EXPRESSION", {
353
                "args" : [["EXPRESSION", {
354
                  "args" : [["EXPRESSION", {
355
                    "args" : [["EXPRESSION", {
356
                      "args" : [["CONSTANT_VALUE", {
357
                        "value" : ["CST_LITERAL", "35"], "unit_name" : ["SIMPLE_NAME", "ns"]}
358
                      ]]}
359
                    ]]}
360
                  ]]}
361
                ]]}
362
              ]}
363
            ]}
364
          ]}
365
        ]]}
366
      ]}
367
    ]}
368
  }